Jan 292009

One easy thing we’re about to implement on the Mozilla Developer Center web site is code that looks at the tags on the page you’re looking at and recommends IRC channels in which you might discuss the material therein, based on the page’s tags.

As you can see here, this article (which is the main page for the Places subtree), offers links to the #addons, #extdev, and #places channels, based on the page’s tags.  Any page that has tags that can be mapped to one or more IRC channels will have this list.

This will make it easy for users of MDC that still have questions after reading the documentation to find help.  It will also make it easier for possible contributors find find subject-matter experts to help clarify topics that need writing up.

I’m testing this code on a VM right now, and hope to deploy it to the live MDC site sometime next week or so.  Another, related thing I expect to do soon as well is to include links to the relevant newsgroups.

I hope this proves as useful as I think it will!

 Posted by at 5:15 PM
Jan 292009

The ability to shuffle tabs around between windows at will in Firefox 3.1 has made me a much more frequent user and abuser of the power of tabbed browsing.

As I work, I find myself with a lot of tabs open, often unrelated to one another, cluttered among my windows.  It’s fabulous to be able to drag them across windows to sort them into windows based on topic or use case.

For example, right now I’m preparing to do a demonstration of sorts of Mindtouch Deki capabilities to some folks here at the office — both things we are currently doing and things that we will be doing in the future, as well as capabilities for expansion that we’ve not even seriously addressed yet.

As I was poking across the web pulling together the information I needed for this discussion, it wound up in multiple windows scattered across my machine.  The ability to drag them together and arrange them into the order in which I would need them in one window will make my demonstration go much, much more smoothly.

I hope.

 Posted by at 1:46 PM
Jan 252009

In about four hours, I’ll be on a plane headed to Mountain View, via Atlanta and San Jose, for a week of meetings with the folks in the Mozilla evangelism team.  We have a length agenda for this week, and I think we’ll be very productive.

Among other things, we’ll be discussing plans for moving forward with the Mozilla Developer Center.  We’ve positioned ourselves to do some very cool things with MDC over the next year — now it’s time to plan out the next steps and take advantage of all the power under the hood that’s currently going unused.

You see, the Deki software we’re using to drive MDC is more than just a wiki.  It’s a pretty powerful application server, with a lot of capabilities we’re not currently using.  That’s going to be a key goal of mine for the next year: finding and implementing new functionality that we’re not currently taking advantage of.  I’ve blogged about that previously.

My goal continues to be to make MDC the one-stop place to go for information about not only Firefox development, or Mozilla development in general, but for all open web technologies.  We’re a long way from achieving that goal, but with our community’s help, we can make it happen.

I’m very excited about what we’re going to do together!

 Posted by at 12:10 PM
Jan 222009

The guys at Mindtouch are working their butts off these days, and I’m continuing to see a lot of movement in their bug database that looks promising.

In particular, they’ve added API that will let them provide feedback on the state of database reindexing, which is a pet peeve of mine that will be nice to see addressed.

They’ve also added support for hiding languages we don’t use from the syntax highlighter’s list of languages, so we can whittle it down to be a more reasonable display, thankfully.

I’ve seen some initial looks at what they’ve done to the diff and history tools, and it looks very promising, although I had some suggestions they seemed to take to heart, so I’m hopeful this is going be much improved for us.

Chris Blizzard and I had a good talk with the guys at Mindtouch yesterday, and we have some great ideas for things we can do going forward.

One thing that’s important to recognize is that Deki is more than just a basic wiki; it’s actually a full-fledged application platform, but we’re not currently taking advantage of those capabilities.  I’ve started assembling a list of cool things we could do to really turn MDC into a powerful information repository.  Take a look at the list and see what you think.  These aren’t necessarily things we will do, just things I think we could do.  Some of them are no-brainers.  Some will take some real work.

 Posted by at 6:14 PM
Jan 222009

I’ve posted a new article on DOM workers to the Mozilla Developer CenterUsing workers in extensions demonstrates how to adapt an extension that uses XMLHttpRequest to fetch information periodically so that it uses a worker to do the data retrieval.  This serves both to demonstrate how to use workers to do real work, as well as how you can use them in an extension.

I still need to do one or two more examples of how to use workers, but we’re making good progress in that space.

If you see any issues with the article, as always, feel free to make corrections or offer suggestions!

 Posted by at 5:10 PM
Jan 202009

I’ve been tagged by Brian King, so here we go!

The rules:

  1. Link to your original tagger(s) and list these rules in your post.
  2. Share seven facts about yourself in the post.
  3. Tag seven people at the end of your post by leaving their names and the links to their blogs.
  4. Let them know they’ve been tagged.

Seven things:

  1. My family lived in Sumatra, Indonesia for several years when I was a kid.  I attended third through half of seventh grades at an American school in a Caltex company town called Rumbai, near Pekanbaru, the provincial capital of Riau Province.  Caltex American School in Rumbai had around 40 students, kindergarten through eighth grades, and it was a fantastic time in my life.  Between getting a lot of one-on-one attention at school and getting to play, literally, in the jungle — that was a great place to be a kid.
  2. I met my wife online in 1994, long before online dating sites.  We were both chat hosts in an Apple II computer forum on the GEnie online service and got to talking, and eventually arranged to meet in person (she flew across the country to visit me at college).  The rest is history.
  3. On January 22, 2008, I had a Roux-en-Y gastric bypass surgery performed after years of failed attempts to lose weight.  My goal weight was 250 pounds, which I reached in June.  As of today, I weigh 224 pounds.  My nutritionist has begged me not to lose any more weight than this, so I find myself eating four meals a day, plus snacks, plus drinking beverages with extra calories, just to keep my weight up.  This is both unusual and strange.
  4. My first experience with computers was in first grade, in Colorado, where they had a computer that was essentially a keyboard hooked up to a teletype.  It would hammer out math questions onto the paper, you’d read them, and key in the answers.  It was super cool.  In fourth grade, my school in Sumatra got a TI 99/4 computer, and I got totally into it, spending recesses in the math room pounding out code.  By the end of that year, I’d written my first game: “Alligator,” which used sprites to let you use the joystick to steer an alligator around the screen to eat flies and frogs, while avoiding falling rocks.  If you got hit by a rock, a morbid little tune played and you lost a life.  Bonus trivia: playing “Oh, Susanna” off key sounds very morbid.  The next year, the school got an Apple II+.
  5. In seventh grade, my school got a new math teacher, who wasn’t familiar with Applesoft BASIC, which is what our computer classes used.  So for the first half of seventh grade, I taught programming class to my peers while the teacher studied up.
  6. If you haven’t gathered it already, we moved a lot when I was a kid.  My dad worked for Chevron his entire career, and we went where the Big New Oil Thing was.  Lived in Colorado twice, Texas twice (Midland and Snyder), California twice, Louisiana once, and of course overseas.  My folks went on to live in Houston and Moscow, Russia, before finally retiring to Northern California.  Everywhere I’ve lived (I’m in Tennessee now) has its up and down points.
  7. I didn’t manage to graduate from the University of California at Santa Barbara.  I attended for five years, but when it came time to register for my final quarter’s worth of classes — I needed to take two Computer Science electives plus a course in “literature originating in a foreign language” — I discovered that there were no computer science courses being offered that I hadn’t already taken.  So I withdrew from school for a quarter to avoid paying for a quarter that wouldn’t significantly advance me toward graduation.  Got a job, got engaged to my eventual wife.  Drove back to campus to sign up for the following quarter, and was surprised to learn that, again, there were no computer science courses being offered that I hadn’t already taken.  After that, it was just too hard to go back, between work, being married, and general apathy.  So I remain three courses shy of a bachelor’s degree in computer science.

Now to tag seven people I’d like to hear from:

  1. Ryan Suenaga, a good friend who’s always interesting to hear from.
  2. Rebecca Heineman, former coworker and very interesting character in the computer game industry.
  3. David Miller, former and present colleague and IT guru at Mozilla.
  4. John Resig, because I just can’t get enough.
  5. Aaron Fulkerson, because he makes me chuckle.
  6. Myself, because infinite loops are fun.
  7. I reserve the right to tag someone else if and when they come to mind.
 Posted by at 1:33 PM
Jan 192009

I’ve been getting a bunch of updates related to bugs I’ve filed in Mindtouch’s database regarding the Deki software, so I thought I’d share some info on what I’m seeing going on.

  • The bug I filed about requiring users to type spaces where they used underscores in their username while using the “forgot password” feature has been targeted to be fixed in the impending Lyons release.
  • The bug I filed about losing your work if your login cookie goes away while you’re editing has also been targeted to be fixed in Lyons.
  • The fact that there’s no link back to the article from its talk page is on the list to be fixed in Lyons as well.
  • Likewise, the title of the Special:Tags pages are due to be made less ambiguous.
  • A scripting command to fetch the name of the page that’s including a template is hopefully going to be added in Lyons.  This will make several of our templates work better.
  • Ability to make the main page semi-private without affecting permissions for new pages is also on the list.
  • The ability to use HTTPS for authentication, then use HTTP for everything else is also on the Lyons list.

This is pretty good; none of these items are on my “most critical” list, but they’re all on the second tier “sure would make life better” list.  It’s very exciting to see movement on these!

 Posted by at 4:31 PM
Jan 152009

I’ve finished the first pass at the reference documentation for the interfaces behind offline resources, with today’s addition of the following articles:

Next up is to do some more work on the conceptual documentation that ties everything together.

Also, I’m going to try adding a cache manifest to the Mozilla Developer Center itself (starting with the clone of it I keep in a VM at home for experimentation purposes).  This serves two purposes: first, I get first-hand experience with offline resources, and, second, if it works the way it should, we could improve MDC performance by caching skin files and scripts locally.

As always, I’ll blog again as I progress!

 Posted by at 4:35 PM
Jan 142009

I’ve gotten some of the interfaces involved in offline resources in Firefox 3.1 documented now.  Two more are coming tomorrow, but it’s dinnertime here and I wanted to blog about it before I took off for the evening.

The first two of these are newly documented, while the last is updated for Firefox 3.1.  Several attributes and methods in nsIDOMOfflineResource list have been deprecated in favor of new ways to do things, so be sure to give it a look if you work with — or plan to work with — this interface.

 Posted by at 6:02 PM
Jan 142009

This evening, Sophie gave me the present she picked out for me the other night: a little turtle with a clip that lets it hold a photo standing up on your desk.  It’s really cute!

We went out for dinner with Sarah’s parents, then came back to the house for some cake.  Sarah baked the cake from scratch, adapting the recipe to use Splenda instead of sugar, and frosted with reduced sugar frosting she bought at the supermarket.  That plus a scoop of no-sugar-added ice cream made me very happy.  It’s nice that I can enjoy some tasty treats now and then.  Yum.

Sarah gave me a copy of The Dark Knight on Blu-Ray, which I watched this afternoon with the volume cranked way up, since I had the house to myself.  And I wasted much of the day playing World of Warcraft.  It was a good day.

 Posted by at 6:45 AM