.NET, ALT.NET and RoR... The good, the bad and the ugly
I was wondering what is it ALT.NET, once you reach the definition.. if you a ALT.NET developer so "You’re the type of developer who uses what works while keeping an eye out for a better way.", of course this make sense and we all should think that way, sign me up
the irony here is that by their own definition they stenograph the whole development in .NET and thus they alternative it.
perhaps a better term for that definition is ALT.(bad dev methodologies) seeking alternatives is always cool but only when you seek better alternatives not a buzzy alternative like RoR.. which i didn't get.. and least in the enterprise software stream.
back to the ALT.NET .. that means - again by the definition - that .NET is a bad thing and we all should search for alternatives.. but even so, there are number of factors you should consider before you drop everything and start learning from scratch.. you have to consider your current job, your time, the roadmap of the language or the framework you are going to spend your next couple of whatever learning.
To me walking away from .NET with all the experience i have gained is insane i rather look to use tools from out of .NET space like SubSonic for instance rather than switching to RoR to solve my problems, only pick up your problem and try to find it in form of open source project, add-in, framework or even implement it yourself.
Frans Bouma's replied to the post How long before ALT.NET becomes NOT.NET? said it all:
Every time I see 'alt' for 'Alternative' I wonder: "alternative to what?". I have the same feeling with ALT.NET: it's to me unclear what it stands for. Does it stand for FOSS all the way, does it stand for using TDD/BDD/DDD style development? Does it stand for not-microsoft, or something else?
A (lame) analogy can be 'Alternative rock': it's still rock, so for what is it the alternative? Unclear.
Will ALT.NET become NOT.NET ? No of course not. If it would have been, people would have moved to Java years ago, as the stuff people are using on .NET are available on Java for years already and are in much more mature state than on .NET. Ruby? As a language: sure. RoR, I'm not convinced.
Another aspect is that something which is 'Alternative' is the 'mainstream' for the people IN that alternative stream. So in a while it will become common for these people, and something 'new' will look like something potentially 'better', as when you're using something for some time you will learn the downsides and quirks of it.
And the process repeats itself.
I've programmed software in at least 15 different computer languages in the last 20 years on at least 10 different platforms. There's one thing I've learned which will save your day: use the platform / language which you know like the back of your hand. Because that will offer you the ability to finish your project. If you keep on switching platforms, you will start over from scratch: you might know how to apply a new EBNF syntaxis of the new language and some classes / functions in the libraries available look familiar, but you will have to start over and learn everything again.
That's why I don't believe people will switch soon to Ruby on its own interpreter: they have to start over again and drop the knowledge they've learned on .NET in the last couple of years.
Don't kid yourself with a sticker that you're so alternative. You're not. You just decided to pick a different subset of tools than some other group. Well, congratulations :), but it's not an achievement at all nor a lifestyle or a movement.