Nov 082011
 

As you work on Mozilla, you’ll often file bugs or submit patches that will involve changes needing to be made to the documentation on MDN. I’ve written an article on MDN about this issue, and I’m duplicating it here to get it in front of more people that need this information.

Flag your bugs

When you file a bug that, upon resolution, will likely require that documentation be updated, you should add the dev-doc-needed keyword to the bug:

dev-doc-needed.png

You don’t need to wait until the bug is fixed. Indeed, it’s easiest for the doc team if you add this keyword well in advance of the bug being resolved. That lets us plan ahead. That said, it’s never too late to apply dev-doc-needed to your bugs!

Also, note that if you use the addon-compat keyword to flag that a bug will impact add-on compatibility, you should absolutely also add dev-doc-needed!

The writing team uses Bugzilla queries, as well as a special documentation tracking site that interfaces with Bugzilla, to track our work. By using dev-doc-needed, your bugs will get brought to our attention at the right time to ensure the best odds that your stuff will be written up in a timely manner.

When the bug’s contents are documented, the person that did the work will replace the dev-doc-needed keyword with dev-doc-complete and, ideally, add a comment to the bug with links to the pages that were updated or created to cover the bug’s contents. You should try to review the changes to ensure that the writer got things right.

Indeed, if you love Mozilla, you’ll be sure you’re available to help out if the writer has questions. They may contact you by email, or post questions as comments on the bug. Try to take a few moments out of your busy day to answer questions.

Provide information to the writers

That brings us to the next point. Not only should you be sure to answer questions the writers bring to you, but a little simple preparation can stave off a lot of back and forth. Try to add a note to the bug that indicates exactly what needs documenting. A lot of bugs have pretty cryptic descriptions, or the actual documentation issue at hand isn’t obvious from the bug’s description.

For example, a bug might have a summary like “foobar.com doesn’t work in Firefox 45”. There may then be pages and pages of comments where the problem is debated, possible solutions suggested, and so forth, followed by the bug eventually being marked as resolved. With no other information, the hapless writer is left to pore over all those comments and the patches, hoping to figure out what needs documenting.

When the patch is finally checked in, you should try to add a comment that summarizes what the final resolution was. This can be either “Writers: check out comment 32” if there’s already a comment that explains the final resolution, or a quick summary of what’s changed, like “Check out the new method and attributes in nsISomeInterface” or “We added the someStandardDOMMethod” method to DOM elements”. Doing this can save the writers a lot of time (time that could better be spent writing even more stuff), and can save you from having to answer pesky questions.

It’s also helpful, of course, if your bug includes a link to the specification or design document for the feature being affected by the patch.

Just having directions on where in the code to look, or what subtle change has occurred, can make all the difference between your change being documented quickly and having it languish for a long time because it scares the writers off.

What if there’s not a bug for it?

Sometimes, you notice something’s wrong with the documentation. Maybe there’s a missing article, or you realize we need a guide on how to use some technology, and there doesn’t seem to be one. You can, of course, write it yourself. But if that doesn’t work for you, feel free to file a bug against the Documentation Requests product on the Mozilla Developer Network component on Bugzilla.

Feel free to update the documentation yourself

MDN is a wiki! You can log in and update the documentation yourself. A lot of programmers don’t consider themselves up to the task of writing documentation, or are crazy busy, and that’s okay! That’s why we have writers, and that’s why we have all the above tips.

However, if you have a few minutes, and feel comfortable doing it, feel free to log in and apply the necessary fixes yourself. This is often really simple for minor changes to the behavior of something, and can possibly save everyone time and effort.

For that matter, if you have the time to jot down relatively thorough notes about your change, you can toss them into the bug, or add them to the wiki. Our happy, helpful documentation gnomes live to clean up your writing, so don’t be afraid to try.

Ask for help!

If you’re not sure how to get something handled in documentation, or are trying to update the docs and are stuck, feel free to pop into #devmo on IRC, where the doc team hangs out, or ask questions on the documentation newsgroup.

 Posted by at 8:15 AM
Nov 072011
 

One of our initiatives on the Mozilla Developer Network’s documentation wiki is to improve browser agnosticism. That is, to ensure that where appropriate, our open web documentation is just as useful for web developers using other browsers as it is for those using Firefox. A lot of our documentation is currently very Firefox-oriented, even when it’s not necessary.

Consider this, for example:

Example of non-agnostic docs

Here we see a big banner about how this method of the DOM Element object was introduced in Gecko 1.9.1. However, it’s actually a standard DOM method. This banner should go away, and the text should be updated wherever necessary to remove any Firefox-specific discussion.

In addition, the article should have our standard browser compatibility table at the bottom. This table provides information about which releases of all the major browsers introduced support for the feature.

I’ve updated this article now so it looks the way it’s supposed to, as an example of what it ought to look like.

Noting introduction of sub-features

Some features are fairly complex; for example, the HTML <input> element has evolved over time, with the addition of new attributes and new possible values for many of them. This is where adding additional rows to the browser compatibility table comes into play. Let’s look at a few rows from the compatibility table for <input>:

Example of longer compatibility table

Here we see multiple table rows, each for a given named feature of the element being documented. In the case of Firefox, we see that type=color isn’t implemented yet, and we used {{unimplemented_inline(547004)}} to include a link to the corresponding bug. We also have the WebKitBug template for linking to WebKit bugs, and should add an unimplemented_webkit_inline or similar for creating Unimplemented badges that link to WebKit bugs, but haven’t done so yet.

Browser version-specific notes

Sometimes, you simply have to note browser-specific stuff, even in open web documentation. This should usually be done in the “Browser compatibility” section, with a subsection added for each browser that needs a note. For example, the browser compatibility section on the main WebSockets page has a subsection entitled “Gecko notes,” which covers Gecko-specific issues related to WebSockets, such as the fact that the constructor is prefixed.

If you do need to include browser-specific content in the middle of article text, try to put it in a call-out box or note box instead of just throwing it into the body text of the article.

The future

As we continue to build our Kuma, our new wiki platform for MDN documentation, we’re keeping browser agnosticism for documentation in mind. We have features planned to make it easier to call out browser differences and browser specific features, and to help readers filter the content based on their interests.

When in doubt… ask!

While updating or writing open web documentation, if you run into something that you’re not sure how to handle, please feel free to pop into #devmo on IRC, or to drop email to me, and ask for help. All of our happy, helpful documentation gnomes live to serve.

 Posted by at 2:04 PM
Aug 102011
 

Here are today’s Wiki Wednesday articles! If you know about these topics, please try to find a few minutes to look over these articles that are marked as needing technical intervention and see if you can fix them up. You can do so either by logging into the wiki and editing the articles directly, or by emailing your notes, sample code, or feedback to mdnwiki@mozilla.org.

Contributors to Wiki Wednesday will get recognition in next week’s Wiki Wednesday announcement. Thanks in advance for your help!

JavaScript

SpiderMonkey

Thanks to Panagiotis Tsalaportas for contributing last week!

Developing Mozilla

Thanks to Neil Rashbrook for contributing last week!

Extensions

Thanks to Panagiotis Tsalaportas for contributing last week!

XUL

Thanks to Neil Rashbrook for his contributions last week.

XPCOM

Thanks to Neil Rashbrook for contributing last week.

Interfaces

Plugins

Thanks to Benjamin Smedberg for stamping out useless content last week.

CSS

SVG

Thanks to Panagiotis Tsalaportas for contributing last week!

HTML

DOM

 Posted by at 4:16 PM
Jul 132011
 

Here are today’s Wiki Wednesday articles! If you know about these topics, please try to find a few minutes to look over these articles that are marked as needing technical intervention and see if you can fix them up. You can do so either by logging into the wiki and editing the articles directly, or by emailing your notes, sample code, or feedback to mdnwiki@mozilla.org.

Contributors to Wiki Wednesday will get recognition in next week’s Wiki Wednesday announcement. Thanks in advance for your help!

JavaScript

Thanks to David Bruant and syssgx for their contributions!

SpiderMonkey

Developing Mozilla

Extensions

XUL

XPCOM

Interfaces

Plugins

CSS

Thanks to myakura for contributing!

SVG

Thanks to syssgx for contributing!

HTML

DOM

 

 

 

 

 

 

 Posted by at 2:43 PM
Jun 222011
 

Here are today’s Wiki Wednesday articles! If you know about these topics, please try to find a few minutes to look over these articles that are marked as needing technical intervention and see if you can fix them up. You can do so either by logging into the wiki and editing the articles directly, or by emailing your notes, sample code, or feedback to mdnwiki@mozilla.org.

Contributors to Wiki Wednesday will get recognition in next week’s Wiki Wednesday announcement. Thanks in advance for your help!

JavaScript

Thanks to Panagiotis Tsalaportas and evilpie for their contributions last week.

SpiderMonkey

Developing Mozilla

Thanks to Panagiotis Tsalaportas for his contributions last week.

Extensions

Thanks to Panagiotis Tsalaportas for his contributions last week.

XUL

XPCOM

Thanks to Neil Rashbrook for his contributions last week.

Interfaces

Thanks to Neil Rashbrook for his contributions last week.

Plugins

CSS

Thanks to Panagiotis Tsalaportas for his contributions last week.

SVG

Thanks to Panagiotis Tsalaportas for his contributions last week.

HTML

Thanks to Trevor Hobson and Fulax for their contributions last week.

DOM

 Posted by at 12:33 PM
Jun 152011
 

Here are today’s Wiki Wednesday articles! If you know about these topics, please try to find a few minutes to look over these articles that are marked as needing technical intervention and see if you can fix them up. You can do so either by logging into the wiki and editing the articles directly, or by emailing your notes, sample code, or feedback to mdnwiki@mozilla.org.

Contributors to Wiki Wednesday will get recognition in next week’s Wiki Wednesday announcement. Thanks in advance for your help!

JavaScript

Thanks to all our contributors last week: David Bruant, Grendel, Paul Irish, Les Orchard, and Andrew Weintraub!

SpiderMonkey

Developing Mozilla

Extensions

Thanks to Marc-Aurèle Darche (for the Fidesfit company) for contributing last week.

XUL

XPCOM

Thanks to Dikrib for contributing last week.

Interfaces

Thanks to Trevor Hobson for his contributions last week.

Plugins

CSS

Thanks to Markus Stange and Grendel for contributing last week.

SVG

Thanks to Jeremie Patonnier for contributing last week.

HTML

DOM

 Posted by at 3:00 PM
Jun 082011
 

Here are today’s Wiki Wednesday articles! If you know about these topics, please try to find a few minutes to look over these articles that are marked as needing technical intervention and see if you can fix them up. You can do so either by logging into the wiki and editing the articles directly, or by emailing your notes, sample code, or feedback to mdnwiki@mozilla.org.

Contributors to Wiki Wednesday will get recognition in next week’s Wiki Wednesday announcement. Thanks in advance for your help!

JavaScript

Thanks to timemachine3030 for contributing last week!

SpiderMonkey

Developing Mozilla

Extensions

Thanks to Madarche for contributing last week.

XUL

XPCOM

Interfaces

Thanks to Neil Rashbrook for his contributions last week.

Plugins

CSS

SVG

HTML

DOM

 Posted by at 1:40 PM
Jun 012011
 

Here are today’s Wiki Wednesday articles! If you know about these topics, please try to find a few minutes to look over these articles that are marked as needing technical intervention and see if you can fix them up. You can do so either by logging into the wiki and editing the articles directly, or by emailing your notes, sample code, or feedback to mdnwiki@mozilla.org.

Contributors to Wiki Wednesday will get recognition in next week’s Wiki Wednesday announcement. Thanks in advance for your help!

JavaScript

SpiderMonkey

Developing Mozilla

Extensions

XUL

Thanks to Neil Rashbrook for his contribution last week.

XPCOM

Interfaces

Plugins

CSS

Thanks to Paul Irish for his contribution last week.

SVG

Thanks to Jeremie Patonnier for contributing last week.

HTML

DOM

 Posted by at 2:25 PM
May 252011
 

Here are today’s Wiki Wednesday articles! If you know about these topics, please try to find a few minutes to look over these articles that are marked as needing technical intervention and see if you can fix them up. You can do so either by logging into the wiki and editing the articles directly, or by emailing your notes, sample code, or feedback to mdnwiki@mozilla.org.

Contributors to Wiki Wednesday will get recognition in next week’s Wiki Wednesday announcement. Thanks in advance for your help!

JavaScript

Thanks to David Bruant, Jesse, and Rowan Hogan for their contributions last week!

SpiderMonkey

Thanks to Jesse for contributing last week.

Developing Mozilla

Thanks to Jonathan Watt, John Hawkinson, and Dolske for contributing last week.

Extensions

XUL

XPCOM

Interfaces

Plugins

Thanks to Benjamin Smedberg for contributing last week!

CSS

Thanks to myakura for contributing last week.

SVG

HTML

Thanks to teoli, Chris Everson, myakura, and Jonathan Watt for their contributions last week.

DOM

Thanks to Sevenspade for contributing last week.

 Posted by at 2:02 PM
May 182011
 

Janet and I are attending the Society for Technical Communication summit in Sacramento this week. There’ve been a number of interesting presentations (I’m mostly attending things about how to deal with people and communities). Tonight, we went out and had dinner with a few of our counterparts at Google and had a nice long conversation about a little of everything.

Photo of Janet and the Google writers

This afternoon (just before dinner), Janet gave her talk on things to consider before selecting a wiki as a documentation management system. Tomorrow, she and I will team up to give a presentation we call “Radically Open Documentation,” talking about doing documentation entirely in the open the way we do. It should be fun to do, and hopefully will be informative to those in attendance.

After the presentation, we’ll drop in on the closing lunch to get something to eat, then climb into my rental car and book it down to Mountain View to join up with the rest of the Engagement team for our on-site meetings this week; we’ve missed half of the week, but it was well worth it to participate in the STC event.

 Posted by at 12:42 AM