Content from 2019-06

Dealing with Errors

posted on 2019-06-24

The Jargon File defines programming as: “A pastime similar to banging one's head against a wall, but with fewer opportunities for reward.” Every programmer knows the frustration of looking for bugs that just won't be found. In fact, the majority of a software's development cycle is usually devoted not to the original writing, but to the subsequent debugging. Somebody who is good at finding and fixing mistakes therefore not only produces more reliable code, but is also a more efficient developer. So what techniques can we use to find bugs, or, if possible, prevent them occurring in the first place?

more...

The Art of Abstraction

posted on 2019-06-17

“Software's Primary Imperative has to be managing complexity”, says Steve McConnell in his book on software construction. In the first article of this series, I already said that reducing complexity makes software simultaneously more reliable, understandable, and extendable. Now, we are going to take a look at how that is possible.

more...

Challenge Completed

posted on 2019-06-13

Well, it is twelve weeks later. And I am glad to announce, I have successfully completed the Monday Challenge! Twelve articles in twelve weeks, a total of almost twelve thousand written words. Time to look back. Was it like I expected it to be?

more...

Nullboard - Lightweight Kanban

posted on 2019-06-10

After months of trying, my friends and I finally managed to schedule a new pen-and-paper roleplaying session for later today. As game master, that meant a busy last few days for me as I set about preparing a new campaign. Usually, I do my preparations with an actual physical notebook, but for various reasons I decided a digital note app would be better this time around. By a stroke of luck I happened to discover an excellent little tool that I think is worth presenting here: Nullboard.

more...

Understandable Software

posted on 2019-06-03

Having begun our series on software development with a broad look at the basic principles, let us now get down to the nitty-gritty. We said the three key aims of a developer should be software that is reliable, understandable, and extendable. As the second of these is probably the easiest, let us start with that. So how do you write software that is easy to understand?

more...

Unless otherwise credited all material Creative Commons License by Daniel Vedder.
Subscribe with RSS or Atom. Powered by c()λeslaw.