About your productivity levels, don't worry about it because in the end you'll end up being much more productive.
The one thing you must do is to embrace the Unix way of doing things. Learn the basic command-line tools and use them daily. Learn to use Emacs, because the same shortcuts are available in the shell.
This book is great btw: Unix Power Tools (http://amzn.to/Klexhf)
Another thing you have to realize is that Unix was built for polyglots. Many Windows developers usually stay within the walls of .NET, but on Unix that's a mistake. Learn Java, learn a good scripting language (I recommend Ruby because it is great for scripting, has a thriving community and can also run on top of the JVM), learn C along with the POSIX APIs.
Eclipse or IntelliJ IDEA are good substitutes for Visual Studio, however I work with Emacs, because in dynamic languages the APIs and workflow are optimized for non-IDE usage and an IDE just stays in my way. I still use an IDE for Java, but that's only because in Java I can't drop to a REPL.
Also, Linux is great for your desktop, but only if you have hardware that's compatible with it. So be careful when picking hardware and do some reading first, otherwise it will ruin your mood. OS X is also an option btw, but I wouldn't make long-term commitments to this platform because Apple is even worse than Microsoft in some regards.