My experiences in the admissions process for Fullstack Academy

Millie ate my math notebooks.
This is not related to Fullstack Academy, but it is one of many reasons why Millie would stay with my parents while I attend Fullstack if that’s where I end up.

One question that keeps me up at night is where to pursue my computer science education next year. Stay at Queen’s, where I’m comfortable and happy but a little bored and the degree takes three years? Sell everything I own and move across the country (with a dog!) to the University of British Columbia’s two-year Integrated Computer Science program? Or maybe sacrifice the amazingness of downtown Vancouver for the less expensive option of Simon Fraser University in Burnaby?

Or … attend one of the best coding boot camps in the States, Fullstack Academy, for just three months in New York?

Coding boot camps are relatively new on the education scene. Generally 9-17 weeks long (although some online models are popping up now, like Udacity’s nanodegree, which can take up to a year), these coding boot camps offer a high-intensity immersion into today’s hot languages and technologies. Many of these boot camps claim pretty impressive employment rates post-graduation (for example, Fullstack claims a 97% hiring rate for its grads). Although these boot camps seem wildly expensive (especially since, in my case, I’d also have to move to a new city for a couple months to do it), they are still a lot cheaper than going the traditional higher education route. You’re also out in the workforce faster than if you do a 3-4 year degree.

Since I’m so curious about the future of education, you can imagine this is all pretty intriguing to me.

But! The first step to following any of these paths is getting admitted. While I’m still in the middle of applying to Queen’s, UBC and SFU, I recently found out that I’ve been accepted to Fullstack Academy (yay!). I thought I’d share my experience of the application process.

The timeline

I applied to Fullstack right before Christmas. The written application includes some typical questions about why I was interested in learning how to code, what I might be able to contribute to the community, etc. This was straightforward, and the only remotely tricky part for me was just thinking about how my previous work experience could transfer over to an intensive coding boot camp. I hadn’t attended CAN-CWiC when I applied, so this was a tougher hurdle than it would be for me now.

Then, within a week of submitting the written application, I had to complete a programming challenge online. Without revealing too much of the challenge, I will tell you that my previous experiences in Queen’s first-year computer science courses were definitely helpful. It had been a 4-month gap between when I had written those exams and when I took the programming challenge, so I was a little rusty, but I felt okay about it (I knew I had passed even without counting any part marks they might have looked at). The nice thing was that the challenge allowed me to use Python even though Fullstack teaches JavaScript.

However, if you haven’t taken any computer science courses and are preparing for the programming challenge, I urge you to consider Fullstack’s admission prep resources. The challenge was not as easy as I thought it would be! I gave myself a strict timing budget and if any question took longer than the allotted time, I moved onto the next one. It was probably the first time in my life where I didn’t feel like I had enough time on a test.

Maybe because I had finished the first round right before Christmas, it took a while — maybe two weeks — before I heard back from Fullstack whether I’d been selected for the second round of interviews. In fact, I had basically given up hope by the time I got the email invitation.

The second-round interview was my favourite part — I actually got to speak to a human being! Over Skype, with my dog whining softly in the background, but still. It was nice. The interview happened over Skype, and it was pleasantly conversational; it seems like Fullstack is trying to assess mutual fit in terms of interpersonal skill as well as coding ability.

The most nerve-wracking part of the interview was the programming component. This time, I had to pair-program with my interviewer on a couple more puzzles. Once again, I’ve understandably been asked not to reveal too much about the problems, but I will say that I left the interview with zero idea as to how I did (although I did ultimately manage to figure out the problems by the end of the interview). Did I laugh too much or come across as snarky or immature? Contribute enough in the pair-programming component? Was it okay that I didn’t know the answers right away, or that sometimes Huntly had to give me some hints? Was I too demanding when I asked to speak to Canadian alumni?

I’m pretty sure at one point my interviewer asked why I want to attend Fullstack, and I responded, “Well, frankly I’m not sure that I do yet.”

Yikes.

Miraculously (or so it seemed to me), a few days later I received my acceptance.

To boot camp, or not to boot camp?

I’m still not sure if I’ll attend Fullstack Academy. At this point, I lean more toward UBC or SFU. One of the big advantages of Fullstack — and any coding boot camp — is that it’s a much faster way to learn the practical skills, but since I already have a degree and several transferable credits from Queen’s, UBC and SFU are both only two-year programs. Two years ain’t so bad.

I’m also still nervous about how untested coding boot camp graduates are in the long run. If I’m looking to take on a senior software developer role someday, will I need a degree for that promotion? How much depth can really be achieved in just a few months? What about the math skills needed for computer science? American coding boot camps are spreading like wildfire, but the concept is still fairly new here in Canada (and I am not as convinced of the quality of Canadian boot camps, either). If I attend Fullstack, will the connections I make in New York actually translate to any job leads in Toronto?

On the other hand, there’s a more adventurous part of me that would love to take on the challenge of an immersive program like this. I couldn’t handle a lifestyle like that forever, but spending six days a week learning how to code with a bunch of other like-minded people just sounds awesome. It’s rare these days to find that kind of time and passion to devote to one singular pursuit, and that level of obsessiveness (not forever! just for a few months!) appeals to me.

Fortunately, I have several months to decide, since I’m not planning on joining any cohort until August or September 2016. Although Fullstack can’t guarantee me a spot in the cohort until I put down a $2000 deposit, I won’t need to undergo the lengthy admission process a second time. I may just have to do another technical test to ensure my programming skills haven’t gotten rusty.

My advice to future Fullstack applicants

So long as applying is free, I say go for it! You have nothing to lose. The team has been nothing but friendly and transparent with me, and now that I’ve been approved to attend, they are going to try and put me in touch with a Canadian grad so I can chat with them about how the experience has transferred over the border.

Ready to dive in? Here is how I think you can best prepare, based on my experience:

  • If you don’t have many computer science courses under your belt already, do all the recommended programming pre-work listed on Fullstack’s admissions prep resources.
  • Write down in advance your reasons for wanting to apply and for joining the industry. It helps to articulate this before the interview or application.
  • Consider what traits Fullstack might be looking for in their applicants (don’t forget those soft skills), and then write down any experiences or previous training you’ve received that can demonstrate how you possess those traits.
  • Prepare some interesting questions — you’ll want to make sure that you’ll be happy with the boot camp, too.
  • Check out some of their students’ final projects — really cool stuff, and it’s nice to talk about some of these during the interview (or even mention during your written application, although I didn’t think to do that…).

Good luck! Maybe I’ll see you in New York if we are in the same cohort.

Thoughts on my first Canadian Celebration of Women in Computing 2016

New friends at CAN-CWiC.
New friends at CAN-CWiC! Amazing view of Ottawa skyline.

Last night I returned by school bus (haven’t been on one of those for a while…) from the first national CAN-CWIC, or Canadian Celebration of Women in Computing conference, at the Delta Hotel in Ottawa. I first heard about the opportunity from Dr. Wendy Powley, who taught the CISC 121 course I took this past summer.

The major reason I attended this conference instead of, say, the Canadian Undergraduate Software Engineering Conference just last weekend?

This one was $50.

You heard me right! Thanks to extremely generous sponsors like Microsoft, TD, RBC, IBM, Palantir (I am wearing their t-shirt right now), and others, I and many other computing students were able to attend this great conference for practically peanuts. The cost also included travel to and from Ottawa, accommodations, and meals. Amazing! Affordability is a huge issue for me right now, so I’m so thankful that this opportunity exists. I would never have been able to attend otherwise.

We bused out of Kingston on Friday afternoon and arrived that evening for a banquet and keynote speeches. Out of three possible session tracks called Technical, Skills Development, and Outreach, I picked Outreach. I was worried my knowledge wouldn’t be advanced enough to make the most out of the Technical track at this point, and the Skills Development track focused on soft skills like personal branding and public speaking, which I’m pretty confident in — and that just left Outreach. Fortunately, encouraging underrepresented folks to pursue computer science and mathematics is one of my passions these days, so I was really glad this was such a focus in the conference!

The Outreach track had some great sessions. The University of Ottawa led a hands-on makerspace workshop where we designed 3D objects on Tinkercad and then printed them on some nifty 3D printers (unfortunately my group was a little slow so we never got to pick up our objects). We also heard from the CEO and some outreach coordinators at Actua, a Canadian non-profit that brings computer science and other fun STEM workshops to youth across Canada, including indigenous outreach with cultural and knowledge input from local community Elders. I was pleasantly surprised to see overlap between my current role and the Actua coordinators — their training for instructors felt very “Student Affairs-y,” with icebreakers, sensitivity training and group photos aplenty. The least helpful session to me was a panel called “Strategies for IT Success”; the room wasn’t well set up for a panel, and the session didn’t have much practical career advice.

My favourite session had to be Susan Ibach’s “Get Kids Excited About Coding” session early in the morning. Not only is Susan a fun and high-energy speaker, it was great to get a behind-the-scenes look at her role as a Tech Evangelist at Microsoft and hear her practical advice and anecdotes on teaching this material to kids. I had no idea what a Tech Evangelist was before yesterday! I especially liked how Susan broke down the elements of a great computer science workshop (elements that echoed across all the Outreach sessions, but I think Susan articulated these most clearly):

  • Flexible hardware requirements (e.g. browser-based)
  • Follow-up materials for further learning
  • Appropriate for the audience (e.g. touch tutorial for young kids)
  • Pair programming or other opportunities for role modelling

One thing that was missing across the Outreach track was more about outreach to older people, post-secondary and above. Right now, talk of computer science for elementary and secondary students is pretty hot (see British Columbia’s recent decision to add coding to their curricula), but I think it’s equally important to reach adults. When so much important information about our lives is stored digitally, it benefits everyone to know a little more about how that information gets stored, who uses it, and what can be done with it. I’m not saying everybody has to design the next Facebook! But in the same way that we try to teach critical thinking and literacy about reading the news, for example, I think we could try to accomplish similar goals about technology. More and more of what goes on with our information seems to get whisked away behind a magical black box that only really skilled, knowledgeable people have access to — and that seems irresponsible to me.

Alice, our frosh group and I out in the sunshine during Orientation 2007.
Orientation 2007 — yep, Alice and I are both in this photo…

The conference was full of nice little surprises, too. The food was great, and I heard the socials were really fun even though my roommate and I opted to just hang out in our hotel room and chat about the speakers. I didn’t know my roommate before arriving at the hotel; she turned out to be a lovely 3rd-year Computer Science student at Queen’s, and it was cool to talk to her about her experiences in the program. I also got to chat with a Simon Fraser University graduate student about life in Vancouver (she came in second place at the Grad Forum! Go Merhnoosh!). I even ran into one of my frosh, Alice, from when I was a Gael at Queen’s my first time around back in 2007 — she works at CISCO now. How cool is that?! Everyone I met at the conference, from first-years to seasoned presenters, was generous with their time and happy to answer all my questions.

My only major complaint was that some speakers used gender stereotypes. It wasn’t uncommon to hear on stage that “Women are better at multi-tasking” or “If those competition groups were all guys, I can 100% guarantee you that they would not have cooperated.” If I’m being charitable, perhaps I’d argue that those statements were made in order to boost the confidence of all the less experienced women in the room — but truthfully, I left those speeches with a little bitter taste in my mouth. Isn’t stereotyping — of anyone — what we’re trying to get away from here? Let’s not make sweeping generalizations about men or women, regardless of whether the generalization is complimentary. Maybe this is a generational issue of 2nd- versus 3rd-wave feminism.

I also wish that the conference talked more about addressing racism in the field. It would have been cool to have a session on anti-oppression or on how to break down systemic barriers to technology education. Maybe next year they should invite MathBabe (I would be there in a heartbeat). I heard from a couple undergraduate women that at CUSEC the weekend before, they were swarmed by groups of young men at the socials trying to hit on them — why didn’t we talk more explicitly about handling sexual harassment in the workplace? It came up a little bit during the final panel on “A Day in the Life of Women in Computing,” but I think we could have talked a lot more about this issue with Gamergate only a year or two behind us.

Overall, I had a fabulous time at the conference and I’d recommend it to any woman-identified student, mature or otherwise. I’d like to do the Technical track next time around, and maybe be a little braver at the Career Fair (I only stopped by Susan’s booth at Microsoft to ask her about resources for mature learners). I learned a lot, met a lot of nice people, and came home last night feeling tired but jazzed about all the exciting opportunities and changes out there for underrepresented people in the field. After working in publishing (doom and damnation!) and then Student Affairs (higher education in crisis! students can’t handle adversity!), it was refreshing to be at a conference where everyone was so darn optimistic about the future.

Maybe the best thing of all is that I left the conference without feeling self-conscious about my age. There was a great mix of graduate and undergraduate students, nobody really seemed to care when or how people were graduating, and everyone was excited to hear I was returning to school for this field.

CAN-CWiC was a wonderful way to spend the weekend. If I’m nearby next year, I’ll definitely return!

How I like to take notes in lecture

Almost done Week 2 of class! I keep a little countdown in my head. I thought I’d share how I take notes for my current course, CISC 124 – Introduction to Computer Science II (Object-Oriented Programming in Java). I really like the set-up I’ve got right now.

clipboard notes from class
Clipboard notes from this week’s lectures. My writing is so awful.

At the moment, I sit in the third row and I just bring a clipboard, a pen and some lined paper to class. This is easier to carry around than a laptop or a notebook, and I’d probably just get distracted on my laptop, anyway. With my clipboard notes, I give myself full liberty to draw crazy diagrams, write super messily, scratch things out and use up tons of space. My writing is basically illegible to anyone but myself. I try to take down only what’s important (my prof, while lovely, sometimes gets a little off-topic. She also spends a lot of time comparing Java to Python, which we learned earlier, and I don’t feel like I have to write down all those comparisons.).

fancier review notes
Pretty review notes! Colour-coded!

Every couple of classes, though, I re-write and organize my notes into a little notebook at home. I even try to colour-code! I find this is helpful since it forces me to review what happened in class again, and I often end up re-ordering the information from class in a way that makes more sense to me. My notes look way prettier this way, too! The best part is that when I’m done re-writing my notes, I get to rip up and throw away the old clipboard notes. It feels really satisfying.

Maybe that means I have an anger issue or something…

One thing that I haven’t figured out yet is what I want to do with my notes from my readings. In fact (gasp), I haven’t done any readings yet at all! This course is taking a little while to get going; we only just received a syllabus and schedule yesterday, and I’m still not sure where the required readings are getting posted. (The course website I linked to is from last year, and the textbook has changed.)

I imagine that I’ll take fewer notes than normal from the textbook, though, since it does seem more of a reference book than anything else. We are using Absolute Java, 6th ed. Try not to run away screaming at the $200 price tag.

Interestingly, I’ve made friends with another mature student in the class who takes far fewer notes than me. I’ve noticed that he brings unlined paper to class with a clipboard and really just writes down 7-8 lines over the course of an hour. I haven’t asked yet, but I assume he just prefers to focus on listening — and I suppose it can be a pain to copy down code examples on the slides, especially when this professor kindly posts her slides and lectures online after the fact. I have heard of some students who cope just fine without taking any notes, simply because that frees them up to pay more attention to the instructor. I know that for me, though, that’s just not an option; if I don’t take notes, I’ll start daydreaming immediately.

We have our first assignment due next week, although I’m still not sure what the assignment is yet. I’ll let you know how I set up my workspace for that when it’s done!