The topic comes up all the time: "Which
IDE to you use?"
It doesn't matter which programming language is being discussed or the scope of the project, developers always want to know what the "other guy" is using. I tend to do all of my development in C/C++ and it probably comes as no surprise to others using
Netbeans for C/C++ the shock and resistance I receive when I tell people this.
I'm a Linux guy. Up until last year, I had never written a lick of code under any platform other than Linux. When I was eventually "forced" to write some C++ under Windows, I felt like a foreign exchange student with no sponsor. I had absolutely no idea what was going on. I almost started to believe I didn't know how to program anymore. Where was
gcc? How do I run this thing? How in the hell do I use Visual Studio? In walks
Netbeans, the one thing I can always count on in my software development. That is, aside from the knowledge I've already garnered.
The fact that
Netbeans offers a full-fledged
IDE that runs on multiple platforms is enough in itself. The fact that it has support for every language you could ever want (or need) to write code in is nearly unprecedented. The fact that it does all of this better than any
IDE I've ever seen is teetering on goofy. The fact that it's open source is down right nuts.
I, like many developers, am forced to write code in a number of different languages for a number of different platforms. It's frustrating enough having to
remember the nuances of all of these different languages. You do something one way in Java, another in C++, a new way in Ruby... but that's not the worst part. Chances are, unless you are really just using an editor as opposed to an
IDE, you have to write this code with a different development tool. Isn't the idea behind an
IDE to make the whole development process easier? What's easy about juggling different programming languages along with different development environments? In walks
Netbeans.
Netbeans provides developers with a consistent look and feel across all of its supported languages. This allows developers to use
Netbeans for all of their tasks without missing a beat. There is no learning curve. If you've written Java code in
Netbeans, congratulations, you can now use
Netbeans to develop software in any other language. I think people overlook the benefits of this, mainly because it's not a very common
luxury. The old school of thought between developers, namely C/C++ developers, is that you use a text editor on Linux, and Visual Studio on Windows. For a lot of people, that's a deal breaker. I can't say I blame them: Visual Studio is usually a nightmare to use for anyone coming from the purist environment that is Linux/UNIX C/C++ development. In walks
Netbeans. You're a Linux C/C++ developer coming over to Windows for a project? No sweat, just install
Netbeans, install the C/C++ development tools (compiler, make system, etc...), and get right back to work. The effect this has on productivity is astounding. Not only can you get right to work, but all the experience you gain while working on this project under Windows can be directly translated back to Linux, or whatever your native environment is because the
IDE's interface is the same, because the
IDE is the same!
I talk a lot about C/C++. Guilty. Every other language is on a "need to use" basis with me. However, I've done a lot of work in Java, some work in Ruby, and recently my first ever experience with JavaScript. Let's focus on JavaScript since that's a pretty old school language. The JavaScript project I was working on involved some proprietary Microsoft technologies. Given that, I was basically forced to use Visual Studio. Luckily the new version isn't so bad, but I still wasn't pleased. I was out of my element, and I had to worry about more than just the code I was writing. That's a bad thing. In walks
Netbeans. In the 6.1 Beta, JavaScript support was added.
Eurkea! I said. The nature of the project was such that I could write the JavaScript code separate from those other
proprietary technologies I mentioned, so I installed the beta and got to work. Not only was the learning curve involved with Visual Studio cut out of the mix, but the fact that I had the reference documentation built in to
Netbeans was instrumental in my rapid development iterations with this project having never written any JavaScript in my life!
The
IDE war will never be settled. Maybe that's for the best, to each his own. However, the bottom line is
Netbeans makes you a better developer. It helps you do your job, and it helps you do your job well. The fact that it covers the major elements of all of the languages it supports is second to none. Break your code down by classes? Done. Attach an in-depth
profiler? Cake. Debugger? You betcha'. Source control? Look ma', no hands.
If you've never tried
Netbeans, I strongly encourage you to do so. It's alright, you don't have to tell anyone that you're using
Netbeans. You can lock yourself away, keep all the lights off, cover your face if you must, but just try it. Once you put all the hype aside, you'll realize just how invaluable a tool like
Netbeans is. And then you'll wonder why you weren't using it years ago.
--
This blog entry was submitted for the Netbeans 6.1 Beta Blogging Contest. For more entries, check out the contest page here:
http://www.netbeans.org/competition/blog-contest.html