Making a Simple WordPress Plugin with Jeff Matson

Sponsored by:

Jeff Matson is a WordPress man about town, making contributions to several big plugins and projects, and even WordPress itself. In this episode, we talk all about development, knowing when to cut your losses, developer tools, and much more. It was great having Jeff on the show!

Main Project: Heartbeat Control

Heartbeat Control is a free WordPress plugin that allows you to easily manage the frequency of the WordPress heartbeat API with just a few dropdowns.

Show Notes

Check out our Patreon

Joe Casabona: This episode of How I Built It, is brought to you by two great sponsors. The first, is our season-long sponsor. Liquid Web has been best known as a managed hosting company with tons of options. It’s also designed a managed WordPress offering that is perfect for mission-critical sites. If you’re looking for improved performance, maximized uptimes, and incredible support, Liquid web is the partner you’ve been looking for. Every liquid web managed WordPress customer has ithemes synced integrated into their managed portal allowing them to update several sites with a single touch. Liquid web hosts all of my critical websites and I couldn’t be happier with them. If you Sign up today, using the discount code ‘howibuiltit33’, you get 33% off for the next six months. Visit buildpodcast.net/liquid to get started. That’s buildpodcast.net/liquid.

And it’s also brought to you by hover.com. When you have a great idea for your product or business, you need to give it a great domain name. Finding the perfect domain is ridiculously easy with hover. With hover you can easily set up your domain name with the most popular website builders. You can use cover connect to set up your domain automatically in just a few clicks. That’s right, no more digging through help articles to figure out how to get your domain working. And if you already have a bunch of domains scattered across other domain providers like I did, you can save money by bringing them all to hover. Eligible domains will include free who is privacy and volume discounts. So the more domains you have in your account the more of a discount hover will give you automatically. Head over to buildpodcast.net/hover today for 10% off your first purchase. That’s builtpodcast.net/hover.

Hey, everybody. Today’s guest in Season Three episode is Jeff Mattson. He’s a friend and a great developer and we’re going to be talking about his side project ‘Heartbeat Controller’ today. And we talk about a whole lot of different things including developer tools, happy accidents, scratching your own itch but knowing when a project is doomed, and when to kind of pursue it, and a whole lot more. Jeff provides some great insight on how to learn by doing and I really think you’re going to enjoy this episode. I know I did. So without further ado, on with the show.

Hey, everybody. Welcome to another episode of How I Built It, the podcast that asks “How did you build that?” Today, my guest is Jeff Mattson. Jeff, how are you?

Jeff Matson: Doing great. How are you?

Joe Casabona: I’m great. Thanks for being on the show. Jeff is a man of many hats figuratively and literally. And today we are going to be talking about one of your personal projects, right?

Jeff Matson: Yep, yep. We will be talking about Heartbeat Control that I launched several years ago and am now just starting to do some updates and everything with it better moving forward.

Joe Casabona: Nice, very nice. I remember when you launched this, I was keeping an eye on it. I have not gotten to use it yet though. So I’ll be excited to hear kind of what you’ve been working on and what you have planned for the future? But first why don’t you tell the listeners a little bit about who you are and exactly what Heartbeat Control is?

Jeff Matson: Well, I am Jeff Mattson. I currently run the docs over at Rocket Genius AKA Gravity Forms between that and in various development things. I am all over the place so if you’ve interacted with most Gravity Forms things on Twitter or elsewhere or WordCamps you’ve probably met or talked to me at least at one point.

So I created Heartbeat Control to be able to allow some kind of solution when multiple users are all of the WordPress happening and they are on shared hosting absolute blowing up servers. It started out as a small little tiny project that I was all right, well you know, just something we can send to a couple people here and there. And now we’re 50,000 active installs later trying to kind of see where I [inaudible 04:13.3] with this little map.

Joe Casabona: Nice, that’s awesome. So like most people I talk to on the show it sounds like you were scratching an itch that you had that is useful to other people, is that right?

Jeff Matson: That’s right, yeah. So it was a what I thought was a completely unique problem towards hosting the writers. What I realized is that after a while after all the different hosts started realizing that this plugin existed and that would solve their problem, I started getting recommendations from everybody from HostGator, A2Hosting, GoDaddy all kinds of other host solar cycles ground is another one. All kinds of hosts all over the place that are said to install this plugin for the most basic users that really aren’t utilizing the WordPress Heartbeat for anything so they might as well just disable it most places.

Joe Casabona: Nice, gotcha. So that’s pretty cool. So it’s a relatively simple plug-in, right? I mean, I guess I have almost the source code, right?

Jeff Matson: [inaudible 5:17.0] current codebase is terrible. It’s functional but it’s just ugly. It’s ugly ‘because I mean, it, you know, three years ago or two, three years ago or something like that, the last update was two years ago. It tested up to his only set to that’s currently 4.39 so he definitely hasn’t been touched in a while. But I’ve been getting all kinds of requests for a while for things like multisite support and conditional launch and different things like that. So what I decided to do is that I have this plugin student here. I’m not doing, I went, I hadn’t been doing anything with it for awhile and I already have a wide user base and massive recommendations. And I already have without even monetizing it or really doing anything with the priority control, the first three pages of, or more probably of the Google search, Google search keyword for WordPress heart. So at that point I might as well just try to do something with it. if I can make a little bit of money off a premium version or something, cool, if not, it’s at least giving. It’s at least adding a couple features to those people that really rely on it.

Joe Casabona: Yeah, absolutely. So I definitely want to talk to you more about that but you know like I said at the beginning of the show, you’re a man of many hats. So you work for Gravity Forms, you also did, do you also have another service like a SAAS product or another WordPress plugin that I’m not seeing on the list here?

Jeff Matson: So I had a plugin at one point called ‘Notify Block’ not long ago. And what that did is that it handled notifications from everything inside your WordPress admin whether it be post updates or form submissions to Gravity Forms or really anything else your settings changes in the WordPress admin. And then you could receive notifications with Slack and email the text message different things like that. What happened with that is it just didn’t sell. It really didn’t do anything and so what I did is I just decided you know what, I’m gonna show that for a little while. I’m going to focus on some of my other projects. I will be coming back to it and I’m actually really excited about the different things that I can do with this framework. The framework that I built for it is going to basically allow me to do all sorts of amazing things in the future with any kind of [inaudible 7:29.3] so it’s not a total loss but it is right down, it’s kind of off into the enter until I have plenty of time for…

Joe Casabona: Gotcha, yeah. And I know exactly how you feel, so I built like I was building a podcasting plugin and I just realized like I can’t compete with PowerPress. So I built an app like essentially an add-on plugin for PowerPress and I’m using it personally but like, you know, I haven’t released it commercially or really just I wanna get more feedback on it. But you know, I know exactly how you feel. I mean we’re both coders, we get an idea, and we kind of go often start writing it, right? So it sounds like with Heartbeat Control was there a lot of research involved in that? Like what did you do up until from the time you realized you had this problem up until this solution you came to, I guess?

Jeff Matson: So the problem was something that I saw regularly anyway is being at work post we saw quite frequently because what you have is you have 50 users all logged into a WordPress admin on shared hosting that are sitting requests for 15 seconds and those are essentially wasted requests because a lot of them are just sitting on a post edit page or just sitting somewhere not actually doing anything. So what the best solution was is just to make some kind of plugin just to solve that little problem. And it all kind of happened on a bored Friday and I just, a lot of times I put Fridays aside when I was over it in motion to kind of sit back and you know, code something new, play with it, play with different things, maybe submit a patch somewhere with little add-on. Or you know, whatever it is just kind of like a fun day to experiment, play with things and wrote it, release it that weekend and I was like “OK, it’s there” and then I go back and look at it and then there’s you know, the the download counts just keep going up and up and up. And then you know, the .org repo offered the active installs I was looking at when first downloading it, throwing out Dev sites and making it go right away and I’m like there’s actually a lot of installs here.

And of course the active installs aren’t 100% accurate. It’s got a little bit of an idea of how your plugin was growing. And so with that, it turned from a little tiny sort of quick little solution that I just made on a whim to something that people are actually starting to rely on it looks like. And it’s a vault as well to also be a development tool. So when you’re doing JavaScript you are bugging and I’m sure you have seen this plenty of times, the hard people get in your way, you’re trying that you’re trying to run you know, you’re trying to just do some debugging and then all of a sudden you get another request and completely destroys your debugger. What this will do is this will stop that as well. So what happened was I started realizing “Oh wow! people are actually getting other problems that are being solved here by just running Heartbeat control in their local development environments.” It was brought up to me by Chris Wegmann when he was over at 10 up and he was like “Yeah, we’re rolling this out in all our development environments now” on his team at least as a recommended plug-in because it helps so much with debugging. And then there’s I think it was Ronald Eureka reached out to me. He was having another issue with I think it was Gravity Forms that edit locking and Heartbeat Control can fix that too. So it seems like it’s actually solving a lot of little bugs that people have here and there. Now of course that Gravity Forms issues are now solved but if it wherever pop up again or if somebody else were having that similar issue, Heartbeat Control consult that too. So it’s really bad, it’s something that I just kind of fell upon.

Joe Casabona: Yeah, Matt, that’s wild, right? ’cause you know you made this plugin out of necessity, it’s very popular. You didn’t notify but which is a hard sell at least or harder than you thought it would be and again like I know exactly how you feel. And I found that helping something that helps is like being part of a mastermind or something like that. Do you, are there people that you talk to for like business or development advice or both?

Jeff Matson: Yeah, so there’s I think the people I talked to the most are all the people of Rocket Genius whether it be Dave or you know, who also handles gravity was on the sides. Also Gravity Forms developer or you know, whether the one of the founders of Gravity Forms themselves really. We pass a lot of information on as we all kind of have our little side gigs and little things that we’re playing with stuff like that. Sometimes it’s good and somebody gives you, you know, a great day or somebody will also say “No, your idea is horrible, it will never sell.” And so with Heartbeat Control we actually thought or not Heartbeat Control I’m sorry Notify Block, you know, well I was close going through development and everything of it. A lot of people thought it was gonna sell, a lot of people were like, “Yeah, that sounds like a great idea”, you’re starting to get, I started to get good subscriptions, email subscriptions and a lot of a lot of interest. and then it seemed to like when it came down to it everybody thought it was a really cool idea but nobody really had a use for it to make them hit the purchase button. And so that’s what I’m trying to, trying to learn a little bit better about is how I could make those people hit that purchase button. How can I already use the assets that I already have to take those things and really push it into the market. And so we’re going to try it out with Heartbeat Control. We’ll see and hopefully it goes well.

Joe Casabona: Nice, I really like that. So you’re taking something you built that is very popular and kind of using that as a test and I take that. So you are a pretty heavy developer and so I’m curious you know, I’m curious to know, so with Heartbeat Control you can talk about how you built it. But in general I would just love to hear about like your development set up like what tools do you use before we started recording. We talked about how you were building some crazy thing with nodes and you have all these things running. So I’d love to hear how you built Heartbeat Control and then maybe a little bit about your development environment.

Jeff Matson: So my development environment at that time was mostly just PHP storm, Xdebug, that sort of thing, just typical typical things. I think at that time I was using PVP as well for my environments. Now I’ve switched things up a little bit. Now I’m actually, since about, I don’t know, a month or two ago, I switched over to Visual Studio code and I’m absolutely loving it. I found that the PHP storm was just a bit too heavy for me. I wasn’t using, I wasn’t utilizing 90% of the features in my daily life. I was using the debugger and then I was using any kind of code, certain things like that which I can get that same thing inside inside Visual Studio code. So because of that I have a lightweight platform that I can just add plugins to as I need or customize and it’s especially useful because I can write on my config and Jason so with that I don’t have to go through menus and stuff like that I’d rather just go through something called adjusted value. So I’m using that, I’m also using Local by Flywheel which [inaudible 15:11.3] takes horrible opinions several times.

Joe Casabona: Love the product, hate the [inaudible 15:17.5]

Jeff Matson: Exactly. I think that’s everybody else, I think that’s everybody else’s opinion. I think they think they pushed a little too hard to try to get the branding out and then get caused a little bit of confusion because, “Hey, you know, what are you using?” “I’m using local…”

Joe Casabona: Yeah. Like that was what I’m asking. “What are you saying?”

Jeff Matson: Exactly but I really enjoy that it uses Docker. That’s something I generally prefer just because you’re running a lot of things on bare metal and you’re separating, you separate concerns but you’re not completely separated environments.

Joe Casabona: Yeah, absolutely.

Jeff Matson: So I like that. I also use Docker here in the north and some kind of weird custom config setup. The project that I’m working on now is the documentation parser. I’m actually going to be as soon as that’s complete, I will be releasing it publicly as an open source project but that’s just learning codes locally on my machine, a little bit of express. And there’s a PHP reflection class I’m trying to use to kind of generate my docs. There’s nothing crazy going on here, it’s all fairly basic.

I would say the only thing that I really do that’s a little different than others is I use Dropbox for most of my development apartments. So I just store my environments themselves in Dropbox so that I could be on any machine immediately, pull something up or if I need to immediately share that environment with somebody else it’s right there. It’s something I have to…you don’t have to export, zip out uploaded Dropbox. It kind of kills bandwidth a little bit so I have to be careful when I’m on whatever mobile you know, I’m running out of battery power most of the time [inaudible 17:03.6] anyway so it’s not that big of a deal. And my ISP may hate me a little bit but they haven’t sent any warnings about my usage.

Joe Casabona: Nice, man. Now whatever that’s, that’s quite a setup and it sounds crazy and awesome. What’s your favorite JavaScript framework? It’ll be way out of date by the time this episode comes out.

Jeff Matson: Right, exactly, it’s Vue though. So it’s the newest one. So Vue.js is the other thing that I’ve really started to enjoy. I’m actually horrible at Javascript, I’m terrible with it but I’ve been trying really really really hard to get better at it. And I think Vue kind of was that reach for me between PHP and JavaScript where it just kind of clicked a little bit better. I was using [inaudible 17:50.1] for a while. I’m trying [inaudible 17.51.5] with react and I just wasn’t, it just didn’t seem right just the way it ran and the amount of requirements I needed to set it up was just a bit daunting ’cause I wasn’t familiar with webpacker at the time. So I jumped into Vue, started looking at it. I actually looked, I actually found it by looking for a framework to use with notified wall and I was digging around trying to find trying to find something that would work for me that was just really easy for me to use and I can just kind of drop it in don’t have to deal with changing a bunch of bunch of things up by developing environment. Everything didn’t have to be written back but I didn’t have to package up scripts or anything. When I found out that you could use Vue.js with just embedding it, embedded into your HTML just hearing the script so I started messing with that. And then I started getting deeper into it and did some, watched some videos at Udemy, I’d do that a lot of times. I’m just sitting around on the couch or whatever the wife wants to hang out so I just put on like Udemy thing in the background or we can chat. I can watch what they’re doing and kind of get two things done at once. And so I did that and then I kind of learned a little bit more about Vue single file components and web pact and different things like that. And so now, it actually broke me into really understanding the build process in more advanced JavaScript apps. So Vue is awesome.

Joe Casabona: Nice. I’m going to have to add that to my list of things to check out. I wanna learn react so badly and I just like every time I sit down I’m like or I could do something else. Yeah, it’s like installing these 14 things “OK, yeah, great, awesome.”

So we are crossing the 20 minute mark and there are generally three questions I ask right? But we kind of mentioned at the top of the show that you built Heartbeat Control a couple years ago and haven’t touched it since. So I’m confident there aren’t too many transformations. But you do have plans for the future. Why don’t we talk about those?

Jeff Matson: So hopefully these things will be out by the time this airs I hope so. So you know, even kinda try to hold me to it here when this comes out. But my plans are for the most part is to do, one thing is multi sensible. That’s the number one requested thing I get not only managing on a global scale but an individual site scale as well whereas your network can manage, can basically override individual sites and or individual sites to change their heart frequency that way. I want to do that, I want to do conditional logic. That’s something I’m kind of setting up right now a little bit. Laying the groundwork for it will just and so that if you only want for example you know this user when they’re logged in they keep keep just leaving their their window, their editor window opening spying on request, if you want to say “OK well I want the I want that particular user to not fire off the WordPress Heartbeat” or I want that particular user fire up the WordPress Heartbeat every 60 seconds instead of 15 seconds on the WordPress post editor, you know that can be handled without getting in everybody else as well. so that had that of course that’s built in multi site stuff as well because it’s all kind of handling it the same sort of framework. so that’s one of the things I want to work with.

The other thing is I want to work closer with other developers that are actually utilizing the WordPress Heartbeat in a good way. So I know that there’s some things in Gravity Forms that we use the WordPress Heartbeat to check things like partial entrance. And so because our savings continue for example so if you do that then if you have my plugin enabled, I can potentially cause issues with Gravity Forms. So what I want to do is I want to have a better solution in place to where if you are legitimate you have a legitimate reason for using. It really truly requires the WordPress Heartbeat that you can basically override Heartbeat control. The only downside is that I don’t want everybody to [inaudible 21:56.9] so I’m trying to figure out a good solution for that, I will see. I think it may just come down to relationships with other developers that are utilizing the Heartbeat. So if anybody watching this is utilizing the Heartbeat let me know and we can kind of work something out, figure out exactly where we wanna go with it.

Joe Casabona: Nice, that’s awesome. So these additions, right? So currently the plugins are free on the WordPress repository. Are there plans for like a freemium model or is that what these updates are going to kind of entail?

Jeff Matson: Yeah, so I do wanna go to a freemium model with it. The biggest thing is I don’t want to take any existing users and I don’t want these existing users to lose any functionality. I wanted to operate exactly how it has been but with a better framework and more support and where maintenance on the free version. But the premium version essentially exists for your more, your larger people that really truly need the more advanced features like both sides. So if you’re running a big, if you’re running a multi site network, you’re probably making money for sure. So I probably can spend a little bit of money to solve it.

Joe Casabona: Yeah, and the same thing could be said about like hosting companies, right? You said to all these hosting companies that’s really where the big money in WordPress is. So exactly and I think if I could work something out with various other hosts and I don’t have anything worked out at the moment so if any hosts watch this and want to chat let me know. But I don’t have anything to work on at the moment. What I would like to do is have just easy upgrade procedure for hosts to go in there and modify the Heartbeat like so possibly some sort of licensing agreement to where there’s a, I don’t know some kind of premium WP CLI integration where the hosting go “OK, well I need to click edit this Heartbeat on this side” and then edit it. Then the client doesn’t ever have to do it, sort of the reason my plug in is as big as it is because people don’t know how to [23:53.5] stuff.

Now if you told me, you know, many years ago before I even wrote this and you need to change the WordPress Heartbeat, “What are you talking about? Stop off to look up the hood, find out what the hell it does and go from there. People just don’t want to have to deal with it. They can just install a plugin that solves their problem but I don’t, I want to be able to provide a good solution for people who just have a small blog or anything their host may be getting on their case a little bit but to provide a little bit of a more premium solution for those who are truly relying on it quite a bit or the host that really need to make changes to other sites across their network.

Gotcha, well good luck with all of that. That sounds like a good plan and it sounds like you got a good base audience to market to initially. So I’ll be curious if you come, you know, maybe if you come back on the show in a year, so let me know how it goes.

Jeff Matson: Will do it.

Joe Casabona: The last question I want to ask before we get to the bonus questions is, do you have any trade secrets for us?

Jeff Matson: Trade secrets I would say the biggest thing is just to document the hell out of your codes ’cause I go through things like you know I’ll shelf something for awhile, you know, little personal projects and stuff and I’ll show it for 3-4 months then I’ll come back to it [25:06.10] no idea what, you know, why I wrote this the way it is or what’s going on here. And then I’ll change something or break something else and all that other things you know, I’m the guy who does the documentation for Gravity Forms. You think my code be better documented with my own personal code is horribly documented. So what I would definitely say is document your code well because it saves so much time.

Joe Casabona: Awesome, love that. I gotta be better at that. I have a Linter installed in Adam which is my editor that yells at me if I don’t have proper doc blocks so that’s helping me out a bit.

Jeff Matson: Yeah, I did the same thing actually [inaudible 25:48.5] code as well. There’s the same thing unfortunately a lot of times I ignore.

Joe Casabona: Yeah, right. Yeah, there’s… exactly but that’s great advice, definitely document your code. If for nobody else than for future you who’s gonna be like you said, super confused, right? Cool.

Well, thank you for joining me. The bonus questions part, still experimenting on so I don’t know if this is W actually going to launch during the normal episode or as like an add on later ’cause like I wanna try to get like Patreon going for this to see what I can do but this is the bonus round with Jeff Mattson. I was gonna call it The Fast Five but there are six questions and one is not necessarily a fast question. So the first five I want you to answer, first thing that comes to your mind basically. The last question you can kind of think about a little bit. sound good?

vJeff Matson: All right!

Joe Casabona: All right! What’s your favorite book at the moment?

Jeff Matson: Favorite book is probably ‘Ready Player One’. I’m not reading a book at the moment but actually you know what, I am reading another book at the moment. I didn’t even think about that. I have been reading a little bit here and there of ‘Code Complete’ which is a very very good book if you want to learn more about best development practices that are completely platform agnostic, that is the way to go but entertainment wise, ‘Ready Player One’ is probably my favorite book to go.

Joe Casabona: That is an excellent book. Somebody just recommended the circle based on the fact that I like ‘Ready Player One.’ So if you’re looking for new fiction, I started reading the circle. There’s a movie coming out it’ll have already been out and out of theaters probably by the time this episode airs. But I’m enjoying it so far. What is music that inspires you?

Jeff Matson: I listen to so much different music. [inaudible 27:27.4] If you followed me on Twitter you probably [inaudible 27:29.3] sitting out kinds of stuff with different music that I’m listening to but I think that inspires me. Well lately I’ve been listening to a whole lot of Electro swing so it’s like a different model stuff drama. It’s crazy so it mixes my perfect leg little you know 20’s, 30’s swing music type stuff or if it is for sale. I guess with a more modern take on different things like ‘Oh my God!” It’s changing my life. So that’s what I’ve been listening to a whole lot of lately.

Joe Casabona: That’s excellent. I actually have a playlist of that. My friend introduced me in like there’s a song called ‘I think ‘Gold Digger’ that I just like love. It’s great. I’ll send you a Spotify link. What is your favorite food?

Jeff Matson: Tacos.

Joe Casabona: Tacos, nice.

Jeff Matson: That’s what’s food without tacos?

Joe Casabona: Yeah, exactly. Katie Richards I don’t know if you know Katie Richards.

Jeff Matson: I do.

Joe Casabona: Nice. She’s excellent. She has a theory that she never wanted tacos until somebody else mentioned them. So now I definitely want tacos. I’m gonna go get tacos after this recording.

Jeff Matson: I will.

Joe Casabona: Who is your favorite sports team?

Jeff Matson: The New England Patriots.

Joe Casabona: The New England. Ugh! we gotta shut it down every [crosstalk 28:46.4]

Jeff Matson: That’s right.

Joe Casabona: I’m a Yankee fan so…

Jeff Matson: Oh yeah that’s right. [crosstalk 28:56.6] I saw your, you know, your whole posts on Facebook with your new child there were in the Yankee stuff. You know I like this ’cause you know it’s you know first baseball stuff but [crosstalk 29:15.9]

Joe Casabona: Yeah, so my wife and I have a spirited debate about that ’cause she’s a Phillies fan so we’re gonna let the girl decide and the way things are going she’s gonna be a Yankee fan ’cause we watch way more Yankee games than Phillies games.

Jeff Matson: What do you do if she’s a Sox’s fan?

Joe Casabona: Oh man, that’ll that’s like I don’t even know, that you know you always worry about the thing that your kids gonna tell you that will just break your heart and I’m pretty sure that would be it for me. Everything else would be fine but “Dad, I love the Red Sox.” Oh, God!

Jeff Matson: I’m from New England. I got to spoke my team.

Joe Casabona: Gotta [Inaudible 29:54.1] up your team, absolutely. I mean this, don’t tell anybody I said this but the Sox are a good team. So…

Jeff Matson: Well it’s on the recording now.

Joe Casabona: Oh-oh! What’s one thing that you wish you knew when you first started developing?

Jeff Matson: That I just need to get shit done and not worry about what other people think about codes so much. Just get it done, just get it written and it will all kind of come together. And I’ve, that’s actually something that I’ve recently kind of trained myself in a little, to learn to do. I said I’ll just take it like I just take code, just chalk it places and you know, my variable name sucks and all this other stuff sucks but I’ll just go back through it later. The big thing is just to get something barely functional running and then go back through factor to all the other stuff. I spent so much time figuring out the structure that I’m just wasting time ’cause I’ll end up changing that structure later when I go to implement something else. So definitely just get it done, don’t take the time to worry too much about how code looks like or structure looks like and everything. You can always fix it.

Joe Casabona: Nice, I take that. And then here’s the last question and this you could put a little bit more thought into this if you want. How did you learn how to program?

Jeff Matson: Well that is actually a bit of a story. Was actually told that a little bit on the HeroPress in an article I did for them. I think it all kind of started when I was 12-13 years old late middle school, early high school and my mom actually took the college elective course. She’s working on one of her accounting degrees on HTML and so there was a page to page HTML course that I took in this preseason that is real CSS. And so I kind of looked over it and I read it from cover to cover and started trying to do things, started toying with things a little bit and made some really really ugly websites and went from there. I kind of put things aside for a little while.And then I was doing server related things for so long and then kind of jumped back over to the affiliate marketing side of things and then jumped back when I started working on hosting providers so I was doing hosting stuff. And then I ended up jumping back probably four years ago heavy into development and kind of went from there. So that’s really kind of the whole path to it. It’s all entirely self taught by myself, no schooling. I’m personally, I’m a high school dropout so I think development’s one of those things that you can do. It doesn’t matter what your education is as long as you can produce quality code, it doesn’t really matter.

Joe Casabona: Yeah, absolutely. And I mean that’s, I guess I’m the exact opposite of that. I have my masters degree in software engineering but I self taught HTML CSS and PHP, you know, I learned Java in college, yeah, so right there. And but you know the biggest takeaway for me was grad school ’cause that was kind of how to architect programming or software. But you know, as long as you and especially today there are so many resources out there you know, to learn and teach yourself and going back to the thing that you wish you knew when you first started is just do it. Just try something you know, this isn’t heart surgery so you kill if you mess something up, you can undo it. So…

Jeff Matson: That’s true unless you sleep the entire clients database.

Joe Casabona: Yeah.

Jeff Matson: Yes, so don’t do that.

Joe Casabona: Yeah, I should say like when you’re working on your computer locally you likely won’t destroy anything.

Jeff Matson: That’s true.

Joe Casabona: So don’t do anything on a production server, kids. A PSA from Jeff and Joe.

Jeff Matson: All right so that’s the thing like I come across all kinds of people and I don’t know how much time we have left in this podcast but…

Joe Casabona: This is the bonus round so that’s poetic.

Jeff Matson: Well, cool. So I’ve had a lot of people ask me, especially a lot of people from back in high school and things like that who have asked “Hey, how are you? How are you doing?” As well as you know, “how are you? How did you get into development and stuff?” I said, “I just learned it.” I don’t get it right there like should I go to school? Should I do this? like I mean you can, you know, and if that’s how you learn the best then awesome. Like personally my wife can’t learn anything on her own. She has to be taught it. But the easiest thing to do is just go out there, look at different things. You don’t get up, mess around with stuff up there, let people criticize you and just kind of make stuff. Just make whatever you feel like making.

Joe Casabona: Yeah, absolutely, I love that. I told my students now, go bang around on code pen. like I didn’t have a code pen when I was learning this but just like take a pen and fork it and change it and see what happens. Refresh you know, if you need to fix it again. So that’s awesome. Well Jeff, thank you so much for joining me today.

Thanks again to Jeff for joining us. Had a great conversation.

Thanks to Liquid web and hover.com for sponsoring the show, definitely check them out and say thank you. If you haven’t already, make sure to check out the Patreon for this show over at patreon.com/howibuiltit.

And if you like the show definitely make sure to give us a rating in Apple podcasts. Ratings help people discover us which means more listeners which means better support which means better content for everybody. And I want to thank Eric Dyson for leaving a five star review. He says “I love hearing the real stories of people building products. So much insight, actionable advice, and lessons learned in this show. Highly recommended.” So thank you Eric for that fantastic review. If you want your review read on the air, please leave one so I can read it.

And until next time, get out there and build something.

2 Comments

Leave a Reply

Your email address will not be published. Required fields are marked *