Working Code Trumps Everything

December 9, 2020

Computer programming is such a young discipline that it is still very fast moving. New techniques and practices are being discovered regularly. (Unfortunately, also because of the rapid progress, many techniques and practices are lost in the rush and have to be rediscovered on a regular basis.) So many good things. Procedural, object and functional programming paradigms, virtual machines, bytecode, virtualization, concurrency oriented programming, grid programming, containerization and web services (micro or otherwise).

All of these things are wonderful and the certainty of more to come doesn't hurt, but in the thrill of the chase for new technologies, I fear that we have lost sight of a common-sense principle: that is that working code trumps everything.

I've been a computer programmer for a while now (I got my first computer 40 years ago), I love to write code and I love to re-write old code, but I have learned that there is enough work to go around, without the gratuitous re-writing of old code. If it works, and usually it does, if we can be honest with ourselves, then we should leave it well enough alone.

Continue reading →

On Being A Technical Lead

December 8, 2020

It seems to be a truth, universally accepted, that the armies of the world run on their sergeants and the navies on their chiefs. These non-commissioned officers provide a valuable, nay essential, link between those who do and those who tell. (They also try to keep the new lieutenants alive and out of trouble, but that's a different essay.) It is my opinion that a Technical Lead is like those sergeants and chiefs. They are at the top of the pile of those who do and directly beneath those who tell. And as such they are a key link in the corporate I.T. structure.

Most roles on a project are easy to place in the timeline. Everyone knows that requirements gathering is an upfront activity, that computer programmers work in the middle and that quality assurance testers live on the tail end. A Technical Lead is more difficult to place, because they operate everywhere.

First In, Last Out

Continue reading →

Learning Clojure

December 5, 2020

So, for various reasons, I have decided to take a look at Clojure. It is a programming language that implements LISP yet runs on top of the JVM (Java Virtual Machine). For those with long and geeky memories, LISP is one of the programming languages that ESR recommends every programmer learn.

It is a requirement that when learning a new programming language the programmer is obligated to write as their first program the iconic hello world program. While normally a breaker of rules, this one makes sense. Further, I recall writing about Learning Projects and this seemed to be a good time to put my own words into action. Naturally, I will start with hello world.

Caveat: I'm still very much at the early stages of figuring this out, so everything after this caveat may be less than 100% correct. I'll come back later and correct mistakes as I find them.

Continue reading →

Cover Song - Ole Time Religion by Joe Bonamassa

November 22, 2020

Here's one to wake us all up on a Sunday morning. I love many of the old time Pentecostal church songs, but most of the versions on YouTube are slow and warbly and fail to catch the joy that the lyrics of the song are trying to convey. So when I find a solid, uptempo cover of those classics, I just have to share it.

Continue reading →

Working on my Good Habits During the Lockdown

April 23, 2020

With some extra time, I've been trying to build and maintain some good habits. Some I already had, but have tried to take them further.

Mornings now start by sitting with my wife, drinking tea and reading my Bible. I've completed my reading of the New Testament already this year, so my initial plan of reading through the New Testament twice during 2020 has now been upgraded to trying to read through it three times.

After that, it's off to pick up heavy things and put them back down again as a former co-worker used to say. The heavy things in this case are kettlebells. I've done kettlebell exercises before, but a mostly minor shoulder and elbow injury had caused me to back off from using them and now that everything seems good to go in my joints, it's time to get back to working out with them. To ease back into my workouts, I started with my 36lb kettlebell, but now with a successful month of exercise behind me, I have started incorporating my 54lb kettlebell here and there. I shall include it in more of my routines over the next couple of weeks until it has completely replaced the use of the 36lb kettlebell. I do also have a 72lb kettlebell (because "reasons") but it will take a significant amount f work before I'm ready to start transitioning to that one.

Continue reading →