[ / / / / / / / / / / / / / ] [ dir / america / ameta / cafechan / gdp2083 / leftpol / miku / monarchy / sw ][Options][ watchlist ]

/tech/ - Technology

You can now write text to your AI-generated image at https://aiproto.com It is currently free to use for Proto members.
Name
Email
Subject
Comment *
File
Select/drop/paste files here
* = required field[▶ Show post options & limits]
Confused? See the FAQ.
Expand all images

[–]

 No.823070>>823257 [Watch Thread][Show All Posts]

So, I've had these ideas and concepts about a uniform UI library, and thought I might share. I think the thing the GNU/Linux user experience is lacking most right now is a sensible UI. These are ideas that I've come up with.

1. The application should immediately pop up a window, with a splash screen/logo. This helps with responsiveness. For this, the UI operations must be on a separate thread, with pthreads/mutexes/shared state/all that jazz.

2. Alternatively, the UI could be a single daemon process which other processes interact with through IPC/a bus. I believe this has the advantage of being able to control every UI from a single process and less memory usage via shared memory. The cons are a single point of failure and bus/IPC complexity.

3. When it is affordable, there should be simple but elegant transitions between menus, like slide and fade in/outs. Just small things to make things feel smooth should be fine.

4. I don't think flat/material design is bad, honestly, but it shouldn't become a mess where you can't distinguish links/buttons from text. All interactive elements should have clear outlines.

5. Mystery meat navigation is a mistake. Hamburger bars add nothing of value except for maybe hiding miscallenous stuff. I like the NavigationDrawer/bottom bar on Android 7.0, though, as it clearly defines the parts of the app.

What are your thoughts?

pic unrelated

 No.823071

The back end is solved. It's the frontend you need to worry about.


 No.823075

File (hide): 948e8c8fc7588fe⋯.png (23.65 KB, 500x283, 500:283, standards.png) (h) (u)


 No.823080

Wayland will fix everything.


 No.823083

You are never going to get enough others to comply to whatever you come up with, they all think they know better just like you.


 No.823117>>823122

File (hide): 7d7177e9f6fed69⋯.png (16.29 KB, 644x385, 92:55, winds.png) (h) (u)

This is semi related. I'm working on a game which has in-game level editor. Of course I needed some windows for the editor tools, but I didn't want to use any external library for the GUI. Now that I'm thinking about it, wxWidgets looks like a good choice, but with my own poor but good-enough-for-me "gui" I don't have any dependencies other than SDL1 which runs on almost everything.

This is a kinda old picture, but I'm not home to show what I added since. I added a drop list, radio buttons, images inside of the windows can be animated. That's about it and I think that's all I need. It would be nice to have some file manager too, so I can draw the directory tree and such for selecting files, but there's no standard way of doing that. I know there's filesystem support in c++17 but I'm stuck with C++ 98 because I'm supporting Windows 98 (~40 FPS on 166 Mhz pentium 1 so far)


 No.823122>>823133

>>823117

>but I'm stuck with C++ 98 because I'm supporting Windows 98

Is it not possible to just use a newer version of g++ that supports C++17?


 No.823133>>823135

>>823122

No because nobody will write a c++17 standard library for win98. Modern compilers won't even produce .exe that will work on windows 9X, such .exe just crashes. They changed something in the structure of the executable. Maybe it's just a matter of changing the header, but I doubt it, again, the issue is the library. Honestly though, I'm fine with writing in C++98, as you can see this is pixel shit, such games were original written in assembly, so this is a big step up anyway. At work I do c++11/14


 No.823135>>823235 >>823276

>>823133

This is completely unrelated, but where else will I have an opportunity to say this. At my work things go rather slowly recently, so I have plenty of time to do whatever I want, sometimes I code something for this game / editor. Almost everyday someone goes by, looks at it and is interested untill they see C++98. I explain that this shit ought to run on a fucking pentium 1, so that's why, but they look like I'm retarted. Hurr, why isn't your tiny code that you develop yourself full of shared_ptr and interfaces like big corpo bullshit code, durrr.. It's so annoying. I do these things at work because I have to and it makes sence for a huge project that thousands of people work on, but it's like these people only see black and white, no shades of gray. No critical thinking, just do what you learned at university. I'm also one of the guys that didn't go to unviersity. At my office there's about 200 people, I only know 2 other guys who didn't go to meme college.


 No.823235

>>823135

They are not doing what they learned at university. They are doing what everybody else in the office is doing, and hoping that nobody finds out that they do not actually understand what they are doing.


 No.823257>>823279

>>823070 (OP)

>1. The application should immediately pop up a window, with a splash screen/logo.

How to piss off tiling WM users 101.

>3. When it is affordable, there should be simple but elegant transitions between menus, like slide and fade in/outs.

Personally, I hate any kind of animations/transitions and other gimmicks.

>4. I don't think flat/material design is bad, honestly, but it shouldn't become a mess where you can't distinguish links/buttons from text.

I like flat design in general, but absolutely hate big paddings and no borders. I also hate monocrome extremely thin/sharp icons that KDE adopted, same as microsoft.

>I like the NavigationDrawer/bottom bar on Android 7.0, though, as it clearly defines the parts of the app.

It doesn't belong in desktop applications.

Great example how UI should be done is Intellij IDEA which is ironically Java application. Linux needs a good UI platform (like SDK) not just basic improvements. GTK is shit and Qt is bloat C++ monstrocity.


 No.823276>>823280

>>823135

I'm a retarted larper so let me tell you something retarted: my epiphany of my own failure as a coder:

>wanted to learn about shiny new c++17

>looked into shiny new stuff like std::filesystem which is added 20 fucking years too late!

>got bored, went back to playing old computer games

>half-life 2

>lol this is still gud even since 2004

>lol they must have used c++98 for making this on msvc 2003

>far cry

>fug this from 2004 too, notice pattern

>my beloved windows 7 from 2009, written in c++0x at best - not even c++11

>epiphany time: lang standards don't matter, tools don't matter, it's your will to get shit done that matters

>you can hide your lack of will behind tools/langs being old but remember you'll get nowhere, faggot


 No.823279>>823280

>>823257

>Linux needs a good UI platform

MyGUI http://mygui.info/


 No.823280

>>823276

Have a look at BeOS if you want to see an inspiring c++ project. It's also a great environment to get started with the language and oop in general.

>>823279

++




[Return][Go to top][Catalog][Screencap][Nerve Center][Cancer][Update] ( Scroll to new posts) ( Auto) 5
13 replies | 2 images | Page ?
[Post a Reply]
[ / / / / / / / / / / / / / ] [ dir / america / ameta / cafechan / gdp2083 / leftpol / miku / monarchy / sw ][ watchlist ]