Main content
Computer programming - JavaScript and the web
Course: Computer programming - JavaScript and the web > Unit 8
Lesson 1: Meet the professional- Welcome to "Meet the professional"!
- Maya Bello, Software engineer and YouTuber
- Sarah Northway, Game Maker and Nomad
- Brenda Jin, Mobile Prototyper and DJ
- Tom Heinan, Mobile Developer, Pilot, and Zombie
- Amy Quispe, Data Liberator and Developer Relater
- Bill Mills, Physicist and Interdisciplinary Programmer
- Carrie Cai, Researcher and Dancer
- Lauren Haynes, Product Manager and Lindy Hopper
- Marcos Ojeda, Designer, DJ, and Dog Owner
- Allyson Lubimir, Support Engineer and Cat Lover
© 2023 Khan AcademyTerms of usePrivacy PolicyCookie Notice
Tom Heinan, Mobile Developer, Pilot, and Zombie
Hi, I'm Tom Heinan!
What do you work on?
I work for a company called One Medical Group, which is a technology-enabled medical practice. I spend most of my time working on our mobile app in Objective-C, where we’re implementing all sorts of cutting edge product features aimed at helping people manage their health and wellness effectively. I also do a bit of back-end code in Ruby, developing the APIs that our app needs in order to communicate health data securely and reliably.
Our patients use the mobile app to schedule appointments, get virtual triage for common issues, and communicate with their doctors, so I try my best to squash bugs and improve usability with incremental updates while at the same time planning and prototyping exciting new features.
How did you learn to program?
My parents bought our first family computer in 1986, the year I was born. It was an Apple IIGS, and I started playing around with GS/OS as soon as I could read. I learned basic HTML and JavaScript in elementary school (I even got the Computers merit badge in Boy Scouts!) and then took AP Computer Science in high school, the curriculum for which was mostly introductory Java. When I got to university, I skipped over many of the more traditional language courses (BASH scripting, C++) and instead taught myself the basics of Ruby, which remains one of my favourite languages today.
For me, the hardest thing about learning any language is finding a good place to start. Taking a hundred pages of documentation and turning that into something cool is a pretty insurmountable task, so instead I try to take an idea and find a similar open source project in the language I’m trying to learn. Then I can follow along with the code and get a basic structure down into which I can pour my own logic, Googling as I go. Identifying similar concepts is also key - Understanding Categories in Objective-C is a lot easier if you already know what Open Classes are in Ruby.
What do you do when you’re not programming?
I code a lot at work, and I also code a lot for fun, but when I’m not writing code, I like to spend time outside. Camping and hiking are always a good time, and we’ve got plenty of great places to do so here in California. I’m also working on my pilot’s license right now - there’s nothing more relaxing after a long day of meetings than heading up to 3,000’ and enjoying the sunset over the bay.
I also play piano and guitar and do a bit of songwriting here and there. I love acting, and I was a member of my university’s improv comedy team for several years - we still have the occasional nerd reunion in Nova Scotia, where I went to school. Being a software engineer doesn’t give you a whole lot of extra time for theatrics, but if you’ve watched AMC’s The Walking Dead, you might’ve seen me get killed once or twice. I’ve been told I have a pretty solid shamble.
What’s your one piece of advice for new programmers?
Find a language you love, make cool stuff with it, and never be afraid to experiment.
Want to join the conversation?
- What are API's?(30 votes)
- An application programming interface (API) specifies how some software components should interact with each other.
It is especially used within apps on smartphones and tablets.(41 votes)
- im a 4th grader i wanna learn to code and use javascript but how do i memorize all the rules and stuff?(6 votes)
- Um start coding shapes first then learn how to move them, I'm here to help if you need!(3 votes)
- I wanna become web developer and I would like to know where should I focus in the beginning? (I don't know any programming language)(4 votes)
- I recommend you start with JavaScript,it may be hard to get into the complex things,but as a beginner myself i think its easier tan others such as C++ and HTML.(4 votes)
- how, do you become a pilot?(0 votes)
- Go to your local airport. There is usually a flight school there. It takes passing a ground school, and also a minimum of 40 hours total flight time (20 with and instructor and 10 solo). If you do decide to learn to fly, I always recommend having the funds to fly at least 2x per week ( 3 is optimal). You need this to maintain consistency. If you fly less than 2x per week, you will end up spending more money in the long run because you will need to relearn things. I am a certified flight instructor. Good luck with your endeavors(12 votes)
- What does it mean by sayingZombie(3 votes)
- He probably just likes to play an act as a zombie, he isn't a real zombie, that wouldn't make sense.(2 votes)
- Hello Tom,
I am really interested in changing careers, and am a pilot and musician. I think that programming might be really great for me. What would be your advice for a path as far as education. I am good with computers, long, long ago did some very rudimentary programming in basic as a kid. But wanted to get some advise from someone in the field for a good path when learning how to be a programmer. What should I Do?
Thanks(4 votes)- I'm not tom but I suggest that you choose the path which you think is best for you , the path which suits your life the best and one in which you will be most comfortable
I have seen many people that make the mistake of choosing money over personal interested do not do so as in turn it Will make your life a bit miserable
Hope that helped(0 votes)
- It's another of the many different coding languages, including C++, C#, Java, Python, etc.(3 votes)
- What language would you recommend for a complete beginner? Thanks(2 votes)
- I would recommend Javascript as taught by Khan Academy.(3 votes)
- wait so he's from the "walking dead" and get's killed twice? what's his name in
the walking dead 0-0(2 votes) - I still don't get mobile developer, pilot, and zombie.I don't understand being a zombie.(2 votes)
- Re-read the part at the very end... right above "What's your one piece of advice for new programmers?", where he mentioned "The Walking Dead".
It's also the top question, try sorting the questions by Top and you'll see pamela's answer to the same question. =)(2 votes)