iX 6/2017
S. 6
Leserbriefe
Juni 2017

Leserbriefe

Zweifel an Nachhaltigkeit

(Webentwicklung: Modernes JavaScript; iX 5/2017, S. 48)

Das eingangs des Artikels erwähnte „Framework Fatigue“ und der Kommentar von Jens Oliver Meiert bringen es auf den Punkt: Die Wahl einer Bibliothek für ein größeres Webprojekt fällt auch deswegen so schwer, weil oft Zweifel an Nachhaltigkeit und Wartung eines Frameworks bestehen.

Was passiert, wenn der Enthusiasmus des Kernteams nachlässt? Wie schnell werden Sicherheitslücken behoben? Gibt es längerfristig kompetenten (auch kostenpflichtigen) Support für das Framework?

Daher sei an dieser Stelle UI5 von SAP erwähnt, der (JavaScript-)Motor unter der UI-Karosserie des Konzerns. Alle modernen Weboberflächen und hybriden Mobile Apps der SAP werden damit erstellt. Somit strategisch gesetzt, wird UI5 auf absehbare Zeit bleiben und weiterentwickelt werden. Oben erwähnte Bedenken fallen daher weg. Und: Es ist Open Source.

Volker Buzek, via E-Mail

Überraschende Aussagen

(Webentwicklung: Modernes JavaScript; iX 5/2017, S. 48)

Einige Aussagen sind ziemlich überraschend. Man neigt immer dazu, die Programmierungskonzepte als brandneu zu erklären. Bei den Patterns stimmt es ja, aber die anderen existieren seit Jahrzehnten.

Klassen: In Simula 67, also 1967, eingeführt; durch Smalltalk verbreitet. C++ war auch schon in den 90ern vorhanden, zusammen mit anderen OO-Sprachen wie Modula-3. Das X11-Toolkit war als OO in C mit struct und Pointers implementiert.

Module: Seit Modula-2 wohlbekannt. Ada verbreitete das Konzept noch mehr.

Functional Programming ist seit Lisp bestens bekannt. XSLT ist ja auch funktional. Funktionsreferenzen waren das A und O in C.

Das Problem von JavaScript ist eben sein ursprüngliches Ziel: eine leichtgewichtige Sprache für Netscape Navigator. Nicht mehr. Darum haben viele Enterprise-Entwickler Bedenken. Die Sprache hat uralte Designfehler, welche aus Kompatibilitätsgründen nie korrigiert wurden. Ich finde Konzepte wie Prototype Inheritance genial einfach. Klar kann ich mit C, Python, Java und so weiter schlechten Code schreiben. Die Sprachen haben aber keine gravierenden Designfehler. Das Buch „JavaScript, The Good Part“ bei O’Reilly ist dabei ganz ehrlich; es bringt eine nicht kleine Liste davon: global variables, scope, automatic semicolumn insertion, reserved words, Unicode, typeof mit null, parseInt, „-+“-Operator, floating points, false values.

Es ist möglich, Enterprise-Apps in JavaScript zu schreiben. Aber es erfordert nebst fachlichem Know-how einen aufmerksamen Umgang mit der Sprache.

Die Programmiersprache ist für Software, was Schrauben und Nieten für Metallkonstruktion sind: Gute Qualität ist wesentlich. JavaScript ist daher doch nicht so leicht wie überall gepredigt.

Alexandre Maurer, Frauenfeld

Plattformübergreifend Passwörter managen

(Leserbrief: Plattformübergreifender Passwortmanager fehlt; iX 5/2017, S. 7)

Ich habe mir genau eine solche plattformübergreifende Lösung auf Basis von KeePass aufgebaut. Die Programme auf den verschiedenen Plattformen verwenden das gleiche Datenformat. Man kann also die Datei mit der Passwortdatenbank mit allen Programmen lesen und schreiben.

Windows: KeePass Password Safe. Es gibt zwei Schienen mit unterschiedlichen Datenbankformaten, Version 1.x und 2.x. Letzteres unterstützt einige zusätzliche Funktionen.

Linux: KeePassX, unterstützt beide Datenbankformate.

Android: KeePassDroid, unterstützt beide Datenbankformate.

iOS: Benutze ich nicht und kann daher nicht sagen, ob es hier ebenfalls eine App gibt, die das KeePass-Format unterstützt.

Die Anwendungen können bei Bedarf zufällige Passwörter generieren. Copy-and-Paste der Passwörter in Webseiten geht problemlos. Die Programme verwenden lokale Dateien als Datenbasis. Man muss sich nur noch ein System überlegen, wie man die Datei mit den Passwörtern auf alle Geräte synchronisiert.

Frank Morawietz, via E-Mail

Die Webadressen der genannten Produkte sind unter „Alle Links“ zu finden. Und: Laut der Website Caschys Blog unterstützt die iOS-App KeePass Touch das Keypass-Format (d. Red.).

RESTful-Alternative

(Web Application Framework; Webentwicklung mit Angular, Teil 1; iX 5/2017, S. 58)

Danke für den interessanten Artikel! Ganz neu waren für mich die asynchronen Aufrufe mit async+await. Die REST-API hätte ich nach RESTful-Prinzipien anders gestaltet:

Das Security-Token würde ich in einem Header übertragen. Damit bleiben die URLs der einzelnen Resourcen (Category, Task) gleich, auch wenn ein Benutzer sich neu einloggt.

Die Logout-Methode ändert den Server-State. Dafür ist POST vorgesehen. GET-Methoden sollten keine Seiteneffekte haben.

Eine URL pro Ressource, die für unterschiedliche Operationen (GET, PUT, DELETE, POST) wiederverwendet wird. Die Unterscheidung erfolgt rein durch die HTTP-Methode.

Beispiel:

POST /login

POST /logout

GET /categories -- liefert eine Liste

der Kategorien

POST /categories -- erstellt eine neue Kategorie

DELETE /categories/{id} -- löscht die Kategorie

GET /tasks?category={id} -- liefert alle

Tasks einer Kategorie

GET /tasks?text={text} -- liefert alle

Tasks mit einem bestimmten Text

POST /tasks -- erstellt einen Task

GET /tasks/{id} -- liefert alle Details

zu einem Task

PUT /tasks/{id} -- aktualisiert einen Task

DELETE /tasks/{id} -- löscht einen Task

Andreas Hubmer, via E-Mail

Stimmung getroffen

(Embedded Systems: 15. embedded world Exhibition&Conference 2017 in Nürnberg; iX 5/2017, S. 10)

Vielen Dank für diesen tollen Artikel. Ich war selbst da und kann sagen, Sie haben die Stimmung und viele wichtige Informationen und Randnotizen in einem sehr kurzen Artikel in sehr gelungener Weise untergebracht.

Thomas Hoppe, Stuttgart

Kein Datenschutzbewusstsein

(Cloud: Warum die Bahn zu AWS geht; iX 5/2017, S. 84)

Die Bahn sagt selbst, dass sie die Anwendungen nehmen, wie sie sind, und in die Cloud verschieben. Anpassungen erfolgen dann eher zwecks Kostenersparnis, sicherheitsrelevante Anpassungen fallen da nicht drunter. Und für vollverschlüsselte DBs wird erstens eine komplett andere Infrastruktur benötigt und zweitens erfordert es zumindest teilweise auch lokale Infrastruktur – die sie ja angeblich quasi komplett abschaffen wollen.

Dass man ausgerechnet so „unkritische“ Dinge wie das zentrale Mitarbeiterverzeichnis als „Spielprojekt“ in die Cloud überträgt, zeigt auch deutlich, wie groß ihr Datenschutzbewusstsein wirklich ist: Nämlich nicht vorhanden.

Michael Fritscher, via E-Mail

Augenwischerei

(Cloud: Warum die Bahn zu AWS geht; iX 5/2017, S. 84)

Zitat: „Bei der AWS-Cloud nutzen wir statt der vorhandenen Angebote eigene Security-Konzepte und eigene Verschlüsselung, auf die AWS keinen Zugriff hat.“

Wenn es darum geht, wirklich vollständig zu verhindern, dass AWS keinen Zugriff auf verschlüsselte Daten in der Cloud hat, dürften diese dort niemals entschlüsselt und verarbeitet werden. Alles andere ist Augenwischerei und unnötige Komplexität, da AWS durch die Kontrolle des Hypervisors im Fall der Fälle natürlich auch Zugriff auf das entsprechende Schlüsselmaterial im Hauptspeicher der dort laufenden Applikationen hat.

Sascha Matzke, Braunschweig

Die iX-Redaktion behält sich Kürzungen und auszugsweise Wiedergabe der Leserbriefe vor. Die abgedruckten Zuschriften geben ausschließlich die Meinung des Einsenders wieder, nicht die der Redaktion.

Der direkte Draht zu iX

Direktwahl zur Redaktion: 0511 5352-387

Redaktion iX | Postfach 61 04 07
30604 Hannover | Fax: 0511 5352-361
E-Mail: <user>@ix.de | Web: www.ix.de

Für E-Mail-Anfragen zu Artikeln, technischen Problemen, Produkten et cetera steht die Redaktion gern zur Verfügung.

<user>
 
post
Redaktion allgemein
ane
(Alexander Neumann)
avr
(André von Raison)
cle
(Carmen Lehmann)
fo
(Moritz Förster)
jab
(Dr. Jan Bundesmann)
jd
(Jürgen Diercks)
js
(Jürgen Seeger)
jul
(Julia Schmidt)
ka
(Kersten Auel)
mm
(Michael Mentzel)
odi
(Dr. Oliver Diedrich)
rme
(Rainald Menge-Sonnentag)
sun
(Susanne Nolte)
tiw
(Tilman Wittenhorst)
un
(Bert Ungerer)
ur
(Ute Roos)

Listing-Service:

Sämtliche in iX seit 1990 veröffentlichten Listings sind über den iX-FTP-Server erhältlich: ftp.heise.de/pub/ix/

www.ix.de/ixJJMMSSS Bei Artikeln mit diesem Hinweis können Sie auf www.ix.de das zugehörige Argument (ixJJMMSSS) eingeben, um eine klickbare Liste aller URLs zu bekommen.