My name is Matt Hancock and I have worked as a recruitment consultant for Jenrick IT, an IT recruitment agency, for many years. I was inspired to write this Blog as I was chatting to a senior developer I know about a candidate applying for a junior C# development role who is self-taught in both C# and C++ at entry level. Although I am aware this candidate had not been formally trained in either language, I felt the fact they had wrestled with C++ without tuition and support and made sense out of what, I believe, to be a tricky language to learn, showed they had a real drive and thirst to learn languages and was worth championing with a particular client who is currently looking to fill a junior development role. The senior developer I was talking to described an analogy to me of his interpretation regarding the complexities of learning and using various development languages taking the form of how to build a wardrobe out of wood using each language. As you read this Blog, please bear in mind that this is intended as a light hearted piece and is a personal view. For such a short article it tries, as best as it can, to take into account that each language has its own complexities and points in its favour as well as challenges facing each user. Anyway, that said, please let me share the following with you and if you would like to add your own comments, please feel free to do so. Tasked with building a dedicated piece of quality furniture you have the following choices:
From the DIY Shop:
- GUI/Forms based development
Flat packed, just stitch it all together, easy in theory but can be slow and fraught with danger, if one piece breaks (upgrades!!) it can all break.
From the Timber yard:
- C / .Net / Java /Pascal
Already cut into usable chunks, the outcome depends on which yard you go to and how large your truck is.
Dropped into a Forest:
- C++ – handed a chainsaw to get started and can choose any tree.
- Assembler – handed a short handled axe to get started on any tree.
- Embedded – handed a full complement of carving tools but only allowed to use a small clump of the trees and only vertical cuts are allowed.
Dropped onto a desert island:
- Fortran - with just enough wood and tools to build a boat that can then take you to the mainland to find a forest.
All web development:
Made from wood in any of the above ways, then veneered, laminated and/or sprayed a different colour i.e. keep the wood but change the finish to suit the fashion.
All mobile development:
From any shop / yard / forest, make the wardrobe in wood, then place into sand to create a mould into which molten metal is poured in order to make the same product but in metal i.e. it might look good but there’s nothing original about where it came from. So there you are, I think you’ll agree it’s a bit of a different take on how to describe the variances between each of the technologies / languages out there. IMAGE SOURCE: Thanks to retirement-cafe.com for the original image FURTHER INFORMATION:
- If you are a developer or work within the periphery of this world or thinking of entering into it, I’d be interested in your thoughts.