UMapper

So Long and Thanks For all the Fish!

Posted in UMapper on July 21st, 2010 by andrei – 5 Comments

Friends, I’ve made the decision to step down as UMapper CEO and end my active involvement in the company’s day-to-day operations. Needless to say, this has been one of the hardest decisions I have had to make, but I feel it is the right one.

From now on the company will be lead by UMapper co-founder Antoine Toffa. Please connect with Antoine on LinkedIn, shoot him an email, or ping me for an introduction.

Since founding the company back in 2005, I feel very fortunate to have worked with the best and the most talented people in the industry (you know who you are) who transformed UMapper from a concept into a service used by thousands of individuals and companies. It is hard to believe that today UMapper serves millions of maps on some of the biggest media websites.

Also, I want to say how grateful I am to all UMapper partners and customers who have contributed a great deal to the company’s growth and continue to use its services and support its efforts. THANK YOU!

I wish UMapper all the best, and I will continue to support the company as a board member and shareholder. Cheers!

Update: I resigned from UMapper’s Board of Directors on 8/4/2010

Big News for AFComponents

Posted in Startup, UMapper on May 25th, 2010 by andrei – 1 Comment

Just over one month ago we announced the intention to sell afcomponents.com, and today I am thrilled to say that the site has been acquired!

The new owner is a Raytown-based ProContent, who is excited and very capable of taking AFComponents to new heights. ProContent has been developing Flash / Flex solutions since 2002 but are best known for their work on Flash-based content and Amazon-branded cloud services.

Before making the decision, we reviewed a number of offers, and ProContent stood out for their technical expertise, strong product portfolio, solid understanding of the interactive space, and established presence. Most importantly, the guys have shown a strong commitment to continue to develop AFComponents and grow the community. All in all, it is a great fit!

After working on AFComponents for 5 years (more on that in the next post), it is extremely rewarding to know that the project is in good hands. I look forward seeing it grow under the new leadership.

All the best to ProContent and AFComponents!

Update: Denver Business Journal – UMapper sells Advanced Flash Components

p.s. Bonus from the good old days, left to right: Matt Wiggins, Dmitry Stolyarov, Andrei.

My Interview on Nestoria

Posted in UMapper on May 11th, 2010 by andrei – Be the first to comment

Last week I was interviewed by Kat Mackintosh from Nestoria in relation to my work at UMapper. The interview went live today, check it out.

On a different note, It is good to know that people no longer find OpenStreetMap editing geeky. Good job Steve and the rest of OSM community for pushing the project into the mainstream.

Integrating MapQuest into UMapper

Posted in Geo, UMapper on May 7th, 2010 by andrei – Be the first to comment

Today we started testing the integration of MapQuest maps into UMapper (example below), and it went extremely well. This might not seem like a big deal since UMapper currently supports Bing, OpenStreetMap, Yahoo, CloudMade and other mapping providers, but there are few technical details that make this an important milestone (setting aside the fact that MapQuest is the second largest mapping provider). MapQuest uses a different projection from all the the other providers as well as a unique way to calculate zoom levels based on the map scale. Both of those are significant differences making MapQuest maps extremely challenging to integrate into third-party mapping APIs.

That said, we were able to make the necessary changes to the UMap API in order load map tiles, re-project overlays and swap the algorithm for calculating zoom levels. I can’t say exactly when, but we plan to release this functionality publicly in the near future. Stay tuned. In the meantime, please test the embed below and let me know if you see anything funky.

If you are interested in learning more about map projections, take a look at the detailed post on the subject on Geoweb Guru.

Thoughts on Where 2.0 2010

Posted in General, Geo, UMapper on April 15th, 2010 by andrei – Be the first to comment

This year’s Where 2.0 was as interesting and engaging as ever. It is worth to point out that instead of traditional mapping companies like Microsoft, Google, ESRI and others, the center stage at Where 2.0 2010 was dominated by Foursquare, Gowalla, Twitter, Yelp and freshly-released SimpleGeo. However, Yahoo Geo did roll out concordance enhancements to GeoPlanet API, ESRI announced online GIS platform, NAVTEQ showed a cool new way to collect data, and Blaise Aguera gave a phenomenal presentation on Bing Maps.

Another curious fact was the shift in discussion topics. During the past two years there was a lot of talk about business models, monetization and mapping the world. This time around the focus shifted to the potential of the location space, ubiquity of location data, real time content and growth of local. I guess we are getting closer to starting to explore the potential of LBA, but for most companies it is not going to happen this year.

In case you missed it, here are few hightlights from the geo world:

Check out Oreilly YouTube channel for the complete list of Where 2.0 talks.

The guy on the left is Martin Isenburg, the author of the famous Chickens and Lasers talk.

Chicken Laser

Finally, you can watch me talk about UMapper in interviews by GISCafe and Steve Coast.

Encounter with Kevin Hoyt and UMapper Demo on NexusOne

Posted in Actionscript, General, UMapper on April 14th, 2010 by andrei – Be the first to comment

Yesterday at NAB2010 I had a chance to catch up with Kevin Hoyt who is a platform evangelist at Adobe. In addition to all the cool new Flash CS5 features, Kevin showed the latest version of Adobe Flash Player 10.1 running on Google’s NexusOne. In the picture below Kevin is showing UMapper maps running on his Android phone.

UMapper map on NexusOne

I was very impressed with the quality and the speed of [mobile] maps and can’t wait to see this on my phone. As expected, Kevin didn’t share the release date for flash-enabled Android, but it should happen some time this year.

AFComponents is Looking For a New Owner [and it could be you]

Posted in General, UMapper on March 23rd, 2010 by andrei – Be the first to comment

Today we sent out an email to tens of thousands AFComponents.com customers announcing the intention to sell AFComponents. Here is the original email that provides a good summary of the situation:

Let’s be honest, we haven’t been able to give AFComponents the attention it deserves lately. With it’s continuing revenue and consistent traffic, it would be a shame to see our support for the project diminish as we focus more and more on UMapper. That’s where you come in.

Why are we selling AFComponents?
Over the past year most of our resources have been focused on the interactive mapping platform UMapper, which is growing quickly. Our small team can no longer fully support both projects, and we have made the decision to pursue opportunities with UMapper.

We are still devoted to the success of AFComopnents and would love to see it grow instead of simply maintaining the status quo. AFComponents is a great asset as it continues to generate revenue and enjoys consistent organic traffic.

How much does it cost?
We are open to negotiations. Send us your best offer along with a description of what you plan to do with the website. Above all, we are looking for passionate people with a solid action plan.

What are we selling?
Here is the quick list:

  • AFComponents.com website, including CMS
  • AFComponents.com domain name
  • Advancedflashcomponents.com domain name
  • AS 2.0 and AS 3.0 components including source code exluding UMap and GMap components

How can I get more info?
In order to receive more information please sign this NDA. You can email the NDA to andrei at afcomponents or fax it 303-694-7305. Once we receive a signed copy we will provide you with additional details.

Please help spread the word! Forward this email to all of your friends to receive amazing blessings for the rest of the day!

That said, if you are interested or know someone who might be, sign the NDA and shoot me an email. I look forward to hearing from you.

Packaging UMap API for IPhone

Posted in Actionscript, General, UMapper on March 8th, 2010 by andrei – Be the first to comment

Last week I finally had a chance to test UMap ( ActionScript 3.0 mapping API ) on IPhone. Aside from running into some minor issues with provisioning files, the entire process of packaging a Flash application for IPhone [in Flash CS5] went smoothly.

To my surprise I didn’t have to make any changes to UMap nor to my test application, the whole thing worked from the very first try. I was able to load KML files from UMapper, switch between map data providers (Bing, Yahoo, Google, OpenStreetMap), access IPhone’s GPS coordinates and use accelerometer. Here is a quick video demo – apologizies for the poor quality.

And here is the code that makes this work:

package  {
 
	import flash.display.MovieClip;
	import flash.events.Event;
	import flash.events.GeolocationEvent;
	import flash.sensors.Geolocation;
	import flash.display.Sprite;
 
	import com.afcomponents.umap.events.MapEvent;
	import com.afcomponents.umap.core.UMap;
	import com.afcomponents.umap.overlays.FeedLayer;
	import com.afcomponents.umap.overlays.Marker;
	import com.afcomponents.umap.types.LatLng;
	import flash.events.MouseEvent;
 
	public class IphoneMap extends MovieClip {
 
		private var _map:UMap;
		private var _feed:FeedLayer;
		private var _location:Geolocation;
		private var _count:Number=0;
 
		public function IphoneMap() 
		{
			createChildren();	
		}
 
		private function createChildren():void
		{
			_map = new UMap();
			_map.setSize(stage.stageWidth, stage.stageHeight-49);
			_map.doubleClickMode = "zoom";
 
			var tab_bg = new Sprite();
			tab_bg.graphics.beginFill(0x000000);
			tab_bg.graphics.drawRect(0,0,stage.stageWidth, 49);
			tab_bg.x = 0;
			tab_bg.y = stage.stageHeight-49;
 
			var map_btn:MapButton = new MapButton ();
			map_btn.x = 20;
			map_btn.y = tab_bg.y+ 10;
			map_btn.addEventListener(MouseEvent.CLICK, loadData);
 
			var target_btn:TargetButton = new TargetButton();
			target_btn.x = stage.stageWidth -( 20+target_btn.width);
			target_btn.y = tab_bg.y+10;
			target_btn.addEventListener(MouseEvent.CLICK, initLocation);
 
			this.addChild(tab_bg);
			this.addChild(target_btn);
			this.addChild(map_btn);
 
			this.addChild(_map);
		}
 
		function loadData(event:MouseEvent):void
		{
			_feed = new FeedLayer();
			_feed.autoShow = true;
			_map.addOverlay(_feed);
 
			var ids = ["57828","57823","57830"];
 
			_feed.load("http://umapper.s3.amazonaws.com/maps/kml/"+ids[_count]+".kml");
 
			if(_count==2){_count = 0;}else{_count ++;}
		}
 
		function initLocation(event:MouseEvent):void
		{
			_location = new Geolocation();
			_location.setRequestedUpdateInterval(5000);
			_location.addEventListener(GeolocationEvent.UPDATE, onLocationReceived);
		}
 
		function onLocationReceived(event:GeolocationEvent):void
		{
			_map.setCenter( new LatLng(event.latitude, event.longitude), 5);
 
		}
	}
}

Flash CS5 and The Magic IPhone Packager

Posted in Actionscript, UMapper on February 10th, 2010 by andrei – Be the first to comment

Today was my first day working with Flash CS5 and I loved it. Adobe finally added code completion and auto-import for the custom classes to the ActionScript editor. The code completion works for functions, events, properties and everything in between. Another cool improvement is the compiler error panel. You can now make more sense of the messages and switch between errors and warning. All and all, these changes significantly improve productivity and streamline the development process. Now to the big stuff.

It is true, you can compile Flash applications for the IPhone and it really works.

It works and it is quite simple. Adobe added libraries to handle location, accelerometer, multi-touch and other phone-specific features. To give you an idea here is how to capture GPS coodrinates of your device:

import flash.events.GeolocationEvent;
import flash.sensors.Geolocation;
 
var location:Geolocation = new Geolocation();
location.setRequestedUpdateInterval(1000);
location.addEventListener(GeolocationEvent.UPDATE, onLocationDataReceived);
 
function onLocationDataReceived(event:GeolocationEvent):void
{
// Here is your location data
trace(event.latitude);
trace(event.longitude);
}

To sum things up, I had a very good first impression, now is the time to test thing with a fully-featured location app.

Filtering Twitter Search Results

Posted in UMapper on February 8th, 2010 by andrei – Be the first to comment

Just rolled out a new version of UMapper Twitter Search template with a very cool feature. You can now specify a default search term in the title of your map. Simply add a colon and a keyword to the title of your map – “My twitter map: keyword”.

Twitter Search:Saints

This template is still in closed beta testing, let me know if you would like to get it.