programming

Get a Better Word for Software “Craftsman”

January 26, 2011

Ade Oshineye complains that proponents of Software Craftsmanship misunderstand it: Ill‐informed proponents of Software Craftsmanship tend to make the following mistakes: they don’t read anything except the manifesto and a smattering of blog posts. […] they focus on how Software Craftsmanship can benefit masters rather than apprentices. they think that signing the manifesto is the […]

Read the full article →

Programming is Easy, Software Development is Hard

January 23, 2011

David Brooks has a great essay on which skills are difficult to master: She’s protecting them from the most intellectually demanding activities because she doesn’t understand what’s cognitively difficult and what isn’t. Practicing a piece of music for four hours requires focused attention, but it is nowhere near as cognitively demanding as a sleepover with […]

Read the full article →

Programmers and Micromanaging

January 17, 2011

Everybody hates managers who are fond of micro‐managing. I suppose even the micro‐managers realize this to some extent. So why do they keep doing it and not leave the rest of us alone? Well, one reason is that in the short run, Bad programmers exhibit better quality and productivity if they are micro‐managed. While good […]

Read the full article →

Writing Good Code

January 8, 2011

Randall Munroe (of XKCD) has a nice take on writing good code: Of course, this is an over‐simplification, but it is true that if you set out simply trying to write perfect code, you will never reach there. The achievable target is succeeding in meeting your requirements with a reasonable level of quality, which is […]

Read the full article →

Characteristics of Great Programmers

September 27, 2010

David Veksle does an excellent job of describing them: A programmer spends about 10–20% of his time writing code, and most programmers write about 10–12 lines of code per day that goes into the final product, regardless of their skill level. Good programmers spend much of the other 90% thinking, researching, and experimenting to find […]

Read the full article →

When is It Good Enough?

November 29, 2009

Anecdotes are dangerous. Scott Koon has one about fixing a doorknob, linking it to the now‐infamous Spolksy duct‐tape programmer post and writes: Think about that the next time you reject a new programming tool because you think it might take too long to learn or it’s different. Instead of doing the hacky way you KNOW […]

Read the full article →

Framework Failures for Beginners

November 17, 2009

Zef Hemel writes about the inscrutable error messages that he gets when making typos in Ruby on Rails, Scala and JBoss Seam. I recently saw a new programmer struggle with the RoR errors and I have been a victim of some of the problems that occur when you type a string wrong in Java. For […]

Read the full article →

Why Your Academic Record is Important

November 15, 2009

Jon Skeet has a long post on how programmers fall prey to pretty nasty bugs because they aren’t aware of the details of what they are doing. And he offers the following thoughts: First, try not to take on more complexity than you need. If you can absolutely guarantee that you won’t need to translate […]

Read the full article →

Code Readability

October 21, 2009

Rob Conery pointed out an interesting comment on his IoC post: In this simplified example above you switched from 3 lines of easily understandable code to something that requires code in the global.asax, another couple classes, and an interface. The end result contains an extra line or two of code, but now the whole thing […]

Read the full article →

Do Bad Programmers Know About Technical Debt?

October 16, 2009

In short, no. But why am I asking the question in the first place? Well, much discussion in the technical blogs (such as the NOOP.NL Top 200) is centered around the idea about whether a mediocre programmer will land on a blog where somebody is talking about adopting a simpler approach to programming and then […]

Read the full article →