Yes, I’m now a Linux developer.
About 6 months back, I got an opportunity to work on the AVR Toolchain – a port of GCC and related software for the AVR and AVR32 microcontrollers. Having always been interested in compilers and programming languages, I grabbed the chance with both hands, and have been happily hacking on it since then. While GCC can be developed on Windows, Linux is the natural platform and is what most developers use, so I had to switch to Linux as well.
The switch to Linux was frustrating for a while, as I suddenly had no access to my favorite tools that I’d gotten used to for years. No Visual Studio, No WinDBG No WinMerge.., the list is long. You start working on a problem, and you realize you need to use some tool, say “Find in Files”. Now you have two problems – finding a tool that can do “Find in Files” and knowing enough about it to get the job done , and your original problem. What made things worse was that most of the work was done SSHing into another machine, so practically no GUI applications were available.
So I decided to go cold turkey and stop using Windows for a while, and it paid off handsomely. After a few days of constantly hitting Google and “man <command>” every 5 minutes, I gradually got used to it. One thing that greatly helped ease the transition was that I was already using VsVim, a Visual Studio extension that emulates the Vim editor. If you are a serious software developer, I can’t recommend learning Vim enough – it really changes the way you think about editing code (once you get past the infamous learning curve).
Now, after 6 months, I actually favor the command line over a GUI for most applications – it really lets you get a lot done over a few keystrokes (once you know what to key in, of course!).
PS: Only when I logged in did I realize that my last post was made more than a year ago. Time really does fly as you grow older 🙂