April 15th, 2012

Tall ships (porthole)

(no subject)

The screen on my aging Thinkpad is slowly failing (there's now a faint blue line down the right-hand side), so I thought I'd have a quick look to see what's current. And since I'm one of these strange people who use a laptop for more than just watching DVDs in a blacked-out room, any replacement has to have a matte screen and has to have a decent vertical resolution.

My R50e has an average-quality 1024x768 15" display that doesn't quite have enough pixels for software these days. My dad's R50p, from the same vintage, has a very nice 1600x1200 15" screen.

The highest resolution you can get on a Thinkpad these days is 1600x900. You can get an HP laptop with a 1920x1080 display, but then you don't so much have a laptop as a desktop computer with a battery.

Supposedly this is progress.
Demons of stupidity

(no subject)

What pleaseremove hasn't said about his recent blog upgrade is just how he's pushing the posts to Facebook. He's not using the Facebook API - instead, he's horribly abusing their mobile interface. Having spent the day trying to write a desktop client for Facebook, I fully sympathise with him.

The authentication sequence and low-level communication is actually quite straightforward. Authenticating needs an embedded instance of Internet Explorer to handle the login (because it's all done via web pages), but that only takes a few lines of code to achieve. Retrieving data is also reasonably easy to achieve and the Microsoft Scripting API works quite nicely for decoding the JSON. So far so good.

The fun part is then making sense of everything. What I want to do is grab the news feed and display that (later on I intend to filter it, but for now I just want the lot). Unfortunately the news feed returned is missing a fair number of updates (like any status updates made through the website). Except when it contains updates that aren't on the actual Facebook webpage. And the objects are missing fields that are specified in the documentation (like, for example, the name field on photos). Except when the fields are actually present with different names. Except when the information needed isn't available at all, despite the Facebook website showing it.

Oh, and I lied about the authentication being straightforward. It involves a maze of twisty permissions, all unclear.
  • Current Music
    Morphing Thru Time ~ Enigma/Love Sensuality Devotion: The Greatest Hits
  • Tags