JRebel time-savings

I’ve been using JRebel for little more then a month now on the yellow pages project. It think it’s safe to say it saves me about a day of waiting for deployments in a 30 day time frame.
UPDATE: I forgot to mention, on those 30 days I worked only 12 days. I think JRebel stats don’t take that into account so it’s more like 2 days in 30.

In the previous post I wrote that the actual time savings is probably a bit less because you can do other stuff. But during Devoxx Joachim claimed ‘you safe more then JRebel shows you’. And you know what, he’s right.

What happens without JRebel?

You deploy, restart server. During waiting time you check email or twitter or stare outside thinking … (fill in what you do). This means you get distracted from your ‘coding flow’. You get distracted more often then every 25 minutes.

What happens when JRebel is active?

You don’t deploy, JRebel does that for you when hitting a page that has changed Java code behind it. This means you don’t start reading email or twitter or … Hence you don’t get distracted and can stay in your ‘coding flow’. You don’t have to refresh your memory every time you turn back towards your IDE to pick up where you left before deploying and reading email or …. Consequence: you can keep writing code and don’t get distracted, most likely resulting in better code.

JRebel Rocks

After working for iText for nine months, I’ve now turned back to consultancy and the web application world.

The web application I’m working in is rather big and redeploying takes time. Luckily the JRebel guys were so friendly to offer me a 3 month license. I hope this three months is enough to convince the guys at my current job location that investing in JRebel is really worth it’s money! (1 week should be enough to convince them, look at the time savings for 2 days down here)

Look what JRebel did:

Over the last 2 days JRebel prevented
at least 79 redeploys/restarts saving you about 3.2 hours.

Otherwise:

Oct 17, 2011 11:44:56 AM org.apache.catalina.startup.Catalina start
INFO: Server startup in 210210 ms

Of course during the time of restarts/redeploys you can do other stuff, thus the 3.2 hours is not really the saved time. ( I would say 1.6 would be more realistic.)

What does JRebel do?

JRebel reloads the changed classes and files inside your container. Thanks to this you don’t need to restart and/or redeploy for every change you make. You can instantly see what changed. It even watches your spring configuration, logging configuration, your defined properties files and more for changes and applies the changes to your environment without the need to restart.

I can only say: “Once you go JRebel you never want to go back without it!”