Nokia N900 running Google Wave.

I’ve been wondering how that feature freeze would work out for quite a while. Not very well, it seems. The situation does suit those who can send a private request to the editor and have it turn up in the spec. I can see why Microsoft wants to add things without a bunch of questions from toxic personalities who work at big competitors.

Content Security Policy

September 30th, 2009

CSP is just about ready.

Spin Control

September 9th, 2009

This little script takes Spin Control output from a running process and tries to demangle the symbols to get sample stacks. It was just a quick hack. Someone make it better!

I used the script to file bug 515447. You can use it by turning on Spin Control and running it on the text file output. I don’t know why Spin Control can’t find the symbols itself. There are also some other options for running atos that probably don’t need a running process. You’ll need a build that has symbols, like the Shark-enabled nightlies do.

from __future__ import with_statement
from subprocess import Popen, PIPE

firefox_pid = 85034
spin_file_path = "/Users/sayrer/Desktop/spinout.txt"

class memoize:
  def __init__(self, function):
    self.function = function
    self.memoized = {}

  def __call__(self, *args):
    try:
      return self.memoized[args]
    except KeyError:
      self.memoized[args] = self.function(*args)
      return self.memoized[args]

@memoize
def findSymbol(word):
    # run atos
    cmd = ["atos", "-p", str(firefox_pid), word]
    proc = Popen(cmd, stdout=PIPE)
    stdout, stderr = proc.communicate()
    return stdout[0:-1]

def demangle(words):
    output = ""
    for word in words:
        if word.startswith("0x"):
            word = findSymbol(word)
        output += " " + word
    return output

with open(spin_file_path) as a_file:
    for line in a_file.readlines():
        indent = len(line) - len(line.lstrip())
        words = line.split()
        print line[0:indent], demangle(words)

Feel free to improve.

Finger Trees

September 7th, 2009

part 1 and part 2.

looks like some of the commenters say these aren’t quite finger trees. ok.

Welcome to David Anderson

August 27th, 2009

David joins Mozilla full-time after a stint as an intern from Worcester Polytechnic Institute and then some contracting. His work focuses mainly on TraceMonkey and its Nanojit component. He blogs at http://www.bailopan.net/blog/.

Please join me in welcoming David!

Offered Without Comment

August 3rd, 2009

Sam Ruby: “It appears that the process is: no matter how clear and complete the proposal is, the response is the same: some variant of ‘I don’t understand’.”

Offered Without Comment

July 28th, 2009

Dan Connolly: “…I don’t see any argument that would convince a critical mass of the WG/market to support it in the near/medium term, so I wonder if pursuing is a good use of WG time.”

Broken Record

July 19th, 2009

I’ve written about narrow windows of opportunity before. Font makers have enjoyed quite a wide window of opportunity, thanks to the limitations of consumer grade PCs from the 80s and 90s.

The business models in play today just don’t make sense. I mean, the font makers call themselves “foundries”. That is ridiculous. They don’t make metal letter forms. They design fonts, so we should call them font designers. We shouldn’t legislate or standardize a fee structure designed for metal. Font designers also got a break from the Web, since fonts were a pain to download over modems. Today, the technology to allow any font on a web page is close to ready. There’s a little stutter sometimes (in all browsers supporting this capability), as the default font is replaced by a fancier one. Unless your computer has it cached.

That caching bit is pretty key. Loading fonts is time consuming. That’s why your operating system stores them in one place. The Web will be no different. Fighting about font rights on origin servers is a backwards line of argument. Web authors will converge on a caching scheme to share fonts across web sites. I wouldn’t start a business attempting to act as a font broker, either.

thought polution

July 19th, 2009

Johno Boardley: “Foundries do not want their raw (.ttf and .otf) fonts uploaded to Web sites where they can easily be downloaded (stolen).”

Downloading is not stealing. Stealing is when you take something without permission, and the original owner no longer has it.

updated: in the comments, shaver points out that millions of people have “stolen” Firefox. I discussed only unauthorized downloading.