HACKER Q&A
📣 CM30

Why Are Programmer Design Tastes So Utilitarian?


As seen with things like open source software, many developer tools, Hacker News as a website and people's opinions on CSS and modern web design on places like Reddit?

Cause it feels like many people's tastes come from the 80s/early 90s, with the idea that any sort of visual flourish or attempt at readability is completely irrelevant.

And it makes me wonder why this is. Why do so many... hacker type individuals seem to prefer very brutalist, utilitarian designs over anything more fancy? Where did this preference for plain text at the expense of all else come from anyway?

Because I don't think this happens quite as much in other fields, like architecture, cooking or construction.


  👤 mjburgess Accepted Answer ✓
Why play chess with ornate pieces, over simple wooden ones? Why don't professional chess players use those large sculpted sets?

Because chess isnt the pieces. The interface isnt the game. If you're attending to the interface, you're being distracted.

When you use computers as tools you don't want interfaces to appear as objects in the world, you want them to dissolve into the tool that they are.

The more I am "impressed" by a menu, button layout, interface, etc. the worse it is at being an interface.

The question is, rather, why do others want to be distracted by the interface? Why do they choose the oranate chess set?

Well, because they're consumers of computers, not users. They barely use them as tools, and so their default relationship to them is one of ornament.

An interface is, almost literally, ornamental to most people. Like a chess set on a mantlepiece.


👤 stcroixx
I'd consider readability to be paramount in any design described as utilitarian. HN is one of the most readable sites I visit.

UI/UX in software is a field which, to me, hasn't found it's feet yet. In physical architecture(buildings), there are common patterns recognized to be aesthetically pleasing and useful. Industrial design like the cockpit of a car has done the same. Most people recognize a door or a steering wheel instantly and can make use of them. I don't think these things have materialized yet in software. So if your goal is to create software for a specific purpose and you don't have the interest, time, or budget to solve this general design problem, you're just going to punt on it and make the UI basic and functional.


👤 thesuperbigfrog
It's part of the hacker culture and values. "Hacker" in this case refers to the original definition of the term originating at the MIT Tech Model Railroad club:

http://www.catb.org/esr/writings/taoup/html/hackers.html

https://en.wikipedia.org/wiki/Tech_Model_Railroad_Club

http://www.paulgraham.com/gh.html

http://www.paulgraham.com/college.html

>> Where did this preference for plain text at the expense of all else come from anyway?

It stems from the clarity of text in communication and the use of textual formats and protocols in Unix and the early Internet.

http://www.catb.org/esr/writings/taoup/html/ch01s06.html

http://www.catb.org/esr/writings/taoup/html/ch05s01.html


👤 themodelplumber
Maybe some relevant models or perspectives to consider:

- "Dopamine Sucks" Model: The typical view on design, or even the typical a e s t h e t i c is overwhelming in this way or that, perhaps even at a biological level

- Preferring-informational-over-visual-design Model: We leverage information far more effectively than visual/sensory cues

- Fluff PTSD Model: In the past we learned to interpret social signaling cues and design cues (often the two are mixed in design processes) as Jedi mind tricks to cover up a lack of circumspect treatment of other cues that also matter. Show me the raw data plz (also seen on Wall Street)

- "Pro-emotional? More like Con-emotional" Model: Programmers sometimes prioritize information so much that they neglect emotions too long, and are left to recover their emotional bearings starting from a very dark place. Brutalism is, among other things, a symbol of a stark inner environment

- "Magnificent, My Nose" Model: We got used to having plain text dissed by really shallow people who refused to give our world more than a cursory glance. So we work to present it as a strength until others are forced to give us deference [1]

1. https://www.youtube.com/watch?v=nFiLIsMieiQ


👤 scottLobster
Because "fancy" often gets in my way. It's like putting feathers on a rifle, and every time I pull the trigger the feathers mechanically flap in my face before the rifle fires.

When I'm using software I want to USE it, not look at it. Sure some basic aesthetics are fine, I have animated wallpaper on my desktop that I think looks nice and I have white/orange themed LEDs and custom-sleeved cables in my PC case. The difference is past initial setup those stay out of the way. My interfaces are stark, bare, and I can do more with 5 hotkeys than most regular users could do with a solid minute of mouse clicks.


👤 c22
Plain text is the most readable because it can be stylized by each user's user agent to be comfortable for them. This was one of the killer features of the WWW which has increasingly been cast to the wayside (I guess because users are considered too incompetent to configure it?) Instead, we ought to be expanding this flexibility to other systems we use. In android I can swap out my launcher for something more ergonomic to me. Likewise on my linux box I can run whatever windowing environment strikes my fancy, the underlying content doesn't change. I don't use apple products or windows any more because these highly opinionated user interfaces are difficult or impossible to adapt and often change arbitrarily during updates.

I guess the answer to why programmers "prefer" the bare-bones is that we understand how to go about adapting them to our needs and we don't like having our time wasted by the fickle aesthetics of random strangers.


👤 h2odragon
> attempt at readability

I find HN and other "brutalist" designs much more readable than most "pretty" layouts. I've had extended arguments with old school print people (as in, we were laying out columns on boards with tack wax) over the subject of column width and why did we even have columns at all?

My conclusion has been that most of those "design principles" about readability and so forth are religious tenets with no relation to the real world.


👤 docandrew
I think it can be a vice (laziness) disguised as a virtue (efficiency).

Computers and software (like anything) can be beautiful, charming, fun, funny, tragic - anything we want them to be.

It’s not just software though - look at modern architecture, look at furniture, look at cars. Any sort of ornamentation or detail is verboten now. I think it’s the bean-counters’ fault, personally. Any effort/cost to deliver a little something extra would take money out of the wrong people’s pockets, so we do the bare minimum.


👤 52-6F-62
It happens everywhere. It's all information, and it's all communication if it's moving from one body to another (whether that is their stated intent or not). The medium is the message [https://en.wikipedia.org/wiki/The_medium_is_the_message] —if you pay attention you can understand what is being communicated above the "raw data".

You're not required to follow suit.

That said, a bit of attention paid to colour contrast in the text content makes me believe you want me to read the words, at least. :)

It might be worth asking the question: what exactly are they trying to communicate with such a forceful utilitarianism and then plan your own actions accordingly.


👤 u801e
> I don't think [a preference for very brutalist, utilitarian designs] happens quite as much in other fields, like architecture, cooking or construction.

One example in another field is automotive interface design. Specifically, how one selects a gear for the transmission, controls the temperature and entertainment systems, etc. Automakers have tried different things ranging from touchscreen control, to dials and other innovative ways to select a particular transmission gear. But there are people who prefer the classic interface choices like dials and levers to handle these functions because people have muscle memory and don't have to look at the control to determine what they need to do in order to use the controls effectively.


👤 robertlagrant
> Because I don't think this happens quite as much in other fields, like architecture, cooking or construction.

Each of these is much more constrained than software - software you can draw anything on the screen. You can't turn up and say in a UX-calm voice, "we should try an A/B test on cars that are tall instead of long".

A website like HN isn't brutalist - you can't see the database or the wires or the inside of the computers working. You're just seeing the tiny, microns-thick veneer on the hidden host of complexity that goes into looking at a website. It has a decent font and decent but simple colours. I agree it doesn't have any pictures or video, but I that doesn't make it brutalist.


👤 kgwxd
Same reason hammer manufacturers don't put weird stuff on hammers. It's designed to do a task. Every animation, every extra menu level, every loading spinner, is a loss in productivity. Readability, discoverability, and other first-day concerns are completely gone after the first day of use, then it's 100% waste.

👤 pjc50
> Why do so many... hacker type individuals seem to prefer very brutalist, utilitarian designs over anything more fancy?

> other fields, like architecture

Architecture is the field that gave us Brutalism in the first place. Not an entirely popular choice, too.

Readability is incredibly subjective, and it also depends not only on the individual doing the reading but the setup they have. If you ever have to argue with someone "actually, this is more readable, you're just reading it wrong" you've lost.

There is also the performance issue. Many people believe, with quite a lot of justification, that modern web pages have unpleasantly long interaction delays. I popped over to modern reddit for example and you can see that the subreddit names on each little post item on the front page take a few hundred milliseconds longer to pop in than everything else. When faced with a choice of delay or removing ornamentation, hacker types will always ditch the ornamentation.

One of the things you can no longer really rely on in modern software is typeahead, that is, issuing a string of commands faster than the computer is processing them. There's various situations where either you risk a sudden popup stealing focus and a series of keypresses not intended for it, or a UI element isn't focused and typeable and also eats input until it's ready. Type "facebook.com some text" at full speed into your browser and see what happens.


👤 ecshafer
I am personally of the opinion that software UI design has severely regressed over the last 20-30 years. I understand many normal users are afraid of terminals, that's understandable. But I wish we could go back to the 90s era of design. The issue then was not enough resolution. Its weird to hook up my retro computer with 1/100th the processing power and the applications are more responsive, easier to use, and better designed.

👤 satvikpendem
Because programmers usually don't know good UI/UX design, it's an entirely separate skillset. If they did, well, they'd be designers instead.

👤 jayd16
I can't help but feel like it's just sour grapes. Visuals are hard and if you can't hack them yourself they must not be worth it.

👤 bckr
Hackers like flexibility and maintainability. Because we put so much of ourselves into what we use, frequently tinkering and modifying to remove frictions and inefficiencies, we want this to be easy and we want things to keep working for a long time.

👤 cglan
I think because much like a mechanics tool, when programmers make programs for themselves it's just that. A tool. You see the same thing happening with other disciplines. Commercial trucks aren't very pretty compared to cars. It's function over form.

The difference is very stark with computers because often times you'll see consumer grade software and software catered towards programmers that lean more towards tools existing in the same domain. Hackernews also isn't ugly, it's just simple. It works great on mobile and it's actually well done.


👤 badrabbit
It looks better. Less clutter and mess. Utilitarian is a good term because a user interface ultimately is a utility. The type of interfaces you mention require no explanation to use, you don't have to think about how you do something, it is just obvious and typically being lightweight means less resource usage whether I am on cheap android-go or a fancy laptop that already has 500 tabs open.

Look at Linux desktop interface themes and design vs windows and macos. I want software that empowers meand gets out of my way, so my UX preferences follow suit.


👤 hardwaregeek
First, I'd say this is changing massively. More and more of software is about good design and beautiful interfaces. Compare even a CLI app, something very much in the utilitarian vein, from the 2000's (git) and from the last few years (ripgrep). Git does not have any sort of usability concerns. The commands are named in confusing ways (git blame? git cherry-pick?), the default editor is vim which is its own usability nightmare, and the outputs are very plain with minimal color. Ripgrep uses color, has a pretty simple setup (type in the pattern to search it!), and really nice help docs. Same with fd vs find and other tools.

And if you look at websites, well Hacker News is the last of a dying breed of websites. There aren't many sites that look like this anymore. Indeed a lot of the "modern web dev suckssss" crowd are not the people who actually build websites. Or if they do, it's only personal ones where they can have full control. If you asked any front-end developer to design you a Hacker News clone, at the very least they would limit the line length and increase the font size. It's just the vocal minority who insist that sites like Hacker News are the pinnacle of web design.


👤 gherkinnn
The same reason why my clothes are utilitarian and I can just about cook cereal. I don't care.

Now, in my defence I don't go around belittling the arts of cooking and fashion. They are fully justified endeavours. I just choose not to indulge in them, I hone the mind instead. Of course, one might say that eating and dressing will is beneficial on several levels, but fashion is whimsical. People come and go. Only intellect remains.

Or so I tell myself.


👤 PaulHoule
I'd turn the question around and ask: why is there so much white space in pages made by liberal arts majors? Why do many people prefer 140 character tweets to reasoned articles? Could it be that programmers know how to read whereas people who didn't know how to read in college and had to study English to learn how to read still don't really know how to read or write?


👤 kthejoker2
Some things never change.

From the legendary industrial designer Raymond Loewy's impeccably fantastic and cheeky 1951 autobiography Never Leave Well Enough Alone:

> Why were products and things so ungainly? To understand this, one must realize the industrial revolution had displaced the craftsman, and that engineers were really mechanics.

> The first mechanical products were put together by men of ingenuity and resourcefulness. The prime objective was to make the contraption work. Will it work? was the question.

> No one gave a thought to cost and far less to appearance. Products were "engineered as you go" and they betrayed this technique by their haphazard, disorderly look.

> By the end of the [19th] century, machines and products were more numerous, more complex, and engineers had been trained.

> Trained in everything except aesthetics.

> So when mass production appeared on the scene, the country became flooded with products, usually of good quality but clumsily put together ...


👤 tablespoon
> Cause it feels like many people's tastes come from the 80s/early 90s, with the idea that any sort of visual flourish or attempt at readability is completely irrelevant.

> And it makes me wonder why this is. Why do so many... hacker type individuals seem to prefer very brutalist, utilitarian designs over anything more fancy? Where did this preference for plain text at the expense of all else come from anyway?

I don't mind decoration, as long as it doesn't get in the way of using the thing.

The reason I prefer "80s/early 90s" UX is that it tended to be more "information dense" -- packing as much on the screen as possible rather than spoonfeeding tiny amounts padded with ever-increasing whitespace. Some of that might be a happy artifact of designing for much smaller screens than we have today, but I'll take it.

Also, at some point, change stops being an improvement and turns into change for change's sake.


👤 ilaksh
I'll give you a different take. For most of my web applications, I am designing and building every single thing including all of the front end and backend and any database. It doesn't make sense for me to spend a bunch of time on the user interface before the software actually works.

Then once it's working, there is a fair amount of CSS tweaking just to get basic spacing and other things to look okay.

At that point, there are usually functional bugs to fix, one more feature I need, and two other projects I want to work on. Satisfying the latest design trends is usually a very low priority.

For my recent project aidev.codes, I actually used Bootstrap, which is not something I normally do. But AI helped me with class names and stuff.


👤 ryandrake
In my view, 9 times out of 10, the best UX strategy for your application is to simply stick to the default native UI toolkit, set of controls, look&feel, and so on, and not try to re-invent or custom-style anything. As soon as you start designing, you're doing two bad things: 1. throwing away person-decades of UX research already done by platform vendors, which drove the defaults, and 2. throwing away any user customizations/preferences they have set up and expect to apply to their apps and web pages. There was a sub-thread in the recent BitTorrent article about what can go wrong when you as a developer start imposing your own color schemes and so on.

👤 temp2022account
Programmer Tastes fluctuate around while society recalls older tastes from movies/sitcoms/books; the net result is a passive positive-reinforcement feedback loop from prior art. Psychology has an entire branch studying these sorts of reality -> views -> reality -> views effect chains.

I'm convinced the brutalist, utilitarian designs originate with those of us who spend the most time close to their machines and originate from the needs of the _system_ before the needs of the _users_. As you move closer to end users there'll be more visual flair and ergonomic attention will move from favoring system ergonomics to favoring human ergonomics.


👤 juancn
Many flourishes detract from usability (not all of them though).

They're basically useless fluff. They don't help at all to get shit done which is what we want to do.

Interfaces should be simple and utilitarian, predictable, changing for the sake of change is bad (I don't want to re-learn).

Usually when an UI is stunning at first sight, it's incredibly hard to use and discover. UIs should fade into the background, you should just use them as if they weren't there. The less friction the better, and simple UI usually have less friction.


👤 65
Well, for one we don't do visual design professionally for a living, we write code.

Second, I think we're much more focused on getting the software to work in the most logical way possible, which means not having any unnecessary elements or ornateness.

I've found programmer websites to be much more well designed than designer websites. Probably because we can write the code instead of using a visual builder, which makes better websites.


👤 taylodl
This has been a trend of post-modernism: form follows function. Anything ornate and not adding to function has been removed. Look at our buildings. Look at our cars. This movement gathered steam in earnest after WWII (it actually started in 1896!) and gets "cleaner" with every decade. Fast-forward 80 years and here we are.

UI's are no different. Form follows function.


👤 kodyo
The design wizards are the ones who came up with gray text on light gray background, so there's plenty of dipshittery to go around.

👤 jabroni_salad
> like architecture, cooking or construction.

Get a backscenes tour at Disney or go trespass employee-only doors at any shopping mall and you will see what it looks like. Only stuff that is made for consumers gets dressed up nicely.

If you want something that is easy to maintain and change to suit your needs, then you probably aren't going to break out the fancy paint and trim.

>Where did this preference for plain text at the expense of all else come from anyway?

Because it is the swiss army knife of formats and I can do literally anything with it. Your use of 'at the expense of all else' is pretty amusing here, since using a fancier format is going to come at the expense of eschewing other possibilities not supported by that format.

Another thing to consider is the overall speed of the interface. I'm currently shacked up at an insurance company, and if I go downstairs I will see people speedrunning paperwork in an IBM terminal. The company has definitely tried to modernize this interface to make it more approachable, but every layer of paint adds latency and the workers error rate goes up due to the imprecision of it all. The only way this process is gonna get changed is if they manage to put a hands-free automation on it. Even though clock speeds are up, modern UI practices are unbearably slow once you get used to how fast things used to be.


👤 lawrenceyan
This is a philosophical debate between form versus function.

Function without form still works. Form without function is meaningless.


👤 fd111
Everyone has different obsessions.

Within one's obsession, design/variety/change represents progress. It's great!

Outside of one's obsession, design/variety/change is maddeningly useless churn. It's awful!

The fact that I couldn't design a pretty UI even if I wanted to? Well, there's that, too. :-)


👤 naltroc
You want design? We have design at home.

Oh wait, nevermind


👤 Izkata
> Because I don't think this happens quite as much in other fields, like architecture, cooking or construction.

It may not be as obvious in architecture because of the time scales involved, but it has been trending in the same direction for decades and centuries.


👤 ZoomZoomZoom
Design is utilitarian by definition, otherwise what you get is an adornment or an art object.

In design, aesthetics serve the utility function of an object, so as soon as the first hampers or comes into conflict with the second, you fail as a designer.


👤 shanebellone
I prefer readability above all else and often perceive "design" as a gimmick to misdirect visitors/users.

Some seem to think minimalism contradicts UX, but they aren't mutually exclusive concepts.


👤 spritefs
Because the added bullshit doesn't actually accomplish anything. Sites that add bullshit for the sake of adding bullshit are more likely to insert anti-user features and unnecessary JS

👤 creeble
If architects were builders, you would see many more utilitarian designs.

They just don’t have the same goals, and neither (typically) do software engineers vs UI designers.


👤 velebak
Why fancy? Basic works 99% of the time. Over-engineered interfaces simply get in the way, no matter how "cool" they are.

👤 derekzhouzhen
Because we can't? I've seen many that tried to be fancy and made it even worse. It is better to be utilitarian than ugly.

👤 Fire-Dragon-DoL
Because most good looking UIs sacrifice that in favor of functionality.

I'm all for good looking UIs, they are just garbage most of the time.


👤 fulafel
Is there evidence saying programmers generally prefer brutalist and utilitarian designs as consumers of design?

👤 simonblack
"A job is not finished when there is no more to add.

A job is finished when there is no more to be taken away."


👤 adwi
“Form follows function”

👤 keep3490
Because I add my own design. None of websites I see have original design, I use my own colors, fonts, hide some elements etc... Use Firefox in reader mode to get an idea.

Modern web design usually has horrible usability. Try to read modern web in brail terminal to get an idea. Or on GPRS connection (2G phone, 10kbps internet speed).

And I ensure you such trend is also in architecture, cooking etc.. Modern architecture often does not have basics like windows or daylight. Architect wants smooth facade, so people inside suffer... Modern cooking is preprocessed garbage, so even basic potato diet is better and so on...