Archive

Archive for the ‘.Net’ Category

Neues in .Net

26. Juli 2015 Kommentare aus

Im Schlepptau der Veröffentlichung von Visual Studio 2015 gibt es zahlreiche Neuigkeiten rund um .Net. Bei all den Versionen und Ankündigungen verliert man jedoch schnell den Überblick und alleine die Videos vom “Final Release Event” kommen zusammen auf fast 5 Stunden Demos und Erklärungen. Damit man ein wenig gezielter nach Neuigkeiten suchen kann, habe ich hier eine kleine Auslegeordnung der für mich wichtigsten Punkte vorgenommen.

 

.Net 4.6 und C# 6

Das .Net Framework wird kräftig weiterentwickelt und bietet mit Roslyn ganz neue Möglichkeiten zur Codeanalyse. Im Moment hört sich in diesem Bereich noch vieles nach einer netten Spielerei an. Richtig angewendet dürfen wir uns auf eine ganz neue Generation von Analysewerkzeugen freuen, die weit über Dinge wie die Null-Check Warnhinweise von ReSharper hinausgehen.

Für Entwickler wohl am deutlichsten spürbar ist der neue Null-Conditional Operator, der einem zahlreiche mühsame Null-Kontrollen erspart. Ob die Variablen customers oder Orders auf dieser Zeile Null sind spielt keine Rolle, der Code wird ausgeführt und liefert das gewünschte Ergebnis:

int? first = customers?[0].Orders?.Count();

Weitere Neuerungen wie die Filter bei Exceptions muss ich erst selber ausprobieren. Hat man jahrelang ohne diese Funktion programmiert fällt es einem oft schwer den Nutzen zu erkennen. Dies dürfte sich je nach Anwendungsfall aber schnell ändern, von dem her sollte man damit erst ein wenig herumexperimentieren bevor man ein Urteil fällt.

 

ASP.NET 4.6 ist nicht vNext

Im letzten Jahr war bei ASP.NET vor allem die Rede von vNext. Diese Neuentwicklung bricht mit dem bisherigen ASP.NET und hat als eines der auffälligsten Merkmale die project.json Datei. Zwischenzeitlich wurde vNext in ASP.NET 5 umbenannt. Damit es aber richtig kompliziert wird nennt man die Verschmelzung von ASP.NET MVC und Web API nun ASP.NET MVC 6. Dies da ASP.NET MVC 5 ja bereits im Oktober 2013 mit Visual Studio 2013 erschienen ist.

ASP.NET vNext resp. 5 ist noch in der Entwicklung und dürfte nach aktueller Roadmap erst im 1. Quartal 2016 erscheinen. Somit bleibt noch ein wenig Zeit bis man sich in ein grundlegend neues Framework einarbeiten muss.

Das jetzt veröffentlichte ASP.NET 4.6 enthält vor allem Optimierungen und Detailverbesserungen für die aktuellen Versionen von MVC, Web Forms und Web API. Damit findet man sich schnell zurecht, da die grossen Änderungen ja erst 2016 kommen. Dennoch lohnt sich ein Update, denn die verbesserte Unterstützung von IntelliSense für Bootstrap und AngularJS spürt man deutlich.

 

Änderungen an den Visual Studio Versionen

Die Premium und die Ultimate Version von Visual Studio 2013 wurden bei 2015 in der Enterprise Version kombiniert. Dementsprechend müssen sich bisherige Besitzer der Premium Version bei der nächsten Vertragserneuerung auf höhere Lizenzkosten gefasst machen.

Am unteren Ende der Versionspalette befindet sich die Visual Studio Community Edition, die gerade für kleinere Teams und Firmen mit weniger als 250 PCs oder 1 Million $ Jahresumsatz eine interessante Alternative darstellt. Entgegen der bekannten Express-Edition kann man hier die IDE erweitern und beispielsweise auch ReSharper verwenden.

Welche Version man nun mit welchen Funktionen erhält findet man auf der Übersichtseite von Microsoft.

 

Fazit

Diese Woche bringt für.Net Entwickler viel Neues. Leider erschwert der nicht gerade übersichtliche Mix aus 4.6, 5 und 6er Versionen das Zurechtfinden. Diese Verwirrung dürfte sich aber bald legen und mit ein wenig produktiver Erfahrung wird man die neuen Möglichkeiten von C# auch besser einordnen können. Angesichts von ASP.NET 5 wird es auch im 2016 spannend bleiben…

Schlagwörter:, ,

Mein Technologieradar für 2015

22. April 2015 2 Kommentare

Seit der Veröffentlichung meines ersten Technologieradars ist schon mehr als ein Jahr vergangen. Somit ist es höchste Zeit für einen Rückblick, ein Fazit und die Erstellung der nächsten Version.

 

Was brachte mir der Technologieradar?

Der grösste Pluspunkt für mich war die erzwungene Fokussierung. Ein bewusstes Einteilen von verschiedenen Technologien in die einzelnen Ringe hat mir sehr geholfen. Ganz wesentlich war der Ring Hold, in den alles hinein geht mit dem ich mich nicht beschäftigen wollte. Dadurch konnte ich mich auf die Technologien fokussieren, die ich als wichtig erachte und hatte dennoch genügend Zeit um auch auf Neues reagieren zu können.

Ein einmal erstellter Technologieradar ist kein starres Konstrukt. Wie ein richtiges Radar soll dieser vielmehr auf die Umgebung reagieren und wichtiges hervorheben.
Strukturierte Logmeldungen sind so ein neues Thema, das aus der vagen Idee von “Log as Data” und “Business Event Tracking” entstanden ist und zu einigen Blog Posts führte.

 

Mein neuer Technologieradar

Wie im letzten Jahr habe ich wiederum das Projekt Techradar von Brett Dargan verwendet. Die Ringe sind ebenfalls unverändert und folgen der Idee von ThoughtWorks:

  • Hold (abwarten): Keine neuen Projekte mit diesen Technologien starten.
  • Assess (einschätzen): Genauer hinschauen ob sich daraus etwas entwickelt.
  • Trial (ausprobieren): In kleineren und weniger wichtigen Projekten Erfahrungen sammeln.
  • Adopt (umsetzen): Bereit um in kritischen Anwendungen verwendet zu werden.

Mit der 2. Ausgabe macht es nun auch Sinn zwischen bestehenden und sich bewegenden Themen zu unterscheiden. Die Kreise stehen dabei für unveränderte Technologien, während die Dreiecke Neuigkeiten oder grosse Veränderungen markieren.

Techradar_2015

 

Techniken, Verfahren & Methoden

Techradar_2015_Techniques
In diesem Quadranten gibt es wenige Veränderungen. Das neue Thema der strukturierten Logmeldungen sowie Exploratory Testing sind aus meiner Sicht bereit für den produktiven Einsatz und können bei der Fehlervermeidung und Eingrenzung sehr hilfreich sein. Für die konkrete Umsetzung der strukturierten Logmeldungen in .Net hat sich Serilog als äusserst hilfreich erwiesen, während BugMagnet einem beim Exploratory Testing viel Arbeit abnimmt.

Die Visualisierung von Metriken ist ein Thema zu dem ich noch zahlreiche Abklärungen machen muss. Die Ideen dahinter sind sehr spannend, allerdings führen falsch verwendete Metriken zu grossen Problemen. Daher ist hier besondere Vorsicht geboten.

 

Infrastruktur, Plattformen & Services

Techradar_2015_Infrastructure
Beim letzten Radar zögerte ich noch mit der Empfehlung von RavenDB. Mit Version 3 sind diese Bedenken nun ausgeräumt. Fall ein Projekt eine NoSQL-Datenbank benötigt und darauf mittels C# oder einer REST-API zugreifen will, ist RavenDB meine favorisierte Lösung.

Docker ist ein spannender Ansatz um ganze Systemumgebungen auf Anwendungsebene zu virtualisieren. Diese unabhängigen Container vereinfachen nicht nur den Betrieb, sondern auch die Entwicklung. Mit den Ankündigungen von Microsoft für eine Implementierung auf Basis von Windows dürfte Docker auch bald in der .Net Welt eine grosse Rolle spielen. Somit ist es Zeit für einen genaueren Blick auf Docker.

Konkretes zu SharePoint 2016 wird Anfangs Mai zu erfahren sein. Je nach neuen Funktionen und Verbesserungen könnte SharePoint 2016 ein interessantes Thema werden. Mehr dazu wird man allerdings erst nach der Ignite-Konferenz wissen.

 

Sprachen und Frameworks

Techradar_2015_Languages
Eine sehr grosse Änderung kommt mittels ASP.Net 5 (ehemals ASP.Net vNext) auf die .Net Webentwickler zu. Grundlegende Änderungen in der Projektstruktur, eine komplett auf Mono lauffähige Umgebung und ein eine neue Verteilung der Aufgaben zwischen MVC und WebAPI führen zu einem grossen Lernbedarf. Ob sich dieser lohnt wird nicht zuletzt beim Migrationspfad entschieden. Je aufwändiger es ist eine Anwendung zu migrieren, desto länger werden die alten Versionen verwendet.

AngularJS ist ein Framework mit vielen offenen Fragen. Die inkompatible Version 2 setzt auf TypeScript, den JavaScript-Aufsatz den ich immer noch sehr skeptisch betrachte. Falls AngularJS so gut wird wie manche erhoffen, muss ich meine Position zu TypeScript überdenken. Allerdings könnte AngularJS genauso gut aus meinem Technologiestack fallen…

Bezüglich neuer Programmiersprachen sehen Swift und Go sehr interessant aus, allerdings hat auch C# 6 einige Neuerungen die man nicht verpassen sollte. Daher kann ich derzeit noch nicht abschätzen mit was ich mich am Ende mehr beschäftigen werde.

 

Tools

Techradar_2015_Tools
Balsamiq Mockups und Octopus Deploy sind 2 grandiose Werkzeuge, die einem viel Arbeit abseits der Entwicklung abnehmen. Mit den Mockups in Balsamiq lassen sich Anforderungen und Ideen einfach sammeln, während Octopus das Deployment auf wenige Klicks reduziert.

Entity Framework 7 wird Microsofts nächster Anlauf für einen OR-Mapper. Da erneut grundlegende Funktionen (wie Lazy-Loading) fehlen erinnert einem dies sehr stark an die Einführung von EF 4. Ob der Ansatz eines OR-Mapperers sowohl für relationale wie auch NoSQL-Datenbanken die fehlende Abwärtskompatibilität aufwiegt? Auch hier muss sich erst noch zeigen wie gut die veröffentlichte Version wirklich ist.

Microsoft hat in diesem Bereich in den letzten Jahren sehr viel begonnen und kaum etwas langfristig unterstützt. Durch diese fehlende Kontinuität sind Micro ORMs wie Dapper für mich sehr interessant. Diese kommen ohne grosses Framework aus und liefern einen einfachen Zugang zu relationalen Datenbanken.

 

Fazit

Mit all den Neuerungen in der .Net und Microsoft Welt (Angefangen bei Windows 10 über EF 7 bis hin zu ASP.Net vNext) ist ein eigener Technologieradar aus meiner Sicht unverzichtbar.
Trotz der vielen Unsicherheiten kann man sich so auf einige Neuigkeiten fokussieren und verliert sich nicht in zu vielen Details. Daher kann ich jedem empfehlen sich selber einen Technologieradar zu erstellen. Die dafür investierte Zeit lohnt sich.

Schlagwörter:, , , ,

5 Punkte für bessere Präsentationen

30. März 2015 Kommentare aus

Präsentationen und Vorträge vorzubereiten bedeutet meist viel Arbeit. Während Tagen wenn nicht gar Wochen wird an der Vorbereitung intensiv gearbeitet und oft braucht es viel Überwindung um vor das Publikum zu treten. Ich finde es immer schade wenn diese viele Arbeit am Ende in einer Präsentation resultiert, die wegen Kleinigkeiten hinter ihren Möglichkeiten zurückbleibt.

Da mir oft die immer gleichen Punkte auffallen, möchte ich heute einige kleine Anpassungen zur Verbesserung zeigen. Weitere Ideen sind als Kommentar sehr willkommen.

 

Keine Wand aus Text

Ein Foliensatz soll die wichtigsten Punkte der Präsentation aufnehmen. Während man über die richtige Balance zwischen Hintergrundinformationen und Stichworten debattieren kann, so sollte doch niemals eine Folie komplett mit Text gefüllt sein. Noch schlimmer ist nur noch diese Folie als Ganzes vorzulesen…

Ist tatsächlich so viel Text notwendig gibt es bessere Alternativen: Sei dies ein Handout, ein eigenständiges Dokument, ein oder mehrere Blogeinträge. Welche dieser Varianten besser geeignet ist hängt stark vom Publikum ab. Alle sind aber besser als die Wand aus Text, die einem entgegen der weit verbreiteten Ansicht auch im Nachhinein nicht hilft die gewünschten Informationen aufzufinden.

 

Lesbare Schriftgrösse

Mit der Wand aus Text geht meist auch eine sehr kleine Schrift einher. Da man viel zeigen will muss halt die Schrift entsprechend klein ausfallen. Die Folge davon sind Folien, die man ab der 2. Reihe nicht mehr lesen kann. Wozu wollte man aber nochmals so viel Text einfügen? Genau, damit das Publikum die wichtigen Informationen lesen kann…

Als einfache Grundregel für Schriftgrössen gilt aus meiner Sicht: Wenn die Schrift auf dem Bildschirm nicht zu gross wirkt ist sie auf der Leinwand viel zu klein. Daher sollte man ruhig 2 Schriftgrade höher einsteigen und je nach Raumgrösse sogar eine noch grössere Schrift wählen. Ein Technikcheck vor der Präsentation kann dann für die Feinabstimmung verwendet werden um auch der hintersten Reihe eine lesbare Folie zu bieten.

 

Lesbare Diagramme und Code

Was für den Text gilt muss auch für Diagramme und Code beachtet werden. Soll anhand eines Diagramms gezeigt werden wie sich gewisse Werte entwickeln, müssen diese vom Publikum auch gesehen werden können. Zu oft wird aber weder im Kontrast noch bei der Farbwahl oder der Liniendicke ans Publikum gedacht…

Düne Linien in Diagrammen lassen sich oft sehr einfach mit einer stärkeren Linie ersetzen. In Kombination mit klar unterscheidbaren Farben ist dies meist alles was nötig wäre. Bei Quellcode geht es sogar noch einfacher: Alles was man in Visual Studio machen muss ist die den Zoomfaktor auf 200% zu stellen oder das kleine Werkzeug ZoomIt verwenden.

 

Zeitraster einhalten

Nur die wenigsten Präsentationen sind so wichtig das man den ganzen Tag danach ausrichtet. Meist ist eine Präsentation nur ein Punkt von vielen der an diesem Tag erledigt werden soll. Ein pünktlicher Start und ein rechtzeitiges Ende der Präsentation sind daher unerlässlich.
Nichts ist mühsamer als ein Präsentator der seine Zeit massiv überzieht und sich in unwichtigen Details verliert. Dies führt nicht nur zu Verspätungen der nachfolgenden Termine sondern geht auch sehr schnell ins Geld…

Besser machen kann man dies in dem man seine Präsentation mit 5 Minuten weniger Zeit plant. So kann man auch auf einige Fragen eingehen und ist nicht bereits am überziehen. Eine Uhr oder ein Wecker hilft ebenfalls dabei die Zeit im Auge zu behalten, falls das gewählte Präsentationsprogramm dies nicht selber anbietet.

 

Live-Coding vermeiden

Auch wenn es einige Leute gibt die ohne weiteres vor Publikum fehlerfreien Code schreiben können, so trifft dies für die meisten Präsentatoren nicht zu. Es gibt wesentlich spannendere Möglichkeiten um eine Präsentation zu gestalten als mit einem vollen Saal Fehler zu suchen…

Code soll ruhig gezeigt werden. Gerade wenn es um Details geht sind Code-Beispiele sehr hilfreich. Allerdings genügt es meistens diese zu zeigen, ohne dafür den Code vor Publikum einzutippen. Will man schrittweise den Code für eine Anwendung ergänzen empfiehlt es sich Git zu verwenden und von einem Commit zum nächsten zu springen.

 

Fazit

Obwohl diese 5 Punkte sehr subjektiv sind können diese doch zu besseren Präsentationen führen. Damit ist zwar noch keine erfolgreiche Präsentation garantiert, doch kommt man so leicht in die Gruppe der angenehmeren Präsentationen.

Schlagwörter:,

Rückblick 2014

31. Dezember 2014 2 Kommentare

Die letzten Stunden dieses Jahres sind eine gute Gelegenheit um das Jahr 2014 noch einmal Revue passieren zu lassen. Ich konnte dieses Jahr viel erreichen und noch viel mehr reisen. Grund genug also um nach einer längeren Pause mal wieder einen Jahresrückblick zu schreiben.

 

Ein Jahr des Lernens

Durchs ganze Jahr hinweg zeigte sich immer wieder wie wichtig es ist die Grundlagen zu verstehen. Egal ob es sich ums Programmieren oder um die Projektleitung handelt, wenn man nicht weiss um was es geht verliert man sehr viel Zeit. Die 5 Bücher, die ich anfangs Jahr empfohlen habe, kann ich noch immer jedem Software-Entwickler wärmstens empfehlen. Trotz der schnelllebigen Zeit in der wir uns befinden werden die darin vermittelten Grundlagen auch in einigen Jahren noch von Bedeutung sein.

Deutlich schnelllebiger dürften die Technologien HTML 5 und JavaScript sein. Diese werden uns sicher noch einige Jahre beschäftigen, doch muss man sich bei der rasanten Entwicklung ständig auf dem Laufenden halten. In der ersten Jahreshälfte habe ich mich für die Zertifizierungen 70-480 (HTML5 & JavaScript) und 70-492 (Upgrade MCSD: Web Applications) sehr intensiv damit beschäftigt und trotz meiner langjährigen Erfahrung viel Neues gelernt. Die Code-Beispiele meiner Vorbereitung sind auf GitHub aufgeschaltet und beinhalten einige der neuen Funktionen von HTML 5 die man heutzutage kennen muss.

Git hat sich bei mir mittlerweile komplett durchgesetzt und wird von mir für alle meine privaten Projekte verwendet. Das Setup ist dank Tools wie GitHub for Windows sehr einfach und GitHub selber bietet zahlreiche praktische Funktionen. Die Contributions-Grafik von GitHub ist ein praktischer Hinweisgeber um jeden Tag ein wenig an seinem Code zu arbeiten. Selbst wenn man nicht viel Zeit hat kommt mit einem Commit pro Tag innerhalb eines Jahres doch einiges an Code zusammen:

GitHub_Contributions_2014

 
Der selbst erstellte Technologieradar hat mir beim Fokussieren auf einige ausgewählte Themen sehr geholfen. Durch das bewusste ignorieren gewisser Technologien hatte ich den nötigen Freiraum um mich gezielt mit einigen neuen Themen zu beschäftigen. Sowohl für Xanpan wie auch für strukturierte Logmeldungen hatte ich so genügend Zeit um mich intensiv genug einzuarbeiten um Ende Oktober 2 Präsentationen an der SoftShake zu halten.

Äusserst spannend war auch die diesjährige Norwegen Developer Conference (kurz NDC) in Oslo. Scott Hanselman live zu sehen war ein Höhepunkt der Konferenz. Da viele bekannte Namen vom letzten Jahr fehlten gab es viel Platz für neue Entdeckungen. Die Präsentationen von Venkat Subramaniam, Denise Jacobs, Aral Balkan und Roy Osherove haben diese Lücke mehr als nur gefüllt und sind Grund genug auch 2015 den Weg nach Oslo anzutreten.

 

Ans Nordkap und zurück

Unvergesslich ist auch meine Reise ans Nordkap. Da ich für die NDC schon in Oslo sein würde wollte ich dieses Jahr meine Sommerferien in Skandinavien verbringen. Südnorwegen hat mir letztes Jahr sehr gefallen und nun war der nächste Schritt bis ganz in den Norden zu fahren. Auf der Karte sieht dies sehr einfach aus, doch gibt es da einen kleinen Hacken: Das Projektionssystem stimmt zwar in unseren Breitengraden, aber in Norwegen ist die Abweichung doch beträchtlich.

Was auf der Karte nach einer direkten Verbindung aussieht resultiert in der Realität schnell mal in einem Umweg von 1‘000km für die Strecke Oslo-Nordkap. Daher bin ich durch Schweden und Finnland zum Nordkap gefahren und durch Norwegen wieder in den Süden. Ab Oslo wurde es in der Nacht nur noch kurz dunkel und sobald man über dem Polarkreis ist blieb es auch in der Nacht taghell. Die Mitternachtssonne zu beschreiben ist sehr schwer und um dieses Phänomen richtig zu verstehen muss man es schon erlebt haben.

Skandinavien_2014_16_Nordkapp_019 Skandinavien_2014_16_Nordkapp_017 Skandinavien_2014_26_E6_014 Skandinavien_2014_28_AtlanticOceanRoad_012 Skandinavien_2014_02_Malmoe_004 Skandinavien_2014_05_Vikingskipshuset_003

 

Irland, Schottland und England

An 2 verlängerten Wochenenden ging es dieses Jahr nach Irland. Meine Kamera (eine Canon EOS 6D) war auch hier immer dabei und hielt einige sehr schöne Landschaften fest. Im Frühling besuchte ich mit einigen Kollegen die Cliffs of Moher und den Ring of Kerry , während es im November nach Nordirland ging.

Irland_2014_Maerz_02_RingOfKerry_019 Irland_2014_Maerz_02_RingOfKerry_059
Irland_2014_Maerz_02_RingOfKerry_081 Irland_2014_Maerz_04_ClifsOfMoher_005
Irland_2014_Nov_12_Co_Galway_029 Irland_2014_Nov_12_Co_Galway_016

 

Da ich vor mehr als einem Jahr Tickets fürs Edinburgh Military Tattoo bekommen konnte war ich anfangs August für 2 Tage in Edinburgh. Um nicht nur für 2 Tage so weit zu reisen hängte ich noch eine Woche in London an. Seit meinem letzten Besuch waren 7 Jahr vergangen und ich freute ich darauf mal wieder in den riesigen Parks zu spazieren. Die Parks sind noch da und mit dem Queen Elizabeth Olympic Park kam ein weiterer dazu. Was sich hingegen komplett verändert hat ist die Skyline. Mit all den neuen Hochhäusern erkennt man London kaum wieder.

London_2014_02_MilitaryTattoo_014 London_2014_05_LondonBridge_003
London_2014_06_ViewFromTheShard_003London_2014_06_ViewFromTheShard_006

 

Tolles Team

Auch beruflich lief dieses Jahr sehr gut. Ein grosses Projekt das mich fast 2 Jahre beschäftigt hat konnte pünktlich und innerhalb des Budgets abgeschlossen werden. All dies war nur möglich da ich mich auf unser Team verlassen konnte und wir auch zeitkritische Arbeiten schnell und in sehr hoher Qualität erledigen konnten.
Ohne unsere externen Partner und deren Fachwissen wären wir allerdings nicht weit gekommen. Es war daher eine tolle Erfahrung die zeigte, dass auch grosse Projekte pünktlich sein können.

 

Ausblick auf 2015

Das nächste Jahr wird ebenfalls sehr spannend. Mit einem neuen Entwickler im Team haben wir die Möglichkeit mehr und grössere Projekte selber zu entwickeln. Dies wird in zahlreichen Herausforderungen münden, die wiederum genügen Chancen fürs Lernen und bloggen bieten werden.

 
Ich wünsche allen Lesern viel Glück und Erfolg im 2015!

 

Schlagwörter:,

Kurz-Tipp: Responsive Design einfach testen mit Window Resizer

21. Oktober 2014 1 Kommentar

Wer heutzutage Webapplikationen erstellt wird kaum um das Thema Responsive Design herum kommen. Dabei geht es um die Anpassungsfähigkeit einer Webseite an verschiedene Bildschirmgrössen. Schliesslich soll die Anwendung nicht nur auf dem Laptop bedienbar sein sondern auch auf dem Smartphone zum Verweilen einladen.

Die technische Seite wird durch Frameworks wie Bootstrap gut abgedeckt und dürfte den meisten Entwicklern bekannt sein. Wenn es allerdings ums Testen der einzelnen Auflösungen geht stutzt man das Browserfenster meist von Hand zurecht. Dies mag zwar ein gangbarer Weg sein, doch ist dies mühsam und ungenau.

Viel einfacher und schneller ist es eine entsprechende Erweiterung für den Browser zu installieren. Davon gibt es für jeden Browser mehr als genug, doch kaum eine kommt an Window Resizer von Ionut Botizan für Chrome heran. Diese Erweiterung ist auf genau einen Zweck optimiert und lässt einem die voreingestellten Fenstergrössen um beliebige eigene Formate erweitern.

Window Resizer

Für mich gibt aber eine Tastenkombination den Ausschlag Window Resizer zu verwenden: Mittels [Strg] + [Umschalt] + [Abwärtspfeil] lässt sich sehr schnell durch die einzelnen Fenstergrössen durchschalten. Dies ist sehr praktisch wenn man nicht nur wissen will ob eine bestimmte Grösse funktioniert sondern ob alles noch wie gewünscht aussieht.

Hat man sich einmal an die damit gewonnene Flexibilität gewöhnt will man so eine Erweiterung nicht mehr missen.

Schlagwörter:, ,

5 Jahre und 100‘000 Besucher später…

2. September 2014 Kommentare aus

Vor 5 Jahren startete dieses Blog mit dem Artikel “SVN: Commits auf Tags?“. Bis heute folgten 170 weitere Blogeinträge mit einer breiten Themenvielfalt die von grossen Reisen über das Entsperren von Assemblies bis zu .Net Zertifizierungen reicht. Dieser Mix stösst noch immer auf ein reges Interesse und brachte vor einigen Tagen den 100‘000. Besucher auf dieses Seite – sofern die Statistik von WordPress halbwegs korrekt zählen kann.

Grund genug also um diese Jahresmarke mit einem eigenen Eintrag zu würdigen. Zudem ist es eine gute Gelegenheit um einmal auf das erreichte zurückzublicken. In diesen 5 Jahren konnte ich unglaublich viel lernen und mein Blog hat mir geholfen dieses Wissen so aufzubereiten, dass es nicht in kurzer Zeit wieder verloren geht. Und gehen die Details nach all der Zeit doch ein wenig vergessen hilft mir dieses Blog als Nachschlagewerk. Gemäss den Rückmeldungen die ich regelmässig erhalte geht dies nicht nur mir so. Es freut mich wenn auch andere vom hier gesammelten Wissen profitieren können. Denn Wissen ist ja bekanntlich das einzige Gut das sich vermehrt wenn man es teilt.

 

Die 10 beliebtesten Blogeinträge

Auch wenn ich immer versuche etwas Hilfreiches aufzuschreiben, so kann ich kaum je abschätzen welche Einträge ihr Publikum finden. Je nach Jahreszeit verschiebt sich die Nachfrage nach gewissen Themen, doch meistens ist die kleine Erklärung zum einlesen eines Strings über die Kommandozeile ganz weit vorne dabei. Dieser Ausflug ins Java-Land erschien im Januar 2011 und ist auch heute noch sehr beliebt.

Die Top-10 Beiträge gemessen an den Einblendungen sind:

  1. Java: String von der Kommandozeile lesen (mit java.util.Scanner)
  2. Kurz-Tipp: Strecken messen in OpenStreetMap
  3. Kopieren eines Subversion Repository
  4. Stolperfallen bei der Installation von SharePoint 2013
  5. Erste Schritte mit AngularJS
  6. svn export – oder wie man die .svn Verzeichnisse los wird
  7. CSS leicht gemacht mit Bootstrap
  8. Von Subversion zu Git migrieren
  9. SWT: GUI bei langen Aktionen nicht einfrieren lassen
  10. RavenDB: Eine Einführung

 

Englischsprachiger Ableger

Seit einem Jahr schreibe ich zudem in meinem englischsprachige Blog Improve & Repeat. Die zahlreichen Kontakte der letztjährigen NDC haben mich motiviert mein Englisch zu verbessern und regelmässig ein wenig tiefgreifender über Technologien und Konzepte zu schreiben. Die 26 Blogbeiträge die dort im ersten Jahr erschienen sind haben knapp 18‘000 Leser auf die Seite gebracht. Damit ist der Start mehr als geglückt und motiviert mich dort auch weiterhin sehr aktiv fortzufahren.

 

Wie geht es weiter?

Auch wenn ich mich in den nächsten Monaten vermehrt auf Improve & Repeat konzentrieren werde, so bedeutet dies nicht das Ende meines deutschsprachigen Blogs. Ich habe noch zahlreiche Ideen die hier besser aufgehoben sind. Allerdings könnten die Abstände zwischen den einzelnen Einträgen hier grösser werden. Wer nichts verpassen will sollte daher unbedingt den RSS-Feed abonnieren.

Schlagwörter:,

Praktische Helfer rund um AngularJS

26. August 2014 Kommentare aus

Wenn man sich ein wenig tiefer mit AngularJS beschäftigt stösst man bald einmal an eine steile Lernkurve. Was mit einfachem Data Binding angefangen hat wird plötzlich sehr kompliziert – vor allem wenn es an Direktiven geht. Mit den richtigen Helfern lässt sich allerdings viel vereinfachen. Einige dieser praktischen Werkzeuge und Pakete möchte ich heute vorstellen.

 

Batarang

Eines der häufigsten Probleme auf die ich treffe sind fehlende Daten. Objekte sind nicht dort wo ich sie erwarte oder Listen enthalten nicht die gewünschten Elemente. Aus einer kleinen Änderung wird so schnell eine endlose Suche nach dem Grund eines fehlgeschlagenen Data Bindings.

Batarang ist eine Erweiterung von Chrome und kann nicht nur als Profiler und Debugger verwendet werden, sondern auch zum anzeigen des Scopes. Dies vereinfacht die Suche nach den richtigen Objekten ungemein. Die Handhabung für die einfachen Aufgaben hat man sehr schnell im Griff, für alle anderen Möglichkeiten empfiehlt sich ein Blick in die Anleitung.

Batarang

 

Mehrere Browser zusammen verwenden

Als erstaunlich hilfreich hat sich für mich die Verwendung mehrerer verschiedener Browser erwiesen. Die Fehlermeldungen im Internet Explorer sind gelegentlich besser als die im Firefox, während dieser hin und wieder bessere Meldungen erzeugt als Chrome. Und um es richtig spannend zu machen liefert dann Chrome wiederum die besseren Meldungen als der Internet Explorer.

Kurzum: Um bei einem Problem die bestmögliche Unterstützung durch die Tools für Webentwickler zu bekommen muss man alle 3 Browser installiert haben. So kann man im Fehlerfall zwischen den Browsern hin und her wechseln bis man die Ursache des Problems angezeigt bekommt.

 

Plunker

Hin und wieder genügt der Debugger nicht und es führt nichts an einem 2. Paar Augen vorbei. Um ein Minimalbeispiel ohne grossen Aufwand zugänglich zu machen hat sich für mich der Service von Plunker (Plnkr.co) als äusserst hilfreich erwiesen.

Neben der Community-Funktion gibt es vor allem einen guten Editor der einem die aktuellsten Pakete von AngularJS, Bootstrap und vielen mehr einfach integrieren lässt. So kann man sehr schnell eingrenzen ob das Problem an der eigenen Installation liegt oder ob auch auf einem funktionierenden System die gleichen Probleme bestehen.

Plunker

 

ngMock

AngularJS hat ein eigenes Mocking-Framework. Gerade wenn man Webservices nutzt die nicht unter der eigenen Kontrolle stehen oder man auf eine aufwändige lokale Installation verzichten will ist ngMock eine gute Hilfe. Damit ersetz man zwar keine durchgängigen Tests, aber man kann Probleme eingrenzen die im eigenen Code liegen.

 

ngAnimate

Um den Wechsel zwischen den einzelnen Masken und Seiten ein wenig spannender zu gestalten kann einem ngAnimate viel Arbeit abnehmen. Die entsprechenden Hooks können direkt im Code mit der gewünschten Animation verknüpft werden, was einem sehr viel Tipparbeit erspart.

 

Animate.css

Wer wie ich nicht gerne CSS-Animationen von Hand schreibt sollte unbedingt die vorgefertigten Skripte von Animate.css ausprobieren. In diese Animationen wurde sehr viel Arbeit gesteckt um einen möglichst angenehmen Bewegungseffekt zu erzielen. Um darauf aufzubauen genügt es die entsprechende CSS-Datei einzubinden und an der passenden Stelle aufzurufen.

 

Jasmine

Das JavaScript-Testframework Jasmine hatte ich hier schon kurz beschrieben. Je mehr man mit AngularJS macht desto wichtiger wird es automatisch die bestehende Funktionalität zu überprüfen. Jasmine hat sich diesbezüglich bei mir bewährt und ich kann dieses Framework nur empfehlen.

 

Fazit

Mit den richtigen Werkzeugen kann man auch bei AngularJS viel Zeit und Frust einsparen. Da diese alle kostenlos zur Verfügung stehen gibt es keinen Grund nicht einmal einen Blick auf das eine oder andere Tool zu werfen.

Wie immer freue ich mich über weitere Vorschläge um meine Arbeit noch ein wenig einfacher zu gestalten.

Schlagwörter:, ,
Folgen

Erhalte jeden neuen Beitrag in deinen Posteingang.

Schließe dich 329 Followern an