views:

1510

answers:

9

Does it matter to developers that the current, and newer versions of .Net don't support windows 2000?

It scares me to think that several of my clients still use Windows 2000 and although I may decide to stop supporting Windows 2000 one day, I don't like that Microsoft is pushing it on people's products.

Could anyone see Microsoft doing this with XP in the future to spur sales of Vista and later?

Just to clarify, this is not a bashing of MS in any way, I love MS, but it is a genuine concern that I would like opinions on.

In contrast I can't see C++0x implementors saying "it won't work on windows 2000"

I'm really trying to convince myself that I should be switching to .Net but this is one of my concerns.

+3  A: 

Supporting older operating systems costs money. It's not necessarily a push to spur sales of new systems so much as avoiding the cost of trying to make things work on old systems that they've already ceased supporting. Just as Windows 2000 support has ended, so will Windows XP support, and Vista support, and Windows 7 support, etc etc. Continuing to support the .NET framework on operating systems that are no longer supported in any other way does not seem prudent.

EDIT: To address the notion that since the CLR is the same for .NET 2.0 and the newer framework versions, the restriction was artificial. Although it is still working on the same CLR, that doesn't mean that all the support they've added will effectively work on Windows 2000. There are performance and hardware considerations to be made and I think considering the age of Windows 2000 and some of the more intensive features added to 3.0 and 3.5 frameworks, it was a reasonable decision to abandon WIndows 2k.

Whenever we as developers consider supporting a particular user-base, there has to be a consideration of the resources needed to add that additional user-base over the benefits of supporting them. Testing, bug fixing, and support costs have to be factored in. As Windows 2000 is no longer given any security updates, they would need to resurrect an update mechanism just for .NET updates. I suspect that the benefits do not outweigh the costs in this scenario. It therefore makes sense to me that Microsoft should artificially prevent newer frameworks from running on Windows 2000 as they are then saving themselves these additional costs.

Jeff Yates
Since 2.0 was supported, and 3.5 is mainly just library updates. I think it was pretty artificial to put this restriction.
Brian R. Bondy
"Just library updates" isn't exactly relevant, though. The newer libraries (particularly WPF) may well be P/Invoking native DLLs that simply aren't present for Windows 2000.
Curt Hagenlocher
A: 

Well here's what I think:

  • Windows 2000 is a 9 year old product that will most likely lose support by next year, so that might be a good excuse to cease support for it
  • It is very very easy to install the .NET Framework
  • The .NET Framework has very little impact to disk space (~20 - 30 MB), so I don't think "pushing" it to clients is an issue in terms of HDD space
  • There are tons of programs out there that do use the .NET Framework, especially on enterprise environments, so there is a fair chance your clients already have them

Honestly, I'm not really sure what you're worried about.

BTW, there are ways to use the .NET 3.5 Framework features with only .NET 2.0 installed, and it has been covered in some SO questions already.

Jon Limjap
It's a big concern to me that I would have to chose between immediately dropping support to use the current language. And people who already purchased my product and purchased years of updates for it who are running on 2000.
Brian R. Bondy
Why would your updates require newer features? Surely updates are bug fixes. I guess that depends on your deployment and support models, but promising support for future technologies sounds like a bad idea from the start.
Jeff Yates
I honestly believe that if your product causes your clients to be locked in to legacy OSs, you have done something terribly wrong. Seriously though, OS migration is one of the reasons why products are upgraded in the first place. Don't your clients have discounted upgrade options?
Jon Limjap
LOL. It's weird seeing this voted down especially since the question has been a moving target!
Jon Limjap
The point is that Microsoft makes you chose, drop support instantly, or be frozen into the old language. If Java supports coffee machines, I'm sure they could have gotten .net to support 2000.
Brian R. Bondy
If you develop desktop software, I guess you'll see this sooner than later when it happens for XP and they have a larger user base still on XP. Because more of a percentage of people upgraded to XP from 2000 than from XP to Vista.
Brian R. Bondy
+1  A: 

I guess it greatly depends upon the company. For example, I've been working with mixed IBM and Microsoft technologies and our customer has this AS400 platform which is very very old, they don't even support transactions or relations on their database but these big companies have invested a lot of time and money on their systems and they want to keep them like that.

What we done is to add a layer so they can use this information on a website. I dont see IBM leaving its customers behind, they still develop software componets to connect to these old techologies for .Net for exmaple and I believe Microsoft will do the same if they do a research and found that they have many customers still using Windows 2000. You might not have all the features of the newest technologies but at least im pretty sure they will maintain a layer of compatibility for it with their newest technologies. Its not easy to tell a company of more than 10k employees and millions of dollars invested to just switch to the newest OS or Database system, for they it wouldn't make sense and believe me, even when Microsoft wants you to buy the most modern software they won't stop supporting their old technologies especially if these big companies pressure them to either keep their legacy systems compatible or buying the other's company solution.

Gustavo Rubio
+2  A: 

Since the question changed after my last response, I'll add that 3.0 and 3.5 support for Windows 2k wasn't dropped "without warning". There was plenty of indication this was happening before the betas were ended, so I don't think the question is really worded fairly in this regard.

Jeff Yates
agreed, fixed this.
Brian R. Bondy
A: 

Windows 2000 extended support from MS is due to expire in 2010 (http://support.microsoft.com/lifecycle/?p1=3071) so I guess they had to call it a day with official support for .NET at some point.

Sometimes you just have to nudge your customers onwards to new OS pastures (we had to) or charge more for developing apps where you may not get the productivity benefits from new features such as LINQ. Things coulda been worse and they decided to pull the plug at 1.1 which was my big worry back in 2004/2005.

Kev
It's hard to turn away even a few percent of your user base when you are a small company. It just worries me that they might make a decision that is even earlier than 2 years before OS support ends next time.
Brian R. Bondy
Could you really rely on revenues from them considering that they can't afford to move to newer versions of their OSs, or consequently, newer computers?
Jon Limjap
They can afford to, but don't need to so why would they. They have thousands of computers, 2000 being some of them.
Brian R. Bondy
A: 

Since I've gone through this recently here is Microsoft's stated support guidelines. Lifecycle guidance.

FYI support for XP should go through at least 2010 and if they are willing to pay for support possibly another few years. Will .Net 3[4].XX work on XP then? Possibly, but who is to know? Win2k is a very old system at this point and there are things that are just missing form the OS. Let it go.

Dan Blair
I'm having trouble understanding why someone would have flagged this as offensive.
Curt Hagenlocher
I didn't vote it down nor offensive, but I would guess that it's because of the closing statement, which doesn't address the topic at hand, and does seem kind of rude.
Brian R. Bondy
Wow the statement wasn't meant to be rude, it was meant to be blunt though. Win2K has really degraded as an OS and it really is time to let it fade away.
Dan Blair
Ya just is strange to me that they didn't support the .Net framework until such a time that the OS was not supported anymore at least. Also as a platform you'd think they'd want to remain as widespread as possible to give confidence to the platform itself.
Brian R. Bondy
It would take a little more time to research than I have right now, but I think you'll find that back supporting win2K and its old security model would hinder new development to .Net. At some point you just have to make the choice to move forward.
Dan Blair
+1  A: 

No matter what technology stack you're using, there's always going to be a tension between "supporting the latest features" and "maintaining backwards compatibility". Where to make that tradeoff depends largely on the type of product you're building and the type of customers you have.

I used to develop a warehouse management application using C++ and SQL, and we always had to support at least two versions back from the "current version" of SQL Server because our customers were extremely reluctant to upgrade.

Curt Hagenlocher
A: 

If you look at recent technical innovations, notably Netbooks based on Atom processors, I think XP will be with us for a while yet, as most of this kit doesn't run Vista. Similarly in the mobile market, outside of Windows CE varients, we have XP embedded, not Vista. While major manufacturers, such as Dell, are still introducing new kit that doesn't support Vista, XP is here to stay,

Shane MacLaughlin
+2  A: 

Considering that Microsoft has a double interest in this matter (selling you the new OS and producing the .NET framework), I would be very suspicious.

In actual fact, you will be able to support new .NET versions on older OSes using Mono, which is pretty much designed to be cross-platform and backwards-compatible.

Sklivvz