Tuesday 23 August 2011

Evil Linq!

I love Linq. Most of the time it helps us do some clever stuff in an elegant, fluent way. Recently though, I have come to dread seeing certain kinds of Linq statements.

The biggest problem I have with Linq, is that it encourages you to write sloppy code, with no error handling at all. This is fine in theory as we 'should' just let exceptions propagate, but in the real world, where you have users editing the content, I have seen many a site go down because someone didn't check for null when getting something out of the repository.

The other issue with Linq is readability and a painful debugging experience. If you use ReSharper like me, you will often get suggestions to covert loops to Linq queries. Fine in theory, but if you have 3,4 or even 5 clauses to it, it quickly becomes painful to read. Combine this with the fact that you can't execute lambdas in the immediate window ( seriously Microsoft - wtf?) and you are in a world of hurt.

Linq makes stuff ugly sometimes, don't do everything resharper tells you kids!

Monday 22 August 2011

Hiring senior developers

Finding good developers is hard.

I don't know about the US, but there seems to be a genuine skills shortage in London. I have seen technical tests and interviewed literally hundreads of people over the last few years and only a handful were good enough for a job.

There were several people who passed the online technical test, but when faced with a technical phone interview, the large gaps in their knowledge quickly become apparent. Of the few that make it through to a face to face interview,  a lot seem to have, how shall I put it, poor communication skills. I'm not talking about the standard interview nerves everyone gets either. I am talking about a genuine inability to articulate them selves. If you can't speak technical to me, the chances of you explaining issues to a pm or client are minimal.

Harsh, but true.