Topher DeRosia took some time to reflect on HeroPress and recount his own path to WordPress, the long and winding road of freelancing, and his role as a developer evangelist for BigCommerce.
Topher may be best known for HeroPress, which has published autobiographical essays from members of the WordPress community every month since March 2015. He took some time to reflect on HeroPress and recount his own path to WordPress, the long and winding road of freelancing, and his role as a developer evangelist for BigCommerce.
DK: How did you first got into programming, the web, and WordPress?
TD: Getting into programming is a long slow story. Someone mentioned the other day how they learned HTML through View Source, and I did that as well, but then it occurred to me that I learned how to do that through WordPerfect's “View Codes.” Same idea, different platform.
The college that I went to had a VAX/VMS computer network for the whole campus. Dumb terminals with either green or orange letters hooked up to a computer that was probably five feet tall, eight feet long, and about four feet wide. It could do email so that we could send an Electronic Message all the way across campus! It was incredible. Then I was told we were going to be connected to The Internet. I remember where I was standing, and who I was talking to when I said the words “What's the Internet?”
A year later we got a World Wide Web client installed, called Lynx. It took me a while to figure out why it was better than Gopher, but then I loved it. One day a friend said, “Hey, look what I made!” and he had made his own web page. I was floored. He said, “You should do it too!” I said “No, I could never figure that out” to which he responded, “Sure, let me show you.” That right there summarizes how I've tried to treat new people in my profession.
He showed me how HTML worked, and I learned every single HTML tag in about an hour. There were only about 30 tags, and the H tags were six of them.
Within a year people were paying me to build web pages. (Here's a screenshot of my first paid web gig.)
I did plain HTML for a number of years. Server Side Includes came and went. In 1997 someone asked me to build a site with PHP/FI 2.0, so I went home from work, went to devshed.com and looked up an article on how to do that, thus starting my career as a PHP developer.
A couple of years later “cascading style sheets” looked like they were here to stay and I picked those up and became a “full stack developer” though no-one used that phrase back then. I was a Webmaster.
When WordPress was first released, I was working at a University, teaching a class on the side for fun. It was Intro to Web Development. Each student had to do a project, so I decided to take one on as well. I built a blogging system to compete with WordPress. To my knowledge, one other person used it, ever. But I used it for about ten years. I didn't really like WordPress back then because it really WAS “just for blogging.” Trying to make it do other things was hard.
But then came WordPress 3.0 with Custom Post Types, and everything changed. WordPress morphed into a real CMS with that one version.
In 2010 I went freelance (on purpose!) about the same time 3.0 came out, and I immediately started using it, and haven't really used anything else since.
DK: I'm curious, how did you come by the nickname “Topher?” Is there a good story there?
TD: When I was three, my Aunt was babysitting, and she asked me if I knew what my middle name was. I knew my first name was Chris, last name DeRosia, and full name Christopher DeRosia, so I assumed Topher was my middle name. She laughed and wrote it on the fridge notebook and called my Grandma etc. I still have the paper she wrote it on. People called me Topher very occasionally until college when there were four Chris' on my dorm floor. We each picked something, and I've been 100% Topher ever since. When I was young and vain, I considered making it a mononym, but… such a nerd.
DK: What have you learned from HeroPress over time? Did it surprise you in any way, what people had to say? What do you think about people and groups on the “fringe” of the WordPress community today? Who/what are we (North Americans) least attentive to/aware of?
TD: I read your question about what I've learned from HeroPress over time and then sat in my chair for a good ten minutes just thinking about everything. HeroPress has become so pervasive in my personal relationships with people that it's hard for me to separate these days. I never thought I would be such close friends with people so far away. People I laugh with, cry with, talk long into the night, have days-long conversations on Twitter.
Most times when I approach someone about being a contributor I have some idea of their background, so while surprises happen they're not usually too big. One time that really blew my mind though was at WCUS in Philly. A speaker looked like a good candidate, and so without knowing anything about her, I approached her in the hall and introduced myself. I asked if I could tell her about my project, HeroPress, and she agreed. About 20 seconds into my pitch she started sobbing. Deeply and loudly. I was literally speechless. As it turns out she had a story that needed to be told, a story that started with a family leaving her country of origin when she was very young, and all the things that happened to her after that. I cried then with her, and I'm crying a little bit now as I write it. I will always say that HeroPress has affected me personally more than anyone else in the world.
I've learned that people are diverse, so I can't say anyone is like X or wants Y because of my perception of where they live. Some poor people want money. Some don't. Some people want freedom. Some never think about it. It doesn't matter where they live or what they have; I can never assume about them.
I have noticed that wealthier people tend to forget they're wealthy and take it for granted. They usually don't feel wealthy. One WordPress person might say “I'm a little short on cash this year, I'll only go to one WordCamp.” Another WordPress person might say “I wish attending WordCamp didn't cost two years salary.” Or perhaps “I wish people I don't know didn't think I was a terrorist, so I could go learn.” I feel so flippant sometimes. I want to learn something, so I spend $100 on an online class. My friend wants to learn the same thing, and $100 is six months salary. Even in wealthy nations like America, where our poorest are among the richest internationally, WordCamp is a couple of months rent, or gas, or electricity.
I could write for a long time, but it has been impressed upon me the difference in life choices between the haves and the have nots.
DK: How do you look at your freelance career now? What kind of work did you do? And how did that path lead to Sandhills, Modern Tribe, and now BigCommerce?
TD: I started freelancing in college, though I didn't know that's what it was called, or even that people actually did it for a living. I was just picking up odd jobs. After I graduated, rather than get a Real Job, I just kept taking contracts. A few months after graduation I took a three-month contract with Kellogg's and built their first intranet web site. Netscape 3 was the hotness at the time.
After that, I took a real job at a hosting company of sorts, and I was there until 2000 when I took a job at my old university running their radio station websites for ten years. I never quit freelancing on the side though. Always there was someone emailing me saying “Hey, my brother's wife's uncle's nephew says you do internet. Can you help?” Or worse “Hi there, someone told me you know web stuff, my username and password are *****. Can you help?”
Over Christmas break in 2009, my wife and I were talking, and I realized I had spent all of every evening working on side work for two years solid. I was spending eight hours a day at work making $25/hr (granted, with benefits etc.) and three hours every evening making $65/hr. We reasoned that if I got that day job out of the way and managed four billable hours a day, we'd be in about the same position. Except I wouldn't be at the office eight hours a day (nine if you include driving) and I'd get my evenings back. What's not to like? So in February 2010, I was done.
People often ask me “How do you know when it's time to freelance?” The answer is, start now, on the side. When you're making enough that the day job is getting in the way, fire it.
As for what kind of work I did, there's some irony. Before 2010 I did all custom PHP/MySQL/HTML/CSS stuff. 2010 is when WordPress 3.0 came out and changed everything. I did only WordPress after that. So the metric I had based my freelance career on changed as soon as I started full time. But it worked out.
I wasn't very good with WordPress when I started, but I was a very good PHP dev, so I quickly learned how to mess with custom post types. Most implementors didn't know how but needed them, so I did a lot of work for other WordPress devs. I would say the majority of my freelance work since 2010 has been building doodads for other WordPress developers, as opposed to building websites.
Somewhere around 2011, a client talked me into joining their startup. I become CTO, and it was sort of a Real Job. Then we took investment and became a really Real Job. Varsity News Network is still going today. While there I built a monolithic plugin that did everything I could think of — it was ridiculous. It was my first plugin, and it showed. It was decently secure and whatnot, but I didn't fully understand hooks and filters, and the whole thing was a bit of a mess. But who doesn't look at their code from eight years ago and cringe?
I didn't really enjoy my time there, and my partner knew it, so in the summer of 2013 he took me out to breakfast and fired me. It was awkward because that meant I didn't have a job or insurance anymore, but he was right, I didn't want to be there. It also meant I had to go tell my wife that we were out of work.
There were some upsides, however. My partner went to bat for me with the board and got me my stock options, without having to work six more months to vest them. Also, there was a New Thing in the WordPress world: agencies. I'd been hearing about one called 10up, and I knew there were others. By this time I knew some people in the WordPress world, and I felt pretty confident I could get a job fast. I emailed a friend at 10up, and he said, “You need to talk to Jake.” So a few minutes later I was talking Jake at 10up. He gave me some advice and gave me a test to take to see if I'd fit in there. I'm going to skip ahead here, because the next few months are an interesting story in and of themselves, and it would make this tome even more epic.
Long story short, I started a trial with X-Team in November of 2013 and went full time in January. I worked there until the fall of 2013 when Dave Rosen, the owner of X-Team/XWP approached me about starting HeroPress. HeroPress took about four months to fail, and during that time several people approached me and said “If this doesn't work out, come see me,” which was a very nice safety net.
Of course, it did fail. I went and saw Pippin Williamson and worked for him writing docs for about a year and a half. In the spring of 2016, I wasn't very happy writing docs. Pippin was great, the company was great, but I just didn't fit well. I heard Peter Chester from Modern Tribe talk about how they work, and getting back to coding sounded like just the thing to me. I worked there for about five months. Some miscommunication during hiring put me in a position I was ill-suited for, and it wasn't good for either of us.
After that, I joined with Tanner Moushey for about a year to spin up a WordPress agency. In typical startup fashion it was a lot of hard work and not quite enough pay for either of us, so we ended that at the beginning of 2018, and I had to decide what I wanted to do next.
I freelanced for about six months. What I really wanted was a community job — something where I did a lot of shaking hands and kissing babies.
Then at 11:33 PM on June 11th, my friend Luke sent me this in Slack:
This may come as a surprise to you, but I WAS interested. A week later they made an offer, and I accepted. I started at BigCommerce on my birthday, 17 July.
DK: So do you get to do a lot of shaking hands and kissing babies as a WordPress Developer Evangelist?
TD: A lot of shaking hands, not too many babies yet, which is sad, I love babies. 🙂 I've been tasked with going to twenty WordCamps in 2019, and I travel in person to at least one Meetup per month. On top of that, I spend a ton of time talking with people on Slack, Twitter, Hangouts, etc.
DK: Tell us about the good news of headless eCommerce.
TD: The joys of headless eCommerce are many.
- You build the presentation layer of your store in whatever language you're most comfortable with. With a good enough API, the language really doesn't matter. PHP, .Net, React, Rails, whatever you want. If you change your mind two years later, fine, your store is all still there with everything important still configured.
- It makes your website much more modular. By this, I mean that you can build a website and connect it to your store. Then you can build another website and also connect it to your store. Then a mobile app. Then Amazon, or eBay, or Facebook.
- It leaves the hardest parts of eCommerce to people who do nothing else but that. They know all the intricacies of PCI compliance, they have entire teams dedicated to security, and there's 24/7 support
- A SaaS typically has quite a bit of leverage with third-party services like shippers and credit card processors. This means they can not only get solid integrations but also at prices you can afford. For example, BigCommerce has a deal with Braintree to offer the lowest PayPal rates anywhere. A SaaS has the power of volume when negotiating on your behalf with third-party services. There's huge value in that.
DK: Is BigCommerce unique in the WordPress space?
TD: Depends on how you define it. 🙂 There are other eCommerce plugins, and there are other SaaS plugins. There's even a Shopify plugin that works over API just like BigCommerce. That said, Shopify's API handles two requests per second out of the box, whereas BigCommerce's does 400 per second. I think if you want to look at the purely SaaS angle, plugins like OptinMonster and Kraken.io started the movement. I think larger companies like BigCommerce are going to help turn the tide toward heavy SaaSification (that's a @Mor10 term).
DK: Are developers or site owners hesitant to move inventory to an API-first service where pricing is based on fixed API call limits? Or is this what the future of WordPress looks like, as a Digital Experience Platform?
TD: We haven't seen that with the developers who use our platform most. The most traffic we've ever gotten is a small fraction of what our theoretical limits are on the API, so there hasn't been any concern there. Mostly what we've seen is excitement about being able to break out of our built-in Stencil framework and build without limits, while keeping the core power of the eCommerce platform. (Here's a simple example.) There's a simple form where you can put in your weight and skill level, and it will tell you your surfboard volume. In WordPress, that's ridiculously simple, but in Stencil, on BigCommerce it would be really hard. Putting WordPress on the front end of BigCommerce gives the benefits of both platforms.
Something that has really surprised me is the excitement of agencies that have been working in Stencil on BigCommerce for years. Most of them also do WordPress sites, and they are thrilled at the possibilities. I know of more than one agency that is giving up all other eCommerce options (like Magento or Shopify) to go exclusively BigCommerce on WordPress. It's very exciting.
DK: What do you do when you're not working to relax or to decompress when you're off work?
TD: I typically spend time with my family watching TV or playing games. I do have a personal vice; I play a few video games. I don't consider myself a gamer, but there are a few I like, and I'll occasionally take a few hours in the evening and play.