In episode 38 of JAMstack Radio, Brian talks with J.C. Hiatt, Founder of DevLifts. They cover front end frameworks in the JAMstack, scaling up an ultra-lean business, and even developer fitness.
About the Guests
Brian Douglas: Welcome to another installment of JAMstack Radio. On the line we've got J.C. Hiatt calling from Mississippi.
J.C. Hiatt: How's it going?
Brian: J.C. do you want to introduce yourself, tell us what you're doing today and why you're on the podcast?
J.C.: Sure. I'm a front end engineer, and as you said, I'm from Mississippi. Particularly, Jackson. I've been here pretty much all my life.
By day I work as a front end engineer and by night, or I don't know, on the side or whatever, I started a company called DevLifts and we're helping developers get fit. That's what I've been doing on the side since the end of 2017.
Brian: I'm pretty sure our listeners are thinking, "We've shifted away from the JAMstack in talking about working out." But the reason why you're here is because DevLifts is a fully JAMstack site. Your entire side project, which is DevLifts--
Do you want to explain what DevLifts is, and tell us your stack and how you fell into the JAMstack.
J.C.: Like I said, DevLifts is focused on helping developers get fit. The short version of how we do that is through plans delivered via email, and a combination of other things that I can get into in a second, every month and also a Slack community.
That's how we got up and running and that's how we're still running, and we're slowly-- We only have a few hours a week to work on this. We are slowly moving on up.
In terms of our stack, a lot of times at least in my experience when I talk about JAMstack or hear people talk about JAMstack, a lot of it usually includes some front end framework. Like React or VUE, or something. In our case we're even dumber than that. We have static HTML pages with some SaaS and a little bit of jQuery.
Where we really are utilizing the JAMstack or all these little micro services, all these APIs and stuff, is in how our business runs. It's because we don't even have a back end, but yet we're still able to create new members and charges, and make sure people get their plans automatically.
Because like I said, we only have a few hours a week. We heavily rely on Zapier and we use MailChimp a lot. We use Google, both Google Sheets and Google Docs to deliver plans. We use a company called SnipCart for e-commerce for creating the memberships.
Brian: We've had them on here, on the podcast.
J.C.: We also we use Stripe, obviously, for actual charges. That's most of the major stuff. I'm sure we use some other stuff that I'm drawing a blank on, but that's the core of what keeps DevLifts running every day.
Brian: When you say you have no back end for your business, is it because it's distributed in all these different services? Like, all your charges go to Stripe and SnipCart holds your customer data?
J.C.: It's actually-- Call it a mess or call it beautiful, I don't know, it's more of a mess but everything functions through-- SnipCart is the point of origin, or kicking things off, you purchase a plan and that sends a web hook from SnipCart over to Zapier and says "We've got this new charge."
As long as it was also-- I think it's Stripe, maybe. It's SnipCart or Stripe. I don't remember. But what we do is we catch that in Zapier and then we go find them in MailChimp, and if they're there or if they're not there, whatever.
We create them, we add them to specific groups depending on which plan they picked, so that they're going to get the right MailChimp automation sequence every month. All that kicks off from that one purchase.
Brian: I'm curious, did you start building this whole orchestration of signing people up for workout plans, knowing of the JAMstack and knowing of these different things? Or were you-- You needed to solve one problem, and then you moved on to SnipCart? And to solve another problem, you moved on to X and Y?
J.C.: I will say, I wasn't familiar with the term JAMstack when I started this back in October 2017. What I did know was front end, I'm still to this day, just not as strong in the back end as I'd like to be.
I've been getting more and more interested in using things like, I've been looking at AWS Amplify and stuff like that. Trying to figure out as a front end engineer, "Can I get other stuff done and rely on people that are using some best practices or some sensible standards for me?"
But at the time, no, we didn't launch with memberships. We launched with a one-time purchase plan, and at the time I threw up the static site and I had to figure out, the immediate problem was "Let me figure out a way to allow people to check out without having to have a back end to process Stripe transactions."
I had a company called Chec that I was using at the time. It's Chec.io, I was using them at the time and before that I was using FreshBooks. I was manually sending invoices for every single purchase.
We moved onto Chec, and then we rolled out memberships last summer and that's when I switched over to SnipCart.
Brian: Excellent. And you'd mentioned Amplify. Also you mentioned you're in Jackson, Mississippi too, as well. Our previous guest, Episode 32, which is Nader Dabit. I'm not sure if you're familiar with them.
J.C.: Nader and I are good friends. We both run the meet up here. I don't see a ton of him these days because he's always traveling for Amazon.
Brian: I've definitely ran into him on the road twice last year, randomly, within like a month of each other. He's definitely pretty popular these days with AWS.
J.C.: He's done so much for our community here. He started the meet up five or six years ago, it's the only meet up we have in central Mississippi for developers. Then he passed it on to me last year, just because of the new job and stuff, but--
Brian: For reference, for the listeners who might be in Mississippi, what's the name of the meet up?
J.C.: Jackson Area Web and App Developers. You can look us up online, JacksonDevs.tech.
Brian: Excellent. Going back to your application and the whole setup, I'm curious since you're using all these different services, what's the ballpark of your cost as far as orchestrating this project?
J.C.: I believe it's about $300 bucks a month. We spend $50 for Zapier, which in my opinion is a little overpriced for the amount we're using it, but it also is core to the business, so that's great.
We pay for FreshBooks, and we pay our transaction fees for SnipCart and Stripe. I don't even think we're on a paid MailChimp plan, maybe we are, maybe the $10 dollar one for the automations. I can't remember. But it's very cheap to operate.
Brian: $300 dollars and you've been doing this since 2017, so my assumption is you're at least breaking even, as far as memberships go?
J.C.: The company is profitable. We just hit $3.3K a month right now in recurring revenue. We're all on Indie Hackers, if you've heard of that, you can always look up and see how good of a month we had.
Most of our money honestly to date has been spent in sponsorships. We've heavily sponsored the Syntax.FM podcast. That's 95% of our customers honestly, because that's pretty much the only marketing we've done so far.
But that's where, usually we take the money we make and feed it right back into ads.
Brian: Excellent. That sounds like a pretty sweet project, as far as-- Are you looking to eventually grow this into something very serious? Because I know $3K a month is good, and I would love to have a business on the side that does $1K and it's automated and I don't have to follow up on emails.
Is this something you're looking to grow? What are the next steps for DevLifts, and as far as infrastructure, JAMstack business goes?
J.C.: We've got a few things going on. One of the things I started was I started trying to push open source for us, because we're a community of developers so let's build some stuff together.
One of the things that we do is if you make at least one commit a month on one of our projects, we give you your membership for free. One of the things that we're working on right now is the big blocker, and for everything else, the other plans, is just getting our API up and going.
That's not my strong suit, and there's a few people who've rose up in the community and said "I'll do this and get this going." Once that's done, we've got it planned where we can roll out of React Native app, port our site over to Gatsby, we're in the middle of a redesign on our site where the designers working through some stuff right now.
We're going to port our site over to Gatsby and then I say what we've rolled out so far is the embarrassing version. It's just Google Docs and Sheets and everything, and it works for people, and people are getting fit and they pay for it so it's a valid business.
But we want to do so much more, and that's what's on the radar right now, an API and a new website, and then a React native app so you can track the workouts. Then from there, there's a lot of cool things we could do.
In terms of scaling the business up, Thad and I are both big proponents of staying very lean, and also not having to manage employees and stuff like that. Every decision we make always goes through the filter of, we don't want to always have to be reachable 100% of the time.
If we want to take a week off to go on vacation we want to be able to do that and the business not fall apart.
Also we really don't want to manage people because I've played that game before and I was way more stressed out than I'd like to be when I was managing people, when I'm responsible for their payrolls.
Brian: Can we talk a little bit more about this open source side? I assume that it's not open source yet.
Everything we do is open source, except obviously the plans themselves are not open source. Our website is open source.
We have a few other repos. We've started a CLI project where you could log your workouts and your nutrition and stuff in your terminal.
We have repos for the Gatsby site and everything, but they're all these barely started projects because the API is holding everything up. That's my fault because I've been crazy busy with my day job, and I just have a few hours a week. You can go look us up on GitHub. There's just not much to see.
Brian: OK. Hopefully after this episode there's going to be a slew of interested developers who want to get fit, but also get a free membership to some workouts. I'm intrigued.
J.C.: All you got to do is email me and I'll shoot you back a coupon, and you can get your plan for free.
Brian: So, zipping out to talk more about your product itself. We try not to focus too much on products, but this is pretty relevant for developers who want to get fit and also interested in contributing code.
Is this product for people who have not lifted, or done any workouts prior? How do you gate your customers?
J.C.: Our target customer at first has been the beginner with no experience, and sometimes if you are an experienced lifter-- We may not be right for you right now. Because we're trying to just ease people into things.
That doesn't mean the workouts are easy, but we also have a premium version where if you have very specific performance goals or you're an athlete or something like that, then we can make things very customized to you.
Brian: OK. Cool. I work at a nice sized tech company here in the Bay Area, it's called GitHub, and we have a gym in the office and it gets used pretty regularly.
J.C.: That's awesome.
Brian: There's definitely a range of individuals who attend classes, because we do have people who come in and do classes, but also individuals who are just there to work the treadmill.
So I could see-- Sorry, I'm pitching you your product. But your focus being developers, I could see this thing growing into potentially reaching out to developer companies who potentially might want to have some self directed workouts prepared for employees.
J.C.: That's part of our long term strategy. Not necessarily reaching out to sell to those companies, but more of a-- almost a developer conference role. Where you as a larger company wanting to do good in the industry sponsor DevLifts, because Thad and I are only looking to make a certain amount of money.
We're not looking to make this into a multimillion dollar company. But the idea is "If a company is sponsoring us their employees get it, but then we also give-- For every one that signs up from that company, we give the next one away on the site for free, sponsored by that company."
It's like you're helping other developers in the industry get fit and get their plans for free too.
That's one of our long term, at least possible strategies. We make enough money to do what we love and help the industry and everybody wins.
Brian: That's good. I've got a couple different apps, like the 100 push up app, and all these other 100 things. A couple other individuals who have specific apps that give me workouts. I don't do those workouts, but you can tell by my voice that I'm really fit. That's a joke for the listener.
But anyway, I could definitely see myself being pretty intrigued about understanding working out in general and leveraging my current skill set. So hopefully what I'm getting at, and hopefully individuals who will check out your repo and find out more information on how they can contribute.
You guys are DevLifts on GitHub, is that correct?
Brian: We didn't really touch into your background very much too, your background being front end engineering. But you didn't really talk about your background of why working out, where did that come from?
J.C.: My co-founder, his name is Thad. He's my best friend and in 2015 he had come back from college and was working for me at the time. I was just really out of shape, overweight, not feeling great for only 22 years old.
He's a personal trainer, so he got me into shape and I saw a lot of impact on even my work and stuff from that, so back in 2017 at the beginning of the year I just put it out there "Why don't we do this for other developers?"
We thought about it, talked about a little bit, talked to some developers at the meet up and stuff, and it seemed like something that there was at least a need for. Then that was very much validated when we launched.
Brian: Cool. I have one more question, and then we'll transition the jam picks. Do you have any advice? I know you'd mentioned Indie Hackers, but any advice and places people could look into if they want to build a company on the JAMstack? Maybe get started with some services?
J.C.: I have been looking into, like I said, AWS Amplify. There's a lot of cool stuff going on there. I haven't had a chance to put anything in production with it, but the amount of stuff that you can do from the CLI they have, in terms of getting a database up and going and with users and permissions, and getting GraphQL API.
All that stuff is pretty incredible. Then I would say check out Gatsby if you are interested in React at all.
You wouldn't necessarily have to know React to dig in, the Gatsby docs are awesome and you learn the basics of React as you go through the Gatsby tutorial in their docs.
I highly recommend starting there. Leverage things like Zapier, because that's another thing, as engineers we might tend to reinvent the wheel. If your goal is to learn, go for it. But if your goal is to get a profitable business and really get something out there as quickly as possible and see if it makes money--
Definitely look into things and leveraging things that are already out there. Even though they're not exactly how you would build it.
J.C.: That's my advice, at least.
Brian: Cool. For reference too, for our listeners if you're curious in going back to Episode 14, that's our episode where we had the SnipCart founders come on and talk about pitching JAMstack to customers. Check that out if you're interested.
With that being said I'm going to transition ourselves to picks, these are JAMpicks, things that are keeping us going. Could be food, movie, technology related. J.C. do you want to go first?
J.C.: Yeah. I have two picks. First off, I just got back from a overdue vacation. My wife and I, and Thad, went out to San Diego. I had a powerlifting meet out there and then we made a vacation out of it, stayed for 10 days, and man that place is incredible.
I don't know, maybe someone else has been there or lives there and is like, "It's not that great." But to me coming from Mississippi, it was incredible. The weather is perfect, so many things to do, everyone's really nice. I highly recommend checking out San Diego.
I instantly started looking at available jobs in the area. Like, "I could definitely move out here."
Also there's a new Netflix, I think it's new, Netflix show called You. My wife and I watched that while we were on vacation, and great show. I highly recommend that. I don't want to spoil anything, but it's definitely more of an anti-hero story, a psychopath, but it's great.
I don't want to spoil anything, I feel like if I say anything else I'm going to spoil it. So, those are my picks.
Brian: We'll leave it at that. I'm a big fan of those Netflix series. I'm getting on a flight tonight to go to the Dominican Republic for PI Caribbean, the conference. Unrelated to JAMstack.
But I tend to save all my Netflix shows on my phone and the watch them offline on the plane. That's usually how I catch up, because I hardly watch TV at home.
But let me talk about my picks. One pick that I do want to mention is Gatsby Template. You mentioned Gatsby, but Gatsby Templates, within their docs they have these pre-built templates where you can drop in content.
One, you should look at the docs and make sure you understand how it is working, but you just deploy this thing and in one click deploy buttons for Netlify, I have that thing live and ready to go and just replace the copy and try to figure out Gatsby.
J.C.: It's so sweet.
Brian: I'm working on another podcast which I'll mention in a few weeks, but we threw that up on a Gatsby site. It was super easy. Just found the template I liked, adjusted it to the different CSS and style that I preferred, because the template was pretty generic but I purposely picked a generic template so I could just do my CSS.
But I didn't have to worry about hooking up anything, and because I know React, this worked within the first few moments when I deployed it.
My next pick is going to be sourdough. I pick a lot of food picks, and I've been doing a lot of bread making recently, and just got into sourdough starters. I recently started my seven day process of doing a Saturday starter a couple weeks ago, and made my first sourdough roll.
I went into a whole deep YouTube-- I have a very small child, so I tend to watch a lot of YouTube while I have to watch her grow in my arms, and-- Well, watch her sleep. So I was learning about sourdough, and my second pick is SourDo, which is SourDo.com.
This is a place where you can get packets of sourdough starters from different countries. I didn't realize it was a different process of how to start sourdough. Everybody knows, at least in the states know about sourdough, San Francisco Sourdough.
But I found out that most sourdough that we buy from the store is not sourdough, it's just bread with vinegar put in it to make it sour. The proper Sourdough is not sour if you do it right. I learned that, but I messed up my first loaf. But that's another thing.
I found out the proper process, whenever I go travel put it in the fridge, then reactivate it. I highly recommend if you're into making anything as far as food related, or if you want to take a break.
I know your break is probably working out. My break is making food, that's how I take my long breaks away from looking at code, so definitely check out those two things. Sourdough starters, just search Sourdough on YouTube and you'll learn everything you need to know.
J.C.: I have to ask, is that the podcast that you're coming out with?
Brian: No, it's not a bread making podcast. It's another dev related podcast, unfortunately, but I should start doing some videos or something like that. So I didn't mention, but my sourdough-- I put in way too much salt by accident.
I took a recipe that was too big, so I cut it in half, everything except the salt and it was a big salty mess. But I still ate it because you got to live once, right?
J.C.: I'm going to go start the SourBro podcast.
Brian: SourBro? All right, that's taken. I just registered that domain. With that being said, let me go get that site up and running.
J.C. thanks for chatting about DevLifts, I'm excited about this project, probably going to check it out and sign up pretty shortly. You'll see my e-mail coming through. Listeners, keep spreading the jam.