How to become a professional programmer
By Tyler Church
3 Acts
- How to code
- How to eat
- How not to code
Who are you? (the audience)
You want to learn more about how to become a professional computer programmer.
You might not know how to code yet (and that's okay!)
Who the heck is this guy?
I write code
And people pay me for it
Things I've built
Unfortunately almost everything is under NDA... But at a high level:
- Web apps for running businesses better (data analytics, automation, etc.)
- Mobile apps (concert tickets, marketplace, etc.)
- Cloud automation, etc.
- Games (physical esports, lots of tiny hobby games, etc.)
Pick a language that's friendly for beginners
Pick small projects
That you can (hopefully) see through to completion
Break everything into small pieces
- How do I take input from the user?
- How do make a random number?
- How do I compare two values?
And then put the small pieces together
Like writing a recipe.
Remember: Computers are very literal
They do exactly what you tell them to do.
You're going to struggle!
And that's okay!

Learning to cope
Be better than everyone else by reading books
Read other people's code
There's a lot of it
Expect that this will take time
A short personal story
It took me 5 years to become barely competent.
I wanted to make games like this:
But instead my games looked like this:
So make peace with the brick wall

Learning is great but...
Coding for money is better
70% of paid programmers are happy
So clearly you want to be part of the 70%!
There are a lot of programming languages
Nearly 700 listed on Wikipedia as of 2024-01-31.
So which one should you pick?
My recommendations by area of interest
- Games - C++ and Lua
- Web development - JavaScript and SQL
- Data science - Python and R
- Embedded - C
- Fortune 500 - Java or C#
- iOS apps - Swift
- Android apps - Kotlin
Or, learn what pays well
Act 3
There's more to life than writing code
Learn to write English well
- Read widely
- Write concisely
- Write precisely
But you will spend most of your day in meetings
(I'm sorry)
Learn to debug well
- The computer runs your code, not the ideas in your head
- All your assumptions are wrong
- Ask questions
- Prove things one by one
Get a rubber duck
No, really.
Get a rubber duck!
It's a debugging super power