« | » Main « | »

When the call went out for another batch of Python Success Stories, I wrote one, which is now up on the pythonology site: Cog: A Code Generation Tool Written in Python.

This is my second Python Success Story. My first was A Custom Image Viewing Game for an Autistic Child.

tagged: python, cog» 2 reactions

Eric Harshbarger recounts his appearance on the Ripley's TV show. It's a story about the insanity you get when you intersect professional Lego building with the mishegas it takes to produce a TV segment about strange behavior.

tagged: lego» 1 reaction

Another techie-cool commercial from Honda: Purpose. This one shows an Element being rapidly built out of Lego bricks.

In case you missed it, the last one was Cog, wherein a motley assortment of Accord parts forms an impressive chain reaction.

tagged: ads, lego, cars» 2 reactions

I keep re-discovering the same thing about JavaScript: it's deeper and sturdier than its reputation. Because it is mostly used by HTML gurus, and often for small effects, it is easy to see JavaScript as a simple shallow language for adding just a little bit of code to web pages. But it really is a full-featured powerful functional programming language.

Simon brought it home once more with Executing JavaScript on page load, where he uses closures and functions as first class objects to solve a web page modularity problem:

function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      oldonload();
      func();
    }
  }
}

John Kador has written a rejection letter for rejection letters:

Despite your company’s outstanding qualifications and previous experience in rejecting applicants, I find that your rejection does not meet with my requirements at this time. As a result, I will be starting employment with your firm on the first of the month.

tagged: work   /   via: Small Values of Cool» 2 reactions

Pornzilla

Wednesday 26 May 2004

Just the thing to convince those skeptical IT managers to switch their desktops to Firefox: Pornzilla: Free tools for surfing porn with Mozilla Firefox.

tagged: browsers   /   via: vowe dot net» react

Everyone's upset about the price of gasoline. Seems like everyone agrees that we'd be better off if we could use less. Taking swipes at Hummers isn't going to solve the problem (satisfying though it is).

Of course, there are simple things people can do to reduce their gas usage: Drive slower, and check your tire pressure. I know these solutions are not popular, but why not? In a time when we're at war and people are getting killed, when we're spending hundreds of billions of dollars trying to stabilize the Middle East, why won't people sacrifice just a little to help?

And once you've done those things, drive a little less. Like most of us, you could use more exercise anyway!

tagged: cars» 11 reactions

Mike Lin writes those nifty little Windows utilities that do tricky things to the explorer, the system tray, and so on. His Taskbar Commander, for example, lets you re-arrange the task bar buttons for your running programs.

I especially liked the miscellaneous section of his FAQ:

Q: Your source code could be a critical tool for saving starving children in third-world nations. Can I see your source code?

A: No.

tagged: tools, windows» 1 reaction

I wish my high school physics class had included stuff like this: Faraday waves in a mixture of water and cornstarch. They look like freaky-deaky animated science ficiton, but the video is real and real-time. Wild.

tagged: science   /   via: Bob Congdon» 3 reactions

Teresa Nielsen Hayden dissects bad advice on cover letters. I mention this here not because I submit cover letters for manuscripts, or because I think many of my readers will, but because it includes this instant messaging exchange which concludes with a phrase of near-Seinfeldian genius:

teresanh: You have to see this.
patricknh: waiting
(tnh sends URL)
patricknh: WHAAAAAAAT?
patricknh: This is a joke, right?
teresanh: It’s serious.
patricknh: This is stupid. I now have stupid all over me.

tagged: quotes, im» react

I've never understood how Outlook decides what names appear in their type-ahead drop-down list. I've had two Kevin's in there: one I send mail to a number of times a day, another I sent to once over a year ago. Because of their last names, never-again-Kevin appeared first in the list, and all-the-time-Kevin was second.

I asked my IT guru to find out how to delete names from the list. I thought it would require poking around in some address book, removing entries. Nope. It's dead simple: when the list pops up, use the arrow keys to select people you don't want, and hit the delete key! They're history!

» react

I dabble in COM when I have to, and things usually go just fine. When they don't, I usually end up getting lectured about threading models. It seems like the kind of thing I can internalize and put to work, but I haven't managed to yet. The next time I need to try to understand it all, I will refer to Larry Osterman's What are these "Threading Models" and why do I care?

Occasionally I discover a new blog and find it so compelling, I read through a few month's worth in one sitting. Danny Gregory's Everyday Matters is one such blog. He is an artist. In particular, he is an illustrated journalist (that is, someone who makes illustrated journals). He and his blog are obsessed with drawing, and make me want to take it up myself. I doodle all the time, but have never felt comfortable trying to draw "real" things. I'd love to, but it doesn't come out right. At least not yet...

He discusses and links to all sorts of other art types, like Taliah Lampert, who only paints bicycles.

tagged: art, blogs   /   via: Boing Boing» react

Keith Devens tries to assess the Iraq WMD situation:

Given the knowledge that Saddam did have [WMD] at some point, I see only three possibilities:

  1. They were moved before the war, most probably to Syria
  2. They're still in Iraq but we haven't found them yet
  3. They were destroyed by Saddam but he didn't tell anybody or keep any documentation of their destruction

Option three, I believe, contradicts good sense, for many reasons I think it would be tedious to enumerate.

To me, this seems like grasping at straws.

» read more of: Devens on WMD... (6 paragraphs)

Cold turkey

Wednesday 19 May 2004

Kurt Vonnegut is still writing his minimalist maximal rants. His latest is Cold Turkey. It's more than a bit hyperbolic, but much of his writing is. He mentions again what I think is his greatest quote (which he attributes to his son):

We are here to help each other through this thing, whatever it is.

It's simultaneously a simple directive about how to live, and an admission that we don't understand the big picture.

tagged: books, politics, quotes» react

Just to show that there's more than one way to look at any given thing: oddizm's page is all about accepting autism as not bad, just different. She links to a collection of adults on the spectrum, and has a lot of good-natured humor. I liked the idea of a "stim team".

The adults are much higher functioning than my son will be, but it helps to see it all as a spectrum, and to know that there are people pushing the envelope of acceptance out there.

tagged: autism» 3 reactions

I just love entries about grammar that dissect fussy rules and end with the author in a rage:

God dammit, I can feel the veins standing out in my neck. I need to step outside for a while and kick something.

Go read the whole thing if you're into that sort of thing. I'm not sure Bram Stoker is the ultimate authority on grammar, but he's a good place to start.

tagged: language» react

I just finished applying sealant to a set of stairs, and it reminded me, as many things do, of writing software.

» read more of: Sealing stairs... (8 paragraphs)

This is not how to deal with exceptions:

Ned continues a discussion Joel started about exceptions in software. Fortunately for me I mostly ignore exceptions because I don't really give a damn how well my software works - just that I get paid (and quick!). Its possible this is wrong. [Force moral quandry to bottom of mental stack (*grunt*)... aaaannnnddd... its gone. Much better.]

[Note: Normally I wouldn't copy the entry here, but a number of readers reported that following the original link crashed their Mozilla browser. I also saw strange intermittent behavior on that page, where at some point, the text becomes a garbled mess. Perhaps there's a server problem? Perhaps the author of the entry wrote the software?]

In one of the comments to my entry about Read Print from Tuesday, "Blues" suggested trying out PG Distributed Proofreaders, and I did. It's a fascinating web artefact. They've solved the problem of how to accomplish the labor-intensive job of proofing and correcting the OCR scans of books.

The site is a web application for handing out units of work, and getting back results. They have over 11,700 people signed up to proof pages, and they are proofing 6200 pages a day. You sign up on the site, then log in to proof pages. You are presented with a scan of a page and the text as produced by the OCR software. Your job is simply to compare the two, and make corrections. Mostly it seems to come down to re-joining hyphenated words (why can't OCR software do that itself?). All they ask it that you proof one page a day.

It's a cool way to provide a little bit of labor for a noble cause: the dissemination of public domain information electronically.

tagged: books» 1 reaction

I rarely read fiction anymore. When I used to commute on the T (public transportation for you non-Bostonians), I read a lot of fiction, and I enjoyed it. Now I rarely have the time. There are so many other things competing for my attention. But I'd like to change that.

I saw the book Life of Pi at my in-laws house, and it intrigued me. I had heard of it when it first came out. It seemed like an engaging and thought-provoking story, so I decided to read it as a test case in reading fiction in the midst of a complex life.

Life of Pi

The word "Pi" not withstanding, it is not about math, but about a man and a tiger. I've already hit paragraphs that make me glad I took it up:

... atheists are my brothers and sisters of a different faith. Like me, they go as far as their legs of reason will carry them — and then they leap.

I'll be honest about it. It's not atheists who get stuck in my craw, but agnostics. Doubt is useful for a while. ... But we must move on. To choose doubt as a philosophy of life is akin to choosing immobility as a means of transportation.

tagged: books» 4 reactions

I've always admired the nobility of Project Gutenberg, which aims to make public domain books available electronically. But it's always suffered from cosmetic issues: the web site looks very 1996, and the books themselves are often just text files (and those that are HTML versions have an odd every-other-paragraph-is-bold thing going on).

Read Print has similar goals, but a better designer. The site feels clean and light, and the books seem inviting rather than cramped. They have nowhere near the number of titles that Gutenberg does, but lets hope that the two can work together to bring the best of both sites together.

tagged: books   /   via: Foreword» 6 reactions

When I look back on a week of work, and review the code changes I've made, there are often a number that are trivial changes to clean up code, often in far-flung areas. I am mocked for this habit. I sometimes mock myself for it. But I think it is important. I call it "pulling weeds".

» read more of: Pulling weeds... (6 paragraphs)

With both my New York City upbringing and my early-80s video game experience, how could I not mention PacManhattan? It's Pac-Man, but played by real people on the streets of New York. The five players (the Pac-Man and four ghosts) stay in contact with five handlers via cell phones, updating their position as they chase each other around the streets.

It's similar to the medieval game of human chess, but updated to a modern game with modern technology.

For those of you New Yorkers obsessively reading this blog in real-time, there's a game starting today at noon.

tagged: games, places» react

Tristan Louis has another take on the techie water-cooler question of how many machines Google has. His approach is a bit more scientific than the usual method of extrapolating from the numbers claimed in PR puff pieces. He starts with the claim in their S-1 filing about how much money they've spent on hardware, and then does some rough figuring about what they could have bought with their quarter billion dollars. He figures it's between 45,000 and 80,000 servers.

BTW: I met Tristan in what may be quintessential early 21st century blog geek circumstances: We were at BloggerCon, and I sat next to him and said, "I recognize you from Orkut".

Take a look at the VolkswagenBall, by Lars-Erik Fisk. Not only is this thing meticulously crafted, but its genius is that somehow the VW bus was already kind of round in its own blocky way. As odd as a spherical VW bus sounds, it actually seems almost natural.

The VW Bus Ball

tagged: art, cars   /   via: Boing Boing» 1 reaction

Psyco

Tuesday 4 May 2004

I haven't tried Psyco, but it sounds intriguing. It's a clever just-in-time compiler for Python. It inspects the types of objects at run time to compile away the dynamism of the language, speeding up execution without changing the semantics. And you have to admire the effort that goes into creating a video-game-styled animated slide show explaining the inner workings.

tagged: python» react

A few days ago I posted about the new Kinko's logo. A number of people commented on it, but Thomas Haynes was the only one to point out that in fact, I had gotten the colors wrong. Mine has pure cyan, while the real thing has more nuanced colors. As usual, everything is more complicated than I had thought.

» read more of: FedEx identity, take 2... (5 paragraphs)

tagged: design» react

Some quick links about pursuits that I might have undertaken in a parallel universe:

¶   Paperclip Art

¶   The Worst Game Room Ever!

¶   Thorax cake

¶   POVRay Fractal Raytracing Contest Results Page

¶   The First Patent

tagged: quick links» react

As a developer, I've often puzzled over how to do good feature coverage testing. You have to take a complex program with many dimensions of features, and design a finite set of tests that will verify that any possible use of the program behaves correctly. How can the infinite variety of uses of the software be whittled down to a manageable yet complete set of test cases? When I am asked to interview candidates for testing positions, I ask them this question, precisely because I don't know the answer. If a candidate says something that enlightens me even a little, I recommend hiring them.

Kim was also thinking about combinatorial testing, and found jenny as an aid in planning combinatorial tests. Jenny is a simple program that doesn't understand anything about your particular software. All it does is tell you which combinations of features to test to ensure that every possible pair (or triple, or quadruple, or ..) of features has been tested together. Then you take its feature tuples and write tests from them.

I haven't used jenny, so I don't know how much of a help it is. Clearly, it takes more than a combinatorial tuple generator to create good test scripts. Even deciding what dimensions are important in your software seems like an art. Any real product would probably have hundreds of dimensions, meaning they couldn't all be fed into jenny at once. I guess you'd have to make some decisions about how to partition the dimensions into manageable arenas. Even with these limitations, jenny seems like it could be a useful tool to reduce the number of test cases while keeping the same coverage.

Stories like this one mention that Google is raising $2.7 billion in its much-discussed IPO. What they don't mention is that they are actually raising a more precise amount: $2,718,281,828. Recognize the number? It's a billion times e, the base of natural logarithms!

« | » Main « | »