Schwerpunktthema

JavaScript

Fachartikel, Podcasts, Vorträge und mehr zum Thema JavaScript.
Blog-Post

A natural language calculator

In my prior post I’ve written about how to run a chat with a large-language-model on your PC. This time I want to focus on scripting this with Node.js and letting the AI- and the “normal”-world interact with each other.

Blog-Post

Clientseitige Speichertechnologien im Browser

Ein kurzer Überblick über diverse Technologien zur clientseitigen Speicherung von Daten und Zustand im Browser

Blog-Post

Custom Elements are NOT for Templating

Untangling the confusion between browser defaults and JavaScript component frameworks

Artikel

Blaupausen

JavaScripts Art der Objektorientierung ist anders als die anderer Sprachen. Daran hat auch die Einführung von Klassen nichts geändert, obwohl es auf den ersten Blick so aussehen mag. So funktioniert das ungewöhnliche System.

Blog-Post

Offline with redux

We’ve been writing a web application that supports users being offline without using a service worker. We’d love to share how we’ve done that and what we think are the advantages.

Artikel

Dependently-Typed TypeScript

Ein Blick in die Untiefen eines Typsystems für JavaScript

Artikel

TypeScript – Die Komplexität von JavaScript bändigen

2022 feiert TypeScript zehnjähriges Jubiläum. Anlass genug, auf die Anfänge zurückzublicken – und Einsteiger:innen alles an die Hand zu geben, was sie für die Arbeit mit der Programmiersprache brauchen.

Artikel

Der Nächste, bitte!

In der Regel läuft der Code von Webseiten in nur einem Thread, modernen Multicore-Prozessoren zum Trotz. Echte Parallelität gibt es so nicht, aber ein schlaues Programmiermodell erlaubt dennoch „asynchronen“ Code, der nicht linear abgearbeitet wird.

Artikel

What Does a Bundler Actually Do?

Blog-Post

Just add Code (Teil 2)

Dass Web Components ein gutes Mittel sind um in sich gekapselt Logik für Progressive Enhancement an den Browser auszuliefern hatten wir uns ja schon angeschaut. In diesem Teil des Blog Posts zeige ich im Detail, wie GitHubs Catalyst uns dabei unterstützt Web Components zu entwickeln, die dem Progressive Enhancement Paradigma folgen.

Blog-Post

Just add Code (Teil 1)

Will man in einer Webapplikation auf dem Browser Logik ausführen, so bieten sich mittlerweile Web Components an um mit sinnvollem Scoping Code und Markup zu senden. In den üblichen Beispielen führt das leider dazu, dass man im Browser ohne JavaScript nichts sieht, weil der gesamte Inhalt der Web Component in JavaScript generiert wird.

Blog-Post

Progressive Enhancement mit Hotwire

Die endgültige Renaissance von Server-side Rendering?

Podcast

JavaScript

Von der düsteren Vergangenheit in eine glorreiche Zukunft

Blog-Post

Good arguments for SPA frameworks

I love SPAs when they are used with a clear purpose. I hate them when they are not. This blog post tries to explain my personal conflict.

Podcast

faucet-pipeline

JavaScript, CSS, Bilder und Fonts bereit zum Ausliefern

Artikel

React: Lessons Learned

This article describes React from a backend programmers' perspective. It is not meant to be a tutorial, and it also does not present any new, fancy patterns or features. Rather, it is an interpretation of React with focus on shedding light on its functional aspects. Many experienced React developers appreciate the framework for being pragmatic, simple and easy to get work done with. This article unveils some of the theory behind this simplicity and shows how the core ideas behind the framework can be carried over to the lower levels of a Javascript application.

Blog-Post

Injecting polyfills for missing JavaScript functions into WKWebView

Hybrid apps often use the WKWebView to display the web app part. Unfortunately there is no console output to being able to debug it. This blog post provides a guide on how to add polyfills to WKWebView with native code interaction. As a result you will be able to catch the console output of a webpage loaded in a WKWebView and print it to the Xcode debug console.

Podcast

TypeScript

Was sind das denn für Typen?

Blog-Post

Cross-platform testing of TypeScript code with Jasmine and Karma

I like TypeScript. Writing code that already underwent basic checks (i.e. typechecking) before it can even touch an execution engine is a big win in my book. In particular, TypeScript is nice because it integrates well into the broader JavaScript ecosystem and comes with batteries (i.e. types) included. Unfortunately, most test runners require extra setup to work with tests written in TypeScript. Some even require staggering amounts of configuration.

Blog-Post

Using Javascript plugins in Go

There are projects, where you want to create an application, that is extensible by other parties without access to the sources iteself or re-compiling the whole binary. This concept is known as modules, plugins or features nowadays. This might be the case if you are creating a client application (e.g. to implement scripting functionality), but also if you want to have your server application extensible by third parties.

Blog-Post

An Introduction to TypeScript

for Backend Development (and Java Developers)

Blog-Post

Animating SVG Icon Transitions

This describes options for morphing one SVG icon into another using both SMIL or CSS transforms.

Artikel

JavaScript? Gern, aber bitte in Maßen

Die Vorteile eines klassischen Architekturansatzes für Web-Anwendungen

Blog-Post

Type checking JSX: A can of props

Blog-Post

(De-)Serializing JavaScript Models with Metaprogramming

DIY abstraction for serializing and deserializing JavaScript model instances

Blog-Post

How to add Swift functions as polyfills in JavaScriptCore

Reusing existing JavaScript implementations of your web app for your iOS app can be a good choice for some complex calculations. Unfortunately anything that is not part of the pure JavaScript language won’t be available. Learn in this blog post how to supply missing functionality via native code.

Artikel

Wider die SPA-Fixierung

Ein Plädoyer für eine klassische Frontend-Architektur

Artikel

Was sind eigentlich Web Components?

Für die Erstellung von Benutzeroberflächen im Web sind HTML, CSS und JavaScript gesetzt. Doch die Wiederverwendung und Kapselung von so erstellten Komponenten lässt zu wünschen übrig. Um eine fertige Komponente zu nutzen, muss man das HTML übernehmen und passendes CSS und JavaScript separat einbinden. Web Components versprechen, hier zu helfen. In dieser Kolumne schauen wir uns gemeinsam an, was Web Components sind und wie diese funktionieren.

Blog-Post

Report Generator in Rust

In this blog post, we are going to build a backend application in Rust for converting HTML report into PDF format. Rust is a system programming language which focuses on performance, stability and memory safety. There are thousands of Rust libraries built by its community and we are going to build our application using some of these libraries.

Blog-Post

Declarative Data Transformations

Validating and Transforming Inconsistently Structured Data

Artikel

Blockchain hausgemacht

120 Mitarbeiterinnen und Mitarbeiter bauen eine Blockchain in 12 Sprachen. Bei INNOQ veranstalten wir jedes Jahr einen so genannten Hands-On-Event. Dieser ist Teil unserer regulären Mitarbeiter-Events und findet typischerweise im Frühjahr statt. Wir treffen uns alle für zwei Tage an einem Ort und versuchen mit der Programmiersprache unserer Wahl in Gruppen eine definierte Aufgabe zu lösen. Optimal also, um neue Sprachen und neue Kolleginnen und Kollegen in Gruppenarbeit kennenzulernen. Die Aufgabenstellung lautete in diesem Jahr: Baue eine Blockchain!

Podcast

Transklusion

Frontendintegration im Web

Blog-Post

Taking Screenshots of DOM Elements

Podcast

twwwr

INNOQ Digital Art 2018

Artikel

Tooling für JavaScript-Frontends

Nahezu jede Webanwendung besitzt einen Anteil an JavaScript im Frontend. Im Vergleich zu früher haben sich jedoch viele Dinge geändert. So sind heute zahlreiche Tools üblich, die den Entwickler unterstützen. Dieser Artikel gibt einen Überblick über aktuell genutzte Entwicklungswerkzeuge für die Entwicklung von JavaScript-Frontends.

Blog-Post

Marrying Rails, Turbolinks and JavaScript Custom Elements

Blog-Post

Rendering Self-Contained Custom Elements

This is a response to Paul Kinlan’s post on creating custom elements, explaining how JSX can be used for declarative templating.

Blog-Post

Progressive Web Components

This is a write-up of the “Progressive Web Components” presentation at GOTO Berlin.

Artikel

Web Components mit Polymer

Teil 2: Technische Anwendung

Artikel

Nachhaltige Webarchitekturen

Heutzutage gewinnt man leicht den Eindruck, dass es für moderne Webanwendungen nur einen einzig wahren Architekturansatz gibt: REST und Single-Page-Anwendungen (SPAs). Doch ist alles, was REST genannt wird, wirklich REST? Sind REST und SPAs immer die beste Lösung? Um diese Fragen beantworten zu können, sollte man sich anschauen, was REST eigentlich ist, wofür es gedacht ist und ob es möglicherweise auch Alternativen zu SPAs gibt; insbesondere mit dem Blick auf Nachhaltigkeit, also Wartbarkeit und Erweiterbarkeit.

Blog-Post

ROCA vs. SPA

Currently, a lot of companies are migrating from Desktop applications (mostly written in Java) to Web applications for their products as well as for their internal tooling. When they start with this process they often ask themselves: Which technologies should we use to build our Web application? Should we use Angular.js or React? Or should we go with recommendations like ROCA instead of a Single Page Application?

Artikel

Web Components mit Polymer

Teil 1: Von 0.5 zu 1.x

Blog-Post

Web Scraping mit PhantomJS-CEF

In Anlehnung an den Blogbeitrag von Martin Weck zu Beginn des Jahres, stellt Gastautor Andreas Knuth in diesem Artikel mit PhantomJS-CEF ein weiteres Tool vor, mit dem sich effizientes Web Scraping betreiben lässt.

Blog-Post

Transklusion in Self-Contained Systems

Frontend-Integration im Web ist ein riesiges Themengebiet. Dieser Post befasst sich mit dem Teilaspekt der Transklusion “fremder” Inhalte in den DOM einer anderen Seite.

Blog-Post

Kriterien zur Bewertung von ROCA Komponenten

Artikel

Artenvielfalt

Durch Node.js hält das vielerorts als nur unzulängliche Programmiersprache belächelte JavaScript heute Einzug in die professionelle Serverprogrammierung. Doch welche Möglichkeiten die Plattform bietet und welche Entscheidungen bei ihrem Einsatz zu treffen sind, ist nicht immer einfach zu ermitteln.

Artikel

Ceylon auf der JVM und node.js

Ceylon ist da! Eine neue Programmiersprache die sowohl im Java- als auch im JavaScript-Ökosystem zu hause ist. Ceylon möchte mit Klarheit, Modularisierung und einem ausgefeilten Metamodell punkten. Anvisiert ist der Einsatz in großen Softwareprojekten. In diesem Artikel werfen wir einen Blick in die Konzepte und schauen uns die Sprache an, welche vor kurzem das Licht der Welt erblickt hat.

Podcast

Eine Website — viele Geräte

Mit Responsive Web-Design Ordnung schaffen

Artikel

ROCA: Keine Angst vor HTML und JavaScript

ROCA ist ein Architekturstil zur Entwicklung anständiger und zukunftsfähiger Web-Frontends. Er umfasst eine Reihe von Empfehlungen sowohl für die Client- als auch für die Serverseite. Der ROCA-Stil erfordert von vielen Java-Entwicklern ein gewisses Umdenken. Grund genug, sich den Stil genauer anzuschauen.

Case Study

Belegclearing und Fraud Detection: Krombacher setzt im Rahmen seines Loyaltyprogramms auf Automatisierung