about 4 years ago Syntax Podcast
Supper Club × Authoring Browser Extensions with Tim Leland
- 03:54 Tim built a weather extension in 2015 which kickstarted his interest in browser extensions
- 06:02 The weather extension uses the Dark Sky API which Tim had to get a paid plan for due to the number of users
- 07:24 Tim has had people try to hack and take over the account that controls his extensions
- 08:19 The weather extension grew from a few hundred to 10000 users after getting shared on Lifehacker
- 14:38 Tim built a URL shortener extension after Google shut down theirs which allowed him to gain users
- 16:49 Tim purchased the t.ly domain from a domain reseller for around $50k
- 18:14 The t.ly URL shortener service offers paid plans for advanced features like custom domains
- 23:48 The t.ly URL shortener service was abused by malicious actors when it first launched
- 26:01 Tim built a tool called link unshortener to help detect malicious URLs
- 29:30 Tim's first successful monetization was from Amazon affiliate links on a Raspberry Pi blog post
- 43:00 Tim stays up to date by listening to podcasts, YouTube, blogs
- 45:22 Tim recommends a coffee maker called Chibo for cold brew
- 47:27 Check out t.ly for URL shortening
The t.ly URL shortener service was abused by malicious actors when it first launched
Guest 2
monitoring. So then
Guest 2
So that's That's really been the most complicated part of building the URL shortener is,
Guest 2
I think, 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 And I've also done a lot of side projects.
Guest 2
to the Internet.
Guest 2
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, It, you know, had no traffic,
Guest 2
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
Guest 2
Yeah. So I had to let them know, you know, this is a URL shortener service, and I'm, you know, actively,
Guest 2
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,
Guest 2
I've built along with
Guest 2
Probably over 6 months just tweaking and improving the, like, auto if it's a blog post or if it's, you know, a new feature you can easily port it to Opera and then recently Edge. So it's pretty 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,
Guest 2
you know, malicious content. So, You know, like, Discord is a a big one. So those Oh, yeah. Get flagged a lot, and,
Guest 2
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
Guest 2
I got, I haven't gotten any recently, but I used to get 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,
Guest 2
maybe a weekend,
Guest 2
flag a URL alert, you know, whatever company to take it down.
Tim has had people try to hack and take over the account that controls his extensions
Guest 3
was it just the usefulness that allowed people to search for them and find them. Yeah. The the weather extension,
Guest 3
So
Guest 3
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,
Guest 2
Use it appropriately.
Guest 2
You really have to if you're gonna use a permission, you have to have a reason. You have to
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, Yes.
Guest 2
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, and even an API endpoint, 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 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
Guest 2
You know, locking down permissions and, 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 3
your extensions. It seems like they
Guest 3
I wonder a little bit about, like, marketing
Guest 3
Interesting.
Tim stays up to date by listening to podcasts, YouTube, blogs
Guest 2
You know, lots of YouTube videos.
Guest 2
you get a full time job. And then kids, family,
Guest 2
real world developer experience. You know, you got 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 1
shameless plugs
Guest 2
I've thought about the sick picks, so it's hard to come up with one thing. But,
Guest 2
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,
Guest 2
You know, there's a lot a lot of people to learn from on the Internet, and, Write a blog post. I'm not the best writer and you know? you know, made by just some developer. It was a Google URL shortener.
Guest 2
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 ergonomic one. The, that is, 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 That is a
Guest 2
I would say
Guest 1
wanna impart on,
Guest 1
Or sick picks that you'd like to drop on us? Yes.
Guest 1
wisdom on on the syntax listeners?
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 2
You know, do some courses online and learn more 100 users, and I kinda go and weather alerts, and it'll update more often in the background
Guest 2
Think you're busy. Just wait until 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,
Guest 2
No. I don't think so. I mean, I it, you know, had a few
Guest 1
So they like to bounce.
Guest 1
Comp size, is that worth it? People always ask us that.
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.
The t.ly URL shortener service offers paid plans for advanced features like custom domains
Guest 2
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, and it's Faithlife.
Guest 1
but she's also, like, a really good dev. And I also listen to her on many of, easily connect your website or app via the API,
Guest 1
And they have forms.gle 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 of it. But let's take a spot a quick break for one of our sponsors.
Guest 1
before. Is this where, like, somebody has an Instagram profile 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 1
Oh, yeah. I wanna ask you about the maliciousness
Guest 1
Matt from Caddy on the On the podcast.
Guest 1
Right before this podcast, I sent a link
Guest 2
and,
Guest 1
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 1
And I was like, oh, yeah. Like,
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, Return 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, 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,
Guest 1
To a go a Google form.
Guest 1
So you also have SSL domains with a custom domain name.
Guest 1
article a couple years ago called What is Code,
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 2
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 1
is in my profile.
Guest 1
And It is another Yeah. Do you well, before you leave, do you have any,
Guest 1
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
Guest 1
website that's really interactive.
Guest 1
I hate using these
Guest 1
podcast. This is the Postlight They will get very good at detecting
Guest 1
But also, like, here's my course on, Not necessarily the underbelly, but, like, you often wonder, like, how do these companies make money? And it's an extension years ago where password resets or transactional emails or, lines got open? Which emails drive your audience clicks? So if you need to send,
Guest 1
Leah LaPorte's podcast.
Guest 1
Forward slash podcast and give it a listen. Thank you, Postlight, for sponsoring. Sick. Let's talk about maliciousness.
Guest 1
oh, the toothbrush that I'm using, We don't know. I'm sure some cool stuff. So, like,
Guest 1
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
Guest 2
add on type feature that I And
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,
Guest 1
oh, yeah.
Guest 1
I said to somebody on Twitter and they said, hey, that link got flagged as malicious.
Guest 2
kind of being naive to
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 2
luckily, their services are you familiar with, Caddy? Yes. Yep. We had the, shared it. It was a Raspberry Pi tutorial on how to control, for, and I haven't really had anything quite that big. So, Yeah. So I listen to this I listen to a lot of podcasts. So, You know, the t. Ly, I also built another tool called link unshorten,
Guest 1
I follow him on Twitter. He's hilarious, but he wrote a really good
Guest 2
you know, 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,
Guest 1
So specifically, Paul Ford is, when the New York Times rolled out the paywall, Not sure why, but
Tim's first successful monetization was from Amazon affiliate links on a Raspberry Pi blog post
Guest 1
The one we have here, I'm actually curious about this because we haven't talked about languages.
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
Guest 2
Easy to build 1 extension to go in all of those browsers. Now Safari is kinda different. That's one I've never, blog posts. But, unfortunately, my hosting company actually shut my servers down. So that was kinda a wake up call to check that out. It's, Sometimes I'll be super motivated, and I'll work, you know, I got really fortunate that my very first blog post, 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 2
from, purposes, and that's my goal. But, unfortunately, the Internet, And then you also have, like, an options page, and then,
Guest 3
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 2
exercising,
Guest 1
and you just need to unload the burden of sending emails 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 1
BigCommerce and more. They have SMTP set up. The only you'll need to copy paste your credentials,
Guest 1
and use a system
Guest 3
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, 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
built the internal tool that we used there.
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 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 2
Yeah.
Guest 2
and a lot of, you know, .net stuff. And then I've also done a lot of Go, work on some stuff,
Guest 2
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 1
What about keyboard?
Guest 3
filter Safari extensions.
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 3
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,
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 1
So, like, literally any like, you're using Node Mailer,
Guest 2
so to port an extension from Chrome 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 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,
Guest 2
affiliate links. And,
Guest 2
Chrome.
Guest 2
The Microsoft a lot of times, it's like things that 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,
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,
Guest 3
for, like, ever up until, like, only
Guest 2
I've, you know, family kids. So, like, if I'm but the site is gone. And I'll be like, sorry. I don't have any control over, you know, whatever service. So, Definitely enjoyed being on here. Thanks for having me. And, as far as back end, and then also react. And then,
Guest 1
Yeah.
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,
Guest 2
to Firefox.
Guest 2
you know, blog post because it just got so much traffic,
Guest 1
You can see stats that matter to you in the Sendlayer dashboard. Important questions like Which subject
Guest 3
Get share out, and then
Guest 1
like Send layer. Check it out at send layer.comforward/ Gina Cioppani. I've been following her since Lifehacker. So she was the founder of Lifehacker, or something like that for a short URL.
Guest 2
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
But if you had to start coding from scratch, Fatch, what would you learn? If I was brand new and never had developed But, yeah, And I loved it for a long, long time. And I eventually switched.
Guest 1
Wow.
Guest 2
I just haven't
Guest 3
What are what are some of your,
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 1
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
Guest 1
Yay. Woo hoo.
Guest 2
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 2
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 1
and host candid conversations on tech, business ethics, And culture.
Guest 3
been motivated enough, I guess, to do it. Yeah. Totally. It's a whole I'm sure that's a whole thing,
Guest 1
a secondary,
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
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 2
The split one? I think it's called, like, the Sculpt. Yeah. The split one. Oh, that looks cool. I had
Guest 2
And I don't do a ton of traveling, so it works well. It's usually docked. Sweet.
Guest 1
you could hook up this to Node Mailer. No problem. It integrates with thousands of platforms, WordPress, WooCommerce, Magneto,
Guest 1
it's a pretty cool one. It's like split, but it's still 1 piece.
Guest 2
So I actually 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 1
Maybe someday. Microsoft one has 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
Guest 1
Chrome extensions
Guest 2
you know,
Guest 2
but for all my side projects, for whatever reason, I've just stuck with, shared it, and then Lifehacker URLs that expire after a certain amount of clicks Oh, wow. That's cool. Yeah. Additional analytics, password protected links,
Guest 1
Forability is one less thing you need to worry about.
Guest 1
from your server
Guest 3
A good 6 months. And then when,
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 2
So that was pretty neat. I was like, wow. This is pretty easy. I just keep writing these and really, you know, enjoy 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 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 2
and,
Guest 2
outlets. You could take, you know, basic, Do something around the house or, you know, like you said, the under cabinet lining and do these little projects. I'll just It's it's a little bit different, I guess, being interviewed.
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
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,
Guest 2
Yep. It's split, and it's wireless.
Guest 1
I should do this on a blog post. So
Guest 1
con 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
It's a kinda
Guest 2
I know I'm not the biggest,
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 1
are a PHP dev. Right? You use Laravel? Yeah. So I'll hold so
Guest 2
I think Hackaday to, you know, make sure people aren't doing anything malicious. So West Boss here and Scott. Yeah. I'll be able to go learn from.
Guest 1
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 1
email deliverability Kinda up ups and downs. Let's talk about one of our sponsors, So your other extension, So they they were like, oh, we want to sponsor the show. And I was like, Five links. I'm wondering if you change. Like that whole that whole world is like,
Guest 2
I'll, you know, implement it as I feel motivated.
Guest 1
syntax Yeah. Is is cold have more, 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
to use it, 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
Let's look inside here.
Guest 3
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 1
and get started for free. Thank you, Send layer, for sponsoring.
Guest 1
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
The weather extension grew from a few hundred to 10000 users after getting shared on Lifehacker
Guest 2
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 1
how does that work? Is the code running
Guest 3
I mean, this is the best interest that
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 2
And so 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 with that, I decided, alright. I need to build my own Shortener service.
Guest 1
Oh, the the big one. What is that? A a urolog shortener? Yes. So going to get a shawarma at 3 a. M. After the bar with my friends either.
Guest 2
But when I first created the weather extension, Yeah.
Guest 1
links
Guest 2
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 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, The spelling is t back you know, so the weather extension was 2015. And then, you know, as I kinda,
Guest 1
a company Juniper Trapani, 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 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 Jura Impreza.
Guest 1
like, the the environment of a chrome extension,
Guest 2
I was actually just, you know, still under the free plan for dark sky, which was kinda crazy to think. And then,
Guest 2
Dark Sky Chrome extension. Oh, wow. I think it went from, like, couple 100 to, like, 10,000 And it's a coffee maker, but it's,
Guest 2
you also have, like, background
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 1
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 I had this version, like the earlier version of this, probably 10 years ago.
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 2
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, 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 the yeah. So make a note. Alright.
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
Guest 2
that type of stuff. So, 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 2
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 1
who founded Lifehacker, also founded the sponsor. So that's that's pretty crazy.
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
Guest 2
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, I've been using Versus code 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 Okay. Yeah. So,
Guest 1
Our sponsor today is,
Guest 2
And, remove any, you know, references to, like, window or document.
Guest 2
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, And then, you know, as my needs grew, so if I needed to do something I spent kinda
Guest 2
Some of the older ones use jQuery and,
Guest 2
I I don't know if I reached out or somebody from Lifehacker, 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,
Guest 1
Let's let's talk about, and they they want to link to multiple things? Like,
Guest 3
from, like, a
Guest 2
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 1
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, You Who you are, what kind of code you write, where you're from,
Guest 2
But all of the code, Selling you out. Yeah. The Well, I was gonna say the the
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
So there's been some, you know,
Guest 1
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
Guest 2
I
Guest 2
Stuff that's been kinda frustrating to have to swap them out. And,
Guest 3
Tell me how. Yep. Pinterest had their own Amazon referral links that were cashing them out. Yeah. That's that's,
Guest 2
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
Transcript
Guest 1
they your home for weekly conversations with industry veterans, technology design leadership in business.
Guest 1
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,
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, t.0y That was probably, you know, comp the most complicated thing I had to figure out with this is How to do it? And, 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 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 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
builds, in the past, manifest, I guess, v 2, you could just use, like, a background pretty much
Guest 2
And
Guest 1
reliability, and scalability. And we are also sponsored by
Announcer
Oh, I'm starving.
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 Awesome. Any shameless plugs? Where should we follow you?
Guest 2
it's based out of Washington,
Announcer
so buckle up and grab that old handle because this ride is going to get wild.
Guest 2
I almost I think I've been listening since So
Announcer
I sure hope you're hungry.
Guest 2
Some software developer. I've Been developing 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,
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,
Guest 1
all his side projects, how he builds them, what he's building them on,
Announcer
This
Guest 1
The Postlight
Guest 3
You're thinking like, you know, let me let me dive into making a browser extension. What what what was that initial
Guest 2
for past 12 years, and,
Guest 1
podcast, 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 1
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
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, 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 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,
Guest 2
I've done lots of different things. Worked for a couple different companies,
Guest 2
it's actually like bible study software. So, 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,
Guest 2
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, as a way to just wildcard. So you could You know, anything. But there's a few additional checks you wanna do,
Guest 1
in this industry. So we'll talk about all them partway through the episode.
Guest 1
Yeah. Yeah. Yeah. A little, 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, check it out for your weekly source for honest conversations on tech and leadership. So go to post lite.com kind of the opposite, but Just just needs to work. What about text editor theme and font?
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
Announcer
is the Syntax supper club.
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
a company that just because of the previous company I worked for needed a, like, texting application.
Tim recommends a coffee maker called Chibo for cold brew
Guest 3
I only do cold brew, but it's all it's all good 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 1
like, more,
Guest 2
Recently, I I don't know if you're y'all are coffee drinkers, but,
Guest 2
Yep.
Guest 2
c h I b o. So if you're into coffee,
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 1
Yeah. We've been getting into the cold brew, lately with the
Guest 2
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 Like, I wouldn't go into debt, I guess, to get a college degree. And I think, you know, you could go and,
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
drip coffee, but we loved it if we had it for probably 6 years.
Guest 2
and it's real convenient. It's kinda like a Keurig, but It takes fresh ground beans.
Guest 1
like pasta cup. Yeah. Yeah. Yep. We Yep. Had had something like this. It was a Jura, that's how they're making money.
Guest 2
Yeah. Kinda pricey, but it's not as much as, like,
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, But why don't you give us a quick rundown of We're not doing an ad transition here, but I'll use that to talk about our sponsor today because
Guest 1
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.
Tim built a tool called link unshortener to help detect malicious URLs
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,
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?
Guest 1
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?
Guest 1
and that's something I'll always do,
Guest 1
So, well, I don't even know what I asked you. Is there AI? anything else, what kind of food you like?
Guest 2
I don't really even understand what that Term means, like I heard from website, they shared it, and it was, like, you know, cutting the grass, I'm usually listening to a podcast.
Guest 2
But, no, it's just you know, so I set off to, you know, find a good domain.
Guest 1
Like things that are specific. Like, I get get these Instagram cryptocurrency.
Guest 2
I guess.
Guest 2
you know, solve that. So, like, the weather extension,
Guest 1
or probably already doing it.
Guest 2
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 You got plenty of time, so, you know, 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, it got to where I didn't really have to extensions. But Yeah. So at some point, they kinda adopted the
Guest 1
are using AI. I imagine that at some point he's asking us what questions we're going to ask him, and we're like, we we don't know.
Guest 2
No. No. No AI.
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,
Guest 1
tweeting an affiliate link? Because they put it behind a URL shortener to to To hide the
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 built a weather extension in 2015 which kickstarted his interest in browser extensions
Guest 2
from, you know, what what can they do. And then
Guest 2
catalyst? Yeah. So I I used a lot of different browser extensions, so I kinda got interested
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.
Guest 2
And, you know, a lot of people
Guest 2
I've been working on that now, I guess, for 7 years and just, you know, updating it, adding features.
Guest 2
So and it unlocks additional things like that handles a lot of the SSL and custom domains and just figuring out how to,
Guest 1
is that's totally free. I'm just looking at you have 211,000
Guest 2
I, you know, did that because, images.
Guest 2
Originally, I it still uses Dark Sky, if you're familiar with the popular Ios app. But Mhmm. Yeah.
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
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, if I think back, it like,
The weather extension uses the Dark Sky API which Tim had to get a paid plan for due to the number of users
Guest 1
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
Chrome extension that would just hide the div based on the CSS class. And It got a whole bunch of, like, that appear on pages with their own affiliate links.
Guest 2
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.
Guest 1
And confirmation, shipping notifications, you need to hook it up to WordPress.
Guest 2
well, a lot of people tried to, you know, hack and take over
Guest 1
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,
Tim built a URL shortener extension after Google shut down theirs which allowed him to gain users
Guest 2
And, 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, grinds the beans, weeks. And then sometimes I'll you know, won't do anything for a couple weeks. So People 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, and then so what happened is once Google shut theirs down, Some other ones that aren't as reliable, pages. And 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
Guest 2
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
for using other, You know,
Guest 2
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, I've
Guest 2
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 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
Guest 2
all that before I had the domain because my goal really wasn't to build my own shortener. It was to, 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, using Laravel because My my day job, I use c sharp malicious URL detection system.
Guest 2
And what it did is it just used the old, you know, Google URL Shortener service API And I might be saying this wrong, but it's I think it's a Chibo, Definitely Syntax podcast.
Guest 2
I built the, extension
Guest 2
You know, have an extension that had a lot of users, and then, you know, I just enjoy the extension. So, have been around for a really long time and have a lot of neat different apps and The the link shortener, For one of my apps extensions, I'll just, you know, put it on the list. And then as I get time, yes and no. I guess it depends. You know? Don't,
Guest 2
URL shortener services. And then, you know, I could kinda if I go back, that was still one of my biggest,
Guest 2
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 anything like that. And then, assign a SSL certificate via CADDY? Yeah. So CADDY well, CADDY has on demand SSL and,
Guest 1
APIs that to shorten URLs. That's awesome. So the domain name is t.ly.
Guest 2
And,
Guest 1
How the heck Did you get that domain name? Yeah. It's a great question. So I 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
That would use multiple
Tim purchased the t.ly domain from a domain reseller for around $50k
Guest 3
URL, but also a perfect URL for a like, a shortener service specific.
Guest 2
And the way I was able to get the domain is, He runs like a domain reseller, kinda originally came about,
Guest 1
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
of the entire
Guest 1
for the sake of it. You this is obviously, like, a business of yours. Right? So people are paying you For for what? Sendlayer.
Guest 2
It really fits really well. I like to say it's a it's a bit Shorter they, I would say no. I mean, there's still tons of people who
Guest 2
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 3
Wow. And that's like a a a keystone of
Guest 3
Perfect
Guest 1
operation. Yeah. Kinda has to be short. Right? And so You you didn't just spend that to,
Guest 2
and he I said, hey. What domains do you have that are short? And he,
Guest 2
I'd worked with a guy.
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.