Git ist Standard bei der Versionsverwaltung, GitHub Beinahe-Standard bei den Git-Plattformen. Und Pull Requests wiederum sind das Standardverfahren, um Code auf GitHub beizusteuern – eine wichtige Grundlage, die jeder Entwickler kennen sollte.
Mit Hooks bietet Git ein sowohl simples als auch mächtiges Konzept: Jede Statusänderung im Git-Workflow kann dabei beliebige Aktionen auslösen – oder auch den Workflow unterbrechen.
Wer Praxiserfahrung im Programmieren sammeln möchte, findet in freien und Open-Source-Projekten eine gute Anlaufstelle. Ob gelernter Software-Entwicklung oder blutiger Anfänger – es ist für jeden Skill-Level etwas dabei, aber mit ein paar Regeln.
Es hat Jahrzehnte gedauert, doch endlich gibt es ein Windows-eigenes Paketmanagement – nunja, bald zumindest. Noch handelt es sich um eine Vorschau, aber das Paketieren lässt sich bereits jetzt durchexerzieren – holprige Straße inklusive.
Paketmanager hatten unter Windows lange einen schweren Stand. Mit Chocolatey gibt es aber ein durchaus etabliertes Werkzeug, mit dem sich relativ einfach eigene Software paketieren lässt. Wir sehen uns die Funktionsweise einmal genauer an.
Vorbei ist der Spagat zwischen Git auf der Kommandozeile und der GitHub-Weboberfläche: GitHub hat sich selbst einen nativen Client für den Terminal spendiert – und der Umgang ist erfreulich einfach.
„Was für ein Saftladen“, möchte man sich denken: Der OWASP Juice Shop ist eine Plattform mit Sicherheitslücken – jeder Menge davon. Als Entwickler oder IT-Security-Experte sollte man ihn definitiv installieren.
GitHub ist für nicht wenige Entwickler das Zentrum ihrer Arbeit – und wenn dort im Repo etwas passiert, möchte man auch darüber informiert werden. Mit Webhooks und einem Sinatra-Server lässt sich jede Repo-Aktivität in Echtzeit auswerten.
Webhooks tauchen im Netz immer häufiger auf, sei es auf Social-Media-Seiten, in Entwicklerwerkzeugen wie GitHub oder Admin-Tools, zum Beispiel Monitoring-Lösungen. Selbst die universelle Wenn-Dann-Anwendung IFTTT nutzt Webhooks, um noch universeller zu werden.
Auch im 16. Jahr haben studentische und freie Entwickler beim Googles Summer of Code jede Menge Programme, Updates und Patches produziert: von Updates für VideoLAN über Fake-News-Erkennung bis hin zu einem Alarmierungssystem für Experimente mit dem CERN-Teilchendetektor.
Für kleinere Arduino-Projekte genügt die hauseigene IDE. Allerdings verlangt es vermutlich vor allem Software-Entwickler nach der Hardware-Schlacht nach etwas Komfort – und vielleicht einer anderen Programmiersprache.
Arduino ist mehr als nur Hardware – und es gibt auch nicht „den einen“ Arduino. Vom Standard-Board über Musik-Spezialisten bis hin zu IoT-Hardware dienen die Arduino-Plattformen unterschiedlichsten Zwecken.
Das Arduino-Universum mag für Software-Entwickler auf den ersten Blick nur nach schmutzigen Händen und dem Gestank von Lötzinn aussehen. Aber ein Blick lohnt sich, der Einstieg ist simpel und es gibt auch beliebtere Buzzwords wie C++ oder Python.
IFTTT bekommt nicht wirklich die Aufmerksamkeit, die es verdient hat – der Dienst gehört zum Besten, was das moderne Internet hervorgebracht hat. Auch Entwickler können von der Plattform mit dem selbstbeschreibenden Namen profitieren.
GitOps beschäftigt Entwickler, Medien und IT-Manager – aber was bedeutet das überhaupt in der Kategorie der Tools und Lösungen? Ein Überblick über die wichtigsten Werkzeuge rund um den Pull-Request-Ansatz.
Kubernetes muss nicht mehr aufwändig eingerichtet und das darunter liegende Linux nicht mehr aufwändig optimiert werden – dank k3OS aus dem Hause Rancher Labs.
Mit dem Report Octoverse Spotlight hat GitHub ein spannendes Dokument zu Corona-bedingten Veränderungen innerhalb der GitHub-Community veröffentlicht. Auch wenn einige Fragen offen bleiben und spekuliert wird, lassen sich interessante Trends erkennen.
In der 16. Auflage verdient der Summer of Code von Google besondere Aufmerksamkeit: Mit drei Monaten Programmierarbeit ist es nicht nur eine der größten Coding-Veranstaltungen, sondern auch eine der wenigen, die trotz Corona überhaupt stattfinden.
GitOps ist aktuell ein großes Thema – als Konzept aber eben reine Theorie. Schaut man sich aber mal ein konkretes Tool an, wird GitOps greifbar. Und dafür eignet sich die Open-Source-Software Argo CD sehr gut.
Wenn GitOps eines ist, dann aktuell ein großes Thema. Überall sprießen Artikel, Services und Produkte aus dem Boden, die sich mit GitOps schmücken. Aber um herauszufinden, was GitOps denn nun genau ist, was da passiert und wo es her kommt, braucht es bisweilen eine Ewigkeit.
Auf 2D- und 3D-Spiele spezialisierte Gaming-IDEs haben wir bereits vorgestellt. Doch es gibt in der Open-Source-Welt auch All-in-One-Lösungen, die Spieleentwickler in ihrer Kreativität unterstützen. Zugegeben: Die Auswahl ist deutlich kleiner.
Ein Kubernetes-Cluster mit Docker-Containern zu pflegen ist keine ganz triviale Angelegenheit. Red Hat OpenShift setzt sich über diesen Kosmos und vereinfacht die Verwaltung von Clustern und vor allem das Deployment von Anwendungen.
Beim Gaming ist 3D-Grafik längst Normalität. Titel wie Doom haben den Weg schon vor langer Zeit geebnet – und als freie Gaming Engine ist Doom weiterhin Wegbereiter. Diese und weitere vielversprechenden IDEs für 3D-Games stellen wir heute vor.
Emacs ist neben Vim immer noch einer der beliebtesten Editoren bei Entwicklern – und Git die unangefochtene Nummer 1 bei Versionsverwaltungen. Und natürlich lässt sich direkt in Emacs mit Git-Repositories arbeiten – nativ oder komfortabler mit dem Add-on Magit.
Spiele zu entwickeln ist reizvoll: Mit einer guten Idee lässt sich auch mit relativ wenig Aufwand ein marktfähiges Produkt bauen. In Zeiten von Retro Games werden Schwächen eher verziehen und die Grafik darf auch gerne einfach und pixelig sein. Das gilt insbesondere für 2D-Titel wie Platformer. Fehlt nur die passende Entwicklungsumgebung.
Es gibt Dutzende guter Code-Editoren, aber mit Ausnahme von Emacs ist kaum einer so etabliert wie Vim. Auch Git ist allgegenwärtig und da lohnt es sich, Vim ein wenig zu pimpen. Mit ein paar Basics und einigen Plug-ins wie Vim-Fugitive bekommen Sie Ihre persönliche IDE.
„Was wäre, wenn?“ Das ist die grundlegende Frage für jegliche Entwicklung. Was wäre, wenn der Nutzer das Kästchen anklickt? Was wäre, wenn a einen Wert zwischen 4 und 10 hat? Was, wenn Datei XY existiert? Was, wenn String 1 in String 2 vorkommt? Und was wäre, wenn intuitiv verständlich wäre, wo die Unterschiede zwischen [[]], [], (()) und test liegen?
Mit den Apps Termux und Termux:API lässt sich ein altes Android-Smartphone als IoT-Gerät einsetzen – ganz simpel per Shell-Scripting. Hier zeigen wir praktische Beispiele unter Verwendung diverser Hardware- und Android-Features wie Kamera, Sharing und Sensoren.
Ein Android-Smartphone ist weit mehr als ein kluges Telefon, es ist ein tragbarer Computer. Android-Geräte lassen sich wunderbar als IoT-Geräte verwenden. Und das beste Werkzeug für eigene, kleinere Projekte? Natürlich der gute alte Linux-Terminal, den es auch unter Android gibt, sogar ohne Root.
Der Weg in die Container-Welt führt durch beängstigend lange Docker-Canyons und direkt in das nicht minder Furcht einflößende Kubernetes-Tal. Muss aber nicht sein, denn ein freundlicher Rancher bietet Hilfe an. Aber was genau ist Rancher und wie geht es los?
Kanban-Boards visualisieren den Fortschritt von Projekten. Sie zeigen auf einen Blick, welche Arbeiten gerade von wem erledigt werden, wo es Engpässe und Probleme gibt und welche Aufgaben abholbereit sind. Wir stellen fünf dieser Tools vor.
Bevor es ans Programmieren geht, muss man eine Anwendung möglicherweise präsentieren. Erste GUI-Entwürfe – sprich Mockups – helfen, Kollegen, Partner oder Kunden von der Idee zu überzeugen. Mit den passenden Tools geht das Erstellen von Mockups aber recht einfach von der Hand.
Programmieren macht am meisten Spaß, wenn man Zeit spart. Und das erreicht man über Automatisierung und Wiederholungen. Mit Schleifen lassen sich große Datenmengen mit nur drei, vier Zeilen Code verarbeiten. Das ist auch für Nicht-Programmierer äußerst nützlich.
Für kleinere Arduino-Projekte genügt die hauseigene IDE. Allerdings verlangt es vermutlich vor allem Software-Entwickler nach der Hardware-Schlacht nach etwas Komfort – und vielleicht einer anderen Programmiersprache.
Regular Expressions gehören zu den mächtigsten Werkzeugen überhaupt. Und das gilt nicht nur für Entwickler oder Administratoren, auch Büroangestellte und Ottonormalverbraucher können immens davon profitieren. Wenn das nur nicht immer so kompliziert aussähe. Ein Crash-Kurs am Beispiel verschiedener Meier-Schreibweisen.
Arduino ist mehr als nur Hardware – und es gibt auch nicht „den einen“ Arduino. Vom Standard-Board über Musik-Spezialisten bis hin zu IoT-Hardware dienen die Arduino-Plattformen unterschiedlichsten Zwecken.
Webhooks tauchen im Netz immer häufiger auf, sei es auf Social-Media-Seiten, in Entwicklerwerkzeugen wie GitHub oder Admin-Tools, zum Beispiel Monitoring-Lösungen. Selbst die universelle Wenn-Dann-Anwendung IFTTT nutzt Webhooks, um noch universeller zu werden.
Das Notepad++ ist ein mächtiger Texteditor. Dabei bietet das Tool Syntax Highlighting und weitere Entwickler-Funktionen und lässt sich als Open-Source-Software um zusätzliche Sprachen und Plugins bis hin zur vollständigen IDE erweitern.
Dieser letzte Teil unserer Git-Serie für Einsteiger gibt einen Einblick in tiefergreifende Mechanismen der Versionierung. Wir zeigen, wie sich ein Entwicklungsstrang grundsätzlich verästeln und anschließend wieder verschmelzen lässt.
Open Source Software wird von Unternehmen gerne als günstige und anpassbare Lösung eingesetzt. Wie aber lassen sich die Lizenzbestimmungen einhalten, wenn es darum geht, sie als Basis für eigene Produkte zu verwenden?
Vorbei ist der Spagat zwischen Git auf der Kommandozeile und der GitHub-Weboberfläche: GitHub hat sich selbst einen nativen Client für den Terminal spendiert – und der Umgang ist erfreulich einfach.
Ein Android-Smartphone ist weit mehr als ein kluges Telefon, es ist ein tragbarer Computer. Android-Geräte lassen sich wunderbar als IoT-Geräte verwenden. Und das beste Werkzeug für eigene, kleinere Projekte? Natürlich der gute alte Linux-Terminal, den es auch unter Android gibt, sogar ohne Root.
Mit dem Report Octoverse Spotlight hat GitHub ein spannendes Dokument zu Corona-bedingten Veränderungen innerhalb der GitHub-Community veröffentlicht. Auch wenn einige Fragen offen bleiben und spekuliert wird, lassen sich interessante Trends erkennen.
Ob einfacher Syntax-Test für Skripte oder aufwändiger Blackbox-Test für komplexe Web-Anwendungen: Mit den passenden Tools geht das Testing flott und mit Freude von der Hand. Hier zeigen wir zehn Open-Source-Werkzeuge, die man kennen sollte.
Der Weg in die Container-Welt führt durch beängstigend lange Docker-Canyons und direkt in das nicht minder Furcht einflößende Kubernetes-Tal. Muss aber nicht sein, denn ein freundlicher Rancher bietet Hilfe an. Aber was genau ist Rancher und wie geht es los?
„Was wäre, wenn?“ Das ist die grundlegende Frage für jegliche Entwicklung. Was wäre, wenn der Nutzer das Kästchen anklickt? Was wäre, wenn a einen Wert zwischen 4 und 10 hat? Was, wenn Datei XY existiert? Was, wenn String 1 in String 2 vorkommt? Und was wäre, wenn intuitiv verständlich wäre, wo die Unterschiede zwischen [[]], [], (()) und test liegen?
Der App Inventor soll ein Versprechen einlösen: eigene Apps ohne Programmierkenntnisse. Benötigt werden lediglich Browser, Android-Gerät und ein klein wenig Logik. Im Workshop erstellen wir eine App zum Erstellen, Beschriften und Teilen von Fotos.
Die erste Assoziation bezüglich einer Linux-Shell dürfte bei den meisten Anwendern wohl Bash sein. Die Bourne-again Shell ist der Quasi-Standard – und nur die wenigsten Nutzer dürften sich überhaupt dafür interessieren, wo sie da ihre Kommandos eintippen. Dabei gibt es durchaus interessante Alternativen.
In diesem Teil des Git-Tutorials gehen wir einen vereinfachten, aber praktischen Arbeitstag mit entferntem Git-Repository, Teamarbeit und Dateikonflikten durch. Denn der Reiz der verteilten Versionsverwaltung liegt nun einmal in den Collaboration-Funktionen.
Spiele zu entwickeln ist reizvoll: Mit einer guten Idee lässt sich auch mit relativ wenig Aufwand ein marktfähiges Produkt bauen. In Zeiten von Retro Games werden Schwächen eher verziehen und die Grafik darf auch gerne einfach und pixelig sein. Das gilt insbesondere für 2D-Titel wie Platformer. Fehlt nur die passende Entwicklungsumgebung.