3 ms·
The opportunity cost associated with learning and becoming reasonably competent in a different development stack can be non-trivial, especially if you had 5 to
by tentonova 17y ago
The opportunity cost associated with learning and becoming reasonably competent in a different development stack can be non-trivial, especially if you had 5 to 10 years of experience with a different stack or set of technologies. I've yet to encounter a new framework/API/stack/language which I've been able to move to in only a few weeks and be 80%+ as productive as what I already knew, as there's often lots of useful minutiae, subtleties and new concepts you need to acclimatize over time.
If all you know is Microsoft, then that's all you can do, and the organization's technical direction will almost certainly model that initial decision.
However, if you have the luxury of choice -- and I think most people do -- I'd advise against it. The short and long-term costs of Microsoft lock-in are decidedly "non-trivial". The considerable investment in staff, licenses, and technologies make it very difficult to migrate to a non-Microsoft stack in the future.
The converse also applies. Granted, a competent engineer can learn anything, however you're initially inclined to pass on them because of the associated ramp-up time.
In my experience, you're entirely locking out engineers who use Linux and Mac OS X when you move to a Microsoft stack, but you're not necessarily locking out Windows engineers when you use a cross-platform stack.
- nkohari 17y agoEveryone has the "luxury of choice," but it inevitably comes with cost. I speak from personal experience -- I know the .NET stack very well, and am very familiar with the LAMP stack from my days with PHP, but I've only dabbled in Ruby and Python. Before starting work on our startup, I considered writing it in Rails, but the reality is that it would have taken me much longer to get to market. We hit the market at a very opportune time, and were able to ride a nice wave of buzz to sustainability. If we'd waited another couple of months (my guess at the added overhead of learning Rails), we may have missed our window. The same would naturally apply to someone who already was well-versed in, say, Rails -- it would make no sense to learn .NET unless there was a very compelling reason (say, you were writing a Windows desktop app). Not to mention that the first app you write using any technology you don't understand well is going to suck. If I'm going to base my livelihood on a product, I want it to be as well-written as possible, so I'm going to go with what I'm best at. Also, it's absolutely not true that you're locking out Linux and Mac developers when you write .NET. Some of the best .NET developers I know use a MacBook Pro as their primary machine.
- tentonova 17y agoIf the cost is too high to bear, then you don't have a luxury of choice.