I'd been slowly teaching myself to code for some time, but I wasn't sure how to learn enough fast enough to make it my career. Enter the bootcamp: become eligible for developer jobs in just two months of intensive training. But there were lots of choices.
I settled on App Academy because of ecstatic reviews and because of the implicit promise in their pay structure: if I didn't have to pay them anything until I was comfortably ensconced in my new job, they had to know what they were doing.
I couldn't have been more right. Because App Academy's driving motivation is to get its students jobs (and high-paying ones at that):
-- Their curriculum is constantly evolving to fit the developer market, so your skills will be in demand.
-- The instruction is stellar, but the real focus is on learning by doing. You will spend your entire days coding. App Academy's grads can look like they've been programming for years.
-- The students' motivation is intrinsic and the demands are rigorous, so in some ways, they're exactly the kind of people you'd expect: smart, driven, and hard-working. On the other hand, since there's no up-front financial commitment, you get a very interesting mix of people from diverse backgrounds.
-- App Academy emphasizes pair programming, which is an invaluable skill both for interviewing and for being successful on a dev team. App Academy students learn to be fantastic collaborators.
App Academy taught me what I needed to know, and I've had great success in my new career. If you're considering applying, DO IT -- you won't look back!
This program is the real deal. Coming into the experience I had limited coding knowledge and uncertain job prospects. In twelve weeks I gained more useable skills than over the entirety of my undergraduate career. App Academy assumes you are already a well-rounded person coming in (their selection process makes sure of it), so they don't waste time on anything other than teaching you what you need to know to get a specific type of in-demand job.
My classmates and teachers were inspiring and part of a positive learning environment. As a result of the program I have already gotten an exciting job offer with a queue of interviews. If you're passionate about getting into coding professionally definitely apply!
App Academy is legit. The other reviewers already hit most of the key points but I'll reiterate the ones I agree with most:
It is no joke when they claim 100 hours of work a week. That said, you will learn more in 3 months than you ever thought possible.
I went from a self-taught amateur programmer to a professional software engineer, which simply wouldn't have happened on my own. App Academy will teach you what you need to know to cut it in the real world.
Support system is amazing. The instructors know their code inside and out and are available + willing to help whenever you need it. You will learn a lot if you take advantage of this.
Your peers will be the smartest people you've ever met (after the instructors). It was also extremely helpful to pair with a new partner almost every day, helps get you better accustomed to a real-world working environment.
Risk-free payment plan rocks. Costs you nothing unless you find a job (which you will if you make it through, and then it's worth every penny)
You have to work for this every step of the way, but it's beyond worth it. If you're reading this and you've gotten in, good luck and don't plan on doing anything but coding for the next 3 months (and beyond...which hopefully appeals to you). If you're applying or thinking about it, obviously can't recommend it highly enough and good luck on the coding challenges (go do rubymonk 10 times before you apply)
I've reached out to their instructors a handful of times for advice since and have always felt like they went above and beyond in the amount of time they spent with me.
This place is amazing. Learned a lot in a short period of time. Met a lot of great people. I was part of the cohort that ended in June, and I got an offer in August (3 months). About half of the people got offers within 1.5 months.
The people you meet at App Academy and the curriculum are also great!
Plain and simple: I spent 4 years at one of the best universities in the world, and it did less for my career than 9 weeks at App Academy. I'll likely never learn as many marketable skills in as short a period for the rest of my life.
The job search resources are also great. Aside from having tons of technical skills, we're also taught how to optimize the job search.
My final project was Cuteflix, a Netflix clone for watching cute animal videos. My goal was to build something that would be immediately entertaining to use.
I'd taken a couple computer science courses before starting App Academy, and was reasonably proficient with Python and Java. Within the first two weeks, I'd learned Ruby and had already become a better programmer (App Academy emphasizes good design patterns). Within nine weeks, I'd gone from not knowing the first thing about web development to being able to build Cuteflix, a full stack web app built on Rails and Backbone, in a week and a half.
Also, the source code for Cuteflix, as well as some other projects I worked on while at App Academy, can be found on my GitHub: philpee2 (Phil Nachum)
This review was originally posted on http://www.eriktrautman.com/posts/the-app-academy-student-journey, but we found it so helpful that we reached out to Erik and he allowed us to share it here with our community. Thank you, Erik, for sharing your story with others!
I got into App Academy in late December and it's pretty much consumed my life ever since. The San Francisco-based program is a 9-week intensive dive into Ruby and Ruby on Rails designed to take people with little or no experience in computer programming and turn them into junior web developers. They are an offshoot of the original Dev Bootcamp, which began offering a similar style of classes about a year ago and has enjoyed great success.
The major selling point of App Academy, though, is that they forgoe their hefty tuition if you cannot find a technical job within 6 months of graduating. In a world where the link between education and employment has been getting weaker and weaker, this kind of selling proposition has a powerful appeal. Although I managed to get into their initial January class*, they are currently booked in their San Francisco location all the way into the summer.
So why is it worth forking over more than 10 grand (or a healthy percent of your starting salary) to learn something that plenty of people have figured out on their own? I'm still rolling that question around in my head but one thing is clear: I learned significantly more in the first month than I ever would have by just forging ahead on my own. I just can't imagine how I would have ever learned such focused and contextual knowledge on my own in less than a year.
So what exactly happened? I'll be as brief as I can but it was a very dense 9 weeks.
It started with about 100 hours of prep work meant to build a foundational understanding of Ruby. From the moment I got the email containing that assignment, I spent 90-100 hours a week either coding, thinking about coding, or reading about coding. It has been all encompassing. I had dreams about array operations for a month.
In the first two weeks alone, we made it well past basic Ruby and through algorithms, obect-orientation, recursion and a host of other essential programming principles. Aside from an hour of Q&A throughout the day, we spent the entire time pair programming on various projects. These exercises grew in complexity from rewriting Enumerable methods to producing a host of classic games like Towers of Hanoi, TicTacToe and Minesweeper. Every new day brought a new pair, a new chunk of knowledge, and at least one new project. We finished the unit with Chess, a classic programming and logical challenge that made a great capstone to our Ruby achievements.
We quickly pushed forward to give our code, which was beginning to flow quite smoothly, access to the world wide web and the infinite bounty of web APIs. We hacked together a couple of Twitter spambots and an application to find the nearest Ice Cream shop. Things were starting to get interesting. We also took a detour into testing, an area that really displayed its necessity in the more complicated exercises like Chess, where constant checking of victory conditions quickly got frustratingly time consuming.
Ruby took a back seat for a couple days while we dove into SQL, beginning our long march from the very back end up to the front. The ability to persist data filled in another of the essential missing pieces of the developer puzzle. With superhero mastery of SQL under our belts (okay, at the very moment we totally hit the wall with some really insane baseball database queries), we were granted access to the limitless bounty of ActiveRecord, a library that abstracts away all the nitty gritty details of queries and lets you play with tables just like any other Ruby object"¦ magic!
And magic it was"¦ like a doubletake on the highway, we belatedly realized what this meant: we were officially On The Rails. ActiveRecord is the foundation and, some would say, the most important part, of Rails. It saves you from having to think half database and focus on just building web apps by abstracting away the details of the interactions. We spent the better part of a week, an eternity in the pace of the class, getting intimately familiar with models and associations and through tables and validations.
My first introduction to Rails (via Hartl) had been from front-to-back, a less threatening approach seemingly designed to ease beginners into it but light on true understanding. This time I came to the table brimming with confidence in my understanding of the fundamentals and ready to see what came next. It was an empowering feeling. And, by just the end of week 4, we had already made apps that contained CRUD functionality, homemade user signins, authentication, and authorization.
After a nice "leisurely" weekend of doing nearly the entire Hartl tutorial (which took me over 50 hours the first time around"¦), we kicked off another week of Rails, pulling in some of the test-driven principles we'd picked up in Ruby and applying them to more formalized unit and integration tests. At the end of the week, the midterm project was a refreshing break from pairing to produce an original CRUD app using TDD. Things certainly move slower when you have to debug TWO languages, but it helps that there's sort of a light at the end of the tunnel"¦ Testing really does help, I've seen it with my own eyes.
Despite the awful spaghetti code we started out with, the next few days were a lot of fun. There's something refreshing about being able to make a change and see it appear in the browser. We built games using the HTML5 canvas, which allows you to play with geometric shapes defined and refreshed using algorithms. Asteroids, Missile Command and Snake all succumbed to our newfound 90's game prowess.
The final two weeks were another chance to solo and another chance to express creativity during the capstone projects. I put together a vacation follower app, spending the first week implementing all the Rails-side functionality to handle authentication, authorization, sessions, following, subscribing, admin permissions, privacy, use of Devise (which nuked all my tests), and finally API interactions with Instagram, Twitter, Tumblr, and Flickr. We had lightening talks every day on issues as diverse as OmniAuth (for Facebook signin) and formal Computer Science-style data structures.
Demo day was almost a blur, with hours spent presenting my project, checking out what the others had built, and speaking with employers. I found myself dialing back the sell a bit, though, since I already knew my plans for after the course ended and I didn't want to distract too much from the earnest efforts of my classmates to get hired. By Saturday all the beers had been drank, the contact info had been exchanged, and a half-paranoid feeling of undefined urgency lingered from the intensity of the previous nine weeks. It is simultaneously thrilling and completely exhausting to be constantly kept running at capacity for such a long period of time.
So I rented a car, hopped onto the PCH, and got lost in the redwoods"¦ and didn't dream of code for the first time that I could remember.
*(aside from a beta test during the previous summer)
AA was fantastic. I went from playing with code as an amateur on weekends to full on professional, employable engineer in just 3 months. They aren't kidding when the talk about 100 hour work weeks but it's worth it. The curriculum was solid, starting with fundamentals before jumping into the heavy duty stuff, though as zda mentioned, the curriculum did feel kind of chaotic and disorganized.
The best part really is the pay structure though. No risk until you get a job so they are actually incentivized to teach you what you need to get a job. Overall, the program probably still needs some work but I would do it again and I recommend AA to anyone looking to learn.
To add some more concrete detail to my previous post:
1) The curriculum is fairly strong in its design but gets weaker as the course progresses, by the end of the program it descends into piles links to external resources.
2a) The signal-to-noise ratio also degrades over time. It's like they got to the halfway point, started losing motivation, and then figured out they could appeal to Agile methodology as an excuse for why the remaining curriculum was a half-finished mess.
2b) Students are enlisted in the business of error-checking the curriculum (oh but it'll help teach you Git! Right. And laboring under erroneous instructions for a while helps build character...).
3) Algorithms and data structures weren't covered at all except for some links and a few sample problems at the end of the program. This was a serious stumbling block for me during initial interviews, but of course I learned it...among other reasons, because I have to feed myself, no thanks to AA (see the broader problem there?)
4) At least in my cohort, the instructors were extremely inexperienced
5) BUT: The biggest added value of AA was the other students. It's really great pairing with people and you do feel like you're learning fast. (However, Meetups offer this for free, services like AirPair for much less than 18% of your salary. Most of what you're paying for in a dev bootcamp is the curriculum and guidance from instructors.)
The impression I and my cohort-mates got was that there's a world of difference between the SF and NYC branches. The SF has all the founders, all the energy, and all the expertise. The NYC branch has a set of (very) unpolished tutorials written by Ned, the Rails guru at in SF (who we never met or interacted with).
In my cohort, the instructors seemed to completely checked out / phoning it in, and their inexperience was palpable (to be fair, perhaps they were just in over their heads). By the end of the program much of our nights were spent criticizing the program's management and wondering if we were being scammed.
In hindsight, all this is written into its business model. Most of us found AA appealing because we thought their incentives would be aligned with ours, but that's not necessarily so. If you have instructors who are unscrupulous or lazy or in over their heads (or, to be charitable, overworked and underpaid), it'd be pretty easy to just coast and let AA collect its cut when students get hired, which they will, because they have to eat and will do what it takes.
Which means you don't necessarily need to put as much effort into preparing them as you might if they weren't already on the hook. Even with good instructors, I'd wager that in the long run any organization would figure this out and tend toward that low-effort equilibrium.
And of course, students will generally keep quiet about all this because it's in their own interest that the school be seen to have a good reputation.
For me, AA is a case study in how easily education can turn into a Ponzi scheme.
Speaking of which, wasn't AA started by a pair of recent Dev Bootcamp grads? Hmm...
Overall awesome experience. Enrolled in late 2012 for the May 2013 batch. Learned a ton, and felt like the instructors were good at pushing you hard without running you into the ground.
I also appreciated their philosophy of learning the fundamentals before learning more higher-level/"magic" tools. We built lightweight clones of ActiveRecord and other Rails components, for example, and spent a long time learning Ruby and basic CS before even touching Rails.
The main downside is that they're a bit disorganized. The curriculum frequently changed while you were reading it or working on a project, for example, often without notice.
The biggest positive, though, is the tuition structure. Not only is it easier on the student, it aligns the students' and instructors' incentives, which gave me more confidence that they would do a good job and focus on the most relevant skills.
The tuition used to be lower (12.5% of starting salary when I signed), but I'd do it again in a heartbeat.