Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Ask HN: Which technology for creating internal desktop application?
8 points by julosflb on Jan 29, 2021 | hide | past | favorite | 12 comments
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?



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.


>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?


Application shall be usable without any network.

It is mainly about creating new tools, some of them currently existing as spreadsheet.

Update/fixing small bugs shall be doable by engineers that have basic coding skills. So the deployment shall be easy.


How have the current tools that need revamping been updated so far? Even if the "tools" in question are the spreadsheets, how do they update and share them?

How many users will you have to deploy that for? I'm asking these questions because you'll have a payload that has to find its way to disconnected environments. There will be updates that need to be rolled out as well, and you want to think about that.

I am a newly hired engineer, how do you provision my workstation, and how do you make the tool available to me?

A week goes by, and the tool crashes and stops working for me, how do I get that to you?

You get my bug issue, where do you do development, and where do you push your code and collaborate with your colleagues and get my opinion?

You fix the bug, how do you make the new version available to me, and I imagine to others as well? Will you bring a thumb drive given that my workstation is disconnected? Does that thumb drive do the rounds to others? How many people will use it, and how do we ensure the payload we're using is the same you built?

Will you be shipping the whole thing or do you have to do incremental diffs?

Have you gathered the engineers you're building for and what were their thoughts on a workflow that would make sense for them and not get in their way?


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.


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.


Electron is cancer, though. 1990s performance on 2020s hardware. I'd rather make my desktop GUIs in the Godot game engine.


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


Yep, no matter what, when I need to create a lightweight desktop app, I always come back to Windows Forms. Lazarus/FPC get brought up in these threads a good bit too, but I still prefer .NET because the ecosystem seems more active.


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


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


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




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: