One article or paper
To support an evolving Data-Driven organization you need strong foundations and a constant evolution of your data workflows. In this blog post I enjoyed the various stages of the Data architecture at WePay and how you know it is time you need to transition from your current workflow to the next. It is a great example of Evolutionary Architecture.
One video or podcast
Event driven architectures are super-handy for building relational table projections that can be used for analytics / data warehousing. But what if you don’t have events? Debezium is an open source distributed platform for change data capture. Start it up, point it at your databases, and your apps can start responding to all of the inserts, updates, and deletes that other apps commit to your databases. These might not be as expressive as domain events, but it does the trick for a lot of use cases.
One snippet of code
Step up your debugging game by using Kernel#caller_locations. It a stacktrace with file locations you can look up for editing. Couple it with bundle open and you have full control over the code you are running. Thank you to Jemma Issroff for sharing on Ruby Weekly.
caller_locations # returns an array with the path to callers
method_one # line 6
method_two # line 10
array_with_callers = method_three # line 13
$ ruby example.rb
The less you want, the richer you are. The more you need in order to be happy, the more miserable you’ll be.Yiannis Chryssomallis