2020#46 Readings of the Week
5 minutes read | 900 words by Ruben BerenguelI made a hard push to clean up my reading list, deleting a lot and reading another lot. It went from 369 items to 99 🎉
Next in line, is cleaning up my book reading list: at the moment I have more books pending to read than I have blog posts/articles. This will be harder, some of these I really want to read, and reading a book takes longer than reading a post.
NOTE: Generative code, ZIO, Scala, Python, Spark, Maths. 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.
How to Speed up SQL Queries with Adaptive Query Execution
I’m crossing fingers for a Spark 3.0 release of Graphframes (otherwise I’ll be stuck on 2.4.x until we reimplement what we need). In any case, I’m looking forward this release, AQE is a game changer.
How an anti ad-blocker works: Reverse-engineering BlockAdBlock
Interesting to know.
Python Caches Integers
In case you didn’t know.
Automatically finding Codenames clues with GloVe vectors
I had never thought about this. I need to download some GloVe embeddings and have some fun.
Radical Solutions
The story of Évariste Galois and how he ended.
Wrapping impure code with ZIO
I would say this is the definitive guide on how to handle “external” code in ZIO.
The clever glass box that reshaped the world
Fascinating: how plants were transported in the 18th century and onward.
Apache Spark: UDAF could be an option
Spark and writing your own aggregators. That’s the way as soon as you have anything “weird”.
How to Lead a Project - as a Software Engineer
A good set of steps and tricks.
Variations on Symmetric Nearest Neighbour smoothing
The image processing in here is fascinating.
The polygons of Another World
I read all the linked articles. Fascinating. It’s also one of the games I’m most fond.
Write your own Excel in 100 lines of F#
This was incredibly instructive, even if I don’t plan to write any F# ever.
Spark: Aggregating your data the fast way
The best way to run aggregations is custom aggregators. But beware, they are painful to write.
Applying mypy to real world projects
Tips for using mypy. These are good.
Types at the edges in Python
Python typing goodness.
Painting a Kaleidoscope of Color with Jason Anderson
I really like this painter.
Landscapes by Jason Anderson Blend Precise Pixelation and Hazy Abstraction
These are beautiful.
High Performance Kafka Producers
An excellent list of tips to improve your Kafka producers.
Waiting in asyncio
Been writing some async again, and this post by Hynek was excellent.
The Wavefunction Collapse Algorithm explained very clearly
Wavefunction collapse is a very interesting method for generative coding. Wink, wink. Also, it’s kind of how you solve sudokus.
The Secret History of Dune
This was fascinating. The inspiration behind Dune.
Poundstone on the Dollar Auction. How to Sell a Dollar Bill for $5
Isn’t this how the advertising “cold war” works?
Python: better typed than you think
This is pretty similar to how I handle return types in bear-graph-note
Query2vec: Search query expansion with query embeddings
I’ve been doing a surprising amount of word2vec and UMAP lately (especially given my role) so I’m having a look at lateral ideas.
Serverless: 15 percent slower and eight times more expensive
Every time I’ve run cost estimates for serverless in not very toy/simple (anything more taxing than monitoring via a lambda) the price is not right.
Make your Google Spreadsheets Scala-ble
Not sure I want to write Scala, transpile it to Javascript and place it in a Google Spreadsheet. And it’s not because of the first two.
Implementing a Photo Stylizer in Python using a QuadTree Algorithm
I’m eyeing approaches like this for future generative sketches
How to pick a random number from 1-10
Too much R for my taste, but this was interesting.
How European sailors learned celestial navigation
Next time somebody asks “what uses trigonometry has” tell them it’s very useful for pirates.
One SQL to rule them all: an efficient and syntactically idiomatic approach to management of streams and tables
Wasn’t aware there is work to update the SQL standard to allow for streams. Exciting!
Do we need specialized graph databases? Benchmarking real-time social networking applications
Nobody got fired for choosing Postgres. Not even in graph situations
On writing generative art
Reading why/how others do/decide to do it is always encouraging.
Times New Roman alternatives
All roads lead to New Roman
Dord: How a Non-Word Made it into the Dictionary
I, for one, welcome our new dictionary dords.
Buy me a coffee