A look at the localize.drupal.org numbers, how are we doing?

We started localize.drupal.org back in August 2009 with the intent to provide a more user friendly tool for Drupal interface translators. Many people were frustrated in the CVS account application queue, in the module issue queues trying to get .po files committed, on their own system attempting to generate new translation templates, and so on. Therefore we attempted to automate that all in localize.drupal.org's service.

Initial uptick of translation teams was definitely impressive, and the growth in number of teams slowed down a bit. This is not surprising, the team that were active before are almost all on the central server now and we even enabled lots of new languages to start off. We are at 74 teams now. Let's see some of the details!

Translation string contexts in Drupal 7 - developers take note

One of the great advantages of Drupal translation is that the modules and themes share the same text space. So if a module has 'Home' translated, it does not need to be translated separately in the other 23 modules you use on your site. One of the disadvantages of that is that Drupal does not know/care about the module the string is coming from, so if you have short strings which can mean different things based on their use, Drupal is not capable of translating them differently. At least not until Drupal 7!

Your language not yet on localize.drupal.org? Did you forget about your request?

Localize.drupal.org now has 74 translation groups, which is an amazing feat! Thanks to every contributor who grows this pool of Drupal translations day to day. Your language is not there yet?

Drupal.org redesigned, how will subsites fit in?

Yesterday, the long awaited drupal.org redesign finally launched. It took multiple sprints (in person and virtual), progress stalling, and the Drupal Association stepping up to fund dedicated (and amazing) people full time to the job to get it complete. It is a huge undertaking. And it is not ready yet. One of the main objectives of the redesign was to make the "drupal.org universe" so to speak, easier to navigate. There are numerous subsites such as http://association.drupal.org, http://groups.drupal.org, http://api.drupal.org, etc, many of which are a mystery for people. By bringing these to the forefront, more visitors will be aware of the vast amount of community space and resources available. How does that work?

If you now go to http://drupal.org, log in and click "Your dashboard", you'll see a set of customizable and reorganizable blocks. That's quite nifty. However, for this post, the navigation on the top of the page is even more interesting. It lets you access your posts, your issues, etc. And also your groups! Hm. But that's on a different site! Well, that is not a problem for the redesign, since you just move to the other site, and the theme and navigation should stay intact, as if you did not go to any other site. The drupal.org centralized login system will log you in, and you can manage your groups just like you'd do if they were on the same site. Well, this will not work just yet, since groups.drupal.org is still to launch the redesign, but that is the concept.

Let's see a working example then. Now go Download & Extend, the new downloads and projects space on drupal.org. This page has various tabs for different ways to extend Drupal. For example, it has a list of some language translations as well as a translations tab. Now, if you click either of those, (surprise), you are taken to a dedicated subsite for translations, http://localize.drupal.org/. You should not notice much change, because this site already runs the same theme and has the unified navigation (which by the way we set up with a shared Drupal module to all the subsites). The only thing you'll miss is the unified cross-site search box, but we are on it to make it work hopefully soon.

What does this mean is that drupal.org is becoming one huge site, and the particularities of the different subsites will matter less. This will allow us to maintain separate functionality on subdomains (a new one planned is http://docs.drupal.org), where we can have purpose-specific tools and maintain our own update schedules. Maintaining more smaller sites is useful for the future of drupal.org, since we can tackle major redesigns and incremental improvements much easier that way.

Of course it is a huge job to make all the subsites not just look like the same on the surface but use the same visual metaphors, similar internal navigation, etc. In this sense, existing sites need detailed attention beyond merely re-launching them under a new theme. Also in the plans are blocks for the dashboard from subsites and other goodies. Hope you'll like the redesign and how we are unifying the user experience to make it easier for you to move around, collaborate and contribute.

Ps. This is yet another step in phasing out of the drupal.org translation projects as the main source of translations. We are moving forward on that path one step at a time.

You, yes, you can contribute to Drupal 7 translations

You might have heard that Drupal 7 beta1 was released about a week ago. Yay! Of course due to the wonderful automated nature of localize.drupal.org, the beta was available for translation within an hour on our user interface. The downloads page also caught up within a day (while some files were genereated earlier, our download page is cached per project daily). So you can download and try out Drupal 7 with up to date localizations. But most of those localizations are still in progress and not complete yet.

You can help, and it is going to be very easy! I prepared a beta release of Localization client for you to contribute easily and to top it off, the beta1 release of the Localized Drupal profile bundles it preconfigured to make it extremely easy for you to participate. Just follow these steps to start to contribute to the Drupal localization on localize.drupal.org.

1. Join a translation team on localize.drupal.org

First you should create an account on localize.drupal.org (have a drupal.org account that is logged in at least once on localize.drupal.org). If you see "Logged in as ..." in the lower part of the blue header on the site, you are logged in. Great. Now you'll need to find the language team you'd like to contribute to and join them. Look at the language list at http://localize.drupal.org/translate/languages and pick the desired language. The overview page for the language (if you click the language name in the list) will show some guidance for contributors. It is useful to look at these. You can join the team via the join link at the bottom of the gray sidebar. Once you joined, you'll be able to submit suggestions for the team moderators to read through and approve / quality control.

2. Grab and install Localized Drupal

Localized Drupal is a fresh and small Drupal distribution that is aimed at helping you easily install Drupal localized out of the box. We think of this as an ideal download for people who'd like to install Drupal localized from the gate in a simple way. Just look for the latest version built with Drupal 7 to download. You should install this as usual for a new Drupal core installation, but make sure to pick the Localized Drupal install profile as shown on our illustration. This will result in a list of languages showing up in the installer. Pick the same language that you joined above. Drupal will install with a user interface mostly in that language (depends on the state of the translation) and at the end will download and import the full Drupal core translation from the drupal.org servers.

Basically, at the end you are left with a localized Drupal installation to the degree that the team for the language is complete with the translation already. Now comes your part to help!

3. Set up your API key

While Localized Drupal for Drupal 7 will set up the localization client to share all translations with localize.drupal.org, for attribution of the contributions, we need to associate the submissions to you.

Because the submission works in the background and we would not like to maintain a copy of your drupal.org username and password on your Drupal site for security reasons, localize.drupal.org generates secret API keys for each participating user, which you'll need to configure on your Drupal site.

A message showing at the end of the installation will help direct you to set this up, or you can just go to your user account edit form directly. A link on the localization API key field will lead to your API key on localize.drupal.org which should be copied as-is to your profile.

It is important that you are already a member of the desired translation team on localize.drupal.org, because beyond the authorization provided by this secret key, permissions also apply to your submitted suggestions. Being a member of the team permits you to submit suggestions for the given language.

4. Translate missing pieces

The localization client is a little tool at the bottom of the browser window, which you can open up on any page of your site, where you see untranslated interface components. Just click the translate text button, and a pane will open up with a listing of strings displayed on the page, a prominent area for a source string and a translation text field.

Strings on the left side which are displayed on a white background are not yet translated (green ones are). If you click one of those strings, you'll be able to provide the translation and save to your local system. You can also submit new suggestions for existing translations if you believe they are not right.

Since the install profile set up sharing with localize.drupal.org and you provided your API key, this submission will also be saved to localize.drupal.org and your suggestion will show up there for moderation.

Bingo! Just by trying out Drupal 7 with your localization, while noticing missing pieces, you can chip in and contribute in small pieces to the community. No need to know about the source code, or patching or other pieces that developers are usually working with.

Finally, let me repeat that joining a translation team is best done by reading the guidance provided for contributions, so you are familiar with the translation style and vocabulary used. You can be most effective with your contributions if you are aligned with the rest of the team.

Thank you for participating and happy contributions!

Ps. If you already have a working Drupal 7 setup, just install Localization client, set up a language at Configure » Languages, import the .po file for your language that you download from http://localize.drupal.org/download and configure sharing on the Configure » Languages » Sharing tab. Yes, these are all done by the Localized Drupal profile for you, if you start from scratch. Finally, don't forget to provide your API key as explained above.

"This is all nice, but how do I get stuff out?"

This is the question I got at many events where I presented about localize.drupal.org. We've just rolled out support for suggestion exports for translators about a month ago to make quality control and management easier, but that does not help people much who are just looking to download what's available.

I've also announced about three months ago that translation downloads were becoming stable and continually generated in a nice pace. However, the usability of those downloads left a lot to be desired. When looking at project pages on the site, you were shown a bland list of links to major Drupal versions the project was compatible with which all led to a long list of filenames on an FTP browser frontend. Also, some files being months old looked shocking given I've told you the downloads are now stable and up to date.

New downloads page

Well, as of yesterday, some nice big green buttons landed on several areas of localize.drupal.org which all lead to a new downloads center. If you are on the front page, or a language page, you get to the initial download page which shows Drupal core translation downloads. Project pages however prefill the project selection for you appropriately, so you get to go to the downloads respective for the project. Drupal.org project links were also updated to point to these paths.

We actually have some pretty good data about these translation files that was not available on the plain FTP browser. While some files might be as old as three or even five months, we check the translations for updates and sometimes conclude we don't need to generate new files. Unfortunately some translation teams are not (yet) too active, so it can easily happen that months old files are the most up to date possible. So when on the download page, you can hover over the download links and get some additional data like file size, file date and the last up-to date check time.

New downloads page

Finally, while this was about giving more visibility to downloads, we really love those, who actually contribute. So when you visit the download page for a project, the contribution form will be prefilled with the project, letting you to jump to the project's page on localize.drupal.org directly, or even hop to the translation interface if you also select a language. Contribute and feel the Drupal love!

Ps. Usability feedback on the process is more then welcome. While I think we have far better then what we had before, it can definitely do with some improvements. Also, do not forget to check out the Localization update module to automate downloads, so you don't need to do it manually. A huge timesaver!

One year of localize.drupal.org

Three days ago on the 27th of August, Drupal.org's localization service, localize.drupal.org held its one year anniversary. It is worth a look back and a look forward to understand how far we came and what kind of tasks are ahead of us still.

Drupalcon Copenhagen multilingual coverage, Jacob Redding talks Localization server

I just had the chance to listen to the latest DrupalEasy Podcast published earlier this week, where Ryan Price and Mike Anello interview Jacob Redding on his work, book, and Drupal's general greatness in many fields.

New suggestion export and deeplinking features on localize.drupal.org

We've launched the Drupal.org redesign theme on localize.drupal.org about six weeks ago, and the reception was great. While other subsites like api.drupal.org are also in the process to migrate to this theme, we could pioneer some fixes and get them into production. We keep tweaking the theme on this site and get fixes in based on your feedback.

Hello Drupal.org redesign, here we come

Mark Boulton Design was selected to lead the drupal.org redesign efforts almost two years. While they went on dutifully with the process listening to feedback from the community and designing a modern home for all things Drupal(.org), and the deliverables were in on time, the actual implementation (which was on the drupal.org community in general) lagged behind a bit. I've personally been to multiple sprints where we established the base for the redesign infrastructure on many levels. The big problems are not around applying a different theme to the drupal.org site but reworking the structure and some sections for the redesign. The latest sprint which I was unfortunately unable to attend was in San Francisco, where in a surprising turn of events, it was set that drupal.org subsites should push forward with implementing the new theme and concepts even ahead of drupal.org. After all, we do not have big rearchitecture plans for these sites, so we can sidestep the biggest tasks which keep drupal.org behind. So came http://association.drupal.org/ up in the new theme shortly after. This got me inspired to get deep down into applying the theme to http://localize.drupal.org/ as well.

The new Localize.drupal.org

To see how far we are, I've put the new theme under localize.drupal.org for a test drive a few weeks ago, and it was not looking nice. Turned out that some developments pushed it away from the underlying navigation-sharing infrastructure we built earlier. So I worked on getting those advantages back and making all the shell of the theme work. Then came putting in the localization server pieces to the right places. This mostly involved making some obscure custom page elements actual blocks to put them into the right place with the new theme. I believe this helped push both the theme and the underlying navigation-sharing goodness to get into a better shape for use on other subsites in the hopefully not too far future.

Finally today was the day to finish it all up, fixing some odd issues and switch over to the new theme for your enjoyment. With this, we join the Drupal Association site in adapting the new theme and hope to provide you with an increasingly integrated experience as other subsites adopt the same theme and shared navigation structure.

Drupal.org redesign, here we come!

(Note that anonymous visitors might get half-baked cached pages while the caches are refilled with all the new pages. Let us know if/when you find issues with the new theme via the usual means.)


Subscribe with RSS Subscribe to RSS - Drupal planet