Thanks for asking this question, I've been meaning to write a blog post but I haven't gotten the chance. Although I didn't attend a bootcamp, I've been teaching coding since I started learning coding (Junior year of university): http://dailybruin.com/2011/11/03/computer_science_student_so...

For what its worth, I feel empowered by your question to write and here is my story (unfiltered, so please be understanding):

My first internship (senior year) was with facebook. During that internship, I committed myself to teaching my best friend (B) how to code. He was a musician who could not find an internship with his econ degree and was worried for his future. He reached out for help, and when your best friend reaches out for help you make it work with your schedule. So everyday I went home after my internship to teach him, and on the weekends we went to hackathons and worked on projects together. I listened to his frustrations, adjusted my expectations from a beginner, and worked with him to help him become a better coder in hopes that some day he would be at the same level as I am. (His family also lived around the area at the time so I got to live with his family rent free and his mom cooked delicious food for us, so I felt that I got the better end of the bargain).

(After my internship)
Right before I graduated from college, I met a wonderful girl(A) and we started going out. I moved to the bay area and she followed after graduation and moved in with me into our cozy one bedroom shared apartment in the heart of SF. Unfortunately, she felt intimidated and it was hard for her to settle in as someone with no technical background. It seemed as if all conversations would end up technical and leave her isolated. It was incredibly frustrating for me to hear someone feel that way so I made it my mission to talk about my work in a way that a 5 year old could understand. I refrained myself from using technical terms and I tried to create analogies to everyday life for the problems I encounter at work (I did not tell anybody this, it was more of a personal mission).

I'd like to think I had an impact on (A), but who knows? Over a couple of weeks since living with me, A decided to apply for App Academy and was accepted! She continued with her job for a few months until her cohort started, then quit and immersed herself with Rails and JavaScript (their curriculum is not something you can keep up with part time). Although we lived together, she was so exhausted after her day that I had no glimpse into her curriculum. She received all the help she needed from her classmates and all she wanted after a long day was just some relaxation and Netflix. Once in a while, I participated in their social activities and I met other students of her cohort. They were just like A and I: ambitious, hopeful, and eager to learn the things we believe will help us achieve our goals. As far as I know, everyone at A's cohort did great; A landed a job at Cisco, receiving a salary almost 3 times what she was making as a support staff at Academy of Arts University (AAU).

I saved and bought a house in the bay. My friend (B) and my girlfriend (A) moved in with me. I felt lucky to be able to afford a house in the bay area and I wanted to make sure the people I care about has the same luxury. B saved and bought his own house. A saved and bought her own house. I associated their success for my own and I thought I was invincible. I thought I had a gift for teaching and inspiring people so I committed myself to teaching another friend whom I used to know in high school. He worked hard and in 3 months got hired as a front end developer at American Express. I thought his success validated my teaching abilities but this was a short-lived euphoria: A broke up with me because I was distracted and did not fulfill my role as her partner. B moved into his new home and the commute deterred us from hanging out. I was alone.

In the midst of my solitude, my mom successfully convinced me to buy a 3 unit property in Oakland. I didn't care much for it because I have a blinding trust towards my parents. I focused on my own personal growth and landed a job at Google on the analytics team. I worked with an incredible team (some of the brightest people I've worked with) but unfortunately my heart was not in the right place. In the 13 months I was with Google, I probably submitted less than 50 changelists (merge requests). Out of respect for a great team and a great company, I quit.

The past 2 months has been the most fun I have ever experienced. The 2 properties that I invested in produced enough income monthly for me to be financially secure. Without a financial burden, I was able to consolidate everything I had ever learned about teaching coding and come up with my own original curriculum. The realization is profound. Currently I have 4 students (a recently divorced mom who had been a housewife for the past decade, a high school student, a army veteran looking for new opportunities, and a former software test engineer who felt discouraged with her technical growth), and from their diverse background I have learned a few things that I would like to share.

Learning coding in a class of 40 with a 3 month curriculum is not only a bad way to learn, but it amplifies the problem we have with our education system today: Everybody learns at a different pace, understands things at different times, and thus it is wrong to expect everybody to follow the same curriculum with the same timeline. This traditional way of learning prevents students from building a strong foundation, which is essential for their technical growth. It is much more efficient to create a system for people to learn at their own pace than to impose a syllabus with dates for getting things done.

Programming is a team sport, so it is important to realize from the beginning that your code could have a profound impact on somebody else's code. From my personal experience, most technical backlog comes from engineers being ignorant about the potential impact of the code they write. When my students join our team, we teach them the basics and get them going on our Github open source projects right away (submitting and reviewing pull requests): https://github.com/llipio/algorithms

Programming is a team sport, so it is important that when a new engineer graduates from the basics, he/she is put into an ongoing project that multiple people at their level have working on together as a team. Our projects (web and mobile) are all in production with real users to emulate a real working environment. You can checkout our app by searching for (llip) on the app store or visit https://llip.io.

Every Saturday, our team (in full force) attends our local Free Code Camp meetup and helps any beginner learning how to code with their questions and unblock them on their journey.

I'm still figuring things out, so if you want to grab coffee I'd love to share ideas. My email is song@zheng.club

Thanks for reading!