June 18th, 2008
I’m an avid follower of the 37signals‘ blog Signal vs. Noise, a post they made about patience as a design principle really clarified my view on people stressing out too much and knee-jerk reaction to problems. I’m not a believer of fire-fighting problems, it’s just isn’t sustainable.
They mentioned that patience as a design principle, but I think it’s also an approach to what you do, all too often I’ve seen people not evaluate what the real problem is and try to fix it as opposed to solve it. Trying to fix a problem based on speculation and guessing is common place from my experience, it’s also goes against one of my favourite sayings of “assumptions are the mother of all fuck ups”.
So my advice, stop, breathe (take a break), and think about why and what is the right thing to do, and be honest with those you communicate it to. A lot of the time the right approach is usually simple or involves taking a deeper a look and being patient. It’s okay to disagree, so along as it’s justified and thought through, to your surprise you may find the opposition may not have prepared as well as you.
Posted in Uncategorized | No Comments »
June 17th, 2008
I agree with with the two hardest things about programming and I would like to add a third.
- Naming things
- Invalidating caches
- Reproducing bugs
Reproducing bugs is just a pain you need to have all the information, otherwise you just have to add more debugging in place and wait for the bug to happen again and hopefully have enough informtion to figure out the problem. Everything else is logical and straight-forwardly tackled, apart from the business issues 
Posted in Uncategorized | No Comments »
June 3rd, 2008
Ever tried searching on Google and typed in the word “review” a long with what the review should be about? A lot of time it’s important to take note on the value of the review, and less on the “5 stars”. What are people really trying to share with you. I tend to notice the trend where products are likely to bought once (e.g. a TV) and it was amazing, they are likely to give an excellent review. However for bad reviews if there was some poor experience either with the product or retailer, that is likely to be voiced and expressed making their concern carry more weight. The opposite is often rarely praised.
Would you tell the world their is a way of getting something cheap and it’s a regular purchase? I would share it selfishly with a select few. I feel this is the attitude of many. Maybe this applies to the “sharing” in social networks as well?
Posted in Uncategorized | No Comments »
April 24th, 2008
Does it just apply to water and pipes, well it depends. You could say it’s architecting really, to me it’s all about order and flow and the act of plumbing seems a good word. I’m a software developer and it feels like that is the key principle behind what I do, or is that what we call problem solving?
Anyway is there a correlation? There’s a shortage of good plumbers and there’s a shortage of good software developers (apparently there is a skills shortage in the UK).
Posted in Uncategorized | No Comments »
October 18th, 2007
One of the joys of working with Ruby on Rails is how quickly I my quick scribbles on the back of an envelope converted to code and working in a matter of hours or days. Goodbye feesibility studies, 100 page functional requirements and design documents, it’s working already! (J2EE, still installing Eclipse plugins?)
Prototypes we call them, but it works the client says, so it’s finished?! Nearly, just needs a little re-factor here and there, sprinkle on some CSS - ship it. I’ve read in many places that “Performance is not a problem till it is a problem”. Definitely a pragmatic point, I like it, the feature works and my development database has got 5 rows in it, hmmm. So when starting a new-ish project that tends to be the approach and the cycles goes on, more and more new features are created.
Once an application has been running a while, you begin to notice things are running like a dog, but we’ve got umteen number of new features we plan to do for the next iteration and the database is huge. Right, benchmarker out where’s the bottleneck before the website grinds to a halt, oh it’s ActiveRecord being clever again! Write some SQL and we’re sorted! On large projects the discovery of bottlenecks start to become annoying and begin to start touching fundamental parts of the codebase. Again being a good developer that won’t stop me, but ah I won’t have time to do those new features this iteration. Check out this article from 37 Signals this will give an idea of my rant of the season and how lookafter a codebase.
So what I have found is indeed in the initial stages do think more about the features and get those done, but before it is too far down the line do revisit and think about if your solutions could be more elegant and perfomant. However in a large project, have basic benchmarks all new code should adhere to, not all teams have a QA that will do performance testing for you. Have a peek in the logs once in a while do you really need all those 120 calls to the database to load a page, hmmm? My take on the saying “Performance is not a problem till it is a problem”, it’s a problem if you have no idea what Rails is doing underneath.
Posted in Uncategorized | No Comments »
June 29th, 2007
Well who would’ve thought with a site like Facebook would be unavailable to certain users for a few hours. I was in the middle of developing a Facebook application then I was suddenly told I need to login and I couldn’t.
I would be sympathetic if was only a matter of minutes but hours is pushing any good user experience in my opinion. Here’s the page I was presented with:

Posted in Uncategorized | 3 Comments »
April 12th, 2007
This morning I was trying to pay for my yearly maintenance fees for my flat. So I called up the management company and said I would like to pay. Initially I said I would like to pay via credit card, they said there is a 2.5% charge. Which is quite a whack for a £800 plus total. So I said ok I’ll pay by debit card, and they had the cheek of saying there is a 95p charge.
I was furious at this point, and asked what method of payment won’t incur a charge, will that be a cheque? Yes, was the reply, how 20th century indeed. I was thinking don’t you want you money in your accounts now rather than waiting well over a week for the cheque to arrive and clear, absolutely no business sense whatsoever.
For you information this company was call CPM Asset Management Limited. I will be writing a complaint to them, and upset them a little. Fucking ridiculous!
Posted in Uncategorized | 1 Comment »
February 2nd, 2007
Deserves a little chuckle

Posted in Uncategorized | No Comments »
January 29th, 2007
Being the weekend after my birthday I had a quiet belated celebration of going to the cinema. Of recently this has been a rare occasion. Anyway Blood Diamond was the film I saw and I have to say I’m so glad I did.
The film had a perfect recipe of plot, culture, emotion, subtle humour and dare I say a hint of truth of the sad state of affairs the world is in. I won’t make a review of it other than I highly recommend you to go and see it. Truly one of the best films I’ve seen in years.
Posted in Uncategorized | No Comments »
August 20th, 2006
An afternoon out to visit to Central London for a coffee and check out some laptops at the Apple Store. Everytime I walk through London I notice some pretty swish cars, but today it was all number plates, I saw one saying along the lines of “H3AV3N”, but this one is the best:

Posted in Uncategorized | No Comments »