Foursquare natively on Windows (Mobile) Phone? You betcha!

It was a few weeks ago, my friends and I got to Polkers, my favorite Ahi Tuna/Niçoise salad place, and I had found out in just a few seconds of being seated that I had just been “ousted as mayor” – that’s when it first occurred to me to build a Foursquare app for Windows Mobile. My friend Greg had stolen “the mayorship” from me while I was sitting there still trying to just access http://m.playfoursquare.com on IE. I was starting to get really tired of being the odd one out (without an iPhone or the cool apps) – it was fun at first being different – I’d get the occasional, “and what apps can YOUR phone run?” It lasted a while, but the attention was undeserving. My friends Jacob, MG and Greg had put Foursquare on a pedestal and had started becoming “mayors” of every hip venue in San Francisco. I was starting to feel underprivileged. So I sat down last Friday and decided to crank out a Foursqure Windows Mobile app.

4squareWinMo

Yes, it’s true. It exists.

What?

So what I have is a VERY rudimentary first cut of Foursquare on Windows Mobile. First the caveats:

  1. I’m not a designer. My UX/UI skills, well, they don’t exist. I love plain text (over rich text/HTML) and I still use vi when I can. So please don’t judge the app based on its looks :(
  2. I’m hardly a programmer. I have only been coding sporadically over the last few years, but I try to stay on top of programming trends.

That said,

  • This app is built on .NET Compact Framework 3.5 and written in C# (with some bits in unmanaged C++).
  • The app uses nearby cell towers (like Google Maps) to try to get a rough idea as to where you are – it doesn’t currently use GPS (see below for why).
  • It utilizes Foursquare’s APIs to to present you with a list of venues you can check into.
  • The app currently uses Basic Authentication for authorization (I know, frownie face). Trust me when I tell you that I built this app in about 4 days total.
  • You can search for venues in your city (or city area) if the venue you’re looking for doesn’t come up when you first run the app.
  • Here’s a demo of the app working on a prototype 6.5 Windows Phone:

PS: In the video, I don’t show you the login screen. I had the “remember me” option checked the last time I’d logged in so I didn’t have to enter my credentials again.

What doesn’t it do?

  • The app doesn’t use GPS to locate you, today. This is a simple fix and I’ll add it soon. I wanted to take on the challenge of geolocating my position using cell towers first (and the GPS in certain Windows Mobile devices is, well, crap). The app currently waits to locate you before it does anything at all, and if it takes five minutes to locate you, well that’s just unacceptable. I’ll add the option to use GPS in the background and locate you in the near future.
  • It doesn’t currently tell you where your friends are. Teh suck – I know.
  • It can’t currently switch cities for you. Also teh suck.
  • It doesn’t support push notifications (big beast).
  • It doesn’t currently do OAuth. Trying to Base64 encode HMAC-SHA1 in .NET CF is not a trivial thing (at this time).

It’s my goal to support every API that Foursquare makes available. Honest.

When?

If you’d like to use the app, please send me an email for now, and I’ll email you the CAB file some time in the next week. I’m just not comfortable throwing this out there yet – it’s just too early. I don’t want to leave you with a bad experience. I want some of my closest ‘softie friends to test it out first on some of the major carriers and I want to ensure that the app just plain works for you.

foursquare 4square4life

And not to forget, once again, I was wrong (and Jake was right). I thought Foursquare would disappear into the ether after SXSW. I was wrongFoursquare’s a killer app and is here to stay.

I’m happy to host it and take care of it for now. This is probably the first time the Foursquare folks are hearing of this, so after a conversation with them we’ll figure out how this app needs to be managed.

Disclaimer(s)

This is *NOT* a Microsoft sanctioned project or product. My employer has nothing to do with this app and should not be held liable for anything, ever.

“ai”

Related Posts


  • great post
  • dannyroa
    Anand,

    Which part of the app did you use unmanaged C++?
  • Good example my loyal employee! You tell them!
  • Name
    How are you getting the celling tower information? i.e. what APIs are you using?
  • PPCInformer
    Great stuff mate.
blog comments powered by Disqus