HACKER Q&A
📣 julosflb

Which technology for creating internal desktop application?


I'm working in a company whose business is not software development but still highly technology based. We need to create/revamp some small internal tools used by our engineers. What technology would you recommend in 2021? One constraint is that it shall be working without network connection. Another is the easiness of the framework such that occasional dev. can contribute. OS is windows.

I was thinking primarily about python/qt. Any advices?


  👤 nocubicles Accepted Answer ✓
C#/Winforms for sure. Use the Visual Studio template and go from there. When I first tried it it took like 10 minutes to figure out how to add some button, attach event to that click, display text etc. Just go from there.

👤 Jugurtha
>One constraint is that it shall be working without network connection.

Is the constraint about working without a network connection or an internet connection? Are the terminals connected to an internal network to access files, communicate?

>We need to create/revamp some small internal tools used by our engineers.

What's the goal of that revamping? What is wrong with the current tools?

How frequently will you be updating the tools, and how do you see rolling out new versions? What has been the workflow like for fixing bugs or improving the tools so far?


👤 neversaydie
Yep, C# and Windows Forms recommendation from me too. Excellent tooling, fine language, mature and straightforward tech, very popular over very many years so wide resources online.

WPF seems like a nice idea, but it's tricky to get into, has limited penetration/support, and it's never been very clear whether Microsoft have abandoned it or not (including to Microsoft, I sometimes suspect).

If it's a basic app, basic WinForms should do just fine.


👤 superasn
I know HNers will hate me for this but how about Electron with Vuejs?

You don't need access to network, have full access to file system, sqlite, etc and engineers for Javascript/HTML are dime a dozen so may not need to learn a new language. Also in case you need to switch to another OS it's cross platform by virtue and can be easily ported to web easily should the need arise one day.


👤 Horba
There's a reason why there are so many legacy Visual Basic .NET / WinForms projects out there...

👤 fiftyacorn
Does no one use Qt anymore? I used it a few years back and quite liked it

👤 thedevindevops
If your thinking is primarily Python, have you considered https://kivy.org ?

👤 Raed667
C# application, visual studio even has a drag-and-drop editor for GUI that you can link to your code super easily.