Archive for August, 2008

Being Smarter About Car Repair

1

Car Repair

What I know about the innards automobiles I learned from a book on Wankel engines when I was 8. So when my “check engine” light turned on I knew I’d be in for a severe siphoning of money out of my pocket.

Buoyed by my strong sense of miserliness, however, I decided to take a stand and brave the world mechanical. And I’m proud to say I managed to change a broken O2 sensor on my Honda Accord without having to visit a mechanic (or, to be more accurate, watched as my dad changed it, but hey, I was there).

Here’s the key trick: all cars built since 1996 have a standard system called OBD-II (On-Board Diagnostics) that monitors much of your car and its health and reports standard codes for any mis-behaving components. There are code readers available from your favorite retailer (here’s one from Amazon for $62) or to borrow from certain auto repair shops.

Connecting the reader to car is generally easy (it was simply a matter of attaching it to the connector under the steering wheel in the Honda) and you can find explanations for the codes online.

Armed with information about what exactly is wrong with your car you can have a much more … productive conversation with your mechanic.

Or, you can fix it yourself, as we did. Changing the O2 sensor turned out to be surprisingly simple, and not only did I save myself about $300, I also feel extremely proud of myself. I think this is my crowning achievement of 2008. Handy, I am.

Image courtesy of MadMan the Mighty.

Three

2

Three.

The number of programmers who will write most of the code in a system developed by a team of 24 engineers, two project managers, three group leaders, a quality lead and an office manager.

From Russ Olsen.

Google Reader Style Hotkeys For Image Viewing

1

I frequently run into pages with loads of images (here’s one via Kedrosky, here’s another, and here’s yet another). Viewing these images involves a dance of scrolling or hitting space, then scrolling again to get the image lined up in the viewable part of the browser, and repeating over and over again.

The better user experience would be to have Google Reader style hotkeys that bring each picture into view, lining it up properly for easy viewing. You’d be able to hit “j” after viewing each picture to see the next. No more messing with the scrollbars.

I’m guessing a greasemonkey script to enable this with any page would be pretty straight forward to do. Anybody know if it already exists? If not, someone should do it.

Startup VP Technology / CTO Opportunites

0

Several friends have been at work on several startups and are looking for technology leaders to round out their teams. One opportunity is in the social network / eduction space and is looking for the VP Technology / CTO as well as good web/php guys. Another is more hardware related. Both are very viable early stage companies in San Diego. If you have interest or know of people who might let me know – darugar at gmail .

TraceMonkey: It’s A Big Deal

0

Mozilla announces TraceMonkey, a just-in-time compiler for Javascript. If you’ve watched Steve Yegge’s talk on Dynamic Languages (transcript) you’ve already had a taste of what the future could look like for dynamic languages – namely, performance on par with today’s low level languages.

Javascript started as an ugly language but has been steadily shedding its bad parts and adopting a beautiful functional style. With the performance piece figured out and a tremendously large number of installations and runtimes (just about every browser in existence has a Javascript engine), it could become the most important programming language of the near future.

Terrorists: There Is No Profile

0

MI5 report on terrorist profiling, via Schneier. The short version: it is very difficult to come up with a valid profile.

Awesome

0

Parand.

Sickening Olympic Coverage

0

Watching the women’s uneven bars. The announcers have spent the vast majority of the time whining and moaning Nastia’s the 2nd place finish.

Now I recall earlier gymnastics events where these same announcers said starting first is a huge disadvantage and effectively penalizes the American competitor (pretty sure it was Shawn Johnson’s event). Hmm. The Chinese winner of this event went first. I didn’t hear any whining about how she was at a disadvantage.

We’re also hearing about the incompetency of the judges. Apparently the Australian judge favors the Chinese. Makes sense that Australia would pick China over US. Eh. I’m sure it does somehow. Nevermind that his score was actually thrown out (top and bottom scores are thrown out).

The tie-break procedure is also apparently anti-U.S. I’ve heard Al-Qaeda was behind instituting it.

Watching the track events earlier I was shocked to see there were 8 athletes running in each heat. The announcers announced 2, and the camera was very clear that there were only 2 athletes running. Turns out there are other countries competing besides America. Which really pisses me off – don’t they know it’s ALL ABOUT AMERICA?

I’m sick of NBC. These guys are making America look like a bunch whining, sore losers, which is anything but the truth. The athletes are doing a fantastic job and the venue is beautiful. If only these NBC idiots would embrace the spirit of the Olympics and realize it’s not all America versus the rest of the world. It’s a celebration of the athletic spirit of the world.

There we go. And they finish with how America’s dominance of baseball and softball is so complete the Olympic committee had to drop them from the Olympics.

Think back to high school, to the rich kid who was a good athlete and had everything else going for him, but was still an asshole? There you go. Apparently that’s who we are. Despite everything we have we still can’t find it in ourselves to be gracious.

Damned Australia.

A Beautiful Python Twitter API

0

Mike Verdon’s Python Twitter Tools is less popular and findable than the Dewitt Clinton’s python-twitter (I only found the former from an email on the latter’s mailing list), but it’s a beautiful library. 125 lines, most of which are comments. It implements the full API by implementing a single call class that handles everything (and that class is only a few lines). A good library to use if you’re trying to access Twitter via Python, and a good source for learning and inspiration if you’re writing a library / wrapper.

Sweet Sleep, Part Deux

0

Wife is in Florida with the youngest kid, and the other two spent most of the weekend at my parents’, giving me a chance to engage in plenty of bad habits. Mostly work and sleep.

It’s an amazing feeling to wake up after more than 8 hours of sleep. Really quite fantastic. It’s obvious with the kids – if they don’t get enough sleep they’re cranky and lethargic. The same is at work with adults, we’re just better able to mask it.

Anyway: sleep. I highly recommend it.

Trying Mercurial

0

All the cool kids are into Git these days and I’ve been reading plenty of articles about how good it is and how to use it. The problem is, I don’t really have a problem with Subversion. I know I should, because all the cool kids do, but I just don’t run into a lot of issues with it. In the absence of a problem to solve it would simply be peer-pressure to give Git a shot.

So in an attempt to remain ever-so-independent I’m going to try a distributed system, but not Git. I’m going with Mercurial.

Actually mainly it’s because Mercurial seems significantly simpler, and I’m a simple guy. It’s also written in Python, which gives me a warm and fuzzy. And I’m finally motivated to try it because I’m going to try a code path which may not work out, and I understand these distributed systems deal with that well.

Hmm. The main thing I’d want from a source code control system would be a bit of packaging and deployment intelligence built in. Maybe something to minify and join my javascript files and mend the files that reference them. I’m extremely pleased not to have a “make” step anywhere in my process, but I do miss some of the capabilities.

If I’m making a mistake and I should go with Git, or perhaps CVS, do let me know.

Amazing Video Enhancement / Transformation Technique

0

This is just incredible. The effects are amazing, but I’m guessing the models and tools behind what they do are going to fundamentally change the way we use video. Apparently these guys are divining a pretty good depth and color projection map from videos and photographs. With that you’ve added entirely new dimensions to the readily available information conveyed by video, opening the door to a huge range of effects and enhancements. Looking forward to seeing more of this.

YUI 3.0 with jQuery Style Chaining and Selectors

0

I started my foray into the world of Javascript with YUI, later found jQuery, and over time have been moving more and more to jQuery. Selectors and chaining are fruity and delicious and encourage a nice functional programming style.

YUI, however, does offer a bunch of nice, well tested UI components which are generally lacking in jQuery, leading me to typically use both YUI and jQuery together in an unattractive Frankenstein way.

Therefore I’m excited to see YUI’s move towards jQuery style selectors and chaining with their 3.0 preview release. It’s also very nice that they’ve abstracted away javascript file loading with the module concept – with YUI 2.x you have to do a which-files-do-I-need dance and load each of the multitude of files separately. With 3.x you “.use” the module you need (say “dd-drag”) and YUI intelligently loads the required files in a single HTTP request.

This is good stuff. I’m really enjoying jQuery so it’ll be tough to completely jump ship, but with the new additions I could see doing a lot more with YUI.

The Problem With “Persuasiveness” in Turkey

0

Via Guy Kawasaki, a story on “persuasiveness” at work in Turkey.

I had several similar experiences in Istanbul, such as when our cab driver “persuaded” us to visit some place over the bridge, costing us a substantial amount of money and more importantly causing us to miss other sites we really wanted to see.

In fact there was a lot of persuasiveness all around. If you’re a tourist in Istanbul prepare to have the locals persuade the hell out of you as they relieve you of your money.

It can be pretty extreme – a friend of mine had his shoes held ransom as he visited a mosque (you have to take your shoes off before entering mosques).

These guys did end up getting our money, but the feeling they left us with is not an enjoyable one. I loved Istanbul, a beautiful city with beautiful, wonderful, warm people. But I hated the scam artists that would swarm around you like flies.

There’s a limit to useful persuasiveness. You can persuade someone to do something they don’t want to against their will, but you won’t do business with that person again.

Remote X-Style Log In To OS X Boxes?

1

I’m looking for a way to remotely log in to an OS X box and use the UI. Think X-style remote login where I have my own instance of the desktop (I’m just viewing it remotely) as opposed to VNC style screen sharing. Basically I want to be able to develop with XCode and the rest of the iPhone SDK without having to have a mac physically present. Is such a thing possible?

Why Vista Gets A Bad Name

1

Finally got my wife a new laptop. She spends all day frustrated at work because her new computer isn’t compatible with her work software. It’s Vista apparently; the software is not compatible with Vista.

“Everybody at the office agrees, it’s kind of a wierd operating system”. “Nobody likes it”. “It’s not compatible”. “I talked to the two tech guys and they both said it was Vista”.

Excellent.

The software is actually browser based. The geniuses who wrote the software forgot to set the content-type header for the pdf file they generate and they don’t call it a .pdf, so IE doesn’t know what to do with it and throws up a non-helpful prompt.

Translation for the less technical folks: this has nothing to do with Vista.

If you add up all the other stupidity Vista gets blamed for by both software developers and incompetent tech support people, you get a picture of why it has a bad name. It’s the new thing and it’s easy enough to blame, so why not.

That damned Vista.