Entries:
Comments:
Posts:

Loading User Information from Channel 9

Something went wrong getting user information from Channel 9

Latest Achievement:

Loading User Information from MSDN

Something went wrong getting user information from MSDN

Visual Studio Achievements

Latest Achievement:

Loading Visual Studio Achievements

Something went wrong getting the Visual Studio Achievements

Martin Taylor and Bill Hilf - Linux at Microsoft, Part II

Download

Right click “Save as…”

Here's the second part of the conversation with Martin Taylor and Bill Hilf on Linux, Windows and Microsoft. Here we get some of the Niners' questions answered and go on a tour of Bill's lab.

Enjoy.

Download Size:  88 MB

Tags:

Follow the Discussion

  • LarsenalLarsenal ready to give an answer
    They were right.  I didn't find the lab particularly sexy.  Did you?
  • gentoo.... rock on! I would love to see Visual Studio.net and Win Media Player ported to linux.

    I'm courious what Martin and Bill think of the Window's UI vs KDE/GNOME/Enlightenment? Also, I would like to know what is their favorite.

    -Steven
    404Browser
  • so how do you ship a bug fix - does this change the version number?

    1. if you keep the version number the same then this will not show the TRUE version of the lib.

    2. if you change the version number, you break the existing application (because you change the filename)

    Which way does it work? Do you create soft links (is that what they are called? )
  • Beer28 wrote:
    I'm going to dispute Bill's final statement about RPMs in this segment.

    RPM will not allow you to install a package that breaks another package(.so bin libs, app binaries, or otherwise), it just won't. Unless the RPM has been mispackaged in it's dependancy list. OR unless you --nodeps it, or --force it.


    My point was not that it breaks a package, but that it can (and frequently does) generate a variety of RPM dependency errors, reported back by 'rpm', that need to be resolved before the package can successfully install.  My point in this segment is chasing down these dependencies can take time.

    Beer28 wrote:

    All those latter cases are big no-no's unless you absolutely know what you're doing.


    I've managed many Linux admins over the past decade and unfortunately using rpm '--force' or '--nodeps' happens much more frequently than you might think.

    Beer28 wrote:

    When you do update with an RPM updater such as yum, up2date or urpmi, the updater program will scan all the headers from the repositories that are listed in the sources file to try to fill the chain of depdancies for the update, and will solve the RPM's that need to be upgraded or installed before your target package(s) is.

    If the dependancies are not all found in the source headers from the repo's it will NOT install by default to break any system applications you have on the machine.


    The difference is that these dependency errors need to be chased down by the user.  My point in this segment (and in the other blog reply) was that we do a tremendous amount of work in testing and in servicing so that our customers don't need to chase these types of low level errors when doing an update or install.

    Again, just differences in how we service our software - not a good or bad judgement call.  -Bill
  • Sorry beer28 - windows does the same - and msi's can be made dependant on other msi's or products - its part of the packager making sure that all the dependancies are included or looked for.

    How does the RPM know that its needs 'MyDep.ver-rel.arch.rpm' ??

    If the person creating the RPM needs to know the dependanicies of MyApp.ver-rel.arch.rpm, then the same goes for the person creating the equivalent MSI.

    Packages in both platforms / utilities (RPM and MSI) can be made to have this functionalty.

    I could have easily deleted the lib MyDep.so and the application would have fallen over the same way as the windows one also.

    For more information:
    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/searching_for_existing_applications_files_registry_entries_or__ini_file_entries.asp
  • First, windows with .net dose support side by side execution with assemblies of different version but the same name. If you have .net installed on windows go to C:\Windows\assembly and you’ll see that it’s not a ‘real’ windows directory as it has (probably) has files with the same name but different versions. It doses this via strong .net names witch not only allow many versions but provide assurance via public/private key pairs that your using the correct version of the assembly.
    Also Buzza is correct, you can do the same thing with MSI, and if you’re distributing your app to any large number of users you probably should. But most of the time you can afford to just put all of the required dlls in your appdir and avoid the whole thing.

  • Again Action Scripts, Custom Actions, etc can be written in MSI's. 

    With windows you can only use and MSI (to be specific you can use anything, even a bat file) but only the MSI is the 'supported way of installing software for the masses.

  • rjdohnertrjdohnert You will never know success until you know failure
    If Beer actually knew what he was talking about, he'd be dangerous.
  • rjdohnertrjdohnert You will never know success until you know failure
    I was just messin with ya Beer,  but you should feel honored, you were mentioned in the video
  • Okay you have a small point in that its a Package Manager, not an installer.

    As far as installing / repairing / uninstalling software the technologies are identical.

    RPM, I have to admit does NOT let you uninstall a dependancy of another RPM.

    In windows software ships differently.  An application usually contains all its dependanices, and core components are checked (like MDAC, IE, SP2) by Custom Actions at the time of installation.

    I don't think there is a way that I can stop MDAC from being un-installed if MyApp depends on it.

    I use APTGET on my Fedora Code 3 laptop at home, and here (in my virutal PC with SUSE) I haven't setup anything just yet!

    Hey Beer28 - where is the RPM tree stored, and what happens if you loose it or it gets corrupt?

    How do you rebuild it?

  • Dr. ShimDr. Shim Inaniloquent monomathical people inlapidate me.
    I've watched the video, and I'm quite impressed with Microsoft's collection of Linux distros. That said, I wonder what distro folks at Microsoft (like Bill Hilf) like most, or find the most ground-breaking. Or is there really nothing special about any of them?
  • Channel9 made it onto the register

    http://www.theregister.com/2005/05/05/_taylor_linux/

  • Beer28 wrote:
    RPM also backs up software for rollbacks.


    Everytime software is installed from MSI package, system restore point is created, so you can restore registry/system state/dll files/almost everything if something goes wrong.
  • TensorTensor Im in yr house upgrading yr family
    Arran wrote:

    Channel9 made it onto the register

    http://www.theregister.com/2005/05/05/_taylor_linux/




    Sure did!


    The Reg wrote:

    In an interview on Microsoft's Channel 9 .Net bloggers service yesterday


    oooooh - so C9 is a .net Bloggers service. Right. So have I been sleep-blogging? Because I dont remember having one.

    Anyway - back to the topic. Good video. Slightly disapointed buy two things -

    one, there wasnt time for more questions - after asking us for input, there was only time for three Sad

    two - is the fact that people on a board use names like zippyv or beer28 really that funny?
  • Ryan HoffmanTekmaven Software Architect
    Since when was samba an OS? Tongue Out

    The lab has every computer nicely labled with their OSes, and then one computer stuck in the middle labeled samba.  Isn't this the same thing as saying I'm running lanman, SQL Server, or any other server-type software as my OS?  LOL

    I did find it interesting that they said they used a lot of gentoo.  In my experience, gentoo's package management is loads better then rpm.  Although, because all packages are compiled at install time, gentoo has the potential for greater downtime due to updates.

    I think every Microsoft "evangelist" (as I call myself) should have some decent experience with other platforms. It just doesn't make any sense to say "$OS Sucks" (or even reccomend one OS over another) without actually having some decent understanding/experience with that OS.
  • otechotech digital voice recording systems
    nice video guys, thanks once again!
  • Beer28 wrote:
    And unlike windows dll's, multiple versions of a dependant library may co-exist to fill application dependancies, like you probably have multiple versions of libstdc++ in your /usr/lib dir

    So because the versioning is in the actual name of the shared object library it eliminates some of the problems you see with dependancy upgrades on windows. Like dllhell.

    EDIT: So 5 applications that all rely on different versions of a shared library(dll-.so) may co-exist on one system. On windows mfcX.dll has the version in the filename, but most of them don't.



    My guess is that if you have no idea what you're talking about, you shouldn't talk about it at all.

    Side-by-side coexistence of COM components (and DLLs) has been supported in Windows since Windows 98 Second Edition. Please take a look at http://msdn.microsoft.com/library/en-us/dnw2kcli/html/W2Kcli_chapter3.asp before making dumb statements like the ones above.

    (Later edit: And I'm talking about native DLLs. Managed DLLs have this feature out of the box anyway)

    I understand that many people may have opinions that differ from mine. I have quite a lot of friends who enjoy working on Linux more than on Windows, and I'm fine with that. But I can't stand total idiots. Sorry for being so blunt again.
  • CharlesCharles Welcome Change
    otech wrote:
    nice video guys, thanks once again!


    Thanks. You will see more Bill Hilf in the future. I really want to dig into the lab more and talk about SMS management of 40 distros... Bill said he'd be happy to talk more.

    About not asking more questions, well, go read the questions that were posted (before the interview...) and let me know what topics we missed. I felt like we covered most everything, but, I agree, 1 hour was kind of short. However, these are VERY busy people, so it's actually amazing that we got an hour of their time!

    Thanks Martin and Bill. You guys rock!


    C
  • CharlesCharles Welcome Change
    Beer28 wrote:
    Charles, will there be a PT III ? (revenge of the scith)


    Nope. But, we will do more interviews with Bill Hilf and his team in the future.

    C
  • DCMonkeyDCMonkey What?!?
    This series of videos has me wondering, do the major Linux distros have labs full of machines running various versions of Windows? Should they?
  • DCMonkeyDCMonkey What?!?
    Beer28 wrote:

    When people go to circuit city or another store to buy a pc, and they've made a selection, the sales person doesn't then ask, "so sir, or mam, what operating system would you like on that new machine?". I think linux distros don't need a lab to figure out why people happen to end up using windows instead of linux for home use, where it dominates.


    Well, that's certainly an ignorant way to look at it.



  • Beer28 wrote:
    This is for COM/GUID/CLSID, not dll libraries with normal import/export interfaces.
    Normal shared libraries do not need to be registered,


    Let's take a look at my C:\Windows\WinSxS folder:
     Directory of C:\WINDOWS\WinSxS

    29.04.2005  14:01    <DIR>          .
    29.04.2005  14:01    <DIR>          ..
    29.04.2005  14:01    <DIR>          amd64_Microsoft.VC80.ATL_1fc8b3b9a1e18e3b_8.0.50215.4652_x-ww_4a588028
    29.04.2005  14:01    <DIR>          amd64_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50215.4652_x-ww_e9b892b4
    29.04.2005  14:01    <DIR>          amd64_Microsoft.VC80.DebugCRT_1fc8b3b9a1e18e3b_8.0.50215.4652_x-ww_d336d953
    29.04.2005  14:01    <DIR>          amd64_Microsoft.VC80.DebugMFC_1fc8b3b9a1e18e3b_8.0.50215.4652_x-ww_a41d4c58
    29.04.2005  14:01    <DIR>          amd64_Microsoft.VC80.DebugOpenMP_1fc8b3b9a1e18e3b_8.0.50215.4652_x-ww_429040ef
    29.04.2005  14:01    <DIR>          amd64_Microsoft.VC80.MFCLOC_1fc8b3b9a1e18e3b_8.0.50215.4652_x-ww_0fee1eb7
    29.04.2005  14:01    <DIR>          amd64_Microsoft.VC80.MFC_1fc8b3b9a1e18e3b_8.0.50215.4652_x-ww_ba9f05b9
    29.04.2005  14:01    <DIR>          amd64_Microsoft.VC80.OpenMP_1fc8b3b9a1e18e3b_8.0.50215.4652_x-ww_eabe604e
    29.04.2005  14:01    <DIR>          ia64_Microsoft.VC80.ATL_1fc8b3b9a1e18e3b_8.0.50215.4652_x-ww_47a980e8
    29.04.2005  14:01    <DIR>          ia64_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50215.4652_x-ww_e7099374
    29.04.2005  14:01    <DIR>          ia64_Microsoft.VC80.DebugCRT_1fc8b3b9a1e18e3b_8.0.50215.4652_x-ww_d087da13
    29.04.2005  14:01    <DIR>          ia64_Microsoft.VC80.DebugMFC_1fc8b3b9a1e18e3b_8.0.50215.4652_x-ww_a16e4d18
    29.04.2005  14:01    <DIR>          ia64_Microsoft.VC80.DebugOpenMP_1fc8b3b9a1e18e3b_8.0.50215.4652_x-ww_3fe141af
    29.04.2005  14:01    <DIR>          ia64_Microsoft.VC80.MFCLOC_1fc8b3b9a1e18e3b_8.0.50215.4652_x-ww_0d3f1f77
    29.04.2005  14:01    <DIR>          ia64_Microsoft.VC80.MFC_1fc8b3b9a1e18e3b_8.0.50215.4652_x-ww_b7f00679
    29.04.2005  14:01    <DIR>          ia64_Microsoft.VC80.OpenMP_1fc8b3b9a1e18e3b_8.0.50215.4652_x-ww_e80f610e
    08.03.2005  16:07    <DIR>          InstallTemp
    29.04.2005  14:01    <DIR>          Manifests
    25.04.2005  15:23    <DIR>          Policies
    28.01.2005  23:00    <DIR>          x86_Microsoft.Tools.VisualCPlusPlus.Runtime-Libraries_6595b64144ccf1df_6.0.0.0_x-ww_ff9986d7
    29.04.2005  14:01    <DIR>          x86_Microsoft.VC80.ATL_1fc8b3b9a1e18e3b_8.0.50215.4652_x-ww_184e9a48
    29.04.2005  14:01    <DIR>          x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50215.4652_x-ww_b7aeacd4
    29.04.2005  14:01    <DIR>          x86_Microsoft.VC80.DebugCRT_1fc8b3b9a1e18e3b_8.0.50215.4652_x-ww_a12cf373
    29.04.2005  14:01    <DIR>          x86_Microsoft.VC80.DebugMFC_1fc8b3b9a1e18e3b_8.0.50215.4652_x-ww_72136678
    29.04.2005  14:01    <DIR>          x86_Microsoft.VC80.DebugOpenMP_1fc8b3b9a1e18e3b_8.0.50215.4652_x-ww_10865b0f
    29.04.2005  14:01    <DIR>          x86_Microsoft.VC80.MFCLOC_1fc8b3b9a1e18e3b_8.0.50215.4652_x-ww_dde438d7
    29.04.2005  14:01    <DIR>          x86_Microsoft.VC80.MFC_1fc8b3b9a1e18e3b_8.0.50215.4652_x-ww_88951fd9
    29.04.2005  14:01    <DIR>          x86_Microsoft.VC80.OpenMP_1fc8b3b9a1e18e3b_8.0.50215.4652_x-ww_b8b47a6e
    28.01.2005  23:00    <DIR>          x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.0.0_x-ww_1382d70a
    28.01.2005  23:00    <DIR>          x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.2180_x-ww_a84f1ff9
    28.01.2005  23:00    <DIR>          x86_Microsoft.Windows.CPlusPlusRuntime_6595b64144ccf1df_7.0.0.0_x-ww_2726e76a
    28.01.2005  23:00    <DIR>          x86_Microsoft.Windows.CPlusPlusRuntime_6595b64144ccf1df_7.0.2600.2180_x-ww_b2505ed9
    28.01.2005  22:59    <DIR>          x86_Microsoft.Windows.GdiPlus_6595b64144ccf1df_1.0.0.0_x-ww_8d353f13
    28.01.2005  22:59    <DIR>          x86_Microsoft.Windows.GdiPlus_6595b64144ccf1df_1.0.2600.2180_x-ww_522f9f82
    28.01.2005  23:00    <DIR>          x86_Microsoft.Windows.Networking.Dxmrtp_6595b64144ccf1df_5.2.2.3_x-ww_468466a7
    28.01.2005  23:00    <DIR>          x86_Microsoft.Windows.Networking.RtcDll_6595b64144ccf1df_5.2.2.3_x-ww_d6bd8b95
    28.01.2005  23:00    <DIR>          x86_Microsoft.Windows.Networking.RtcRes_6595b64144ccf1df_5.2.2.3_en_16a24bc0
    29.04.2005  13:48    <DIR>          x86_mscorlib_b77a5c561934e089_2.0.0.0_x-ww_50b7dab7
    29.04.2005  13:48    <DIR>          x86_System.EnterpriseServices_b03f5f7f11d50a3a_2.0.0.0_x-ww_7d5f3790

    (I removed the contents of the subfolders for brevity). Now, for instance, I have two versions of GDI+ installed at the same time (1.0.0.0 and 1.0.2600.2180). If you take a look at any of them with depends.exe (a tool in Visual Studio), you'll see 609 exports but none of them are the familiar DllGetClassObject, DllCanUnloadNow, or DllRegisterServer/DllUnregisterServer. These are not COM components. On my XP machine, I can run side by side Win32 DLLs. This might be some interesting reading for you.

    Beer28 wrote:

    If you have dll's in each program's dir in Program files, that defeats the purpose of library sharing in the first place, and reduces dll's to componetizing code.

    Actually, this is achieved with Registration-Free COM, something that has been introduced in Windows XP and .NET Framework to allow managed components to use unmanaged COM components without registering them. Side-by-side COM components and DLL/COM redirection do not work that way. Maybe the article I proposed to you was too difficult. Get a lighter reading here or here. You'll see that you can have multiple versions of the same COM component installed and multiple applications using them, each bound to the version of the component they're used to.

    Sorry about the language I used yesterday. Next time I'll use "ignorant" instead of "idiot".

  • William Staceystaceyw Before C# there was darkness...

    Good work guys.  Interesting stuff.  I used to work on IBM S70s a few years ago.  Did not see any AIX big iron in the lab.  Does IBM sell more Linux stuff then AIX these days?  Cheers!

    --
    William  

  • Beer28 wrote:
    OK, I'm done posting about this, I have work to do.


    Big Smile:D:D
    I wonder if you have a job. For every 10-line post around here you come back with a 3-chapter worthless reply. That takes time (or you have a nonsense generator).

    Beer28 wrote:

    Let's get this perfectly strait.

    I had originally mentioned sharing libraries, you point me to an article that lets you specify a directory in the registry to have the module loader look in the program folder to load a dll first.
    Essentially, letting the dll's not share between apps, but use the dll's as componentized code. Where each app has it's own private version of an otherwise shared library.

    That is NOT the same as linux's side by side shared library versioning where all applications share dependant libraries that can be different versions of the same library in /usr/lib/ or /lib

    That's ONE, one instance of where you are trying to mislead to prove your point about a feature windows does NOT HAVE.

    Here's TWO.

    Now when I called you on this and raised the point that I wrote of, side by side concurrent regular shared libraries that all applications share, NOT COM or .NET or java, you change the topic to highlight that .NET allows 2 versions of the same library because it holds the version # in it's metadata.

    Guess what? I never talked about IL or Java code, you can't mix apples and oranges. That wasn't the original topic, and I don't care how much you try to change it so you don't look dumb it's still wrong.

    You probably know it's wrong and you don't care because you don't want to look foolish.


    Are you "ignorant" or what? Do you need a demo?

    In Windows, you can create libraries or components. Let's say that we have such a library and let's call it My.dll. Assuming that we have two versions, 1.0 and 2.0, we can have both versions installed on a system at the same time (obviously not in the same folder since the files have the same name).

    Now, let's assume that we have four applications, App1 to App4. If App1 and App2 were compiled with My.dll version 1.0 and App3 and App4 were compiled with My.dll version 2.0, each application will use the correct version of My.dll, provided that the library and the applications have side-by-side support. And, to make you even happier, My.dll v1.0 will be shared between App1 and App2, as will be My.dll v2.0 between App3 and App4.

    You can do this for
    1. Traditional applications using regular Windows DLLs (with exported symbols), as was the GDI+ example
    2. Applications using COM components
    3. .NET applications

    If all you understood from the links I provided is that you can tweak the Windows or the CLR loader to look up for assemblies in a certain order, then excuse me, my friend, you are a total "ignorant". I'm glad we got that straight.

    PS: If you really want me to, I can come up with three simple demos, one for traditional libraries, another for COM and yet another one for .NET. But I will only build them if you promise that once I publish them on C9, you'll start a thread in the coffeehouse named <Ok, I'm totally "ignorant"> Tongue Out

  • CharlesCharles Welcome Change
    Let's keep it civil, boys. Best to explain the reasoning behind even a mild personal attack ("you're ignorant"), otherwise it's just a puff of hot air.
  • Charles wrote:
    Let's keep it civil, boys. Best to explain the reasoning behind even a mild personal attack ("you're ignorant"), otherwise it's just a puff of hot air.


    I'm honestly sorry about all the noise. RPM rocks, MSI is light years behind it. You can do proper side-by-side and versioning only on Linux. Heck, you can do decent computing only on Linux.
  • CharlesCharles Welcome Change
    Ovidiu.Platon wrote:
    Charles wrote: Let's keep it civil, boys. Best to explain the reasoning behind even a mild personal attack ("you're ignorant"), otherwise it's just a puff of hot air.


    I'm honestly sorry about all the noise. RPM rocks, MSI is light years behind it. You can do proper side-by-side and versioning only on Linux. Heck, you can do decent computing only on Linux.


    That's your best retort? Hmm...

    C
  • Charles wrote:
    That's your best retort? Hmm...

    C


    Charles, I've done evangelism for Microsoft for 3 years now. Not for professional developers, but for the most interesting kind of audience: students. They're the most honest and sharp people someone can work with, although many of them are not completely aware of the world out there. Among Linux fans, there are two kinds of people:

    Reasonable ones who are starting to understand the realities of our industry and are building a pragmatic view on the world. Whenever they bash Windows or praise some open-source piece of software, proving to them that "it can be done on Windows too" or that "yes, you can do it on Linux but you can do it more neatly/cheaply/quickly on Windows" usually does the trick. You don't necessarily convince them of your views at once, but you've opened the path for communication and reasoning.

    Let's-fight-for-peace kind of trolls, who are totally isolated from new ideas. You talk one-on-one with such people. During the first 10 minutes you have totally disparate views of the world. Then, you find some common points and agree on some issues. Then, you're really communicating. And at the end of the discussion they present they conclusions wich are usually the most absurd kind of distortion you could have possibly imagined related to the topics of your conversation.

    The first kind of people are important to work with. They're the kind of IT professionals interested in getting the job done. If necessary, they will buy into Windows or Linux, as long as they get the best results for their problems. They are valuable professionals to look for when building a company or when making business.

    The second people only care about always being right and about making the whole world agree with them. So I gave Beer what he wanted. I guess an actual demo of the features we were talking about would have been useless anyway.
  • Yes Beer, you're right, whatever you said. Now calm down...
  • Absolutely, Beer.
  • Linux Side by Side can be accomlished in windows by renaming your DLL and including the version numbers in the filename.

    The windows and linux application will not 'downgrade' its use of a version of a lib if there are any only older ones there as it doesn't know what the previous version are.

    With the current implementation in windows the application will load up the DLL no matter what the version of the DLL is (and alas it will might crash.)

    A question for you Beer28:
     
    libc-2.0.3.so and libc-2.1.4 these are not shared libs or related other than by filename.

    Whats happens if we find a bug in libc-2.0.3.so and fix it, then the version is not 2.0.3 any more is it? and we also have to get all the 2.0.3 + onwards versions with the fix also, which will also then changes those version?

    And if the filename doesn't change (for a patched upgrade) how do we know what version of a file is?

    In ten years time, when linux is mainstream, how many versions of libc are going to be in the shared lib directory? 100, 200, even more, or do i HAVE TO go and recompile all my apps with the latest version (i might as well do a reinstall of the latest distro). 

    A shared lib is just that - a shared lib, and there SHOULD be only one copy of a shared lib on any one system - although this creates dll hell.  The problem with these shared libs is that the 'backward' compatibility problem.  And that is that people make breaking changes to them rendering older apps useless,

    This is where I think .NET is actually doing something right, where it tries its best to run with whatever assembly is out there, and throw a nice exception if it can't.
  • Buzza, you was faster. I also had this question.

    Example: MS actually stops to allow to distribute their MSDE as "includable packages" (sorry, don't remeber how it names exactly), when you could include some parts of the MSDE's installer into your one. The reason is very easy: you have to provide than the critical updates for MSDE (issued by MS) yourself, through the your installer/updater. If MSDE is installed with MS installer, than these fixes are not your problem, but MS (I mean, how to distribute and install them).

    P.s.: you can be a really nice guy and send e-mails to your customer about things released by MS.

    Most of the time these "parallel" libs in /lib are simply the links. This thing is really annoying me. Because of that personally I prefer only Gentoo. The most perfect "package manager" for Linux. But the slowest in adding of the new software on your PC Smiley
  • But the slowest in adding of the new software on your PC
    The time you spend compiling with gentoo doesnt matter (and thus doesnt make gentoo slower), because compared to the time to test and propagate a bugfix its irrelevant. The being said, for example debian is in general being faster to push bugfixes into their repos than gentoo.

    As for side by side installations of shared libs in Windows: I think its not really a "technical" Microsoft problem. The problem is old software and dirty installers that roll over their dlls into shared folders no matter what. The more centralized control of linux package managers make it easier to discipline "evil" installers - distros keep their repos of software in a consistent state, where no two packages will hurt each other (or be installed, if they do ...)
    I guess this is a road Microsoft can hardly go, as software vendors would cry havoc, if Micorsoft takes away freedom from "their" install process.
  • banibani ...
    If microsoft wants to believe windows really does have superior dependency resolution and management, if this is really the conclusion hilf has come to, I say let them go ahead and believe what they want.

    It's not our job to do microsoft's research for them. And it's not our job to correct their mistakes (especially since we're not getting paid for it).

    They've 'done the research' and arrived at a different conclusion than the rest of us. Why should they care what we think?
  • TensorTensor Im in yr house upgrading yr family
    Charles - What questions were missed? Well, Martin Taylor is head of competitive strategy I believe? You pretty much spent the entire time talking about Linux. What about Macs? What about Symbian v Windows Mobile? What about Sony Playstation v XBox? What about Oracle?
  • To be completely honest, I'm a bit pissed off at the moment, so I might say a few things that I will regret later. Should that happen... Tough luck.

    There are two things that kind of drive me nuts. On the one hand, it's about some people being total "ignorants" (and I can't even tell if they do it on purpose or if their ignorance is genuine). I guess I'm beating a dead horse and everyone is already bored like hell, but for some reason I keep getting back to the side-by-side DLL story. I provided earlier a few links (unfortunately the easiest to understand but not the most relevant ones related to this subject, which is my fault); if one would have followed the links, one would have discovered quite easily a whole bunch of information about side-by-side support in Windows.

    For instance, it's fairly obvious that you can do side-by-side with Win32 native assemblies (together with COM components) just by looking at the Assembly Manifests reference page. The ultimate reference for developing and deploying side-by-side native components on Win32 is located under the Isolated Applications and Side-by-side Assemblies node in MSDN Library. Spend a couple of hours reading all pages under that node, and the picture will get very clear.
    As far as I know, Windows XP has approximately the same kind of side-by-side support for native components as .NET does. This is because the binding component ("Fusion") is developed by parallel teams. I learned about this from blogs.msdn.com. If you search for "Fusion Win32 CLR", you'll get plenty of information on this.

    On the other hand, technical problems aside, there's another thing that pisses me right off. I can't really understand why Microsoft started Channel 9 just to abandon it. This is just how C9 feels when you take a look at what's being discussed here. I don't really expect a Microsoft employee or an MVP to hop in every time somebody makes a technically inaccurate statement. That would be totally unfeasible and unreasonable. But when you get to the point where a raving lunatic completely dismisses all reasonable evidence without even knowing what he's talking about, you end up thinking that Microsoft, as well as the members of this forum don't actually give a crap about what's being discussed here vs. the actual facts.

    Hold on there, did I just say "raving lunatic"? There must be a solid reason for that, heh? Maybe it's because I wouldn't dare to comment on RPM's functionality simply because I feel I'm not experienced enough with it (although I know the basics). But when someone quotes whatever he likes from an article without any context and without actually knowing what the story is all about, we're quickly moving to fantasy world.

    The bottom line is that I don't understand the purpose of these forums anymore. You have a bunch of people making statements that have virtually nothing to do with the actual facts and you host them on your own website. What's the value of being thrown with (I need to watch my language) at in your own home?

    Is there any way to wipe out my Channel 9 account?
  • TensorTensor Im in yr house upgrading yr family
    I have a question for you actually Beer. Is there anything AT ALL that you cOnsider Microsoft and the Windows platform does better than the Linux equivalent? 

    I mean, do you ever think "wow I really wish that linux had this doohickey that Windows has" or "Microsoft X sure kicks Foo's butt"?

  • banibani ...
    Ovidiu.Platon wrote:
    The bottom line is that I don't understand the purpose of these forums anymore. You have a bunch of people making statements that have virtually nothing to do with the actual facts and you host them on your own website. What's the value of being thrown with (I need to watch my language) at in your own home?


    And what exactly do you think the solution should be? Your pleading implies you want admins to purge posts which don't follow the 'official microsoft facts', or 'official Ovidiu Platon facts'.

    The obvious solution to deal with a "raving lunatic" is to ignore them, imo. I don't know what else you would be suggesting except censorship.

    Ovidiu.Platon wrote:
    Is there any way to wipe out my Channel 9 account?


    Seems to me the obvious answer is to just stop using it.
  • banibani ...
    Tensor wrote:
    I have a question for you actually Beer. Is there anything AT ALL that you cOnsider Microsoft and the Windows platform does better than the Linux equivalent? 

    I mean, do you ever think "wow I really wish that linux had this doohickey that Windows has" or "Microsoft X sure kicks Foo's butt"?


    'wow i really wish linux had an IDE as nice as visual studio'
    'microsoft does a better job of ui integration and usability than anyone else'
    'wow linux api documentation sucks hard, msdn.microsoft.com is very nice'.

    that's about all I can think of.

    of course total control of every aspect of the OS from top to bottom ensures you can enforce uniformity, whether your developers and vendors like it or not. (this is one of the things i dislike about both microsoft and apple, fwiw).

    i can tell you a lot of places microsoft sucks like a hurricane, but then i'm sure microsoft is aware of all that already.
  • CharlesCharles Welcome Change
    Tensor wrote:
    Charles - What questions were missed? Well, Martin Taylor is head of competitive strategy I believe? You pretty much spent the entire time talking about Linux. What about Macs? What about Symbian v Windows Mobile? What about Sony Playstation v XBox? What about Oracle?


    Um... The topic of the interview was Linux. The length of the interview was 1 hour. There is no way to cover all of our competitive strategies in such a small amount of time and certainly Martin does not own all of them...

    C
  • bani wrote:
    'wow i really wish linux had an IDE as nice as visual studio'

    Im working with VS - its a nice IDE, but personally Im not missing it when using linux.
    bani wrote:
    'microsoft does a better job of ui integration and usability than anyone else'

    I would cut back on the 'anyone' *cough* Apple *cough* - but the Windows UI is of cause far more consistent than the various linux DEs and probably will always be.
    bani wrote:
    'wow linux api documentation sucks hard, msdn.microsoft.com is very nice'.

    True point, but "documentation" just works different in linux. For example for Windows API questions IRC is not at all as helpful as for linux coding.

    bani wrote:
    that's about all I can think of.

    of course total control of every aspect of the OS from top to bottom ensures you can enforce uniformity, whether your developers and vendors like it or not. (this is one of the things i dislike about both microsoft and apple, fwiw).

    i can tell you a lot of places microsoft sucks like a hurricane, but then i'm sure microsoft is aware of all that already.

    Microsoft has taken backwards compatibility and API stability more seriously then linux has. This is a convinience for third party app writers - but it is also becoming a huge liability. But compare this to linux, where some close source apps (by the now closed loki games) are already experiencing minor to major hickups for a install.

    All these decisions are two-edged swords - they cut both ways ...

  • CharlesCharles Welcome Change
    Ovidu.Platon,

    Channel 9 has not been abandoned. I'm not sure what you could possibly mean by that statement. 

    As to disagreeing with other points of view, be they truly ignorant or just different from your own, that is a natural consequence of conversation; free conversation.

    Channel 9 is not a place for Microsoft-lovers only. Geez, that would be boring now wouldn't it? If you find that somebody is completely ignorant and you choose to educate them by prefacing your teaching with "you are an ignorant", well, good luck.

    Channel 9 is a place for conversation. You can either choose to take part, lurk, ignore, teach, learn, etc.

    It's up to you to make the most of this place, not Microsoft.

    C
  • banibani ...
    Sweetshark wrote:

    bani wrote: 'microsoft does a better job of ui integration and usability than anyone else'
    I would cut back on the 'anyone' *cough* Apple *cough* - but the Windows UI is of cause far more consistent than the various linux DEs and probably will always be.


    I have a mac, and quite frankly OSX drives me nuts. computing with OSX is like computing with training wheels that you can't remove.

    Everything in OSX treats the user as an beginner, and there's no option for 'non-beginner mode'. You do stuff apple's way or not at all. At least microsoft usually gives you a choice in how to do stuff, with apple it's their way or the highway.

    Aqua also has a lot of usability problems ('expose' only exists because apple's window management is so poor, dock sucks horribly, etc. etc.) and refuse to improve the UI because they suffer from a terminal case of 'not invented here'-itis. Aqua made a lot of poor design choices, basically abandoning all their well researched and well established UI guidelines for the past 15 years -- in favor of eye candy. I find it ironic that apple has stooped to the very thing that apple users have criticized microsoft about for so long. Now they're cheering eye candy? Bleah.

    Want a nice example of inconsistency? How about this?

    I also think the cocoa/objc is a huge mistake. objc is just too freaking weird for most developers, and it's a rather high barrier to entry on the platform. If you want to program for carbon, you're treated as a second class citizen. apple should have picked up something like Qt and supported it as an official framework.

Remove this comment

Remove this thread

close

Comments Closed

Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums,
or Contact Us and let us know.