It's all a matter of time to me. I am a newbie too with an open mind otherwise I wouldn't be here on LQ. So here is my take:
If you have a lot of time on your hands then I say jump right into Linux and the whole LAMP thang (Linux, Apache, MySQL, PHP). If you're used to Windows than you'll have some adjusting to do and it could take some time and undoubtedly frustration to get as proficient as with Windows. Then again, if time and overall efficiency is a consideration then you might as well be concerned about application development technologies as a whole. By this I mean considering the average lines of code it takes in a given language to accomplish the same goal as another language and the learning curves associated (C++ vs. Java); also there is the maintainability and performance aspect of the apps... Object oriented vs. proceedural, garbage collection, etc. These are all things that I consider. I am using Linux (or at least trying to) solely for the Mono Project (http://go-mono.com
) and that is because I am an avid advocate of .NET (http://www.microsoft.com/net
). While I'm at it I might as well do some Java.
My interest in an OS is how well it can help me accomplish my goals and important tasks. The frustrating thing about Linux is that you have to spend a lot more time messing around with things that are outside of what your job is... I just want to develop applications, not configure hardware. Linux might be free but if time is money then Linux is costing me more in the long run than a upgrade license to Windows. (I know I'll get flamed for that.)