Back in 2010, I wrote my first line of code. I had been watching a slew of learn-to-code videos (read: propaganda). This was about when the “100 Days of Code” and “1 Hour of Code” memes began to take off.

I had always dabbled in technology but hadn’t done anything worthy of calling it “software development.” But I wanted to. So I wrote a few lines of …

Javascript 🫤

It was tough. I’m not going to lie. I think many out there have had an experience similar to mine. I enjoyed a few months of making some mediocre progress, mostly on websites with their IDEs built into their lesson pages. No, I did not become a software developer. I instead continued fumbling my way through my undergrad.

Then we can race ahead to 2017. In the intervening years, I’d worked in technology. In my case, mostly in audio/visual production, first inside a megachurch and then throughout convention hotels in Minneapolis, Minnesota. Shortly after moving into management in my company, I realized I was now tasked with making a host of decisions day-to-day that a computer could make.

So, I learned some more about software engineering. This time I found The Odin Project where I revisited the fundamentals of HTML, CSS, and Javascript. However, after moving past the basics of front-end development, I began their section on back-end tooling, where I for the very first time wrote a “hello world” in …

Ruby! 😄

Oh, it was amazing! And it was so easy!

For the uninitiated, it looked something like this:

# hello.rb

puts "Hello World"

And if you wanted to write a little script to have Ruby ask you for your name so you can greet yourself? You’d write something like this:

# hello.rb

# Print the message out to the user,
# asking for his name.
# ("puts" means "put string")
puts "Please enter your name:"

# Accept input from the user and
# remove the newline at the end.
# ("gets" means "get string")
name = gets.chomp

# Use string interpolation to
# provide the user a polite greeting.
puts "Hello, #{name}!"

Now, I realize that these features are present in other programming languages, including Javascript. For me, though, it had never felt so easy. It had the it-just-works feeling we (used to) get from Apple products. Here I was, with almost no previous experience, and I found I could transmit my thoughts to the computer and let the computer think my thoughts for me is the foundation of my interest in programming. That is the foundation I bring into every advanced project I am presently working on.

I have bounced around into other languages. For what it’s worth, I spent quite a bit of time in Python, trying my hand at Django. But it never stuck. There was no love in it. Everything else felt too hard and rigid. Ruby, though, felt human.

And that’s why I love it.