Semantic Versioning Will Not Save You

The always brilliant Hynek recently posted Semantic Versioning Will Not Save You. Primarily targeted at consumers of SemVer-versioned packages, it is full of insightful advice. From my perspective as an open-source maintainer, I can tell you that versioning is hard. Judging when a new release is going to break backward compatibility is not as simple as it might seem on the surface, and Hynek does a great job explaining why. Sometimes it is also hard for me to tell if a change in a codebase classifies as a new feature, small improvement, or fix—subtle differences. »

Reverse engineering an obfuscated codebase and fixing it in the process

Today’s mandatory reading is How I cut GTA Online loading times by 70%. As someone who’s been fighting the protection/obfuscation cat & mouse game for twenty+ years, let me tell you one thing. The way this guy reverse-engineered parts of the GTA5 codebase and then proceeded to single-handly triage and fix a long-standing (7+ years) performance issue is simply mindblowing. All he had to work with were heavily obfuscated dlls. This also shows how we, the protectors, are always playing a losing game. »

On the CEO and founder of Signal

Last weekend’s reading list also included Taking Back Our Privacy, yet another1 New Yorker piece but this time signed by Anna Wiener. This article is a long-read on Moxie Marlinspike, co-founder and CEO of Signal. Moxie is a childhood nickname. That alone signals (pun intended) an original personality. I mean, how many times have you heard of a CEO going by his childhood nickname? Indeed the personal story of Marlinspike, along with that of the ascent of Signal, is fascinating. »

The Activists Who Embrace Nuclear Power

Today, my Sunday long-reading list included New Yorker’s The Activists Who Embrace Nuclear Power by Rebecca Tuhus-Dubrow. Can nuclear power possibly be a viable solution for climate change? Twenty or even ten years ago, my answer would have been a big fat No. Today? Not so sure anymore. Today, the looming disruptions of climate change have altered the risk calculus around nuclear energy. James Hansen, the NASA scientist credited with first bringing global warming to public attention, in 1988, has long advocated a vast expansion of nuclear power to replace fossil fuels. »

How to increase upload file size in ASP.NET Core

Today I learned the hard way that since ASP.NET Core 2.0, the request body has acquired a default size limit at 30MB (~28.6 MiB). If the request body size exceeds the configured max request body size limit, the call to Request.Body.ReadAsync will throw an IOException. If this exception is uncaught, Kestrel will respond with a 413 Payload Too Large response and HttpSys will respond with a generic 500 Internal Server Error response (source). »

Five Minutes to Make You Love Classical Music

I already mentioned what background music (or sounds) I like when I am coding. In that list, I included classical music. I know classical is not exactly a favorite. Not in my field, at least. I suspect the vast majority of people disregard it in advance, not really knowing what they’re missing out on, just because, well, you know, it’s dinosaurs stuff. If you are among them, you should reconsider and repent your sins. »

Musings on Python's Pattern Matching

Pattern Matching is coming to Python, and I am not sure I like it. Don’t get me wrong, I love pattern matching. I use it all the time in F#. I am sure that once it lands in the language, it will be wildly adopted. So what’s the problem with Python’s pattern matching? The community, some core developers included, has expressed several concerns. The Python Steering Council has acknowledged them and is willing to look into improvements should they be proposed. »

The Lasting Lessons of John Conway's Game of Life

In March 1970, Dr. John Conway sent the “fatal” (as he later referred to it) letter to Martin Gardner. He was submitting ideas for Gardner’s Mathematical Games column in Scientific American. The New York Times features a good article on the fifty-year parable of The Game of Life. What’s appreciable, they asked some of Life’s most steadfast friends to reflect upon its influence and lessons over half a century. Among them, Brian Eno, who, being Brian Eno, has some smart things to say: »

Author image Nicola Iarocci on #links,

Perseverance made it to Mars on twenty-year-old hardware

I’m a space junkie. So tonight, like all the other space junkies on the planet, I watched in awe as Perseverance seamlessly and beautifully landed on the surface of Mars. This is a phenomenal achievement. Of course, I will eagerly follow her1 progress. As I was following the live broadcast, I wondered: What kind of hardware and software runs all this incredible technology? It was launched in 2020, so it must be some cutting-edge stuff. »

Author image Nicola Iarocci on #space,

Book Review: We Have Always Lived in the Castle

I came back to reading Shirley Jackson almost by coincidence. I had just finished watching The Haunting of Hill House, and, as I always do with stuff that tickles my curiosity, I was doing a little research on it. That’s how I learned that the TV Series is loosely based on a novel by the same name written by… Shirley Jackson. Still imbued by the TV Series’s atmospheres, now knowing about its connection with Jackson, I was ready for another dive into her literature of psychological suspense and terror. »

Seven years ago at FOSDEM

About seven years ago, I presented the Eve Framework in a very crowded Python room at FOSDEM 2014 in Brussels. If you don’t know about FOSDEM, well, you should check it out. Every year thousands of developers who recognize themselves with the free and open-source movement gather in Brussels from all over the world. And I mean thousands of them. According to Wikipedia, since 2011, the meeting hosts about 4,000 visitors every year. »

Troubles with VirtualBox and the Windows Subsystem for Linux

Today I learned the hard way: don’t you dare running a vanilla install of VirtualBox together with Windows Subsystem for Linux v2 (WSL2). It won’t work. That’s because WSL2 uses Hyper-V under the hood, which is incompatible with VirtualBox. According to the official documentation for VirtualBox v6.0: Oracle VM VirtualBox can be used on a Windows host where Hyper-V is running. This is an experimental feature. No configuration is required. »

What I listen to while programming

What music do you listen to while programming?1 For me, it’s usually jazz, classical, electronic, lots of it, or nothing. There are some specialized websites and podcasts I sometimes recur to, like Music for Programming. Several Spotify playlists I dig a lot, Every Day I’m Nerdin’ being one of them. What can I say? I am musically omnivore. However, I recently discovered something different: the Field Recordings podcast. “A podcast where audio-makers stand silently in fields (or things that could be broadly interpreted as fields). »

When Homebrew breaks your Python virtual environment

Ever had your old, trusty Python virtual environment fail on you? I sure did. Sometimes, when I activate or switch between virtual environments, I get the following error: $ workon eve dyld: Library not loaded: @executable_path/../.Python I never really took the time to look into it. When this happens, because I am in a rush (and because I am a lazy old fart), I shrug it off, recreate the virtual environment on the spot, and get back to work. »

Book Review: The Water Dancer

The Water Dancer is the debut novel for Ta-Nehisi Coates, an author and journalist best known for his nonfiction works. Set in a slave plantation located in pre-civil war Virginia, this is a bold and ambitious story about slavery. From the editor website: Young Hiram Walker was born into bondage. When his mother was sold away, Hiram was robbed of all memory of her—but was gifted with a mysterious power. »

Strong opinions on software development

After six years in the field, Chris has shared his strong opinions on software development practices, languages, and methodologies. I like his attitude. Willingness to continuously put one’s personal views under scrutiny, eventually adapting or even changing them as needed, is not a common trait. Not in our field. While I generally agree with most of his opinions, I feel the urge to comment on a few of them. Typed languages are better when you’re working on a team of people with various experience levels »

The Great Unbundling according to Benedict Evans

As a non-native English reader, I had to look up the true meaning of “Unbundling” as a neologism. According to Wikipedia Unbundling is a neologism to describe how the ubiquity of mobile devices, Internet connectivity, consumer web technologies, social media and information access in the 21st century is affecting older institutions (education, broadcasting, newspapers, games, shopping, etc.) by “break[ing] up the packages they once offered (possibly even for free), providing particular parts of them at a scale and cost unmatchable by the old order. »

Upcoming speaking engagements, with ramblings

I am presenting at two different events in February next month. Given the current COVID situation, that is entirely unexpected. In 2020 I only gave four talks, three of which were virtual. I am not holding my breath for 2021. Conferences are going virtual all year-long. Next year too, most likely. There are some clear advantages in going virtual, but the final result is a net negative. Any conference junkie will tell you that she/he attends for the people first, and only then for the sessions themselves. »

The unreasonable effectiveness of simple HTML

We’ve seen other articles pointing the finger at unnecessarily bloated websites. Terence Eden’s On the unreasonable effectiveness of simple HTML deserves mention, I think, for two reasons. First, the delivery is incredibly effective. Second, it is effective because of the storytelling. By enveloping the message into an original short, touching story, he achieves two goals. First, he captures the reader’s attention; second, he makes the experience memorable. Please, go and read it; I’ll wait here. »

On the short, tormented life of Phil Katz

Bless the Internet Archive and its Wayback Machine. With it, we can go back in time and read The short, tormented life of computer genius Phil Katz, an unusually detailed and accurate article published in the April 14, 2000 issue of the Milwaukee Journal Sentinel. When he was found dead April 14, Phil Katz was slumped against a nightstand in a south side hotel, cradling an empty bottle of peppermint schnapps. »