The Lounge is rated Safe For Work. If you're about to post something inappropriate for a shared office environment, then don't post it. No ads, no abuse, and no programming questions. Trolling, (political, climate, religious or whatever) will result in your account being removed.
We could make long strides by simply using what we've got in much more sensible ways than we do!
I regularly get into discussions with CLI affectionadas (read: Linux people) who insist that workin in a CLI is so much faster, sometimes they say "streamlined", than a GUI. To illustrate it, they pick up some terribly designed GUI where you have to jump from tabcard to the other, type in by hand a word for 1-in-n selections, it remembers nothing of preferences, etc. etc. I have seen input fields tagged by the single-character CLI option letter, rather than a text indicating what the value represents!
Why should a software developer be bothered by learning anything in the application domain, about work patterns, terminologies and how things looked and are operated outside the computer? An example: When I needed a sound editor, I ended up on Steinberg Wavelab, and a number of my friends and colleagues screamed out: Why do you waste your money on that? Couldn't you use Audacity? (or Cool Edit or this or that) I force them down on a chair in front of my PC, and show them: To do so&so, here is how I do it in Wavelab ... And here is what I have to do in the system you argue for. To do this&that, here is WaveLab ... and here is yours. Wavelab was developed by people who know how the tools are used, which operations must be easily accessible, how the normal workflow is. That is why I chose Wavelab over the cheaper/free alternatives.
It repeats with all kinds of software. Photoshop didn't become the leader beacause of functional features (Gimp wasn't that far behind!), but because things "feel right" when you work in it.
Even document editing: MS Word is developed based on tons of logs of how the users work - where do they make mistakes? Where do they spend more time to do an operation strictly necessary? Which features are used most frequently and must be directly accessible? and so on. LiberOffice developers do nothing of that sort, and working in it feels much more clumsy. (And it is NOT "just because you are used to MSO" - I have several times demonstrated, like I did with Wavelab, how much more streamlined MSO is.)
The now historical "Common User Access" standard was what made Windows win the marketplace. Users felt at home, safe, they knew what to do even in a program they had never seen before. Standard controls were placed in standard locations. Application independent terms were consistent. There was one way of selecting one-of-many, displaying a directory tree etc. This won over technical quality by a huge margin.
When GUIs came to the *nix world, it was proclaimed "mechanisms, not policies". In other words: Every developer should do it his own way, not learning from others. The user should have no benefit from conventions and standards for how to do things, and which functionality to support (from cut&paste to adjustable text size). Why should we cheapen it by making it obvious what to do?
Linuxers seem to insist that the only possible way, even theoretically, to run automated jobs (take regular backup as an example) is through a 7-bit ASCII text script activated by cron. Selecting directories, setting up filters, exection plans etc. in a GUI - they have no clue that such things exist at all. That it is even theoretically possible.
So when they set out to make a GUI, they model it by the CLI, so that old CLIers can map their well known option letters directly onto a form. Sorry, that doesn't make a good GUI.
Bottom line: Let us not wait for anything new and shiny that will solve the problems automagically. Let us rather spend resources on making GUIs with the tools we've got to be as good as they can be.
That requires that we learn a lot about how the users think and work. You can't do it in the basement of your parents' house. You can't work in a software house delivering (the same?) tools to everything from fish farming to brokers to artists. You must go out and learn about the users and their needs. That is not the most prominent characteristic of developers of free and open source software!
For me, the big problem is not in views, data, and UI, but basically in interfaces in the communication between man and machine. Every day, when we want to bring our thoughts and ideas to a conclusion in our work, we are always slowed down. Whether it's keyboard, mouse, or whatever, the ideas in our minds can never be written, developed, and tried so quickly.
As non-English speaking, it took me 2 minutes to write that, get the syntax check over, and then post it! Everything so long only because of these not practical interfaces.
Something about which we often break our head:
"In the name of the Compiler, the Stack, and the Bug-Free Code. Amen."
Is it? every major browser supports WebAssembly. Several languages have tools that compile for it. No doubt there will be improvements over time, but it is mature enough today to take to production. And for MS-oriented folks, it will be mature enough after April 2.
It may take several years before we see an answer.
People look at me like I've grown a second head whenever I say I still prefer WinForms over any sort of modern UI, whether it's WPF (which affords more flexibility) or totally free-form HTML-based.
What I mean by that is that we at least knew the limitations of what we had to work with. With tools that allow us to create basically anything, people try too hard for their own good and get perhaps a little bit "too creative", and the end result is that nobody seems to be able to come up with anything that works well.
I'm taking a break from creating a file parser that's causing brain damage.
Scotsman moves to North America and attends his first baseball game..
The first batter approaches the batters' box, takes a few swings, then hits a double.
Everyone is on their feet screaming "Run!!!"
The next batter hits a single.
The Scotsman listens as the crowd again cheers "RUN!! RUN!!".
The Scotsman is enjoying the game and begins screaming with the fans.
The fifth batter comes up and four balls go by,
The Umpire calls: "Walk."
The batter starts his slow trot to first base.
The Scot stands up and screams, "Run ye lazy bastard, run!"
The people around him begin laughing.
Embarrassed, the Scot sits back down.
A friendly fan notes the man's embarrassment, leans over and explains, "He can't run -- he has four balls."
The Scot stands up and screams: "Walk with pride, Laddie!"...
I do all my own stunts, but never intentionally! JaxCoder.com
Go with the "The Malnati Chicago Classic" deep dish. One of the best pizzas on earth.
The Beer Prayer - Our lager, which art in barrels, hallowed be thy drink. Thy will be drunk, I will be drunk, at home as it is in the tavern. Give us this day our foamy head, and forgive us our spillage as we forgive those who spill against us. And lead us not to incarceration, but deliver us from hangovers. For thine is the beer, the bitter and the lager, for ever and ever. Barmen.
".45 ACP - because shooting twice is just silly" - JSOP, 2010 ----- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010 ----- When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013
Hopefully, otherwise it might end up like THESE[^]
Anything that is unrelated to elephants is irrelephant Anonymous - The problem with quotes on the internet is that you can never tell if they're genuine Winston Churchill, 1944 - Never argue with a fool. Onlookers may not be able to tell the difference. Mark Twain