Nick Johnstone's Blog

Sometimes I write things

Subscribe to my mailing list for updates

Dev Academy - Week 2: Electric Boogaloo

Another week has passed, just like that. It’s Monday night, and after a few days of procrastinating I’m tackling my blog post for the week.

I spent the early nights of last week hard at work on my latest side project, NZ Skate Search. I got sick of having to check 4 or 5 different skate shops to see if they had the gear I was after. So I made a website ( that lets you search all of the shops that support the scene from one place. I got some good feedback from the skate community, so that made me happy. I started working on the website on Sunday night, and finished it and released it on Wednesday. It’s not the nicest code I’ve ever written, but it definitely works.

If you’d like, you can check out the source code on Github. Code review and feedback is always appreciated.

At Dev Academy, we spent Monday and Tuesday diving deeper into OO, then into the MVC pattern (for those uninitiated, Model View Controller is a common structure for building websites). Some of my fellow boots struggled with this at first, but it was cool to see them thoroughly grasp the concepts after such a short intro. It’s always cool when you get to see the rays of light shine through, or the ‘Aha!’ moment as Dev Academy folk say.

We spent some time on Tuesday evening doing a deep dive session about the Inner Critic. Joshua (one of the teachers and the resident Engineering Empathy guru) gave a brief talk about the idea of the Super Ego, and about ways to defend and ignore pointless inner attacks or criticisms. I found this really fascinating, as I definitely have a vocal inner critic, and the idea that I could learn defense mechanisms against that appealed to me. We did a rather intense exercise where we paired off, and vocalized our inner critic to our partner. I found this a lot more emotional than I was anticipating. It really helps to validate that a lot of the stuff you say to yourself is just a silly attack. It’s also good to get some of that stuff out in the open, and to hear that other people have the same sort of worries as you.

On Wednesday (a day where you can optionally work alone, as opposed to our usual pair programming), we were told that we would be pulled aside for a mock assessment. I had mine with Joshua. He prompted me through some fairly standard programming, and then gave me some feedback and advice. There was little given on the programming side, but he gave me some interesting advice about using my time to see how I can best impact the team, and having a (as he puts it) meta-awareness of the social stuff around me. Some of it felt as if he’d been watching me like a hawk for the last few weeks, but I feel it was just more perceptive than anything. I also really appreciated how he delivered the feedback. Some of it could have been difficult to stomach if it was laid on me, but he gave it in such a way that it was easier to receive.

My mum also came up from Christchurch for the afternoon for a job interview, so we got lunch. It was good to see her again and catch up. We had a good yarn about some of the stuff I’d been doing, especially around the inner critic. It’s nice to see a bit of my family in person.

Every day, as part of Engineering Empathy, we start the day with an attention exercise. Initially, this involved a minute of paying attention to our breath. The aim of the practice is to exercise the part of the brain responsible for controlling your attention. The theory is that the more you do this, the more you practice, the easier it is to focus and concentrate on something. The reading I was recommended regarding this is Search Inside Yourself, written by a Google employee and currently #6 in the Amazon Sacred Texts category. I can’t speak to it, but I’ll see how the attention exercises go. So far I haven’t felt any drastic differences, but we’ll see.

On Thursday we started digging into databases. This involved learning about SQL (again for the uninitiated, a language for talking to databases), as well as database schemas and relationships. A lot of this is new ground for me, as I’ve never really gone that deep with relational databases. Everyone caught on to the important concepts in databases quite quickly. That impressed me, as some of the finer points of databases had escaped me for quite a while.

Later in the evening Joshua gave a talk about mental athletics. He drew parallels between extreme endurance in sport to extreme mental achievements, like the World Memory Championship. It was a pretty interesting talk, and there was some good discussion afterward around burnout and working hard. It’s also cool, as different people from around Wellington come along to our tech talks. Most are in software, but it’s cool to meet a range of people. Plus the free pizza and craft beer are great.

Friday came and we had our first team project. We were split into teams of 4-5, and told we could build whatever we wanted, as long as we could do it by 5pm that day.

My teammates and I built katana, a command line application for practicing code katas. A code kata) is a small programming challenge to aid practice through repetition. katana lets you easily try random katas, as well as to create your own. You can also tag katas, and practice only a certain tag.

This was probably the coolest day of Dev Academy for me yet. I really enjoyed working with my team. We communicated well, and made decisions quickly and fluently. We set fair deadlines and then exceeded them. I honestly couldn’t be more proud of my fellow team members to have gone from not knowing how to program several weeks ago to building something I would be happy to ship outside of Dev Academy. We all wanted katana as a tool that we could use, and I’m glad that we built the vision that we had.

This was another intense and fantastic week at Enspiral Dev Academy for me. I eagerly await the remaining seven.

Until later (I love ellipses)…