DeepEarth (Silverlight DeepZoom + Virtual Earth) Stats.

On the eve of our V1.1 release of DeepEarth I thought it would be interesting to show off some stats. First up the main page at codeplex is where we direct everyone to come and check it out, download the control and leave ideas and feedback.

DeepEarthStats

What a difference releasing V1.0 made just before Christmas!

Next up is the Demo site we host for the project here in Australia.

DeepEarthDemoStats

We only started collecting stats when we implemented the Virtual Earth client token for the staging service of the VE Web Service in December.

So, what impact does 14,000+ pageviews have on your transaction count? Well I have that too:

VEWSStats1

Not as shocking as some people predicted, only 60 transactions per person. A transaction is 8 tiles or a geocode request. One issue we have made clear to the Virtual Earth team is that the unique token we append to the Tile requests means that we miss out on cache hits on either return sessions or tiles from visits to other VE based applications. We understand that the activity has to be logged but is there a way to do it without bypassing the users cache.

What is the breakup of these transactions?

VEWSStats2

I guess we don’t advertise the alt-click to Reverse Geocode very well 😉

For those interested, codeplex provides stats thanks to WebTrends, we use Google Analytics on our site and the “Virtual Earth Platform Customer Services” site, available for those with developer or production accounts, gives you detailed information on your VE usage. 

Presenting Windows Azure at QLD MSDN User Group

qmsdnug

We’re pleased to announce that we’ll be presenting on Windows Azure at the QLD MSDN User Group in February.  It’s been awhile since we last presented to the local .Net Usergroup so we’re looking forward to catching up with the Brisbane developer community.

Details for the presentation:

When:Tuesday 17 February, 2009  – 17:30 for 18:00 start

Where: Microsoft Brisbane Office – Level 9, Waterfront Place, 1 Eagle Street, Brisbane.

RSVP: email to mike@fitsimon.com.au

 

azure Windows Azure: A developers introduction to coding in the cloud.

Join Bronwen Zande and John O’Brien, Windows Live Platform MVPs, for a developers introduction to cloud based development with the new Windows Azure platform.

We have filtered through the sales and marketing material to present to you why a .net developer should care about Azure and why you should build your first cloud based application today.

Get everything you need to start as we explain what Azure is, what is ready to use and explore some of the potential applications best suited for deployment in the cloud. Be prepared for some live examples and group discussion.

 

 

New Article on GeoWebGuru, 20 ways to use Virtual Earth

A new website http://geowebguru.com has launched from fellow MVP Richard Marsden. To celebrate I’ve created this article on 20 ways to use the Virtual Earth Platform as a developer. I cover Silverlight, Surface, 3D, Mobiles, SharePoint and lots more. I hope you find it really useful, its got a bunch of really cool links I’ve been collecting over the last few months.

In the comments of the article feel free to add more links or even more uses.

http://www.geowebguru.com/articles/86-twenty-ways-to-use-the-virtual-earth-platform-as-a-developer-

Book review : Pro LINQ

prolink Just before Xmas I bought Pro LINQ. I’ve been doing quite a bit of LINQ lately and just wanted to be able to sit down and read in one hit “the whole story” to make sure I wasn’t doing things the wrong way.

One of the reasons I bought this book over the others is that “it’s all about code”. You could spend chapters writing all the different combinations you can do something, or you can just write a bunch of code that just explains it. I’ve read selections of chapters (I skipped the LINQ-XML as I’m not really using that at the moment) and skimmed all the code and overall found the book really good to give that overall story that you usually miss when you read bits of info on 100 different sites. I also think the book would also be useful for those starting out and wanting a good reference to get their heads around LINQ.

Technorati Tags: ,,

Go Card site – ways it could improve

gocardBeginning of this year we said goodbye to the cardboard 10 trip tickets on buses and hello to the new “Go Card”. I put off using the new Smart Card for a number of reasons but have been using it solidly for a few weeks now and there’s lots of room for improvement. The best thing about the card is you don’t have to have multiple tickets that work in various zone combinations, instead it charges you the appropriate amount based on your travel and you continually top up your balance. My biggest issue with the whole system is pretty much having to check your history online to ensure you’ve been charged the correct amounts. Most of the time it’s hard to see the quick flash of balance and charges are you’re propelled out the back door with 40+ other passengers behind you.  So for now I’ll just leave my whinges about the site itself.

 

Managing your Go-Card site

  • Firstly the Translink site haven’t set up both “A” records in their DNS and IIS (or other web server) i.e.  http://www.translink.com.au/go works just fine but if you use http://translink.com.au/go you end up on your favourite search engine screen. I’m constantly surprised by the number of sites that don’t do this.
  • Maintaining your go card – to login you have to enter the 16 digit number of the card. I seem to be a little dyslexic with numbers so I find this annoying. Can’t I just set up a username and have my card/s linked to that?
  • Exporting your data – Most transaction history sites allow you to export to excel.  It’s useful if you need to use it for your tax records etc. but this site does not have this feature. There are no paper account statements sent out so I would expect there to be an easy way for me to save this for my records. Instead it just has a long list of trips to look at on screen.There’s also no explanation of what the codes mean. I assume something like BT002403 identifies which stop you are getting on/off at but who knows. It also doesn’t tell you which bus you were on. This makes it hard to reconcile some of the charges with the trips you made.gocardhistory
  • Strange charges – I pretty much get on and off at the same stop every day. You need to check you online statement for unexplained charges. Here on the 22nd, same stops as usual is 40c dearer for no explained reason.  Also note the double charge on the 23rd December that must have picked up and registered some form of double tap of the card. The transactions are within 2 seconds. I would have thought there’d be some sort of Use Case that would not allow a touch off and on within a certain timeframe > than say 30 seconds to prevent these errors.gocarderrors

So anyone else out there have any thoughts on the new system?

Technorati Tags: ,

MVP status renewed

The New Year started well when I received the following email:mvp

Dear Bronwen Zande,

Congratulations! We are pleased to present you with the 2009 Microsoft® MVP Award! This award is given to exceptional technical community leaders who actively share their high quality, real world expertise with others.

So I’m back for another year as a Live Services Platform MVP

Technorati Tags: ,

Soul Solutions Site Revamp

Soul Solutions Home Page One of the things we wanted to achieve over the Xmas break was to revamp our website. Our basic site we’d put together rather quickly over 2 years ago and was looking very tired. We made a conscious effort to invest the time and money to get a fresh, new look. After spending the last few days on re-skinning we’ve released our first cut. We’ve got lots of little things left along with lots of content and ways to improve the site.

ssprojectsWe’ve upgraded to the latest version of DotNetNuke and added a bunch of modules to improve the look and usability of our site. One of my favourite changes is the Projects Page. It gives project overview and a range of screenshots as well as a tag cloud to help with navigation.

We’d love to hear your thoughts on the new design. Do you think it’s better than what we had? What are we missing?

AndreaMosaic, DeepZoom Composer and Seadragon AJAX

AndreaMosaic is an amazing tool for creating images from lots of other images, DeepZoom composer is a tool for publishing large images on the web from Microsoft and Seadragon AJAX is one way to view these massive images with no plug-ins at all. What do these three things have in common? They work seamlessly together and they are all free.

final

Lets go through step by step how to create your first Seadragon AJAX AndreaMosaic.

Step 1 – Install the software.

You will need two pieces of free software:

AndreaMosaic – http://www.andreaplanet.com/andreamosaic/

This program is simply awesome, Andrea is continuously improving this application, adding new features and improving performance. Way back in May I had this running on my Vista 64bit machine without issue. The latest version supports writing the DeepZoom XML file automatically.

If you like the program you should consider a donation to help Andrea, in return you get access to the unlocked professional version and can create  mosaics greater then 200MP.

DeepZoom Composer. http://www.microsoft.com/downloads/details.aspx?familyid=457b17b7-52bf-4bda-87a3-fa8a4673f8bf&displaylang=en 

This program from Microsoft allows you to import large images, arrange on the canvas and export to the many compatible viewers. Again this program is getting continuous improvements and features, make sure you download the latest version.

Step 2 – Source your content

You will then need a suitable image to be the mosaic and a folder of images to be the tiles. This will be the most challenging aspect of your project. For this example I will use the 600 odd photos we took on holiday in Peru a few years ago. Ideally you want thousands of images to get the best match for each tile.

perubaby

AndreaMosaic can also use frames from an AVI file, this works extremely well and I will get a non-copyright example for a later post so I can share the results online.

Step 3 – Set the original image

Screen1

The little plus button under the section “Original Images” will let you explore to find the main image. This main page is very logically laid out letting you choose the final size, resolution, number of tiles and the important duplication options. Andrea has published a help document that explains all of this in detail, tutorials and support forums for questions.

Step 4 – Select Tiles

Screen5

Here you create a archive of images to use as source tiles for your mosaics, you can many folders and set some complex usage rules. You save this and these images are parsed into an archive ready to be used.

Step 5 – Options

Screen2

The “More Options” button from the main screen pops up this dialogue. We will want to tick the option “Deep Zoom Composer”. If you’re creating a large mosaic it is necessary to also tick “Split Mosaic” to break the final image into some more manageable pieces.

Step 6 – Create the mosaic

With all the settings configured you are ready to create the mosaic, this could take a few seconds or many hours depending upon how massive a mosaic you are creating and the performance of your hardware. The detailed status bar lets you know exactly where you are up to.

I have installed this software on my media centre and remote desktop into the machine. This machine has a large and fast hard drive, memory and CPU and spends most of its life dormant. I have found my laptop hard drive a little slow and small for gigapixel images, especially the next step of creating the tiles for DeepZoom.

Step 7 – Open the file in DeepZoom Composer

Screen3

On completion of the mosaic you are prompted to be taken to the image folder, navigate one folder up and you will find the DeepZoom file. When you open this you will get the Deep Zoom Composer splash screen but then it can take a few minutes to open. What is happening in the background is the composer is generating all the deepzoom layer tiles so it can effectively navigate the super large image. Patience is needed here.

When it does open you will have imported the mosaic images and composed them onto the canvas, use the tabs at the top to navigate. The final tab will allow us to export our creation.

If your mosaic is too big composer may crash at this point, since we are just creating one image I’ve found the export tool from Photoshop to handle larger images (gigapixel) much better. You will have to manually change the HTML file (shown later) to point to your xml file.

Step 8 – Create the Seadragon AJAX export

Screen4

In the export tab choose “Custom”.

For the output type choose Seadragon AJAX for this plugin free viewer example. Silverlight DeepZoom offer a superior experience and supports collections. I highly recommend you also check this out but it will require your visitor install the common Silverlight runtime. In a later post I’ll show you how to provide both in a seamless experience.

Give your export a name, choose a location.

Seadragon AJAX at the time of writing only supports a composition (single image) export.

Click Export and sit back. When it is complete you can choose preview in browser to see the final result.

Step 9 – Edit the HTML file, add reference to AndreaMosaic

The generated HTML file has a bunch of things you do not need, you can remove these.

As part of the terms of use for AndrewMosaic you need to provide a line of text to link back to the creator:

“Artwork created with AndreaMosaic”

I want my mosaic to be a specific size so I can embed this easily in my blogging software as an iframe, this is my final HTML:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>AndreaMosaic Seadragon Ajax Example</title>
<script type="text/javascript" src="http://seadragon.com/ajax/0.8/seadragon-min.js"></script>             
<script type="text/javascript">
    var viewer = null;
    function init() {
        viewer = new Seadragon.Viewer("container");
        viewer.openDzi("Peru1G.xml");
    }
    Seadragon.Utils.addEvent(window, "load", init);
</script>
<style type="text/css">
body {margin: 0px;}
#container {width: 600px;height: 400px;background-color: Black;}
</style>
</head>
<body>
<div id="container"></div>
<p style="font:11px Tahoma;text-align:center;">Artwork Created with <a href="http://www.andreaplanet.com/andreamosaic/" target="_blank" >AndreaMosaic</a></p>
</body>
</html>

Step 10 – Upload to web server

In order to share this with the world you need to upload this to your server. I recommend zipping the tiles into one file to make the transfer faster.

If you do use the silverlight control you can host your application and tiles in the silverlight streaming service for free or using the photozoom option.

The AJAX control uses the exact same assets (xml and folders of tiles) as the Silverlight version.

Step 11 – embed into your blog

Once your html page and tiles are publically available on the web you can embed this as a simple Iframe on your site or blog, for example:

<iframe src="http://www.soulsolutions.com.au/silverlight/perumosaic/" 
frameborder="0" width="600" scrolling="no" height="450"></iframe>

And this is the final result:

I look forward to seeing your creations posted on Andrea’s forums:

http://www.andreaplanet.com/forum/viewforum.php?f=2

OSM Mapper from ito!

I came across this awesome online tool from ito! that lets you visualise the changes made to OpenStreetMap for a specific area. You do need to register and then you can select your area of interest and see the changes made over the last configurable period. For example the additions made to Brisbane over the last 12 months:

export

Click for full resolution.

I’d love to talk to these guys more when we have some high performance vector rendering inside DeepEarth.

Imagine this powerful visualisation much more interactive in Silverlight. How I found these guys was from there amazing render of the changes made to OSM over 2008:


OSM 2008: A Year of Edits from ItoWorld on Vimeo.

Simple awesome, these guys know how to make sweet data visualisations.