2019#32-33 Readings of the Week
9 minutes read | 1911 words by Ruben BerenguelYeah, I skipped last week. On Saturday Python Barcelona organised PyDay 2019, and I was one of the organisers aside from giving a workshop on PySpark, so I felt pretty tired on Sunday. Of course this means this is a double issue.
In case you are curious, these two weeks I read 98 articles (not counting the news or recipes) from my reading list (as usual, not everything happened recently, I read each article when I see fit). Of these, I found around 40 interesting or unusual enough to make it here (there is a mild preselection bias: I’m more likely to read an interesting one than an uninteresting one).
I get asked on occasion how I manage to read so much (since I also read several books during the year). It is basically a combination of mild multitasking (I read while watching TV after dinner) and long commute time (when I need to go to the city it takes me more than 1 hour). So, I try to squeeze one reading list item if the time is short, and may read from a book if the time is longer. Also, while doing household chores I’m either on Audible or a podcast.
The picture above is of my new keyboard, a Gergo. I went full split, with QMK: I think once you have a QMK powered keyboard there is no way back now. I’ll be writing a blog post about my setup of it and what I’m liking “soon”. If there are typos in. today’s post, blame my acclimating to lower action keys.
NOTE: The themes are varied, and some links below are affiliate links. Haskell, history, psychology, data 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.
On being a “scanner” personality
If you only read one article from this edition, read this. You may find out something about you. I also read the book mentioned (see bottom) and it’s definitely recommended.
Pykka 2.0 released with better ergonomics and performance improvements
This is not news: happened almost 7 months ago, but is worth knowing that Python does have an actor implementation, and that is Pykka.
The Bus Ticket Theory of Genius
There are some vibes in this Paul Graham essay that link to the Scanner personality article above.
Setting up a Haskell environment
I had to do this a few weeks ago and was not a nice experience. This is the streamlined version of the roundabout way I did it.
Go’s features of last resort
This is an interesting list.
A dead-simple web stack in Haskell
I keep thinking I’ll like Haskell, and reality always makes me rethink. Anyway, this is a list of “boring” Haskell libraries to write a web service.
Brokering Bricks: The World of Lego Investing
Anything scarce will be traded.
Day of the Tentacle (The Digital Antiquarian)
Not the first or second article by the Digital Antiquarian I share.
Boring Haskell Manifesto
I feel attracted to writing Haskell, and put off by many things. The ideas herein could help.
Introducing ksqlDB
It does not provide read-after-write consistency, and isn’t intended as an OLTP store for primary data.
I like Kafka a lot, but always beware of its kool-aid. The quote above comes from the article itself. Define DB at your own risk.
Physicists Claim They’ve Found Even More Evidence of a New Force of Nature
Super interesting to read, although the missing piece is knowing what this force does. As in, it has been observed to affect certain decays, but is that what it controls? This article from The Independent is a bit better than the above though.
Blade Runner | Typeset In The Future
This is a very old article on the typography of Blade Runner (a personal favourite), but the events in Blade Runner happened recently, so…
How Turkish coffee destroyed an empire
Always consider first, second, third order effects, especially if your timespan is long.
Why office noise bothers some people more than others
I can work in super-noisy environments just fine, as long as it’s close to white noise. I.e. a busy coffee place is ok, because there will be enough noise to avoid triggers. But an open office with one sales guy screaming “hey I good work dude” to another (been there) irks me tremendously.
For all its lofty aims, ironically, the building fell short in the face of some scientific truths – that, for some of us, listening to other people’s chit-chat can be about as enraging as having a colleague repeatedly click their pen against your forehead.
Liskov Substitution Principle is…Not a Design Principle (SOLID is not solid)
I’ve never been a fan of many design principles, since there can always be cases where there is a good reason to break a principle (making it a non-principle).
Phonetography: Does This Enhance or Diminish Our Enjoyment of an Experience?
Transcription of an episode of The Bulletproof Musician (a podcast on techniques to improve your musical training), where two articles studying whether taking pictures improves the enjoyment of an experience.
History as a giant data set: how analysing the past could help save the future
Psychohistory anyone?
TROS: How IBM mainframes stored microcode in transformers
Why microcode? One of the hardest parts of computer design is creating the control logic that tells each part of the processor what to do to carry out each instruction. In 1951, Maurice Wilkes came up with the idea of microcode: instead of building the control logic from complex logic gate circuitry, the control logic could be replaced with code (i.e. microcode) stored in a special memory called a control store. To execute an instruction, the computer internally executes several simpler micro-instructions, which are specified by the microcode. With microcode, building the processor’s control logic becomes a programming task instead of a logic design task.
Tokyo’s amazing 2D Cafe looks like an illustration, but it’s an actual restaurant you can eat in!
This is some serious trompe l’oeil.
Working with HTTP in Polynote
I mentioned Polynote (Netflix’s polyglot notebook for Scala, Spark and Python especially) before. People are starting to use it for “things”.
The Context Stack: a new way to visualize game rules
Shared by a game designer friend (he just opened a Kickstarter for his latest game!). You know I’m a sucker for using visual representations of knowledge, so this is just right there for me.
The cargo ships that ‘liquefy’
A super weird physical phenomenon that makes cargo ships capsize and disappear.
Bebugging (Wikipedia)
This is similar to metamorphic testing, but done manually. It’s an interesting idea and worth doing, it’s cheap.
I was an astrologer – here’s how it really works, and why I had to stop
There’s a recent surge in astrology in VC funds: not for choosing the investment, but for investing in “astrology as a service” systems (to be fair, 7 or 8 years ago I thought about writing one…). This is more on the personal side, but interesting nonetheless.
Pour at Your Own Risk: America Warms to a Spill-Prone Wine Jug
Pretty absurd and hardcore cultural appropriation. You are terribly unlikely to see a Spaniard or Catalan drinking from a “porró” (the Catalan word for the thingy). I’ve seen it used more frequently as an alternate oil jug than for drinking wine, here.
Really fast Markov chains in ~20 lines of sh, grep, cut and awk
You can do pretty amazing things with AWK. And AWK is pretty readable, too.
10 Ways to Tweak Slow SQL Queries
One caveat: CTEs are cool and great, but they can sometimes ruin your query planner.
Failing 15% of the time is the best way to learn, say scientists
It is well known that learning needs failure at a point where you are still challenged. A new study suggests this is the correct rate of failure for maximal learning.
performance - Why is Haskell (GHC) so darn fast? - Stack Overflow
An attorney would say this is leading the witness. A stack overflow question, but the answers on why a lazy, very functional language is decently fast once compiled is interesting.
Teeline for the curious: a story of learning things because I can
I learnt Catalan shorthand many years ago (loosely based on Gregg). I found out about Teeline here, and I think this is the one I should learn now.
Build your own Kafka in ZIO - ZIO Queues & ZIO Fibers
A low level example of using ZIO, to get to know its underlying principles. Don’t assume this is like Kafka!
One Word of Code to Stop Using Pandas So Slowly
TL;DR (because the title is not that clear either) is to use swifter, a library that dynamically chooses Pandas methods or Dask methods to be as efficient as possible.
The tiger next door: America’s backyard big cats
The land of the free, unless you are a tiger.
Apps We’re Trying: Alternative Window Managers for macOS
The Sweet Setup has always interesting articles on iOS and Mac apps. This time they tried their hand at tiling window managers for Mac. I used some in the past myself (Amethyst and kwm, the predecesor of chunkwm). Nowadays I use Phoenix with custom-written commands to split windows in certain ways.
Comparing Performance between Apache Spark and PySpark
I’m slightly dubious of the result (reading should be as fast in both).
Parallel Commits: An Atomic Commit Protocol For Globally Distributed Transactions
I forgot most of it almost immediately, although to be fair the same happened with two-phase commit.
Stellar Sonata - Wikipedia
A musical painting. Brilliant.
Scala’s isInstanceOf is an Anti-Pattern
Yeah, indeed.
🍿 DASK and Apache Spark
A talk from North America’s Spark Summit 2019 about Dask.
📚 Refuse to choose
The book I mention on the first article. It was deeply touching, realising “I’m not the only one” with this kind of thirst for different things. It was also revealing in how to approach multiple passions and hobbies, and what to do to take full advantage of this. Read it, ASAP. Especially if you like the eclectic selection of topics I offer.
🔊 The Man Who Solved the Market: How Jim Simons Launched the Quant Revolution
Very interesting, with a surprising amount of mentions of familiar mathematicians. It’s more of a biography of Renaissance, more than Simons, but it’s interesting nonetheless.
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.
rel=“stylesheet”>Buy me a coffee