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.


  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.

  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.

  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.

  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.

  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.

  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))

  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.

  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.

  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.

  10. Hello Chronno,

    I know this post is almost 3 years old, and not sure you will even get to this comment, but I would like to add my experience with Linux

    I've been using Linux for almost 2 years now, and have loved it since first trying it out. I started out with Ubuntu, and eventually took time to install Debian, OpenSuse, Mint, and even Arch Linux. I have grown quite skilled at using the terminal, and am even learning to Bash script. Though I do use Linux, and even know it competently, I still have the issue of removing myself from Windows, and being totally dependent on Linux. Because, well, the sad truth is I can't. Its impossible. I'll go ahead and give a few reasons why.

    The biggest reason is the fact I do not have access to certain software that I must have. I understand that there are alternatives to Windows software. And that some of those alternatives are very good (I have tried some of them btw). However, I have used Windows software for almost a decade, and trying to adapt to alternatives is not something I always have time for. Also, it does not make sense for me to use an open source alternative at home, yet use the Windows software at work. Why not just use that same software at home. It guarantees no incompatibility issues, or confusions, and it just makes life easier imo. That's no to say the alternatives are bad, in fact they are very good, and I give props to the volunteers who work very hard on these projects. Its just in my particular case, I need Windows software.

    The other reason I use Windows is because I prefer it over Linux. Yes, I admit it. I enjoy using Windows more than I do Linux. Its more simpler, it looks nice, and it works supremely well. Linux is good, I agree, and it shows much potential. But sadly, it looks like something from 90s, and all in all, every thing you do in Linux, Windows does it better. HOWEVER! One thing thing that really sets Linux apart from Windows is the terminal. The terminal has to be one of the coolest things I've ever tried, and is the sole reason I have a Linux OS on my machine.

    Linux has Windows beat by power, customizability, and security. Sadly, those three things aren't enough to make it a main OS for me. Yes, power is good, but WIndows covers all my needs anyway, and while the extra fire power is good, I simply don't need it to live my life. The customizability is sweet, but again, I like Windows the way it is. MS has always done a decent job at making Windows a pleasing experience for me. And security isn't an issue for me. I've gone years on Windows, not having any anti-virus software, and never got a single virus. I just watch what sites I go on and don't download everything I come across. Also, if I do get a virus, I can always reinstall Windows. Formatting the hard drive would remove basically any virus. I make sure back up everything on an external hard drive.

    Now you know why Linux could not replace Windows for me. So you might be wondering: If Windows does everything you need, then why the heck to do you have Linux Installed on your machine? That would be a good question. I use Linux because I enjoy experimenting with new things. I see it as a good educational tool for me, and it has taught me much about the technical world. I am planning on going back to school to study computer science, and see if I may switch careers one day. And Linux has inspired me to do so. Truly Linux is one of the best things I've ever came across, despite not being able to rely upon it as a main OS.

  11. Sorry, this is continuing from the previous post. Blogger doesn't allow comments more than 4000 characters supposedly:

    ...Now as for everyone else wanting to use Linux, or perhaps replace Windows. That would vary from person to person. If its just someone who wants to have a home theater, web browsing, email, and a few documents here and there, then I agree. Linux is perfect for them. But there's and issue with that. Most likely someone who only does those task on their computer, is someone who isn;t a computer enthusiast, and may not have any technical skills either. Coming into the Linux world from Windows, would be a hard move for such a person. And from my own experience, most people I know who are like that (and that's lot of people I know like that), would not have the patience to go through learning a whole new operating system. Some wouldn;t even think of it. They're satisfied where they are. And in a lot of ways, that's like me. If it wasn;t for my curiosity for computers, I would be like the 95% of PC users, where Windows is all they know. Yes, I agree Linux is a geek's machine. And sadly, most of the community doesn't think about the rest of the world, and actually look at the masses. When it comes to computers, people want simplicity. They want nice buttons, clear sharp looks, and ease of use. Sadly, Linux doesn't have that. It seems to be moving in that direction, but its going awfully slow. Linux just seems to be falling behind in the technical world, and doesn't stay with the recent trends. Its as if the entire community is stuck in 90s, and are too close minded. Unless that changes, then Linux will never become mainstream. Its saddens me too :-(.

    Now I read some of the conversation you and Sensshikaze had. First I'd like to say I'm sorry you had to deal with that Lol. He sounded like a complete ass. But I would have to disagree with you on one thing:

    "This is why Linux will never become the dominant operating system. The people who use it are assholes..."

    I don't think the Linux community are all assholes. From what I experienced, the community has actual been quite helpful. I would go on the Ubuntu and Mint forums and ask all sorts of questions, and they would usually give me the info I needed to know. I am sorry that you feel that way, and I hold nothing against for feeling that way. Maybe the people you talked to that were from Linux were assholes, but I promise you not all of Linux is assholes. I feel its not healthy to judge an entire picture just from a few bad experiences. Just wanted to point that out. Not trying to bash on anyone here :-)

    Anyway, thanks for posting the article, and I saw many valid points, including ones in your conversation with Sensshikaze. If you took the time to read this, I appreciate it. :-)