<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>mFabrik - mobile sites, apps, HTML5 and CMS software development &#187; google maps</title>
	<atom:link href="http://blog.mfabrik.com/tag/google-maps/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.mfabrik.com</link>
	<description>Freedom delivered.</description>
	<lastBuildDate>Wed, 03 Aug 2011 09:47:41 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Nokia N900, sports tracking and geotagging</title>
		<link>http://blog.mfabrik.com/2009/11/29/nokia-n900-sports-tracking-and-geotagging/</link>
		<comments>http://blog.mfabrik.com/2009/11/29/nokia-n900-sports-tracking-and-geotagging/#comments</comments>
		<pubDate>Sat, 28 Nov 2009 21:33:52 +0000</pubDate>
		<dc:creator>Mikko Ohtamaa</dc:creator>
				<category><![CDATA[geotagging]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[n900]]></category>
		<category><![CDATA[nokia]]></category>
		<category><![CDATA[sports tracker]]></category>
		<category><![CDATA[technology]]></category>
		<category><![CDATA[ecoach]]></category>
		<category><![CDATA[exif]]></category>
		<category><![CDATA[google maps]]></category>
		<category><![CDATA[gpicsync]]></category>
		<category><![CDATA[gps]]></category>
		<category><![CDATA[gpx]]></category>
		<category><![CDATA[kml]]></category>
		<category><![CDATA[map my tracks]]></category>
		<category><![CDATA[nokia sports tracker]]></category>
		<category><![CDATA[sports tracking]]></category>

		<guid isPermaLink="false">http://blog.twinapex.fi/?p=371</guid>
		<description><![CDATA[This blog contains some tips how to use your Nokia N900 smart phone as a &#8220;augmented reality&#8221; sports device. Sports tracking Sport tracking is about collecting your sports activity data using GPS and other equipment. After running/cycling/skiing/whatever you see where you have been, how much time it took and how fast you are. In same [...]]]></description>
			<content:encoded><![CDATA[<p>This blog contains some tips how to use your Nokia N900 smart phone as a &#8220;augmented reality&#8221; sports device.</p>
<h2>Sports tracking</h2>
<p>Sport tracking is about collecting your sports activity data using GPS and other equipment. After running/cycling/skiing/whatever you see where you have been, how much time it took and how fast you are. In same cases you are able to calculate burnt calories and estimated heart rate.</p>
<p>N900 has at least one sports tracking application out there, <a href="http://maemo.nokia.com/maemo-select/applications/ecoach/">eCoach</a>.  eCoach is also suitable for professionals as it has heart rate monitor integration.</p>
<p>eCoach allows you record and  store sport activities. During the activity it uses Open Street Map based map viewer to show your current location. At least Helsinki area has very detailed maps available there, showing even the smallest trails, so you can safely venture to unknown neighbourhoods.</p>
<p>eCoach exports its tracks as GPX gps data file format. eCoach does not have any service integration yet, but you can upload this file to <a href="http://sportstracker.nokia.com/">Nokia Sports Tracker</a> and <a href="http://www.mapmytracks.com/">Map My Tracks</a>. The recommend the latter as it has better social media integration and seems to be under active development. On the otherhand I have been using Nokia Sportstracker since 2007 and it has not really development during the whole this time and seems to lack will to go forward. Also Nokia has <a href="http://betalabs.nokia.com/forum/topic/4085">disabled track profile for imported GPX files</a> <a href="http://www.symbian-guru.com/welcome/2009/07/nokia-is-killing-sportstracker.html">which gives a message &#8220;we really don&#8217;t care about this service&#8221;</a>.</p>
<p>There is also a service called mapmyrun.com with various domain names like &#8220;maymysomething.com&#8221;. Steer away from this service as I tested it and it didn&#8217;t live up to my expections (too much advertising, horrible user interface).</p>
<p>Some sport tracks I have made</p>
<ul>
<li><a href="http://www.mapmytracks.com/explore/track/activity-2009-11-28-152647540200/">Run in Map My Tracks</a></li>
<li><a href="http://www.mapmytracks.com/explore/track/activity-2009-11-15-1541107360200/">Another run in Map My Tracks</a></li>
<li><a href="http://sportstracker.nokia.com/nts/workoutdetail/index.do?id=1801563">The same run in Nokia Sportstracker</a></li>
<li><a href="http://sportstracker.nokia.com/nts/user/profile.do?u=miohtama">All my runs in Nokia Sporstracker</a></li>
</ul>
<h2>Geotagging</h2>
<p>Geotagging is about having GPS  coordinates on your photos. This way photos can be put on the map autotically in photo sharing services like Yahoo <a href="http://www.flickr.com/groups/geotagging/pool/map?mode=group">Flick </a>or Google Picasa. When you known location, capture time and sharing license of the photo, all kind of fantastic services can be created, like <a href="http://photosynth.net/">Microsoft Photosynth</a>.</p>
<p>Technically geotagging works by embedded GPS coordiates into the EXIF metadata of JPEG files.</p>
<p>N900 has geotagging as out of the box feature &#8211; no additional software needed. Just turn on it on in Camera application settings.</p>
<p>Also, you can retrofit your photos with geotagging information afterwards. You can do this by hand using labels and drag and drop in the most of photo sharing applications, like Google Picasa. Also there exist automated tools if you have relates GPS records available as GPX or KML file: checkout <a href="http://code.google.com/p/gpicsync/">GPicSync</a>. This is handy if you record your sports in eCoach and forgot to turn on geotagging in N900 camera. GPicSync also has <a href="http://code.google.com/p/gpicsync/wiki/GoogleMapsExport">a Google Maps export feature</a> if you want to create custom maps for your friends or customers.</p>
<ul>
<li><a href="http://maps.google.com/maps/ms?ie=UTF8&amp;hl=en&amp;msa=0&amp;msid=107574116820777591375.000479751b32bc79abb01&amp;ll=60.204303,25.054064&amp;spn=0.034248,0.08214&amp;z=14">An example map created with N900, eCoach,  GPicSync and Google Maps</a> from one of the runs above</li>
</ul>
<h2>Sports tracking + geotagging = ?</h2>
<p>I am still trying to figure out how to combine sports tracking and geotagging to something cool. Maybe something along the lines of <a href="http://en.wikipedia.org/wiki/Urban_exploration">urban exploration</a>.</p>
<p>But in any case here are some of cities I have &#8220;collected&#8221; from my travels</p>
<ul>
<li><a href="http://sportstracker.nokia.com/nts/workoutdetail/index.do?id=1758533">Budapest</a></li>
<li><a href="http://sportstracker.nokia.com/nts/workoutdetail/index.do?id=1017087">London</a></li>
<li><a href="http://sportstracker.nokia.com/nts/workoutdetail/index.do?id=658576">Copenhagen</a></li>
<li><a href="http://sportstracker.nokia.com/nts/workoutdetail/index.do?id=658581">New York (GPS was not exactly working well&#8230;)</a></li>
<li><a href="http://sportstracker.nokia.com/nts/workoutdetail/index.do?id=156134">Oulu</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.mfabrik.com/2009/11/29/nokia-n900-sports-tracking-and-geotagging/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Building a mobile site and applications with Django and Python</title>
		<link>http://blog.mfabrik.com/2009/09/30/building-a-mobile-site-and-applications-with-django-and-python/</link>
		<comments>http://blog.mfabrik.com/2009/09/30/building-a-mobile-site-and-applications-with-django-and-python/#comments</comments>
		<pubDate>Wed, 30 Sep 2009 08:46:52 +0000</pubDate>
		<dc:creator>Mikko Ohtamaa</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[django]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[pys60]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[technology]]></category>
		<category><![CDATA[analytics]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[apex vertex]]></category>
		<category><![CDATA[augmented reality]]></category>
		<category><![CDATA[bicycling]]></category>
		<category><![CDATA[bilingual]]></category>
		<category><![CDATA[browser]]></category>
		<category><![CDATA[browsercontrol]]></category>
		<category><![CDATA[capabilities]]></category>
		<category><![CDATA[darwin]]></category>
		<category><![CDATA[django-cms]]></category>
		<category><![CDATA[extjs]]></category>
		<category><![CDATA[google maps]]></category>
		<category><![CDATA[gps]]></category>
		<category><![CDATA[handset]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[lbs]]></category>
		<category><![CDATA[localhost]]></category>
		<category><![CDATA[location based]]></category>
		<category><![CDATA[map]]></category>
		<category><![CDATA[media]]></category>
		<category><![CDATA[mobile profile]]></category>
		<category><![CDATA[mod_python]]></category>
		<category><![CDATA[multichannel]]></category>
		<category><![CDATA[multilingual]]></category>
		<category><![CDATA[nokia]]></category>
		<category><![CDATA[oulu]]></category>
		<category><![CDATA[phonegap]]></category>
		<category><![CDATA[premium]]></category>
		<category><![CDATA[print]]></category>
		<category><![CDATA[publishing]]></category>
		<category><![CDATA[rtsp]]></category>
		<category><![CDATA[series 40]]></category>
		<category><![CDATA[series 60]]></category>
		<category><![CDATA[sniffing]]></category>
		<category><![CDATA[streaming]]></category>
		<category><![CDATA[symbiansigned]]></category>
		<category><![CDATA[tourism]]></category>
		<category><![CDATA[traffic statistics]]></category>
		<category><![CDATA[twinapex]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[upnorth]]></category>
		<category><![CDATA[user agent]]></category>
		<category><![CDATA[webkit]]></category>
		<category><![CDATA[xhtml]]></category>

		<guid isPermaLink="false">http://blog.twinapex.fi/?p=248</guid>
		<description><![CDATA[Recently we created a mobile site for an interactive bicycle tour. oulugo.mobi (you need to use mobile browser to access the site or you&#8217;ll get a redirect) is a multimedia enriched bicycle tour through the historic parts of the city of Oulu. All content is provided by OnGo. The route, which you can bicycle through is [...]]]></description>
			<content:encoded><![CDATA[<p>Recently <a href="http://www.twinapex.com">we</a> created a mobile site for an interactive bicycle tour. <a href="http://oulugo.mobi">oulugo.mobi</a> (you need to use mobile browser to access the site or you&#8217;ll get a redirect) is a multimedia enriched bicycle tour through the historic parts of <a href="http://ouka.fi/english/index.asp">the city of Oulu</a>. All content is provided by <a href="http://www.ongo.fi/en/index.htm">OnGo</a>.</p>
<p>The route, which you can bicycle through is drawn on Google Maps. There are nine  action points where the user can listen to streaming audio clips, with still images, in his/her mobile phone. This is sort of  augmented reality experience: The user sees the real world (where he/she is now bicycling) combined with the historic events (audio playback narrative). For example, at Linnansaari (a location on the route) you&#8217;ll see the actual 17th century castle ruins and the narrator tells how the castle exploded when fire, caused by a lighting, reached gunpowder warehouse&#8230; boom. The explosion caused stones fly over 400 meters.</p>
<p>Alternatively, the clips are available as podcasts from <a href="http://www.oulutourism.fi/oulugo/en_default.aspx">Oulu Tourism pages</a>. You can download them into your iPod for offline listening and use in conjuction with a paper map. This demostrates interesting mix of multichannel publishing: paper, web, mobile and podcasts.</p>
<p>The tour is bilingual in Finnish and English.</p>
<p>There exists unreleased iPhone application, based on <a href="http://phonegap.com">PhoneGap</a>, which allows the user to track his/her location real-time on the web page. We didn&#8217;t see it worth of trouble to go through Apple iPhone application review process. When location based service support comes for the browser this feature is indended to be included as the standard HTML5 feature of the service.</p>
<p>There also exists Nokia Series 60 mobile application, based on<a href="http://wiki.opensource.nokia.com/projects/PyS60"> PyS60</a> and Series 60<a href="http://www.forum.nokia.com/info/sw.nokia.com/id/47d8a7fe-768c-44e5-bc26-fcba0a05e35e/S60_Platform_Browser_Control_API_Guide_v2_0_en.pdf.html"> BrowserControl API</a>, which allows the user to track his/her location in real-time. The application provides wrapper around Series 60 WebKit control and allows Javascript to access phone native functions (GPS) over localhost socket communication. Like with Apple, we didn&#8217;t see real-time tracking feature interesting enough to go through Symbian Signed process to get our application released. Also, BrowserControl had seriousquality problems and we didn&#8217;t consider it stable enough for the end users. <a href="https://code.launchpad.net/~august-joki/pys60community/browsercontrol">Some work is available in PyS60 Community Edition repository</a>.</p>
<p>The service is hosted <a href="http://www.twinapex.com/solutions/outsourcing-hosting-and-maintenance-of-internet-and-mobile-systems">on Python specific virtual server on Twinapex services server farm</a>.</p>
<h2>Features</h2>
<ul>
<li>Premium content tailored for audio listening</li>
<li>Dubbed in English and Finnish by a professional voice actor</li>
<li>Bilingual: English/Finnish</li>
<li>Adapts for smartphones (WebKit based browsers) and low end phones (XHTML mobile profile browsers)</li>
<li>Streaming video and audio (RTSP / progressive HTTP download forv iPhone). Different audio quality is provided on depending on the handset features.</li>
<li>Screen resolution detection based on <a href="http://en.wikipedia.org/wiki/User_Agent">user agent sniffing</a>. Three different version of images are used.</li>
<li>Custom Google Maps component for mobile is used. The component adapts for different mobile phones based on sniffing. Features include zoom, show action point, show the current location, search street address name. This component can be published on a request.</li>
<li>Management interface features include video upload, video transcoding different mobile versions and editing bilingual content</li>
<li><a href="http://www.twinapex.com/products/mobile-publishing/apex-vertex/handset-database">Apex Vertex handset database is used to detect the user&#8217;s mobile phone capabilities</a></li>
<li><a href="http://www.twinapex.com/products/mobile-publishing/apex-vertex/reporting">Apex Vertex logging and traffic analytics capabilities are used for the site statistics</a></li>
</ul>
<h2>Software stack</h2>
<ul>
<li><a href="http://www.ubuntu.com">Ubuntu 8.04 Hardy Heron virtual server</a></li>
<li><a href="http://www.apache.org">Apache 2.2 / mod_python</a></li>
<li><a href="http://python.org">Python 2.5</a></li>
<li><a href="http://djangoproject.com">Django 1.0</a></li>
<li><a href="http://django-cms.org/">Django-CMS 1.0</a></li>
<li><a href="http://code.google.com/p/mobilesniffer/">mobile.sniffer Python package to provide abstraction over different handset databases</a></li>
<li><a href="http://www.twinapex.com/products/mobile-publishing/apex-vertex">Apex Vertex streaming</a> solution (RTSP based on Darwin streaming server by Apple)</li>
<li><a href="http://tinymce.moxiecode.com/">TinyMCE WYSIWYG editor</a></li>
<li><a href="http://developer.apple.com/opensource/server/streaming/index.html">Darwin streaming server</a></li>
<li><a href="http://extjs.com/">ExtJS</a> is extensively used in Apex Vertext management interface</li>
</ul>
<h2>Development effort</h2>
<p>Development time: Around 100 hours. Three different developers where involved. Used development tools: <a href="http://www.eclipse.org">Eclipse</a>, <a href="http://pydev.sourceforge.net/">PyDev</a>, <a href="http://subclipse.tigris.org/">Subclipse</a>, <a href="http://subversion.tigris.org/">Subversion</a>. There were around five meetings between the content provider and the technology provider. Few beta testing rounds using iPhone application were performed by bicycling in -10 celcius degrees weather (north and so on&#8230;). No polar bears were harmed during the creation of this mobile service.</p>
<p>The service is linked in from Oulu Tourism pages and thousands of paper brochures printed for Oulu summer season 2009.</p>
<p><strong style="font-weight: bold;">About the author Mikko Ohtamaa</strong></p>
<ul>
<li><a href="http://www.linkedin.com/in/ohtis  ">LinkedIn</a></li>
<li><a href="http://twitter.com/moo9000">Twitter</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.mfabrik.com/2009/09/30/building-a-mobile-site-and-applications-with-django-and-python/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

