Anticipating my Ruby class (1/8/12-2/5/12)
For the past six years, I have written Ruby code, and almost every day brings new trips to the web to learn new techniques. Ruby lets you get to the point so fast, that you are constantly immersed in integration with everything from census data to SMS servers to Facebook. You can implement world-class design patterns in a dozen lines of code - this is not a language where you write hundreds of lines of boiler-plate, day after day, just to define classes and structures. This is the future of white collar (or hipster collar) work, where you leverage dozens of systems in a way you can completely understand and customize - on your own or in any kind of group.
The flexibility of Ruby means that there are dozens of flex-points every moment. To really understand what is happening it helps to know a bit about how these are used. That is why my upcoming class will focus on teaching good habits and tricks for debugging and examining code. You will learn how to tell the difference between different kinds of errors, so you can find and fix them in a fraction of the time.
We will also learn about the Rails framework. Rails is a set of tools that help you create and deploy web sites. It comes with most everything you need, and offers plugins for almost anything else you could ask for. The rapid rate of improvement in this ecosystem has only increased as its profile has grown and grown over the past six years. Rails is opinionated software, informed by cutting-edge advances in business theory as well as security, technology, and design. The good news is that each part can be learned, and used, separately - but there is still a big vocabulary to catch up on for the newbie.
While getting familiar with the best desktop and online tools for shepherding our projects to prominence, we will also practice basic programming skills (like using objects and variables) and get more advanced if the class can handle it. As a class, we will collaborate on a couple projects so that the link between theory and real-world is as visible as I can manage.
This class is intended for beginners with no programming experience. If you've ever wondered what programming is like, please join us this January. If you are more advanced, I'll offer you more details to keep it interesting and do my best to answer your questions - but be aware that we will spend as much time as necessary going over the basics.
The class will be five 3-hour sessions, on Sunday afternoons at 1:30. We'll start on the second Sunday of the new year (1/8) and wrap it up just in time to head to a Super Bowl party (2/5). Each class will have a break in the middle, in case you were wondering. 3rd Ward is an artistic, educational, and fabrication facility in an industrial part of Brooklyn. If you haven't been there before, you are in for a real treat!
3rd Ward is also the site of a short lecture/Q&A I will host on December 13, to help you decide if the class is for you. That will be at 7:30.
To be sure, $295 is a pittance compared to most classes of this type. In addition to the 15 hours of classroom time, there will be opportunities to get help and feedback on any work you do between classes. There may also be opportunities to shadow me at work and help with some of my projects. And the whole thing will be a barrel of fun.
Seats will fill up quickly, so be aware of that. After this session there will be others, but they haven't been scheduled yet, so I'm open to hearing which days and times you might prefer.
Lastly, thanks in advance for supporting this class and making it fun and exciting for your fellow students and myself. I can't wait to see the inaugural group for this new endeavor!