By Heidi Proske, Mobile Engineering TA
I took the first-ever Mobile Engineering course at the Iron Yard and graduated at the end of June. For 3 months, I along with 12 other students and an instructor met Monday through Friday from 9-5pm learning to code in Objective-C so we could write apps for iPhones / iPads. During such an intensive course, there was a mix of highs and lows – that was bound to happen when you’re thrown in with a bunch of strangers while trying to learn something new and challenging! With a mix of personalities, abilities, learning preferences and backgrounds – for those 3 months, we were one – all eating, sleeping, breathing Objective-C. Lunch breaks were filled with walks to nearby food joints, followed by games of ping-pong, foosball & playstation games in the break room or sometimes hanging out in the classroom going over code to iron out any problems. By the end, things became easier, more familiar and we created 30-something apps along with our final projects. We also formed bonds and then suddenly THE END appeared. The first week after the course was miserable for me, I missed that learning environment with the familiar faces, banter and our instructor with his favorite saying “New App”. I was clearly having withdrawal symptoms…
When the opportunity arose to be the TA (Teacher’s Assistant) for the next Mobile Engineering cohort, I don’t think I could do anything but jump at it. I’d recently been teaching kids how to code and loved it. Plus, I have a programming background so decided that would come in useful when trying to help explain things to others or debug their code. What would I get in return? Another 3 months of bliss… improving my skills, meeting new people, making friends, and making more fun apps!
We’ve reached the halfway mark through this course and so far it’s been a great experience and an eye-opener. While the TA role only called for 12 hours a week, I decided that it would be worthwhile to instead sit in on the class full-time and that’s allowed me to immerse myself all over again. Comparatively the course has pushed a bit faster and harder, especially since now we’re covering both Objective-C and Apple’s newly introduced Swift programming language in the same amount of time.
Having been one of the students in the previous class, I went into this class with a few “I wish I’d…” thoughts and now seeing through the eyes of the current class – there are SO many things I want to tell everyone that does this course, but it would take a while. If I had to choose 3 they’d be:
- Be aware that everyone’s going to have both good and bad days (at different times), everyone’s going to wish for the pace to be faster and slower (for different projects or concepts) and everyone’s going to enjoy one app over another (’game’ vs ‘to do list app’). That’s okay, just remember we’re in a group learning environment. If you’re having a bad day… chin up, stay focused and look forward to tomorrow. If you’re having a good day, enjoy it and read up more on the topics / concepts we learnt to completely conquer it! Remember this course is to teach us the fundamentals of coding and how to learn so that we can dive deeper into any topics we want.
- When you’re frustrated by code, reach out to someone that is in the same boat as you and see if you can figure it out together. If writing apps was super easy, you wouldn’t be taking this course! Sometimes you’ll feel like you’re drowning – but at the end of every week, take a look back at your older projects and compare them to the latest. You’ll see how far you’ve progressed!
- And on the flip side, if you’re frustrated by some human element, you can cry a bit (wait, what I’m the only one?) or moan about it, but where does that get you? Instead try immerse yourself in code. Go back to an app that you enjoyed and see if you can rewrite it / customize it / add more functionality. Push yourself past your current knowledge – those are the times when you can “power up” your coding skills. There really is only ONE way to learn to code (or to code better) and that’s by coding over and over again.
And last but not least, I’d realized during the first course how awesome our instructor is, but now sitting through the course a second time, I know he’s even more so. He loves all things Apple to his core, and it shows in his teaching. He has a designer background which is super for us because it means he literally designs the interfaces of our apps (and gives us the design template .png file to work from) so we actually have both functional and beautiful apps to show off! All other course material I’ve seen sticks to very dry standard layouts. And something only I know, none of the apps are identical to the last course and if they have something in common, then the interface or functionality is different. He’s super creative and comes up with ideas based on what people say in class or their interests. And he’s got that developer grit, once or twice when there’s been a change in the way something works – we’ve been able to watch him as he works through it to figure it out. Definitely one of a kind? As rare as a unicorn?
For anyone considering the plunge into iOS development and wants to know more about this course, buy me a coffee and ask me to show you the apps we’ve built – you’re going to get a bubbly mix of excitement, pride, happiness (and some technical stuff) all thrown into one response. Oh, and you’ll probably want to start writing apps too 🙂