Live data from Hacker News

I'm done making desktop applications (2009)

kalzumeus.com

141–150 of 211 posts

Re: I'm done making desktop applications (2009)

#141
post #62

Earlier quoted context omitted.

Counterpoint: is the web browser not already fulfilling the "universal app engine" need? It can already run on most end user devices where people do most other things. IoT/Edge devices don't count here, but this day most of their data is just being sent back to a server which is accessible via some web interface. Ignoring the fragmentation of course; although that seems to be getting less and less each year (so long…

Yes. But it consumes at least 10x-100x more resources to run a web app than to run a comparable desktop app (written in a sufficiently low level language). The impact on people's time, money and on the environment are proportional.

> But it consumes at least 10x-100x more resources to run a web app than to run a comparable desktop app (written in a sufficiently low level language)

Does it? Have you compared a web app written in a sufficiently low level language with a desktop app?

Re: I'm done making desktop applications (2009)

#142

Almost all of Patrick's points are great if your software development goal is to make a buck . They don't seem to matter if you're writing open source, and I'd argue that desktop apps are still relevant and wonderful in the open source world. I just started a new hobby project, and am doing it as a cross-platform, non-Electron, desktop app because that's what I like to develop. The onboarding funnel: Only a concern i…

This blog post benefits a lot from understanding where the author was at that point in their career: They had gained notoriety for their writing about their Bingo Card Creator software, but were moving on. After this they went on to build Appointment Reminder, a webapp that grew to a nice MRR before being sold off. Both were nice little indie developer success stories.

I grew up reading his writings and learned pretty quickly to read them as "this is what I'm thinking right now in my life" even though they're written more as authoritative and decisive writings from an expert. Over time he's gone from SEO expert to $30K/week consulting expert to desktop app expert to indie SaaS expert to recruiting industry expert to working for Strip Atlas. It was fun to read his writings at each point, but after so many changes I realized it was better to read it as a blog of ongoing learnings and opinions, not necessarily as retrospective wisdom shared from years of experience on the topic even if that's what the writing style conveys.

So I agree that the advice in the post should be taken entirely in context of pursuing the specific goals he was pursuing at the time. The less your goals happen to align, the less relevant the advice becomes.

Re: I'm done making desktop applications (2009)

#143

Earlier quoted context omitted.

There are definitely a shortage of good GUI toolkits - making one is a huge undertaking. GTK is mediocre, as you discovered. QtWidgets is extremely good though, even if it is effectively in maintenance mode. Avalonia also seems good too though I haven't used it myself.

I've used Qt off and on, and it's generally worked as advertised. Although when drawing very short lines on a canvas way back when (~2004), it wouldn't do a great job and I had to hack in custom routines that did a much better job. For prototyping / one-offs, I've always enjoyed working in Tcl/Itcl and Tk/Itk - object oriented Tcl with a decent set of widgets. It's not going to set the world on fire, but it's pretty…

>Although when drawing very short lines on a canvas way back when (~2004), it wouldn't do a great job and I had to hack in custom routines that did a much better job.

QCanvas (or was it QGraphicsCanvas?) has long since been replace with QGraphicsScene, which is much more capable and doesn't suffer from pixelation issues.

Re: I'm done making desktop applications (2009)

#144

Earlier quoted context omitted.

This points to our failure as an industry to design a universal app engine that isn't a browser.

Remember Flash? The big tech companies felt a threat to their walled gardens. They formed an unholy alliance to stamp out flash with a sprinkle of fake news labeling it a security threat. Remember Livescript and early web browsers? It was almost cancelled by big tech because Java was supposed to be the cross platform system. The web and Javascript just BARELY escaped a big tech smack down. They stroked the ego of big…

As I recall, Flash and Java weren't so much security issues themselves, but rather the poorly designed gaping hole they used to enter the browser sandbox being impossible to lock down. If something like WASM existed at the time to make it possible for them to run fully inside the sandbox, I bet they'd still be around today. People really did like Macromedia/Adobe tools for web dev, and the death of Flash was only possible to overcome its popularity because of just how bad those security holes were. I miss Flash, but I really don't miss drive-by toolbar and adware installation, which went away when those holes were closed.

Re: I'm done making desktop applications (2009)

#145

Earlier quoted context omitted.

This points to our failure as an industry to design a universal app engine that isn't a browser.

> design a universal app engine You've reminded me of the XKCD comic about standards: https://xkcd.com/927/ Do you really want a universal app engine? If you don't have a good reason for ignoring platform guidelines (as many games do), then don't. The best applications on any platform are the ones that embrace the platform's conventions and quirks. I get why businesses will settle for mediocre, but for personal proje…

Please, for the love of all that is holy, not GTK.

Re: I'm done making desktop applications (2009)

#146

Almost all of Patrick's points are great if your software development goal is to make a buck . They don't seem to matter if you're writing open source, and I'd argue that desktop apps are still relevant and wonderful in the open source world. I just started a new hobby project, and am doing it as a cross-platform, non-Electron, desktop app because that's what I like to develop. The onboarding funnel: Only a concern i…

To me, I prefer desktop apps because I KNOW when I've upgraded - it either said "upgrade now?" and did it, or, in the olden days, I had to track it down, or I installed an updated version of a distro, which included updated apps, so I expected some updates. There are some things that NATURALLY lend themselves to a website - like doctor's appointments, bank balance, etc - but it's still a pain when, on logging in to "…

You touched on the one thing I hate most about infrequently used websites. The inevitable popup to "explore our new features." Hell no, I don't want to do that. I haven't logged on in six months, so I'm obviously here now with a purpose in mind and I want to do that as quickly as possible and then close the tab.

Re: I'm done making desktop applications (2009)

#147

Earlier quoted context omitted.

I've used Qt off and on, and it's generally worked as advertised. Although when drawing very short lines on a canvas way back when (~2004), it wouldn't do a great job and I had to hack in custom routines that did a much better job. For prototyping / one-offs, I've always enjoyed working in Tcl/Itcl and Tk/Itk - object oriented Tcl with a decent set of widgets. It's not going to set the world on fire, but it's pretty…

>Although when drawing very short lines on a canvas way back when (~2004), it wouldn't do a great job and I had to hack in custom routines that did a much better job. QCanvas (or was it QGraphicsCanvas?) has long since been replace with QGraphicsScene, which is much more capable and doesn't suffer from pixelation issues.

Probably. We paid thousands / year for the developer seat in our startup, and in the end, it wasn't great. I did manage to make the Tcl/Tk event loop and the Qt event loop work together, so we could have Tk windows inside a Qt app!

Re: I'm done making desktop applications (2009)

#148

Earlier quoted context omitted.

I've used Qt off and on, and it's generally worked as advertised. Although when drawing very short lines on a canvas way back when (~2004), it wouldn't do a great job and I had to hack in custom routines that did a much better job. For prototyping / one-offs, I've always enjoyed working in Tcl/Itcl and Tk/Itk - object oriented Tcl with a decent set of widgets. It's not going to set the world on fire, but it's pretty…

> I've always enjoyed working in Tcl/Itcl and Tk/Itk In the near future I need to lash up a windows utility to generate a bunch of PDF files from a CSV (in concert with GhostScript), with specific filenames. I was trying to figure out the best approach and hadn't even considered Tcl and Tk - with Itcl you might have just given me a new rabbithole to explore! Thanks! (...I think!)

I hope it works out! It's amazing how far Tcl/Tk has come since I "had" to use it as a wrapper around an X11 window back on an SGI Irix, using Tcl scripting to interface to an OpenGL backend. I think that was like 7.3.x or something in 1994. And it was pretty cool back then already! The team around Tcl is small, but dedicated and brilliant, IMHO.

Re: I'm done making desktop applications (2009)

#149

Earlier quoted context omitted.

>Although when drawing very short lines on a canvas way back when (~2004), it wouldn't do a great job and I had to hack in custom routines that did a much better job. QCanvas (or was it QGraphicsCanvas?) has long since been replace with QGraphicsScene, which is much more capable and doesn't suffer from pixelation issues.

Probably. We paid thousands / year for the developer seat in our startup, and in the end, it wasn't great. I did manage to make the Tcl/Tk event loop and the Qt event loop work together, so we could have Tk windows inside a Qt app!

There is a small business licence.

Re: I'm done making desktop applications (2009)

#150

Earlier quoted context omitted.

Web apps weren't so easy to make back then, so standalone apps were the norm. Shortly before 2009 a lot of the web apps were Java or Adobe Flash, and 2009 was part of the transition period where platforms were at war with that stuff but open-web alternatives weren't mature yet.

Yeah I know I was there -- also today's wasteful "open-web alternatives" wouldn't fly anyway, because I recall even during the XP era having min-specs of, like, 800mhz/512mb

Yeah, they were like "Flash is too slow" then the replacement was 5x slower
Post reply on HN