Week 5 — Goodbye Ruby, hello JavaScript

I was really excited to start JavaScript this week as it’s been quite a long time since I started with Ruby and I was keen to get to grips with something totally new. When I was at university I really enjoyed comparing and contrasting the similarities and differences between the ancient languages I studied and to explore their relationships with modern languages. At the start of the week we were warned that there were pitfalls to be found in comparing Javascript too closely to Ruby and now I’m on the other side of the week I can see these more clearly. The main pro of comparison is obvious — using concepts and syntax that I had initially learnt in Ruby gave me a foothold and very superficial understanding of JavaScript. However, I can also see that in comparing too closely you can be constrained by incorrect assumptions you make about the new language based on the old language. Our coach, Mary’s opinion — that we should acknowledge similarities between he to languages but treat them as separate entities — was good advice.

My first experience of Javascript has been very positive. The syntax was a pain at first but I have the feeling that I am going to end up liking it a lot. I spent a lot of time this week exploring the structure of the language, using the Chrome developer tools to see both the web page and the inner workings. Getting visibility via console.log() has also been a great help in understanding the workings of JavaScript and in debugging. As always, the Maker’s approach to learning has been really great. After a rocky week last week this week’s challenge has been an acid test for me regarding my progress and in the way I approach new things. Before this course I think the idea of getting to grips with a new language in one week would have been daunting to say the least but the way we have been taught and coached over the last five weeks means this has not seemed like an insurmountable hurdle.

I’ve started to think about next weekend’s challenge, where we will be asked to build any program of our choice (our “side hustle project”). I don’t have any concrete ideas as of yet but would like measure potential ideas against these criteria:

(i) for it to be possible to have a MVP in the two day time limit. Choosing something might be harder than I think as so far we have been given challenges which the coaches know can be finished. I don’t have the experience of gauging the difficulty/length of projects yet but I’m hoping planning and consultation with other developers will help with this

(ii) fun enough to keep me motivated

(iii) forces me to learn new things, i.e. not a clone of a previous challenge (but not too much new stuff — see (i))