Posts Tagged ‘hotspotdot’

dotspott 1.3.x for webOS

dotspott for webOS v1.3.0 should now be available in the webOS app catalog.

dotspott webOS screenshot 1 dotspott webOS screenshot 2 dotspott webOS screenshot 3

Primarily, there’s a new look compared to the older hotspotdot app. Not a whole lot of new features, but two noteworthy additions:

  • dotspott will show your current locations and, using the Google Map API, reverse geocode the latitude, longitude pair to tell you where you are.
  • Support for attaching photos to spotts

A smaller update (v1.3.1) should out in the coming week with some minor stylistic additions.

dotspott

I’ve been working on a fairly major update to hotspotdot, both the web client and the webOS mobile app.

First, a new name, accompanied by a new logo.
hotspotdot is now dotspott:

dotspott logo

This should (hopefully) put an end to any confusion that the app has anything to do with wi-fi hotspots. It also allows for a much nicer URL as I was able to get dotspott.com (much more elegant compared to the previous, my.hotspotdot.net).

There’s some minor style changes to the index page. Also, some additional code for some minor improves in user experience, such as auto-focus on input fields when a dialog comes up.

dotspott index page

The most significant changes are to the main interface. There’s a new look and you’ll notice support for uploading photos. Also, there’s now a 2-column layout; this avoid the issue of having to keep scrolling down the page to show a new location on the map (which was at the top of the page). The map and header areas are fixed (position: fixed), so as you scroll, only the list of locations on the left will move. I debated whether to do this or to contain the list of locations in a div with overflow:auto or overflow:scroll, so the list would have its own scrollbar, and you wouldn’t scroll the entire page to move up and down the list. I have somewhat of a dislike for both solutions, although one was necessary. I opted for the position:fixed approach because manipulating scrollbars within a page is impossible on a touchscreen device (perhaps we’re at the time where we’ll see the end of overflow:auto and overflow:scroll, along with :hover)

dotspott main interface

The updated webOS app is almost done. I’m just doing some last minute testing before I put it up in the app store, so I’ll have some info and screenshots up soon.

Edit: h/t to Shifting Pixel for the cool Smart Image Resizer; I really wasn’t feeling up to writing image resizing and caching routines, and this little library was a perfect solution.

hotspotdot for webOS v1.1.0

The 1.1.0 update for the hotspotdot webOS app is up. You can now create a new account from within the app, share hotspots via. email, update the locations of your existing hotspots, and refresh the current list of hotspots.

hotspotdot webOS screenshot 1 hotspotdot webOS screenshot 2 hotspotdot webOS screenshot 3

I can’t respond to reviews in the app catalog, so I’ll do it here.

Potential = 5 stars. Currently, still a work in progress – but fills a much needed void on webOS = being able to save fav places in google maps.

2 features missing:

1. Search via keyword/category. You can enter keywords for your places, but then it just shows everything in a list anyways. Maybe make it autosearch – when the program is open you can just starts typing and the matching entries will pop up.

2. Ability to enter places you aren’t current at. Right now to add any place you have to physically be there. This prevents the most common use of fav places = hear about a good restaurant from a friend and save its location so you can go there later.

Hope to see this developed more…and i’d pay for it!

I’ll definitely work on autosearch. Adding locations that your not currently at is problematic because there doesn’t seem to be a mechanism on webOS by which you can poll the locations of a selected marker from the Maps app. You can, of course, do this from the web app.

2 stars because it functions & is a cool idea….BUT…this is clearly not formatted for WebOS (Or maybe mobile?). I say that because you have to sign up 1st & when the sign in screen loads it is so small as to be unreadable. Once you expand the screen to enter you info, you have to slide aound to get it all in and “submit”.

That might sound harsh/anal but it is the simple things – like useability – that frustrate users and make them look elsewhere.

From Chris T

Very true, the sign-up process was not part of the app prior to this version and the process via. the website really was not designed for a mobile device – though everything should work. This version should make the process more mobile-friendly.

Ok.. Not really what I expected.. I was reading into this as WiFi hotspot designator.. Just a basic location designator?? Uh..ok…

From Anonymous

I was hoping it would perhaps look for “HotSpots”, posibly reporting strength, then recording GPS location, like a sniffer.

From Mark R

There seems to be some confusion that the app deals with wifi hotspots. To (hopefully) avoid this, I’ve altered the app description to the following:

hotspotdot allows you to easily record and tag locations (“hotspots”) that are important to you. Your personal database of locations (and related metadata) can then be accessed to show you exactly where your hotspots are and how to get to them.

Finally, for bug reports, feature requests, etc. you can now email me at aautar@hotspotdot.net.

Share hotspots via email

A small, but useful addition to hotspotdot: you can now share hotspots via. email.

hotspot shared via. email, shown in gmail client

Currently only available on the web client, but this and a few other features will soon make their way into the webOS mobile app.

At one point I did consider making a larger social networking component integrated into the site – sharing hotspots with other hotspotdot users – however, I don’t think this would have been very useful, certainly not to me. In many ways hotspotdot is fairly anti-social, focused much more on functionality revolving around maintaining your personal repository of locations rather than the current location of your friends and whether or not they’ve checked-in at some commercial venue; the concept underlying other location services such as Google Latitude, foursquare, and Facebook Places.

Attaching a title to a position on Google Maps

One of the neat little things I discovered when doing the hotspotdot webOS app is how to show the custom, user-entered title of the location, as shown below.

Google map location on webOS

This is done by specifying the title in the query, in parentheses, after the coordinates. The full, escaped query URL for the location above is as follows:

http://maps.google.com/maps?q=40.7044120969184,-73.99009709643556%28Empire%20Fulton%20Ferry%20State%20Park%29

The Javascript code for the webOS app would look something like this (latlong and title are variables that hold the latitude, longitude coordinate pair and title, respectively):

this.controller.serviceRequest("palm://com.palm.applicationManager", { method: "open", parameters: { id: "com.palm.app.maps", params: { query: escape(latlong) + "%28" + escape(title) + "%29" } } });

This works in the browser as well, so the URL shown above would display the following,

custom title on Google maps position

hotspotdot for webOS

I originally conceived hotspotdot as a smartphone app, as its utility meshes perfectly with a smartphone’s GPS receiver, but the contest I was entering (Microsoft’s My App is Better Challenge) required a web app. The web app is useful but when it comes to adding a hot spot it’s hard to beat hitting a button and pulling in your global position instantly.

Anyways, the bottom line is I went ahead and built the mobile app anyway. I have a Palm Pixi, so I built it for webOS.

The app was approved and published in the app catalog a few hours ago, so anyone with a Palm Pre or a Palm Pixi should be able to get it soon. It’s free. Also, you’ll need an account at my.hotspotdot.net to use it (sorry, I didn’t add support for account creation within the app).

hotspotdot webOS screenshot 1 hotspotdot webOS screenshot 2 hotspotdot webOS screenshot 3

This if my first webOS app and my first mobile app!

The Mojo framework proved to be fairly approachable. Making everything Javascript + HTML-ish markup was a very good call. However, a few bits of criticism:

  • I ran into some annoyances due to nothing more than flaky documentation. I should say 99% of the documentation is very good and thorough, but small bits of missing info, like needing the .mojo prefix for method calls, can drive you up the wall.
  • A intermediate-level tutorial would have been very much appreciated. Palm has the Getting Started tutorial followed by the fairly advanced Client-Server tutorial.
  • At various point in the documentation (e.g. here) there are examples of declaring buttons in a simpler way, entirely within the DOM (no setupWidget call necessary) and no x-mojo-element attribute on the div. This shortcut should probably be avoided; you have to understand that all you can do with these elements is respond to the Mojo.Event.tap event – you can’t change the underlying model, label, etc.
  • To manipulate/update widgets, you need to modify the widget’s underlying model (an array of properties). This was somewhat surprising to me. I would have figured, in keeping with the JS + HTML scheme and how things are done in an AJAX web app, you would modify the DOM of the view to change things.
  • Mojo uses the Prototype framework. Prototype is okay… AJAX calls are simple enough, but XML parsing was a bit more difficult compared to jQuery, which is more powerful for traversing and pulling elements out of an XMLDocument.
  • You have to work in Eclipse for an integrated IDE experience. I would have much preferred a Netbeans plug-in.

Overall, I’m still pretty happy with the Mojo framework and I was able to code, test, and deploy an app fairly quickly (~2 weeks, working on this on and off; probably less than 72 hours total).

Not quite fulfilling…

Apparently I’m not good at reading nor following rules.

my app is better contest, rejection email

I’m guessing this has to do with the fact that I used Google Maps for hotspotdot instead of Microsoft’s Bing Maps, with the Google logo plainly visible on the map.

It never crossed my mind that this might be an issue. Trademark or not, using components from a variety of vendors is pretty much the norm for any sort of web development or web design.

hotspotdot

hotspotdot is my entry into Microsoft’s My App is Better Challenge. In a nutshell, hotspotdot allows you to locate and tag “hot spots” that are important to you, allowing you to create a personal database of hot spots.

It’s a very simple app, utilizing PHP, SQL Server 2008, jQuery, jQuery UI, and the Google Maps API. I wrapped thing up in under 2 weeks, but in order to make the August 25th deadline there were a few features I didn’t get a chance to put in, such as preloaders, icons on the map, and searching by tag. I’ll probably devote some time to these in the coming weeks.

hotspotdot login

The goal of the contest was to create something showing off the power of SQL Server and Microsoft’s new PHP for SQL Server 2.0 drivers. I used the new PDO driver which was pretty sweet – very simple, elegant API. Two things in particular that impressed me were transactions (very nice for doing multiple inserts or deletions) and a consistent and well designed exception model (makes error handling much easier and especially powerful when combined with transactions as failed queries don’t effect the database [code jumps to exception handler before commit() is called], so no chance of junk being inserted). Error messages, in general, were also much more descriptive than those I’ve encountered with MySQL.

Finding a server proved difficult. I got a shared hosting solution, but the host was unable (though I suspect unwilling) to install the PHP for SQL drivers. So I ended up getting a virtual private server, but this only came with SQL Server Express and I used some features (see below) that prevented a migration. In order to avoid purchasing an SQL Server 2008 license (way out of my budget), my final solution was use the shared hosting server for the DB and the VPS for everything else. Hence the reason for the site being located at the my. subdomain, which maps to the IP of the VPS.

SQL Server 2008 is a fine system (despite some annoyances with the management studio)… though it’s really just a solid database system, which isn’t bad, but there’s nothing really impressive or creative about that. It’s not really leaps and bounds above a cheap solution like MySQL. The contest was about SQL Server, so I tried to do something that utilized a fairly unique aspect of the system: the geography data type. I wasn’t too impressed. It simply holds a (longitude, latitude) pair in a certain format, nothing more. The one big advantage of having a vector type like this would be doing comparisons based on distance but, as far as I could tell, this isn’t supported (my queries failed). Worse yet, in SQL Server Management Studio the display of the geography type is in hexadecimal, making things very cryptic… I couldn’t help but wonder why this is any better than using 2 columns and storing the longitude and latitude values independently. That said, the idea of richer/more-complex data types within a relational database is a pretty cool idea and it would interesting to see it taken further and beyond its current, primitive state.

hotspotdot map

hotspotdot map

Leave a comment if you find a bug or have any questions, comments, etc.