Articles about being a professional software developer.

The Nature of Experience

Saturday, October 22 2016 professional

Most people would agree that gaining experience is vital to career development, and I’m sure most managers would contend that their hiring decisions are, at least in part, driven by finding people with relevant experience to contribute to their team and their business.

Read more »

Consideration Driven Development

Sunday, December 13 2015 professional

Reading An Experiment in Think-First Development on the AgileKiwi blog has set me to thinking about the nature of software development and why it is that we do the things we do.

Read more »

Every Team is Distributed

Sunday, December 06 2015 professional

I was reading The Rules of Attraction: Location on Mark Seemann’s blog when I had a thought: Every Team is Distributed.

Read more »

Options for Better Documentation

Sunday, November 08 2015 professional

In my last post we explored a number of common approaches to documentation and the ways that they fall short. Fortunately, the story doesn’t stop there - we can (and should) do much better.

Read more »

The Problem with Documentation

Sunday, November 01 2015 professional

I’ve been asking developers I know whether they think their current project is properly documented. Not one of them has said that they’re happy with the documentation they have and most have talked about the need to write more. I suspect the problem is not one of volume, but of accessibility.

Read more »

Developer Stereotypes and Career Choices

Sunday, July 12 2015 professional

It’s well known that the human mind takes a lot of shortcuts - it’s one of the ways that it achieves the extraordinary levels of operation that we collectively refer to as “intelligence”. These same shortcuts also lead the mind to make some interesting mistakes - a rich field of quirks ripe for the both ethical researcher and the unethical conman.

Read more »

A Keyboard of Value

Sunday, July 05 2015 professional

A developers choice of keyboard is an intensely personal one. Some people favor the original IBM Model M with it’s mechanical key-switches. Jeff Atwood feels so strongly about the importance of choosing the right keyboard that he created his own.

Read more »

Full stack developers - Do they really exist?

Sunday, June 28 2015 professional

So I have to ask whether Adam Bertram, over on the Pluralsight blog really has a point to make or whether he’s just creating linkbait to drive traffic. (I hope it’s the former, since many of his other blogs are quite worthwhile.) For a start, Adam asks a simple question - the same question that I posed as my title - Full stack developers: Do they really exist?

Read more »

Of Software Value and Logging

Sunday, June 14 2015 professional

In my previous post we established that a key factor in professional software development is delivering value to the business - that we are constructing a business asset and that we should be building the greatest possible value into that asset.

Read more »

Of Asset Creation and Business Value

Sunday, June 07 2015 professional

Think about what you’re doing when you next write a test, code a feature or fix a defect. Why are you writing that test, coding that feature or fixing that defect?

Read more »

The Only Constant is Change

Tuesday, March 17 2015 professional

It’s a curious thing how many developers - and other people in the ICT industry - have a problem with change.

Read more »

The Nature of Experience

Sunday, November 09 2014 professional

Most people would agree that gaining experience is vital to career development, and I’m sure most managers would content that their hiring decisions are, at least in part, driven by finding people with relevant experience to contribute to their team and their business.

Read more »

Why attend a user group meeting?

Sunday, May 12 2013 professional

Recently, someone asked me why it was a good idea to attend a local user group meeting. Here’s a longer version of the answer I gave at the time.

Read more »

The secret to Awesome software

Thursday, January 03 2013 professional

What is the secret to writing awesome software?

Read more »

Solve the right problem

Saturday, November 24 2012 professional

Over on Ryan Abrahamson’s blog is a post entitled “Problem Solving vs. Solution Finding” that is, at best poorly thought through.

Read more »

Computer Abuse and Safety of Data

Saturday, August 04 2012 professional

It always pains me to see a perfectly good computer that’s been abused.

Read more »

Riding the Wave of Email

Wednesday, June 20 2012 professional

Staying on top of the never ending tsunami of email can be a significant challenge at the best of times, let alone when you work in an organisation that treats email as it’s very lifeblood.

Read more »

Older posts

Growing older and keeping it simple 17 Apr 2012
When a bomb beheld 24 Jan 2012
Looking forward to 2012 31 Dec 2011
Pay it forward 25 Apr 2011
Sharpening the Saw 18 Apr 2011
Questions for Senior Software Engineers 19 Feb 2011
The unspoken truth about managing geeks 15 Feb 2011
Strategies for becoming a better programmer 26 Jan 2011
I Choose to Ride the Tiger 29 Nov 2010
Where does your challenge come from? 24 Sep 2010
Top 10 Mistakes to make in class 19 Aug 2010
Simplicity 19 May 2010
What makes a Developer? 01 May 2010
Process Improvement 25 Feb 2010
A Boys Club? 28 Jan 2010
On Priorities 17 Dec 2009
Software Craftsmanship 13 Nov 2009
Nobody wants my Code 11 Oct 2009
Coming up to speed 10 Sep 2009
Are we speaking the same Language? 26 Aug 2009
Using new Language and Library Features 23 Aug 2009
Two dangerous little words 16 Jul 2009
Want to get more done, faster? 30 May 2009
Defining Polymorphism 07 Apr 2009
We are not our Users 05 Apr 2009
Stages of Competence 22 Mar 2009
The word "Estimate" 12 Mar 2009
Be A Better Developer 10 Feb 2009
The importance of Attitude 19 Jan 2009
On NNPPs 10 Jan 2009
On Leadership Styles 18 Dec 2008
The right knowledge for each problem ... 25 Oct 2008
Creative Discipline 25 Sep 2008
Fail Loudly 23 Sep 2008
Attitudes to Change 16 Jun 2008
Preaching the wrong message 27 May 2008
Studying on the Move 18 May 2008
The Curse of Remembered Pain 14 May 2008
The Gray Zone 04 May 2008
YAGNI is no excuse to be lazy 12 Apr 2008
The One True Way 30 Mar 2008
What are you measuring? 24 Sep 2006
What makes a Professional Developer? 25 Jun 2006
One in a million 20 Jan 2005
Self Improvement 23 Jun 2004
What makes a Senior Developer? 21 Mar 2004
Refactoring 07 Mar 2004
Ethics and Professionalism 11 Feb 2004
How important is assembly language 07 Feb 2004
Chris Sells 15 Jan 2004
Writing Secure Applications 01 Jan 2004