Reputation: 34000
I just posted a question about whether WPF is a good choice for a long term project, and it got me thinking in general about development for long term projects.
If you have to choose the technology (language/environment/framework) for a project that is expected to last for many years (at least 10), what would you choose? Which technologies that we take for granted today are expected to disappear in 3-5 years?
Will C# exist in 10 years? Will Ruby? Will Python's interpreter 5 years from now still run Python 3.0 code?
What would you choose? What would you definitely not choose?
Upvotes: 4
Views: 279
Reputation: 36987
The more people are invested in a technology, the more likely it will survive. That said, an awful lot of VB developers were annoyed when the classic VB was discontinued and VB.net was not compatible with VB6.
Personally, I'd place my bet on Java. But it's a bet anyway.
Upvotes: 1
Reputation: 625237
Tying your project to C# is about as risky as tying it to Windows ie not very.
Windows won't disappear overnight no matter what happens barring extinction level events.
Other than that it's hard to say because it simply depends on the project you're developing. The likelihood that something is developed now and will require absolutely no maintenance or modification for the next 10+ years is... remote.
But just look at the difference between now and 10 years ago:
So I really don't know what you're expecting. Software is a living breathing thing. If you don't feed it and maintain it, it dies. What you should be concerned with is catastrophic change (like if you'd bet the farm on the success of BeOS for example) and anything tied to Windows or Linux will be just fine. Java, .Net and Python will still (I'd bet) be around. But care will be required.
Upvotes: 2