DEV-DIARIES

Dev Diary 2024-07-26

Super excited to be leading a Cookstyle community hackfest coming up on July 30th, drop in if you want to learn how to write Cookstyle/RuboCop rules or play around with the Ruby AST. This stuff melts your brain in the best way :-)

This is my first Dev Diary post written from Emacs, which has been consuming the burden handled by decades of janky shell scripts I’ve written. Even though I’m still using Hugo for the HTML generation, I’m writing this post in Org Mode, and then exporting it to Markdown for Hugo. While I know Hugo takes Org-formatted files, I’m thinking the next step from here is to export the HTML directly from Emacs. Y’know, in that free time I’ve got a lot of these days :-P I just realized it’s been over 2 years since the last dev diary, so I’ll make an effort to get back into writing these.

I Will Fucking Piledrive You If You Mention AI Again [Lucidity]​

I’m still skeptical on the societal return-on-investment of LLMs, and so I seek out articles that confirm my opinion (like any other blogger):

The crux of my raging hatred is not that I hate LLMs or the generative AI craze. I had my fun with Copilot before I decided that it was making me stupider - it’s impressive, but not actually suitable for anything more than churning out boilerplate. Nothing wrong with that, but it did not end up being the crazy productivity booster that I thought it would be, because programming is designing and these tools aren’t good enough (yet) to assist me with this seriously.

This sneaky 1-line change sped up subprocess#communicate 1000x+ [Matt Stuchlik]​

String performance in Ruby can be slow if you miss the shared string optimization. This seems like something that RuboCop could spot statically, if someone has been itching to write one.

Standard cells: Looking at individual gates in the Pentium processor [Ken Shirriff]​

It’s interesting how ‘quaint’ and understandable the Pentium is these days. Ken does a great job breaking down how the transistors are laid out in the chip, and adds fun historical gems like this one:

Intel started using automated place and route techniques for the 386 processor, since it was much faster than manual layout and dramatically reduced the number of errors. Placement was done with a program called Timberwolf, developed by a Berkeley grad student. As one member of the 386 team said, “If management had known that we were using a tool by some grad student as a key part of the methodology, they would never have let us use it.” Intel developed custom software for routing, using an iterative heuristic approach. Standard-cell design is still used in current processors, but the software is much more advanced.