LATEST CHATTY HEADER
Subscribe to Shacknews Mercury starting at $1/month!
Chrome Shack Community Guidelines Chatty Search
Scroll down to join the conversation.
New to Shacknews? Signup for a Free Account
Already have an account? Login Now
Subscribe to Shacknews Mercury starting at $1/month!
Chrome Shack Community Guidelines Chatty Search
Scroll down to join the conversation.
http://www.news.com/8301-13860_3-9911470-56.html
So much for Vista I guess. Although it will be another 2 years until they get a majority of the bugs worked out.
Anyone heard what is big about this version?
Thread Truncated. Click to see all 231 replies.
-----
I've been thinking a little about what sucks in windows (I've been
having to work on it this week) and made a list. I'm sure I've missed
or misunderstood lots of things because I don't really understand it
:-(
* architecture
Very general: windows is a huge collection of interconnected services
that have built up over a period of decades. It's a right old pickle.
Everything seems to depend on everything else. This causes two
problems that annoy me:
1) Why does windows need a firewall at all? Can't they just not open
the ports in the first place? It's apparently because the clipboard
depends on DCOM, DCOM depends on the RPC daemon, the RPC
daemon needs an open port. So unless you have port whatever open,
you can't copy-paste in your desktop apps.
2) You can't strip it down. This is (largely) why WinCE exists (IMO).
You can't just remove stuff you don't need. Because everything is
interconnected, everything stops working if you take anything away. So
to make a tiny windows they need a (largely) separate codebase. Which
pollutes google with crap when I'm trying to search for API stuff,
gah!
Solution: reorganise stuff in a nice layered structure the way every
sane computer does. Don't make dependencies unless it really makes
sense, and never, ever make circular ones. Also, sort out the
who-owns-the-desktop thing so more than one person can be logged in at
once and use that to implement fast user switcing in a non-stupid way.
It sounds like w2k8 has moved a long way in the direction, hoorah!
* API
The win32 API is horrible. I've been fighting CreateProcess() and it's
a disaster of race conditions, deadlocks and inflexibility that programmers
have to work their way around. Make something nicer and put win32 into a
compatibility layer somewhere.
* FS semantics
Gah for not being able to delete open files. They need something like
*nix's refcounting thing. There you can delete open files and the
delete actually occurs when the last close happens.
Also: needs proper symlinks and mount points and everything should
support them. Do something clever about dangling symlinks for extra
points! And driver letters must die.
I don't like case-insensitivity. It means you have to have a complete
unicode engine in the kernel, which seems like bad engineering to me.
I'd also like to scrap all charset encodings except UTF-8. Just have
UTF-8 everywhere, much simpler.
* Object formats
.exe and .dll need to be thrown away. Dlls are a particular cause of
suckage and are missing basic features like back linking and lazy
linking and undefined symbols.
Speed up process launch too pls. Win at the moment is two orders of
magnitude slower than linux at launching processes and I don't really
understand why.
Get rid of the distinction between GUI and CLI .exes, there's no point to
it and it just causes pain.
* CLI
I'm not sure about PowerShell, it seems to 'heavy' to me (it needs about 20x
more memory than dash, for example). Make a simple, lightweight scripting
engine to automate stuff and put a nice terminal app on top of it.
* Desktop
Explorer should be able to handle large directories, copying large
directories, and should be a lot quicker. Maybe they could license
dopus. Also, multiple desktops, better window management.
* Registry
Just needs a bit of sorting out, IMO. I like the way gconf works: they
have a network registry, a OS registry, one for the system and one for
each user, with nice simple rules for which keys can override what.
Each one is stored as a tree of files, with each set of key/vale pairs
in a bit of XML. Programs talk to a single demon which organises all
this stuff for you, but you can also use all the regular XML tools to
manipulate them. OS X has something similar.
* Package management
Desperately needed. Something like apt would be nice, but maybe they
can innovate and do even better. The infrastructure should be
available for non-MS software too use too, ofc. If they can link it to some
kind of store (AppShop?) that would be fun. Should handle updates and
patching too, of course.
Also needs clear and rigid packaging standards that everyone sticks to.
* MFC
This and everything even slightly related to it must be burnt.
The post has been reported. Thank you!
You must be logged in to post.
You must be logged in to post.