Programming Bootcamp Turns Lawyer Into Hacker
wired.com
wired.com
We've had three YC startups hire Dev Bootcamp students: Hipmunk, Exec, and 1000memories. Other companies include Ouya, Climate Corporation, Twitter, TapJoy, Pivotal Labs, ThoughtBot, and New Relic.
Here's Justin Kan on Dev Bootcamp: http://news.ycombinator.com/item?id=4725790
Steve Huffman, co-founder of Reddit and Hipmunk, is part of our mentorship program.
Social proof aside, my (formal) background is in mathematics, statistics, and linguistics. As a programmer, I'm self taught.
We try really hard to teach students the fundamentals. IMO, however, that doesn't necessarily mean teaching them the textbook list of data structures and algorithms. Data structures + algorithms are tools people use to model various real world systems, processes, ideas, etc. We spend tons of time teaching students how to model, what makes a good model, and so on.
When a student is really good at that, data structures fall in naturally because the students see the problem clearly enough that there's a "binary-tree-sized hole" in their solution, so to speak. If you introduce binary trees to them at that point they'll understand binary trees on a level deeper than most.
It's like the scene from Good Will Hunting where Robin Williams's character explains that while Will might be familiar with all the fun facts about the Sistine Chapel, he'll never truly understand it by reading a book -- its smell, its feel, the impression it leaves the first time you enter, etc. We want students to "smell and feel" data structures.
Or, as Hegel said, "Das Bekannte überhaupt ist darum, weil es bekannt ist, nicht erkannt." The familiar isn't understood precisely because it's familiar.
We also try not to "teach to the test" and get students the information they need to pass interviews -- hiring companies don't want that.
The core anxiety when companies hire junior engineers stems from the question: "How much management time am I going to have to spend on this person?" Grilling them about data structures and algorithms is one heuristic for assessing that, under the assumption that a person who knows those things inside and out is capable of learning similar things on their own and possess a certain intellectual rigor that correlates with being a good programmer.
We help hiring companies answer that question in a different way, which I'm happy to go into if you want. This comment is long enough as is, I think. :)