3 ms·
I've still got VB6 apps running in the factory, that have required virtually zero maintenance in 14 years. I originally wrote them for testing during product de
by analog31 5y ago
I've still got VB6 apps running in the factory, that have required virtually zero maintenance in 14 years. I originally wrote them for testing during product development with the promise that "the dev team will write proper apps before we go into production." Famous last words. ;-)
Then along came VB.NET, and I switched to Python. The big epiphany for me is that I no longer lay out GUI's. I let Tkinter lay them out for me. My realization is that anything I do deliberately other than just a simple vertical arrangement of widgets is likely to make things worse. What VB6 was letting me do, was to create GUIs that are no better than most industrial Crapware.
I've also learned for the simplest things, not to make a GUI at all. People can modify some entries at the top of a text script and run it in the interpreter. At first glance, you'd think a GUI would make it easier, but people struggle with most custom GUI's anyway -- evidenced by noticing a sheet of paper at the work bench with handwritten instructions for using the software, whether it's something I wrote, or a professionally written app.
- gamblor956 5y agoYour "industrial crapware" survived for 14 years with basically no maintenance. Most software today can't even go a week without bugs. I think VB6 let you create some incredibly powerful, stable, useful programs, and everything you've done since has taken you further away from this ideal state. People can modify some entries at the top of a text script and run it in the interpreter. That is significantly harder for most people than just clicking on buttons.
- analog31 5y ago>>> I think VB6 let you create some incredibly powerful, stable, useful programs, and everything you've done since has taken you further away from this ideal state. That's certainly possible. My job has changed since then, so I'm no longer in a position to write that kind of stuff any more. My present "clientele" tolerates the Python ecosystem well enough.
- cxr 5y ago> I've also learned for the simplest things, not to make a GUI at all[...] you'd think a GUI would make it easier, but people struggle with most custom GUI's anyway -- evidenced by noticing a sheet of paper at the work bench with handwritten instructions for using the software This is an advantage that the Web browser has that is sadly under-appreciated and under-utilized (even from Web developers). Many traditional desktop GUIs and modern Web applications would be better suited for their audience if they were instead executable SOPs. Think: a manual for how to use a given system, except at the point in the instructions where it's describing a certain feature, or where it calls for a certain step to be performed, there is some on-screen affordance that allows the reader to take care of it right there—right at the spot they're already looking at. Some programming notebooks try to do something like this, but they usually get it wrong. Raskin seemed to have the same epiphany (albeit pre-WWW) and wrote about GUIs being a "dead end".
- analog31 5y agoMy team has been experimenting with this -- using Jupyter notebooks to document processes while also providing the scripts to implement those processes. Jury's still out. We haven't been doing it for long enough to know all of the possible pitfalls and ways of making it work better.