Linux Foundation: We'd love to work with Microsoft

Jim Zemlin is the executive director of the Linux Foundation. Formerly executive director of the Free Standards Group, Zemlin also has served as vice president of marketing for Covalent Technologies, providing products and services for the Apache Web server. Zemlin has also been a keynote speaker at industry and financial conferences including Gartner's Open Source Conference and Linux World. Zemlin met with InfoWorld Editor at Large Paul Krill this week to talk about Linux topics ranging from overtures to Microsoft to the progress of Linux on the desktop.

InfoWorld: What's the role of the Linux Foundation?

Zemlin: We obviously are the home of [Linux founder] Linus Torvalds. We sort of focus on three main areas in terms of the platform. The first area is to promote Linux as a technology solution, and that's across embedded, mobile, server, desktop computing. We respond to competitive marketing on behalf of the platform, so when competitors are out spreading fear, uncertainty, and doubt about open source or if there is a general lack of understanding of open-source licensing practices or governance practices, our organization plays a role educating [the] industry and end-users on those issues. We protect the platform by allowing people like Linus Torvalds to work as fellows at the foundation so that they can be neutral actors in a mass collaboration project like Linux. We manage the Linux trademark. We have a legal defense fund for the platform. We work with the USPTO (Patent and Trademark Office) on patent quality issues. And we do that work to improve the quality of software patents and protect the platform. And then finally, we work on the standardizing the Linux platform.

InfoWorld: What kind of legal protection does Linux require? And has anything ever come of the Microsoft protest that there's Linux code that they patented or something to that effect?

Zemlin: What they were talking about were patents that Microsoft holds in a range of areas. They didn't actually disclose what those were, but in general felt that they overlapped with other technology. No, nothing ever became of it because everybody holds patents on everything out there lately in software.

InfoWorld: You have a legal defense fund. Should people have legal concerns about using Linux?

Zemlin: Just like any other major software platform, there'll be patent trolls or opportunists who try to harm the platform. The SCO Group was a good example of that. In fact, the legal defense fund was created to assist in defense of the platform in the SCO lawsuit. And so that's a good example.

Click: for Full Article @ InfoWorld

Report a problem with article
Previous Story

Office 2007 Design Team Shows Off Ribbon Prototypes

Next Story

Microsoft says no Blu-ray for Xbox 360

17 Comments

Commenting is disabled on this article.

I really don't know why that would have to be done for all apps on Linux. Linux already has a folder for 3rd party apps and add-ons, and it's /opt. They can feel free to make their applications all one indexed heap file and then all you have to do is drag it in there and it's installed, just like MacOS. It's entirely possible. I can see why it would be desirable to keep commercial apps separate from the open source ones because they won't be managed by the package manager unless the company sets up an update server where distros and mirrors can grab updates from for the auto-update, so it would be handy to know where to find them so you can update them manually if necessary.

The open source apps really don't need to be moved around (who does this except power users, and then it's simple to just 'find file'), I've never wanted to mess around with their files so I don't see why it would make a difference. The reason why it's organized that way is because Linux does everything in a file-based way and it helps to separate libraries, binaries, devices, configuration files, optional files, and files that should be made available on a network. If you want to access your IDE hard drive, it will always be /dev/hd*. SCSI/SATA/external drives is /dev/sda* If you want to run firefox, it will always be /usr/bin/firefox. The reason for not using drive letters for hard disks (which they actually do because you will have /dev/hda, /dev/hdb, and so on) is because no hard drive is ever large enough, so you can keep adding in hard drives and silently upgrade your system. For example if you need larger temp storage, you buy one and you tell the mount point to be /var/tmp.

Maybe you want RAID for your web server files and you don't mind using an old hard drive for your temp because you don't need to keep the data. Maybe instead you want super fast storage for it. This way applications don't have to be written to be configurable, all you have to do is put in the hard disk, tell it where to be. Windows recently got this functionality. To me the drive letters make lives harder, because whenever someone bought a new hard disk and asked me to set it up for them in Windows, they still kept saving things to "My Documents" in C: and a lot of the time they even put files in C:\ and for some reason they could never find the D: drive. I put a shortcut for it in My Documents and they just ignored it, it was a file and showed up below all the directories in the sort order. I tried to move "My Documents" over to D: using TweakUI to change locations, and some programs just made up a folder in C: for it and wrote files there anyway.

No one said that every file within the Windows folder is required to keep the system running. If that was the case the folder would be called 'Critical to Keep System Running' not Windows. Have you ever gone into Add/Remove Programs and explored what Windows components you can add or delete from your system? Clearly not all are required to keep Windows up and running.

So you're telling me that files in Windows aren't organized well, and that each package isn't really separate and managed by the package manager? It seems more difficult to do it this way. In Linux, if you don't want something installed, it's a separate package and you can remove it.

Program configurations can be stored in many different places depending on how the application was coded. Older Windows and DOS based programs for example may only have configuration files in the program folder. Others have settings stored in the registry or the Application Data folder. The registry and files within Application Data are not meant to be edited by end-users.

In Linux it seems better organized, and they don't keep changing the behavior so there aren't 10 different places you can put configs. Just 2, 1 for your system, and 1 for your user (well each user has their own separate but you get the idea).

Yeah configs are not meant to be edited by raw users, but admins can back them up because they're all in one place. Also because they're in one place, it means you can create a front-end just for configuring an app if you want, but you're not locked into using that front-end, you can use another. So look at Redhat, they have their own admin tools for setting up certain things, and then SuSE has other admin tools called YaST that they use. They both edit the same config files, they're just different ways of doing it.

KDE and Gnome are two different desktop softwares for Linux, and both of them can edit your network settings, your preferred browser setting, the programs menu, etc etc. They each have their own Control Panel-type software, it's different, but they can both edit the same configs.

All of this just makes it easier for interoperability.

In Linux, drives are all under /media, which is like My Computer except it's an actual folder and you can write to it. You can put your own shortcuts in there if you want or even some programs. You can't really edit anything in "My Computer" in Windows. It's a different way of doing things but I think you can accomplish more on Linux. If you want you could even just make a shortcut to a folder where you have symlinks called A, C, D, E, F, etc.

Do you really want to use Linux, or do you want Linux to be Windows? Cause you can just use Windows A lot of the same apps are available on Windows as Linux, so for example you can use Konqueror, OpenOffice, Firefox, Audacity, Krita, Inkscape, VLC Player, on both.

This has been a really interesting read and lots of great points. Dont get me wrong im using gusty right now, so i am a linux user and have been in and out for 3 years. I just want to say one thing maybe keep the package manager for updating as was mentioned above it will still work fine in the apps are installed to thier own directories. Yes a mac way of doing things might be great for linux but im a purist and i think apple has just done what they do best hiding things under smart interfaces.
I just think a new super clean fhs will do wonders for linux and its adoption. Lets also remember that a package manager can break and it has done this to me before, hence the dislike. Also it has been shown that apps made for the gobo fh run faster than thier legacy fh counterparts. I dont know the reason for this but i really think there should be more investigation into this before its written off. Why would people be so keen to write off something like this, it makes no sense at all. Another thing that would make this far more amazing than window is that removal of the program folder would uninstall the app completely because there is no registry like there is in windows. Im waiting for Win 8 too see if i should jump back to the win wagon(win 7 will be a failure because its based on vista) and i think Linux will maintain a less than 1% desktop market share with people that refuse to change things make it simpler and reinvigorate linux like compiz did. Owell MS is starting to gear up for a super assault on *nix and mac so enjoy your putting your 60s fhs up against a 21st century windows. PS yes it is 21st century cuz MS has already changed thier FH in vista.

(Iridium said @ #5)
Also it has been shown that apps made for the gobo fh run faster than thier legacy fh counterparts. I dont know the reason for this but i really think there should be more investigation into this before its written off. Why would people be so keen to write off something like this, it makes no sense at all.

I never heard that, do you have a source? Maybe it was true a while ago before Linux started having focus on the desktop, and Gobo could just have had a kernel that was optimized just for the desktop.

(Iridium said @ #5)
Another thing that would make this far more amazing than window is that removal of the program folder would uninstall the app completely because there is no registry like there is in windows.

Yeah but it's just as easy from the package manager to just uncheck one box. If you deleted it yourself, the package manager might think it's missing and then reinstall it to satisfy dependancies, or ask you if you want to remove the entry if it has no dependancies. If you update it yourself, then the package manger will wonder why there is another version in there and ask you to approve the change or reinstall the version currently flagged. Why would you want to do it manually?

(Iridium said @ #5)
Im waiting for Win 8 too see if i should jump back to the win wagon(win 7 will be a failure because its based on vista) and i think Linux will maintain a less than 1% desktop market share with people that refuse to change things make it simpler and reinvigorate linux like compiz did.

Well I think if the whole fhs thing was really a problem, then Gobo would be more popular than Ubuntu right now. I think the thing that's stalling adoption of Linux on the desktop is that nobody can stop into a store one time and try out a machine running Linux. Everyone can look at screenshots and read reviews, but you will never really feel good about changing operating systems unless you actually try it and see if it works well for you. A lot of people may not know how to download an ISO and burn it, then boot off the CD, but people can just stop by a demo at a store and check it out. Also when you see it running in real life, it's a big difference from just watching a YouTube video or reading a review.

I set up my family (grandparents, parents, aunts, uncles) with Linux because I'm tired of fixing a virus or something every time I go over and never getting to spend any time with the family. Nobody really notices, they can use all their web sites and apps with no probs, and open all their files. Honestly I never had anyone ask me about what certain files are. People are always poking around in their system folder in Windows and I've seen some weird files saved in there. In Linux everyone just uses their home directory.

I think you don't understand the design of Windows. I'm no expert, but

-It makes sense to store all your Programs in their own folders under the directory, Program Files. If this doesn't make sense to you for whatever reason, you can always choose to install your programs in a different directory.

-Solitaire and Notepad don't have directories because they are single file applications and don't require a folder or other files. Since they come with the operating system they are within the Windows folder. No one said that every file within the Windows folder is required to keep the system running. If that was the case the folder would be called 'Critical to Keep System Running' not Windows. Have you ever gone into Add/Remove Programs and explored what Windows components you can add or delete from your system? Clearly not all are required to keep Windows up and running.

-Program configurations can be stored in many different places depending on how the application was coded. Older Windows and DOS based programs for example may only have configuration files in the program folder. Others have settings stored in the registry or the Application Data folder. The registry and files within Application Data are not meant to be edited by end-users. If you are a tech-head and want or need to edit the registry you can. But settings are meant to be changed by the program.

-It makes sense to me that "Application Data" is where my applications store data or settings if they need to but I can't assume this is where the files will always be. As stated, they could be in the registry or program folder.

I don't understand why you think you have to know where every configuration file is because they are not intended to be edited raw by end users. In most cases you will need documentation on how to change these files and I am sure it will tell you what folder the file is in. In most cases you make the changes in the program because it knows where to modify the settings.

Partitions and drives are "drives" (volumes) in "My Computer" because... well, that's what they are and this is a simple representation for the majority of users. If you want to explore and manage your physical drives and partitions all you have to do is right-click My Computer and choose Manage. Click Disk Management. It doesn't get easier than that.

You are making Windows much more complicated than it actually is. Things are not "scattered". Application data is in "Application Data" and most settings are in the registry. It's an easy concept.

C_Guy, it is ok to prefer separate directories for each application. You are overlooking that this isn't as containerized as you seem to think it is. DLL files are outside of this application folder. Registry entries are outside of it. So it isn't as self-contained and wonderful as you make it sound.

Just accept that I prefer that my binaries are organized into common locations. Any source code for apps that I choose are likewise organized under the /src/. And man pages? I know where to find them.

I accept that you like the way Microsoft organizes your files (even if they aren't all really under the one application folder) if you can accept that I like the way that unix (and clones) organize their filesystem.

(C_Guy said @ #4)
-Program configurations can be stored in many different places depending on how the application was coded. Older Windows and DOS based programs for example may only have configuration files in the program folder. Others have settings stored in the registry or the Application Data folder. The registry and files within Application Data are not meant to be edited by end-users. If you are a tech-head and want or need to edit the registry you can. But settings are meant to be changed by the program.

-It makes sense to me that "Application Data" is where my applications store data or settings if they need to but I can't assume this is where the files will always be. As stated, they could be in the registry or program folder.

Then you are supposed to be hunting down the configuration cruft scattered all over the place (ie. Application Data... or the registry? or somewhere else?) if the uninstaller doesn't remove it?

(markjensen said @ #4.1)
C_Guy, it is ok to prefer separate directories for each application. You are overlooking that this isn't as containerized as you seem to think it is. DLL files are outside of this application folder. Registry entries are outside of it. So it isn't as self-contained and wonderful as you make it sound.

Just accept that I prefer that my binaries are organized into common locations. Any source code for apps that I choose are likewise organized under the /src/. And man pages? I know where to find them.

I accept that you like the way Microsoft organizes your files (even if they aren't all really under the one application folder) if you can accept that I like the way that unix (and clones) organize their filesystem.


*nix programs are self-contained? LOL!

If you are so clever tell me how to install pcre from ports to ~/pcre. You're simplifying *nix too much.

(RealFduch said @ #4.3)
*nix programs are self-contained? LOL!

If you are so clever tell me how to install pcre from ports to ~/pcre. You're simplifying *nix too much.

Where in the hell did I ever say that?

I don't mind discussing things with people, but please don't pretend I said something and ask me to defend points I never made. In fact, quite to the opposite, I pointed out how *nix compartments their apps into separate groups for source, man and binaries.

If you re-read my comment, it was clearly in reply to statements to support a Windows apps are contained in their own directories comment.

(markjensen said @ #2.1)
I don't see how setting up each binary in it's own directory makes things "better". Just different.

Then you make it sound like a software developer must make different versions for every distro, which is simply not true (though many do "certify" for popular distros). Any Open Source app is automatically cross-distro. Even closed source apps can be, too. Let me use the Unreal Tournament 2004 CD as an example. It includes a single binary installer for all distros, whether RPM-based or DEB-based or even Slackware pacman or Gentoo emerge from sources.

My final observation is on the package manager you seem to despise. A package manager is an excellent means to install and manage your apps. It is centralized, so that it can update everything in your system. What is your vision on updating? Every app from a lowly calculator app on up must include its own provisions for checking online for newer versions of itself?

No thanks. I am glad you aren't in a position to change the Linux (indeed, the whole Unix) filesystem to match Microsoft's. I am grateful that you lack the power to destroy the package managers that do such a wonderful job and make computing nearly effortless for me. I am glad my Linux is Linux. You can have your Windows, OSX, and even Linux (if you like it at all, which seems to be in doubt). And, if you feel strongly about your beliefs, you are free to fork Linux, or make a distro that does all that you envision. If your ideas are good, then it ought to catch on. :)

^^ What he said.

Also, if you really wanted to, build your own Linux distro from scratch, so that you can have the power to customize it as much as you want. That's really the only way to do it. Just know that you will have to build everything yourself. You want Firefox? You have to build cairo, pango and many more libraries along the compiler itself to make it specific to your personal Linux distro. In my opinion, it isn't worth it really.

Regarding the bit about applications being in their own directories, that is actually already true. For example, KDE stores all of its necessary graphics, icons and such in /usr/share. In fact, many applications do that. Then for configuration files, the global ones are stored in /etc. If the application supports it, user-specific configuration files are stored in /home/<username>. KDE has its own .kde subdirectory in there, while bash simply has the .bashrc, .bash_profile and .bash_history files all in the user's home directory. It really is already quite well-ordered.

In contrast to Windows, I dislike the idea that nearly every program I run wants to install in the %PROGRAMFILES% directory or the root of my C: drive. I don't like the fact that there is a directory named "Program Files" and applications like Solitaire and Notepad aren't installed there. How are they system files? What do they do to keep the system running? They aren't services either so what makes them so important to warrant calling them system files? I also dislike trying to find out where configurations are for an application: %APPDATA%, an INI file or a set of INI files in the install directory or perhaps in the WINDOWS directory, or in the registry (if it is here, I hate going through everything just to find it)? I dislike the idea that partitions and drives are simply thought of as drives in My Computer (or in Vista, just "Computer", IIRC). Simply put, there is no real configuration directory in Windows, and that is why things are scattered about in Windows. After all, the WINDOWS directory is for Windows, not other applications. "Application Data" doesn't scream "This is where you save your configurations," but that is its purpose. If it is for all users (/etc), use %ALLUSERSPROFILE%\Application Data. If it is for a specific user (/home/<username>), put it in %USERPROFILE%\Application Data, which also can be shortened to %APPDATA%. It makes sense. But what about the %USERPROFILE%\Local Settings\Application Data directory? Is that a mirror of %APPDATA%? Nope. It is yet another configuration directory. *sigh* One more place to look for configuration files...

I'm glad I have Linux... It makes my life more sane.

I love it how they are meant to be standardising the linux desktop and it also talks about linux as a tech solution for the desktop. There is one way to hit both of these things with one stone and its so obvious but until such time its nothing more than a server OS with pretty interfaces. Drumroll please........ applications have thier own directories. Alot of big companies dont want to have to develop for a million distros why cant they just have a single package for linux and distros differentiate themselves by what apps are included,the interface/artwork and perhaps their own reworked apps. I know im about to get flammed but seriously just think no package manager, easy install and uninstall, no left over junk from removal like dependencies, cleaner easier to understand file system for teaching, apps work with all dirtros out of the box, companies can develop for linux as a whole, programs can be moved from one pc to another without reinstalling them aka portability, less use of the command line and more of the GUI. I know that i am 100% correct on this as so many others want this aswell. I noticed that Real does this by making an install that gos where you want it and all the files are under 1 directory and they just use symlinks to keep it working. This allows real not to have to deal with making a different package for all the big ditros. Its time it really is, linux can easily take a huge bite out of the desktop market but it needs to be made super friendly to both users and to developers. Linux needs to have its FHS standardized, well at least apps get put into thier own dirs. Dont tell me this cant be done, its trivial, and as time passes apps will have to meet these new specifications. Windows 95 was amazing because MS decided it was time to completely change the paradigm of how windows should work and because of that windows rules the desktop wether it is the best or not and remember they also use a programs folder.

I don't see how setting up each binary in it's own directory makes things "better". Just different.

Then you make it sound like a software developer must make different versions for every distro, which is simply not true (though many do "certify" for popular distros). Any Open Source app is automatically cross-distro. Even closed source apps can be, too. Let me use the Unreal Tournament 2004 CD as an example. It includes a single binary installer for all distros, whether RPM-based or DEB-based or even Slackware pacman or Gentoo emerge from sources.

My final observation is on the package manager you seem to despise. A package manager is an excellent means to install and manage your apps. It is centralized, so that it can update everything in your system. What is your vision on updating? Every app from a lowly calculator app on up must include its own provisions for checking online for newer versions of itself?

No thanks. I am glad you aren't in a position to change the Linux (indeed, the whole Unix) filesystem to match Microsoft's. I am grateful that you lack the power to destroy the package managers that do such a wonderful job and make computing nearly effortless for me. I am glad my Linux is Linux. You can have your Windows, OSX, and even Linux (if you like it at all, which seems to be in doubt). And, if you feel strongly about your beliefs, you are free to fork Linux, or make a distro that does all that you envision. If your ideas are good, then it ought to catch on.

(markjensen said @ #2.1)
I don't see how setting up each binary in it's own directory makes things "better". Just different.

Then you make it sound like a software developer must make different versions for every distro, which is simply not true (though many do "certify" for popular distros). Any Open Source app is automatically cross-distro. Even closed source apps can be, too. Let me use the Unreal Tournament 2004 CD as an example. It includes a single binary installer for all distros, whether RPM-based or DEB-based or even Slackware pacman or Gentoo emerge from sources.

My final observation is on the package manager you seem to despise. A package manager is an excellent means to install and manage your apps. It is centralized, so that it can update everything in your system. What is your vision on updating? Every app from a lowly calculator app on up must include its own provisions for checking online for newer versions of itself?

A colleague and i was tasked to install php, apache and oracle (nothing so bizarre or special), he worked on a certified linux and in a certified server (HP server) and i installed in a windows machine (a common workstation dell). I installed in less that 1 day, he did take 2 weeks!! (including the help of redhat).

May be a package can works fine in some cases but in the worst case can be a real nightmare, a costly nightmare.

(Magallanes said @ #2.2)
A colleague and i was tasked to install php, apache and oracle (nothing so bizarre or special), he worked on a certified linux and in a certified server (HP server) and i installed in a windows machine (a common workstation dell). I installed in less that 1 day, he did take 2 weeks!! (including the help of redhat).

May be a package can works fine in some cases but in the worst case can be a real nightmare, a costly nightmare.

Well, the problem isn't the package manager. I am sure you agree that two weeks is not the standard Linux install time. (and you can probably cite examples where it takes a Windows user/admin quite some time to install something correctly because of some issue or another)

That means that the problem was either he was using a bad download and trying to force it for 6 weeks, or there were hardware issues on his PC like the PC overheating and shutting the computer down, or that your colleague just wasn't very good at installing.

Or are you actually trying to claim that standard installs take weeks in Linux? :worried:

(Magallanes said @ #2.2)
A colleague and i was tasked to install php, apache and oracle (nothing so bizarre or special), he worked on a certified linux and in a certified server (HP server) and i installed in a windows machine (a common workstation dell). I installed in less that 1 day, he did take 2 weeks!! (including the help of redhat).

May be a package can works fine in some cases but in the worst case can be a real nightmare, a costly nightmare.

Well, our current project on HP servers running Windows will be taking about 6 months, and we are deploying one single application :P

(Iridium said @ #1)
I love it how they are meant to be standardising the linux desktop and it also talks about linux as a tech solution for the desktop. There is one way to hit both of these things with one stone and its so obvious

Actually MS did that when they unified the Windows codebase with XP and left the 9x/NT differences behind. Look at what Apple is doing too. Yeah you need certain specific abilities for servers, but with PCs going multicore and managing multiple GPUs, people using RAID in desktop configs to get faster speeds, needing gigabit ethernet etc, it's not like you don't need these things on the desktop too. Today's server tech is in tomorrow's desktop, so why do the same work twice?

(Iridium said @ #1)
applications have thier own directories.

There are so many ways to deal with this. Look at how MacOS does it, they have an Applications folder where you just copy a single package to and there's your app, you just double-click it and it runs from there. You could easily do that on Linux, all it is is a directory that the system sees as a single file, and it has a bunch of symlinks in it so the OS sees the files where they need to be. Voila. On Linux, you don't even need to bother with directories, all you will be thinking about is your home directory where all your personal files and settings are. If you need to manage your applications then you open the "Add/Remove Software" utility and you use checkboxes to install/uninstall applications, and even individual libraries and files if you need to. What are you going to do, move files around all over the place? Let the OS keep track of it for you, and actually use your computer. All you need to worry about is whether you installed what you needed, the "package manager" manages it for you, that's what it's for. This way the OS knows where all your app files are and updates them all in one shot with a single app.

(Iridium said @ #1)
Alot of big companies dont want to have to develop for a million distros why cant they just have a single package for linux and distros differentiate themselves by what apps are included,

That IS how it is right now. The only other difference it could have is what hardware it's optimized for (embedded, desktop, server). What do you expect, every distro makes all of the software and the only thing the same is the Linux kernel? There are other different reasons for distros also, like Gentoo has all packages as source so everything is optimized specifically for your hardware and takes advantage of the latest CPU options. Gobo has a special directory structure. Fedora, Suse, are similar but they are commercially supported and have some custom tools for administration tasks, things that complement the commercial support and that they believe set their distros apart, or different solutions that they believed strongly enough in to invest their resources into, such as redhat's package manager and SuSE's YaST admin tools. Ubuntu and Debian are similar, but Ubuntu is a different project with different leaders. All work on the apps goes to benefit all distros though, and if a solution from one distro becomes popular then all distros will start using it if it makes sense. SuSE uses Redhat's package manager for instance.

(Iridium said @ #1)
just think no package manager, easy install and uninstall, no left over junk from removal like dependencies

Actually I don't know how you do all that without a package manager. The package manager automatically removes dependancies or updates them if needed, and manages updates as well..

(Iridium said @ #1)
apps work with all dirtros out of the box

I went to the Firefox download page to get the beta 4 of version 3, and there was only one download for Linux. It worked fine for me. nVidia only has one Linux driver download as well. (It already installed with the OS but I can use that one if I want)

(Iridium said @ #1)
programs can be moved from one pc to another without reinstalling them aka portability

With Linux I can plug my hard drive in another PC with different CPU/mobo/video card/network etc and boot from it and everything will work right away with not a single dialog box telling me anything changed. I can't do that with Windows. A lot of Linux apps are available on Windows but not the other way around specifically because they are designed to be portable.

(Iridium said @ #1)
less use of the command line and more of the GUI.

Like for what? I never had to use the command line.

Anyway, for standardization, just look at freedesktop.org and LSB

If all you want is for each app/library (libraries are separate projects from apps so that other apps can use the functionality without having to include the entire other app along with it) to have it's own directory, Gobo Linux has been around forever.

But listen, the reason Linux does things like this is to keep all files that you modify separate from everything else. That way you have a few simple things to back up. Your /etc directory contains all system settings. Your home directory is your only writable directory apart from temp, so all your settings go there. You can even take your home directory and make an account on someone else's PC, and copy it there. Then your desktop settings and application settings will be taken with you.

Yeah, of course the Linux foundation wants interoperability. And yeah MS doesn't have much to gain by that, but it's in the user's best interest.