Starting a Coding Bootcamp - Fundamentals
Tags: javascript, beginners, career, bootcamp
Published: 2019-12-30 17:40:18

####The first few weeks of coding.

To start with I was learning HTML and CSS basics, as well as some JavaScript fundamentals on websites like [Codecademy](https://www.codecademy.com/) and [FreeCodeCamp](https://www.freecodecamp.org/). I’d been doing these online tutorials and katas (online coding challenges) alongside working full-time, so it was quite time consuming but I needed to be sure that coding was for me. Nailing these fundamentals and fully understanding them was also key to getting along easier when more complex ideas would be introduced later.  Once I was confident enough, and after a lot of researching bootcamp graduate outcomes (including a fair amount of LinkedIn stalking), I took the leap and signed up for a bootcamp.

![FreeCodeCamp](https://media.licdn.com/dms/image/C511BAQHqArTPxU3gMg/company-background_10000/0?e=2159024400&v=beta&t=10xyPsaeWAy28faW2xhUhaNnmyGKiuq-fCNjHviubNM)

####So, what's it actually like getting started? 

One of the realisations I’ve had so far is I now know how it feels to be coding full-time and it’s easier to get a feel for how that might translate to the workplace. I’ve always preferred to learn quickly, especially when you get straight to putting the concepts into practice. Let's just say doing a bootcamp **is hard work**, but at least you'll never get bored! 

It’s important to understand you won’t be building apps from scratch on day one, even if you could follow a YouTube tutorial and do this at home. That won't cut it in a job. You're changing careers to do work in what is basically a foreign language in just a few months. There's a lot of times you'll feel like this...

![Alan Thinking](https://media.giphy.com/media/DfSXiR60W9MVq/giphy.gif)

It’s about understanding everything from the bottom up; not just being able to code, but about being able to explain why you're doing what you’re doing. One of the trickiest things to get used to is that the answers aren’t always going to be there, and that tutors will only help you so far. In this case, learn to Google. What you'll be told a lot is that devs are basically professional Googlers. 

![Google It!](https://media.giphy.com/media/3269mfsCyevQsbZ9qv/giphy.gif)


Getting stuck and getting yourself unstuck is a huge part of what makes code enjoyable, if you like to solve problems then you need problems to solve!

####What Have I Learnt?
So far in the first 3 week block I've been introduced to the command line, Git, GitHub, HTML, CSS, and JavaScript. I feel comfortable with coding concepts such as closure, recursion, functional programming, and using classes in OOP. Everything has been done using test driven development (TDD) - which is something that you should definitely, always, 100%, be using. It's what's used in actual development of production code to make sure everything works as expected, so early exposure to TDD is a great thing for anyone looking for a career in development.

![Do It!](https://media.giphy.com/media/b7f0X8Okk1uyk/giphy.gif)

Over the next few weeks I'll be covering all things back end. I’m excited to start using my coding skills to work with API’s and real-world data. You can check in on what I'm doing by having a look at [my GitHub](https://github.com/alexandertrout) account. 


####Key Lessons:

- Coding style is IMPORTANT
- Use the command line now so you’re ready for later
- ~~recursion is really easy to understand~~
- Closure, recursion and async are difficult to wrap your head around. You need to know them well, so just do the research until you understand! 
- You can never do enough katas
- Google.
- TDD.
- Enjoy it, it's exciting to learn how tech works!