June 24th, 2022 × #Extensions#API#Growth
Supper Club × Authoring Browser Extensions with Tim Leland
Discussion with Tim Leland who has built several successful browser extensions like a weather extension using Dark Sky and a URL shortener called t.ly. He talks about how he builds and monetizes the extensions.
- Tim built a weather extension in 2015 which kickstarted his interest in browser extensions
- The weather extension uses the Dark Sky API which Tim had to get a paid plan for due to the number of users
- Tim has had people try to hack and take over the account that controls his extensions
- The weather extension grew from a few hundred to 10000 users after getting shared on Lifehacker
- Tim built a URL shortener extension after Google shut down theirs which allowed him to gain users
- Tim purchased the t.ly domain from a domain reseller for around $50k
- The t.ly URL shortener service offers paid plans for advanced features like custom domains
- The t.ly URL shortener service was abused by malicious actors when it first launched
- Tim built a tool called link unshortener to help detect malicious URLs
- Tim's first successful monetization was from Amazon affiliate links on a Raspberry Pi blog post
- Tim stays up to date by listening to podcasts, YouTube, blogs
- Tim recommends a coffee maker called Chibo for cold brew
- Check out t.ly for URL shortening
Transcript
Announcer
I sure hope you're hungry.
Announcer
Oh, I'm starving.
Announcer
Wash those hands, pull up a chair, and secure that feed bag, because it's time to listen to Scott Tolinski and Wes Bos attempt to use human language to converse with and pick the brains of other developers. I thought there was gonna be food, so buckle up and grab that old handle because this ride is going to get wild.
Announcer
This is the Syntax supper club.
Guest 1
Welcome to Syntax. This is a podcast with the tastiest web development treats out there. I've got another supper club for you Today, we got Tim Leland on today to talk about all his side projects, how he builds them, what he's building them on, how he's making money with them, and whatever else pops up. Tim's a pretty cool guy. I've known him for a while. We chitchat online and on Instagram and whatnot, so that we'd have them on. We are sponsored by 2 awesome companies today. First 1 is ZenLayer, a fast growing email platform that lets you easily connect your website or app To send emails via the API and SMTP for maximum deliverability, reliability, and scalability. And we are also sponsored by The Postlight podcast, they your home for weekly conversations with industry veterans, technology design leadership in business.
Guest 1
Specifically gonna shout out that Gina Trapani and Paul Ford are on this podcast. 2 people who I've been I've been following for a long time, in this industry. So we'll talk about all them partway through the episode.
Guest 2
Welcome, Tim. Thanks for coming on. Yeah. Thanks for having me. I'm super excited. I've been listening to Syntax for a real long time.
Guest 2
I almost I think I've been listening since
Guest 1
the original 2017 episode. So That's amazing. Like, sometimes people have told us that they've listened to every single episode or, like, that's a lot. That's That's a lot. Yeah. Many, many hours. And it's funny because, like, you probably feel like you you know us to an extent, don't you? Oh, yeah. Yeah. That's why jumping on here, it it feels like I'm, you know, just talking to people I know. But, obviously,
Guest 2
It's it's a little bit different, I guess, being interviewed.
Guest 1
Yeah. Yeah. Yeah. A little, he's asking us what questions we're going to ask him, and we're like, we we don't know.
Guest 1
We don't know. I'm sure some cool stuff. So, like, we do know what we're going to talk about. We're going to talk about, the fact That you have built a couple extensions. You have sort of like a side business or whatnot.
Guest 1
But why don't you give us a quick rundown of Who you are, what kind of code you write, where you're from, anything else, what kind of food you like?
Guest 2
Yes.
Guest 2
Some software developer. I've Been developing for past 12 years, and, I've done lots of different things. Worked for a couple different companies, And I've also done a lot of side projects.
Guest 2
And some of the ones that we've gonna talk about are extensions, browser extensions. I kinda Got into browser extensions back in 2015, and really, you know, enjoy building extensions and Working on side projects on top of, like, a full time job. Awesome. What what is your full time job? So I'm a software developer, for, a company that builds, it's actually like bible study software. So, it's based out of Washington, and it's Faithlife.
Guest 2
And they, have been around for a really long time and have a lot of neat different apps and
Guest 3
That that type of stuff. So That's cool. Nice. Awesome. No. It's because they so, like, browser extensions are it kinda feel like a whole whole world. What was, like, that catalyst for You're thinking like, you know, let me let me dive into making a browser extension. What what what was that initial
Tim built a weather extension in 2015 which kickstarted his interest in browser extensions
Guest 2
catalyst? Yeah. So I I used a lot of different browser extensions, so I kinda got interested from, you know, what what can they do. And then the one that kinda kicked off Is I wanted to build a quick way to, like, check the weather, and that's so I built it's called weather extension, but Back in 2015.
Guest 2
So that is, you know, an icon in your browser that at any point you can click and see additional information. It updates The, temperature in the background. So I've been working on that now, I guess, for 7 years and just, you know, updating it, adding features.
Guest 2
And, you know, a lot of people have enjoyed it and use it. And, you know, it kinda saves you time from going to, like, other weather sites. And then, you know, obviously, People have the weather apps on their phone, but they don't really have, like, a weather app on their computer necessarily. So Yeah. Yeah. You just click it. So,
Guest 1
is that's totally free. I'm just looking at you have 211,000 users, and you provide this whole thing for free, or is there a paid version as well? Yeah. So There is a paid version,
Guest 2
and it unlocks additional things like weather alerts, and it'll update more often in the background and additional locations and things like that. But for the most part, it's you know, a lot of people just use the free version.
Guest 2
I, you know, did that because, Originally, I it still uses Dark Sky, if you're familiar with the popular Ios app. But Mhmm. Yeah.
Guest 2
That is a
Guest 3
Paid API, so, you know, I added in, paid plans to kinda help cover the cost of that. Yeah. And Apple owns Dark Sky now, don't they? Yep. So yeah. Is that is that the current status? Yeah. Yeah. It looks like you I mean, it looks like from the amount of downloads you have, I mean, you may have reached, like, over a 1000000 people with your browser extensions. Is that kinda blow your mind?
Guest 2
Yes. So I I guess I could Probably look at the stats of total installs over time. But, yes, I I'm pretty sure it's over a1000000 people. You know? It's good and bad. It's real easy to install an extension, but it's also real easy to uninstall. So people will try something out, and then, you know, maybe it doesn't work quite right for them.
The weather extension uses the Dark Sky API which Tim had to get a paid plan for due to the number of users
Guest 2
And then they, you know, go uninstall it. But, yeah, it is neat that a lot of people have used it, and a lot of people really do enjoy it. And, you know, I get messages all the time, so that's That's really neat. That's cool. So do people ever try to buy this thing from you? Because, like, I had
Guest 1
an extension years ago where when the New York Times rolled out the paywall, I remember it was the 1st paywall to ever be rolled out. And all the developers were like, look, it is just a It's just a div over top. Like, we can remove that div. And so I I built a little, Chrome extension that would just hide the div based on the CSS class. And It got a whole bunch of, like, a whole bunch of press because they're, like, hacker figures out how to circumvent the thing. I'm like, I'm just displaying none in a class.
Guest 1
And it was popular for a couple of weeks and and then it kind of died out. But I had, like, a bunch of people just, like, probably into just try to buy a whole bunch of Chrome extensions,
Guest 2
Assuming because they're trying to do nefarious stuff with popular chromosomes. Has that happened to you? Yeah. So that I think that was a more popular thing back in the day. So, I haven't gotten any recently, but I used to get well, a lot of people tried to, you know, hack and take over the account that kinda Controls the extension. So that's a whole another topic. But Oh, wow. So they would you know, make sure you have two factor and all the security stuff turned on.
Tim has had people try to hack and take over the account that controls his extensions
Guest 2
But yeah. So I've had people offer to buy it, and it's always real shady sounding. And then if you, you know, read some stories, people have sold extensions, and then, you know, the person who bought it and starts injecting ads and doing all kinds of malicious stuff. But Google has gotten a lot better at, You know, locking down permissions and, if you know, we don't wanna talk about it, but they're coming out with a new manifest version, and they're also getting a lot stricter to where you can't just Say, give me all permissions and, you know, do all kinds of stuff.
Guest 2
You really have to if you're gonna use a permission, you have to have a reason. You have to Use it appropriately.
Guest 3
Interesting.
Guest 3
So I wonder a little bit about, like, marketing your extensions. It seems like they They a lot of them got some pretty big traction. Did you put a lot of effort into getting those in front of people, or, was it just the usefulness that allowed people to search for them and find them. Yeah. The the weather extension,
The weather extension grew from a few hundred to 10000 users after getting shared on Lifehacker
Guest 2
if I think back, it it, you know, had a few 100 users, and I was actually just, you know, still under the free plan for dark sky, which was kinda crazy to think. And then, I I don't know if I reached out or somebody from Lifehacker, like I heard from website, they shared it, and it was, like, you know, Dark Sky Chrome extension. Oh, wow. I think it went from, like, couple 100 to, like, 10,000 users. And then, You know, just from that type of stuff has grown. So, I mean, some of it's yes for me. Mark, you know, reaching out and sharing it, but then it's also been picked up and shared on Some big sites like that. Nice. Yeah. I would imagine getting a share on something like Lifehacker,
Guest 3
would have been a prime way to to get a A ton of new users. Wow. That's actually funny that we're talking about Lifehacker.
Guest 1
We're not doing an ad transition here, but I'll use that to talk about our sponsor today because Our sponsor today is, a company Juniper Trapani, who founded Lifehacker, also founded the sponsor. So that's that's pretty crazy.
Guest 1
Let's let's talk about, like, the the environment of a chrome extension, because, like, Sky and I have been talking about this a lot lately with the sort of outcome of edge functions and whatnot is that, JavaScript is not always JavaScript. There's lots of environments. Obviously have server side, you have browser side, you have edge functions, you have web workers, you have Cloudflare. But, like, I didn't even think about this, but, like, like, a Chrome extension is kind of its own environment. Right? Like, you're not how does that work? Is the code running
Guest 2
In the browser of the Iframe, or is it running in, like, a separate one, you have to talk back and forth to it? Yeah. So there's multiple different ways, I guess, to Building an extension. So you have, like, the main pop up window that when you click on the icon.
Guest 2
And then you also have, like, an options page, and then, you also have, like, background pages. And in the past, manifest, I guess, v 2, you could just use, like, a background Page that's like an HTML page, but really it's just, you know, running JavaScript. And I'm not really sure how Chrome would say, you know, kick this off, but You could tell it to kinda run indefinitely.
Guest 2
And, but with the new manifest v three that they're moving to, It's gonna be, background web workers. So that background task is a web worker. So That's cool. So it's,
Guest 1
is like, do you hit any ever hit any, like, limitations in terms of, like, oh, you can't do that, especially with web worker, because there's Just not. Like, I I guess you have fetch, but you don't have, like, any of the Dom stuff. Right? Yes. So that's a big
Guest 2
A big thing of so all of the extensions I've done, the background part has just been, like I said, the HTML and it you know, Some of the older ones use jQuery and, that type of stuff. So, in updating it, I'm having to go through and, you know, swap it out to use, like, that's for any network request, and then also, remove any, you know, references to, like, window or document.
Guest 2
So there's been some, you know, Stuff that's been kinda frustrating to have to swap them out. And, but in the end, I think it will be, you know, better and A a better way to write extensions. So if you were to get into writing extensions, definitely start with the the v three
Guest 3
Okay. Manifest. No. I was gonna say, like, what about, like, a server side component? Do you you I take it you have,
Guest 2
just your, like, a box somewhere running any sort of back end code that you need? Yes. It's well, so the weather extension hits, you know, an API. So, yeah, I have a web.
Guest 2
But all of the code, As far as I know, it has to be hosted in the extension. So when you download an extension, you're downloading the JavaScript HTML images.
Guest 2
But when I first created the weather extension, I I think Chrome has changed this since, so you can't really do this. But I actually hosted the JavaScript myself, and then the extension would just pull that down.
Guest 2
And so it got to where I didn't really have to Update the extension to do a change. I just had to build the JavaScript. Yeah. Yeah. But Chrome kinda has, you know, moving away from that. And that's part of, You know, people would build that. Then they don't have to go through a review, and then they start doing malicious things. So Yeah. People were were doing that with,
Guest 1
Like Ios apps. Yeah. Because native apps. Yeah. Yeah. Native apps. They're just what what what's the word for that? Is that called side loading? Is Is there a special name for, like, just loading? I don't think it's called side loading. It's called because side loading, I think, is when you install
Guest 3
from, like, a
Guest 1
USB cable or something. You download the app and install Oh, yeah. Yeah. There's there's a special word for that. Loading JavaScript into a I don't know. There's a word for it. Somebody tweet us out some text, and we'll get it out. But, yeah, that that can make sense. Like, you you think, like, oh, it would be nice not to have to go through the review process, Especially with, like, Apple where they freaking take weeks sometimes to prove something. But as a consumer, I certainly don't want you Injecting, like, some spyware or something into the application or like, I know that there's people that have gotten rich rich Off of just swapping out Amazon links that appear on pages with their own affiliate links.
Guest 3
I mean, this is the best interest that Tell me how. Yep. Pinterest had their own Amazon referral links that were cashing them out. Yeah. That's that's,
Guest 1
that whole that whole world is like, Not necessarily the underbelly, but, like, you often wonder, like, how do these companies make money? And it's that's how they're making money.
Guest 2
Selling you out. Yeah. The Well, I was gonna say the the one that popped up maybe 2 or 3 years ago was the crypto miners in extensions. I don't know if you ever Oh, yeah. Yeah. So it was like the JavaScript miners. So, you know, people were buying extensions and then dropping in that JavaScript file. So it's, like, constantly mining in on your computer. So there's been some shady stuff like that over the years with extensions. So Hey. You gotta you gotta be careful.
Guest 1
So your other extension, Oh, the the big one. What is that? A a urolog shortener? Yes. So
Tim built a URL shortener extension after Google shut down theirs which allowed him to gain users
Guest 2
back you know, so the weather extension was 2015. And then, you know, as I kinda, You know, kept working on that. I I kinda wanna start something else. And I built a tool that would go out and it crawled the Chrome store, and I was able to, like, Index all of them and then see, you know, what what extensions have a lot of users. And then, obviously, there's some that have, like, big companies behind them. And But I came across one that was, you know, made by just some developer. It was a Google URL shortener.
Guest 2
And what it did is it just used the old, you know, Google URL Shortener service API and, is pretty basic, had, you know, a 1000000 users. And around that same time, Google just announced that they were shutting down Their you know, their service. So I was able to that gave me the idea to to build my own That would use multiple URL shortener services. And then, you know, I could kinda grow it And, you know, make it to where it's a little bit more flexible than this one that just used Google.
Guest 2
And, kind of fast forward a little bit, Google shut down theirs, and then all the people that were using it, I guess, kinda came looking for another one. And mine was the the next best choice for using other, You know,
Guest 1
APIs that to shorten URLs. That's awesome. So the domain name is t.ly.
Guest 1
How the heck Did you get that domain name? Yeah. It's a great question. So I
Guest 2
I built the, extension and even an API endpoint, all that before I had the domain because my goal really wasn't to build my own shortener. It was to, You know, have an extension that had a lot of users, and then, you know, I just enjoy the extension. So, and then so what happened is once Google shut theirs down, Some other ones that aren't as reliable, the API or my serve my extension used these other APIs, and those would go down. So I'd, you know, would have a user message me saying, hey. I created short links using your extension, but the site is gone. And I'll be like, sorry. I don't have any control over, you know, whatever service. So, with that, I decided, alright. I need to build my own Shortener service.
Guest 2
And, so I set off to, you know, find a good domain.
Tim purchased the t.ly domain from a domain reseller for around $50k
Guest 2
And the way I was able to get the domain is, I'd worked with a guy.
Guest 2
He runs like a domain reseller, and he I said, hey. What domains do you have that are short? And he, sent me a list, and, you know, we worked out a deal to where I was able to get the domain from them and build the service on top of it. Wow. Nice. That's a, yeah, that's a
Guest 3
Perfect URL, but also a perfect URL for a like, a shortener service specific.
Guest 2
It really fits really well. I like to say it's a it's a bit Shorter than some of the alternatives? Yeah.
Guest 1
Yeah. If you're if you're really hard on for space, people are gonna accumulate if I don't ask. How much did you pay for it? I guess my thing is, what what do you think a domain like that's worth? Good question. Let's let's guess.
Guest 1
K, Scott. You come up with the idea. You come up with yours. I'll come up with mine. For are we talking just the initial? How much did you pay for it? I'm gonna say 10 k. I'd say 15. More more like 50? Oh, okay. Yeah. Yeah. Yeah. Yeah. It's good, though. They they don't make a lot of those.
Guest 3
Wow. And that's like a a a keystone of of the entire
Guest 1
operation. Yeah. Kinda has to be short. Right? And so You you didn't just spend that to, for the sake of it. You this is obviously, like, a business of yours. Right? So people are paying you For for what?
The t.ly URL shortener service offers paid plans for advanced features like custom domains
Guest 2
The service is free, and, you know, you can go create short links and just use it. And you can also use it through the extension. But then if you want some additional things like custom domains and, you know, URLs that expire after a certain amount of clicks Oh, wow. That's cool. Yeah. Additional analytics, password protected links, those type of things. That that requires a paid plan. So, you know, by the time I decided to to purchase that. I kinda had worked out those features and knew that I would be able to, you know, make back, the investment. Yeah. Yeah. Especially with the amount of users you have. So that yeah. That that's really neat. What's a oh, OneLink. I've seen this,
Guest 1
before. Is this where, like, somebody has an Instagram profile and they they want to link to multiple things? Like, oh, the toothbrush that I'm using, is in my profile.
Guest 1
But also, like, here's my course on, on learning JavaScript. Right? Like, you wanna be able to link to both of those things, so you need, like, a a landing page for multiple links. Is that what that one link is? Yeah. That that was a, you know,
Guest 2
add on type feature that I I'm still not sure if I'm gonna continue that building it out. But yeah. So, yeah, you can have 1 link. So you click on there, and then it takes you and it list out.
Guest 3
I'm trying to think of the service that is the real popular one that does it. One. Yeah. Yeah. Bunch of them that do it. Like, bio links, link in bio type of stuff. Linktree. Linktree is the very time I see Linktree. I'm thinking like, man, it doesn't really take much to have an awesome idea. That That is a a great idea. That is so easy that would you you just you could make your whole career on building
Guest 1
Five links. I'm wondering if you change. Like like, my my wife wanted that for herself, and she signed up for Linktree. I was like like, what are you doing? Like We use it for level up. Yeah. You use it. Do it's a HTML. Do you know how to make a anchor link? We we did it. We did it. We well, I I would say my Our marketing director did it West. And,
Guest 3
it's it's just people see it, and they know what it is. Right? They see Linktree. Oh, I know my Linktree is, is, like, the first 5 clicks or whatever. They're not going to be filtered into some, you know, third party site. They don't know what it is or whatever. Yeah.
Guest 1
So you also have SSL domains with a custom domain name.
Guest 1
We've talked about this a couple of times about, like, services that give you SSL certs, But it's something that's not hosted. How how do you do that? Yeah.
Guest 2
That was probably, you know, comp the most complicated thing I had to figure out with this is How to do it? And, luckily, their services are you familiar with, Caddy? Yes. Yep. We had the,
Guest 1
Matt from Caddy on the On the podcast.
Guest 2
Okay. Yeah. So, pretty much that handles a lot of the SSL and custom domains and just figuring out how to,
Guest 1
you know, kind of proxy those requests through. Oh, cool. And it just every and the person puts in their domain name in it, which is you just programmatically loop over those and,
Guest 2
assign a SSL certificate via CADDY? Yeah. So CADDY well, CADDY has on demand SSL and, as a way to just wildcard. So you could You know, anything. But there's a few additional checks you wanna do, to, you know, make sure people aren't doing anything malicious. So
Guest 1
Oh, yeah. I wanna ask you about the maliciousness of it. But let's take a spot a quick break for one of our sponsors.
Guest 1
And It is another podcast. This is the Postlight podcast. So what is Postlight? Postlight is a strategy design and engineering firm. They work with some of the world's biggest organization to build platforms to scale to hundreds of millions of users. Each week, Postlight senior leaders, Rich Zayadi, Paul Ford, Gina Trapani, and Chris Lissacco host candid conversations on tech, business ethics, And culture.
Guest 1
So they they were like, oh, we want to sponsor the show. And I was like, oh, yeah.
Guest 1
So specifically, Paul Ford is, I follow him on Twitter. He's hilarious, but he wrote a really good article a couple years ago called What is Code, for what was what? Bloomberg. He wrote it for Bloomberg. And it was like the the cover of Bloomberg, which is amazing. And they also have an awesome website that's really interactive.
Guest 1
Gina Cioppani. I've been following her since Lifehacker. So she was the founder of Lifehacker, but she's also, like, a really good dev. And I also listen to her on many of, Leah LaPorte's podcast.
Guest 1
And I talked to her on Twitter a couple of times about Headless WordPress, which I think they do quite a bit of over at post site as well. So some pretty interesting figures on this podcast, and you definitely are gonna wanna, check it out for your weekly source for honest conversations on tech and leadership. So go to post lite.com Forward slash podcast and give it a listen. Thank you, Postlight, for sponsoring. Sick. Let's talk about maliciousness.
Guest 1
Right before this podcast, I sent a link To a go a Google form.
Guest 1
And they have forms.gle or something like that for a short URL.
Guest 1
I said to somebody on Twitter and they said, hey, that link got flagged as malicious.
Guest 1
And I was like, oh, yeah. Like, I hate using these URL shorteners because people abuse them, and then they become associated with bad stuff. So does does that happen to you as well? Yeah. So when I built The original API, you know, hooked it up to the domain and and put it out there,
Guest 2
kind of being naive to to the Internet.
The t.ly URL shortener service was abused by malicious actors when it first launched
Guest 2
I think, maybe a weekend, I got, you know, flagged, and I wasn't even aware of it. But people found it, you know, maliciously, and we're using it for different things. And then, my hosting company actually shut my servers down. So that was kinda a wake up call to Yeah. So I had to let them know, you know, this is a URL shortener service, and I'm, you know, actively, monitoring. So then I spent Probably over 6 months just tweaking and improving the, like, auto malicious URL detection system.
Guest 2
So that's That's really been the most complicated part of building the URL shortener is, building a system to, you know, automatically detect Malicious URLs. So And do you have to worry about, like, linking off to illegal content or any of that stuff? I guess if it's been flagged, you know, obviously, I, you I don't want anybody using it for illegal stuff. And if anything's reported illegal, it, you know, immediately gets taken down. So Yeah. Okay. So but how do you how do you know what's malicious and not? Like, that's that's Obviously, somewhat automated. I'm sure you have to get in there and paw through it every now and then. But, like, what does that look like? How do you build that? So there's Lots of, you know, companies that do this for other companies, they they monitor their stuff. And so one of the thing is having, you know, an email where any of the stuff can come in. So these companies pretty much have automatic systems. They will, flag a URL alert, you know, whatever company to take it down.
Guest 2
And, you know, you'd be surprised. A lot of the, you know, My URLs that get flagged are redirecting to other really big companies that are also hosting, you know, malicious content. So, You know, like, Discord is a a big one. So those Oh, yeah. Get flagged a lot, and, I don't know how they handle it. But So I have, you know, automated stuff, but then also as they come in, you know, they're luckily, there's not a ton of them that get by. But when they do, you know, it's kinda like Go check and then see. So I've I've built along with the t. Ly, I also built another tool called link unshorten,
Tim built a tool called link unshortener to help detect malicious URLs
Guest 1
and It's kind of does the opposite, so it expands short links. Oh, I've there was a new website I went to that follows all redirects because sometimes you see a URL And you're like, I want to know, like, is this person, tweeting an affiliate link? Because they put it behind a URL shortener to to To hide the and that's something I'll always do, when I tweet out a link. If it's an affiliate link, I'll say it. But I also I'm not gonna hide it behind that. But so that tool will sort of expand all the redirects and show you the what it will end up on? Yeah. So it'll expand. It gets to the final Destination URL, probably should add in,
Guest 2
you know, a way for it to show each redirects in case there's no yep. That would be a neat feature to add to it. But So, yeah, that has some things, and it'll do some some, you know, checks. So I'll, like you know, I'll even use my own tool, I guess, to to check a URL and, You know, see if it's been flagged on any of these sites. So Google has, you know, safe browsing, stuff like, say, API. And then There's some other ones where you can plug in a URL and see, you know, has it been flagged, is it hosting malicious content, that type of thing. That's cool. And that is Is any of that AI based or is that I guess the APIs probably themselves are using
Guest 1
are using AI. I imagine that at some point They will get very good at detecting or probably already doing it.
Guest 1
Like things that are specific. Like, I get get these Instagram cryptocurrency.
Guest 1
I'm I'm having a hoot with 1 of them right now because they're trying to like they're telling me that I can get 100% of my money Return within one day. And I was like, come on. You know? But like, how how the heck is is Instagram not flagging that? You know? So, well, I don't even know what I asked you. Is there AI?
Guest 2
No. No. No AI.
Guest 2
I don't really even understand what that Term means, I guess.
Guest 2
But, no, it's just you know, it's kinda like almost like a you know, These companies that make antivirus, right, they're always 1 step behind the viruses the people making the viruses. So I guess it's just doing what you can to take them down as as quick as possible. That's kinda my thing. Obviously, I want, you know, the service to be used for legitimate, purposes, and that's my goal. But, unfortunately, the Internet,
Guest 3
proves to wanna do other things a lot of times. So Yeah. So it Seems like you you're a good idea generator type of person. Right? You have all these side projects. Like, where do you come up with this stuff? Like, what does it just are you just Scratching your own itch, or are they just things that you get curious about? Like, where's the inspiration coming from? Yeah. So I I guess I do
Guest 2
Think you know, I I I I do come up with a lot of ideas, and I keep them, you know, track of them in, like, a note. So I'll I'll do that. And if I ever Get some free time, and I'm ready to build something else. I'll just, you know, go looking through my idea list and pull something out. But, a lot of times, it's like things that frustrate me or, you know, I have problems with and, you know, as a developer, I just say, hey. Why don't I just build a tool that kinda, you know, solve that. So, like, the weather extension, I always wanted to check, you know, real quickly to see what the weather was while I'm sitting here. So I've, you know, built it. And then The the link shortener, t.0y kinda originally came about, just because of the previous company I worked for needed a, like, texting application.
Guest 2
And we looked at using, like, Bitly. And I think at that time, to have a custom domain and the amount of URLs we were gonna do, it would be, like, You know, 1,000 of dollars, which I thought was crazy.
Tim's first successful monetization was from Amazon affiliate links on a Raspberry Pi blog post
Guest 1
Yeah.
Guest 2
So I actually built the internal tool that we used there.
Guest 2
And Yeah. It you know, it was a real simple version, but that kinda got me interested in the whole URL shortener stuff. And then That led, you know, later on to the extension and then, you know, building my own service. So it's kinda like stuff I see at work, in life, On the Internet and just random ideas I have.
Guest 1
Chrome extensions are also loadable into Firefox. I don't know when this happened, but at Some point, Firefox sort of gave up on their own extension API and or not maybe. Maybe I gave up. Maybe you can spread some but you can run Chrome extensions as Firefox extensions. Right? Yes. So I and I don't remember the exact Point. But they used to have their own, you know, special
Guest 2
extension stuff. I I think back in the day, I used to use Firefox, and, they were, like, maybe the 1st ones to have extensions. So Yeah. I used to love, you know, using Firefox extensions. But Yeah. So at some point, they kinda adopted the browser extension API that I I'm not sure if Chrome came up with originally or if it was, like, some kind of web spec, but They adopted to use it, so to port an extension from Chrome to Firefox.
Guest 2
For the most part, it's pretty straightforward. You know, there's a few differences here and there. And then same with, like, Opera. So Opera is, I guess, kinda like running, Chrome.
Guest 2
So you can easily port it to Opera and then recently Edge. So it's pretty Easy to build 1 extension to go in all of those browsers. Now Safari is kinda different. That's one I've never, I've kinda had it on my list, moved some of my extensions to Safari, but They just have, like, a whole different review process, and, I just haven't
Guest 3
been motivated enough, I guess, to do it. Yeah. Totally. It's a whole I'm sure that's a whole thing, especially do you think with Apple? Because you have to you have to still download and install them from Apple's own App Store. Do Do you know that even when you if you go to Apple's App Store, there's no way to even, like, filter Safari extensions.
Guest 3
You just go to Safari extensions and look at the giant list. Or when you search, you type in blah blah blah Safari extend. There's no way to even filter. I mean, it's It doesn't see it's kind of half baked is what I'm trying to say. Yeah. Sorry. I just didn't say they do have,
Guest 1
like, Ios extensions now. I think they're probably pretty limited just because of how painful 1 password is on Ios still. Yeah.
Guest 1
But, yeah,
Guest 3
Eventually, I think they're gonna get really good. Sorry. Go ahead. No. I was just gonna say, so we know a little bit of about, like, the conventional ways that,
Guest 2
your services make money. You charge a subscription fee for some extra features. Are there any, like, unconventional ways that you've made money from Browser extensions or things that we haven't touched on? Maybe not necessarily browser extensions, but I I kinda got into You know, if I look back to the 1st money I made online other than, you know obviously, it's a full time job, but I created a a blog. So I have a Personal blog, timlieland.com.
Guest 2
And I got really fortunate that my very first blog post, kinda It, you know, had no traffic, anything like that. And then, I think Hackaday shared it, and then Lifehacker shared it. It was a Raspberry Pi tutorial on how to control, outlets. You could take, you know, basic, r f outlets and Turn them into smart outlets and control them through Raspberry Pi. So that got picked up and shared. So I had Amazon affiliate links on there. And I think, You know, in a in a couple days, it had made, like, $500 from, affiliate links. And, Yeah.
Guest 2
So that was pretty neat. I was like, wow. This is pretty easy. I just keep writing these blog posts. But, unfortunately, if I go back, that was still one of my biggest, you know, blog post because it just got so much traffic, and I haven't really had anything quite that big. So, I've you know, I've I run, like, ads on a lot of my sites. So, like, my personal blog is, like, Google AdSense. So, you know, I know I'm not the biggest,
Guest 3
I I run ad blockers. So if you run ad blocker, I don't I don't mind. But, it is nice, you know, if you write. If you take time, write an article, help somebody out, and you have ads on there, you know, you can make some money doing that. Yeah. Yeah. It does go to show you. I mean, it seems like, You know, with your extension or even with that blog post getting picked up and shared by a blog or some some kind of aggregate that's Collecting or or sharing these types of things can be a big driver of traffic. I know my YouTube channel specifically went pretty much ignored for A good 6 months. And then when, but when Chris Epstein shared it from Compass, he, like, shared some of my Compass videos. It was just like him alone in, like, the SAS folks sharing it alone is, like, what got me a ton of new subscribers, which is eventually Kind of what leads me to this podcast. Right? So it it really goes to show you just putting stuff out will eventually you get picked up somewhere, Get share out, and then
Guest 1
you can get some major major eyes on that thing. You're still consistently blogging too. Like, I'm just going through it. And, like, I See this, I'm like, I should do this. Like, you have a blog post on under cabinet lighting or replacing your Honda Pilot console. I'm like, This is the kind of stuff I post on my Instagram, and then 24 hours later, it's gone. And I was like, I should do this on a blog post. So People always ask us, like, is there still value in blogging? Like, oh, yeah, it worked for you 12 years ago, Wes. But, like, does does blogging still work? What are your thoughts on that? Yeah. I I'd actually say you kinda inspired me to do some of these posts, you know, just like little things you do around the house. So pretty much by, you know,
Guest 2
Do something around the house or, you know, like you said, the under cabinet lining and do these little projects. I'll just make a note. Alright.
Guest 2
Write a blog post. I'm not the best writer and you know? But I feel like if I write a tutorial and it helps somebody out, I think that's really neat. And I'll get people who'll message me. You know, they found this article and it, you know, helped them figure something out. So I kinda enjoy that part of it. But yeah. So it's blogging dead.
Guest 2
I would say no. I mean, there's still tons of people who make a full time job blogging. So I I kinda just jump around. Whenever I get motivated, I'll write A few new posts.
Guest 2
You know, wish I did it more, but as I get ideas, it's kinda like back to I pretty much just Throughout the day, throughout the week, I write down ideas. And then, if it's a blog post or if it's, you know, a new feature For one of my apps extensions, I'll just, you know, put it on the list. And then as I get time, I'll, you know, implement it as I feel motivated.
Guest 2
I kinda go and Sometimes I'll be super motivated, and I'll work, you know, weeks. And then sometimes I'll you know, won't do anything for a couple weeks. So
Guest 1
Kinda up ups and downs. Let's talk about one of our sponsors, Sendlayer.
Guest 1
Sendlayer is a service That will send email for you. When your business customers depend on transactional emails being delivered with send later, email deliverability Forability is one less thing you need to worry about.
Guest 1
You can see stats that matter to you in the Sendlayer dashboard. Important questions like Which subject lines got open? Which emails drive your audience clicks? So if you need to send, password resets or transactional emails or, con confirmation, shipping notifications, you need to hook it up to WordPress.
Guest 1
Send all those emails. Send layer is what you wanna hook up to it. You can either use their API directly or you can use it via SMTP.
Guest 1
So, like, literally any like, you're using Node Mailer, you could hook up this to Node Mailer. No problem. It integrates with thousands of platforms, WordPress, WooCommerce, Magneto, BigCommerce and more. They have SMTP set up. The only you'll need to copy paste your credentials, easily connect your website or app via the API, and you just need to unload the burden of sending emails from your server and use a system like Send layer. Check it out at send layer.comforward/ syntax and get started for free. Thank you, Send layer, for sponsoring.
Guest 3
Okay. So for these supper club episodes, what we've been doing is asking some questions. We're still out on the name of this thing. So If you ever get hit with any inspiration as to what we should call it, just let us know. I think we it says it's dessert. Maybe dessert's fine. So let's talk a little bit about our dessert. We're gonna kinda ask you some quick and easy questions here, and
Guest 2
we can start with what kind of computer do you use? The the computer I use right now is the Apple MacBook Pro M1, the 13 inch.
Guest 1
Oh, nice. Oh, 13 inch. Interesting. Do do you do you do mobile? A lot we always have that conversation. Should you go 13 or 15? What's your what's your idea behind the 13? Yeah. So the 13, you know, Most of the time, it's docked to monitor your keyboard, but I figured if I took it with me, 13 inches easier.
Guest 2
And I don't do a ton of traveling, so it works well. It's usually docked. Sweet.
Guest 1
What about keyboard?
Guest 2
The Microsoft ergonomic one. The, The split one? I think it's called, like, the Sculpt. Yeah. The split one. Oh, that looks cool. I had
Guest 1
I had this version, like the earlier version of this, probably 10 years ago.
Guest 1
And I loved it for a long, long time. And I eventually switched.
Guest 1
Not sure why, but it's a pretty cool one. It's like split, but it's still 1 piece.
Guest 2
Yep. It's split, and it's wireless.
Guest 3
I have I have, one of the users pages if anybody's interested in the other stuff. We'll have to add that on under the show notes here. I always wanted 1 of the, like, the Moonlander, like, actual like, whole lot of separate split ergonomic ones. And Wes and I talk about this. We got sent, like, a really difficult to use one that did not work.
Guest 3
And I was like it's like I have this This great idea where I'm, like, very proficient with these 2 separate keyboard pads, and it's just I can't get there. I have not gotten there yet.
Guest 1
Maybe someday. Microsoft one has a secondary, number pad that's, like, floating. Like, you could just put it wherever you want. And, like, that's me. Because I I can't live without the number pad, and, it would be nice just to have it on my desk to pull it over when I need it. Totes. Alright. What Phone do you use?
Guest 3
IPhone. So whatever. I usually upgrade to the newest one. I think we need to take that one out. Everybody says iPhone. Yeah. Which is kinda wild If you think about it, I mean, as developers, I I mean, I personally use an Android for, like, ever up until, like, only
Guest 1
2 or 3 years ago. So it's funny that no one said Android so far. It's really funny that, like, we've everybody we've had on are, like, Hackers, they love building stuff, and they're all just like MacBook iPhone. You know? Yep. Yeah.
Guest 1
It's a kinda kind of the opposite, but Just just needs to work. What about text editor theme and font?
Guest 2
I've been using Versus code and, I guess theme, usually like a dark theme. I'd have to look and then, you know, I don't remember what font. Not that particular, I guess. Awesome.
Guest 1
The one we have here, I'm actually curious about this because we haven't talked about languages.
Guest 1
But if you had to start coding from scratch, Fatch, what would you learn? If I was brand new and never had developed
Guest 2
and, you know, somebody I probably would say, hey. What what should I use and ask a friend or something? But I I think for a new person today, if they got into just JavaScript because you can write, you know, one language and you can do most things server side and Browser side. So I probably would start there.
Guest 2
And then, you know, as my needs grew, so if I needed to do something More heavy back end, maybe switch to a language that's, you know, better for that type of stuff. Oh, yeah. What so you're, I'm deviating from the questions here, Scott.
Guest 1
Let's look inside here.
Guest 1
You are a PHP dev. Right? You use Laravel? Yeah. So I'll hold so
Guest 2
My my day job, I use c sharp and a lot of, you know, .net stuff. And then I've also done a lot of Go, as far as back end, and then also react. And then, but for all my side projects, for whatever reason, I've just stuck with, using Laravel because they just it just offers so many features to where you don't have to build things. So, like, you know, you could get a site up and running pretty quickly. You don't have to build Authentication and a lot of the database access stuff, and it just it's easy to get going, and then it's worked well for a lot of these projects I've built. Yeah. That's always the worst, honestly. It's always the worst, the the general setup stuff we gotta do for just about everything.
Guest 3
What are what are some of your, resources for staying up to date? Like, where do you where do you check? Because, you know, we all we all know everything moves so fast now.
Guest 2
Definitely Syntax podcast.
Guest 1
Yay. Woo hoo.
Guest 1
Wow.
Guest 2
Yeah.
Guest 2
Yeah. So I listen to this I listen to a lot of podcasts. So, You know, I've I've, you know, family kids. So, like, if I'm exercising, cutting the grass, I'm usually listening to a podcast.
Tim stays up to date by listening to podcasts, YouTube, blogs
Guest 2
You know, lots of YouTube videos.
Guest 2
You know, you feel like you can learn anything on YouTube. So I'm the same way, and then blogs. So I'll read, you know, hacker news and stuff like that. If you had to do something differently in your career, what would it be? Any,
Guest 1
Any thoughts there? People ask me this all the time. I don't know. It worked out for me. But, we'll see if you have anything to say.
Guest 2
I I think the only difference I think back to, like you know, I went to school. I did computer science major. And Okay. When I was in college, I'd I'd wasted a lot of time where I could've you know, I had a lot of free time, so I could've been, you know, building some apps and, you know, doing all this stuff that I did, you know, maybe, You know, 5, 8 years ago, I wish I had started even longer, you know, back in college. So that's if you're in college and you, you know, Think you're busy. Just wait until you get a full time job. And then kids, family, the yeah. So You got plenty of time, so, you know, work on some stuff, you know, start a business, whatever. And Yeah. You know, you'll thank yourself in 10 years. Oh, man. But I do not also regret
Guest 1
going to get a shawarma at 3 a. M. After the bar with my friends either.
Guest 1
So they like to bounce.
Guest 1
Comp size, is that worth it? People always ask us that.
Guest 2
I would say yes and no. I guess it depends. You know? Don't, Like, I wouldn't go into debt, I guess, to get a college degree. And I think, you know, you could go and, You know, do some courses online and learn more real world developer experience. You know, you got West Boss here and Scott. Yeah. I'll be able to go learn from.
Guest 2
You know, there's a lot a lot of people to learn from on the Internet, and,
Guest 1
I think you could go that route and do just fine. Nice. Cool. Great job. Is there anything else we've, before we close this thing out, is there anything else that we didn't touch upon that, you wanna impart on, wisdom on on the syntax listeners?
Guest 2
No. I don't think so. I mean, I Definitely enjoyed being on here. Thanks for having me. And, if anybody has any questions, feel free to reach out. I always like, you know, helping people any way I can. Nice. Awesome. Thanks so much for coming on, Tim.
Guest 1
Yeah. Do you well, before you leave, do you have any, shameless plugs Or sick picks that you'd like to drop on us? Yes.
Guest 2
I've thought about the sick picks, so it's hard to come up with one thing. But, Recently, I I don't know if you're y'all are coffee drinkers, but, Yep.
Tim recommends a coffee maker called Chibo for cold brew
Guest 2
And I might be saying this wrong, but it's I think it's a Chibo, And it's a coffee maker, but it's, like, grinds the beans, and it's real convenient. It's kinda like a Keurig, but It takes fresh ground beans.
Guest 2
The spelling is t c h I b o. So if you're into coffee, check that out. It's, Yeah. Kinda pricey, but it's not as much as, like, espresso machine or something like that. And it you know, I've had it for maybe 6 months Now and it's been really good. And you can use beans rather than some proprietary, like
Guest 1
like pasta cup. Yeah. Yeah. Yep. We Yep. Had had something like this. It was a Jura, Jura Impreza.
Guest 1
And it was awesome because you just you just push the button and it makes you a nice espresso. I I was a big fan of it. We actually we changed it for, drip coffee, but we loved it if we had it for probably 6 years.
Guest 3
I only do cold brew, but it's all it's all good for me.
Guest 1
Yeah. We've been getting into the cold brew, lately with the with the family, and I'm like, we gotta get one of these, like, brewers that Scott has just like you put it in the fridge because I'm flying when I drink in cold brew. I feel Cold brew is more. Yeah.
Guest 1
Yeah. Is is cold have more, like, more,
Guest 3
caffeine in it? Because I feel like I'm Flying when I have cold brew. It depends on how concentrated it is. So the longer you leave the beans in, the more and the more beans you use, the the more caffeine you can infuse into it. Like, what we'll do is we'll fill the filter with beans, and then we'll leave it in the fridge for a week. And then it's usually pretty darn concentrated, at least for me.
Guest 3
And then and then I'll just cruise on it because I can convince myself there's only 60 milligrams of caffeine in a cup even if there's, like, a 120.
Guest 3
So I'll just I'll just sip it all day long and be like, oh, yeah. I got a lot of energy today. And then probably just load it up with caffeine. So
Guest 1
Awesome. Any shameless plugs? Where should we follow you?
Check out t.ly for URL shortening
Guest 2
Drop the links. You know, obviously, if you want a URL shortener service, check out t.ly.