Daily Update #12
Well, I didn’t manage to blog every day. Fell down after two weeks.
This is going to happen, I just have to come to terms with it. Consistency is very hard. I’ll be starting again from today.
I have read about or discussed Rails and Ruby every day since my last update. I also completed the CodeSchool RSpec course. I was able to put my ideal studying method into practice throughout this course and I think it worked really well.
The learning method I will be using from now on is as follows:
- Complete the entire lesson - whether this be a chapter or a video - without taking notes
- Complete the entire lesson again, and take notes this time, specifically on the things you find difficult
- Read over notes, and tidy them up so that future me can read them and learn
The idea here is not only that you repeat the material three times, but you are internalising it a little deeper at each step. First, you are gaining some context. Secondly, you are listing out the difficult things and explaining them to yourself. Finally, you are fleshing out your note so that you can teach yourself.
There’s also a zero step here, which is doing reading before the course. read over what the course covers, Google terms you are unfamiliar with, and read articles or documentation around it. Every lecture at university had recommended reading to be done before each class, so why would you not replicate this in autodidactic learning?
I completed the RSpec course over the course of two weeks using this method.
Last night and today I’ve looked over the rest of the courses on CodeSchool, and started the Ruby track just so I can have a nice clean “100%” at the end of the day!
I’ve done the basic Ruby course as a refresher, and moved on to a course called Ruby Bits, which is aimed at ensuring the beginner Rubyist can write nicer code. Nicer meaning more succinct, DRY, maintainable and/or more readable. I’ve done two levels so far, and I’ll look to complete this over the weekend.
The reason for this detour is that in the RSpec course, I was able to understand the RSpec logic and DSL; I knew why things were being done. My main failing in the challenges was actually my Ruby understanding. I moved on from learning Ruby when I was able to do the most basic of things, and I have not done too badly, but a higher grasp of the language is needed to get where I want to be - which is employable, instead of just being a hacker and tinkerer.
So this weekend I’ll be covering more basic Ruby useage and conventions. I would say maybe 40% of the course of far is new material, which is worth the time cost in my eyes.
Once I’ve done this, I’ll correct the manage functionality in my Rails blog, then write tests for it. After that I’ll be listing out some functions I want to add to my blog and try to write the tests and code for each over the course of a few weeks. Once I have a few new functions with their own tests, I’ll deploy to GitHub and put this project on pause so I can work through the Agile Rails book.