Thursday, February 17, 2011

Ruby on NetBeans lives!

The NetBeans team reported that they were dropping Ruby support in their IDE. They also said they were hoping that someone in the community could pick up support. Over the last couple of weeks I have been talking to the NetBeans team about how the community can take over support. I have also been trying to educate myself a bit more in what it would mean to support Ruby in NetBeans. The short of it is: Ruby NetBeans will continue to live and hopefully thrive via community support.

The rest of this entry will explain why Ruby on Netbeans is important and how the community can support this effort. Hopefully, by the time you are done reading this, you will want to help out!

Why is NetBeans Ruby support important?

The truth is virtually every Java programmer on the planet is using one of a small handful of IDEs. The big ones are NetBeans, Eclipse, and Intellij. When a Java programmer decides to look at new language one of the first questions they ask is: Is there an IDE for it? Or...Does that run on NetBeans? JRuby (and Ruby) has quite a bit of motivation for Ruby support in Java IDEs because we see it as one less hurdle for a Java programmer who wants to try out Ruby.

This last paragraph may explain part of the motivation from the perspective of a Ruby evangelist... but it says nothing about the usefulness of Ruby on NetBeans. The editor is great. It has many conveniences like snippets, context sensitive navigation, live debugging, Rails support (2.x), and so much more. As a tool, it would be a great loss for all this work to disappear. As a programmer who spends most of his day in NetBeans, losing Ruby support would be a tragic loss.

A plea for contributors

I work on JRuby full-time. For me, hacking on NetBeans will be an OSS project where I contribute during my spare time. Several other JRuby folks will also volunteer some time under the same conditions: Yoko Harada, Charles Nutter, and Nick Sieger. Don’t be fooled though...you do not have to be a JRuby hacker to work on this project....in fact in the not-so-distant future you might not even need to to know any Java (more on this later).

Another treasure trove of expertise will come from Erno Mononen. Erno was one of the Ruby NetBeans engineers until his departure from Oracle. He makes no promises in how much time he can provide since he will also be contributing in his free time, but he should be an invaluable resource. Even if we only get to occasionally ask him questions.

Also Geertjan Wielenga, who has been helping answering questions about undertaking this community support and also pointing me towards NetBeans training resources has also offered his help.

So we have a few people who are offering to help make this a reality, but we can use all the help we can get. If you are interested in helping you should join the dev mailing list dev AT ruby.netbeans.org (instructions on how to access mailing: http://wiki.netbeans.org/RubyCommunityInformation). Introduce yourself and your interests in helping out.

Infrastructure

We are going to continue to leverage as much of NetBeans infrastructure as we can. I mentioned continuing to use their mailing lists. We can continue to use their issue tracker. The hg repo will still remain the normative source for what gets released. However, in an attempt to make things easier to develop, we plan on mirroring the hg repo on github.com. Rubyists are huge git fans. Adding a git repository will lend a lot more visibility to the project. The git mirror has not been set up yet because we haven’t figured out how much of NetBeans should be mirrored.

By staying on NetBeans infrastructure it will be an easier path to get free continuous integration support on http://deadlock.netbeans.org/hudson and it will also make it simpler to integrate into NetBeans AutoUpdate process.

Stay tuned for announcements about the upcoming github mirror. At the same time we announce the mirror we should have a simplified document on how to build Ruby NetBeans.

First steps

0. Simplify the Build process so it is trivial to get started

Let's face it...cloning 1.2Gb to compile a module is a barrier to entry. It is possible to compile without cloning all of NB source, but specifying the 10+ Ruby-related projects you need to clone is a little confusing (to me at least :) ).

1. Restart continuous integration testing on http://deadlock.netbeans.org/hudson

2. Mirror hg source on github.com

This will be easy once we nail down simplifying the build process.

3. Unbundle JRuby source

Currently, a full version of JRuby’s source gets checked into the repository and then it gets patched. The delta of things patched is very small and we should be able to eliminate the need for patching.

We will still depend on JRuby as a jar (see next step).

4. Use JRuby embedding support to write portions of Ruby NetBeans in the Ruby language

All people interested in Ruby NetBeans support already know Ruby. Not all of them know Java. Having strategic portions written in Ruby will help improve the amount of contributions we get.

We shouldn’t go hog wild about replacing things which work already, but this is a good opportunity to implement new things in a way which will allow Ruby hackers to contribute to Ruby NB.

5. Re-prioritize issues and get volunteers to work on them

There are currently 600 open issues. Many of these will need to be re-prioritized based on the level of support we can provide.

Here are the some of the important ones:
  1. Rails 3 support (only Rails 2.3 current supported)
  2. Bundler support
  3. 1.9 syntax
  4. Crashers
Personally, I plan on hacking on 1.9 syntax first since I have the most experience with this task and Ruby 1.9 is becoming too important to not support it.

People can come on the dev mailing list and talk about what they want to work on.

Conclusion

Ruby on NetBeans is already an impressive project, but like any OSS project it needs maintenance and care. If you think Ruby on NetBeans is important and you’re thinking about helping...please do. Even if you know nothing about NetBeans internals or you have never contributed to an OSS project before: Jump in head first! Getting involved in OSS is always a great learning experience and you will be a better person for it.

32 comments:

  1. Tom, this is great news for both the Ruby and NetBeans community! I wish you best luck, and trust that you and the other contributors will be able to provide a great development tool for JRuby/Ruby/Rails on NetBeans. If you need any help with build infrastructure, project hosting on netbeans.org, update center etc., let me know and I will try to help as much as I can.

    ReplyDelete
  2. I love NetBeans for PHP, and I've been dabbling in Ruby, and was disappointed that my favorite IDE was abandoning it (but understood how much of an undertaking it must be!). Seems like a lot of "rubyists" use TextMate to develop, which seems like a HUGE impediment to productivity if you do not have the entire language/framework libraries/syntactical structures/build process/etc... completely memorized. I'm looking forward to continued NetBeans support for Ruby (and an upgrade to Rails 3!). Thanks so much for taking a lead on this!

    ReplyDelete
  3. That is great news! I believe in a future of Netbeans with JRuby and appreciate your support. (I think ruby is even more important than PHP)

    ReplyDelete
  4. Great news and good luck.

    ReplyDelete
  5. I love using Netbeans and Ruby. Good luck and I hope we can together keep the IDE a great one for Ruby. I hope there's some work to make sure the debug gem(s) work, too, after Ruby 1.9 and Rails 3.

    ReplyDelete
  6. I will contribute to keep this thing alive !!

    ReplyDelete
  7. While I am pleased to see Netbeans support continue, as a debugger is crucial at times, I just won't be using Netbeans often until Netbeans decides to implement reasonable emacs bindings. The current Netbeans emacs binding is just pathetic.

    ReplyDelete
  8. This is great news! I have a very large Rails project developed totally in Netbeans over the last 4 years. Will try to help as much as I can. Is there any 4.0 support planned? It may make sense to leapfrog to that.

    ReplyDelete
  9. Is this post still accurate or is this effort dead?

    ReplyDelete
  10. Aw, this was a very nice post. Taking a few minutes and actual effort to make
    a very good article… but what can I say… I put things off a whole lot and don’t
    manage to get nearly anything done. 토토

    ReplyDelete
  11. 카지노사이트 Excellent write-up. I absolutely appreciate this website. Keep writing!

    Feel free to surf to my homepage ...

    ReplyDelete
  12. I like this website very much, Its a rattling nice position to read and get information.
    온라인카지노

    ReplyDelete
  13. Very informative blog, This blog is very easy to understand when compared to other blogs. 토토사이트

    ReplyDelete
  14. Nice sharing, Thanks for sharing this type of article
    슬롯머신

    ReplyDelete
  15. Thanks for sharing such great knowledge with us. Looking for some more information from your blog. 카지노

    ReplyDelete
  16. Great post. I was checking constantly this blog and I'm
    impressed! 토토

    ReplyDelete
  17. Nicee..Blog.. I feel strongly about it and really enjoyed learning more about this topic. 카지노사이트

    ReplyDelete
  18. I’m going to read this. I’ll be sure to come back. thanks for sharing. and also This article gives the light in which we can observe the reality. this is very nice one and gives indepth information. thanks for this nice article. เว็บแทงบอล

    ReplyDelete
  19. I read all the posts on your blog during the vacation. I can’t get enough of it no matter how many times I read it. Abogado DUI Chesterfield VA

    ReplyDelete
  20. MyTranslationServices.com is a leading provider of Romanian Translation Services in the UK. With a team of experienced and skilled translators, we are dedicated to delivering accurate and high-quality translations for businesses and individuals. Whether you need legal documents, marketing materials, or website content translated from English to Romanian or vice versa, our professional linguists ensure that the meaning and nuances of your message are effectively conveyed. Trust MyTranslationServices.com for all your Romanian translation needs in the UK.

    ReplyDelete
  21. Great to hear that Ruby on the NetBeans is still alive and kicking! Your post gives hope to Ruby developers who prefer the NetBeans environment and free thesis topics. I look forward to exploring its features and updates.

    ReplyDelete
  22. This comment has been removed by the author.

    ReplyDelete
  23. a good article. Developers that like a simple and intuitive IDE can consider NetBeans because of its well-known for its user-friendly interface and ease of usage.
    divorce laws in virginia

    ReplyDelete
  24. With the increasing complexity of online courses, the demand for Do Your Online Class. services has grown, as students often feel that they cannot meet the stringent requirements on their own.

    ReplyDelete
  25. This is fantastic news for the Ruby on NetBeans community! The commitment from both JRuby and former Oracle engineers is truly inspiring. It's clear that Ruby support in NetBeans is vital, New Jersey Expunge Order of Protection and the outlined steps are a roadmap to success. Kudos to everyone involved for ensuring this valuable tool continues to thrive. Count me in; I'm excited to see this project prosper! New Jersey Domestic Violence Act

    ReplyDelete
  26. Amazing, Your blogs are really good and informative. I got a lots of useful information in your blogs. It is very great and useful to all. Adding a git repository will lend a lot more visibility to the project. The git mirror has not been set up yet because we haven’t figured out how much of NetBeans should be mirrored Truck Accident Lawyer Virginia. Keeps sharing more useful blogs...

    ReplyDelete
  27. This is such exciting news! The fact that Ruby on NetBeans is still thriving is fantastic. línea de tiempo de divorcio no disputado de virginia. Thanks for sharing this blog!

    ReplyDelete
  28. new jersey divorce law
    "Enebo Blog: Illuminating the world of software development. Explore cutting-edge programming insights, tech tutorials, and industry trends. From Ruby on Rails to Java, delve into diverse topics catering to developers of all levels. Join our community of coders as we navigate the ever-evolving landscape of software engineering."


    ReplyDelete
  29. Amazing, Your blogs are really good and informative. I got a lots of useful information in your blogs. Open Door, and the guy who turned videos of his toddler into action movies. This is has been a breakout year for my blog and I couldn't have done it without all of you.
    "Ask Wonder" is a platform that allows individuals to earn money by conducting research online for clients. Users can sign up to become "research analysts" and respond to questions posed by clients, which can range from market research to gathering data on specific topics. The platform provides access to a wide range of resources and tools to assist in conducting research efficiently.https://www.wpgio.com/ask-wonder-review/

    ReplyDelete