Kostenlose Plug-Ins für Internet Explorer

IMG_6164

Plug-Ins sind Programmpakete, mit welchen sich Software nach den eigenen Bedürfnissen anpassen und erweitern lässt. Einige Grafikprogramme, Mediaplayer oder Internetbrowser haben in ihrer Grundversion Funktionen, die der Benutzer beansprucht. Solche Programme können durch Plug-Ins erweitert werden.

Benutzer können die Grundversion so erweitern, dass das Programm die gewünschten Features des Benutzers unterstützt. Plug-Ins sind besonders sinnvoll, wenn Erweiterungen einen großen Speicherplatz oder viele Systemressourcen erfordern. Beispielsweise unterstützen Mediaplayer in ihrer Grundversion meistens nicht alle Video- oder Audioformate, da die Unterstützung von animierten Inhalten Platz und Ressourcen benötigen.

Wer auf der Suche nach einem guten Plug-In ist, muss nicht mehr tief in die Tasche greifen. Es gibt eine große Anzahlt an kostenlosen Plug-Ins. Einige bekannte möchte ich Euch hier nun kurz vorstellen.

Kostenlose Plug-Ins für IE:

1. Silverlight 5.1.20913.0 [link]

Microsoft Silverlight ist ein Browser-Plug-In zum Ausführen von Anwendungen und Mediadateien innerhalb von Webseiten. Mit Silverlight kann man Multimedia-Inhalte (Spiele, Fotoshows und Videoplayer) im Web darstellen. Die Software erlaubt Funktionen zu erstellen, die auf verschiedenen Geräten und Betriebssystemen ausgeführt werden. Außerdem bietet Silverlight Inhalte wie vektorbasierte Grafiken. Durch die Verwendung von Vektorgrafiken können Streaming-Medien innerhalb eines Browsers vergrößert und verkleinert werden. Weitere Inhalte sind 2D-Animationen oder Audio- und Videodateien in Webseiten. Hinweis: Der Player integriert sich direkt im Browser.

Das Browser-Plug-In ist kostenlos zum Downloaden und kann Vektorgrafiken darstellen sowie Videos in hoher Qualität abspielen. Außerdem wird ein Teil der Windows Presentation Foundation (WPF), des neuen Grafik-Frameworks benutzt, das in Windows Vista und .NET 3.0 enthalten ist. Ein weiterer Vorteil ist, dass sich Windows- und Webanwendungen auf derselben Codebasis programmieren lassen.

2. Avant Browser 2013 build 119

Avant Browser 2013 erweitert den Internet Explorer um einige nützliche Features. Ein Feature ist zum Beispiel, dass der Browser Pop-Ups unterdrückt.

Werbung- bzw. Popup-Blocker befreit alle Internetseiten wirkungsvoll von Werbungen und Popups. Man kann jeden Inhalt durch den Befehl “zur schwarzen Liste hinzufügen“ in dem Rechtsklick-Menü aussperren.

Ein weiteres Feature ist eine crashfreie Internetnutzung (kein “Einfrieren“). Wenn ein Fenster beispielsweise hängt, beeinflusst dies nicht die anderen Seiten oder den gesamten Browser. Avant Browser hat eine Technologie entwickelt, um diese Probleme zu lösen, damit man zügiger surfen kann.

Außerdem werden temporäre Internetdateien beim Schließen des Browsers automatisch gelöscht, so dass niemand nachvollziehen kann, wo man herumgesurft ist.

Abbildung1
Abbildung1: Avant Browser-Optionen

Mit Avant Browser kann man Tabs auch mit dem Internet Explorer nutzen.

Avant Browser kann RSS-Feeds anzeigen und bei jedem RSS-Update informieren und unterstützt IE11.

(Freeware: 8/ 7/ Vista/ XP/ 2000)

3. Internet Explorer PassView 1.31 [link]

IE PassView ist ein kleines Dienstprogramm zur Passwortverwaltung, das Passwörter enthüllt, die vom Internet-Explorer-Webbrowser gespeichert werden.
Falls man sich irgendwann auf einer Webseite eingeloggt und die Zugangsdaten mit dem IE gespeichert hat und dann das Passwort vergessen hat, holt IE PassView die versteckt gespeicherten Passwörter wieder zurück.

Abbildung2
Abbildung2: IE PassView

Anschließend erhält man eine Liste mit den Benutzernamen und Passwörter, jeweils mit der URL der Webseite.

Außerdem kann IE PassView Passwörter löschen, die man nicht mehr benötigt. IE PassView benötigt keine Installation und unterstützt alle Versionen von Internet Explorer ab Version 4.

Hinweis: Manche Virenscanner melden IE PassView als eine Fehlermeldung, da es Programme gibt, die Passwörter entschlüsseln und somit die Gefahr hoch ist, gehackt (ausspioniert) zu werden.
IE PassView ist aber virenfrei. Das Programm sendet keine Daten ins Internet und lässt sich einfach wieder entfernen, indem man das entpackte Zip-Verzeichnis wieder löscht.

(Freeware: 8/ 7/ Vista/ XP/ 2000)

4. Inquiry Basic [link]

Wenn man Webseiten durchstöbert und wertvolle Webseiten gesehen hat, doch diese leider vergessen worden sind, bietet Inquiry Basic eine Funktion an, Webseiten zu speichern.
Mit Inquiry Basic kann man dauerhaft alle Arten von Webseiten, Bilder und Flash-Dateien vom Webbrowser in einer Datenbank speichern.

Das Programm ist eine Datenbank für Webseiten und ist vollständig in Microsoft Internet Explorer integriert. Außerdem ist es auch als eigenständige Anwendung verfügbar.

Sein Hauptzweck ist, Internet-Forschungen mit einem Mausklick in einer beliebig verschachtelten Baumstruktur zu speichern. Die so gesicherten Webseiten lassen sich jederzeit (auch Offline) öffnen. Inquiry speichert verschiedene Web-Dateien, wie beispielsweise ganze Webseiten, ausgewählten Text und Bilder, und viele andere.

Ein Vorteil ist, dass sich die Datenbank per Stichwort durchsuchen lässt, somit ist das Speichern und Verwalten von Internet-Informationen in einer durchsuchbaren Weise möglich.

Außerdem können Dokumente aus Favoriten importiert und gespeicherte Seiten als HTML Seite auf Festplatte exportiert werden. Inquiry bietet eine Übersicht über aller gespeicherten Webseiten.

Abbildung3
Abbildung3: Import Favorites

5. Adblock Plus [link]

Adblock Plus ist ein Plug-In, das Werbung, Banner und Werbevideos auf Webseiten blockieren kann (Werbeblocker). Zu Werbung gehört beispielsweise Werbungen auf YouTube oder auf sozialen Netzwerken, wie Facebook oder Twitter.

Abbildung4
Abbildung4: Blockieren eines Werbebanners

Es ermöglicht dem Anwender, Online-Werbung zu verstecken und Werbeelemente gar nicht erst aus dem Web herunterzuladen.

Abbildung5
Abbildung5: Symbol in der Symbolleiste

Neben dem Blockieren von Werbung, kann Adblock Plus auch zum Blockieren von Tracking und Malware benutzt werden.
Ein Vorteil ist, dass im Plug-In bereits vorgefertigte Filterlisten enthalten sind. So wird bereits ein großer Teil der Werbung blockiert.
Es ist aber auch möglich, bestimmte Webseiten von der Blockierung auszunehmen. Allerdings gibt es auch eine Liste, auf der bestimme Seiten bereits im Vorfeld zugelassen werden. Diese Funktion kann auf Wunsch deaktiviert werden.

Das Plug-In Adblock Plus ist eine Erweiterung, die unter anderem dafür sorgt, dass Seiten im Netz schneller geladen werden können. Auf Wunsch können eigene Filterregeln hinzugefügt werden.
Adblock Plus ist als Erweiterung für Internet Explorer und andere verschiedene Browser verfügbar.

Fazit:
Damit man die gesamten Leistungen von Webseiten auch zur vollkommenen Zufriedenheit nutzen kann, sollte man alle nötigen kostenlosen Plug-Ins für die optimale Nutzung ausprobieren. Smiley

UX Entwicklung ohne Echtdaten in Windows 8.1

Für den Einstieg in eine Oberflächen Entwurfssprache ist es immer leichter mit einem Designer zu starten. Bekannt auch aus Visual Studio. Button aus Werkzeugleiste auf das Formular ziehen und doppelclicken und Ereignis Programmcode tippen. ( gerne als Pixelschupser bezeichnet). Nicht mehr ganz so leicht ist das mit z.B. Listensteuerelementen. Wenn die Struktur bekannt ist, im Sinne streng typisiert, dann kann ein Designer noch den Header und Dummy Zeilen darstellen. ASP.NET Webforms oder auch Winforms gehen diesen Weg. Für XAML stehen schon seit einer Weile sogenannte Entwurfszeit (Design Time Daten) zur Verfügung. Man bindet an die Eigenschaften und stellt je nach Umgebung echte Daten oder Fake Daten ( auch Mock genannt) bereit. Dafür gibt es einen Weg im Konstruktor mit einer Logikverzweigung per DesignMode.DesignModeEnabled zu verzweigen.

Spannend ist aber, was sich die Microsoft Entwickler einfallen haben lassen. Schon länger gibt es den Ansatz im XAML per d: für den Editor Alternative Datenbindungen einzugehen. Bisher wurden diese Daten aber gerne per Code erzeugt (meist SampledataSource.cs oder .vb). Jetzt nehmen Sie XAML.

Schritt für Schritt

Zuerst wird ein einfaches ViewModel erstellt. Eine Liste von Banane.

   1:  Public Class bananeVM
   2:      Property bananen As List(Of banane)
   3:      Public Sub New()
   4:          bananen = New List(Of banane)
   5:      End Sub
   6:  End Class

Dann ruft man Expression Blend aus dem Windows 8.1 Store Projekt (in Visual Studio 2013) auf

image

Dort kann man im Reiter Daten das Icon clicken und aus einer vorhanden Klasse die Beispieldaten generieren lassen.

image

Der nachfolgende Dialog sieht so aus

image

Wenns gut gelaufen ist, sollte rechts im Daten Reiter die Liste und ihre Propertys auftauchen.

image

Wie kommen nun diese Daten ins Formular? Man kann es im XAML Tippen oder per Drag und Drop (hier Bananen) ins Formular ziehen.

Da wird dann leider ein Standard DataTemplate aus dem Gridview verwendet, das selten wirklich passt. Aber das spannende ist, die generierte Zuweisung des Datacontextes.

   1:   <Grid d:DataContext="{d:DesignData /SampleData/bananeVMSampleData.xaml}" 

Wir haben nun zwei Datacontexte. Auf den normalen DataContext, der in der Regel auf das Viewmodel verweist und den D: der die DummyDaten aus der XAML Datei zieht. Natürlich kann auch der Visual Studi Designer das korrekt als WYSIWYG Ansicht darstellen.

Das ganze klappt, weil man in XAML Objekte deklarativ als  instanziieren kann. Wem die Daten zu realitätsfern sind, der kann sich am XAML direkt vergreifen.

   1:  <sampleData:bananeVM xmlns:sampleData="using:sampleData">
   2:      <sampleData:bananeVM.bananen>
   3:          <sampleData:banane ID="24" Name="Curabitur aliquam nam vestibulum cras" 
geschaelt="22" lang="323.07"/>
   4:          <sampleData:banane ID="62" Name="Integer quisque vivamus sed" geschaelt="83" 
lang="384.76"/>

Die Idee für das entscheidende Attribut d: DesignData stammt vermutlich aus Silverlight. In Windows 8 WinRT klappt das nicht. Soweit ich bisher gesehen habe, gibt es keine Möglichkeiten eine geänderte Klasse als Refresh in die Entwurfsdaten zu bringen. 

reden wir über offene Standards

Microsoft wurde über viele Jahre vorgeworfen immer sein eigenes Süppchen zu kochen. Standards werden nicht unterstützt, nein sogar mit eigenen Implementierungen sabotiert. Als Beispiel hält gerne der Internet Explorer her, der so abartige Dinge wie XMLHTTP implementiert (Version 5, kein Standard). Dieses Vorurteil hält sich hartnäckig, obwohl( für mich teilweise leider) Microsoft  gegenteilige Maßstäbe setzen will. Nun komme ich aus der Nachrichtentechnik, in der Standards das A&O bedeuten. Und doch gibt es dort Implementierung und deren Auslegungen.

Standards

(Quelle http://xkcd.com/927/)

So ist ein IE802.11g Wireless Access Point in USA vermutlich nicht fähig auf den Kanälen 12-14 zu senden bzw. zu empfangen. Ein häufiges Ärgernis für Device Benutzer wenn der AP Betreiber wohlwollend Kanal 13 gewählt hat. Standards lassen eben in der Umsetzung gewollt Freiräume.

Ein durchaus bekannter, stabiler, fertiger und im Markt einheitlich unterstützter Standard war WML. Nur den Kunden war's zu dumm.

HTML5 der Megastandard (nur der Internet Explorer hält sich wie üblich nicht daran). Leider wird immer wieder gerne vergessen, das ein Standard zumindest verabschiedet werden muss (Plan 2015). Das W3C ist insgesamt nicht besonders schnell, was der Natur eines Standards geschuldet ist. Damit ist ein Standard automatisch innovationsfeindlich. Fortschritt entsteht durch Trial and Error in kurzen Intervallen. Standards durch lange Diskussion aller Beteiligter. In der Diskussion ändert man auch gerne mal seine Meinung. WebSQL wurde eingestellt und trotzdem unterstützen es einige Browser. Gerade Google ist mit Chrome sehr Innovativ. Mein System meldet Version 27. Internet Explorer ist gerade mal bei 10 obwohl es den schon ein vielfaches länger gibt.

Chrome kann Spracheeingaben im Browser erkennen.

image

Erreicht wird das durch ein Webkit Attribut, ohne das man diesem einen Wert zuweist. Das widerspricht schon mal dem XML Standard.

   1:   <asp:TextBox ID="TextBox1" runat="server" x-webkit-speech></asp:TextBox>

Darüberhinaus definiert das W3C einen Standard zu Speech Input API Specification. Leider nur als Draft unverändert seit drei Jahren. Google, wie auch sonst niemand, hält sich nicht an den Draft.

   1:    <script type="text/javascript">
   2:                function startSearch(event) {
   3:                    event.target.form.submit();
   4:                }
   5:      </script>
   6:   
   7:      <input type="search" name="q" speech required onspeechchange="startSearch">

Selbst ganz einfache Implementierungen wie das HTML INPUT Element mit Range Attribut, werden in jedem Browser ganz anders dargestellt.

image

Internet Explorer, Chrome, Mozilla, Opera

Die Deklaration erfolgt durch folgenden HTML5 Standard Code.

   1:   <asp:TextBox ID="TextBox1" TextMode="Date" runat="server" ClientIDMode="Static"  
pattern="[0-9]*" ViewStateMode="Disabled" />
   2:  <input id="TextBox1" pattern="" required="required" />
   3:  <input id="Text1" type="range" min="0" max="10" runat="server" />
<
asp:Button ID="Button1" runat="server" Text="Button" />

Und hier reden wir noch nicht über die Vielzahl der mobilen Browser. Es gibt kein einheitliches verlässliches Ergebnis, auch wenn man sich nach Strich und Faden nach dem Standard richtet. Was folgt sind unzählige Browser Tests und/oder Frameworks die die Unzulänglichkeiten einzelner Browser wieder ausbügelt.

Wie viel einfacher und schneller war es doch mit Silverlight, obwohl kein Standard. Selbst andere Anbieter haben sich auf XAML und .NET gestürzt und für ihre Plattform implementiert. Im Abstand von weniger als einem Jahr kam eine neue Innovative stabile Version auf den Markt. Silverlight übertrifft auch nach 2 Jahren Absenz noch immer HTML 5 um Längen an Funktionalität.

Meine Schlussfolgerung ist, das Microsoft seinen IE wieder mit mehr Funktionen ausstatten sollte, die gerade aktuell sind. Im wesentlich das, was mit Active X Controls möglich war. Zugriff auf die exotischsten Hardwareteile wie Spracherkennung. Standards sind weder gut noch schlecht. Sie sind aber kein Garant für schnellen oder dauerhaften Erfolg. Um dem IE wieder steigende Marktanteile zu sichern, muss er mehr können als gerade “standard”.

RIA Services und Windows 8 mit OData

Es gibt aktuell zu viele Varianten Daten zu einer Windows 8 Store App (METRO) zu bringen. Dafür fehlt nach wie vor der direkte Zugriff auf einen SQL Datenbank.

In diesem Blog habe ich untersucht wie man einen RIA Service, bekannt aus Silverlight, mit Windows 8 verbindet. Es kommt Visual Studio 2012 zum Einsatz.

Zunächst habe ich ein Web Projekt angelegt. Bei Verwendung des MVC Templates scheint es Probleme zu geben, denen ich später auf den Grund gehe.

Im ASP.NET Web wurde die Datenbank Nortwhind.sdf in das Verzeichnis APP_DATA kopiert.

Als nächstes erzeugt man ein Datenmodell mit Entity Framework.

image

Man clickt sich durch die Dialoge (immer nur bestätigen)  bis man beim auswählen der Tabellen ist. Für das folgende Beispiel kommt die Customers zum Einsatz.

image

Im Entity Framework hat sich seit der Version 4.1 eine Änderung ergeben (Stichwort dbcontext ) die nicht kompatibel zu RIA Services ist. Deswegen muss man im Modell die Code Generation Eigenschaft ändern auf Default und die beiden .tt Dateien löschen.

 

image

Der Dialog wird nur angezeigt, wenn keine Tabelle im Model ausgewählt ist. Die .tt Dateien sieht man im Visual Studio Solution Explorer nur wenn “Show All Files” ausgewählt. Das Icon findet sich in der oberen Leiste des Visual Studio Explorer  ca in der Mitte, leicht rechts.

Weiter geht's mit der Erstellung des RIA Services. Das Template dazu ist  “Domain Service Class”.

 

image

Ganz wichtig ist den Odata Endpoint zu aktivieren, weil nur dann die Proxy Generierung im Windows 8 Projekt Erfolg haben wird.

Zum Test kann der RIA Service direkt im Webbrowser aufgerufen werden. Die URL  setzt sich zusammen aus Projektname- Domainserviceklasse .SVC. Der Pfadteil “Services” ist willkürlich, da ein HTTP Module den Request filtert.

http://localhost:19668/services/WebApplication1-domainservice1.svc/odata/

 

 

image

Mit Zusatz $metadata sieht man das Schema.

image

Nun kann man das Windows 8 Store Projekt zur Solution hinzufügen und dann per Add Service Reference den RIA Service hinzufügen.

image

Nun die Frage, wie programmiert man so was an. Doku habe ich keine gefunden die RIA Services und Winrt zusammen zeigt. Allerdings scheint der Proxy recht ähnlich zu funktionieren wie bei WCF Dataservices (noch ein Service Layer).

Zur Anzeige wird ein XAML Listview Control verwendet. Die Zeile mit DisplayMemberpath wird man normalerweise per XAML Deklaration erledigen.

Der erste VB.NET Code Block wird entweder bei Pageload oder auf Button Click ausgeführt. Eine Eigenart von RIA Services ist, der SET Anhang an den Tabellennamen. So ruft man auch die URL direkt auf.

 

Dim svc As ServiceReference1.DomainService1 = 
New ServiceReference1.DomainService1(
New Uri(http://localhost:19668/services/WebApplication1-domainservice1.svc/odata/))

Private
Sub Button_Click_1(sender As Object, e As RoutedEventArgs) listview1.DisplayMemberPath = "Company_Name" svc.BeginExecute(Of ServiceReference1.Customers) _ (New Uri("CustomersSet", UriKind.Relative), AddressOf fertig, svc) End Sub Public Async Sub fertig(ByVal result As IAsyncResult) Await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, Sub() listview1.ItemsSource = svc.EndExecute(Of ServiceReference1.Customers)(result).ToList End Sub) End Sub

Ich würde diese Weg wählen wenn, entweder eine RIA Service Schicht vorhanden ist, oder man auch Silverlight Clients bedienen möchte. Schließlich wird die Welt noch länger brauchen bis jeder ein Windows 8 Device hat.

Styles das CSS für Windows 8 XAML

Die Verwendung von Styles ist in Windows 8 kaum anders als in Silverlight und vermutlich WPF. Mit Hilfe des Style Attributes kann der XAML Code in einer Page reduziert werden. Das wesentlich schlagkräftigere Argument wird aber die Wiederverwendung einer Style Vorlage sein. So kann man zb ein UIElement einmalig Designen und dann immer wieder verwenden. In der Datei StandardStyles.xaml befinden sich Z.B. die runden Buttons die man in der AppBar oft verwendet.

image

Einem Textblock Steuerelement kann so per Deklaration mit dem Schlüsselword StaticResource eine Vorlage (auch Theme) zugewiesen werden.

Die Definition der Vorlage kann in der XAML Page direkt, der APP.XAML oder meist in einem Ressource Dictionary vorgenommen werden. Dort werden ein Style für ein UIElement definiert und die Eigenschaften per Setter direkt gesetzt. Wichtig ist der Zieltyp.

Ein weiterer Style kann mittels BasedOn von einem anderen Style die Setter sozusagen erben.

<ResourceDictionary
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:App1">
    <Style x:Key="demo1" TargetType="TextBlock">
        <Setter Property="FontSize" Value="16"></Setter>
    </Style>
    <Style x:Key="demo2" TargetType="TextBlock" BasedOn="{StaticResource demo1}">
        <Setter Property="FontFamily" Value="Impact"></Setter>
    </Style>
</ResourceDictionary>

Dann muss das Dictionary in der app.xaml der Anwendung hinzugefügt werden.

<Application
    x:Class="App1.App"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:App1"
    xmlns:localData="using:App1.Data">

    <Application.Resources>
        <ResourceDictionary>
            <ResourceDictionary.MergedDictionaries>
                 <ResourceDictionary Source="Common/StandardStyles.xaml"/>
                <ResourceDictionary Source="Dictionary1.xaml"/>
            </ResourceDictionary.MergedDictionaries>

Themes gibt es übrigens in Windows 8 styled Apps (METRO) wirklich. Sie heißen dark und light und sind in per Windows 8 System in C:\Program Files (x86)\Windows Kits\8.0\Include\winrt\xaml\design\ definiert.

Die Zuweisung erfolgt im ersten Element der app.xaml per RequestedTheme="Light".

Was tun? Was nun? Twilight statt Silverlight

Blogs und Journalisten schreiben den Tod von Silverlight herbei. Mangels aktuellen Aussagen von Microsoft, stellt sich die berechtige Frage nach der Zukunft von Technologien. Insbesonders, wenn diese integraler Bestandteil von aktuellen Software Projekten ist. Dieser Artikel geht also der simplen Frage nach, Entscheidungsgrundlagen zu finden. [Update] Silverlight 5 ist seit 9.Dezember fertig.

Silverlight 5 ist fertig, verfügbar und auch für die IOS Plattform als Plugin erhältlich. Lediglich Besitzern von Windows 2000 (Hallo Franz) bieten die Redmonder aktuell keinen Support mehr.[/Update]

Silverlight ist Tod. Ist es das, und wie viel Rolle spielt das eigentlich? Aufgrund der Abkündigung von Flash für mobile Plattformen (http://mashable.com/2011/11/11/flash-mobile-dead-adobe/ ) wurde die Diskussion neu angeheizt. Dabei kann man aus den News rauslesen, das Adobe in Zukunft auf HTML 5 und das Tooling dazu setzen wird.

Getrieben wird das Thema von der rasanten Verbreitung von Smartphones. Die Fragmentierung des Marktes in mindestens fünf relevanten Plattformen, lässt die Wirtschaftlichkeit von Anwendungen dramatisch sinken. Neben der Geiselhaft der APP Stores, ist die Multiplattform Strategie der Grund pro HTML 5. Spezifische Funktionen der Geräte, wie die genaue Auflösung im horizontalen oder Vertikalen Betrieb, werden weder von Flash noch Silverlight adressiert.

Die Community der Entwickler sieht das aus vielerlei Gründen ganz anders. So meint Frank Puscher im Dr. Web Magazin, das das, was die HTML5-Demos bislang zeigen, einem Flasher nur ein müdes Lächeln abringen (http://www.drweb.de/magazin/denkanstos-html5-gegen-mit-oder-fur-flash/)

Die grundsätzliche Diskussion ist aktuell allgegenwärtig, egal ob Microsoft Eco System oder wie hier PHP. Als Aufhänger wird fast immer die Zukunft rund um Tablets und Smartphones genommen. In Summe führt das dazu, das aktuell für die spezifische Plattform eine APP geschrieben wird und eben nicht ein ebenso mögliches Webinterface.

Die Marktdominanz von Apple ist zwar vorhanden, aber in relativer und noch schlimmer absoluter Stückzahl bei weitem nicht so ausgeprägt wie man anhand der Medien Präsenz glauben möchte.

<clip_image002

http://gs.statcounter.com/#mobile_os-DE-weekly-201132-201141-bar

Weltweit ist Nokias Symbian OS mit 32% Marktführer und Android und iOS mit etwa 20% gleichauf. Das ist deshalb von eminenter Relevanz, da in der Regel Lösungen für eine bestimmte Plattform Entwickelt werden.

Code wird aber in einer Programmiersprache geschrieben. Software Entwickler neigen dazu ihre bestehende Kenntnisse und Beispiele längst möglich zu nutzen. Zusätzlich ist eine erhebliche Codebasis für bestehende Software vorhanden, die man weder umstellen möchte noch kann. Folglich sind Programmiersprachen wie VB 6 und FoxPro , die von Microsoft definitiv abgekündigt worden sind, noch immer reichlich präsent. Auch C++ erlebt eher wieder eine Renaissance. Das uralte, proprietäre und nicht standardisierte COM ist nach wie vor Core Bestandteil von Windows.

Programmiersprachen und deren Bibliotheken leben faktisch wesentlich länger als man glauben sollte. Änderungen in der Nutzung erfolgen viel langsamer als Technologie wechselt. Im Folgenden die Top Programmiersprachen und deren Tendenzen. (http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html)

clip_image003

Für die weitere Betrachtung relevant-  Java Script belegt Platz 9 mit steigender Tendenz, aber ähnlich wie SQL das nur zwei Plätze dahinter liegt. Java, C++ und C# als typische Desktop Anwendungssprachen, belegen zusammen mindestens das zehnfache, wie JavaScript als HTML und Browser Sprache.

Da man Statistiken grundsätzlich misstrauen sollte, die Verifizierung durch Gulp (http://www.gulp.de/kb/tools/gulpometer.html). Hier sehen Sie Projektausschreibungen und die Programmiersprache dazu.

clip_image005

Windows basierte Desktops sind beinahe in Milliarden Stückzahl vorhanden. Davon ist noch immer ein großer Teil mit Windows XP ausgerüstet. Die Parität zwischen XP und Windows 7 ist im November 2011 erreicht worden, ganze 10 Jahre nach Lebensende von Windows XP.

Auf der anderen Seite erleben Smartphones eine dramatische Verbreitung. Die Erfolgsgeschichte nehme ich als gesetzt an. Am Ende dieser Entwicklung wird es nach einhelliger Meinung mehr Smartphones als Desktop PC geben.

Tablets

Aus meiner Sicht, ganz und gar nicht gesetzt, ist der dauerhafte Erfolg des Formfaktors „Tablet“ und damit dem Branchenprimus iPad. Namhafte Printmedien, sehen allerdings in dem digitalen Reader die Möglichkeit dem Verfall ihres Mediums  Zeitung zu stoppen

„Die neue App ist da: Ab sofort erscheint die "Süddeutsche Zeitung" vollständig digitalisiert für das iPad. Tablet-Nutzer können die Zeitung von morgen bereits am Vortag von 19 Uhr an lesen und multimedial erfahren. Interaktive Grafiken erklären auf Knopfdruck komplexe Zusammenhänge, die Texte sind um Bildergalerien und Videos erweitert. Und wenn die Kanzlerin mal wieder bis spät in die Nacht hinein tagt, erfahren Sie das auch - denn die digitale SZ wird zwischen 23 und 24 Uhr aktualisiert.“

Ganz ähnlich agieren andere führende Tageszeitungen und promoten teils auf den Titelseiten die iPad Ausgabe. Der so erzeugte Werbewert ist erstens für Apple völlig kostenfrei und zweitens eigentlich unbezahlbar.

Benutzer loben gerne die Akkulaufzeit, schneller Start, die Einfachheit und das geringe Gewicht. Aus meiner persönlichen Erfahrung mit iPad und auch der Windows 8 Variante, vergesse ich sehr häufig das Tablet einzupacken. Vieles wie Mail oder schneller Zugriff auf kleine Informationen wie Bahnfahrplan, geht mit dem Telefon ganz leidlich und ähnlich einfach wie mit iPad. Für anderes ist Tastatur und Maus für mich unverzichtbar. Darüber hinaus verwende ich seit Windows XP Tablet PCs und habe mich ganz erheblich an Stift und seit einiger Zeit auch an Touch gewöhnt. Da Smartphones immer leistungsfähiger und die Notebooks immer leichter werden, könnte es eng werden in der Mitte. Der Mitte der iPads.

Für reine Reader Aufgaben ist z.B. der Kindle von Amazon wesentlich besser geeignet und günstiger.

Wenn man nun über Plattformen nachdenkt, ist man auf der einen Seite mit Windows gut beraten und für den mobilen Part mit der hohen Reichweite von Smartphones zukunftsfähig.

HTML 5

Damit stellt sich die nächste Frage. Wie werden User Interface in Zukunft entworfen? Der Wunsch tendiert in Richtung, einmal für alle und alles. Hier kommt HTML 5 ins Spiel. Als Standard sollten sich doch alle daran halten. Doch leider ist HTML 5 selbst nach Jahren noch immer kein Standard und erfährt noch immer recht weitreichenden Änderungen auch in jüngster Zeit http://www.heise.de/newsticker/meldung/HTML-5-schon-vor-Veroeffentlichung-Zeit-los-1369751.html

Standards an sich bedeuten in der Regel den kleinsten gemeinsamen Nenner aller Beteiligten. Sie sind stabil aber wenig innovativ. Darüber hinaus kann man sich nie darauf verlassen, das ein Standard von allen auch gleich verstanden, interpretiert und angewandt wird. Standards beschreiben naturgemäß keine Implementierung. Exemplarisch sei hier das VIDEO Element angeführt. Das Codec ist nicht Bestandteil des Standards. Wer sicherstellen möchte, das seine Videos auf allen HTML 5 Browsern optimal lauffähig sind, muss aktuell diese in verschiedenen Codec’s vorrätig halten.

Microsoft hat für Windows 8 eine neue Shell Namens METRO angekündigt und pusht HTML 5 u.a. auch als deklarative UI Sprache für Windows APPs. Was die Microsoft Developer davon halten, kann man aus den Foreneinträge leicht ableiten. Entwickler bevorzugen offensichtlich deutlich XAML gegenüber HTML.

clip_image007

http://social.msdn.microsoft.com/Forums/en-us/category/windowsapps

Wenn man Microsoft Developer nach den Gründen pro XAML frägt, erhält man Aussagen wie „deutlich klarer und einfacher“. Darüber hinaus ist HTML auf Windows 8 weit vom ohnehin noch nicht verabschiedenden Standard entfernt. Ein für Windows 8 entworfenes Programm wird also auch nur dort funktionieren. Bleibt nur die Frage, wird WinRT, ähnlich eines Silverlight Plugins, heimlich auch für IOS entwickelt?

Es könnte also HTML 5 die Lösung für den Browser sein. Dazu ist es wichtig die Verbreitung der Browser zu betrachten. Nur moderne Browser unterstützen HTML 5 halbwegs http://html5test.com/. Der Markt ist hier sehr unterschiedlich. Browser wie Firefox und Chrome haben sehr kurze Lebenszyklen. Firefox 7 auf 8 hat nur rund einen Monat gedauert. Chrome ist gar schon bei Version 15. Viele normale Benutzer sind allerdings noch bei Internet Explorer 6, dem Browser mit dem schlechtesten Ruf.

Chrome User folgen dieser Philosophie und starten häufiger eine Aktualisierung. Allerdings hat auch Google durchaus Benutzer die bei einer Version hängen bleiben.

Chrome

clip_image008

Internet Explorer

clip_image009

http://www.browser-statistik.de/statistiken/versionen/

Am Ende wird es also immer einen Anteil Benutzer geben, die eine HTML 5 Website nicht komplett nutzen können. Übrigens eine Situation die auch heute für Silverlight und sogar Flash gilt.

Plugin Konzept

Browser Plugins werden allgemein totgeschrieben. Warum Silverlight als Plugin, wenn HTML 5 nativ dies auch machen kann? Eventuell sogar schneller und mit weniger Speicherverbrauch?

Dabei wird gerne vergessen, das Plugin ein essentielles Software Entwurfsmuster ist. OOP Entwickler übertreffen sich mit der Anwendung desselben in IOC oder Dependency Injection. Auch das Managed Extensibility Framework, das auch in Visual Studio zum Einsatz kommt, ist ein elegantes Konzept Software erweiterbar und damit wartbar zu gestalten. Auf dieses Konzept zu verzichten, heißt auf neue Funktionen verzichten und den User nicht das zu bieten, was technisch möglich wäre.

Mit HTML 5 soll dies plötzlich nicht mehr gelten?

Adobe nennt jedenfalls als wesentliche Gründe für die Einstellung von Flash auf mobile, die Fragmentierung des Marktes. Bei vielen verschiedenen Plattformen, Formfaktoren und auch Funktionen kann es am Ende nur auf den kleinesten gemeinsamen Nenner hinauslaufen, der mit HTML 5 bedient werden kann. Programmiert wird dann eben mit Java Script und nur damit.

Solcherlei HTML Apps beruhen heute sehr stark auf Online Verbindungen. Steht kein Internet zur Verfügung, dann geht Google Maps aber nicht. Auch die Bahnauskunft bleibt stumm.

Das mag im Privat Bereich, also dem Konsumenten, akzeptabel sein. Für den Business Kunden kann es Umsatzverlust oder Schaden bedeuten, wenn die Anwendung nur in neun von zehn Fällen funktioniert. Spätestens nach dem ersten relevanten Vorfall werden beim Management die Alarmglocken schrillen und der Schwenk auf eine 99,999% Plattform vollzogen.

Meine eigene Erfahrung mit Windows Phone 7,5 in dieser Hinsicht war die Musikerkennung. Ein super Feature wenn im Radio ein Hit läuft. Hat beim rumspielen ganz toll funktioniert nur das eine Mal, ja das eine Mal nicht.

Einige meiner Gesprächspartner, darunter namhafte Größen der .net Szene, schwenken aktuell auf  Android. Der Logik folgend, dorthin zu gehen, wo der Markt ist. Auch hier höre ich häufig, das man mit HTML 5 ja auch wieder Windows 8 und den Browser und damit letztendlich mehrere Plattformen adressieren kann.

Dieses Argument kommt bekannt vor. Bereits zu C++ Zeiten (später Java) wurde ins Feld geführt, damit für mehrere Betriebssysteme entwickeln zu können. Das stimmt auch im Ansatz, scheitert aber bisher immer im Detail. Librarys, Performance oder Formfaktoren sind nicht universell und optimal lösbar.

XAML

Microsoft hat zu Windows Vista Zeiten den Schwenk von Pixel orientieren UI’s mit WPF zu vektororientiert vollzogen. Der Logik der unterschiedlichen Auflösungen folgend ist man aber im Wesentlichen beim immer ähnlichen Querformat geblieben. Über das deutlich schlankere Framework Silverlight hat dieses Konzept bis heute letztendlich sogar den Weg auf die iOS Plattform gefunden.

Wenn man den Gerüchten glauben darf, wurde unter Ray Ozzie eine komplett neue Internet Strategie entworfen. Weg von .NET hin zu Standards, zu Open Source und der Cloud. Nach dem nicht ganz reibungsfreien Weggang des Chef Visionärs  im Oktober 2010 tut sich hier ein Vakuum auf, das auch nicht durch einen Nachfolger gefüllt wurde. Seine Entscheidungen pro HTML 5 wirken aber nach.

Erst im Juni  2011, gab es einem neuerlichen Schwenk zurück zu XAML. Die Abteilung für Windows (WinDiv), die sich bisher konsequent der .NET Entwicklung verschlossen hat, bekommt XAML zugeschlagen.

Am 24.Juni kursiert folgendes internes Mail

We’re pleased to announce the transition of the XAML
platform team from the Developer Division to the Windows team. While the
team has been working side-by-side with the Windows team for the entire project,
this step brings them into our team formally.

http://www.riagenic.com/archives/683

Dies vermutlich auch aufgrund massiver Proteste diverser Großkunden, die um ihre XAML Investitionen fürchten.

Microsoft spricht heute nicht mehr von WPF oder Silverlight sondern von XAML. Windows 8 METRO APPS können mit Silverlight oder XAML Wissen relativ leicht entwickelt werden. Man muss aber wissen, die Runtime und auch die UI Sprache sind unterschiedlich. Auch hier kein Write Once run everywhere.

Silverlight Everywhere

Hinzu kommt das Windows Phone 7 APPs mit Silverlight (einer Version 3+) entwickelt wird. Auch bei SharePoint oder Lightswitch ist Silverlight essentiell. Die neue Shell (METRO) für die Xbox basiert seit Anfang Dezember auf einer  Silverlight Version (Projekt Lakeview). Der neue Lync Client verwendet, nicht grundlos, was? Silverlight.

lync

Silverlight 5 ist ebenso fertig und verfügbar. Die wesentlichste Ergänzung sind 3D, XAML Debugging und implizite Templates. Eigentlich ist Silverlight damit auch fertig. Wenige Tage zuvor hat Amazon die Umstellung seines Videodienstes lovefilm auf Silverlight bekannt gegeben. Tod?

Microsoft garantiert 10 Jahre kostenfreien Support für Ihre Produkte. Man kann also damit rechnen das auch die Browser 2021 noch ein funktionierendes Silverlight Plugin bekommen.

Ganz generell ist die Erfolgsgeschichte von Silverlight ohnehin weniger im Browser als im Bereich LOB zu suchen. Viele exzellente Geschäfts Anwendungen laufen in Firmen Intranets, meist sogar ohne Browser. Dafür spricht das  kleine Framework, einfaches Rollout und die schönen Grafik. 

Wirkliche Begeisterung hört man von Embeded Entwicklern, wenn sie die Möglichkeiten von C++ und Silverlight (ein 3er Derivat) auf Windows Embeded 7 sehen. Da die Redmonder diese Technologie sehr gut bei PKW Herstellern (z.b. Fiat Blue&Me, Ford Sync, BMW) platziert haben, ist es denkbar, dass die Anzeige am Autobildschirm in kürze mit Silverlight erfolgt.

image

Darum zurück zur Kernfrage, was soll man heute tun?

Von Microsoft hört man dazu keine Empfehlung. Als Markführer müssen sie ihre Position verteidigen und bleiben deshalb etwas zu oft in nebulösen Aussagen hängen. Meine Erfahrung über die Jahre ist, das Microsoft sehr wohl tut, was seine Kunden wollen. Auch wenn zuerst auf die Optimierung der Gewinne agiert wird, erkennt Microsoft mal mehr oder weniger schnell wenn Kunden abspringen zu drohen. Insofern wage ich zu behaupten, das es an Ihnen liegt ob Microsoft eine Version 6 von Silverlight veröffentlicht.

Faktisch ist es aber nicht wesentlich. Relevant ist, dass man mit Silverlight heute Anwendungen schreiben kann, die der Kinderstube entwachsen sind. Auch das Tooling kann man als gut bis sehr gut bezeichnen. Wenn die Target Plattform Windows heißt, wird eine Silverlight oder auch WPF Anwendung die heute geschrieben wird, auch noch in 10 Jahren laufen.

Wenn man näher an das Betriebssystem will, Stichwort pinvoke oder ganz spezielle Performance Anforderungen hat, dann ist beim HTML Standard ohnehin ganz früh die Luft raus.

Aber tatsächlich gibt es nach wie vor keine aktuelle belastbare und offizielle Aussage zur Zukunft von Silverlight. Auch bei direkten Kontakt mit den Produktteams gibt es nicht einmal unter dem Siegel der Verschwiegenheit Antworten zur Frage nach der Zukunft von Silverlight.

Das letzte was offiziell dazu erklärt wurde, stammt von Bob Muglia Ende 2010 als Reaktion auf vorangegangene Ereignisse.

“Silverlight is very important and strategic to Microsoft. We’re working hard on the next release of Silverlight, and it will continue to be cross-browser and cross-platform, and run on Windows and Mac.Silverlight is a core application development platform for Windows, and it’s the development platform for Windows Phone.”

http://blogs.msdn.com/b/silverlight/archive/2010/11/01/pdc-and-silverlight.aspx

Bob Muglia verließ rund zwei Monate danach Microsoft.

Gefühlt würde ich sagen, Microsoft hält sich bewusst alle Optionen offen. Silverlight eine Erfolgs Geschichte. Andere Projekte aus Redmond der letzten Jahre kommen da bei weitem nicht hin.

Aber Silverlight ist auch nicht die Silberkugel. Für einige Konzepte aus METRO und WinRT gibt es keine Entsprechung  in Silverlight. Die Strom und Ressourcen Sparkonzepte von METRO sind bestechend und nicht mit Silverlight abbildbar.  Auch das Problem des umschalten zwischen Hochformat und Querformat ist konzeptionell nur mit Windows 8 METRO gelöst.

Der Ein und Umstieg für WPF und XAML Entwickler ist möglich, aber nicht so einfach wie man trotz XAML und .NET Expertise glauben würde. Man darf nicht vergessen, das man gegen und mit gänzlich anderen Librarys programmiert.

Ich freue mich über jedes Feedback und Diskussion und werde den Artikel mit diesem Input kontinuierlich updaten.

Silverlight Service und Client Code sharen

Wenn man in Silverlight ein Proxy Objekt, per Add Service Reference, von Visual Studio erstellen lässt, stellt sich die Frage nicht. Was ist aber wenn man REST Services verwendet und nicht auf eine WCF Infrastruktur zurück greifen möchte? Dann macht man eben shared code.

Ganz einfach im Silverlight Projekt ein bestehendes Element hinzufügen, hier die Klasse Kunde aus dem Silverlight Web Projekt

image

Ganz wichtig als Link!

image

HTML 5 vs Silverlight

Kaum wo kommen aktuell die Emotionen so hoch wie bei der Frage ob HTML 5 gut oder schlecht sei und wie das ganz zu positionieren ist. Ausgelöst wurde die Diskussion von Bob Muglia (zwischenzeitlich auf der Microsoft Drop List) der sozusagen Silverlight abgekündigt hat.

Was bisher geschah:

Microsoft wirft Silverlight als WPF light in den Markt. Nach anfänglicher Skepsis und der ungeklärten Situation zu Flash, ist Silverlight seit der Version 3 eine Erfolgs Geschichte und verdrängt WPF Clientanwendungen. Anfänglich wurden ca alle 9 Monate neue Versionen auf den Markt gebracht. Inzwischen wartet die Fan Gemeinde ein Jahr alleine auf eine Beta von SL5.

Sozusagen als parallel Handlung hat Microsoft Windows phone 7 mit einer Silverlight Version 3.5 gepuscht. Persönlich halte ich Silverlight auf WIndows phone eher für ein mini WPF, da es nicht im Browser läuft sondern sozusagen native.

Nach endlosen Silverlight is dead Diskussionen und der fehlenden Roadmap kommt nun ein neues Blog Posting dazu, das mehr Fragen aufwirft als es beantwortet.

Auffällig ist, das sämtliche Microsoft Evangelisten das Lied von HTML 5 singen und auch andere Aktivitäten in dieser Richtung zu erkennen sind. Nun stellt sich mir die Frage, warum tut Microsoft das und was gibt es dabei zu gewinnen?

Fassen wir einmal zusammen was so an Argumenten kolportiert wird:

  • HTML 5 ist ein Standard
  • Silverlight ist ein Plugin
  • HTML 5 hat den größeren Reach (Ipad und co)
  • Silverlight hat schnellere Innovationen
  • Silverlight hat mehr Features
  • HTML 5 ist weit davon entfernt fertig zu sein
  • HTML 5 hat keine Tools
  • Wer will schon Jscript
  • Wir haben schon mehr als genug UI Technologien

Alles schön und gut, aber ohne Belang für den Endkunden und den Lieferanten. Fakt ist, ich habe genug Möglichkeiten UI’s zu bauen. Mir fehlt auch nichts. Schön wäre wenn es SL Plugin für ein WIndows mobile 6.5 gäbe (das wäre der Wahnsinn). Ich kenne .NET, WPF, Silverlight, Services. Ich weis wie agil das W3C Konsortium in der Vergangenheit war und wie sehr sich Standards durchgesetzt haben. Ich halte auch SOAP für einen Irrtum.

Egal wie der technische Vergleich zwischen X und Y heute ausfällt, relevant ist die Zukunft. Dazu versuche ich immer zu verstehen, was das Geschäftsmodell ist um abschätzen zu können ob ein Invest Zukunft hat. Also reduziere ich alles auf die Frage: Wer gewinnt oder was gewinnt Microsoft, wenn HTML 5 ein sensationeller Erfolg wird. Was würde das bedeuten? Ein Großteil der UIs müsste mit HTML 5 geschrieben werden um die write once- run everywhere (schon mal gehört?) Versprechen zu halten. Denkbar ist das z.B. Windows 8 eine HMTL Runtime Shell ala Browser erhält.

Entwickler schreiben einmal eine Anwendung und können die auf jeden Device laufen lassen. Wie soll das gehen? Verschiedene Hardware, Screen Resolution. Es kann nur auf einen Minimal Konsens rauslaufen. Ganz nebenbei bekommt jeder meinen Source Code…

Apple: Wenn man die Anwendung im Browser laufen lassen kann, braucht man den AppStore nicht mehr und damit auch kein Geld dort ausgeben.

Microsoft: Wer braucht noch Windows, wenn Anwendungen überall laufen? Und Browser sehen eh alle gleich aus und Firefox ist viel cooler.

Telefon Hersteller: Wo ist mein USP? Wo ist mein Longtail business?

Google/Facebook: Das Geld liegt im Online Advertising. Bereits heute sind die APP’s hier integraler Bestandteil des Business.

User: Wirklich schicke Anwendungen lassen sich mit Flash oder Silverlight viel besser bauen. Wenn mein Device das Plugin hat und ggf updated ist eh alles fein. Oder auf wie vielen Clients läuft Flash?

Nun lenkt Microsoft Ressourcen nach HTML 5. So werden wohl Tools erstellt. Es wird gemunkelt die nächste Lightswitch Version wird HTML 5 rendern. Diese Ressourcen werden woanders fehlen. Ich bin der Meinung das schon heute viel zu viel nicht mal halb fertiges in den Markt geworfen wird. Sind wir doch mal ehrlich WebMatrix oder LightSwitch sind doch nicht wirklich zu gebrauchen. Oder die Story mit ASP.NET MVC oder Windows phone. Die Qualität der Doku hat ohnehin einen historischen Tiefpunkt erreicht.

Bleibt noch die Cloud oder Windows Azure als Hoffnungsträger aus dem Lizenzbusiness ein Mietbusiness zu machen. Im Markt kann es keiner mehr hören. Monatlich neue Features. Alles in allem keine wirkliche Marktrelevanz. Stellt sich also Microsoft unter dem Mantel der “alles Standard” Story den Zugang zu ihren Azure Diensten vor?

Am Ende sind wir alle ratlos. Es gibt keine Slides mehr die eine 5 Jahres Roadmap zeigen. Und die Kunden sind verunsichert. Was ich dabei beobachte ist, das es für den Kunden im Zweifel nicht HTML 5 oder Silverlight lautet, wenn schon Schift, dann gleich zu Android oder sonstwo. Ist ja ohnehin schon egal. Und das ist glaube ich eines der Hauptargumente. Der Markt sieht seine Invests in .NET wertlos werden.

Internet Explorer 9 Network Debugging

Im Grunde ist es doch wirklich total egal, welchen Browser man verwendet. Ob der eine auf meiner 8GB Ram Maschine mit 4 Kernprozessor schneller oder langsamer ist, interessiert doch nur Microsoft Bascher und gelangweilte Redakteure. Ich war mit IE immer glücklich. Trotzdem habe ich Firefox und Chrome drauf. Chrome geht gar nicht, da ich Google und Datenschutz … lassen wir das.

Ich unterrichte noch immer Silverlight Kurse. Und eines erzähle ich meine Schulungsteilnehmern immer. “the wire never lies” (© by unbekannt). Und jeder Web Guy verwendet Fiddler um HTTP Traffic zu visualisieren oder Microsoft NetMon wenn man es genau wissen will.

Was mich seit IE7 in diesem Zusammenhang nervt, ist das Proxy verhalten von IE. Kurz gesagt localhost Zugriffe gehen nicht an Fiddler. Einer der möglichen Workarounds (http://ipv4.fiddler…) wird gerne vom Layer 8 vergeigt.

Die gute Neuigkeit ist, das IE9 nun in den Developer Tools, den Netzwerk Sniffer schon drin hat. Einfach F12 drücken

Dann im Menü Netzwerk die Aufzeichnung starten.

image

Beim Aufruf von Websites gibt es da ganz tolle Ballen Grafiken rechts. Genauso findet sich dort Detailinfos wie Time to First Byte usw. In meinem Fall habe ich die üblichen RIA Services konsumiert. Da kann man viel falsch machen und so erfährt Der Entwickler binnen wenigen Sekunden wo er weiter Fehler suchen muss.

Im folgenden Screen Shot kann man erkennen das der Service da ist und grundsätzlich antwortet.

image

Im Reiter Antworttext wird dann der Inhalt des Requests dargestellt. Das Binary Encoding von RIA ist zeigt die Daten auch in Klartext. So kann man Anzahl der Datensätze und übertragene Felder erkennen.

image

Das ganz funktioniert aber klarerweise nur für inbrowser Silverlight Anwendungen und wenn der Browser Network Stack verwendet wird. Da dies die Standard Einstellung ist, sollte es auf anhieb klappen. In allen anderen Fällen empfehle ich Fiddler.

Java Script Debugging geht nicht mit Visual Studio 2010

Noch so ein kleines Problem mit großer Wirkung und fast hätte ich IE 9 die Schuld gegeben. In einem Silverlight Projekt funktioniert das debuggen von JScript Code aus HTML oder ASPX Seiten nicht.

Man kann leider nur Silverlight oder Jscript debuggen. Die Entscheidung wird in den Projekt Einstellungen des Web Projektes vorgenommen.

image

Training, Schulung, JavaScript, HTML, CSS, Dot Net, Asp Net

Month List