main mozilla tech

Slides from eLiberatica 09 talk

Today I had a pleasure to give a talk at eLiberatica 09.

It was one of the most complex and most challenging talks I ever had to give. It was about the Mozilla. It was about who we are, and how we try to describe ourselves. About how we think of ourselves and the challenges we face.

The rationale for doing such talk is to do what we have to – to over-communicate. To manifest ourselves and explain ourselves to people who care about the web. To rephrase some questions that people pose – about the goals, about how to measure a success, about how to make sure we stay meaningful while staying true to our mission.

Explaining Mozilla and explaining the kind of semantic space in which we brainstorm these days is an extremely complex goal. It’s harder than speaking about new experiments and features that we work on. It’s even slightly against what people want to hear about. But I believe it’s vitally important. We have to express ourselves and explain ourselves and I decided to give it a try at eLiberatica.

Bonus points goes for the fact that I wasn’t speaking in my native language, and also the audience listen to such a complex talk in a foreign language.

Despite all of that, I believe it went well. I feel thankful that people bared with me through all those topics, and I hope the deck may be useful for other speakers willing to mix and mesh it 🙂

I definitely recommend a keynote version for the best experience, but pdf dump provided for those who don’t use keynote:

main mozilla tech

Silme 0.5 now at easy_install

Adrian Kalla added Silme 0.5 to pypi repository so that you can download it and build dependencies in the python style.

It can’t get any simpler than:

easy_install silme

Also, if you missed it (I know you did), here comes the very first documentation. It comes out of doxygen (which is probably the best of the worst choices for python docs) but it works and it’s there for your convenience. 🙂

If you happen to be a master of doxygen and you know how to make it work better, contact me pls!

main mozilla tech

MCT: Style guide

It’s been a while since the last update on MCS but things were moving on and it’s time to catch up with the progress in the project.


Today, I’d like to introduce you to a new Mozilla Community Theme style guide. MCT Style Guide is a document that explains the design decisions made by the theme authors that allows people who use the theme to extend it following the original concepts and keeping their new elements in sync with original one.


Mozilla Community Theme was created to give us a fresh theme that can make it easier for communities to set up a professionally looking website without having to look for a designer or crafting something on their own. Three months after the release, MCS is becoming a popular option among opicture-2ur communities when they’re making their choices with regard to the website. We like to think that the reason is because we offered maximum freedom and flexibility with this set, letting people do what they want, while providing high quality of the design itself.

One element that we did not cover very well until today, was how to extend the theme. How to move forward. Not only modify what we gave you, but also add new elements, theme new websites, or T-shirts, or posters… That’s where the Style Guide hits.

Style Guide

Style Guide is a short book that presents the concept choices together with list of modification options that, in the theme author’s opinion, will match the theme and let you keep the unified look and feel no matter where you’ll go.picture-3

What’s exciting about it, is that it opens communities to a new level where they have all the tools and resources that usually professional web agencies have and they can develop their skills and get accustomed to the new concepts. While working on our hobbies, we’re getting real experience that translates directly into our portfolio.


picture-5This Style Guide lets you dig into:

  • color palettes
  • typography decisions
  • layout and grid models
  • branding options
  • methods of preserving space and light between text blocks that influences readability of the text
  • texture options that influence how the website looks
  • and others…

picture-4We hand this to you, so that you can experiment and develop the theme further or just customize it to your needs. What’s really important and exciting is that as all other parts of this project, the style guide is open! You can download Indesign document or editable PDF document and hack the Style Guide itself.

I’d also like to use this moment to thank Tara Shahian and Seth Bindernagel who have worked together with the theme authors on this 1.0 release of the guide. 🙂

So, grab it here and… we’re accepting patches 🙂

main mozilla tech

Silme 0.5 released

silme logoProjects need releases. It’s important. It’s like a birthday for a project – they get a milestone to mark the progress.
On the other hand we have developers. They need unlimited time and no deadlines. When one meet another, we have an interesting arm-wrestling battle between those two, but ultimately one has to obey to the Oath of the Bazaar, if you know what I mean.


So, here we are, Silme was asking for a release for long enough and I postponed it over and over so it’s time to make the cut. Today, I’m proud to announce the very first official release of Silme – python l10n library. Silme has been announced to long time ago, and since then it has been continuously developed in a small, but quite interesting project structure with support from Adrian Kalla, Stefan Plewako, Ricardo Palomares, Staś Małolepszy and management guidance from Seth Bindernagel.

It’s very, very hard to explain Silme concept to those who never tried to work on localization development.

Let me try: It’s like a DOM API for localization.

Works? Probably not… Well. Let me try the descriptive way. Silme is a toolset for a developer who wants to work on localization tools. It can read localization files, it can write them, it can modify them, it can search through them, it can process them, merge, split, localize and help you get some statistics out of the localization files. It probably can juggle them, although support for this is rather experimental.