/ Developing Stories_

Lessons Learned on the Road to Y Combinator

“Honestly before code I was still trying to figure out life... But for the longest time I didn't consider myself a programmer. And I always put it on a pedestal. I was like, you need to be like super smart to know programming and it's over here.”

When I spoke with Patrick Stapleton, co-founder and CTO of Tipe.io, this moment early in our conversation surprised me. Though he would eventually go on to co-found a company that launched at Y Combinator’s 26th Demo Day, when he first set his sights on the tech world, he didn't think he was smart or skilled enough to make it. He’d dropped out of college and didn’t know if breaking into tech would require him to go back. When he started to take online coding lessons, he didn’t believe in his ability to process all of the information presented.

We spoke a few weeks ahead of Demo Day, and as he recounted these early anxieties, his present-day self-assurance told its own story. It was almost like he was describing a different person, with how far he’d come underscoring every word.

His is a story of breaking down the mental barriers to a self-directed programming education one by one, and of getting more confident in his ability to break down the next barrier each time. His educational and career ascent may seem like it happened overnight—five years isn’t all that long, after all—but if there’s anything to take from Patrick’s story, it’s that learning to code is an incremental process, a progression of tiny steps rather than a single leap from over here to over there.

Excerpt from the screenplay for The Social Network.

We’ve seen the same trope repeated in media like The Social Network, Silicon Valley, and Hackers and dozens of times: a mercurial genius donning gigantic headphones is seated at a desk, surrounded by empty cans of whichever energy drink has a relationship with the production company, and always, always “intensely typing.” The imagery sends a pretty clear message—programming is the domain of a special breed of person:

Excerpt from the screenplay for The Social Network.

Thanks to depictions like this, Patrick’s original plan for breaking into the tech world was to find a Red Bull-fueled, giant-headphone-wearing "coder" to handle the technical heavy-lifting for him. That didn’t go as he'd planned.

“I was trying to find that technical person to help me out and do some like startup work, [and] it wasn't feeling quite right. And then, what's interesting is that around that time, I think it was like 5 years ago or something like that. There was a movement on Hacker News where everyone kept saying stop trying to find your technical co-founder and then just learn programming.”

That’s when Patrick came across Codecademy, then in its early stages. This isn’t where I’ll claim that Patrick learned everything he needed to know, and that he's lived happily ever after—that’s far from the truth. However, I will say that this step in Patrick’s journey was the most important.

It wasn't the first time a complex program ran as intended, or the first time a high-level concept started to click. While important, those moments are all made possible by a single event that every learner experiences at one point or another. It’s the moment when they realize that coding is something they can do, that it’s not too hard, that it’s nothing to be afraid of.

Patrick had this experience the first time he printed his name to the Codecademy console.

“I was like, ‘Oh this is it? This is programming?”

It’s a quick and simple exercise, but it’s a memory Patrick still carries with him today because, as he puts it, it’s the first time he “jumped in the pool.” This is a step that’s missing from lots of depictions of the programming world, and for good reason—it’s kind of boring from the outside. Way more boring than all-nighters and intense typing montages. It may lack fireworks, but it totally dismantles the perception of programming as a discipline only accessible to people with special gifts.

“In the beginning, when I was first getting into Codecademy, it felt like this is the direction I need to go. You know, like getting into programming. I knew it's over there. I didn't know how to get there, but it's over there somewhere.”

He’d identified his destination, and he had all of the motivation he needed to get there quickly. Before his first encounter with programming, Patrick tells me, he’d decided to drop out of college because he’d been unsatisfied with the experience, adding, “I spent some time trying to figure out what does success mean? What does this mean? It was really hard to see the next thing I should be doing, but the only thing I knew to do is, I need to do something. And it was that that pushed me.”

Patrick has carried that sense of urgency with him ever since. He started teaching himself Ruby on Rails, building websites with the framework and then selling them. In the process, he challenged himself to keep getting better, motivated by a need to do something, anything, to pay the bills. “I remember thinking, ‘Man, that took forever. And time's money, how can I do that faster?’ And I just kept doing it, kept building like a scaffold, getting a website up until I got really, really fast.”

Patrick’s success is a testament to what happens when the concept of “lifelong learning” goes from trendy phrase to survival tactic. Since that early Codecademy experience, Patrick has not stopped teaching himself. Counterintuitively, his experience has at times looked like a reflection of the liberal arts ethos—technologies evolve and improve at such a rapid pace that there’s always going to be a new language to learn as another language fades into obsolescence. The only way for him to be fully prepared for the future was to learn how to learn—fast.

To keep learning, he had to be resourceful. Though it was just a few years ago, a self-directed coding education looked extremely different at the time. “There were like barely any resources out there,” he says. He took unconventional and creative approaches to getting the skills he needed, including sneaking into college lectures. “I just attended classes. I just walked in because no one actually checks anything,” he recounts with a laugh.

As he learned, he taught. When he started attending an online Rails bootcamp, the instructor accidentally released all of the course material on the first day. Taking advantage of the oversight, Patrick “just learned it all in one day. And then I was like, ‘I want more.’ So I started by just like going on the forums he had, and then started just helping people out.”

“And then I just started teaching people cause I'd completed the course. I was like here's what you need to do, this is what you need to know. And then I would just learn more stuff from there.”

Recalling this time period, he paraphrases a quote that's often attributed to both Albert Einstein and physicist Richard Feynman—“If you can’t explain it simply, you don’t understand it yourself.”

Tipe.io's homepage

Even after Patrick left the bootcamp world and entered the workforce, a convenient misunderstanding ensured that he’d keep learning like a student. When he started his first job as a developer, he didn't know that employers would accept that he had to learn certain skills on the job. "I thought they only paid you for what you knew,” he recalls.

Because of that misunderstanding, he got into the habit of studying when he returned home from work every night. “I would just learn everything, like the correct way to do it or whatever. And then the next morning I would just implement it.”

Patrick eventually built a name for himself in the open-source community, particularly as it relates to AngularJS. He and a group of bootcamp classmates went viral when they used Reddit's API to analyze the site and its users, resulting in an analytics suite called Reddit Insight. That led to a stint as CTO of a Y Combinator company, and then to starting a freelance consultancy with a group of friends who would eventually go on to co-found Tipe with him.

Patrick and his co-founders started Tipe because they noticed a problem while consulting. Their clients’ rigid content management systems made it difficult for engineers and marketers alike to focus on their respective areas of expertise. So, they started building the idea that would eventually become Tipe in between consulting contracts.

When I asked Patrick what he considers the key to Tipe’s success thus far, his answer didn't surprise me—it’s a tireless commitment to learning and growth. This is a quality each Tipe co-founder has exhibited in their respective careers (all can program, all are self-taught, none of them graduated from college), and they’re taking pains to weave that quality into the fabric of the company as it grows.

“[We] don't hire necessarily on if you know something, if you're really good at it. We hire on, if we can work with you, and if you're willing to learn. Cause we can teach anyone anything at this point now, so we try to create a culture where you don't have to feel pressured when you don't know something, and it should be okay to say you don't know something. And that way we can just teach you, we solve the problem, and just keep going.”

Get more practice, more projects, and more guidance.