If you can write good code when those about you,
Are breaking builds and blaming it on you;
If you can trust your tests when others doubt you,
And write more tests to cover their code too;
If you can patch and not be bored by patching,
And never prematurely optimise;
Or understand Haskell’s pattern-matching,
And not expect a coding Nobel Prize:

If you can branch – and not commit to master;
Or write terse code - and not make golf your aim;
If your app can recover from disaster
And restart so the state is just the same;
If you can bear to see your OAuth token,
Rejected by an API of fools,
Or find a legacy application, broken,
And fix it up with twenty-year-old tools:

If you can make one heap of all your objects,
And risk them on one garbage-collector pass,
And leak memory because of runtime defects,
And create a workaround within in your class;
If you can force a knackered, ancient server,
To run your site although it’s obsolete;
If you can keep on learning things with fervour,
Or answer a C# question before Jon Skeet:

If you know it’s OK sometimes to goto,
Or unwind loops – to speed up just a touch;
If you don’t let your language choice denote you;
If all platforms count with you, but none too much;
If you can fill the unforgiving git clone,
With 60K of SOLID code (compiled),
Yours is the desktop, laptop, tablet, smartphone,
And – which is more – you’ll be a Dev, my child.

With apologies to Rudyard Kipling.

License: CC Attribution 3.0

(This was originally posted to the Zudio blog by accident (blame Windows Live Writer). I’m migrating that blog to a different back-end, so I’ve put this here, where it was supposed to be.)