Tuesday, November 16, 2010

Quick and Dirty Home Multimedia

I was going to call this, "How to build your own GoogleTV/AppleTV (but not as good)... for free (except for the stuff you have to buy)."

I've been thinking about this a while. A smart phone could make a great universal remote. Add a little computer to store, retrieve, find, and play your music and movies, pull in content from the outside, plug it into a nice stereo and you're set. Forget physical media. Digital copy is where it's at.

Thinking about the "entertainment center" from basic principles, I decided to start with music, figuring it's a simpler problem to solve and a really good solution can be expanded to video. I've used Apple's own Remote app for a while, and it's good but not quite enough. I want more than just iTunes, I want Internet radio, podcasts, and anything I can fit on the hard drive and play. I figure a Mac mini is flexible and unobtrusive enough, it can all be done with software, and it has digital audio which I can feed into my home stereo (a low-power but great sounding surround sound job). That's another thing, I bought this stereo with a gazillion inputs, and now I only use one. I call that progress.

Now on to the software.

Just about every radio station is streaming on the web somewhere. All I needed was an easy way to point a web browser to the URLs of their streaming sources. I used Sqworl.com because it's simple, it's cloudy (I can make changes to my Sqworl pages from anywhere and use them on a little computer on the shelf which is now music central), and because it generates thumbnails of each site automatically, creating an easy push-button interface.

Once I signed up for a Sqworl account, I added my favorite music links: KFOG San Francisco, WWOZ New Orleans, Pandora, etc. This is going to be the face of my remote. Not bad for a quick and dirty UI.

I also needed a remote desktop, so I can configure and maintain the little music mac from my desktop computer, and besides a lot of this is trial-and-error. On a Mac this is done through VNC (Virtual Network Computing). There are a number of VNC apps, some free some not. I use Vine Viewer from TestPlant. It's $30 but has some advanced remote administration features. I like that stuff, not everyone does.

Once I could operate the music mac remotely, it doesn't need a monitor, keyboard, or mouse - but I keep them handy in a nearby closet in case something goes wrong. VNC requires a server on the music mac and client on the desktop computer, where I'll be working from unless the server stops running, in which case I'll need that keyboard, mouse, and monitor.

Now for the remote. I decided to try Mobile Mouse from RPA Tech. This allows you to use your mobile phone as a wireless mouse or trackpad and click those big Sqworl buttons on the screen. That screen could be a remote desktop, say across the room or even in another room, or it could be a digital TV right there, but you do need a display. If you decide to attach a TV, you could make another Sqworl page linking to Hulu, Netflix, or whatever. If you use a remote computer, you can have it run the mouse server too. The Mobile Mouse Pro includes audio and video controls, much like your standard DVR remote, and uses the accelerometer so you can wave it in the air while chanting Hogwarts incantations if that's your thing.

There's the quick and dirty - and extensible - home multimedia kit. Two client-server programs, a neat little bookmarking site, and a smart phone. Just add content.

Wednesday, September 1, 2010

Freebase at Google

Kirrily Robert of Freebase (and now Google) gave a presentation at this month's GTUG meeting, describing the technology stack, queries, and data management.

This is a collection of information gathered at the talk, though it is mostly just an amalgamated Twitter feed. Still, there are links to all the resources one would need to get starting programming against the Freebase platform.

Freebase has been around for years and was recently acquired by Google. It uses a semantic web model of linked data with dynamic ontologies, more or less. It features a public REST API whose parameter is a structured query (which can be treated as a subset of SPARQL) and returns results in JSON format. It can also return results in RDF.

Twitter: @fbase

one example of a site using Freebase data is http://www.tippify.com/

Metaweb Query Language MQL (pronounced like pickle) used to access Freebase data http://ow.ly/2ygTN

Freebase MQL Query Editor available online http://www.freebase.com/app/queryeditor

best supported library is freebase-python http://ow.ly/2ygZf and there are others too http://ow.ly/2yh0n

Online Freebase App Editor http://acre.freebase.com/

Acre is also a server-side javascript application framework for Freebase http://acre.freebase.com/

Freebase 102 demo application done using Acre http://freebase102demo.freebaseapps.com/

Full data dumps of every fact and assertion in Freebase are available weekly http://ow.ly/2yhd8

the Freebase RDF Service http://rdf.freebase.com/

RABJ (pronounced like cabbage) Redundant Array of Brains in a Jar http://ow.ly/2yhhE

Freebase Gridworks for dealing with messy tabular data and cleaning it up http://ow.ly/2yhpO

Kirrily Robert @skud runs a regular Freebase meetup in San Francisco too http://www.meetup.com/sf-freebase/

OpenCalais can give you freebase identifiers as part of its analysis. Some news organizations (NYTimes, UK Guardian) have built linked data APIs which can be integrated in a mash-up with Freebase or other linked data applications.

Monday, May 10, 2010

No, I Did Not Write This on my iPad

First the Obvious

Flash doesn't work, who cares. At Stanford Med we had a "No Flash" rule (much to the relief of the many underpowered older workstations). In general the web browser is no Firefox. Then again a lot of web sites aren't great either. You can turn on the browser debug and watch the Javascript errors fly by, especially the newsy sites with lots of ads. Some sites still think it's a phone and direct you to a mobile version that looks ridiculous on a 10" screen. I suspect a lot of that will improve over time. I know I can live without Flash, but the other day I heard about this roundtable discussion on the subject of the iPad starring one of my favorite technology journalists. I went to the site to watch and it said "Flash required." D'oh!

The second most obvious, this is a device for content consumption, not creation. I can type upwards of 100wpm on a good day, but on this touch screen I hunt and peck. Or I hold it with both hands and try to type with my thumbs. Gestures are excellent for navigating content. To write a blog post I need a keyboard.

As far as battery life, I haven't a clue. It lasts so long I forget to plug it in. I haven't put it down long enough to fully charge it, or used it long enough to fully drain it, so that should tell you something.

The Less Obvious
I don't believe in the "game changer" but I do believe in devices that help you make the plays. For me the real value of the iPad is technical documentation, and the first apps I looked for are document reading and annotation. Study is not a new thing, it's just easier if I can get up from my computer. The more time I spend reading these things the better. Since buying the iPad I have a much better understanding of the JBoss application server and emerging HIT standards (my employer will be happy to know).

Browsing the apps, it's pretty clear the development shops haven't had a lot of time with the iPad. Its UI capabilities are far from fully realized, and many apps are rushed and somewhat buggy. I can hardly blame them, trying to build on a simulator in a few weeks, the actual device sight unseen. Until you hold the thing and use a good touch gesture interface, it's hard to know what it can do, or even what it should do.

Another thing I noticed is that Apps which crash, tend to crash when the orientation changes. If you QA iPad apps for a living, do us all a favor and spin the thing around. A lot. See what happens to your video pointers in the middle of complex operations.

The apps that are well done, are really really neat.

Apps I Like
There are a few I like so far:

Zillow. If you want to see a demonstration of good use of the iPad UI elements, install this app. If you are building your own iPad app, study this one first. It has a full gesture map, listings you can change by touching the map, and a photo gallery in the corner. The real trick is, you can navigate in each of the screen elements independently, or together.

NPR is another good example of independent but related components. Each news category has its own scrollable library. I like it.

Kindle, no kidding. They've had more practice with this form factor than anyone. It's free, and my already-purchased kindle books moved right over.

iAnnotate. I have a lot of issue with the UI, especially the navigation. Pan and zoom tend to blank the screen so often it might actually stop being annoying, except it never stops being annoying. The table of contents widget is downright unusable. There is no forward and back button, no bread crumbs. Loading documents into it is a pain. In general it desperately needs a Version 2.0. That said, it's the app I'm using most. Simply because it lets me read and annotate PDFs.

iTeleport is so far the most usable remote desktop app I've tried on the iPad. It works well enough to do simple things which is all I really want to do without a keyboard anyway.

WolframAlpha on the iPhone is possibly the best pocket calculator ever, and I have high hopes for the iPad version. Right now, though, it's just a big iPhone app. Get it anyway.

GoodReader is a decent PDF reader. Smoother pan and zoom but the iPad needs a tree element for the table of contents like Adobe Acrobat, and not that iPhone multi-menu navigator. Ick.

I'm tempted to buy Omnigraffle, and I'm sure one of these days I'll need to draw a diagram, maybe a system diagram, a workflow, high level software design, or... okay I just bought it.

Pandora and Radio.com are great, but useless without multitasking. Next fall I'll be able to use them with OS 4 if the rumors are correct. Until then it's just silly to turn on the radio and not be able to do anything else.

What I Really Want
The iPhone remote could do so much more on an iPad. I'm sure Apple is porting it but there's more. I want to run Internet radio, pandora, last.fm, and iTunes on my home computer and be able to change the channel without getting up from the morning paper (also on the iPad). So far there's not an app for that.

Guest mode. Has anybody else asked for this? I would like to be able to lock certain applications without locking the whole thing. People come over, want to use it, whatever, especially if it's the sound system remote. Is there some reason why I can't put a passcode on email, facebook, twitter, and other personal apps? Then everyone can browse the web, check the stars, or calculate differential equations, and I don't have to worry about people reading my email.

That's it. The apps are obviously 1.0, the multi-touch interface has yet to be fully exploited, and I'll probably be filing a lot of bug reports with some of these software makers.

Tuesday, February 2, 2010

#Haiti and Disaster Response 2.0

How do you process and respond to thousands of emergencies in a small area with few open roads and no hospitals? Haiti faced this problem and for once somebody had an answer.

Ushahidi.com, established in 2008 to report human rights abuses and election fraud in some very dangerous parts of the world, has a system. Send a text message, report an incident. Within 24 hours, text message capability had been restored and Ushahidi had a feed of all messages, available via RSS.

What I see coming out of this is a large collection of incidents, each with a location (geographic latitude and longitude), a time, and a short bit of text. The next piece is to sort. Twitter taught us about hash-tags like #britneyspears or #omg, but here someone came up with a clever system. A set of emergency tags that a computer can search and sort into a full logistics map.

#need vs #have: If you need food, water, medical attention, you add #need to your message. If you have food to share you write #have.

#open vs #closed: This can apply to roads, bridges, hospitals, very useful to people who have a truckload of water and need to get it somewhere.

#injured, #trapped, etc: Rescue teams need to know where people need rescue and what type of tools to bring.

So there we have live reports from the field from anyone with a mobile phone. Rescue teams have their map, doctors can decide where to establish field hospitals, and the trucks with supplies know where they are needed and how best to get there.

Lest you dismiss this as more Web 2.0 Twitterish nonsense, know that the U.S. State Department is using this data, along with nearly every other government and NGO responding to the crisis.

Sound good? It's not done yet. Crisis Commons has been holding meetings around the country with people who want to help build this. This is a several orders of magnitude improvement in large-scale emergency response, but the effort is just getting underway.

Silicon Valley people are motivated and thanks to the San Andreas fault, may find themselves a future test case.

Monday, January 25, 2010

I was going to write some technical documentation, but I guess I got sidetracked

Melllvar and the Red Shirts

An Unauthorized Star Trek Adventure Tale

“Captain, I’m picking up a distress call.” Uhuru looked up from her console, concern on her face. “It’s coming from the caves inside that planet.”

Captain James Tiberius Kirk was watching the planet’s horizon on the view screen. There, he thought, an undiscovered world, even now, some, ten years, after its, discovery. He knew danger lay ahead. “We’re going to need a team of men in red shirts. Spock, Bones, come with me. We’re beaming down.”

Meanwhile, thousands of miles below the planet's surface, and just below the opposite surface, countless cave tunnels twisted and turned, intersected, circled back and dead ended, as tunnels are wont to do. But in one place, they intersected. Sparkly lights twirled and sparkled as seven humanoid figures materialized into the away team. Spock, Bones, Captain Kirk, and four ensigns wearing red shirts.

“We better split up.” Kirk surveyed the tunnels. “You in the red shirt, you go down that tunnel.”

“Yes sir, captain!” He was new.

“You, in the other red shirt, go down the next tunnel.”

“Do I have to? I mean, yes sir.”

The two remaining ensigns looked at each other nervously. Kirk turned to them and prepared to assign the most important mission of all.

“Now listen carefully. There’s a third tunnel. Right there. You’ve received the best training Star Fleet Community College has to offer, you have matching red shirts, I think you know what to do. Spock, Bones, and I will stay here and do some tricorder stuff. Bleep bleep bloop.”

Down in one of a thousand caves, dark, silent, forbidding, two flashlight beams appeared around a corner and two men, strangers to this underground world, crept forward in bright red shirts. One of them spoke.

“Join Star Fleet my old man said, see the galaxy he said. What I don’t get is how --Aaaaaaaaaaaaa!!!”



The ensign had disappeared. His companion spun his flashlight around, down to a three foot wide hole in the floor.

“That wasn’t there a second ago!” He watched in horror as the hole slowly began to vanish. Rock materialized where the hole was, there was solid floor again. A second later solid granite began to materialize within the entire tunnel where the last remaining ensign was standing in his red shirt. The tunnel was filled, crushing him. A muffled and very short scream could be heard coming from somewhere inside the solid rock.

From where Bones was standing, the screams were much louder.

“Dammit Jim, we’ve lost another away team! And what’s that mysterious green glow?”

A light grew from the tunnel ahead, and from within that tunnel came a glowing cloud, all cloudy and glowing.

Bones turned to the Vulcan, “Well my fine green-blooded friend, what does your logic say now?”

“Logically, Doctor McCoy, this is a being of pure energy.”

“I am Melllvar," the energy being said in a cave-filling voice, "and I am your biggest fan!”

Kirk considered for a moment before asking, “Melllvar, what do you want from us?”

Melllvar’s glowing cloud-like energy field rose to the ceiling. They could see he was holding something. “I want you to read this fan script I wrote.”

Spock, being wise and diplomatic and logical too said, “Oh, we don’t read scripts. You’ll have to send that to the agency.”

Melllvar's green energy field glowed brighter. “I won’t!”

Kirk stepped forward, “But you must. Union rules, you know. Don’t worry, it’s just a formality.”

Melllvar laughed the laugh that only a being of pure energy who built caves with his mind could laugh, and the entire crew was overcome by the creepy willies, even those in orbit aboard the Star Ship Enterprise.

“You fools! You don’t have to read my script, because you are already in it! Don’t you see? I am all powerful in this world which I created with my mind and I can--”

“Wait hold on.”

“My mom’s calling me. But I’ll be back!!!”

The End... ?