
Wednesday August 08, 2007
While I was on vacation last week, the following email was sent to the OpenSolaris discuss alias (posted here with permission of the author):
-
Subject: Solaris "thinks" that my standalone desktop is a huge network....
By "standalone" I mean a computer that is not part of a LAN, not even on a peer-peer connection, but one that gets on to the Internet.
I have a desktop with Sun Solaris and I have this problem. Solaris thinks that my standalone desktop is a huge network with a thousand users or more. I need to figure out a way of making Solaris understand that I am the only person using this compuer which is all alone, by itself.
I name is Shiva, and I want to tell my computer that it is my computer. It is ok for me if it allows another person called "root" who I figure out is a someone who is knowledgeable enough to get down to the root of the computer, it is not going to be me, it would be the support professional who would at some point of time visit me to look into my computer. But who is nobody? who is nouser? who is guest? What are groups? Why does Solaris say that I don't have the rights and privileges to access my DVD drive?
Why does Solaris wait for the root user to log in to shut down my computer ? I can log out as Shiva, but I don't see the controls to shut down. So, I phone up support to come in and log in as root and shut down my machine every afternoon, evening and at night and in the middle of the night.
And Solaris doesn't say yes immediately. It agrees to shut down, not until allowing 60 seconds to all other users who do not exist, after it sends out a "broadcast" announcing the "system" shut down, while I wait with my eyes fixed on the monitor on the messages that flash by in commnad prompt which I can't figure out, until Solaris finally shuts down...
Solaris thinks that my computer is a huge network, so offers me plenty of functalities that I am not going to need nor understand.
Solairs is elaborate, very elaborate and robust, but my computer stands alone. What do I need to tell Solaris to offer me just what I need and no more ?
What components are needed and what need to be stripped ? If my computer is a standalone ?
When I saw the subject, I was thinking, what the heck is this person talking about? When I read it, I was just dying with laughter. I was just amazed. It was so funny, and so right on. This is probably one of the best emails I have seen on that alias in months. I was sitting next to my husband and just going on about how great this email is. Really, it should be on the approachability alias. It just perfectly encapsulates some of the key issues with Solaris and OpenSolaris.
Then, I read the replies. Oh man, I could not believe it. WOOSH! That was the sound of this email going right over their heads. Not just a few people, no, *every* one of them just did not get it. I was thinking, oh no way, how could they take this email seriously?? People were trying to "educate" the imaginary Shiva on what root is and how they hoped there was some competent admin there running his system for him. Some were angry that Shiva was not interested in learning how to be a Solaris expert but just wanted to use his machine like a dumb Windows box. It was just sad really.
Come on! Would anyone who knows that little about unix and/or linux be on the OpenSolaris discuss alias?
Is it any wonder that OpenSolaris and Solaris aren't your mother's unixes? Nope, because we don't get it. We write code that makes it do what we, the unix geeks, want. We have no clue what many of our customers want. We want to expand our market share. How many geeks like us do we think are out there? We have no prayer of breaking into Windows' market share, or make a significant dent in OS X, because most of the people using computers out there are like Shiva, not like us. OS X has proven you can be UNIX and still be totally functional for all the Shivas out there. My parents both use OS X. They couldn't tell you how to get a command prompt or what root is but they can make their computers do everything they need them to. They can get them to do more than I can get my Solaris 10 desktop (working as a desktop, not a server) to do, and I am supposed to be an expert.
All the folks on OpenSolaris discuss wanted to do was just make Shiva go away. They wanted to tell him why he was wrong (or uneducated, or both), Solaris was right, and "teach" him how to use his computer our way. Don't get me wrong here. Solaris is great. If I was setting up a server, I wouldn't choose anything else. It is absolutely the best OS for that market. As a desktop, it is not there and it never will be until we get it.
Maybe we need to take a few refreshers on requirements gathering (and also on HCI).

Thursday December 07, 2006
I've been told that for Linux, efficiency trumps all other attributes. For OpenBSD, security seems like the number one attribute. Something like Exokernel would put flexibility at the top. For Solaris, robustness and compatibility are good candicates for being in the top three.
Other operating systems have attributes they explicity don't care about. Plan 9 creators decided against compatibility (with UNIX) in favor of doing everything over the "right" way.
So, what do you think the top five (increased from three) attributes for Solaris, Linux (you can even break it down by distribution), OS X, the various BSDs, and any other OS you are interested in? This is a list of the top five design goals of the OS, not necessarily what attributes it actually displays.
Here's a list (not complete) of some attributes to consider:
- robustness
- maintainability
- security
- interoperability/compatibility/standardization
- useability
- efficiency/performance/speed
- portability
- flexibility
- scalability
- correctness
Here's my first pass, I'll update this based on any comments.
| Solaris |
robustness, compatibility, scalability, security |
| Linux |
performance (changed from efficiency), portability |
| FreeBSD |
compatibility, robustness, maintainability |
| OpenBSD |
security, portability, standardization, correctness |
| NetBSD |
portability, interoperability, security |
| OS X |
useability, robustness |
| Generic μkernel |
flexibility, useability |
| Windows |
profits, lock-in, global domination (from comments) |
If an OS is not here, its because I was not able to come up with anything I felt comfortable with. Oh, and I am not only talking unix-like OSes. I did not leave Windows out intentionally, I just don't know enough about it to know what its design goals are.
For anyone who may be following it, I will get back to the 64-bit processor series in the next post.