Posts Tagged ‘Joel on software’

change fatigue

Thursday, March 12th, 2009

I was just listening to Joel Spolsky and Jeff Attwood on an old podcast of stack overflow (from after Christmas I think), one of the questions was a very interesting one which was how a lot of developers burn out because of the pace of programming and the changing languages (i.e. the numerous flavours of ruby, the latest version of .NET, or the latest ecommerce platform), which essentially boiled down to how do you maintain enthusiasm for coding?

I think this is a really important question and relates to everyone in every profession not just programming although in programming it is more extreme. I can only speak personally but for me, in order to have a fulfilling life it is REALLY important to have a balance between learning new things and practising old skills. Any skew to either one of these will leave me feeling unfulfilled and frustrated.

Learning new things is great. If you aren’t learning you feel your brain getting lazy and fat, the same thing happens to your brain as happens to your body if you don’t do any exercise, leaving you feeling like an invalid human being.

Pushing yourself to get control over something you don’t understand and slowly making it conform to your will is ultimately satisfying and is inherent in all pursuits, however it is incredibly frustrating and involves a lot of trial and error. Which is why it’s vital to balance this with practising something your already talented at, this way you can balance your failures with successes and keep things in balance and you motivated to continue.

This is why in a more practical sense it’s important that you have enough time to learn new things, so if you work in a super busy job that keeps you on your toes 9-5 doing the same thing then you need to make sure it gives you enough spare time to learn some new things. Conversely if you work in a job where everything’s constantly shifting and nothing’s ever the same, you need to make sure you have a constant in your personal life, that you can be successful at.

The future of Agile project management tools.

Sunday, February 8th, 2009

robbie-the-robot-20020500Project management comes in various guises. Throughout my freelance and perm-ilance career I’ve worked for central government in Prince2 environments, advertising agencies with XP environments,  cowboy coding environments, no environment at all with the code stored on various people’s desktops and lastly Agile environments, which seem to be the flavour du jour.

With all of these methodologies comes various different tools to help you get the job done, from MS project & MS excel, Google spreadsheets & docs, adobe connect, sourceForge (resultsSpace2 from Sapient), Jira, BaseCamp, fogzBugs,  and most recently Mingle, a product of the company Thoughtworks. These are all products that do pretty much the same things.

They all have their merits and scalability, but I was thinking of what the next generation of project management tool and it strikes me that these key features will be required (in brackets is the software that already does this):

  • agile project management wall (Mingle) (- with a UI that makes it more like a mind map),
  • IRC style chat rooms (Mingle)
  • Video conferencing & Skype facilities (unknown as to who does this currently)
  • Generic upload capabilities of unlimited size (BaseCamp, mailbigfile etc.)
  • ScreenCasting abilities (Fog creek co-pilot, adobe connect, jing)
  • Time estimation tools (fogzbugs)
  • SVN repository (Sourceforge)
  • bug/task tracking (Jira, fogzbugs, mingle)
  • inline text editing (squizz CMS)
  • packaged Audit trail output(dump)
  • track changes style document/image commenting (MS word)
  • visual screen capture and comment - for bug tracking (Fogzbugz)

Anyone who can put these all into one nicely wrapped up box will come out on top (for the time being) and be able to sell their wares to all of the big agencies, IT consultancies and small players. Having all of these at your fingertips will significantly help to improve the painful process of client centric agile software development.

Also one major feature will be online/offline syncronisation whether using adobe air, wpf or google gears it is up to the vendor.

Most importantly in this world of GDD (global distributed delivery) and 24 hour timezones and economic crisis style proportions, there is one person who will definitely need it - moi.


I’ve just found a comprehensive run down of most web 2.0 project management apps out there for web projects:

trust me to be late into the game… again.