Learning to Code #3 | Javascript and hitting a slump

javascript book jon duckett flatlay with sharpies and mac computer learning to code

I am writing this having nearly finished my web developer course, which is absolutely crazy to me. I’m a little bit behind with publishing these updates, by a couple of weeks at least! I do, however,  still want to give an honest account of how I felt at each stage of the process. Including what I have learnt from each programming language along the way. These drafts were written as I was learning, so I have left them pretty much as they were originally. This was the week I took on the Javascript section of my course.

What is javascript?

Javascript is a super powerful, in-demand programming language. It is the code that makes your website interactive. Like HTML and CSS it is used by pretty much all websites and is not to be confused with Java which is another language entirely. (This used to confuse me so here is an interesting thread on Stack Overflow to explain). Javascript is mostly used as a client side language to manipulate content within web browsers but does also have server-side applications. As it is so widely used there is also a huge support network, so if you do get stuck, the help is out there. Basically, it’s a really useful skill to have under your belt.

In real terms, javascript is the difference between having a static web page that looks pretty but doesn’t really do anything (like a sheet of paper) and having an interactive website with buttons, animation, sliders, a rolling picture gallery, etc.

It is often the first foray into ‘real coding’ which can set you up for learning and understand more ‘server side’ languages such as PHP and python.

Why you should learn javascript.

A bit of a contradiction to what I write about later in this post but everything gets easier after javascript. Understanding wise that is.

The first time you encounter loops, variables and functions is a minefield. It is scary and overwhelming and after the warm fuzzy blanket of HTML and CSS, it basically feels like you’ve been hit by a tonne of bricks. Your brain has to work ten times harder, just to keep up with the most basic task.

The first learning hurdle is a bloody big one. Luckily, once you realise that these functions, methods and objects crop up again and again in many other coding languages, you begin to understand how they work and how important they are. They show up in jQuery, Bootstrap, PHP, Python etc.  just with slightly different names or syntax. So whilst it feels overwhelming to start with, by the time you’ve worked your way through a couple of other languages it becomes second nature. I mean, it’s still difficult because I’m new and still learning, but it no longer makes me want to curl into a ball of despair. So that’s a positive!

A tip I would have when starting out with javascript is to brush up on your high school maths skills. I did well in maths at school so fortunately, I found it fairly easy to fall back into (though it’s surprising just how much you forget!). It isn’t essential as with everything in life, you can google it. By learning some simple maths, it will help a lot in understanding some of the basic concepts and reasons for doing things. Especially when you get into for/while loops and arrays.

Hitting a learning and motivation slump.

The aim this week was to complete the javascript section of my course and start incorporating it into my own website. I managed to complete the javascript, but yet again seem to be stuck in a portfolio rut. I have found myself in a very strange position over the last few months. Not unexpected, as obviously I had planned to leave full-time work to pursue my studies. But as I come up to the 2-month mark ( at the time of writing this) I am starting to feel a little lost. There are so many directions to go with web development and I feel like I want to explore all of them.

I have even managed to nail down quite a large skill set in a short space of time. The problem is, I have no mark of what is good enough. I can’t live this way forever and at some point, will have to start earning, hopefully with web development (at worst with a part time job- so I also see I’m pretty lucky in that respect). I’m not entirely sure if I have hit a slump because I don’t know which direction to take or because it’s simply new and overwhelming.

Dealing with the doubt.

I could bullsh*t my way through an interview, or freelance job proposal in order to set up my earnings. The problem is,  I’m far too honest. I’ve no issue with others taking the ‘fake it till you make it’ approach. It clearly works for many. I just couldn’t take on a job without being 100% confident that I have the skills it requires (or at least be able to work it out). Maybe its imposter syndrome, or maybe I’m just not ready. Either way that leaves me stuck between a rock and a hard place.

Do I embellish the truth a little? In order to start booking small freelance jobs, and take the risk of not being able to do the work (with no one to fall back on and an impact on future reputation). Or do I continue to study – without earning- until I feel confident that I can deliver. But there is no guarantee that will ever happen.

I am mainly thinking out loud here, and I’m sure I will work it out eventually. The thing with code is you can continue learning forever. Literally, there is no ‘endpoint’ as new updates and languages are constantly being created. The dilemma is knowing at which point I am considered worthy of hiring. So I guess that’s my next challenge.

louminous blog javascript leraning pinterest

Have I managed to achieve this week’s goals?

As with my HTML and CSS posts. I have listed my previous goals for this section below:

  • complete javascript section of course
  • learn how to make websites interactive and responsive
  • complete Javascript and jquery book by Jon Duckett
  • look into creating printable summaries on canva – then actually do it
  • start building my portfolio

I’ve completed the course sections and built the interactive ‘reaction testers game which involved generating different sized and coloured, circles and squares appearing at random. You test how quickly you can click on them and the game then gives you a response time in seconds. Super basic but actually very satisfying to build.

Completed the javascript section of the JavaScript & JQuery by Jon Duckett*, which probably aided my understanding the most. The course is great and covers the essentials, but the understanding gained from a book is invaluable.

Canva and I currently have a love-hate relationship. I think I need to learn a little more (so I can produce something concise and useful) and get myself ahead with posts for this blog before I take on even more tasks. I have so many ideas but I don’t have the time to execute them all, whilst learning to code and maintain a website. I’m going to focus on fewer things but do them well.

I still haven’t started building a portfolio. Apparently, I am hell bent on sabotaging myself, I will tackle this!

Resources when learning javascript!

I will leave you with some of the resources I have found the most useful whilst learning javascript and in what way they have helped. If you have any further recommendations, I would love to hear them. As I said earlier, you never stop learning.

Code Combat

This first one is a little silly, but if it works, it works. Code combat is a coding game, generally aimed at kids where you use code to move your characters through the challenges. The thing is, we all start somewhere. If you’re feeling your brain go a little fuzzy from staring at complicated code and lectures, this is a great way to switch off for a bit, whilst still learning. It is particularly good for getting used to the syntax of javascript. You can also use Python to code with if you wish.

JavaScript & JQuery by Jon Duckett*

Written by the same person as my HTML and CSS* book, this Javascript version as been equally as good. If not better. In order to truly understand and learn a new language, it is so important to know the fundamentals. This will allow you to build things from scratch, as well as be able to understand any code you do ‘copy and paste’. You should always understand any code you use before implementing it, as a general rule of thumb. The best thing about this book, in particular, is that it explains concepts in real world terms. This meant when I came to apply it in the lectures, I understood why I was doing so.

Javascript in One Page

This is essentially one giant javascript cheat sheet. It is a lot of information on one page but is great to use as a reference. Very useful when you want to view things ‘at a glance’. You can also utilise the CTRL/CMD ‘f’ function on your computer to find more specific things  – which is harder on a site that has numerous pages.

Goals for jQuery
  • Build on my understanding of javascript to be able to apply jQuery in an efficient way
  • Start my portfolio – finally, once and for all…
  • Finish Javascript and jQuery book entirely
  • Learn more about how to set websites up on the hosting/server-side.

If you are currently trying to learn new coding languages and are discovering the very real struggle, don’t give up! It gets easier the more you practice. If you ever need any words of encouragement, you can always send me a tweet @lucylouminous or even a Facebook message and I will try my best to help!

*affiliate links

Leave a Reply

Your email address will not be published. Required fields are marked *