Softwareentwicklung
Versionsverwaltung mit Git
* Von grundlegenden Funktionen über die Handhabung von Branches und Remote-Repositorys bis zu Tipps und Tricks für (nicht nur) alltägliche Funktionen * Auswahl sinnvoller Workflows und Einsatz in Teams * Git-Repositorys hosten mit GitHub und GitLab Git ist in der Softwareentwicklung bereits weit verbreitet – sowohl in Firmen als auch in Open-Source-Projekten. Zum Einstieg lernen Anfänger häufig nur die wichtigsten Befehle, die schnell nicht mehr ausreichen, vor allem wenn die ersten Fehler auftreten. Dieses Buch behandelt einerseits die gängigen Befehle, die Sie beim täglichen Arbeiten mit Git brauchen. Andererseits geht es dem Autor auch darum, dass Sie Git als Ganzes verstehen, um es effektiv im Entwicklungsprozess einsetzen zu können. Der Fokus des Buchs liegt auf dem praktischen Arbeiten mit Git. Sie lernen anhand eines Projekts, welche Befehle es gibt, wie diese arbeiten und wie Sie auftretende Probleme lösen können. Neben alltäglichen Funktionen finden Sie auch seltener gebrauchte Kommandos, die aber ebenfalls wichtig sind. Dabei legt der Autor großen Wert auf die Einbindung und Anpassung des Entwicklungsprozesses. Im zweiten Teil des Buchs werden fortgeschrittene Themen behandelt. Der Schwerpunkt liegt auf dem Einsatz von Git in Teams. Darunter etwa das Hosten verteilter Repositorys mit GitHub und GitLab. Ein weiteres Kapitel behandelt die Workflows, die je nach Anzahl der beteiligten Personen, Branches und Repositorys eines Projekts variieren. Darüber hinaus gibt Ihnen der Autor hilfreiche Informationen für den Umstieg von Subversion, einen Überblick über grafische Git-Programme, Hinweise für eine langfristig nachvollziehbare Git-Historie sowie eine Einführung in DevOps, wofür Git die technische Grundlage bildet. Ein Kapitel zu häufig gestellten Fragen rundet diesen Praxiseinstieg ab. Das Buch richtet sich sowohl an blutige Einsteiger als auch an erfahrene Leser. Aus dem Inhalt: * Konfiguration * Arbeiten mit Branches * Verteilte Repositorys * Hosting mit GitHub und GitLab * Workflows * Hooks * Umstieg von Subversion * Zahlreiche Tipps für die tägliche Arbeit * Grafische Clients * Tipps für nachvollziehbare Git-Historien * Frequently Asked Questions * Einstieg in DevOps * Befehlsreferenz
Sketch
Apps und Websites erstellen mit der Sketch-App.Mit der Sketch-App setzen Sie Apps für Web und mobile Geräte effizienter und intuitiver um. Und dieses umfassende Handbuch hilft Ihnen dabei, Sketch in allen Details kennenzulernen und in der Praxis richtig anzuwenden. Mit den Tipps und Workshops von Micha Kafka starten Sie bei App-Design und Webgestaltung richtig durch: vektorbasiertes Arbeiten, Pages und Artboards anlegen, Objekte ausrichten, Farb- und Schriftoptionen nutzen, mit Symbolen arbeiten, mit Sketch Mirror Layouts in Echtzeit testen, Layouts exportieren u.v.m. Immer im Blick: Gutes Design, UX und Usability. So werden Sie als App-Designer und Web-Designer noch besser, sparen Zeit und überzeugen mit modernen Designs.Leseprobe (PDF-Link)
Einstieg in PHP 8 und MySQL (14. Auflg.)
Der Bestseller in 14. Auflage: dynamische Webseiten entwickeln ohne Vorwissen - ideal für Programmieranfänger.Dynamische Webseiten und Anwendungen programmieren – das ist Ihr Ziel. Dafür brauchen Sie fundiertes Wissen zu PHP und zu Datenbanken mit MySQL. In diesem Buch lernen Sie die Grundlagen zur aktuellen PHP 8-Version und zu Datenbanken mit MySQL und MariaDB.Die Programmierbücher von Thomas Theis sind besonders beliebt bei allen, die mit wenig Vorwissen in eine Programmiersprache oder IT-Themen einsteigen. Sein seit vielen Jahren bewährtes Konzept bietet Ihnen alles, was Sie brauchen, um Blogs, Webshops, Chats oder Foren mit PHP 8 selbst zu entwickeln. Leicht nachvollziehbare Beispiele und Übungen helfen Ihnen, eigene Projekte schnell zu realisieren. Ein Programmierkurs für Anfänger zu Beginn des Buches stellt sicher, dass Ihnen der Einstieg in die Programmierung sicher gelingt.Leseprobe (PDF-Link)
Android-Apps entwickeln mit Java (9. Auflg.)
Aktuell zu Android Studio 4 - ihr Einstieg in die Android-Programmierung in 9. Auflage 2020.Ihr Einstieg in die App-Entwicklung mit Android Studio. Hier lernen Sie auf besonders einfache und unterhaltsame Weise, wie Sie mit Java für Android-Geräte entwickeln – z. B. ein eigenes Spiel mit allem Drum und Dran. Für Ihre App setzen Sie Animationen, Sounds, Bewegungssensoren und die Kamera ein und erstellen schicke Layouts, Online-Bestenlisten und angesagte Features für die Smartwatch. Alles ganz aktuell zu Android Studio 4. Grundkenntnisse in der Programmierung sollten Sie mitbringen, Ihr Java-Wissen frischen Sie in einem Crashkurs ganz schnell auf – dann kann nichts mehr schief gehen auf Ihrem Weg zur ersten Android-App.Leseprobe (PDF-Link)
Skalierbare Container-Infrastrukturen (3. Auflg.)
Das Handbuch für Administratoren. Die Referenz für DevOps-Teams und Admins in 3. Auflage 2020.Virtualisierung hat die nächste Evolutionsstufe erreicht – hochskalierbare, automatisierte und ausfallsichere Container-Umgebungen. Leistungsfähige IaaS/IaC-Mechanismen rollen Ihre virtuelle Infrastruktur auf Knopfdruck vollautomatisiert aus und provisionieren Cluster und Applikationen in jedem gewünschten Versionsstand. Mit GitOps-basierten, vollautomatisierten CI/CD-Pipelines, automatischer Skalierung von Applikationen und Cluster-Nodes on-demand, flexiblen Service-Meshes und Serverless-Architekturen sowie intelligenten Operatoren machen Sie Ihre Infrastruktur fit für die Zukunft.Die dritte, komplett überarbeitete Auflage der bewährten Container-Referenz liefert Ihnen tiefes, fundiertes Profi-Know-how und praxiserprobte Anleitungen. Sorgen Sie dafür, dass Ihr Unternehmen dank der aktuellsten Container-Technologien auf Basis von Kubernetes und OpenShift wettbewerbsfähig bleibt und bereits jetzt zukünftigen Anforderungen an Skalierbarkeit, Flexibilität, Hochverfügbarkeit und Planungssicherheit gewachsen ist!Container-Engines und Tools: CRI-O, Podman, Buildah, Skopeo und DockerProfessionelle Container-Orchestrierung mit Kubernetes und OpenShift, Vollautomation mit IaaS/IaC, intelligente Operatoren selbst erstellen und einsetzenService Meshes, Serverless-Architekturen und Integration von IDM-LösungenGitOps-basierte und vollautomatisierte Pipelines für maximale EffizienzStorage-Provisioner, containerisierte SDS-Lösungen, Security, Logging, Monitoring, Custom Metrics, Autoscaler und vieles mehr.Leseprobe (PDF-Link)
PyTorch für Deep Learning
PyTorch für Deep Learning - Anwendungen für Bild-, Ton- und Textdaten entwickeln und deployenMit diesem Praxisbuch meistern Sie die Methoden des Deep Learning, einer Teildisziplin des Machine Learning, die die Welt um uns herum verändert. Machen Sie sich mit PyTorch, dem populären Python-Framework von Facebook, vertraut, und lernen Sie Schlüsselkonzepte und neueste Techniken kennen, um eigene neuronale Netze zu entwickeln.Ian Pointer zeigt Ihnen zunächst, wie Sie PyTorch in einer Cloud-basierten Umgebung einrichten. Er führt Sie dann durch die einzelnen Schritte der Entwicklung von neuronalen Architekturen, um typische Anwendungen für Bilder, Ton, Text und andere Datenformate zu erstellen. Er erläutert auch das innovative Konzept des Transfer Learning und das Debuggen der Modelle. Sie erfahren zudem, wie Sie Ihre Deep-Learning-Anwendungen in den Produktiveinsatz bringen.Aus dem Inhalt:Ergründen Sie modernste Modelle für das Natural Language Processing, die mit umfangreichen Textkorpora wie dem Wikipedia-Datensatz trainiert wurdenVerwenden Sie das PyTorch-Paket torchaudio, um Audiodateien mit einem neuronalen Konvolutionsmodell zu klassifizierenLernen Sie, wie man Transfer Learning auf Bilder anwendetDebuggen Sie PyTorch-Modelle mithilfe von TensorBoard und FlammendiagrammenDeployen Sie PyTorch-Anwendungen im Produktiveinsatz in Docker-Containern und Kubernetes-Clustern, die in der Google Cloud laufenErkunden Sie PyTorch-Anwendungsfälle von führenden UnternehmenFür die deutsche Ausgabe wurde das Buch in Zusammenarbeit mit Ian Pointer von Marcus Fraaß aktualisiert und um einige Themen erweitert.Leseprobe (PDF-Link)Inhaltsverzeichnis (PDF-Link)Über den Autor:Ian Pointer ist Data Engineer. Er hat sich auf Lösungen für Fortune-100-Kunden spezialisiert, die auf Methoden des Machine Learnings (insbesondere Deep Learning) basieren. Ian arbeitet derzeit bei Lucidworks, wo er sich innovativen NLP-Anwendungen und dem Engineering widmet.
Machine Learning für Softwareentwickler
* Eine Einführung in das maschinelle Lernen für Entwickler * Alle wesentlichen Ideen, Werkzeuge und Konzepte des supervised Learning, von neuronalen Netzen und des Deep Learning werden präsentiert * Der gesamte Programmcode ist in Python geschrieben
Python 3 Crashkurs - 2., aktualisierte Auflage
Ihr Weg zum Python-Profi! US-Bestseller Lernen Sie Python programmieren wie die Profis Komplett aktualisiert auf Python 3 »Python Crashkurs« ist eine kompakte und gründliche Einführung, die es Ihnen nach kurzer Zeit ermöglicht, Python-Programme zu schreiben, die für Sie Probleme lösen oder Ihnen erlauben, Aufgaben mit dem Computer zu erledigen. In der ersten Hälfte des Buches werden Sie mit grundlegenden Programmierkonzepten wie Listen, Wörterbücher, Klassen und Schleifen vertraut gemacht. Sie erlernen das Schreiben von sauberem und lesbarem Code mit Übungen zu jedem Thema. Sie erfahren auch, wie Sie Ihre Programme interaktiv machen und Ihren Code testen, bevor Sie ihn einem Projekt hinzufügen. Danach werden Sie Ihr neues Wissen in drei komplexen Projekten in die Praxis umsetzen: ein durch »Space Invaders« inspiriertes Arcade-Spiel, eine Datenvisualisierung mit Pythons superpraktischen Bibliotheken und eine einfache Web-App, die Sie online bereitstellen können. Während der Arbeit mit dem »Python Crashkurs« lernen Sie, wie Sie: leistungsstarke Python-Bibliotheken und Tools richtig einsetzen – einschließlich matplotlib, NumPy und Pygal 2D-Spiele programmieren, die auf Tastendrücke und Mausklicks reagieren, und die schwieriger werden, je weiter das Spiel fortschreitet mit Daten arbeiten, um interaktive Visualisierungen zu generieren Web-Apps erstellen und anpassen können, um diese sicher online zu deployen mit Fehlern umgehen, die häufig beim Programmieren auftreten Dieses Buch wird Ihnen effektiv helfen, Python zu erlernen und eigene Programme damit zu entwickeln. Warum länger warten? Fangen Sie an!
Clean Agile - Deutsche Ausgabe
Die Essenz der agilen SoftwareentwicklungZurück zu den Ursprüngen: Die agilen Werte und Prinzipien effektiv in der Praxis umsetzen Lernen Sie aus Uncle Bobs jahrzehntelanger Erfahrung, worauf es bei der agilen Softwareentwicklung wirklich ankommt Die ursprünglichen agilen Werte und Prinzipien kurz und prägnant für den Praxiseinsatz erläutert Von den unternehmerischen Aspekten über die Kommunikation im Team bis zu den technischen Praktiken wie Test-Driven Development (TDD), einfaches Design und Pair Programming Fast 20 Jahre nach der Veröffentlichung des agilen Manifests ruft der legendäre Softwareentwickler Robert C. Martin (»Uncle Bob«) dazu auf, sich wieder auf die ursprünglichen Werte und Prinzipien zurückzubesinnen, die den eigentlichen Kern der agilen Softwareentwicklung ausmachen und die für die Praxis von zentraler Bedeutung sind. Mit Clean Agile lässt er alle an seiner jahrzehntelangen Erfahrung teilhaben und räumt mit Missverständnissen und Fehlinterpretationen auf, die im Laufe der Jahre entstanden sind. Dabei wendet er sich gleichermaßen an Programmierer und Nicht-Programmierer. Uncle Bob macht deutlich, was agile Softwareentwicklung eigentlich ist, war und immer sein sollte: ein einfaches Konzept, das kleinen Softwareteams hilft, kleine Projekte zu managen – denn daraus setzen sich letztendlich alle großen Projekte zusammen. Dabei konzentriert er sich insbesondere auf die Praktiken des Extreme Programmings (XP), ohne sich in technischen Details zu verlieren. Egal, ob Sie Entwickler, Tester, Projektmanager oder Auftraggeber sind – dieses Buch zeigt Ihnen, worauf es bei der Umsetzung agiler Methoden wirklich ankommt. Aus dem Inhalt: Ursprünge der agilen Softwareentwicklung Agile Werte und Prinzipien Der richtige Einsatz von Scrum Agile Transformation Extreme Programming Unternehmensbezogene Praktiken: User Stories, Velocity, kleine Releases und Akzeptanztests Teambezogene Praktiken: gemeinsame Eigentümerschaft, kontinuierliche Integration und Stand-up-Meetings Technische Praktiken: TDD, Refactoring, einfaches Design und Pair Programming Zertifizierung und Coaching Software Craftsmanship
Effektiv Python programmieren
90 Wege für bessere Python-Programme Bewährte Verfahren, Tipps und Tricks für robusten, leistungsfähigen und wartungsfreundlichen Code Grundlegende Aufgaben besser und effektiver erledigen Lösungen für das Debuggen, Testen und Optimieren zur Verbesserung von Qualität und Performance Der Einstieg in die Python-Programmierung ist einfach, daher ist die Sprache auch so beliebt. Pythons einzigartige Stärken und Ausdrucksmöglichkeiten sind allerdings nicht immer offensichtlich. Zudem gibt es diverse verborgene Fallstricke, über die man leicht stolpern kann. Dieses Buch vermittelt insbesondere eine Python-typische Herangehensweise an die Programmierung. Brett Slatkin nutzt dabei die Vorzüge von Python zum Schreiben von außerordentlich stabilem und schnellem Code. Er stellt 90 bewährte Verfahren, Tipps und Tricks vor, die er anhand praxisnaher Codebeispiele erläutert. Er setzt dabei den kompakten, an Fallbeispielen orientierten Stil von Scott Meyers populärem Buch »Effektiv C++ programmieren« ein. Auf Basis seiner jahrelangen Erfahrung mit der Python-Infrastruktur bei Google demonstriert Slatkin weniger bekannte Eigenarten und Sprachelemente, die großen Einfluss auf das Verhalten des Codes und die Performance haben. Sie erfahren, wie sich grundlegende Aufgaben am besten erledigen lassen, damit Sie leichter verständlichen, wartungsfreundlicheren und einfach zu verbessernden Code schreiben können. Aus dem Inhalt: Umsetzbare Richtlinien für alle wichtigen Bereiche der Entwicklung in Python 3 mit detaillierten Erklärungen und Beispielen Funktionen so definieren, dass Code leicht wiederverwendet und Fehler vermieden werden können Bessere Verfahren und Idiome für die Verwendung von Abstraktionen und Generatorfunktionen Systemverhalten mithilfe von Klassen und Interfaces präzise definieren Stolpersteine beim Programmieren mit Metaklassen und dynamischen Attributen umgehen Effizientere und klare Ansätze für Nebenläufigkeit und parallele Ausführung Tipps und Tricks zur Nutzung von Pythons Standardmodulen Tools und Best Practices für die Zusammenarbeit mit anderen Entwicklern Lösungen für das Debuggen, Testen und Optimieren zur Verbesserung von Qualität und Performance
Laravel - Die umfassende Einführung
Was Laravel von anderen PHP-Web-Frameworks unterscheidet? Es ist schnell, strukturiert, elegant und macht einfach Spaß. Dieses Framework für die schnelle Anwendungsentwicklung bietet ein ganzes Ökosystem an Tools, sodass Sie schon nach kurzer Zeit in der Lage sind, neue Websites und Anwendungen mit sauberem, lesbarem Code zu erstellen. Dieses Buch bietet eine umfassende Einführung in eines der derzeit beliebtesten Web-Frameworks - inklusive erprobtem Praxiswissen und tiefergehender Einblicke in die zugrunde liegenden Konzepte. Es deckt die Version Laravel 6 (mit Long Term Support) ab. Matt Stauffer, ein führender Entwickler der Laravel-Community, liefert einen Gesamtüberblick und eine Vielzahl konkreter Beispiele, sodass PHP-Web-Entwickler sofort produktiv mit dem Framework arbeiten können. Diese Aufgabe behandelt auch Laravel Dusk und Horizon und bietet Informationen über Community-Ressourcen sowie Pakete, die nicht zum Kern von Laravel gehören. Machen Sie sich vertraut mit: - Blade, Laravels mächtiger Templating-Engine - dem Sammeln, Validieren, Normalisieren und Filtern von benutzerdefinierten Daten - Eloquent, dem objektrelationalen Mapper für die Arbeit mit Anwendungsdatenbanken - dem Testen Ihres Codes mit PHPUnit, Mockery und Dusk - dem Entwurf von JSON- und RESTful-APIs - dem Zugriff auf Dateisystem, Sitzungen, Cookies, Caches und Suchfunktionen - dem Einsatz von Queues, Jobs, Events und Notifications - dem Einbinden von Frontend-Komponenten wie Vue.js, ReactVue.js oder React
Generatives Deep Learning
Generative Modelle haben sich zu einem der spannendsten Themenbereiche der Künstlichen Intelligenz entwickelt: Mit generativem Deep Learning ist es inzwischen möglich, einer Maschine das Malen, Schreiben oder auch das Komponieren von Musik beizubringen – kreative Fähigkeiten, die bisher dem Menschen vorbehalten waren. Mit diesem praxisnahen Buch können Data Scientists einige der eindrucksvollsten generativen Deep-Learning-Modelle nachbilden, wie z.B. Generative Adversarial Networks (GANs), Variational Autoencoder (VAEs), Encoder-Decoder- sowie World-Modelle. David Foster vermittelt zunächst die Grundlagen des Deep Learning mit Keras und veranschaulicht die Funktionsweise jeder Methode, bevor er zu einigen der modernsten Algorithmen auf diesem Gebiet vorstößt. Die zahlreichen praktischen Beispiele und Tipps helfen Ihnen herauszufinden, wie Ihre Modelle noch effizienter lernen und noch kreativer werden können. - Entdecken Sie, wie Variational Autoencoder den Gesichtsausdruck auf Fotos verändern können - Erstellen Sie praktische GAN-Beispiele von Grund auf und nutzen Sie CycleGAN zur Stilübertragung und MuseGAN zum Generieren von Musik - Verwenden Sie rekurrente generative Modelle, um Text zu erzeugen, und lernen Sie, wie Sie diese Modelle mit dem Attention-Mechanismus verbessern können - Erfahren Sie, wie generatives Deep Learning Agenten dabei unterstützen kann, Aufgaben im Rahmen des Reinforcement Learning zu erfüllen - Lernen Sie die Architektur von Transformern (BERT, GPT-2) und Bilderzeugungsmodellen wie ProGAN und StyleGAN kennen "Dieses Buch ist eine leicht zugängliche Einführung in das Deep-Learning-Toolkit für generatives Modellieren. Wenn Sie ein kreativer Praktiker sind, der es liebt, an Code zu basteln, und Deep Learning für eigene Aufgaben nutzen möchte, dann ist dieses Buch genau das Richtige für Sie." — David Ha, Research Scientist bei Google Brain
Docker Praxiseinstieg
* Docker-Images und -Container verwenden * Container deployen und debuggen * Einsatz von Tools: Docker Swarm, Kubernetes, Amazon EC2 Container Services Linux-Container besitzen das Potenzial, das Deployment von Applikationen für verschiedene Umgebungen stark zu verändern. Dieses Buch weist Ihnen den Weg zu einer funktionierenden Docker-Umgebung. Die Autoren zeigen Ihnen, wie Sie Docker-Images Ihrer Anwendungen inklusive aller Abhängigkeiten erstellen, wie Sie diese testen, deployen und skalieren können, und wie Sie die Container in der Produktivumgebung pflegen und warten. Dabei kommen Themen wie die Einrichtung, das Testen und das Deployment von Docker-Anwendungen ebenso zur Sprache wie das Debugging eines laufenden Systems. Mit diesem Buch werden Sie verstehen, was Docker wirklich leistet, welche Relevanz es hat, wie Sie es zum Laufen bekommen, wie Sie damit Ihre Anwendungen deployen können und was erforderlich ist, um es in einer Produktivumgebung einzusetzen. Die Autoren dieses Buches sind in dem Unternehmen New Relic für die Sicherstellung der Stabilität der dort entwickelten Anwendungen zuständig und lassen Sie an ihren im praktischen Umgang mit Docker gesammelten Erfahrungen teilhaben. Ihre Zielsetzung lautet, Sie von ihren Erkenntnissen profitieren zu lassen und davor zu bewahren, dieselben Rückschläge hinnehmen zu müssen, die den Autoren in diesem Kontext widerfahren sind. Aus dem Inhalt: * Einfachere Handhabung der Abhängigkeiten und des Deployments von Anwendungen mit Docker * Docker-Architektur und Optimierung des Workflows * Installation unter Linux, macOS und Windows * Einsatz von Docker-Images und -Containern * Das Kommandozeilentool docker * Praxisnahe Verfahren für das Deployment und das Testen von Linux-Containern in Produktivumgebungen * Container-Debugging * Einsatz von Docker Compose * Deployment skalierbarer Container in Produktivumgebungen * Weiterführende Themen: * Deployment-Tools * Vernetzung * Orchestrierung * Sicherheitsaspekte * Konfiguration Karl Matthias war als Entwickler, Systemadministrator und Netzwerktechniker für Start-ups und verschiedene Fortune-500-Unternehmen tätig. Sean P. Kane war lange als IT-Techniker tätig und hat in sehr breit gefächerten Industriebranchen (Biotechnologie, Verteidigungswesen, Hightech-Unternehmen) viele verschiedene Posten bekleidet.
Software-Engineering - kompakt
Von zentraler Bedeutung für das Software-Engineering ist der Software-Lebenszyklus. Gemeint ist damit der gesamte Prozess, der zur Erstellung und Erhaltung eines Softwaresystems führt. Sowohl in traditionellen als auch in agilen Softwareerstellungsprozessen läuft dieser Lebenszyklus ab. Bewährt hat sich in der Praxis die Einteilung in sogenannte Phasen, denen die Gliederung folgt.Nach einer kurzen Einführung werden in Kapitel 2 vorab phasenübergreifende Verfahren wie divergierende Vorgehensmodelle und Projektmanagement besprochen. Kapitel 3 behandelt die Planungsphase; Kapitel 4 ist dem Requirements-Engineering gewidmet, bei dem die Software-Anforderungen kreativ konstruiert, analysiert und – traditionell oder agil – dokumentiert werden. In Kapitel 5 folgt die Besprechung der Verfahren für die Designphase der Software. Hier wird hinterfragt, wie gute Software-Architekturen Erfolg versprechend erdacht, mit der UML-Notation geeignet modelliert und in späteren Projekten wiederverwendet werden können. Kapitel 6 widmet sich der Test- und Abnahmephase und damit den wichtigen Qualitätssicherungsfragen. Abschließend wird in Kapitel 7 die Wartung – zur wirksamen Erhaltung von Softwaresystemen – erklärt.Anfänger erhalten eine schnelle Orientierung und kompaktes, fundiertes Grundwissen. Fortgeschrittene Leser finden hier ein aktuelles, gut strukturiertes Nachschlagewerk.
Agile Werte leben
Mit Improvisationstheater zu mehr Selbstorganisation und ZusammenarbeitWas hat Improvisationstheater mit Agilität zu tun? Eine ganze Menge! Denn Agilität ist mehr als Kanban-Kärtchen durch die Gegend schieben, Planning Poker spielen und einen Scrum-Sprint zu planen.Agile Werte und die aus ihnen abgeleiteten Prinzipien in der täglichen Arbeit von Teams oder gar ganzen Organisationen zu verankern, ist keine einfache Aufgabe. Denn oft scheinen diese zu abstrakt und wenig alltagsnah. Und gerade bei verteilten Teams ist es schwierig diese umzusetzen.Robert Wiechmann und Laura Paradiek zeigen Übungen und Techniken aus dem Improvisationstheater, die helfen diese Werte greifbar und erfahrbar zu machen. Hollywoodreife Schauspielkünste sind dafür nicht nötig. Denn im Impro geht es darum, gemeinsam Ideen zu entwickeln, aufeinander zu achten, zusammenzuarbeiten, miteinander zu kommunizieren und aufeinander zu zählen. Auch wenn man sich nur per Kamera sieht.Die Spanne reicht von ganz einfachen bis zu komplizierteren Übungen, damit sich jeder zutraut, mitzumachen. Aha-Momente und ein besseres Verständnis der agilen Werte sind vorprogrammiert.Dieses Buch ...führt in agile Werte ein und erklärt, warum diese so wichtig sind.zeigt, was Improtheater eigentlich ist und warum es agilen Teams und Organisationen helfen kann.gibt übersichtlich und strukturiert Improübungen an die Hand.Über den Autor:Diplom-Kaufmann Robert Wiechmann unterstützt mit Herzblut Organisationen bei ihrer agilen Transition. Neben dem Aufbau und der Beratung von Scrum- und Kanban-Teams in der Softwareentwicklung lässt er auch alle weiteren Unternehmensbereiche nicht aus dem Auge. Er hat Freude daran, Teams jeglicher Fasson zu einer Einheit zusammenzuschweißen und sich dabei ständig weiterzuentwickeln. Die Basis seiner Arbeit baut auf Respekt, Vertrauen sowie Wertschätzung auf. Wichtig ist ihm das Zusammenspiel von Zielorientierung, Klarheit, Einfachheit, Selbstverantwortung, Kreativität und Spaß. Sein Mut, offen auch unbequeme Dinge anzusprechen, lässt die Arbeit mit ihm praxisorientiert und auf Augenhöhe sein. Seine Arbeit als Agiler Coach ist von Kreativität geprägt und scheut auch nicht die Beschreitung neuer Wege.Laura Paradiek ist Kommunikationsfachfrau, Schauspielerin und ausgebildete Business-Trainerin. Nach ihrem Studium der Gesellschafts- und Wirtschaftskommunikation in Berlin führte sie ihr Weg in viele kleine und große Unternehmen. Ob in der Kommunikationsplanung, Veranstaltungsorganisation oder dem Management von Webprojekten – agile Projektmanagementmethoden sind ihr A und O. Neben Scrum und Kanban setzt sie auf Methoden aus dem Improvisationstheater und der Visualisierung. Seit sie 12 Jahre alt ist, steht sie auf der Bühne, u. a. mit der Theater Jugend Hamburg, dem Maxim Gorki Theater in Berlin oder der Hamburger Improvisationstheatergruppe SchillerKiller.
Das senseBox-Buch
Die senseBox ist ein Elektronikbausatz für Schulen und Bildungseinrichtungen, bei dem das Experimentieren und Programmieren unter Einsatz von Sensoren im Vordergrund steht. Neben einer Open-Source Mikrocontrollereinheit (MCU), die auf der Arduino-Plattform basiert, werden Sensoren, Bauteile zur Übertragung von Daten und weiteres Zubehör mitgeliefert.Sensoren zur Messung von verschiedenen Umweltphänomenen wie Temperatur, Luftfeuchtigkeit, Luftdruck, Beleuchtungsstärke, UV-Strahlung, Lautstärke, Distanzen (per Ultraschallsensor) sowie Neigung und Ausrichtung ermöglichen ein kreatives Arbeiten an einer Vielzahl von Fragestellungen. Zudem können die gemessenen Werte über ein WiFi-Modul auf eine Webplattform für offene Sensordaten – die openSenseMap – übertragen werden. Das Buch zum Bausatz stellt spannende Projekte rund um folgende Themen vor: - Ausgabe von Messwerten- Entwerfen von Logiken- Simulieren von Zufällen- Ansteuern von verschiedenen LEDs- Ein akustischer (Licht)-Schalter- Einparkhilfe und Verkehrszähler mit Ultraschallsensor und Piezolautsprecher- senseBox als Musikinstrument- IoT-Wetterstation und -Alarmanlage- Ein Geschicklichkeitsspiel mit der senseBox Zielgruppe Ausbilder/Lehrer Leiter von MakerSpaces Schüler Bastler
Python 3 - Das umfassende Praxisbuch
Aus dem Inhalt:Das Buch gibt eine Einführung in alle Sprachgrundlagen wie Klassen, Objekte, Vererbung, Kollektionen und Dictionaries. Es erklärt die Benutzeroberflächen und Multimediaanwendungen mit PyQt, Datenbanken, XML und Internetprogrammierung mit CGI, WSGI und Django.Zudem findet sich das wissenschaftliche Rechnen mit NumPy, die parallele Verarbeitung großer Datenmengen und die Datenvisualisierung mit Matplotlib wieder.Am Ende eines jeden Kapitels gibt es Übungen mit Musterlösungen.
Schrödinger programmiert C# (3. Auflg.)
Schrödinger ist unser Mann fürs Programmieren. Er kann schon was, aber noch nicht C#. Zum Glück hat er einen richtigen Profi an seiner Seite, der auf jede Frage eine Antwort weiß. Und weil Schrödinger zwar schlau ist, aber auch ein wenig ungeduldig, gibt es nach der nötigen Theorie immer sofort etwas zu tun. Mit viel Code und Beispielen, die ihr nicht wieder vergesst. Ob es ums Einparken ohne Crash geht oder um Schuhschränke, die immer größer werden: Die Übungen schafft ihr (aber nicht immer mit links), die Pausen sind verdient, und am Ende jedes Kapitels dürft ihr euch einen Spickzettel einstecken - Achievement Unlocked, Ready for Next Level. Fantastisch illustriert. Für Einsteiger, Umsteiger und Fans.Aus dem Inhalt:• Operatoren, Schleifen, Datentypen ... • Klassen, Objekte und Vererbung • Datenbanken und LINQ • GUI-Entwicklung mit XAML • await/async geschickt verwenden • Dateizugriffe und Streams • Multithreading • Mit Ausnahmen und Fehlern umgehen Ready for Next Level. Fantastisch illustriert. Für Einsteiger, Umsteiger und Fans.
Die C++ Challenge
C++ ist eine der am weitesten verbreiteten Programmiersprachen und hat Anwendungen in einer Vielzahl von Bereichen, wie Spiele, GUI-Programmierung und Betriebssysteme, um nur einige zu nennen. Im Laufe der Jahre hat sich C++ (17) zu einer der Topsprachen für Programmierer weltweit entwickelt (und ist es noch).Dieses Buch zeigt dir einige bemerkenswerte Features, die C++ zu bieten hat, und wie du sie implementierst, um deine Anforderungen zu erfüllen. Jedes Problem ist einzigartig und testet nicht nur deine Sprachkenntnisse. Es testet ebenso deine Fähigkeit, über den Tellerrand hinaus zu denken und die besten Lösungen zu finden.Mit unterschiedlichen Schwierigkeitsgraden wirst du mit einer Vielzahl von Aufgabenstellungen konfrontiert. Und falls du nicht weißt, musst du dir keine Sorgen machen: Wir haben die besten Lösungen für die Probleme im Buch. Bist du bereit für die Herausforderung? • Serialisieren und Deserialisieren von JSON- und XML-Daten • Verschlüsseln und signieren, um sichere Kommunikation zu ermöglichen • SQLite einbinden und verwenden • Threads und asynchrone Funktionen verwenden, um parallele Algorithmen zu implementieren • ZIP-daten komprimieren und dekomprimien • Designpatterns zur Lösung von realen Fragestellungen verwenden • Client-Server-Anwendungen relalisieren, die über TCP/IP kommunizieren • Datenstrukturen wie zirkulare Puffer oder Priority-Queues implementieren
Kubernetes
Es heißt, dass Google über zwei Milliarden Anwendungscontainer pro Woche deployt. Wie ist das möglich? Diese Frage hat Google mit einem Projekt namens Kubernetes beantwortet, einem Cluster-Orchestrierer, der das Bauen, Deployen und Warten skalierbarer, verteilter Systeme in der Cloud radikal vereinfacht. Dieser praktische Leitfaden zeigt Ihnen, wie Kubernetes und die Container-Technologie Ihnen helfen können, in Bezug auf Schnelligkeit, Agilität, Zuverlässigkeit und Effizienz in ganz neue Bereiche vorzudringen.Die Autoren Kelsey Hightower, Brendan Burns und Joe Beda haben bei Google und in anderen Firmen mit Kubernetes gearbeitet und erklären Ihnen, wie sich dieses System in den Lebenszyklus einer verteilten Anwendung einfügt. Sie werden lernen, wie Sie Tools und APIs einsetzen, um skalierbare, verteilte Systeme zu automatisieren – egal ob es sich um Online-Services, Systeme zum maschinellen Lernen oder ein Cluster aus Raspberry Pis handelt.• Lernen Sie die Herausforderungen verteilter Systeme kennen, die Sie mit Kubernetes angehen können.• Tauchen Sie ein in die containerisierte Anwendungsentwicklung und nutzen Sie dabei zum Beispiel Docker-Container.• Erstellen Sie Container im Docker-Image-Format mit Kubernetes und lassen Sie sie über die Docker-Runtime ausführen.• Begutachten Sie die zentralen Konzepte und API-Objekte von Kubernetes, die notwendig sind, um Anwendungen produktiv laufen zu lassen.• Rollen Sie neue Softwareversionen zuverlässig ohne Downtime oder Fehler aus.• Lernen Sie aus Beispielen zum Entwickeln und Deployen realer Anwendungen in Kubernetes.»In nur wenigen Jahren hat sich Kubernetes an die Spitze einer weitreichenden Revolution in der Anwendungsentwicklung gesetzt. Es löst seit langem bestehende Probleme in Anwendungsentwicklung und -management auf eine saubere und trotzdem sehr leistungsfähige Art und Weise. Brendan, Joe und Kelsey waren zentrale Mitspieler beim Auslösen und Vorantreiben dieser Revolution. Ihr Buch dient als Grundlage, um die Technologie Kubernetes, aber auch die dahinterstehenden Kräfte bei der Transformation zu verstehen.«Eric Brewer, Vice President, Google
Schrödinger programmiert Java
Das etwas andere Fachbuch Die Java-Einführung, die Dir den vollen Durchblick verschafft! Schreibe von Anfang an auf Profi-Art, objektorientiert, mit Interfaces, Generics und auf dem neuesten Stand. Von einfachen Schleifen bis zur fertigen Webanwendung. Mit Schrödinger und seinen witzigen Fragen macht guter Code richtig Spaß. Ihr programmiert, um Probleme zu lösen: etwa die Frage, ob Schrödingers Freundin »solche Schuhe« nicht schon hat. Oder ob es wirklich schon wieder Dinkelpfannkuchen geben muss. Aber Achtung: Hier geht es um saubere Software-Entwicklung. Mit Spitzen-Beispielcode, fantastisch illustriert.
Android-Apps Programmieren für Kids
Hattest du auch schon mal eine Idee für eine Smartphone-App, aber keinen blassen Schimmer, wie sich so etwas umsetzen lässt? In dieser Neuauflage programmiert unser Autor Hans-Georg Schumann zusammen mit dir lustige Spiele-Apps mit Android Studio 3 und der Programmiersprache Java. Du lernst, mit Komponenten zu arbeiten und traust dich nach und nach auch an komplexere Projekte heran. Aber keine Sorge: Das hört sich schwieriger an, als es ist. Du lernst Schritt für Schritt und findest am Ende jedes Kapitels Zusammenfassungen, Übungen und Aufgaben, damit du alles Gelernte noch einmal in Ruhe sacken lassen kannst. Außerdem erhältst du genaue Anleitungen, wie du diese Spiele-Apps in den verschiedensten Varianten programmierst, die alle richtig Spaß machen! Systemvoraussetzungen: ab Windows 7, ggf. Smartphone oder Tablet mit Android. Ab 12 Jahre, aber auch für Erwachsene, die eine wirklich einfache Einführung suchen. Zum Download: Beispiele aus dem Buch, die Lösungen zu den Fragen und Aufgaben Aus dem Inhalt: • Klassische Chiffren• Moderne Blockchiffren • Android Studio starten und den ersten eigenen Code programmieren • Wie man einen Android-Emulator einsetzt • Buttons Leben einhauchen und das Layout einer App anpassen • Variablen, Strings, Operatoren und Zeichenketten kennenlernen • Etwas über das objektorientierte Programmieren erfahren • Apps für Mathe und Zensuren sowie ein kleines Ratespiel entwickeln • Bilder einsetzen und Animationen erstellen • Mit Kollisionen in einem Spiel umgehen • Die Spiele »Wanzenjagd« und »Dodger« programmieren
Eigene Spiele programmieren: Python lernen
Dieses Buch wird Ihnen beibringen, wie man Computerspiele mit der beliebten Python- Programmiersprache entwickelt – auch wenn Sie noch nie zuvor programmiert haben! Beginnen Sie mit dem Entwurf klassischer Spiele wie Galgenmännchen, einem Zahlenratespiel und Tic-Tac-Toe. Mit fortgeschrittenen Spielen bauen Sie Ihre Programmierkenntnisse weiter aus, beispielsweise mit einer textbasierten Schatzsuche und einem animierten Kollisionsspiel mit Soundeffekten. Dabei lernen Sie grundlegende Konzepte der Programmierung und der Mathematik, die Ihnen helfen, Ihre Spieleprogrammierung auf die nächste Stufe zu heben.
Spiele programmieren mit JavaScript für Kids
Computerspiele zu spielen macht Spaß, aber Computerspiele selbst zu entwickeln, ist noch viel kreativer! Hier lernst du das Programmieren mit JavaScript und der leistungsstarken Babylon Engine, einem vollwertigen System für das Erstellen von 3D-Games. Damit lässt du Figuren durch Landschaften wandern und Abenteuer bestreiten. Bau dir zum Beispiel selbst ein Insekt oder einen Androiden, animiere deine Figuren, steuere sie durchs Spiel und sammle Dinge ein. Ganz nebenbei lernst du JavaScript und erlangst so grundlegende Kenntnisse in dieser Programmiersprache. Im Anhang gibt es noch zusätzliche Informationen, zum Beispiel über den Babylon-Playground, mit dem du deine Spiele mit Freunden teilst, und über die Besonderheiten von den verschiedenen Browsern. Viele Fragen und Aufgaben am Ende der Kapitel bringen Tüftel-Spaß und verfestigen das Gelernte im Nu.