Archive for the 'Mozilla' Category

Oh no, it’s almost Friday…

Thursday, March 11th, 2010

I’ll be out of the office for a few hours tomorrow morning. After some severe discomfort/pain the other day, my doctor wants me to get my gall bladder checked out, so I’m going in early tomorrow for an ultrasound to see if I have gallstones.

Best case scenario: I have gallstones, and we schedule me to have my gall bladder removed.

If the ultrasound comes up negative, they’ll be immediately taking me in for another test, this one involving injecting a radioactive tracer and following it through my system to see how my liver and gall bladder are functioning. This involves an injection (thereby triggering my intense aversion to needles) and then a lot of waiting around while they take periodic pictures of my insides.

If that test comes up clear, then the problem was something other than my gall bladder and I don’t know what happens next.

If that test indicates a problem, I presume my gall bladder comes out then too. I’d obviously prefer that the first test be the one to determine that my gall bladder should be removed, since I don’t particularly want to deal with the second test. Going through both, especially if both are negative, would kind of suck.

At any rate, this is a longwinded way of saying that I won’t be around until later than usual tomorrow, although I’ll certainly be tweeting and checking mail as holding patterns in the testing allow. If the ultrasound is positive, I’ll probably be at my desk by noon or so Eastern. If it’s negative, and I have to have the other test too, then it’ll probably be early to mid-afternoon instead.

On ad blocking

Sunday, March 7th, 2010

I recently started blocking ads in my browser. I don’t actually mind advertising, and I resisted blocking ads for a long time. I understand that some sites rely on ad revenue to earn a living, and I’m fine with that.

Why, then, have I started blocking ads?

Simple. Companies that insist on using tricks to try to force you to look at ads you don’t want to see. Pop-up and pop-under ads, for example.

Worse, to me, is those ads that pop up if you simply mouse over text in the middle of a news story. This is the epitome of skanky behavior on the part of advertisers. It’s offensive and disruptive. This is why I block ads now. If advertisers would simply realize, “Hey, if we only put some ads here and there in the main page and refrain from making them stunningly distracting, from interfering with the actual usability of the site,” then I would be perfectly happy to turn off the ad blockers and let the ads back into my life.

Until then, I’ll block the ads.

MDC upgrade progress report

Wednesday, March 3rd, 2010

As I’ve blogged before, we’re trying to upgrade the Mozilla Developer Center to the “Noatak” release of MindTouch (version 9.12).

Unfortunately, we’re still having trouble getting the RSS feeds on the staging server to work and so far nobody can figure out why. We’re still working with the support guys at MindTouch, trying to figure this out. It’s the last remaining hold-up; once this is resolved, we’ll be throwing the switch, so to speak.

I’ve blogged in the past a little about what we expect to gain with the Noatak upgrade, but MindTouch has updated their release notes since then, so I’m going to go over it some more.

Performance and Scaling

One of the big wins (we hope) for us will be performance. MindTouch refactored their API to help reduce the number of database hits needed to get things done. In addition, they implemented a new caching module that in their tests speeds up page performance by up to 10x.

They’ve also further improved their support for running across multiple application servers, which we do, although it’s unclear how much of this work we don’t already have, since we’re running a custom build that already integrates several of these changes. However, one additional benefit that most people won’t see — but will be helpful for administration purposes — is that the control panel now shows the status of the Lucene indexer, so I’ll be able to tell if an index pass is underway and if so, how far along it is.

UI improvements

I’ve mentioned before that they’ve added preliminary support for CKEditor 3.0. By default, however, it will still be using the FCKeditor 2.6.x that we’re currently using. We’ll look at switching over sometime after we get deployed, in order to deal with these things one step at a time. Because CKEditor support is new, there may be additional risks involved in switching to it, so we’re not in a hurry to do so.

Once we do, though, we expect the editing experience to be noticeably improved, as it’s faster and more accessible, and offers more customization options that we’ll be able to leverage.

Also, one problem many people have reported is data loss when they try to save but have gotten logged out or lose their internet connection. While over the long term, the ideal solution would be some kind of AJAX-based saving solution, Noatak adds a check where if the save would fail, you get a warning message but don’t lose your edit. Instead, you can — at least — copy and paste your work into another document, then log in and return to the editor to paste your edit back in and save. It’s not a perfect solution but is vastly better than silently losing your work!

Improvements have also been made to file attachment management, making it easier to avoid accidentally attaching multiple copies of the same thing instead of new versions superseding older ones.

Wrap up

So this is all pretty good. It’s not an enormous release in terms of user-facing features, but should be a win for performance and reliability. Of course, we won’t really know for sure how much of a benefit we’ll get out of it until we’ve deployed it and see how it fares when pounded on by our many gazillions of users.

Want to make the Web a better place?

Tuesday, February 23rd, 2010

Do you love the Web? Or at least like it a lot?

Do you enjoy teaching people how to make awesome stuff happen?

Do you have great writing skills and a knack for figuring out how stuff works by looking at the code?

Want to make the Web a better place for everybody?

If so, you’re in luck! Mozilla is now looking for a great writer to help make the documentation on the Mozilla Developer Center even better. Keeping up with the rapid pace of growth of Web technology is exciting and hectic, but extremely rewarding.

If you’d like to take a shot at making the Web better, maybe you should apply for our new Technical Writer: Developer Documentation position!

CSS transitions in Gecko

Monday, February 22nd, 2010

Current Firefox nightlies have support for the bleeding-edge CSS transitions specification. I’ve spent the last few days playing with this feature, and have written some examples as well as reference and how-to documentation for using them.

CSS transitions make it easy to smoothly animate changes to CSS styles, instead of changes taking effect instantly. With a number of ways to control and customize the transition effect, and support for everything from font size and style to colors and even position, you can create some impressive effects with very little work. I suggest taking a look at the demos I put together to get a good idea what you can do.

Obviously since CSS transitions are still in the Working Draft stage, it’s entirely possible the syntax could change, but this is a great way to easily add a little pizazz to your web content.

MDC upgrade status report

Saturday, February 6th, 2010

We’re working toward upgrading the Mozilla Developer Center from MindTouch 9.08.3 to MindTouch 9.12. We’re going through some testing and tweaking on our staging server at the moment, and hope to deploy very soon. At the moment we’re sorting out a glitch with the RSS feeds on the staging server not loading properly.

The 9.12 release of MindTouch offers a few key improvements we’ll be hoping serve us very well.

Performance

MindTouch has done some significant work on performance. They’ve added a caching module that reduces database hits substantially, which in their tests increases performance by an average of 400%. Hopefully this will be noticeable for our users, since obviously performance has been one of the largest complaints we’ve had.

Scaling

A number of bugs that made our multiple-host configuration unstable have been fixed. Most of these were backported to the 9.08.3 release we’re running currently, but there should be a slight increase in reliability with the impending upgrade.

Editor

MindTouch 9.12 supports CKEditor 3.0, the newest generation of the editor currently in use on MDC. This will not be activated at the outset, while we do further testing on the staging server, but this editor upgrade should offer us improved performance, accessibility, and reliability. In addition, it has a new JavaScript API that should let us extend it in new ways to even better suit our needs.

What would make MDC easier for you to use?

Thursday, January 28th, 2010

In a little over a week, I’m going to be having a meeting with some folks from MindTouch to discuss ideas for features that would make their software easier and better for collaborative documentation projects like ours.

Obviously, this is very exciting, and I’d like to be sure to bring lots of good ideas along with me when I go.

So, if you have thoughts on “big picture” ideas for improvements that would make the Mozilla Developer Center easier and better for collaborative documentation work, please drop me an email, or comment here, and I’ll sort through the ideas and bring them with me.

Update: “Performance” is not a “big picture” feature in the context of this request for ideas. Obviously there are performance issues. I’m talking about the actual creation, organization, and management of the documentation content itself here.

Bringing kick-ass graphics to the web in 3D

Saturday, January 16th, 2010

I’ve spent the last week and a half or so writing about WebGL, the in-progress specification to bring real-time 3D graphics to the web. This is a very, very cool technology done — in my opinion — in the right way: instead of inventing a whole new API, WebGL takes the established and well-regarded OpenGL ES standard and makes it available to web content.

I’ve written a series of eight articles with corresponding demos. In order to try them out, you’ll need to be running a trunk build of Firefox, and set the webgl.enabled_for_all_sites preference to true.

Getting started with WebGL
How to set up a WebGL context.
Adding 2D content to a WebGL context
How to render simple flat shapes using WebGL.
Using shaders to apply color in WebGL
Demonstrates how to add color to shapes using shaders.
Animating objects with WebGL
Shows how to rotate and translate objects to create simple animations.
Creating 3D objects using WebGL
Shows how to create and animate a 3D object (in this case, a cube).
Using textures in WebGL
Demonstrates how to map textures onto the faces of an object.
Lighting in WebGL
How to simulate lighting effects in your WebGL context.
Animating textures in WebGL
Shows how to animate textures; in this case, by mapping an Ogg video onto the faces of a rotating cube.

I should note that the last demo currently badly leaks memory due to a bug in the WebGL code in the current trunk builds of Firefox. A fix is in the works and should hit the tree soon.

I really look forward to seeing some of the excellent stuff that’s likely to come with the introduction of GL support for the web.

Busy, busy, busy…

Friday, December 25th, 2009

I haven’t blogged for a while. Things have been… well, busy. Between having the flu twice over the fall (which I did blog about), then pneumonia, then the crazy amount of writing I’m trying to get done for Firefox 3.6 (which may be a relatively small release, but given the compressed timeline is actually a lot of writing work to do very fast), things have been quite complicated.

On top of all that, right after Thanksgiving, my wife’s sister was diagnosed with inoperable brain cancer, and things have been upended around here while we try to help out with various things. That situation will continue to develop and be complicated for the foreseeable future.

Then last week, a close family friend (a very nice lady who was like a grandmother to me when we lived overseas) became seriously ill, and while that hasn’t resulted in any changes to what I need to do, it’s certainly been a distraction.

I’m doing my best to keep up under the circumstances; my apologies for any unanswered emails (I have plenty) or delayed documentation. Everything will get done… eventually.

All that said, we’re starting to get to the point where I’m reasonably happy with the state of the Firefox 3.6 documentation. Yes, there’s stuff left to write, but it’s getting to the point where it’s mostly relatively small (or obscure) stuff, and some “bonus” material that will help smooth out some rough spots.

Please do let me know if you see any issues in the documentation that need to be addressed, and I’ll see what I can do!

MDC account signups re-enabled

Tuesday, November 17th, 2009

We’ve deployed the new reCAPTCHA plugin on the Mozilla Developer Center, and I’ve re-enabled user account signups. The “Register” link is now available again at the top of MDC pages.

Hopefully the scum-sucking spammers won’t bypass the new signup procedure.

Do I sound bitter? Maybe…