Weaving a Digital Tapestry

The musings of a .NET developer.


Equality is such a simple concept at a high level, but don't fool yourself. The devil is in the details. Correctly implementing equality is actually much harder than you'd think, and most code I've seen has done it wrong. There are a lot of very subtle rules you should obey when implementing equality that are easy to forget or to implement incorrectly.

Pragmatic Languages

I was influenced heavily early on in my career by the book The Pragmatic Programmer: From Journeyman to Master1. One of the best pieces of advice given in that book was to learn new languages. That's a continuous process. You should never stop learning new languages. Most developers basically learn a single language and spend their career programming in it, but the pragmatic programmer knows that this is a mistake. There's the obvious problem: languages come and go, and thus so can your career. This even happens to programmers that use languages “that will never go away.” For instance, COBOL is still used pretty heavily, and I'm not about to predict when it will ever truly disappear. Despite that, I saw many a COBOL developer who's career ended in the late 80s and early 90s as the demand for the language waned. That's a silly position to be in, since demand for programmers was on the rise.


Over on the Wyam Gitter Jamie Phillips (@phillipsj) made a casual remark about using my PowerShell script I use in this blog's source for creating new blog posts, and how he was trying to modify it for draft usage. That blossomed into a whole new project under the Wyamio organization called PoshWyam that I've been hacking at for a few days now. It's in preliminary (read “alpha”, not even "beta") state right now, but it is ready enough for people to use and provide feedback. Once we are ready this will go up on PowerShell Gallery, but until then if you want to use it you'll need to clone the repo.