Wuff

Saturday, April 24, 2010

skiing: Elite Feet perfecting boots

The Nordica Dobermans I got 5 years ago at Elite Feet still fit well. The foot crushing soon relaxed into a snug fit. But two problems:
  • the sloppy Italians used a velcro™ knockoff for the power strap at the topthat simply doesn't velk — the straps break loose while skiing and slide apart when I carry the boots
  • water gets into the shell and after a few hours of skiing I can feel dampness in the liner
Nordica Doberman with BOOSTER strap and duct tapeI know Cosmo's Footwerks makes beefy power straps but I wanted to stay with Elite Feet who have adjusted and repaired the boots a few times over the years, always for free. I went in mid-week while Christian was around (Elite Feet is busy with a second shop at Northstar) and he replaced Nordica's joke straps with BOOSTER straps. These have a huge vibration-damping pad in front and a solid metal cam closure that locks in tight.

As for the water intrusion, I used the awesome power of duct tape and it's made some improvement. Nordica inexplicably cut a notch into the shell near the first buckle.

Meanwhile a Shred Betty had some problems angulating and engaging her inside ski's outside edge in her Nordica boots. Legendary instructor Tim Reeve recommended Start Haus to her boots and possible canting. But instead of working with the boots she brought, the boot fitter said they were too loose and tried to put her in Dobermans. Rule 1: if someone tries to put you in a tighter boot, they're showing off their boot-fitting prowess above listening to your needs. Instead, Christian at Elite Feet suggested removing her liners, allowing them to swell up and reverse some of the "packing out" that compresses the liner over the years. He tested her for canting using Elite Feet's complex mechanical rig (much better than a plumb bob from the knee, and shaved her boots down, inserting the special red shims in the photo and planing the boots so they engage with bindings.Nordica boots with Elite Feet canting shims
I was hoping a gross misalignment would explain my blown turns to the right with my left ski railing instead of engaging a turn, but no such luck; Christian tested me on the rig and I'm true.

Labels: , ,

Friday, April 16, 2010

music: trying to get artists to let me compensate them

We should be in a golden age of abundant music creation. Record a song, upload it to iTunes and Amazon music store, blog/FB/tweet about its release, then sit back and collect most of the revenue from purchases by adoring fans. Use the profits to fund next recording. Friction-free commerce, screw the evil record company suits, master your own destiny, mutual exchange of value with fans.

But it isn't happening! Instead artists are fed up with the music business and frustrated by the declining sales of their label releases. The tired refrain from self-justifying music pirates "Artists should make money from merchandise sales and touring" is garbage; I want excellent recordings more than a T-shirt or a hit-or-miss performance that I may not be able to attend.

Whenever I hear about a recording by my heroes, I look to buy it online, but I only find songs from official album releases that I already own, which is frustrating as hell. I'm able to talk with some artists themselves about this, and the semi-conversations are dispiriting. I wind up feeling like I'm hassling them to accept my money.

From Thomas Dolby's blog post about the great set of performances he organized for the TED2010 conference
I usually put together a house band who play a short piece to open each of the 12 sessions over the 4 days of TED... After the four exhausting days of TED were over, we went to a local studio run by an old friend Chuck Mitchell, and recorded our 10 pieces for posterity. We managed to get them all down despite the onset of the familiar post-TED hangover. Perhaps I’ll include them on a TED house band compilation CD one day; and perhaps ‘Pistol’ will go on my album as-is. ...
# skierpage Says:
I don’t get it. You’re talking about some great performances to your fan base, they were obviously recorded during the TED conference, and you’ve even gone and re-recorded some of them. SO WHERE THE ^%$#@! IS THE [Buy Now!] BUTTON?!

C’mon, make some people happy and make a little money! What’s the problem?

# TMDR Says:
Interesting attitude, Skierpage. Believe it or not, the priority at a non-profit event like TED is *not* to make a ton of money from the music. As for the performances, I plan to make some of them available in due course, but I just got home jet-lagged from California and need a rest! And, as you can imagine, it’s not easy to clear copyrights for people like Sheryl Crow and David Byrne, so there’s a risk those may never get heard. A lot happens at TED that you can only experience by being there, but they’ve done a pretty good job of making a lot of the content available to the world for free, with a lot more to come. And, as I mentioned above, there was talk of a compilation CD featuring TED music.

# skierpage Says:
Dear TMDR,
Thank you so much for responding to my crass whingeing. Your performances have value, I long for a system that encourages and rewards you for making them available without it being a grinding chore. It sounds like musicians need to adopt standardized performance copyright clearance language (something concert bootleggers don’t have to mess with), and perhaps a lawyer-mandated USB pinprick accessory on the concert laptop to sign in blood after the performance?

So you know I’m not one of those “I’m not going to pay for music until it comes with a pink pony” liars on the ‘net, I just bought the SXSW version of “The Key to Her Ferrari” from Amazon MP3 Downloads while waiting. Sweet! (BTW, Amazon says “From the Album Alien’s Ate My Buick” — Apostrophes Ate Our Language.)

# TMDR Says:
Actually the point is, this is really nothing to do with the money. I have an album of my own music to finish, and that’s a higher priority than getting the TED intros–which are all cover versions bar one–out to the general public. But I promise some if not all of them will be available at some point, as audio or video or both.
Ouch, how to irritate the creative type with well-meaning exhortation. By the time “available at some point” rolls around, the excitement and interest will have dissipated. Meanwhile I can get immediate gratification from bootlegs and crummy YouTube videos, but the artist earns nothing.

I had a similar exchange with Max Tundra on Facebook:
Max Tundra: I did a cover version of "Digital Love" by Daft Punk, playing all the parts by hand/mouth. Check it out, on this great podcast full of reinterpretations: http://www.cokemachineglow.com/podcast/5145/fantasycovers2010-parttwo
You and 23 others like this.
S Page: You are a lock for Supertramp's next keyboard player! (5:34 on) How can we buy this performance, it's not on Amazon?

Max Tundra: It's not for sale, just grab it for free from the above link - there's a downloadable mp3 of the entire podcast.

S Page: Call me a crazy anachronism, but I like to compensate artists for their fine efforts ;-) Create new work, sell, profit, repeat until we die.

Max Tundra: Nice idea, but it'll never catch on
Sure I could get an audio editor such as Audacity and slice his song out of the podcast, but again the artist earns nothing. It is about the money, because if it doesn't show up artists will stop making quality (expensive) recordings.

I would love to exchange some money for these recordings and many more. Apparently it's not as simple as I make it out to be in my second sentence above. But it should be!

Labels: ,

Sunday, April 11, 2010

software: slicing up PDFs

I wanted to combine all the statements that I downloaded for my audit into a single PDF and then exclude all the cover pages plus the pages of boilerplate disclaimer, "how to reconcile your account", etc. PDF is a standard page presentation format, so you would expect there to be software to do this besides paying Adobe $119 for Adobe Acrobat.

There is, but it's the usual onion: a load of crap surrounding a simple idea.
  • Googling for "split PDF" finds the usual mess of sites and shareware and paid utilities
    • So I restrict to "linux split PDF", which points me to pdftk that Sid Shepard wrote in support of his book. But installing that requires 50MB of supporting GCJ packages. It's really cool this runs as a standalone program, but I already have a Java interpreter installed so this approach is 20× bigger and more complicated,
      • So I google some more and find joinPDF, supposedly a simple script and a Java library written by Gerard Briscoe, but the directory to download for this is defunct.
        • There are tons of other search results for this, on Mac shareware sites (someone bundled a graphical user interface for the Mac for users who don't know how to enter command lines), but their links are broken as well. (As an aside, why can't Google be smart? If I Google "download joinPDF" and a page with that text has a broken link, then don't waste my time with that search result!! I need a decision engine, not a search engine.)
          • I finally find a web site that has the simple original joinPDF for download. Follow the README.txt's instructions to manually copy the Java library and two scripts to the right location, and I'm set!
            • It turns out the actual core of this onion is a Java library, iText written by Bruno Lowagie, that can slice and dice PDFs: both joinPDF and the bloated pdftk simply include this library and provide a wrapper around it

Now enter the command line
joinPDF combined_statements.pdf checking*.pdf
, and I get combined_statements.pdf! But the files use stupid date naming so they're in the wrong order. Rename them with ISO8601 date format 2007-01, 2007-02, etc. file names, repeat.

Now I have to excise the pages I don't want. joinPDF provides another command, splitPDF, to split a PDF into individual pages, but this does not remove particular ranges of pages. (I should have used splitPDF to split each statement into _page1, _page2, etc. files, then glued a subset of these together, but that seemed to mess up the thumbnail display). I could probably get the source code and write my own simple wrapper around the iText library for an excise command, how hard can Java programming be? But that seems silly. Surely a Portable Document Format should make it easy to cut out pages I don't want.

I bring up combined_statements.pdf in the awesome vim, text editor. It understands PDF files and colorcodes certain words of them: obj, /Type, Kids, stream, etc. Looks promising, but there's no obvious Start of page 39... End of page 39 to chop out. I just need a little guidance as to what these mean. Back to Google for "PDF file format". But all of the articles show graphical tools or describe the format from the bottom up instead of telling me at a high level what to look for. So I add one of the words in the file, endobj to my Google search, and find Introduction to PDF! That's what I need!

For reference, in a particular PDF produced by printing a Quicken document in Wine...

You need to delete the page object and optionally things it references. The PDF is full of flattened objects. Each object starts with NN 0 obj where NN is a number for the object and 0 is its version (0 for most generated objects), and ends with endobj . Delete from one to the other and you've removed an object.

One object in the file is:
2 0 obj
<< /Type /Pages /Kids [ 3 0 R
4 0 R
5 0 R
...
46 0 R
] /Count 44 >>
endobj
This lists all 44 pages in the file, using their object numbers. I think they're in the order you see them, so delete the Nth line inside the brackets and the PDF will no longer have an Nth page. Done! (My PDF viewer Okular doesn't seem to mind that the /Count 44 is no longer accurate.)

You can go on to actually get rid of the page object you removed from the page list:
46 0 obj
<< /Type /Page /Parent 2 0 R
...
/Contents 137 0 R
is the page itself. But that page object is only 12 lines long, where's the actual massive text block with the contents of the page? Well, any time you see NN 0, it's probably a reference to another object; Sure enough, /Contents 137 0 is another object with a huge stream of stuff:
137 0 obj
<< /Length 138 0 R >>
stream
q 0.240000 0 0 0.240000 0 0 cm /R0 gs 0 w 1 J ... ...
So you can delete this as well. There are more objects you don't need, but they're small enough to leave around.

Update: The joinPDF author's web site actually does exist and you can click through (Software > joinPDF) to his software, but incredibly, Google search results show all those broken links in preference to this! Maybe because he's using frames, but c'mon Google, be smart!

Labels: , ,

web: it's my data on their web site, let me get at it

I'm being audited, the IRS says "Please bring cancelled checks and deposit slips", how quaint. It's more like 250+ pages of electronic statements and electronic check images to print out. I wish the IRS let you bring a directory of hyperlinked PDFs.

Fortunately my financial institutions provide online records going back far enough, though one (whose name rhymes with "smells cargo") cuts off after a pathetically short two years.

==> Save your own PDF copies of your statements! Don't rely on your bank.

Unfortunately, all financial institutions make it difficult to grab this information. The URL to download my January 2007 statement is invariably an impenetrable mess. It should be just https://secure.thebank.com/records/internalUserID/2007/statements/checking_1234_2007-01.pdf, where internalUserID is what refers to me internally. Then I can just change the end of the URL to 2007-02, -03, etc. You might think it's more secure to have a meaningless jumbled URL with token IDs and session IDs and crap, but that's confusing a secured session with a complicated name, and it's guaranteeing the URLs will change when they rethink their web site.

(The same really holds true for any other data on the web. I can't get my pictures out of Sprint PictureMail because there isn't a simple URL for each one.)

Also, the institutions do the usual crappy job of naming the downloaded file. When I repeatedly click to download my statements, I get
BANKSTMT_APR2008_1234.pdf
BANKSTMT_AUG2008_1234.pdf
BANKSTMT_DEC2007_1234.pdf
BANKSTMT_DEC2008_1234.pdf
BANKSTMT_FEB2008_1234.pdf
BANKSTMT_JAN2008_1234.pdf
Note the ^$#@! random order of the files because the institution didn't use ISO8601 date format. BANKSTMT_1234_2008-04.pdf sorts in the right order, why do people persist in using stupid date formats?.

The real interesting issue is what would happen if I was no longer a customer of Tells Margo? The moment you're not a customer, you lose access. But that's not fair, a former customer still should have rights to access old data. Again, that's why simple URLs are so important. An institution should let me access /records/internalUserID/correspondence/2010/some_old_record.pdf even if my accounts are defunct. And again, until the world works as it should, save those records in your own well-organized system despite the hassle.

Labels: ,