3 ms·
I would suggest a desktop app on the JVM - C# possibly if you have access to that and your customers care - but nail down the upgrade story. Web Apps immediate
by pnathan 10y ago
I would suggest a desktop app on the JVM - C# possibly if you have access to that and your customers care - but nail down the upgrade story.
Web Apps immediately invoke an entire side set of knowledge of sysadmin and management that, unless you're comfortable doing that - are a pain.
There are reasons to do web apps, but I don't think ease of operating or development are one of them.
- stephenr 10y ago> I would suggest a desktop app on the JVM Is this a joke? Or possibly a comment somehow posted from 8 years ago? Unless you're doing what Jetbrains do (and ship an embedded JRE) relying on Java is adding a barrier to entry on top of "wtf, java? it's 2016 not 1999". In my career i've had reason to use a small handful of jvm desktop applications. In every case, it was because there is no good alternative, and they were used in spite of being jvm based - if a non-jvm alternative comes along, it gets an instant boost in any comparison, because it isn't tied to the jvm.
- MarkMc 10y agoYeah desktop Java gained a bad reputation because of a bloated JVM and poorly-designed Swing interface. However, if you ship your own JVM and use SWT instead of Swing, most of the problems with using Java on the desktop go away. stephenr - maybe the reason you've only seen crappy Java desktop applications is because you didn't recognise the good ones as Java? For example, here are screenshots of my Java desktop accounting application I've been developing for 9 years: Mac: http://www.solaraccounts.co.uk/images/screenshots/invoices_mac.jpg http://www.solaraccounts.co.uk/images/screenshots/invoices_m... Windows: http://www.solaraccounts.co.uk/images/screenshots/invoices.jpg http://www.solaraccounts.co.uk/images/screenshots/invoices.j... Java with SWT uses native widgets and makes it easy to call platform-specific UI code, so the result can be almost identical to a native application.
- pnathan 10y agoNo. I have had good experiences developing JVM apps and then using them. Age of technology has nothing to do prima facie with quality. If you're interested in shipping a reliable desktop application, you'll take the time to handle the runtime and the associated dependency chain. Similarly to the web, you have to understand your system to do the job well. Unlike the web, you don't immediately confront distributed system operation and maintenance problems. And, finally, I'd actually suggest Clojure/seesaw for the mode of desktop GUI development, not Java/Swing. And, of course, the customer doesn't care whether you hand-crafted it with magnetic tweezers or used Node 9 Ember Rock Stars. They just want it to work, and work reliably.
- stephenr 10y agoI wasn't suggesting java's age is why it produces terrible desktop apps, I was referring to its former "glory days" of common usage - these days it's much less common for desktop apps in my experience.