An Important Tip I Wish Someone Had Told Me When I Started Programming

I'm currently sat on a train..  minus my phone.  In a drunken escapade with my pals involving a bottle of Smirnoff and a drinking game, I went home and my phone decided to go somewhere else, asides from venting, I think losing a phone is a good reminder of our reliance on technology.  When I was 13 mobiles didn't exist..  well not for someone with my budget.  In 2017, the thought of going a few day without a phone hurts.  

As software developers, we work in probably the fastest changing career ever.  In no other type of career will you go to university and then a decade later the majority of what you were taught is obsolete.  Some people are probably still paying off their student loan, for now, defunct information!

If you learn to become a doctor then new knowledge and techniques move forward but generally, the human body doesn't change too much.  10 years ago you might just have learned COBOL.  Now, most people reading this probably won't even remember COBOL.  I do but I haven't had to use it since college, so this brings me to the point of this post. 
As a software developer, the first thing you need to come to peace with is that you will never know everything.  When I started programming I thought that my goal was to have an encyclopedic knowledge of C#, it wasn't.  When I went to interviews etc..  I always felt like a fraud as I thought I didn't know everything about C#.
In this industry no matter how junior or senior you are, most of your time will be spent researching problems and then coming up with a solution.  So when you start programming, my advice to you is to spend your time learning how to solve problems.  Don't spend all your time learning the ins and outs of every framework and language.  When I want to learn something new, I'll spend my time learning the best design patterns, good coding conventions to use etc..  
If I was starting my career again, I would definitely spend more time learning the fundamentals of building solutions. My advice would be to read books like the gang of four, clean coder, refactoring, the pragmatic programmer, head first design patterns.  If you understand the principles of good design, you'll be able to understand the different options you have available to you when writing your code.  You can then Google the actual code syntax you need to do the different aspects.
Most developers I work with simply focus on the syntax of programming and then always struggle to design things correctly, as they haven't got the knowledge of the fundamental approaches to design.  I hope this helps someone at least!

submit to reddit

Jon D Jones

Software Architect, Programmer and Technologist Jon Jones is founder and CEO of London-based tech firm Digital Prompt. He has been working in the field for nearly a decade, specializing in new technologies and technical solution research in the web business. A passionate blogger by heart , speaker & consultant from England.. always on the hunt for the next challenge

Back to top