Wednesday, November 19, 2014

Re-inspired

Got the idea of looking for a UCBerkeley equivalent of MIT Open Courseware. Found EdX Berkeley. Then... found a course with a list of prerequisites that I actually understood! Maybe there's a "Level Two" for me in the world! Plus it even seems to cover something like the "web stack" topic I was planning to try next.
EdX UC-BerkeleyX Engineering Software as a Service CS169.1x
CS169.1x teaches the fundamentals for engineering long-lasting software using highly-productive Agile techniques to develop Software as a Service (SaaS) using Ruby on Rails. Students will understand the new challenges and opportunities of SaaS versus shrink-wrapped software. They will understand and apply fundamental programming techniques to the design, development, testing, and public cloud deployment of a simple SaaS application. Students will use best-of-breed tools that support modern development techniques including behavior-driven design, user stories, test-driven development, velocity, and pair programming. Students will learn how modern programming language features like metaprogramming and reflection can improve productivity and code maintainability. Prerequisites: Programming proficiency in an object-oriented programming language such as Java, C#, C++, Python, or Ruby is required. We will teach the basics of Ruby at a very accelerated pace that assumes thorough familiarity with OOP inheritance, static/class vs. instance methods and attributes, recursion, hash tables/hash maps, list comprehensions, higher-order functions, lambda expressions. This course is NOT a good first course in programming. Basic Unix command-line skills are helpful. Familiarity with Git, GitHub and Heroku will also be helpful. 6-12 hours/week, Oct 21-Dec 9, 2014. (CS169.2x: Engineering Software as a Service, Part 2, begins Jan 6, 2015.) 
"Profiiciency" is too strong a word, but at least I understand most of what the "prerequisite" words refer to. (I do NOT (yet!) understand what most of the course description words refer to. :P)

Alas the timing is wrong: the course started a few weeks ago (Oct 21), and I haven't finished my Unity course yet. (Currently at 42%)

While looking at the course webpage, I saw a student review that recommended "Michael Hartl's Rails Tutorial" before starting the course. I looked it up, found out it is a book available online, read the first few sections, and loved it. So I can do a virtual (by which I mean offline, LOL) version of the course using this book, and now I have something to read over lunch again.

I Googled "Python Django vs Ruby Rails" and decided I am probably more of a Python type. But, no harm in learning a bit of Ruby syntax at this stage.