Homepages.com – Now less bad

I was reading an article on HouseValues on the Motely Fool. I discovered they relaunched their site recently. Anyway, here’s a quick rundown of the things I noticed…

  • They are now using MS Virtual Earth instead of their old flash map
  • I like how they integrated “Home Buying”, “Home Selling”, “Loans” into tabs onto one site
  • Home value feature is still a lead generator for agents
  • More ads from non real estate advertisers (T-mobile, Dish Network)
  • Site feels sluggish

It’s a little better, but not by enough to change any business issues that the company has.

Google's My Maps

You can create and link to custom maps on Google now. It’s an easy to use slick interface that would be useful for real estate agents interested in making a tour of their neighborhood. Parts of your tour will also pop up in searchers results, so don’t forget to put a link to your homepage. Actually useful for marketing? Only if you do it “right” and make some interesting tours. It’s like websites – every agent has one, but only a few (like Marlow) have great ones.

Non-agents (the home buying / renting public): it looks like it’ll be a great way to get to know a neighborhood once more maps are created.

Mash-up 102 – Virtual Earth Pushpins

After last month’s Mash-up 101 – Virtual Earth and RedFin’s recent switch to Virtual Earth, it’s time for another mash-up class. Last time, we created a simple aerial Virtual Earth map (centered above the Seattle Space Needle).

This time, we will create a simple road map (that is bigger and centered above the continental US) which has pushpins for the Seahawks road to SuperBowl XLI. So first of all, we need to change our map view, like so.

function loadmap()
var vemap = new VEMap(’VEMap’);
var vepoint = new VELatLong(40, -100);
vemap.LoadMap(vepoint, 4, ‘r’);

You’ll notice that the vepoint object has a different latitude & longitude this time. I just picked some random point above the middle of the US that looked good. The point in question is a few miles north of Norton, Kansas (which is located halfway between the middle of the US and the middle of nowhere). I also called vemap.LoadMap method with different parameters this time. The first parameter is the center point of the map (but you already figured that out). The second parameter is the zoom level. Valid values are from 1-19. A 1 will zoom out to the entire earth, while a value of 19 will zoom in to house/street level. Since we just want the continental US, we’ll use a zoom level of 4. The last parameter is the map type. ‘a’ is an aerial map, ‘r’ is a road map, and ‘h’ is a hybrid map. You can also use ‘o’ for oblique (aka bird’s eye view), if you are zoomed in near street level.

Now, we need to add a simple pushpin for the location of the SuperBowl XLI. To create a simple pushpin, we need to add the following code to our loadmap function like so…

var veMiami = new VELatLong(25.9577745, -80.2391839);
var veMiamiPin = new VEPushpin(‘SuperBowl’, veMiami);

In the above code fragment, the veMiami object contains the location of Dolphins Stadium in Miami (nothing new there). The second & third lines are the interesting ones. In the second line, the VEPushpin object takes a least 2 parameters. The first parameter is a unique ID and the second parameter is the location of the pushpin (Dolphins Stadium in this case). Now that we’ve created our pushpin, we need to add it to our map via the AddPushpin call.

You should now see a red thumbtack on a map (unless you are using Firefox 2). Unfortunately, there’s a minor bug in current version of the VE map control that causes it to use the wrong drawing code on Firefox 2. Fortunately, there’s an easy fix described on Via Virtual Earth. (Which is a site I highly recommend you visit if your serious about Virtual Earth development). Anyway, assuming you’ve gotten your thumb tack to show up, it’s time for a complex pushpin. This time we’re going to put a Seahawk logo at Qwest Field with an HTML popup balloon. Time for more code…

var veSeattle = new VELatLong(47.5950437, -122.3327744);
var veSeattleDetails = “<img xsrc=’thumbnail.jpg’><br>In a game for the ages, <a xhref=’http://sports.yahoo.com/nfl/recap?gid=20070106026′>Seattle beats Dallas</a> on fumbled snap by Tony Romo for a 19 yd field goal and a game saving tackle by big play Babs.”;
var veSeattlePin = new VEPushpin(‘Seahawks’, veSeattle, ‘http://espn.go.com/i/teamlogos/nfl/sml/trans/sea.gif’, ‘Seattle 21, Dallas 20’, veSeattleDetails);

In the first line, we create a VELatLong object for the location of Qwest Field. The second line, contains the HTML that we want to appear in our pushpin’s pop-up balloon (the above picture of Tony Romo and a brief description of the play of the game). The third line creates the pushpin, except this time we have more parameters. The third parameter is the url to the icon of the pushpin (aka the seahawks logo). The fourth parameter is the title of our pop-up balloon, and the last parameter is the HTML for the details section of our balloon. Finally, we add the pin to the map. Assuming it all works you should see something like this…


Otherwise, goto http://www.annaluther.com/mashup2.html to see what a working version of this example looks like (Firefox work-arounds and all). See ya next time.

Hotpads: A Slick Search Tool for Apartments, Rentals, Sublets and Roommates

[photopress:hotpads.jpg,full,alignright]Thanks to John Cook post on Real estate timeline debuts, I found the greatest site for Apartments, Rentals, Sublets and Roommates I have seen. HotPads.com provides users with the ability to find dwellings based on Density, Per Capita and Median Age/Renters/Rent. They even use census data to color code their maps based on this data. For the property owner they create listings on HotPads is free and easy! If you are a landlord, they eve send your listings to Oodle and Google Base.

HotPads currently uses census data to color code our map based on a few different statistics:

  • Population Density
  • Per Capita Income
  • Median Household Income
  • Median Age
  • Percent Renters
  • Median Rent

Here are some examples from Seattle: Seattle, WA

Per Capita Income

Household Income

Median Age

Percent Renters

Median Rent

Even though rail stations are not available in the Rain City yet, with HotPads maps you can see various points of interest that might help you decide where to live:

  • Subway and Train Stations
  • Public Schools
  • Private Schools
  • Universities


Points are added to the map with their nifty icons:



Train and Subway Stations

They are currently listing the following rail systems:

  • New York City Subway
  • Washington, DC Metro
  • Bay Area Rapid Transit
  • Bay Area’s Caltrain
  • Boston’s MBTA
  • Chicago’s El
  • Los Angeles County Metrorail
  • Denver’s Light Rail
  • Dallas’s DART
  • Miami-Dade County Metro

As John Cook pointed out (looks like Galen has added Shackprices‘ GREAT search to the list), their Real estate timeline is pretty cool too:


Mash-up 101 – Virtual Earth

After reading Dustin’s Blog Posts on a Map?, RedFin’s big coding contest, and the lack of “more interesting things” to blog about (Sorry, I can only whine about the MLS before I start repeating myself), I’ve decided to show folks how to create a simple Real Estate mash-up. I want to upgrade Zearch to the latest Virtual Earth technology (I’m still using version 2, but the current version is version 4) during the Christmas break, so I figured I might as well share the knowledge I’ll be gaining from that experience.

Mash-up 101: Virtual Earth

Prequisites: Basic Computer Literacy, HTML 101

Hello class, welcome to Mash-up 101. In today’s session we will learn how create web page that contains a Virtual Earth map control. It’s easier than you might think!

First you need to fire up your favorite text editor (Professionally, I usually use SlickEdit 11 or Visual Studio 2005, but I’ll use the world famous Notepad text editor for today’s class). Then and create an empty web page and save it to your desktop.

<title>Mash-up 101: Virtual Earth</title>
This is my first <b>Virtual Earth</b> mash-up.

HTML (which stands for hypertext markup language). HTML is the language used for creating web pages (it what you see, when you click View Source in your favorite web browser). All those funny <html>, <head>,<title>, <body>, and <b> things you typed in are HTML tags. When a web browser loads a web page, it reads the tags to determine how a web page should appear and behave. If the following is over your head, you should to take HTML 101 before you read any further.

OK, now that we have a simple page, we need to create our map control. First we need add a <div> tag that will be the container for our map when we are finished and we need to add a <script> tag which will download the map control’s code onto the page. Next we need to add an event handler to the <body> tag so the browser will call our code and create the <script> block that contains it.

<title>Mash-up 101: Virtual Earth</title>
<script src="http://dev.virtualearth.net/mapcontrol/v4/mapcontrol.js" ></script>
<body onload="loadmap()">
function loadmap()
alert("Are you ready for some mash-ups?");
<div id="VEMap" style="position: relative; border: solid 1px black; width: 600; height: 400"></div>
This is my first <b>Virtual Earth</b> mash-up.

Now, you have a boring page with an empty rectangle that pops up an alert! Big deal you say? Well, hang on sports fans, here comes the cool part. Pay attention now.

We now need to change our loapmap function so it will create a map of our choosing. The following Javascript code will create an aerial map around the Space Needle.

var vemap = new VEMap(‘VEMap’);
var vepoint = new VELatLong(47.62, -122.349);
vemap.LoadMap(vepoint, 17, ‘a’);

The first line of code creates a Virtual Earth map control. The second line of code defines a latitude & longitude (in this case, a couple yards south of the Space Needle). The last line of code tells the map control to create a map view that is an aerial map, a 100 yards or so above the Space Needle. Put it all together, and you’re code should look something like this…

<title>Mash-up 101: Virtual Earth</title>
<script src="http://dev.virtualearth.net/mapcontrol/v4/mapcontrol.js" ></script>
<body onload="loadmap()">
function loadmap()
var vemap = new VEMap('VEMap');
var vepoint = new VELatLong(47.62, -122.349);
vemap.LoadMap(vepoint, 17, 'a');
<div id="VEMap" style="position: relative; border: solid 1px black; width: 600; height: 400"></div>
This is my first <b>Virtual Earth</b> mash-up.

Word of warning, WordPress is a lousy HTML code editor. It changes and breaks things after you save them. (Or at least Dustin’s deployment of it on RCG does). Anyway, if you have trouble getting things to work make sure you replace all the forward, backward quotation marks with the standard quotation marks or apostrophies. Otherwise, goto http://www.annaluther.com/mashup.html to see what a working version of this example looks like.

Assuming there’s a demand for another class, future classes will cover the joys of pushpins, how to create a Google Maps mash-up or other more advanced topics.

Wikis and Maps

Wikimapia, which is basically wikipedia plus location, just added the ability to embed maps into your page. I like the neighborhood boxes and the map interface, but as far as labeling and tying together the world, it’s not quite as good as 43 Places, which lets users map their neighborhoods with more precision than a rectangle.

The amount of open, user generated spatial information on the web is skyrocketing right now.

Addicted to Google’s Mobile Maps

[photopress:phone.png,thumb,alignright]I was just reading a post from Jim Kimmons where he gives advice for Realtors on how to better use their handheld Treo’s and it reminded me that I really should put a plug in for Google’s mobile mapping program because I’ve simply become addicted to it and many others could probably benefit from this tool.

The first thing to realize is that the mapping program is separate from your cell phone’s browser. In other words, you’re going to have to download a program to your mobile cell phone. Here is the url you’ll have to type into your cell phone’s browser to download the program: http://www.google.com/gmm/.

Obviously, this program won’t work with all phones, but Google is kind enough to give a list of supported phones. Note that they do support Blackberry phones (which is what I use!).

Why am I addicted?

The interface is simple and and clean. The main options I use are “Move to Location” and “Find Business”. The “Move to Location” option is used to locate me in a general area, while the “Find Business” option gets me to specific places.

Being in a new area, this one-two combo has been extremely powerful. For example, today I used the program to find (and get directions to) a local post office, a washington mutual branch and a coffee shop, all while out of the office and miles away from my desktop computer. Very cool indeed.

As with many google programs, the tool gets even more powerful if you learn some of the “tricks”. My most common one is to use the “3” and “1” buttons to scroll between turn movement descriptions while navigating directions. I also like that “i” zooms in while “o” zooms out. (Note that I’m using a Blackberry and other operating systems will surely use different buttons!)

If you happen to be in my situation where you have a powerful phone (and no powerful in-car navigation system), definitely consider checking out this program. It has done away with my need for hard-copy maps!

Time Travel Transportation Maps

Not like Back To The Future, but pretty cool nonetheless. These transportation maps from the UK are super-sweet – they show the travel time by bus or rail from a few cities in the UK. I imagine we’ll be able to generate maps like this on the fly to show travel time from wherever you are someday. [photopress:transporttion_maps.jpg,thumb,alignright]

Until then, you can always pick two spots and get the travel time via Bus Monster (Seattle) or Google Transit (Portland). I suspect other cities will get Google Transit service soon- a little bird told me that Google transit is getting data from King County Metro.

(via boingboing.net )