Friday, February 4, 2011

Dreamweaver for Google Earth

I noticed that Declan wrote up an idea we kicked around in September (see 'September' on the DigitalPlanet pages), so I thought it deserved a post. I referred to it then as 'Dreamweaver for KML.

Image courtesy of favbrowser. A bit out of date but still interesting.

Browser History: In 1997 Netscape adds a feature to its Netscape communicator browser that allowed for WYSIWYG simple production of html web pages. To put that in context you have to recall that this was the late days of the browser wars between Microsoft and Netscape. Then in March 1998 Macromedia release dreamweaver 1, this allowed web pages to be created in WYSIWYG or code views and produced short cuts that produced elegant html. It was also extensible so you could write a 'macro' to produce custom HTML. Developers loved it.

Geo-Browser History: My point is that if you regard GEarth as a geo-browser then the history is similar. Today in GEarth you can create simple maps and tours just like in Netscape communicator you could create simple web pages. However, a lot of sophisticated features such as time, region control, pauses in tours need to be hand coded into the KML. There are a few tools out there that allow you to produce KML without hand coding such as the spreadsheet mapper, my spreadsheet for adding loops and a tool for adding screen overlays but these are all limited in scope.

Tool Description: An obvious improvement would be 'Dreamweaver for Google Earth', where all this functionality was combined into one specialist KML producing program just as dreamweaver was a specialist HTML producing program. It would need to be:
  • WYSIWYG, ie be able to write code directly or using wizards and then see the result in an instance of the GE API
  • Extensible allowing you to write an extension that produced your favourite snippet of KML structure.
  • Elegant, highly usable and producing well formed KML code
So what should its wizards allow you to produce? My list would be:
  • Time control
  • Screen Overlays
  • Functionality producing usable maps e.g. color palettes that avoid color blindness issues
  • Simple sketchup models such as a photo billboard
  • Region controls
as well as enhancements to editing tools that are already available in GEarth such as better polygon digitising controls.

Flash Editor for Google Earth? So why haven't I mentioned tours yet? Well, I think the analogy here is with FutureSplash Animator (later 'Flash') released by Macromedia in 1996 which was a timeline based tool for producing animations on the web. It pre-dated Macromedia Dreamweaver and was kept separate. To me, it makes sense that a Google Earth tour is an animation so it needs a separate animation editing tool that is timeline based, I explain in more detail here (although I discuss it by comparison Captivate, another timeline based tool).

So Why aren't you Building these programs then? because if I did, and it was a sucess, a certain company ending with 'Oogle' and beginning with 'G' would bring out a rival and completely blow me out of the water. Instead this is a lazy web request.

4 comments:

Chad Burt said...

I completely agree that there is a lack of tools for creating good, complex KML. And by that I mean layers with a high density of data, regionated for good performance. Think of something like the roads layer in Google Earth. It's possible to describe something of that detail and scale with KML, but how do you generate it without a custom script or application.

I disagree on what such a tool would look like however. The professional web designer/developer community has turned away from WYSIWYG tools. This model of content creation simply doesn't have the flexibility needed. WYSIWYG tools also don't promote the sharing of techniques as efficiently as you can by just passing around CSS snippets. Competent designers and developers hand craft html and css.

What I think is needed is a CSS-like language for defining how to go from raw data in a variety of sources to KML. That language would have to incorporate concepts like regionation and networklinks directly to be effective.

It just so happens that I am building such a tool ;)

http://code.google.com/p/happy-kml-tool/

Our organization is still shopping around a grant proposal to integrate this with our work on http://marinemap.org. Hopefully that will work out and we can get started in the next year.

Rich Treves said...

Interesting. Am I right that your solution mainly aimed at dealing with large data sets? I think my idea for a WYSIWYG tool would still work for smaller, static data sets created by less competent developers.

Also I thought that DW could be used to hand build css and html if you want - does it lack serious features for doing this that I'm not aware of?

Chad Burt said...

I think my solution is possibly aimed at a different audience. There are some simpler tools out there like Google Earth Pro that I think cover a lot of what you mentioned in the article. Time control is one area where it might still need improvement, as well as Regions. I think once you get into Regions though it's a matter of irreducible complexity. It seems to me you must understand the nuances of how Regions and NetworkLinks work in order to use them. I feel like a WYSIWYG tool would just add a confusing layer of abstraction.

It's very true though, I'm sort of attacking this problem of KML development from the advanced user end and hopefully that might eventually result in something that could be parred down. Maybe just providing pre-made stylesheet templates would be a good start.

As far as Dreamweaver allowing you to edit CSS, I've found that automated tools like this typically produce very messy and inefficient code. When you decide to edit that stuff by hand it becomes very confusing, even for an expert coder. It's far more efficient for someone who knows html/css/js to just work via a plain text editor or IDE.

Rich Treves said...

Chad,

Thanks for adding your thoughts here, you set me off on a trail of looking at css controlling xml (and therefore KML) which I don't know much about.

GE Pro adds pretty much nothing in terms of creating maps:
http://www.google.com/enterprise/earthmaps/pro_features.html , in researching this post I discovered that frontpage and dreamweaver html editors were out pretty fast after the web went mainstream. In comparison, GeoWeb editors haven't really appeared yet, I suspect because of GIS - people want to convert from .shp files rather than authoring direct to .kml.

Thanks for your input and ping me if you produce something, I'd like to have a play.