Nick Johnstone's Blog

Sometimes I write things

Subscribe to my mailing list for updates

Dev Academy - End of Week 1

If you haven’t already, it might be worth checking out my first post about Dev Academy

Well, it’s the end of my first week at Enspiral Dev Academy. It’s been a huge week, both in time and what we’ve been doing.

One of our fearless leaders, Rohan Wakefield One of our fearless leaders, Rohan Wakefield

To give you a better idea of what the EDA experience is like, I’ll run you through what a typical day at EDA has been like so far.

8.45am: Arrive and check in with my accountability group. This sounds a lot scarier then it actually is. Your accountability group is basically 2-3 other people who you check in with daily to see how you’re all going (and to make sure you’re all there).

9am: We all head into the lecture room and start the day with some notices, then get stuck in with an Engineering Empathy session. So far we’ve mostly been doing looping sessions, which are a really interesting exercise. Everybody pairs up, and is given a question like “What is a time you were discriminated against and how did that make you feel?”. You then talk to your partner about that for two minutes, while they listen intently. Once the two minutes is up, your partner then repeats back what they heard and what they think you were saying. Then you swap roles and repeat the process.

It’s a fascinating exercise, and I found the discrimination one particularly interesting, because as a straight white middle class male, it’s not often that I’m discriminated against because of my background. I was struggling to think of an example, but I ultimately ended up talking about how I never really felt like I fit into NZQA (New Zealand’s high school qualification system). It was really hard to have so much pressure to fit into a system that I never really felt was a good judge of my learning, especially from my family and friends. It was a much more emotional experience than I had thought and I felt like my partners and I really connected.

We also repeated the exercise another day, with a similar question, but this time about a time when you felt privileged. I spoke about how I felt very privileged that my Mum had chosen to pay for my Dev Academy tuition. It was such an amazing thing for me because the money aspect was really worrying me leading up to Dev Academy, and to get a call from my Mum saying she would fund me made me feel like she really believed in me.

As part of EE, we’ve also been doing journalling, and another very cool exercise where you had to pair with the person in the room you knew the least, and try and guess things about them like their favourite movie, favourite music and biggest fear, just from what you knew about them so far. That exercise was interesting because pretty much everyone’s assumptions were drastically wrong. It feels weird as well, because it plays on the stereotypes and labels you’ve put on people, and it demonstrates that quite well.

~9.30am: The day’s first lecture begins. To me, lecture is almost the wrong word for it, because that screams having a teacher at the front of the classroom telling you what is what. The lectures we have are far more discussion based, and I really appreciate that. Some of the stuff we’ve covered this week has included general debugging strategies, sorting algorithms, source control and more. Most (all) of the content we’ve covered in the lectures has been old hat to me so far, so I’m very keen for when we get into more advanced topics.

10am: We get cracking on the day’s challenges. We were pair programming every day except for Wednesday, which was an optional solo day. The challenges are pretty cool. So far they’ve been toy problems to teach problem solving and general algorithm stuff. Once again mostly old hat to me, but it’s been very interesting working with people who have a different perspective on programming and problem solving.

Some of the cooler challenges we’ve had this week have been making a Boggle Board, and solving Sudoku. Doing the Boggle Board challenge was great, as I was working with my old friend and flatmate Taylor, who is a more experienced programmer than I am. As a result, we got to blitz through it and work on some of the extra credit stuff (like writing an algorithm to check if a word is on the board recursively).

I also really enjoyed doing the Sudoku solving challenge. I was working with Andrew, who is new to programming but has a really extensive maths background. We ended up writing debug code to display the board and decision making for inserting numbers, which turned out to be a really effective way to see what was going wrong in the program.

12pm: Lunchtime. Most people end up staying in past 12pm (to the point where announcements that it has been lunchtime for 45 minutes fall on deaf ears), but I’m always keen to get out and get something to eat. Wellington has an amazing variety of excellent food, and I’m slowly working my way through all of it. Fan favourites so far have been Sweet Mothers on Courtney place and Viva La Mexico in Leftbank. I am so going to get fat before the course is over.

2pm: Everyone heads back into the ‘delete’ space (the lecture room) for our afternoon lectures. This week we covered Big O notation (a way to describe algorithm performance), data structures and basic assertions. The most interesting day for me was Friday, when instead of a lecture, we broke up into groups of 6 or so (including a teacher) and had a weekly check-in. Each person has 2 minutes of time to talk about their week. This is cool because you can choose to talk for the whole two minutes, but if you don’t the group just sits in silence. I like that because it means you have no excuse not to talk if you want to. It was interesting hearing about the perspective of the other people in my group. Dev Academy can be a hard experience, and it’s cool to be able to share how you’re feeling in a private space.

2.30pm: Back to the day’s challenges, with your pair from the morning. We generally have far more work to do in a day then we can, but the staff have repeatedly emphasized that it’s about learning, not completionism. I think that’s a great approach, because it means everyone can work at their own pace, and there’s no pressure to get through challenges just because they’re there.

6pm: We have our end of day check-in. There’s generally a few more notices, and then we’ll go around the circle answering a question like “What was the hardest thing you did today?” or “What was the most important thing you learned today?”. This is another cool opportunity to share and see where everyone is at.

6.20pm: Back to challenges! At this point there’s no obligation to stick around, but the doors don’t shut until 2am. I’ve generally been working until 7 or 8pm, depending on how my pair is feeling or how much I care about finishing what we were doing. After that, I’ve usually been hanging out with anyone around, or helping people if they need it.

Sometime around 9pm: I head home for the day, and chill out and watch some TV and do some knitting. It sounds like a crazy long day, but the time has been flying past. I go home feeling tired and satisfied. If this ends up being unsustainable, I’ll probably just cut back. We’ll see, I guess.

One of the views from EDA One of the views from EDA

Well, if you’ve made it this far, congratulations. I certainly didn’t intend to write such a giant wall of text, but there’s so much to talk about. I’ve just got one last highlight from the last week I want to share.

I received a Reddit private message after submitting my first post there. The person who messaged me kindly gave me permission to repost our conversation here, which I wanted to do because it answers a question I’ve been hearing a lot.

(Anon Redditor)
Hey, the Dev Academy seems like a cool idea but I am wondering why you would take part when you already have experience and the tuition seems pretty steep?

Hey mate,

I’m taking part for a number of reasons. While I had a fair bit of experience, my personal programming has always been shoe-horned around the rest of my life, work and etc.

I view Dev Academy as a way to focus and rapidly accelerate my learning. It’s really cool being in a space where we’re fully focused on learning (especially modern technologies).

Another big reason is that I was in a boring as hell job, and Dev Academy seemed like a great change of pace.

The last aspect that really excited me about Dev Academy was the emotional intelligence side of things. I highly recommend you check out the video I linked from my post. It explains it far better than I can, but what it really boiled down to was that the thing in my life that I had the most trouble controlling and accepting was my emotions, and the premise that I could start learning tools to do that blew my mind.

tl;dr: love learning, love programming, love making stuff, EDA is good for all of that.

(Anon Redditor)
Hey man, That is actually really cool! I took the time and watched the whole video. It all seems very interesting and if I had a chance to go to school again that would definitely be a possibility. The reason for the question is I thought you were coming from being a full-time programmer with prior schooling. So I wondered why you would go to a from the ground up training course. But the way it sounds the program really builds a lot more then your coding skills. I will pay attention to your blog as I may possibly be interested in something familiar in the future. Keep up the hard work and hopefully it can change your life in many ways!

The video I was referencing was Karim Bishay’s intro to Engineering Empathy. Highly recommended watch if you haven’t already.

I found this to be a really uplifting interaction. I thought it was awesome that he took the time to watch the video and responded so positively. It made me feel good.

There are a few other things I meant to write about in this post, like concentration and breakout sessions, but I’ve already subjected my readers to quite a lot, so I think I’ll save those for some other post.

Until next time…