The second episode of this Command Line Heroes season 3 drops today and it sent me back through a nostalgic look at the idea of first programming languages.
Languages affect accessibility
This episode taught me that BASIC was a huge leap in the democratization of computer comprehension. It's hard for me to imagine a time when computers were scarce, but that not-so-distant past was when BASIC changed the world. As Saron Yitbarek mentions, "In the early days of programming, you pretty much needed a Ph.D. to do anything." BASIC was such a monumental leap with its focus on usability (beginner-friendly commands) and resource sharing (timesharing of a single computer). It helped programming get beyond the "computer jocks" of the time (I love that phrase from the episode) and helped a new generation of people participate. The barrier of entry dropped.
First programming languages
The heart of this episode rests on the topic of learning the first language. There is so much advice out there about what to learn and how to learn it. Quite a lot has been written on the subject on here. I love hearing Saron's story of Ruby being her introduction, and how it was fun in an almost unexpected way. I had a similar experience as I dug into Ruby for a few projects. It's wildly flexible in a way that makes me happy. It's that happiness that keeps me coming back to it when I'm in a pinch, and there's something powerful about how languages can be so emotionally charged.
I first experienced programming with HTML and CSS, but the first heavy-duty language was Java. I will never forget being told on day one of class to memorize public static void main without any context on what it meant. We took a good bit of that semester to explore what it in the context of object-oriented programming, but it never made me feel as excited as when I iterate over a list using .each in Ruby or import numpy and do some mathematical magic in Python. Then I hear about how kids are learning to program with Python for Minecraft or visual programming languages like Scratch and I am inspired. The legacy of BASIC lives on in new ways.
Which leads to my takeaways from this episode:
- Remember that no one is born a programmer. Everyone starts with no background. You're not alone there.
- Learn a language. Any of them. Choose the one that brings you the most joy if you have the luxury of choosing.
- Don't forget that all languages are there to build something. Create meaningful things for humans.
Command Line Heroes will cover programming languages for all of season 3. Subscribe here to learn everything you want to know about the origin of programming languages, and I would love to hear your thoughts in the comments below.