You know how you slip once on a habit and everything goes crazy? Well, I’ve been 4 weeks without writing these, so here’s the accumulated reading from 4 weeks. Because, even if I don’t write it, I read a lot anyway. Also, there’s lot of interesting content this “week”.
NOTE: The themes are varied, and some links below are affiliate links. This edition contains Rust, food, Scala, functional programming, psychology, Python, likes to nice images, and a bit on procedural generation. Also the books I read these days. 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.
I bought
Stardew Valley for iOS during Christmas, after hearing how much Mike Hurley (from the Cortex podcast, and all around the Relay.fm podcasting network) likes it. But, still haven’t played, maybe this week? (although, Cultist Simulator appeared on iOS last week, and it’s very engaging, specially on an iPad Pro with a Pencil).
I’m undecided on this book. The premise was excellent, the analysis as well, but it was lacking a bit on the “how” area of superforecasting.
There is something to this, also, more on luck further down. I’m a lifetime subscriber to
Nautilus, and you should consider becoming one. Their print magazines are beautiful, and the articles always insightful.
Anything Patrick McKenzie (patio11) writes is worth reading. Don’t miss his
Salary Negotiation post.
Prolog, and its query ability sound ideal for a lot of scenarios. This could very well be one of them, although dumping to SQL could be more useful when working with a team.
How to exploit the depths of font description languages to compute. Also has a minor proof on how font rendering (removing some implementation blocks to avoid overflows in font engines) is Turing complete.
Some ways you can get pretty much immutability. If you are a functional-ish programmer you’ll value this.
I like the occasional oat milk (I like the taste of oats) or a specific brand of Catalan walnut milk (pairs perfectly with coffee)
To be fair, I got the audiobook version, but it is thrilling. I listened to it in one weekend, and I didn’t finish earlier because AirPods need recharging.
Aside from the move to Scala 2.12, this is for me one of the most significant changes to Spark. Although I haven’t used these yet, there have been several moments in the past where I needed mapping capabilities over arrays and had to resort to a UDF. They are not hot paths, but knowing how UDFs behave, I’d get a decent speed up of these parts by moving to a HOF.
How to load your data into HDFS is always a key question. Pre-load it? Load it directly with a specific (say,
spark.read) construct from S3? Here there are some benchmarks of what is more effective, at least for Presto. Results probably extend to Spark et al, since being based over HDFS is the key part.
Mumble: the open source VoIP solution
I learnt about Mumble and the Murmur server a few weeks ago. They are a system for very low latency, low bandwidth audio-only (optionally a bit of text) communication. I wonder if it can help me work remotely more effectively (helping with pairing, or with random “quick talk” while avoiding the overhead of a video call under Slack, Skype or Meet).
This Hacker News comment seems to cast it in the correct light.
Note this is in Spanish. Served as an excuse to find out about
Rafael Araujo and his books,
The Golden Ratio: The Divine Beauty of Mathematics (with text by Gary Meisner) and
Golden Ratio Colouring Book. I have now some of his drawings as backgrounds of my devices. They are gorgeous.
These were my previous device backgrounds. You can also follow
the author on Instagram (you can also follow
me but I’m not that interesting)
The 70s were special
A classic paper by Hewitt, the seminal work on actor systems.
I enjoy playing ASCII based roguelikes from time to time (
DCSS,
CDDA or
Dwarf Fortress), writing one would be cool. And yet another excuse/way to learn more Rust.
I stopped generating fractal stuff before using shaders for it was common, so I never got to learn it. Now, I want it back. It was so much fun.
A super-thorough diagram showing the data analysis library landscape in Python, with some words on each technology/library.
From Politico. It is super-long, but well worth the read if you are anywhere related to Brexit. This could easily be described as
how not to manage your negotiation deals.
Like fractals, procedural generation is something I have always enjoyed (as a concept, as a result and as a programming problem). WFC is a good approach for generating maps, images and anything with “rules”
A thorough introduction to how Rust lifetimes work and how to use them
A short history about how
Dune II came to be, and to appear almost at same time than
Dune. Also, how Westwood (and Dune II) shaped real time strategy from then on.
An analysis of some common patterns (à la Gang of Four, patterns) when applied to Python
In the clicker realm, I much prefer
SpacePlan (or
A Dark Room, but that’s not 100% clicker), but UC was interesting.
Craft beer, craft bread, craft butter. It’s hard to come with good quality cream in Spain, though.
A very short and sweet book on drawing cartoonish people. Highly recommended. And I found out the author lives in Hay-on-Wye, given the amount of times we’ve been there I wonder if we’ve crossed our paths.
If your local git guru is away, this can save the day.
Some benchmarks and code comparisons between UDFs, map and custom spark functions. Sadly, you can’t implement the latter without using a custom build of Spark, and good luck deploying that to EMR...
The surprisingly interesting story about a weapon, the M-16, and how a
lot of bad decisions happened because “committees & politics”
A paper. This model sounds super-interesting, and I want to replicate it in Python as soon as I have a few hours available (meh)
It’s funny because it’s trueThis is an old post, but I have always found it really interesting. I used
Normalised Compression Distance once, but I no longer remember the setting (I think it was as part of a decision tree metric, but the details escape me, it was 6 or7 years ago)
Zio,
Monix and
Akka can be used for similar things (asynchronous execution of streams/“stuff”). How you handle errors is different though, and sometimes using one for its error handling can make a difference.
If you’ve been counting, I’ve been reading a lot of Rust stuff lately. I have always been interested in raytracers/path tracers (wrote one in Lisp ages ago, got up to refraction), so this was a natural fit.
This “week” I finished the second edition of Software Abstractions, the book on the Alloy modeling language. It is pretty good. Starts as a light read, but after a while
how the language works starts to be a bit too cumbersome. Luckily there’s an extensive set of examples throughout the book, and an examples section at the end. I’m itching to model something in Alloy, but I’m still unsure
what.
The result is impressive. And got me to consider installing the app used.
Surprisingly fascinating story about why Pyrex is of lower quality lately in the States. Lucky for me, in Europe it’s still fine
YAQEE (Yet Another Query Execution Engine). But sounds interesting, and has a nice logo. I’ve seen worse
Ye olde Harald!
Plan9 is what Linux could-have-been. It was built for clusters, with file, process, sharing made easy. A long time ago I had a 2-machine cluster (1 Raspberry and a very old laptop), which I used as a storage/sharing files across two Macbooks using Plan9 from User Space syncing into a Venti file server. Ah, those were the days!
TL;DR: The CIA funded art tours to show the capitalist West still had creativity
My girlfriend majored in History, with a focus on pre-Columbian meso-american history, so I always pay more attention to articles about the area.
An interesting history tidbit. And a good lesson on why custom-built languages and DSLs are a blessing and a curse.
I’ve had this book on my Audible account since... 2014 I think. And actually, I also have the print copy. It was recommend to me by my thesis advisor, and it is indeed a very interesting subject, but there are points when the Audible version is as dull as watching paint dry. I haven’t read the print version, but consider that before audiobook.
This is a response to John de Goes’ talk
The death of final tagless. I don’t have a definite opinion here. I like
free monad approaches, since they make interpreters easy to understand and optimisable “easily”, on the other hand
Zio looks clean, but that’s as far as I go: I don’t have a strong opinion either way on final tagless, judge yourself from both sources
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.