Artikel in Fachzeitschriften
Mehr oder weniger regelmäßig greife ich in diversen Fachzeitschriften
Themen zu allen Aspekten der Softwareentwicklung auf. Neben modernen Techniken, Tools und Konzepten
zur effizienten Produktion qualitativ hochwertiger, skalierbarer, verteilter Anwendungen schreibe
ich über kreative, interessante FOSS-Lösungen. Aber auch die dunkle, faszinierende Ecke exotischer
Betriebssystem-APIs bietet immer wieder überraschende Einsichten.
Wo | Ausgabe | Seite | Titel | Thema |
---|---|---|---|---|
wdev | 6/18 | 114 | Microservices in der Cloud via Kubernetes | Teil 4: Der Pizzaservice läuft unter Microsoft Azure, der Google Computing Engine und On-Premise |
wdev | 5/18 | 102 | Kubernetes Minikube | Teil 3: Erste Schritte inKubernetes: Minikube als Hosentaschen-Cluster für die Entwicklermaschine |
wdev | 4/18 | 106 | Docker Composer und Swarm Mode | Teil 2: Docker Compose und der Docker Swarm Mode |
wdev | 3/18 | 104 | Arbeiten mit Microservices | Teil 1: Crashkurs Grundlagen und Einsatz von Docker am Beispiel "Pizzeria" |
wdev | 10/17 | 100 | Moderne Konzepte für Microservices | Protobuf/gRPC vs. Apache Thrift vs. REST vs. SOAP |
wdev | 7/17 | 26 | Sicherheit mit Köpfchen | Sicherheitsfördernde HTTP-Header: Same Origin Policy, Content Security Policy (CSP), CORS, CSRF und weitere |
wdev | 4/17 | 98 | NoSQL-Datenmodelle für Relationaldenker | Umbau eines RDBMS-Modells am Beispiel von Apache Cassandra |
wdev | 2/17 | 128 | Microsoft Cognitive Services | Überblick und Praxis |
wdev | 12/16 | 122 | Entwicklung, die begeistert | Um dauerhaft erfolgreich zu sein, bedarf es weitaus mehr als bloßer Technologie |
wdev | 10/16 | 54 | Lokal oder in der Cloud | Skalierende Anwendungen mit Microsoft Orleans |
wdev | 9/16 | 122 | Statusdaten im Blick | Wie ist der Stand der Dinge in Sachen Zustandsverwaltung? |
wdev | 5/16 | 116 | ClearScript und C# | Scripting auf Anwendungsebene -- Szenarien, Use-Cases, Tips und Tricks |
wdev | 2/16 | 90 | In-memory-Datenbank Redis | Redis als skalierendes Multitalent für viele Einsatzfälle, Beispielcode auf GitHub |
wdev | 10/15 | 32 | Tausendsassa Sass | CSS-Präprozessoren verleihen Superkräfte :-) und steigern die Produktivität |
wdev | 7/15 | 102 | You know, for search | Das Elasticsearch Project |
wdev | 6/15 | 18 | Graphdatenbanken im Vergleich | Vergleich von 9 Graphdatenbanken, spezieller Fokus auf Einbindung in C# |
wdev | 4/15 | 96 | Logiles auswerten und visualisieren | ... mit dem ELK-Stack (ElasticSearch, Logstash, Kibana) |
wdev | 2/15 | 52 | Haxe Makros, Magic, Metadaten | There's a macro for that! Wenn es ein Killerfeature in Haxe gibt, sind das zweifellos Makros |
wdev | 1/15 | 56 | GUI-Komponenten-Bibliotheken für Haxe | Gestaltung grafischer Oberflächen mit UI Widgets in Haxe |
wdev | 10/14 | 14 | Multitalent Haxe | Moderne Multiplattform-Entwicklung für Desktop, Web und Mobile mit dem Haxe Toolkit |
wdev | 9/14 | 126 | Aktueller denn je | Die 8+3 Fallacies of networking and distributed computing |
wdev | 8/14 | 104 | Zähmung der Widerspenstigen | Ordnung schaffen im Service-Zoo mit Apache ZooKeeper |
entw | 4.14 | 81 | Durch die Bloome gesucht | Datenzugriffe mittels Bloom-Filter beschleunigen |
wdev | 5/14 | 116 | Serviceorientierte Architektur | Workshop zum Umbau einer Multithread-Anwendung in eine SOA via Rebus |
wdev | 3/14 | 84 | Sie haben Post | Message-Queueing Systeme (MQ) im Vergleich - ApacheMQ, RabbitMQ und ØMQ |
ecli | 2.14 | 10 | Rezension | The programmer's guide to Apache Thrift von Randy Abernethy |
wdev | 1/14 | 84 | Ausgefeiltes Caching | Caching als Performanceboost - MemCached, Redis und AppFabric im Test |
ecli | 1.14 | 11 | Rezension | Implementing Domain-Specific Languages with Xtext and Xtend von Lorenzo Bettini |
wdev | 11/13 | 116 | Apache Thrift | Überblick über das Apache Thrift Release 0.9.1 (Go 1.1, Graphviz, Multiplexer, etc.) |
wdev | 10/13 | 96 | Happy Birthday, Paxos! | Vor ziemlich genau 15 Jahren veröffentlichte Leslie Lamport "The Part-Time Parliament" - (Anmerkung) |
wdev | 5/13 | 116 | Modellbasierte Entwicklung, Zugriff auf Compiler-Interna | Der lange Weg zu konzeptorientierter und intentionaler Entwicklung (Teil 3) |
wdev | 4/13 | 118 | Konzepte und Metasprachen | Der lange Weg zu konzeptorientierter und intentionaler Entwicklung (Teil 2) |
wdev | 3/13 | 116 | Handarbeit seit 1842 | Der lange Weg zu konzeptorientierter und intentionaler Entwicklung (Teil 1) |
ecli | 3/13 | 70 | Die Effizienzmaschine | Codegenerierung für jeden Anwendungsfall mit Xtext 2.3 |
entw | 2/13 | 28 | Die Effizienzmaschine | Codegenerierung für jeden Anwendungsfall mit Xtext 2.3 |
wdev | 1/13 | 102 | Semaphore | Synchronisation mit Semaphoren, verschiedene Einsatzszenarien, Vor- und Nachteile |
entw | 6.12 | 54 | Kommunikations-Contest | Vier Kommunikationsframeworks für serviceorientierte Architekturen im direkten Vergleich |
wdev | 5/12 | 76 | Apache Cassandra (Teil 2) | Wir bauen einen Cassandra-Cluster auf und recherchieren in mehreren hunderttausend Datensätzen. |
wdev | 4/12 | 76 | Apache Cassandra (Teil 1) | Grundlagen und Einsatz der NoSQL-Datenbank Apache Cassandra - (Anmerkung) |
entw | 2.12 | 21 | Mit dem Coprozessor auf Du und Du | Nützliches Basiswissen zur Floating Point Unit für Delphi-Entwickler (Anmerkung) |
wdev | 1/12 | 86 | Effiziente Komponenten-Architekturen | Sprachen und Plattformen via Apache Thrift miteinander verbinden |
wdev | 11/11 | 102 | RAM optimal nutzen | RAM-Optimierung mit 4GB-Tuning, PAE und der Adress Windowing Extension (AWE) (Code zum Artikel auf web-developer.de) |
wdev | 10/11 | 96 | Delphi Drag-and-Drop (Teil 2) | Asynchrones Drag-and-Drop mit IAsyncOperation |
wdev | 9/11 | 24 | Delphi Drag-and-Drop (Teil 1) | Varianten der Implementierung von Drag-and-Drop in Delphi-Anwendungen (Code zum Artikel auf web-developer.de) |
tbx | 1'11 | 52 | Datenbank-Alternative frei Haus | Mit ESENT steht unter Windows eine ACID-konforme Datenbank zu Verfügung, das Projekt PascalESE macht sie mit Delphi nutzbar |
tbx | 6'10 | 52 | Bis zum Äußersten | Effiziente Datenstrukturen mit Pascal |
tbx | 5'10 | 38 | Authentifizierung mit Pascal | Authentifizierung, Zugriffsschutz und Zugriffssteuerung spielen in modernen Anwendungen eine wichtige Rolle |
tbx | 3'10 | 8 | Schlank, synchron, in guter Kondition | Neue Synchronisationsobjekte (Condition Variables und SlimReader/Writer-Locks) unter Vista und Windows 7 |
tbx | 2'10 | 20 | Kein Grund zur Panik | Professionelle Fehlersuche und -prävention |
tbx | 1'10 | 18 | Totgesagte leben länger | Application Recovery and Restart mit Delphi |
tbx | 6'09 | 88 | Verriegelt und verzahnt | Interna und Erweiterung der Interlocked-Funktionsgruppe |
tbx | 5'09 | 24 | Poolparty mit Äpfeln | Das Threadpool-API von Windows Vista |
tbx | 3'09 | 42 | Alte Bekannte im neuen Look | Delphi-Komponenten für die neuen Vista-Dateidialoge |
tbx | 2'09 | 64 | Gute Zeichen für Programmierer | Strings und Pufferüberschreitungen |
tbx | 1'09 | 24 | Geheimniskrämer | Programmierung und Einsatz des Data Protection API (DPAPI) |
tbx | 6'08 | 76 | Eingeschnappte Manager | Die Microsoft Management Console und Delphi |
tbx | 3'08 | 64 | Verzeichnisdienste | Delphi lernt LDAP |
tbx | 2'08 | 6 | Stop and Go | Das Windows-Taskplaner-API (incl. Version 2.0) |
tbx | 1'08 | 62 | Schlangenbändiger | Verteilte Anwendungen und die Microsoft Message Queues (MSMQ) |
tbx | 5'07 | 6 | Programme am Haken | Einschleusen von Code in Binärdateien |
tbx | 4'07 | 6 | Setup-Programmierung für Eilige | Der Windows Installer und das WiX-Toolset |
tbx | 3'07 | 54 | Ordnung im Gerätelager | Device-Setup-API am praktischen Beispiel |
tbx | 3'07 | 18 | Power mit der Windows-Shell | Windows Powershell als Tool für Entwickler |
tbx | 1'07 | 26 | Die Kunst der Parallelisierung | Technologie-Überblick Anwendungsparallelisierung |
tbx | 6'06 | 6 | Houston, bitte melden! | Named Pipes in der Praxis |
tbx | 4'06 | 16 | Reich an Ereignissen | Delphi und das Eventlog von Windows |
tbx | 3'06 | 56 | Von 0 auf 1.3.0 in 60 Minuten | Subversion als NT-Service einrichten, TortoiseSVN-Tips |
tbx | 2'06 | 34 | Ferngesteuert | Delphi, der Microsoft Scripting Host und JScript |
tbx | 1'06 | 12 | Häppchenweise | Microsoft Intelligent Background Transfer (BITS) |
tbx | 6'05 | 32 | Datenbanken und ADOX | Datenbank-Meta-Informationen mit ADOX manipulieren |
tbx | 4'05 | 56 | High Speed statt lahmer Ente | Effizienter Delphi-Code, Profiler AQtime im Einsatz |
tbx | 3'05 | 18 | Einsatz der Kammerjäger | Fehlersuche und -vermeidung nebst Debugging-Tips |
tbx | 2'05 | 56 | Um die Ecke gedacht | Schnellkurs C und C++ für Delphi-Programmierer |
tbx | 6'04 | 67 | Browser-Komplizen | Browser Helper Objects im Internet Explorer (IEShellex) |
tbx | 3'04 | 77 | Access denied | Windows-NT Zugriffsrechte programmieren |
tbx | 1'04 | 81 | Reingefallen! | Einige populäre Delphi-Fallstricke enttarnt |
tbx | 5'03 | 72 | Do you speak Delphi? | Mehrsprachige Anwendungen, Codepages, Schriften unter Windows |
tbx | 2'03 | 7 | Der abgebrochene Abbruch | Multithreading und Thread-Kommunikation, als [PDF] auf Toolbox-Seite |
tbx | 6'02 | 53 | Behind the (Inter)face | Grundlagen und Delphi-Tricks zu COM-Schnittstellen |
Legende
tbx = Toolbox Magazin (Toolbox-Verlag, seit 2010 Neue Mediengesellschaft Ulm)
wdev = web+mobile-developer (Neue Mediengesellschaft Ulm)
entw = Entwickler-Magazin (Software&Support-Media)
ecli = Eclipse Magazin (Software&Support-Media)
Anmerkungen
Mit dem Coprozessor auf Du und Du: Im hinteren Teil des Artikels hat sich ein subtiler Fehler eingeschlichen. Es ist dort die Rede vom Datentyp REAL, der nur zwecks Kompatibilität zu früheren Delphi-Versionen existiert. Diese Aussage ist so nur teilweise richtig, weil der Datentyp REAL abhängig vom Schalter $REALCOMPATIBILITY ON/OFF entweder auf Double oder auf Real48 abgebildet wird. Alle im Text gemachten Aussagen beziehen sich also streng genommen auf Real48. Nur bei $REALCOMPATIBILITY ON ist auch REAL selbst betroffen.
Apache Cassandra: Nicht nur Autoren machen Fehler, sondern auch anderen kann so etwas passieren. Im Heft wird als Autor des Artikels versehentlich Christian Bleske genannt, was aber inkorrekt ist (und mit der nächsten Ausgabe korrigiert wurde). Tatsächlich stammt der komplette zweiteilige Artikel von mir.
Paxos: Im Artikeltext ist die Rede von einem C#-Projekt, welches sich im Begleitmaterial befinden soll. Das Projekt hat es leider aus unerfindlichen Gründen nicht ganz bis auf die web+mobile-Webseite geschafft, existiert aber tatsächlich und kann gern bei mir zur persönlichen Verwendung angefordert werden. Witzigerweise und tatsächlich rein zufällig wurde im Sommer 2013 ein neuer Algorithmus namens RAFT vorgestellt, der nach den vorgelegten Daten zu urteilen besser verständlich ist als Paxos. Wie auch immer, auf jeden Fall ist RAFT sicherlich ebenfalls einen Blick wert. Und auch die Tatsache, daß Leslie Lamport im Jahre 2013 den wohlverdienten Turing Award erhielt, soll natürlich nicht unerwähnt bleiben.