The development world can seem like a really scary place. Before I made the decision to delve into the computer programming world, I was overwhelmed with doubt. I remember once I was searching candidates for a Java developer role and someone suggested using Github as a platform to find developers on... I gleefully signed up, created an account and started my search. Searching through all these profiles I was presented with this alien language full of abbreviations, comma's, numerous single word lines and not one bit of it made any sense. It looked like the Ancient Egyptians had somehow teleported to the future and had imbedded hieroglyphics onto the very screen in front of me! It took a whole week of convincing my boss that this wasn't the place for a recruiter to find people that finally allowed me to close that account forever.
Fast forward 8 years and I've just set up my new GitHub account, created my first (albeit practice) repository and will shortly, hopefully be filling my account with tons of lines of code from the numerous programmes I'm going to be making.
SO WHY TRY CODING?
I've always wanted to try something new, but as usual I've 'never had the time!" (not neccesarily true, I never made time). The corona pandemic changed all that, for 12 weeks I had nothing BUT time. Having worked in a number of industries including, IT recruitment, Finance, Oil & Gas, Public services & Sports, I've never truly known what I've wanted to do in my career. I played football at a decent level until a major knee injury aged 18 put shot to that career. I floated from job to job thinking it was going to be the 'life long' career that will set me up to retirement only to find that after 2 years it wasn't all it was cracked up to be. My latest venture was only planned to be a short term role as an installation engineer for a media company, however 4 years down the line the role became too comfortable and unmotivating too stay. Like numerous others across the globe, I've had the time to really think about what goals they have in life. I mean generally you work on average 90,000 hours during your lifetime.. might as well do something fun whilst you get paid right?
Whilst technology has always fascinated me, I've always kept an eye on the latest gadgets in the market, what tech is upcoming and whilst not completely sold on all of everything have like most people a plethora of technology which is efficiently embedded in my life. They say that 8 billion devices will be connected to the internet by 2020, an average of one device per person for the entire population of the planet. This is where the future lies.
SO WHY TRY TO DO SOMETHING SO HARD LIKE CODING?
I never went to university
My IT skills consisted of creating the odd powerpoint presentation, spreadsheet or templated in MS office, browsing the internet and playing computer games.
So why try something that looked so alien to me 8 years ago? Despite never fully understanding development I've always held a slight intrigue into how things actually work. The apps on my phone, the websites people frequent daily, the applications/databases I've worked on through the years. As I mentioned earlier, Covid-19 had provided me with the one thing I'd never had, TIME.
So with this in mind I spent a number of weeks researching the best way of getting a job, without having to take 4 years off work to study a degree in computer science, or spend thousands of pounds on private tutorage. Also what could I do that would allow me to learn, create things myself and has a supportive community that I can look too should I need any assistance all whilst working a full time job.
The outcome was Python. I looked into Java, HTML, CSS, C+, Javascript, PHP and Python appeared to offer: a) the most readable code to learn with due to its basic language usage (it's all pretty much written as is) b) it would provide me the flexibility to enter into a number of different roles due to it's adaptability to be used in front/backend development c) a huge number of companies use it already and I've no doubt that will grow, luckily one of which is my current company.
Now I had to work out how best to study. For me by chance I stumbled across a udemy.com advert highlighting sizeable discounts on a number of their courses. I settled on the compete python bootcamp and for me it was the best £17 I've ever spent. The course is easy to navigate and is full to the brim with content. There's support groups on discord.com where there's a ton of queries, questions and fellow developers out there who are happy to help.
I started the course, got so far, then got stuck, then restarted the course, got stuck again, restarted again and now I'm making progress which is pleasing. For someone who doesn't have a massively technical background it's about finding out what works best for you and how you learn and retain the information. For me I tired pausing the tutorials, typing a bit of code, then going back but found that I never really retained anything. A suggestion by Danny Thompson in which the Feynman technique will help has really accelerated my learning as writing concepts down in terms that I could explain to a 10 year old, helped me fully understand what was going on.
For me this is proving to be the best way of learning, but you have to work out what's best for you. Everyone learns differently but one thing I've taken so far is that you shouldn't get disheartened when things get tough (which they will!) I spent best part of two days tying to work out a solution from one of the very early assessments and I remember first looking at the statement and thinking "What am I doing here, maybe this isn't for me", the solution wasn't something that had been covered in the previous lectures and those feelings of the hieroglyphics came rushing back. The feeling of not being smart enough, thinking I'd never be able to crack this secret code almost crippled me for days. Then I saw this tweet:
What a crazy concept this was! I felt like I was cheating, if I used google how would that be any good to my longterm development? Isn't this just like skipping the question and reading the answer? Then it dawned on me that google is just a tool and developers use all the tools in their arsenal to do the best job they can. As long as I used the tools available to find out the answer and then understand why the answer was what it was then that would actually be a positive. If I just googled the answer and then skipped on it would come back to bite me in the future.
So with this new found enthusiasm I wrote down what I thought that part of the code would be and googled a possible solution... and was I right? No! But I was close, which felt as good as being right, which then gave me renewed hope that maybe I could actually do this. In the last week I've used google, twitter & discord to find out the answer to questions I have and every-time, someone somewhere in the world has provided help. The dev community is something to behold. An entire community whereby there will always be someone who will take a moment out of their day, to help someone they've never met overcome a problem that they have probably solved before. Which is why if you're new to the coding world and like me have ever felt disheartened by not knowing something, thought you couldn't do it or wanted to give up... don't! As there will always be someone out there to help.
What makes me special enough that I've created my own blog?
Not much..
Inspired by Catalin Pit & Laura C Harvey to blog my Python journey, over the coming weeks I'll let you into the highs and lows of my progress through the lectures, projects, success and failures of attempting to become a Python Developer. Also this will give me the opportunity to see how far I've come, what I would have changed and also the hope that if only one other person reads these in the future and takes solace from the fact that if a 36 year old, with no computer science degree (or an degree for that matter), no significant background in IT can become a developer with just MacBook and a desire to change his life can do it.. so can you!