Wednesday, December 22, 2010

Developer's Syndrome and why Linux can't replace Windows (yet).

Let me clarify right of the bat.  Linux in it's current state cannot replace Windows as a dominant operating system.  What I will try to do is explain why I believe that and hopefully explain how Linux can finally kill Windows (please, it needs to be done).

Developers Syndrome is something I thought up one day working with a program I use every day at work, a Windows program by the way.  There are so many settings that end up in no particular order at all.  The program is amazingly advance and can do just about anything, but it is so un-user friendly that it's impossible to use the advanced settings.  This got me thinking, how detached must this developer have been from his end users to design something that can only be used by someone who could design it.  Let me make this clear, I've been working with computers for over 25 years, been a damn good tech support for more then 6 and I can't get this thing to work properly.  I can get Windows Vista to work better then Windows XP, why can't I get this simple software to work?

So, I give you Developers Syndrome - the condition where a developer creates something that, while well programed and vary useful, cannot be used correctly without knowledge comparable to the original developer.

It wasn't until last week, when I tried to get the beta version of Chrome OS to work on my tablet, that I realized the developers syndrome applies to Linux.

Here's my problem;  I installed Chrome OS, built on top of Suse Linux.  Everything went perfectly, I was able to play games, surf the web, check my Google mail.  My built in keyboard worked and even the touch screen was installed, just not calibrated. 

The first thing I tried to do was get the touch screen working.  I didn't have to, the Samsung Q1u had a built in mouse, but I thought it would be cool.  As far as I dug into the settings, I couldn't find anything that would let me calibrate a touch screen.  I couldn't even find reference to the touch screen outside of the device manager (I know, that's a Windows name).  I shrugged that one off figuring I just didn't know where the setting was and moved onto the next problem.

This is a tablet, an ultra-mobile PC as Samsung puts it, it's made to be wireless.  Wired it worked, but where I was going to use it had no wired connections.  The first thing I did, out of habit from windows, was look at the task bar to see if there was a wireless icon I could use to configure it.  No, but it's Linux, more advanced then windows.  I dug threw the settings and found the wireless configuration.  I put in all my information, the card I wanted to use, SSID, WEP key (don't care about security), set it to DHCP and hit OK.  Nothing happened, no indication that it worked or that it didn't, or even that I had to do anything else.  I tried Firefox and as expected, it didn't work.

I pulled out my giant, 8lb laptop (why I want to get the tablet working) running Windows 7.  Got online and looked up how to configure wireless in Linux.  Everything I found said to do it exactly the same way I did, nothing else.  I was proud that I had figured out the correct way to do this, but I was disappointed that it didn't work.  It must have been something I missed, I found stories about others getting it to work on the Q1u.  The problem is that there's no indication of a problem.  Was it something simple like I didn't find the "connect" button or I typed in the WEP key wrong?  Was it something more advanced like the wireless card drivers weren't installed even though it showed up with the correct modal number in the device manager?

This isn't the first time I've had this problem.  When I had a working PS3 I installed Yellowdog Linux.  It worked when it was wired, but when I wanted that cable for something else, I couldn't get it to switch to wireless.  Same exact problem, I looked it up online, found I was doing the right thing, but had no indication of what was wrong.  I figured that was a problem with Sony blocking hardware to Linux in their natural paranoia.

This isn't the only problem I've had with Linux.  Installing programs is a royal pain in the ass.  You can't just double click on the RPM file, it won't tell you if it failed to install.  You have to go into the command prompt and install it that way before you know that it failed.  And the error message isn't clear as to why it failed.

To finally come to my point, if you're writing a program, any program, think of all your end users.  You are not going to only have two kinds of people, the complete idiot (who doesn't know there is no such thing as an "any" key, and that's a fallacy anyways) and uber programmers.  You will have everyone in between.  You will come across someone that wants to do something your program does naturally but isn't used by the "any" key guy, make sure that person can use it.

Look at the Android OS.  I know it's a simple OS and probably won't translate to a desktop, but it is a perfect example of a Linux operating system that can be used by everyone.  The "any" key guy can call people, browse the web, use the app store.  The uber programmer can make his own programs, even rebuild the OS if he so chooses.  And I can use it, I can configure the advanced settings, I can install programs from elsewhere, I can even see why things don't work like I think they should.  Hell, I've even installed the Cyanogen Mod.

I've tried to make this as constructive of criticism as I can, this is not to bash Linux, this is in the hopes that Linux will kill Windows.

9 comments:

  1. I am techdirt reader and followed your link.

    First and foremost: I am a Linux user. I have not owned Windows in over 2 years, and only use it some at work.
    What I read is that you had problems with ChromeOS. Now, I am under the impression that ChromeOS is not a stable release yet. They are just now sending out test hardware. (I may be wrong, though)
    You are basically saying (yes, car analogies suck) that you installed a completely different engine into your car and are pissed the hoses don't match up.
    Have you tried straight openSUSE or ubuntu? Do both those have the same problems?

    Also, on another note, in LinuxMint (and Ubuntu, I assume), double-clicking on a .deb (like a .rpm) opens a special installer program that will do all the dependency checks and stuff for you, including giving errors in the GUI.

    To me, and I don't mean to sound like an ass, it seems you are saying that you are a power user, but aren't acting like one. I install Linux is weird places all the time for the hell of it, but if it doesn't work I don't blame the developers. I see if maybe(shock and gasp) I might have made a mistake. I am not saying you did, but we are all human.

    But your advice to programmers is excellent. We have plenty of shitty software at work due to the fact that the developers have never once spent anytime actually using their product.

    ReplyDelete
  2. Quick, go back and reread what you just wrote. Do you see what I'm going to point out first?

    "Have you tried straight openSUSE or ubuntu?"

    "Also, on another note, in LinuxMint..."

    That's the exact mindset I'm talking about. You didn't say "are the drivers installed?" or "What error did you get?" you instantly went to try another version of Linux. That is not a user friendly answer, but I've come to expect that from Linux users. You guys have to do everything the hard way so it's completely normal to you. It's not normal to the rest of the world.

    That's a habit that not only will developers need to get out of, but Linux users as well. You are the face of Linux, when people start into that OS they see you. When you act like reinstalling an OS is a simple and viable option, it turns people off. Remember, 95% of the world has no idea what your talking about, once that sinks in fully, Linux will do just fine.

    You don't sound like an ass, you sound like someone who's been using Linux for years. My dad sounds the same way, he's been using Unix since the 70s. The only difference is he did tech support for windows for 15-20 years so he understands the average user even better then I do (I've been doing tech support for 6).

    I didn't post this for an answer to my problem, I posted it in the hopes that someone will understand. Though I will check out Linux Mint, never heard of it before today.

    ReplyDelete
  3. ....Is this on a normal PC?
    No? Well then, I think my answer stays the same.

    I work in IT, I do Windows support. Just because I don't use the damned software personally doesn't mean I have no idea what it is.

    I asked how does it work when not using a super-specialized, UNRELEASED, OS as opposed to a released and well documented/supported OS. Can you even see your driver list in ChromeOS? This is more a problem in the fact that I have no experience with ChromeOS, and from what I have read, normal troubleshooting isn't going to be useful. I am truthfully sorry your experience with an (I repeat) UNRELEASED OS based on Linux was bad. I truthfully am. If I had a tablet like yours, I would test it for myself. Since I don't, I can't. I can only assume the problem is with the (again...)UNRELEASED OS.
    As you can tell, my problem is your complaining about an OS that is about as bleeding edge as you can get without using Arch. In fact, even more so, that distro has a great community around them.

    I seriously doubt I am the "face" of Linux. I am just a single user living in the deep South (Ms). I can list off only twenty Linux users and only two full time Linux users like me. I am just a user that has used Linux for a few years. I have taught myself everything I know from trail and error and the Internet (my favorite saying: "If you have a problem [with Linux], someone, somewhere, using Ubuntu, has had it first.")

    And I know you didn't post a help request. The absolute lack of any detail other than tablet model, and some messed up SUSE/ChromOS hybrid (I am still confused at that, and would love to be enlightened), plus a problem or two, does not a help request make. I was answering your specific comments, trying to skirt your specific complaints and hit the generals.

    Oh, and on Linux version: I was an Arch user up until about two months ago, when I switched to Linuxmint. I came to the conclusion that, once you understand this stuff, Linux is just Linux, ya know?

    Anyway. I am seriously sad that you have a low opinion of Linux users and the developers. We aren't all like me. I promise you, I am an ass in real life (I mean come on, I support Windows!), but I don't want my particular brand of insanity to taint your opinion of the entire Linux ecosystem*.



    *and it is an ecosystem. That is a critical difference that many people ignore/don't understand. There isn't a One, True Linux, The Once and Future OS. It is just a whole bunch of cool people doing awesome stuff with code.

    ReplyDelete
  4. Google ate my comment.

    Needless to say it would make you weep with joy if you could have read it. As it is... I am going to bed >_> I will try again tomorrow.

    ReplyDelete
  5. See, now you sound like an ass. You're not understanding what I'm saying, you seem to not even be trying.

    I know the OS works with the hardware, others have made it work. I have also had the same exact problem with a tested operating system. I know it's something I'm missing.

    When I said "you" it was a general you, referencing all the Linux users. Current Linux users are what potential users see. When they see an ass they think Linux is for asses.

    You're comment got eaten by Google because you wrote it like spam. I pulled it out of the spam filter due to this being a perfect example of how Linux people act. If someone doesn't instantly understand Linux, they must be absolute morons. If they use Windows they must be asses. You're not alone in this opinion. I see it all the time working with Linux. Every time I try to get help doing something simple I get crap.

    This is why Linux will never become the dominant operating system. The people who use it are assholes and people who truly need help will just go to a tech that will help them, usually a Windows support tech.

    I don't mean to insult all Linux users. I'm sure someone out there is a nice Linux user, but god help me, I've never found one.

    ReplyDelete
  6. I am now actually confused. I reread my post (thanks for saving it, Google's error was "request URI too long" so I thought it was gone for good.) and i don't understand what you mean . I might be reading the wrong things, but, to me, what I wrote was more apology than anything else. And yes, on the whole Linux users could have better PR. The vast majority of us are smart tech people (thankfully this is changing, albeit, slowly) without many social graces. We are a very passionate people, and most of us are angry at slights, imagined or real, and that is not your fault.
    I promise there are plenty of nice Linux users that will help you out. It just sucks that you got me. maybe we can come to an understanding.
    (if you can extract my email from these posts, you can shoot me an email to continue this (hate for google to eat my comment again))

    ReplyDelete
  7. I reread you post with the idea that it was apologetic, and I can see it now. I was mistaken, but I don't think it was an unjust mistake. Emotion doesn't translate well to words, as a wannabe author I know. Just reading the words it sounds bad, even Google's bot thought so. But I still think it's a good example of what I'm talking about, just for a different reason.

    From my experience trying to learn Linux, as you have threw trial and error and the Internet, I have found that most Linux users (or at least the most vocal ones) aren't user friendly. This can stem from two different reasons; one is just being an ass, the other is a symptom of being intelligent. Being intelligent brings a deliberateness to the way one talks that can and will be misinterpreted as arrogance or insulting (you can probably see it from how I'm typing this).

    Linux does not have a marketing department like Microsoft or Apple, when people first hear about Linux they hear it from people like you. People like you are the marketing department. Imagine if a Microsoft commercial sounded like your last post. The winning OS would be Mac right now.

    The Linux front end stems from the same thing. A lot of really intelligent people are writing something that is really amazing but are doing it in a vary deliberate fashion. And it shows.

    When a new user first starts up Linux it looks fine. There's a main menu, there's the time, there's a bar that has all the open windows in it. Click on the main menu then click FireFox and hay we have the Internet. But what's this, it's saying "Page cannot be displayed"? Oh, that's simple, I have to setup my wireless. Now how do I do that? Someone who doesn't know has to spend ten minutes digging threw the settings to find the three tabs they have to use to setup a wireless network or they have to Google it on a PC that already works just to find out it's a six step process. OK, we got that working, and I found something cool I want to install surfing the web. I download it, double click on the installer and everything looks good, but where did it go? It said it installed, but I'm not finding it anywhere. So it's back to Google just to find out.

    Do you see how this can get vary frustrating quickly? Can you see how an OS like Windows can be so enticing? Setting up a wireless network is a three step process if you have a network key. When you install a program, it tells you where it put it, assuming that it didn't create a desktop or start menu item.

    This is how people outside the Linux community see it. Getting berated, even if it's unintentional, makes people even more frustrated.

    Now, in my research I found that Fedora 14 does have a nice pretty front end (like Win7) for networking. Once I find my USB DVD drive, I'm going to install that on my tablet to see if that helps. For all I know, someone already figured out what I did just last week and has already fixed it.

    I cannot pull your E-Mail out of your comment, but I promise I'll keep an eye on the spam folder and pull any non-spam posts out of it.

    ReplyDelete
  8. I am going to just pick one particular part of your post out. Specifically when you said:
    "OK, we got that working, and I found something cool I want to install surfing the web. I download it, double click on the installer and everything looks good, but where did it go?"

    That is not a problem in my book. As a support Tech, supporting Windows over anything else, I know users don't know about the start menu > all programs. I also know that it is the program installer, not Windows, that puts a shortcut on the desktop. This does not have to be, though.

    There will always be a learning curve for any OS. People switching to Mac have a learning curve, people switching to windows have a learning curve and people switching to Linux have a learning curve. Just because a piece of software takes a few minutes to understand doesn't mean it is bad, or not user friendly? If I had never in my life used Windows, setting up a wireless network in Vista and below is a chore. I know, I have to do it all the time. 7 supposedly made this easier, but I don't know. If you use a mac (and I have to support them too) setting up a wireless network is actually less user friendly then Linux. It doesn't even tell you that there are wireless networks, at least network-manager does that for you.

    And, I am sorry, but other than particular forums that market themselves to technically people, I have never seen a newbie forum bash a user for asking a question. The Ubuntu community and the Linux Mint community are both top notch and are geared toward user friendliness. Now, once you move over to Fedora, Debian, Arch and Gentoo, some basic knowledge is assumed, but then, they tell you that at the get go.

    ReplyDelete
  9. It's obvious that we're not going to see eye to eye, I'm trying to meet in the middle where you seem to be backing away. It may not be true, but that's how I see it. Take it from someone on the other side of the fence; if the Linux community looks like they're full of assholes and egomaniacs then no one will want to jump that fence. Even the people that truly try will get frustrated and leave.

    And that's what I'm getting at. Linux and it's users have a stigma, and no one seems to be trying to fix it.

    ReplyDelete