Nov 102011
 

If you’re contributing content to MDN related to WebKit’s implementation of open web features, there are a few handy things you should be aware of. The first: be sure to read over my previous post about documenting the open web on MDN, since it offers a lot of insight into how we’re trying to structure our documentation, as well as some information about our future plans to improve the site’s support for making this even easier.

Even more usefully, we’ve been gradually building out templates to help make it easier for you! We have a lot of templates that do things specific to Firefox, and we’re trying to either genericize those or add new ones for other browsers. WebKit has gotten special attention since our friends at Google have been contributing some great content, but we welcome folks to create templates for use when documenting support of open web features in other browsers as well.

The two templates for WebKit writers I’m going to mention today are WebKitBug and unimplemented_inline_webkit.

WebKitBug inserts a link to a bug in the WebKit bug database. This makes it easy for writers to add annotations to documentation to guide developers to information about things that are works in progress in WebKit. You use it like this: {{webkitbug(42)}}, and the result is “WebKit bug 42”, linked to the corresponding bug in the bug database.

Similarly, unimplemented_inline_webkit inserts a small, inline box with an optional link to a WebKit bug, given its bug number. If you write {{unimplemented_inline_webkit()}}, you simply get a box that says “Unimplemented”. More usefully (and preferred) is the syntax {{unimplemented_inline_webkit(42)}}, which inserts a box that says “Unimplemented (see WebKit bug 42)”, with a link to the bug.

Obviously this is just a beginning! I’d love to hear suggestions on ways we can further improve this, either by changing existing templates or by adding new ones. Feel free to follow up with comments here, or chat with me in #devmo on IRC.

 Posted by at 8:33 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
Oct 122011
 

My story isn’t as inspiring as some you’re likely to read. A lot of my colleagues at Mozilla are die-hard open-source folks and long-time Mozilla contributors who eventually got jobs at Mozilla, or continued to be excellent contributors without being employed by the big “M.”

I, on the other hand, had always been rather skeptical of open source. Indeed, back in 2005, I was working quite happily at PalmSource (the company that produced the operating system for the Palm PDAs and Treo smartphones), writing developer documentation there, and my experiences with open source products had been almost universally negative.

Then, right around the time my daughter was born, I got laid off, one of the many casualties of PalmSource’s long decline and death throes. I quickly got a contract job writing game software, which turned into a full-time job, but that didn’t pan out for reasons that don’t really matter here. What does matter is that in early 2006, I was in need of a job.

Dave Miller (justdave), a long-time friend of mine, had been involved with Mozilla for years by this point, and he mentioned that they were in need of Mac programmers, so I sent along a resume, and he put in a good word for me. I was brought in and interviewed, where I followed the non-traditional course of basically saying that I thought open source was a good idea but so far had been unimpressed, and that I didn’t like Firefox because it was really ugly on the Mac.

Apparently this didn’t put off Shaver, Asa, Chris Beard, and the others I spoke to — or perhaps they were willing to overlook it once they discovered I had almost ten years of experience doing heavy-duty developer technical writing — because I wound up getting offered a tech writing job. I started on April 3, 2006, and never looked back.

I’ve enjoyed nearly everything about my time with Mozilla so far and don’t see much chance that will change in the near future. There are challenges and occasional frustrations, but the rewards have been fabulous.

I still look upon open source software with a great deal of skepticism, but I don’t automatically assume the worst anymore like I used to. If more open source projects were administrated with even half the adroitness as the Mozilla project, the technology world would be a better place.

 Posted by at 4:45 PM
Oct 052011
 

Don’t really have words for how I feel about Steve Jobs’s passing. This has been a hard week (and it’s only Wednesday), and I just don’t have anything in me to say at this point. I’ll just sum it up like this:

 Posted by at 9:39 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
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
May 112011
 

I spent a good bit of time the last few days trying to install Bugzilla on my new Mac OS X Server system. Getting the Perl modules installed proved to be an enormous headache, due to a wide variety of errors, especially getting DateTime.pm and DBD:mysql installed.

Turns out that fixing this was simple, once I looked through all the error messages.

Everything wound up leading back to the fact that CPAN insists on attempting to build universal PowerPC/x86 versions of everything. But if you have only Xcode 4 installed, you don’t have any PowerPC compilers, so the builds would fail.

The take-away: if you want to install Bugzilla, make sure you have Xcode 3 installed (either instead of, or in addition to, Xcode 4). You can get it from the Apple developer connection site if you’re a member of their developer program.

 Posted by at 1:58 PM
Apr 062011
 

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 BYK for contributing last week.

SpiderMonkey

Developing Mozilla

Thanks to Neil Rashbrook for contributing last week.

Extensions

Thanks to John J. Barton and Ms2ger for contributing last week.

XUL

Thanks to John J. Barton and Ms2ger for contributing last week.

XPCOM

Thanks to Neil Rashbrook for contributing last week.

Interfaces

Plugins

CSS

Thanks to stopsatgreen and Florian Scholz for contributing last week.

SVG

Thanks to Jeremie Patonnier for contributing last week.

HTML

DOM

Thanks to BYK for contributing last week.

 Posted by at 2:01 PM
Feb 092011
 

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

XPCOM

Interfaces

Plugins

Special note on plugins: We need someone to write notes or documentation related to the Cocoa NPAPI stuff for Firefox 4.

CSS

SVG

HTML

DOM

 Posted by at 12:13 PM
Jan 272011
 

The first quarter 2011 Mozilla documentation sprint starts tomorrow (that is, Friday, January 28).  We have a nice list of ideas for things people can help with, including some that are great for non-writers to work on, such as adding examples to the CSS Reference and the HTML Element Reference. Those would be fun projects for people for whom CSS and HTML are their primary language, rather than English.

This will be a virtual sprint, with the participants chatting in the #devmo IRC channel on irc.mozilla.org. We encourage anyone and everyone to pitch in and contribute in their own way. We’ll be pounding away on documentation both Friday and Saturday. It’s going to be great fun, and I hope to “see” you there!

 Posted by at 8:38 AM