Archiv für den Monat Oktober 2012

Mobile Serie – Ebook Reader

In diesem Beitrag befasse ich mich mit der Nutzung von Ebook Readern im privaten Umfeld. In einem späteren Beitrag gehe ich auf den beruflichen Einsatz ein.

Ich hatte die letzten Wochen Gelegenheit meinen Kindle ausgiebig zu testen und eines steht fest: Ich bin begeistert! Kein Wunder, warum die Branche boomt. Die Lesequalität steht der im Vergleich zu normalen Büchern in nichts nach. Selbst direkte Sonneneinstrahlung schmälert die Anzeige nicht. Und genau hierbei grenzen sich die digitalen Lesegeräte ganz klar von Tablets ab: Die Displaytechnologie E-Ink ist speziell auf die Lesebedürfnisse ausgelegt. Ausgenommen sind lediglich stark bildlastige und farbenreiche Werke, die weniger dafür geeignet sind. Die Akkulaufzeiten, welche lediglich von der Anzahl gelesener Seiten abhängig sind, suchen ihresgleichen (3 Monate sind keine Seltenheit).

Viele nützliche Funktionen rund um das Gesamtpaket ab:

  • Automatische Lesezeichen, sodass man überall und auf jedem Endgerät (z.B. Handy oder PC) genau dort weitermachen kann, wo man aufgehört hat
  • Eigene digitale Notizen und Markierungen, d.h. das Beschreiben von Bücherseiten mit Textmarkern entfällt. Ebenfalls toll: Das Einblenden der Notizen von Personen, denen man auf Amazon folgt, ist ebenfalls möglich.
  • Über soziale Netze lassen sich Textpassagen weiterempfehlen
  • Direktes Nachschlagen in Wörterbüchern
  • Text-to-Speech: Ein integrierte Vorlesefunktion, welche mit englischen Titeln sehr gut funktioniert
  • Günstigere Preise als für gebundene Bücher
  • Abonnements von Zeitschriften möglich
  • Verleihen und Verschenken von Inhalten ist möglich
  • Pro Monat kann ein Ebook aus der Leihbücherei geliehen werden
  • Kostenlose Ebooks erhältlich
  • Kompakt und leicht
  • Features wie ein MP3-Player sind angedacht

 

Leider ist gerade Deutschland noch Schlusslicht, was das Angebot und die Preise von Ebooks angeht (vgl. aktuelle Zahlen hier und hier). Demzufolge sind nicht alle Inhalte digital verfügbar und die Einsparungen entsprechen bei weitem nicht denen im Ausland. Doch im Segment der Fachliteratur und der englischen Titel ist eine gute bis sehr gute Abdeckung gewährleistet. Am besten erstellt man sich eine Liste seiner 10 Lieblingsbücher und schaut zunächst einmal nach, welche davon verfügbar sind, um eine Einschätzung zu bekommen. Allerdings sollte man sich auch bewusst sein, dass durch den Kauf lediglich das Nutzungsrecht eingeräumt wird. Der Vertreiber, z.B. Amazon, kann somit jederzeit dieses Recht wieder entziehen, sodass das gekaufte Buch damit weg wäre.

Für wen sind nun Ebook Reader interessant? Zunächst einmal natürlich für Leseratten. Neben barem Geld können sie sich auch das Schleppen schwerer Bücher sparen. Aber auch auf Grund des geringen Preises zw. 80-130€ dürfen Gelegenheitsleser und Zeitschriften Fans bedenkenlos zugreifen. Als Geschenk ist es allemal eine gute Idee. Persönlich denke ich auch, dass selbst Tablet-Nutzer einen Kauf in Erwägung ziehen können, was darin begründet ist, dass die zwei Geräteklassen für unterschiedliche Einsatzzwecke konzipiert sind.

Als Privatperson ist man meiner Einschätzung nach mit dem W-LAN fähigen Kindle von Amazon, welcher seit Monaten Platz 1 der Bestenlisten belegt, am besten bedient. Für geschäftliche Zwecke muss dies nicht unbedingt gelten (vgl. 1 und 2), aber dazu später mehr. Noch ein wesentlicher Punkt um Fehlkäufe zu vermeiden: Das Kindle Fire ist ein Tablet. Hier ist aber die Rede von dem Ebook Reader Kindle ohne Fire im Namen. Bitte beim Kauf darauf achten.

Noch ein Link zu dem Blogeintrag eines Lesers, der vor knapp einem Jahr sich ebenfalls mit der Thematik auseinander gesetzt hat.

UAC oder keine UAC – Das ist hier die Frage

Mit meinem vorherigen Blogeintrag Windows 8 ist Gift für Legacy Code kam auf Twitter eine Diskussion zu Stande, wieso denn unsere Anwendung derart hohe Berechtigungen benötigt und dass der Code doch inzwischen längst neu geschrieben worden sein sollte. Außerdem wurde eingeworfen, was Legacy Code direkt mit der UAC zu tun hätte.

Gemäß der englischen Wikipedia Ausgabe beschreibt Legacy Code unter anderem eine nicht länger unterstützte Technologie. Demzufolge ist Windows XP, als das am weitesten verbreiteten Betriebssystem nach Windows 7 ein Legacy System. Zunächst einmal hat Legacy Code nichts direkt mit der Benutzerkontensteuerung zu tun. Allerdings ist es so, dass Legacy Code in der Regel recht alt ist, weshalb er konsequenterweise eben auch nicht mehr weiterentwickelt wird. Code, welcher z.B. vor .NET entstand, würde ich in jedem Fall als Legacy bezeichnen. Selbst .NET 1.0 und 1.1 würden vermutlich die meisten von uns hier einordnen. Nun ist klar, dass vor beispielsweise 10 Jahren die Coding Conventions noch völlig andere waren. Programmkonfigurationen standen in INI-Dateien im lokalen Ausführungsverzeichnis oder die Registry musste für das ein oder andere Szenario herhalten. Demzufolge ist es vorwiegend Legacy Code, der mit der UAC Probleme macht. Das heißt nicht, dass nicht auch neuer Code nicht Schwächen aufweist, jedoch betrifft es vornehmlich alte Module.

 

Ich schätze, dass mindestens 80% der Anwendungen (z.B. die ERP-Systeme) noch entsprechende Module verwenden. Und das ist eine sehr konservative Schätzung! Holger Schwichtenberg schrieb zu Windows 7, dass noch kein Bestandteil auf .NET basiert. SAP hat nach dem, was ich von Consultants höre, noch teilweise Programmzeilen aus den 70er Jahren. Wie ich aus eigener Erfahrung weiß, ist selbst heute noch für die Datenübertragung im EDI Umfeld primär OFTP v1 im Einsatz, d.h. die Kommunikation zwischen Firmen geht mit einer überwältigenden Mehrheit über ISDN. Das zeigt, dass alte Technologien allgegenwärtig sind. Wer sich damit bisher noch nicht hat rumschlagen müssen, gehört zu den wenigen Glücklichen.

 

imageWie gesagt: Nur, weil alte Software im Einsatz ist, heißt dies nicht, dass deshalb automatisch höhere Berechtigungen notwendig sind, doch leider ist das oft der Fall. Nun könnte man noch erörtern, wie es denn sein kann, dass die Codestrukturen noch nicht aktualisiert wurden. Das spielt für mich allerdings kaum eine Rolle, da wir einfach vor diesem Problem stehen.

Aber um der Sache Genüge zu tun: Projekte werden immer noch (nichts von wegen agil) in großen Firmen auf Jahrzehnte geplant, wenn man nach HP geht, läuft deren Strategie sogar auf 75 Jahre (geradezu lächerlich!). Darüber hinaus kann eine IT sich nicht einfach einmal 3-5 (oder länger) Jahre Zeit nehmen und allen alten Code migrieren. Wenn sie das täte, würde die Fachabteilung / Geschäftsleitung vermutlich den Verantwortlichen direkt vor die Tür setzen. Selbst wenn dem nicht so wäre, so käme man der Konkurrenz nicht mehr hinterher und könnte das Produkt gänzlich einstellen.

Frage an die Leser: Wer kam denn bisher gar nicht in die Berührung mit Legacy Code?

Windows 8 ist Gift für Legacy Anwendungen

Mit Windows 8 könnte für viele Entwickler das böse Erwachen kommen: Legacy Anwendungen, die höhere Rechte erfordern, können nicht mehr ausgeführt werden. Vergleicht man die zwei Dialoge der Benutzerkontensteuerung von Windows 7 und Windows 8, so erkennt ist kein Unterschied ersichtlich. In beiden Fällen werden die Benachrichtigungen deaktiviert. Leider versäumt es Microsoft darauf hinzuweisen, dass damit die Benutzerkontensteuerung nicht wie in Windows 7 deaktiviert ist. Demzufolge laufen die Anwendungen weiterhin mit niedrigeren Rechten. Technischer Hintergrund ist der Admin Approval Mode (als Teil der UAC), welcher einen Security Token mit einer niedrigen Berechtigungsstufe an alle gestarteten Prozesse hängt. Mehr Informationen liefert Technet. Außerdem möchte ich auf diese Seite hinweisen, die das Thema verständlich und auf den Punkt gebracht erläutert.

Allerdings gibt es zwei Wege die UAC gänzlich abzuschalten: Über die Registry oder Richtlinieneditor (Anleitung). Leider führt das zu neuen Problemen, die sich so manifestieren:

image

Alle Windows 8 Apps können somit nicht mehr gestartet werden. Lediglich reine Desktopanwendungen funktionieren weiterhin. Der integrierte PDF Reader ist damit wertlos.

Die Theorie von Microsoft, dass alle Anwendungen inzwischen ohne Admin-Recht laufen sollten, ist schön und gut, allerdings ist sie, betrachtet man die Betriebe, eher realitätsfern. Legacy Code greift leider immer noch auf das Programmverzeichnis zu oder muss bei Updates COM-Komponenten in der Registry anmelden. Hier wäre es von Vorteil, wenn Microsoft eine Art Sandbox anbieten würde, in welcher die eigenen Anwendung auf Zugriffe mit erhöhten Berechtigungen analysiert werden kann. Dieses Analyse-Tool sollte dabei z.B. auch alten VB Code unterstützen und bis runter auf Methoden-Ebene die Ergebnisse anzeigen. Ich meine, dass es hierfür eine Lösung gibt, jedoch fällt mir der Name nicht mehr ein. Falls ein Leser helfen kann, so möge er mir das doch bitte schreiben!

Ansonsten bleiben zwei Alternativen. Zum einen müssen die Anwender das Programm übers Kontextmenü als Administrator ausführen, zum anderen wäre ein vorgeschalteter Prozess denkbar, der folgende Funktion übernimmt:

Well, it actually has to request permission in the code, which means a lot of programs are not going to work well with Windows 8 unless they rewrite the code to properly ask for permission.

 

Wer hat seine bestehenden Anwendungen bereits mit Windows 8 getestet und hat ähnliche Schmerzen? Oder können Microsoft Insider den Hintergrund für diese Entscheidung erklären, also den offensichtlichen Sicherheitsaspekt einmal außen vorgelassen. Könnte die Entscheidung im Rahmen der Apps notwendig gewesen sein?

Open Space 2012 – Das Video

Das geschnittene Video aus den Amateur-Aufnahmen ist jetzt online. Wenn Szenen auftauchen, die ich entfernen soll, dann kontaktiert mich über die üblichen Kanäle.

Panorama2

 

 

 

 

 

Wenn ihr den Link weiterleitet, dann verweist bitte auf den Blogeintrag, statt direkt auf das Video!

 

Alle Aufnahmen zusammengeschnitten

Mobile Serie – Das Lizenzlimit des Kindle

Nachdem ich in diesem Artikel einige Kritikpunkte am Ebook-Reader Kindle von Amazon geäußert hatte, stieß ich heute auf eine weitere Unannehmlichkeit, die ich als Frechheit empfinde:

image

 

Die maximale Anzahl an Geräten, auf denen dieser Artikel gelesen werden kann, wurde überschritten. Um den Artikel dennoch herunterzuladen, melden Sie zuerst alle nicht mehr verwendeten Geräte ab und löschen Sie die darauf befindlichen Inhalte. Anschließend können Sie diesen Artikel herunterladen. Sie können auch eine weitere Kopie im Kindle Shop kaufen.

 

Mit aktuell 2 PCs, einem Laptop, zwei Tablets, einem Kindle und einem Handy, auf welchen ich allesamt die Kindle App installiert habe, ist besagtes Limit natürlich schnell erreicht. Wo dieses genau liegt (ich vermute bei 2-3 Geräten), weiß ich bis dato nicht. Eine schnelle Google-Suche brachte nichts Konkretes zu Tage. Ich kontaktiere in den nächsten Tagen diesbezüglich den Support. Ich finde es sehr ärgerlich, dass hier Einschränkungen gemacht werden. Das liegt sicherlich darin begründet, dass der kollektiven Konsumierung durch mehrere Personen Einhalt geboten werden soll, allerdings stellt sich die Frage, wer seinen Amazon Account so einfach mit anderen teilt.

Außerdem wäre zumindest eine zentrale Online Lösung wünschenswert, in der die Inhalte von einem Gerät gelöscht und somit wieder freigeben werden können. Liegen Laptop und Kindle zuhause, so könnte ich die Ebooks am Handy nicht abrufen. Selbstverständlich ist das technisch nicht ganz so leicht zu lösen, dennoch wäre es machbar. Als Endkunde erwarte ich einfach, dass wenn schon eine Einschränkung seitens Amazon für meine (!) gekauften Güter vorgenommen wird, sie sich diesen Aufwand machen!

Einführung in IoC Container

In diesem Webcast biete ich einen kleinen Einstieg zur Verwendung von IoC Containern. Diese Frameworks helfen bei der Umsetzung des Inversion of Control Principle unter Einsatz von Dependency Injection. Damit ist es möglich gemeinsam an an einem Feature zu arbeiten und so den Work in Progress (WiP) zu minimieren.

  • Alle Blogeinträge zu Castle.Windsor samt den im Video gezeigten Code Beispielen gibt es hier.
  • Die Projekte aus dem Webcast habe ich vorübergehend hier zur Verfügung gestellt.

 

Modularisierung durch Dependency Injection

dotnet pro für den Kindle

Kürzlich habe ich die dotnet pro kontaktiert, um mich darüber zu informieren, ab wann mit einer dedizierten Kindle Ausgabe gerechnet werden kann. Die Antwort kam wie gewohnt prompt. Ich zitiere Tilman Börner, seines Zeichens Chefredakteur:

[…]Als Antwort: Mit der Ausgabe 12/2012 wird es die dotnetpro als iPad/iPhone-App geben. Kindle, Epub, Windows App, Android, etc. müssen noch etwas warten. Dazu müssen wir unsere Produktionsweise ändern, was schon bei den Schwesterzeitschriften in Angriff genommen wird. Bei der dotnetpro wird es aber noch bis Herbst nächsten Jahres dauern.

Wer sich über die Nachteile eines Kindle informieren möchte, kann dies hier tun.

%d Bloggern gefällt das: