What has been helping me towards becoming a professional web developer

I studied computer science and after three years doing some research in Computational Linguistics, in 2008 I followed my interest in alternative forms of education and switched to being a teacher in an alternative school.

Twice, in 2009 and in 2011, I already had the idea to change career and become a web developer. I already knew HTML, CSS and basic JavaScript, so I played around with a few CMS and started to have a look at Ruby and Python. It didn’t lead me anywhere though as professional and familial obligations kept growing and led me each time to stop learning.

So this is now my third attempt at becoming a web developer. It has been almost a year since I started again and this time, because of an evergrowing enthusiasm, I just can’t stop!

It still took me a few months to really get started though and I would like to share a few productivity and learning tips that I believe could be useful to other aspiring web developers.

Productivity

Because I am a father and work a full time job, the amount of time I can put aside to learning each week is rather limited. This makes productivity a number one priority.

What has been working well for me in finding a sustainable rhythm (read: not working at night till 4am learning exciting new things and needing two days to recover) is to have a set weekly schedule. I usually do 8–10 hours practice on Sundays and do my best at doing 1–2 hours in the evenings on weekdays. Saturdays are spent “unplugged” and dedicated to time spent with my lovely wife and children.

A tool I like to use to help me keep track of things and be more productive is Trello. I use it as a Kanban board. If you are new to Trello, feel free to have a look at this public board:

I also really like to use time management techniques such as the Pomodoro technique, that is to say using a timer to break down work into intervals (~25min) separated by short breaks (~5min). It helps me keep higher energy levels and take some distance from what I am currently doing. I usually come back much more efficient after a break.

The curriculum

As I already mentioned I already knew some HTML, CSS and JavaScript. But what should I learn next?

I started with what I was excited about: Meteor. For the reason that with Meteor you can do powerful things easily, it was a good choice: I could quickly build a database-powered-website without having to understand too much about it... and it gave me a great sense of accomplishment ☺


The second thing I have found most valuable in helping me finding out what to learn next was to check out job postings on the Internet, in order to see what skills are the most looked for.

Next, checking out coding bootcamps’ curricula has been quite useful. By checking what the pre-requisites/requirements to register or seeing for which technologies they are offering trainings, one gets a good sense of what is relevant.

Yet there were times, after finishing a tutorial for instance, when I still felt like I was not heading anywhere, that I was missing a long-term structured plan.

If you cannot or do not want to attend a coding bootcamp, this is where Free Code Camp comes to the rescue! It is a free online platform providing a structured training to go from no coding experience to a Full Stack Developper certificate. If you haven’t heard about it yet, you should definitely check it out.

Typing

I never really learned to type quickly. This is why I always try to do around 10 minutes typing practice first thing when I start working on the computer.

Keeping it healthy: time management and exercising

When I am doing some programming I tend to lose track of time. And spending hours without moving, eating or drinking is probably not the best way to stay healthy. This is also why I find the use of the Pomodoro technique so valuable.

Now, one might think that there is no room for anything else when you are already juggling between a full time job, some quality family time and learning a new job. Well, on top of cycling to work every day, I do some sport twice a week. Well, if exercising is not your thing, I recommend you give it a(nother) try. I have been amazed how much more physical and mental energy I get from it. It really makes me a happier, more efficient person.

Real practice

For now I have only done one professional project, a website for an architecture studio. Doing a full project like that surely has been the best and most gratifying way to learn.

It might be hard to start off though, as you need to find someone who is willing to trust a beginner. I was lucky enough to know someone who needed a website and jumped on the occasion!

The martial art of coding

Apart from this real project or from following the Free Code Camp curriculum I have enjoyed solving the coding challenges found on the Code Wars website. The best thing about Code Wars is, in my opinion, the fact that one can see other people’s solutions after submitting one’s own solution to a challenge. It really helps getting a deeper knowledge and understanding of the programming language used.

Podcasts

This is the best thing about learning web development in 2016: you can learn anything while walking, cycling, exercising, relaxing, lying eyes closed on the sofa... I learn so much while listening to podcasts!

To cite just a few, I really recommend you check these out:

Closing words

There is so much to learn about web development. This is what makes me so excited about this field but it also makes it somewhat hard for a newcomer to navigate through this ocean of knowledge. I have just shared what I have found useful on my journey so far and hope this information will benefit others. So here again in short:

  • Use tools like Trello to plan your days and projects
  • Trying out technologies you’re most excited about
  • Working on real projects whenever possible
  • Keeping track of time with solutions like the Pomodoro technique
  • Learning from others, for instance using Code Wars
  • And listen to loads of podcasts!