Active Delight !

I took some pictures of some lovely jewelry my lovely wife made, yesterday. And when I went back today to look at the results, I noticed something odd. There was an unexpected dark halo around the subjects.

Nikon D90, 105mm macro

I thought hmm… is my fancy macro lens prone to some strange halo distortion when shooting bright subjects against medium-blue backgrounds ? I sure hope not – that’s not a cheap piece of glass. So, I did some research about lenses and dark halos on the web, but didn’t find anything that sounded like the problem I was seeing. Stumped, I did the next best thing to Googling: a scientific experiment! I put a different lens on the camera and tried the same shot. Result? Exact same problem. So it probably wasn’t the macro lens (whew). It was likely the camera.
(more…)

Filed under: Photos — cleek @ 4:39 pm    

60 Second Reviews

  • Genesis – A Trick Of The Tail. I used to love this record, when I was 15. Now it’s 50% cringe-worthy and 25% meh. The other 25% is OK; I can still listen to “Dance On A Volcano” and “Squonk”. For some reason, the iTunes version of this album is nothing like the official release: some of the songs are replaced with live versions, and many of the songs are completely missing. Looking at the original track list, I can’t say it matters: I’d still give it one thorn: Þ
  • The Who – Live At Leeds (deluxe edition). This is a hugely expanded version, with like 30 songs (including all of Tommy). But, I want to like The Who more than I actually do like The Who. Basically, I really do not dig rock-operas – except for “A Quick One While He’s Away”, which is funny, goofy, and quick (but which gets a 5 minute spoken intro on this). Most of Tommy makes me yawn and I won’t even bother with Quadrophenia. Still, the rest of it (“Young Man’s Blues”, “Substitute”, “Summertime Blues”, etc. – the early songs) is fantastic. Three thorns: ÞÞÞ for the whole.
  • Beck – Modern Guilt. Beck being Beck… always a good thing. Most of his records run together for me. But, I still like them. Three thorns: ÞÞÞ
  • Shout Out Louds – Howl Howl Gaff Gaff. This is growing into a new favorite. It’s a chunk of enthusiastic alternative pop: very catchy, but just quirky enough to keep it from a broader audience. They’re a bit louder than their fellow Swedish indies Peter, Bjorn and John – not heavy, but more guitars, louder drums, more-aggressive vocals; and the singer’s style reminded my wife of Steven Malkmus from Pavement (whom she Does Not Like) because he goes willfully off-key here and there. I think it’s charming. Four thorns: ÞÞÞÞ
  • Cassandra Wilson – Loverly. On this record, she goes back to jazz standards and classics – there are no covers of contemporary pop songs on this record, for a (welcome, IMO) change. But, old or new, nobody covers a song like Cassandra Wilson. Between her unique vocal style and her amazing and unconventional band, every song she does becomes, unmistakably, a Cassandra Wilson song. Another solid record. Three thorns: ÞÞÞ
  • Faces – Best Of The Faces (Good Songs From Bad Boys). There are some good songs here (“Ooh La La”, “Stay With Me”, “Sweet Lady Mary”, etc.). But that early 70′s style grates on me: too much noodling, too much of that heavy “one and TWO and three and FOUR and…” chugging. I can’t help but picture Rod Stewart stiffly strutting around, pouting to the beat, ridiculously. I hear they’re going to do a reunion soon. On the revelatory side, after listening to him here it seems like the most obvious thing in the world that Ron Wood would eventually end up with the Stones. Either two or three thorns: ÞÞ / ÞÞÞ
  • Sea and Cake – Car Alarm. Their last album had only one or two memorable songs. This one has zero. It’s all flat and samey. I know they’re still capable of good ideas, but they’re putting all the good stuff on their solo records. When they get together, it’s just flat. Which is not to say it’s offensively bad or anything. I can certainly listen to it if I want to – I just don’t want to. One thorn: Þ
Filed under: Election,Uncategorized — cleek @ 9:22 am    

30 Second Reviews

  • 10 Ft Ganja Plant – Presents. This is old-school reggae/dub… but it’s not Bob Marley – your aunt won’t be singing along while she sips her margarita. This is mostly instrumental, and where there are lyrics, they’re often incidental and buried in the mix. This is late night, get a buzz on music (as maybe the group’s name implies?), and I like it. ∅∅∅
  • Bill Frisell, Ron Carter, Paul Motian – Bill Frisell, Ron Carter, Paul Motian. I’ve been playing the hell out of this – I love it. It’s introspective, detailed, instrumental guitar/bass/drums jazz. Very accessible, but still very interesting. The kind of thing that makes a guitar player choose between getting better or giving up forever. ∅∅∅∅∅
  • Bill Frisell – Have A Little Faith. This starts off with a version of Aaron Copland’s “Billy The Kid” ballet, and since I’m not crazy about Copland, this section falls flat for me. But the other half is a bunch of contemporary tunes that I like a lot better. Frisell is such an great guitar player that he even makes a 10 minute version of Madonna’s “Live To Tell” interesting. Don Byron’s in the band on this one, and gives the songs a bit of an edge now and then. ∅∅∅
  • Floratone – Floratone. Another Bill Frisell project. This one immediately reminded me of the band Califone, enough to make me wonder if “Floratone” is actually a play on “Califone”. Here’s the band’s description of their sound:

    The Floratone sound is, in the words of Townsend, “futuristic roots music,” at turns jazz-vibed, swamp-funky, intensely rocking, ambiently grooved. The music drips with grit, lopes with a sweet lyricism, bursts with surprising turns, sinks in with FX’d beauty.

    That’s pretty much how I’d describe Califone’s “King Heron Blues”. ∅∅∅

  • John Scofield – This Meets That. Another giant of jazz guitar. But while Frisell’s vibe (on the records above, at least) is mostly intimate and atmospheric, Scofield is electric and funky. Most of the songs on this are rocking and extroverted, with horns and deep grooves; a couple of slower songs here (including a duo with Frisell) and there balance it out. ∅∅∅
  • Adrian Belew – Side 4. This is a live recording of the tour that I gushed over, back in August. And, happily, it’s every bit as good as the show I saw – I wasn’t just imagining it. They make a mighty sound for a trio: Belew’s guitar filling up every bit of space between Julie Slick’s thundering bass and Eric Slick’s amazing drumming; and Belew’s vocals sound great. The song choice is perfect for the lineup – lots of heavy, fast, tricky rocking things, no acoustic stuff or ballads – and they rock the hell out of them all. I listen to this, I listen to that record from Battles, I wonder why Belew isn’t an indie rock superstar. ∅∅∅∅∅
  • Kevin Drew – Spirit If… . Drew’s part of the nucleus of Broken Social Scene, so it’s no accident that this sounds pretty much like a BSS record. It’s got that same twisted orchestra-pop sound, the same lyrical flavor as BSS, and the title says “Broken Social Scene Presents: Kevin Drew”. So, I just pretend it’s a BSS record that iTunes mislabeled. Good stuff, either way. Highlight song: “TBTF” (Too Beautiful to Fuck). ∅∅∅
  • Andrew Bird’s Bowl Of Fire – Oh! The Grandeur. This is an early one, before his turn towards indie-pop. It’s him in a small combo (drums, guitar, violin, banjo?, bass), doing songs that sound like 20′s- and 30′s-style small-group swing jazz (he did play with the Squirrel But Zippers for a while, after all); the recording even has that compressed in-your-face feel of an old 78, but without the scratches and pops. Bird’s lyrics are as sardonic as ever, and you can hear bits of melody and structure in these songs that point to where he was going to go with his subsequent records. But, it sticks so much to that old-school vibe that for me, it’s more of a curiosity than something I’d recommend to someone who’s new to Bird. I still like it, though. ∅∅∅∅

And, a hat tip to Apostropher for putting songs from Frisell, Scofield and 10ft Ganja Plant on that mix, way back when.

Filed under: Uncategorized — cleek @ 10:30 am    

Build me a dinosaur!

Watch as a very talented 3D modeler builds a CGI dinosaur.

Incidentally, I’m considering getting a tattoo of a Dromaeosaurus, probably based on this illustration at the Yahooligans site. I like the style they use for the dinos on that site – check out the Deinonychus and the Scipionyx.

The tricky part, I guess, is to find a way to make one of those drawings large enough so that the tattoo person can actually draw some of the fine details (teeth, claws), without making it so big that it won’t fit on my skinny little Dromaeosaur arms.

In other dino news, I once used one of their drawings (and an Andy Capp panel) for this guy:

Filed under: Uncategorized — cleek @ 12:14 pm    

Bi-lateral

My day job is “Senior Programmer”. That means I have at least 5 years of professional programming experience (14 actually). So, bascially, I know what I’m doing when it comes to programming. Sure, the young kids are going to have a better grasp of the nuances of C# or MSIL or whatever Microsoft has decided we all need to know this month. But programming isn’t really about the programming language you use; programming is really about knowing what you need to do with whatever language you have to use, in order to satisfy your customers. And after a while, you hit a point where you realize they’re not really asking for anything new, they’re just asking for it in different ways or with slight variations on a common theme. And there are dozens of books on this – written well before I figured it out for myself. So, at one level, my day jobs have been all pretty much the same kind of thing.

I imagine it’s something like house-building: the plans say a wall goes here, and there’s a window here and it might have a strange angle for a dormer or something. But people who have a lot of experience building houses know how to build the kinds of walls that go into standard 2×4 and sheet-rock houses. And if a given plan mixes walls and ceilings in new and unusual ways, it’s not a huge problem – it’s just a matter of working it through using techniques you know like the back of your hand. Sure. maybe some new guy will show up with a tool that can cut wood like an Exacto knife through paper – but that doesn’t tell him how to build a wall, and it can’t teach him. That knowledge comes from practice. In many ways, like house building, programming is a craft.

My side job is also as a programmer. But I write image processing tools – a fun little niche, in my opinion. Of course I can do all the basics: read a JPG, rotate it, resize it, filter it, put text on it, etc.. But that kind of stuff has been understood for decades. I didn’t invent any of it, I just learned from looking at what other people have done. Image processing is very technical at its foundations, but there has been so much research and development done on this stuff over the years that, at this point, a lot of it is like following a cookbook: need to know how to rotate an image? there are a million places to look for good ways to do it; so pick your algorithm and type it in. The only thing left for much of it is to make your implementation as fast as you possibly can. Because besides accuracy, image processing users want their image to rotate as fast as fucking possible, and not a millisecond slower. But, it’s still pretty much cookbook stuff at heart. So, at that level, it’s just like my day job – the standard problems have already been solved, it’s up to you to adapt the well-known solutions to the task at hand. The fun for me is in the optimization (the speed improvements – an art form of its own).

But, unlike my typical day-job stuff (ask the database for the data, put it in a list, tell the buttons what to do, etc) there’s also a cutting-edge to image processing. There’s a pretty substantial number of real scientists working on new things all the time. They work in things like computer vision, 3D rendering, and morphological processing (the intersection of set theory and image processing) – esoteric stuff, by most standards. The things they come up with are useful, exciting and often almost magical. But they are also so far ahead of the mainstream that the professional programmer community hasn’t had time to come up with ways of implementing them – think of a set of cutting edge architects who keep inventing buildings made out of exotic materials and using techniques that the average subdivision home builder couldn’t possibly use and still get that job done on schedule and budget. It’s nice to look at in drawings, but how the hell can the average crew build that kind of thing?

Still, my customers will read about this stuff in a magazine and ask me if I can do it; “This is cool! I need this now!” I hate to say “No”, so I always try to see what I can do. And it’s always fun to be able to find new things to work on. Most of the time, I can Google around enough to find recipe I can use, and that’s that. But sometimes, the thing the customer has asked about is something that is so new and esoteric that the only information I can find are technical papers, submitted to conferences or academic journals by professors and grad students who approach the problem from a mathmatical or theoretical viewpoint, written for an audience of academics, scientists, and theoreticians. There is rarely a plain-English explanation of what they’re doing; there’s always a bunch of long horrible equations written in terse notation where every variable has multiple super- and sub-scripts, lots of summations, glossing over details and “… this is as explained by Xhiao Lung and Frederic Grimenschtrudel in their 1986 paper, Techinques for invariant monological comprendium derivatitions and tri-quadrant bi-noodling“; and there are always graphs comparing the results of their idea to some other academics’ idea – whose work I don’t understand either. Once in a while I find a paper written by a student of these professors who has implemented what the professor described, but only describes a high-level sumamry of results (a picture of the finished house – never a description of how they actually built it). Tease.

So, my latest attempt is to do something called “tone mapping”. It’s basically an attempt to automatically adjust the brightness of an image so that previously invisible details in light and dark areas are made visible without horribly distorting the overall brightness of the image – ex. given an image of a dark room with a bright window, it would bring out details in the shadows and details in the bright areas at the same time (and in a way that looks natural) but wouldn’t affect the middle tones much. Try that in Photoshop sometime, to see how difficult it is using standard tools. Well, the heart of the trick lies in knowing what constitues a “detail”, and the latest techniques for this rely heavily on something called a “bilateral filter”. Roughly, this is a blurring filter that can recognize abrupt changes in image intensity – and if it sees a sharp change in intensity in a group of neighboring pixels, it assumes that it’s looking at a detail and tones down the blur effect in that area. Incidentally, this reminds me of how automatic focus works in cameras: they look at a small part of the image (usually the center) and adjust the focus in and out in order to find the spot that maximizes the intensity differences between pixels – higher intensity difference = higher contrast = sharper focus. Squint your eyes, contrast goes down, image gets blurry.

Now, blurring an image happens to be a cookbook technique. It’s very basic; a simple blur is one of the first things a budding image programmer is likely to learn. The typical bi-lateral filter is done with a “Gaussian” filter (a well-known cookbook filter) but with a twist. And that twist is the key to the whole thing. Now, I spent a week over Christmas playing with my Gaussian filter to try to improve its performance; I certainly understand how it works in practice (it’s just a simple weighted average), but I’m not sure about the mathematical theory behind it (the weightings used are what makes it a “Gaussian”, and I don’t know why you need those particular weights or why they do what they do). And when the academic papers talk about modifying their Gaussian filters, they’re doing it from the deeper mathematical viewpoint, which I don’t understand, and can’t seem to make heads nor tails of. And, of course, no cookbook has caught up to what they’re talking about. So I suffer through these papers, hoping one will offer me a plain-English explanation – sometimes I never find it.

It’s unfortunate for me that you need a post-grad degree in mathematics to understand the state-of-the-art in computer imaging. But, that’s the way it is.

Too much typing for a Saturday night.

Filed under: Uncategorized — cleek @ 12:46 am    

Running to a standstill

Allow me to talk about me.

So, thanks to the magic of inhaled steroids (Advair), I’m now able to run pretty much any distance I want, without complaint from my lungs, before my legs give out. Right now, that’s somewhere around 6 miles. Hooray for modern medicine! And in two weeks I’m going to run a 5K (3.2mi) race. It’ll be my first 5K race since 1987. I’m not exactly fast anymore, so I won’t be competitive to other runners; I’m really doing this to see if I can finish without stopping to walk.

“But, I thought you said you can run 6 miles?” Yeah, that’s the tricky part – I can run 3.2 miles, any day of the week, no problem. But when I get into a race situation, or even a self-timed situation, the clock (and even more, the desire to not get passed by people who don’t look like they should be faster than I am) takes over my brain, I forget all about pacing, restraint and discipline, and I turn into a rabbit – I run far too fast too soon, trying to stay with people I shouldn’t, and end up exhausted before I’m anywhere near the end. It happened in the majority of my high-school 5Ks, and is the reason I always hated distance running – give me a nice 400 meters where I can throw everything I have at it all at once, don’t make me restrain myself and pace myself and run “my own race”; that’s for wimps. It even happened the first time I timed myself on a training run – the first mile was far too fast, the second was right on, but the last was far too slow, because I was exhausted – and that was just because I had a watch on – gotta run faster! this isn’t fast enough! the clock is ticking! For me, the very hardest part of this 5K is going to be all about shutting out the other runners and keeping myself at a reasonable pace. So, I’ve been training, doing timed repeats and long distance runs, trying to get used to a pace I think I can maintain for the race. I’m even following a training schedule.

Looking at the results of the race from last year, I think I can expect to come in somewhere in the top 90, and will probably be beaten by two girls under 14, three men over 60, and two women over 45. See, not content with running my own race, I’m competing with people two weeks before the race even starts. Ugh.

Now, down at the bottom of this page is a list of sites that have linked here in the past 24 hours. Usually it’s a handful of regulars. Today, it’s a relatively long list of other blogs that I’ve never heard of – I probably wrote something recently that showed up on a bunch of searches (American Idiot! American Idol! Green Day!). But, there’s also a link from a blog by someone who’s training to run the London Marathon, First Time Marathon. He’s talking about all the stuff he’s doing to get ready for the marathon, and he’s posting all his training times (reading them makes me feel really slow, FYI). He’s also having daily worries about getting sick before the race – all the people around him are sick – something with which I can identify completely. It seems like everyone at work, and my wife, has a cold or the flu – exactly what I don’t want right now.

Because I’d hate to miss a week of training so close to the race, and I’d really hate to miss the race itself, I’m doing my damndest to stay healthy these next two weeks – eating better, drinking less beer, drinking more water, taking vitamin C, washing my hands frequently, getting enough sleep, Positive Mental Attitude, avoid being sneezed upon – whatever I can think of. And this morning I thought of something else I could do to stay healthy : I could stop wearing myself out with all this running! Sigh. Logic has failed me.

Filed under: Uncategorized — cleek @ 10:25 am    

108748433425219579

difficult books. yes! name dropping. yes! preening. yes!

Since yesterday was the 100th anniversary of “Bloomsday” (the day depicted in the book), the BBC has a Cheat’s guide to Joyce’s Ulysses. It’s far more entertaining than the book.

I tried reading Ulysses once, and I think I got about thirty pages into it before I realized there was absolutely no way I was going to be able to finish it; that stream-O’-consciousness stuff is tough reading: too much style, too little substance – or maybe, too much substance that I wasn’t insterested in excavating, sifting and cataloging – who knows which flashback is going to be important later on, and which isn’t? I did read Joyce’s “Portrait Of the Artist as a Young Man” in high school, but that book was short enough that I could always see the end in sight – and regardless, it was a class assignment.

If I recall correctly, I tried Ulysses just after finishing “Gravity’s Rainbow”, another long hard brain workout, and was all like “I am the King of Book Readers! Which one of you bastards is next ? Arright Ulysses, spread ‘em!” Well, James Joyce makes Thomas Pynchon look like J.K. Rowling. It was a long time before I tried any of the notoriously difficult books again.

But eventually I did dare to try another one, so I chose Neal Stephenson’s “Cryptonomicon“, after hearing about it on Slashdot. That book was only difficult in that it had multiple plotlines happening in different eras – once you get familiar with the characters and their settings, it’s fairly straightforward. It wouldn’t be a difficult movie to watch. I felt somewhat unchallenged.

So then it was off to David Foster Wallace’s “Infinite Jest”; it’s a huge, sprawling slow monster of a book with multiple storylines and dozens of characters, set in a strange near-future Boston. It has 100 pages of endnotes that fill out the characters and their history with facts about the book’s world, not necessarily about how the book relates to the real world – a technique used also in Jeff VanderMeer’s excellent, and too shortCity of Saints and Madmen“; it’s a nice trick since it makes the text feel like a small window on an otherwise huge world. Like Ulysses, Infinite Jest has a very high detail to plot ratio, but I could at least catch most of the cultural references, and I felt more connected to the future Boston than I did to Dublin of 1904. It was tough reading at times, but I did enjoy most of it.

Now, after a seven-year wait, I’ve started re-reading Gravity’s Rainbow, slowly, patiently. And happily, it’s much easier reading this time. I should be done sometime near Christmas…

Filed under: Uncategorized — cleek @ 10:58 am