We've all used Windows. A lot of us use it for games and desktop applications. Quite a few of us love it. And I'm sure we've all got things we hate about it too.
I have a few bones to pick:
a) Drive letters:
Most files are organized into folders. For example, "C:\Program Files". But each filesystem and device has its own root folder, like "A:\", "C:\", and other letters assigned in the stone age.
(backward compatibility, blah, blah, blah, it's been several decades, blah, blah, blah)
b) Folder structure:
Yes, we've all heard the reasons why we should spend forever typing "C:\Program Files\Accessories" and "C:\Documents and Settings\Brian\My Documents", why there's "C:\Windows\System" and "C:\Windows\System32", or why on some versions it's "C:\WinNT". So what?
And then there's the programs that think they're somehow special so their default installation location is something like "C:\Cygwin" (cough). Or libraries that think they're special (hello, DirectX, I hate you with a passion).
The folder tree is a mess, no matter what the reasons given.
c) Libraries and binaries:
Related to the above, all the binaries and libraries are scattered all over the place. Take a look in the Start Menu. Do you know where every program in there keeps its files? Where its libraries are? And what happens if you have different versions of a library installed in different places? Fun!
Yes, in this era of programs that can run from anywhere, that's one solution. Yet, while Unix had library dependency issues, its layout was a lot more effective. Several programs need to use the same code? Put it in a library and install it once. Code has a buffer overflow? Patch the library and the problem is gone system-wide.
It's not that hard to devise a solution that combines simplicity and consistency with shared libraries and programs. Where is it?
d) No executable bit:
Running programs is a lot easier than the unix world. On the other hand, identifying them with a file extension is amazingly insecure. Malware can be accidentally executed right out of an email, zip file, or from the web, since ".exe" in the filename is all it takes to be runnable. Why isn't the OS more careful? Setting permissions may not be an ideal safeguard, but the linux desktops I've seen were a lot safer when it came to running programs. Oh, XP also has a convoluted compatibility mode system.
e) Configuration:
I love starting regedit
and looking at my registry. ~90% of the crap I see there is meaningless gibberish. It's like every program thinks it has a god-given right to stick irrelevant settings on my computer.
And then there are the ones that don't store a registry entry, instead plopping their files in the same directory as the executables, or sometimes even right in C:\! Isn't that convenient?
f) GUI:
The GUI basically can't be customized, except cosmetically. There's only one window manager, and it sucks. Worse yet, the GUI can't even be turned off: it has to be loaded at all times. That's a huge waste of memory when all I want to do is use the command line.
So now I've got a hundred megs of RAM wasted on bitmaps? When all I'm doing is moving files around? WHY?!
g) ZOMG EASE OF USE!
Does f) sound familiar? Do you often hear the refrain, "but it's intuitive and standard so everyone can do what they want without learning! Even grandma! Yayayayay lololol!"?
Guess what? As an experienced user I don't give two hoots about your ease-of-use-without-learning. I want a system that does what I tell it, and isn't built on comfortable illusions that fade away the second I try to do anything sophisticated.
Guess what? As a developer I don't care about your fucking ease-of-use-without-learning either. I want a way to get my work done (that isn't held together by cruft and duct-tape)!
If you had a free hand, what would you wish was changed? Do you disagree with me? Flame away and show me where I'm wrong.
Had you actually written this seriously, instead of as ill-meaning sarcasm, you would have made any number of good points. As it stands now, though, it just looks like you were offended by the Unix thread, and thought that those of us who posted in it are Windows users who would be offended if you turned the tables on us and critized Windows!. Unfortunately, that's not the case. Neither dmpk2k nor me (nor, I'll bet, many others who posted in the thread but who I don't know) are big fans of Windows, and would fully agree with most criticism of it.
But sadly, you chose to be an asshat instead, and thus, you failed.
What I would like to have:
File recognition by content/magic numbers. Files are only recognized by extension right now and that kinda sucks.
A modern file system ( Liek fast and stable ), symlinks and beeing able to mount parts of the file system into specific folders.
A good editor that comes with the system.
A more stylish, simple GUI style. The current default style has far too much colors for me (And the "Classic" style is, well, old and square-ish) , and theres no good way to customize it without resorting to strange hacks. A good GUI should not be noticed IMO, it should just look and feel natural. The feel works pretty well for me, but I hate the look.
Oh, and beeing able to install software without having to reboot every other time would be nice.
What I actually like is the way program settings are (Supposed to be) stored (In the registry). Having all the config options in one place makes it easier to back them up (Or would make it easier if 1) programms actually did what they are supposed to do and stick all their config options into the registry and 2) Regedit didn't suck as much as it does). Beeing able to control what apps may add or delete keys from the registry would be nice (Like what Spybot can do, just built into the system).
Not being able to hook system functions willynilly.. hell.. security at all, thank god they fixed that for 64. I really hope they can break away from this cycle of compadibility for 64 bit and winfs and shit. That beind said.. I learn winforms now and then I have to learn avalon in a year? the fuck?
Trolls? In my /code/
?
If there's one thing to hate about windows, it's the Win32 API. After using it several times, I now want to remain a back-end unix developer forever.
That, or something sufficiently high-level I'll never need to see that mess again.
>>2
Don't get your panties in a bunch, I'm pretty sure it's meant to be a parody thread. I know I laughed.
If it was a parody, it'd be more over-the-top. The tone is far too serious to be really funny. I'd welcome a serious thread on the subject, though, because there sure is a lot of complaining to be done, but this doesn't cut it either way.
>a) Drive letters:
I never quite understood people's beef with this. Certainly, it might not be the most practical solution for a server, but in a desktop system, how does assigning a filesystem to some sub-subdirectory of some abstract filesystem make more sense than giving it a unique identifier and making them all accessable from the same place?
When I plug in my USB drive, I still assume it's a separate entity and not a drone of the holy church of "The Root". A filesystem is a filesystem and a directory is a directory. They shouldn't be assumed to be the same thing.
>b) Folder structure:
That's the responsibility of the applications, not the operating system.
>f) GUI:
Not entirely true. You can change the shell. Which essentially is the GUI.
>g) ZOMG EASE OF USE!
Guess what? As a developer I do care about ease-of-use-without-learning. I have code to write and have no need to be bothered by trivial matters.
--
What I would like to see:
Why is the Desktop a level higher than My Computer? Worse yet, why is My Documents somehow equal to My Computer?
An application's settings are its own responsibility. Keep the OS out of it.
What is PROGMAN.EXE still doing in Windows XP? Seriously.
Mac Os X.
This thread is now over.
finally
>>> beeing able to mount parts of the file system into specific folders.
WinXP can do this. My Computer->Properties->Manage->Disk Management->Right click on a partition and find it's mounting options
This should be on /tech/. Like its Unix counterpart, it's a lame troll that has nothing to do with the subject of this board, programming.
Program settings ought to be stored in the executable's folder or a subfolder from there. That way I don't need to REINSTALL AND REBOOT to move a program from one computer to another, just copy the folder.
The registry should be used for system-specific-settings for which I don't care if they get lost when I reinstall/upgrade my OS.
P.S. just copying the software and user hives is a joke
Okay, so one day I was using my PC, right? Needless to say it runs Windows, because all serious computer users use Windows. Microsoft has a monopoly and we have no choices. You can't buy a good alternative, so you might as well just give up the idea of downloading one for free!
Anyway I was sitting on my ass, browsing for porn, eating pizza, smoking cigarettes, and drinking beer like any good computer geek when suddenly I smelt something burning. No, it wasn't a cigarette that I hadn't put out. It was something worse. MUCH worse! What I smelled was the unmistakable scent of a burning REGISTRY!
That's right! My REGISTRY had caught on fire! As with all major Windows problems, I immediate ran to the one fool proof solution. I hit my ever useful Windows key, brought up the start menu, then moved my mouse mouse pointer over to Shut Down because what I needed a RESTART, and FAST! That always solves everything!
But before I could select Shut Down, some obnoxious program stole focus. It's this program you may have heard of, called Outlook Express! I had a new e-mail! Clearly in the preview pane I could see an e-mail with an attachment, but before I could do anything my antivirus software popped up a warning telling me that my registration had expired and if I wanted to protect my system I needed to pay $49.95!
I felt my mouth go dry and my stomach sink, I knew what this meant! I needed to run an antispyware program! Unfortunately I was unable to do anything at this point because I bought my system at Wal-Mart and the hard drive was grinding away trying to respond! It was so obvious that my system was not going to respond that my Window even said "NOT RESPONDING!"
Then it happened. Windows asked me if I wanted to report a bug. I thought "that's very thoughtful of them, I'm sure Microsoft will get right on with fixing my problem" but before I could send the bug report the screen when blue and filled with a really cryptic message.
I had been through this a dozen times, and knew at this point the reset button was the only remaining option. As I reached for the system it just exploded. Bits of plastic were thrown everywhere, and one even got stuck in my eye.
So that's why I tell people we need band together and search for some kind of alternative. Something different, free, stable, or all of those things. Tell everyone you know. Microsoft really suck, and I only have one eye to prove it!
What I'd want Santa to give me when it comes to Windows, is making it a tag-based OS, instead of folder-based.
LOLOLOLO
srsly?
> What I'd want Santa to give me when it comes to Windows, is making it a tag-based OS, instead of folder-based.
I'd like a folksonomy-enabled Web 2.0 OS too. Notepad.exe would integrate most blogging APIs and it would also have AJAX and the server-side would be done with RoR.
actually there are only six things i don't like about windows:
>>19
KDE is for insensitive clods.
>>20
and what would you suggest i use instead?
butt-ugly mac os x?
butt-ugly windows?
gnome, which looks nice until you actually try to use it and it shoves the ugliest file selection dialog ever created in your face?
>>21
I suggest using the command-line. It's pretty and very well-designed.
>>22 gb2 'UNIX redone' thread
>>21
Are you rejecting desktop environments based on the supposed aesthetic inferiority of their open file dialogs? How much of your day do you actually spend browsing for files? If a lot, why aren't you spending all of that time actually doing things with those files?
(Not complaints about application responsiveness or lack of functionality ... but "I don't like the way the open file dialog looks". VIP QUALITY ARGUMENTS HERE)
> a) Drive letters:
I actually like them. Calculating free space and scanning / is a pain in the ass without them. Drive letters are more lower level.
> b) Folder structure:
It's actually good. Just annoying names. All you need is create NTFS Junctions to alias them as \Home, \Software, or whatever you like, or use environment variables (some of which already exist).
> The folder tree is a mess
Compared to Unix' FHS, it's godsend.
> Related to the above, all the binaries and libraries are scattered all over the place.
You copypasta'd this from Unix, right? In Unix, programs get installed like you deal cards in a Poker game. All the shit everywhere. Most Windows software is installed in a single directory. FHS is like Mother Russia. Under Windows, you control filesystem. With FHS, filesystem controls you.
> Take a look in the Start Menu. Do you know where every program in there keeps its files? Where its libraries are?
Properties, look for the executable. Unlike Unix, the library search path begins with the application directory (the Normal thing to do), so you can keep all libraries with every program, or share them in any directory in the path, usually System32. Use depends.exe to know what requires what.
> And what happens if you have different versions of a library installed in different places?
Under Unix, you have to keep a million different versions of everything. You can keep each library with its application should you need to use different versions of them (which would be rare beyond MSVCRT and VBRUN).
> d) No executable bit
Yeah, because chmod 777 file is safer than ren file *.exe
> e) Configuration
I agree, we still haven't had a good reason to keep the Registry. Configuration should be stored in .INI files in each application's root folder, using relative paths so applications are relocable. This is how eMule works for example. No installation, no crap, just uncompress and run. You can freely move it, or take it to a differenc computer.
> f) GUI
Agree on customization, as long as you keep it bloatless.
> g) ZOMG EASE OF USE!
Agree that useful stuff is hidden and the default configuration sucks.
> symlinks and beeing able to mount parts of the file system into specific folders.
Breaking news: This already exists.
> Oh, and beeing able to install software without having to reboot every other time would be nice.
They say that so you don't bitch if you e.g. have an old instance running. 90% of the times you're told to reboot, you don't have to. I rarely do.
> Win32 API
Agree. The API is kinda insane, as you usually require to provide all sorts of colorful structures for many calls.
>>19
Media Player Classic, Winamp/Foobar2K, Firefox/Opera, configure your system for fuck's sake, unless you like hacking around in which case it's better to be admin all the time and not have the OS be anal at every stem you want to take.
> Are you rejecting desktop environments based on the supposed aesthetic inferiority of their open file dialogs?
They are a common dialog you'll see all the time and you'll be forced to see it to save files from your browser, which is done often, keep that in mind. This is one thing I don't like of Firefox in Linux.
>Calculating free space and scanning / is a pain in the ass
df
> I actually like them. Calculating free space and scanning / is a pain in the ass without them. Drive letters are more lower level.
The concept of having volumes show up as separate entities is good. Naming them with single letters is incredibly brain-dead.
>>26
df -h
2199023255552 is just too many digits
>Are you rejecting desktop environments based on the supposed aesthetic inferiority of their open file dialogs?
not so much aesthetic inferiority as the fact that it's incredibly poorly designed. more of a useability problem than an aesthetic one.
>How much of your day do you actually spend browsing for files?
not much, but i'd rather not have something that i have to use about 7 or 8 times a day make me want to bang my head against a brick wall repeatedly.
>>28
df --si
> a) Drive letters:
I wouldn't feel comfortable without some kind of drive letters. It gives me some kind of control where stuff goes physically. I try to keep the number of HDD-partitions at a minimum (one ordinary for windows, one raided for everything else), but being unsure if I actually copied my mp3:s to my mp3 player or all my stuff to the backup drive isn't cool.
> b) Folder structure:
The folder structure is pretty messy though. True, unix just blows my mind, but it could still be made much better in Windows. I wouldn't mind it though if there were a nifty way to index/search/catalog files on top of the actual folder structure (hello OS X and canned vista-features).
> c) Libraries and binaries:
I'm partial to that. One thing I currently like about Windows is that I'm pretty free to put my programs where I want. Also, I've been owned more than once in linux because program A required an old version of a lib and B required a newer version.
> d) No executable bit:
That wouldn't magically solve any security issues.
> e) Configuration:
The registry might be messy but it has a function. Ordinary .ini-files just doesn't compare (multi-account systems, read-only permissions, etc).
>f) GUI:
AstonShell, litestep, serenwhatever ... Booting to a pure command-line would probably be nifty. I wouldn't do it often (if ever) though. I prefer graphics to wonky text-mode menus.
Also, would those 100 megs be better of not being used? Unused ram is worthless ram.
>g) ZOMG EASE OF USE!
Keep your eyes peeled for monad/nomad/whatever.
Surprised no one has mentioned this yet, but I'd like to see Windows distributed just as an OS, rather than an OS + web browser + email client + Movie Maker (!!??) + instant messaging + you get the idea.
Also, some kind of centralized, logging notification system rather than stupid pop-up bubbles in the systray.
>>32
Balloons are only supposed to be used for certain things. And there is a centrain logging system.. look at eventlog
Yes, but that's mainly for system administration, rather than user interaction. I'm talking about something like a single message window that would inform you of incoming IMs, emails, finished downloads, etc. Basically everything handled with balloons right now, plus more. In addition you should be able to filter and log all the notifications.
Stop bumping this dumb thread. Nobody cares about Windows users and their retarded fantasies.
>>34
Nothing but you is stopping you writing this. That's the problem with you Windows users: it's always "someone else should" instead of "I should". We are in /code/, are we not?
>>36
Well, developing non-console apps for Windows is generally harder than on Linux, I think.
every 1MB of RAM used for OS is lost 1MB of RAM. System should be light and fast to allow PROGRAMS use the ram, not crappy windows (not meant as a system name).
As for winapi32 : whith .NET it's dead
Uh, yeah, the operating system should fit in 64K. DOS fan?
> e) Configuration:
Registry is a total mess. Config files starting with a dot in your home directory are way better.
>>40
saging a legendary thread
penus