Blog

Computer Stuff, Issue 1

May 31, 2019

Welcome to the inaugural issue/volume/post of Computer Stuff! I've been reading a lot of Matt Levine's Money Stuff (which is about corporate finance), so I thought I should write posts in the same style under the title Computer Stuff (about software). This will probably be weekly, but since this is the first, I feel like I'm allowed to use any material since the beginning of time.

Kenneth Reitz's Fundraiser

What is python without requests (requests is a very popular HTTP library written by Kenneth Reitz)? What is open source without drama?

The idea that novel technology stacks are free but a few pages of docs cost $28k is bizarre. The idea that you can't afford to implement new features because you're going to spend the money on documenting the new features you can't afford to build... it doesn't make any sense at all.

[...]

contrary to Reitz's public reputation, every time I talked to anyone who had worked with him directly, they expressed serious discomfort with him, and many had their own disturbing stories – mine was nowhere near the worst. For example, Ian Stapleton Cordasco volunteered to go on the record publicly, stating: "Having to deal with Kenneth all these years has made it such that I barely work on python open source software anymore and have largely, quietly left the community".

Ian has done a stint as a requests maintainer and also was an important chardet contributor, among many other open source contributions. His most recent blog post starts

Summary: I've been writing and maintaining Open Source Software for over 8 years now and it has been simultaneously the catalyst for the success I've had professionally and the misery I feel on a daily basis.

Kenneth has a response.

All that being said, I'm not sure why this person feels the need to attack my character, including curating a list of quotes (what?) from "collaborators". All I have to say about this section is hey, if you don't like me, don't fucking work with me. I don't have time for two-faced relationships.

[...]

Update IV: Expect a Requests III Development Update post on my blog, soon!

The development update currently on his blog is slightly different from the one originally posted. The original had a bit about ownership:

Who owns requests? [...]

The answer is Kenneth Reitz owns requests, which is fine. He created it, licensed it openly, and evangelized it to the point that it is where it is today. Regarding sponsorship, I asked once, of the key maintainer of requests, what he thought of me collecting money from the project, or working on a next version. They said: "You can do whatever you want, it's your project".

This made me do a double-take. This isn't the way normal people write about themselves. This was posted to Kenneth Reitz's blog, but he refers to himself as "Kenneth Reitz"/"he" and then as "I". Imagine if I wrote

"raylu wrote this blog. He created it and took it to where it is today. Regarding sponsorship, I once wrote, switching back from 3rd person to 1st person, I can't finish this sentence."

2-D Grids for Conditional Expressions

The Racket 2d docs:

The #2d syntax extension adds the ability use a two-dimensional grid syntax. That is, you can draw an ASCII-art grid and then treat that as an expression.

And then a bunch of boring stuff. This tweet cuts to the chase: 2d

I can't decide if I love this for being a fresh, hip take or I hate this because I am too old and curmudgeonly.

COBOL

People wring their hands about COBOL because nobody wants to program in it. But at the same time, it's hard to move the sorts of mission-critical systems off of it because they're giant piles of COBOL spaghetti that happen to work.

So here's a story.

After 54 years of operations, maintenance, and extensions, the component's code had become poorly documented. The technical design of the existing system, which was needed to support the modernization effort, had to be derived from the existing system and code.

Key characteristics of this component included:

  • Annual operating costs over $30 million, largely attributable to mainframe hosting and maintenance costs.
  • 1.3 million lines of COBOL Source Lines of Code (SLOC).

So they used a "COBOL-to-Java code automated refactoring solution" and now the U.S. Department of Defense has one less pile of COBOL and one more pile of Java.

That One Debian Package

That's enough success stories and generally happy thoughts for one issue. Back to your regularly scheduled open source drama.

The Debian Anti-Harassment team removed the weboob package (weboob stands for "Web Outside of Browsers"). This stirred up some drama, which is nothing unusual and not newsworthy. This LKML post, however, is just too quotable.

We, the men who actually do work, are treated as the same worker-slaves everywhere.

I wasn't too sure whether the Debian guys were making the right decision, but when I read the above, I'm now convinced that they did.

A Plug for Myself

I wrote a blog post titled Analyzing Performance Analysis Performance.

That's the start of how I ended up going down a rabbit hole for an hour and reasoning about a time warp and at this point you think this is an Alice in Wonderland joke but it's not.

It's about my experience debugging a PostgreSQL issue on Docker for Mac and I've been told it's a fun read.