Just to put a fine point on how much this is the "exact same functionality". If you delete link.exe from your system then lib will fail to work. That's right, lib just calls link for you. It could be replaced by a batch file or a 1 line C program.
The same goes for dumpbin and editbin. It's just a wrapper over link.
While everything you said is true its not a good answer for normal (non-developer) users. As you point out with proprietary software or open source you can ask the developers to add a new feature. But for most users fixing it yourself and paying someone to fix it aren't options. The former for obvious reasons, the latter because the cost to implement your feature is probably more than the cost of a comparable proprietary product.
So really users are left with the situation of asking the developer to add the feature. And here proprietary software wins because they hire developers to implement your feature with the money they get from upgrade fees. They'll get the upgrade fees from thousands or millions of customers. So effectively these people are pooling their money for the creation of these features. But there isn't really an equivalent money pool for the open source world.
As you mention most projects aren't Gnome or KDE. And most software is not GUI toolkits. Most software is applications. Its the reason users use computers: to apply them to the accomplish tasks. Applications are deal breakers, and in particular applications which support certain features. If the developers won't add the feature then the users won't use the application. They'll just pay thier $50 and get on with life.
Actually this isn't even right... It's really more like having two towers. In these two towers you can go into the basement, and you kick a poll. You then jump up and down 6 times, run over and kick another poll. Quickly you take the elevator up one floor, stop it, climb out on top of it, and cut the cable. Then and only then do the two towers come collapsing down.
Or a better analogy would be saying it's like the Tacoma Narrows bridge. You have a bridge that seems to work fine. It's even up for a few months. And then the wind finds an exploit.
The fact of the matter is that there isn't a big red polished exploit button in MS software. Rather people spend hours, days, weeks, months, etc... trying to find exploits. But it only takes one exploit to screw you.
If people were to dedicate the same amount of effort with everyday things they may come up with some equally bad problems. And if you look at all the warnings on the common items consumers buy its obvious making things "safe" is very difficult and just doesn't happen much.
IBM doesn't need a headstart in outsourcing. They're in the top five of companies outsourcing according to the issue of Wired that recently dealt with oursourcing.
Its a discount on purchasing individual licenses for multiple platforms. Each developer still requires a license per platform. Just because a developer can purchase multiple platforms at once at a discount does not make that false. Although the TrioPack looks like a pretty decent deal relative to the normal price it's still not zero dollars more.
"Single Platform (Either Qt/Windows or Qt/X11 or Qt/Mac) Prices per developer. Includes one year of support and maintenance."
Which part of per developer per product are you having trouble understanding? The text you quote shows that it's for a "Single Platform" (per platform) and it's "Prices per developer" (per developer). That seems like per developer per product to me. If I have 2 developers running on Qt/Windows I have to buy 2 copies. If I have 2 developers running on Qt/Windows and Qt/X11, it's 4 copies.
There's been a lot of discussion in this thread of this topic, but I don't think I've seen anyone mention what seems to be the key problem.
It certainly seems reasonable (where reasonable != FSF/RMS reasonable) that Qt should charge commercial developers for their product. And it seems reasonable that KDE can use Qt and KDE can remain GPLed. But what if I'm a commercial software developer who wants to develop for KDE?
KDE, due to their dependency on Qt, is GPLed. Any software company's customers who are using KDE are probably using the GPL Qt that came with KDE. And finally my program is closed source, and therefore can't link against the GPL KDE anyway.
So now I'm stuck either programming to Qt and missing the things that KDE has built on top of it, or I'm stuck programming in Qt/KDE and releasing my code as GPLed.
So will we see Photoshop, Word, AutoCad or Mathmatica for KDE? Will we even see AOL for KDE? At best we'll see these applications released for Qt, but they'll never be KDE apps.
It's interesting that Novell would choose to go with Qt here as Gnome will then have the same problem that KDE has today.
Of course, then again the Linux kernel is GPLed, and it obviously has software that has a dependency on it. Somehow there's a magical GPL->LGPL firewall (I think it has something to do with a #define that contains the letters GPL in it) that works for kernels, why couldn't there be one for graphics libraries as well? It's all good until you end up in court...
One of the developers at work tried to report a bug to Microsoft, who wanted to charge us $299 for the privilege. She told them to 'go fuck themselves'. Does this count as a 'user mistake'?
I thought MS's policy was to charge you only if its NOT a bug. If it's a bug I thought they wouldn't charge you, and might provide you with a fix.
If this person was having a problem with a developer product there's a pretty good chance they may find completely free support the same way OSS programmers find support - via newsgroups (you can find them on msdn.microsoft.com, but using google will find you them faster), mailing lists (eg the dotnet mailing lists), and blogs (weblogs.asp.net). Not to mention the more traditional knowledge base.
So who really knows whether it's a user mistake. You haven't described what the problem was. And this is Slashdot and although there are many anti-MS people here, somehow pro-MS comments get modded up too. So there's obviously people who know about MS as much as there's people who know about Linux here. So this place is possibly one of those places where you could find an answer too. But that'd be off topic. Unlike this post that mentions the DOJ and EU right here in this very sentence. Your coworker should Ask Slashdot.:)
It's amazing sometimes people make mistakes even if they happen to be smart developers. That applies to your coworker as much as it applies to Microsoft. I suppose it is a gamble though: $299 bucks if you're wrong...
Atzanteol is right, this comes up over and over again... There's a good book called World War 3.0 that discusses the antitrust trial with Microsoft. It goes into lots of details from the side of the Justice department. It's an interesting read...
If you read the book you learn this: Microsoft was in settlement agreements. Microsoft came to an agreement with the Justice Department, but the STATES vetoed it. It's in the book. Go read it. And we see that in the final outcome. The Justice Department OKed it, and some states didn't. Ultimately what all but one state was able to come to agreement?
So it's entirely concevable the Gore Justice Department would have decided to settle in the end... After all who knows what the new verdict would have been, or what further appeals MS would have attempted.
The funny thing is that Add/Remove Programs is implemented as a HTML Application using IE (IE being one of the programs the grandparent mentioned). Therefore uninstalling IE breaks this rather critical OS function.
So in addition to this you have the set program defaults or whatever it's called option that comes with a service pack on XP. That allows you to hide IE, but it's still there. But no one seems satisfied by that even though it's the equivalent to Microsoft not having a browser.
Based upon what you describe it sounds like either your video drivers are killing you or you have some bad memory. Given that both Diablo II & VS are crashing so erraticly I would put my money on the memory.
You can test the memory with memtest86. If it is the video drivers though unfortunately there isn't much you can do (as you said you already have the most recent drivers).
But given that you've seen one machine work GREAT for you (and I would imagine with Diablo II, or do you only play that at work?:) ), and you have one machine that's flaking out, how can you determine it to be the operating system? That's clearly not what's different between the two machines!
That wouldn't work because the pages are already non-executable: Therefore they cannot execute code to change it to be executable.
You are correct that if they are capable of executing code then they can change arbitrary pages to be executable. But at that point they already own your machine: They're executing arbitrary code.
If Java is doing the right thing it will not be broken.
The right thing to do is to call VirtualProtect(addr, size, PAGE_EXECUTE_READWRITE, &prevProtect);
That will mark the memory pages as being read/write/execute (where as previously they were only read/write). People should have been doing this before anyway (as the pages were never guaranteed to be executable), and if they didn't it's their bug.
I'm betting that Sun can download the beta and test Java on XP SP2 to make sure they're compliant though. Hell, Microsoft could probably even do some compatibility testing for them and enable a compatibility layer for Java. But then again Sun might sue them for that. MS probably just wants to stay away:).
1. Vulnerability discovered 2. Patch conceived of and created 3. Patch tested 4. Patch released 5. Exploit Created
"We have never had vulnerabilities exploited before the patch was known." == never before 2.
"he could think of at least one instance where 'a vulnerability was exploited before a patch was available'" == one before 4.
never before 2 and one before 4 are not mutually exclusive. You've conveniently combined the "patch was known" and "patch was available" steps into one step. But to MS these are certainly distinct steps.
It is exposed as a COM object. It's exposed to automation (*cough* VB *cough*) via the FilgraphManager object. In C++ you have things like IFilter, IFilterGraph, IFilterGraph2, IFilterInfo, IGraphBuilder, etc... You compose a filter graph that goes something like: disk->codec->audio device, or disk->codec->disk, or disk->codec->visualization filter->audio device. And if you want to write a codec you end up implementing a bunch of interfaces (your codec is a COM object). It's all buried under DirectShow. There may be some more recent APIs here though that I don't know about. There's certainly the Secure Audio Path (SAP), and I don't think DirectShow has access to that.
And these APIs are the reason why MS doesn't want to remove media support. If you remove it applications will break. Could you remove the WMP chrome and leave all the APIs? Sure, this is the same as removing the IE chrome and leaving the rendering engine. But in the end people don't seem to find this a satisfying solution.
The ZIP functionality is different: It's been licensed:
C:\WINDOWS\system32>find "copyright" zipfldr.dll
---------- ZIPFLDR.DLL This DynaZIP UnZIP Library is copyrighted (c) 1995 - 2000 by Inner Media, Inc. All Rights Reserved. This DynaZIP ZIP Library is copyrighted (c) 1995 - 2000 by Inner Media, Inc. All Rights Reserved.
And WinAmp is completely free and always has been. What's the problem with Microsoft including a media player?
On the Unix side...it is easier...the admins can easily give us the rights we need to install, script and run Oracle/apps. Fine grain privs. on the Unix side is a wonderful thing...but, and this is just from my experience..Win doesn't have as fine a grain control...and admin. is needed for so many things, if it touches the registry...
Unfortunately you've got this exactly backwards.
Ok, let's start with the Unix permission model: r/w/x for user, group, or everyone. That's it w/o adding additional software.
Windows uses ACLs by default, so you can say only Joe and Sally have access to this (with no relationship between Joe and Sally). Eg, and administrator could setup a %ProgramFiles%\Oracle and let you install anything you want below it. You could also create groups of course, and put Joe and Sally into the DBA group.
As for your registry needs admin access, this is completely incorrect. Registry access is fully ACLed just like file access (and just like so many other things in NT: threads, mutexes, pipes, services, printers, etc...). Now, you can't put permissions on an individual value but you can put permissions on the keys. So, again you could be given the proper permissions necessary to modify the portions of the registry you need to.
There are tricky parts on the registry. For COM objects for example you need to update the key HKCR\CLSID and probably HCKR it's self. You'd need to setup it up so that your account has these permissions: Query Value, Create Subkey & Enumerate Subkeys. That'd let you insert values, and the pre-existing CREATOR OWNER value gives you full control of the subkeys you created. Now you can add any new COM objects to the system, but you can't delete/edit the ones that are there.
So in NT you have one security model that applies to a diverse range of objects throughout the entire system. In Unix you have users, groups, and access control on files. This almost works very well in Unix because "everything is a file" - the only problem is not quite everything is a file (is a process a file? a thread? are the posix threading APIs and objects files? how about the entries within a config file? are those file? - unfortunately the answer to all of these is NO).
So I think in practice you'll find that NT's security model is not only more finer grained in the permissions that can be handed out, but is also more fine grained in the objects that can have access control applied to them.
The definition of specific URL schemes and their scheme-specific
syntax and semantics has been moved to separate documents.
So it's not the document that specifies what an HTTP URL should look like. Anyone know what that document is?
Re:let's see sun invents java, ibm, makes a tool .
on
Sun and Eclipse Squabble
·
· Score: 2, Interesting
Microsoft on the other hand, from my understanding, was trying to hijack things that would make the language itself different - like they did/do with HTML. Let's say for instance that Microsoft made a compiler and VM that supported operator overloading.. then anyone that used operator overloading with their system wouldn't be able to use it in the standard system.
Unless MS added operator overloading as a bunch of methods called "op_Inequality", "op_Addition", etc... Then the people with the crappy compiler could just call those methods. This would be much like how generics are getting added (old compilers still work with it).
Really what Microsoft did wrong had nothing to do with adding incompatibilities to Java. MS had a license that allowed them to do so (they just had to have different modes to compile, one which compiled to the standard). They also had a license that mandated they stay up to date with Java, implementing just about anything Sun wanted them to implement in some reasonable time. That's where they probably fucked it all up, as it's well known they didn't implement many major Java features (RMI I think was one of them, JNI another where MS choose to go with J/Direct or whatever it is they called it). And if you think about it, this is much worse for Java then the OPTION to compile incompatible binaries. Now you just can't use certain functionality on one platform, and that really destroys WORA.
You can even find the license on the web if you're really interested. It's an interesting read.
As far as IBM it is a similar fragmentation as towards Microsoft. They're creating multiple types of Java apps (SWT vs Swing). That's going to split the Java developer camp into 2 and make each Java developer less general purpose. That'll force companies to standardize on one API, and it'll put up some barriers for Java developers who are highly experienced with one API but not the other. Even if the APIs are similar people will prefer the person w/ hands on experience to the technology at hand and those people will certainly spend less time in the on-line help. And that's the real problem. It seems like SWT is technically better, Sun should just dump Swing. That'll probably never happen though.
It seems like that was a good part of your message:
At the risk of being troll or falimbait; Microsoft is pissing me off. Every day I come to/. and I see some new story about how Microsoft is ripping ideas off of everyone else. Their MSN music service coming out, this news thing, their "matrix" shot at linux, its just rediculous. Perhaps if MS would come up with some actual innovation, other than new marketing techniques, they could actually have a good product.
That being said, I'll get responding to the point you say you were trying to make, and this post. As you said yourself, they "have a good start". But you seem to be under the impression that Microsoft's software is stagnant and that it's not improving.
The only issue you call out specifically is security. Microsoft HAS improved on that (compare Server2k3 w/ Server2k exploit rates, for example) and is still doing more. Security asise if you just look at what Microsoft has done over time (95->98->XP) there have been significant improvements in both UI (The original 95's UI sucks ass out of the box) and stability (the former traditional Microsoft sucks rallying point; these days it's security). I also find it extremely interesting that typically there is "one big thing" Microsoft gets slammed for at a time. And I say if your detractors can only find one major (where major=encompassing design flaws) bad thing about your products you're doing pretty good.
You also say you "would like to see augmentations to their existing software, instead of making new software to get more money." I just don't understand what the difference is. Microsoft adds new stuff to their software to sell more copies. If they don't then people won't upgrade. There's still a large amount of people using Win 98 (~30% I belive last time I looked at Google's stats, and it was about equal to XP). Apparently XP wasn't compelling enough for them to upgrade. So they're continuing to add new stuff. But it's not like during this time period Microsoft doesn't refine their existing products. Win98 is still supported today and gets patches. What other desktop operating systems still support the version released in 98? I don't think it's Apple, and I don't think it's any of the Linux vendors, and I know it's not Be.
So can MS's software improve? Sure, and I think they wouldn't disagree. But is it really just "good enough"? There are markets (IBM seems to think information worker is one of them) where Microsoft rules. Really no one can touch them: not Linux, not MacOS w/ a non-MS office suite. And while some of that may be interoperability, a lot of it is the staggering amount of functionality that Office brings to the table. Even slashdoters will quote areas where there's no compelling alternative. So I'm not so sure it's mediocre. But like everything it can certainly improve, after all, nothing is perfect.
My point was not the terminology, but rather the functionality. The taskbar doesn't display the currently running windows. They're different things; the terminology is irrelevent.
Minor nitpick:
I first used a taskbar with CDE, well before 1995. CDE wasn't just a WM (the WM in CDE was MWM).
Check out the CDE "taskbar". It lists applications you can start, and virtual desktops. No actively running "tasks".
You do not have any choice about what can and can not be supported under Microsoft products.
Your original post was that NT 4 doesn't support USB. But you can get 3rd party drivers for USB. Obviously you're not really all that limited.
But it is true that you cannot arbitrarily modify any part of the Windows OS. But it's not like Windows lacks extensibility points. Infact, it is FILLED with extensibility points; and Microsoft even typically provides binary compatibility between versions of those extensibility points [insert gripe about Linux module APIs not being binary compatible].
Hell, you can even get ext2 drivers for Windows! So let's be realistic: Typically if customers want to extend Windows MS makes APIs available to do so.
Just to put a fine point on how much this is the "exact same functionality". If you delete link.exe from your system then lib will fail to work. That's right, lib just calls link for you. It could be replaced by a batch file or a 1 line C program.
The same goes for dumpbin and editbin. It's just a wrapper over link.
While everything you said is true its not a good answer for normal (non-developer) users. As you point out with proprietary software or open source you can ask the developers to add a new feature. But for most users fixing it yourself and paying someone to fix it aren't options. The former for obvious reasons, the latter because the cost to implement your feature is probably more than the cost of a comparable proprietary product.
So really users are left with the situation of asking the developer to add the feature. And here proprietary software wins because they hire developers to implement your feature with the money they get from upgrade fees. They'll get the upgrade fees from thousands or millions of customers. So effectively these people are pooling their money for the creation of these features. But there isn't really an equivalent money pool for the open source world.
As you mention most projects aren't Gnome or KDE. And most software is not GUI toolkits. Most software is applications. Its the reason users use computers: to apply them to the accomplish tasks. Applications are deal breakers, and in particular applications which support certain features. If the developers won't add the feature then the users won't use the application. They'll just pay thier $50 and get on with life.
Well it's competition would have been DOS, so that seems about equal :).
Actually this isn't even right... It's really more like having two towers. In these two towers you can go into the basement, and you kick a poll. You then jump up and down 6 times, run over and kick another poll. Quickly you take the elevator up one floor, stop it, climb out on top of it, and cut the cable. Then and only then do the two towers come collapsing down.
Or a better analogy would be saying it's like the Tacoma Narrows bridge. You have a bridge that seems to work fine. It's even up for a few months. And then the wind finds an exploit.
The fact of the matter is that there isn't a big red polished exploit button in MS software. Rather people spend hours, days, weeks, months, etc... trying to find exploits. But it only takes one exploit to screw you.
If people were to dedicate the same amount of effort with everyday things they may come up with some equally bad problems. And if you look at all the warnings on the common items consumers buy its obvious making things "safe" is very difficult and just doesn't happen much.
IBM doesn't need a headstart in outsourcing. They're in the top five of companies outsourcing according to the issue of Wired that recently dealt with oursourcing.
Maybe they want to be #1.
Its a discount on purchasing individual licenses for multiple platforms. Each developer still requires a license per platform. Just because a developer can purchase multiple platforms at once at a discount does not make that false. Although the TrioPack looks like a pretty decent deal relative to the normal price it's still not zero dollars more.
As for the "per developer per product" you say, its just plain wrong:
m l? cid=4
http://www.trolltech.com/products/qt/pricing.ht
"Single Platform
(Either Qt/Windows or Qt/X11 or Qt/Mac)
Prices per developer. Includes one year of support and maintenance."
Which part of per developer per product are you having trouble understanding? The text you quote shows that it's for a "Single Platform" (per platform) and it's "Prices per developer" (per developer). That seems like per developer per product to me. If I have 2 developers running on Qt/Windows I have to buy 2 copies. If I have 2 developers running on Qt/Windows and Qt/X11, it's 4 copies.
There's been a lot of discussion in this thread of this topic, but I don't think I've seen anyone mention what seems to be the key problem.
It certainly seems reasonable (where reasonable != FSF/RMS reasonable) that Qt should charge commercial developers for their product. And it seems reasonable that KDE can use Qt and KDE can remain GPLed. But what if I'm a commercial software developer who wants to develop for KDE?
KDE, due to their dependency on Qt, is GPLed. Any software company's customers who are using KDE are probably using the GPL Qt that came with KDE. And finally my program is closed source, and therefore can't link against the GPL KDE anyway.
So now I'm stuck either programming to Qt and missing the things that KDE has built on top of it, or I'm stuck programming in Qt/KDE and releasing my code as GPLed.
So will we see Photoshop, Word, AutoCad or Mathmatica for KDE? Will we even see AOL for KDE? At best we'll see these applications released for Qt, but they'll never be KDE apps.
It's interesting that Novell would choose to go with Qt here as Gnome will then have the same problem that KDE has today.
Of course, then again the Linux kernel is GPLed, and it obviously has software that has a dependency on it. Somehow there's a magical GPL->LGPL firewall (I think it has something to do with a #define that contains the letters GPL in it) that works for kernels, why couldn't there be one for graphics libraries as well? It's all good until you end up in court...
One of the developers at work tried to report a bug to Microsoft, who wanted to charge us $299 for the privilege. She told them to 'go fuck themselves'. Does this count as a 'user mistake'?
:)
I thought MS's policy was to charge you only if its NOT a bug. If it's a bug I thought they wouldn't charge you, and might provide you with a fix.
If this person was having a problem with a developer product there's a pretty good chance they may find completely free support the same way OSS programmers find support - via newsgroups (you can find them on msdn.microsoft.com, but using google will find you them faster), mailing lists (eg the dotnet mailing lists), and blogs (weblogs.asp.net). Not to mention the more traditional knowledge base.
So who really knows whether it's a user mistake. You haven't described what the problem was. And this is Slashdot and although there are many anti-MS people here, somehow pro-MS comments get modded up too. So there's obviously people who know about MS as much as there's people who know about Linux here. So this place is possibly one of those places where you could find an answer too. But that'd be off topic. Unlike this post that mentions the DOJ and EU right here in this very sentence. Your coworker should Ask Slashdot.
It's amazing sometimes people make mistakes even if they happen to be smart developers. That applies to your coworker as much as it applies to Microsoft. I suppose it is a gamble though: $299 bucks if you're wrong...
Atzanteol is right, this comes up over and over again... There's a good book called World War 3.0 that discusses the antitrust trial with Microsoft. It goes into lots of details from the side of the Justice department. It's an interesting read...
If you read the book you learn this: Microsoft was in settlement agreements. Microsoft came to an agreement with the Justice Department, but the STATES vetoed it. It's in the book. Go read it. And we see that in the final outcome. The Justice Department OKed it, and some states didn't. Ultimately what all but one state was able to come to agreement?
So it's entirely concevable the Gore Justice Department would have decided to settle in the end... After all who knows what the new verdict would have been, or what further appeals MS would have attempted.
The funny thing is that Add/Remove Programs is implemented as a HTML Application using IE (IE being one of the programs the grandparent mentioned). Therefore uninstalling IE breaks this rather critical OS function.
So in addition to this you have the set program defaults or whatever it's called option that comes with a service pack on XP. That allows you to hide IE, but it's still there. But no one seems satisfied by that even though it's the equivalent to Microsoft not having a browser.
Based upon what you describe it sounds like either your video drivers are killing you or you have some bad memory. Given that both Diablo II & VS are crashing so erraticly I would put my money on the memory.
:) ), and you have one machine that's flaking out, how can you determine it to be the operating system? That's clearly not what's different between the two machines!
You can test the memory with memtest86. If it is the video drivers though unfortunately there isn't much you can do (as you said you already have the most recent drivers).
But given that you've seen one machine work GREAT for you (and I would imagine with Diablo II, or do you only play that at work?
That wouldn't work because the pages are already non-executable: Therefore they cannot execute code to change it to be executable.
You are correct that if they are capable of executing code then they can change arbitrary pages to be executable. But at that point they already own your machine: They're executing arbitrary code.
If Java is doing the right thing it will not be broken.
:).
The right thing to do is to call VirtualProtect(addr, size, PAGE_EXECUTE_READWRITE, &prevProtect);
That will mark the memory pages as being read/write/execute (where as previously they were only read/write). People should have been doing this before anyway (as the pages were never guaranteed to be executable), and if they didn't it's their bug.
I'm betting that Sun can download the beta and test Java on XP SP2 to make sure they're compliant though. Hell, Microsoft could probably even do some compatibility testing for them and enable a compatibility layer for Java. But then again Sun might sue them for that. MS probably just wants to stay away
Actually you're wrong. The sequence of events is:
1. Vulnerability discovered
2. Patch conceived of and created
3. Patch tested
4. Patch released
5. Exploit Created
"We have never had vulnerabilities exploited before the patch was known." == never before 2.
"he could think of at least one instance where 'a vulnerability was exploited before a patch was available'" == one before 4.
never before 2 and one before 4 are not mutually exclusive. You've conveniently combined the "patch was known" and "patch was available" steps into one step. But to MS these are certainly distinct steps.
It is exposed as a COM object. It's exposed to automation (*cough* VB *cough*) via the FilgraphManager object. In C++ you have things like IFilter, IFilterGraph, IFilterGraph2, IFilterInfo, IGraphBuilder, etc... You compose a filter graph that goes something like: disk->codec->audio device, or disk->codec->disk, or disk->codec->visualization filter->audio device. And if you want to write a codec you end up implementing a bunch of interfaces (your codec is a COM object). It's all buried under DirectShow. There may be some more recent APIs here though that I don't know about. There's certainly the Secure Audio Path (SAP), and I don't think DirectShow has access to that.
And these APIs are the reason why MS doesn't want to remove media support. If you remove it applications will break. Could you remove the WMP chrome and leave all the APIs? Sure, this is the same as removing the IE chrome and leaving the rendering engine. But in the end people don't seem to find this a satisfying solution.
And WinAmp is completely free and always has been. What's the problem with Microsoft including a media player?
On the Unix side...it is easier...the admins can easily give us the rights we need to install, script and run Oracle/apps. Fine grain privs. on the Unix side is a wonderful thing...but, and this is just from my experience..Win doesn't have as fine a grain control...and admin. is needed for so many things, if it touches the registry...
Unfortunately you've got this exactly backwards.
Ok, let's start with the Unix permission model: r/w/x for user, group, or everyone. That's it w/o adding additional software.
Windows uses ACLs by default, so you can say only Joe and Sally have access to this (with no relationship between Joe and Sally). Eg, and administrator could setup a %ProgramFiles%\Oracle and let you install anything you want below it. You could also create groups of course, and put Joe and Sally into the DBA group.
As for your registry needs admin access, this is completely incorrect. Registry access is fully ACLed just like file access (and just like so many other things in NT: threads, mutexes, pipes, services, printers, etc...). Now, you can't put permissions on an individual value but you can put permissions on the keys. So, again you could be given the proper permissions necessary to modify the portions of the registry you need to.
There are tricky parts on the registry. For COM objects for example you need to update the key HKCR\CLSID and probably HCKR it's self. You'd need to setup it up so that your account has these permissions: Query Value, Create Subkey & Enumerate Subkeys. That'd let you insert values, and the pre-existing CREATOR OWNER value gives you full control of the subkeys you created. Now you can add any new COM objects to the system, but you can't delete/edit the ones that are there.
So in NT you have one security model that applies to a diverse range of objects throughout the entire system. In Unix you have users, groups, and access control on files. This almost works very well in Unix because "everything is a file" - the only problem is not quite everything is a file (is a process a file? a thread? are the posix threading APIs and objects files? how about the entries within a config file? are those file? - unfortunately the answer to all of these is NO).
So I think in practice you'll find that NT's security model is not only more finer grained in the permissions that can be handed out, but is also more fine grained in the objects that can have access control applied to them.
Except 2396 no longer covers the specific URL scehemes (refer to section G.3), so you gotta find some other RCF that says IE sucks.
But 2396 states:
G.3. Modifications from RFC 1738
The definition of specific URL schemes and their scheme-specific
syntax and semantics has been moved to separate documents.
So it's not the document that specifies what an HTTP URL should look like. Anyone know what that document is?
Microsoft on the other hand, from my understanding, was trying to hijack things that would make the language itself different - like they did/do with HTML. Let's say for instance that Microsoft made a compiler and VM that supported operator overloading.. then anyone that used operator overloading with their system wouldn't be able to use it in the standard system.
Unless MS added operator overloading as a bunch of methods called "op_Inequality", "op_Addition", etc... Then the people with the crappy compiler could just call those methods. This would be much like how generics are getting added (old compilers still work with it).
Really what Microsoft did wrong had nothing to do with adding incompatibilities to Java. MS had a license that allowed them to do so (they just had to have different modes to compile, one which compiled to the standard). They also had a license that mandated they stay up to date with Java, implementing just about anything Sun wanted them to implement in some reasonable time. That's where they probably fucked it all up, as it's well known they didn't implement many major Java features (RMI I think was one of them, JNI another where MS choose to go with J/Direct or whatever it is they called it). And if you think about it, this is much worse for Java then the OPTION to compile incompatible binaries. Now you just can't use certain functionality on one platform, and that really destroys WORA.
You can even find the license on the web if you're really interested. It's an interesting read.
As far as IBM it is a similar fragmentation as towards Microsoft. They're creating multiple types of Java apps (SWT vs Swing). That's going to split the Java developer camp into 2 and make each Java developer less general purpose. That'll force companies to standardize on one API, and it'll put up some barriers for Java developers who are highly experienced with one API but not the other. Even if the APIs are similar people will prefer the person w/ hands on experience to the technology at hand and those people will certainly spend less time in the on-line help. And that's the real problem. It seems like SWT is technically better, Sun should just dump Swing. That'll probably never happen though.
It seems like that was a good part of your message:
/. and I see some new story about how Microsoft is ripping ideas off of everyone else. Their MSN music service coming out, this news thing, their "matrix" shot at linux, its just rediculous. Perhaps if MS would come up with some actual innovation, other than new marketing techniques, they could actually have a good product.
At the risk of being troll or falimbait; Microsoft is pissing me off. Every day I come to
That being said, I'll get responding to the point you say you were trying to make, and this post. As you said yourself, they "have a good start". But you seem to be under the impression that Microsoft's software is stagnant and that it's not improving.
The only issue you call out specifically is security. Microsoft HAS improved on that (compare Server2k3 w/ Server2k exploit rates, for example) and is still doing more. Security asise if you just look at what Microsoft has done over time (95->98->XP) there have been significant improvements in both UI (The original 95's UI sucks ass out of the box) and stability (the former traditional Microsoft sucks rallying point; these days it's security). I also find it extremely interesting that typically there is "one big thing" Microsoft gets slammed for at a time. And I say if your detractors can only find one major (where major=encompassing design flaws) bad thing about your products you're doing pretty good.
You also say you "would like to see augmentations to their existing software, instead of making new software to get more money." I just don't understand what the difference is. Microsoft adds new stuff to their software to sell more copies. If they don't then people won't upgrade. There's still a large amount of people using Win 98 (~30% I belive last time I looked at Google's stats, and it was about equal to XP). Apparently XP wasn't compelling enough for them to upgrade. So they're continuing to add new stuff. But it's not like during this time period Microsoft doesn't refine their existing products. Win98 is still supported today and gets patches. What other desktop operating systems still support the version released in 98? I don't think it's Apple, and I don't think it's any of the Linux vendors, and I know it's not Be.
So can MS's software improve? Sure, and I think they wouldn't disagree. But is it really just "good enough"? There are markets (IBM seems to think information worker is one of them) where Microsoft rules. Really no one can touch them: not Linux, not MacOS w/ a non-MS office suite. And while some of that may be interoperability, a lot of it is the staggering amount of functionality that Office brings to the table. Even slashdoters will quote areas where there's no compelling alternative. So I'm not so sure it's mediocre. But like everything it can certainly improve, after all, nothing is perfect.
My point was not the terminology, but rather the functionality. The taskbar doesn't display the currently running windows. They're different things; the terminology is irrelevent.
Minor nitpick: I first used a taskbar with CDE, well before 1995. CDE wasn't just a WM (the WM in CDE was MWM). Check out the CDE "taskbar". It lists applications you can start, and virtual desktops. No actively running "tasks".
The point I was trying to make is this:
You do not have any choice about what can and can not be supported under Microsoft products.
Your original post was that NT 4 doesn't support USB. But you can get 3rd party drivers for USB. Obviously you're not really all that limited.
But it is true that you cannot arbitrarily modify any part of the Windows OS. But it's not like Windows lacks extensibility points. Infact, it is FILLED with extensibility points; and Microsoft even typically provides binary compatibility between versions of those extensibility points [insert gripe about Linux module APIs not being binary compatible].
Hell, you can even get ext2 drivers for Windows! So let's be realistic: Typically if customers want to extend Windows MS makes APIs available to do so.