Thursday, March 26, 2009

My NYC Android Presnetation

A couple of you have been asking me how my presentation at the March 24, 2009 meeting of the NYC Android Developer's Meetup went. Overall, not bad, but it did have its rocky moments.

The point of the presentation was to demo the mini eco-system I've been writing that uses Google's App Engine (GAE) and Google's Android phone. There's nothing really special about it (other than I wrote it ;-) but the group needed someone to present something and you know how much I like to stand in front of a technical audience.

For those of you in the audience that are new, you can read what my little eco-system does here.

The meetings are held at Fast Company's NYC headquarters, 29th floor of WTC 7. The meeting room has an awesome view of New York and the Hudson but this was the first time I had seen it in the light (due to Daylight Savings Time change). With the sun setting behind skyscrapers, it was even awesomer [sic].

I got there early and started setting up. Of course, the hardware didn't want to cooperate: the GPS on the phone wasn't kicking in; the Macbook display was doing weird things until one of the other members pointed out I had to put it into "mirror" mode; and Droidex, the application that displays the phone screen on the computer in real-time stopped working! Without Droidex, my presentation was worthless. Eventually, though, I got everything working (except the GPS).

There was a good turnout for the meeting, probably 25 to 30 people, over half of them new. We introduced ourselves and mentioned why we were interested in Android. When the last person finished speaking, Rana the Assistant Organizer looked at me like "Well? Go for it" so I did.

The presentation was called "Scratching an Itch". The phrase "scratching an itch" is used in programming to describe the act of a programmer writing a program ("scratching") for his need (an "itch") instead of someone else's need, like his client or boss.

So the first thing I had to do was explain my "itch". I did it by tellning the story in a Lessig-style presentation. The story revolved around me missing Banksy's NYC exhibit in October 2008 but first, I had to explain who Banksy was, so I showed several of his art works. Things were going well until I showed this one; about half the audience (mostly the older people) didn't appreciate it for some reason. :-)

Anyway, I got through the "describing the itch" part and started demoing my programs. That could have gone a lot better! I think I'll practice that some more before trying it out on some more audiences.

Afterwards, I got to talk to several cool people about how to do things in Android and even got into a discussion about AWS.
At that point, there was nothing left to do but head home.

I want to put up a screencast of my presentation and demo, so if anyone knows of some decent [fF]ree software to do that on a Macbook or Linux, let me know.

Wednesday, March 18, 2009

Android and ProximityAlerts: Have I found "the trick"?

As you know, I've been fighting with Proximity Alerts (PAs) in Android. The idea behind them is I can tell the LocationManager to notify me when I come within X distance of a geopoint (geographical point, a.k.a. latitude/longitude). There's is practically no discussion of this on the Google Groups, for the 1.0 version of the SDK anyway, and no one has been answering my postings.

My conclusion? PAs don't work, which is a shame cause it seems to be a killer feature of the Android framework.

Well, I Was running errands today and I decided to try something. I deleted every location in my Android save one. I then field-tested my app. The PA worked! I then drove to a local WiFi hotpsot (the local liquor store :-), changed the geopoint and tested it again. It worked again!

So my current theory is this: PAs work, but only one at a time. You can't load up several PAs becasue, presumably only the last one is read/active.

This means I have to write my own routine to determine what geopoints are nearby which kind of defeats the point of using PAs in the first place if you ask me.

Maybe I'll actually have a working demo for my presentation on Tuesday at the NYC Android Developer Meetup!

Monday, March 9, 2009

Musings for a rainy day

All throughout my consultancy, my business model was "build it and they will come" and sure enough, for ten years, people kept finding me and hiring me for projects. Well, that's not working any more; the market has moved and I need to find another market and/or business model.

The question is "how?" How do you find something that is both profitable and enjoyable? I've been told by marketers "Pick an industry. Anything. Selling dog food. Dry cleaning. Just pick something and focus on it." That is unsatisfying to me.

I also need to move "up the stack". What I've been doing is selling services (programing, admin, training); basically being a journeyman or, in your terminology, a non-full-time contractor. But what's above me in the stack? What skills or knowledge do I have that others would pay for that don't ential billing by the hour for slinging code or doing maintenance?

And then there's the technical side of it. I'm familiar with what's going on technically (Twitter and Facebook APIs, Google Android, the iPhone, Cloud Computing) but how do you form a business around them? A specific example: I have the docs and understand the Twitter API but what can I do with it? What can I build with it that others will find useful and, even better, pay for?