Saying goodbye to NetBeans

I have been using NetBeans as my main development environment for all my WordPress projects since 2011, and today, I am saddened that that is no longer the case and that I have removed NetBeans from my PC.

When I first started with WordPress development back in 2008 I used Nusphere phpED, but due to high licensing price, I started going through different editors.

NetBeans 7: Big step forward

And, in 2011 I found NetBeans version 7.0 that made it possible to use a single editor for PHP code and for the JS, CSS and HTML. On top of that, it was completely free and with a very vibrant development community, considering it was first and foremost made for Java development.

NetBeans IDE 10.0 – WordPress Project

At the time, I was more than impressed with what NetBeans can do, even if it was Java application that tends to be large and slow, but compared to other solution, that was not really a problem for me. There were issues with version 7.0, but, it was updated very often, and none of the bugs really caused major problems for me.

When I started using the NetBeans, I usually had one or two websites added as development projects, with a smaller number of plugins I was working on. When developing a new plugin, I used a new project to keep things cleaner. But, over time, that changed, and in one time I had over 40 plugins in active development and maintenance, across 10 or more development projects, all loaded in NetBeans.

NetBeans 8: first major problems

When NetBeans 8 was released in 2014, and at the time, I had a lot of projects I worked on, and NetBeans 8 was much better in handling projects then version 7 was, and even higher memory use was not a big deal.

But, the problems started when more complex JavaScript or PHP code with a lot of shared dependencies was used. NetBeans had trouble tracking what comes from where, and since I used shared library of code in all my plugins, this started causing problems:

  • Scanning for changes on startup could take 5 or more minutes
  • Random crashes during the various lookup procedures
  • Scanning JavaScript for changes could freeze the IDE, making typing impossible, code navigation and auto-complete disabled.

And, the only way to resolve all these issues was to kill the NetBeans process and run it again. And, for a while it would work fine (even for days), and again, would start acting up. There were some updates that made things better, but none of the problems were really resolved, and the whole core engine that deals with code scanning felt completely broken, that I had to disable background scanning for changes, making manual refreshes very problematic at time.

NetBeans 9: Apache Takeover, The Last Hope

I learned to work with all the NetBeans quirks, because I was hoping that Apache takeover would solve some very deep issues NetBeans has. So, I delayed switch to some other IDE, and I stick with NetBeans for few more years.

And, NetBeans 9 was released, that I had to skip, because there was no PHP support yet.

NetBeans 10: Nothing really changed

In December 2018, NetBeans 10, with PHP 7 support was released, and I was happy to switch and see how much better it was. And, to my huge disappointment, somehow, it has gotten worse.

Previous problems where the scanning for changes was freezing the IDE are causing more problems even the option for that is disabled (!) and auto complete in CSS and JS often doesn’t work at all. Sometimes when I start the IDE it freezes while checking projects, with high CPU usage, and only killing the NetBeans process and starting again works (and even then, I might need to do this few times before NetBeans can be used).

And, not that these are new problems, they have been reported as bugs way back when NetBeans 8 was first released, and yet, there is no bug fix that works properly.

On top of that, there are other things that should be working, and yet don’t, like no support for newer SCSS versions. Currently only Ruby version works directly, and that is no longer developed. Some addons made for older NetBeans versions don’t work with new one, and authors have abandoned them.

I understand that Apache transition will take time, and so far a lot has been done, but other then some small changes, NetBeans 10 is 95% the same as NetBeans 8, and with all the change in technologies in use today, that is simply not good enough.

Goodbye NetBeans

And, in February 2019, I started looking for the replacement IDE. I tried few things and landed finally on JetBrains PHPStorm. I will write about it in a separate post soon.

For now, I hope that Apache will make NetBeans into great IDE, but with the current development being done, I don’t see much changing in the next few years.

Have you used (or still use) NetBeans? What is your experience with it?

Please wait...

Posted by Milan Petrovic

Programmer since the age of 12 and WordPress developer since 2008 as freelancer and author of more than 250 plugins and more than 20 themes.

GD Knowledge Base Pro - The knowledge base plugin you have been waiting for

14 Replies to “Saying goodbye to NetBeans”

  1. NetBeans is awesome. And, yes, the Apache process takes time. Really a pity that you’d write this kind of post about it, wow, what a lot of work those people are doing on this project and all for free.

    Please wait...

    Reply

    1. Thanks for the comment. The issues with NetBeans go much further back, it is not about the Apache. And, I used the NetBeans a lot longer because I was hoping Apache will fix the problems, and that has not happened yet. I would like to see the NetBeans fixed, but right now, it is far from usable (at least in my case, where the work involves PHP and JavaScript).

      Please wait...

      Reply

  2. Jannie van Niekerk April 4, 2019 at 13:17

    Apache doesn’t fix anything. Apache is a collection of individual contributors, I’m sure if you join the dev mailing list and explain where your specific problems are, provided log files, etc, they’ll help identify the problem and fix them, too. I’ve also joined the NetCAT program and been able to report issues in that way and got a lot of help.

    Please wait...

    Reply

    1. Unfortunately, the bugs that make the NetBeans unusable for me, have been reported for more than 5 years, and after many attempts, they are still not fixed with the recommendation to disable the whole feature to make NetBeans stable to use, and that kinda defeats the purpose of using IDE for things you need it, and having to disable those features.

      Please wait...

      Reply

  3. Apache is not a company like Oracle or JetBrains. Apache is a foundation where communities work together around projects to identify and fix problems and to scope out and introduce new features. Have you joined in with the Apache NetBeans project?

    Please wait...

    Reply

    1. Thanks for the comment.

      I understand how all this work, but, I have reported bugs in the past, unfortunately, I am not Java developer and I can’t help directly with the development or bug fixing. But, I can’t continue to use the software that is broken for years (and getting worse). This post is about my experience with NetBeans and the features I use. NetBeans is used for different things, and I expect that Java development is in better shape, but PHP and JavaScript right now are not usable for any long term work.

      Please wait...

      Reply

  4. I am a very happy PHP and JavaScript user with NetBeans. For many years. Maybe you can point to the issues you’re referring to here? Right now I don’t see any actual issues being referenced at all.

    Please wait...

    Reply

    1. The only instance I can use it without problems is when there are no shared libraries inside the project, and that is almost never. My plugins for WordPress have shared PHP libraries and some JavaScript, many WordPress plugin might have the same JavaScript libraries included.

      When that happens, NetBeans fails during indexing of the same functions, classes and methods, and it takes too long to scan the code (and often it just freezes), and during the scan process, most of the autocomplete and navigation is not working at all. Older NetBeans (pre 8.0) doesn’t have this problem, all that started with NetBeans 8. But, older NetBeans versions are outdated in support for newer technologies.

      Please wait...

      Reply

  5. Netbeans is indeed years behind in its development, stalled by the move to Apache and what are honestly some legacy issues with the IDE. That said, I’m still using it regularly and I intend to start writing plugins for it to help counteract its deficiencies. We need a solid multi-language FOSS IDE, and for me that has never been Eclipse. PHPStorm is pretty solid, and only really occasionally annoying, but I don’t want to give up on FOSS and go commercial – I want to fix the FOSS.

    Please wait...

    Reply

    1. Thanks for the comment! I would like to go back to NetBeans one day, and this is the first time in almost 10 years that I had to switch to a commercial IDE.

      And, all the issues NetBeans have (and some users don’t experience them, it all depends on the workflow and the type of project, the scope and type of the code) are going back to NetBeans 8 (at least in my experience). The issues I have seems to be limited to JavaScript and to some extent to PHP.

      PHPStorm has a learning curve, but for the two months I am using it, I had zero issues: no IDE freezing, no autocomplete problems, no need to restart it every few hours, no high memory use, and I do have 3 or 4 projects sometimes loaded in the same time.

      I appreciate the time the community puts into NetBeans, and I hope that Apache governance over it would prove beneficial, but, right now, NetBeans is not something I can use and be productive.

      Please wait...

      Reply

  6. You seem unaware that you can exclude complete folders and directories within a project from scanning. For example, there’s no reason to include the node_modules folder in the scanning process and you can simply exclude that in the Files section of the Miscellaneous tab in the Options window.

    Please wait...

    Reply

    1. That never worked for me as it should, and I need these libraries in the project, and I need them to work with autocomplete. So excluding something because IDE is unable to do it properly is not a solution to this problem. PHPStorm uses half the memory NetBeans does and it never had issues indexing anything or resolving duplicated libraries. There are many things I prefer in NetBeans over PHPStorm, but, the basic thing that IDE has to do, for me, in NetBeans is not working.

      Please wait...

      Reply

  7. John Hetherington July 25, 2019 at 09:58

    I have used Netbeans on Linux for many years, I used it to teach Java to Polytechnic students in the days before Oracle got hold of Java and Sun Systems had it. It was a beautiful tool, had a few quirks yes but was productive for GUI apps. I have tried versions 8.0 which was OK, 8.1 and 8.2 not so good, Apache Netbeans 11 is broken and not usable as a development tool on Linux. I am returning to C++ Code Blocks as a viable tool. Oracle and Microsoft have joined forces on cloud development which means far less Open Source will be reliably usable on Linux as their reign continues.

    Please wait...

    Reply

    1. Thanks for the comment, John! I recently tried NetBeans 11.1 for Windows, and for me, it still struggles with few open projects and with large PHP/WordPress projects, so for me, nothing has changed for the better here. It seams that Netbeans focus now is Java, and other languages it supports, are not as supported as they should be. With Microsoft free visual studio, and few other tools out there (some not free, but not too expensive), the outlook for open sources IDE’s is not very bright.

      Please wait...

      Reply

Leave a Reply

Your email address will not be published. Required fields are marked *