Web Components

Web Components sind eine neue und wichtige Erweiterung der Standards für das Web und bietet neue Möglichkeiten moderne Anforderungen in Websites und Webapplikationen abzubilden. Die vier großen Neuerungen sind native HTML Templates, native HTML Importe, die Möglichkeit zur Erstellung eigener HTML Elemente und das sog. “Shadow DOM”, d.h., vereinfacht ausgedrückt, die Möglichkeit, bestimmte Komponentengruppen in einer Website oder Webapplikation besser von anderen abzuschotten, dass diese sich nicht in gegenseitig stören.

TypeScript

TypeScript ist eine Programmiersprache die zu JavaScript transpiliert wird und Klassen, Schnittstellen, Vererbung, Module, anonyme Funktionen, generische Typen und eine statische Typisierung unterstützt. Es wird damit gerechnet, das die Eigenschaften von TypeScript in Zukunft in neuere JavaScript Versionen Einzug erhalten werden. In der großen Auswahl an Programmiersprachen die zu JavaScript transpilieren ist TypeScript eine der beliebtesten und erfährt große Unterstützung durch Werkzeuge und größere Projekte.

Electron

Electron ist ein Paket aus Softwarekomponenten und Werkzeugen, die es ermöglichen mit überschaubarem Aufwand eine Applikation für Desktopumgebungen vollständig mit Webtechnologien zu entwickeln. Hierbei werden alle benötigten Komponenten – Quellcode, Gestaltungselemente, Datenspeicher, Viewport mit Browseransicht und ähnliches – in einer einzelnen ausführbaren Datein gebündelt und für die verschiedenen Plattformen ausgeliefert.

Angular

Angular ist ein JavaScript Toolkit für die Entwicklung komplexer leistungsfähiger Webapplikationen. Neben Toolkits wie Polymer und ReactJS ist Angular eines der populären und wird in vielen wichtige Webapplikationen eingesetzt. Angular verwendet auch die transpilierte Programmiersprache TypeScript.

MySQL

Das mit Abstand beliebteste Datenbanksystem ist die freie und quelloffene Datenbank MySQL. Die allermeisten Websites und Webapplikationen im Internet nutzen MySQL als Fundament für die Datenverwaltung und den Aufbau relationaler Datenstrukturen. SQL ist der Name der Standardprogrammiersprache für Datenbanken.

SQL ist eine Datenbanksprache aus der Geburtsstunde des Microcomputers und war ursprünglich als einfach zu verstehene Computersprache für Büroarbeiter konzipiert, die SQL direkt benutzt haben, um Datenbanksysteme zu bedienen. Aus historischen Gründen hat sich SQL auch als Sprache für die Programmierung von Datenspeicherung durchgesetzt und wird auch heute noch in Programmen verwendet, um relationale Daten in Datenbanken zu speichern.

Browsersync

Browsersync ist ein kleines praktisches Werkzeug, das mit dem npm Paketmanager zur Verfügung gestellt wird. Hiermit kann man die verschiedenen Webbrowser, die man bei der Webentwicklung im Einsatz hat, synchronisieren und automatisch steuern. Sehr praktisch für die gleichzeitige Entwicklung auf verschiedenen Geräten.

Babel

Babel ist ein spezieller Compiler, der JavaScript 6 in JavaScript 5 übersetzt – ein so genannter ‘Transpiler’. Mit diesem Werkzeug kann man schon in der neuen Version von JavaScript programmieren und alle neuen Eigenschaften der Sprache nutzen, und trotzdem Webapplikationen bauen, die schon in den heutigen Browser laufen. Babel ist eine ansehnliche Sammlung an Programmen und Softwareklassen und selbst in JavaScript programmiert.

Autoprefixer

Autoprefixer ist ein CSS Präprozessor, der CSS Dateien um browserspezifische Angaben erweitert. Verschiedene Browser von verschiedenen Anbietern brauchen unterschiedliche CSS Angaben um die gleichen Resultate in der Gestaltung einer Website oder Webapplikation zu erzeugen. Autoprefixer kümmert sich automatisch um diese Zusätze und spart damit im Alltag dem Webentwickler einiges an unnötiger Arbeit.

Google Web Designer

Google Web Designer ist ein Softwarewerkzeug zur Erstellung von modernen interaktiven Elementen für Websites und grafischen Oberlächen. Ähnlich wie im inzwischen obsoleten Flash kann man damit auch grafische Elemente im einer Zeitleiste animieren.

npm

npm, der Node Package Manager, ist das mit abstand am häufigsten verwendete Packetverwaltungstool für die JavaScript Programmiersprache. Mit diesem Werkzeug kann man schnell und probemlos über eine aktive Internetverbindung auf eine Vielzahl von JavaScript Packeten zugreifen und diese mit wenigen Befehlen in Windeseile automatisch in seine Websoftwareprojekte einbinden. Ein solcher Packetmanager ist in der professionellen Softwareentwicklung unverzichtbar.

Gulp

Gulp ist ein so genanntes ‘Build Tool’ – ein Werkzeug, das eine Reihe von Tätigkeiten zur Erstellung, zum Testen und zur Auslieferung von Software automatisiert. Gulp ist in JavaScript programmiert und wird unter anderem bei großen und komplexen Websoftwareprojekten eingesetzt, um Quelltextpakete und deren Aufbereitung zu steuern. Unter anderem beim Internetkonzern Google.

Karma

Softwareentwicklung ist eine komplexe und schwierige Tätigkeit. Das gilt doppelt für die Websoftwareentwicklung. Vielerlei Werkzeuge kommen zum Einsatz, unter anderem Werkzeuge zum automatisierten Testen von Software. Für Websoftware, speziell solche die in JavaScript entwickelt wird, ist Karma das Testwerkzeug der Wahl mit dem sich Auswirkungen von Änderungen und Erweiterungen von Softwareprojekten schnell und ausgiebig automatisiert auf Fehler oder unerwartete Auswirkungen testen lassen.

SASS

SASS – Syntactically Awesome Style Sheets – ist ein CSS Präprozessor, der die Gestaltungsprache CSS um wichtige und nützliche Eigenschaften wie Variablen und Module erweitert. Man schreibt CSS in einer erweiterten Sprache (SASS) und verarbeitet diese dann vor der Veröffentlichung mit dem SASS Compiler, der daraus CSS Dateien generiert, die vom Webbrowser verstanden werden können.

Python

Python ist eine der beliebtesten Programiersprachen weltweit und ist eine der wenigen, wenn nicht gar die einzige Programmiersprache, die in jedem Industrie- und Wissenschaftszweig professionell angewendet wird.

Von der Webentwicklung, über die Unterhaltungsindustrie und das Bankenwesen bis hin zur klassischen Industrie und der Wissenschaft wird Python vielerorts eingesetzt. Gleichzeitig ist es eine Programmiersprache, die sehr viele Anfänger  und Profis gleichermaßen mögen. Python ist modern, sehr einfach zu lernen und auch einfach anzuwenden.

Qt

Qt ist das Toolkit für plattformunabhängige Desktopapplilkationen schlechthin. Seit etwa 2 Jahrzehnten ist Qt die Bibliothek der Wahl für große, nicht-triviale Programme und Arbeitsumgebungen. Unter anderem der ursprüngliche Opera Browser und die KDE Nutzeroberfläche wurden und werden mit Qt programmiert. Die verwendete grundlegende Programmiersprache ist C++.

Rust

Rust ist ein Vertreter der neuen Welle an Systemprogrammiersprachen. Vom Mozilla / Firefox Team entwickelt, verspricht Rust hohe Geschwindigkeiten, Stabilität und sichere Nebenläufigkeit auf modernen Multiprozessor Systemen.

Android Studio

Android Studio ist die Entwicklungsumgebung für Programme und Apps für das mobile Betriebssystem Android. Wer nicht-triviale oder schnelle mobile Applikationen haben will, kommt um Android und Android Studio nicht herum. Über eine Milliarde Nutzer lassen sich mit Software ansprechen, die auf und mit dieser Plattform entwickelt wird.

Android

Android ist das mobile Betriebssystem von Google, das im Kern auf einem Linux-System beruht. Android hat sich in weniger als einem Jahrzehnt nach seiner Platzierung als Konkurrenz zu Apples iOS als das am weitesten verbreitete Endnutzerbetriebssystem der Welt durchgesetzt. Es läuft auf weit über einer Milliarde Smartphones und Tabletcomputern weltweit.

Die Komplexität der Entwicklung und vor allem die Auslieferung von Software auf Android ist trotz der Mächtigkeit von Android und seiner Java Laufzeitumbegung (nicht mit JavaScript verwechseln!) vergleichsweise gering und wird durch frei erhältiche professionelle Entwicklungswerkzeuge unterstützt. Für die Entwicklung von nativen mobilen Applikationen ist Android ein wenn nicht gar das System der Wahl.

Chromium

Chromium ist die freie quelloffene Variante des Chrome Browser von Google und wird ohne die übliche Nutzerverhaltensanalyse von Google ausgeliefert – deshalb wird diese Variante des Chrome Browsers auch gerne von Computerexperten genutzt.

Blender

Blender ist ein Vorzeigeprojekt der internationalen Open Source Community. Ursprünglich aus einer kommerziellen underdog 3D Software entstanden ist dieses inzwischen als freies open source Werkzeug erhältliche 3D Softwarepaket für viele Künstler und 3D Experten weltweit mit seinem sehr mächtigen Funktionsumfang die Software der Wahl. Selbst Fans von anderen Werkzeugen nehmen Blender zur Hand, wenn es gilt, Dinge zu tun die das Programm bekanntermaßen besser macht als andere.

Blender wird ständig weiterentwickelt und es ist abzusehen, das es eines Tages sich auch in der Filmindustrie als Standard durchsetzen wird.

Mit entsprechende Erweiterungen und Plugins lässt sich Blender auch hervorragend für die 3D Webentwicklung einsetzen.