« | » Main « | »

Xenu Link Sleuth

Sunday 27 February 2005

I just used Xenu Link Sleuth to check the links on this site. It found a few broken internal links (which I fixed), and many broken external links, which I didn't, because who can find where they went? I don't understand its external link feature though, because it seems to chase down external links on external pages as well. Anyone have any tips?

Pre-oscar news

Sunday 27 February 2005

Two tidbits from the movie world before tonight's Oscars:

First, Halle Berry won last night's Razzie award for Worst Actress, but had the class and sense of humor to show up and accept:

"I want to thank Warner Brothers for casting me in this piece of shit," she said as she dragged her agent on stage and warned him "next time read the script first."

Berry [said] her mother taught her that to be "a good winner you had to be a good loser first." She received a standing ovation.

Second, Lilly Tao (GirlHacker) has searched press releases to compile the contents of the goodie bag given away at the Oscars:

A three-night stay for two at St. Regis Monarch Beach Resort & Spa in Dana Point, CA (includes personal "surf butler") ($5,900)

Kay Unger cashmere pajama bottoms ($500) (only the bottoms??)

$10,000 package for a three-night stay at the Opus Hotel in Vancouver, three nights at the Four Seasons Resort in Whistler, lift passes, helicopter transfers, limo transfers, numerous meals, Pilates session, spa treatments, and two OXIA oxygen personal canisters.

As if these people need freebies!


Sunday 27 February 2005

Fraser Speirs has an interesting epiphany: applications that poll their home page for updates are just like RSS readers polling RSS feeds for updates. So why not distribute software updates via RSS? He calls the result appcasting (similar to the all-the-rage-but-I-don't-have-an-iPod-so-I-haven't-tried-it podcasting). It would certainly make it easier for update aggregation sites to function.

Hyphen Press

Saturday 26 February 2005

Hyphen Press is a small press publishing books about design, especially typography. They have some interesting sounding titles, such as Counterpunch: making type in the sixteenth century, designing typefaces now. I'm not as much of a type geek now as I used to be (believe it or not), but this sounds like a book I would read still. I also liked their minimal site design, with a clever morphing-title navigation trick (as you hover over the sections of the site in the navbar, the title of the page changes to where you will go).

Cog 1.4

Friday 25 February 2005

Ryan's tips on Cog got picked up by Lambda The Ultimate, which brought a number of visitors here indirectly. A few of them tried cog, and asked for some good features. I've added two of them to cog: the -x switch runs cog to remove the generated output without running the generators (to clean out the generated code), and the -c switch adds a checksum to the generated output so that manual edits can be detected.

Try Cog 1.4.

Two Windows launcher utilities

Friday 25 February 2005

I'm trying two different utilities:

Free Launch Bar is a replacement for Windows' built-in Quick Launch. It's a toolbar that sits on the taskbar, letting you launch programs. I like it because it does the right thing with subfolders (makes them sub-menus, rather than launching Explorer on the folder). It isn't flashy, but it is solid and does its job well. It's a loss leader for True Launch Bar, which has so many features I can't even organize them mentally.

ObjectDock is a replacement for the Windows taskbar. It's basically a Windows implementation of the OS X dock, and it is quite faithful (and therefore, quite flashy). It is also free, with more features available for money in ObjectDock Plus.

Monday 21 February 2005

(get it? C-omega, the last C) is an extension to C# from Microsoft Research. It provides native XML and SQL support, but more interestingly, it provides new models for asynchrony. In particular is the notion of asynchronous methods, and the even more exotic "chords". A chord is a method body associated with a number of method signatures. The body runs only once all of the method signatures have been invoked!

Managed developer testing

Monday 21 February 2005

Kim writes about Managed Developer Testing, referring to an in-depth article by Alberto Savoia about "a set of management practices supported by automated tools which [he believes] are essential to make a developer testing effort successful".

Kim says "our engineering team has nominally agreed that test-driven development is a good thing, but I'm having a lot of trouble keeping it going". I know the problem. In my experience, there are a few factors that contribute to the impossibility of developer testing:

  • Developers aren't used to writing tests, so we're talking about a change of culture, which is hard.
  • Design for testability is rarely considered when architecting in the first place, so there are large chunks of code which are very difficult to test automatically. This contributes to developers' sense that unit testing is a waste of time.
  • Developers have an in-born confidence in their code, so they view unit tests as a formality that won't yield any benefit.

All of those are back-pressures on developer testing, but in my experience, the worst is this: The constant push to get the features "done" as quickly as possible. There's little support in a traditionally-run engineering department to "hold up" the feature while the tests are written. Once it's coded and seems to work, we say it's done, then move on to the next feature. And of course if there isn't a strong culture and infrastructure for automated developer testing already in place, any effort to start is going to bear the entire burden of creating the culture and infrastructure, so it's a very high bar to get across.

As I'm learning with my personal projects, automated testing is a wonderful thing. I wish I knew how to get it in place on larger projects.

Me, parodied

Monday 21 February 2005

Like Pete, I was parodied by my friend Mike Kudla over the weekend. Here is his take on me:

Ned (Life is computer software, computer software is life)...

We had a snowstorm yesterday in Boston. We got about 6" of heavy wet snow. As I was clearing my driveway, I realized that shoveling snow is a lot like writing software. You start at the bottom and work your way up, keeping your architecture/driveway clear and clean and with well-defined boundaries.

However, snow keeps falling, bugs keep being discovered, and you find you do the best you can. Just when you think you have cleaned up the entire product/driveway and all is clean and clear from the base to the highest foundations, that snow plow comes along and throws a ton of slush right back at you, much like an unhandled exception in a Python program.. blah.. blah.. blah... (lots of detailed references to obscure software technologies sure to follow...)

It's hard to argue that I've been misrepresented! Except that this latest snowfall, I just sent my son out to shovel. In addition to being a hard-core software geek, I'm also a Dad of some increasingly-large boys.

Nutch and Filangy

Friday 18 February 2005

I happened across mention today of Filangy today. It seems to be a personal web search engine, though it's invite-only, so I don't really know what it's about. It's based on Nutch, which is an open-source web search engine.

I hadn't heard of either of these before, and they sound interesting, though oddly named. In particular, Filangy is pronounced the same as the last name of Phoebe's alter ego on Friends, Regina Phalange. I guess all the good names really are taken.

Microsoft's guide to leetspeek

Thursday 17 February 2005

In an attempt to help parents feel more at ease with their children's online computer use, Microsoft has produced A parent's primer to computer slang, wherein the intricacies of l33t are explained. There's something unsettling about seeing intentionally edgy computer slang described in such staid terms:

Rules of grammar are rarely obeyed. Many leetspeekers will capitalize every letter except for vowels (LiKe THiS) and otherwise reject conventional English style and grammar.

Christo's Gates

Tuesday 15 February 2005

By a strange twist of fate, I was in New York City over this past weekend, so I was able to experience The Gates firsthand, on its first day, no less.

People walking beneath The Gates

Good points:

  • The idea of doing something like this is very cool, and getting it done is even cooler. Any engineer would recognize this as a great hack.
  • The park had a definite party atmosphere Saturday morning. Christo has said that he wants The Gates to reintroduce New Yorkers to their park. While this is a bit condescending coming from a non-native, he seems to be acheiving his goal, which is a good one.
  • It has created a huge discussion about the nature of art, especially public art, and that's good. Suddenly everyone is focused on something besides politics, war, and reality TV.

Bad points:

  • The color is wrong. The descriptions all use the word "saffron", but let's face it: they're orange. And not just any orange, but exactly the same orange as anything to do with road construction. It just isn't that unusual to see that color in New York City. (After leaving the park, I saw the back of a temporary traffic diversion sign that was nearly identical in color, shape, and size to one of the Gates.) Subliminally, I felt like I was in some kind of danger walking around all that orange. I know that Blue and orange are complementary colors, but maybe a different color would have been better. How about pink again?
  • The scope of the project is bipolar: on the one hand, each gate is quite modest, and is experienced quite intimately. But I think the interesting part of the project is the huge scope, as all the reviews mention ("7500 gates throughout the park"). It's very difficult to get a vantage point from which to appreciate the full scope.

Overall, I give it a thumbs-up. Oh yeah, we also saw Julian Sands in the park.

Ryan's cog tips, and Theoden's code tips

Tuesday 8 February 2005

Ryan (not sure of his last name) is using Cog and has written up some tips on Code Generation with Python, Cog, and Nant. It's the first article I've seen about Cog, so I'm flattered.

Also on Ryan's blog are amusing coding tips from his brother Theoden. Tip #1:

litter your code with unused variables and assignments — if you have too few variables it'll make your application too light and it'll float away

and tip #2:

if you have a logical grouping of business logic, split the logic into two separate functions. Like so:


that way if you accidentally delete one of the functions, at least some of the logic will still be there

The original, updated

Saturday 5 February 2005

This VW commercial is amazing: Gene Kelly from Singing In The Rain, but remixed with breakdancing and body popping. It's another of those "impossible" commercials, prompting arguments about how they managed it. Also: if Gene Kelly were 24 today, would he dance like this?

Getting back to work

Saturday 5 February 2005

Mark Wieczorek writes up his thoughts on Getting Back to Work:

A lot has been written on the subject of procrastination, but I wanted to collect here my current thoughts on the discipline required to get back to the grindstone.

Much of what he says has been said before. The thing that caught my eye was his clever idea of setting your browser home page to a Get back to work reminder page, so that every time you fire up the browser, it gently nudges you back on the path of productivity. I know wandering onto the information super-highway is a prime way that my day becomes productivity road kill (was the metaphor too much?).

I'm going to try his home page idea and see if it: (a) helps me stay focused, or (b) drives me crazy with its incessant nagging.

Also, the article was ran on Kuroshin, where it collected a completely different tenor of comment!

Quick start for Subversion

Saturday 5 February 2005

I use Subversion to store my personal projects (including this web site), but every time I need to put a new project into Subversion, I have to look at my cheat sheet again. This time, I decided to write it down nicely and put it up here in case other people find it useful: Subversion on Windows quick start.

And if you are using Subversion on Windows, please, do yourself a favor. Go get the exquisite Beyond Compare diff program, and set it up to be the default diff program for Subversion.

How to cut

Friday 4 February 2005

How to cut.. is one of those works on the web that makes me smile. It combines deep knowledge with a passion for teaching, adds in top-notch technical and design skills, to produce a page that nails what the web can be about.

In this case, it is about how to cut food (not at the table, in the kitchen). I don't cook (much), but admire the fact that it is a skill like any other, and appreciate the effort that went into explaining it to others.


Wednesday 2 February 2005

MoonEdit is a collaborative text editor: a number of people dispersed across the internet all work together editing a single text file, all at the same time. It's a cross-platform implementation of an idea pioneered by SubEthaEdit on the Mac.

This is one of those things that makes me think two thoughts: First, "Cool!", then, "What would I use it for?" Has anyone used these editors? SubEthaEdit has screenshots of code. MoonEdit shows IM sessions on crack. What do they really get used for?

Some discussion about the import of this is on CommunityWiki: MoonEdit.

Css-discuss wiki

Wednesday 2 February 2005

Not only is the css-discuss wiki full of useful information about CSS, it's one of the best-organized wikis I've seen. The home page is laid out like a topical table of contents, giving you a sense that this is more than just a pile of pages: there's some structure to it. Maybe it isn't really more than a pile of pages, and maybe other wikis have just as much internal structure. It's just that the maintainers of this wiki took the trouble to organize it for us.

Sand painting

Tuesday 1 February 2005

I haven't seen anyone do this before: painting with sand as a stage performance. Ferenc Cako stands over a glass plate, making images in sand with his hands. Each image gives way to the next in waves of curves and shadows. It's quite a virtuoso performance. The subtlety he manages with such crude tools is amazing.

It reminded me of the pinscreen animation I've seen, like Alexeieff and Parker's A Night on Bald Mountain. I wish I could find an image from that short, it was very impressive.

« | » Main « | »