Blog Post
Going back to the roots to evolve
Since I started to work as developer I’ve been very worried about which code editor or IDE to chose in order to write as conformable and faster as posible.
My first professional contact with text editors was with the Oracle Jdeveloper which offered a far best approach from old and rustic Kawa used during my practice classes at the University. It was a really helpful to have such helpers which underline what was wrong of your code before having to build the project, but still I was just looking at the surface of what modern IDE's will bring us as developers.
When I started working full time, it was when I realized about the importance of a good IDE, and after some research and collage requests, I started with Eclipse IDE. I spent a lot of time trying to find plugins, learning all key shortcuts to work faster and understanding how to use all the advanced features of it, ( eclipse wiki page helped a lot ). After some years of usage, I was very proud of my work flow.
But suddenly new topics come to scene; application deployment, maven to manage our big projects and even some server administrator task, and at this time I knew that no advanced IDE will help me with this kind of tasks. The more far we where from defaults / typical projects, the more old school tools I was forced to use.
The truth was that at first it was really hard to get used to all this kind of tools and the new problems that come with them ( lot of bash problems but, server exceptions, having to dig into logs, Java Out Of Memory exceptions ...) but, like it happen with everything in life, I started to control this new environment. The more comfortable I was with this new scene, the less tools I was using, mostly VIM + bash console to configure server remotely.
Because my old companies restriction, I have always been force to use windows based machines, and because of that windos cmd and even the new powersheel were a little bit disappointing, mostly because paths restrictions, python, node.js and other environments poor integration with windows machines and so.
The good news for me is that with my new professional path as freelance developer, I have freedom to choose the tools I want to use, and this means to be able to work with a unix machine ( in my case just a macbook air 13-inch ). This allow me to be able to work just with a text editor ( the awesome Sublime Text Editor 3 ) + terminal console to do all my job tasks; Deployment task, Track my code against git repositories, have jekyll ( to work on my blog ), grunt servers ( at my daily job as front end developer ), alias to run commands faster, use links to do really cool deployment things in collaboration with Dropbox, use all my VIM learned knowledge thanks this really really powerful vintage feature of sublime ... and far more.
All that said, I can confirm I'm far more faster, reliable and versatile in my job after having forgotten about these fancy smart IDEs and having gone back with old school tools. That's something that some companies used to forget, believing that treat us as 'Software factories items' will improve our job, creating restrictions instead of helping to develop our creativity. So as summary, and in my personal experience, I would like to say that as the craftsman who need his own tools to create their own art pieces, a developer needs freedom to create his own work environment.