How to Translate 400 Pages in 1 Month

Lest this feat pass by unnoticed, Heiko's 400 page "NetBeans Platform 6: Rich Client Entwicklung mit Java" has been translated into English... in the space of one month. (Update: It has also been published and released!)

Traditionally, book translations take a very long time because the initial enthusiasm with which the translators begin falters as the time-space-continuum intersects with it. Putting it more prosaically: "one tends to get bogged down". That, in a nutshell, is where book translation projects slowly peter out into nothingness. Realizing that, the only real thing you need to do is preempt that from happening. That's all! Avoid getting bogged down.

Based on that, here are my personal tips and tricks for translating a book, based on this very successful first experiment. Yes, this was the first time that this approach has been taken (at least by the translators involved in this project) and, regardless of when the actual translated book is published (which is unfortunately out of my hands at this point), it can be said without any hesitation that the translation project itself has succeeded. That is, the texts that were German one month ago are English today.

So, here are the tips for getting a book translated, fast:

  1. Set a goal and stay focused on it. The goal was easy to set because we wanted the book to be available in English by JavaOne. That meant getting it translated as quickly as possible. Given that JavaOne is in June and the thought of translating it came up in February, we didn't have much time. So, one month turned out to be all we had. That was the goal. Translate it all in one month. Everything had to then bow to that time schedule, no excuses permitted.

  2. Create a process and keep it simple. Wiki to the rescue. We created a very simple process and used no complex systems at all. Forget CVS. Forget overengineering. Forget any kind of engineering because the time you spend creating and maintaining it could MUCH better be spent in translating the texts. (Those processes are really nothing more than excuses for procrastination.) Here's everything we had:

    Simple statuses, clear assignments, with an overview that is so transparent that a child could understand it.

  3. Assemble a team. No way are you going to do this on your own because of the potential of getting bogged down on day 3 (or earlier). Fortunately, the interest in the NetBeans Platform is very high, and growing all the time, so finding people interested in translating a chapter or two each was easy. Also, create a mailing list and get everyone communicating, sharing thoughts, asking questions when stuck, etc, and build up some kind of common terminology list. Ours is here:

  4. Maintain momentum. Someone's needed to continually harass everyone to keep to the schedule, in a cheerful yet insistent manner. (That was my role.) Problems are going to occur along the way, whatever you do to avoid it, but the thing is to recover as quickly as possible and continue pushing on quickly and efficiently. In our case, the biggest error was that I forgot to put several of the translators onto the mailing list, so several were unaware of the deadlines and so on. Doh! But, once that's discovered, all you can do is be cheerful about it and keep pushing onwards, maintaining the momentum and not getting bogged down. That also means asking people's status two to three days BEFORE the next deadline, so that you know up front where the problem areas are likely to be. Also, deadlines kept changing all the time as we were looking for publishers at the same time as translating and each publisher had different deadlines and we didn't know until late into the game which publisher we'd go with! Staying agile always is the only solution.

  5. Be encouraging always, but be prepared to take over when the situation calls for it. That's part of the previous thing, but most important of all. Keep informing people where things are at and keep being encouraging but when it becomes clear that one or two chapters are continually not performing according to the schedule, simply take over that chapter, hand it to someone else, or do it yourself as facilitator, because of point 1: i.e., the time schedule is more important than anything else.

And, at this stage, we've quite simple done what we've set out to do. We started the project on about the 10th of February and on about the 10th of March (give or take a day or two on both dates) we had completely translated the book. Plus, it had been edited, thus ensuring that each chapter has the same general style, despite having been translated by different people. And, not only that, but Heiko updated the translated chapters to 6.5, so that the code and the texts are now relevant to 6.5, which is where we currently find ourselves in terms of the NetBeans Platform APIs. Of course, 6.7 is around the corner, but those APIs aren't all that different, not enough to impact the content of the book significantly if at all.

Now, here's hoping we'll have it available at JavaOne. There's still many hurdles to cross, but the basic requirement has been met: the original German texts are now all in English. And guess what, several of the translators are asking to be working on other translation projects in the future! So, anyone out there want a technical German book translated into English? There's a whole team here waiting to discuss ways in which they can help you out!

And, now that the texts are available in English, does someone want to translate them into French? Spanish? Russian? Swahili?


Hi Geertjan, are you serious about translating it into French? If yes, you can contact me.

Posted by Vincent Cantin on March 17, 2009 at 09:07 PM PDT #

13. Persistence
13.1 Java DB
13.2 Hibernate
13.3 Java Persistence API

14. Web Services
14.1 Creating a Web Service
14.2 Using a Web Service

There is a problem confused me, the 13 and 14 chapter is not associated NetBeans Platform API.

Posted by hantsy on May 07, 2009 at 12:20 AM PDT #

Hi hantsy, that's true. However, those topics are very common to NetBeans Platform applications.

Posted by Geertjan on May 07, 2009 at 08:52 PM PDT #

Post a Comment:
  • HTML Syntax: NOT allowed

Geertjan Wielenga (@geertjanw) is a Principal Product Manager in the Oracle Developer Tools group living & working in Amsterdam. He is a Java technology enthusiast, evangelist, trainer, speaker, and writer. He blogs here daily.

The focus of this blog is mostly on NetBeans (a development tool primarily for Java programmers), with an occasional reference to NetBeans, and sometimes diverging to topics relating to NetBeans. And then there are days when NetBeans is mentioned, just for a change.


« July 2016