2019#31 Readings of the Week
5 minutes read | 1044 words by Ruben BerenguelThis week there is a lot of functional programming (mostly Scala, a bit of Haskell) and data engineering topics. Of course, there is also the usual random stuff I find interesting as well (and other engineering topics).
NOTE: The themes are varied, and some links below are affiliate links. A large amount of data engineering and functional programming this time (mostly Scala, bits of Haskell), usual random stuff as well, don’t worry. Expect a similar wide range in the future as well. You can check all my weekly readings by checking the tag here. You can also get these as a weekly newsletter by subscribing here.
SkillsMatter gone
This week SkillsMatter in London has gone into administration, making one of the best organizations for conferences go bust. Also, a large amount of conference videos hosted in their Vimeo account (including my lightning TLA+ talk from last year’s Scala Exchange) are in limbo. They’ll be missed.
Comparing Database Types: How Database Types Evolved to Meet Different Needs
Timeline of different models of data storage and retrieval for databases.
Final Tagless
An explanation of the Final Tagless approach to composition, with code examples in (readable) Haskell.
Project Silica proof of concept stores Warner Bros. ‘Superman’ movie on quartz glass
For cold storage. Joke about the Fortress of Solitude incoming.
Trajectory recovery from Ash: User privacy is NOT preserved in aggregated mobility data
It’s such a WAAAT. I want to implement this, the paper is on my reading list. TL;DR: you can pinpoint individual trajectories out of aggregated data with a huge confidence.
Por que Parquet
Impact of switching to Parquet in network usage vs JSON. It may sound an obvious change, but it can be far from one.
Opinion | 5-Hour Workdays? 4-Day Workweeks? Yes, Please
Opinion piece by Cal Newport, riding the wave of the recent Microsoft Japan 4 day workweek experiment. If we talk about pure output, 5 hours of intensive, output focused time (no distractions) would be close to a perfect day for anybody, in my own tracking I have rarely hit more than 6 hours. Eventually the rest of the work day fills with coordination, chatter, meetings, etc.
Halide 1.14 adds full iPhone 11 support, a ‘Tactile Lens Switcher,’ ‘Lens Guides’ and more
I got an iPhone 11 Pro last Monday. The camera is wow. And the battery life is waaat. I’ve had it last 2 days, with normal use (reading a couple of hours, browsing, mail handling, Slack..). Halide is one of the best photography apps for iOS and I’m eager to go get some nice shots with it.
Who is the real Dice Man? The elusive writer behind the disturbing cult novel
The hunt for Luke Rhinehart, author/subject of The Dice Man.
Composing Spark data pipelines
Using monads to compose Spark operations. Bring more FP to your data life.
The Spark Job pattern
Similar to the previous (but done earlier, and presented in a Spark Summit), in case you don’t like the full FP kool-aid.
Leaked document reveals..
..that Sidewalk Labs' Toronto plans for private taxation, private roads, charter schools, corporate cops and judges, and punishment for people who choose privacy
This was a long article title. But this is Black Mirror level.
Error Handling in Functional Applications - from Monad Transformers to ZIO
A brief tour through what’s mentioned in the title. The example code is really clean and worth a look.
Depth of Field
I love generative art concepts, and this DOF method to display graphs is beautiful.
DataOps Principles: How Startups Do Data The Right Way
(Supposed) principles for a proper data operation team. Take the ones you like (some, like the manual-manual-automate one are gold). Ignore the ones you don’t.
New In PostgreSQL 12: Generated Columns
Remember, paraphrasing a classic mantra from the previous century: nobody was fired for choosing PostgreSQL. In case of doubt, pgsql it. Generated columns can be thought of as cheaper trigger computations.
The Trade of the Century: When George Soros Broke the British Pound
How hedging works, with the UK as a sad background.
The Lost Key of QWERTY
The first keyboards had a key we no longer have. The answer will… not sure. I found it interesting as a history piece.
Mathematicians Cut Apart Shapes to Find Pieces of Equations
The invariant described here seems super deep. I’m eager to learn more about how this develops.
We built network isolation for 1,500 services to make Monzo more secure
The idea of a monorepo housing 1500 microservices makes me shudder. Although, haven’t tried, maybe it’s an excellent idea in some case.
🍿 Finding bugs without running or even looking at code by Jay Parlar
This is a similar talk to the one I shared a couple of weeks ago by Jay as well, but more easily digestible if you don’t know TLA+. Super recommended!
🔊 Getting Thing Done: the art of stress free productivity
My classic yearly re-read (re-listen in this case) of GTD. If you could get hold of Allen’s Getting Things Done Fast audio instead, it is much more fun (but you better have a grasp of the system beforehand, the material is not as clear-cut as in the book/audiobook).
Newsletter?
These weekly posts are also available as a newsletter. These days (since RSS went into limbo) most of my regular information comes from several newsletters I’m subscribed to, instead of me going directly to a blog. If this is also your case, subscribe by clicking here.
Buy me a coffee