Hello there!

This is the Monday edition of Morning Cup of Coding, a curated programming newsletter. If you like what you read, consider joining 3,6k engineers by subscribing here. You will receive one such email every workday morning.

Let’s get right to the articles!

Articles

Generating Climate Temperature Spirals in Python

Srini Kadamati recreates Ed Hawkin’s captivating visualization of climate change. The animation depicts, in a very concise way, the rapid changes of climate in the last few years. The article walks us through its recreation with Python, pandas and matplotlib.

A simple spell checker built from word vectors

Word vectors are a fascinating subject. For such a simple concept, they have very powerful applications. One such application is spell checking. Ed Rushton’s very detailed article not only demonstrates how this can be accomplished, but also answers a few reasons as to why it works the way it does.

Generating Trees and Other Interesting Shapes With L-Systems

While word vectors are an encoding of words into vectors, L-Systems are a set of simple rules and symbols that can generate very complex geometrical structures. In this article we use an L-System, specifically a Parametric OL-system, to generate tree visualizations.

Zero-Overhead Tree Processing with the Visitor Pattern

Continuing on the subject of trees, Li Haoyi shows us what makes the mostly misunderstood, in his opinion, Visitor Pattern special (OK, we are not talking about the same type of trees). In this article, the author uses the tree-like structure of JSON and showcases how the pattern can be used for simple JSON-to-string transformations to more complicated examples that require chaining and composing visitors.

Fun

Finding a prime which looks like Salvador Dali

And finally, in this article we search for a prime number that, when converting its digits to a grayscale matrix, we get Salvador Dali’s well recognized portrait.

Programming language of the day: Avail. “Avail is a multi-paradigmatic general purpose programming language whose feature set emphasizes support for articulate programming”.

And that’s it for today!

I hope you enjoyed reading the latest issue of Morning Cup of Coding. If you did, consider supporting it by becoming a patron (Patreon), buying me a coffee (PayPal) or purchasing an MCC mug (RedBubble); it helps me keep this going.

Cheers,

Pek