5 ms·
This seems to be directed at the gaggle of ideological extremists that have hounded and insulted de Icaza for years because he dared suggest that Microsoft had
by kprobst 17y ago
This seems to be directed at the gaggle of ideological extremists that have hounded and insulted de Icaza for years because he dared suggest that Microsoft had a pretty good idea with .NET and C#. Sadly though, it's precisely those people who will pay the least attention to this.
- hga 17y agoPerhaps, but it doesn't address my two big issues: 1) I fully accept that .NET/C#/most especially the CLR are great ideas. Which I care not a whit about because Microsoft's ownership of them makes them things I cannot trust. For me the technical line of demarcation was in fact the orphaning of VB6, see Joel for more on this. Legally, at about the same time, see #2: 2) When he says "For open source to win, we do not need Microsoft, Apple or proprietary software to lose." he's leaving open a terrible logical hole, since it is not at all clear that the reverse is true. Maybe Microsoft can't win without open source losing. Microsoft's war to the knife against Linux, by proxy (e.g. SCO) and otherwise, argues that it doesn't see the world in the way de Icaza implies.
- faragon 17y agoGreat, yes, but not original ideas (Java/JVM).
- hga 17y agoAnd your point is? Java/the JVM wasn't even Gosling's first bytecode system (that was as far as I know his MockLisp for his 32 bit Unix EMACS). Come to think of it, a Common Language Runtime wasn't a particularly common idea at the time. There have to have been some ... there were some common bytecode engines, but not common libraries as I recall ... so maybe it's somewhat more original than you and I automatically assume.
- mkramlich 17y agoMy own take on C#/.NET, and I bet a lot of others had this take as well, came down to 2 elements: 1. when it appeared, it looked a lot like somebody within Microsoft said to some other guys, "Hey, go make us a Java. Like Java, but our baby." And they basically approached it by cloning it and then making several superficial tweaks and changes -- JUST enough, especially at a superficial level, so they could say with a straight face to people who were none to observant that this indeed was the product of internal R&D -- true innovation -- rather than being what it actually was. In short, it looked awfully like a student who turned in a paper which was a pretty blatant copy of another student's paper, except with some superficial textual changes made to make it look different and original. I know that both languages have drifted and evolved since C#'s debut, but I remember looking at programs written in the current dialects of Java and C# at C#'s debut and it was hilarious just how much it looked like the C# version was just a functional/semantic clone of Java, only with arbitrary syntax differences (keywords, case, etc.) Life is complex and they've both evolved since then, but there's no doubt in mind that C# started life with a "clone Java, change it's name/keywords" design strategy. 2. Microsoft's whole business model appears, to me anyway, and to other folks, as being basically about just copying what other folks are doing, putting their logo on it, offering it up for sale, and then once people are using it, to design features and systems in such a way as to create lock-in. Lure them in, then close the door. Or least, slowly start closing that door, so slowly and with enough distraction that the unwitting victim is not smart enough or quick enough to see it.
- torial 17y agoRegarding your #1 element: When I was coding w/ .Net PDC (e.g. pre- 1st beta) I would use the java reference docs to get some idea as to what to do because MS didn't have any real documentation for .Net at that time. Regarding your #2 element: A perfect example of this is their attempt to take Adobe on with Silverlight (e.g. vs Flash), and also with XPS (e.g. vs PDF/Acrobat). I'd be curious as to what you (or anyone else) see WPF as copying from as an example for that does not readily come to mind.
- mkramlich 17y ago1. funny! but doesn't surprise me :) 2. I like how even the name Silverlight pretty much tells you it's their Flash knock-off: silver + light = bright light or lightning = flash. It's like they're thumbing their nose and saying "neener-neener!" to Adobe. Quick Wikipedia read on WPF made me think of similarities to Flash and Apple stacks. But there can be non-malevolent explanations for this, and I don't know a lot about WPF (since I now try to keep my brain non-Microsoft, for efficiency's sake), so take with grain of salt.
- hga 17y agoObviously, C# and a good part of the the .NET libraries are Microsoft's attempt to do a better Java, with Anders Hejlsberg leading the effort AND trying to fix some Java mistakes while he and his team were at it. As far as I'm concerned that's just fine, competition is a good thing. Also note that this happened shortly before progress in the Java language became glacial and sometimes dysfunctional. (Also note that Java was hardly original when it came out; being able to do that in a useful way has become exceedingly difficult now that we're in the 5th decade of high level language design. If you disagree, please point out say half a dozen things in Java that had never been seen before in the lab or industry.) However note my comment "most especially the CLR [is a great idea]". This is where Microsoft can in theory win on the technology side of things. E.g. F#, their dialect of OCaml. Indeed it's "just copying what other folks are doing", but it is the first functional language with major vendor support, right? You can do functional programming on the JVM with e.g. Scala and Clojure, but the JVM runtime is not exactly going to go out of its way to help you (that's actually scheduled for the upcoming new version of the JVM). My bottom line is that focusing on C# rather misses the point when Microsoft from the very beginning made such an effort at a multi-language system. Your points about vendor lock-in are of course well taken, although I'd say Microsoft's abandonment of backwards compatibility with VB6 -> VB.NET is a lot worse. There's a difference between the old "IBM will take care of you" and Microsoft's untrustworthiness if you play the game by their rules.
- cageface 17y agoThe issue isn't the technical merits of C#. It's the degree to which a Microsoft technology can be trusted as the foundation of the free software desktop. As Miguel himself has recently grudgingly admitted, Microsoft's own ambiguous stance on this issue has limited the uptake of Mono. It's one thing to suggest peaceful coexistence with Microsoft and quite another to suggest getting into bed with them. I for one am glad that nothing essential in my Gnome desktop requires Mono.
- kprobst 17y agoInteresting how that was never a problem with Java. For years the only outcry against it came from Stallman babbling on about how it was a "trap". It wasn't even an ECMA standard like C#. Yet it was no more free of patent threats or corporate greed as Mono is today. In fact a recent article by Sun's ex-CEO casually mentioned how Sun was ready to enforce "Java patents" on Microsoft, and I didn't see anyone from the Apache foundation get on the horn with Oracle to ask just what those are. Realistically, all software is under patent threat from IBM, Microsoft, Apple, Google and a thousand other small and large patent trolls. But it's fascinating that it's only Mono and de Icaza that are constantly under attack. And note I have no problem with raising and discussing the issues that surround it - the problem is the vicious personal attacks he has had to endure for releasing something that is, amusingly enough, 100% free software. Patent FUD is just that, I don't care if it comes from Microsoft or in reverse from the FSF scaremongering enforcers. No, I think the problem with Mono is that it's an implementation of a Microsoft technology, and that just rubs a lot of people the wrong way. The patent thing is just a convenient excuse. Go ahead and fire up Inkscape, GIMP, Firefox, or compile hello world with GCC and then assure me that you didn't just violate a whole bunch of patents held by other corporations. And by the way, C# is about as likely to become the foundation of anything as is Java or Visual Basic for that matter. Unless someone comes up with en enormous breakthrough in speed and memory consumption for VMs, major desktop applications and components will continue to be written in C or C++. A music player and a note taking application don't signal the Mono takeover of GNOME or whatever, that's just another excuse for the "that's a nice free OS you got there, it would be a shame if something happened to it" party line that has been used against Mono. In the meantime though, anyone who does write a note taking app in C# because it takes 1/3 of the time to do so than it does with C++ is hounded to death because he's "destroying" the free software desktop.
- mkramlich 17y agoIt's interesting how "idealist" sounds like a good thing and yet "ideological extremist" sounds like a bad thing. And yet, they are both probably the same thing. :) The abolishing of slavery was led by ideological extremists. Voting rights for women and blacks were led by ideological extremists. Child labor laws, environmental protection, social security, health reform, religious freedom, heck, arguably the founding of our country, etc. were all disproportionately brought about due to ideological extremists. I think having ideals and principles is a good thing. People who are anti-Microsoft "extremists" tend to be that way because they have ideals and principles, and they think they see Microsoft as having a certain track record against those ideals and principles, and therefore that's bad. There may or may not be good ideas in C# and .NET. But if we can have those good elements without having Microsoft, I bet that's what those folks would like. I'm definitely one of those folks. I had no issue writing software in Java in part because I had no expectation of Sun trying to say lock me into Solaris or a suite of Sun products -- something which Microsoft had a track record of doing in the past. Whether they would still do that with C#/.NET I could not know for sure at the time, but it was the smart bet to make.