On usability by neophytes

I was going to put this in the General topic, but since it is really a question about philosophy and not a suggestion that FreeBSD change, I put it in Off-Topic

-----

In the many discussions about FreeBSD user share, whether it needs a standard desktop to woo Windows refugees, and stuff like that, it is often assumed that the slick graphic screens of Windows make life easier for users. They certainly reduce complexity and clutter, but that is not necessarily the same thing.

Sometimes on Windows, you get a Blue Screen Of Death and a STOP code. So you look up the STOP code on the 'Web, and there are 456 posts on various forums, with various "solutions" that may or may not work, including the ever popular "Reinstall Windows and see if that fixes it". Maybe this is the best you can do for the completely computer-illiterate user, but for one that is even a little bit computer-savvy, it would be much more useful to have a hint about what happened. If it is a device driver problem, the user can think about what new devices they really installed; that sort of thing. With just the STOP code, the solutions vary all over the place, and some almost seem like it was a random error that a reboot fixed, and the "post hoc ergo propter hoc" fallacy was in play.

It you have a boot problem, you can boot up recovery mode, and it has a tool to try to repair the problem. More often than not, it ends saying "We could not fix your problem", with no information about why it couldn't fix it. Same thing with the network troubleshooter.

FreeBSD, most Linuxes, and even my alma matter, MVS on the IBM mainframe, display a bunch of messages during the bootup process, and they are very useful in troubleshooting. For example, when I was installing FreeBSD on an Alder Lake CPU, the installer would hang during boot, just after a message about a bad UART. I asked about it in the forums, and was immediately pointed to a solution that involved setting up a hint to ignore the bad UART. If messages were hidden like Windows does, I would just be posting "I am trying to install FreeBSD and it hangs", which would be useless for troubleshooting.

FreeBSD takes the approach of showing you all the messages, whether you need them or not. I am very happy with this approach, since I spent 45 years watching the messages when MVS systems were booting up. But this is overwhelming to non-computer-savvy folks, especially considering that there are several messages that say this or that is not working, or not configured correctly and this just means it isn't going to be used by the system, not that there is a catastrophe. Perhaps a STOP screen should display the last 20 console messages and say "When you report or look up this error, please include these messages" or something like that. (Actually, as far as I know, Windows doesn't have a console log, it has the event log, which is sort of a database. The data is all nicely structured, but it is harder to follow the sequence of events, because you have to select each log entry and look at it. So maybe they would have to reformat them for the BSOD page.)

So when we talk about how Windows is easier to set up and use, that may be true when everything is working fine. But when there is a problem, it gives you few tools to help yourself. FreeBSD gives you all the tools you need, but can be overwhelming for the beginner.

Another thing is the installer. The graphic installers, with flashy graphics, and selecting options via mouse are pretty, and comforting to the newcomer. On the other hand, the clunky FreeBSD installer works the same whether you are installing on a device with a high-end GPU or a device with just a serial console which is a very useful thing.

I don't thing FreeBSD should tie itself in knots trying to chase Windows users, because that is not its core playing field. But I think it should be remembered that when we are comparing things to Windows, Windows is *not* the paragon of user-friendliness that some think it is.
 
At this point, Steve Jobs (who I fortunately have never met) would say: You are fixing the symptom. But the symptom only exists because you are thinking about the problem wrong.

A system just isn't supposed to crash. Helping the user debug something like a stop code, an unsupported device, or a similar problem means you are not serving the user's needs and wants. What does the user need and want? A functioning computer. They are not a hacker who likes to build rube-goldberg machines, they want to edit documents, crunch numbers in a spreadsheet, browse the web, listen to music, watch pron, edit movies, or some similar task. So let's built a system for them that serves those things they care about. For example, there is no "install": When you pick up the computer at the store, it is ready to use, after minimal configuration (like entering your name and what login password you want). There is no details about "upgrade": A window comes up saying "your computer needs a 1/2 hour downtime for upgrades, do you want to do it now or wait until later". During the upgrade, all the information you need is a (pretty accurate!) bar that shows progress, and that is a little pessimistic: If it says upgrade will take 1/2 hour, it should finish in about 27 minutes. There are no log entries that users need to see. If the system really misbehaves, you take it back to the store, and if it is within the warranty period, someone will make it work again (after the 3-year warranty expires, you might have to pay for the service). Perhaps by giving you new hardware, and copying the most recent backup from the cloud, which is guaranteed to not lose more than 5 minutes worth of data. If the hardware happens to be unreliable (so the store has to replace too many computers), or the software has too many bugs (so the genius bar folks have to spend too much time reviewing internal logs and straightening things out), that is not an issue the user needs to be bothered with; instead the feedback from the customer support infrastructure has to be directing improvements in engineering and manufacturing.

This is a completely different vision of computing, compared to what we typically discuss here on the FreeBSD forum. We are tinkerers, we enjoy playing with our computers and their hardware. We use FreeBSD because ... a complex variety of reasons, including: it's cheaper, it can be used for non-standard tasks (using a Mac as a WiFi AP doesn't work well, using it as an always-on server including DNS, DHCP and SMTP is hard, or we like to practice our administration and programming skills to get ahead in our IT careers.

And also note that today's Apple products are not quite as good as my description of user-centric computing (above) described. But they are close, and are striving to get closer: the computer as an opaque box which works well, as long as you are willing to use it for its intended purpose, and are happy to remain in the walled garden.

In my (not at all humble) opinion, FreeBSD shall not try to serve that market better. That market wants Macs, or Windows boxes, or perhaps Linux distributions that are nicely preconfigured. FreeBSD shall try to serve the market of people who want everything on their computer to be very open, very clear, and very flexible to modify and configure. Even if it requires a lot more work to get it to run and keep it running.
 
During the upgrade, all the information you need is a (pretty accurate!) bar that shows progress, and that is a little pessimistic: If it says upgrade will take 1/2 hour, it should finish in about 27 minutes.
This is one of the places where you can tell Steve's been dead a while. The "upgrades" take longer and longer, and the progress bars are less and less accurate. I used to joke about the "Windows progress bar". You know it - it zooms to 95% and then stays there for 25 minutes. The last 5% happen so fast you usually miss it. I'm starting to notice more and more Windows-style progress bars in Mac OS.

And also note that today's Apple products are not quite as good as my description of user-centric computing (above) described. But they are close, and are striving to get closer: the computer as an opaque box which works well, as long as you are willing to use it for its intended purpose, and are happy to remain in the walled garden.
I disagree with you here. Tim Cook came up as an operations guy, and as such, he's trying to streamline things to cut costs. Macbooks and Mac desktops are becoming more and more like big phones, and I expect this to get much worse.

In my (not at all humble) opinion, FreeBSD shall not try to serve that market better. That market wants Macs, or Windows boxes, or perhaps Linux distributions that are nicely preconfigured.
I think they just want phones. That's the computer most people use nowadays.
 
To me the question is way more shallow.
that the slick graphic screens of Windows make life easier for users.
Is this the case?
Does a Windows-like GUI really make life easier?
Or is it just an illusion?
Based simply on one is used to it, and simply face a barrier of learning something new?

To me Windows GUI does not make life easier.
It only seems so. And that's enough and all it needs to sell it.
It looks attractive. Colorful. Blinking. No boring texts but funny, even animated pictures to click on.
Seems to be clearly structured.
Seems to be can be used intuitively without any learning effort.
Seems.
On a closer look that's an illusion.
And if you put it to the test, you agree I'm right. (At least in this point)

A desktop GUI like Windows with a mouse is for something you can control with one button - ON/OFF, start a program by clicking on some icon instead of having the weary effort of typing 'start program' with a keyboard.
(Of course I excluded some graphics design work, and computer games, which usage is also mostly to click on single buttons.)

For anything more complex as to be handled with three buttons, five at most, work efficiency drops steeply to rock bottom.

Anybody experienced the usage of computers with a shell knows that using a CLI for most cases is way more efficient than doing mouse-kilometers.
Or watch at CAD-designers at work. The fast, the efficient ones use the mouse only to select a point, but almost all of their work is done by using the CLI, and keycombinations - using the keyboard, not the icons of the GUI.
Programmers using texteditors will tell you the same:
Doesn't matter which editor you're using, if you want to become fast, use the editor efficiently, you need to learn its keyboard-commands.

Windows GUI is an illogical, non-intuitive, confusing mess of uncomprehensable non-standard verbiage,
drowning in needless redundancies, simulating you're doing a great job on it, and the system cares, works for you, helps and assists you by constantly popping-up some garbage message windows, which simply just interrupt, annoy and distract you from your actual job on the machine, only.

So in the contrary Windows lowers productivity.
It actually makes life harder for users.
The trick is: User don't recognize.
Especially if they never experienced something else.

Anyway:
The question is:
Do FreeBSD wants it?
Do we want it?
Do we want FreeBSD become more Windows-like just to gain more popularity?
Does this make sense?
This will end up in some other become-Windows-like attempts like those turn-key Linux distros (Ubuntu, OpenSuSe, etc.)
There are also already several attempts of doing this on FreeBSD base.
There is Dragonfly, and several others (I don't know the list, since I don't care.) Some of them are dead, others aren't,... I don't know, I don't care.

Every now and then the question comes again why not turn FreeBSD also in something like this?

Where is the benefit in this?
Also for the Windows-refugees.

To me it's like the idea for to make your diving-club more attractive by making swimming lessons for newbies easier by make everyone wearing a lifebelt.
You will not learn to swim that way.
You'll only receive complaints about the missing diving experience.

Besides there is already way more than enough like this.
An almost infinite number of Linux-distros as also several FreeBSD-based ...'distros'
Ever asked why not pick one of those?
Let me guess:
Not a single one suits you perfectly.
How much more of those do you need?
Until some developers group came up by chance with the autoconfiguring turn-key OS that exactly suits your personal, individual needs perfectly?
There is no 'what suits me perfectly will also fit all others.'
There only is 'one size fits many but nobody perfectly.'
Or you tailor your own 'distri'.
Do it yourself!
That's what FreeBSD is for.
That's why its's modular.
That's why it's the way it is.
And that's why it shall stay the way it is.

If you want some most Windows-like DE do a pkg install kde, wait a couple of minutes,
and voilá there it is, your most Windows-like experience on FreeBSD.

But don't bother me (and others) with uninstalling KDE (or any other DE) everytime I do a fresh installation of FreeBSD,
because I don't like it, and just because every now and then here comes one thinking it's a neat idea if everybody have it installed by default automatically for he or she simply saves this short installation command.

In my eyes there is no need to kill FreeBSD as it is, just to get another turn-key-'distri' that also does not satisfy everybody, again.
If so, where else to go then?
Right.
Someone comes up with the idea to do some OS that is modular, can be made to be used for servers, embedded systems also as for anybody can assemble its own individual, personal machine, even desktop experience with DE, or WM, only.
I bet, then again someone will come along:
"That's great. Really!
But wouldn't it become more popular, if ..."
 
his is one of the places where you can tell Steve's been dead a while. The "upgrades" take longer and longer,
In my eyes it's worse, way worse.

Since Steve Jobs is gone, Apple will not bring out any revolutionary device anymore.
Such companys are run by salesguys.
Those lack of every technological expertise to recognize creative, progressive development such things demand.
And they don't trust their own developers.
They simply look what others do, watch market trends, and if something is successfull, they join the market, or buy the company. But they are not capable to bring up anything new by themselves, but worse block anything possible revolutionary from their own engineering departments.
When Apple brought out its first iPhone I bet in some other company's development departement the door bursted open, the CEO turned up crying:'Why we don't have this?!!'
And an engineer opened a drawer, pulled out some papers with drafts, sketches, and some electronics tinkered prototype kit on it:
'I proposed that three years ago. You threw me out of the meeting-room. Laughing at me. Telling something about way too expensive. No use for such silly ideas crap from the engineer's land of fairy-tales.'

The advantage of Apple was not Steve Jobs was some creative genie. Cause in my eyes he wasn't.
Steve Jobs did not ignore the creative developments within laboratorys.
Steve Jobs was capable to recognize promising ideas.
He did what all his 'O's never would: Dare new things.
And above all because of it was his company Steve Jobs was simply capable to say:
'This will be done.'

With Steve Jobs gone, I expect Apple to become the same common, boring, ordinary computer company as others, sooner or later make them customers suffer the same problems. (They are almost there.)
 
Yeah right, seems you have missed the Apple Watch completely.
Thats revolutionary?

I see barely any of them out in the wild. Its not like Apple's iPod/iPhone that completely changed the way people thought about phones (IMO for the worse).

The Apple Watch is more like bluetooth headphones. Kind of obvious as an evolution but ultimately many people don't like it.

I personally feel that tech has stagnated. Everyone is too focused on graphics / pixels on a screen because its fun and too easy to have an input. Everyone "kind of understands" it so has preferences. Unfortunately preferences are not really worth much. What I like is not going to be what you like or what my father likes. So which is better? None of them. Same old crap going in circles since Windows 3.1.
 
I see barely any of them out in the wild. Its not like Apple's iPod/iPhone that completely changed the way people thought about phones (IMO for the worse).
You need to come to the Bay Area. Seems every other person has one of those damn things on. It's so awesome when you're talking to someone and they start ignoring you because their "watch" is notifying them about some very important development on Xitter or whatever.

But hey, this place is full of people who thought Google Glass was revolutionary. Come to think of it, maybe I've diagnosed the reason why enshitification is progressing apace.
 
Yeah right, seems you have missed the Apple Watch completely. The thing is you can do revolutions only once in a while, you cannot do it every 2nd year.
- April 1996: Apple reports Q2 results. It reports "...a loss of $740 million, on top of a $700 million loss the previous quarter." The new Powerbooks are literally catching fire.

- September 1997: Steve Jobs is made interim CEO of Apple (iCEO :))

- August 1998: Jellybean iMacs are released

- March 2001: First release of Mac OS X

- November 2001: First iPod released

- October 2003: Jobs is diagnosed with pancreatic cancer

- January 2007: First iPhone released

- October 2011: Jobs dies

- April 2015: First iWatch released

Yeah, I skipped the iPad, Apple TV and a bunch of other stuff. I couldn't be bothered.
 
FreeBSD shall not try to serve that market better
I would prefer that FreeBSD "just work" like Windows and MacOS, be easy to install and update, and be preconfigured. This is not incongruous with being flexible and easy to modify.
 
Might it be possible to have some config ports which only install preconfigured configs and maybe a few tools to make this happen? We are happy with a system that comes clean out of the box, with no assumptions. Assumptions are your job, and if you could select some from ports without burdening everyone with them.
 
The installer could just ask if it should make the "assumptions" for you or if you want to make them yourself (normal flow).
 
FreeBSD does "just work" for the most part. It does precisely what it says on the tin and usually has one canonical and predictable way of performing a task that is properly and uniformly documented. I love FreeBSD for this reason.

Back in 2000 I got cable internet and was able to download FreeBSD. I bought a book about it and started learning. The majority of that knowledge still applies today and we're ten major versions away from what I started with. Compare Windows 2000 to Windows 11 and weep.

As the user you are expected to learn. You weren't born with the ability to use a Mac or Windows either. Why is RTFM such a hurdle on an OS that actively tries to help you with this?
 
As the user you are expected to learn.
Users actually just want to do something on the computer, like browse the web or write a paper, not learn how to install the OS, which is a thing you should do maybe twice on a computer.

To be clear I've been using FreeBSD since 2.2.6
 
Users actually just want to do something on the computer, like browse the web or write a paper, not learn how to install the OS, which is a thing you should do maybe twice on a computer.

To be clear I've been using FreeBSD since 2.2.6
Sure, but then you buy and use what you know or need. I wanted to host a website at the time so I picked up and learned FreeBSD. I knew Windows NT already but the price was prohibitive. I never looked back.

Simply put though: I wouldn't cater to people who are not prepared to learn. If you don't already know UNIX, then it's not FreeBSD's job to bend over backwards and look like something else.
 
ralphbsz post above is exactly the point I've made over the years. One line I use in some cases is that FreeBSD is a Mack truck. Quit trying to take the family van to your construction site to do the heavy work (and variations of that).

It feels, sometimes, the same as how Lisp programmers must feel. I'm pretty sure Lisp programmers don't care about Rust or Swift or any of the other languages.
 
I'm sure it's been said in this thread, that there is GhostBSD and Nomad, both of which aim to be out of the box usable.
I agree with others who have already stated, that it's fine as it is, let's not turn it into something more newbie friendly, that makes it more difficult to strip away various GUIs, the way RH has done to Linux. If you want a more tech oriented LInux do you use Ubuntu? Probably not, though you could make it into a mostly-manipulated-by-text system, (or maybe Ubuntu server does that, I don't know). You go to Gentoo, Arch, or one of the others made for more technical users. Same with FreeBSD. You already have some things aimed at the less technical.
 
You already have some things aimed at the less technical.
Exactly. And if we went on the Microsoft Windows forums and suggested that they strip the OS down to the core NT kernel and extra lean userland because we find it more user-friendly (and it would be!), they will tell us to bog off ;)
 
Whatever people, personally, think about the importance of being intentionally difficult, here's the 15.0 planning notes from the developer's summit. After reading these comments and then seeing the "graphical installer" and "mash enter until done" I get a good chuckle. I think maintainers don't agree with you. Which is fine. Nobody's taking your "complexity" away from you, just the gatekeeping.
 
Back
Top