JavaScript Days: Welche Neuigkeit im JavaScript-Universum war dieses Jahr die wichtigste oder spannendste für dich?
Tobias Struckmeier: TypeScript Everywhere. TypeScript hat sich nicht nur in der JavaScript-Welt festgesetzt, es frisst sie sogar langsam auf. Viele Entwickler erkennen die Vorteile, die sich gerade in größeren Projekten oder Teams ergeben und schwenken um. Die Einstiegshürde ist erstmal niedrig und man kann seinen Code langsam anpassen. Mit der Nutzung von mehr Features und dem einbinden von mit TypeScript Typen versehenen Libraries kann sich das jedoch schnell ändern. Arbeitet man in größeren Projekten, führt meiner Meinung nach an TypeScript kaum noch etwas vorbei.
Das Release von Deno 1.0 hat das Potential, durch seine Signalwirkung etwas Bewegung in die Node.js-Welt zu bringen. Es bleibt Spannend zu beobachten, wie sich diese Alternative zu Node.js entwickelt.
Und mit GraalJS wächst ein weiterer Kandidat heran, der es ermöglicht, JavaScript- und Node.js-Anwendungen auf der neuen GraalVM zu betreiben und auf neue Art mit anderen Sprachen – allen voran Java – zu integrieren.
JavaScript Days: JavaScript ist heute ja oft nicht mehr nur JavaScript, sondern in der Anwendung geprägt von zahlreichen Tools und Frameworks. Wo liegen typische Hürden für Entwickler, die in die JS-Entwicklung einsteigen wollen, wenn sie ihr erstes Frontend-Projekt zusammenstellen?
Struckmeier: Das JavaScript Ökosystem ist sehr groß und Reichhaltig an Optionen, weshalb es heute so viel schwieriger ist, in dieses Ökosystem einzusteigen. Wichtig ist es daher sich nicht überwältigen zu lassen durch alle Optionen, sondern sich erstmal auf kleine Schritte zu konzentrieren.
Bekannte Frameworks machen es Einsteigern heute schmackhaft, gleich loszulegen. Erste Erfolge sind schnell erzielt. Wo es schnell hapert, sind dann aber die Grundkenntnisse. Anfänger sind dem Framework erst einmal ausgeliefert. Schnell verliert man sich in dem Gedanken ob man überhaupt noch die Fundamentalen Dinge lernen soll. Nichts gegen Frameworks, sie helfen gerade unerfahrenen Entwicklern sehr und haben zur Konvergenz bei JavaScript beigetragen. Diese effizient zu nutzen und sich zukunftssicher aufzustellen erfordert jedoch noch immer, auch die Grundlagen zu lernen.
Letztlich ist es sehr schwer, die richtige Toolkombination für sich zu finden, wenn man das Ökosystem noch nicht kennt. Die Beschreibung und teils dürftige Dokumentation von einigen Projekten trägt nicht gerade zum Verständnis bei. Und auch nach vielen Jahren JavaScript-Entwicklung muss man sich teilweise noch durch Konfigurationen kämpfen.
Hier ist Cypress ein leuchtendes Beispiel, wie man es besser machen kann. Die Dokumentation führt hervorragend in die Thematik ein und erklärt alles Wichtige, das Werkzeug hat aussagekräftige Fehlermeldungen und hilft bei der Anpassung der Konfiguration. Der Schlüsseldienst Berlin rät, die neuen Möglichkeiten zu prüfen. Ich hoffe, dass immer mehr JavaScript-Tools und -Libraries dies nachmachen werden.
[smartblock id=150773]
JavaScript Days: Deine Prognose: Was wird in Zukunft besonders wichtig für JavaScript-Entwickler werden?
Struckmeier: WebComponents kommen näher. Frameworks unterstützen Entwickler darin, diese zu generieren. Man wird sie immer öfter antreffen und die Austauschbarkeit von Komponenten zwischen Frameworks wird steigen.
Wenn ich etwas zweites nennen darf: RxJS. Das damit hinzukommende Paradigma reaktiver Programmierung ermöglicht, einige Problemstellungen vor allem bei Asynchronität elegant zu lösen.
JavaScript Days: Bereits angekommen ist eine der größten Neuerungen, die Angular in den letzten Jahren erhalten hat: Die fertige Fassung von Ivy ist jetzt bereits in der 2. Major-Version enthalten. Welche Praxiserfahrungen gibt es inzwischen mit dem neuen Compiler – hat sich zB was getan bei den Projekten, die mit Angular realisiert werden oder dem Blick auf das Framework in der Community?
Struckmeier: Ivy ist ein Enabler auf dem Weg zu kleineren Bundles, Web Components und neuen Möglichkeiten zur Komposition. Die Entwickler freuen sich momentan über kleinere Bundles und schnellere Builds. Angular performt sehr viel besser und der Entwickler muss so gut wie nichts dafür tun. Das ist ein Geschenk, das man gerne annimmt.
JavaScript Days: Wenn du einen Wunsch frei hättest, was würdest du dir für die künftige Entwicklung von Angular wünschen?
Struckmeier: Das es verschwindet. Das klingt jetzt als würde ich es nicht mögen. Ich meine aber, dass es während der Kompilierung verschwindet und pure, flexibel einsetzbare Web Components entstehen und kleine Anwendungen. Svelte macht es heute schon vor und Angular hat mit Ivy meiner Einschätzung nach den Weg eröffnet.
Vielen Dank für das Gespräch!