Settings

Theme

Are we losing enterprise desktop?

14 points by psydvl 3 years ago · 21 comments · 1 min read


You can be hired on frontend, and that means you write client-side code, but with JS (or others *script)

You can be hired on the backend and will write server-side

You can be hired on mobile and will write Android/iOS code

But what do we have now on the desktops?

1. Electron-based, CEF-based applications written by frontenders or full-stack developer

2. CLI, TUI, or Qt/wx/gtk utilities written by backenders

3. A cross-platform application written by mobile developers (flutter, kotlin compose mpp)

4. Really native programs, oh, never seen them, or maybe on macos only :(

First ones - optimized to be run in a browser, so keeps the browser with them, and voilà, it's become unoptimized and big

Second - we have better-optimized code, but an interface can be improved or should be written from zero, however, those guys never work with designers and...

Third and fourth variants - perfect, but almost never seen them in enterprise

But businesses take care mostly for money and we get electron or CEF(spotify, geforce now, steam) and memory leaks and etc.

So, we have no such thing as desktopdev or desktopend (deskend) software in the enterprise world, and I hate it.

leros 3 years ago

I know some people that work in industrial control (eg nuclear power plant control systems). Obviously their customers don't want to use a SaaS service hosted online. They've always had onsite servers with desktop applications. Even they're moving to web applications. Still hosted on site, but webapps served locally. The issue they had was hiring people who could (or wanted to) build desktop applications. Switching to modern web standards for their apps really eased their hiring.

  • jollyllama 3 years ago

    Yes, I have worked at a place like this. SCADA and other controls is like an untouched island compared to any other industry I have worked in. It can be a struggle to get people on board with web applications there.

    • physicsguy 3 years ago

      There’s such a diversity of systems it’s easier to pull data out of the SCADA system and build genetic analytics normally. That’s the approach that’s happened in many industries anyway from what I’m seeing.

jollyllama 3 years ago

The problem with desktop is the stack isn't stable enough; constant updates and upgrades threaten to break all of your underlying dependencies. Server backend is the most stable stack, and that's one of the real reasons it's used so predominantly.

  • cestith 3 years ago

    It's also a real pain to do cross-platform correctly without some abstraction layer like Qt, gtk, Wx, Tk, SDL, OpenGL, Vulkan, or something. Do you really want to write a Metal app, an MVC app, an X app, a Wayland app, and then still be asked to make a web version of it for people on the go? Look at all the work put into Wine and Proton to get Windows games - perhaps the ultimate everyday example of optimized native code - to run on Linux.

    There are languages, UI tookits, cross-compiler sets, and RADs that make this easier. Qt, gtk, Wx, Tk, SDL, FLTK, and such happen to be among them. So are Flutter, Delphi (same code and RAD project on Windows, Linux, Mac, iOS, and Android), FreePascal/Lazarus (not identical to Delphi but a pretty close F/OSS alternative built around the same language and concepts), Xamarin, React Native, NativeScript, Felgo, Roslyn, GLBasic, BlitzMax, PureBasic, QB64 with Inform, Gecko2D, FireMonkey, JUCE, IMCROSS, Haxe, Webassembly, the JVM, CLR/.net Core/CIL, Scala, C#, F#, Clojure, ClojureCLR, Component Pascal, IronPython, IronScheme, PowerShell, Kotlin, Groovy, jgo, Visual COBOL (yes, really - it targets JVM), JavaScript, Raku, NetRexx, JRuby, Yeti, Fantom, JR, Pizza, and I'm sure many other tools wouldn't even exist if developing single-source applications for multiple platforms was easy with just a C or C++ compiler.

  • msh 3 years ago

    Ah, that cant be right. Maybe for some platforms/stacks, but a windows desktop stack using somewhat standard tools will be backwards compatible for ages.

    I have seen several companies using ancient windows apps for day to day work without issues. Personally I still sometimes use a somewhat complex GUI app that I last compiled around 2002-2003 with borland c++ builder without issues.

    • jollyllama 3 years ago

      Really? These don't require any updates to run on Windows 10, etc? If that's true, why are there still industrial and military users running Windows XP?

      • msh 3 years ago

        No updates at all. On one of the screens the buttons look a little bit off with modern windows themes but perfectly functional.

        This will ofc not be true for all applications, I am certain somethings break, esp if they depend on hardware drivers.

        If you check the blog "the old new thing" you can read about the crazy lenghts microsoft goes to for keeping backward compability.

bdcravens 3 years ago

Nothing new about this. Well before everyone had a smart phone in their pocket, enterprises were building client/server apps that targeted the browser instead of desktop apps.

ffhhj 3 years ago

Operating systems should have become our "web browsers" long ago. Apps as standalone browsers is backwards, these are a waste of resources and multiple security holes.

detaro 3 years ago

Outside the web and mobile apps, that Frontend/Backend split doesn't exist as you present it, so your categorization of 2) is pretty wrong.

ocdtrekkie 3 years ago

I would definitely say there's almost no desktop front-end work anymore: I still see plenty of enterprise software, but whether it's on-premise or cloud-based, the interface tends to be via the web browser.

closeparen 3 years ago

Enterprise desktop implies Windows. There is just not that much representation of Microsoft stacks in the consumer-facing or venture capital driven Silicon Valley tech scene. But I'm sure there's tons of these people working on Win32 apps in enterprise IT departments and legacy software vendors across the interior of the country. Not to mention all kinds of specialized devices (industrial automation, AV control systems, medical scanners, etc) have Windows computers in them and are operated through Windows desktop apps.

MisterSandman 3 years ago

The healthtech industry, from my experience in Canada, still primarily works on custom Java apps running on desktop. Most of them are trying to switch to the web too, though.

  • cestith 3 years ago

    This makes sense to me. Why keep a browser and a JVM up to date and ship your code, keeping it up to date? The alternative is just keep the browser with its JS and WASM VM up to date and trickle your latest code out automatically.

prmoustache 3 years ago

Ironically there is not a single electron app I ended up using in the long term. For all of them the web version ended up being superior: always up to date, running on a properly secured browser and on which I prevent any external tracking, ads, when I allow or not access to my location, webcam, microphone, etc.

jetti 3 years ago

There are many places that have desktop application development teams but the application(s) are internal only so it doesn't exist to the outside world. I have done desktop development with .NET at a couple companies and have been contacted by recruiters for other jobs for desktop software written in .NET.

  • kurupt213 3 years ago

    We have an ancient guy who delivers binaries compiled from pascal for one of our proprietary desktop programs

Ken_At_EM 3 years ago

We write user facing desktop software. Windows/Qt.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection