I Recommend University Over Bootcamp
I graduated in Dec 2012 from the third cohort of Dev Bootcamp in San Francisco. After failing to land a job (and a visa) I moved back to Canada and worked as a junior developer for $14.50/hour (CAN) at the only rails shop in town. 8 months later I quite because the living wage in my city is about $18/hour and I still hadn't paid off my Dev Bootcamp tuition. I went back to my old job in a call center for $25/hour.
Prior to Bootcamp I had completed 2 years of Computer Science at University before dropping out because I was disinterested in all the math that is required in the computer science program. Last year I went back to University. Now I’m very close to completing my computer science degree. Having experienced both University and Bootcamp I think University is the better option and here’s why:
At Dev Bootcamp we learned mostly syntax and object oriented programming. Both these things have a very short shelf life and I’m unlikely to be using any of what I learned at Bootcamp 10 years from now (ok I’ll probably still be using OOP).
At University a CS student spends lots of time learning algorithms, data structures and problem solving techniques. Having math formulas and algorithms continuously drilled into your head over 4 years can seem like drudgery but it provides you with a tool set for solving a wide variety of problems. The real power comes from transforming problems on the job into problems you’ve seen data structures and algorithms for in your education. For example if I was building a social network I could think of it as a graph. The people in the network would be vertices and their relationships would be edges. Now all my algorithms and data structures knowledge about graph theory is applicable and I have many tools at my disposal. Not only is this transformation of a problem into something familiar extremely useful, it’s also very satisfying and rewarding. Having the right tool for the job is a great feeling. It makes you feel like you can build anything. Coming out of Bootcamp you will have a multi-tool which is mediocre at solving lots of different problems. Coming out of a University CS education you will have a large tool set filled with tools that are exceptional at solving the problems that they are designed for.
Don’t get me wrong. I really enjoyed going to Bootcamp but not because of what I learned. I enjoyed Bootcamp because getting together with 50 other people to work on learning something together is a ton of fun. Not to mention anyone who is crazy enough to spend $10–12 grand and take the risk in joining a Bootcamp is bound to be an interesting person. But I would not recommend going to Bootcamp over University. You can learn syntax, OOP, github… etc during your spare time in a 4 year University program. You cannot learn data structures, algorithms and problem solving in 8–10 weeks not to mention such things weren’t taught at the Bootcamp I went to.
I think the creative part of programming comes from transforming real world problems into more manageable data structures and algorithms. Without a solid foundation in theory this is much more difficult and you miss out one of the most creative (and fun) aspects of programming. Going to Bootcamp may land you a job and get you into the industry (which is great) but you will have a limited tool set. As any good builder knows, investing in your tools is very important. There are many problems with the traditional education system, but a University Computer Science education is still the best tool set for a programmer.