My last blog post talked about how I wish to learn how to crawl before attempting to run with regards to front end development. I have gained a very rough knowledge of HTML, CSS and JS over the years through tinkering, but have never learnt the fundamental concepts and terms associated with these technologies. No structure or formal training whatsoever.
There are two things I plan on doing to rectify this. The first is going through the full stack development course on FreeCodeCamp, one that has been recommended and mentioned by many on the web including designer Eduoard Urcades. The second is going through the basics on MDN, using this to create my own cookbook or glossary of concepts and terms that are fundamental to web development.
I realise that much of this is going to be fairly standard rote learning and memorising. Because of this, I intend on treating the learn like a school course with set hours throughout the day. And just like a school, I will be using a physical book to build my glossary as I am progressing through the FCC course.
With lockdown here in New Zealand extended until at least mid-May, it’s all the more reason for me to spend my time productively. Tomorrow I will set everything up and work for two hours (typical of a university lecture).
Yesterday I had the opportunity to speak with Piper Haywood, a designer and front-end developer based in the UK who makes up one half of the design studio SB-PH. Piper has been running digital coffee sessions for the past month as people across the globe are isolated and affected by Covid-19. Having come across her work with Sam Baldwin before and wanted to get some advice on how a creative might start learning to program, I signed up for a session!
My conversation with Piper was awesome. Talking to someone who also came from a visual arts background was especially helpful insofar as the conversation was not solely centred on the technical aspects of programming. I have spoken to CS graduates before for advice on how someone like myself can get started, what resources I should look into and books to read etc. While this was helpful in its own way, much of what I was trying to do in taking this approach felt a bit pedestrian and prescribed. At the same time I have been trying to run before I knew how to crawl - I don’t know the proper terminology surrounding many things like HTML, CSS and JS, nor do I understand how certain things function or perform. I have been trying to build fully polished things having had little foundational knowledge.
However, despite not having the technical knowledge that a fresh CS graduate might possess, there was one asset that I did have and they lacked. Piper remarked on how having a creative background can be a huge strength when programming and building things, particularly when it comes to problem solving. Where the typical CS approach might be more of a linear A-to-B method, being able to think creatively can start to open up some truly unique ways of working. The technical know-how, while also important, is what Piper described as rote-knowledge - something black and white that just takes continued practice to build up.
Having had this discussion and reflection, it has given me a renewed push towards learning and making. The first step for me is picking up the terms and concepts associated with programming, particularly in front-end technologies, and consistent practice + play!
Part of this consistency is writing down and keeping a record of whatever I am doing. I used to do this religiously in art school and it really worked well for me, so I think it’s about time to pick that up again.
See you tomorrow,