Dec 052012
 

One of the relatively new features on MDN’s Kuma wiki — and one that’s still a work in progress — is the Revision Dashboard. This dashboard presents you with a list of the most recently changed articles, and lets you review those changes. Although the dashboard isn’t yet linked to from the UI on the MDN wiki, it’s there. We’ll add a link to it soon; we have some UI decisions to make first.

The dashboard page consists of three sections: the filter section, the revision list, and the revision diff.

Filters

At the top, there are filtering options.

Screen shot of the filter list

You can choose to filter by locale, if you’re interested only in changes in a given locale. By default, you get all locales, but often you’re only interested in changes in your language (or in English if you’re looking for new stuff to translate). In addition, you can filter to find recent changes for a specific user. You can specify these filters in the URL, as well. For example:

Revision list

The revision list is (surprisingly enough) a list of article revisions. Each row in the list corresponds to one edit to an article. The article’s locale and title are listed, as well as the date of the revision, the username of the person that made the change, and any comment they added when saving the article.

Screenshot of the article list

Clicking on a revision in the list displays the revision’s diff and additional options; with these, you can revert a change (thereby making the version of the article prior to the selected one current), view the page, open the page in the editor, or view the page’s complete history.

Clicking on an article’s title will open that article so you can read it in all its glory. Clicking a username filters the current list to only show changes made by that user.

Revision diff

After you’ve clicked on an article revision, the Revision Diff area shows a diff of the HTML, so you can see what changed in that revision of the article.

Screen shot of the diff area

Viewing the actual article may be handy when reviewing more complex diffs, since it can be hard to gauge what exactly changed when looking at the raw HTML source.

Expect change!

The revision dashboard is undergoing ongoing development, so expect it to look different from time to time. In fact, I’m already seeing mockups of it looking rather different (and better!) than this in several ways. But the core functionality is there. Expect change, but it’ll be great change!

 Posted by at 11:44 AM
Dec 052012
 

We did a second push of the Kuma code to MDN last night to pick up a few bonus changes!

The “sample finder”

The biggest new feature is the addition of a new button has been added to the toolbar to let you insert an <iframe> for any code sample from anywhere on MDN. Simply click the Insert code sample iFrame button in the toolbar. This will present you with a dialog box like the following:

You can choose any section in the current document from which to pull sample code (which comes from the <pre> blocks inside that section). You can even choose to pull the sample from a different article entirely! This lets you reuse samples, share bits of code across pages, and so forth.

But wait, there’s more!

We have a few other updates, too!

  • One of the fixes from earlier yesterday, to set minimum widths for columns in the revision dashboard, didn’t actually get picked up in the first push. It did, however, in the second.
  • There have been more updates to the copy for the February Dev Derby.
  • We reverted some of the changes to the Persona login, because the change to using the new API was not as simple has we’d been led to believe.

We continue to drive ever onward, forward, and upward!

 Posted by at 11:26 AM  Tagged with:
Dec 042012
 

Today, we pushed another update to the Kuma platform that powers MDN. We have an assortment of tweaks and clean-ups today, so let’s dive in and take a look!

  • The HTML <time> element was being treated as a block element instead of as an inline element by the editor. This is now fixed.
  • The page.subpages() KumaScript function now returns the subpage list sorted alphabetically.
  • Columns in the revision dashboard have minimum widths now, to help prevent some awkward wrapping issues. It’s not perfect yet, but is much improved.
  • The Persona authentication code has been updated to stop using some deprecated routines.
  • Text describing prize information for the Dev Derby has been updated.

In other news (sort of), it turns out the revision dashboard was opened to the public a while back and nobody told me. I’ll be blogging about how to use it shortly!

 Posted by at 4:43 PM  Tagged with:
Dec 032012
 

The Mozilla Developer Network (MDN) is (and yeah, I may be a little biased here) one of the greatest online resources for Web developers you’ll find online. We’re constantly writing away, trying to make it better, and if you haven’t seen me (or one of our other team members) out there trolling for more people to write documentation, you’ve probably not been paying attention. Which is fine — because maybe you’re not much of a writer, or you prefer to hammer away at code.

As it turns out, there’s more to MDN than writing prose explaining how things work. Here are a couple of things you can do to help out if you’d like to make MDN better but find writing in languages other than C or JavaScript tedious and frustrating!

Make the documentation platform better

MDN uses our very own, open-source, Kuma wiki platform to power its documentation. We’re hard at work to make the software better, with our fabulous and hard-working development team pounding out code at ludicrous speed.

That said, however, there are plenty of things on our development team’s to-do list, and some help is always welcome. In addition, maybe you have an idea of your own!

The Kuma code is available on Github. Feel free to pull it and see what you can do. There are instructions available for how to set up your build environment, as well as for how to contribute to the code.

If you’d like to talk with the development team, get help, and even talk with the writers that are most engaged with the development process, feel free to pop into the #mdndev channel on IRC. You can also keep an eye on what the rest of the development team is up to by checking out their status updates on our Standu.ps site.

Sample code

A key feature of any developer documentation is good sample code. While we have some sample code, we can always use more. Until recently, adding samples was not always easy, especially if you wanted people to actually be able to see what the code does. However, with the recent addition of our live inline sample support, that’s all changed for the better.

Feel free to peruse our documentation and find places where samples would be useful and devise some! Obvious candidates for live samples are the HTML and CSS documentation, as well as documentation about DOM interfaces and functions. You can probably also come up with some helpful examples for the JavaScript docs, too.

Examples don’t have to be fancy or flashy. Indeed, the simpler they are, the better, in most cases. The less extra “stuff” there is for the reader to have to deal with, the more quickly they can get to the heart of the matter and really understand what they’re looking at.

Help me, Coder-wan Kenobi… you’re my only hope

There’s a ton to do! Between documentation (that’s where the writing community comes in), the Kuma project (where our Kuma dev team, hopefully including you soon, comes in), and samples (where, well, everyone comes in!), there’s plenty to be done. There’s something out there for everyone. Can you find your perfect place to contribute to help make the best online resource for Web developers even better?

 Posted by at 1:38 PM
Nov 302012
 

We have a huge new version of the Kuma platform that powers MDN today! Well, no, not really. It’s actually really small. But John Karahalis asked me to be sure to post a long, detailed post about it, and because my sense of humor commands me to oblige, here it is!

  • The text copy promoting the January Dev Derby — for the Drag and Drop API — has been updated.
  • Text copy for the February Dev Derby — for demos using the Touch Events API — has been added.
  • The text copy for the Offline Dev Derby for December has been added, too.

A screen shot of the updated Dev Derby copy

This is so very exciting! It’s a virtual smorgasbord of promotional goodness!

Well, not really exciting, exactly. But it’s an update, and John practically dared me to blog about it, so I couldn’t let it slide.

No way.

 Posted by at 6:12 PM  Tagged with:
Nov 282012
 

We’ve updated the Kuma platform on the MDN wiki this afternoon. Today’s update has lots of changes. A lot of them are somewhat hidden from view, but there’s been a lot of progress on stabilization, upgrades to dependencies, and the like. There’ve also been some real changes that may be of some use to you.

  • The Italian language is no longer listed twice in the Languages drop-down menu.
  • The HTML dir attribute is now in our Bleach whitelist, so you can use it in content on MDN.
  • When editing an article, the editor page’s <title> now includes the article’s title, so you can more easily find it among your browser’s tabs.
  • Special subtrees of the MDN site are now excluded from getting the “new” style applied to links to them. These are: /docs/new, docs/tag, /docs/feeds, /docs/templates, and /docs/needs-review.
  • More bits of the infrastructure for supporting getting lists of subpages from KumaScript code have landed.
  • Middle-clicking on an article title in the revision dashboard’s list now opens that page in a new tab.
  • Clicking on a user name in the revision dashboard list now filters on that username, showing you only that user’s changes.
  • Lots of work has been done on improving compatibility with a new version of Django we’re preparing to move to. There’s more to do, but this push is a very big initial step.
  • Automated test coverage has been improved.

We continue to teeter on the brink of landing full support for the following sweet capabilities, but aren’t quite there yet:

  • Page moving; this will let us move one or more pages from one place in our site hierarchy to another. This will be totally awesome to have.
  • A page.subpages() KumaScript function; this will return a code-readable list of all of the subpages of a given page. This will make it much easier to automate certain tasks in templates.
  • A wiki.tree() KumaScript function; this will return an HTML tree of links to subpages of a given page (or the current page). This will make it trivial to create simple landing pages for subsections of MDN. We have several broken landing pages waiting for the arrival of this function, so I’m pretty excited that work is progressing!

Things are moving along really well, and I’m still super excited about how well work on Kuma is going, and how far we’ve come. This platform has been great so far, and has so much more to offer in the future!

 Posted by at 2:35 PM  Tagged with:
Nov 272012
 

Yeah, this blog post is about a Kuma update from the middle of last week. But I was on vacation someplace warm and sunny at the time, so I didn’t get to blog about it. Now I am!

  • The button in the editor for inserting the boilerplate for live samples now includes subheadings for each code block (HTML, CSS, and JavaScript).
  • The promotional campaign for the Social API has been added to the MDN home page.
  • The revision dashboard now has a column that shows the revision comment corresponding to each item in the list of revisions.
  • The date and time columns in the revision dashboard have been merged into one.
  • The locale filter dropdown menu in the revision dashboard has been changed to say “All locales” instead of “Choose a locale.”
  • Article names in the revision dashboard list are now links you can click to go to that article’s page.

There have also been some behind-the-scenes updates and fixes to tests and the like.

As you can see, this update was mostly about the revision dashboard. I think we’re getting close to ready to open it to the general public. I hope to have news on that soon!

 Posted by at 12:51 PM  Tagged with:
Nov 152012
 

That’s right, everyone! We have a very lovely update of MDN’s Kuma platform for you today with some nice enhancements and fixes. This should be the last one of the week, unless we really blew it today.

  • When you click the button to insert a new live code sample, you now get prompted to enter a title for it. This title is used for the header for the sample’s section, and is used to generate the IDs of each of the code blocks within. In addition, the EmbedLiveSample template call is now created for you, so you don’t have to do it yourself. It’s like magic!
  • Pressing the tab key while in a <pre> block no longer alternately either inserts &nbsp; characters or insets the entire code block; instead, it just inserts two spaces, as it’s supposed to do.
  • You can now have multiple compatibility tables per page.
  • More of the back-end work has been done for the KumaScript features for generating lists (both code-readable and human-readable) of subpages. This capability isn’t available yet, but it should be soon. We’re getting close!
  • The Revision Dashboard now lets you filter the list of revisions by locale and/or username. We’ve expanded the set of people this dashboard is available to, but it’s still a small set of core community members. I hope to open this to the whole community before a lot longer.

Obviously, the biggest changes visible to typical users here at the moment are the enhancements to live samples and editing of code snippets. However, the majority of the work in terms of sheer man-hours and hard work by our amazing development team is behind the scenes. For now. I’m really excited about the work they’re doing, and you’ll see even more excellent stuff soon!

 Posted by at 5:39 PM  Tagged with:
Nov 152012
 

We’re having a virtual — that is, online — MDN documentation sprint from November 30 through December 1! We encourage anyone interested in helping make documentation of and for the open Web to log onto #devmo on irc.mozilla.org and help out. Even if you only have a few minutes, it’s possible to make a huge difference. Indeed, if you’re a Web developer that knows lots of things, you can log in and help answer questions the writers might have. That’s a way you can contribute to MDN content without doing any writing yourself!

Check out the wiki page about this doc sprint and put your name on the list if you plan to participate. There’s even a list of links to suggested topics for work. And you can even contribute by simply adding live samples to existing articles, using our nifty new live sample system!

I hope to see you there! We always have a good time and get lots of great work done to make developing for the open Web easier for everyone!

 Posted by at 7:30 AM
Nov 142012
 

That’s right! We have another, small, update to the Kuma software on MDN today. This is a really small update that corrects a bug in yesterday’s push, and has a chunk of code that’s disabled right now anyway.

  • Fixed the Live Sample boilerplate button to insert code with the correct class names. You can now use the Live Sample system without having to use source mode to correct the mistake.
  • Tweaked the backend code for the live sample system to be less picky about the class name strings’ content.
  • Added some backend code for the revisions dashboard; this is part of the upcoming support for filtering the contents of the list there. However, it’s disabled right now, so there’s no user-discernible impact.

For more information about using the live sample system, read the documentation for it on MDN. We’re all really excited about the live sample system. This is a feature we’ve wanted for ages (literally since back when I first joined Mozilla). So I’m thrilled that Louis-Rémi Babé came up with this technique (and wrote an initial proof of concept that showed it would work), and with Les Orchard and David Walsh for building the system. Thanks, guys!

 Posted by at 12:58 PM  Tagged with: