I had the opportunity to spend a couple days in Denver, Colorado with the students and teachers of gSchool. gSchool is a intensive 6 month program that engulfs people of all work and experience backgrounds in a workshop/programming course/adventure teach you how you build applications with Rails the right way. The students only had a few weeks left before graduation and I have to say - I was really impressed with what I observed.
There are a several things about gSchool that stand out in comparison to other training programs I've heard of.
gSchool is a 6 month program, whereas most other development programs only last about 8 weeks. It's is also a bit more expensive, which I think is a good thing. The kind of people who are willing to quit working for 6 months and spend a the money to learn how to program are the kind of people a company would want to hire. The length & cost barrier is a strong filtering mechanism for acquiring talent. From talking to gSchool students, it's clear that they aspire to become expert software craftsmen, not just (as Paul Elliott puts it) business people who try to learn code because they don't want to pay a developer. Some of the students may have started that way but I get the feeling the ones that did either left the program or have since refocused their passion and enthusiasm towards mastering the craft of software development, not just making money.
gSchool is a group of really smart and interesting people being taught by some really smart and interesting people. Jeff Casimir, Katrina Owen, and Franklin Webber have done a great job of guiding their students in the right direction. These instructors actually know what they're talking about because they are active in the field. Additionally, they know what type of developer the industry needs and designed gSchool to satisfy that need.
There are a lot of tremendously successful self-taught developers in our industry, but my guess is that the ones who learned the fastest had a mentor. There's really no substitute for having someone more experienced show you the things you didn't know that you didn't know.
There are many habits and philosophies that even the most dedicated veteran developers can overlook. One of the most obvious examples is test-driven development. We here at Hashrocket are huge proponents of TDD, but some developers still aren't sold on the benefits of always writing tests first – and old habits die hard. gSchool students don't have those habits to break – they're introduced to the value of TDD and proper version control from the very beginning. That's huge!
The gSchool students were all very lively, well spoken, encouraging and supportive of each other. There was no sense of competitiveness or "bad vibes" - the positive atmosphere reminded me of our own offices here at Hashrocket. Everyone was laid back, yet possessed the confidence and discipline to tackle the challenges of the day. It was really encouraging to get this feeling from a place that is creating developers whom I will very likely be working with someday.
So, to my new friends in gSchool, you're doing something cool. I almost wish I didn't already know Rails so I could go through your program. You've created a culture that you should be proud of. Keep up the good work – I look forward to seeing the awesome software that emerges from your fingers.