Power, Control Structures, and Open Source

This post is brought to you by Command Line Heroes, an original podcast from Red Hat.

My first encounter with computers

As a child, I perceived the world to be a pretty cold place filled with control structures—similar to the movie Tron. These control structures also seemed to be pretty imbalanced. When I was about 7 years old, I remember being at a local department store that had personal computers on display. They were powered up and each of them presented passing shoppers with an intimidating black screen, broken only by these white characters:

A>

I didn’t understand what it meant, or in retrospect, how this would sell computers. There were keyboards connected to each computer. I knew what they did from watching TV, so I hit a few keys. Characters began displaying across the screen and I soon discovered that you could also hit the “enter” key and the screen would change. It appeared that the computer was trying to interpret the words I was typing, but it refused to do anything except display the words “Syntax error.” What did the word “syntax” even mean? I was nine years old, so I had no idea. It looked something like this:

A>asdfghjkl

Syntax error

A>

I tried, and tried, and tried. I typed all kinds of different words, and kept hitting enter. I even tried different computers. They all responded by displaying syntax error. I was frustrated—I eventually gave up. Round one—Computers: 1, Kid: 0.

Back to control structures and all that

Let’s start with the fact that I was a kid, and kids have no control over anything. My mom and dad got divorced when I was 5. My mom worked two jobs and could barely pay our monthly bills and keep a car running longer than a year or so. Neither my mom nor my dad seemed to have much control over their lives. I grew up in Northeast Ohio where the GDP against inflation was flat, or shrunk, most of my life. People were constantly losing their jobs. Ohio didn’t seem to have much control over its own destiny. We had lost the War in Vietnam—of which both my dad and uncle were veterans—so, it seemed our country didn’t have much control over its own destiny either.

It wasn’t until late in high school that I discovered any sense of control over anything. I learned how to play bass guitar, and other people started to tell me that I was pretty good at it. I liked that a lot and I started playing with other musicians. We formed a band and started writing songs together. People started coming to our shows and it was magical. This was my first sense of creation—and we did it all by ourselves. My bandmates and I collaborated. Oh, and we were political, had crazy dyed hair and mohawks. We had discovered punk rock. It empowered us with identity—at once collaborative and individualized.

College and computer science

My journey into technology didn’t start with a parent in Silicon Valley, nor a family member who worked at IBM. My journey pretty much started in college, because people from Northeast Ohio used to mumble things like, “Bob’s got himself a computer job, that’s a good job!” So, I decided that I needed to go to college for Computer Science, because that’s “what you do” to get a computer job.

There was one problem though—I needed to take Analytical Geometry & Calculus I and II if I wanted in this program. One might say that I was “less than motivated” in high school. I graduated high school with a 1.66 grade point average, and I had only taken one math class in four years—Algebra I. No Algebra II, no Geometry, no Trigonometry, no Precalculus, no Calculus.

So, I did what any good hacker would do and studied books at Barnes and Nobles. Within about a month, I tested into Precalculus, skipping a good bit of math and getting in the program.

As an aside, I eventually graduated with a minor in Computer Science and a major in Anthropology. Also, my last few semesters in college were consistently 3.8 to 4.0 grade point averages while working full time. I remember one semester writing 30 papers in Anthropological Methods while taking Data Structures and Algorithms II and working full time. I guess I was more motivated later in life.

UNIX and the internet

But, how did I get into UNIX and Linux? Well, it was spring semester 1997 at the University of Akron. I had been programming a while in computer science classes, but I didn’t own a computer. When I wasn’t at band practice or class, I spent most of my time at the computer lab, learning how to develop a website for my band and print flyers for my band’s shows—did I mention they didn’t charge for printing? I thought I was so crafty—I printed thousands and thousands of flyers.

Our band’s website was hosted at:

http://www.uakron.edu/~smccarty

At the time, I understood that this was some kind of “file server”—and that this was my personal area to share things. I understood that my band’s website was stored there, and I knew how to use FTP to push new versions of HTML, and even some PERL to the server. What I did not understand is that there was a whole world lurking behind the scenes.

One day, I had a problem. I had uploaded a new version, but the whole site stopped working. I just couldn’t connect. At first, I assumed the “server was down,” but had the bright idea to check the main website www.uakron.edu and it was up. I deduced that the “server was up,” but I knew something was wrong. I went to the help desk in person and they helped my right then and there—because that’s how old I am, that they helped you right then and there, like at a doctor’s office.

They shuffled me to a kid in his mid 20s who was getting his business degree. I remember thinking to myself, how is this guy going to fix anything—he’s a business guy—I’m in Computer Science (in heroic voice) and I don’t know what’s wrong.

Within seconds, he had a box up on his screen and he was typing commands on it. I knew it wasn’t FTP, but it wasn’t a text editor either. I was confused because I had never seen anything like this. It seemed like he was typing commands of some kind—directly on the UNIX server, but he was on an a desktop Apple Power Mac. IT MADE NO SENSE! I asked him, “What are you doing? Are you typing commands on the server?” He faintly said, “Yeah,” while focusing on the commands he was typing to troubleshoot my problem—which ended up being permissions—of course.

My mind was blown. After he fixed the permissions with the files for my band’s website, I asked him a million questions until they finally kicked me out of there. I now had this mystical feeling about how powerful UNIX servers were. My curiosity was on fire.

First foray into open source

Later that year, it was time to get my very own computer. I used my extra student loan money to buy a Compaq 1135 K6-2 AMD laptop. I still remember that off the top of my head. I was so proud of this computer. I had never owned anything this expensive before. It cost me $1100—more than my car.

Peace, love, Linux–my first time in San Francisco

One night at a restaurant with some fellow computer science students, I pulled out the new laptop with tremendous excitement. They were all like, “Yeah, that’s cool,” but they weren’t super impressed. With a hugely condescending attitude, my friend Chad said, “But, why are you running Windows on it? I mean, why don’t you put Linux® on it?” I had never even heard this word before. How do you say it? Leee-nux? I was infuriated. How could this guy know about this cool, underground thing when I had never even heard of it. This was punk rock.

The next day, my other friend, Matt, and I went to Best Buy and got Red Hat Linux 5.2 in a box. The following months of my life are a blur. I didn’t even understand what “/” was. I was totally enthralled. Back then, there was no Google—I must have called Chad 52 times with questions about X Windows, Winmodems, boot problems, partitioning problems, how to install compilers. About a month in, he probably regretted that snide comment. It changed my life, and we are still friends to this day.

Back to controlforget the structures

Taking control of your life can be difficult, especially when you are young. I had no idea how to get a job in Northeast Ohio. I tried, and tried, literally sending out 50+ resumes.

Because of Linux, I got my first real job—it was at NASA Glenn Research Center. I never dreamed this would be possible. The campus had airplane hangers and giant metal tubes running overhead across the roads between buildings. The front entrance that had a sign that said “For the Benefit of All.” This was an intense place and for the first year, I had butterflies driving onto the campus.

Inside, it was like The Big Bang Theory, complete with engineers who would literally get into screaming and cussing matches over math equations and lay on the ground during team meetings taunting co-workers to “just kick them.” It was a madhouse and I loved it.

Even among the scientists, there was a stranger, darker group. The UNIX admins. I remember the first time I walked into the eerie, half-lit room where all of them worked. There were strange computer parts all over the room and nobody ever looked up from their keyboards when I came in. I would stand there awkwardly until somebody finally mumbled at me with half attention. They were so mystical with their beards and irreverent attitudes towards everyone and everything. They were some strange new breed of philosopher-warriors.

I was in love. I eventually sparked a friendship with one of them who had passed the very first Red Hat Certified Engineer test. He “got it,” and he taught me about SBus, SunOS, Solaris, and Irix.

I kept going from there—from online retail, to startups, UNIX, Linux, and open source gave me the ability to have not just a job, but a career.

This early experience in scientific computing, as well as online retail, hosting providers, startups, and consulting, eventually led to Red Hat in May 2011. I became a solutions architect and, coincidentally, was hired by none other than fellow Command Line Hero, Thomas Cameron. I was blown away—the same company that produced that original Linux distribution that I installed in 1997.

Immediately, I knew there was something different about Red Hat—the mailing lists were crazy. People were passionate and debated anything and everything. It was similar to NASA, but I really felt like I had control over my career. In the first 24 months, I took seven classes and tests, becoming a Red Hat Certified Architect. In the seven years I have been at Red Hat, I have progressed in my career in a way that I really don’t think would have been possible anywhere else.

The future Command Line Hero

Giving back is important.

In 2014, a local group of Linux enthusiasts asked if I thought we could get Richard Stallman to come speak in Northeast Ohio. Being from Northeast Ohio, it was important to us because he led the early open source movement and for us, that changed the world. Together, we started a conversation with him and he agreed to come and give a talk. He stayed at my house for three days in October 2014—it was great—complete with loud, political debates. I had the chance to share with him how open source changed my life—how it empowered a poor kid from Akron, Ohio without financial resources. That meant a lot to me.

Richard Stallman looking at me like I just told him that software ain’t free

I am well aware that some people think I am intense—without understanding my background, perhaps even a bit naive because of my excitement for open source and technology. But, when you grow up the way I did—in my neighborhood—real, healthy opportunities are rare. As a kid, I had such a strong desire to learn, but we didn’t have access to computers, travel, or even the internet. Even when I was in college, Sun Microsystems, SGI, and HP-UX manuals were wildly expensive and guarded like treasure. Open source changed that forever—with motivation, desire, curiosity, and a good attitude there is a lot more opportunity. Open source, Linux, and now Kubernetes, literally changed my life. It gave me the confidence to keep progressing in my career and the opportunity to travel the world. To learn more than I ever dreamed possible.

But even open source communities can be intimidating—and intimidation can be limiting. Luckily, there is a strong trend toward encouraging diversity and new participation. In the world of containers, APIs, and serverless, open source is giving the next generation of Command Line Heroes the ability to take control of their careers—and their lives. As a veteran, I welcome new Command Line Heroes. If you ever have questions or need help, feel free to reach out to me on Twitter @fatherlinux or smccarty@redhat.com.

Want to hear more stories about the OS?

Check out @rossturk’s post on the Magic of Linux, @ThomasDCameron’s post From police officer to Open Source devotee: One man’s story, @ghaff‘s story entitled My journey from BASIC to Linux, @MattTheITGuru’s  journey From manual to automated DevOps or @ipbabble‘s exploration of Unix/Linux and me.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

w

Connecting to %s