Google Earth with photo-realistic 3D buildings

Oops. Where did the entire fall go? Can't believe the holiday season is on our doorstep and I haven't found time to post on the blog for over a month. There, now I've done it: I have committed the cardinal sin of blogging. I've blogged about not blogging. You are just not supposed to do that...

On a more happy note, I was very excited to see the recent update of the 3D building database in Google Earth that adds tons of photo-realistic building images for several major US cities. This is a view of Boston from above the harbor, with Faneuil Hall on the right:

Boston3D

If you have an iPhone, make sure to also try the Google Earth app for the iPhone, which is pretty amazing, too.

So what does this have to do with XML, you ask? All the buildings are encoded in KML, which is an open XML-based standard for geo-spatial information. And Google has created a huge 3D Warehouse of building images that are available in KML as well as other formats. To learn more about KML, take a look at this tutorial or the KML reference.

FaneuilHallBoston For example, this image on the left is a rendition of the Faneuil Hall model from the 3D Warehouse that was used in the above image on Google Earth. If you download the KML file from the warehouse, it comes in a KMZ archive, which is a ZIP-compressed package file. To explore this file in the XMLSpy XML Editor, all we have to do is add the KMZ file extension under Tools/Options and specify that it is a ZIP conformant file format.

Similarly, add the KML extension and specify that it is XML conformant. Now you can open all KMZ files in XMLSpy, see the files contained in the package, and directly open the KML file to view the XML markup it contains (this is just the beginning of the file):

FaneuilHallKML

More info on the new 3D buildings and a few screenshots of New York can be found on the Google Earth Blog. So get yourself a copy of Google Earth and start exploring...

They just never give up

If there is one thing to be said about the Red Sox, it is this: they never give up. Yesterday's game 5 of the ALCS vs. Tampa Bay was the most amazing baseball game I ever saw. We were fortunate enough to have seats right along the first base line - between first base and the Pesky pole - and experienced the greatest postseason comeback since 1929 first-hand.

The mood before the start of the game was great, with the crowds cheering for 松坂 大輔 (Daisuke Matsuzaka, or "Dice-K" as he is known to Boston Red Sox fans) as he came onto the field to start his warm-up exercises:

Daisuke Matsuzaka warming up

Understandably, the mood turned a bit more somber as the Sox fell behind 5-0 over the first couple of innings and finally were down 7-0 at the top of the 7th inning.

That was the point in time when about 20-25% of the people left Fenway Park, and when the Tampa Bay Rays started cracking open the champagne in their locker room.

But then the Red Sox did the impossible and turned things around. Starting with Dustin Pedroia's line-drive to shallow right field, which got Jed Lowrie home for the first run, the mood in Fenway Park changed. And then David Ortiz made a true comeback possible with his 3-run home run deep into right-field:

DSC00346

From that moment on, nobody sat down in Fenway Park until the single by J.D. Drew at the bottom of the 9th that allowed Kevin Youkilis to score, giving the Sox their 8-7 win and a ticket back to Florida for game 6.

This game will be an instant classic in baseball history, no doubt!

Altova Online Training is back, improved, and still free

I am delighted to report that we have relaunched our Altova Online Training program today. We've used this hiatus of a few months to completely redesign our training program and incorporate all the feedback that we had received in the past.

One of the key requests heard over and over again was that you wanted to be able to consume the training on your schedule and time, rather than having to sign up for a particular class and deal with available seats, time-zone issues, and fitting a 2-3h class into your busy workday.

The new training format solves all these problem, by letting you take the class in a self-service, on-demand, mode whenever you want it. And you can pause and resume the class, if your schedule requires that you break it up into smaller portions.

Best of all, Altova Online Training is still free!

The first class available in the new format is Introduction to MapForce, which is currently available in public BETA. Please take a look at the new class, and let me know what you think about it. Post your comments on this blog, or respond directly to our trainer by using the "Ask Altova" button inside the class software.

See also our announcement on the Altova Blog: Free Altova Online Training is Back!

The longest baseball game I ever sat through

It took me a few days to post this, because I'm still "recovering". This past Sunday I was lucky enough to get a few seats for the ALDS game 3 at Fenway Park. It turned out to be the longest baseball game I ever sat through - and I did, of course, stay until the very end.

Here is a picture of the fog rolling in way past midnight - at the top of the 11th inning:

Top of the 11th inning

When the game finally ended after the 12th inning, it was with the disappointment of a Red Sox loss, but that pain didn't last long, since we won the ALDS series 3-1 the next evening.

And even though the game lasted so long, we all had a great time - and the kids got to school just a ""little bit" too late the next day...

The browser war III

Google Chrome, a new open-source browser from Google that builds in parts on Apple's WebKit and in parts on Mozilla Firefox, was announced yesterday and just launched today at 3:02 pm EDT.

GoogleChromeComic Here is an interesting twist: most of the technical details about Chrome cannot be found in blog postings or technical web documentation, but rather in the form of a comic book. Talk about weird! But the comic is actually full of very interesting details - definitely worth reading, especially if you are a web developer.

Btw, the most interesting thing from a developer's perspective is that Chrome is built on a totally new JavaScript virtual machine called V8. According to the Google Blog:

"We also built a more powerful JavaScript engine, V8, to power the next generation of web applications that aren't even possible in today's browsers."

Steven Vaughan-Nichols has an excellent analysis of why V8 is really the big news, and what Google's motivations are for releasing Chrome. Fred Wilson adds some cloud computing perspective to the mix.

I'd be curious to see what kind of XML processing capabilities are included in V8 and what kind of XSLT stylesheet rendering Chrome is capable of (1.0 or 2.0). Unfortunately, so far Google hasn't released any technical details yet.

Needless to say, the blogosphere is buzzing with postings...

And to contrast all the excitement, there are also those who say the Chrome is irrelevant (at least until 2010).

Update: Very interesting review by Walt Mossberg of the Wall Street Journal just appeared.

Update: Great article in Wired News just came out.

Nature rules over robotics: Aibo toy-bone repurposed by puppy

Today our puppy discovered the pink toy-bone that originally came with the third generation of the Sony Aibo robotic dog:

DSC04344

Sadly, the Aibo was canceled by Soiny in March 2006, but Fenway, our puppy, took possession and repurposed the pink Aibo toy-bone as a new chew-toy.

It should be noted that the pink bone didn't last long. It's been proved once again: nature rules over robotics...

DatabaseSpy better than Toad and DBArtisan

According to Redmond Magazine's new article Redmond Roundup: Tooling Around in Your Database, Altova DatabaseSpy is the Redmond Roundup Champion and beats both Toad for SQL Server and Embarcadero DBArtisan - two products that are over four times more expensive:

RedmondRoundup

The article highlights different aspects of each database tool and comes to the conclusion:

"Each tool has its strengths. DatabaseSpy is the best overall in terms of range of features."

The editors further have this to say about Altova DatabaseSpy:

"At $139 [actually, the correct price is $149] for a permanent license, Database Spy is one of the last great deals available. While it's not perfect, it lets you do anything you may need to do with your databases. If this one doesn't meet all your needs, Altova has a number of other discrete tools for analyzing and modifying database structures.

Overall, Database Spy provides virtually all of the features anyone could need to supplement products that store, log or analyze data in relational databases."

I couldn't agree more - to read the full article click here...

To try DatabaseSpy for free, please download the 30-day fully-featured eval version here.

Impressions from PodCamp Boston 3 (#pcb3)

DSC04154 I was at PodCamp Boston 3 yesterday and wanted to briefly share a few impressions here. The funny video is at the bottom, so if you have no patience and just want to hear Chris Brogan, you may scroll down a page or so... :)

The event was held at Harvard Medical School and was completely sold out. Bloggers, Audio and Video Podcasters came together to discuss and present all aspects of Social Media in a community-oriented style.

Even though there was a schedule of formal presentations, a lot of the real action happened in the hallways, coffee breaks, and in several impromptu sessions.

I found most presentations to be very good (e.g. Stever Robbins aka the Get It Done Guy), but some were also a disappointment and I walked out - only to run into people in the hallway and strike up a great conversation. One panel discussion was almost putting me to sleep.

DSC04165 Being a rather podcasting-oriented event you could always find people in the hallway being interviewed by others, and in some cases the interviewer and interviewee would trade roles after a few minutes - it was actually pretty funny to watch.

One thing that was pretty amazing during the event was to observe others in the audience during the presentation sessions: about half the people were working on laptops during the presentation, the rest was on Blackberrys, iPhones, and I saw one person even working on a PSP. I also noticed one person holding an old-fashioned paper-pad. Most laptop and iPhone users were on Twitter reporting live from the event, or looking up whatever the presenter was talking about on Wikipedia, Google, etc. and taking notes.

DSC04167 Probably the best session I was a part of wasn't a scheduled presentation at all. As I took a quick break in the cafeteria, an impromptu event formed (and was promptly twittered about) where a couple of people came together and started a discussion on Old Media vs. New Media. It was a lively discussion that encompassed everything from advertising, journalistic styles, different ad sales strategies and staffing levels, to how Social Media is affecting the way we consume media, respond to advertising, and making purchasing decisions. Several people were recording the session with high-quality video equipment, but then stopped after a while - I guess their memory cards must have been getting full by then.

So I whipped out my trusted old Sony DSC-T50 digital camera and recorded about 20 minutes worth of raw 640x480 video. Not a quality that video podcasters would aim for, but sure enough in those 20 minutes I captured this great statement from Chris Brogan:

I apologize for the bad audio-quality (since I only used the built-in mic), so if you are having trouble hearing it, this is Chris Brogan's insight: "Wait a second. I buy my media. And I watch ads for free. Hmmm..."

The other conclusions reached during the discussion were:

  • that Social Media actually causes large companies to lose control of their brands - and some even argued that they are only losing the illusion of ever having been in control of their brand;
  • that Social Media actually forces companies to focus on creating a great product, because anything less than a great product will be exposed very quickly;
  • that any Old Media company who doesn't "get it" will soon be reduced to irrelevance.

PodCamp Boston 3 is still going on today, but I unfortunately can't make it into town due to the new puppy. If you are also missing the event, you can follow live updates from PodCamp Boston 3 using Twitter Search (aka Summize).

Talking of Twitter, if you'd likee to follow my updates, you can do so here...

Fenway: our new puppy

Let me introduce you to Fenway, our newest family member:

IMG_0202

He's a male Portuguese Water Dog, presently 8 weeks old, and the cutest puppy in the world. We got him from Reel Life yesterday and he was part of this litter.

Fenway is a very curious dog and loves to explore his new surroundings:

IMG_0194

But he still has to get used to being on a leash and loves to bite it playfully:

IMG_0198

When we are inside, he loves to cuddle up in our dining/family room - because that's where lots of people are:

photo

More photos are here and I will continue to update that gallery. But I haven't taken out the big camera yet, so these are all iPhone (and not even 3G) pictures...

In case you are wondering about the name: my wife came up with the idea, and we all immediately loved it.

Avenue Q and French Open XML

I'm spending a few days in New York with the family and we just saw Avenue Q tonight - absolutely fantastic. I haven't laughed so hard since ... well ... since ... uhm ... probably since seeing Spamalot two years ago.
In an unrelated story, I just saw that Julien Chable has recently published three French articles on his blog about Open XML and using Altova products like XMLSpy and DiffDog:

Recent Reviews of XMLSpy and DatabaseSpy

In the past week I came across two interesting recent reviews of our products in blogs that I wanted to mention briefly:

As always you can download a free 30-day trial version of any of our products to try it yourself.

TechEd, Open XML, and HDR Photography

While being at TechEd in Orlando, FL, last week, I had lunch with Doug Mahugh and we talked about the upcoming ODF support in Office 2007 SP2, the new features in the Open XML SDK, Altova's new support for Open XML diff/merge in DiffDog, creation of Open XML from StyleVision, and data integration and mapping for Open XML in MapForce, as well as various other XML-related topics.

We also talked about some other industry topics and finally came to chat about HDR (high dynamic range) photography. Doug sent me a few links to some of his recent photos, and this one impressed me the most.

I couldn't help it and had to get the software the same day. However, as I had left my Canon SLR camera at home for this trip, I wasn't able to test-drive HDR imaging until I got back home today:

1X5F2686_7_8

Obviously, this isn't a particularly exciting scene - I just shot from our balcony towards the end of the cul-de-sac. I used an automatic exposure bracketing of ±2 and loaded all three images into Photomatix and then played with some settings in the tone-mapping to create some vibrant and surreal colors.

But I still like the result quite a bit - it makes me want to go out and take some HDR photos of Marblehead harbor and experiment with other local scenes where the high dynamic range can come into play nicely.

Creating Open XML (OOXML) Spreadsheet Documents

As Office Open XML (OOXML) gains more wide-spread adoption and popularity - and since it is now an ISO standard - developers will be interested in how easy it is to create Open XML documents directly in their applications, e.g. spreadsheet documents that are compatible with Excel 2007. Most approaches require quite a bit of hand-coding and worrying about the actual OpenXML specifications, but what I want to show you today on the XML Aficionado blog is a way to use MapForce to auto-generate all the source-code (for example in C#) that will produce the desired .xlsx document so that you can integrate it into your applications (and use it royalty-free within your organization).

I will use a very simple example to demonstrate how you can turn some raw sales data in an arbitrary XML format:

SalesDataXML

into a pretty business graph in Excel 2007:

SalesDataGraph

For such a simple use-case you could, of course, simply open the XML file in Excel 2007 directly, but I am only using a simple example to illustrate the process. The true power of this approach is that you can easily work with very complex data in a visual and intuitive manner - and that you can auto-generate the source-code to implement this as part of your application to automate such processes.

So let's open MapForce and insert the XML data file into our working surface where we are going to define the mapping:

MapForceXMLfile

Next we are going to insert an OpenXML spreadsheet document into the work surface of our mapping project - we can either insert an empty spreadsheet, or we can use an example document that we have previously created in Excel to indicate what sheets and what data ranges or labels should be receiving our data:

MapForceExcelTarget

Now it is time to define how the source XML data should be mapped to the target OpenXML document. This particular mapping is just one example - MapForce lets you map between any combination of XML, relational database, EDI, flat-file (e.g. legacy text files), and OpenXML spreadsheet documents. In our case we are going to convert from start-date/end-date ranges in the XML source to months in the OpenXML document and from states to regions:

SalesDataMapping

Once you've defined the whole mapping, this is how your project will look in MapForce - note that underneath the blue-gradient working surface the "Mapping" tab is the one that is presently selected, because I've just defined my mapping between the input and output files:

MapForceScreenshot

To test my mapping - before I auto-generate my program code, I can click on the "Output" tab underneath the working surface, and MapForce opens up Excel 2007 embedded within the same application frame to show me the result that is produced by my mapping:

SalesDataExcelOutput

This Excel table is then used to produce the graph that I showed earlier.

Now I want to auto-generate code in C# for my data integration project that will automate this generation of Excel 2007 OpenXML documents, so the next step is to check the code-gen settings to ensure that I generate it for the correct development environment - in my case Visual Studio .NET 2008 - but MapForce supports many other environments and can also generate code in C++ or Java in addition to C#.

CSharpSetting

OK, now we are ready to generate code. All that is required is using the corresponding command on the File menu, and all the source-code files are placed in a designated output directory, and the corresponding solution file for Visual Studio is generated as well:

MapForceCodeGen

The auto-generated source-code can now be integrated into any application and can be used royalty-free within your organization to automate the creation of Open XML (OOXML) spreadsheet documents.

If you would like to experiment a bit more with this example yourself, you can find all the files used here in the MapForceExamples directory when you download the free 30-day evaluation version of MapForce.

Also, keep in mind that you can use Excel 2007 files (or any other OpenXML spreadsheet documents) in MapForce both as input and output files, so you can create data integration applications and mapping or conversion code for any possible scenario that involves OOXML spreadsheet data, XML, EDI, or relational databases.

Red Sox sweep Brewers 11-7

We got to see another great game of baseball at Fenway Park today. Josh Becket pitched seven innings followed by Delcarmen and Papelbon as the closer.

It was a great pleasure to watch the four home-runs: two by David Ortiz, one by Dustin Pedroia, and one by Kevin Youkilis. This performance by the Red Sox brought the inter-league series finale to a nice close.

We also had the great pleasure of being on the field during batting practice today, and were catching some balls while the Brewers warmed up. In doing so, we were close to the Red Sox bullpen and watched Clay Buchholz as he was working with the pitching coach:

It is the same Clay Buchholz who pitched a no-hitter in September 2007 as only his second start as a rookie for the Red Sox.