Archive for the ‘Tech’ Category

This post comes from watching Iron Man this weekend. Wait, wait, bear with me! In Iron Man, eccentric billionaire Tony Stark builds himself a suit of powered armor to battle the forces of evil. The key words in that phrase are “builds himself”. Take away the film’s pretend advanced technology, and what we have is a story of a lone man tinkering around and building something revolutionary and amazing in his basement. Stark also happens to be a bona fide super-genius, which got me to thinking: is being a super-genius now a requirement for success in the DIY world?

To clarify: I’m talking about inventing, about building or coding something new; I don’t mean fixing things around the house or building yourself a deck.

Once upon a time in science, major discoveries could be made and work done by making simple observations about the world with basic equipment. Today, that doesn’t feel true anymore. The low hanging fruit of science has been taken. Discoveries today require much more advanced technology and know-how, neither of which are commonly found among the general populace.

Similarly, in the early days of the web it was possible to build something revolutionary with a very basic knowledge of HTML and scripting. Building any search engine is massively impressive when none existed before. Those first steps were easy pickings, and quickly snatched up. Through the wonder of widgets and other embeddable content, today we’re abstracted several layers from the base code which makes the magic of the web possible. And developing those widgets from the ground up is something requiring a fairly advanced knowledge of techniques and tools. We do still have one advantage over the science example - these tools are available to everybody almost free of charge. Anybody can learn AJAX techniques, the only limiting factor is necessary time. Still, the playing field is not entirely level.

I recently had a conversation with a co-worker about A Connecticut Yankee in King Arthur’s Court. Could that book’s opening take place today? Would a modern man be able to recreate basic elements of our society in the middle ages like gunpowder or the telephone? Or a computer? We’re all much more connected, more dependent on specialized compartmentalized knowledge of others to get something done.

I think it is crucial that we keep a fundamental focus on the basics of web coding and scripting. Doubly so in the library world, where so many workers come from other careers and non-technological educations. It is one thing to be cut and paste an IM widget into your page. It is quite another to have the ability to fix it when inserting that widget blows up other pieces of code on the page. I have yet to come across a WYSIWIG HTML editor like Frontpage or Dreamweaver that doesn’t require at least a small amount of tinkering in raw code to get a site 100% correct. Understanding how each piece works is very important in making divergent systems play nice together. Without such an understanding, I never would have been able to get a Meebo widget working in Facebook.

I also worry about an over reliance on widgets. It is certainly possible to build a useful website almost entirely out of widgets. But what happens if a widget provider goes out of business? Or changes how their widget works? In addition, a widget is never custom built for your task. Sometimes it takes considerable effort to force one into doing what you want. And even then, results are not always ideal. For example, I really wanted to use a Goodreads widget on my site to display the books I’m reading. But ultimately it didn’t offer me enough customization. I just couldn’t make it work in my site’s design.

I’m not saying that widgets are inherently bad, or should be avoided entirely. Use them when it would be time or resource prohibitive to replicate the same functionality with local code. And they’re wonderful things for building a proof of concept model, of testing something out before going with a full blown local programming effort. Basically, just widget wisely.

(Yes, I used widget as a verb! I like verbing words.)

Widgets and other abstracted tools have lowered the barrier to entry for many elements of website development, and that’s an amazing thing. But don’t be afraid to metaphorically build in your basement

The Unsearchables

April 29th, 2008 No Comments

I’ve been having a lot of fun playing Colorwar on Twitter lately. The most recent event is a scavenger hunt run in Google Street View. GSV is made up of pictures taken from a car driving around various cities, and you can pretend you’re driving around as well. It comes in handy for getting a view of what a storefront looks like before going there, and similar simple tasks. But it also inadvertently captured people on the street and random events around town. Finding some of these events has been a real challenge for the scavenger hunt. For example, we needed to find a crossing guard. The presence of one relies on sheer chance that school was getting out just as a GSV truck drove by. Pretty slim odds, really. But there is absolutely no way to search for something like this other than simply checking every school in existence.

Some third party sites have stepped in and tried to fill that gap a little. Google Street View Gallery allows users to post links to specific images, which they can then tag. The tags and descriptions are then searchable. This system is handy, but still relies on a user randomly stumbling across something, thinking it is interesting, and then taking the effort to post it to the gallery with an adequate description. A very long chain of events, and something most people won’t deal with.

Google Street View represents a massive database of public images. All privacy issues aside, I would love for Google to test out some kind of image-recognition search in it. That would reveal a huge wealth of usable data. Or, with Google Maps’ APIs, maybe it’s possible for someone else to work on this. I don’t know.

But what I do know for sure is that we’ll only see more massive chunks of image data as time goes by. There will simply be too much for human eyes and minds to process - organizing it all will be a big challenge, and not something I’ve heard a lot about currently. I expect development in this area to explode in the near future.

Month ‘o Video

April 9th, 2008 1 Comment

I sort of miss my picture a day projects, even if I did run out of steam near the end. With the news that Flickr now supports video, I’ve decided to post a video clip of something every day for a month. Could be just a couple of seconds, or maybe the full 90 second limit. Who knows? This will include a week at the beach, so there should at least be some nice scenery involved. Here it is: Month ‘o Video 1

Now I just wish I had a real video camera… all of these will be taken with my trusty Canon A520.

Today’s entry:

Ever wondered what The Final Countdown would sound like as a soundtrack for an NES game? Yeah, I didn’t either. But my keyboard has the right soundset, so I couldn’t resist.

Link Dump

March 20th, 2008 1 Comment

-I’ve been playing with Twitter recently: http://twitter.com/HiddenPeanuts

In addition to just being plain old fun, twitter has been more useful than I expected; I’ve managed to get help with some issues at work very quickly. But even so, I’m fast approaching my limit on how many people I can mentally follow there. There’s a fine line between keeping Twitter a productive tool and letting it become a time waster.

-I’ve got an account listing all my books at GoodReads: http://www.goodreads.com/review/list/901545?view=main

I think I like Librarything better overall, but: Goodreads has the advantage of being better designed to accomodate books you’re reading but don’t own.

-Netvibes, my homepage/RSS reader for the last couple of years, has had too many stability issues lately. Today I took the plunge and dove into Google Reader. I’m pretty happy so far.

-Lastly, on a fun note: the ARG/viral marketing/game promoting this summer’s Batman movie is a lot of fun. Currently, Harvey Dent (he who eventually becomes Two Face) has a site up for his election campaign: http://www.ibelieveinharveydent.com/

And, a random question: Does anybody have experience building iGoogle gadgets? I’m interested in stories dealing with library applications in particular. I’m going to be putting a lot of time into them at work, and would love to have someone to bounce ideas off.

I’ve come to the realization recently that there is such a thing as too much choice. It is easily possible for too many options to be available. Consumer electronics, web services & protocols, even simple reading material can all fall victim to a sort of tyranny of alternatives. Modern technology has opened a lot of doors, and I find that if I don’t shut a few then I never get anything done.

One example is Sony’s Playstation 3. Back in the earlier days of video gaming, choice really didn’t play a big role. You picked from a small circle of competitors (Nintendo, Sony, Atari, etc), bought their console, set it up, and played their games. Today it is not nearly so simple. The PS3 has had five different hardware configurations so far, each with distinct plusses and minuses. Hard drive sizes differ. The number of USB and card reader ports differ. Wi-fi access differs. Even backwards compatibility with Playstation 2 games radically differs: Some variations can play no PS2 games at all, others can play most PS2 games, and others yet can play almost all of them. To complicate matters even further, not all five configurations are still manufactured. Try explaining all this to the average consumer, someone who just wants a game machine to set up in their living room. But, at least all of these variations are functional. Microsoft has split the Xbox 360 into two very different camps - those that come with a hard drive, and those without. Sure, buying the version with no hard drive will save you about $70. But with no hard drive, you can’t save game progress. You can’t download anything from Xbox Live. Purchasing a memory card to offset this disadvantage, which is the cheapest storage option available, eats up $42 of what you saved. And the comparatively meager storage on it will run out very quickly. It’s a false choice really - the cheaper xbox is near worthless.

The issue of these choices also applies to flooded marketplaces. The rush to create web applications and protocols in the last few years has created a fractured marketplace. Users can only give attention to so many products and services; even the most worthy of new entries has a very real chance of going unnoticed in the mess. Wikipedia lists 17 separate IM protocols. A little over two years ago I tried using a new IM service, Meetro. Their main feature is the ability to see who is logged in physically near you. But nobody near me used it at all, so I quickly gave up and moved on. I wondered then, and I still wonder now: how can a new service break through the established choices and reach the critical mass of users necessary for success? As social applications grow, this question only becomes more and more relevant. The best social service in the world is useless without souls to populate it. The only solution I know of right now is effective marketing with a heavy dose of open standards, but of course that’s a very vague answer.

Meanwhile, I’ve hit complete overload on blogs and websites that I want to read. RSS feeds make pulling giant piles of content into one place possible. Unfortunately, the format does not also provide me with giant piles of time in order to read it all. Or even if I do spend what time I do have reading everything I want to, I’ve still lost serendipity. I don’t stumble across many things that I don’t even know I want to read. For me, magazines fill this gap. I really look forward to getting Wired in the mail every month. Having someone else choose what articles I’ll see for me feels oddly refreshing. Sure, I could replicate most of this experience with the magazine’s website. But I still can’t flip through the pages, quickly seeing what catches my eye.

These choices are harder to make than ever before, and I expect it to only get more complicated as we move forward. Recommendations from trusted peers becomes more and more relevant, even necessary. With so much raw information out there to process, we have to distribute it among social circles and be able to rely on what conclusion gets spit back out. That, or sacrifice needless and countless hours.

So, here’s my recommendations:

  • Buy the 60gb PS3, if you can track one down. It’s not made anymore, but has the best mix of features. You can replace the hard drive with a larger one off the shelf if that becomes an issue later.
  • Buy the Xbox 360 Elite. It’s the most expensive model, but has a much larger hard drive. Microsoft only allows proprietary hard drives, and upgrading to a larger one later is absurdly expensive.
  • Subscribe to a few print magazines. I current get Wired, Newsweek, and Smart Money.

My supervisor, Pam Sessoms, has spent years building up the IM reference service throughout campus at UNC. Up until recently, we’ve been using a combination of a custom Pidgin client and Meebo widgets to make the system run. But recently we swapped out the Meebo widget for a custom javascript-based chat widget that Pam and her husband have coded up on their own.

It’s still pretty early in development, but I think their ‘libraryh3lp’ system is an amazing step forward. For one thing, javascript has a much higher compatibility rate than Meebo, which relies on flash. I even got it to work on my iPod touch’s browser! It is also much better from an accessibility point of view, and plays nicer with screen readers for the visually impaired. Also also, the service runs on a custom Jabber server which gives the library much more internal control than relying on a third party network.

Eventually routing and queueing functions will be added, steering the product much more toward library-based usefulness than any of the IM clients currently out there. I’m really excited to see where this goes!
Here’s the project wiki: http://libraryh3lp.com/wiki/Main_Page

And the Google Code page: http://code.google.com/p/libraryh3lp/

And lastly, you can sign up for an account and get your widget up and running with these instructions:
http://code.google.com/p/libraryh3lp/wiki/WebChat

Ambient Information

January 7th, 2008 2 Comments

2007 was the year I finally embraced mobile web browsing. I added a text message package to my phone, which let me get a ton of use from services like Google’s txt integration. I experimented with the DS’ Browser, which gave me a taste of real web access on the go. I added a basic data package to my phone, which freed me from the shackles of wi-fi hot spots. Most recently I added an iPod Touch to my collection, the browsing capabilities of which blow everything else out of the water.

(Funny side story - I didn’t even know my previous phone was capable of handling text messages until I’d had it for about three years, and only discovered this when a friend sent me a message. I was so confused at first.)

Stephen Abram recently posted a link to a story titled “Ten Things That Will Change Your Future”. What intrigues me most from the list is an upcoming product called “The Chumby”. It’s an internet-connected device slightly larger than a coffee mug that sits somewhere in your home and runs through a selection of widgets. It’s a weather station, a flickr photo album viewer, an MP3 player, an eBay auction watcher, an e-mail checker, whatever you want it to be.

Mobile computing can provide me with on-demand information, but other than blackberry-style push e-mail that only works when I actively initiate the demand. By contrast I can set up a device like the Chumby to anticipate my needs. I could keep it in my living room, glancing to check on a soon-closing auction whenever I walk by, or have it alert me to breaking traffic tie-ups. Of course, just about any home PC could be customized to do this now. But a PC and monitor tasked as a Chumby-style appliance almost never looks very good, almost always takes up too much space, and is certainly overkill for the job.

Now, we’re approaching a point where form and function will meet. I’m not saying the Chumby is the be-all/end-all device, but I’m really excited to see what comes next.

With the release of Facebook’s new Pages system, libraries can now create an official presence not tied to an individual staff member’s account. But once created, options for what you can do with that page are still somewhat limited. For reasons I don’t entirely understand, not all Facebook applications that users can add to their profiles can also be added to a Page. As best I can tell, Application creators have to specifically allow this to happen in their options. And once they do, there are still a host of other issues that sometimes rear their heads.

One thing I really wanted to do was embed a Meebo widget in our library’s page, allowing users to IM a librarian directly from there. Of the two existing Meebo apps, one has not enabled the option and I can’t get the other to work right. So, here’s a temporary workaround:

Thankfully, Facebook has provided an app called Static FBML (FBML is the FaceBook Markup Language, the code that makes the magic happen). Essentially, this app is a blank slate. You can insert whatever custom code you like into it. We can use this to display a Meebo widget without too much difficulty:

Step 1: Add the Static FBML application to your Page.

Step 2: Edit the options. Go with whatever Box Title you like (I went with ‘IM a Librarian’).

Step 3: This is the meat and potatoes. Put this code in the FBML box:

<fb:swf swfsrc=’http://widget.meebo.com/mm.swf?XXXXXXXXXX’

imgsrc=’INSERT CLICKTHROUGH IMAGE ADDRESS HERE’

width=’380′ height=’300′ />

(NOTE: A commenter pointed out that you may have to replace the single curly quotes displayed in the code with non-curly quotes to get the code to work right. I can’t get my post to cooperate and display straight ones for some reason)

Step 4: Replace the X area with the link to your own Meebo widget.

Step 5: Replace INSERT CLICKTHROUGH IMAGE ADDRESS HERE with your own clickthrough image. Facebook will not display flash elements like a Meebo chat unless a user clicks on it. So you’ll need to create an image your users see, telling them to click on it to initiate a chat. For example, here’s what I’m using as my clickthrough:

Feel free to steal this image for your own use, just please host it on your own server and use your own bandwidth.

That should do it! Let me know if I can clarify anything here, as I’m just writing it off the top of my head. Hopefully this won’t be necessary for long and one of the ‘real’ Meebo widgets will enable Page usage soon.

You can see this live on the UNC Davis Library Facebook Page (still heavily under development): http://www.facebook.com/profile.php?id=6041853741

If you’d like to play with more custom content on your Page, Facebook has also created the rather aptly named Static FBML 2 and Static FBML 3 apps.

10/04/07I was really excited to read that the town of Chapel Hill has a public wifi project! Combined with my own wireless router and the wifi access on campus at UNC, I’ll be spending almost my entire average weekday in areas with coverage.

Naturally, I’ll need a portable wifi device to take advantage of it. I love my laptop, but it is simply too bulky to haul around town every day. I started exploring other options. This list is a little abbreviated, but after searching around online I had essentially narrowed down my choices to:

1. An iPhone
2. An iPod touch
3. The DS browser cartridge

As much as I’d love an iPhone or an iPod touch, I can’t justify that level of expense right now (even if my much loved 4G iPod did just bite the dust…). I already own a DS Lite, so the DS browser’s $35 price tag was a very compelling advantage. But I really didn’t expect much out of the deal. Almost every review I read of the browser online was extremely negative. I was nervous, but the relatively low price sucked me in. I figured at worst I could resell it on Ebay at a minor loss.

What I got is much better than I expected! I think the people who wrote negative reviews are confused about what this browser is. It is NOT a desktop replacement. Regular web sites load very slowly when images are involved. There is javascript support but no flash, audio, or video. I found that all of the major drawbacks in usability can be solved pretty well by doing three simple things:

1. Disable images in the browser’s options. Load time will speed up dramatically.
2. Use sites designed for mobile browsers whenever possible, such as Google’s wap portal.
3. Don’t expect multimedia capabilities. I knew this going in.

After these steps, only one major drawback remains for me - the fact that there is no support for cookies or saving login information. You have to type everything out (via stylus qwerty keyboard or pretty solid handwriting recognition) every time you want to log in to a site. I don’t miss multimedia options at all; that isn’t what I wanted a mobile browser for. But I’ve been happily accomplishing basic online tasks like checking my e-mail, reading a few rss feeds, looking up addresses or phone numbers, and even a bit of slightly clunky IMing via http://www.ebuddy.com/

The browser itself has two main viewing modes. The first squishes all the content into one narrow column, spanning the DS’ two screens. In the case of sites designed for mobile use, this works very well. The second option, which I prefer for sites not designed for mobile viewing, displays a zoomed out overview of the site on the bottom screen. You can then use the stylus to select a portion of the site to show zoomed in on the top screen.

I particularly want to note that the DS browser DOES work on public wifi access points that require a clickthrough page. For example: Panera Bread, Brueggers, or many airports all require you to agree to some terms of service before gaining access to the web. I’ve seen erroneous posts elsewhere online that say this does not work on the DS browser. But I’ve tested it myself with no problems. When configuring the DS for the access point, an error appears about being unable to obtain an IP. Save the connection info anyway. Try to load any url, and you’ll be directed to the clickthrough page. Ta-da!

The DS browser comes with a memory expansion required for the cartridge to work. It fits in the GBA game slot on the bottom of your DS. There are two versions of the browser available, but the only difference is the size of this expansion module. One fits the DS lite while the other fits the older, larger original DS. Make sure you buy the right one.

Is the DS a perfect mobile browser? Certainly not. It is relatively bulky for the screen size when compared to an iPhone or other similar device, and is another device to carry in addition to my phone. But… I keep coming back to that price. At this point in my life I’d much rather have an extra $364 in my pocket than a low end iPhone. Have realistic expectations going in, and you won’t be disappointed.

Now if I can just get some homebrew PDA software up and running on my DS, the device’s domination will be complete!

…but I’m still intrigued.

Something went wrong in the office online game thing. If you still want to work me, you have to re-apply (your account info is still valid, just fill out the form with this new code):

Branch: Dothan, AL
Code: ded7o7f65x

Re-apply here: http://www.dundermifflininfinity.com/employees/register/