Filter

iX 13/2019 spezial
Highlights Inhaltsverzeichnis Bewertungen Trends im Rechenzentrum Wo früher teure Spezialhardware ihren Dienst verrichtete, soll es jetzt Software-defined Anything richten. Server werden zu hoch standardisierten Wegwerf-VMs, Ceph und Co. verwandeln günstige Standardhardware in verteilten Software-defined Storage, SDN abstrahiert die Netzwerke von der Verkabelung und Container machen Dienste unabhängig vom Betriebssystem. Das öffnet Raum für umfassende Automatisierung – zumindest in der Theorie. (Seite 6) Moderne Softwareentwicklung Agiles Arbeiten und DevOps-Ansätze ersetzen in immer mehr Entwicklungsabteilungen umfangreiche Pflichtenhefte und die strikte Trennung zwischen Entwicklern und Admins. Das verändert auch die Art der Zusammenarbeit – und letztlich die Kultur im Unternehmen. Aktuelle technische Entwicklungen wie Functions as a Service, Microservices und KI eröffnen Entwicklern zudem neue Möglichkeiten. (Seite 66) (Rechts-)sichere IT In den letzten Jahren hat die Regulierung viele Bereiche der IT durchdrungen. Kein Wunder, macht doch die umfassende Vernetzung und das Anhäufen gigantischer Datenmengen gesetzliche Regeln immer nötiger. Ein wirksames IT-Recht und die Verfolgung von Kriminalität im Netz werden immer wichtiger – wie auch der Schutz vor Angreifern durch ein modernes Sicherheitskonzept. (Seite 90) Digitalisierung, Wirtschaft und Gesellschaft Die Digitalisierung, derzeit in aller Munde, verändert schon seit vielen Jahren nicht nur die Unternehmen, sondern auch die Gesellschaft. iX wirft einen Blick auf aktuelle Entwicklungen bei sozialen Netzen, Quantencomputing und Kryptowährungen und besucht deutsche KI-Start-ups. (Seite 118) Systeme und Netze 6 Rechenzentren Automation im RZ – Wunsch und Wirklichkeit 16 Speichernetze Von verteilten Systemen zum Pervasive Computing 22 Storage Objektspeicher und Software-defined Storage 28 Serverbetriebssysteme Vom Stecker zum Container 36 Server Zentral oder verteilt – Hauptsache, verfügbar 46 Edge und Fog Computing Datenverarbeitung im Schatten der Cloud 50 Softwarearchitektur Microservices in der Cloud 54 Ethernet Das Netz für alle Fälle 62 Industrie 4.0 Smart und vernetzt produzieren Softwareentwicklung 66 Cloud Serverless Computing verstehen und anwenden 70 Machine Learning KI: Durchbruch beim Textverstehen 76 Mobile Softwareentwicklung Wann sich Progressive Web Apps lohnen 82 DevOps Was bedeutet DevOps heute? 86 Agilität Agile Kooperation über Unternehmensgrenzen hinweg Sicherheit und IT-Recht 90 IT-Rechtsgeschichte Von neuen Gesetzen, Unsicherheiten und Fehlurteilen 98 Internetkriminalität Auf Streife im Netz 104 Innovationsfähigkeit IT-Sicherheit bringt Unternehmen voran 109 Verschlüsselung Post-Quanten-Kryptografie anschaulich erklärt Wirtschaft und Gesellschaft 118 Digitalisierung Meta-Digitalisierung – das große Zerreden ohne Tun 128 Quantencomputing Quantencomputer kurz vor der Marktreife? 132 Blockchain Lightning-Network: Blitzschnelle Bitcoins für den Alltag 138 Soziale Netze Wie Facebook und Co. die Gesellschaft verändern 144 Künstliche Intelligenz KI-Start-ups made in Germany 30 Jahre iX 150 Preisausschreiben Bilderrätsel zum Jubiläum 154 iX-Jubiläum 30 Jahre IT-Berichterstattung 160 IT-Historie Von den offenen Systemen zur Open Source Rubriken 3 Editorial 3 Inserentenverzeichnis 103 Impressum

12,90 €

iX 13/2020 Special - Moderne Programmiersprachen
Highlights Inhaltsverzeichnis Bewertungen C weitergedacht C ist die Wurzel zahlreicher moderner Programmiersprachen. Dazu gehören nicht nur die Weiterentwicklungen C++ und C#, sondern auch Newcomer wie Rust, D und Go. Sie orientieren sich an der C-Syntax, bieten aber viele Verbesserungen und zeitgemäße Features. (Seite 12) Alternativen für die JVM Seit über 20 Jahren belegt Java durchgängig Platz eins oder zwei im TIOBE-Ranking der populärsten Programmiersprachen.Allerdings lässt sich das Java-Ökosystem inzwischen auch mit anderen Sprachen nutzen: Kotlin glänzt mit kompakterer Syntax, Clojure bringt funktionale Programmierung auf die JVM. (Seite 46) Moderne Webentwicklung Der Browser wird zunehmend zur Plattform der Wahl für die Anwendungsentwicklung. Neben JavaScript-Alternativen wie TypeScript und ClojureScript macht derzeit WebAssembly als Format zum Ausführen von Binärcode im Browser von sich reden. (Seite 60) Funktionale Programmierung Funktionale Sprachen galten lange als theoretisch faszinierend, aber in der Praxis sperrig und umständlich. Doch in der neuen Welt der skalierbaren Anwendungen für verteilte Systeme liefert das funktionale Programmierparadigma einfache Lösungen für komplexe Probleme. (Seite 98) Wissenschaftliches Rechnen Im Bereich des wissenschaftlichen Rechnens versuchen spezialisierte Sprachen wie R und Julia der Datenflut Herr zu werden. Quantencomputer sind mittlerweilemehr als technische Spielereien und verschieben die Grenzen des Möglichen. (Seite 137) Programmiersprachen heute 6 Am Anfang war ... die Maschine 10 Sprachwelten C weitergedacht 12 Modernes Programmieren mit C++20 16 Rust: nicht nur für den Browser 20 Go für skalierbare und verteilte Systeme 26 D – die C-Alternative 30 Typsicherheit mit Swift 34 C# 8.0: Änderungen bei Schnittstellen und Compiler 38 Webanwendungen mit Blazor und C# Alternativen für die JVM 46 Java – die jüngsten Entwicklungen 50 Einstieg in Kotlin 56 Clojure: funktional programmieren auf der JVM Moderne Webentwicklung 60 Eine kurze Geschichte von ECMAScript 66 TypeScript: JavaScript mit Typsystem 72 ClojureScript: funktional im Browser 78 WebAssembly für mehr Performance 84 PHP: Programmiersprache fürs Web 88 Das JavaScript-Framework Svelte Funktionale Programmierung 98 Elm-Apps als Web Components 104 Elixir: pragmatisch und leicht zu erlernen 110 Funktionale Programmierung mit Haskell und Idris 118 Python: erste Wahl für Data Science und Machine Learning 126 Perl-Nachfolger: Raku verstehen und anwenden 132 F# in der Enterprise-Entwicklung Wissenschaftliches Rechnen 137 R: Statistikumgebung für Datenanalyst*innen 140 Sentimentanalyse mit R 146 Quantencomputer programmieren – ein Einstieg 152 Julia für die Datenanalyse Rubriken 3 Editorial: Probieren Sie doch mal was Neues! 118 Impressum, Inserentenverzeichnis

14,90 €

iX Developer - Moderne Softwareentwicklung
Highlights Inhalt Bewertungen Sprachen Entwickler haben bei der Auswahl an Programmiersprachen die Qual der Wahl. Von einfach bis komplex, von universell bis hochspezialisiert reicht das Spektrum. Für moderne verteilte Anwendungen sollten sie außerdem sicher, skalierbar und robust sein. ab Seite 7 Praxis Die Anforderungen zeitgemäßer Softwareentwicklung sind geprägt von Schlagwörtern wie DevSecOps, Microservices und GraphQL. Aber auch die stete Auseinandersetzung mit neuen Programmiersprachen sowie die Qualitätssicherung ihres Codes sollten Entwicklungsteams nicht aus den Augen verlieren. ab Seite 91 Cloud-native Mit Kubernetes, Service-Meshes und anderen hilfreichen Tools sind Entwickler auch im Cloud-nativen Zeitalter bestens gerüstet, um altbewährte Prinzipien der Continuous Delivery noch besser einzusetzen und sich von Chaos Engineering inspirieren zu lassen. ab Seite 49 Machine Learning Zur rasanten Entwicklung im Bereich Machine Learning trägt nicht nur das vollständig überarbeitete Framework TensorFlow 2 bei, auch im Browser laufen ML-Anwendungen bereits brauchbar. Auf dem Weg vom Prototyp zur Produktion hilft zudem das Austauschformat ONNX, während Datenschutzanforderungen neue Hürden aufbauen. ab Seite 135 Sprachen 8 Einstieg in Googles Programmiersprache Go 16 Programmieren in D 20 Rust - Sichere Programmiersprache für systemnahe und parallele Software 26 Verteilte Systeme: weniger warten, asynchron arbeiten 30 Webanwendungen sicher entwickeln und ohne Laufzeitfehler ausführen 40 End of Life für Python 2 44 Smalltalk: Mehr als eine Programmiersprache Cloud-native 50 Continuous Delivery – regelmäßige Releases, höhere Produktivität 54 Cloud-nativ entwickeln mit Kubernetes 58 Brauchen asynchrone Microservices und Self-Contained Systems ein Service-Mesh 72 Serverless Computing – Theorie und Praxis 80 FaaS auf Kubernetes betreiben 84 Grundlagen des Chaos Engineering Praxis 92 Refactoring: Interview mit Martin Fowler 94 DevSecOps – der nächste Hype nach DevOps und Containern? 104 Microservices mit Kotlin, Vert.x und OpenAPI 112 Eine GraphQL-Applikation mit Java umsetzen 123 Wie Wire von JavaScript zu TypeScript wechselte 126 Die vielfältigen und unbekannten Fähigkeiten von Git 132 Clean Code: Interview mit Uncle Bob Martin Machine Learning 136 TensorFlow 2: Aufgeräumte APIs und neue Namespaces 140 Machine Learning im Browser mit TensorFlow.js 146 Portabilität für Deep-Learning-Modelle mit ONNX 151 DSGVO für ML-Anwendungen Rubriken 3 Editorial 145 Impressum, Bildnachweise

12,90 €

iX Developer - Modernes C++
Detaillierter Inhalt folgt

14,90 €

iX Developer App-Entwicklung 03/2012
Highlights Inhaltsverzeichnis Inhalt DVD Editorial Errata Bewertungen Gelddruckmaschine iOS Apples iOS ist eine der Standardplattformen für App-Entwickler. Klar definierte Zielplattformen, ein stetig wachsendes Ökosystem und auf Seiten der Kunden die Bereitschaft, für Apps zu bezahlen, machen das System für Entwickler attraktiv. Zuletzt vorgestellte Erweiterungen wie das Automatic Reference Counting erleichtern die Softwareentwicklung und mit Tools wie der Xcode-IDE können App-Entwickler das iPad ebenso ansprechen wie iPhone und iPod touch. Durchstarter Android Googles Android ist der Durchstarter unter den neuen Mobile-Betriebssystemen und macht in Sachen Verbreitung inzwischen selbst Apple spürbar zu schaffen. Das schnelle Wachstum hat jedoch seinen Preis, vorneweg die oft zitierte Gerätefragmentierung. Google macht mit Android 4 striktere Vorgaben an Hard- und Software und bietet Tools, die Entwicklern eine Anpassung an die diversen Plattformen erleichtern. Zudem erlaubt Android Near Field Communication – eine Schlüsseltechnologie für mobile Bezahlsysteme. Außenseiter Windows Phone Microsoft setzt mit Windows Phone auf einen komplett neuen Ansatz auf Grundlage der Metro-Designprinzipien. Strikte Vorgaben an Hardware und Software erinnern dabei ein wenig an Apple. Gute Aussichten für die Zukunft bietet die Nähe zum kommenden Windows 8. Wer nicht so lange warten möchte, findet schon jetzt interessante Voraussetzungen für die App-Entwicklung. Zukunftssichere Cross-Plattform-Entwicklung Web-Apps sind der neue Trend in Sachen plattformübergreifender, mobiler Anwendungsentwicklung. Das Spektrum reicht von reinen Webanwendungen, über hybride Mischformen aus Web- und nativer App bis hin zu per Framework erzeugten „echten“ nativen Apps. Der Durchbruch geht auf die Entwicklung des kommenden Web-Standards HTML5 zurück. App-Entwicklung mit iOS Games Spieleentwicklung für das iPhone Programmiersprachen Einführung in Objective-C Security Sichere Datenübertragung mit Location-Based Services, Gesten und Verschlüsselung App-Security Sichere iOS-Entwicklung im Unternehmensumfeld Plattformübersicht iOS 5 und Xcode 4.3.1 für Entwickler Multimedia HTTP Live Streaming: Grundlagen und Einsatzmöglichkeiten Speicherverwaltung Memory Management in iOS Literatur Literaturübersicht zu iOS-Programmierbüchern Backend Serverseitige Infrastruktur für komplexe iOS-Apps App-Entwicklung mit Android Softwaremigration iOS-Apps auf Android portieren Performance-Tuning Performancekritische Applikationen in Android Drahtlose Datenübertragung Near Field Communication unter Android 4 Frameworks Schnelleinstieg in Qt: Warum Entwickler mit Nokias Framework nie danebengreifen App-Security Sicherheitsmechanismen für Android-Apps Plattformübersicht Neuerungen in Android 4 User Interface Schöne Benutzeroberflächen unter Android Literatur Bücher zu Android, Windows Phone und Web-Apps Entwickeln für Windows Phone 7 Mobile-API Die Windows-Phone-Standard-APIs im Überblick IDE Einstieg in Expression Blend und Visual Studio Datenpersistenz Isolated Storage unter Windows Phone 7 Design Metro UI Design in der Praxis: Neue Konzepte für die Interaktion zwischen App und Anwender Web-Apps – HTML5 und Co. Softwareentwicklung Best Practices für die Cross-Plattform-App-Entwicklung HTML5 Systemunabhängige Web-Apps mit HTML5, CSS 3 und JavaScript Cross-Plattform-Entwicklung Plattformunabhängige Web-Apps mit „The-M-Project“ App-Plattform Ein kleiner Überblick zu Appcelerator Titanium Cross-Platform mit .NET Mono-Apps für iOS, Android und Windows Phone Sonstiges Editorial Inserentenverzeichnis Impressum Pferdewetten, Leithammel und Platzhirsche Es klingt nach einer überschaubaren Ausgangslage: Nach viel Gerangel setzten sich neben Apple schließlich Microsoft (mit viel Geld und dem Zukauf von Nokia) sowie Google (mit noch mehr Geld und Kooperationen mit Samsung und Motorola) durch. Schnell hat sich gezeigt, dass der Teufel auch hier im Detail steckt. So verfolgen alle drei Systeme ganz eigene Designkonzepte, setzen eigene Programmiersprachen und Tools voraus und adressieren eine Vielzahl unterschiedlicher Hardwareumgebungen. Wer Pech hat, muss seine App jeweils noch auf verschiedene Betriebssystemversionen anpassen oder in Kauf nehmen, einen Teil seiner Kunden schlicht nicht bedienen zu können. Wirft man einen Blick auf die Zahlen, können iOS-Entwickler davon ausgehen, dass rund 70 Prozent ihrer Kunden bereits das aktuelle iOS 5.1 auf ihren Geräten installiert haben. Android-Entwickler haben es da schwerer – die derzeit aktuelle Version 4 (Ice Cream Sandwich) läuft auf gerade mal 5 Prozent aller Geräte, knapp 64 Prozent entfallen auf Android 2.3 (Gingerbread) und noch 21 Prozent laufen unter Android 2.2 (Froyo). Für Entwickler bedeutet das, dass sie genau abwägen müssen, auf welches System sie ihre Anwendungen anpassen wollen. Web-Apps versprechen eine leistungsstarke Alternative zu nativen Anwendungen, die zudem gleich das Problem mit der Plattformfragmentierung erschlagen. Das Stichwort sind Standards wie HTML5 (nicht ganz sauber gerne als Oberbegriff für einen Technik-Mix aus HTML, CSS und JavaScript verwendet), die einen Zugriff auf Hardwarefunktionen erlauben und es Entwicklern ermöglichen, Look and Feel der gewohnten nativen Systemumgebung nachzuempfinden. Verschiedene Frameworks helfen, die Vielfalt zu beherrschen. Für welche Plattform man sich entscheidet, liegt letztlich ganz in der Hand des Entwicklers. Apple bietet jüngsten Erhebungen nach das Ökosystem, in dem Kunden am ehesten bereit sind, für Apps zu bezahlen. Das mag sich in naher Zukunft ändern, wenn Google Play mit einer strengeren Freigabepolitik höherwertige Apps verspricht. Unter Android genießen Entwickler derzeit etwas mehr Freiheiten und können schon jetzt auf Techniken wie NFC zurückgreifen, der man im Zuge des „Mobile Payment“ in den kommenden Jahren einen Durchbruch vorhersagt. An Microsofts Windows Phone schließlich scheiden sich die Geister – ein herausragendes, aber gewöhnungsbedürftiges Designkonzept, ein noch junger, aber dafür von weniger Mitbewerbern bevölkerter Marketplace, eine wenig verbreitete, aber im Kontext von Windows 8 sicherlich aufkeimende Softwareplattform. Man wird abwarten müssen, wohin sich Microsofts System entwickelt. Da das Unternehmen die Plattform derzeit mit viel Nachdruck fördert, mag ein früher Einstieg lohnen. Ganz pragmatisch gesehen fällt die Wahl leichter: Mac-Entwickler werden sich traditionell bei iOS am schnellsten eingewöhnen, Java-Developer sich in die Java-nahe Android-Plattform einleben und .NET- und Silverlight-Entwickler sich zügig unter Windows Phone zurechtfinden. Wer mit Webanwendungen vertraut ist, kann prinzipiell jede Plattform bedienen. Was die Zukunft bringt, ist ungewiss. Android hat mit der Version 4 seine Smartphone- und Tablet-Plattformen vereinheitlicht und strengere Regeln, unter anderem in puncto Design, vorgegeben. Und versucht, mit Google Play am Erfolg von Apples App Store anknüpfen zu können. Microsoft steht in den Startlöchern und vielleicht wird künftig Mozilla dazustoßen, mit einem komplett browserbasierten Betriebssystem, das Web-Apps auf eine Stufe mit nativen Anwendungen stellt. Wie immer kann dabei ein Blick über den Tellerrand nicht schaden: Prinzipiell verfolgt jedes System die gleichen Ziele, wenn auch auf ganz unterschiedlichen Wegen – wer hier offen auf Probleme und Ansätze ihm fremder Plattformen eingeht, wird letztlich auch mit seiner eigenen App davon profitieren. Robert Lippert video2Brain-Video-Tutorials: Rund 3 Stunden Videomaterial für Android- und iOS-Entwickler, mit Frank Jüstel und Constantin Ehrenstein. Wer Apps für Apples mobiles Betriebssystem entwickeln möchte, lernt hier die Grundlagen zu Objective-C kennen (inklusive Speichermanagement und den Umgang mit der Xcode-IDE) sowie die Neuerungen aus iOS 5, darunter auch die Anbindung an die iCloud. Wer lieber mit Android arbeitet, bekommt einen Einstieg in die Java-Programmierung für Googles Plattform vermittelt. SDKs und IDEs Adobe Flex: Open-Source-SDK für die Entwicklung mobiler Applikationen auf der Grundlage von Adobes Flash/AIR-Laufzeitumgebung. Das Software Development Kit enthält das Flex-Framework und den Flex-Compiler, mit denen sich Flex-Anwendungen unter einer IDE der Wahl entwickeln lassen. Android SDK: Eclipse-Plug-in zum Programmieren für das Google-Betriebssystem. Das Starter-Paket enthält die nötigen Tools, um die Eclipse-IDE für die Entwicklung von Android-Apps vorzubereiten. Corona SDK: Cross-Plattform-SDK für Mac OS X und Windows. Das speziell für die Spieleentwicklung konzipierte SDK erlaubt die Programmierung plattformübergreifender Apps und bietet einen eigenen Simulator. Eclipse Classic: Die Basisumgebung für die Android-Entwicklung. Die Classic-Variante bietet das Grundgerüst der bekannten IDE und lässt sich über zahlreiche Extensions beliebig erweitern. RhoStudio: IDE auf Eclipse-Basis für Mac OS X und Windows. Die Software erlaubt die Entwicklung nativer Business-Anwendungen auf Grundlage des quelloffenen Ruby-Frameworks Rhodes. Sencha Touch 2: Mobile Development mit HTML5. Das Web-Framework stellt Entwicklern über 50 Komponenten, ein State-Management und ein integriertes MVC-System zur Verfügung und verspricht flüssiges Scrolling und adaptive Layouts für mobile Anwendungen. Windows Phone SDK 7.1: SDK zum Erstellen von Anwendungen und Spielen für Windows-Phone-7.0- und Windows-Phone-7.5-Geräte. Umfasst unter anderem Visual Studio 2010 Express, den Windows-Phone-Emulator, das Silverlight-4-SDK und das Microsoft Expression Blend SDK für Windows Phone. Tools & Frameworks Cappuccino: Open-Source-Framework für Mac OS X. Erlaubt die Entwicklung plattformübergreifender Webanwendungen mit Objective-J. MoSync 3.0: Mobile SDK für native und hybride Cross-Plattform-Apps, seit Version 3.0 HTML5-fähig. Die Entwicklungsumgebung ermöglicht Apps auf Grundlage von C/C++ und JavaScript/HTML5. MonoTouch, Mono for Android: Cross-Plattform-Entwicklung mit Objective-C respektive C#/.NET. Entwickler können bestehende .NET-Bibliotheken in ihre mobilen Projekte importieren, Visual Studio (Android) und Xcode nutzen oder auch die Mehrkern-Prozessoren des iPad 2 oder iPhone 4S ausreizen. PhoneGap: Ermöglicht eine Cross-Plattform-Entwicklung mit HTML5. App-Entwickler können über PhoneGap aus Webanwendungen heraus die nativen APIs mobiler Geräte ansprechen. SproutCore: Das quelloffene Framework bietet einen MVC-Ansatz und erlaubt performante clientseitige Ausführung von Code. Besonders im mobilen Kontext erlaubt das stabile Apps, selbst bei Verbindungsproblemen. The-M-Project: Cross-Plattform-Entwicklung mit CSS3 und HTML5 nach dem MVC-Prinzip. Das Framework umfasst eine Build-Umgebung („Espresso“), die über die Kommandozeile eine native Paketierung von Web-Apps ermöglicht. Hammer.js: JavaScript-Library für Multitouch-Gesten wie Tap, Double Tap, Hold, Drag und Pinch. jQuery/jQuery Mobile: JavaScript-Klassenbibliothek zur DOM-Manipulation und -Navigation. Notepad++ 6: Ein Quellcode-Editor für verschiedene Sprachen. Listings und Lizenzen zu den Heftartikeln und den Softwarepaketen. Leider haben sich in die Produktion unseres Sonderheftes ein paar Fehler eingeschlichen, die in der Nachkontrolle übersehen wurden. Die korrekten Angaben möchten wir Ihnen hier nachreichen: Seite 16 Der Link auf die HTML5-Version von Ninja Course lautet richtig: http://www.iosgames.de/html5/ Seite 60 Der Artikel über serverseitige Infrastrukturen für mobile Anwendungen wurde von Dr. Lutz Kohl und Dr. Peter Braun verfasst. Leider fehlen im Heft die Angaben zu Herrn Dr. Braun, die wir hiermit nachreichen möchten: Dr. Peter Braun hat Informatik in Dortmund und Jena studiert. Seit 2005 beschäftigt er sich mit der Programmierung von mobilen Lösungen und dabei insbesondere mit der Entwicklung von komplexen Backend-Systemen. Bei match2blue ist er seit 2008 Leiter der Softwareentwicklung. Seite 131 Foto und Name des Autors stimmen, die Vita gehört jedoch zu einer anderen Person. Richtig ist: Sebastian Werler ist Gründer und Geschäftsführer von Panacoda sowie Mitentwickler von "The-M-Project". In der Vergangenheit war er in IT- und Marketingabteilungen diverser Großunternehmen beschäftigt. Darüber hinaus realisierte er als Freelancer zahlreiche Projekte für mittelständische Unternehmen im Bereich Web und Mobile. Bei Panacoda steuert er Marketing und Sales sowie, gemeinsam mit Laubach, das Produktmanagement. Werler studierte an der Hochschule der Medien in Stuttgart und hat einen Master in Computer Science and Media.

12,90 €

iX Developer Big Data 2015
Highlights Inhalt Editorial Heft DVD Bewertungen Big Data Big Data ist mittlerweile mehr als nur ein Hype. Die Techniken und Konzepte dahinter sind branchenübergreifend angekommen, und Unternehmen haben begonnen Big Data in ihre Prozesse und Kultur einzubinden. Hadoop Big Data ohne Apache Hadoop – irgendwie nicht vorstellbar. Und doch ist Big Data weit mehr als nur Hadoop. Schließlich ist ein ganzer Zoo mit das Framework unterstützenden oder mit ihm konkurrierenden Projekten entstanden. Selbst mit dem guten alten SQL lässt sich hier schon einige Zeit arbeiten. NoSQL Relationale Datenbanken haben seit geraumer Zeit eine ernstzunehmende Konkurrenz bekommen. Denn die unterschiedlichen NoSQL-Konzepte erfüllen in vielen Fällen die heutigen Anforderungen an Datenbanken viel besser als die arrivierten relationalen Vertreter. Wären da nicht schon wieder andere Trends wie NewSQL & Konsorten … Analyse und Programmiersprachen Data Science ist das Hype-Thema im Big-Data-Umfeld schlechthin. Wie gut, dass die Data Scientists bei ihrer Analyse schon auf bewährte Patterns, Werkzeuge und Programmiersprachen zur Visualisierung ihrer Daten zurückgreifen können. BIG DATA Trends Aus Informationshalden wertvolle Erkenntnisse filtern8 Klaas Wilhelm Bollhöfer zum Status quo von Big Data im Gespräch14 Datengetriebene IT-Projekte im Wandel16 Recht Big Data und (Datenschutz-)Recht18 Security Strategien zum Schutz der Big-Data-Datenbestände und -Infrastruktur24 HADOOP MapReduce/YARN Hadoop 2 als universelle Data Processing Platform30 Ökosystem Die wichtigsten Projekte der Hadoop-Community36 Der Hadoop-Markt unter wirtschaftlichen Aspekten44 Apache Spark Hadoop-Konkurrent mit In-Memory-Technik46 Hadoop konkret Mapper- und Reducer-Scheduling in Hadoop50 Geodaten mit Hadoop und Hive verarbeiten54 NoSQL Überblick Traditionelle und moderne Datenbanktechnik58 Dokumentenorientierte Datenbanken NoSQL-Datenbank MongoDB60 Erste Gehversuche mit MongoDB64 Hochverfügbare, performante und skalierbare Webanwendungen mit Apache Cassandra70 Graphendatenbanken Was ist an Neo4J und Konsorten besonders?76 Abfragesprachen für Graphendatenbanken83 Moderne Datenbanksysteme Konzepte und Anwendungsfälle von In-Memory Computing89 SQL-Entwicklung für Process Mining auf SAP HANA94 NewSQL-Datenbanken: SQL liebt NoSQL98 NoSQL-Vergleich MongoDB, Elasticsearch, Riak – dreimal das Gleiche?102 Enterprise Search Wie Apache Solr und Big Data unter einen Hut passen106 Elasticsearch erfolgreich skalieren110 ANALYSE Data Science Neue Königsdisziplin der Datenerhebung und -analyse116 Entwurfsmuster Analytics Design Patterns122 Data Visualization Einführung in die Datenvisualisierung126 Datenvisualisierung mit der JavaScript-Bibliothek D3.js132 Karl van den Bergh und Michael O’Connell von Tibco im Gespräch138 PROGRAMMIERSPRACHEN Sprachen zur Datenanalyse Python für Data Science und Big Data142 R mit großen Daten: Tipps und Tricks für effiziente R-Programme146 Julia: Neue dynamische und trotzdem performante Programmiersprache150 SONSTIGES Editorial 3 DVD-Inhalt 6 Inserentenverzeichnis 125 Impressum 125 Kein Ende der Fahnenstange Der Begriff „Big Data“ ist in den letzten zehn Jahren sicherlich überstrapaziert worden. Begünstigt durch zunehmend billiger werdenden Hauptspeicher und Mechanismen paralleler Programmierung zur schnellen Datenverarbeitung haben sich Analysten, Marketingabteilungen unterschiedlichster Firmen sowie Konferenz- und Schulungsanbieter schnell auf die mit Big Data verbundenen Techniken und Schlagwörter gestürzt. Die Folge war ein klassischer Hype mit all seinen Sonnen- und Schattenseiten. So ist eine stark vom Big-Data-Framework Apache Hadoop und seinem Ökosystem getriebene technische Basis entstanden, die es allerdings erst mal zu monetarisieren gilt. Viele unserer Leser waren zu Recht erst mal skeptisch, selbst noch 2012, als der Branchenverband BITKOM Big Data zum Trend ausrief, und auch noch 2014, als die CeBIT Big Data zum Leitthema kürte. So attraktiv die immer wieder zitierten Anwendungsszenarien und so erschreckend bis faszinierend die Datensammelwut beispielsweise einer NSA sind, fehlte es vielen Unternehmen lange Zeit an der Idee oder Strategie, wie sich aus ihren großen Datenmengen geschäftsrelevante Informationen mit Gewinn ziehen lassen. Das ändert sich nun so langsam, wie ich in Gesprächen auf unser eigenen Big-Data-Konferenz data2day erfahren durfte, die im November letzten Jahres ihre Premiere hatte. Und auch die Artikel in diesem Sonderheft deuten darauf hin, dass Big Data mittlerweile mehr als nur ein skeptisch zu sehender Hype zu zugegebenermaßen reifen Techniken ist. Beispielsweise hat sich mit den Data Scientists eine eigene Berufsgruppe herausgebildet, für nicht wenige die derzeit spannendste in der IT. Für die damit verbundenen Fähigkeiten – Klaas Wilhelm Bollhöfer skizziert sie im Heft als Mischung aus klassischem Ingenieursstudium, programmatischen und mathematischen Grundlagen sowie Business- und Design-Denken aus der Internet-Ära – sind Experten natürlich nicht so einfach zu finden. So wie insgesamt für das Thema Big Data, was eine Studie des Jobportals Dice.com insofern bestätigt, dass sich unter den Top 10 der bestbezahlten Skills sieben Schlagwörter aus dem Big-Data-Umfeld befinden: Cassandra, MapReduce, Cloudera, HBase, Pig, Flume und Hadoop. (Unter den Top 20 sind es gar 14: Hier kommen Hive, NoSQL, ZooKeeper, Data Architect, Data Scientist, Solr und Big Data hinzu.) Die Nachfrage treibt ganz eindeutig die Honorare in die Höhe. Mag es auf Wirtschafts-, Job- und Projektseite signifikant vorwärtsgehen, ist selbst bei Hadoop womöglich noch lange nicht das Ende der Fahnenstange erreicht. So vermeldete der bei Cloudera angestellte Hadoop-Schöpfer Doug Cutting Mitte März 2015 immer noch eine jährliche Verdopplung der Hadoop-Anwender. Das bedeutet zugleich, dass über die Hälfte der Nutzer Einsteiger in das Thema sind. Für sie mag das Sonderheft den größten Wert haben, aber auch für alle anderen an Big-Data- und NoSQL-Themen Interessierten haben wir Lesenswertes konfektioniert. Wir wünschen Ihnen viel Spaß bei der Lektüre. Alexander Neumann Auf der Heft-DVD Sponsored Content:EXASOLUTION Die Hochleistungsdatenbank EXASolution hält ihre Daten spaltenorientiert verteilt über die Knoten eines Clusters im Hauptspeicher und soll sich dadurch vor allem für schnelle Auswertungen in Data Warehouses eignen. Sie entstand aus Forschungsprojekten der Universitäten Jena und Erlangen und führt mehrere TPC-H-Benchmarks für Data Warehouses unterschiedlicher Datengröße an. Auf der DVD gibt es das technische Whitepaper „A Peek under the Hood“ zu EXASolution sowie die folgenden Videos: Integration von Geodaten ermöglicht räumliche Analysen: ein Beispiel, wie die Analyse von Geodaten über EXASolution aussehen kann. EXASolution versus Natural Language Processing: ein Praxisbeispiel, wie benutzerdefinierte Funktionen (User-Defined Functions; UDFs) in EXASolution zu integrieren sind, um Sprachverarbeitung direkt in der Datenbank zu ermöglichen. Big-Data-Analysen mit Skyline: Skyline ist ein neues Analyse-Werkzeug in EXASolution, das unter Berücksichtigung unterschiedlicher Bewertungskriterien eine Vorauswahl aus großen Datenmengen über mehrere Dimensionen hinweg trifft. Skyline – ein praktisches Beispiel: Das multidimensionale Optimierungstool „Skyline“ erspart das mühevolle Sortieren, Filtern und die subjektive Bewertung unüberschaubar großer Datenmengen. Performance und Geschwindigkeit statt Schneckentempo und Frustration: allgemeiner Überblick über die Möglichkeiten des In-Memory Computing mit der Hochleistungsdatenbank EXASolution. HADOOP Cloudera’s Distribution Including Hadoop (CDH) 5.3.0 Die Open-Source-Sammlung umfasst die Kernkomponenten von Hadoop zur verteilten und ausfallsicheren Speicherung und Verarbeitung großer Datenmengen. Darüber hinaus sind Werkzeuge für Sicherheit, Hochverfügbarkeit und Integration in bestehende Datenlandschaften enthalten. CDH ist unter der Apache-Lizenz verfügbar und eine der verbreitetsten Hadoop-Distributionen und wird für Tests, Entwicklung und den Betrieb großer Cluster verwendet. Auf der DVD befindet sich ein VMware-Image, das insbesondere Einsteigern helfen kann, sich schnell einen Überblick zu verschaffen. FREIE IDEs Eclipse 4.4.2: das zweite Service Release der Entwicklungsumgebung in der Luna-Distributionen für Java-Entwickler. IntelliJ IDEA 14.0.3: die Community Edition der polyglotten Java-Entwicklungsumgebung. Juno: eine freie IDE für die Programmiersprache Julia. TOOLS, DATENBANKEN, SPRACHEN Enterprise Search: Apache Solr, Elasticsearch Big-Data-Frameworks: Apache Drill, Apache Giraph, Apache Hadoop, Apache Hive, Apache Spark, Apache Storm NoSQL-Datenbanken: Apache Cassandra, Apache CouchDB, MongoDB, Neo4J, Redis, Riak NewSQL-Datenbanken: Apache Phoenix, Apache Tajo, Kylin, PostgresXC, Presto Programmiersprachen: Julia, Python, R LITERATUR Auszüge aus den dpunkt-Büchern: MongoDB – Der praktische Einstieg: Kompakt und anhand zahlreicher Beispiele führt das MongoDB-Buch von Tobias Trelle in die Nutzung von MongoDB ein. Auf der Heft-DVD finden Leser auf 56 Seiten Leseauszüge zur Einführung in dokumentenorientierte NoSQL-Datenbanken und insbesondere MongoDB. Außerdem werden Hilfen zur Installation gegeben und die Konzepte hinter MongoDB erklärt. Visual Business Analytics – Effektiver Zugang zu Daten und Informationen: Das Buch von Jörn Kohlhammer, Dirk U. Proff und Andreas Wiener zeigt Wege auf, wie aus Daten mittels Visualisierung entscheidungsrelevante Informationen für den Empfänger werden. Auf rund 70?Seiten als Leseauszüge geben die Autoren einen grundsätzlichen Einblicke in die Visualisierung von Daten und Informationen sowie des Weiteren in das Zusammenspiel von Big Data und Visual Analytics. LISTINGS UND LIZENZEN Die Listings zu den Heftartikeln und die Lizenzen zu den Softwarepaketen auf der Heft-DVD.

12,90 €

iX Developer Effektiver entwickeln 2016
Highlights Inhalt Editorial Heft DVD Bewertungen Continuous Delivery … verspricht Produktivsetzungen der entwickelten Software auf Knopfdruck bei besserer Qualität. Was sind die zentralen Ideen dahinter, welche Voraussetzungen muss man schaffen, um damit erfolgreich zu sein, und was sind die wichtigsten Tools? DevOps … lebt nicht nur von geeigneten Werkzeugen, sondern vor allem von gegenseitigem Vertrauen und geteilter Verantwortung. Erst dann lässt sich die Idee hinter DevOps umsetzen, wie Erfahrungen mit entsprechenden Tools aus der Praxis zeigen.. Einführung Präambel Wie DevOps, Continuous Delivery und Containerisierung zum idealen Gespann werden8 Qualitätssicherung Zuverlässige Tests in der agilen Softwareentwicklung12 Build-Security Risiken beim Bau von Anwendungen und Lösungsansätze für die Sicherheit16 Systemautomatisierung Entwicklungs- und Produktionsumgebungen automatisiert bereitstellen und verwalten24 Continuous Delivery Eine Einführung in Continuous Delivery – Tutorial Grundlagen36 Commit Stage40 Acceptance Test Stage46 Bereitstellen der Infrastruktur50 Integrationswerkzeug Continuos Integration und Continuous Delivery mit Jenkins54 Datenbanken Schemamigrationen mit Liquibase und Flyway60 DevOps IT-Kultur DevOps führt Systemverwalter und Softwareentwickler zusammen66 Automatisierungs-Tools Chef, Puppet und Ansible: Im Dienst der Continuous Integration70 APM DevOps und Application Performance Management76 DevSec DevOps, Compliance und Sicherheit82 Strategien gegen die BlockadeSoftwareinnovationen im Maschinenbau86 Change Management Agil allein reicht nicht – Veränderungen bei der 1&1 MyWebsite90 BizDevOps Nächster Schritt in der Evolution mit einem holistischen Ansatz94 Microservices Architekturkonzept Microservices: Modularisierung ohne Middleware100 Patterns Der perfekte Microservice106 Enterprise IT Warum Microservices in großen Unternehmen mehr als nur Software sind114 Java-Microframeworks Ein Blick auf Spark, Ninja, Jodd und Ratpack120 Container Einführung Wie Docker die IT-Landschaft revolutioniert126 Docker-Tools Multi-Tier-Applikationen mit Docker Compose, Machine und Swarm130 Ökosystem Mehr als das Standardvorgehen: Tool-Auswahl für komplexe Docker-Szenarien136 Orchestrierung Mit Google Kubernetes< viele Docker-Container verwalten145 Virtualisierung Docker-Container sicher betreiben150 Sonstiges Editorial3 DVD-Inhalt6 Inserentenverzeichnis113 Impressum113 Der ewige Kreis Die Softwareentwicklung zeigt derzeit Mut zur Größe – zur kleinen Größe. Der Trend geht weg von monolithischen Systemen hin zu kleinen Bausteinen wie Microservices. Auch die Zeiträume zwischen Releases schrumpfen: Statt alle ein bis drei Jahre ein großes Major Release herauszubringen und durch Service Packs zu ergänzen, veröffentlichen Unternehmen mithilfe von Continuous Delivery eine neue Softwareversion, sobald sich eine Komponente ändert. Große Internetfirmen wie Google, Amazon oder Facebook aktualisieren ihre Plattformen inzwischen im Minutentakt. Dass die Nutzer davon nur bei Änderungen der Oberfläche etwas mitbekommen, zeigt, wie reibungslos die kontinuierlichen Prozesse funktionieren können. Ein Wartungsfenster am Wochenende existiert im Internet nicht. Die Softwareentwicklung wird zum ewigen Kreis. Container bieten Entwicklern eine in sich abgeschlossene und damit überschaubare Umgebung zum Testen und Ausrollen der Anwendungen. Dank der einfachen Reproduzierbarkeit können die Teams auf große Testumgebungen verzichten. Ändern sich die Anforderungen oder Umgebungen, passen sie einfach die Schablone an und rollen neue Container aus. Containerisierung, Komponenten oder kontinuierliche Prozesse sind keine Erfindung der 2010er-Jahre, sondern haben in der ein oder anderen Ausprägung immer wieder den Weg in die Schlagzeilen geschafft. Oft scheiterten sie in der Realität jedoch an Komplexität und Inkompatibilitäten. Es gibt jedoch entscheidende Unterschiede, die den aktuellen Techniken und Tools zum Erfolg verhelfen sollten. Microservices punkten durch die Unabhängigkeit der einzelnen Dienste voneinander: Jeder hat seine eigene Ablaufumgebung und kommuniziert über Standardnetzwerkprotokolle mit der Außenwelt. Frühere Modularisierungskonzepte bedienten oftmals eine spezielle Sprache oder verwendeten einen Applikationsserver und scheiterten an der Zusammenarbeit über die Grenzen hinweg. Docker-Container haben einen klaren Fokus auf Entwickler und sind leichter zu verwenden als vorherige Ansätze. Jenkins ist besonders wegen seiner Flexibilität und des offenen Plug-in-Konzepts zur festen Größe für Continuous Delivery geworden. Bei den Konfigurations-Management-Systemen buhlen vor allem Chef, Puppet und Ansible mit unterschiedlichen Stärken um die Gunst der Anwender. Die technische Basis und die weitgehend quelloffenen Werkzeuge sind jedoch nur die halbe Miete. DevOps, also das Zusammenspiel von Softwareentwicklern (Dev) und den Administratoren (Ops), erfordert ein Umdenken der Beteiligten: Die Fraktionen müssen zusammenarbeiten und bei Problemen gemeinsam nach Lösungen suchen. Wenn Entwickler im Prozess der kontinuierlichen Verteilung eine Komponente ändern und damit einen neuen Build anstoßen, der die Änderung sofort ins Livesystem übernimmt, kommt ihnen und ihrem Werk zudem eine höhere Bedeutung zu als bisher. Der Satz „You build it, you run it“ von Amazons CTO Werner Vogels bringt es auf den Punkt: Jeder Entwickler ist für seinen Code verantwortlich und bekommt dadurch mehr Bezug zum Gesamtprodukt. Der Kulturwandel erfordert Umdenken auf allen Ebenen. In einigen Projekten erweist es sich als sinnvoll, dass sich das Management aus dem Tagesgeschäft heraushält und somit den einzelnen Teams mehr Verantwortung zuteilt. Auch traditionelle Unternehmen wie Maschinenbauer können durchaus von moderner Softwareentwicklung profitieren und mit den passenden Ansätzen den Produktionsbetrieb in der Fabrik optimieren, ohne dort den reibungslosen Ablauf zu gefährden. Damit schließt er sich wieder, der ewige Kreis. Mit diesem Heft möchten wir Ihnen helfen, sich bei den Themen Continuous Delivery, DevOps, Containerisierung und Microservices zurechtzufinden. iX und heise Developer wünschen Ihnen viel Spaß beim Lesen! Rainald Menge-Sonnentag & Alexander Neumann Auf der Heft-DVD Multimedia: Videos (Continuous Lifecycle 2015): The Rationale for Continuous Delivery Dave Farleys Keynote-Vortrag von der Continuous Lifecycle 2015 ist ein zeitgemäßer Überblick zu den mit Continuous Delivery und DevOps verbundenen Entwicklungsprozessen. Reinventing your Workplace – Struktur, Technik und Kultur bei 1&1 MyWebsite Der Vortrag von Matthias Kainer und Marcel Devantier zeigt, wie Struktur, Technik und Kultur Hand in Hand gehen, welche Werkzeuge man dabei verwenden kann und wie schwierig es ist, alles zu ändern. Microservices, DevOps, Continuous :Delivery – mehr als drei Buzzwords: Eberhard Wolffs Vortrag zeigt, wie Microservices, Continuous Delivery und DevOps zusammenpassen und dass Microservices mehr als ein Hype sind. Branch-Modelle mit Git: Verschiedene Entwicklungsszenarien erfordern passende Branches. Der Vortrag von Bjørn Stachmann und René Preißel zeigt Möglichkeiten, diese und weitere Release-Prozesse mit Git umzusetzen. Audio (SoftwareArchitekTOUR): • Modularisierte Architektur für große Systeme • Know-how für Architekten • Architekturanalyse und -bewertung • Soziale Kompetenz für Architekten Software: Ubuntu 14.04.4: Long-Term-Support-Release der populären Linux-Distribution, die für viele Artikel des Hefts herangezogen wurde. Eclipse 4.5.2: Auf der Heft-DVD finden Leser das zweite Update der Entwicklungsumgebung in der Mars-Distribution für Java-Entwickler. DevOps- und Produktivitätswerkzeuge: Continuous Delivery und DevOps sind ohne diese auf DVD zu findenden Tools nur schwer vorstellbar: Ansible, Chef, Puppet, Docker, Kubernetes, Marathon, Aurora, Mesos, Vagrant, Flyway,ˇ Liquibase, Jenkins, VirtualBox. Listings und Lizenzen: Die Listings zu den Heftartikeln und die Lizenzen zu den Softwarepaketen auf der Heft-DVD. Microservices (Broschüre zum Buch):Diese von Eberhard Wolff konfektionierte Broschüre gibt eine kurze Einführung in das Thema Microservices und stellt dar, was Microservices überhaupt sind und welche Vorteile sie haben. Das soll den Einstieg in das Thema erleichtern und helfen, die Einsetzbarkeit und den Nutzen von Microservices in einem bestimmten Kontext abzuschätzen. So können Microservices vom Hype zum sinnvollen Bestandteil im Werkzeugkasten eines Architekten werden. Continuous Delivery – Der pragmatische Einstieg (Buchauszüge):Continuous Delivery ermöglicht es, Software viel schneller und mit wesentlich höherer Zuverlässigkeit in Produktion zu bringen. Eberhard Wolffs Buch hilft, sich mit dem Aufbau einer Continuous-Delivery-Pipeline vertraut zu machen, und erklärt, welche Technologien Entwickler dazu einsetzen können. iX Developer „Bessere Software“:Das von heise Developer 2013 zusammengestellte Heft zur Qualitätssicherung in der Softwareentwicklung setzt auf 180 Seiten den Fokus auf die Schlagwörter „Agile ALM“, „Continuous Delivery“ und „DevOps“.

12,90 €

iX Developer Embedded Software
Highlights Inhaltsverzeichnis DVD-Inhalt Editorial Bewertungen Embedded Software Aufgrund langer Produktzyklen und hoher Fehlschlagsrisiken erwies sich die Embedded-Softwareentwicklung lange Zeit als vergleichsweise innovationsscheu. Das ändert sich nun mit Industrie 4.0 und Internet der Dinge – die Branche ist darauf gut präpariert. Programmiersprachen Am meisten ist in der Embedded-Programmierung nach wie vor C verbreitet, aber Ada, C++ und Java kommen ebenfalls zum Zug – teilweise deutlich zunehmend. Das liegt an neuartigen Anforderungen, für die sich das „klassische“ C nicht eignet. Qualitätssicherung Dass bei Embedded-Systemen andere Maßstäbe bei der Qualitätssicherung angesetzt werden müssen, ist eine Binsenweisheit. Umso wichtiger ist es, dass Domänen wie Requirements Engineering, Testing oder funktionale Sicherheit mit neuen Werkzeugen und Prozessen reagieren. Embedded im Umbruch Die Vernetzung von Gegenständen aller Art zu einem Internet der Dinge schreitet fort. Unter dem Schlagwort Industrie 4.0 fließen die Erkenntnisse daraus in „intelligente Produktionseinheiten“ ein. Doch auch abseits davon ist die hardwarenahe Embedded-Entwicklung en vogue. Embedded Software Embedded heute 8 Die wichtigsten Trends Effizienz vs. Kreativität 12 Embedded-Programmierung im Umbruch Tools 16 Werkzeuge und Methoden für die Embedded-Softwareentwicklung mit Open Source Betriebssysteme 21 Echtzeit-Features beim Embedded Computing Simulation und Emulation 26 Gründe für die Virtualisierung eingebetteter Systeme Design Patterns 33 Architekturmuster in sicherheitsgerichteten Systemen Programmiersprachen 38 Embedded-Programmierung mit Ada 42 Zeitgemäßer Sprachstandard C11 48 Schlanke Embedded-Entwicklung mit Small C++ 54 MISRA C: Quasi-Standard, nicht nur für Automotive 56 Java und OSGi in Embedded-Systemen für das Internet der Dinge Qualitätssicherung Anforderungs-Management 62 Requirements Engineering für eingebettete Systeme 66 ReqIF in der Systementwicklung mit Eclipse Softwaretests 71 Warum man Embedded-Software anders testen und verifizieren muss 74 Kriterien für das Testen sicherheitskritischer Systeme 77 Debugging von Embedded-Multicore-Systemen Funktionale Sicherheit 80 Automotive-Embedded-Systeme für ISO 26262 fit machen Modellierung 86 System- und Softwareentwicklung mit SysML und UML für eingebettete Systeme Praxis Modeling 92 Embedded-Entwicklung mit erweiterbarem C 98 Modellgetriebene Absicherung von Softwareschnittstellen für vernetzte eingebettete Systeme 104 Domänenspezifische Sprachen im Automobil Verschlüsselung 109 Advanced Encryption Standard auf 8-Bit-Microcontrollern Energieeffizienz 116 Realisierung von Low-Power-Applikationen 124 Spezielle Anforderungen bei der Messdatenerfassung mit Batteriebetrieb Embedded im Umbruch Industrie 4.0 130 Standardisierte Interoperabilität mit OPC-UA 136 Betriebssysteme für eingebettete Systeme im Internet der Dinge Heimautomatisierung 141 Offene Plattformen verhelfen Smart Home zum Erfolg Neue Entwicklungsplattformen 146 Veränderung der Embedded-Landschaft durch Arduino, Raspberry Pi und BeagleBone 151 Softwareentwicklung mit Raspberry Pi: Wiedergeburt eines Stücks C64 Diverses Prozessmodelle 158 Scrum, Kanban und Co.: Starke Teams ersetzen starre Prozesse 164 Cyber-Physical Systems Embedded-Softwareentwicklung für Cyber-Physical Systems Sonstiges 3 Editorial 6 DVD-Inhalt 170 Inserentenverzeichnis 170 Impressum Voneinander lernen Softwareentwicklung für eingebettete Systeme war lange Zeit nur bedingt mit klassischer Softwareentwicklung zu vergleichen. Denn die anderen Anforderungen bei Embedded verlangten und verlangen auch heute noch besondere Lösungsansätze. Doch gerade in den letzten Jahren ist einiges passiert, was Embedded- und traditionelle Softwareentwicklung zusammenrücken lässt. Vor einigen Jahren wurde das beim Besuch der Embedded World in Nürnberg durch Werbebotschaften zur Modellierung und zum Einsatz von Open-Source-Techniken à la Linux und Eclipse deutlich. Beides hatte zuvor schon in der klassischen Softwareentwicklung seinen Durchbruch. Etwas später folgte die Erfolgsgeschichte der Apps – streng genommen ist die allerdings stark von Usability-Aspekten geprägte Programmierung für mobile Betriebssysteme ja Embedded-Entwicklung. Den Siegeszug der Apps kann man als neueste Entwicklung im Auto-Infotainment beobachten. Die Etablierung von Multicore-Architekturen ist ein weiterer Punkt. Parallelprogrammierung ist selbstverständlich auch in Embedded-Systemen angekommen und hier mancherorts besonders wichtig, da sich erst dadurch für eingebettete Systeme Anforderungen wie Echtzeit realisieren lassen. (Auf der parallel 2014, unserer Konferenz zur Parallelprogrammierung, haben wir auch deshalb einen Embedded-Schwerpunkt.) Über die Jahre hinweg haben zudem vermehrt agile Prozessmodelle in die sich ansonsten dem Wasserfall-Modell verpflichtet fühlende Branche Einzug gehalten. Das sind nahezu alles Themen, die auch dieses Sonderheft zur Entwicklung eingebetteter Systeme beleuchtet. Der neueste Trend – manche werde es Hype nennen – ist die Vernetzung unterschiedlichster Geräte, die in den Schlagwörtern „Industrie?4.0“, „Internet der Dinge“, „Smart Home“ und „(Cyber-)Physical Systems“ ihre Entsprechung haben. Quasi alle großen Software- oder Dienstleistungsanbieter, aber auch viele kleine setzen derzeit auf das dort gesehene Potenzial. Und so werden auf der diesjährigen Embedded World, aber auch auf der kurz darauf folgenden CeBIT und nicht zuletzt auf der HMI interessierte Besucher nicht darum herumkommen, sich mit einigen der damit verbundenen Techniken konfrontiert zu sehen. Selbst durch dieses Sonderheft ziehen sich diese Themen wie ein roter Faden. Bei allen Ausnahmen, die Regeln bestätigen, mögen mir die Leser die Aussage verzeihen, dass diesen Entwicklungen mehr oder minder gemein ist, dass die Impulse von der klassischen Softwareentwicklung ausgingen. Das bedeutet nun aber nicht, dass die Embedded-Entwickler nur die Epigonen ihrer Kollegen aus der klassischen Softwareentwicklung sind. Gerade durch die Entwicklung nativer Apps und den Hype um Einplatinencomputer wie Arduino und Raspberry Pi wird das Interesse einer breiten Masse an hardwarenaher Microcontroller-Programmierung deutlich. Und viele Programmierer sind sicherlich fasziniert vom Kampf ihrer Embedded-Kollegen um weniger Bits und Bytes, die die Software auf einem Kleinstsystem erst möglich machen. Ganz zu schweigen davon, dass die Ideen und Erfahrungen von in der Embedded-Entwicklung gesetzten Disziplinen wie Requirements-Management, Software-Testing und funktionale Sicherheit für die klassische Softwareentwicklung lehrreich sein können. Lehrreich wollen wir auch mit diesem iX Developer-Sonderheft sein. Wir wünschen Ihnen viel Spaß bei der Lektüre. Alexander Neumann Auf der Heft-DVD Sponsored Software Enterprise Architect 10 Das von SparxSystems hergestellte Softwaremodellierungswerkzeug Enterprise Architect ist ein sich auf UML?2.4.1 stützendes CASE-Tool für den Entwurf und zur Herstellung von Softwaresystemen, Geschäftsprozessmodellierung und zur Modellierung beliebiger Prozesse oder Systeme. Es deckt alle Teile des Entwicklungszyklus ab und ermöglicht die Nachvollziehbarkeit von Softwareprojekten. Die Enterprise Architect Trial Edition auf der Heft-DVD entspricht dem vollen Funktionsumfang und kann 30 Tage getestet werden. IDE für Raspberry Pi linutronix stellt eine auf Eclipse basierende IDE zur Entwicklung für Raspberry PI zur Verfügung. Sie ist auf Windows?7 getestet und installiert sich dort selbstständig. Diese auf der DVD bereitgestellte Version enthält alle Features, die für eine effiziente Arbeit notwendig sind. Leser können hiermit ein Projekt anlegen beziehungsweise verwalten (mit dem voreingestellten Namen „linutronix“). IDEs Code::Blocks 13.12 Die freie, quelloffene Entwicklungsumgebung ist für die Entwicklung mit C, C++, D und Fortran gedacht. Die IDE ist leicht zu konfigurieren und erweiterbar – zum Beispiel mit Autovervollständigung, Importfunktionen, Projekt-Vorlagen, Workspaces, Klassenbrowser und Quellcode-Faltung. CodeLite 5.4 Die freie, quelloffene und plattformunabhängige Entwicklungsumgebung eignet sich für die Entwicklung mit C und C++. Sie bietet Projektverwaltung, Autovervollständigung, Restrukturierung, Syntaxhervorhebung, Code-Faltung, Subversion-Unterstützung, Integration des GNU Debuggers und ist über Plug-ins erweiterbar. Eclipse Auf der Heft-DVD finden Leser die weitverbreitete Entwicklungsumgebung in den Kepler-Distributionen für Java-, C/C++- und Automotive-Entwickler. mbeddr mbeddr nutzt JetBrains’ Language Workbench MPS (Meta Programming System), die die notwendigen Mechanismen für inkrementelle, domänenspezifische Spracherweiterungen zur Verfügung stellt. Das Tool besteht aus einer IDE für C sowie Erweiterungen und stellt außerdem einen erweiterbaren Debugger zur Verfügung. Visual Studio Premium 2013 + Visual C++ Redistributable Microsofts integrierte Entwicklungsumgebung als ISO-Image. Die für 30 Tage gültige Testversion enthält Tools zum Planen, Entwickeln und Testen sowie für die Diagnose und die Ausführung von Anwendungen. Tools AVR Libc, GCC, GNAT GPL, GNU Binutils, MAST, openHAB, ProjectLibre, Valgrind Testversionen Cantata Das Tool von QA Systems automatisiert und verwaltet komplexe Aufgaben beim Testen sicherheitskritischer Anwendungen. Die Automatisierung umfasst das Erstellen der kompletten Testumgebung, die Instrumentierung für Code-Coverage-Analysen, die Generierung eines Testfallgerüsts und die Ausführung von Testcases. Intel System Studio 2014 Beta Die Werkzeug-Suite zum Entwickeln eingebetteter und mobiler Linux-Anwendungen enthält Werkzeuge zum Analysieren, Debuggen und Kompilieren. Die Beta-Version auf der Heft-DVD ist bis zum 30. April 2014 lauffähig. Zu der Zeit liegt die um zum Beispiel Android-Unterstützung erweiterte fertige Test-Version vor, die dann 30 Tage lauffähig ist. Literatur Testen von Software und Embedded Systems Der Autor des hier vollständig als PDF-Datei gebrachten Buches (dpunkt.verlag 2010 (2. Aufl.), stellt auf pragmatische Weise klassische und moderne Testverfahren vor. Dabei zeigt er auf 359? Seiten Lösungen für technische, analytische und methodische Probleme auf, die sich in der täglichen Arbeit umsetzen lassen. Software-Test für Embedded Systems Das Buch von Stephan Grünfelder (dpunkt.verlag 2013) beschreibt alle wichtigen praxistauglichen Methoden des Software-Tests für eingebettete Systeme. Auf der Heft-DVD finden Leser rund 140? Seiten Auszüge aus dem ansonsten 390?Seiten schweren Buch. Listings und Lizenzen Die Listings zu den Heftartikeln und die Lizenzen zu den Softwarepaketen auf der Heft-DVD. Hinweis für Käufer der digitalen Ausgaben • PDF- und iPad-Version: In der iX-App finden Sie einen Button zum Download des DVD-Images. • PDF-E-Book: Folgen Sie im Browser der unter„Alle Links“ angegebenen URL zum DVD-Image.

12,90 €

iX Developer Entwickeln für das Internet der Dinge
Highlights Inhalt Editorial Heft DVD Bewertungen Grundlagen Für viele Entwickler bedeutet der Einstieg in das Internet der Dinge, sich mit Themen auseinanderzusetzen, mit denen sie vorher keinen bis wenig Kontakt hatten. Allerdings gibt es Analogien zum gewohnten Arbeitsumfeld, sodass niemand gezwungen sein sollte, noch einmal bei Null zu beginnen. Know-how IoT-Projekte sind ihrer Natur nach recht komplex und bedürfen einer sorgfältigen Planung, was ihre Architektur, die Energieversorgung und Aspekte der Vernetzung angeht. Stärker denn je sollten Entwickler zudem die Bedürfnisse der Nutzer von Anfang an bedenken, da nur so erfolgreiche Produkte entstehen. Grundlagen Stand der Dinge Protokollgewirr, Privatsphäre und Open Source im IoT8 Vorwissen Womit sich Backend-Entwickler nun beschäftigen müssen16 Technik Als Softwareentwickler Elektronik lernen20 Sensoren Datenerfassung in Industrieanwendungen24 Kreativität Ideen für das Internet der Dinge entwickeln28 Ethik Entwicklermanifeste für das Internet der Dinge32 Know-how Systementwurf System- und Softwarearchitekturen für das Internet der Dinge36 Modellierung Realisieren komplexer Projekte46 Usability Anwenderschnittstellen von Beginn an berücksichtigen50 Datenverarbeitung Prototypen mit Big-Data-Anbindung entwickeln54 Versorgung Energiegewinnung für autarke Systeme58 Security IT-Sicherheit und Datenschutz in IoT-Projekten umsetzen62 Protokolle Internetprotokolle Internet- und Anwendungsprotokolle als IoT-Grundlage68 MQTT Message Queue Telemetry Transport fürs Internet der Dinge und Dienste74 Kommunikationssicherung MQTT sicher verwenden78 Standards OPC UA 1.03 und MTConnect 1.3: Neue Kommunikationsstandards für das IoT82 Konvergenz Sensorprotokolle gemeinsam einsetzen90 Sprachen C und C++: C-Sprachen in Open-Source-Projekten für das IoT100 Java Open Source Java-APIs für die Entwicklung von IoT-Applikationen108 JavaScriptInternet of Things für Einsteiger114 ElixirMit Erlangs Erben in die Zukunft122 LuaAlternative Programmiersprache für das IoT126 Praxis Infrastruktur: Digitale Transformation der Gebäudetechnik132 Interoperabilität: Erfahrungen aus dem Aufbau moderner IoT-Architekturen134 Objektkommunikation:Einführung in das Physical Web138 Messaging:Tipps und Tricks zur Umsetzung eines Messaging-Systems in C#144 Heimautomatisierung:Anbindung einer mit Codesys programmierten SPS an OpenHAB148 Sonstiges Editorial3 Impressum6 Inserentenverzeichnis6 Niemand lebt für sich allein In der Welt der IT folgt Hype auf Hype. Nach Big Data und der Cloud hat die Industrie nun das sogenannte Internet der Dinge für sich entdeckt. Heimautomatisierungsszenarien, Maker-Projekte und eine Reihe zweifelhafter Produkte, scheinbar ohne Sinn und Verstand zusammengeflanscht und mit Internetanschluss versehen, sollen eine neue Zeitrechnung einläuten. Und auch die Berichterstattung lädt nicht unbedingt dazu ein, sich als Nicht-Insider auf professioneller Ebene näher mit der neuen Domäne zu befassen: Zu häufig liegt der Fokus auf Sicherheitsproblemen und Skurrilitäten. Häufig werden die Schwachstellen im Zuständigkeitsbereich der IoT-Entwickler gesucht – etwa im Fall des Jeeps, dessen Fahrer nach einem System-Hack die Kontrolle über das Gefährt verlor. Folglich scheint es so, als erhielten Softwareentwickler und -architekten nicht nur ein neues Einsatzgebiet, sondern auch noch einen Haufen Verantwortung. Ab sofort liegt es nicht nur in ihrer Hand, dass die Software den formulierten Ansprüchen gerecht wird, sie müssen unter anderem auch dafür sorgen, dass die Kommunikation mit der Hardware und anderen Infrastrukturelementen sicher und problemlos über Systemgrenzen hinweg funktioniert. Zudem sollen sich Daten im Zweifel in Echtzeit auswerten lassen. Und in allen Projekten sind Mechanismen vorzusehen, die gewährleisten, dass einmal ausgelieferte Geräte auch über die Dauer ihres Betriebs vor Angriffen geschützt sind, der Anbieter also jederzeit Aktualisierungen oder Wartungen durchführen kann – ganz ohne die beliebten Hintertürchen. Neulinge können all diese Anforderungen kaum erfüllen. Zwar gibt es das Internet der Dinge in der einen oder anderen Form und unter anderen Namen schon eine ganze Weile, trotzdem ist die Disziplin als Ganzes noch zu jung, um bereits mit allgemeingültigen Handlungsempfehlungen aufwarten zu können. Selbst aus der Telekommunikationstechnik oder der Embedded-Programmierung bekannte Eigenheiten scheinen ganz neue Dimensionen einzunehmen. Spätestens aber, wenn der Vorgesetzte von den wirtschaftlichen Prognosen erfährt, die an mehreren Stellen im Heft erwähnt werden, geht kein Weg mehr am IoT vorbei.Die zahlreichen Open-Source-Projekte des IoT sind Zeugnis des Stellenwerts, den Kommunikation abseits der technischen Ebene in ihm spielt. Gemeinsam lassen sich viele Probleme lösen und häufig besser, als das allein möglich gewesen wäre. So gut wie jeder kann etwas zum IoT beitragen, was wohl auch einen Teil seiner Faszination ausmacht. Dieses Heft kann zwar niemandem die Einarbeitungsmühen abnehmen, die für ein erfolgreiches Mitmischen in der schönen neuen Welt nötig sind. Einen Wegweiser für die Navigation in ihren Tiefen kann es aber auf alle Fälle bieten und im Zweifel zeigen, dass man mit vielen Überlegungen, die sich in der ersten Zeit aufdrängen, nicht allein steht. Hypes sind (nicht nur, aber auch) ein Zeichen dafür, was Menschen bewegt. Ein offenes Ohr und Kommunikationsfähigkeit können also enorm helfen, wenn man die Zukunft mitgestalten möchte. Das Web lässt grüßen. Julia Schmidt Auf der Heft-DVD Sponsored Software: Intel Parallel Studio XE 2016: Intels Tool Suite zum Entwickeln, Debuggen und Verbessern von auf die parallele Abarbeitung ausgelegtem C++- und Fortrancode kann Programmierern dabei helfen, schnellere Software zu erstellen und die Prozessorleistung bestmöglich zu nutzen. IDEs und Editoren: Eclipse 4.5.1: Die erste Mars-Service-Release der Entwicklungsumgebung für Java-Programmierer. Atom: Atom ist ein quelloffener Editor aus dem JavaScript-Umfeld. Arduino: Das Arduino-Projekt stellt seinen Nutzern eine eigene IDE zur Verfügung. Big und Smart Data: Daten sammeln und verarbeiten ist eine zentrale Aufgabe des IoT. Hilfestellungen können unter anderem die auf der DVD zu findenden Apache-Projekte aus dem Big-Data-Umfeld geben: Flume, Hadoop, Hive, Kafka, Spark, Zookeeper. Sprachen: Lua und Elixir sind vielleicht bereits aus anderen Zusammenhängen bekannt, das IoT bietet jedoch ein interessantes neues Umfeld für beide Sprachen. JavaScript: Die Lingua Franca des Web erlangt derzeit verstärkt als verbindendes Element des IoT Aufmerksamkeit. Webentwicklern steht mittlerweile eine Vielzahl an Projekten zur Verfügung, die bei der Umsetzung von Teilaufgaben helfen können. Auf der DVD finden sich daher Cylon.js, Johnny-Five, macchina.io, Mosca, MQTT.js, node-coap, Node.js, Node-RED, Socket.IO und Zetta. openHAB: Die quelloffene Plattform soll dabei helfen, Komponenten zur Gebäudeautomatisierung hersteller- und protokollneutral zu verbinden. Physical Web: Zwar steht das auf Interaktion ausgelegte Smart-Object-Projekt noch ziemlich am Anfang seiner Entwicklung. Wen der Artikel allerdings neugierig gemacht hat, kann auf der DVD einen Blick auf den Quellcode der Physical-Web-App werfen. Frameworks: AllJoyn: Das Linux Foundation Collaborative Project soll die Kommunikation zwischen Anwendungen und Geräten sowie das gegenseitige Entdecken erleichtern. Eclipse SmartHome: Über System- und Protokollgrenzen hinweg soll das Abstraktions- und Übersetzungs-Framework Interaktion ermöglichen. Kura ist Teil des Eclipse-IoT-Projekts, nimmt Java/OSGi zur Grundlage und dient als Framework für IoT-Gateways. openHAB: Betriebssystem für das IoT: Riot; Middleware-Plattform: Kaa; Messaging: Mosquitto und Paho

12,90 €

iX Developer Machine Learning
Highlights Inhalt Bewertungen Überblick Nach der Entscheidung für den Einsatz von Machine Learning fängt die Suche nach den passenden Methoden an. Spezielle Hardware beschleunigt schließlich die Arbeit und ermöglicht viele Anwendungen Überhaupt erst. ab Seite 7 Praxis Inzwischen ist KI gereift genug für Erfahrungsberichte aus allgemeinen Bereichen wie Bild- und Textanalyse und dem Verarbeiten natürlicher Sprache, aber auch aus speziellen Anwendungsfeldern wie dem Erkennen relevanter Inhalte. ab Seite 77 Frameworks DDie Werkzeugkiste für Machine-Learning-Anwendungen besteht zum Großteil aus gut gepflegten, kostenlosen Open-Source-Tools. Neben dem Platzhirsch TensorFlow rückt vor allem Keras immer mehr in den Fokus. Wer es hardwarenah mag, kann auf cuDNN setzen. ab Seite 51 Frameworks DDie Werkzeugkiste für Machine-Learning-Anwendungen besteht zum Großteil aus gut gepflegten, kostenlosen Open-Source-Tools. Neben dem Platzhirsch TensorFlow rückt vor allem Keras immer mehr in den Fokus. Wer es hardwarenah mag, kann auf cuDNN setzen. ab Seite 51 Ethik und Recht Der Einsatz von Machine Learning wirft auch juristische und ethische Fragen: Was ist machbar und was nur Hype? Wer haftet für Schäden? Wie können Forscher verantwortungsvoll mit KI umgehen? Und wie nehmen Menschen Maschinen mit künstlicher Intelligenz wahr? ab Seite 137 Überblick 8 Grundlagen und Methoden: Einführung in die Künstliche Intelligenz 16 Neuronale Netze und Deep Neural Networks: Das Gehirn des Rechners 21 Historie: Eine kurze Geschichte des Deep Learning und der KI 24 Blick in die Blackbox: Erklärbarkeit von Machine-Learning-Modellen 32 Hardware: GPUs und spezielle CPUs für Machine Learning 38 Hardware pusht KI 44 Neuromorphe Chips für neuronale Netze Frameworks 52 Unter der Lupe: TensorFlow, Keras, Microsoft, Cognitive Toolkit, Torch, PyTorch, Caffe/Caffe2 und Theano 58 Eine Einführung in TensorFlow 64 Einführung in das Deep-Learning-Framework Keras 68 Deep-Learning-Modelle: Modelle deployen mit TensorFlow Serving 72 CUDA: cuDNN schafft die Grundlage für Deep Learning mit GPUs Praxis 78 Bildanalyse: Deep Learning zur Bilderkennung – eine HPC-Perspektive 86 Textanalyse: Mit Machine Learning große Textmengen analysieren 94 Named Entity Recognition: Deep Learning für die Datenextraktion 100 Natural Language Processing: NLP mit Python und TensorFlow Infrastruktur 108 Cloud-Vergleich: Die wichtigtsen Machine-Learning-as-a-Service-Angebote 118 Programmiersprachen: Machine Learning mit Python 123 Programmiersprachen: Machine Learning mit C++ 126 Programmiersprachen: Machine Learning mit Scala 132 Big-Data-Framework: Ziffernerkennung mit Apache Spark Ethik und Recht 138 Status quo: Künstliche Intelligenz – zwischen Hype und Realität 142 Artificial Ethics: Ethische Aspekte und Responsible Research 148 Haftung: Rechtsfragen der künstlichen Intelligenz Sonstiges 3 Editorial 147 Inserentenverzeichnis 147 Impressum 154 Glossar

12,90 €

iX Developer Moderne Softwarearchitektur 2020
Softwarearchitektur Domain-driven Design ist keineswegs ein neues Verfahren, Software zu modellieren. Aber insbesondere die komplexen Herausforderungen durch Microservices verdeutlichen den Wert dieser Herangehensweise. Und zur Bewältigung der Komplexität von Microservices-Architekturen mag sogar eine erneute Beschäftigung mit Design Patterns hilfreich sein. Cloud Es gibt unterschiedlichste Ansätze, um Cloud-native Anwendungen zu entwickeln. Architekten stehen deshalb in einem Spannungsfeld aus verschiedenen Bewertungskriterien, um aus den möglichen Architekturen den passenden Ansatz für ihren Anwendungskontext zu finden. Qualität Requirements Engineering, Testautomatisierung, Security, Software-Reviews, Dokumentation und Performance-Analyse sind allesamt etablierte Bereiche des Softwarelebenszyklus. Dieses Sonderheft beleuchtet unter anderem jüngere Entwicklungen wie Shift Left oder Documentation as Code. Web und Mobile WebAssembly will eine Plattform zur Ausführung von vorkompiliertem Bytecode sein, Project Fugu die Lücke zwischen nativen Apps und Progressive Web Apps schließen und deklarativen UI-Frameworks gehört offenbar die App-Zukunft. Zeit, sich jetzt hierzu schlau zu machen. Diverses Softwarearchitekten müssen sich beileibe nicht nur mit System-Design, Aspekten der Softwarequalität oder angesagten neuen Technologien auseinandersetzen, sie sollten auch Zukunftstechniken wie Machine Learning oder Quanten-Computing frühzeitig auf dem Radar haben. Selbst soziale oder gesellschaftliche Entwicklungen haben immer wieder mal Einfluss auf Produkte, Projekte und Teams. Softwarearchitektur 8 Große Systeme mit DDD entwerfen 12 Domain-driven Design und Bounded Context 16 EventStorming: Interview mit Alberto Brandolini 18 Architecture Decision Records: Methode zur Dokumentation von Architekturentscheidungen 22 Altbewährte Entwurfsmuster für zeitgemäße Microservices-Anwendungen 26 Microservices: Interview mit Sam Newman Cloud 30 Der Weg zu einer Cloud-nativen Architektur 44 Containerorchestrierung im Wandel 36 Kubernetes mit Go erweitern 50 Von Usability und Features – Service-Meshes im Vergleich Qualitätssicherung 58 Requirements Engineering im agilen Umfeld 64 Shift Left – Secure by Design und agile Entwicklung 72 Die neue und spezialisierte OWASP API Security Top 10 74 Testautomatisierung in komplexen Umgebungen 82 Reviews : Probleme und Risiken in Software zielsicher identifizieren 90 Tipps für die Performance-Analyse 94 Documentation as Code mit Asciidoctor Diverses 102 Web und Mobile Das Ökosystem um WebAssembly 108 Project Fugu: Mehr Leistung für das Web 114 Deklarative Nutzeroberflächen übernehmen die App-Entwicklung 120 Ethik in der Softwareentwicklung: Wann, wer und wie 126 User Experience in Organisationen verankern und dauerhaft managen 131 DIN EN ISO 9241-210 konkretisiert User Experience 135 Softwarearchitektur trifft auf Künstliche Intelligenz 141 Quanten-Computing: Zukunftstechnologie mit stark eingeschränktem Einsatzfeld 145 Tipps für die Fort- und Weiterbildung: Das empfiehlt der SoftwareArchitekTOUR-Podcast 3 Sonstiges Editorial 87 Impressum

14,90 €

iX Developer Spiele entwickeln 1/2015
Highlights Inhalt Editorial Heft DVD Bewertungen Beruf + Studium Viele heute bekannte Entwickler mussten sich in den Anfangszeiten der Spieleentwicklung alles Nötige selbst beibringen und danach sehen, wie sie ihr Talent zu Geld machen konnten. Mittlerweile ist die Spielebranche ein ganz reguläres Arbeitsumfeld und deutsche Hochschulen bieten Studiengänge, die auf die Arbeit dort vorbereiten. Technik Game Engines wie Unity können die Arbeit eines Spieleentwicklers erheblich erleichtern und sind dank der aktuellen Lizenzpolitik auch für Start-ups und Einzelkämpfer bezahlbar. Zum Teil lassen sie sich sogar für die Entwicklung von Virtual-Reality-Anwendungen verwenden, auf die man in Zukunft wohl häufiger treffen wird. Know-how Je komplexer das Spiel, desto mehr Zeit muss man in die Programmlogik investieren. Hintergrundfiguren sollen mehr als nur leblos in der Ecke stehen und auf Verzögerungen bei Online-Spielen würden die meisten Nutzer gern verzichten. Hat man durch seine Arbeit dann einen gewissen Status erreicht, wird allerdings auch die Konkurrenz neugierig. Praxis Ob es um den Umgang mit Unity, die Spieleentwicklung mit HTML5 oder die Gestaltung von Assets geht: Neues lernt man nur durch ausprobieren. Ein bisschen Hilfe in Form einführender Artikel kann dabei allerdings nicht schaden. Und zu Unity gibt es obendrein bewegte Bilder: vier ausführliche Videos auf der Heft-DVD. BERUF + STUDIUM Beruf Als Programmierer in die Games-Branche8 Ausbildung Deutschlands Studienangebote zur Spieleentwicklung im Überblick12 Interviews Spieleentwickler John Romero über seinen Weg und die Entwicklung der Games-Branche18 Von Amberstar bis GTA: Jurie Horneman im Interview19 GRUNDLAGEN Arbeitsabläufe Klassischer Workflow der Spieleproduktion22 Spielmechanik Konzeption und Mechanik von Spielen26 Vermarktung Internationalisierung und Monetarisierung von Free-to-Play-Spielen31 Motivation Was treibt den Spieler34 Serious Games Computerspiele für mehr als nur Unterhaltung38 TECHNIK Game Engines Component-Based Entity Systems in Spielen70 Künstliche Intelligenz Einführung in Behavior Trees76 Sicherheit Entwicklungssysteme vor Angreifern schützen85 Optimierung Spielerdaten tracken92 Latenzen Verzögerungen in Online-Spielen durch Client-Side Prediction kompensieren98 RECHT Steuer Änderungen im Umsatzsteuerrecht104 Datenschutz Juristisch korrekter Umgang mit Nutzerdaten106 PRAXIS Assets Spielobjekte professionell erstellen112 HTML5 3D-Spiele mit Webtechniken entwickeln118 Unity-Tutorial Teil 1: Erste Schritte mit der Game Engine129 Teil 2: Animation und logischer Programmablauf138 Teil 3: Komplettes Spiel mit mehreren Plattformen und visuellen Effekten145 SONSTIGES Editorial 3 Inserentenverzeichnis 107 Impressum 107 Spielen verbindet Menschen, die auf den ersten Blick keinerlei Gemeinsamkeiten haben, kommen in der Bahn schnell ins Gespräch, wenn sie auf ihrem Mobilgerät gerade am selben Level Candy Crush verzweifeln. Egal, ob man nur einen kurzweiligen Zeitvertreib für unterwegs sucht oder seinen Abend mit einem komplexen Strategiespiel verbringen will: Angebote für unterschiedliche Plattformen und in verschiedenen Schwierigkeitsgraden haben dafür gesorgt, dass Spiele heute allgegenwärtig sind. Das Spektrum reicht dabei von simplen Mobilspielen wie Flappy Bird, die trotz vergleichsweise wenig Aufwand Erfolge feiern, bis hin zu cineastisch wirkenden Titeln, deren Budget schon an das einer großen Filmproduktion heranreicht. Die hohen Investitionen der Entwickler lohnen sich durchaus, wenn man die Umsatzzahlen betrachtet: Allein deutsche Spieler gaben im ersten Halbjahr 2014 ungefähr 798 Millionen Euro aus, sechs Prozent mehr als im Vorjahr. Dabei sollten die ersten Spiele, die vor circa 60 Jahren das Licht der Welt erblickten, lediglich dazu dienen, der allgemeinen Bevölkerung die Scheu vor der damals aufkommenden Computertechnik zu nehmen. Im Laufe der folgenden Jahre änderte sich die Motivation allerdings, da Entwickler erkannten, dass sie auch mit derartigen Hobbys ihren Lebensunterhalt verdienen konnten. Durch neue technische Möglichkeiten wurden die Produkte immer komplexer und an die Stelle des einsamen Spieleentwicklers traten ganze Teams. Außerdem wurde der Einstieg in die Branche mit der Zeit immer leichter. Computer waren nicht mehr nur an Hochschulen, sondern auch im privaten Haushalt zu finden und es standen immer mehr Ressourcen zur Verfügung, dank derer man sich nicht mehr alles durch Ausprobieren beibringen musste. Betrachtet man die Komplexität großer Titel, ist es auch höchst unrealistisch, sich heute noch das gesamte nötige Wissen im Alleingang anzueignen. Diesem Umstand und dem finanziellen Potenzial der Spieleindustrie tragen mittlerweile auch die deutschen Hochschulen mit entsprechenden Studiengängen Rechnung. Aber auch Quereinsteiger haben nach wie vor ihren Platz in der Branche. Gerade sie bringen häufig neue Perspektiven in den Entwicklungsprozess. Letztlich kann also jeder etwas zum heutigen Spielemarkt beitragen, und es ist einfacher denn je, als professioneller Programmierer Fuß zu fassen. Game Engines helfen bei der Entwicklung, und zur Veröffentlichung muss man nicht wie noch vor einigen Jahren einen großen Publisher hinter sich wissen – der Zugang zu einem der großen App Stores reicht meist schon aus, um zu sehen, wie gut die eigenen Ideen ankommen. Wer also noch mit einem warmen Gefühl im Bauch an seine erste Runde mit dem Flugsimulator denkt, sich erinnert, wie er das erste Mal ein Ablenkungsmanöver mit dreiköpfigem Affen gefahren hat oder gerade zwischen Datenbankprogrammierung und dem Entwickeln des nächsten Minecraft schwankt, kann dieses Heft zum Anlass nehmen, sich an einem eigenen Projekt zu versuchen. Genug Inspiration sollten die Tutorials und Artikel auf den folgenden Seiten bieten. Mit etwas Geduld, Mut und Durchhaltevermögen ist es vielleicht schon bald Ihr Spiel, über das die Leute bei der nächsten Zugverspätung ins Gespräch kommen. Und wenn nicht, hat Entwicklergröße John Romero, der im Heft auch zu Wort kommt, den passenden Rat: Hinsetzen, neu anfangen und nicht aufgeben. Julia Schmidt Auf der Heft-DVD Sponsored Software: Intel Parallel Studio XE 2015: Intels Tool Suite zum Entwickeln, Debuggen und Verbessern von auf die parallele Abarbeitung ausgelegtem C++- und Fortran-Code. Engines: Unity 4.5.5 und jMonkeyEngine – Unity zählt zu den am meisten genutzten Games Engines. Mit ihr lassen sich Spiele entwickeln, die auf allen wichtigen Betriebssystemen laufen. Java-Entwickler können mit der quelloffenen jMonkeyEngine schnell Ergebnisse erzielen. Tutorials: Um das Unity-Tutorial im Heft besser nachvollziehen zu können, stehen vier begleitende Videos zur Verfügung. Die Projektdateien sind in zwei separaten Ordnern hinterlegt. Als Hilfe für das HTML5-Tutorial ist der TroniX-Quellcode auf der DVD enthalten.

12,90 €

iX kompakt 2018
Highlights Inhalt Bewertungen Maschinelles Lernen Machine Learning und die Verarbeitung gewaltiger Datenmengen mit Maschinenintelligenz ist dabei, die IT umzukrempeln. Zwei Tutorials erläutern, wie man mit TensorFlow neuronale Netze baut und große Textmengen mit ML-Algorithmen analysiert. Python Die Skriptsprache hat sich zum Schweizer Taschenmesser der IT gemausert. Obwohl Python schnell und einfach zu erlernen ist, lohnt es sich, tiefer einzusteigen und sich mit Themen wie Multithreading, Asynchronität und Jupyter/IPython zu beschäftigen. Modernes JavaScript JavaScript gehört zu den meist genutzten Programmiersprachen. Schwerpunkte im Heft sind die Entwicklung komplexer Web-Anwendungen mit Angular, GraphQL als Alternative zu REST-APIs und moderne Microservice-Architekturen mit Node.js. C++17 und C++20 C++-Experte Rainer Grimm beschreibt, was sich mit dem aktuellen Standard C++17 geändert hat, wie C++17 und C++20 Multithreading besser handhabbar machen und was es mit den Concepts im kommenden C++20 auf sich hat. Maschinelles Lernen 8 Neuronale Netze mit Python, Teil 1: Maschinelles Lernen mit TensorFlow 18 Neuronale Netze mit Python, Teil 2: Neuronale Netze und Deep Learning 26 Neuronale Netze mit Python, Teil 3: Neuronale Netze anwenden 32 Moderne Textanalyse, Teil 1: Texte zerlegen und Zusammenhänge visualisieren 40 Moderne Textanalyse, Teil 2: Verborgene Strukturen mit unüberwachtem Lernen entdecken 47 Moderne Textanalyse, Teil 3: Texte mit überwachtem Lernen klassifizieren Python 54 Parallele Programmierung mit Python: Teil 1 Multitasking 60 Parallele Programmierung mit Python, Teil 2: Asynchrone Verarbeitung 66 Parallele Programmierung mit Python, Teil 3: Verteilte Systeme mit Jupyter und IPython 72 Big Data: Robuste Data-Science-Projekte mit Python und Luigi JavaScript 80 Modernes JavaScript 88 Webentwicklung mit Angular, Teil 1: Grundgerüst, Zugriff auf Webservices, Templates 96 Webentwicklung mit Angular, Teil 2: REST, Komponenten, Routing 104 Webentwicklung mit Angular, Teil 3: Optimierung 110 APIs mit GraphQL implementieren 118 Microservices mit Node.js C++ 126 C++17 - was der neue Standard bringt 134 Multithreading in C++17 und C++20 144 Concepts in C++20: Die zentralen Ideen 150 Concepts in C++20: Mehr Details Rubriken 3 Editorial 17 Impressum, Bildnachweise 17 Inserentenverzeichnis

12,90 €

iX Kompakt Administration Open-Source 2014
Highlights Inhalt Editorial Heft DVD Bewertungen Wer ist wer Früher oder später stellt sich in gemischten Umgebungen die Frage, wie man die Benutzerverwaltung von unixoiden und Windows-Systemen unter einen Hut bekommt. Für das Themenfeld Identity-Management bietet die Open-Source-Community leistungsfähige Alternativen. ab Seite 33 Cloud und mehr Im Open-Source-Cloud-Umfeld hat sich das Projekt OpenStack mittlerweile zum De-facto-Standard entwickelt – die Zahl von über 200 unterstützenden Unternehmen spricht für sich. Ein Tutorial beschreibt Schritt für Schritt den Weg zur eigenen „Private Cloud“. ab Seite 135 Eine Frage der richtigen Überwachung Wem seine IT am Herzen liegt, der kümmert sich nicht erst bei Fehlern um das Wohlbefinden der Systeme. Die Open-Source-Pakete Nagios und das daraus entstandene Icinga sind heute die verbreitetsten Anwendungen für das Monitoring. Wie man mit diesen und weiteren Tools seine Umgebung automatisch erfasst sowie sie sicher im Auge behält ab Seite 81 SICHERHEIT Betriebssystem-Security Grsecurity für das Härten von Linux-Systemen 8 Compliance-Management Systemüberprüfungen mit OpenSCAP 16 SELinux-Tutorial Mandatory Access Control auf Linux-Systemen 24, 28 IDENTITäTSMANAGEMENT FreeIPA-Tutorial Linux- und Windows-Welt mit dem freien Identity-Management-Framework verbinden 34, 40, 46 Single Sign-on Mehrfaktor-Authentifizierung durch Kerberos 52 Active-Directory-Tools Kerberos-Keytab-Management mit msktutil 58 SYSTEMKONFIGURATION AD-Integration Mit Linux via SSSD ins Active Directory 62 Backup Daten sichern mit Bacula 7 67 Wiederverwendung Ältere Hardware mit FreeNAS weiternutzen 72 Softwareverteilung Linux-Clients per m23 zentral verwalten 76 MONITORING Security Best Practises für sichere Monitoring-Systeme 82 Inventarisierung Octopussy für die automatische Bestandserfassung 90 Werkzeuge Systemüberwachung mit Icinga 2 96 Linux-Tools Systemaktivität überwachen 105 Log-Management Ein integriertes Monitoring-System mit Logstash 106 Systemüberwachung Mit Octopussy Logdateien zentral verwalten 112 NETZWERK DDoS-Abwehr Offene DNS-Server als Waffe im DDoS-Angriff 118 Administrations-Tools Netzproblemen per Wireshark auf die Spur kommen 120 Sicheres Linux Mandatory Access Control für IP-Pakete 124 Zugriffskontrolle Port-based 802.1x-Authentifizierung mit RADIUS 128 VIRTUALISIERUNG UND CLOUD OpenStack-Tutorial Grundstein für die eigene „Private Cloud“ 136, 142, 148 Linux-Container Mit Docker Anwendungen virtualisieren 155 Open-Source-Tools MCollective und Rundeck für das zentrale Administrieren virtueller Maschinen 159 SONSTIGES Editorial 3 Impressum 6 Inserentenverzeichnis 6 Informationen zur UCS-Demo-Appliance 6 Cat-Content satt Nach landläufiger Meinung soll beim sogenannten Cat-Content angeblich kein Sysadmin widerstehen können – egal ob Cat-5e oder lebende Miezekätzchen. Während sich Letztere in diesem iX-Kompakt zu Administration mit Open-Source-Tools als Aufmacherbilder tummeln, spielen Cat-x-Kabel als Transportmedium im Tagesgeschäft der IT eine tragende Rolle. Sie sind quasi die Nervenenden des globalen Rückgrats Internet, über das Anwender und Anwendungen Daten austauschen. Im Internet funktionierten von Anfang an große Teile der Infrastruktur mit Open-Source-Betriebssystemen und -Programmen – etwa Linux oder der Webserver Apache. In anderen Bereichen war freie Software zunächst überwiegend technikaffinen und experimentierfreudigen Naturen vorbehalten. Doch inzwischen hat das dahinter stehende Entwicklungsmodell große Verbreitung und Akzeptanz gefunden. Selbst klassische IT-Unternehmen wie HP, IBM und Co. setzen für ihre Angebote teilweise – Tendenz steigend – auf freie Komponenten. Die wiederum müssen in vielen Bereichen den Leistungsvergleich mit ihren kommerziellen Gegenstücken nicht scheuen, laufen ihnen zum Teil sogar den Rang ab. Ein aktuelles Beispiel hierfür ist OpenStack. Das ursprünglich von der NASA und der amerikanischen Rackspace Inc. initiierte Projekt hat sich mit mittlerweile rund 200 unterstützenden Firmen zum Quasi-Standard für offene Cloud-Angebote gemausert. Allein die Liste der Gold- und Platin-Mitglieder liest sich wie das Who-is-Who der IT-Branche. Dabei setzen produktseitig nicht nur die „üblichen Verdächtigen“ wie Red Hat, SUSE oder Canonical auf OpenStack, auch HP und IBM haben darauf basierende Cloud-Angebote im Portfolio. Apropos: Ein dreiteiliges Tutorial in diesem Heft zeigt Schritt für Schritt, wie sich das aktuelle OpenStack „Icehouse“ im eigenen Umfeld einsetzen lässt. Aber nicht nur bei den Infrastrukturkomponenten kann Open Source punkten, auch beim Administrieren und Steuern der zugehörigen Systeme existieren neben dem breiten Strauß kommerzieller Pakete leistungsfähige freie Alternativen. Letztlich kommen vor allem in komplexen Umgebungen die IT-Verantwortlichen nicht ohne effiziente Werkzeuge für die Systemverwaltung aus. Hier kann die Community ein vielfältiges Angebot vorweisen. Gerade im Bereich Monitoring setzt man derzeit quasi die Standards dessen, was machbar ist. Jedoch fordert die Komplexität der Anwendungen ihren Tribut: Die gängige Vorstellung, Open-Source-Software koste ja nichts, stimmt nur bedingt. Zwar fallen keine Lizenzkosten an, aber für einen wirkungsvollen Einsatz muss man entweder in das Know-how seiner Mitarbeiter investieren oder externes Wissen von Dienstleistern einkaufen. Der Gewinn, der in jedem Fall bleibt, ist die Offenheit der eingesetzten Tools. André von Raison Software zum Heft: Bacula 7.0.3, FreeNAS 9.2.1.5, Kerberos-Tools (kstart 4.1, msktutil 0.5.1, realmd 0.14.5, SSSD 1.11.5.1), Logstash (Elasticsearch 1.1.1, Kibana 3.0.1, Redis 2.8.9), Octopussy 1.0.14, OpenSSL 1.0.1g (Windows), WinSCP 5.3.3, Wireshark 1.10.7, Zenmap 6.46 Weitere Tools: 7-Zip, dd_rescue 1.40, dd_rhelp 0.1.2, EtherAPE 0.9.13, Iperf 2.0.5/3.0, liboping 1.6.2, Ncat 6.46, Ndisc6 0.7.1, Netperf 2.6.0, Nmap 6.46, Nping 0.6.46, OpenVPN 2.3.3, OpenVPN GUI 1.0.3, p7zip 9.20.1, Putty, tinc 1.0.24, Tunnelblick 3.1.7 Dokumentation: M23-Handbuch, OpenLDAP Admin Guide, Wireshark User Guide, über 350 RFCs Fertige VMs zum Ausprobieren: · Debian-Wheezy mit Bacula 7 · CentOS 6.5 mit Icinga 2 und Icinga Web 2 · Univention Corporate Server 3.2-2 (25 User) Hinweis für Käufer der digitalen Ausgaben · PDF- und iPad-Version: In der iX-App finden Sie einen Button zum Download des DVD-Images. · PDF-E-Book: Folgen Sie im Browser der unter „Alle Links“ angegebenen URL zum DVD-Image. Alle Links: www.ix.de/ix1416004 Alle Links: www.ix.de/ix1416SSS Artikel mit Verweisen ins Web enthalten am Ende einen Hinweis darauf, dass diese Webadressen auf dem Server der iX abrufbar sind. Dazu gibt man den iX-Link in der URL-Zeile des Browsers ein. Dann kann man auch die längsten Links bequem mit einem Klick ansteuern. Alternativ steht oben rechts auf der iX-Homepage ein Eingabefeld zur Verfügung.

12,90 €

iX kompakt Agiles Projektmanagement 2015
Highlights Inhalt Editorial Bewertungen Agile Softwareentwicklung kompakt Zwar haben sich agile Verfahren in der Softwareentwicklung etabliert, aber die kommen leider ebenfalls nicht ohne Tücken aus. Es gibt viele Stolperfallen, und wer nur auf die Methoden schaut, hat gute Chancen, dabei auf die Nase zu fallen. Einen Überblick gibt es ab Seite 8 Abseits des Hype Manche Anhänger des Agilen konzentrieren sich zu stark auf die Methoden. Um mit diesen Techniken erfolgreich zu sein, braucht es jedoch mehr, vor allem eine realistische Einschätzung der Lage. Seiten 14, 18, 22 und 54 Den Kollegen verstehen Tools und Techniken sind zwar wichtig, ohne kreative Köpfe läuft jedoch nichts. Wie man die anzapft und das Team richtig motiviert, steht auf den Seiten 58, 64, 70 und 74 Das Beste beider Welten Rundum agil kommt man meist nicht ins Ziel. Zu viel unagile Hindernisse wie Festpreise, kulturelle Differenzen und Haftungsfragen liegen im Weg. Es gilt daher, die jeweils passenden Dinge zu kombinieren. Seiten 96, 100, 124, 133 und 138 Einführung Agilität In 28 Artikeln: So gelingen agile IT-Projekte8 Projekte & Qualität Methodenkritik Agiles Projektmanagement: Eine Illusion?14 Firmenkultur Scrum nachhaltig im Unternehmen einführen18 Planungsmethoden Genauere Schätzungen durch Komplexitätsreduzierung22 Softwarequalität Werte schaffen mit sinnvollen Inkrementen28 Anforderungsmanagement Requirements Engineering in der agilen Entwicklung32 Qualitätssicherung Software testen im agilen Entwicklungsprozess36 Outsourcing Agile Techniken und Offshoring zusammenbringen40 Erfahrungen Vom agilen Projekt zum agilen Unternehmen46 Kommunikation & Soft Skills Projektführung Wie man Projekte gekonnt scheitern lässt54 Umgangsformen SCARF: Die fünf Grundbedürfnisse des Menschen58 Psychologie Projekte mit gewaltfreier Kommunikation verbessern64 Coaching Agiler Coach: Change Agent mit vielfältigen Aufgaben70 Führungsstil Der agile Manager: Gewünschte Kultur vorleben74 Didaktik Visual Facilitation: Workshops lebendiger gestalten80 Arbeitsumfeld Eine produktive Umgebung für Teams schaffen86 Methoden & Modelle Grundlagen Historie der agilen Entwicklung92 Feature Driven Development Agile und konventionelle Verfahren zusammenführen96 Skalierung Scaled Agile Framework: Große Projekte agil umsetzen100 Change Management Kontinuierliches Lernen durch Retrospektiven104 Hybride Verfahren Festpreisprojekte mit kombinierten Verfahren109 Schätzverfahren Funktionsumfänge statt Aufwände festlegen112 Organisation Teamübergreifende Projekte mit Kanban umsetzen118 Globalisierung Internationale Projekte mit Scrum steuern124 Compliance & Recht Regeltreue Compliance in agilen Projekten umsetzen130 Vertragsgestaltung Planbare Kosten mit agilen Festpreisen133 Projekthaftung So kann man sich gegen Schadensfälle absichern138 Dokumentation Testfälle in agilen Projekten beschreiben142 Sonstiges Editorial 3 Inserentenverzeichnis 6 Impressum 6 Zurück zum Ursprung Wie ein roter Faden zieht er sich durch das gesamte Heft, der erste Leitsatz aus dem agilen Manifest: Individuals and interactions over processes and tools. Menschen und ihre Zusammenarbeit sind der Schlüssel zum Erfolg in der Softwareentwicklung. Eine ernst zu nehmende Studie von oose Informatik untermauert diese Erkenntnis (siehe „Alle Links“). Das gewählte Vorgehen ist danach zweitrangig, auch wenn agil durchgeführte Projekte unbestritten eine höhere Erfolgsquote aufweisen als traditionelle. Das liegt nahe, es ist einfach sinnvoller, Software in regelmäßigen Abständen und in verdaulichen Häppchen auszuliefern, als dem Kunden am Ende einen Riesenbatzen hinzuwerfen, von dem er vorher nichts zu sehen bekam. In der Regel folgt ein böses Erwachen. Nur: Was genau bedeutet eigentlich agil? Auf den Hype vor ein paar Jahren, der im Prinzip dafür warb, den gesunden Menschenverstand in die Softwareentwicklung einzuführen, folgte zwar keine Ernüchterung – dafür sind die Vorteile zu offensichtlich –, aber eine realistische Einbettung der agilen Ideen in das tatsächliche Geschehen. Denn auch früher ging nicht alles schief, die zunehmende Komplexität der Anforderungen deckte jedoch die Schwächen wasserfallmäßig organisierten Projektmanagements auf. Es mussten neue Verfahren her. Allerdings galt Scrum zunächst nur als Technik für überschaubare Projekte. Die Anpassung an große und internationale Vorhaben kam erst später hinzu. Nun zeigte sich: Ganz ohne Formalismen geht es nicht. Und so mauerte man die schöne neue Welt wieder ein mit administrativen Vorgaben, festgelegten Rollen und allerlei Spezialbefindlichkeiten. Einer konservativen Organisation lässt sich der pure Stoff nicht schmerzlos verabreichen. Und so beklagte sich Dave Thomas, einer der Väter des im Jahre 2001 proklamierten agilen Manifests, 2014 darüber, dass die IT-Industrie aus reinem Profitinteresse die Seele aus den agilen Ideen sauge (siehe „Alle Links“). Tatsächlich hat sich darum eine Armee aus Beratern, Toolherstellern und Konferenzveranstaltern aufgebaut, „Agile“ ist zu einer Marketingfloskel verkommen. Thomas möchte den Terminus daher in Rente schicken und hofft, dass sich die Programmierer wieder auf das Wesentliche besinnen. Seine Worte: „Let’s abandon the word agile to the people who don’t do things. Instead, let’s use a word that describes what we do. Let’s develop with agility.“ Das klingt sympathisch, lässt aber eine wesentliche Sache außer Acht: Entwickler bewegen sich nicht im luftleeren Raum, sie unterliegen dem Diktat des Wirtschaftslebens. Auftraggeber freuen sich über verlässliche Abgabetermine, planbare Kosten, und dann sind da noch Compliance-Vorgaben, Branchenstandards, Gesetze, kulturelle Bremsen und anderes mehr, das die idealtypische Welt stark einschränkt. Es ist gut, wenn Programmierer autonom und eigenverantwortlich entwickeln dürfen, jedoch funktioniert das nur in einem abgesteckten Rahmen. Viele eher traditionell ausgerichtete Projekte bedienen sich heute aus dem agilen Werkzeugkasten. Agil im ursprünglichen Sinn ist das nicht. Derzeit scheint das Vereinen solcher Techniken mit klassischen Verfahren angesagt zu sein. Das belegen etliche Artikel im vorliegenden Heft, die praxisgerechte Wege aus dem Dilemma zeigen. Agil zu arbeiten, heißt in erster Linie, im Kopf frei zu sein, die Zwänge klein zu halten und miteinander zu reden. Jürgen Diercks

9,90 €

iX Kompakt Beruf und Karriere
Highlights Inhaltsverzeichnis Editorial Bewertungen IT: Turbobranche mit Chancen und Tücken Die Informationsindustrie hat interessante Jobs zu vergeben, stellt aber hohe Ansprüche an alle Beteiligten. In dieser schnelllebigen Branche ist es schwer am Ball zu bleiben. Einige kommen gar nicht mit, die große Zahl an Burn-outs zeugt davon. Wer sich darüber im Klaren ist und grundsätzliche Regeln beherzigt, kommt jedoch gut durch den Arbeitsalltag. Qual der Wahl Bewerber und Angestellte müssen sich heutzutage frühzeitg Überlegen, unter welchen Umständen und in was für Unternehmen sie arbeiten wollen. Nicht einfach bei den sich ständig wandelnden Berufsbildern. Umkämpfte Spezies Unternehmen stehen in weltweiter harter Kokurrenz beim Werben um IT-Fachkräfte. Das erzeugt einen Arbeitsmarkt mit vielen Gewinnern, aber auch zahlreichen Jobnomaden ohne jede Absicherung. Einführung Beruf und Karriere In 29 Artikeln: Der Weg zur erfolgreichen IT-Laufbahn Karriereplanung Job-Profile Mythos und Wahrheit: IT-Berater und IT-Projektleiter Employer Branding Soziale Medien: Was Arbeitnehmer wirklich anspricht Arbeitszufriedenheit Personalentwicklung via Mitarbeitergespräch Weiterbildung Fähigkeiten nachweisen mit Zertifikaten Bewerbungsstrategien Mit kreativen Methoden zum Traumjob Berufsbilder Drei prominente Programmierer im Gespräch Informatikstudium Zwischen Bachelor, Master und Diplom Start-ups Studie untersucht Gründungsdynamik im ITK-Sektor Selbstmanagement Einarbeitung Verhalten am Arbeitsplatz: Die ersten 100 Tage Motivation Arbeitszufriedenheit: Klarheit Über wesentliche Faktoren Job-Ausstieg Die dunklen Seiten: Kündigung, Burn-out, Mobbing Arbeitswelt Hohe Arbeitsbelastung in der IT-Branche Zeitmanagement Multitasking für Systemadministratoren Priorisierung Sysadmins: Arbeiten in der richtigen Reihenfolge Psychologie Resilienz: Die Fähigkeiten der Erfolgreichen Arbeitsformen Kompetenzen T-Shaped Professional: Zwischen Generalist und Spezialist Teamwork Wie agile Softwareentwicklung ein Berufsbild verändert IT-Freelancer Selbstständig: Große Freiheit oder blaues Wunder? Intranetsoftware Neue Arbeitswelt: Facebook-Alternativen für Unternehmen Online lernen Neue Wege zum Lehren und Lernen im Internet Gamification Bessere Arbeitsmotivation durch Spielelemente Arbeitsmarkt E-Recruiting Kriegerisch: Die Suche nach Topmitarbeitern Gehalt IT-Gehälter: Nur wenig Steigerung Arbeitsrecht Arbeitsvertrag: Was gehört rein und was nicht Fachkräftemangel Mangelware Arbeitskräfte: Mythos oder Realität? Unternehmenskommunikation Wie man sich als Mittelständler einen Ingenieur angelt Selbstständigkeit Arbeitssammler: Viel Arbeit, wenig Geld, keine Sicherheit Arbeitgeberattraktivität Gut für Umwelt und Image: Nachhaltiges Wirtschaften Sonstiges Editorial Inserentenverzeichnis Impressum Immer mit der Ruhe Beruf, Studium, Aus- und Weiterbildung belegen heute als Topthemen prominente Plätze in vielen Publikationen. Daran ist vor allem der von der Politik und der Wirtschaft beschworene Fachkräftemangel schuld. Der weltweit ausgetragene „Kampf um die Köpfe“ trägt ebenfalls dazu bei. Tatsächlich versetzt er die „Digital Natives“, auch als Generation Y bekannt, in eine komfortable Lage – zumindest die sehr gut ausgebildeten. Anders als ihre Vorgänger können viele von ihnen an den zukünftigen Arbeitgeber Ansprüche stellen und tun das auch. Work-Life-Balance bekommt in Umfragen inzwischen höhere Bewertungen als die Frage nach dem gesellschaftlichen Ansehen oder dem Gehalt. Die Reputation des potenziellen Arbeitgebers wird als Kriterium ebenfalls immer wichtiger. Dieses iX Kompakt wendet sich an Absolventen aller IT-lastigen Fächer, die sich ein realistisches Bild Über den Arbeitsmarkt sowie die grundsätzlichen Erwartungen an die zukünftigen Beschäftigten verschaffen wollen. Wer schon einen Job hat und beruflich weiterkommen möchte oder sich verändern will, dürfte ebenfalls wertvolle Anregungen finden. Das gilt ebenso für die Freelancer, eine im IT-Umfeld häufig anzutreffende Spezies. Die hier versammelten Artikel haben nicht den Anspruch, genau festzulegen, was für Qualifikationen ein Bewerber derzeit haben sollte. Man muss durchaus nicht mit allen geäußerten Hinweisen und Erkenntnissen einverstanden sein. Denn der Mensch als Individuum lässt sich nicht nicht in starre Raster pressen. Und auch die Wirtschaft ist kein monolithischer Klotz, der ausschließlich auf Linie getrimmte Arbeitnehmer aufnimmt. Bei der Konzeption dieses Heftes fiel auf, dass – anders als „früher“ – eine gute technische Ausbildung nicht mehr ausreicht, um einen guten Job zu ergattern. Ohne die berühmten Soft Skills geht fast nichts mehr. Dahinter verbergen sich in erster Linie Kommunikations- und Teamfähigkeiten. Auslandsaufenthalte sind ebenfalls gern gesehen. Gelegentlich schrauben Firmen die Erwartungen allerdings so hoch, dass es kaum möglich erscheint, geeignetes Personal zu finden. Wer solche Stellenanzeigen in die Welt setzt, darf sich nicht wundern, dass er damit Blender und Hochstapler anzieht. Wie so vieles heutzutage wirkt der IT-Arbeitsmarkt Überdreht und wird folglich oft unrealistisch dargestellt. Die mediale Präsenz des Fachkräftemangels, seltsam konstruierte Berufsbilder sowie die zahlreichen Burn-out-Opfer zeugen davon. Wir plädieren dafür, cool zu bleiben und sich nicht zu verbiegen – nicht jeder kann wie Chuck Norris auf Ex aus dem Wasserhahn trinken. Selbst Doktortitel sind nicht mehr das, was sie vielleicht nie waren. Die meisten Menschen wollen wahrscheinlich einfach in Ruhe ihren Job erledigen. Es ist ein Irrtum anzunehmen, dass die Wirtschaft nur auf Überflieger setzt, denn die können schnell das soziale Gefüge in einem Unternehmen untergraben. Gute Produkte gedeihen am besten unter vernünftigen Arbeitsbedingungen, dann, wenn alle Beteiligten die Möglichkeit haben, ihre Fähigkeiten zu entfalten. Selbstverständlich muss man sich sowohl bei einer Bewerbung als auch im Arbeitsleben gut „verkaufen“. Man hat aber immer die Wahl ehrliche Ware abzuliefern oder eine Mogelpackung. Wir hoffen, dass wir mit dieser Publikation die gelegentlich hysterisch geführten Debatten rund um Karrierethemen in der Informationsindustrie in etwas ruhigeres Fahrwasser bringen können. Nichts wird so heiß gegessen, wie es gekocht wird. Auch nicht in der schicken IT-Welt. Jürgen Diercks

9,90 €

iX Kompakt Container 2020
Highlights Inhaltsverzeichnis Bewertungen Kubernetes Mittlerweile hat sich das Orchestrierungs-Tool Kubernetes zum essenziellen Bestandteil ver­teilter Container-Infrastrukturen gemausert. Was gut funktioniert und wo sich Stolperfallen verbergen, zeigen wir (Seite 71) Grundlagen Virtualisierung, Container und verteilte Systeme haben ein Vielzahl neuer Konzepte, Begriffe und Akronyme in die IT-Welt eingeführt. Damit Anwender im Wust der Begrifflichkeiten den Durchblick behalten, finden sich fundierte Erläuterungen (Seite 7) Administration Nicht nur für Außenstehende ist die Welt von Containern, Kubernetes und Microservices ein schwer duchschaubares Dickicht. Diese Rubrik stellt Tipps aus der Praxis zu gangbaren Wegen sowie Tools für Deployment, Management und Überwachung vor (Seite 39) Softwareentwicklung Noch ein neues Schlagwort: Cloud-native. Das Entwicklungsmodell für verteilte Cloud- und Containerumgebungen stellt Programmierer vor neue Aufgaben. Unaufgeregte Informationen zu neuen Tools und (Test-)Methoden gibt es (Seite 119) Microservices Der Ansatz, eine Aufgabe in viele, möglichst voneinander unabängige Komponenten zu zer­-legen, war schon das Credo der frühen Unix-Jahre. Microservices schreiben dies in der Gegenwart fort. Was dahinter steckt und wie sich die kleinen Teile sicher beherrschen lassen, erfährt man (Seite 97) Administration 40 Containermanagement Kommerzielle Kubernetes-Distributionen im Vergleich 46 Cloud-Monitoring Werkzeuge zum Überwachen von Clouds und Cloud-Workloads 56 Automatisierte Systemüberwachung und Eventsteuerung mit Sensu Go 62 Kubernetes-Cluster Bequemes Einrichten mit Kubespray 66 Container-Registry Harbor – eine vertrauenswürdige Cloud-native Registry Microservices 98 Verteilte Systeme Microservices ersetzen den Monolithen 104 Architekturkonzepte Microservices in der Cloud 108 Marktschau Service Meshes im Vergleich 115 DevOps Monitoring, Logging und Tracing von Microservices Kubernetes 72 Multi-Cloud Kubernetes Federation in verteilten Umgebungen 76 Containerorchestrierung Clustermanagement mit Kubernetes Federation und Istio 80 Hilfe bei Microservices: Kubernetes mit Support 86 Kubernetes-Erweiterung Mit Go Kubernetes-Operatoren realisieren 90 Sicherheit Kubernetes in restriktiven Umgebungen einsetzen 94 Container geschützt betreiben Entwicklung 120 Cloud-native Eine Geschichte von Entwicklern, Containern und Orchestrierung 126 Tutorial Microservices in der Azure-Cloud Teil 1: Der Weg zur verteilten Architektur 132 Teil 2: Continuous-Deployment-Strategien 138 Teil 3: Betrieb, Sicherheit und Skalierbarkeit 144 Softwaretesting Programme testen mit Docker und Testcontainers 150 Full-Stack-Testautomation einer Mobile-Banking-App Grundlagen 8 Architekturen Virtualisierung via CaaS und PaaS 12 Cloud Serverless Computing verstehen und anwenden 16 Sicherheit Neuer Entwurf des BSI-Bausteins zu Containern 22 Virtualisierung Tools zur Absicherung von Containern 29 Mikrovirtualisierung Anwendungen abschotten mit Kata Containers, gVisor und Nabla 34 Software-defined-Netze OpenStack-Neutron-Alternative Open Virtual Network Sonstiges 3 Editorial 55 Impressum 55 Inserentenverzeichnis

14,90 €

iX Kompakt IPv6-Leitfaden
Highlights Inhaltsverzeichnis Editorial Bewertungen Ein neues Kapitel im Internet-Zeitalter Nach einem zähen Start kommt das bereits vor 15 Jahren offiziell verabschiedete neue Internet-Protokoll allmählich bei Zugangs-Providern, Inhaltsanbietern und Anwendern in Schwung. Was die Beteiligten über IPv6 wissen sollten – und wie sie mit einer gut geplanten Einführung Risiken minimieren und Stolperfallen umgehen können. Planen und organisieren Die Einführung von IPv6 in Unternehmen und anderen Organisationen bedeutet einen gewissen Umstellungsaufwand für alle Beteiligten – aber auch die Chance, eine bisher wild gewachsene eigene Infrastruktur gründlich aufzuräumen. Recht und Datenschutz Schon wer ein Logfile anlegt und Informationen über die Zugriffe seiner Webseiten-Besucher speichert, kann sich strafbar machen, es sei denn, er anonymisiert die Daten. Umgekehrt bietet IPv6 seinen Anwendern die Möglichkeit, Rückschlüsse aus den IP-Adressen gar nicht erst zuzulassen. Grundlagen 8 IPv6 jetzt - Ein Mythos geht in Produktion 10 Einführung - Basiswissen zum neuen Internet-Protokoll 24 Netzpolitik - IPv6-Strategien der Internet-Provider 30 Mobilfunk - Was IPv6 für den Mobilfunk bedeutet 135 Glossar - IPv6- und andere Netzwerk-Begriffe Planen und organisieren 36 Ausrollen - IPv6 bringt Änderungen für alle 41 Übergang - Der Migrationsleitfaden des Bundesverwaltungsamts hilft auch Firmen bei der IPv6-Einführung 44 Adressmanagement - Das scheinbar unendliche IPv6-Netz sortieren 50 Embedded-Systeme - Programmieren für das Netz der Dinge Netzsicherheit 54 Security-Planung - IPv6 sicher ausrollen in kleinen und mittleren Organisationen 62 Lokale Netze - IPv6 First Hop Security 66 Host-Security - Schutz gegen IPv6-Angriffe via IPv4 70 Netzwerk-Überwachung - Monitoring nach der Einführung von IPv6 74 Penetrationstest - Schutzfunktion von IPv6-Firewalls testen Recht und Datenschutz 78 Anonymität - IPv6 Privacy Extensions im Einsatz 84 Logdateien - Personenbeziehbarkeit von IP-Adressen 88 Provider - Datenschutzkonformes IPv6 beim ISP umsetzen Praxis 94 Datenverkehrsanalyse - Langsam, aber sicher kommt IPv6 in Gang 100 Services - Hosting-Dienste auf IPv6 umstellen 106 FRITZBox - IPv6 für Heimanwender und Kleinunternehmen 114 Netzanalyse - IPv6-Netzwerke erkunden und überwachen 118 Mailserver - IPv6-fähige Mailserver in Betrieb nehmen 121 Domain Name System - DNS-Fehler bei Dual-Stack-Systemen vermeiden 122 Adressverteilung - IPv6-Autokonfiguration für Clients 128 Web-Proxy - Dual-Stack-HTTP-Proxy mit Squid 3 132 Webserver - IPv6 und das Dual-Stack-Problem Sonstiges 3 Editorial 6 Inserentenverzeichnis 6 Impressum, Bildnachweise Einfach machen Der Durchbruch des heutigen Internets lässt sich genau datieren. Am 1. Januar 1983 begann die bis heute andauernde Erfolgsgeschichte mit einem gemeinsamen, mutigen Schritt aller damaligen Arpanet-Betreiber. Sie hatten sich darauf geeinigt, den Kommunikationsstandard Transmission Control Protocol/ Internet Protocol in ihrem Forschungsnetz-Verbund einzuführen. Von einem Tag auf den anderen ersetzte TCP/IP alle bis dahin verwendeten Datenübertragungsverfahren. Offensichtlich hat das Experiment funktioniert. So gut, dass viele in ihm den eigentlichen Beginn der Internet-Geschichte sehen. Obwohl es damals nur um die überschaubare Infrastruktur der Forschungseinrichtungen ging, bildet TCP/IP heute die Grundlage eines damals unvorstellbaren globalen, kommerziellen Kommunikationsnetzes. 30 Jahre haben daher tiefe Spuren hinterlassen, doch die Netzbetreiber und ihre Kunden kommen – dank damit einhergehender Geschäftsmodelle einerseits und der langen Gewöhnungszeit andererseits – recht gut mit unzähligen Flicken und haarsträubenden Provisorien zurecht. So gut, dass die weitaus meisten Teilnehmer die notwendige, frühzeitig anberaumte Teilrenovierung bis heute ignorieren. Seit 15 Jahren steht IPv6 bereit. Allerdings ließ sich der Vorgänger IPv4 damals im enorm gewachsenen Internet nicht mehr weltweit wie auf Knopfdruck beiseite fegen. Jedes noch so ausgeprägte Improvisationstalent stößt jetzt jedoch an die Grenze der Adressierbarkeit. Alle IPv4-Adressen sind reserviert oder vergeben. Zusätzliche global gültige Adressen lassen sich nicht improvisieren, sondern nur noch mittels IPv6 einrichten. Und ohne Adresse kann kein Gerät zu einem Teil des Internets werden. Das hat endlich den Handlungsdruck herbeigeführt, ohne den IPv6 wohl ein unbeachtetes goldenes Jubiläum hätte begehen können. Dass IPv6 nicht nur mehr und längere Adressen mit sich bringt, sondern auch viele weitere Vorteile, können diejenigen bestätigen, die es bereits eingeführt haben – zum Beispiel die Autoren der folgenden Seiten. Wer es bereits benutzt, kann aber auch bestätigen, dass es eben keine Umstellung wie vor 30 Jahren bedeutet, sondern erst einmal ein zusätzliches Protokoll und mehr Komplexität. Doch je schneller IPv6 Anhänger gewinnt, desto eher kann sich IPv4 endlich auf seinen Ehrenplatz in den Geschichtsübersichten vergangener Technologien zurückziehen. BERT UNGERER

9,90 €

iX Kompakt IT-Management in der Cloud 04/2012
Highlights Inhaltsverzeichnis Editorial Bewertungen IT-Management in der Cloud Nach wie vor steht Cloud unter Verdacht, kaum mehr als ein Schlagwort zu sein, mit dem Firmen ihre Produkte an den Mann bringen wollen. Allerdings haben sich unter dem Aspekt „Dienste auf Bestellung nach Bedarf“ inzwischen konkrete Angebote entwickelt, von denen die IT profitieren kann – nur dann müssen die auch in den Griff zu kriegen sein. Cloud In vielen Fällen, in denen die Cloud-Techniken in Betracht kommen, geht es darum, Techniken und Verfahren kennen- und beherrschen zu lernen, mit denen man solche Systeme aufbauen, nutzen und steuern kann. Mobile Integration Einer der wesentlichen Aspekte neuer IT-Techniken ist die Mobilität. Das beginnt bei der allerorts verfügbaren Arbeitsumgebung, der zentralen Versorgung von mobilen Geräten mit Software bis hin zum Fernsteuern der IT vom Tablet aus. Management-Systeme Cloud Computing Das Open-Source-Cloud-Schichtenmodell Einbinden in die IT Integration von Cloud-Diensten in bestehende Systeme und Migration Neue Rolle Der „Chief Cloud Officer“ (CCO) Dienstleister Cloud stellt neue Anforderungen an das Service-Management Ausbildung Cloud-Berufe: Ausbildungsgänge in der IT Kostenrechnung Nutzungsabhängige Abrechnung von Cloud-Leistungen Business-to-Business B2B-Infrastrukturintegration per Cloud Service Bus Cloud-Überwachung Managementdienste und -werkzeuge Cloud Bürosoftware Microsoft verlegt Office-Infrastruktur in die Cloud Cloud-Sicherheit Sicherheitsaspekte bei Cloud-Diensten Windows Azure Tutorial Von der Migration bis zur Cloud-Applikation Private Cloud Leitstand mit VMwares vCloud Director 1.5 OpenStack Open-Source-Software zur Cloud-Steuerung Virtualisierung Distributed Computing Infrastruktur-Management in verteilten Umgebungen Desktop in der Cloud Aktuelle Angebote zur Virtual Desktop Infrastructure Mobile Integration Cloud-Broker Dynamisches Orchestrieren von Cloud-Diensten für Smart Mobile Apps Applikationen Smart Apps aus der Cloud Smart-Management Administrationswerkzeuge für das iPad Recht + Sicherheit WLAN WPA2 Angriffe aufs drahtlose Netz IPv6-Sicherheit Herausforderungen für Sicherheitsverantwortliche ISO 27003 Baukastensystem für Informationssicherheit Internationales Recht Patriot Act und Cloud Computing Rechtsgebrauch Cloud-Strategien entwickeln und erfolgreich umsetzen Forschung + Wissenschaft Business-Web Cloud-basierte Flexibilisierung und Mobilisierung von Geschäftsprozessen Grid vs. Cloud Rechnen im Netz: Grid versus Cloud Virtualisierung und Cloud Chancen und Risiken für die RZ-Infrastruktur Zugangsregelung Sicherheit im Wissenschafts-Grid Soziologie Cloud Computing aus Sicht der Vertrauensforschung Sonstiges Editorial Inserentenverzeichnis Impressum Turbulenzen Gute zwei Jahre ist es her, dass „Cloud“ das erste Mal Thema eines Sonderheftes der iX war. Auf den ersten Blick scheint sich wenig getan zu haben: Nach wie vor spielt das Systemmanagement eine wichtige Rolle, gibt es eine Palette von Software für die Cloud, ist Virtualisierung die zentrale Technik, gilt es rechtliche sowie Sicherheitsfragen zu beachten – und es existiert immer noch ein anderes „Netz“: das Grid, der Verbund von Hochleistungsrechnern, in dem Forscher auf der Jagd nach dem sind, was unsere Welt zusammenhält oder ins Wanken bringen kann. Bei genauerem Hinsehen erkennt man, dass sich wichtige Akzente verschoben haben. Die Cloud ist de facto mächtig gewachsen – nahezu jedes größere IT-Unternehmen hat passende Produkte im Portfolio –, was die Frage nach der Verwaltbarkeit in den Mittelpunkt rückt. Vor allem ist die Systemadministration dem unterworfen. Dienste von draußen müssen mit denen im eigenen Haus zusammenpassen. In einigen Bereichen treten die IT-Abteilungen selbst als Provider auf, in anderen verlagern sie Teile des Managements in die Cloud. Der Bedarf an Software zum Management in der Cloud und zum Aufbau solcher Systeme hat deshalb in den letzten zwei Jahren deutlich zugenommen. Damit haben sich die Aufgaben verlagert, teils gewandelt, und es entsteht ein Berufsbild, das ständigen Änderungen unterworfen ist. Dazu kann es hilfreich sein, anhand von Tutorials praktische Erfahrungen zu sammeln, ohne die eigene Systemlandschaft damit belasten zu müssen. Zwar hat die Virtualisierung in der IT nach wie vor eine Schlüsselrolle, ist aber im Bereich der Server fast schon wie eine Selbstverständlichkeit in den Hintergrund getreten. Vor der Tür steht die Virtual Desktop Infrastructure (VDI). Am Horizont tauchen unter Distributed Computing Infrastructure (DCI) Techniken auf, die über die Cloud hinausgehen. Als stärkster Motor für Entwicklungen in den letzten Jahren darf die Mobilität gelten. Schließlich liefert die Cloud vom Konzept her eine hervorragende Plattform, jeden jederzeit wo auch immer mit Informationen und Anwendungen gezielt zu versorgen. Und umgekehrt kann sie IT-Verantwortlichen die Freiheit geben, Systeme etwa im Rechenzentrum unterwegs im Auge zu behalten, ja sogar fernzusteuern. Bis in die Massenmedien sind die Diskussionen über Sicherheit und Rechtslage im Zusammenhang mit der Cloud vorgedrungen. Neue Techniken, Verordnungen und der internationale Datenverkehr werfen Fragen über Fragen auf und drohen die Sicherheit zu gefährden. Im Bereich Forschung und Wissenschaft gehen die Untersuchungen weit darüber hinaus. Auf der einen Seite beginnen die Verbundnetze der Supercomputer im High Performance Computing von der Cloud zu profitieren, andererseits gibt es jenseits aller Technik Fragen, die soziologische und psychologische Aspekte betreffen. Sicherlich ließe sich der Bogen noch weiter spannen und es ist zu erwarten, dass in absehbarer Zeit die Verwendung von Cloud-Diensten so selbstverständlich sein wird, wie die Virtualisierung: Man nutzt sie, hat aber mit der Technik nichts zu tun – bis auf diejenigen, die dafür verantwortlich sind. Ralph Hülsenbusch

12,90 €

iX Kompakt Security 2014
Highlights Inhalt Editorial Heft DVD Bewertungen Verschlüsselung und kein Ende Die älteste aller Sicherheitsmaßnahmen, die schon Cäsar bei der Übermittlung seiner Kriegsstrategien einsetzte, ist die Kryptografie. Ohne sie ist keine sichere Kommunikation möglich. Trotz aller Zertifikats-GAUs und Implementierungs-Katastrophen bleibt festzustellen: Sie ist sicher – nur manchmal sperrig. Eine Bestandsaufnahme ab Seite 72 Allgegenwärtige und gefährliche Mobilgeräte Die erste Welle mobiler Geräte, mit denen die Mitarbeiter aufs Firmennetz zugreifen wollten, haben die Mobile-Device-Management-Systeme weitgehend im Griff. Doch seit es für alles und jeden eine App gibt, gibt es auch eine neue Kategorie mobiler Gefährdungen. Was dagegen hilft, ab Seite 104 Sicherheit mit System und Überblick Zahlreiche Grundlagenwerke erlauben die Erhöhung und Einschätzung des Sicherheitsniveaus der eigenen Firma. Doch ohne Hilfestellungen für die Praxis sind viele im Vorschriftendickicht und Maßnahmenwust verloren. Zahlreiche pragmatische und alltagstaugliche Hinweise finden sich ab Seite 142 IT-GEFäHRDUNGEN NSA & Co. Datenschutz: Update dringend erforderlich!8 Cybercrime Digitale Angriffe auf alles und jeden16 Informationsdiebstahl Einblicke in die Wirtschaftsspionage20 Internetangriffe Was man gegen Distributed-Denial-of-Service-Attacken tun kann20 Computerkriminalität Prototypische IT-Bedrohungsszenarien32 TOOLS & STRATEGIEN Internetzensus Das Internet scannen und auf Schwachstellen untersuchen40 Browser-Sicherheit Angriffsrisiken minimieren mit Security-Headern52 Active-Directory-Tools Kerberos-Keytab-Management mit msktutil 46 Penetrationstests Die Metasploit-Familie und der Virenschutz im Wettstreit60 Betriebssystemsicherheit Security-Technik in Windows 8.1 und Windows Server 2012 R266 KRYPTOGRAFIE Algorithmen Verschlüsselung als Mittel gegen die Überwachung 72 SSL-Alternative Umstrittene Allzweckwaffe: HTML-5-Verschlüsselung 77 SSL/TLS Der Heartbleed-Bug in OpenSSL 80 Kommunikation Revisited: E-Mail-Verschlüsselung für Unternehmen 82 IT-FORENSIK Datenschutz Herausforderung Personenbezug bei der Analyse von Unternehmensdaten90 Investigation Readiness Vorbereitungen für IT-forensische Untersuchungen 94 Verhinderungsstrategien Anti-Forensik: Angriffswege und Gegenmaßnahmen 99 MOBILE SECURITY MDM Mobiler Gerätewildwuchs im Griff 104 App-Tests Strukturiertes Durchführen von Sicherheitstests mit Threat Modeling108 Einbruchstests Penetrationstests für Smartphone-Apps 114 Softwareentwicklung Apples neue Programmiersprache Swift 122 SICHERE CLOUD Hosting Daten speichern in der Wolke 128 Datenübertragung Erfolgreich verschlüsseln trotz NSA, GCHQ & Co. 132 Qualitätsmanagement Erstes BSI-Audit für Cloud-Provider 138 SICHERHEITSMANAGEMENT Security-Status Selbstbewertung im Unternehmen: Wie sicher sind wir? 142 Recht Verantwortlichkeiten im Bereich IT-Sicherheit 148 IT-Grundschutz Wie man IT-Sicherheit sinnvoll in die Praxis umsetzen kann 152 Gefährdungsanalyse Risiken mit wenig Aufwand erkennen und abschätzen 158 SONSTIGES Editorial 3 Auf der Heft-DVD 6 Inserentenverzeichnis 162 Impressum 162 Perfekte Welt? In a perfect world, no one would be able to use anything“, sagt Mordac, der etwas sadistisch anmutende, für IT-Sicherheit zuständige Kollege Dilberts in einem der gleichnamigen Comic-Strips. Benutzbarkeit von Computern ist für ihn ein Fremdwort, alles ist dem hehren Ziel der Sicherheit untergeordnet. So weit wie Mordac muss man zwar nicht gleich gehen, Fakt ist aber, dass Bequemlichkeit und Sicherheit einander in der Regel ausschließen. Im Internet funktionierten von Anfang an große Teile der Infrastruktur mit Open-Source-Betriebssystemen und -Programmen – etwa Linux oder der Webserver Apache. In anderen Bereichen war freie Software zunächst überwiegend technikaffinen und experimentierfreudigen Naturen vorbehalten. Ganz ähnlich sieht es mit der Freiheit aus. Im Zuge der Terrorbekämpfung haben Politik und Gesetzgeber in den letzten 13 Jahren Regulierungen eingeführt, die sukzessive die Überwachungsbefugnisse der Behörden und Strafverfolger ausbauten – und zwar immer weniger einzelfall- oder verdachtsbezogen, sondern anlasslos und massenhaft. Ob der Kontrollwahn und die drohende Totalüberwachung durch in- und ausländische Behörden „nur“ dem Vermeiden von Ereignissen wie Nine Eleven dient oder – wie Sascha Lobo es in einer lesenswerten Kolumne interpretiert – generell dem gewünschten Vorhersagen menschlicher Reaktionen und Handlungsweisen à la Minority Report, sei dahingestellt. Tatsache ist, dass das massive Erfassen und Sammeln von Daten jeder Art die Freiheit massiv bedroht. Und noch ein Beispiel. Unter Sicherheitsberatern ist es ein alter Witz, dem Kunden „sicher“, „billig“ und „bequem“ auf ein Blatt Papier zu schreiben und zu sagen: „Wählen Sie zwei!“ Wie man es dreht und wendet, alle drei gleichzeitig geht nicht. Während die Redakteurin sich noch über den Stellenwert von IT-Sicherheit Gedanken macht, beschäftigt schon ein neuer Fall von Sicherheitsleck die Nachrichtenticker: So wurden der amerikanischen Baumarktkette Home Depot bei einem Hackerangriff Daten von 56 Millionen Kreditkarten entwendet. Wie es scheint, hat das Management jahrelang Warnhinweise der Mitarbeiter auf mangelnde Sicherheitsmaßnahmen und die Angreifbarkeit der Systeme ignoriert – es hat sich offenbar für „bequem“ und „billig“ entschieden. Eines haben diese Beispiele alle gemein: Ein Übertreiben in die eine Richtung zieht immer einen gravierenden Verlust einer anderen Sache nach sich. Hüten wir uns also vor Extremen, die Wahrheit liegt häufig in der schon seit der Antike beschworenen „Aurea Mediocritas“, der goldenen Mitte. Auf IT-Sicherheit bezogen heißt das: Ein Zuwenig an Sicherheitsmaßnahmen hat genauso fatale Auswirkungen wie ein Zuviel. Unternehmen sollten keine Sicherheitsstrategien einführen, die die IT komplett unbenutzbar machen. Mitarbeiter könnten dann eine ungeahnte Kreativität zum Aushebeln der Strategien an den Tag legen. Ebenso wenig sollten sie vor den heutigen Bedrohungen resignieren oder diese gar ignorieren, aus falsch verstandener Sparsamkeit. Skandale kommen Unternehmen teuer zu stehen, und das nicht nur finanziell. Bleibt der Mittelweg: die bestehenden Risiken auszuloten und mit Pragmatismus und Augenmaß ein Sicherheitsbewusstsein und entsprechende Sicherheitsmaßnahmen im Unternehmen zu etablieren. Hilfestellungen und Anregungen gibt es glücklicherweise zahlreiche – einige in diesem Heft. Ute Roos Auf der Heft-DVD Die dem Heft beigelegte DVD bietet eine Auswahl an bootfähigen Linux-Distributionen. Thematischer Schwerpunkt ist die Sicherheit von IT-Systemen, darüber hinaus findet sich dieses Mal auch ein Live-Betriebssystem darunter, das den Anwender vor der Neugierde Dritter schützen soll. Das auch „Snowden-DVD“ genannte Tails [a] beinhaltet zahlreiche Tools, die dem Nutzer helfen, verschlüsselt und möglichst unerkannt zu kommunizieren. So kann er mit der DVD einen beliebigen PC mit Internetanschluss in einen etwas sichereren Arbeitsplatz verwandeln Des Weiteren befindet sich auf der DVD Kali [b], vormals Backtrack. Die Zusammenstellung ist speziell für die Untersuchung von IT-Systemen, Webanwendungen und Netzwerken auf Sicherheitsprobleme geeignet. Fast alle Open-Source-Tools, die man dafür benötigt, sind enthalten. Für das Retten eines Systems ist die auf der DVD enthaltene Distribution Grml [d] nützlich. Sie bringt Werkzeuge mit, die den Administrator beim Finden und Beheben von Fehlern auf Unix-Systemen unterstützen. Auf der DVD befindet sich außerdem die für iX-Leser vorab verfügbare neue Version 1.5 des HOB MacGate (Sponsored Software). Die Software ermöglicht den Remote-Desktop-Zugriff auf Mac-Computer über ein Netzwerk – im LAN oder über das Internet. Dieser Zugriff ist von jeder beliebigen Client-Plattform möglich: Windows-PC, Linux-PC, Thin-Client oder von einem anderen Mac aus. In der beigefügten Datei findet sich ein bis zum 31.12.2014 gültiger Lizenzschlüssel nebst Kontakt zum Hersteller HOB, falls eine Verlängerung erwünscht ist. Einblicke in die hohe Schule des Entwerfens von Krypto-Algorithmen gewährt Verschlüsselungsexperte Klaus Schmeh in der aktuellen Ausgabe seines Grundlagenwerkes „Kryptografie“ (erschienen im dpunkt-Verlag, Heidelberg, 5. erweiterte Auflage, 2013). Eine Leseprobe aus dem Kapitel „Chriffren-Design“ findet sich auf der DVD. Tails Die Privatsphäre der Bürger, aber auch der Regierungschefs, steht seit letztem Jahr verstärkt im Fokus der Berichterstattung. Die Veröffentlichungen von Edward Snowden haben gezeigt, dass Kommunikation sowohl im Internet als auch in privaten Netzen ohne Verschlüsselung nicht ausreichend geschützt ist und mehr Menschen mitlesen als nur die beabsichtigten Empfänger. Snowden nutzte für seine vertrauliche Kommunikation mit der Presse diese Distribution: Sie enthält alle Werkzeuge, die notwendig sind, Nutzerspuren maximal zu verwischen und die Inhalte der Kommunikation zu verschleiern. Basis ist ein Debian-Linux, das von DVD oder USB auf einem beliebigen PC startet. Ohne Installation oder anderweitiges Verändern der Festplatte startet eine Arbeitsumgebung, die die Anonymisierungsfunktion des Tor-Projekts (The Onion Router) und die Verschlüsselung PGP (Pretty Good Privacy) bereitstellt. Theoretisch könnte man die Distribution auch für die tägliche Arbeit nutzen. Allerdings raten die selbst anonym agierenden Herausgeber davon ab, da jede Aktion das Risiko in sich trägt, zugeordnet zu werden, und daher die Nutzung von Tails ebenfalls „datensparsam“, sprich selten, erfolgen sollte. Beim Start wird ein Minimum an notwendigen Daten abgefragt. Ein typischer Desktop erwartet den Benutzer und Tor ist bereits gestartet. Wer möchte, kann alternativ I2P (Invisible Internet Project) verwenden, einen anderen Onion Router. Tools zum Bearbeiten von Daten und zum Verschlüsseln sind installiert. Wer möchte, kann – sofern er Tails von einem USB-Stick gestartet oder installiert hat – auch einen Speicherbereich einrichten, der über mehrere Sitzungen hinaus bestehen bleibt. Kali Die bekannteste Linux-Distribution für Sicherheitsforscher ist ohne Zweifel Kali. Sie ist der Nachfolger von Backtrack und verfolgt die gleichen Ziele, das Überprüfen des Sicherheitsstatus eines Systems durch Einbruchstests. Die Entwickler haben alle für die Untersuchung von IT-Systemen frei verfügbaren Werkzeuge auf einer DVD zusammengefasst. Die neueren Versionen ergänzt eine umfangreiche Sammlung von Forensik-Werkzeugen. Kali lässt sich direkt von der DVD starten oder lokal auf der Festplatte installieren. Nach dem Installieren kann der Benutzer es mit apt-get auf den neuesten Stand bringen. Nach dem Bootvorgang stellt es einen Arbeitsplatz für Sicherheits- und Einbruchstests gegen Webserver, Netzwerkinfrastruktur, Betriebssysteme sowie sonstige Angriffsziele zur Verfügung. Vom ersten Erforschen eines Netzwerks mit Portscannern wie nmap bis zum Ausführen von Exploits mit dem Angriffs-Framework Metasploit (zusätzlich separat auf der Heft-DVD) lassen sich alle Arbeitsschritte innerhalb der bereitgestellten Umgebung durchführen. Nur das Schreiben eines Berichts ist etwas eingeschränkt, da ein WYSIWYG-Editor fehlt. Im Lieferumfang ist nur Keep-Note und Vim enthalten, sogar Emacs fehlt. Insgesamt ist Kali für Anfänger wie Profis eine gelungene Arbeitsplattform, die Sicherheitsberater auch gerne als Basis für ihr Audit-Notebook nutzen. Christoph Puppe (ur)

12,90 €

iX Kompakt Webdesign 02/2012
Highlights Inhaltsverzeichnis Inhalt DVD Editorial Bewertungen HTML5 Fast 15 Jahre lang galt HTML 4 als Standard. Doch das Web hat sich weiterentwickelt, ist bunter und lauter geworden. Neue Multimedia-Elemente sollen dem Rechnung tragen. Aber auch „ernsthafte“ Webanwendungen, die nach Formularen oder clientseitigen Datenbanken verlangen, berücksichtigt HTML5. Was Webentwickler über den neuen Standard wissen sollten. CSS3 Eine Webseite sollte auf dem Desktop anders aussehen als auf dem Smartphone. Kein Problem, wenn man die CSS3 Media Queries nutzt. Neben HTML5 hat das W3C die neue Version der Cascading Stylesheets vorgestellt. Zwar liegen diverse Module von CSS3 bisher nur als Entwurf vor, aber die Browserhersteller haben schon viel davon implementiert. Was man wie nutzen kann. WebGL Interaktive 3D-Szenen stehen schon seit den Kindertagen des Web auf der Wunschliste der Anwender. Mittlerweile ist selbst das kleinste Smartphone in der Lage, anspruchsvolle Grafiken ansprechend darzustellen. Der neue Standard WebGL bietet Webentwicklern jetzt leistungsfähige Alternativen zu den proprietären Plug-ins. Eine Einführung in WebGL sowie Alternativen, um weniger hardwarenah zu programmieren. HTML5 Webentwicklung Aussichten für HTML5 und CSS3 in der Praxis Hypertext Markup Language Mehr Elemente, weniger Einigkeit Webformulare Neue Eingabeelemente Multimedia Audio und Video in der Markup Language Accessibility Barrierefreiheit mit HTML5 Datenbanken Im Browser Daten lokal verwalten Web Workers Parallelverarbeitung: Threads mit JavaScript Interaktion im Web Zusammenarbeit in Echtzeit Webclients Wie HTML5 Rich Internet Applications verändert Kommunikation Bidirektionale Verbindung per WebSocket Animation Mehr Bewegung mit Tools auf der Basis von Webstandards CSS3 Stil & Form Wohin die Reise der Cascading Stylesheets geht Media Queries Geräteabhängige Stilvorgaben Webtypografie WOFF: Mehr Schriften ins Web per CSS Selektoren HTML-Elemente gezielt ansprechen Less JavaScript-Bibliothek fürs Erstellen von Cascading Stylesheets Modernizr Browser per JavaScript steuern Animation Übergänge, Umwandlungen und Animationen mit CSS3 Shader Kommende Filtereffekte Grafik Historie 3D-Darstellungen im Webbrowser X3DOM & XML3D Deklaratives 3D in HTML5 Transformationen und Interaktion JavaScript-Frameworks Bibliotheken für WebGL Grafikprogrammierung 2D-Grafik mit canvas und JavaScript Spieleentwicklung Pingpong mit JavaScript und HTML5 canvas WebGL-Tutorial Grundlagen Texturen, Animation und ModelView-Matrix Beleuchtung, Transparenz, Funktionsplotter Mobile JavaScript-Bibliothek Einsatz von HTML5 mit jQuery Mobile Tutorial: Vom Web zur App Webseitenoptimierung für das iPhone iPhone-Apps mit Webtechniken Native iPhone-Apps mit Webtechniken Das bewegte Web In den ungefähr 20 Jahren, die es das World Wide Web gibt, hat es sich im Grunde immer in Bewegung befunden. Kaum hatten die ersten Browser das Licht des Web erblickt und zeigten reinen Text mit ein paar Links, fügten die Entwickler Bilder und Formulare hinzu, wenig später Tabellen. Unsäglichkeiten wie die HTML-Elemente blink und marquee seien hier verschwiegen. Schon früh kamen die Mitglieder des World Wide Web Consortium (W3C) auf die Idee, den Inhalt der Dokumente von Anweisungen zu ihrer Präsentation zu trennen. Kurz vor Weihnachten 1996 verabschiedete das Konsortium die erste Fassung der Cascading Stylesheets. Gut gemeint, aber was die Browserhersteller daraus machten, verhieß nichts Gutes. Webdesigner mussten viel Arbeit investieren, um alle Viewer zu „bedienen“. Viel später nahmen ein paar der Hersteller das Heft in die Hand, indem sie sich in der Web Hypertext Application Technology Working Group (WHATWG) zusammenfanden, um die nächste Generation der Hypertext Markup Language (HTML) ohne den Segen des W3C zu forcieren. Und schließlich lenkte das Konsortium ein: Es beendete seine Arbeit an einem XHTML-Nachfolger und übernahm das von der WHATWG Erreichte als Entwurf für HTML5. Mittlerweile liegen viele Working Drafts für einzelne Aspekte dieser Auszeichnungssprache vor. Sie decken so Unterschiedliches ab wie neue Elemente (von nav bis canvas), erweiterte Formulare, Multimedia-Integration, Datenbanken im Browser und Threads in JavaScript. Gleichzeitig befinden sich etliche Entwürfe für Module der CSS3 in Arbeit, weniges kann als abgeschlossen gelten. Aber vieles können Webdesigner schon ausprobieren, weil die Browserhersteller vieles früh implementiert haben. Und in anderen Fällen ist absehbar, dass dieser Status bald erreicht sein dürfte. Es könnten tatsächlich demnächst Zeiten beginnen, in denen Webdesigner nicht mehr ständig überlegen müssen, wie sie welchen Browser berücksichtigen. Stattdessen sinnieren sie vielleicht, wie sie die dritte Dimension auf Smartphones hinbekommen können oder Webseiten für solche Geräte so aufbereiten, dass sie dort gut aussehen. Offenkundig gibt es für Webautoren und -designer nach wie vor einiges zu tun, und sie müssen wie immer auf dem Laufenden bleiben. Dieses Sonderheft der iX soll dabei helfen, neuere Webtechniken nachvollziehen zu können, früh zu sehen, was man demnächst zumindest ausprobieren und auf den diversen Viewern prüfen sollte. Kurz: nicht hinter dem State of the Art zurückzubleiben. Henning Behme Trial-Versionen BBEdit: Web- und Text-Editor für Mac OS X Dreamweaver: Adobes Webdesign-Tool für Mac OS X und Windows Dymamic HTML Editor: WYSIWYG-Editor zur Website-Gestaltung Expression Studio 4 Web Professional: Expression Web, Encoder und Design – Microsofts Webdesign-Suite FDT 5: Development-Toolkit für Windows, Mac OS X und Linux – spezielle 30-Tage-Lizenz für iX-Leser – Details auf der DVD HTMLPad: HTML-, CSS-, JavaScript- und XHTML-Editor phase 5: HTML-Editor, für Privatanwender und Schulen kostenlos PHPEdit: deutsche und englische Version mit Erweiterungen für FTP, CVS und Subversion, PHPUnit, eZ Publish, Prado und Symfony RapidWeaver: Webdesign-Tool für Mac OS X UltraCompare: Vergleichstool für Webseiten UltraEdit: Web-Editor für Windows, Mac OS X und diverse Linuxe Web Architect 9: Web-Editor (integrierter HTML-Editor und CSS-Editor) kombiniert mit einem Desktop-CMS für Windows Freie Tools Boilerplate: Tipps und Tricks zur Webgestaltung JoApp: App-Framework für HTML5 Maqetta: In-Browser-Editor für HTML5 SproutCore: Entwicklungs-Framework für Mac OS X Libraries GLGE: JavaScript-Bibliothek zur einfachen WebGL-Nutzung PhiloGL: WebGL-Framework für Datenvisualisierung und Spieleentwicklung SceneJS: 3D Scene Graph Engine für WebGL Dokumente und Spezifikationen RFCs zu CSS und HTTP Spezifikationen zu CSS3, HTML5, WebGL, X3DOM, X3D, XML3D

12,90 €

iX Programmieren heute 01/2013
Highlights Inhaltsverzeichnis Inhalt DVD Editorial Bewertungen Programmiersprachen Mit neuen Vorgehensweisen oder dem bewussten Rückgriff auf bewährte Ideen versucht man in der Softwareentwicklung, den aktuellen Marktanforderungen besser gerecht zu werden. Der Trend macht sich auch bei den Programmiersprachen deutlich bemerkbar, vor allem bei JavaScript, das nun professionellen Ansprüchen genügt. Big Data Die größte Bedeutung der NoSQL-Bewegung liegt darin, den alteingesessenen Datenbanken ihre Schwachstellen aufgezeigt zu haben. Genau das hat zu viel Bewegung auf „beiden Seiten“ geführt. Gemein ist ihnen das Bestreben, Anbindungen an den prominentesten Vertreter der Big-Data-Welt zu schaffen – an Apache Hadoop. GUIs Apps sind speziell für den Einsatz auf mobilen Endgeräten konzipiert. Sie lassen sich im Allgemeinen gegenüber Desktop-Anwendungen einfacher bedienen und bieten grundsätzlich andere Einsatzmöglichkeiten. Doch stopp! – Spätestens mit Windows 8 halten die Prinzipien mobiler Entwicklung auch auf dem Desktop Einzug. Parallelprogrammierung Programmierbare Grafikkarten ermöglichen große Geschwindigkeitssteigerungen im Vergleich zu Multicore-Systemen. Da sich inzwischen GPU-Kerne in den CPUs finden, wird nach der gewöhnlichen Parallelprogrammierung das GPU Computing künftig ein fester Bestandteil der Softwareentwicklung sein. Programmiersprachen Sprachkonzepte Programmiersprachen im Wandel der Zeit Sprachen-Design Grundsätzliches zur Entwicklung von Programmiersprachen Funktionale Programmierung Wo Haskell und Co objektorientierten Sprachen Überlegen sind C++-Entwicklung C++11 – der Sprachstandard ein Jahr später Java-Entwicklung Gegenwart und Zukunft der Java-Plattform Java Virtual Machine Programmiersprachen für die JVM im Zusammenspiel mit Java Professionelles JavaScript Skriptsprache für Industrie- und Geschäftsanwendungen JavaScript-Alternativen CoffeeScript – das bessere JavaScript? TypeScript: Microsofts neue typisierte Skriptsprache Dart – Googles zweite Programmiersprache Serverside JavaScript Zeitgemäße Webanwendungen mit Node.js entwickeln Big Data DBMS NoSQL-Datenbanken ergänzen relationale Datenbank-Systeme NewSQL Relationale Datenbanken schlagen zurück Hauptspeicherdatenbanken In-Memory Computing als Treiber neuartiger Geschäftsanwendungen Interview Franz Färber im Gespräch Über In-Memory Computing und SAP HANA Hadoop Das Ökosystem der MapReduce-Implementierung unter dem Apache-Dach Big Data im Praxiseinsatz Einblick in die nächste Generation des Apache-Frameworks GUI Design Patterns für Mobile Wege für eine erfolgreiche mobile Oberflächenentwicklung Mobilprogrammierung Best Practices für die Entwicklung mobiler Unternehmens-Apps Windows 8 Windows Store Apps – Überblick der Frontend-Techniken Interview Brandon Bray im Gespräch zu .NET und WinRT Web-Clients Wie HTML5 Rich Internet Applications verändert Parallelprogrammierung Multicore Programmieren mit Tasks und parallelen Schleifen GPU Computing Grundlagen der GPU-Programmierung GPU-Frameworks GPU-Programmierung in der Praxis mit CUDA Heterogene Programmierung mit OpenCL Trends Agilität Entwicklung und Betrieb verzahnen mit DevOps Eingebettete Systeme Trends der Embedded-Entwicklung Spieleentwicklung Der Unterbau von Computerspielen Unternehmensprozesse Crowdsourcing – absehbarer Trend in der Softwareentwicklung Sonstiges Editorial DVD-Inhalt Gewinnspiel Inserentenverzeichnis Impressum Vielfalt erwünscht Programmiersprachen bekommen allem Anschein nach wieder eine größere Bedeutung, nachdem für einige Zeit der Fokus vieler vermehrt auf funktionsreichen Tools und Frameworks lag. Das liegt sicherlich auch daran, dass nach langer Entwicklung innerhalb kurzer Zeit neue Sprachversionen der verbreiteten Programmierplattformen C, C++ und Java erschienen sind. Die lange Entwicklungszeit nicht nur bei diesen „Großen“ war aber einer der Gründe, warum auf einmal neue verheißungsvolle Sprachen die Bühne betreten haben. Für die einen dauerte es zu lange, bis ein als wichtig erachtetes Sprach-Feature oder ein den Umständen angemessener Umgang mit Anforderungen – etwa durch das Aufkommen der Mehrkernsysteme – in den Sprachstandard einzog. Andere vermissten grundsätzliche Konzepte wie den funktionalen Programmierstil in ihren bis dato präferierten Sprachen. Im Umfeld der Java-Plattform dürfen hier Scala, Groovy, JRuby und Clojure bereits als arriviert gelten, neuerdings hinzugekommen sind das von Red Hat entwickelte Project Ceylon und JetBrains’ Kotlin, die wiederum aggressiv gegen die zuerst genannten Sprachen positioniert werden. Im Umfeld der C/C++-Programmierung haben vor allem D und Go die Aufmerksamkeit auf sich gezogen. Während es um D mittlerweile wieder still geworden ist, taucht das von Google entworfene Go regelmäßig in der Berichterstattung auf und gewinnt nicht nur an Interesse, sondern auch an Verbreitung. Letztlich ist jedoch allen Emporkömmlingen anzusehen, woher sie stammen, und daran ist abzulesen, dass die im Artikel auf Seite 8 skizzierte Basisarbeit in den früheren Jahrzehnten keine so schlechte gewesen sein kann. Die neue Konkurrenz ist jedoch insofern zu begrüßen, dass viele der in den „neuen“ Sprachen erarbeiteten Ideen Über kurz oder lang in den „Muttersprachen“ landen. Scala und natürlich Clojure sind implizit mit dem Einsatz der aus der funktionalen Programmierung stammenden Closures vertraut. Diese ziehen nun nach mehrmaligem Anlauf endlich (als Project Lambda) in Java 8 ein. Der Einfluss der Konkurrenz oder der Alternativen lässt sich auch bei der Weiterentwicklung von JavaScript beziehungsweise ECMAScript beobachten, in deren Version 6 bereits in CoffeeScript und TypeScript umgesetzte Ideen wie Klassen und Klassenvererbung landen sollen. Dessen ungeachtet ist JavaScript so etwas wie der neue unerwartete Stern am Programmiersprachenhimmel. Microsoft hat es zum „first-class citizen“ in Visual Studio 2012 ernannt – die Windows Store Apps lassen sich wohl bevorzugt in dieser Skriptsprache schreiben. Selbst in der Entwicklung für mobile Geräte hat sich das Dreigespann aus HTML5, CSS und JavaScript zur dritten ernst zu nehmenden Plattform gemausert. Nun heißt das nicht, dass der Entwickler gleich sieben Programmiersprachen in sieben Wochen erlernen muss,1 vielleicht reicht es schon, sich für jedes Jahr gewissenhaft eine neue Sprache vorzunehmen, wie es Eberhard Wolff, Autor in diesem Sonderheft, zu einem früheren Zeitpunkt geschrieben hat. Das vierte „Programmieren heute“-Sonderheft mag als Anreiz dienen, sich mit der einen oder anderen Sprache eingehender zu beschäftigen. Selbiges gilt für die anderen Themen des Hefts: Beispielhaft sei der gegenwärtige Hype Big Data genannt, zu dem die Redaktion nahezu täglich neue Pressemeldungen erhält. Für Apache Hadoop, das als De-facto-Standard für Big-Data-Projekte gelten darf, haben Marktforscher prognostiziert, dass der Markt rund um das MapReduce-Framework bis 2016 auf etwas mehr als 810 Millionen US-Dollar anwachsen werde. Das entspräche einer jährlichen Steigerungsrate von rund 60 Prozent. Angesichts der weiter fortschreitenden Explosion der Datenmengen mag es also geraten sein, sich mit dem ab Seite 84 beschriebenen Hadoop-Ökosystem vertraut zu machen. iX und heise Developer wünschen viel Spaß beim Vertiefen aller Trendthemen des iX-Developer-Sonderhefts. ALEXANDER NEUMANN 1 Bruce A. Tate; Seven Languages in Seven Weeks; A Pragmatic Guide to Learning Programming Languages; Pragmatic Programmers, 2010 Sponsored Software Intel Parallel Studio XE 2013 Update 1 Die Toolsuite für die Parallelprogrammierung kombiniert Intels C++- und Fortran-Compiler, Performance- und Parallel-Bibliotheken mit den Profiling-Werkzeugen Intel Inspector XE und Intel VTune Amplifier XE. Die neue Version enthält jetzt auch Intels Parallel Advisor und unterstützt die neuen Intel-Prozessoren einschließlich Intel Xeon Phi. Auf der Heft-DVD findet man kombinierte 32- und 64-Bit-Versionen für Windows und Linux. Diese sind identisch mit den Kaufversionen, laufen allerdings nur 30 Tage. (Hierfür ist explizit die Option „30-Tage-Eval“ auszuwählen.) Die Windows-Version setzt zudem die Installation von Visual Studio 2010 voraus. Tools Visual Studio 2012 für Web, Windows 8 und Desktop Microsofts Entwicklungsumgebung in den kostenlosen Express-Versionen für Web-, Desktop- und Windows-8-Entwickler als ISO-Image. Eclipse Orion 1.0 Die sich den Browser integrierende IDE eignet sich für die Entwicklung mit JavaScript, HTML und CSS. Cloudera’s Distribution Including Hadoop (CDH) 4.0.1 Die Open-Source-Sammlung umfasst die Kernkomponenten von Hadoop zur verteilten und ausfallsicheren Speicherung und Verarbeitung großer Datenmengen. Darüber hinaus sind Werkzeuge für Sicherheit, Hochverfügbarkeit und Integration in bestehende Datenlandschaften enthalten. CDH ist unter der Apache-Lizenz verfügbar und eine der verbreitetsten Hadoop-Distribution und wird für Tests, Entwicklung und den Betrieb großer Cluster verwendet. Auf der DVD befindet sich ein VMware-Image, das insbesondere Einsteigern helfen kann, sich schnell einen Überblick zu verschaffen. Literatur Programmierer – eine Geschichte zur Gegenwart und Zukunft der IT Eine fiktionale Geschichte zur Softwareprogrammierung in den Formaten PDF, EPUB oder Mobi (Kindle): Genauer gesagt präsentiert der Protagonist im Rahmen einer großen CeBIT-Show seine bahnbrechenden Erfindungen in den Gebieten Künstliche Intelligenz und Robotik. Autor der 76 Seiten langen Geschichte ist Hans Meyer, ein erfahrener Softwareentwickler und IT-Projektleiter, der seine rund 40 Jahre Erfahrung in der Softwareentwicklung auf teilweise bitter-ironische, aber auch gesellschaftskritische Weise in seine Programmierergeschichte einfließen lassen hat. SoftwareArchitekTOUR 37 Episoden des renommierten Podcasts auf heise Developer zu Themen wie: ROCA (Resource-oriented Client Architecture) leichtgewichtige Webapplikationen Ausbildung zum Architekten Rolle des Softwarearchitekten Business Process Management Webarchitekturen Product Line Engineering Cloud Computing Lisp domänenenspezifische Sprachen Systems Engineering Testing NoSQL funktionale Programmierung REST Architektur-Reviews Architekturdokumentation Entwicklung für Multicore-Systeme serviceorientierte Architekturen modellgetriebene Softwareentwicklung Middleware Patterns Listings und Lizenzen Die Listings zu den Heftartikeln und die Lizenzen zu den Softwarepaketen.

12,90 €

iX Special Kompakt 2019
Inhaltsverzeichnis Bewertungen Report 7 Security-Trends: Der Wunsch nach Kontrollierbarkeit 8 Intelligente SystemeNeue Verfahren in der Schadcode-Erkennung 12 VirtualisierungIT-Grundschutz in LXC-Container verpackt 16 AnwendungssicherheitSelbstverteidigung zur Laufzeit 20 VerschlüsselungAlgorithmen zur Post-Quanten-Kryptografie Review 27 Sicherheit in der Praxis: Selbst machen oder auslagern 28 Auswahl externer PartnerManagement von Projekten der Informationssicherheit 32 SOC-OrganisationVorüberlegungen zum Betrieb eines Security Operations Center 36 SchwachstellensucheVerwundbarkeiten in Unternehmen finden und verwalten 42 CPU-FehlerWie man sich vor Spectre, Meltdown und Co. schützt 50 ZugangskontrolleAuswahl einer Authentifizierungs-Methode fürs LAN 54 LDAP-AuthentifizierungMehrfaktorverfahren mit LDAP als Backend Medien 61 Red Teaming: Den Ernstfall proben 62 AngriffssimulationSicherheitstests: Angriffe auf Technik und Mensch 68 Wissen sammelnTaktische Informationsbeschaffung: Den Gegner kennen 71 SystemeinbruchZugriffe von außen 74 PhishingGezielte Fallen stellen 78 Physischer ZugriffEindringen in der wirklichen Welt 82 Kontrolle erlangenPost Exploitation und Lateral Movement 88 Versteckt agierenAufbau von Command-and-Control-Umgebungen 94 AngriffsresilienzCyber Resilience, War Gaming und Krisenmanagement 98 RechtssicherheitCompliance und Datenschutz Wissen 103 Marktübersichten: Entlastung durch nützliche Werkzeuge 104 VirtualisierungTools zur Absicherung von Containern 112 NetzwerksicherheitAnalyse TLS-verschlüsselter Kommunikation 120 VerwundbarkeitSoftware zum Schwachstellenmanagement 130 DSGVOData-Discovery- und Data-Leakeage-Prevention-Tools Titel 137 Gesetze und Regulierungen: Sperrig, aber auch hilfreich 138 DSGVORisikofolgenabschätzung nach der Datenschutz-Grundverordnung 144 SicherheitsmaßnahmenDer Stand der Technik in der IT-Sicherheit 146 IT-SicherheitUpdate des IT-Grundschutz-Kompendiums 150 StandardsAktualisierter ISO/IEC 27000 beschreibt beschreibt die Rolle des ISMS-Verantwortlichen Rubriken 1 Titelseite 3 Editorial 4 Inhalt 154 Impressum

12,90 €