422 Unprocessable Entity: Verdächtige Telefonnummer!

Je mehr Nutzer Sie bekom­men, desto bess­er, richtig? Nun, das ist nicht immer wahr. Sicher­lich möcht­en Sie Bots und betrügerische Benutzer von Ihrer App fern­hal­ten. Dafür ist es üblich, einen zweit­en Fak­tor hinzuzufü­gen und einen Bestä­ti­gungscode per SMS oder E‑Mail zu senden. Aber falsch gemacht, kann dies Ihr Kun­den-Onboard­ing-Erleb­nis beein­trächti­gen und ein kost­spieliger Fehler sein.

Nehmen Sie an dieser Ses­sion teil, um den Kom­pro­miss zwis­chen Sicher­heit, Kun­den-Onboard­ing und Benutzer­erleb­nis ein für alle Mal zu been­den. Ler­nen Sie, wie Sie ein sicheres Onboard­ing-Erleb­nis bauen kön­nen, das Ihrer Benutzer­akquise nicht schadet.

5 Antipatterns, die unsere React/GraphQL App verlangsamt haben (Und wie wir sie behoben haben)

In mein­er Präsen­ta­tion wer­den wir uns auf eine Reise durch fünf Antipat­tern begeben, die unsere React/GraphQL App aus­ge­bremst haben. Jed­er Abschnitt beleuchtet einen bes­timmten Fehler, die damit ver­bun­de­nen Schwierigkeit­en und wie wir diese schließlich meis­tern konnten.

Struk­tur und Inhaltsverzeichnis:

Over-fetch­ing Data:
Ich zeige auf, wie Over-fetch­ing — das Anfordern von mehr Dat­en als notwendig — eine App ausbremst.

Under-fetch­ing und Mul­ti­ple Round Trips: Ich gehe auf das The­ma Under-fetch­ing ein, bei dem wir zu wenig Dat­en ange­fordert haben und mehrfache Requests. Dabei zeige ich, wie wir durch das präzise Definieren unser­er Date­nan­forderun­gen in unseren Abfra­gen mehrfache Server­an­fra­gen ver­mei­den konnten.

Zweck­ent­frem­dung von GraphQL-Sub­scrip­tions: Ich zeige auf, wie der unsachgemäße Gebrauch von GraphQL-Sub­scrip­tions zu ein­er Flut unnötiger Dat­en geführt hat.

Über­mäßige Ver­wen­dung von GraphQL-Frag­menten: Ich bew­erte den Effekt der über­mäßi­gen Nutzung von GraphQL-Frag­menten und zeige auf, wie ein durch­dacht­es Design das Frag­ment Over-fetch­ing ver­hin­dern konnte.

Fehlen von Opti­mistic UI-Updates: Ich beschreibe, wie durch die Imple­men­tierung von Opti­mistic UI-Updates die Reak­tion­szeit der UI verbessern konnten.

Visual Editing goes Headless: Content Management für Entwickler mit Storyblok

Das Head­less-CMS Sto­ry­blok wagt eine mutige Inno­va­tion. Mit Visu­al Edit­ing kön­nt ihr den Inhalt eur­er Seite ändern und erhal­tet schon während des Tip­pens eine Live-Pre­view eures Fron­tends — mit allen neuen Änderungen.

In diesem Talk möchte ich einige Erfahrun­gen im Umgang mit diesem mächti­gen CMS teilen und ver­suchen, bei euch ein kleines biss­chen Begeis­terung für dieses span­nende Tool zu weck­en, das deut­lich mehr ist als nur ein “stumpfes Content-Repository”.

Signal and Noise: What We Learned From Using Signals for the Last Year

Sig­nals are a core prim­i­tive of reac­tiv­i­ty, used by frame­works such as Vue, Pre­act, Solid­JS, and most recent­ly Angu­lar. But what are they, how do they work, and how do we use them effectively?

We wrote a spread­sheet tool using sig­nals to build not just the UI, but also the engine of the soft­ware. In doing so, we learned where sig­nals work well, where they work poor­ly, and how to get the most out of them. In this talk, I’ll describe some of the best prac­tices that we’ve picked up, and to give an idea of how sig­nals might be used prac­ti­cal­ly in your projects.

JavaScript Plattformen — eine Welt im Wandel

Node.js war lange Zeit die einzige Alter­na­tive, wenn es um ser­ver­seit­iges JavaScript ging. In den let­zten Jahren sind jedoch mit Deno und Bun ern­stzunehmende Alter­na­tiv­en ent­standen. Und auch Node als Plat­tform ist einem steti­gen Wan­del unter­wor­fen. Ein­er der größten Wen­depunk­te in der Entwick­lung von Node war die Inte­gra­tion des ECMAScript-Modul­sys­tems, doch es gibt noch zahlre­iche weit­ere Anpas­sun­gen, die zeigen, in welche Rich­tung die Entwick­lung geht: die Inte­gra­tion der Web-Stan­dards. In diesem Vor­trag erfahren Sie mehr über die Gemein­samkeit­en und Unter­schiede zwis­chen den Plat­tfor­men und ler­nen die wichtig­sten Design- und Architek­tur­pat­terns von ser­ver­seit­igem JavaScript am prak­tis­chen Beispiel kennen.

Was kommt nach den SPAs?

Sie ken­nen doch bes­timmt das “Gesetz des Instru­ments”: Wer als Werkzeug nur ein mod­ernes Fron­tend-Frame­work hat, löst jedes Prob­lem mit ein­er Sin­gle Page-App­lika­tion. So oder so ähn­lich, nur halt mit Ham­mer und Nagel lautet es, beschreibt jedoch ganz gut die aktuelle Sit­u­a­tion der JavaScript Welt. Auf nahezu jede Anforderung wird mit ein­er aufge­bläht­en, client­seit­ig ger­enterten SPA geant­wortet. Doch ist es schön langsam an der Zeit, dass wir uns fra­gen soll­ten: Ist das wirk­lich alles? Und die Antwort lautet ziem­lich sich­er “Nein”. Doch genau diesem The­ma wid­men wir uns und wer­fen einen Blick auf die Alter­na­tiv­en und da gibt es viele. Im React-Ökosys­tem find­et aktuell ein klein­er Umbruch statt. Mit Serv­er Side Ren­der­ing, Sta­t­ic Site Gen­er­a­tion, Serv­er Com­po­nents und Frame­works wie Next ver­schiebt sich ein Teil der Arbeit in Rich­tung Serv­er. Dieser Trend ist auch bei Vue, Svelte und Angu­lar zu beobacht­en. Und genau das ist es, was die soge­nan­nten Meta-Frame­works aus­macht. Uns als Entwick­lerIn­nen gibt das mehr Flex­i­bil­ität, um auf Anforderun­gen reagieren zu kön­nen. Sie müssen nicht mehr den kom­plet­ten Quell­code zum Client über­tra­gen, haben bessere Caching-Möglichkeit­en und auch die Such­maschi­nen sind Ihnen dankbar.
Dieser Vor­trag gibt Ihnen einen Überblick über die wichtig­sten Fea­tures von Meta-Frame­works und wo und vor allem wie sie gewinnbrin­gend einge­set­zt wer­den können.

Die neue digitale Realität — 3D Web

Ent­deck­en Sie die aufre­gende dritte Dimen­sion im Web. Gemein­sam tauchen wir in die Möglichkeit­en ein, die Ihnen Ihr Brows­er mit WebGL und WebG­PU bietet. Erfahren Sie, wie Sie mith­il­fe von Bib­lio­theken wie Three.js die Gestal­tung im Web rev­o­lu­tion­ieren und den Nutzen­den Ihrer App­lika­tion ein immer­sives Erleb­nis bieten können.

Ler­nen Sie neue Muster und alte Bekan­nte in ein­er neuen Umge­bung ken­nen. Erfahren Sie, wie Sie mit ein­er 3D-Szene inter­agieren und mit Ani­ma­tio­nen das Engage­ment der Nutzen­den Ihrer App­lika­tion ver­tiefen sowie die Benutzer­führung verbessern können.

Den Höhep­unkt bildet der Schritt in die erweit­erte Real­ität im Brows­er mit der WebXR-Schnittstelle. Mit deren Hil­fe kön­nen Sie beispiel­sweise virtuelle Objek­te in der realen Welt verankern.

Atomic Design und Storybook: Die perfekte Kombination für effiziente UI-Entwicklung

Atom­ic Design ist ein Ansatz, Kom­po­nen­ten für eine App­lika­tion struk­turi­ert zu entwickeln.
Der Code bleibt dadurch gut separi­ert und über­sichtlich. In Kom­bi­na­tion mit Sto­ry­book bietet es Entwick­lern die ide­ale Plat­tform, um Kom­po­nen­ten zu entwick­eln, zu visu­al­isieren, zu testen und zu doku­men­tieren. Nicht nur die Entwick­ler prof­i­tieren vom Sto­ry­book, auch viele andere Stake­hold­er wie Prod­uct Own­er und UX-Design­er kön­nen es nutzen.
Wir stellen in unserem Vor­trag Atom­ic Design vor und zeigen, wie man es mit Sto­ry­book umset­zten kann. In Live-Demos zeigen wir automa­tisierte UI- und Acces­si­bil­i­ty-Tests in Storybook.

From Ugly Duckling to Beautiful Swan: My Journey with Tailwind CSS

In this speech, I will take the audi­ence through my per­son­al jour­ney with Tail­wind CSS – a jour­ney that trans­formed my per­spec­tive from ini­tial skep­ti­cism to an unwa­ver­ing admi­ra­tion. The pro­pos­al cov­ers the ini­tial neg­a­tive impres­sion I had, the rea­sons that com­pelled me to give it a chance, the aspects that made me fall in love with it, and prac­ti­cal insights on how to get start­ed with Tail­wind CSS while over­com­ing com­mon cons often asso­ci­at­ed with its usage. In the end, the audi­ence should feel inspired to give Tail­wind a try and have the knowl­edge and tools to start using Tail­wind effectively.

Micro Frontends mit Collage

Das Microser­vice-Pat­tern bringt viele Vorteile mit sich, die auch im Fron­tend sehr hil­fre­ich sein kön­nen. Ger­ade in großen Pro­jek­ten, in denen viele App­lika­tio­nen entste­hen und inter­agieren müssen. Hier stoßen viele Bib­lio­theken an ihre Gren­zen. Diese richt­en sich oft an den one big fron­tend use case, sind teil­weise nicht Frame­work agnos­tisch oder flex­i­bel genug. Aus diesem Grund haben wir eine eigene Open­Source-Bib­lio­thek entwick­elt, die sich vor allem auf fol­gen­des konzentriert:

- Frame­work­ag­nos­tiz­ität
— Scope Isolation
— Flexibilität
— Leichtgewichtigkeit
— ein­fach zu bedienen