Microsoft's .NET at ten: big hits, strange misses
We take it for granted now, but it was ten years ago this week — July 7, 2000 — that Microsoft announced its brand-new application development initiative, the .NET Framework, at TechEd Amsterdam. The company then provided more detail at its Professional Developers Conference in Orlando, Florida, the following week. It was Paul …
Still partially rubbish though
Just this morning I tried to run MS's own keyboard re-mapper, only to find it wants .net 2.0 despite having 3.5 on the machine.
Makes me want to hug a penguin...
Actually that's a strength
You're mistaking a strength for a weakness there. Later versions of .Net do not replace earlier versions, they coexist. That way apps written for .Net 2.0 still work when versions 3.0, 3.5 and 4.0 are installed without the dll hell problems experienced with earlier Windows runtimes.
tell this to customers
who can not understand why they need version 2 when they have 3.5 :)
IMHO M$ would do better if they install all previous version of .net with every new version.
And make it part of OS updates- transparent to user (with of curse manual delivery option)
3.5 includes 2.0
Doesn't make sense. 3.5 is a superset of 2.0 and uses the same runtime. Basically 3.5 is just 2.0 plus some additional framework librarys and a new compiler.
Different runtimes exist for .NET 1.1 and 4.0. All of these can be installed on the same machine.
Or how about
you build a decent installer that installs 2.0 for them, instead of faffing about getting them to do stuff?
Only someone from MS...
...could come up with this. No wonder .NET made me despair.
At least this attitude explains why it was impossible to move .NET apps from one Windows server to another. Trying to install 1.0/1.1 and 2.0 at the same time seemed to be the root of the problems - or something.
Final laugh was when I finally installed an expensively purchased Visual Studio cos writing clean code by only using Web Matrix wasn't good enough for anything much beyond 'Hello World'. After installing a brand new VS the .NET on that server failed altogether.
We tried to warn the company about MS products - but they (of course) knew better. Sadly they went bust on a pay day leaving 400 staff with no wages.
Still, at least MS got all their licenses paid for - so it wasn't a complete loss!
That's it - blame the hardware
VS was installed on to the dev server cos it was bought by the company I was working for and they didn't want it installed on my laptop.
So easy enough to understand - VS installed on dev server and I'd work via a terminal session. Except the .NET app which was working stopped working immediately after installing VS.
Have you *ever* moved a non-trivial .NET app from one server to another? I even remember a MS shop being unable to work on a website because they couldn't move it from some Italian dev - and so the site improvements never happened.
And thanks for the bad language - it proves I've hit a sore point which you astro-turfers are uncomfortable with.
Rotor died because of Mono
after all why pay for developers when people do the same work for free.
On the bright side
It would run *exactly* that badly using Mono on Lunix. Consistency For The Win.
Silverlight a hit ?
In all these years I have not found one website requiring it, nor a single app (and I work at a nearly 100% microsoft everywhere company).
Silverlight usage
ITV Player used it for a bit... then switched to Flash. Some MS sites use it, but that's about it.
Re: Silverlight a hit ?
>In all these years I have not found one website requiring it, nor a single app
Does Netflix ring a bell?
Netflix
No, it doesn't raise a bell - no Netflix available in my country that I am aware of, so never even seen the service.
I had heard that Netflix used silverlight, but then the Netflix CEO sits on the board of Microsoft... so while Netflix might have made a technical decision to use Sliverlight, its more likely to have been a political CEO level decision:
http://news.cnet.com/Microsoft-adds-Netflix-CEO-to-board-of-directors/2110-1014_3-6170596.html
In otherwords if a board-member of Microsoft decides his company should use MS technology, then its not exactly a ringing endorsement of the tech.. hence something often ignored by astro-turfers promoting silverlight.
So, maybe if there was Netflix in my county, and I wanted to use it, I might install Silverlight.. but for now its not installed in any of my browsers or OS's that I am aware of.
Roll on HTML 5 (I aren't a huge fan of Flash either, but at least I have it installed on everything).
Silverlight is coming to maturity
I think you are incorrect. I work exclusively with Silverlight and more and more companies are noticing it's business potential. Not just for streaming video but for full blown LOB applications.
Says it all...
... a monopolistic corporation's proprietary technology used for a corrupt organisation backed by a totalitarian government.
Ryanair uses it
Not sure whether that's a good thing or not
http://www.ryanair.com/en/cheap-flight-destinations
Not sure about Silverlight being a hit...
Powershell however has been a breath of fresh air.
I always found the mutual exclusiveness of .Net a hindrance especially if a program had been badly written and demanded a particular version of .NET yet there was no reason not to allow the newer version to run. I have also had the flipside where the program tries to use the latest .NET and fails. I guess the whole system assumes that everyone knows what they are doing and update regularly, which pareto's law says they won't.
ill-fated ECMAScript 4.0?
that would be the one that MS joined in the standardisation process to stop becoming a standard - in case someone used it and discovered that ECMAScript 4.0 had everything you needed to write really nice features you could use to easily and quickly write a really good GUI in the browser and so ditch the desktop forever?
You missed a miss
Hailstorm.
Not an integral part of .NET, as such, but very much a part of the strategy. Fell by the wayside, because, until Facebook, no one could work out a way of forcing users to willingly spend their entire day creating unnecessary online data about themselves, simply so that they could unwittingly end up sharing it with absolutely everyone, everywhere.
silverlight, he he he
Silverlight - so very Microsoft of Microsoft to create a browser plugin when everyone is shifting towards native standards browser based technology.
Bloody .Net
Do I need to have three different versions installed on my machine? A previous poster said it is a strength - like perhaps Microsoft don't understand the concept of backwards compatibility. Why is it, also, the Windows Update .Net components always fail to be updated? I ought to just unstall the whole damn lot...
@RegisterFail
Clean score with Hitman Pro, SuperAntiSpyware, Avast, and ComboFix. Kindly do not jump to conclusions as I've had enough sodding Windows reinstalls in my life (remember format-reinstall was de facto in the W95 days) that I don't want to go through that crap again just because of some on-line tosser. My default policy is block first, question later.
But then, you say that Microsoft knows of backwards compatibility which is why I have three different versions installed, thus showing YOU do not know what the phrase means. Windows XP can run Windows 3.1 applications. THAT is backwards compatibility. Otherwise I'd need a multiboot machine with 3.1, 98, and XP side by side (akin to three .Nets side by side).
Maybe, just maybe, the installation has got itself in a twist somewhere along the way? No spyware, no machine-is-f**ked, just a good ol' fashioned cockup. [I'd tell you more, but the upgrader failure messages are too terse and I can't be bothered finding logfiles]
.Net Hell
.Net will end up like MFC. Dead. Silverlight - this is already dead, it's stillborn. No one is going to use it, particularly when Apple refuses to put it on their iPigs. As someone pointed out, Silverlight is just a plugin!! I mean, how rubbish is that, particularly when it's a plugin that only works on Windows boxes?
In the 90's at least there was an excitement, a buzz about MS products. But in the 2000's that buzz died. What is Microsoft now? A purveyor of over-priced office systems, ugly operating systems, a patent pest and a negative killer of open standards. Still as evil as they ever were.
The problem is, they are also boring. They can never have the Apple cool, or the Google inventiveness or the warmth of Linux and open source sharing, openness and generosity.
.Net is just another set of API's that MS will kill when they realise that developers are flocking to Google API's, Android, iPigs, Linux, and anything that is not boring, closed source MS.
Microsoft is held afloat by corporate lock-in. The moment corps get a clue, stop paying M$ millions, and switch to Open Office and Linux based computers for the 80% of their staff for which those are sufficient, MS is, like most of its technologies, Dead. MS products, including .NET, are a bubble overdue to burst.
.NET is basically a rip-off copy of Java. With Java you don't need 4 or 5 incompatible runtimes installed on your computer at the same time. Java is open source and has great open source libraries and frameworks. It will live forever compared to NET.
Finally avoid .NET clones like Mono. Microsoft has software patents it will use to attack you and destroy you any time it wishes.
If you work with .NET, you are supporting a destructive corporation that has destroyed all competition using unethical business practices (i.e. cheating).
Java rip-off and runtimes
Which version of java would that be J2SE 5.0 Java EE (whatever version), or Java SE 6 UPdate 1 or Update 2 or Update 3 or ...Update freaking 20? If it does live forever, it will because no-one will have the knowledge/skills to unpick all the different point versions that used make our Oracle drivers go ballistic everytime it was updated.
Other than that, Microsoft are mean, yup true dat, but honestly, better them than Google.
www.cracked.com/article_18540_5-reasons-you-should-be-scared-google.html
@Eadon
"Microsoft is held afloat by corporate lock-in. The moment corps get a clue, stop paying M$ millions, and switch to Open Office and Linux based computers for the 80% of their staff for which those are sufficient, MS is, like most of its technologies, Dead. MS products, including .NET, are a bubble overdue to burst."
Errr, no. Why would you raise even more issues by having a mixed office environment let alone a mixed OS one? OO does not, no matter what anyone says, deal with modern MS Office files without issue. Who's at fault is not relevant to a corporate - they want a harmonious working system not Frankenstein's monster supported by bloody forums. I like Linux but, trust me, corporates do not want issues with one user not being able to use a document/spreadsheet/whatever created by the person sitting next to them/in the next office/wherever. Period. It's a needless barrier to productivity (a bit like the ribbon for some).
Given a corporate may easily have of the order of 10,000 employees that would mean 2,000 still on office and you'd probably negotiate a reasonable site license for including the other 8,000. That's another reason they don't move.
Moving from office will be driven by Government not by big business.
Silverlight
Playboy has a very nice Silverlight site. Check out http://playboy.covertocover.com/
oh dear
So... many.... ludicrous.... turd-spurts - so little time...
My favourite bit was when you produced this glistening p.o.s:
".NET is basically a rip-off copy of Java. With Java you don't need 4 or 5 incompatible runtimes installed on your computer at the same time. Java is open source and has great open source libraries and frameworks. It will live forever compared to NET."
I use osx, windows and linux regularly - the only common thing across all of them is that I hate being forced to install/update java... I also hate it attempting to install yahoo plugins for browsers by default, during what is meant to be an update.
.NET isn't a rip-off copy of Java - java has it's place, and so does .NET... java can be very inefficient compared to .NET, Java also does annoying things like assigning 32bits to represent a Byte. Compare IDE's, even the paid-for java editors that include form designers are terrible at handling swing layouts... in comparison, even the fairly young SharpDevelop (open-source .NET written C#.NET IDE) wipes the floor with NetBeans. It's a tiny install, quick editor, and includes a decent gui editor.
So, in summary, as much as it pains me to say it - .NET doesn't rip off java - it pisses all over it.
I'm just in process of going from a .NET/C#/Java job to a c++/mfc job... I'm going to miss .NET.
"some hits and misses from the .NET story"
Biggest miss is the umpteen megabytes that the runtimes take up.
OK, we don't expect coding efficiency from the likes of microsoft. Never use a single bit where a kilobyte could be used.
But what is it that really, really needs more than half a gigabyte? And why, after 250+Mb of 3.x it really shouldn't be necessary to insist on keeping 300+ Mb of the 2.0 version as well?
Get a clue
3.0 and 3.5 are extensions of .Net 2.0. The 250Mb installer actually includes .Net 2.0 with it.
The number of comments re backward compatibility are also incorrect. By default, the apps will use the latest version of .Net installed on a system. Yes, there are some breaking changes between versions, but if you hit these then the developer can specifiy which version the app requires.
If you don't know what you're talking about, best to keep shtum really.
.net hell
Hahaha... I've seen 25% perfomance hits on machines that have all 4 versions of .net installed. Dropped the last 3, no one has complained. What really cheese me off is that MS pushes out the updates to this drek even if you don't have anyversions installed, and why on earth would they auto-update and install their powershell on an old XP box? Yup, critical update, even though it wasn't needed or wanted.
Oops... clarification
Sorry, what I meant was a hit in start up times. .net runs "optimisation" at start up so
the performance hit I was refering to should have been stated differently. I haven't actually
seen any .net programs, except for web enabled software application "help" systems.
Start up times on Win XP boxes are the only thing I was referring to.
Hit
Hit: The "Basketball.Net" that they sent with my ".net Server" beta disks. This was of course renamed to Server 2003 but I still have the basketball net they sent :)
"particularly when it's a plugin that only works on Windows boxes"
Actually, there's a mac version of silverlight. Can't vouch for how well it runs though.
Not to mention Moonlight...
And the Mono version is coming along quite nicely, thank you very much. WITH full support and blessings from Microsoft, no less.
"Mac" Version?!?
Each new version of Silverlight runs on fewer and fewer Mac models and no version of Silverlight supports all of the stuff Silverlight on Windows supports, especially any WM file v10 or above (Macs are limited to v9 and earlier). So, absolutely no multimedia with any kind of DRM on anything but Windows. I'm pretty sure Mono is in the same boat.
Strange logic on M$'s part. Create a plug-in that brings the "windows experience" to the internet, then limit to Windows machines. (Don't they already have the "windows experience?")
@Eadon .Net Hell
Just to take issue with your "Finally avoid .NET clones like mono" - MS can't actually hit Mono/users of Mono with patent violation for .NET stuff because, erm, they actually made the spec (not the implementation code) available to anyone that feels like writing an implementation of a managed language - one of the few decent things they've actually done!
And yeah, performance in .Net stuff is terrible for some things, but on the bright side it is a hell of a lot easier to do things like file manipulation or working with system libraries with C# than it every was with C++. Oh, and stuff written against mono (rather than MS.Net) will run more-or-less out of the box on pretty much any linux or windows box with it installed (apart from issues with needed GTK# installed on windows 'cos you can't really use winforms in linux for obvious reasons ;))
The multi-version shite that MS use is a pain though - but again the Mono implementation gets round that... iirc it has pretty much all the features of MS.Net up to 3.5 (definitely at least to V2.0 anyway), but is backward compatible in the core library so you only every need one version, which microsoft should really get around to doing. And yeah - having .Net 3.5 and 4 each incur a 30+ second increase in boot time for some bizarre reason, probably something to do with the friggin registry that MS still haven't fixed!
Anyway, long live .Net and similar standards (like Java) that let you write programs for one OS and run it on any without the pain of recompiling against a completely different heap of libraries, types & function calls.
Mono version not coming along nicely
@Mike Norrish 1:"And the Mono version is coming along quite nicely, thank you very much. WITH full support and blessings from Microsoft, no less."
No it's not, it's crap. I installed it a while ago, besides being more bloated than Flash and Java put together, it usually didn't work. Quite a few pages would claim I "had" to install Silverlight and wouldn't even TRY to run. Others on a demo page, a few random demos would work, but the rest wouldn't run at all -- demos that were to do such complicated things as draw a square or put a couple rows of text into the plugin area.
Unless it's COMPLETELY changed in the last few months, it's essentially a ploy for Microsoftians to say "Oh but there IS Linux support" when in reality there is not.
Mono itself, on the other hand, well I haven't had to run much .NET stuff but it worked OK when I did, so long as they wrote portable code and not Windows-specific crap.
Away from myths and FUD
Recently updated some Windows software and for an experiment recoded in C# for .Net over a weekend (almost 10K lines but only a small UI). About the same time again debugging til done.
Pleasing results. Program now runs on Linux - only tested 32 and 64 bit x86 but presumably PPC etc. as well. All with no recompilation silliness and config hell. OSX likewise. And runs on Windows as well.
MonoDevelop seems usable now. Visual Studio too.
Oh, and the JIT compilers for Mono and .Net benchmarked my application faster in C#/.Net/Mono than its C++ predecessor with static compilation.
With much of the hardcore *nix dev community struggling on with masses of unmanageable C++ as if it is still 1990, IMO its a fine thing Novell are putting the effort into Mono.
So what it came from Microsoft. C came from AT&T. Less FUD and mythology please from non developers.
Base Class Library *is* in ECMA standards
The article says the .NET Framework class libraries are not included in the ECMA standards. While that's true, it is somewhat misleading because important parts of the Base Class Library are there. See http://en.wikipedia.org/wiki/Base_Class_Library for details.
BSD Linux??
Rotor was actually not released for Linux at all, it was written on and for FreeBSD 4.
"BSD Linux" is just meaningless gibberish.
Miss: C#
Anyone who thinks that verbosity (given example VB) is a bad thing and would prefer brevity (like C#) really needs to go back to school and learn about readability in programming languages (or possibly, just go on an APL course).
The excuses given for using { and } instead of words like begin and end are no longer valid. Furthermore, in these days of semi-decent typists, I would wager that most people would actually be able to touch type begin and end a damn sight quicker than they can { or } or < or >.
Crap syntax, unreadable... miss.
Hah hah haaa ! OMG !
You're serious aren't you ??
Scattering begins and ends all over the place obscures the code. It makes things worse. {} && || symbols are much cleaner. If you can't handle that then god knows what you'd make of the bitwise operators or the ternary operator.
Overly compact code can be a problem, and coding clearly doesn't seem to come naturally to a lot of my colleagues, but I think you're aiming at the wrong target here...
This is just too perfect.
If you're a coder and you can't hit {} quicker than you can type 8 other characters then you must be pretty slow. I wager I can type {}<> far quicker than I can type beginend (in fact I just did).
