First of all, it's not all that bad. But as a developer, I don't see much point in switching to Windows 8. And here's why.
The number of "normal" users exceeds the number of developers and power users by far. Desktop PCs aren't really the future of computers for the average person. Tablets seem more like it. Gaming will either move mostly to consoles or cloud gaming. Even though OnLive wasn't the success some people hoped it would be, one can already see that there are other companies attempting a similar approach at cloud gaming. The huge advantage here is that you can play a high-quality graphics game on a crappy device as all you are getting is just the video stream. Of course this kind of approach has its disadvantages, but this is not what we're here to talk about today.
Today I will give you an insight on Windows 8 as a developer. I have used Windows 8 a bit for Metro-style app development at work over the past month, running it in VMWare's player as a virtual machine (first with 1 GB RAM, but as that proved to be not enough, I changed it to 1.5 GB).
First of all, Windows 8 was never intended to be for desktop PCs. Its primary platforms are tablet and smartphones (aka Windows Phone 8 ). Microsoft is aware that they are losing a big share of the market to Apple and the Android manufacturers so Windows 8 is pretty much meant to be a good shot to catch up with them. And as far as tablets are concerned, they did a pretty good job. But for a desktop PC, it's not very well suited.
I will single out a few nitpicks that really irked me while working with it for the last month. It's true that some of these can be avoided and circumvented in ways (which I will also list here), but the fact remains that Microsoft has made simple things complicated and tried to make complicated things simpler.
1. Turning of a Windows 7 PC takes 2 steps while Windows 8 requires 4. In Windows 7 you either press the Windows key or the start button and simply select "Shut down". In Windows 8 it's not only made more complicated, it's also counter-intuitive. First you have to either move the mouse in the upper right or lower right corner in order to make the side-menu appear. Then you have to select "Settings" (which still puzzles me why this functionality is in settings) where you can find a Power icon which you have to press for a menu to appear where you can select "Shut down" or one of the other options. Now, I am not so angry at the few additional steps, it's really not a big deal. What I am mostly angry at is the fact that I can't make the side-menu appear in a normal way using a keystroke (Windows key opens the Metro menu) and that the functionality is hidden in Settings. Even on a tablet (which you would rarely actually power off), it's still confusing while such a thing would be hidden in Settings.
The suggestions that I've heard to avoiding this problem is to set the hardware power key to shut down the PC. Cool idea, except that it doesn't work if you're running Windows 8 in a virtual machine.
2. The side-menu that I mentioned earlier is kind of weird. Sure, making it appear with a simple gesture by moving your finger into one of the right corners of the screen is a pretty good idea, but on a desktop PC it's not only bothersome, it's also completely software-based. That means, if for some reason Windows 8 freezes, the menu won't appear until Windows 8 gets running again. This is quite an inconvenience for power users who might sometimes use more of their PC's resources than they have at their disposal and then cause the PC to stutter like this.
3. The metro menu really gives Windows 8 a tablet feel. If you have ever owned/used/tried an iPhone or Android smartphone, you probably noticed how it is possible to arrange all tiles and app icons are around and so on. The metro menu offers exactly that kind of nice overview over all the apps. Microsoft has also implemented something called live-tiles (which apparently exists for Android as a special app, IDK about iOS). Live-tiles give you the impression as if the app could be still running in the background while actually getting new information or displaying something from the app. e.g. a weather app could be dynamically updated or a game could show an image of the current game's state or level. While this seems to be a really cool feature and definitely something the average user will enjoy, there are potential problems. Live-tiles work as background processes (usually not all the time, but still) and this consumes additional resources. Power users usually need all the memory and CPU time their PC can offer and they'd like to have only a minimum of applications running in the background to conserve memory and CPU time. Live-tiles make that harder as suddenly the OS takes over that part. Some of you may remember Prefetch on Windows XP and the additional Superfetch on Windows Vista/7. While in concept a really good idea, it never worked quite well (at least Superfetch didn't for me). Whenever I supposedly needed the RAM that Superfetch filled with programs I might run, it never actually emptied it so that I can actually use it. Superfetch always took about 1 GB of my memory and it would never let go. In any case, live-tiles are one of the things that great for average users, but bad for developers and possibly power users.
4. The new task manager is great. Not only are the tasks now grouped into categories, you can also immediately see how much memory, CPU time and disk read/write load each of the applications is currently using.
5. They made the copy/move file dialogs even better and simpler. Now you even get a live stat as a graph about data transfer. Also, the overwrite dialog is now much smaller without the oversized icons (as it should be IMO).
6. It's true that Windows 8 is graphically much simpler and I'll be the first one to crack a Windows-3.11-on-steroids joke, but frankly I actually like it. I was never a fan of the too fancy design that was Aero. In fact one of the major reasons why I never used Vista was Aero. Since Windows 7 was running so smoothly I don't mind Aero being there. But now that they moved away and back to basics, I actually welcome it. Sadly, performance has not improved (read below). I like the non-intrusive layout and simplicity of the new GUI. It's clean and minimalistic without being shabby. I am only disappointed at Visual Studio 2012 in that area as they messed up badly. The top menu bar is not visibly separated with a line or something from the toolbars which makes it really irk me. Also, the VS2012 for Windows 8 edition (the one that you need to use for Metro-style app development) has a dark GUI with dark backgrounds and white text. And you can't change it. I really don't know what they were trying to do with this, but it's annoying. At first I didn't like the dark GUI of VS2010, but it wasn't so bad as it kinda made a better distinction between the separate windows within the UI. But VS2012 for Windows 8 messed it up badly. Surprisingly both VS2012 for Windows Desktop and VS2012 for Windows Phone 8 had the same bright color theme as the rest of Windows 8.
7. The performance is unsatisfactory. I've ran it for some time on 1 GB RAM and it was really causing a lot of problems. Once I changed it to 1.5 GB, things were sped up, but the memory load is still way too high. I understood the high memory load in Windows Vista/7 due to Aero (which alone could eat up to 50-100 MB), but now? Even when Windows 8 is running so much fewer applications in the background by default? And it's still that slow? As I said, it's true that I was running it in a virtual machine, but this kind of bad performance is really not acceptable, because it's often quite slow even if the RAM is not above 80%.
8. The desktop is now actually an application and the missing start menu button kinda makes me want to slap somebody sometimes. IDK about you, but I generally open new Explorer windows by pressing Windows key + E. But sometimes I also open it up pressing the start button and selecting "My Computer". Why? I didn't know about Windows key + E until about 1-2 years ago I think so the old habit was still there. Well, Microsoft has decided that my old habit can go fuck itself (which is not a bad thing in itself as it was a bad habit), but I should be the one to root them out, not somebody else forcing me to do it. Besides, it's inconvenient for a normal user who doesn't know about Windows key + E.
9. I really don't like the new Windows Search. When you press the Windows key, it opens the Metro menu and once you start typing, the Windows Search window will appear. In Windows 7 I often use Windows Search to access EVERYTHING on my PC by just typing a few letters. I would say that this is THE most used feature by me personally. And they messed it up. Now there are 3 categories ("Apps", "Settings" and the last one was "Files" I think). While you still can directly activate which one of the categories you want to search (e.g. by pressing Windows key + W the "Settings" category will be searched), the separation actually adds a level of complexity. Now you can't just hit Windows key and start typing. No, now you have to first think in which category the thing belongs that you are looking for and after that either selecting the category first or pressing the other shortcut button with the Windows key (e.g. Windows key + W) to open the right category in the first place. I found out about these extra shortcuts just recently so I didn't use them so much, but I can tell you that it was quite frustrating when I had to type "Control Panel" first and then select the option I wanted to adjust than being able to simply type "Power Settings", "Programs and Features" (the new "Add/Remove Programs" which is actually a better name than the old one) or "User Accounts". I'm not sure if those can be found under the category "Settings".
10. For some reason the whole OS feels ruggish. I believe that Microsoft wanted to release Windows 8 as early as possible and then patch up stuff afterwards as I have the feeling that it's not quite working as it should. As I said, it feels ruggish.
Well, that would be it. I still believe that the average user can really profit from most of these changes, especially since Windows 8 gives off a different feel and differs in usability patterns from iOS and Android (which are frankly quite similar) which Microsoft also uses as a selling point. Microsoft will definitely gain back some market share with Windows 8 tablets and Windows Phone 8 smartphones, but the developers and power users will hate them for it. Some of you may remember how Microsoft was going try some really radical moves for Windows 8, but the developer community was very upset with those moves so Microsoft abandoned these ideas. That was basically a manifestation of it. The current Windows 8 is actually a compromise between what it was supposed to be for average users and what developers wanted it to be. It seems to be still doing a good job at being what it was supposed to be, but it's not a good developer platform.
It's not official yet, but it's likely that my boss and me will do a presentation on game development in Windows 8 at Microsoft's conference here in Zagreb, Croatia. This will definitely be interesting. I won't go into details about that here as this is a topic about Windows 8.
I hope that I've given you some insight into the future that is Windows 8. It may not as bad as I make it sound, but if you're used to the commodities that Windows 7 offers you, Windows 8 is simply half a step back and makes you feel frustrated that you can't have those commodities back. Sure, there are probably tons of hacks out there already which will make it feel and work more like Windows 7, but that's not really a solution IMO. The saddest part is that Windows 8 could be a great OS, just like Windows 7 was, but it needs some more work.