Last week was my first at MakersAcademy, an intensive 12 week course of web development. Monday morning began first with a disclaimer of just how tough the course would be. That our happiness will be affected and even that about 7 weeks in we are likely to be more emotional. Unexpected so lets see. The other oft repeated point was to at any and every point ask questions. Our cohort seams to have particularly taken this second piece of advice to heart. Although this is our first week nearly everyday we have ended up discussing some obscure feature of a topic. Its this kind of stuff that I love and really helps me understand the nuts and bolts. It’s the main reason I have enjoyed this first week so much.
Day one and day one only was set aside to introduce us to the Linux command line and all the functionality this entails. I had always know this was useful but so far had always avoided it. Very quickly I realised my mistake. Not only is it fast and efficient, many of the basic commands are surprisingly easy to understand. Although not all, grep being a pernicious one. By Friday I was using regularly and definitely in preference over messing around in file manager.
Direct teaching is centered around a single session of ~2hrs in the morning and as quickly as possible we are sent off to try things our self, asking for help as necessary. Not only are the teachers great at answering questions but can head many of them off before they occur by directing us to some awesome online resources. My favorite for the week is this little gem for understanding the command line at explainshell.com, also of interest is this book available online.
Day two and a brand new topic; version control with git. I knew a little about git having an account on github where I have recently been trying to work on a library to manipulate SVGs to include in Londonlayout. The mornings discussion clearly demonstrated that I had only scratched the surface of what can be achieved with version control. I learnt that a developers github account acts as their online identity; CV and portfolio; project backup and time machine. Anyone wanting to code seriously should look at this right now. Recommended link for today - git immersion.
Finally on Wednesday we started on Ruby, our first true programming language. This was the first time I had looked at any Ruby code apart from a tiny bit of preparation for the interview over on Codeacademy. Ruby is a very powerful language with a shed load of built in libraries and methods. My experience with Python means I have already been able to form an opinion in the Ruby vs Python debate. I will keep it to myself until I have had more time to compare them.
The rest of the week was focused on ruby, covering a huge swathe of the basics. From variables and methods to variable scope and control flow. At this point I was exceptionally glad that I had some foundation in the principles of programming. So far nothing too arduous and a good warm up to the rest of the course I hope.
Sometime on Thursday I was introduced to Codewars. This tapped in to my competitive side way too quickly. Whats better than learning by solving problems? Getting points for those solutions and, thanks to this page we are able to track are progress against the rest of the Makers.
So this is the picture of what the next 11 weeks for me look like. Check back to see how I am getting along. Check out Maker in the making for another view on the course.