I haven't posted on the forum before, but I've been asked why I run Linux and thought it might be interesting to share, sorry if it is too long to read.
I started on DOS on a 4MHz 8086 (well, Apple II and C64 but I mean what I got at home first) and worked my way up to Windows 98SE. I switched to Windows 2000 for greater stability once DirectX got ported, because things on Win9x were terrible. I missed being able to boot to DOS to troubleshoot certain things. One problem with Windows 2000 was if you had a virus, you couldn't delete or scan infected files from an already corrupted system. The only thing I could do was set up Win2k from scratch on another clean drive, and then scan my infected drive. Another problem was a corrupted registry would prevent you from even booting into safe mode, and even though Windows kept a backup copy, booting from the Win2k media and dropping to a command line to fix things was incredibly unintuitive... this "repair" shell it had its own set of commands to learn and was a PITA with syntax and had a very limited set of tools. I started to use BartPE to fix things.
Anyway, Win2k was still very unstable, even though it was less than Win9x. If you weren't running on an Intel BX chipset with an Intel CPU with a very well known video and sound card, you would have a lot of stability issues. There were a ton of driver problems, and I was constantly messing around with beta drivers and flipping CPU/chipset registers to try and get stability using an app called wpcrset. I had a SoundBlaster Live! card, and just getting the whole machine not to freeze while playing a game was a game in itself. By then we had all moved to PCI-only for the benefits of Plug-n-Play supported hardware, and having any ISA card in there was unoptimal as your system was hung up on waiting for ISA DMA and IRQ operations, and I wanted a hot rod PC like any gamer. SBLive! also had issues with audio hiss and pops based on what other cards you had in your system because of terrible driver and chipset problems, I still don't think these things were ever resolved in Windows but people just ended up moving to newer hardware and forgetting about the problems. I wanted new hardware too, not just an old BX chipset with Pentium II, I wanted to move to AMD's Athlon on a VIA chipset since it was getting to be faster than the competition. This proved to be too much with the SBLive! and I was getting freezes all the time, no matter what I did with CPU registers this time. I tried getting an Audigy but that didn't really change much at all. I wasted so much money and time on support forums trying to troubleshoot the problems, this is the kind of window I was staring at reboot after reboot: http://www.au-ja.de/...er/kt133a-2.gif I was getting BSODs and hard freezes. I tried troubleshooting this with MS tech support to no avail, they claimed they couldn't reproduce my problems and that I wasn't using the default Windows drivers for my products, but that was because I wanted to use the full features of my hardware such as EAX 3D sound, and nVidia 3D Stereoscopic display, not to mention I had to install official VIA chipset drivers if I wanted to get any decent frame rates in my games because whatever chipset drivers shipped with Windows was relying on fallback compatibility modes.
Just read these posts to see people banging their head about these types of problems, the last link is on what you had to do to even set things up properly.
Another problem was just troubleshooting crashes and slowdowns and app crashes. When you get a hard freeze or a BSOD, what are you supposed to do? Take out each component and add them back in one by one. If you still can't find the problem, do an install from scratch and test out each driver you install. Incredibly time consuming and even if you find the problem, how are you supposed to solve it without tech support sending you new builds, or even trying beta BIOS versions to see if that will help, potentially bricking your board because it might lock up during a BIOS flash! Back then you didn't have a update-from-BIOS version, you either had to do it in DOS so you had to burn a CD (expensive back then) or make a DOS floppy with your BIOS and update utility on it (pita, sometimes the floppy was too small for all the files and you can't read your NTFS drive in DOS) or with newer boards flash in Windows only, which was really scary because when you got into Windows that's when you started having problems like hard freezing.
Windows power users would typically wipe and reinstall from scratch every 6 months because lord only knows why, problems like slowdowns would pop up, and explanations ranged everywhere from having too many fonts in your fonts folder (lol) to having cruft in your registry, or simply DLL hell because every app wanted to install and overwrite DLLs with their own version that was guaranteed to work with that app but maybe not anything else ( http://en.wikipedia.org/wiki/DLL_Hell )! You install the wrong app or driver and suddenly weird problems start cropping up and you don't know why, then you're googling DLL filenames and downloading them from odd sites or message board post attachments, which back then on a slow 56k modem (6-8KB/sec) or not-much-faster DSL line (20-50KB/sec) is a pain, and then having to reboot to BartPE to move certain DLLs into place and removing the backup copies from C:\Windows\System32\DLLCache which would automatically ovewrite the DLL you just tried to update/change, and then rebooting to see IF something would improve, was REALLY ANNOYING.
Now when an app or game crashes, you could get a BSOD with some random hexadecimal crap, or a dialog box with random hexadecimal crap and an OK button. Oh yay, error 0x058c082d in address space 0102:5928, that means so much. Not. What can you do except wait for a patch and pray it will help? Then the developers blame it on the driver version you're using, and on and on and on.
Using a Windows PC was not fun. Now imagine dealing with adware, malware, viruses, trojans, and other crap, that would magically appear on your system. It got to the point every time you were reinstalling, you were slipstreaming Windows updates into a new ISO and burning a new CD: http://www.tweaktown...-iso/index.html
You know, I really did learn a lot using Windows, but not for the right reasons. I was doing more troubleshooting than I was actually using my PC. This is what turned me off PC gaming for good, actually. I just wanted to use my !^$@ing PC and get something done. Even simple web browsing was problematic. Netscape would crash and take down ALL my Windows, or IE would have ridiculous problems like clicking on a bookmark and it would open in a random window (http://www.w7forums....w-window.13821/ ). I was using IE5 at the time but you get the idea, and hey, it's still happening in IE8 apparently Tried troubleshooting this with MS to no avail, they claim they could never replicate the problem, surprise surprise. What the hell am I supposed to do, just deal with it?
Not to mention my whole family was on Windows as well, and I spent even more time cleaning up their PCs than mine because I wouldn't just click on any email attachment or ad on the internet or installing some amazing toolbar or animated email app or who knows what, I wasn't sitting over their shoulder the whole time. They're just like "I don't know, my computer is slow now, fix it". So after work I had to do more computer work, during family events I had to do computer work. Not to mention that all the anti-virus, anti-malware, crap like Spybot Search and Destroy at the time and other tools just to get the ones that missed, all this stuff running in the background would slow down your PC and tie up your hard disk I/O. You pay for nice fast hardware and you have to give up 30-50% of your CPU cycles crunching on whether your PC is safe or not, and you'd still end up getting viruses or malware eventually.
I can't believe how much of my life I was wasting on this. Visiting my family almost gave me panic attacks, I'd inevitably spend time in the computer den or taking their PC home and working on it IN MY FREE TIME after work, missing out on my life. Seriously, WHAT THE HELL. Just thinking about it now stresses me out so much. Sorry for the allcaps.
So. I was always interested in alternatives, and it got to the point where I didn't care what games, favorite apps, or whatever else I would lose. If I couldn't watch videos with certain codecs, fine. If I couldn't run adobe flash, who cares. I didn't give a crap as long as I could get a functional PC that wouldn't give me so many headaches, and that I could just USE and enjoy!!! You couldn't get a PC for $200 back then, it was $800 and up without monitor for anything decent. I was paying for my own hell and I didn't want it anymore.
I always read slashdot.org and so Linux was always something I knew about and saw people talking about. Some people in IRC I knew would run it, one guy IRL I knew ran it, he put me onto Slackware Linux. Just getting to a GUI was a feat in itself, and I didn't have hardware accelerated video, I couldn't get audio, I had to use ethernet and couldn't use wireless, etc. Bleh. I tried SuSE, which some other guy IRL started running, but you had to pay for it and pay for each update... I ended up getting a free version through some promotion and tried it out and it was decent. Hardware support was good, and the installation process was easier, but SuSE had its own proprietary interface for configuring Linux and anything I read in forums to help troubleshoot my problems wouldn't really apply to SuSE. Another problem was downloading additional software... you either have to get it from the distribution maintainer (Novell in this case), and if they didn't offer it, you had to go and find a package file on your own. Nobody was building package files for SuSE, it was either redhat or debian. You could force installs but you weren't guaranteed it would work, and updating the software to a newer version might break something. Once you did a force install, and you tried to update your system, it would realize there were "foreign" files where it expected to have its own default versions, and you had to force updates which might break something, it was a pain.
So I dual booted SuSE and Windows for a while, doing what I could in SuSE but finding myself booting to Windows when I had to do certain things like record video from my capture card, burn a CD, or anything else besides web browsing and other small tasks. At least I was getting somewhat used to it. But I really wanted to run Debian or Redhat, because all the software people were writing, the newest versions, etc, were all compiled and packaged to easily install on these systems. I was interested in running emulators for games, doing graphic design, recoding/capturing/editing video, running WINE to get some of my Windows programs in Linux because I hadn't found alternatives yet... etc. I tried Debian, it was incredibly difficult. Redhat didn't offer a free version at the time, it was either enterprise grade Linux or nothing, and you had to have an account with Redhat to use their software repositories or something like that. You could get the source code and compile it on your own, but doing that for a distro was over my head at the time.
Anyway, fast forward a bit, and Red Hat brought out a community Linux distribution. This means they offered a free version of Linux with no support, and you'd basically be beta testing the next version of what they would offer to their enterprise customers down the road. This made so much sense. Users download it and use it for free, offering troubleshooting and testing information to Redhat which would be very cooperative and offer fixes when they could. It benefited users because they would get a nice set of software to play around with, and it benefited Redhat because they could offer their enterprise customer something a lot more robust and tested, and on a wider range of hardware.
So this community distribution was called Fedora. Suddenly a whole world of tested compatible software opened up to me, and I could easily find packaged versions of stuff like MAME or whatever other emulators I wanted, and other in-development software that I wanted to use but wasn't officially supported, because RedHat Linux was very common and used by many of these software developers. Things were starting to fit into place. Much more hardware was supported on Fedora than other Linux distributions at the time, and almost everything was auto detected and ready to go on first bootup. This was a big change from Windows, where you had to hunt down driver CDs and floppies and go through multiple reboots to get anything working. Fedora also let me update the OS and apps all from one Update utility. Picture Windows Update except it can also update Photoshop, Winamp, Chrome, Firefox, or whatever else you had installed. How could it be so simple?! My mind was blown.
Sure I'd still have problems with apps not behaving properly when I installed them, or an app crashing when I launched it, the clipboard for copy/paste text/images was kinda broken in Fedora, but I could see huge potential. One awesome thing was launching an app from a terminal would spit out useful error messages. That app I launched that would crash on startup, if I launched it from a terminal, I would see messages of what the app was trying to do and what would happen when it crashed and why it would do so. I wasn't seeing crap like "error 0x058c082d in address space 0102:5928", I was seeing maybe stuff like "error in line 432 of app.conf" (which was like .ini files or app registry entries in Windows). Or maybe "looking for file /usr/share/lib/blah.o not found" or "permission to access ~/.app/filename denied", and then I could go from there. Oh, the file was installed to the wrong place, I can move it to the right place. Oh, the file it's trying to access has the wrong user permissions, only root can access it because I installed it using the root account instead of the user account. It was at least something to go on. Not to mention you could always find users having the same problems on Google and usually find a solution. Looking up "error 0x058c082d in address space 0102:5928" on Google would get you nothing helpful, EVER. People complained about Linux users being jerks to newbies in forums, well... it was better than turning up nothing at all! And once you had the introduction of Fedora and common users could get access to a decent and widely used Linux distribution for free, forums started becoming a lot nicer and more helpful because there was a flood of new users helping each other out, it wasn't just the elite super power users looking down on everyone. There were a lot of newbies, but a lot of them were also smart and willing to learn and willing to dig deeper to find solutions and help each other out because they had been there before and knew what it was like. Things were really starting to turn around and using Linux really felt like being part of a community.
I got my immediate family on Fedora because all they would do is browse the web, use email, write an office document, and use their printer. Huge sighs of relief. Epic sighs of relief even. I wouldn't find some random virus on their PC every time I came over. Ok, maybe they couldn't play a certain flash animation because the Linux version of Flash was behind Windows, maybe they couldn't play every .WMV they downloaded but they could play AVIs, MP3s, most Flash worked, they could do 90% of what they wanted, and most importantly their PC wouldn't get screwed up!
Windows had this way of setting up the default user as administrator, and so much could go wrong because of that. If you give the user admin powers, that means malware can get admin powers. When admin is the default user type, people developing software on Windows do so under an admin account, and don't even bother testing on less privileged user accounts where less can go wrong. Most people just had to have admin powers for whatever dumb reason to get software to work. On Linux, almost every action that wasn't modifying some document or running an app was restricted and required a password. I would set up their PCs and just not tell them the password. If they messed anything up, it would only affect the documents in their home folders or their app's settings, and not actual system files or the app itself. If they messed up some settings, I would just delete the app's configuration files ( /home/user/.appname/* ) and the next time you ran the app, it would use the default configuration and everything was fixed again. They simply could not break the system. This made troubleshooting so much easier! I was deliriously happy!
Fedora still wasn't perfect though, it didn't support every last piece of hardware and sometimes I had to compile a driver from source, but that was pretty simple, like I said, most developers expected you to use RedHat or Debian. Things usually went pretty smoothly. Vendor drivers for ATi and nVidia cards were usually simple to install and often offered performance parity with Windows. I could even get some Windows games to work well through Wine. Overall system performance was vastly superior to Windows because I wasn't using CPU cycles or disk I/O on virus scanners. Startup time wasn't as good, and checking the hard disk for errors was a little more convoluted, I still had to use the terminal to install and configure certain things, I still had to edit certain configuration files because there was no GUI to do so. I wondered why defrag didn't exist (turns out it's not even necessary in ext2/3/4 filesystems which Linux uses). There was no Control Panel. Configuring display resolution, monitor, and refresh rate was difficult. The idea of changing hardware like video card or even upgrading your motherboard/CPU was scary because what was the process for that under Linux? What would you do to get it to recognize new hardware? Turns out ALL the drivers for hardware are built-in, and everything is autodetected on startup. I could put my hard drive in a completely different computer and still boot to my desktop with no problems. You could NEVER do this on Windows. When I tried that, I would get a ton of errors while it tried to load up drivers for hardware I didn't have, and Plug-n-Play detection would start
installing all kinds of new drivers and configurations for that set of hardware. If you were lucky you wouldn't get a BSOD. They would always recommend a fresh install for something like motherboard/CPU upgrades, but in Linux I didn't have to do that at all! It amazed me. There were still a lot of usability issues and things to figure out, but when you got your system working, it worked so well, and you could save that configuration and keep it and it would always work. What would work for me at home would also work on my family's PCs, and as I learned more and configured things to be easier, I could bring that over to their environment and have it work the same without any problems.
Then Ubuntu came out. They started adding things like a LiveCD environment, a control panel, GUIs for configuring modem/networking/monitor/display, an automatic graphical installer for proprietary vendor drivers (i.e. nVidia and ATi's video card drivers mainly), automatic background system updates, an easier way to check your hard disk for errors on startup, a graphical partition manager, it was amazing. Common stuff like an office suite, image editor, and basic utilities would be installed by default. They didn't automatically install 30 different notepad utils, 30 different image viewers, etc like other distributions did. They curated their desktop experience and concentrated on the most common end user scenario, and would fine tune it to be easier than ever. You never had to drop to the terminal to do anything. Not only that, but Ubuntu was based on Debian, which offers the richest software library of any Linux distro, and you could tap into that because it was all compatible. You never had to download package files off third party sites because it was 99.9% guaranteed to be in their software library. All you had to do was click a checkbox in a list of software, click Install, and enter your admin password to give it rights to install. Simply brilliant. And that was version 7.04 of Ubuntu pretty much, and here we are at 13 going on 14.
Ubuntu was so successful, that it set the bar for how other Linux distros were put together. Even pure Debian itself is simple to install and configure, when for the longest time you had to set it up using a commandline. Now you can select from a wide range of Linux distributions and have almost guaranteed ease of use, compatibility, and a huge catalog of software.
I haven't had to run any Windows software for the longest time, and even when I'm using Windows, the software I use in Linux is almost guaranteed to have a Windows version.
In Windows, every app you install has some crazy installer that makes you click Next and has checkboxes you have to carefully watch so something you don't want doesn't get installed along with it, and you don't accidentally opt-in to some stupid nonsense, apps don't each have their own annoying splash screen or stupid icon in the system tray that's always bothering you for updates, you don't have to worry about the next version of the software including ads or removing features and making you pay for the Pro version to get them back, all kinds of ridiculous nonsense I refuse to put up with anymore.
I am just so happy using Debian on my desktop now and just USING my computer instead of constantly having to MAINTAIN it.
You seriously can't imagine how much happier I am on Linux than Windows, just as an end user, and also as an admin for family members. I even have a lot of great skills I can use at my job because of it, since I work at a multinational corporation whose IT department uses Linux servers. They still have Windows desktops, but with all the crap they have to go through to upgrade for Windows 8, they are now seriously considering Linux. Most of the apps they use are through a Citrix environment anyways and would work exactly the same in Linux without any changes. They're coming to the realization of how much money they are wasting on Windows and Office CALs when they wouldn't even need it, they could even switch to RedHat for critical systems and use CentOS (a free clone of RedHat enterprise) on the desktop. They've got problems with Outlook and Exchange and security issues a lot of the time, and are still running IE6, it's ridiculous, but I see them experimenting with alternatives and Linux is one of them!
I think Linux has an extremely bright future, and even if my workplace doesn't switch their desktops over, me and my family have a lot of peace and a great experience being able to use our PCs without issues. Now everything just works. I honestly can't find a task I cannot accomplish using Linux. I can play all my videos/audio, I can do video editing, music composition, Office and graphic design stuff, my HTPC/DVR runs Linux, my media extenders run Linux, everything works so well that I would have to think long and hard for something that would need improvement.
Now there's all this crazy stuff regarding the NSA and back doors, I just feel a lot safer and in control when I'm using Linux, and I'm glad that I've been doing so for at least 10 years. I never installed Windows XP on my own systems, last I used was Windows 2000, although people have paid me to support newer versions of Windows on their PCs but now I have way more experience using Linux than Windows. I still try to keep up with Windows and other software which is why I'm on neowin. If there's a better way or something I want to know about it, I don't want to lose touch just because I'm not using Windows anymore. I'm still interested in keeping up with it and I still have to use it for work sometimes anyway.