Kleine Tipps für Zwischendurch – wieviele Aussteller gibt es auf der TechEd 2009 in Berlin?

Nächste Woche findet in Berlin im altehrwürdigen ICC die TechEd 2009 Europe (das erste Mal seit vielen Jahren wieder in Deutschland) statt, mit dabei unter anderem ein Vortrag von „PowerShell-Erfinder “ Jeffrey Snover zum Thema „Remote Management Improvements and Solutions for Windows 2008 R2“  (in dem es aber vermutlich nur um den üblichen Überblick gehen wird, wenngleich der Vortrag Sicherheit einen Besuch wert ist – ob ich dabei werde ist noch nicht sicher, auch wenn PowerShell-Vorträge zu besuchen eine Art Hobby von mir ist).

Mich hat vor allem die Frage interessiert, wie viele Aussteller vertreten sind und aus welchen Ländern sie stammen.

Mit der PowerShell und einem einfachen regulären Ausdruck lässt sich die Frage (relativ) schnell beantworten:

1) Ausgangspunkt ist die TechEd-Webseite http://www.msteched.com/europe/Public/exhibitors.aspx.

2) Leider ist es mir nicht gelungen, den Webseiteninhalt über ein (New-Object System.Net.WebClient(TechedUrl, „TechEdUrls.txt“) zu laden, da die Austellerdaten aus einer XML-Datei per JavaScript nachgeladen werden – ich musste daher einen kleinen Umweg gehen und den Webseiteninhalt aus dem Browser in eine Textdatei kopieren.

$DownloadDatei = (gl).Path+“\TechEdUrls.txt“
Write-Host „$AnzahlUrls Austeller-URL’s gefunden“

Hat man die Daten, kann man ein wenig „Data Mining“ betreiben;

Write-Host „VMWare ist dabei: $((Get-Content $DownloadDatei)-Match „vmware“)“

Oder die URLs der Aussteller nach ihrer Top-Level-Domain gruppieren:

$TopLevelDoms = Select-String -Path $DownloadDatei -Pattern „http://www\.([a-z-0-9]+\.)*(?<Top>\w{2,3})“
$TopLevelDoms | Group-Object -Property { $_.Matches[0].Groups[„Top“].Value} | Sort-Object Count -Descending

Dabei stellt sich z.B. heraus, dass von den insgesamt 98 Ausstellern nur zwei eine de-Domäne besitzen (2x at), die Schweiz  scheinbar nicht vertreten ist, und es mit 89 com-Domains einen eindeutigen Schwerpunkt gibt (was mich nicht gerade zuversichtlich bezüglich des „Zustands“ der hiesigen Software-Industrie stimmt bzw. ein Beleg dafür ist/sein könnte, dass das Microsoft-Windows-Ökosystem nach wie vor eindeutig seinen Schwerpunkt in den USA hat).

Ab jetzt wird es ein wenig besser, denn über die URL http://www.msteched.com/resources/Content_Files/EU_exhibitor.xml lässt sich die Ausstellerliste auch direkt laden.

Wie wäre es mit einem:

$XDoc = new-object System.Xml.XmlDocument
$XDoc.Load(„
http://www.msteched.com/resources/Content_Files/EU_exhibitor.xml„)
$XDoc.Exhibitors.Exhibitor.Count

oder

$XDoc.Exhibitors.Exhibitor | Select Website

oder

$XDoc.Exhibitors.Exhibitor | Where { $_.WebSite -like „*de“}

100% aussagekräftig ist diese Statistik natürlich nicht, denn mind. ein deutscher Aussteller besitzt eine com-Domäne und eine der de-Domänen gehört einem bekannten Software-Hersteller aus Russland.

Aber das kleine Beispielchen sollte in erster Linie ein weiteres Mal zeigen, wie nett und flexibel die PowerShell sein kann.

PS: Mit der PowerShell 2.0 kam bei Select-String der -AllMatches-Parameter hinzu, durch den alle Übereinstimmungen in einer Zeile gefunden werden (bislang wurde nur die erste Übereinstimmung gefunden).

Advertisements

Kommentar verfassen

Bitte logge dich mit einer dieser Methoden ein, um deinen Kommentar zu veröffentlichen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s