tech.lgbt is one of the many independent Mastodon servers you can use to participate in the fediverse.
We welcome all marginalized identities. This Mastodon instance is generally for folks who are LGBTQIA+ and Allies with an interest in tech work, academics, or technology in general.

Server stats:

2.9K
active users

~Project Orihime: buttons and system font~

Project Orihime is a concept of a modern user interface for EGA and VGA displays running in 16 colours, aimed primarily at FreeGEOS.

The goal here is to bring an eye-candy interface and good UX to the 1984 IBM PC clones.

This is not a real UI (yet), but it gets more and more fleshed out, and I think it looks great on both CRTs and LCDs of the era.

I want to try and document some of my progress for your enjoyment. It also helps me to make better sense of design decisions I am taking on the go. Thread!

🧵 1/10

Public

For those of you who never thought about old computers and modern interfaces, I want to remind you that "simple" and "flat" interfaces of modern operating systems rely on high resolutions and 24-bit colours a lot.

Take Gnome 46, for example.

1920x1080 in VGA palette looks somewhat okay, but

640x480 in modern 24-bit colour looks like it's losing quite a lot of details, and

640x480x4bpp VGA 16 of the said interface is simply unusable. Perhaps this is why modern OSes demand at least 800x600 in True colour.

So, uh, do you know what you usually end up when you try to make your interfaces look OK in default palette and resolutions of 640x350 or 640x480?

🧵 2/10

Public

At best, you end up with things that look a lot like Windows 95. This is FreeGEOS, which I am aiming my UI/UX upgrade for, but you could take any OS that officially supports 640x480 in 16 colours, and it will look more or less like that.

The palette is very limited, and if you try to add custom drop shadows with dithering, you run out of resolution very quickly.

That means eye-candy and smooth corners can only take a few pixels at best. In the previous thread, I've explored my approach to making Windows and Titlebars, and this time I want to show you how I took a stab at making the next UI staple - The Button.

Previous thread btw: tech.lgbt/@nina_kali_nina/1125

🧵 3/10

Public

I took my default window as a canvas (note yellow-white window background, it is quite unusual for OSes of the era, but not unthinkable, and it looks kind of nice on a CRT), and made a bunch of buttons.

It quickly becomes obvious that:
1) Gradients don't work, take too much space
2) Motif-like buttons work, but look dated
3) Coloured buttons don't work
4) Monochrome buttons look meh
5) Overly-round buttons look meh

🧵 4/10

Public

I chose two designs I liked the most, dark and light, and tried to invent variations of the buttons for Inactive-Selected-Hover modes of the button.

This was the moment I realised why Windows 95 required a VGA monitor, and why Mac Classic and Windows 1/2/3 interface font was so bold. Mac Classic and Windows 1/2 were supposed to work fine in monochrome.

Curiously, Windows 3.1, which dropped official CGA/monochrome support, sometimes "loses" UI elements on monochrome displays.

🧵 5/10

Public

After trying out different button designs on a real display, I decided that I like dark button better, but I need a better design for "inactive" buttons.

Especially considering how fonts are super important on low resolutions, and how much I don't want to make UI font to be bold by default just to make text on inactive buttons readable.

🧵 6/10

Public

With dark buttons comes an unexpected change to the interface palette.

Dark buttons don't look great with light title bars. So the title bar has to be dark grey. And if the title bar is dark grey, then default bright-yellow window colour is too contrast and unpleasant.

So, here we go: dark window titles, dark buttons. Kind of nice, I think?

🧵 7/10

Public

At this point, I got fed up with the fonts I have been using, and decided it's time to find a font that I would actually like in my interface.

Let's do some research!

The font used in the menu bar and the one below are fonts for pixel games, and they look OK in games, but they have too much character for a font that is supposed to be "default" and "invisible".

Default Windows fonts have a pleasant crispiness to them, but their bold version feels a bit chopped-off.

Default Mac Classic fonts are unexpectedly tall, and, as mentioned before, mostly designed to look best in bold. Two-pixel kerning is quite a move for a 512-pixel wide display.

Finally, default FreeGEOS font. It is huge, and it is meant to be displayed in semi-bold most of the times. It is an interesting decision; perhaps, it was important for 9" Brother GeoBook laptops or something?

🧵 8/10

Public

For a UI font, I decided, I wanted something modern (maybe a bit like Android default font?), but still pixel-perfect with a nostalgic Windows 95 font crispiness.

I was highly inspired by an open font Lato by Łukasz Dziedzic, but ultimately went in a slightly different direction. But as a tribute, I'd like to call this font "Lito".

🧵 9/10

Public

You can tell there is still quite a lot of work left on the font and the buttons. It is a work in progress.

I am not completely happy with the font, despite my best efforts it still looks like Windows 2000 or something, a kind of retro-vibe I did not aim for.

But then I suppose a pixel-perfect font in an interface is a dead giveaway about the number of colours the system can use. As long as the font looks fitting, it's okay.

As long as it looks okay, it's okay. Right?

🧵 10/10

Public

@nina_kali_nina
IMHO: Rounded corners are a waste of space and an insult to developers and users alike :blobcatpeek:

Public

@wakame feel free to replace the style with the one you like better :3

Public

@nina_kali_nina
I didn't intend this as a critique... sorry :blobcat_flop_woozy:

Part of my brain wanted to make a statement about usability and how (at least in my opinion) UI designs are often horrible (black/white/gray deserts) or... designs that are so colorful that you quickly get diabetes.

But somehow the post was deemed finished at "hot take" levels. :blobcatnotlikethisgoogly:

Edit: Bookmarking this so I can contribute if I have something to contribute. Otherwise: Like the thread and the topic.

Quiet public

@wakame
I'm curious how so? I ask as a user and developer that tends to like rounded elements.

I do imagine it might be a problem for lower end systems because checking which thing to paint is now more complicated than a bounding box check.

You can cheat with a button - just paint the window background. But it is trickier for a window on top of a window.

@nina_kali_nina

Quiet public

@tschundler @wakame in terms of performance, rounded titlebars aren't slower in any meaningful way because on such old machines each pixel is copied to memory individually or, at best, line by line, so it's only a question of choosing different start and end points.

Quiet public

@nina_kali_nina @tschundler

My post was more a "hot take" than an actual, well-thought-out statement.

I intended to mean
a) Windows with rounded corners. Bonus points for when going into the screen corner at fullscreen doesn't hit the close button, tab or menu button in that corner.
b) Inconsistent design choices. Where the UI feels as if the reaction to user feedback was not improving the language of the UI, but sprinkling effects on UI elements, hoping the users will stop complaining.

Rounded corners IMHO definitely have their place in UI design.

Public

@nina_kali_nina It's looks like old Apple OS.

Public

@nina_kali_nina My first computer was a Mac Plus, so I worked on a screen with no color for a while. The interface was extremely simplified.

Quiet public

@nina_kali_nina Hm, can you remove the outline on the text in the title bar?

Or make it thinner?

Quiet public

@andre
Removing the outline makes the title visually less important. Make it "thinner" is hard because it is already one pixel wide.

If I make it less "black", then I have to use the same colour as the title bar itself. Anything even more lighter, and it becomes a "highlight", not the kind of the effect I want here.

But adding a colour accent, like muddy cyan, might actually work here. What do you think?

Quiet public

@nina_kali_nina Hm, I would use that one if the window grabs attention.

Looking at the menu bar at the very top also shows good contrast (not measured, judging from a look at it) while being clearly discernible.

The inactive calculator has a distinct title, too.

I'm not a typographist but I felt like the outline hurt readability (it was too thick compared to the flesh of the character). Now I've read the thread and new about the constraints you operate in here. One font had two 2px wide outline but I wasn't sure whether it was used in the title.

So if you can't remove it, can you desaturate it? The black is too dominant here.

Quiet public

@nina_kali_nina If you feel like it would help, we have a few typography folks here on fedi and I could try to bring it to their attention.

Quiet public

@andre I agree that the outline was too thick! I'll try to do something about it in the future versions of the mock-up. Thank you :)

Quiet public

@andre also,

> Now I've read the thread and new about the constraints you operate in here.

Does it mean that the screenshot does not look like something that could run on a computer from 1984? If yes, I have succeeded at my goal at least a bit :D

Quiet public

@nina_kali_nina Um, I was born five years later 😅😬

Quiet public

@andre I'm so glad you avoided many painful computer interactions! :D

Quiet public

@nina_kali_nina Memories set in around that time.

So I remember EGA / VGA times, I think. Not sure about CGA.

Defo not monochrome. Colours were invented at my time.

Quiet public

@andre yeah, this is similar to the class of hardware I'm trying to use! I have a few mock ups that would work on CGA card that is used in your screenshot

Quiet public

@nina_kali_nina @andre
This looks really nice tbh :neocat:

Public

@nina_kali_nina the only way i can think of to not have quite so retro looking a font is to add some kind of anti-aliasing. i don't know how viable it would be to actually implement but you're using few enough colors that pre-cached blend tables could work to maybe add some kind of manual AA?

Public

@eniko I have entertained the idea. The only way I can afford that is by using a custom palette with four steps between black and white instead of two. But it will break compatibility with a bunch of documents and images, so I'd rather not.

Public

@nina_kali_nina props for Asuka from Evangelion 3.0 wallpaper

Public

@Gotterdammerung I like my wallpapers on retro computers, okay?:)

Public

@nina_kali_nina The text for the file manager's context menu looks less like win2000, I think because it's not a solid black? Perhaps giving the text a dash of color could help, or maybe more of a gray rather than black - That is if you're able to squeeze any more colors in lol. Nonetheless really like the vibe, very cool project!

Public

@anethernetcable the palette has light and dark versions of RGB, CMY, white, black and two greys. I'm really pushing the limits here 😭

Public

@nina_kali_nina Are you designing for modern LCD screens? The old Mac screens had legendary crispness, which made single pixel gaps easily distinct even at a high pixel density (early Macs had low resolution but even tinier screens). Most old PC monitors had a fuzziness to them that had to be considered.

Public

@glitchf I have multiple test rigs: greyscale passive matrix LCD from 1989, VGA active matrix from 1992, and a CRT from late 90s. I also want to make sure it looks good on modern screens and in emulators. Most serious design decisions are done only after a test on the tests rigs.

Public

@nina_kali_nina I love this thread! Thank you for sharing.

My first computer was a 286 running Windows 2.1, which I eventually upgraded to Windows 3.1. It had an orange monochrome display and seemed to work fine. I wrote my first Windows app on that computer. 😃

Public

@nina_kali_nina that's a very pleasant font

Public

@eniko thank you, it feels good to be praised by someone who knows a thing or two about pixels <3

Public

@nina_kali_nina
Maybe the fonts that were used on monochrome systems like Smalltalk-80 & 76, Interlisp, Lisp machines and the like could be a good inspiration?

Public

@kirtai not unexpectedly many were quite atrocious, actually! Very few companies could afford good fonts, and very few computers could support non-monospaced fonts

Public

@nina_kali_nina
True. I did like the Smalltalk-76 font though (called Cream iirc?) since they *did* care about how things look.

I think @neauoire uses that one in their UXN tools. :neocat__w:

Public

@nina_kali_nina @neauoire
Oh, and it's a proportional font. Not bad for 1976.

Public

@kirtai @nina_kali_nina I do! But it's been heavily modified, the capital letters were bad.

Public

@neauoire @kirtai it is pretty but very fancy, not the kind of utilitarian font I'd personally enjoy in an interface

Public

@nina_kali_nina @kirtai yeah you need a full-on victorian dress with frills and puffy shoulders to code with that font.

Public

@neauoire @nina_kali_nina
Now I need a frilly dress :neocat_laugh:

Public
@neauoire @nina_kali_nina @kirtai The kind of font Ada Lovelace herself would have used if she and Babbage had managed to cobble together gear-based display technology.
Public

@kirtai @neauoire @nina_kali_nina now i want to see Devine in full-on victorian dress with frills and puffy shoulders coding with this font

Public

@yottatsa @kirtai @nina_kali_nina *in pyjamas*
I AM NOT WORTHY

Public

@nina_kali_nina @neauoire
Fair enough, maybe the St-80 font would be better there. (Smalltalk has always had proportional fonts).

Quiet public

@neauoire @kirtai @nina_kali_nina oh I thought this was Venice, but I think it's the same designer, right?

Quiet public

@drj @kirtai @nina_kali_nina similar, venice is bolder. I don't think they're from the same designer tho.

Quiet public

@neauoire @drj @nina_kali_nina
Oooh, I like that one a lot. Reminds me a little of the garnet font on the amiga which I used for icon names :neocat__w:

Quiet public

@drj @neauoire @kirtai @nina_kali_nina Bill copied Cream from SmallTalk; he wasn’t the original designer.

Quiet public

@overstrike @nina_kali_nina I was starting to wonder if that was the case. Which begs the question, who designed the SmallTalk version of the font?

Public

@neauoire @nina_kali_nina
It does look really nice. I wonder how hard it would be to backport the modifications.