Einblick in den ThoughtWorks Technology Radar Vol. 18

Gestern gab es einen sehr interessanten Einblick in den neuen Technology Radar Vol. 18 und dessen Entstehungsprozess bei ThoughtWorks. Dies geschah im Rahmen des DevOps Stuttgart Meetup. Wir waren diesmal zu Gast bei Bosch im neuen IT-Campus in Stuttgart-Feuerbach. Vorgestellt wurde der Radar von Erik Dörnenburg (Head of Technology Europe) sowie Kelsey Mok (Senior Consultant) von ThoughtWorks.

Mehr

Versionsverwaltung von Dokumenten mit Git

Die Versionsverwaltung für Codeartefakte ist aus der Softwareentwicklung nicht mehr wegzudenken. In den letzten Jahren hat sich hier unter anderem Git sehr stark etabliert. In dem Zuge stellt sich die Frage, ob Git auch für die Versionsverwaltung von Dokumenten verwendet werden kann? Meine Antwort darauf lautet ganz klar: JA! In diesem Beitrag stelle ich mein einfaches Setup für die effektive Versionsverwaltung von Dokumenten mit Git vor.

Mehr

DBeaver – Ein universeller SQL Client für Datenbanken

Bislang habe ich für die Administration von relationalen Datenbanken das jeweils empfohlene Standardwerkzeug verwendet, was aber oftmals kein Spaß war. An der Stelle erwähne ich nur den Oracle SQL Developer oder pgAdmin 3/4. Das kann doch eigentlich nicht der Ernst der etablierten Datenbankhersteller sein…
Ich jedenfalls bin mit diesen Werkzeugen nie wirklich gut zurechtgekommen. Vor allem störte mich, dass jedes Werkzeug ein unterschiedliches Verhalten sowie eigene Tastaturkürzel mit sich brachte. Also musste hierfür etwas anderes her: DBeaver!Mehr

Urlaubszeit: Abwesenheitsnotiz automatisch generieren

copyright_www.bildkistl.com-Fotolia.com_blog.jpg - Abwesenheitsnotiz

Die Erstellung einer Abwesenheitsnotiz für das Mailpostfach ist ein wichtiger Bestandteil auf dem Weg in den Urlaub. Oft wird diese noch kurz vor knapp zusammengeschrieben, und zack: schon kommt es zu Unstimmigkeiten beim Rückkehrdatum in der deutschen und englischen Variante. Das hinterlässt beim Kunden neben der Verwirrung über die eigentliche Rückkehr aus dem Urlaub auch den Eindruck, dass schlampig gearbeitet wird.

Mehr

Datentypen und Objekte in JavaScript

In JavaScript gibt es einfache Datentypen wie Zahlen, Strings, Boolesche Werte sowie null und undefined. Alle anderen Werte sind Objekte: also beispielsweise Arrays, Funktionen, reguläre Ausdrücke und natürlich Objekte sind Objekte. Ein Objekt kann man sich als Container vorstellen, welcher Eigenschaften besitzt. Eine Eigenschaft besteht aus einem Namen und einem Wert. Der Name kann ein beliebiger String sein. Der Eigenschaftswert hingegen kann jeder JavaScript-Wert außer undefined sein. Ein Objekt ist in JavaScript klassenfrei. Objekte sind sehr nützlich um Daten zu sammeln und zu organisieren. Zudem können Objekte wiederum Objekte beinhalten. Daher können sehr leicht hierarchiesche Strukturen wie etwa Bäume oder Graphen abgebildet werden.

Definition und Verwendung von Objekten

Eine mögliche und vor allem sehr praktische Notation zum Aufbau von neuen Objekten stellen die Objektliterale. Sie kommen beispielsweise auch bei dem JSON-Format zum Einsatz. Ein Objektliteral kann wie folgt definiert werden:

Mehr

Das Beste an JavaScript

Das Beste an JavaScriptDas Beste an Javascript – Hinter diesem Titel verbirgt sich eine kompakte Lektüre, welche im Bücherregal eines JavaScript-Entwicklers nicht fehlen sollte. Hierbei handelt es sich um eine deutsche Übersetzung des Originals „JavaScript: The Good Parts“ von Douglas Crockford. Ja genau, der Douglas Crockford! Er ist Senior JavaScript-Architect bei Yahoo! sowie der Entwickler des JSON-Formats. Insgesamt gilt er in der Fachwelt als Autorität und ist deshalb häufig auf Konferenzen zugegen.

Mehr

Passwortgenerierung einmal anders

Im Computer- und Internetalltag ist die Authentifizierung nicht mehr wegzudenken. Das Betriebssystem, das Email-Postfach, das Intranet, die unzähligen Webdienste, und und und: Alle fordern die Eingabe eines Passwortes von dem Anwender. Aus Sicherheitsgründen sollte natürlich nicht für all diese Dienste und Anwendungen das identische Passwort verwendet werden. Ebenso sollte das Passwort nicht gerade der Vorname des Partners, der Kinder, des Hundes oder sonstigen leicht abzuleitenden Objekten aus dem persönlichen Umfeld verkörpern.

Will also heißen, dass man sich nicht triviale Passwörter kreieren soll. Ein möglicher Ansatzpunkt stellt die Verwendung von Passwortgeneratoren, welche eine zufällige Kombination an Zeichen gemäß vorgegebener Regeln erstellt. Das Endergebnis ist zwar ein gutes Passwort, allerdings besteht hierbei aber auch die Gefahr, dass der Anwender das Passwort schnell vergessen kann. Vor allem wenn man es nicht so häufig verwendet. Insgesamt ist es zwar ein praktikabler Weg, setzt allerdings die gute Merkfähigkeit des Anwenders voraus.

Mehr

Ext JS: Wie erweitere ich die Basis?

Ext JS LogoExt JS ist ein sehr umfangreiches und vor allem profesionelles clientseitiges JavaScript Framework zur Erstellung von ultramodernen Webapplikationen. Im Grundumfang sind bereits etliche Fensterelemente wie etwa Tabellen, Baumstrukturen, Tab-basierte Fenster oder Layouts enthalten. Die Umsetzung erfolgt dabei im Wesentlichen in objektorientierter Manier.

Eigene Namespaces definieren

Letzteres erlaubt in dem Zusammenhang vor allem das Erstellen von sauber strukturiertem Code. So lässt sich beispielsweise ein eigener Namespace deklarieren sowie die bestehende Funktionalität der Ext-Basisklasse auf schöne Art und Weise erweitern. Die Erstellung eines eigenen Namespaces kann bequem über eine Basisfunktion von Ext erfolgen:

Mehr

Zeigt her eure Desktops!

Screenshot AJAX Remote Desktop ViewerEin Bild sagt mehr als tausend Worte! Dieses Sprichwort trifft in vielen Fällen den Nagel auf den Kopf. Vor allem dann, wenn man von Freunden oder Bekannten gefragt wird, wie sich diese oder jene Funktion eines Programms oder des Betriebssystems aufrufen lässt. Häufig erfolgt dies natürlich telefonisch, so dass kein gemeinsamer Blick auf einen Rechner vorherrscht. Man erklärt dem Anwender etwas, doch er oder sie findet das Erklärte nicht immer. So führt diese Situation auf beiden Seiten sehr schnell zu entnervtem Verhalten.

Eine mögliche Abhilfe schafft der AJAX Remote Desktop Viewer von dem Australier Peter Damen. Dieses Tool wurde im Rahmen einer Machbarkeitsstudie (engl. Proof-of-concept) entwickelt. Mit Hilfe dessen lässt sich ein normaler Desktop-Client per AJAX und Browserzugriff verteilen. Auf „Serverseite“ wird das Java-basierte Programm gestartet. Dabei lassen sich optionale Parameter wie etwa die Auflösungsangaben oder aber der zu verwendende Netzwerkport angeben. Nun kann mit dem Browser eines anderen Rechners per HTTP auf den Netzwerkport zugegriffen werden. Bei dem Zugriff wird dann der Inhalt des Serverdesktops vollständig angezeigt. Bei meinen Tests funktionierte die Anwendung sowohl unter Linux als auch unter Windows. Ich habe aber auch schon von erfolgreichen Erfahrungsberichten unter Mac OS gelesen.

Mehr

Synergy schafft Ordnung

„Der Kleingeist hält Ordnung, doch das Genie überblickt das Chaos!“ Mit diesen Worten möchte ich auf ein immer wiederkehrendes Szenario an immer mehr Schreibtischen hinleiten. Und zwar meine ich das Vorhandensein von mehreren Tastatur- und Mauskombinationen. Wer kennt das nicht: Kurzerhand mal noch schnell ein Laptop zum Testen einer Applikation unter der Referenzumgebung aufstellen. Doch sehr schnell geht einem der häufige Wechsel von der Tastatur des eigenen Rechners auf die Tastatur des Laptops auf die Nerven. Ähnlich sieht es aus beim Wechsel von Maus und Touchpad. Eine mögliche Lösung mag der Anschluß einer weiteren Tastatur bzw. Maus an das zusätzliche Gerät sein. Dies macht die Sache häufig aber nicht einfacher. Denn sicherlich kommt es auch hin und wieder vor, dass man verzweifelt mit der Maus des eigenen Rechners versucht den zweiten Rechner zu steuern. Will also heißen, dass auch das größte Genie mal den Überblick im Chaos verliert! ;-) Zudem veschenkt man mit dem mehrfachen Aufstellen von Maus und Tastatur wertvollen Platz am Schreibtisch.

Mehr