Category: Software development

Writing an Auto-Test Tool in Clojure

10 May, 2010 (22:28) | Clojure, Functional programming, Productivity, Software development, Tools | 2 comments

I’m starting to fall in love with Clojure, and I’m having lots of fun learning the basics of it. The best way to get up to speed in new programming language is to write something useful, so that’s what I’m currently doing.
My first crack at a Clojure program is a simple auto-testing tool. I like test-driven development, [...]

How to Create and Present a Kickass Technical Workshop

16 April, 2010 (14:57) | Craftsmanship, Design, Presenting, Software development | 2 comments

I’m not a great teacher. I don’t have any special instructor credentials. I have, however, attended some bad technical presentations in the past, so I know of some common problems. Fortunately they’re not too hard to fix.
I recently held a programming course of my own. Resolved to avoid as many pitfalls as possible, I invested [...]

“JavaScript Needn’t Hurt!” : A JavaScript Primer

12 March, 2010 (23:08) | Javascript, Software development | 1 comment

I’ve created a free, downloadable workshop for you. It introduces you to the skills, tools and techniques of modern JavaScript development.
The workshop takes roughly half a day (3-4 hrs) when presented properly, with equal parts presentation and practical exercises. You can use the slides and exercises as a personal study aid, or you can arrange [...]

FizzBuzz: A JavaScript Code Kata, TDD Style (Video)

15 February, 2010 (01:58) | Craftsmanship, Javascript, Software development, Tools | 2 comments

A code kata is a short programming task. Its purpose is to let you practice tools and technique. You pick a relatively small problem and practice it repeatedly. Since the task is small, you free yourself to focus on technique and speed, tools and workflows, as opposed to active problem solving.
I was inspired by the [...]

Released My First Real Product!

2 August, 2009 (11:48) | Craftsmanship, Entrepreneurship, Software development, ThoughtMuse | 6 comments

For the past couple of months I’ve worked on a nontrivial project: build, launch and sell a commercial product on my own.
I set fairly strict constraints for the project:

Use less than five months to release the first version.
Work on it no more than fifteen hours a week (nights and weekends).
Don’t neglect my family, which I [...]

Pomodoro Technique Revisited

30 June, 2009 (16:16) | Productivity, Software development | 6 comments

Three months ago I stumbled across a time management system called ‘The Pomodoro Technique’. I really liked it due to the immediate productivity gains it gave me. I thought I’d follow that blog post up with my current impression of the technique, now that I’ve used it for a while. Todays blog entry will make [...]

How To Build Something Real (In Your Spare Time)

29 May, 2009 (16:40) | Entrepreneurship, Productivity, Software development, ThoughtMuse | 35 comments

Starting a new pet project is easy. But finishing it? That’s a different story.
Many programmers love to tinker with side projects. I’ll argue that most of the decent ones do, anyway. Learning new tools makes us want to build things. Innovative technologies, cool product ideas. Unfortunately, the result is usually just a sad collection of [...]

Painless Estimates

14 April, 2009 (15:22) | Craftsmanship, Software development | 2 comments

How do you determine how long something will take to build?
In an ideal world, many of us would probably like to simply work until the stakeholder/product owner decides we’re done, keeping our expense meter running all along. This is (very roughly) the approach taken by agile software development methodologies such as Scrum.
Unfortunately, in the real [...]

Eggs, Tomatoes and Time Management

30 March, 2009 (16:47) | Craftsmanship, Productivity, Software development | 2 comments

It’s evening, and my home office door is closed. No email or IM clients are running on my computer. My daughter is asleep, my Significant Other is aware that I’m working. I wind up the egg timer, the clock starts ticking. My mind quickly enters a state of Flow. 25 minutes later the timer rings. [...]

Invest In Yourself

22 February, 2009 (23:17) | Craftsmanship, Software development | No comments

I wish I could go back in time and give myself career advice.

Actually, I’d probably hold off on the work-related issues. Essentials first: women, lottery numbers, financial advice. Back To The Future 101, right? But with that out of the way: career tips! What would I say to my younger self?
1. Active knowledge management
Cultivate an [...]