Skip to content

2024

What About Static Typing in Ruby? – Noel Rappin Writes Here

Link: What About Static Typing in Ruby? – Noel Rappin Writes Here: "I just write here"

Linked is a subtle and really interesting article about static vs dynamic typing. I’ve been a fan of python type hints and annoyed with how Ruby, so far has approached the political pressure to have an answer. For the first time for me, this article articulates how type hints may be great for sample code or fairly simple real code, but can become a burden for “real” code. I’ve experienced this myself but did not realize what was going on. He also builds an interesting distinction between type checking and data validation. Maybe Ruby needs an equivalent to pedantic?

An Introduction to Nix for Ruby Developers

Link: An Introduction to Nix for Ruby Developers: "Learn how to build and share reproducible Rails development environments."

Wow, I've heard about Nix from time to time. I still don't understand it. But the linked article is the first fairly comprehensive one with a detailed tutorial. Of course I am still too scared to try typing in the commands. They seem to claim that it will be totally isolated but still. Mainly I am not sure what benefit I will get in trying it. You can see though, that someone's have put a ton of effort into getting it to this point.

LearnDjango | LearnDjango.com

Link: LearnDjango | LearnDjango.com: "Learn web development with Python and the Django Web Framework. Tutorials on Django REST Framework, Docker, React, and Vue."

Linked is a good review of Python Flask and Django. I came from a Ruby world, that’s like comparing Sinatra to Rails. Very different and very related.

Python Protocols: Leveraging Structural Subtyping – Real Python

Link: Python Protocols: Leveraging Structural Subtyping – Real Python: "In this tutorial, you'll learn about Python's protocols and how they can help you get the most out of using Python's type hint system and static type checkers."

I didn’t understand Protocols in Python. Linked is an excellent tutorial that explains not just Protocols, but also contrasts them with duck typing, abstract base classes, talks about use cases and non-use cases. It’s an advanced tutorial.

A few words on Ruby's type annotations state

Link: A few words on Ruby's type annotations state: "…that were written in a military training camp and accidentally grew to 5k words"

Linked is a deep article about type hints in Ruby. When I say deep, I mean it! Requires an in depth understanding to appreciate or follow. And it illustrates how incredibly tough it is to add a major new low level feature to Ruby or any other mature language.

Annotated area charts with plotnine | Nicola Rennie

Link: Annotated area charts with plotnine | Nicola Rennie: "The plotnine visualisation library brings the Grammar of Graphics to Python. This blog post walks through the process of creating a customised, annotated area chart of coal production data."

Linked is an article about plotline, a python graphing package that I was not familiar with. Along the way the example shows how to take your raw data and extract from it the various series you will need building the graph. Excellent examples. But I wonder what gap this new package was filling among the multiple existing, popular and excellent graphing packages.

Exercise: Minesweeper in 100 lines of clean Ruby

Link: Exercise: Minesweeper in 100 lines of clean Ruby: "Ruby is such an expressive language. You can often do surprisingly much with just a few lines of code. It’s why I find it so satisfying to think about how to accomplish the same thing in fewer lines of Ruby1. If we accept the claim that that number of bugs correlates with number of lines of code this is not just a fun exercise. There’s real business value in accomplishing a feature with less lines of code. ↩"

Reading well written, idiomatic code is the best way to improve your code. Linked is a nice example.