Microsoft Trying To Appeal to the Unix Crowd?
DigDuality writes "With the news that Windows 2008 (recently discussed on Slashdot) will have GUI-less installs and be fully scriptable, that they've opened up their communication protocols for non-commercial usage and are providing a patent covenant (Redhat Responds), and now finally an interesting rumor floating around that Microsoft will be taking on GNU directly. Has Microsoft totally switched gears in how it is approaching the Unix and FOSS sector for direct competition? According to an anonymous email leaked from a Microsoft employee, it seems Microsoft will be developing a framework that will be completely GNU compatible. Microsoft CEO, Steve Ballmer, said on Friday (23 February) that they are aiming to restore a Unix-like environment to its former proprietary glory, at the same time proving that Microsoft is committed to interoperability. Ballmer emphasized that Microsoft's new strategy is to provide users with a complete package, and this includes users who like Unix environments. According to the supposedly leaked email, UNG, which stands for UNG's not GNU, is set to be released late 2009."
microsoft is way to, what's the word, oh yeah, proud to let their os be subject to community modification.
In Soviet Halo, the game kills you (socially anyway)
And what is the difference between this and Windows Services for Unix? Sounds like rebranding to me.
"When life gives you lemons, don't make lemonade. Make life take the lemons back!" -- Cave Johnson
You insensitive clod! I'm an Eskimo and I love the sweet tasty goodness of a cool, sugary sno-cone.
Also, you left one other difference out:
Satan engages in questionable business practices.
Oh wait....
Considering how routinely Microsoft drops support for something they offer, telling their users to switch over to their newest latest, greatest and best, who would actually rely on this thing for the long haul? This isn't even a "Microsoft is evil" post; I'm just not sure who would believe they could depend on Microsoft to continue support this over a long period of time.
MS also has existing software available for making Windows UNIX compatible, "UNIX Services for Windows", if memory serves. It's not a long distance from that to GNU compatibility.
With Cygwin already around, and UNIX being open and readily able to be integrated into Windows, it would be a smart way to envelop potential UNIX users. Personally I'd like a Microsoft supported Cygwin, which isn't as buggy and doesn't feel as detached from Windows.
// MD_Update(&m,buf,j);
My whole point of investing my time into Linux is because FOSS is a cultural phenomon that is completely new. Nobody, at least, not a single entity, owns Linux, and for that reason, it belongs to everyone. If you make some sort of a contribution to it, free of charge, it is almost like making a contribution directly to humanity.
I can't possibly see how Microsoft could pull off a similar thing.
No amount of being nice or slick marketing posters could make me think that writing for free on platform with a track record of sickening self interest could even remotely equate to the grand social experiment that is Linux.
But that's really not the worst of it. If anything, the slick marketing posters that come with Windows are a part of the problem. To a large extent, I view the drive for Linux as a push for a newer set of ethics for consulting firms.
We need to at some examine the relationship consulting firms have with large concerns like Microsoft. I always though that in the ideal case, a consultant was somewhat akin to a doctor, supposedly free of any sort of taint from any particular vendor's solution. But that's not what we have today. We have consulting firms that are "Junior, Gold", and more with Microsoft. It's an unholy alliance, where, consultants invest in MCSD's and other certifications, pay through the nose to get a product logo'd as compatible. In exchange, Microsoft gives those companies preferred listings and free development tools and operating systems. So basically, Microsoft is using artificial prices for copying to induce consultants to support their platform for free, and those consultants, in turn, are going to always be biased towards push their clients to Microsoft products. Indeed, higher levels of Microsoft partnership require sales of Microsoft products to achieve Gold or some other channel status.
If doctors did that, they would be barred from practice, and I think this comingling of a vendor with a solution provider is flat out wrong. In other lines of business, if you were paid by a vendor to advocate a particular product, selling everything from nuts and bolts to window frames, you would wind up in jail. But this practice of "partnering" is mysteriously ok in IT.
Adopting Linux removes this disgust. Because the software is free, there's no incentive to copy it, and ultimately, the customer is going to wind up with a solution that is genuinely more right sized for their needs. With Microsoft, you'll always have consultants pushing Biztalk and Enterprise this or Enterprise that, because, well, they are getting paid to do it.
The bottom line is this. If Microsoft genuinely wants to promote an open source environment, then yes, it has to make open source software, but it also has to work to promote the idea of a consultant as an independent advocate for his or her clients. We are not some salesman on the cheap motivated by free licensing for products similar to what Linux gives you for free.
This is my sig.
Microsoft would have to do a complete make-over on BSD the way Apple did with OSX. It's not that they couldn't do it, it's that they wouldn't. It would upset all of their development users to no end. There are so many developers making their products and living based on the Windows API that to move to something GNU "compatible" would simply be catastrophic in so many ways that I'd prefer not to put brain power into imagining the details. It would be ugly though... very ugly.
And in the end, it's not only that the Windows platform isn't and will never be efficient and reliable, it's that people who aren't using Microsoft as their basis for development or operations aren't doing so because they haven't heard or or tried Microsoft's stuff, it's because they have! Microsoft's reputation remains fresh in the minds of those who have rejected them.
To pull this off would require a lot. The first thing they would need to do is assure their developers that all the work, the time and resources devoted to Microsoft's platforms will not be wasted. To keep those developers would be no easy task. A large portion of them are 'worshipers' but many more are simply very invested in the current API and only take changes in small increments.
So such a move would take a long time -- even more than 5 years, possibly more than 10 -- to accomplish and even then, people are already burned on Microsoft's name, brand, style and attitude that it would take a long time to 'heal.' But 10 years is a long time to heal those memories, but why should the industry wait 10 years for what it has available to it now just so it could get something from a company that has a general strangle-hold on the IT market? People will figure it out eventually.
And since so much of today's business mentality is short-term anyway what with having to give in to short-term investors' demands or fear being sued, any planning more than 2 or 3 years out is just unimaginable.
Can they do it? Should they do it? Yes and yes! I have been saying it all along that if Microsoft wants to restore its former glory, it will have to dump the Windows API and either create a new, more stable and secure basis or adopt BSD and tweak it the way Apple did and hen create a WindowsAPI compatibility layer that actually works. Apple did it with their "Classic" mode (it's not perfect, but it worked well enough for many, and from what I hear Vista is a 'resounding success' even with its declining level of backward compatibility). Microsoft can do it too.
But will they? Not while present management is currently in control of things. If Microsoft wants another shot at being fresh, new and what's hip the way they were quite a few years ago, they'll have to dump their 80's-mentality leadership and fast! Only then will spurned anti-Microsoft people give a second look at Microsoft now or in the future.
Then get a job working with Solaris, HP-UX, AIX, etc. These still exist, you know.
While on the subject, I'm sure many people have told RMS to fsck off. Then again, thanks to his "stupid dogma" I've always been able to count on some excellent tools (such as bash, apache, perl...), which are nearly always much better than the vendor-supplied equivalent. The latter tend to be somewhat quirky and/or limited.
Oh yes, I've always been paid real money.
Usage: km/h for speed (kilometers per hour); kph for very slow impulses (kilopond hours).
I live in Seattle and the last three months I have been receiving a lot of calls from head hunters staffing for MS looking for people with a strong Unix background. When I first received the job descriptions, my guess was that they were working on something that would allow you to manage Linux/Unix systems from a Windows machine. Reflecting back on the job description, it could have been something like this.
...)
/usr directory tree, etc.
I didn't accept the offers, but here is some free advice:
- Get rid of single letter drive names (you know, the eighties called,
- The directory separator is '/', As Seen On Unix and URLs.
- Reorganize the file system more like Unix/Linux, and maybe rename 'Program Files' to 'Applications', have a
- Ship every copy of the OS with an X server.
- And I still need a compliant shell and C compiler to support the holy invocation './configure && make && sudo make install'.
That POSIX layer isn't. It's POSIX only in name, ...
Actually, the proper term is WEIRDNIX.
For those not familiar with the term, WEIRDNIX was the POSIX crew's term for a hypothetical implementation that was technically compliant with all the POSIX standard, but implemented everything in the worst possible way. The idea was to find bugs in the POSIX standard that would allow implementers to claim compliance while violating the intent of the standard.
Mostly, people just sent in specs for a component that followed the standard but would in some way sabotage software that expected the obvious behavior. When NT came out, there were a number of discussions of its POSIX implementation, and a lot of people explained it by saying that Microsoft had done a full implementation of WEIRDNIX. Hardly anyone's POSIX software would run sanely on NT, and that was a simple, elegant explanation of why.
Is there any reason to expect things to be different this time around?
Those who do study history are doomed to stand helplessly by while everyone else repeats it.
Woah, woah, RMS is a worthless commie, but he's not a lazy worthless commie.
He did write the Emacs Operating System, after all.
IMO, that gets negative points, but it's certainly quite a bit far from nothing, you'll have to concede.
And you still have plenty of Unix options that don't involve free software. You just have to buy actual Unix.
Can you be Even More Awesome?!
I don't recall what is wrong with a prenup.
Marriage was supposed to be a contract, it became a government and religious institution. Prenups became an attempt to bring the contract part of things back into it.
Technically, if a woman cannot enter into a prenup (unwilling) it means she's likely to be taking you only for your money and goods and will fleece you dry. If she loves you, she wouldn't give a damn, so long as the prenup wasn't some ridiculous shitty deal. Marriage as it stands in its institutionalized format, already IS a shitty deal.
Pick a different analogy.
" What luck for rulers that men do not think" - Adolf Hitler
You don't really gain anything with the NT kernel. The problem is developers. They want to learn technologies that don't lock them down to one vendor or a "licensed" solution. Because of that chosen career paths follow toolkits that are portable. Java, python,ruby, mysql, apache, etc.. . Automation and installation of these type of tools are best handled through the GNU or GNU like products.
Even though the developer doesn't have the purchasing power, they do influence. If someone says, I need you to implement XYZ for my business. If the developer says, I need 3 linux boxes, it's done (because it's cheaper too). The purchaser has no power. MS needs to get rid of this factor. Non-techy people who do the buying would feel much more comfortable with windows machines. They need to empower the purchaser to say, look, I'll buy what I want, since you can develop on either.
Personally, I think it's still a failed strategy. If they see the writing on the wall, they should just port windows GUI part to linux or BSD and move on.
-Nuke the moon
It makes sense.
Windows is the only non-unix OS of any mention any more and we've always seen PC ports to unix apps - that what you get paid to do, vry few pc programs or worth porting to unix. So, the closer Windows is to being some form of unix compatible the better.
And there'e precedent for it. The architecture of dos/win is derived from CP/M which was a was written while looking at unix but only doing what could be done with an 8 bit processor and 16K or very expensive RAM. Keep in mind too Microsoft had Xenix - the first commercial unix ever sold.
I can almost see how this happened. A few of the biggest MS investors corner Ballmer in a bar: "Unless your company does something like sell Linux, we think you have no long term future. Apple has switched, Sun hasn't died. Look like unix is everywhere not Windows like you guys said" to which Ballmer replied "bah, we can do everything Linux can"
"Run Linux programs?"
"We'll have it on two years" (Note to self: remind Bill I did this)
Need Mercedes parts ?
Microsoft is profitable because of Windows and without Windows they would be just another software company. Because they know Windows must continue to exist in its dominant and monopoly position, they must stop threats from diminishing the position Windows has. That's it, Microsoft in a nutshell. Protect Windows market position and continue making billions in profits per quarter. People will take what is handed to them by Microsoft and like it because most see there being no other option.
I'll say it again here, Microsoft has been in the business of anti-competition for over 20 years. Why do people not see this and think that this is Microsoft adjusting to the market? I hate to quote John C. Dvorak but here's a bit of insight as to how this company is managed: As to how and why the OS failed to become a huge success--I'm leaving the debate open this week. Steve Ballmer comes to mind. He started the ball rolling by proclaiming OS/2 to be the next great operating system, and within a few years he was walking around the floor of a computer show putting disks into computers running OS/2 to crash the systems and prove that OS/2 wasn't crash-proof! http://www.pcmag.com/article2/0,4149,768242,00.asp
There are hundreds of examples of Microsoft's anti-competitive behavior and nothing has changed or has ever changed. It is in their DNA and no press release changes that. IMO.
LoB
"Anyone who stands out in the middle of a road looks like roadkill to me." --Linus
And say you're a company maintaining existing cross-platform software. Why pay the costs of maintaining Windows and Unix versions; just drop support for the Windows version, and let UNG pick up the slack. But once a few companies start doing that, the negative marketing consequences (not a real technical issue, just the *appearance* of loss of Windows support) will probably cause Microsoft to scuttle the whole idea and screw over everyone who had banked on it.
A better strategic approach would be the inverse - a Windows-compatible subsystem that runs on *nix. Then companies could drop support for their *nix versions, and let this subsystem pick up the cross-platform slack. This gives superior marketing optics - the major packages only appear to run on Windows. In reality, of course, it would mean that everything runs on *nix, but marketing trumps reality, so it would be a pyrrhic victory for the *nixers.
Well, the other thing is that the desired development model is entirely different. Linux tends to support cheap process creation and optimize for that. The NT kernel is really optimized for single process, multithreaded applications which use things like async I/O. So yes, you can get the software to run from one to the other, but the performance overhead of running on the wrong platform could be substantial under load.
LedgerSMB: Open source Accounting/ERP
[Whew, long post. If your reaction is 'TL;DR' I don't feel bad.]
/. and other places. And yes, this is a big problem. But there is another kind of diversity, which is that Windows is the only major OS that isn't Unixy. Solaris is Unix. BSD is Unix. Linux is Unixy. It's only when you start talking about either research OSes (Mach, L4, Singularity) and old Oses (OS/2, BeOS
The NT kernel... is an interesting beast. There are a lot of things I really like about the architecture it presents. In many ways it has a lot of things that are more modern and better-designed than Unix-descendents (including Linux). At the same time MS seems to have made it more complicated than it "needs" to be, in part to satisfy backwards compatibility and in part because they just seemed to make some decisions I don't agree with.
Some of the good points:
1. Security. Yes, security. This is often brought up as a Windows problem, but that is largely because of policy decisions such as running as admin. (There are also a number of bugs caused by just plain bad coding that lead to buffer overflows. The biggest problem here in some sense is some of the abilities such as sending messages to other processes, which are probably too ingrained to pull out without some very clever modifications.) The security manager in NT provides a lot of very fine-grained control. Related, you don't need explicit file system support and a separate mechanism to do more than RWX on files. (ACLs are absolutely vital in some environments, and things like an "append only" or "create files but no delete" are useful for some applications.) In Unix, sometimes you use chmod, sometimes you use fsacl or whatever it is; the framework isn't unified.
2. Flexibility, in some sense. MS (in theory) can change the system calls that the NT kernel accepts on a whim. This is because all programs are dynamically linked to the Windows subsystem DLLs. These DLLs translate Windows API calls into whatever actual system calls they need. (One API call may generate zero, one, or more syscalls.) It's only the rare, "misbehaving" program that uses the syscall interface directly, and MS doesn't mind breaking them too much. (There are some mostly-legitimate reasons why you need to do this.) By contrast, statically linking code is a bigger tradition in Unix. (Then again, so is having source, so you can recompile if you change your syscall interface.) The idea of having various subsystems that provide different API views is pretty neat, though it's not a fundamental idea. (It's hard to say how it differs from just dynamically linking against just some shared lib.)
3. Not really a good advantage, but interesting and one of the rare examples of where Windows is actually simpler is in the read/write interface. In Unix, my impression is that if you are writing a driver, you "have" to implement to entry points for each: synchronous and asynchronous read, and synchronous and asynchronous write. In Windows, you only implement the asynchronous interface. If a synchronous request is issued, it is handled at a higher level and translated to an async call. (Upside: simpler driver code. Downside: inability to implement just the synchronous version.)
4. It's actually possible to use extended attributes on Windows, though admittedly only because of a huge hack introduced for a related but not-quite-the-same reason. (In Unix, opening a file with an extended attribute in Vi or Emacs, modifying it, and saving it is enough to kill the extended attributes. This makes them next to useless, when I at least can imagine a TON of very useful and neat things you could do with them if you could use them reliably.)
5. The registry gets a lot of hate, but I think a modified version could be better. There are a lot of very nice things it provides over config files. (Transactional access, fine-grained access controls (often nice for a corporate environment, at least in some sense),
6. Diversity. Yes, diversity. People often talk about the "Windows monoculture" on
This is the best option, port the GUI (vista gui sounds pretty portable actually) to SCO unix (ms can buy it), run old apps in a virtual machine. Done and done.
Sig removed because it was obnoxious