Ask HN: Anyone making a living building desktop applications?

332 points by jventura ↗ HN
I did ask the same question in 2016 [1] and got some really interesting answers.

I'm still chasing the dream of having a side-business and earning some side money, but with web apps it means mostly SaaS. Personally I hate rent-seeking behaviors (I'm not alone, it seems - "Tell HN: A Conversation Needs to Be Had over Subscription Software" [2]), so I'm trying to know what people are doing regarding desktop apps.

Are people still building desktop apps? More specifically, can you make a living (or earn some side money) in 2022 by selling a desktop app? Please share it with us, or are we doomed to build web apps and SaaS for the foreseeable future?

[1] https://news.ycombinator.com/item?id=11658873

[2] https://news.ycombinator.com/item?id=30021404

360 comments

[ 4.0 ms ] story [ 338 ms ] thread
desktop does not imply "not SaaS". I'll add that today most desktop apps are headless Chrome. that being said, I actually do web, but were I to go desktop I would look for a niche that can't be done in browser, even though today you already got access to most APIs & hardware...
> I would look for a niche that can't be done in browser

What kind of niches would that be, beside audio/video and other cpu intensive things?

Anything that touches a lot of files?
Ok, but what kind of business niche would that be?

You can also touch a lot of files on a webserver, although it would be a pain to upload them.

For example file management. "Directory opus" is a windows desktop 'better explorer' in this category (I have bought a license myself, it's pretty darn good).
Sure, a lot of people keep their stuff on somebody else's servers — a.k.a. the cloud — but there are still users who have plenty of local files: music, photos, code...

That's a wide range of users, so I don't have a specific product idea, but seems like some kind of opportunity may exist in this niche.

(If I had a product idea, I'd probably try making it myself — native desktop apps are much more fun to make than web.)

>native desktop apps are much more fun to make than web

This has also been my experience, and I am curious what the reasons are. Does it have to do with the quality of the end result, or the process of development?

On my current team we work on a cashiering desktop app, that needs to interact with local devices for processing checks and credit cards. Although almost everything reaches out to an API at some point, I'd generally say desktop apps are still relevant in cases like this.
Bluetooth PoS printers are a bitch to work with and good luck doing that from JS.
Something that requires absolute real time responsiveness?
There are web-based (in browser) CADs and DAWs... What sort of application would be more demanding?
I am not sure. Something that has a lot of back and forth with peripherals?
Pretty much any webapp can be replaced with local desktop app for security and privacy concise people. Some of things I wish had desktop version:

1. CRM - I don't want to store private customer data on 3rd party servers.

2. Budgeting app - Used to use Quicken but it moved to web and I switched to Mint because it is free. I tried some free opensource apps but experience was not smooth. So I am sticking with Mint for now.

3. Trade analysis apps - Sites like TradingView or TraderVue are great but I don't want to put too much effort in there. I rather have my trading data stored locally on my machine. As a programmer, I export CSVs and run them in local Jupyter notebooks but I think a more user friendly version should be high in demand.

Stuff that needs low-level access to the file system. You can now handle that at a crude level with web form file uploads and generating dynamic data URLs for download, but it's still not as smooth as using the native file system.

Edit: one example would be a file backup system. There's no way you want to make the user manually select and upload every single file on the HD for something like that, and (for obvious reasons) there's no way for a web app to scan the disk and read arbitrary files.

I agree with that. Things like Fusion 360 are both desktop apps and SaaS. The desktop app checks that you have a subscription before it will let you use it, and various cloud things nobody wants are forced in. (Photoshop has a similar business model, now that I think about. Everyone wants to be a cloud storage provider instead of just taking money in exchange for a piece of software.)
> I'll add that today most desktop apps are headless Chrome

Hmm, I don't follow — Headless Chrome is Chrome without the GUI. That doesn't sound so useful as a desktop app.

I'm building a desktop-first (SaaS-eventual) data IDE for developers [0]. Making a living? Not yet.

It being desktop-first makes it as easy to try out in a corporate environment as Sublime. The data never leaves your machine. Desktop-first is a big deal in devtools for this reason.

[0] https://github.com/multiprocessio/datastation

On the other hand, downloading software to your desktop is a risk (cf the Solar Winds supply chain attack). I recently got asked to fill in 30 question risk assessment questionaire before someone could upgrade to the latest version of my software (I declined).
In these cases you could also ask for a 50x price as the “enterprise option”. Filling a compliance form is not just a nuisance, you could take in some liability, so decline it or make sure it’s compensated accordingly.
I've tried that. Introduced an "enterprise license" that costs a lot more and told people they needed to get the enterprise license if they want me to fill their stupid questionaire.

Not a single company took me up on my offer. After hearing I would charge extra for the questionaire, they always just bought the standard license and filling the questionaire suddenly wasn't required any more.

My experience is similar. If someone wants your product, they will usually find a way to get it. I had one company that used some sort of slush fund to buy a laptop to install my software on, to get around their IT people.
Being that it's open source, are you planning for revenue to be 100% from the SaaS component or do you have other planned revenue streams?
SaaS in the next year or two and eventually an on-prem enterprise server license yeah.
The guy from Inkdrop [0] makes a living with his note-taking app. He also has a YouTube channel [1] which I found very relaxing.

[0] https://www.inkdrop.app

[1] https://www.youtube.com/c/devaslife

Uses a subscription pricing model though. I wonder why he choose that model. Personally I love the Sublime model, buy a license, use it anywhere.
Because a subscription pricing model brings in more money and a more predictable revenue stream. Most people selling apps on a pay-once basis can't afford to support it and develop new features indefinitely, so they move on to the next project and it goes into maintenance mode, only getting updates when a new OS update breaks it.

Also needs to pay for the cloud servers running it lol.

> goes into maintenance mode, only getting updates when a new OS update breaks it.

I don't see anything wrong with this. Users buy software because it solves their current problem now, rather than a possible feature in the future. The revenue stream is definitely more reliable though. Just that as a user I wouldn't mind if the software I bought today stays that way forever, and as a developer I wouldn't mind developing software to completion then leaving it as that.

I follow him on YT. His videos have an amazing aesthetics, and the tech content displayed is simple mind blogging to me as a non-tech person.
Seems to be doing quite well too, considering all the hardware on his channel.
Ok I can't thank you enough for exposing me to this channel. The aesthetics and vim and the complete coding is so relaxing. Do you have any other channel recommendations like this?
Plenty of people do this.

Go onto any software listing site (eg. Softpedia or AlternativeTo), pick a not-a-brandname commercial product and chances are that it will be a single-person project. From things that are really well-polished and look like a team effort to pimped-up crappy weekend projects. Lots and lots are made and run by a single individual.

Whether they sell well is an altogether different question, but it's generally not hard to make several $k per month off a decently useful consumer desktop software. All depends on the size of the niche, the fit (read, specialization) of the product, its quality and the amount of marketing effort.

This business model is still often referred to as "shareware", so if you want to find communities of people that are involved in it, that'd be the keyword to search for.

What is the state of the art in shareware for drop in payment / piracy protection?
Re: payments - it depends on the country, but generally Stripe + PayPal + bank wires for larger/enterprise purchases. Alternatively, Braintree.

An altogether different option is to pay 2x the commission and use "full-service" reseller frontends like Digital River, PayProGlobal, etc. These are referred to as "registrators" and they used to be useful, because getting a merchant account and processing cards was a royal pain the ass. But now there's Stripe, so virtually no value in them. In fact, they tend to make thing more difficult to the clients than needed to justify their own existence (like requiring phone numbers, calling customers back to "verify" purchases and other artificial b/s like that).

Re: piracy protection - wildly depends on whom you ask. There is a camp of people that put minimum effort (literally a a single "if" check in the code) and embrace having their stuff cracked and hacked. The logic is that this acts as extra marketing and helps converting pirates (lol). There are also people who use packaged solutions like VMprotect and (previously) Armadillo. This tends to nip piracy in a bud, but creates issues with antivirus false positives. It also makes the software heavier and more fragile. There's also a middle ground of custom protection schemes that, if deployed wisely, can create 100x more headaches to crackers vs the effort spent on coding them in. Not that hard to do, but these aren't drop-ins, obviously.

Also, closely related, is the question of how the licensing works. Previously, most of the shareware used completely offline licensing using "keys" that were either hardcoded into the program or verified algorithmically (read, with elaborate checksums and such). This caused an emergence of keygens and it also fed credit card fraud with people smash-n-grabbing keys in bulk and then published them for the street cred. Surprisingly, a lot of shareware still uses this method and they still bitch and moan about the consequences. The alternative, obviously, is to use online activation. That is, what is sold is an activation token that can be swapped for a machine-specific license, via an exchange with the licensing server. This nearly completely eliminates the CC fraud and it allows for finer control over licensing. There are some drop-in solutions for this, but all of them are really quite basic and almost universally suck. However, the good news is that is fairly simple to roll out your own online licensing scheme in a matter of few work-days (assuming you know a bit of web backend and frontend).

Handling taxes (VAT, sales tax) when you are selling worldwide is a nightmare. That is why many vendors pay the extra to use 'full fat' payment processors, rather than Stripe.
Stripe can handle sales taxes.

Also, it's worth checking with the accountants first before taking on a role of a tax collector. When yet another random country demands a sales tax on purchases made by its citizens, it's just a spherical pony in a vacuum. Best to first check if their demands have merit.

>Stripe can handle sales taxes.

if so, that is a recent development.

> There are some drop-in solutions for this, but all of them are really quite basic and almost universally suck. However, the good news is that is fairly simple to roll out your own online licensing scheme in a matter of few work-days (assuming you know a bit of web backend and frontend).

I wouldn't say all of them suck. But that's because I built one [0] for the sole reason that, back in 2016, I too thought all of other ones sucked.

[0]: https://keygen.sh/build-vs-buy/

> https://keygen.sh/build-vs-buy/

This is inaccurate and misleading.

The calculator assumes that there's no cost to integrating with your system. It also assumes that the developer is salaried, which is almost never the case when it's a single-person shop.

The amount of effort required to learn your system, to do the integration, to test and to support it is absolutely on par with the time it would take to make a simple licensing framework from scratch. Except that the latter doesn't create an external dependency for a critical part of customers' experience.

This is all from a perspective of desktop software vendor. Perhaps things are different when your service is used for WP plug-ins or web apps, but for desktop apps - IMNSHO - the value of it is fairly low.

> The calculator assumes that there's no cost to integrating with your system.

Thanks for the feedback! And that’s correct, but I think you misunderstand the calculator. This is for the cost of the licensing server alone, not the integration into a software application, which will of course cost additional time/money either way. Regardless, the real build vs buy savings in almost any third-party are in often forgotten long-term maintenance costs.

> It also assumes that the developer is salaried, which is almost never the case when it's a single-person shop.

If you don’t have a salaried developer, or at least have an average spend per-year to be able to input (even if it’s yourself at an hourly rate), then you likely aren’t my target market. And that’s totally fine. One-person shops like to unnecessarily build things in-house because they typically value their time at near-zero. They’ll spend weeks building something they could have paid $19/mo for. (Which is fine -- they churn more often and require more support, in my experience.)

> The amount of effort required to learn your system, to do the integration, to test and to support it is absolutely on par with the time it would take to make a simple licensing framework from scratch.

Keyword here would be “simple.” In my experience from running the business for nearly 6 years, most licensing systems aren’t simple. And if they are, they likely don’t even need a licensing server in the first place -- just do signed license keys.

I have testimonial after testimonial of the opposite conclusion -- that the API saved significant time and money -- especially for the long tail, years after integration.

Unless your licensing system is incredibly simple (and in my experience they rarely are), there’s money to be saved in not building and maintaining it in-house.

If you’re the developer, I repeatedly tried to contact you to ask some questions. Since i never heard back, and I didn’t like the other options, I too ended up rolling my own.
I am. That’s very atypical for my support, and I sincerely apologize for that. Searching for your emails landed me in early 2020. And it looks like I forgot to respond to you. That was a busy time. After 4 years, I was in the process of quitting my full-time job to go full-time on Keygen, and I was in the middle of moving all support from Intercom to email. So my email was kind of flooded and I often forgot to respond to some discovery emails. It’s no excuse, but I figured I’d share. Again, sorry for the poor experience.
No problem! My apologies for sounding angry, I am not - I can understand how these things happen. I am quite interested to know that you're still keeping up with it, and I may be interested in trying out keygen again.
Why bother with piracy "protection"? You're not going to keep ahead of dedicated pirates. Focus on features and bug fixes rather than going after non-customers.

Every iota of effort spent going after pirates is effort not going into servicing existing customers or getting new ones.

99.9% of pirates can only nop ifs. The remaining percentage are the pros that either work on paid basis or go after high-profile apps that give them visibility and status. A mildly well-protected battery indicator will remain intact for a very long time, simply because people who'd want to crack it, can't, and people who can crack it, won't.

PS. Having cracked versions floating around affects SEO ranking of the master website, it affects sales and overall perrception of the product and, as importantly, it also hits support with a lot of bogus bullshit from people that aren't even customers. So for every iota one may "save" by not adding protection, they would spend multiple iotas dealing with the consequences.

As an electron developer I used NodeJS to implement a custom licensing system on top of JWT. My app "registers" a computer (fingerprint) with the server. The server can grant licenses where it signs a JWT with a secret key, and the client can verify using the public key. The client will enable features based on the JWT payload. Again... it's crackable, but it's serviceable and I make my software affordable through either a one-time license ($147) or a monthly subscription ($14.99/month).

I try my best to make it "worth it" to purchase the app. Label LIVE is a super- boring business label printer app so it takes a "special" person to 1) need the app and then 2) decide that they'd save more money by cracking it than just paying for it. If I 10x my pricing (as my competition does), then I would fully expect users would find it worthwhile to crack and distribute.

There are payment services which were originally made for desktop apps, with built in support for license files, downloads after payment, etc. I'm using MyCommerce (ex ShareIt), but also had good experience with Avangate - which was later purchased by 2checkout, and now renamed to Verifone.
Shareware (at least back in the day) almost always had a free component. For a game that might mean levels 1-3 are free and then you buy the full game for the whole thing.
Probably not the answer you're looking for, but the Mac AppStore is the only thing at ever truly worked for me.
Thats nice to hear, seems like a big market to me and under serviced, I'm just about to release an app on there so fingers crossed.
Why not eliminate that and just make it FOSS?
There are a lot of shareware or shareware-like desktop Mac apps that I have been relying on for many years. The programs continue to be updated regularly and don’t seem to be hobby projects, so I assume the developers are supporting themselves. Some are sold through Apple’s App Store, and some are sold directly by the developer.

Here are the ones that I use most and the companies that develop them:

Fission; Audio Hijack (Rogue Amoeba): https://www.rogueamoeba.com

Amadeus Pro (HairerSoft): https://www.hairersoft.com/index.html

Transmit (Panic): https://panic.com

Jedit Ω (Artman 21): http://www.artman21.com/en/

BBEdit (Bare Bones): https://www.barebones.com

GraphicConverter (Lemke Software): https://www.lemkesoft.de/

MacOS seems to be a good place to be if you're making paid desktop software. There's a lot of Windows utilities that are freeware and of course Linux is loaded with FOSS.

I only run macOS on my laptop and yet it's where I've spent the most money on various utilities.

MacOS-only software I've paid for: Bartender, BetterTouchTool, Forklift, SoundSource, Pixelmator Pro, iStat Menus, Nova, Alfred, DaisyDisk, and some other things I'm sure I'm forgetting.

The state of affairs is that Mac users are more willing to pay for software than Windows users, but not by a factor of 10, which is the Windows/Mac desktop market share ratio.
This wikipedia page shows that it's a bit under a factor of 5 difference between the two (based on StatCounter data): https://en.wikipedia.org/wiki/Usage_share_of_operating_syste...

But as you can see later on in the entry, StackOverflow's survey shows the numbers as being much closer. So your target audience matters. I'd expect that software developers aren't the only set of users where the ratio is far off of the average.

A large fraction of computer games are mostly still "desktop apps".

Lots of single person indie success stories there, such as "Papers please" or "Stardew valley".

Seminal example in this genre is probably Minecraft (which of course expanded to a team before acquisition).

I don't know how much longer this will last given stadia and xcloud. I've been playing on them and if they improve over 5 years' time, I could really see them becoming the standard.
Stadia won't be around in 5 years, it's a Google product.
I've read that they're white labeling the tech. So it won't be "Stadia" but it will probably still be around.
Webgility is an example of a SaaS company that offers a desktop or cloud-based version of their product.

Quickbooks for that matter as well.

I have a side-project (https://batterybarpro.com) that's a native Windows application. It brings in $400-1000 a month.
This kind of small tools is what I've been thinking of doing lately. It should not consume much of your time after you deploy it and there's not need to have a server and dealing with people's data..

Small question: how do your users find your product?

When I first started, I was posting about it in various laptop forums and running Google Ads. Having a free version was extremely helpful (there are hundreds of thousands of free users). It spread via word of mouth pretty quickly.

After a while, I just stopped all marketing efforts and now it's all just word of mouth/google search.

Have never heard about this but this looks awesome - Gonna throw this on my old ass thinkpad tonight!
This looks really cool, and I'm particularly impressed that it's a one-time purchase for lifetime access and you're still able to make this much off of it (and at a very reasonable price point). Congrats all around.
happy customer here :)

Best part: it also shows battery health really well with discharge charts and can track multiple batteries (if you still have a laptop with which you can swap...).

Hi :) I've been a long time user of Battery Bar Pro. Thank you! Its one of the first apps that I install on my new computers. What would be the best way to do a feature request/bug report?
You can use the Support Forum link on the homepage or on the purchase page there is a reference to my email address (in the bulk purchase section).
There's a small error in the Windows 11 warning at the top of the page:

> removed the feature the allowed for toolbars

Should be that, I presume.

IMHO you could very easily raise the price to $15 and probably not lose any sales. Having a low price still has to overcome the concern of trusting your credit card to some website. Once someone has overcome that hurdle, 8 vs 15 is a tiny difference. I had software I sold at $25 originally and eventually had it at $99. Also, price signals quality.
I work on a desktop budgeting application. I love that it's desktop-only (and so do the users)! It doesn't earn a living (yet), but it makes more than enough to cover expenses.

[0] https://www.budgetwithbuckets.com

Your application looks really nice. What framework are you using for the UI?
I'm downloading now, this looks really nice.
I just tried this out this week! It isn't going to work for my needs (I like having payee names to track past expenses), but it looks like great software, and I wouldn't hesitate to recommend it to people.
> Buckets includes some terrific extras such as really fast Amazon why-do-they-split-every-purchase-into-a-hundred-transactions reconciliation.

magnificent! I hate reconciling my amazon -- and recently walmart grocery pickup -- purchases for this reason.

Why would I want to sit at my computer to manage my budget instead of being able to access it anywhere? I always have a “computer in my pocket”.
Some things are just a pain in the ass to do on a mobile phone I guess. Budgeting sounds like it would be.
I do this every day with YNAB (even though they have a mobile app). Takes about 5 minutes. So much easier on a computer than on a tiny phone.
I use Google sheets for my budget - from my phone. I can’t remember the last time I actually used my personal computer for anything. I use my work computer for work and my phone or iPad for everything else.

What am I suppose to use when I’m out and about or traveling? I was on vacation when I got paid in December. The only thing I had on me was my phone.

(comment deleted)
As a person who painstakingly used GnuCash for multiple years - no, no mobile app works good enough. It is always or too cumbersome, or too simplified.

And yes, it is almost always easier to punch in numbers on the desktop.

Not a self-venture but my old team built desktop applications for the pricing department at a very large airline. They did everything from recommending price changes to loading ad hoc adjustments and keeping track of pricing strategies. All in JavaFX. That team split and is making most of them web-based now but the desktop apps still thrive in the meantime.
I/my company have active Windows desktop application as a product with about 50,000 clients. Not making me rich but in combination with the products I develop for clients I am doing ok.
I have worked professionally for a company that made desktop apps for film production (VFX), and also internally for studios in their R&D departments and those were also almost entirely desktop based.

Outside of professional work, I’ve jumped right back in to Ham radio over the Corona times, there are lots of desktop applications in use there (DSP mainly) but usability and support for hardware (both devices, and platforms) is hit and miss and I have a few ideas for making my own versions as side projects. Several of these are paid - so do you have any hobbies or niche domains you’re knowledgeable about that you could explore?

It is interesting that there are many ham apps that are single person developed and closed source, but free to download. It's weird how open source is not ubiquitous in that hobby. This leaves lots off ageing, quirky software out there.
I'm not sure how related it is, but the average age of people involved in ham is pretty old. I went to a few meetups near me and the average person there was at least 60 years old. So it might be that these apps are made by an older generation with different norms around open source. Could just be an EE vs CS thing too, since open source is less common the EE world.
Kinda have to be desktop based if your working with VFX levels of change the data - the storage solutions those types of places need to invest in are insane!
Atomic Edits[0] is a desktop app that helps YouTubers (like me) automatically remove silence in videos. It went viral on Reddit[1] but I realized later that building a video editing app with Electron (and not C++) was a bad choice. Library support video/audio editing was lacking.

Recut[2] is an app that basically does what Atomic Edits aimed to do, but actually succeeded. I think it's because it was a native Mac app which meant it had access to better libraries for editing videos. (That or I gave up too early on Atomic Edits.)

Orbital[3] is desktop app that allows you to search, filter, preview video files on your computer like YouTube. I posted on some subreddits and it had potential but I realized it wouldn't be enough to sustain me. It could've worked as a side-project (if I was working as a SWE) but being as my main source of income was from YouTube ad-revenue, it wasn't worth it.

VideoHubApp[4] is a desktop app that does what Orbital aimed to do and actually earned a couple thousand dollars. It was started a few years earlier and was built with a similar tech stack.

All that is to say, I made desktop apps that had potential, but didn't have the funds to see them to completion. Of course you could say it would be different if I had a SWE job + funds, but then I may not have had the time to learn React + Tailwind + Electron and complete these apps.

[0] https://github.com/SuboptimalEng/atomic-edits

[1] https://www.reddit.com/r/webdev/comments/ohbl6i/i_made_a_des...

[2] https://getrecut.com/

[3] https://github.com/SuboptimalEng/orbital

[4] https://videohubapp.com/en/

Related question. How to start to develop desktop applications? In contrast to web applications there are not many resources out there and most seem outdated.
I've not worked on a desktop app in a while but when I did, maybe 4 years ago, I found a lot of resources googling "MVVM C#" and following tutorials there. Microsoft tends to have a lot of decent tutorials on WPF Gui development. More recently I've been playing with C++ and Qt which has decent documentation too, but to me is far more complicated than Visual Studio and WPF. Most C# textbooks tend to have sections on GUI development too.
Download Visual Studio Community Edition and go to New Project -> WPF project and start learning C#.

That's probably the path forward with the best chance of overall success.

This as opposed to cross-platform? Any general use case or for a targets Windows user base?
Afaik .net is cross-platform nowadays - Windows dev tools are likely to be most approachable though.
I'm answering in terms of what I know best. I, personally, don't see the point of supporting non-Windows desktops. User base isn't large enough for me to bother.
my cross-platform DAW, Ardour, has as many Linux downloads as Windows downloads (on the order of 5k per month). Is it the DAW niche? Or are you possibly wrong about this?
It's always going to be application-specific. In my case, the kind of software I'm likely to write is going to have a majority-Windows user base, at least in the US.
Use Electron and leverage your web skills. Learn as much as you can about the architecture before you start. For example, an Electron app has two main processes: main and renderer. The main process is like your backend API and the renderer(s) are the browser windows. Once you get the hang of it, the world opens up and you can really start cranking out code/features by bending the entire architecture to the will of the developer... until it breaks, but then you get to fix it!
Does it make you feel better to make others feel worse?
What an incredibly rude thing to say to another person.
Yeah, could not sell a single copy of the software I was doing back then.. I’m still trying to come up with something. Tried web apps but hadn’t much success there as well.
Also interested in folks doing this for their enterprise market and any available analysis on how to approach that market.

My perspective is Enterprise is hard to hit with SaaS. It's also hard to build an integrated (AD/Network/Data/Files) desktop solution. It still seems more viable to start with a standalone, offline, Desktop solution that individual enterprise employees might consider trying / e.g. something like an app that replaces excel with better efficiencies. Maybe while building some SaaS-like component (advanced processing in cloud, API integrations, etc) that still opens the door for non-enterprise users. Ultimately while building a portable/cots cloud based solution. Further letting you evaluate ways to pivot in either SaaS or COTs in the future.

Im still not confident that an MVP approach shouldn't just always accommodate seemless accessibility (SaaS) for a larger general market, and that I shouldn't discount enterprise requirements for non-corporate LAN user bases.

For reference I'm taking my shot with https://github.com/wailsapp/wails (webview2 supported on Windows) and https://github.com/mozilla/pdf.js for a PDF processing related use case.

Wails because I imagine extensive Golang based services (preference/experience) in any cloud env. .NET would be my other approach for O365 based integrations.

Rust has something similar to wails, https://github.com/tauri-apps/tauri . Then there all the traditional native vs cross-platform methods.

No approach, or cross platform framework, really seem quite right. But I figure time and money would be the important factors in any serious avenue I want to take things.

ha, I'm doing the same on Mac! Reach out, maybe my (hopefully portable) backend/pdf module could help!
Ha, cool, thanks for the insight. I'm am curios about potential collaborations so ill reach out soon
> It still seems more viable to start with a standalone, offline, Desktop solution that individual enterprise employees might consider trying / e.g. something like an app that replaces excel with better efficiencies. Maybe while building some SaaS-like component (advanced processing in cloud, API integrations, etc) that still opens the door for non-enterprise users.

This is currently my approach -- not making a living (yet hopefully) -- but will report back soon. I have a baddie of a productivity tool that can fragment features to a few pay per use web APIs that I'll package with a front end for non-enterprise.

A slight tangent: It's very, very challenging to enable collaboration in these types of environments. Magic Wormhole [0] has been an interesting solution I've wanted to integrate, but haven't yet.

[0] https://github.com/magic-wormhole/magic-wormhole

I used to until recently. A LOT of active trading software is still traditional desktop applications for various reason and a decent niche. heavy simulation software is another
I'll add music making software. I don't make it but it's been my only hobby since the pandemic started and I shelled some money on desktop apps that can easily be coded and maintained by a single dev, like librarian software for hardware synths and some VSTs to use in Ableton.
I do. Data management and visualisation for local data store. This stuff is private and can not really go into cloud.

Was using Java Swing until very recently. Switched to Kotlin JS in browser, not sure it can count as desktop anymore.

How have your experiences with Kotlin JS been?

I've been considering it for similar type of desktop app development, but haven't dug deeper yet. Mainly because I already have some experience with Rust and have been considering options in this space before venturing elsewhere.

It is good if you want to avoid javascript, it is programming on web, but with solid Java tooling. My main point is to have the same language on front and backend.
Have 4 macos apps that I have built about an year ago. Getting 600-1500 a month.

https://loshadki.app/

Curious to know how you approached advertising/marketing. How did people find your apps? How much effort and money was spent on finding customers?
I know I was just misunderstanding, but for 60 seconds I was skimming through the comments trying to grasp the gist of what software for 'living buildings' was all about, I thought it was some ecological concept. Anyway, I earned a living making desktop software until 2016; since 2016 I make Revit desktop plugins.
I work for a company that sells a niche desktop app for mining companies, called Aegis.[1]

Even if the company is planning to implement something web related in the near future, the business is on the desktop and there are no plans on taking it entirely to the web anytime soon. Mining companies prefer it that way, as internet connectivity is not something you can reliably find on site.

[1] https://iring.ca

Yes and no. I'm an employee so it doesn't really matter, but my side-project desktop apps pay well enough that I could live off them if I go for a student lifestyle (no pricey events, no restaurants, cooking yourself, cleaning yourself).

It was a long way. I started in the Pro Audio niche and initially supported Windows, Linux, Mac. Over time, I learned the hard way that supporting Apple's constantly changing OS is very expensive, plus Mac users tend to act the most entitled when stuff doesn't look or feel like their native OS. And Linux just never sold a license, instead I got lots of Open Source bitching. So eventually, I dropped Linux and Mac support, doubled down on the new Windows APIs and then things got nicely profitable. Price is one-off $299 for the regular app kit with perpetual updates (so far). People use the apps for making movie sound effects.

Apple like to nuke their developer ecosystem from orbit on a regular basis. It is quite tiresome. Qt protects me from it to some extent, but cross platform frameworks have their own issues.
cleaning yourself

I did not realize this was a mark of the student life. Who knew I was still a student at age 49?

I, too, am a couple of pay raises away from paying someone else to clean me
TBH this is not a pay issue, no matter whether I can afford it.

I would hate that a stranger enters my house to clean, and I would hate it even more when I was not at home.

The more I look at the parent's list of "student" activities, the more I realize I am a "student" in every way, despite my "lead engineer" title!
As a developer mainly on Mac, which windows APIs are you referring to that are new, and how do you normally distribute your app, is it through a Windows store or independently?
Dxva, the windows dx12 multimedia API

Separate store and fastspring.

Thanks. What Windows GUI framework do you recommend for someone coming from mac? Or is there only one main framework?
In the audio world, everyone swears by JUCE.
what Microsoft fat client technology are you using?

the current problem for me with Microsoft fat client is there are too much options and no clear one that Microsoft will support long term.

Yea, I develop a hobby project targeting desktop Mac (Objective C GUI, C++ business logic) and I’m not sure what Windows technology I should use should I ever decide to port to Windows. There are so many and they are all in various stages of unsupported. C#? C++? .NET? Win32? MFC? WPF? XAML? WinForms? UWP? Maybe just give up on trying to read the future and use Qt. Fucking madness!
I faced that question over a decade ago, and after looking around at my options, I went with Qt. No regrets. Sure, it had its flaws, and sometimes the "not-quite-nativeness" shows through, but it worked pretty well and gave me support for all 3 major desktop systems. And although someone else has long since taken over maintenance of the application in question, it's still going strong (and still built with Qt).
C# 2.0 WinForms, or Win32, for simple run-anywhere tools with no dependencies.

Qt 5+ for anything with any level of complexity. Windows has already given up on 'native' UI.

JUCE for audio plugins.

Don't bother with all the 'modern' pretend-windows-is-a-touchscreen-os frameworks.

It's a mess.

If pressed I would say WinForms is the most practical choice for most apps today - even though it sucks, even though it's ugly. It's actively worked on (unlike WPF) and it lets you use the latest .NET version.

WebView2 (better Electron) is probably where most Windows development is going in the future, the Windows team is investing a heck of a lot more in it than other technologies.

C# on .net 6.0 with either WinForms or WPF.
Do not use WPF. WPF is dead. If you don't want to use WinUI, go with WinForms.
WPF isn't dead, it's done.
It's never looked finished to me, it was abandoned at birth.
Beside all the sibling comments, avoid WinUI, regardless of 2.x or 3.x variants.

They deprecated .NET Native and C++/CX and are yet to provide any tooling that compares to them.

.NET Native is stuck in C# 7, while C++/CX got replaced by C++/WinRT with the argument that it is ISO C++ friendly, when in reality it offers the same tooling as using Visual C++ 6.0 with ATL back in the days before .NET came to be, but their developers are so stuck in COM pre-historic tooling that they don't acknowledge that.

Apparently WinUI 3.0 would be the future, with the merge WinRT and Win32, however issues pile up exponentially and even Windows 11 is making use of the deprecated UWP, as the team cannot keep up.

Since MAUI depends on WinUI 3.0, it is yet another reason why it keeps being postponed.

Windows on 2022 with Microsoft stacks MFC (yes really, much better than C++/WinRT), WinForms or WPF (eventually with C++ if required).

Otherwise Qt, Delphi or C++ Builder if enough budget, or PWAs if possible to do so.

We're talking Microsoft here, they will probably be patching any crap they put out 10 years from now to maintain some enterprise app nobody knows how to update. Even when they gave up on Silverlight it was supported for almost 10 years afterwards.
Directx for everything to make things fast and to get nvenc hardware encoding.

Imgui and juce are great frameworks.

(comment deleted)
Inside R&D organizations there are plenty of groups building desktop apps for internal use. We have a ton of Forms, WPF and some Qt apps we use for R&D and manufacturing purposes. Also lots of services and other non-GUI stuff.

For side-business it'll be a lot tougher than it was when I started 30 years ago.

I make Erp software with WPF. Yes you can still earn money doing that.