Stephan Augsten arbeitet seit dem Jahr 2006 bei den Vogel IT-Medien. Nach seinem Volontariat war er als Redakteur für Security-Insider tätig, seit 2017 ist er Chefredakteur bei Dev-Insider.
Welche Rolle spielen Developer künftig in der IT-Sicherheit? Heather Peyton von Progress erläutert im Interview, warum die Bedeutung von Compliance gestiegen ist, Entwickler von Policy-as-Code profitieren und der CISO heute wichtiger ist denn je.
Software hinterlässt noch einen verhältnismäßig kleinen ökologischen Fußabdruck. Die GreenCoding-Initiative von GFT zielt darauf ab, dass das trotz zunehmender Digitalisierung so bleibt. Binnen vier Jahren will das Unternehmen auch die eigenen Geschäftsabläufe klimaneutral gestalten.
Das World Wide Web Consortium, kurz W3C, hat die Web Audio API zum offiziellen Standard erklärt. Die JavaScript-basierte Programmierschnittstelle dient dem Erstellen und Anpassen von Audioinhalten im Web.
Observability-Tools sollen überall dort wichtige Daten und Metriken liefern, wo klassische Monitoring-Lösungen nicht greifen. Wie sehr Unternehmen davon profitieren und welche Hindernisse es gibt, wollte Splunk im „State of Observability“-Report klären.
Container, DevOps-Prinzipien, Microservices: Die Zukunft der Software-Entwicklung hat bereits begonnen – und sie ist „Cloud native“. Die Vogel IT-Akademie trägt dem mit einer virtuellen Konferenz Rechnung. Mitveranstalter ist Crisp Research, Medienpartner sind die Portale Dev-Insider und CloudComputing-Insider.
Zeitgleich zu Fedora 30 hat das Team Silverblue eine finale Variante der Workstation vorgestellt. Der DNF-Paketmanager weicht rpm-ostree und Flatpak, dank Toolbox-Container lässt er sich aber weiter nutzen. Wir zeigen Schritt für Schritt die Nutzung der Toolbox und die beiden anderen Wege.
Das Open-Source-Projekt etcd, eine Schlüsselkomponente von Kubernetes, wird von Red Hat in die Hände der Cloud Native Computing Foundation übergeben. Da etcd auch in der OpenShift-Plattform zum Einsatz kommt, will sich das Unternehmen aber weiterhin an der Entwicklung beteiligen.
Das Java Development Kit, kurz JDK, hat mit dem Update auf Java 9 fundamentale Änderungen erfahren. Dies dürfte ein Grund dafür sein, dass Java 8 nach wie vor die verbreitetste Plattform für Anwendungen in der Produktivumgebung ist.
GitHub wächst unaufhörlich – sowohl die Anzahl der Nutzer als auch die der Beiträge. Über 31 Millionen Entwickler pflegten demnach gut 96 Millionen Code Repositories und lieferten weit mehr als eine Milliarde Contributions, sprich Beiträge, heißt es im „State oft he Octoverse“-Report.
Facebook-Entwickler haben mit SapFix ein Open-Source-Tools bereitgestellt, das Code-Fehler automatisiert aufspüren und beheben soll. Als KI-Hybrid ist SapFix auf Interaktion angewiesen, erstellt Patches aber vollautomatisch.
Das an das Apache-Flink-Projekt angelehnte Unternehmen data Artisans stellt auf der „FlinkForward“-Konferenz aktuell die „Streaming Ledger“-Technologie vor. Diese kommt in der River-Edition der data Artisans Platform zum Einsatz.
Amazon erweitert den Kernel des Mikrocontroller-Betriebssystems FreeRTOS um Bibliotheken zur Kommunikation mit Cloud-Diensten. Over-The-Air-Updates von IoT-Geräten sollen damit beispielsweise im Betrieb möglich werden.
Programmierer mit grundlegenden Java-Kenntnissen können im September gratis am 14-tägigen Online-Programmierkurs „Java Capstone“ teilnehmen. Der englischsprachige Kurs wird auf der openHPI-Bildungsplattform des Hasso-Plattner-Instituts angeboten.
Java und JavaScript sind die beiden meistgenutzten Programmiersprachen im Enterprise-Umfeld. Laut einer Studie von Cloud Foundry konnten die beiden Sprachen ihre Position zwischen 2017 und 2018 sogar festigen.
Mitglieder der deutschen Drupal-Community und des Vereins Drupal e.V. richten im September eine eigene Konferenz aus. Die „Drupal Europe“ dreht sich dabei nicht nur um das entsprechende Content Management System, auch andere Open-Source-Projekte dürfen sich präsentieren.
Mit Blick auf den Windows-Geräte-Lebenszyklus will Microsoft bald keine Anwendungen für Windows 8 und 8.1 sowie Windows Phone 8.x mehr in den Store aufnehmen. Selbst wenn noch eine Zeitlang Updates ausgeliefert werden können, empfiehlt Microsoft eine Portierung auf die Universal Windows Platform UWP.
Mit CodeSonar 5 hat GrammaTech die neueste Version des Tools für statische Code-Analyse veröffentlicht. Unterstützt werden nunmehr die Programmiersprache C# sowie Microsoft Visual Studio.
Noch bis Ende Oktober haben die Initiatoren quelloffener Projekte die Möglichkeit, sich für den Open Source Business Award OSBAR zu bewerben. Die Auszeichnung wird im Januar 2019 auf dem Univention Summit in Bremen vergeben.
Für mehr Übersicht in Cloud-Anwendungen hat Keysight die Visibility-Plattform Ixia CloudLens erweitert. Container und Kubernetes-Cluster lassen sich nun bis auf Paketebene auf ihre Workloads hin analysieren.
Mit dem Leitgedanken „Agil und intelligent durchstarten“ hat die Agile IT Management GmbH eine Konferenz zu Agilität, DevOps sowie KI und Machine Learning ins Leben gerufen. Unterstützt wird das hannoversche Start-up dabei vom Projektmanagement-Spezialisten Atlassian.
Wie können Unternehmen mittels Prozess-Automatisierung auf das Ziel eines Software Defined Data Centers (SDDC) hinarbeiten? Ein DevOps-Workshop des Systemhauses Erik Sterck GmbH soll unter Berücksichtigung der bestehenden Kundenstrukturen Antworten liefern.
Unter dem Motto „People – Code – AI“ hält WeAreDevelopers eine Konferenz zu Künstlicher Intelligenz in Wien ab. Namhafte Entwickler und IT-Experten berichten dort über aktuelle Trends in den Bereichen Machine Learning und Artificial Intelligence.
Das „Microsoft Quantum Team“ hat Coding Katas für Quantencomputer-Interessierte veröffentlicht. Diese sollen beim Erlernen der Programmiersprache Q# helfen und stehen als Open-Source-Projekt bei GitHub zur Verfügung.
Neu entwickelte Android Apps und Spiele, die über Google Play verteilt werden, müssen mit dem morgigen Tag die aktuelle API-Stufe 26 vorweisen können. Dies garantiert die Lauffähigkeit unter Android 8.0 Oreo und höher. Ein paar Tipps von Google sollen bei der Umsetzung helfen.
Microsoft hat eine Preview der Windows UI Library, kurz WinUI, online gestellt. Diese macht Fluent-Design-Elemente für Windows 10 UWP Apps über NuGet-Pakete zugänglich.
Der Datenanalyse-Experte Qlik baut sein Angebot für Entwickler aus. Vornehmliches Ziel ist dabei eine möglichst umfangreiche Palette an geprüften und vertrauenswürdigen Erweiterungen, die individuell anpassbare Big-Data-Analysen ermöglichen sollen.
GitHub-Nutzer, deren Software-Repositories von Python-Paketen mit bekannten Sicherheitslücken abhängen, erhalten künftig entsprechende Sicherheitswarnungen. Bislang war die Alarmierung bei sicherheitskritischen Abhängigkeiten nur für Ruby- und JavaScript-Pakete verfügbar.
Kürzere Entwicklungszyklen, eine schnelle Bereitstellung neuer Software-Funktionen, mehr Automatisierung: die Software-Entwicklung kann offenbar gar nicht agil genug sein. Dev-Insider hat sich mit Johan Karlsson von Perforce Software über die Vorteile und Probleme agiler Prozesse ausgetauscht.
Angriffe auf die Software-Lieferkette nehmen weltweit zu, heißt es seitens Crowdstrike. Zwei Drittel aller Unternehmen hätten bereits entsprechende Angriffe auf ihre Software Supply Chain erlebt, meldet der Cybersecurity-Spezialist mit Blick auf eine von Vanson Bourne durchgeführte Studie.
Mit DevOptics bietet CloudBees ein Tool an, das die Performance und finanziellen Auswirkungen von DevOps-Strategien messbar machen soll. Gängige Leistungskennzahlen werden dabei mit neuen Monitoring-Funktionen gekoppelt.
Die Abkürzung API steht für Application Programming Interface und bezeichnet eine Programmierschnittstelle. Die Anbindung erfolgt auf Quelltext-Ebene. APIs kommen in vielen Anwendungen zum Einsatz und werden im Webumfeld in Form von Web-APIs genutzt.
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.
Representational State Transfer, kurz REST, ist ein modernes, zu SOAP oder RPC alternatives Programmierparadigma für Web-Services. AWS, VMware, Azure und andere Cloud-Anbieter setzen heute fast ausschließlich auf REST. Es kommt mit weniger Ressourcen aus und lässt sich einfacher erlernen bzw. anwenden. Hat REST also nur Vorteile?
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.
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.
Microsoft sieht wie andere Hersteller das Potenzial der Open-Source-Community und konzentriert sich nicht mehr ausschließlich auf das eigene Windows-Betriebssystem. Linux als Subsystem unter Windows ist in dieser Hinsicht das neueste Feature. Das ist nicht nur für Entwickler praktisch.
Die Abkürzung SQL steht für den Begriff Structured Query Language und bezeichnet eine Sprache für die Kommunikation mit relationalen Datenbanken. Mit SQL-Befehlen lassen sich Daten relativ einfach einfügen, verändern oder löschen.
Dem DevOps-Ansatz folgend sollen die grundverschiedenen IT-Bereiche der Softwareentwicklung, kurz Dev, und des IT-Betriebs, kurz Ops, enger zusammenrücken. Das Ergebnis: Eine beschleunigte Entwicklung und qualitativ hochwertige Deployments.
Von allein kann ein Computer die Anweisungen des Programmierers nicht verstehen. Sie müssen entweder per Compiler in Maschinensprache übersetzt werden oder per Interpreter zur Laufzeit verarbeitet werden.
Eine integrierte Entwicklungsumgebung oder IDE stellt Programmierern eine Sammlung der wichtigsten Werkzeuge zur Softwareentwicklung unter einer Oberfläche zur Verfügung. Die Arbeit für die Erstellung von Programmen wird dadurch vereinfacht.
Von Implementierung spricht man in der Softwareentwicklung, wenn es an die Umsetzung eines zuvor geplanten Entwurfs in ausführbaren Programmcode geht. Ganz allgemein gesprochen bedeutet das Wort nichts anderes als Umsetzung, Aus- oder Durchführung.
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.
Kanban ist heutzutage in aller Munde, wenn es um Software-Entwicklung geht – dabei stammt das Prinzip bereits aus den 1940ern vom Automobilkonzern Toyota. Aber wie funktioniert Kanban und was sollte man in der Praxis beachten?
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.
IT- und Software-Projekte werden immer komplexer – und damit auch das Projektmanagement selbst. Der Einsatz entsprechender Tools und Lösungen stößt gerade in Entwicklerkreisen aber häufig auf wenig Gegenliebe. Work Management präsentiert sich als effiziente Alternative nicht nur für diese Fälle.
Windows 10 IoT ist Microsofts Alternative zu den diversen Linux-Derivaten, die für den Mini-Rechner Raspberry Pi vorgesehen sind. Doch warum überhaupt auf Windows setzen, wenn es auch Linux sein kann? Wir zeigen, welche Anwendungen und Projekte es gibt.
In Visual Studio lassen sich mit dem Formdesigner und der Toolbox alle Arten von grafischer Oberfläche auf Basis von C# recht einfach erstellen. In diesem Beitrag zeigen wir die Vorgehensweise.
Ob Mobile-, Web- oder Multi-Plattform-App, die Entwicklung kleiner Anwendungen ist keine Zauberei. Bevor eine App in Auftrag gegeben wird, sind aber einige wichtige Voraussetzungen zu klären. Denn App ist nicht gleich App – und die Begrifflichkeiten sollten klar sein.
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.
REST und SOAP sind die beiden aktuell wichtigsten Web-Service-APIs. Ob man das fast 20 Jahre alte SOAP oder den Newcomer REST nutzen sollte, hängt von verschiedenen Faktoren ab. Wir starten eine systematische Bestandsaufnahme mit SOAP.
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.
Egal ob auf Windows, Linux oder macOS: Eine Entwicklungsumgebung mit VirtualBox ist in der Standard-Konfiguration zwar lauffähig, aber alles andere als optimal konfiguriert. Wir zeigen, wie Sie die virtuelle Maschine auf Touren bringen, ohne das Host-System unnötig zu belasten.
Der Single Board Computer Raspberry Pi war eines der ersten Entwicklerboards und ist entsprechend populär. Einige RasPi-Alternativen auf ARM-Basis können aber schlichtweg mehr – oder eignen sich besser für spezifische Einsatzzwecke. Wir stellen einige dieser Kleinstcomputer vor.
Python und Java sind bei vielen Android-App-Entwicklern beliebt. Ein Einsteiger wird sich aber zunächst einmal für eine der beiden Programmiersprachen entscheiden müssen. Dieser Artikel befasst sich mit der Frage, welche Sprache sich für welchen Zweck eignet.
Bei der Objektorientierten Programmierung, kurz OOP, werden Daten und Programmcode in übersichtlichen, wiederverwendbaren Modulen – sprich Objekten – gekapselt. Dies reduziert den Programmieraufwand und hilft, Fehler zu vermeiden.
Egal ob Admin oder Programmierer: Systemskripte sind jederzeit praktisch, um lästige, sich wiederholende Aufgaben am Rechner durchzuführen. Microsoft bietet dafür seit geraumer Zeit die Windows Powershell. Und die ist erstaunlich mächtig.
Docker bringt das Konzept der Apps auf den Server. Ein Docker-Container enthält eine Anwendung, aber auch alle Ressourcen, die diese zur Laufzeit benötigt. Seine Vorteile kann Docker besonders gut in Cluster-Umgebungen und Rechenzentren entfalten.
Web Apps sind Anwendungen, die über die Cloud bzw. einen Server bereitgestellt und im Browser beliebiger Endgeräte abgerufen werden. Eine Offline-Nutzung der weitestgehend „barrierefreien“ Applikationen ist dank Zwischenspeicherung mittlerweile allerdings durchaus möglich.
Das Linux-Subsystem in Windows 10 eignet sich hervorragend für die Entwicklung und das Testing von Software. Damit es möglichst effizient arbeitet, sind allerdings noch einige Handgriffe notwendig. Außerdem ist das Subsystem nicht für jeden geeignet.
Immer mehr Anbieter von Web-Services wechseln von SOAP zu REST. Große Cloud-Anbieter wie Amazon und Azure bieten gar beides an, wenngleich sich der Fokus immer mehr zu REST verlagert. Wie REST-Aufrufe komponiert und die zugehörigen Responses analysiert werden, zeigt dieser Beitrag am Beispiel eines der zahlreichen Anbieter von Wetter-Apps, deren APIs ebenfalls meist auf REST basieren.
Wer Open-Source-Software verwendet, muss Regeln beachten. Oft ist die legale Nutzung kniffliger als erwartet. Kommerzielle Tools und Services, aber auch Tools, die ebenfalls quelloffen sind, können helfen, Lizenzrechte einzuhalten.
Früher oder später kommt für jeden Entwickler der Punkt, an dem er das Schreiben und Lesen von Dateien umsetzen möchte. Wie dies unter Python funktioniert, ist Kernthema dieses achten Teils unseres Tutorials.
Low-Code-Development ist der neueste Trend bei der Programmierung. Statt harten Codierens wird mit Hilfe von Applikationsdesignern und grafischen Methoden gearbeitet. Das kann Zeit und damit Kosten sparen, hat aber seine Tücken.
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?
Python erlaubt die Modularisierung eigener Code-Bestandteile und das Einbinden von Standardmodulen über Bibliotheken. Wie Module, Skripts, Libraries und Pakete zusammenhängen, beleuchtet dieser sechste Teil unseres Tutorials.
Als vollwertiges Unix-System eignet sich macOS wunderbar für die Software-Entwicklung. Wir stellen einige Tools vor, mit denen das Programmieren leichter von der Hand geht.
Der Software-Lizenzvertrag ist ein kleines, aber wichtiges Detail der professionellen Anwendungsentwicklung und regelt die Nutzung der Software beim Kunden. Doch welche Arten von Verträgen gibt es?
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.
Software-Dokumentation ist nicht gleich Software-Dokumentation: Es gibt verschiedene Spielarten und Varianten, die sich je nach Projekt und Zielgruppe unterschiedlich gestalten können. Wir erklären die gängigsten Arten.
Seit Docker das Licht der IT-Welt erblickte, haben Container die DevOps-Idee revolutioniert. Dazu bedarf es eines Container-Clusters nebst zugehöriger Verwaltungsinstrumente wie Google Kubernetes. Hier klären wir die Zusammenhänge von Containern, Docker, DevOps und Cloud-native Computing.
Mit der Programmiersprache Java lassen sich plattformunabhängige Anwendungen entwickeln. Nur ein Texteditor, das Java SE Development Kit, kurz JDK, mit Java-Laufzeitumgebung und ein wenig Entwicklungsgeschick werden dafür benötigt.
Die Programmiersprache C stammt aus den 1970ern, ist aber auch heute noch weit verbreitet: Sie bietet hohe Performance, arbeitet maschinennah und funktioniert mit minimalen Ressourcen auf den unterschiedlichsten Plattformen.
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.
Mit Blick auf die Veröffentlichung von Ansible 2.5 und Ansible Tower 3.2.2 bringt Dev-Insider ein Rundum-Spezial im Kontext von Puppet, Chef und Salt. Dieser Teil klärt, was der Open-Source-Star besser macht als die etablierte Konkurrenz, worin sich Ansible, Ansible Tower und AWX unterscheiden und wer die Player hinter Ansible sind.
Docker legt Programme samt ihrer Abhängigkeiten in Images ab. Diese bilden die Basis für virtualisierte Container, die auf nahezu jedem Betriebssystem lauffähig sind. So werden Anwendungen portabel und unkompliziert, sei es während der Entwicklung oder beim Skalieren von SaaS-Clustern.
In diesem Beitrag beschäftigen wir uns um den Docker-Betrieb unter Windows. Trotz der Linux-Wurzeln der Container-Lösung ist dies übrigens kein Widerspruch; denn auch am Windows-Desktop möchte man mitunter schnell Entwicklungsumgebungen oder ein Datenbank-Back-End bereitstellen.
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.
C# ist als objektorientierte Programmiersprache direkt in Microsofts-Entwicklungsumgebung Visual Studio integriert. Microsoft stellt dazu auch eine kostenlose Community Edition zur Verfügung. Wir geben einen ersten Überblick.
PHP steht für „Personal Home Page Tools“ oder „PHP Hypertext Preprocessor“ und bezeichnet eine Skriptsprache im Webumfeld. Die Syntax ähnelt der von Perl oder C. Mit PHP und Datenbankunterstützung lassen sich Webseiten oder Webanwendungen dynamisch gestalten.