Episode Summary
Episode Video
Episode Show Notes & Transcript
Show Highlights
About Timo Josten
Links
- Timo’s LinkedIn profile: https://www.linkedin.com/in/timo-josten-493962185/
- Timo’s personal website: https://josten.io
- Dropshare: https://dropshare.app/
- shitposting.pictures
Transcript
Timo Josten: In my professional career, it's always a compromise between what, like, the customers want, like, what the product is supposed to be, what the product managers imagine their product to be, but in this case, and that is why I enjoy to work on Dropshare so much. It's just me, right? The only one I need to argue with is me, and if I think it's a good idea and like the feature, I'm just gonna implement it.
Corey Quinn: Welcome to Screaming in the Cloud. I'm Cory Quinn. For those who may not be aware. I spend a lot of my time on the internet shit posting. I enjoy finding tools that make that a lot easier for me to do, and one that I've been using for years is Dropshare. Timo Josten is the owner of Dropshare, the company which creates Dropshare the product that I've been using for a while and just released a new version. Timo, thank you for agreeing to talk to me.
Timo Josten: Hi. Thank you for having me be here. Very glad.
Sponsor: This episode is sponsored in part by my day job, the Duckbill Group. Do you have a horrifying AWS bill? That can mean a lot of things.
Predicting what it's going to be. Determining what it should be. Negotiating your next long-term contract with AWS. Or just figuring out why it increasingly resembles a phone number, but nobody seems to quite know why that is. To learn more, visit duckbillgroup.com. Remember, you can't duck the Duckbill bill.
And my CEO informs me that is absolutely not our slogan.
Corey Quinn: So I have my own perspective on what Dropshare is, but I don't generally like it when other people tell my story badly. So I figure I'll do you the same courtesy.
What does Dropshare do?
Timo Josten: Yeah, so it's basically a piece of software and app, as you would say nowadays, that helps you share files, right? So it allows you to drag and drop any file folder, anything you can think of on your Mac or iOS device, and upload it to virtually any storage provider you can think of, provide you with a link to share it, and that's it.
Corey Quinn: One of the things that I looked for back when I first encountered this, I wanna say seven years ago or so, was I was talking to a bunch of people on the internet, as one does, and wanting to send people screenshots of things, also as one does, but everything else that I was seeing at the time had their official domain tied to it. It was always very clear what app someone was using, and the flow of these things wasn't terrific either. the initial thing that really got Dropshare onto my radar was the fact that you could use whatever backend storage system you want, like, oh, I don't know, an S3 bucket in my case. And well, if you do that and then just slap something like CloudFront in front of it, well suddenly you can wind up auto generating screenshots with a hot key. Drag, drop, let go, and suddenly you can send those to everyone. I mean, the domain that I use for this, not kidding, is shitposting.pictures because that is usually what I'm sharing pictures of. I sometimes forget that's what I'm using when I'm in a client discussion and send something quickly to them and then watching them do a spit take in a boardroom.
But you know, we all have our peccadillos.
Timo Josten: Yeah. Well that's rather funny. There is a solution for that in the app, but let's dive into that later, maybe. So funnily you say that it's other solutions, other providers that basically do the same thing, but it's always like branded with their own identity, right? So, and that's actually what made me start Dropshare, like I think 12 years ago now, maybe 13 years ago. I was relatively new on Macs, bought my first Mac and used one of the, back then, market leading apps in taking a screenshot, share it with link, and initially it was great. But yeah, they started adding advertisements to their download page, and everywhere it was like, obviously whichever was using, unless I was to pay money for it, which is fine, on a monthly basis for a tool that I use for taking screenshots. Hmm. I wasn't so sure about that. And I was still a student and that was a no-no for me. So, being initially a backend software developer, so that is what I am by profession, I developed software.
I looked into how hard can it be to create a makeup, right?
Corey Quinn: How hard can it be? The rallying cry of people who are about to learn a lot?
Timo Josten: Yeah. Yeah. Precisely. So I spun up Xcode for the first time, looked into it, and closed it again for a year or so because yeah, it was like, other than anything I had seen before. This weird programming language, objective C object, sending messages to each other.
Very weird coming from a Python and Java background and yeah. Anyway, I was still annoyed for a year and then I looked back into it with how a friend who was back then looking to iOS development also for the first time, and we helped each other out a bit, and that's when I spent some time and created an app I called Dropshare, which basically was a very tiny settings window that allowed me to enter a host name, a password, and a path on my server where to upload files to.
Sometimes I share a screenshot of that on Twitter just for the fun of it. And yeah, I started to use that, and suddenly I could just like, upload files, capture screenshots with my own domain and my own branding, and people were like, what are you using to do that? And yeah, it was like my app.
It wasn't distributed anywhere. It was just running on my Mac, and that's when I started to think about maybe this can be a product.
Corey Quinn: I have to say, its flexibility is one of the things that attracted me to it. At the time, you had a bunch of different cloud backend storage services you could use, and now that I'm looking in version six, you have what appear to be about three dozen of them, ranging from Amazon S3 to the other cloud providers equivalent of it, to Google Drive, to Dropbox, to Imgur, if you want to have your screenshots constantly interrupted with a popup. "This looks better in the app." I digress, and I have angry feelings about it. You can SCP or FTP files into places odd programmatically.
It is highly customizable. You can also generate custom landing pages that do whatever you want them to do it. I confess it took me a little while to figure out the right way to put the meta tags in the landing pages so it would show up properly on Twitter and later Bluesky.
Timo Josten: Yeah, so basically when I started to make it into a product, it supported SCP uploading, so like assets aging into your server, uploading files and Amazon S3, because back then it was like the obvious way to get cheap storage that serves over the internet. And there were, and I think still are free to use, so it was basically very easy to set up, didn't cost anything. I think the app was free back then as well. So it was a win-win for everyone because it was an application sitting in your menu bar, almost invisible, but there if you wanna share a file or capture a screenshot. And people started to download it and apparently to like it, and that's when it grew, and more and more search providers came. I figured out that basically all of the object storage providers accepted their fate and implemented an S3 compatible APIs. So that made it very, very easy to basically attach Dropshare to any of the available storage providers and also allow any custom S3 compatible API, if there is a new one that I didn't see yet. And people ask for Google Drive and Dropbox and OneDrive and yeah, basically everything that has an API.
Can be used with Dropshare, and if it doesn't, let me know. I will probably find a way.
Corey Quinn: You hear from me every time S3 makes a significant change in this direction. I have a history of tickets in my email inboxes, dating back, oh, uh, must be to 2018 or so, where it's, "Hey, reduced redundancy storage isn't really a thing. Now it's infrequent access." "Hey, now it's intelligent tiering. Can I have the option to upload to that storage class automatically?" Yada, yada. And your response is always the same. "Oh, thanks for letting me know. I'll look into this in the next version." And lo and behold, I would look a couple months later, and sure enough, either you had emailed me to say it was available, or I discovered it first. It was great. It's not just that you cover a bunch of these storage services, but you do it in some significant depth.
Timo Josten: So I'm very grateful and thankful for the feedback for yours and for the feedback of the community, which is a very nice community, I have to say, because it's not possible for me to follow all the changes and updates for all the storage providers, because some of them, yeah, communicate. Some of them don't. Some of them just change stuff and APIs breaks. So, very thankful and grateful for all these tips, and, I mean, unless it's not a good idea, I'm very happily looking into it and implementing it, especially since like adding a new storage class to the S3 support is like really not that big of a deal.
Corey Quinn: What? You're not tracking this stuff constantly on an ongoing basis, so that every change to every storage provider, no matter how minor. Can't imagine why. You must have something else to do with your life.
Timo Josten: Exactly. I wish. And yeah, especially since why Dropshare obviously is a business, and I've been doing that for 13 years now. It's not my profession, right? It's something I do on the weekends and when I'm done with work and feel like doing it. So, yeah, again, very thankful for any tips or hints when stuff doesn't work anymore, or, yeah, just the services change their API or add new features.
Corey Quinn: I want to get into the idea of it as a business a little bit, because you have an ancient old timey business model, which is I pay you once for a piece of software, and then I effectively get free updates until the next major version, which is sort of a nice splitting of the difference between the subscription model and the, "Okay, we're just gonna take money once and then give you free updates for life, which doesn't feel sustainable." How'd you land there?
Timo Josten: Yeah, so I've tried it all, I'd say. So the app started with a one-off purchase. They were subscriptions somewhere in between. I think on iOS, it's still possible to opt into a subscription if you don't wanna use the app for a long time and don't wanna pay, like, the big upfront or lifetime payment for a major version. And now I'm back for many years in the pay ones and receive updates for that major version scheme. And being an application that primarily targets, like, not businesses, but individuals and looking at myself using software, while that might not be the most businessy way to go, I think it's the most fair way to do it, right? So, because I am not a big business because I don't have an amada of support people helping, it's just me. I think it's just fair to say pay once. Buy as you've seen it, and whenever something breaks, please shoot me an email, but it might take a week or two for me to fix the issue, right? Or to get an update. And I think that's just fair. On the other hand, Dropshare is on setup for quite a long time now. Setup is like the Netflix for applications on MacOS, and it's like a subscription service. So if someone does not want to pay for their software individually, but rather have a big subscription and get the app from that subscription, that works for me. And as long as Azure has been used, I can participate on that.
Corey Quinn: So I have to confess that I use this so many times a day that when I got the popup that, "Hey, there's a new major version out," I didn't even bother to read the change log. I hit the link, pulled out the credit card, bought the upgrade, installed it, which was a seamless process by the way. It even gets rid of the old one. Nice work, and then, now I'm talking to you and realized I didn't do my homework well enough, what changed in version six? Because the honesty, the only thing I would've been likely to notice is if something broke. It didn't, it's been a couple of weeks.
Timo Josten: That, that's very good.
So it, it's not like the Big Bang major update with everything redesigned, and updated, and new UI, and the yada yada, because from what I hear from my users and customers, it's fine the way it is.
Corey Quinn: Well, I wanna be clear the way that I use it, there is no AI to speak of. I hold down three keys, and then I hold two modifier keys and I press the number four, and then I drag and I let go, whatever I've just selected on my screen is now instantaneously uploaded to my S3 bucket.
And the link to that, accessible via CloudFront, is now placed into my clipboard. I can just paste it and go. It is one of the fastest ways I've found of working with these things. I know you have a user interface in various parts of the app, but I almost never have to look at it.
Timo Josten: Yeah. That I think that's like part of the magic out of, right.
It's like sitting in your menu bar almost invisible, and it's just there if you need it, and if you don't wanna see it, you don't ever need to see it because, as you've just perfectly explained, that's how it can work. It can work in very different ways. There can be a visible user interface. The problem that you explained earlier with the shitposting domain, well, theoretically you could, like, duplicate your F3 connection, right?
And have like two different upload targets. One for the shit post and one for the business stuff. The app allows that. It will show you a question window to choose a connection when uploading, if you want that. But it's customizable the way you want it to be, so if you don't ever wanna see that, it's never gonna pop up.
Yeah. What changed in version six is, basically, there were a few new storage providers supported. Automatic upload deletions. That is something that people have been asking for quite a while. So if you want your uploads to disappear from your storage after a certain period of time, that's possible now, but it's rather my way of offering that app in a sustainable way, like offering a paid upgrade every five to seven years looking back, then a big bang update that changes everything and adds hundreds of new features and breaks stuff like usually. So you should look it out. You should check it out if you are using Dropshare already. You should check it out when listening to this episode, obviously, to see whether it can help your workflow, but it's not like to expect major new, brand new features because the app is fine the way it is. There used to be 80, I think, free updates for version five. Some of them new features, some of them improvements, but I just enjoy working on that product. Strive to make it better, but I'm not gonna change it in any way that will remove or change the workflow that people started to like and laugh.
Sponsor: This episode is sponsored by my own company, The Duckbill Group. Having trouble with your AWS bill? Perhaps it's time to renegotiate a contract with them. Maybe you're just wondering how to predict what's going on in the wide world of AWS. Well, that's where The Duckbill Group comes in to help.
Remember, you can't duck the Duckbill bill, which I am reliably informed by my business partner, is absolutely not our motto.
Corey Quinn: How do you look at a feature or an improvement and say, "Oh, I'm going to put this into the next point release," versus, "This is going to be a paid upgrade for the next major version." How do you draw that line?
Timo Josten: Yeah, that's an interesting question.
So for the past seven years, there have only been free updates for version five, right? So, I released version five, which was a bigger update because, like seven years ago, there were like the first MacOS version with dark mode and UI needed updating to support that.
Corey Quinn: Everyone needs a dark mode for whatever reason.
I don't get this obsession with it so many people have. It's, I, sure, okay, great. Late at night, I do. It's a little easier on the eyes, but I don't know that I necessarily wanna make that the hill that I die on.
Timo Josten: Yeah, precisely. But then again, if all of your MacOS is black and then the settings window pops up, and it's all bright and white, people will write me emails been there, right?
Corey Quinn: I have no doubt that they will.
Timo Josten: Yeah. So that's like seven years ago when I needed to do like the big update, I decided it to be paid, and then I just worked on that for the past seven years, and I didn't even think about a paid upgrade because, like, people are, thankfully, constantly buying the app. But then again, looking back seven years, much things have changed. Not only economy, but also everything got more complicated, supporting more versions of MacOS and yeah, I thought about it might be a good point now. It's a fair point to release a paid upgrade.
Actually, a friend of mine asked me why I'm not doing it, and that only made me think about I could do it because I think it's just fair from time to time to release a paid upgrade because that's how the business stays sustainable in a way.
Corey Quinn: One thing that I keep being surprised at every time I discover it, 'cause I confess I've never used it or configured or gotten it working properly, is you have an iOS version as well, which I guess in hindsight would make a lot of sense for me to have used it a bunch of times where I'd just basically throw it over airdrop to from dry desktop to do things that would've made things a lot more simple.
But it feels like there's not quite the same equivalent of the friction-free approach of drag select, or even just just effectively the hitting other hotkeys do a whole screen image and then stored into that. It feels like there's a few extra steps that need to happen.
Timo Josten: It is obviously, because that's the way iOS is, it cannot be integrated that deep into the OS, but I think one of the primary use cases is that it's upload history synchronizes through your iCloud magic synchronization thing. So whenever you upload something on your Mac and you use an iOS device with the same Apple account, your upload is will just appear. So if you shared something and you need it on your phone, you will have easy access to that. And obviously back then when I implemented the iOS app, it made sense also to allow uploads so. Not all, but I think like 70% of the storage providers that are supported on MacOS are also supported on iOS, and there's not so many native, like S3 clients in the app store for, for iOS devices. So many people just use that to drop stuff into S3 without even needing the like download url, right?
They just wanna put stuff in their bucket for later use, and,so that's what makes the app so flexible, right? You can basically do whatever you need to do with it. You can share the files, you upload it or you don't, and with, like, widgets and share extensions and all that kind of stuff, you can integrate it in your workflow.
So I know that Federico Fund for for Mac updates laughed to use the iOS version to upload his block pictures for the website.
Corey Quinn: Federico Vichi. Or am I thinking of a different Federico?
Timo Josten: Yeah, exactly. This guy. So he loved to use the iOS app to like upload, I think it was in Cloudflare. It's also, I don't remember. But yeah, to just get his block images, assets to his storage, and then use it when updating an article on a website also. So it can be whatever you need it to be as long as you need to upload something.
Corey Quinn: Yeah. I very much like the idea of being able to have a configurable self-deletion of a lot of these things.
Historically, I've approached that by having a lifecycle policy on the S3 bucket, but I have a few screenshots that I've put up over the years that really should have been aimed a little bit differently. For example, one I sent to someone in passing. Well, it wound up getting linked in a New York Times article.
It's, that's one of those things where I probably don't wanna move that and break it, whereas, oh, that was a random misfire as I was testing out a new keyboard shortcut that did not do what I thought it was going to do. I wind up with things cluttering up that S3 bucket constantly. I think last time I checked I had 7,000 images in that thing.
Timo Josten: Yeah, so apparently also deleting is something that people wanted to have. I was a little hesitant to implement that because, like, people tend to forget stuff, right? So data just disappearing from your storage, it's a little scary, but it's like, I'd say, well hidden in the app and made sure that it just precisely does what you want it to do.
And obviously only works if the Mac and the app is running at the time because there's no, like intermediate. Dropshare is always only gonna directly communicate with your storage. There's nothing in between that will ever get in touch with your files. But yeah, people love that and I've already gotten some feedback on it and people requested more customization options for the duration and the lifetime of the file. So yeah, that is what I'm actually very grateful for the community of the app because people like are very understandable for why there is now a paid upgrade, and on the other hand have very good feedback like you did many times in the past on how to improve the app, and it's always like, in my professional career, it's always a compromise between what, like, the customers want, like what the product is supposed to be, what the product managers imagine their product to be. But in this case, and that is why I enjoy to work on Dropshare so much, it's just me, right?
The only one I need to argue with is me, and if I think it's a good idea and like the feature, I'm just gonna implement it.
Corey Quinn: Part of the problem that I consistently run into is that I spend all of my professional time fixing horrifying AWS bills, a small problem that's affected basically everyone in the fullness of time.
And that's why I cared so much about getting intelligent tiering working with this, and then I stop to think, I mean, really think about this, and I check the numbers, and I'm spending about 7 cents a month right now on storage for all the things I've taken pictures of over the last eight years. And it turns out that I don't actually care about optimizing that 7 cents down to five or whatnot. What I do care about and why I like that deletion feature quite a bit is that I will periodically, either intentionally or accidentally, take screenshots of things that are somewhat sensitive, and that's fine. There's a long random string that's part of the name of these things that winds up being so it's not discoverable. You can't list index these things. And I know how S3 permissions work, so I'm mostly safe there, but I still don't like having that data hanging around. And being able to have that delete in the fullness of time is of significant value.
Timo Josten: It is, I think, and, well, something else that's hidden kinda well in the app but has been there for I think, like, since basically the beginning is something that I call Dropshare Safe, which is an option to add the password protection and the link expiry to your upload. So it's not touching the file itself, but just putting aside in front of that file with the secret url you just mentioned, and allow you to, like, set up a password to download it or set an expiry for just the link, and if you then share that Dropshare Safe link, no one's ever gonna find out the actual URL of that file without the password. Yeah, obviously not gonna able to download it unless you share the actual file anywhere.
Corey Quinn: I also have misled you. I'm trying to remember off the top of my head. That's why I checked and pulled this up. Yeah, this has cost me 11 cents total over the past six months in storage. So yeah, maybe that's not the first thing I should cost optimize.
Maybe I just get a medium coffee instead of a large and cover the difference for the next year.
Timo Josten: That sounds like a good plan.
Corey Quinn: I am curious as well about what seems to have, I seem to have stumbled upon this on GitHub. It feels like there's a thriving community around Dropshare, which I wanna just say is a wild thing to say about a relatively straightforward app that takes screenshots and puts them on the internet, but specifically around various tailored landing pages, that the templates of whenever something gets thrown up there and I drop the link, it's not just a link to the raw image, 'cause that'll break a lot of things. It's a bare bones HTML page that will in turn have embedded tags so it displays properly on various websites. I need to go back and look at that a fair bit more 'cause I suspect there are better options in what I'm using that arrange for things like, I dunno what the alt text equivalent is for use on social media or changing the aspect ratio at which they display these things.
But I'm sure they're out there and I'm sure someone has done that heavy lifting for me. But it, it's one of those incremental improvements. It's just quality of life stuff.
Timo Josten: Yeah, precisely, and many of the landing pages, as I call them that are built into the app are community made, right? So someone just made their own landing page, shoved them on GitHub, and tagged me, and said, "Hey. This is nice. Don't you wanna put that into the app?" And that's what I did because I'm not really good web designer, right? So I wouldn't come up with plenty of templates to use. But if there isn't any that you like built into the app, you can, as you said, just spin up the HTML editor and create your own tiny landing page for your uploads. Put some placeholders in there that will be replaced with a preview image or the name of the file, the size of the file, whatever, and have your own CI or whatever you need for your downloads. Yeah.
Corey Quinn: It's also probably worth pointing out that, for better or worse, AI can do a pretty decent job of banging these things together these days.
Timo Josten: Yeah. So that was rather a joke to be honest, but turned out to be quite a helpful feature sometimes. So, usually if you take a screenshot, it's very simply named "screenshot" with a date, right? So there is preview images of the files, obviously in the app, but still sometimes if you actually need to find something that you captured like two weeks ago, can be quite a hard, but yeah. Sometime ago OpenAI came out with a model that was able to very efficiently analyze a screenshot and give it a good name, and that's what the app can do if you wanted to, so you can just hook it up with your OpenAI key and have all the screenshots you take annotated for better findability in the app.
And it'll also, as a nice tidbit, add that description to the metadata of the file on your Mac. So also when using Finder for the local file, for example, you will more easily find it based on what's in the screenshot, and it turned out to work rather well. Wasn't that hard to implement, and yeah, now I can say I have an app that does AI as well.
Corey Quinn: I miss that option in the preferences that, that sounds super handy. Not from the perspective of, "I want AI to do all of my work for me," but oh my God, as I said, I have 7,000 images in an S3 bucket. It sure would be nice to start annotating that in the fullness of time, especially with S3's new metadata feature they just launched at re:Invent and went GA about a month ago. I still haven't wrapped my head around that, but once I do, don't worry. You'll get another feature request that sounds like it came from the freaking moon dropping into your chat box.
Timo Josten: Looking forward to that.
Corey Quinn: Timo, thank you so much for taking the time to speak with me.
If people want to learn more, or as I strongly suggest they do, buy, Dropshare, where should they go?
Timo Josten: It was a pleasure. So it's dropshare.app. Very easy.
Corey Quinn: Excellent, and we will of course put a link to that in the show notes. Thank you so much for being so generous with your time. I appreciate it.
Timo Josten: Pleasure. Thank you for having me.
Corey Quinn: Timo Josten, owner of Dropshare. I'm Cloud Economist Corey Quinn, and this is Screaming in the Cloud. If you've enjoyed this podcast, please leave a five star review on your podcast platform of choice, whereas if you've hated this podcast, please leave a five star review on your podcast platform of choice, along with an angry, insulting comment that you should then take a screenshot of for posterity, but lose it because you don't have a reasonable app to upload it somewhere sensible.