Despite this, I've always felt that committing myself to a single stack isn't ideal. My experience outside of the .NET platform includes PHP and Python, but the last time I touched either in anger was about 5 years ago, so things have obviously moved on since then.
As of right now, I have three options to consider:
* Stay where I am, do what I do best. * Move to a different company, doing the same kind of thing. * Move to a different company, and work on a Linux stack
I recently received an offer for the latter, at a company that is largely language agnostic. It's an exciting move for me, but it's one that worries me a bit, because the experiences are going to be so vastly different. I'll be going from my usual toolset on Windows and a managed framework on a staticly-typed language, to a stack I know next to nothing about.
Have any of you made the jump from experienced .NET developer to inexperienced Linux-based Python/Ruby developer? If so, would you recommend it? Did it improve you as a developer?
Finally, are there any good resources for transitioning over to a Linux stack? My command line knowledge is pretty poor, although I'm fairly handy with git and Powershell. Ideally, I'd like to spend the next 2-3 months solidly learning the tools I'll need to transition easily between stacks. I'll need to learn enough of the language and surrounding frameworks to be dangerous too, but I'm banking on that not being as difficult considering I'll be moving from MVC to MVC in most cases.
(Since someone will likely raise it, I'm not interested in moving to .NET Core at the moment. While I love C#, I feel that .NET Core is still very bare-bones, and will need a few years until it's anywhere near the level of the standard framework.)