App Academy Application Process

 If you have been following me, you know that I have been finishing coding challenges and interviewing with App Academy for the past few weeks. It has been a fun, fairly long process during which I have learned a lot about programming in Ruby. Here is a brief overview of the the timelines involved in the process, for those of you who are still thinking of applying.

  • Sent in application on May 26th, 2013
  • Received first coding challenge on May 27th
  • Prepared for the challenge in a day and took the coding challenge on May 29th
  • Received the second coding challenge on May 30th (wow, that was fast, you guys!!)
  • It took me a while to prep for the second coding challenge because there was a lot of material to go through and a ton of example problems to solve. I took my second coding challenge on June 3rd.
  • Received an interview invite on June 4th (seriously, it’s like they don’t want to give me any time to breathe :P)
  • My interview kept getting postponed, but I finally talked to Peter Lin (one of the TAs) on June 13th. It was an interesting interview. Peter was gracious and laughed at some of my very bad (nervous) jokes. Bless his heart. He also threw a very interesting problem at me (it involved cats. I was a a crazy cat lady for a few minutes while solving the problem!). I must say that I was a bit stumped with the problem, not because it was hard, but because I was so psyched for the interview that my brain just stopped working completely and I made a complete fool of myself. But thankfully I was able to recover a bit during the process and provide him with a fairly decent solution, which worked, but was probably very crude. Post interview, I worked on the problem for a little while longer and sent him an email with my completed solution + some insight I gathered while solving the problem. I think this was a good move on my part because it shows that I am very serious about this opportunity and will work very hard to get in. 
  • On June 14th, I received an invite for a second interview. This time with Kush Patel, one of the co-founders of App Academy. This is good, right? If the co-founder wants to talk to me, I must’ve done something right! Oh, the wishful thinking.
  • Had my final interview today, June 17th. Again, interesting interview, interesting coding problem. This time I actually solved the problem while talking to Kush, which was awesome because I didn’t think I would be able to do that. But I’m stumped that they asked me no questions about my background or why I think I am a good fit for the class. I didn’t even get a chance to speak to Kush and ask him some questions I had. That is a major boo. Get to know me, I’m more than the code I write!

So, that’s my App Academy application journey so far. Now to just keep my fingers crossed and hope & pray that I’m accepted into the program. Send some good vibes my way, good people. And feel free to ask me questions about the process!

Edit - application was rejected on June 17th. Read about how much of a sad panda I am, here. 

Blazing the Trail for Female Programmers

Much has been said about diversity in the tech industry in the recent past. I’m all for it. The 20+ male programmer stereotype needs to be broken. And it’s not going to be broken just by being inclusive of women. The industry needs to make it less intimidating for people of all ages, ethnicities and genders to start thinking of technology as a career. Let’s do it!

Only about 20 percent of all computer programmers are women, but one pioneering CEO is trying to change that. Blazing Cloud’s Sarah Allen hopes that making women in the field more visible to each other will help young women see a path for themselves in this fast-growing profession.
— Blazing the Trail for Female Programmers, NPR

Updates, updates!

This weekend has been a whirlwind of activity! Time just flies when you have so many things to do and learn :)

  • Found out that I’ll have a second coding interview with App Academy tomorrow with Kush Patel. Woohoo! I’m excited about it, but also wary about screwing up my chances this time. I’ve been practicing a lot of problems in a “coding interview” format and hoping that I don’t bomb this interview like my last one.
  • Found a few cool Ruby learning resources: Rubeque and Ruby QuizRubeque is a great test for your knowledge of Ruby basics. I find it necessary to work on my basics on a regular basis in order to master a language and this is a really nice and interactive way of doing that. Ruby Quiz, on the other hand, provides you with Ruby problems of varying levels of difficulty. Many of these problems feel like the ones you might be asked in a coding interview or test and are a great way to keep writing code and improving your coding chops! It is a nice little alternative to Project Euler.
  • Got a haircut! Yes, this has nothing to do with Ruby, but yay, I’m ready for the summer.

That’s it for now. Keeping my fingers crossed for tomorrow!


Cool things I've learned from other Ruby learners - Part 1

 I’ve been following a lot of tumblrs that talk about Ruby, Hacker Schools and Programming bootcamps lately. This has been great for me because I almost always learn something new from them. This is what I learned from “Keep Calm && Program”:

Rails Girls Summer of Code - this is a program that helps Rails Girls students to get into Open Source. This is a big deal because the industry could do with some diversity. It is targeted at ruby beginners & you team up with another Ruby learner, find a mentor and work on open source projects for a few months. What is really awesome about this program is that you actually get paid to learn. What more can you really want? 

I wish I had known about this sooner because this is right up my alley, but I missed the deadline by a day. It’s so frustrating when something like that happens! But anyways, I’m putting this info out here just in case it is of interest to someone else. I’m going to do this during their next cycle :)

Finding Purpose

I spent a lot of time today trying to answer questions like:

  • Why do you want to get back to being a software developer, again?
  • Will you be a good fit for a programming bootcamp, putting in 90-100 hours of work per week?
  • Are you sure you really want to do this? But why?

These were not questions asked of me by an interviewer. These were questions I asked myself. I’ve been struggling with finding purpose and meaningfulness in my life and career over the last few years. I wrote a post a few months ago called Finding What you Love, which detailed my struggle. And as I read it now, I find that this passage jumps out at me:

Meaningful work is something that fills me with joy, makes me look forward to every morning, be it a Monday or a Friday; encompasses my passions, teaches me something new, helps me give back to the people of my community. If I get paid along the way, that would just be an added bonus. For years, I thought this was a tall order. Sometimes, even now, I have a tiny nagging voice in my head that tells me that I’m expecting too much, that meaningful work of this kind is a luxury, attainable only by a few. But I have learned to quell that voice of doubt and convince myself that meaningful work is not a luxury, but an absolute necessity. 

I think I can very strongly say now that I’m reaching the end of the journey wrt my struggle for meaningfulness. This is what I’d like to do. This is my Plan A. There is no Plan B. Because I won’t be needing a Plan B. Because my Plan A is going to work. I need it to :)

Programming Interviews

My Skype interview on Monday will have a short coding question. Phone programming interviews are hard - the interviewer can neither see my body language (Is she struggling with the problem? Is she thinking intently?) nor the work that I’m doing on a piece of paper/whiteboard. So it’s important to keep the conversation flowing even as I’m mentally solving the problem in the background. I’m planning to keep this advice is mind - The Programming Interview: Keep Talking

To practice the “keep talking” tactic, I’m solving some of the problems from App Academy’s mini-curriculum. [And will probably move on to later]. 

What are your tips for a successful phone programming interview?

Hacker Schools

 If you’ve been reading my last few posts, you know that I applied to App Academy, a hacker school in SF & NYC. I’m waiting to interview with them soon & am super excited about it. I did consider applying to a few other schools, but things didn’t pan out because of the dates some of these schools were offering classes on. But I wanted to profile these schools in the hope that if anyone else was looking to apply too, then they would know all about these schools and make the choice that works best with their schedule & budget! :)

I’ll profile a school per day and hopefully cover all the ones that I considered during my application process :)

App Academy - Coding Challenge 2

Omg. It took me at least 40 hours to finish all the exercises and practice problems in this set. Towers of Hanoi (with user input, FML), my arch nemesis returned and wrecked havoc on my confidence. Why does every programing language make it a point to include Hanoi as a practice problem? I just don’t get it. But it was easier to solve in Ruby than in C++, that’s for sure! 

There were some interesting problems in this set that made me rake my brain for high school math (which is long forgotten!). Also, recursion reared it’s ugly head in one of the problems that had me stumped for a bit. I was struggling with the problem for a bit & when I realized I could solve it with recursion, using a SINGLE line of code, this is how I felt:


How conveniently I had forgotten all about recursion and how it came back to bite me! :P

I did put in a lot of work for this coding challenge too. And I learned SO much. My biggest take-away from this though was the usage of pry and debugger to debug my code. I’m not a visual debugger (who is?), I always use well placed “output to terminal statements” to check how each of my variables is faring through my program. And I can write very very buggy code the first time I try to solve a problem (hey, don’t judge me, I’m still learning!). So I really loved pry & debugger because of how easy they made this for me. 

When the time came for the coding challenge though, I was a bit disappointed with myself. I was able to solve only 3 of the 4 problems in the challenge. I had time to solve the final question, but I just couldn’t understand what they were asking me to do. How can I solve a problem that I can’t understand in the first place? (nice segue to “you need to truly understand customer requirements in order to translate them into the exact product they want! Which didn’t really happen in this case!). 

So with a heavy, nay sinking heart, I submitted my answers to 3 of the problems, wrote off my chances of interviewing with app academy and drowned my sorrow in icecream, while watching the red wedding in Game of Thrones. Who can recover from this situation? I DID. Only after an email from App Academy inviting me to interview with them though. Woot.

I interview this Monday & I’m so excited about it. I’m happy to have made it this far & I hope I get the chance to be part of their SF class this summer. More *fingers crossed*. 

App Academy - Coding Challenge 1

This is App Academy’s prep-work for the first coding challenge. I had to take two coding challenges - the first was fairly easy, the second a bit more complicated.

I did a very through job with the prep-work because this would set the foundation for my future Ruby learning. I told myself that my goal should be to jumpstart my Ruby prep, not to make it through this coding challenge. And this approach worked really well for me. In all, I think this was about 10-12 hours of reading & coding.

I loved both the resources from the prep-work:

  • Chris Pine’s Learn to Program - this helped me get started on basic Ruby. While I love reading books, I’ve never succeeded in learning a programing language by reading one. I prefer a more hands-on approach to code, but this book was still perfect because I got to learn by doing several of the examples. Also, it’s super funny. Humor is very much appreciated when you are coding at midnight & your brain is already completely fried from the happenings of the day ;)
  • Ruby Monk - what a great little resource. After reading the book, this tutorial was perfect for more hands-on coding + I learned a lot of new things from here that weren’t part of the book. I especially loved the coding exercises here, which were a good mix of easy & challenging. 

If you’ve programed before (especially in PHP or Python), you can skip right to Ruby Monk. While Chris Pine’s tutorial is great & I highly recommend it, if you are short on time & prefer to learn as you go, Ruby Monk is a better resource. If you have never programed before, read the tutorial first. That’s all for now. I’ll post my take on the example problems in the prep-work in the next few days!

Are you currently preparing to apply to App Academy? Let’s talk!


App Academy

A week ago, just as I was toying with the idea of learning Ruby, I came across a Hacker School called App Academy. It is a 9-week intensive web development lab that prepares you to be a full-stack web developer. That totally sold me, but what is even better, is their business model. You don’t have to pay tuition upfront, you pay them only if you get a dev job after course completion. How great is that? (And how low-risk!)

Personally, I think more educational institutions should adopt this practice. This makes both stakeholders - the teacher/educational institution & the student - more responsible. A student is more motivated to learn everything he/she can. And the educational institution does not get complacent because it’ll only turn a profit if it does a good job of making the student career ready. I digress. I’m just glad that more such schools are springing up (even as I write this post!). 

Anyway. I ended up applying to them because I could use some discipline & structure, while I work towards changing my career path. Let me tell you, these guys are so responsive, my mind is blown. I applied over the Memorial Day weekend (5/27) & I’m already on my way to interviewing with them this week. I had to take two coding challenges in between. I’ll write about them in detail in a different post. I hope I make it through, but even if I don’t, all the prep-work I’ve done to even qualify to interview with them has already set me up on the path to learning Ruby faster than I could have if I had tried to do it on my own. So, *fingers crossed* :)

Never too late to learn something new...

About what feels like a hundred years ago, I graduated with a Bachelors in Computer Science. Then I went to work for a while, coding every single day of my life, till I felt like I couldn’t code anymore. I decided I needed a change & went on to do my MBA from Thunderbird

Despite my MBA, deep down I still long to go back to my coding days. I guess it boils down to what makes you happiest, right? But here is the catch - when you don’t practice a language for long enough, it slowly recedes from your memory and you find it harder and harder to remember the grammar and the words. Programming languages are no different. If you don’t program for a while, your coding skills get rusty and you find it hard to remember the syntax and curse through even the simplest of logic. And I’m exactly at that stage now. 

So in an attempt to get back to what I truly love, I’m going to start writing about my progress with learning Ruby on a day to day basis. I’ll point to some resources that I’m using + problems I’m solving + all other things Ruby.

This makes me so happy :)