Jump to content

THE GUI SHOULD BE BETTER

If you ever wanted to know all my thoughts on the GUI, here you are! This has honestly been brewing in my mind for decades and while this video took way too long to make, it’s an accomplishment for me that I was able to put this into something coherent. I’m really hoping this leads to somebody bestowing GUI enlightenment upon us, though I’m not betting on it.

This post also doubles as a thread for people to post any helpful information regarding my GUI quest at the end of the video. Thanks in advance for anyone who finds some answers!

  Reply to post

Recommended Posts

And the CLI could be a lot better as well, now it mostly is unstructured text that people use common UNIX tools on (like grep, sed).

Some of the alternatives which provide a more structured approach to the CLI are PowerShell, NuShell, jc and probably others I don't know of. You can read up on the Monad Manifesto which is the design document of PowerShell

https://devblogs.microsoft.com/powershell/monad-manifesto-the-origin-of-windows-powershell/

 

Edited by dnl12 (see edit history)

Share this post


Link to post

After watching the video I went into some kind of fey mood and spent hours piecing the closest thing to my ideal desktop GUI together. also did some windows changes using some patchers i found. it changes the workflow and enjoyability of the whole thing enough to where i say ti was a day well spent. 

EDIT: I should mention that its Windows 10 version 1909, as my windows hasn't updated to 2004 yet, nor do i think it will on its own. I have a button (to the right of the recycler) that makes desktop icons appear. The rest of the buttons are Bangs, or one click shortcuts of some kind. Hovering over some objects provides some detailed information, but most important information is available at a glance. 
 

p7R2YY1kK8.png

-

Edit*: This redundency has been removed after some ez script cleanup.
image.png.5088bfb23b2a013c2fa66dbcffb706f1.png
 

Edited by IVSTINVS (see edit history)

Share this post


Link to post

Anyone who understands GUI can explain to me why the keyboard and the mouse are always treated as completely different entities? Like, really, are there any hotkeys that mix mouse buttons with keyboard keys? I never found anything about that and I don't see why that'd be a problem.
Like say, you want to bring your navegator up, so you hold the left mouse button and type C or whatever...wouldn't that be rather intuitive?
This part of the video specially made me remember that.

Share this post


Link to post
19 minutes ago, Blindfolded said:

Anyone who understands GUI can explain to me why the keyboard and the mouse are always treated as completely different entities? Like, really, are there any hotkeys that mix mouse buttons with keyboard keys? I never found anything about that and I don't see why that'd be a problem.
Like say, you want to bring your navegator up, so you hold the left mouse button and type C or whatever...wouldn't that be rather intuitive?
This part of the video specially made me remember that.

in most xOSs , drag+ctrl = copy , drag+shift = move, drag+alt = create shortcut

Do you mean these kind of things?

Share this post


Link to post
1 minute ago, kerdios said:

in most xOSs , drag+ctrl = copy , drag+shift = move, drag+alt = create shortcut

Do you mean these kind of things?

Yeah, like that, mixing up the two. Tho these shortcuts are kinda obsolete tbh.

Share this post


Link to post
57 minutes ago, Blindfolded said:

Anyone who understands GUI can explain to me why the keyboard and the mouse are always treated as completely different entities? Like, really, are there any hotkeys that mix mouse buttons with keyboard keys? I never found anything about that and I don't see why that'd be a problem.
Like say, you want to bring your navegator up, so you hold the left mouse button and type C or whatever...wouldn't that be rather intuitive?
This part of the video specially made me remember that.

FL Studio, Blender, Inkscape, GIMP, Krita and other creative workflow apps that use the mouse a lot use a lot of modifier key+mouse button shortcuts. In a lot of Linux desktop environment or window managers, you can do alt or meta and left click to move windows around without using the titlebar or the same with right click to resize windows.

Share this post


Link to post
5 hours ago, Ross Scott said:

To the "just use CLI / keyboard" people.  I may put this in a followup video, but I think I realized what the issue is.  I work a lot in multimedia.  I'm editing images, audio, video, doing web browsing + I tend to be visually oriented.  By all means prove me wrong, but I'm guessing this is all stuff you don't want to do with the CLI / keyboard-only interface. 

 

My guess is the biggest proponents of it are coders.  So for you, the times you need the mouse could be in the minority, so it makes sense for you to push the keyboard as far as you can.  For me, unless I'm typing emails or scripts, it's reversed.  The times I need the KEYBOARD are in the minority, since so much of what I do relies on visual manipulation, which isn't the keyboard's strength.  Even then, I'm hardly in love with the mouse.  I wasn't kidding about wanting that Minority Report interface for video editing.

 

So before somebody else tells me to buckle down and go CLI, maybe consider the last time you edited pictures / audio / video using only the keyboard to better understand where I'm coming from.

You're absolutely right.

 

I can programmatically edit video, pictures or audio if the task at hand is repetitive, however I need a visual aid and the help of a finger pointer if I need to create something new. The pointer can come from the mouse, which is most common, or a graphic tablet.

 

Audio is the bastard child though, probably the easiest of the three that can be altered without a graphical tool. But audacity is definitively more helpful than just text.

 

Some coders also get tired of the keyboard and move to a voice driven interface instead (due to typing related diseases), using code words instead of full english. More on the subject in that video:

 

Share this post


Link to post

Also @Ross Scott I forgot to mention in my previous post, there is another web browser that you can remove the close tab button. Vivaldi. I've switched to it from Chrome because it is slightly lighter weight. It's not perfect though. It's built on chromium but the support for chrome extensions is minimal, not a problem for me adblock works just fine and that's all I care about. Also, I don't know if you can change close tab from double click to close, but again, I kinda want it difficult to accidentally close a tab so I like double clicking in this instance. It also has a sync service so you can use it on multiple devices as seamlessly as any other syncable browser.

Share this post


Link to post


 

On 6/11/2020 at 2:32 AM, Rbon said:

Hey, another spacemacs user here. I want to elaborate on what hj said. This system is intuitive, fast, and crucially, context sensitive. Depending on what file you're working on (the major mode), you are offered different key sequences, in addition to a list of global ones.

 

 

As the guy whose working on 

https://github.com/HawaiinPizza/Ross-Good-Gui, I agree. One of the first requirements, before any thing else, is users have the ability to set context to the menu. So if you're playing Knights of Chalice and you run the program, it wouldn't do anything. But if you're on firefox, it would open it up. 

 

 

On 6/11/2020 at 2:32 AM, Rbon said:

Now, I'm not trying to say that spacemacs is the future of GUI (it's really not). The point I've been working towards is that the mouse radial menu system would be really really good if more applications had a way to receive signals from external programs. Imagine you're watching a video, and with one mouse motion, you pause the video, switch to your preferred email client, reply to the most recent email with "I'll get right on it," switch back to your video, and resume playback.

This is why the command line is great. It requires some programming, but just like Emacs, you can automate everything. I wrote a game launcher, directory bookmark sync, battery reminder weight tracker, and a whole bunch of other stuff: all of this was possible because of two things. First, is I use Linux. Sadly, Windows (and possibly Mac, but I haven't checked) don't expose the system as much as Linux, and so you can't change it around as much. The second reason is data is text.  What I mean since everything is text, you can manipulate that text and use it however you want. An example for the first is a little Muslim prayer reminder program I wrote, where I have it so every time I boot up my computer, it would get the times to pray that day. An example for text manipulation is the game launcher: if I want to launch a NES game, it would go find each file in my NES ROM folder for .nes extension, and each time it does, it would send it to a program called *dmenu*, which will go and make a menu where I can select the games.

However, this requires _some_ knowledge on programming. I'm not pretending that this is super complex, and you need to be a computer scientist to know. But, you'll have to learn the basics of shell scripting. If you're interested Ross and anyone else, the channel that got me into using command line was into https://www.youtube.com/watch?v=bkgeFi4PwOg&list=PL-p5XmQHB_JREOtBfLdKSswBGYyXwXMUy&index=3&t=649s. He is really weird, and has a bit of 4chan in there, but other than that he taught me the basics.


In terms of Emacs, Ross I don't think it's for you. While I love Emacs, you have to memorize hotkeys and have to know some programming to configure it. But if you do start with Emacs, you have to use an Emacs con fig. Default Emacs is a bit demanding, especially on non programmers. I will list out the ones I think are nice.

- Batteries not included: https://github.com/purcell/emacs.d. The benefit to using this is it doesn't radically change Emacs, unlike other programs.
- Doom Emacs: https://github.com/hlissner/doom-emacs. This is more for users of a program called _vim_, which is heavily keyboard base. However, it's feature complete, and is really nice. I use this on windows, because I'm too lazy to port my con fig over.
- Spacemacs: https://github.com/syl20bnr/spacemacs. Like Doom Emacs, except a little different


 

Share this post


Link to post

Oh man, this hit way too close to home.

 

I've been trying to ditch the Windows GUI since XP, and back then it was so easy. A few dock programs, a few launchers and ease of use programs, throw in a nice looking, albeit cringeworthy theme and you were good to go. Then Vista hit, and it wasn't the worst UI redesign ever but I feel like since then we've been stuck. I GAVE UP trying when Vista came out, and just learned to put up with it. But we shouldn't have to settle for this.

 

Ideally I figured we'd be at UI levels of stuff like Ghost in the Shell or Evangelion, with all those holographic circles linking to other circles where you have statuses on the outermost circle for the application and then the inner circle displayed the program. Or at least Star Trek / Mass Effect where there was a structure to all the ship functions.

 

Hell, even the interface of Alien's MUTHUR computer seems to have a more logical design around it, if not more akin to a command line. 

 

Which is another thing I feel like should be another truth. "You shouldn't need the command line, HOWEVER it should always be accessible IF you need it... WITH DOCUMENTATION." Something Linux gets very right and Windows does not. With windows you have to go into the start menu, then type in CMD, then right click on it and select whether or not you want to run as an admin or as a standard user. Yes, I know you can do shortcuts or hell even use powershell, but with Linux it's always accessible even in the most broken state and you can switch user privilege levels ON THE FLY.

 

All of this being said, which is mostly just ranting. I don't have the know-how or design ability to construct a new UI but SOMEONE has to. It's an absolute nightmare out there. I work for a tax software / accounting software company and our UI makes me want to gouge my eyes out. The only reason I put up with it is because I've been TRAINED to use it. Which is another truth "You shouldn't have to TRAIN people to use your UI", people should be able to pick it up, poke around for a minute and get the general idea.

Share this post


Link to post

I actually was fine with Windows 7's UI for years, but at the start of this year, I made the jump to Linux, specifically Fedora, and after some getting used to, I kind of rather like its GNOME-based GUI. If I need to switch windows or open something, I just need to throw my cursor into the top-left corner of the screen to bring up the favorites dock and the window view.

 

I do admit that I kind of want to have a more sci-fi-inspired interface, but I personally will put up with what I need to put up with. 

 

I also think that most of the attempts to innovate in UI have been in the mobile space, though as someone who uses a Samsung, most changes nowadays are more aesthetic than functional--that is to say, the appearance is changed moreso than button placement and the like.

Share this post


Link to post
3 hours ago, spiderwaffles said:

Which is another thing I feel like should be another truth. "You shouldn't need the command line, HOWEVER it should always be accessible IF you need it... WITH DOCUMENTATION." Something Linux gets very right and Windows does not. With windows you have to go into the start menu, then type in CMD, then right click on it and select whether or not you want to run as an admin or as a standard user. Yes, I know you can do shortcuts or hell even use powershell, but with Linux it's always accessible even in the most broken state and you can switch user privilege levels ON THE FLY.

Powershell is meant to replace the command prompt, so yes you should be using it. You don't have to do anything fancy to pull it up either: right-click start (or Win+X) and press powershell. Or Win-X i/a if you want admin mode. If a user isn't already aware of those menus/shortcuts then odds are they don't have to.

Share this post


Link to post

Thank you ross for the amazing video. It has long been a pet project of mine to try to overhaul the Windows GUI. In Windows 7 it was possible to straight up edit the icons in the dll's of Windows. 

How to rethink GUI?

I think it would be a lot easyer if we use similar ordering structures when starting applications to when accessing running applications so it is easy to get into the flow of things. This can be done by seperating programs based on their primary purpose. A possible separation could be:

  • Display
  • data entry
  • modification
  • configuration

After pressing a button (or combo) the user should easily (and quickly) be able to  flow into the selection of the application to be started / selected. I would do this by grouping these in quadrants of the screen (like the start of Skyrims inventory/spells/level screen shown below, but without the wait). After doing this a user should be able to quickly hover trough the options. Instead of making single-clicking the primary mode of interaction, hovering above items should make them more descriptive.  I think it should be visualised like an expanding node network if it get's complex (for example when many programs are installed). 

I think we also should rethink the way we alt-tab using a similar configuration. 

 

Also, I like the multiple desktop configurations idea macOs and Linux have been implementing, but with one major addition to make it work. You'll have multiple desktops with different program subsets for different kinds of workload.

Character's_Menu.png

Share this post


Link to post

I don't know if it's ever been done anywhere else, but the radial menu interface you depict at 1:06 was implemented, pretty much exactly as it looks here, on the tragically short-lived Tapwave Zodiac, way back in 2003.  This contraption was conceived as a hybrid PDA, games console and multimedia system, and it was a thing of beauty.

It ran a highly customised fork of the Palm 5 operating system, pretty well back-compatible with applications written for standard Palm PDAs, with a traditional Palm-style stylus and touchscreen (An old-style resistive touchscreen, that is, so the stylus was actually reliable, fast and accurate.  I miss those) for handwriting input using the Graffiti system and other PDA-like operations, but it also had a left analogue thumbstick and right gamepad buttons either side of the screen in landscape mode, shoulder buttons, two SD card slots, stereo speakers, 128mb RAM, and ATI hardware graphics acceleration.

Why am I mentioning this here?  Because, in their fork of Palm 5, some conscientious engineer who surely thinks the same way you do had clearly taken a long, hard look at the Zodiac's controls, and then expressly designed an OS user interface around them, most specifically the joystick.  There was a hierarchical radial interface that functioned almost identically to what you've got in your video here, and it elegantly combined both subfolder navigation and action buttons into its radial lobes; you used the thumb-stick to move around the ring of blob icons, not entirely unlike playing the game Tempest.  If I remember correctly (it's been a while, I accidentally smashed my beloved Zodiac in an accident years ago), moving the stick outwards from its centred position to a subfolder blob would open that subfolder out into the ring; moving it to a program/action icon and clicking the joystick once would launch it (no double-clicking; I'm sure you'd approve), clicking the joystick in the centre neutral position would back up into the root folder/menu.  It was clean, elegant, intuitive, didn't require colossal precision, didn't really give you opportunity to make any mistakes, and you'd better believe it was lightning fast.  It was also back-compatible for those who didn't favour the joystick; you could click on the radial blobs just like normal touchscreen icons with the stylus, and they were the right size and separation from each other, surely deliberately, that you could even do it with just a pudgy finger, if you just had no class at all, but the joystick was by far the best, in my experience.

So, what happened?  Well, there were some utter bonehead launch decisions  (or possibly just sheer, run-out-of-time-and-money desperation) made elsewhere in the company.  After lovingly creating this wonderful games platform, I think they had a grand total of three release titles; two of which were ports of Tomb Raider 1 and Duke Nukem 3D, ancient games everyone had already long played to death, and Spyhunter, a bare-bones racing-shooting game that got boring after one level.  The stock multimedia player was also crippleware, and rigged to only play a proprietary video format that basically doesn't exist any more and required you to shell-out for the windows-only PC software to pre-convert your videos before you could play them on the device.  Furthermore, even though the ATI graphics chip could do hardware video decoding, there was no software capable of actually using this properly at launch.  In other words, the launch software line-up comprehensively failed to show anyone what the device was truly capable of.  The open-source community raced to fill the gap with TCPMP and a native port of ScummVM, but it all came too late.  I believe the device even had a product placement as a prop in the Stargate TV series, but even that was in vain.

Maybe it never stood a chance anyway, because even though the Zodiac and the PSP were announced simultaneously and Tapwave then beat Sony to market by just over a whole year, as soon as the PSP shipped, it just buried them.  I still miss mine.  It was a lovely machine.

Share this post


Link to post
On 6/13/2020 at 5:46 AM, Ross Scott said:

So before somebody else tells me to buckle down and go CLI, maybe consider the last time you edited pictures / audio / video using only the keyboard to better understand where I'm coming from.

You seem to be talking about specific application guis here which is not at all what the video and discussion is about, so it's not really applicable, even though you can edit lots of types of media with the keyboard. You prefer a GUI (me too) and that's totally fine but the reason this whole CLI vs GUI debate happened was because you disputed the usefulness/efficiency of the keyboard. But just because you don't personally like using it doesn't mean it's objectively worse (quite the opposite in many cases actually).

 

However, none of this matters if you don't want to use the keyboard. You keep saying people are welcome to prove you wrong but at the same time you seem quite paranoid of keyboard proponents and seem to view them as irrational zealots who want to take away your mouse. So I'm not sure you are as open-minded as you think you are.  It might be a lot better if you just stated you're only interested in GUI solutions so nobody waste time suggesting things you'll never try.

Edited by Isaiah (see edit history)

Share this post


Link to post

This was a very difficult video to watch. I feel like all of Ross's problems here are self-inflicted, and mostly due to trying to fit to his model an operating system that really doesn't want to. I should also say this: I'd hate for Ross's standards in GUI design to become the industry's standard. His choices are so alien and unappealing to me that I'd probably stop using GUI entirely if they were to become the norm.

Share this post


Link to post

Not sure what to do about the windows themselves, but I have some thoughts about some other parts of the GUI. 

I've enclosed more detail on how to navigate the screens, but I think/hope it should be relatively self-explanatory. The only bit that is certainly not immediately obvious is that the "control surface"-- the full-screen interface for the computer that appears as an overlay on the desktop-- would be accessed by remapping alt+tab, using the windows key, or pressing on the thin taskbar seen on the bottom. Any other details you may need should be included in the attached .txt. You can ask me lingering questions here, and I'll get to them when I get to them.

Apologies for the crude visuals-- these are mock-ups, merely intended to get the idea across. In practice, the specific implementation could vary considerably.

Baseline Desktop Small.png

Control Surface Blip Selection Small.png

Control Surface Node Selection Small.png

GUI Design Documentation.txt

Share this post


Link to post

Desktop Shortcuts

 

Dude, if you don't like them then just don't use them. Nobody is forcing you to use them.  It is an optional feature after all, and many users actually use and like them. I thought removing user choice was your biggest issue? I guess it's just fine when it's something you personally don't like. Screw the millions of users that like desktop shortcuts. I don't like them so THOUGH SHALL NOT PLACE SHORTCUTS ON THE DESKTOP. ?

 

Desktop shortcuts are also shortcuts placed literally on the desktop. Your version of "desktop" shortcuts is just a custom menu with a folder named "desktop" in it. Nothing is even organized in those menus anyway so what's the point? Just use the standard start menu with custom folders if you need them. Did you do all this just so you can click anywhere on the desktop to bring it up? That seems far worse than the default start menu because now you need to have some exposed desktop space to click on to open the menu. I'm sorry but this all seems pointless and counterproductive.

 

Solution: Just use the start menu with custom folders instead.

desktop_shortcuts.thumb.jpg.9ccc4875c2b65b8592f8db0ba06418c6.jpg

 

Main Shortcuts

Solution: Just pin all your commonly used apps to the start menu.

start_menu_shortcuts.thumb.jpg.13a40c4fe9cbed2dbedf785c4ddcf23f.jpg

 

Managing Text Documents and Notes

 

"Say I have 5 text files open". Whoa hold on there buddy! If you need that many open at once you should be using something better than word/notepad in the first place. I'd strongly recommend Notepad++. Don't let the name fool you though. This isn't just for coders. It's basically Notepad on steroids with complete customization options, themes, plugins and tab support. Very much like a web browser. You will never go back to default notepad ever again.

 

If you take notes all the time then I'd recommend the free Microsoft app OneNote which let's you organize all your documents into sections  and automatically backs them up to your OneDrive account. There is also the open source TiddlyWiki which is a note taking / personal wiki thing that I use all the time. It's actually just an HTML file so you can have it open as a tab directly in your browser next to all your webpages.

 

Identifying and Switching Apps Quickly

 

Solution: Use the alt+tab or win+tab hotkeys.

spacer.png

Edited by Isaiah (see edit history)

Share this post


Link to post

Hi! Long time viewer but fresh on forums!

 

I have given it a bit thought and cocluded that M$ doesnt change the interface because of fear of losing customers - most Windows users are casuals who learned how to computer and internet and will be spooked by new things - this is what happened with Windows 8. So the current Windows 10 is a compromise between new and old for those people who didnt learn new tricks since Win95 to feel at least a bit comfy. As for UI customization I prefer Linux, but not the command line. The command line is for maintenance and stuff. The thing about Linux GUI is that I believe writing it is a pain, thats why many things are done from command line. I recently changed my laptop and tried the flavour called XFCE, but felt like I want a dock. So I installed the one called Plank and by removing a piece of code removed the Windows taskbar-like menus. This broke a few things but Im happy for now. I think if youre looking for OoB solution that is not an option. Linux gives you best chances of adapting the screen to your liking. While M$ is just stuck in a habit of office users who fear computers.

Share this post


Link to post
4 hours ago, Misagh said:

This was a very difficult video to watch. I feel like all of Ross's problems here are self-inflicted, and mostly due to trying to fit to his model an operating system that really doesn't want to. I should also say this: I'd hate for Ross's standards in GUI design to become the industry's standard. His choices are so alien and unappealing to me that I'd probably stop using GUI entirely if they were to become the norm.

This is part of the reason I plan to make a followup.  I didn't adequately explain that what I have NOW is NOT my vision of what I WANT the GUI to be like.  The only aspects of my current GUI I defend are shortcuts off the desktop, my hotspot launching option, and rapid identification.  I apologize if I made it seem like my current GUI was the way to go.  Now, if you're attacking me on the pie menu system and gestures though, that's fair, I'll take that.  I WAS advocating that I think that could lead to a lot of advancements.

 

8 hours ago, Isaiah said:

You seem to be talking about specific application guis here which is not at all what the video and discussion is about, so it's not really applicable, even though you can edit lots of types of media with the keyboard. You prefer a GUI (me too) and that's totally fine but the reason this whole CLI vs GUI debate happened was because you disputed the usefulness/efficiency of the keyboard. But just because you don't personally like using it doesn't mean it's objectively worse (quite the opposite in many cases actually).

 

However, none of this matters if you don't want to use the keyboard. You keep saying people are welcome to prove you wrong but at the same time you seem quite paranoid of keyboard proponents and seem to view them as irrational zealots who want to take away your mouse. So I'm not sure you are as open-minded as you think you are.  It might be a lot better if you just stated you're only interested in GUI solutions so nobody waste time suggesting things you'll never try.

 

It's not that I won't try it, it's that I'm not seeing the speed increases for non-coders.  If I spend most of my time doing multimedia, that means I'm on the mouse a lot and it's unavoidable.  So that means switching back to the commandline to type is an additional delay in time.  Again, this is partially about EFFICIENCY.

 

I acknowledged in this thread that if you're typing on the keyboard most of the time, the keyboard could be more efficient!  That was a consideration I hadn't made before.  As for irrational zealots who want to take away my mouse, have you seen the Youtube comments?

 

I'm not against using the keyboard, I'm against slowdown.  If I'm working in multimedia and web browsing and many other varied programs, using the mouse for maximum speed is inevitable.  So that swapback needs to be taken into consideration, otherwise my TOTAL speed goes down.  But disregarding that, give me some non-programming scenarios where the CLI is simply faster and I bet I could come up with some GUI concepts that would be about as fast.  There might be a few where there the CLI edge it out, but I'm guessing not a lot.  I think it would have be something extremely specific before a versatile custom-designed GUI would fail. 

Edited by Ross Scott (see edit history)

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in the community.

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now



×
×
  • Create New...

This website uses cookies, as do most websites since the 90s. By using this site, you consent to cookies. We have to say this or we get in trouble. Learn more.