Docker Cookbook

Author: Sébastien Goasguen
Publisher: "O'Reilly Media, Inc."
ISBN: 9781491919767
Release Date: 2015-11-04
Genre: Computers

Whether you’re deploying applications on premise or in the cloud, this cookbook provides developers, operators, and IT professionals with more than 130 proven recipes for working with Docker. With these practical solutions, experienced developers with no previous knowledge of Docker will be able to package and deploy distributed applications within a couple of chapters. IT professionals will be able to solve everyday problems, as well as create, run, share, and deploy Docker images. Operators will quickly be able to adopt the tools that will change the way they work. The recipes in this book will help you: Manage containers, mount data volumes, and link containers Create and share container images Network containers across single or multiple hosts Tackle advanced topics such as Docker configuration and development Deploy multi-container applications on a distributed cluster with Kubernetes Use a new generation of operating systems optimized for Docker Learn tools for application deployment, continuous integration, service discovery, and orchestration Access a Docker host on Amazon AWS, Google GCE, and Microsoft Azure Monitor containers and explore different application use cases

CSS Kochbuch

Author: Christopher Schmitt
Publisher: O'Reilly Germany
ISBN: 9783897213258
Release Date: 2012-04-30
Genre: Computers

Cascading Style Sheets (CSS) bieten unendliche Möglichkeiten, das Design einer Website gezielt und individuell zu gestalten. Mit CSS3 sind noch einmal viele Features hinzugekommen, auf die viele Designer schon lange gewartet haben: ob Schattenwürfe, abgerundete Ecken oder die Einbindung von Webfonts – ein genauer Blick auf die neuen Gestaltungsmöglichkeiten lohnt sich. Diese dritte Auflage des CSS Kochbuchs wurde grundlegend überarbeitet, aktualisiert und erweitert. In mehr als 200 Rezepten finden Sie Antworten auf gängige bis vertrackte Problemstellungen, denen Webdesigner immer wieder begegnen. CSS-Grundlagen: Der erste Teil des Buchs beschäftigt sich mit grundlegenden CSS-Techniken. Hier erfahren Sie Wissenswertes über die Auswahl und Gestaltung von Seitenelementen und erhalten Tipps rund um die Typografie fürs Web. Natürlich wird auch der Umgang mit Bildern behandelt. Fortgeschrittenere Techniken: Erfahren Sie, wie Sie Formulare, Tabellen und Listen gestalten und ins Layout Ihrer Seite einbetten. Lernen Sie, wie Sie Links und Navigationen optimal gestalten und Effekte wie Rollover, aufklappbare Menüs oder Tooltips mit CSS erzeugen. Seitenlayout und Design: Mit CSS lassen sich ein-, zwei und mehrspaltige Layouts umsetzen, die Sie wahlweise mit festen oder flexiblen Breiten versehen können. Dank der CSS3-Media Queries können Sie nun auch einfach feststellen, ob mit einem Desktop-Rechner, Smartphone oder Tablet auf Ihre Site zugegriffen wird und deren Ausgabe genau für das entsprechende Gerät optimieren. CSS 2.1 und CSS3: CSS3 ist noch relativ jung und wird nicht von allen Browsern gleich gut unterstützt. Dem trägt das Kochbuch Rechnung, indem CSS3-basierte Lösungen angeboten werden, wenn die Browserunterstützung schon sehr breit ist. Alle anderen Rezepte des Buchs basieren auf CSS 2.1.

Docker

Author: Adrian Mouat
Publisher: dpunkt.verlag
ISBN: 9783960880370
Release Date: 2016-09-30
Genre: Computers

Docker-Container bieten eine einfache, schnelle und robuste Möglichkeit, Software zu entwickeln, zu verteilen und laufen zu lassen – besonders in dynamischen und verteilten Umgebungen. Mit diesem praktischen Leitfaden lernen Sie, warum Container so wichtig sind, was durch den Einsatz von Docker möglich ist und wie Sie es in Ihren Entwicklungsprozess einbinden. Dieses Buch ist aktuell zu Docker 1.12 und ideal für Entwickler, Operations-Techniker und Administratoren – insbesondere, wenn Sie einen DevOps-Ansatz verfolgen. Es nimmt Sie mit auf eine Reise von den Grundlagen bis zum Ausführen Dutzender Container auf einem Multi-Host-System mit Networking und Scheduling. Im Verlauf des Buches erfahren Sie, welche Schritte zum Entwickeln, Testen und Bereitstellen einer Webanwendung mit Docker notwendig sind. • Beginnen Sie mit Docker, indem Sie eine einfache Webanwendung entwickeln und bereitstellen. • Nutzen Sie Techniken aus dem Continuous Deployment, um Ihre Anwendung mehrmals pro Tag in die Produktivumgebung zu bringen. • Lernen Sie Optionen und Techniken kennen, um mehrere Container gleichzeitig zu protokollieren und zu überwachen. • Befassen Sie sich mit dem Erkennen im Netzwerk und mit Services: Wie finden sich Container gegenseitig und wie verbinden Sie sie? • Orchestrieren und clustern Sie Container, um Load Balancing zu ermöglichen, Ihr System skalierbar zu machen sowie Failovers und Scheduling umzusetzen. • Sichern Sie Ihr System, indem Sie den Prinzipien der "Defense in Depth" und dem Konzept der geringsten Rechte folgen. • Setzen Sie Container ein, um eine Microservices-Architektur aufzubauen.

Docker Cookbook

Author: Ken Cochrane
Publisher: Packt Publishing Ltd
ISBN: 9781788625982
Release Date: 2018-08-31
Genre: Computers

Leverage Docker to deploying software at scale Key Features Leverage practical examples to manage containers efficiently Integrate with orchestration tools such as Kubernetes for controlled deployments Learn to implement best practices on improving efficiency and security of containers Book Description Docker is an open source platform for building, shipping, managing, and securing containers. Docker has become the tool of choice for people willing to work with containers. Since the market is moving toward containerization, Docker will definitely have a big role to play in the future tech market. This book starts with setting up Docker in different environment, and helps you learn how to work with Docker images. Then, you will take a deep dive into network and data management for containers. The book explores the RESTful APIs provided by Docker to perform different actions, such as image/container operations. The book then explores logs and troubleshooting Docker to solve issues and bottlenecks. You will gain an understanding of Docker use cases, orchestration, security, ecosystems, and hosting platforms to make your applications easy to deploy, build, and collaborate on. The book covers the new features of Docker 18.xx (or later), such as working with AWS and Azure, Docker Engine, Docker Swarm, Docker Compose, and so on. By the end of this book, you will have gained hands-on experience of finding quick solutions to different problems encountered while working with Docker. What you will learn Install Docker on various platforms Work with Docker images and containers Container networking and data sharing Docker APIs and language bindings Various PaaS solutions for Docker Implement container orchestration using Docker Swarm and Kubernetes Container security Docker on various clouds Who this book is for Book is targeted towards developers, system administrators, and DevOps engineers who want to use Docker in his/her development, QA, or production environments. It is expected that the reader has basic Linux/Unix skills such as installing packages, editing files, managing services, and so on. Any experience in virtualization technologies such as KVM, XEN, and VMware will be an added advantage

Microservices

Author: Sam Newman
Publisher: MITP-Verlags GmbH & Co. KG
ISBN: 9783958450837
Release Date: 2015-07-06
Genre: Computers

Feingranulare Systeme mit Microservices aufbauen Design, Entwicklung, Deployment, Testen und Monitoring Sicherheitsaspekte, Authentifizierung und Autorisierung Verteilte Systeme haben sich in den letzten Jahren stark verändert: Große monolithische Architekturen werden zunehmend in viele kleine, eigenständige Microservices aufgespalten. Aber die Entwicklung solcher Systeme bringt Herausforderungen ganz eigener Art mit sich. Dieses Buch richtet sich an Softwareentwickler, die sich über die zielführenden Aspekte von Microservice-Systemen wie Design, Entwicklung, Testen, Deployment und Monitoring informieren möchten. Sam Newman veranschaulicht und konkretisiert seine ganzheitliche Betrachtung der grundlegenden Konzepte von Microservice-Architekturen anhand zahlreicher praktischer Beispiele und Ratschläge. Er geht auf die Themen ein, mit denen sich Systemarchitekten und Administratoren bei der Einrichtung, Verwaltung und Entwicklung dieser Architekturen in jedem Fall auseinandersetzen müssen. Aus dem Inhalt: Vorteile von Microservices Gestaltung von Services Ausrichtung der Systemarchitektur an der Organisationsstruktur Möglichkeiten zur Integration von Services Schrittweise Aufspaltung einer monolithischen Codebasis Deployment einzelner Microservices mittels Continuous Integration Testen und Monitoring verteilter Systeme Sicherheitsaspekte Authentifizierung und Autorisierung zwischen Benutzer und Service bzw. zwischen Services untereinander Skalierung von Microservice-Architekturen »Microservice-Architekturen besitzen viele interessante Eigenschaften, allerdings sind bei der Umstellung so einige Fallstricke zu beachten. Dieses Buch wird Ihnen helfen herauszufinden, ob Microservices für Ihre Zwecke geeignet sind und zeigt Ihnen, wie Sie die Fallstricke umgehen können.« Martin Fowler, Chief Scientist, ThoughtWorks

Kubernetes

Author: Kelsey Hightower
Publisher: dpunkt.verlag
ISBN: 9783960884293
Release Date: 2018-01-24
Genre: Computers

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.

Regul re Ausdr cke Kochbuch

Author: Jan Goyvaerts
Publisher: O'Reilly Germany
ISBN: 9783897219571
Release Date: 2010
Genre: Computer programming

Fur Entwickler, die regelmaig mit Texten arbeiten, sind regulare Ausdrucke so lebensnotwendig wie die Luft zum Atmen. Doch wer sich nur oberflachlich mit diesem Hilfsmittel auskennt, gerat leicht in unangenehme Situationen. Selbst erfahrene Programmierer haben immer wieder mit schlechter Performance, falsch positiven oder falsch negativen Ergebnissen und unerklarlichen Fehlern zu kampfen. Dieses Kochbuch schafft Abhilfe: Anhand von uber 100 Rezepten fur C#, Java, JavaScript, Perl, PHP, Python, Ruby und VB.NET lernen Sie, wie Sie regulare Ausdrucke gekonnte einsetzen, typische Fallen umgehen und so viel wertvolle Zeit sparen. Mit Tutorial fur Anfanger: Falls Sie noch nicht - oder nur wenig - mit regularen Ausdrucken gearbeitet haben, dienen Ihnen die ersten Kapitel dieses Buchs als Tutorial, das Sie mit den Grundlagen der Regexes und empfehlenswerten Tools vertraut macht. So sind Sie fur die komplexeren Beispiele in den darauf folgenden Kapiteln bestens gerustet. Tricks und Ideen fur Profis: Auch erfahrene Regex-Anwender kommen ganz auf ihre Kosten: Jan Goyvaerts und Steven Levithan, zwei anerkannte Groen im Bereich regulare Ausdrucke, gewahren tiefe Einblicke in ihren Erfahrungsschatz und uberraschen mit eleganten Losungen fur fast jede denkbare Herausforderung. Deckt die unterschiedlichen Programmiersprachen ab: In allen Rezepten werden Regex-Optionen sowie Varianten fur die verschiedenen Programmier- und Skriptsprachen aufgezeigt. Damit lassen sich sprachenspezifische Bugs sicher vermeiden.

Continuous Delivery

Author: Eberhard Wolff
Publisher: dpunkt.verlag
ISBN: 9783864919312
Release Date: 2016-03-31
Genre: Computers

Continuous Delivery ermöglicht es, Software viel schneller und mit wesentlich höherer Zuverlässigkeit in Produktion zu bringen, als es bisher möglich war. Grundlage dafür ist eine Continuous-Delivery-Pipeline, die das Ausrollen der Software weitgehend automatisiert und so einen reproduzierbaren, risikoarmen Prozess für die Bereitstellung neuer Releases bietet. Dieses Buch macht Sie mit dem Aufbau einer Continuous-Delivery-Pipeline vertraut und erklärt, welche Technologien Sie dazu einsetzen können. Dabei lernen Sie u.a. folgende Themen kennen: • Infrastruktur-Automatisierung mit Chef, Docker und Vagrant • Automatisierung von Builds und Continuous Integration • Akzeptanztests, Kapazitätstests, exploratives Testen • Einführung von Continuous Delivery im Unternehmen • Continuous Delivery und DevOps • Auswirkungen auf die Softwarearchitektur Als praktisches Beispiel wird ein konkreter Technologie- Stack vorgestellt. Zahlreiche Aufgaben und Vorschläge für weitergehende Experimente laden Sie darüber hinaus zur praktischen Vertiefung des Themas ein. Nach der Lektüre können Sie abschätzen, welche Vorteile Continuous Delivery konkret bietet, und Sie verfügen über das nötige Handwerkszeug, um Continuous Delivery in Ihrem eigenen Arbeitsumfeld zu etablieren. Die Neuauflage wurde in Bezug auf Werkzeuge wie Docker, Jenkins, Graphite und den ELK-Stack aktualisiert. An neuen Themen sind Docker Compose, Docker Machine, Immutable Server, Microservices und die Einführung von Continuous Delivery ohne DevOps hinzugekommen.

Spring im Einsatz

Author: Craig Walls
Publisher: Carl Hanser Verlag GmbH Co KG
ISBN: 9783446429468
Release Date: 2012-01-12
Genre: Computers

SPRING IM EINSATZ // - Spring 3.0 auf den Punkt gebracht: Die zentralen Konzepte anschaulich und unterhaltsam erklärt. - Praxis-Know-how für den Projekteinsatz: Lernen Sie Spring mit Hilfe der zahlreichen Codebeispiele aktiv kennen. - Im Internet: Der vollständige Quellcode für die Applikationen dieses Buches Das Spring-Framework gehört zum obligatorischen Grundwissen eines Java-Entwicklers. Spring 3 führt leistungsfähige neue Features wie die Spring Expression Language (SpEL), neue Annotationen für IoC-Container und den lang ersehnten Support für REST ein. Es gibt keinen besseren Weg, um sich Spring anzueignen, als dieses Buch - egal ob Sie Spring gerade erst entdecken oder sich mit den neuen 3.0-Features vertraut machen wollen. Craig Walls setzt in dieser gründlich überarbeiteten 2. Auflage den anschaulichen und praxisorientierten Stil der Vorauflage fort. Er bringt als Autor sein Geschick für treffende und unterhaltsame Beispiele ein, die das Augenmerk direkt auf die Features und Techniken richten, die Sie wirklich brauchen. Diese Auflage hebt die wichtigsten Aspekte von Spring 3.0 hervor: REST, Remote-Services, Messaging, Security, MVC, Web Flow und vieles mehr. Das finden Sie in diesem Buch: - Die Arbeit mit Annotationen, um die Konfiguration zu reduzieren - Die Arbeit mit REST-konformen Ressourcen - Spring Expression Language (SpEL) - Security, Web Flow usw. AUS DEM INHALT: Spring ins kalte Wasser, Verschalten von Beans, Die XML-Konfiguration in Spring minimalisieren, Aspektorientierung, Zugriff auf die Datenbank, Transaktionen verwalten, Webapplikationen mit Spring MVC erstellen, Die Arbeit mit Spring Web Flow, Spring absichern, Die Arbeit mit Remote-Diensten, Spring und REST, Messaging in Spring, Verwalten von Spring-Beans mit JMX

Microservices Deployment Cookbook

Author: Vikram Murugesan
Publisher: Packt Publishing Ltd
ISBN: 9781786461315
Release Date: 2017-01-31
Genre: Computers

Master over 60 recipes to help you deliver complete, scalable, microservice-based solutions and see the improved business results immediately About This Book Adopt microservices-based architecture and deploy it at scale Build your complete microservice architecture using different recipes for different solutions Identify specific tools for specific scenarios and deliver immediate business results, correlate use cases, and adopt them in your team and organization Who This Book Is For This book is for developers, ops, and DevOps professionals who would like to put microservices to work and improve products, services, and operations. Those looking to build and deploy microservices will find this book useful, as well as managers and people at CXO level looking to adopt microservices in their organization. Prior knowledge of Java is expected. No prior knowledge of microservices is assumed. What You Will Learn Build microservices using Spring Boot, Wildfly Swarm, Dropwizard, and SparkJava Containerize your microservice using Docker Deploy microservices using Mesos/Marathon and Kubernetes Implement service discovery and load balancing using Zookeeper, Consul, and Nginx Monitor microservices using Graphite and Grafana Write stream programs with Kafka Streams and Spark Aggregate and manage logs using Kafka Get introduced to DC/OS, Docker Swarm, and YARN In Detail This book will help any team or organization understand, deploy, and manage microservices at scale. It is driven by a sample application, helping you gradually build a complete microservice-based ecosystem. Rather than just focusing on writing a microservice, this book addresses various other microservice-related solutions: deployments, clustering, load balancing, logging, streaming, and monitoring. The initial chapters offer insights into how web and enterprise apps can be migrated to scalable microservices. Moving on, you'll see how to Dockerize your application so that it is ready to be shipped and deployed. We will look at how to deploy microservices on Mesos and Marathon and will also deploy microservices on Kubernetes. Next, you will implement service discovery and load balancing for your microservices. We'll also show you how to build asynchronous streaming systems using Kafka Streams and Apache Spark. Finally, we wind up by aggregating your logs in Kafka, creating your own metrics, and monitoring the metrics for the microservice. Style and approach This book follows a recipe-driven approach and shows you how to plug and play with all the various pieces, putting them together to build a complete scalable microservice ecosystem. You do not need to study the chapters in order, as you can directly refer to the content you need for your situation.

Python kinderleicht

Author: Jason Briggs
Publisher: dpunkt.verlag
ISBN: 9783864919053
Release Date: 2016-03-09
Genre: Computers

Python ist eine leistungsfähige, moderne Programmiersprache. Sie ist einfach zu erlernen und macht Spaß in der Anwendung – mit diesem Buch umso mehr! »Python kinderleicht" macht die Sprache lebendig und zeigt Dir (und Deinen Eltern) die Welt der Programmierung. Jason R. Briggs führt Dich Schritt für Schritt durch die Grundlagen von Python. Du experimentierst mit einzigartigen (und oft urkomischen) Beispielprogrammen, bei denen es um gefräßige Monster, Geheimagenten oder diebische Raben geht. Neue Begriffe werden erklärt, der Programmcode ist farbig dargestellt, strukturiert und mit Erklärungen versehen. Witzige Abbildungen erhöhen den Lernspaß. Jedes Kapitel endet mit Programmier-Rätseln, an denen Du das Gelernte üben und Dein Verständnis vertiefen kannst. Am Ende des Buches wirst Du zwei komplette Spiele programmiert haben: einen Klon des berühmten »Pong" und »Herr Strichmann rennt zum Ausgang" – ein Plattformspiel mit Sprüngen, Animation und vielem mehr. Indem Du Seite für Seite neue Programmierabenteuer bestehst, wirst Du immer mehr zum erfahrenen Python-Programmierer. - Du lernst grundlegende Datenstrukturen wie Listen, Tupel und Maps kennen. - Du erfährst, wie man mit Funktionen und Modulen den Programmcode organisieren und wiederverwenden kann. - Du wirst mit Kontrollstrukturen wie Schleifen und bedingten Anweisungen vertraut und lernst, mit Objekten und Methoden umzugehen. - Du zeichnest Formen mit dem Python-Modul Turtle und erstellst Spiele, Animationen und andere grafische Wunder mit tkinter. Und: »Python kinderleicht" macht auch für Erwachsene das Programmierenlernen zum Kinderspiel! Alle Programme findest Du auch zum Herunterladen auf der Website!

MongoDB

Author: Tobias Trelle
Publisher: dpunkt.verlag
ISBN: 9783864915345
Release Date: 2014-07-10
Genre: Computers

MongoDB ist die derzeit populärste dokumentenorientierte Datenbank im NoSQL-Bereich. Während klassische Datenbankmanagementsysteme bei großen Datenmengen an Skalierungs- und Leistungsgrenzen stoßen, kann MongoDB auch im Petabyte-Bereich und darüber noch effizient arbeiten und bietet viele Features, die die Verarbeitung von Big Data erleichtern. Kompakt und anhand von zahlreichen Beispielen führt Sie dieses Buch in die Nutzung von MongoDB ein. Es beginnt mit einem Schnellstart, in dem Sie MongoDB installieren und erste Erfahrungen im Umgang mit semistrukturierten Daten und den Vorteilen der Schemafreiheit sammeln. Darauf aufbauend behandelt das Buch u.a. folgende Themen: - Collections & Dokumente - Queries & Indizes - Replikation (Ausfallsicherheit) - Sharding (horizontale Skalierung) - Schema-Design - Map/Reduce - Aggregation Framework Darüber hinaus bietet das Buch am Beispiel der Programmiersprachen Java und Ruby Praxistipps zur Verwendung des API von MongoDB. Nach der Lektüre können Sie einschätzen, in welchen komplexeren Anwendungsfällen sich der Einsatz von MongoDB lohnt, Sie kennen alle wichtigen Features und sind in der Lage, eigene MongoDB-Anwendungen zu erstellen.

Raspberry Pi Kochbuch

Author: Simon Monk
Publisher: O'Reilly
ISBN: 9783960101185
Release Date: 2017-05-19
Genre: Business & Economics

Das Raspberry-Pi-Universum wächst täglich. Ständig werden neue Erweiterungs-Boards und Software-Bibliotheken für den Single-Board-Computer entwickelt. Die zweite Ausgabe dieses beliebten Kochbuchs bietet mehr als 240 Hands-on-Rezepte für den Betrieb des kleinen Low-Cost-Computers mit Linux und für die Programmierung des Pi mit Python. Außerdem erläutert es die Anbindung von Sensoren, Motoren und anderer Hardware, einschließlich Arduino und das Internet der Dinge. Power-Maker und Autor Simon Monk vermittelt grundlegendes Know-how, das Ihnen hilft, auch neue Technologien und Entwicklungen zu verstehen und so mit dem Raspberry-Pi-Ökosystem mitzuwachsen. Dieses Kochbuch ist ideal für Programmierer und Bastler, die mit dem Pi bereits erste Erfahrungen gemacht haben. Alle Codebeispiele sind auf der Website zum Buch verfügbar. - Richten Sie Ihren Raspberry Pi ein und verbinden Sie ihn mit dem Netz. - Arbeiten Sie mit seinem Linux-basierten Betriebssystem Raspbian. - Lernen Sie, den Pi mit Python zu programmieren. - Verleihen Sie Ihrem Pi "Augen" für Anwendungen, die maschinelles Sehen erfordern. - Steuern Sie Hardware über den GPIO-Anschluss. - Verwenden Sie den Raspberry Pi, um unterschiedliche Motoren zu betreiben. - Arbeiten Sie mit Schaltern, Tastaturen und anderen digitalen Eingaben. - Verwenden Sie Sensoren zur Messung von Temperatur, Licht und Entfernung. - Realisieren Sie auf verschiedenen Wegen eine Verbindung zu IoT-Geräten. - Entwerfen Sie dynamische Projekte mit Raspberry Pi und dem Arduino.