# Modern CSS Strategy and Web Sovereignty

**Podcast:** Software Architektur im Stream
**Published:** 2026-10-02

## Transcript

A note from our team.
Software Architecturum Stream will be streaming live from the ISAQB Software Architecture Gathering in Berlin this November.
Join us on site.
You'll find more about the program and special discount code for our community on our website, software-architectur.tv.
Welcome to the Engine Room, also known as MaschinenraumFM.
a podcast about web development operations and design.
My name is Lukas, and today we will talk about the power of modern CSS.
We will do it again in collaboration with Software Architect 2.0 Stream.
So if you are listening there, then welcome from the other side.
To talk about that, I invited Dylan Beattie.
We're both at the Software Architecture Gathering from November 16th to 19th.
So if you want to meet us in person, feel free to find us there.
We're happy to chat.
So now, welcome to the show, Dylan.
Thank you very much.
It's lovely to be here.
So, can you introduce yourself to the listeners who have not heard your name yet?
Ja, ich bin Dylan Beaty und ich mache ein whole bunches Sachen.
Ich habe die ganze Zeit als ein Developer in einem Form oder anderen gearbeitet.
Ich habe angefangen an Amstrad 6.128, in Deutschland, das ist der Schneider 128.
Das war die gleiche Maschine unter einem anderen Namen.
Als ich 8 Jahre alt bin, hat mich hooked.
Und dann, du hast Windows 3 und PC und die 386 und dann...
Early incarnations of the web.
I started writing.
I wrote my first HTML in 1992.
It was just like a fun thing to play around with.
I had no idea that the web was going to be as big as it turned out to be.
And yeah, spent most of my career, first of all, building websites and then working for a long time on one specific work company.
Basically hired me and said, come and work for us full time.
Und das ging von einem Webmastern zu einem Team, zu einem System Architekt und Distributed Systems und Microservices.
Aber auch, auf der Weg zu gehen, ich habe zuerst, weil ich mich zu sehen, wie andere Leute waren, diese Probleme zu lösen.
Und dann habe ich angefangen, als ich mit einem Lektenden Talks und dann habe ich angefangen, und dann habe ich angefangen, lange Talks und dann habe ich angefangen, und dann habe ich angefangen, kann ich das an unsere Konferenz?
Und dann habe ich herausgefunden, dass manchmal ein Konferenz, sie werden auf der Planefaire verwendet und sie werden in einem Hotel geöffnet.
So, ihr habt zu travel für free, das ist toll, weil ich liebe zu travel.
Und ja, das ist kind of wo ich endet.
So, jetzt habe ich das weird...
Ich habe ein Independent und Selbstemployed Consultant seit 2020.
Und ich habe eine interessante Mix.
Ich mache ein paar Hands-On-Coding.
Ich still run actual production websites für ein paar Kunden.
Ich mache consultancy.
Ich mache teaching.
Ich mache presentations.
Ich mache keynotes.
Ich mache eine Comedy Rock & Roll Band, die singen über Software Architecture und spielen in Bars.
Ja, und so wenn du auf eine Website und siehst du Job Description, Job Titel, One Line, ich bin, ich bin, ich weiß, ich weiß.
Ja, sehr nett.
Ich würde auch gerne nachdenken, dass ihr awesome Musik Videos auf YouTube sind.
Sie sind wirklich cool.
So, bevor wir jetzt in der actualen Frage, talking zu jemandem hands-on always means talking zu jemandem, die hat broken etwas.
So, meine Frage ist, wenn war die letzte Zeit, du hast eine Change zu deinem CSS für einen Page und ein komplett anderes Stück gemacht?
Wenn war die letzte Zeit, du hast das?
Tuesday.
Okay.
Es war nicht CSS, aber ich habe einen Zeitpunkt, ich habe einen Zeitpunkt, an der Moment, die es eine Konferenzwebsite, die in den Speaker Biografien von zwei verschiedenen Backend-Systemen gibt.
Und eine Art von einem gibt es HTML und der anderen nicht.
Und ich habe einen Html-Escatet, und habe die P-Tags mit den P-Tags aus, auf die Live-Site für ein paar Minuten.
So, yesterday I was like, no, we can't do that again.
And so wiring in some visual regression testing.
So it actually visually compares the before and after, which was kind of fun.
But, you know, CSS is one of the challenges of working with it is that it is...
Es gibt keine Error Messages und keine Output.
Es gibt keine CSS-Equivalenten von Console.log.
Wenn etwas nicht funktioniert, dann es einfach nicht funktioniert.
Es ist sehr, sehr selten, will CSS-Equivalenten eine Error Messages, die man kann, und man kann logieren, und das kinder Ding.
Aber auch, als Sie in der Frage gestellt haben, The understanding of the scope of changes can be very, very difficult when you're working, particularly on a complex website.
One of the big challenges with CSS is a lot of people have written a lot of CSS over a long time.
And really the only way to keep it manageable is to be disciplined about it.
And once that's gone, you know, like any project, when it's Greenfield, you're like, right, everything, we got 100% test coverage, we enforce our coding standards, we've got a linter.
Und du musst alles, und du musst alles, und du musst alles, und dann ist der Woche, wo du musst etwas aus dem, weil es ein Tradeshow gibt, es gibt eine Veränderung, und das ist der erste Woche, dass du dich, du bist, du musst die Tests nächsten Woche machen und das ist es.
Jetzt bist du, weil du nicht die Tests nächsten Woche machen kannst.
Und dann bist du, du bist, die Tests nicht zu tun.
Und dann bist du, die Tests 100, und jetzt ist 95, und dann ist 90, und dann ist 80, und dann bist du, du musst die Tests auf.
Und die naturalen Tendenzungen der Software-Systeme ist die gleiche Tendenzungen der anderen Systeme.
Es geht um Entropie, es geht um Chaos.
Und die einzige Möglichkeit zu ermitteln ist, dass sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, Software takes a lot of cues from engineering, mechanical, civil, structural, all these kinds of things.
We don't learn nearly enough from landscape gardening.
A lot of the time, if you've got external contributors, you've got customers putting their own data into your system, it's more like going out to look at a garden after you've been away for a week and being like, oh.
Oh, well, that's not supposed to be there.
That's grown and that's died.
And this sort of relationship with an evolving system, which has its own ideas about where it wants to go and what it wants to look like.
Yeah, exactly.
Yeah, but no, in CSS, yes, it is very, very easy to make what looks like an insignificant change.
And then a couple of, I'm trying to think what the actual last one is, probably putting an overflow rule.
auf Elemente, um sich zu machen, wenn man eine Narrow-Layout auf ein Mobile-Phone hat, dann etwas wie ein Embedded Video oder ein Tablet, das nicht die ganze Leitungen an, sondern das eine Elemente kann man sich nicht mehr auf dem Weg.
Und dann hat man sich gesagt, dass jetzt auf Safari, auf Desktop, auf der vorherigen Version von Mac OS, man bekommt scrollbar, wo man nicht mehr scrollbar ist.
Und das ist absoluter Klassik.
Die einzige Möglichkeit, die es richtig ist, dass man sich auf jeden Fall auf jeden Fall auf jeden Fall auf jeden Fall auf jeden Fall auf jeden Fall auf jeden Fall auf jeden Fall auf jeden Fall auf jeden Fall.
Und dann haben wir alle diese fantastischen ...
Einige Dinge, die in den ersten Jahren, die in den ersten Jahren, die die Begründung der Nutzer, die die eigene Browserse zu den Sprachen, wie sie die Website-Maintainen, die ihre eigenen Designs und alles.
Und ich benutze das Wort, inwiegend, da.
Weil, oftmals, die Art der Website-Maintainen nicht die Art der Website-Maintainen.
Adblock ist ein Klassiker.
Sie wollen Sie die Adverte.
Wir wollen Sie die Adverte.
Es gibt diese ganze Industrie.
Es gibt diese Industrie, die Adverte und die Adverte und die Plugins sind.
Aber auch, da sind einige sehr fundamentale Dinge, dass wenn Sie ein Sensitivees zu, ein bisschen Rapid Motion auf der Screen ist, Sie können eine Preference aufsetzen.
Ich will nicht sehen Rapid Motion.
Und dann geht es um die Website und dann, oh, es gibt auch noch die Regeln.
Und dann gibt es einige Webseiten, die einfach nur die Regeln.
Und dann geht es um die Regeln.
Und dann geht es um die Regeln.
Und dann geht es um die Regeln.
Und dann geht es um die Regeln.
Und da sind viele, die gut sind, und du hast das ganz, sehr calm, und dann sind diejenigen, die sagen, oh, wir wollen nicht den Animationen, wenn sie die Prefersed Reduce Motion Preference setzen.
Aber niemand hat eigentlich gehört, dass das die Menüs nicht funktioniert.
Weil die Animation nicht testet ist.
Ja, sie haben nicht testet es.
Und so, ja, es ist ein sehr, sehr interessanter Technologie, zu mir.
Es ist eine, sehr interessante Technologie, zu mir.
Ich liebe es, weil ich es, Die immediacy.
Ich habe ein paar Prenzungen gemacht, all über die Welt, verschiedene Events, verschiedene Technologie.
Und du kannst wirklich hart versuchen, eine Story zu tun, um, in einem Backend-Message-Broker zu tun, und du kannst es in einem guten Story.
Aber am Ende der Tag, all du kannst, ist ein Logfile.
Ja.
Und mit CSS, du kannst es sagen, es geht, es geht, es geht, es geht, es geht, es geht, es geht, es geht, es geht, es geht, es geht, es geht, es geht, es geht, es geht, es geht, es geht, es geht, es geht, es geht, es geht, es geht, es geht, es geht, es geht, es geht, es geht, es geht.
Und, you know, you can build stuff in CSS that would make a three-year-old kid who can't read yet go, oh, pretty, I like it.
Yes, exactly.
I think on some level we never grow out of that.
There's always a bit of everyone that enjoys like bright colors and pleasing movements and picture books and those kinds of things.
Yeah, for me it's the best and the worst thing at the same time, right?
Like for a while I taught children computer stuff like in a Coda Dojo.
Und wir immer wieder aufbauen, die Kinder zu bauen, ihre erste Website.
Und es ist so toll, sie sehen, dass sie eigentlich das machen können.
Das ist deine Wahl.
Du kannst es pink, du kannst es green.
Whatever du möchtest, es ist dein Ding.
Das war immer so...
Es ist ein sehr vieles Gefühl, wie viel Creativity sie put in die Seite.
Aber auf der anderen Seite ist es auch der worste Sache, weil jeder hat eine Meinung auf was du machst.
Du kannst nur etwas machen und dann sagen, oh, aber die Button sollte einen anderen Borderradius haben.
Es sollte das und so weiter.
Jeder hat eine Meinung, die ist anders.
der andere Verlöpren haben, die Produkt-Owner nicht haben, die Business-Owner nicht haben.
Das ist wie es eigentlich geht.
Ich denke, die absoluten Peak-Ownung der Produktions-Interface-Design war wahrscheinlich Windows 2000.
Windows 2000 war gray, die Buttons waren Rektangles, sie worked.
Es war eine solid Operating-System.
Und es hat gesagt, dass wenn du auf dem Desktop-Applikation hast, du all deine Zeit über die Läge und User-Experience und keine Zeit über die Themen und Colors zu denken.
Und dann Windows XP kam, die hat eine viel mehr Color-Fall-Fall-Fall-Interface-Convention.
Aber es hat nicht immer noch geplant.
Und so, wenn man die Toolboxen in Visual Studio findet, einige von denen wäre die Uplevel-Controllen, und einige von denen wäre die alten Versionen.
Und dann, wenn wir ein High DPI haben, wie Pixel-Scaler auf Displays auf dem Moment, es war jetzt...
Ich denke, in modern Windows, da sind über 25 verschiedene Worte zu drawen.
Und ich habe mich da einen, und es war nur ein Button.
Und das war all das.
Und niemand hat einen Argument über was die Button, was das gleiche zu sehen, wenn du in Game Development oder Web Development war.
Und es gibt uns auf eine interessante Art, die wir ein bisschen aufhören, ist Software ein Tool oder ist Software ein Media Experience oder ist Software ein Marketing Channel?
Und, you know, da ist obviously...
Ich habe advertisements in mein Operating System jetzt, which ich immer denke, ich bin sehr sicher.
Aber dann habe ich mich, wenn Operating Systems war wirklich expensive.
Und ich habe mich, würde ich lieber Windows für free, aber es schäte Ihnen adverts?
Oder würde ich lieber Windows für $300, aber es schäte Ihnen adverts?
Und natürlich, was wir gerne ist Windows für free, mit no adverts.
Und alle sagen, du sollst einfach nur Linux.
Und es ist, ich habe immer, ich benutze Linux auf alle Webseversen, auf alle Raspberry Pis, auf alle Webseiten, auf alle Webseiten, aber ich habe Videos zu editieren.
Ich habe Premiere, ich habe After Effects, ich habe Musik Composition.
Ja, das ist die richtige Tool für die richtige Job.
Aber da sind viele Webseite und mobile phone Apps und so weiter, wo die Unternehmen hinterher sind, weil sie haben sie zu logieren, weil sie ihre App haben, weil sie ihre Elektrik bill haben.
Show them an advertisement.
And I'm like, I don't want to know.
I just need to pay the bill, you know?
It's like I got things to do.
Yeah.
And then the really frustrating one is when you have an app that could work offline.
I live in London, the underground...
Das ist immer so, dass es nicht mehr so, wenn man in den tiefen Tunnels ist.
Und so habe ich diese Spiele, die ich in den Spielen habe.
Und ich habe ein paar Versionen, wie Scrabble und Puzzle Games und die Spiele funktioniert, aber es wird nicht, weil es nicht die Advertisements gibt.
Und du bist so, ich sehe eine Lösung für diese Probleme hier.
Ja, definitiv.
Und das ist immer frustrational.
Und es ist die Fakt, dass...
Advertisung ist die einzige Art, die wir wirklich auf die Web gefunden haben, ist es lediglich zu einem wirklich horrible outcomes.
Und ich noch nicht, ob es da eine Art, wie eine Art, wie eine Art, wie eine Art, wie ein Modell zu machen.
Weil Cloudflare, um, in diesem Jahr, hat er eine System, die sich designed, dass wenn Bots, AI-Crawlers und AI-Training Bots, die auf die Content auf deinem Website zu accessen, They have to pay for it.
And I think the idea there, the thing which made this quite compelling to me, and I haven't really kept up with that, I don't know what's happened in the last month or two, but Cloudflare is a massive international company.
They have payment systems.
They are established as a corporate entity in all the territories where they do business.
And you've got somebody like OpenAI or Anthropic.
And so you're running a Claude bot, and Claude wants to go and crawl a website, which is hosted behind Cloudflare.
Und die Idee von einem Transakt zwischen Cloudflare und Anthropik ist viel mehr für die Cloudflare und alle anderen auf dem Planeten.
Anthropik bereits haben unsere Geld, weil sie in Clouds sind.
Und Cloudflare bereits haben unsere Content, weil alle Webseiten haben.
Und so, das zu mir war, war eine interessante Idee.
Und natürlich, die nächste Sache ist, warum es muss es sein, AI-Bots?
Warum nicht wir einfach...
Wenn das so ein Problem ist, als ein Standard, ein Protokoll, das eigentlich funktioniert, dann kann man nicht nur ein iBot sein, sondern wir sind ein Browser, aber wir sind ein Browser, das ist ein Online Bank, oder ein Stripe Account, oder MasterCard, oder was auch immer.
Und jetzt kann man klicken, und man kann manche für die Website, und man kann ja nicht nur anbieten.
Ich verstehe, dass da könnte etwas da sein, aber es würde auch Das würde wahrscheinlich machen es ebenso mehr central.
Es würde also mean, wenn ich Geld von Leuten aus meinem Website habe, dann muss ich mit Cloudflare gehen.
Und ich bin nicht sicher, ob ich das mit mir comfortable bin.
Wir sind in der currenten Projekt, wir versuchen, zu verabschieden von Cloudflare, weil es einfach zu viel von einem centralen Teil, das wir nicht versuchen zu unterstützen.
Aber ich denke, das ganze Business Model der Web ...
Das ist ein big question mark.
Es geht über die wir einfach nur für die Web bezahlen.
Wenn du über das, all die Browsers sind eigentlich bezahlen, weil alle sie in der Ende sind bezahlen.
Google bezahlen Apple, Google bezahlen Mozilla und Google bezahlen ihre Chrome Team.
Und wenn sie aufhörtert, dann haben wir eine frozen Web.
Nichts würde passieren.
Und ich denke, das geht über die Ads wir als User sehen.
Indirectly, they fund the browser that we use, even though the browser itself doesn't show any ads, right?
But it might be a good reason why the browsers do not have an ad blocker built in, right?
Because you won't bite the hand that feeds you, right?
So, yeah, that's...
Have you ever paid money for a web browser?
No.
Ich habe es einmal.
Ja, ich habe es einmal.
Ich habe es einmal.
Ich habe es einmal.
Ich habe es einmal.
Ich habe es einmal.
Ich habe es einmal.
Ich habe es auch immer.
Ich habe es auch immer.
Ich habe es auch immer.
Ich habe es auch immer.
Und es hat viele innovative features.
Es war die erste Browser zu haben Tab Browsing.
Es hat eine Speed Dial Dashboard.
Und all diese Features, alles hat Tab Browsing jetzt.
Und alles hat Start Page mit links zu Ihren frequenten Websites.
Und ja, Opera built das.
Und Opera wurde das aus...
Es war Telenor, die Norwegian Telefonkompany.
Die waren, wir sollten eine Web Browser bauen.
Und sie haben.
Und wir sind, wie, das jetzt passiert.
Actually, that's another interesting thing that I wanted to talk about today.
So obviously the topic of the show today is about CSS.
But actually, I'm as much interested in the role that CSS plays in the whole broader sphere of modern software development and software delivery.
Und es ist eine der Dinge, die ich wirklich liebe, über die CSS-Kommunik ist, wie transparent alles ist.
Und alles ist driven von Open Standards.
Und ich habe, du hast, auf den Web in den Tagen, wenn Microsoft würde sagen, tada, hier ist eine neue Version von Internet Explorer.
Und alle würden sagen, oh, oh, es macht das, das ist.
Und Netscape und Opera würden sagen, oh, oh, es macht das, das ist.
Und ich habe, ich habe, oh, es macht das, das ist.
Und ich habe, wenn...
Google brought out the first version of Autocomplete.
Because this was really early.
This was back when every website in the world, if you wanted to get new content, you had to submit the page, submit the form or click the link, and you'd get a whole fresh page.
And that was it.
That was how the web worked.
And I remember because that week we told a client that we couldn't give them what they wanted.
Und dann auf Friday, Google launched die erste Version von Google Search mit IntelliSense, Autocomplete.
Und du hast die Houten, und es würde sagen, wie zu convert to.
Und du bist so...
Und die same client ist, wie du uns das war, das war impossible.
Und wir haben, wie es war, das war impossible.
Und wir haben, wie es war, das war on Tuesday.
Und Opera hat das Support für das Feature within 48 Stunden.
So, bei einem Monday morning, Opera hat sich gemacht, wie sie es gemacht hat und so das auch die Javascript war.
Und das ist ein bisschen interessant, das ist das Thema, das ist das Thema, das ist das AJAX, Asynchronous JavaScript in XML.
Und dann AJAX war die Procursor für die modernen Fetch API und die Single-Page-Applications- und die whole Angular, React, die Componenten, die ihre Daten von Backend-APIs.
All das kam auf der Seite dieser Innovation.
Und es kam von Outlook Web Access.
Weil Microsoft, die Team mit Internet Explorer hatte, und sie hatten mit Outlook.
Und Outlook, sie wollten Outlook auf der Web.
Und sie haben dann die Internet Explorer und gesagt, können wir, wie wir, können wir jemanden über die Inboxen ohne zu re-loaden, die ganze Page?
Und sie waren, das ist das COM-Objekt, das ist das XMLHTTP-Objekt.
Und wir können so, dass wir das JavaScript können, um ein COM-Objekt zu tun, und dann das das in den Backgrund zu tun, das ist das so, dass wir das weird Syntax haben.
Und das ist wo das kam.
Und dann Google hat sich das für Autocomplete.
Und dann, natürlich, das ist das, was das wirklich alles wide open ist die Google Maps, wo man einfach scrollt.
Und du scroll und du scroll und du scroll.
Und es loads die ganze Planeten, eine Tile an einem Tag, als du scrollst.
Und wenn du die Leute auf der Seite oder auf der Seite oder auf der Seite oder auf der Seite remember, was die Street Map war, bevor das, dann würde ich einen Page of Maps sagen.
Und du klickst West und es würde warten ein paar Sekunden und dann würde es load wieder und jetzt bist du ein Square to the West.
Ja.
Ja.
Like one of those old school text adventures, right?
Ja, literally.
Ja, literally.
Go North.
Turn West.
Look at sign.
Very nice.
So we had two comments here from people watching live.
So KodaByHeart wants to hear our ideas on how to get out of the CSS and JS mess.
I would put that a bit back because I think we first need to come back to that one.
Definitely.
And Elie Miriam.
Hey Eli.
sieht die Problemen von den advertisersen, die eigentlichen Content Moderatorinnen und ich denke, das ist sehr visibel auf der Meta-Platform, aber auch visibel auf andere Plattformen, auch.
Wir haben ein bisschen über Centralisation gesprochen und eine der großen Herausforderungen für bestimmte Online-Content ist, dass die Activist-Gruppen-Petitionen Visa und Mastercard und sagen, dass sie nicht mehr paymenten zu diesen Plattformen.
Und das ist es.
Wenn Visa und Mastercard sagen, jetzt ist es eigentlich keine Geld.
Ja.
Weil, wenn man das Zeit, jemand sagt, du kannst du uns mit dem, du kannst du uns mit dem, du kannst du sie mit dem, und dann du sie mit dem Visa.
Und dann Visa ist es, wenn du das nicht, wir werden nicht zu unterstützen, du.
Und das ist die Art, die ein Handvolle von Massive Players haben konsolidiert, die Clearing und Payment Systeme, die Web-Runds-Onkontakt, gibt es eine Das ist ein großes Macht, das sie nicht beherrschte, sie haben nicht gewonnen.
Und, du hast, die Zeit, die uns einfach ignorieren, weil es das das was wir brauchen.
Ja, das ist auch interessant, von der Europäischen Perspektive.
Wenn ich einen deutschen Online-Shop gehe, und ich möchte, dann sind drei Optionen.
Entweder ich gehe mit PayPal, Visa oder Mastercard.
Die drei Optionen sind alle US-Amerikanischen Unternehmen.
Und ich habe keine Wahl, obwohl ich in Deutschland shoppe, als ein Germaner aus Deutschland, da ist keine Möglichkeit, dass ich es nur für mich zu bezahlen.
without going through the US first.
Even if they are not hosted in the US and so on.
But the payment will go through them.
There's basically no way around it.
There are some initiatives about it, but they are very early stage.
But I think it's still a problem.
There's a whole growing topic of people are starting to use this phrase digital sovereignty.
About the data and the systems that handle web hosting.
Because at the moment, if you want to put a website in the cloud, Du hast eine Wahl von Google oder Amazon oder Microsoft oder anderen.
Du hast Alibaba Cloud.
Ich weiß nicht jemanden, die Alibaba Cloud hosts.
Aber hast du gehört von Stackit?
Ja.
Stackit ist Lidl.
Es ist die German supermarkt-chain, die nicht wollen, all der Online-e-Commerce mit einem American-Multinationalen.
So sie hat ihre eigenen Daten-Centers in Europa, in Deutschland.
und dann haben wir uns, was jemand anderes wollen das?
Ich habe es gesehen, ich habe es gesehen, ich habe es einen Cloud VM geplant.
Ich habe es gesagt, ich habe es einen Stack-It-Groß.
Und, unfortunately, mit Brexit-Benefits-Benefits, ich bin nicht bereit, zu signieren, um Stack-It zu machen, weil es zu kompliziert ist.
Aber wenn ich in Deutschland oder in den Niederlanden oder Austria wäre, würde ich es gut sein.
Und ich könnte ein Privat server auf einem Europäer-hostet, Europäer-owned company, noch immer noch immer noch amerikanische Hardware produziert in Taiwan unter einem License Agreement.
Aber die Chip Design ist wahrscheinlich britisch, denn Arm Holdings ist in Cambridge.
So wir haben das noch weiter, was wir noch gut haben.
Ich habe das Story über die von AWS zu der German Hostie in der letzten Episode.
So, wenn Leute interessiert, check out die erste Episode.
Ich denke, es ist mehr möglich jetzt als es ein weiteres Mal war.
Aber es ist definitiv ein anderes Style.
Du musst du nicht mehr zu bekommen, dass du 200 services hast, wie du in AWS getest.
Aber es ist definitiv etwas möglich jetzt.
Aber ich denke, es ist die goldene Standard.
Ich habe schon die Statistiken gesehen.
Es ist überbeirrig, wie die drei drei.
AWS ist so viel größer als die anderen zwei.
Google und Microsoft sind eigentlich klein, als zu AWS.
Und alle anderen sind einfach nur ein Dwarf.
Es ist immer sehr interessant, wie viele Webseiten und Applikations sind über-Engineered.
Wir sind jetzt an der Punkt, wenn man eine neue Website macht, wenn man es mit einem Template macht, oder man hat NPM-Template, oder man hat AI zu machen, dann wird man das Projekt verwendet.
Und so wird man ja auch Reakt verwendet, bevor man eine Reihe von Reakt hat.
Und viele Websites sind nicht mehr Reakt.
There's an interesting thing that I've noticed happening around the area of London where I live, which is that local restaurants are going back to running their own website.
So they've got their own website, their own menu, their own delivery, their own drivers.
And 20, you know, 25 years ago, you couldn't order food online because it just wasn't really a thing that happened, maybe 30 years ago.
Und dann, die big players, wie JustEat und Deliveroo und Hungry House kam in und die Websites sind so, oh, das ist großartig.
Und natürlich, es ist der Klassik, es Cory Doctorow und Schittification Model, wo, erstens, du hast die massen der Kriterien, die uns, die Hungry Leute, und dann, wenn sie sie lockt in, dann kann man sie starten sie wie crap zu machen, die Unternehmen.
Und dann, wenn die Unternehmen lockt in, dann kann man sie starten sie wie crap zu machen, die Unternehmen.
Und dann, wenn die Unternehmen lockt in, kann man sie starten sie wie crap zu machen, die Unternehmen.
Und dann ist jeder, nichts funktioniert und die Schwerhler sind.
Und was ich habe gesehen, ist ein paar localer Restaurants sind, eigentlich, für was wir bezahlen, across all diese verschiedenen Plattformen, wir können unsere eigene Systeme jetzt.
Weil AI hat sich gemacht, diese Systeme zu viel cheaper und mehr kost-effective.
Hosting ist einfach, weil Cloud ist sehr ubiquitativ.
Und...
Apparently, ich habe es Spöreng Eli's talk für NDC London.
So, yeah, you want to hold the rest of the story, you're going to have to come to MDC London.
But no, it's nice to see.
And, you know, to me, food delivery is a classic.
You're delivering pizza on a motorbike.
You don't need a multinational company because you can't really go any further than about three or four miles, like, you know, five, six kilometers.
And so there's a very definite, this is the radius.
It only works when the restaurant is open.
So you literally, you can switch the website off at night.
Because who's going to order pizza at 4 a.m.
from a restaurant that isn't selling pizza at 4 a.m.?
Yeah.
And, you know, I like seeing the kind of the green shoots of people moving away from massively consolidated cloud back towards, you know what?
We can solve our own problem and we can own the tech and we can own the stack.
But then a lot of places, if you don't have online ordering, your website doesn't need anything except pages.
When are we open?
What are today's specials?
Where do you find us?
That's it.
Und wir brauchen nicht zu hören, deine Familie und deine Familie zu hören, deine Familie zu hören, deine Familie zu hören, deine Familie zu hören, deine Familie zu hören, deine Familie zu hören, deine Familie zu hören, deine Familie zu hören, deine Familie zu hören, deine Familie zu hören, deine Familie zu hören, deine Familie zu hören, deine Familie zu hören, deine Familie zu hören, deine Familie zu hören, deine Familie zu hören.
Als jemand, der die ganze LLM ist, nicht benutzt, ich sehe, was du sagst.
Aber gleichzeitig, die Leute, die das mit einem Bot machen, natürlich sind in einer anderen Art of Zufall, eine andere Art of Zufall.
Jetzt sind sie auf die Systeme auf die Systeme.
Für den anderen Punkt, ich glaube viel mehr.
Ich denke, dass es viel einfacher ist, als die Leute denken.
Bringing up eine Website ist so viel einfacher.
Die Leute sind so used zu haben, nur auf Facebook und Instagram.
Sie sind nicht even über eine Website.
Es war bereits möglich, mit Website Builders und Sachen zu haben, eine sehr simple Website zu haben.
Wie gesagt, wir sind nicht die größte Website zu fragen, wir wollen die Menü, wir wollen die Aufmerksamkeit, wir wollen die Telefonnummer, weil das auch schwer zu finden, außerhalb der Plattformen.
Als jemand, die nicht Instagram oder Facebook-Aktar hat, manchmal will ich mich zu einem Restaurant und nicht ein Telefonnummer finden.
Das ist die einzige Möglichkeit, die ich zu finden, ist Google Maps.
So, yeah, I think there is a lot of chance.
But Dylan, before we go into an entirely different direction, let's talk a bit about CSS, because that's what's in the title and that's what some people tuned in for.
In CSS, we came quite a long way, right?
If we go back to the early days, some things that are now super easy in CSS were super hard to do, right?
There were things that took weeks to build, and now it's just two lines of code, right?
And you had one example that I really liked about the buttons, right?
Like rounded buttons.
Tell us the story about the rounded buttons.
Und weil ich habe eine lange Zeit gebaut, das ist, die in den letzten 90ern, die Bautons waren, oder Rektangular.
Bautons all hatten scharf corners, weil das was Bautons sah.
Weil auf der meisten Plattformen, die Bautons und Drop-Down Lists und Radio Bautons, die Browser nicht ränderte, die Systeme ränderte sie.
Und da war ein sehr kompelling argument.
Familiarity is a factor, because a user comes to understand.
It's what they call affordances.
They see a little gray box with a raised shadow effect on it.
They're like, I can click this.
I know what this is.
And then when the web came along, as we sort of mentioned earlier, we got this interesting thing where on the one hand, we have software engineers going, it should look like an application.
On the other hand, we've got customers and particularly marketing departments going, no, it should look like a showroom.
Es soll sich ein Buchstuhl, es soll sich ein Publikum aussehen.
Und eine der ersten Dinge auf dem Thema war, dass nicht so wie Buttons nicht so wie Buttons.
Denn Windows sagt, die Buttons sollten sich so gray sein.
Und die Customer sagt, nein, die Buttons sollten so wie Purple sein und so wie es aus Geli, weil das wäre Spaß.
Wir sind ein Unternehmen, das macht Gummy Bears und Candy, und so wir wollen Candy Buttons.
Und so wir haben Buttons.
in Photoshop, by hand, and every button would be a separate GIF with the text written on it in Photoshop and then exported separately.
So we'd have folders full of buttons.
And then we invented nine slice scaling.
So every button was actually a tiny little table.
Und so, you'd have nine slices around the outside, the top, the bottom, the left, the right and the four corners.
And in the middle, as long as the middle had like a consistent background, you could change the text on that, which means you could drive it from a backend database or a content management system.
And the company I worked for, we actually charged money for buttons.
We charged, I think it was 15 pounds for every button on your website.
So this was like free money, you know, amazing.
Like we just, we make a button and every time we do it, it's another 15 quid.
Und das ist verrückt jetzt, aber das war wie, niemand wusste, wie zu sellen.
Ja.
Du hast Leute, die sind Experten, die Leute aus anderen Bereichen, wo wir brauchen eine Pricing Struktur, die die Materialien und die Efforten und die Materialien.
Und Materialien war natürlich, wir wissen, was die Website nicht aus dem Teufel sind.
Sie sind nicht aus dem Teufel, sie sind aus dem Teufel.
Sie sind aus dem Teufel.
So es ist alles auf Zeit.
Und du hast, das ganze Zeit.
Aber dann, natürlich, die Runded Buttons kam.
Und wenn sie erst kam, es war eye-catching.
Weil du schauen, wie sie sich über die Web ausfüllen.
Das sieht so aus.
Das ist ein state-of-the-art Webdesign in der Jahre 2000.
Und dann wurde es ein Standard.
Wir hatten Border Radius, das war ein lange Zeit.
Es war ein Lange, weil es immer noch nicht mehr als Internet Explorer war.
Das war ein Hadekch, weil du noch immer noch 9 Slice hattest, wenn du noch nicht mehr als IE zu tun hast.
Oder du musst dich auf den Kunden, das ist wirklich gut.
Und das ist nicht gut, wie wir uns auf Internet Explorer sehen.
Und sie sagen, wie viele unserer User sind auf Internet Explorer?
Und sie sagen, 85%?
Und sie sagen, nein.
Und das ist was die Web immer so.
Es gibt ein Featuren, weil es schwierig war.
Und das, ich denke, hat immer immer ein Thema.
Es hat sich mit fashion zu tun, als auch.
Es gibt fashion in Webdesign.
Und jetzt ist es, ich denke, die Trendy-Fashionable Sache ist Liquid Glass.
Weil Apple hat diese neue UI-Paratur in der letzten Version von iOS, die sind die Kontrollen aus dem Holz und Glas.
Und alle sind, ich will meine Website zu machen, und wir können es nicht so schnell.
Und so, da sind viele Leute, wenn ich ein CSS habe, ich kann das Highlight Filter, und ich kann das Alpha-Channel, und dann kann ich ein Composite, und dann kann ich ein Stacked-Background-Layers auf es und ich kann etwas...
Und ich bin sicher, dass in ein paar Jahre, da wird ein CSS-Rule-Literer-Bund-Filter-Liquid-Glass-Bumm-One-Line.
Und dann, wenn du es, du hast es, und es ist frei.
Und wenn du nicht, du kannst es, du kannst etwas anderes machen.
Und du kannst etwas anderes finden.
Aber da sind so viele.
Liquid-Glass ist ein paar Jahre, da war Parallax-Scrolling.
So die Background-Move ist ein bisschen zu dem Sprengang.
So du hast das Impression von Depth auf dem Page.
Und masonry layouts ist eine, was es Pinterest?
Das war das sehr, was es sehr schwierig zu machen, aber jetzt ist es ein masonry-grid.
Da ist es etwas in diesem Jahr, das ist es jetzt wirklich, das ist jetzt schon wieder zu CSS.
Und zu mir, es ist interessant, eine, weil ich...
die Zusammenarbeit, die die Standards zu werden, und dann zu unterstützen.
Und es ist nicht so viele Leute.
Ich bin zu ein paar Events dieses Jahr und du bist in die Richtung und du bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist und bist Aber es ist ganz schön, wenn man einen Bier hat und man sagt, sie arbeiten bei Google und sie arbeiten bei Mozilla, sie arbeiten bei Apple und Adobe und sie sind aufgerissen, und sie haben einen Geist und sprechen über die CSS-Berein.
Es war auch ein interessantes Thema mit dem Masonry-Layout.
Sie renamed es zu Gridlanes, ich denke.
Das ist die Name.
Gridlanes, das ist das, was es ist.
Und es war ein competinger Proposal.
Es war wirklich nett zu sehen, wie die whole Interaktion zwischen den verschiedenen Parten.
Es war nicht klar, welche Proposals würde winen.
Es war sehr open für quite some Zeit.
Und jetzt haben sie auf etwas.
Und ich denke, dass sie das Widerstand Openly, like seeing, okay, this is the one approach, this is the other, this has this advantage, this is this advantage.
This is like interesting stuff.
This is what we want to see as like people using the web, right?
Like I think the strength of the web is when things actually happen in cooperations between those parties and we have a bit of an insight into what is happening because like a lot of people are quite unhappy with like things being voted for like cross- Browser compatibility, right?
And like, oh, the top voter thing was not worked on.
What happened in the background, right?
And there's, of course, this will always happen, right?
Like, because there are things that maybe one of the managers at Apple didn't like, so then it's not coming.
Ich denke, es ist nicht perfekt, aber ich denke, wir sind in einem sehr guter Zustand, wo, wenn man will, kann man eigentlich folgen, sehr early auf und sogar voice seinen Concern.
Und ich denke, viele Leute, die nicht so benutzen, wie sie das so benutzen.
Was ist der current Status?
Was sind Sie die Stattung?
Was sind Sie die Stattung?
Ich denke, das wäre ein Call to Action für alle.
Geht involviert in Dinge.
Sie wollen sich über dich.
Es ist nicht wie thousands of Leute arbeiten in der Backkriebe.
Es ist wie ein sehr kleineser Group, wirklich active Leute.
Und dann viele Leute, die sich um es und vielleicht ein oder zwei Dinge beherrschen.
Ich denke, es ist wahrscheinlich weniger als 20.
Which means that if you have a very strong opinion about something that might be coming up and you can persuade 15 people that your approach is valid or that your idea has relevance, it'll happen.
Well, it'll happen most places and then a year later it'll happen in Safari.
Yeah, exactly.
I mean, there are some things where Safari has...
Wir haben ein bisschen in Speed, so ich denke, wir sollten ein bisschen mehr...
Es ist sehr gut, dass die Pattern...
Weil jetzt die Herausforderung ist, dass WebKit, die Browser Engine ist...
Es ist wie alles, wir haben Coke und Pepsi.
Und WebKit ist Coca-Cola, das ist überall.
Und Pepsi ist Gecko, Gecko Mozilla ist das Rendering Engine.
Und so, obwohl jeder arbeitet mit den Standards, dann ist es ein Prioritization process.
So, wenn man in WebKit ist, dann ist es relativ leicht, ich denke, zu werden, dass es in Edge und Chrome und Vivaldi und Arc und all die Boutique Browser, die sind auf die WebKit.
weil es eine relativere, sehr gute Upgrade-Path für die Rendering-Parte.
Safari takes ein bisschen länger, weil die integriertes mit den Features, die nur auf der Apple-Platform sind.
Und auf iOS, noch, wenn du Google Chrome auf deinem iPhone-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-Roll-R Und dann Mozilla, da sind sie halt, hier ist die Standard.
Und es ist oft sehr rare zu sehen Chrome nicht zuerst, weil das eine Tendenz zu haben, die ich nicht weiß, was die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Worte, die Das ist nicht so, dass es für einen oder anderen einen einen anderen zu lagern.
Ja.
In den Anrufen, die wirklich positive ist, dass wenn sie dann, wenn sie dann, sie schicken, es ist immer eine solidarie implementativen Standard.
Ja.
Und so, als Web-Developers, wenn du auf dem Design oder auf dem Design oder auf dem Provision, wie du dein Site verwendest, kann man sagen, wir können die neue Shiny-Thinge jetzt.
und es wird nicht in Safari sein, aber dann an einem Punkt im nächsten Jahr wird es einfach start working und wir nicht mehr müssen, denn die Browser ist es dort zu treffen.
Oder wir können jetzt deploy es, und wir können in eine Polyfill, die mit all den Sachen arbeiten, oder wir können nicht, das auszuladen.
Aber natürlich in den Tagen zu schreiben, sehr complex, bespoke client-side rendering zu tun, wie Animations.
Most of that now, just don't do it.
Just use what comes in the box.
And there's an interesting overlap there because a lot of people think that the CSS is kind of front-end and software architecture is back-end and there's not a lot of overlap.
But one of the very, I think, underrepresented aspects of the discipline of software architecture is deciding when you can deprecate things and when do you get rid of stuff you don't need anymore.
Und so jQuery ist ein sehr guter Beispiel hier, weil es ist immer sehr, sehr popular.
So etwas wie 80% von Web-Trafficen oder so weitergebenen immer noch immer noch immer noch immer noch immer noch immer noch immer noch mehr.
Und wenn jQuery first kam, es war toll, weil es eine gewisse Art von verschiedenen Bräumen gab, eine gewisse Art von verschiedenen Bräumen.
Und so viele Leute lernen es, weil wenn du jQuery nicht mehr als Internet Explorer, versus Chrome, versus Edge, versus Firefox, versus, you know, was er.
Und wir brauchen das nicht mehr.
Weil die API die Browser exposes in terms of CSS Behaviour, JavaScript, Element, Query Selector, all diese kinder Dinge ist jetzt.
Aber das bedeutet, dass jetzt ein paar Seiten dieser Webseite müssen sagen, kann wir jetzt jQuery remove?
Kann wir es jetzt?
Kann wir es jetzt mit native JavaScript und native CSS Animation?
Das wird in viele Fälle verbessern, weil es in derzeitigen Zeit wird, in der CSS-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-GP-G Ich habe auf eine System 10, 15 Jahre alt, wo wir geplant haben, so wir geplant haben, dass wir geplant haben, so wir geplant haben, so wir geplant haben, mit 3D-Systemen, ohne dass wir die Möglichkeit haben, die wir mit dem Kunden zu geben, die wir geplant haben, und wir geplanten haben, wo wir geplanten haben, jetzt sind wir, wo ich?
Geht mir mein Name, geht mir mein E-mail-A-Dress.
Und nichts gab, die Zeit zu tun haben, und so wir geplanten unsere eigene Systeme zu tun haben.
Und über einen Monat nachdem wir live haben, die erste Version von OpenID Connect kam.
Und wir hatten das Moment, wie wir das Zeit nehmen, die wir drei Monate ausbinden und verwendet es mit dieser Open Standard haben?
Oder wir akzeptieren, dass die System funktioniert, es ist live, wir haben andere Dinge zu tun.
Und da ist kein Antwort.
Du kannst nicht in die Zukunft sehen, wie die Kosten für die Maintenz.
Vielleicht ein Jahr von jetzt werden wir werden, und wenn wir auf OpenID Connect werden, wird es viel einfacher finden, die schon schon verstehen.
Ja, definitiv.
Das ist der Fall für both CSS und JavaScript.
Für mich, eine meiner Lieblingsspiele ist die Temporal API.
Für die Jahre, jeder hat sich immer wieder zu machen.
Basically, it became a standard library for the web, right?
Like everyone used it.
I have a bug in, it's not temporal, it's Intel, it's the internationalization stuff.
A bug yesterday, that a whole bunch of scheduling stuff being moved over and turns out I had this weird bug because I got a visual regression stack now.
So before you deploy stuff, you run a script and it says it takes like...
200 screenshots of the live sites and 200 screenshots of local sites and does a pixel comparison so you can see what moved.
Because for CSS stuff, sometimes that is the closest thing you've got to a test suite is something that goes, hey, these two, something's different.
And you can look at it visually and say, oh yeah, that's fine.
That's the feature we are deploying.
Or no, that's broken.
That's shifted or that button's disappeared.
Und ich bin sicher, dass die nächsten Iterationen wird, was eine Art von Automatis reporting, wahrscheinlich mit dem Sprachen, mit dem Sprachen.
Und Eli sagt, du hast du gesagt, dass du ein Buch verstanden hast, und ich dachte, du hast eine Sprache über das Buch.
Nein, es hat mir nicht einmal gesagt, dass das ein Buch wäre.
Und ich habe das Ding, wo die Site-Local Host nicht match live, aber dann, wenn ich an Local Host ran, es war, und ich bin, was?
So I go digging into it, and it turns out that the site, when you build it, it's built using Bunn, but when it runs the snapshots, it runs them in Node.js because Bunn doesn't work with Playwright.
And Node.js does not format dates the same way that Bunn does because they disagree on how British-English date formatting works and whether there's a comma between the day and the month or not.
And I'm like, really?
It's not a bug in the code, it's not a bug in the design, the layout, the CSS, it's that we've got these two die haben die gleichen Standard implementiert.
Aber eine hat gesagt, dass sie die Brille benutzen, und die andere hat gesagt, dass sie nicht mehr so sagen.
Und sie hat gesagt, dass sie nicht mehr so sagen.
Und ja, das war das, was tatsächlich, wie gestern.
Das hat sich nicht mehr als 24 Stunden.
Ich war mir, wo ist das, wo ist das?
Und ich habe das Gefühl, dass es eine diversität von Opinion über die Sprache gibt.
But this is one of the ones where I said to Claude Code, what is going on?
And then I left it thinking about that and I went out to get a drink.
And I had remote control on my phone and I got to the table with my beer and it pinged up and went, yeah, this is the problem and this is this and do you want to fix it?
And I said, yes, please.
And it did.
And that is strange.
You were talking about dependencies a moment ago.
You're talking about the language models and something I wanted to mention on that.
To me, there is a...
Es gibt auch Pipeline-Dependenzen und Produktion-Dependenzen.
Und ich denke, es ist ein Punkt in der Evolution von Software-Developmen, wo es sehr wichtig ist, die distinction zwischen den beiden.
Weil ich mich, eine Produktion-Dependenz ist, wenn es ein Faktor ist, die Site geht, oder die App geht, oder du kannst du nicht verkaufen, du kannst du nicht, du kannst du nicht, du kannst du nicht, du kannst du nicht, du kannst du nicht.
The software still works.
And at the moment, I'm very much at a point with a lot of my own projects where I will happily take a pipeline dependency on LLMs and stuff.
Because at the end of the day, if I get up tomorrow and Claude is like, you know what?
We've run out of free money.
It's going to be $10,000 a month for Claude now.
I can be like, okay, well, I was using that and it was useful, but I still own all of the code.
Das war es geschrieben und ich verstehe es, weil die meisten der Produktion, das alles, was ich in jedem einzelnen Lines und ich verifere es.
Und ich habe Automation Scripts für Dinge wie Regression Testing, das, was handwritten und was handwritten.
Ich habe die Script.
Ich habe nicht, dass die Tool, die die Script entwickelt, aber die Script ist noch da.
Und so, es ist, wie wir die Modelle, wie wir die Software bauen.
Das ist ein sehr unterschiedliches System.
Wir werden die Klaude in Produktion deployen und wir werden es nutzen, um ...
Wir werden eine Sprache mit dem LLM verwendet, um die Verbrauchung zu kaufen, um die Verbrauchung zu kaufen.
Das ist eine sehr gefährliche Proposition.
Ja, aber das ist nur so, wenn du nicht auswärtsst, deine Erfahrungen und deine Erfahrungen zu den LLM verwendet.
Denn es wird beide.
Ich denke, das ist etwas, was viele Menschen fallen.
Sie sehen, wie viele Namen sagen, wie ich nicht mehr so sehen kann.
Ich sehe, dass auch Menschen, die sehr cautiously mit der Technologie benutzen, werden viel mehr dependent, step-by-step.
Weil wir als Menschen, wir glauben, dass es 90% der Zeit funktioniert.
Und dann die anderen 10% der Zeit sind wir so, oh, bad luck.
Und dann über die Zeit, es ist so, okay, just do es, just do es, just do es.
Und dann sind wir nicht mehr able zu tun.
Und dann haben wir die Leute, die sind so, oh, Claude ist down, ich kann nicht arbeiten.
Und ich denke, das ist ein Problem.
Da ist ein interessanter Parallel, das ist, was ich werde darüber sprechen, in Berlin in ein paar Wochen.
Es ist, dass ich nicht mehr so einen Verlangen habe, dass ich nicht mehr so einen Verlangen habe.
Aber für 20 Jahre, wir haben schon über die Software gebraucht, die wir installieren, dass wir nicht verwendet haben.
Wenn du ein Create-Reakt-App hast, wird hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte, hunderte Wir haben immer so gut gemacht, dass die Package muss gut sein, weil jeder andere ist.
Und wenn es ein Problem ist, jemand würde es finden.
Und natürlich, wir wissen über die Problems, weil wir sie haben.
Wir wissen nicht, wie viele Problems haben wir gefunden.
Wir wissen nicht, wie viele Problems haben wir gefunden.
Und da sind Supply Chain attacks, NPM particularly.
Ich denke, weil es endet up viel mehr als Significant ist, als ich an der NPM.
Was ich glaube, dass es die Art von JavaScript hat, die Welt zu den Backend und Frontend und all kinds von deploymenten scenarios ist, ich finde das ein bisschen surprising.
Aber dann, wir also, you know, last Jahr, wir haben gesehen, und die Sache ich über in Berlin ist, dass es über Sustainable Open Source ist, und eine Sache ist, dass es High Profile Projekte changing ihre licensing.
und sagen, dass die nächsten Version des Verkaufs, wenn du eine große Firma machst, wird es nicht mehr für dich für dich.
Und das ist auch sehr provokativ.
Es gibt vieles von einem sehr angreischen Gespräch.
Und das geht zu, dass du, nein, nein, nein, die Code du in Produktion in der Produktion jetzt kannst, du kannst das Code noch benutzen, weil die Version du in der Dependency auf war, wurde unter einem MIT-License.
Du hast eine Version 7.
Du hast nur gesagt, dass du nicht eine Free-Upgrade zu Version 8 getrennt.
Aber du hast all die Code.
So in theory, du kannst du den Code schon wiederholfen, du kannst du den Source, du kannst das in deinem Bild-Prozess, jetzt du own, du controlst es, du kannst nicht mehr geben.
Problem ist, du kannst es nicht verstehen.
Und das heißt, dass wenn du ein Verwunderbarer hast, oder ein Verwunderbarer ein Verwunderbarer, ein Verwunderbarer ein Verwunderbarer, du hast eine Wahl, wir können für Version 8 oder wir können die Zeit für Verwunderbarer und entscheiden, wie wir das Verwunderbarer haben, und wir können das Verwunderbarer haben.
Und zu mir, da ist ein Parallel zwischen einem Code aus einer Package und einem Code aus einem LLM-Packen, das war ein LLM-Packen.
Das ist einfach, dass du zwei Werteigst du auf eine Webseite und sagst, und das ist einfach, dass du zwei Werteigst du auf eine Webseite und sagst, YOLO!
oder es ist, dass du eigentlich ein rigorouses Analysis hast und du eine Code Review auf es oder, du hast eine Test Suite, Integration Test, um es zu tun.
Aber ich glaube, der Unterlagen ist, dass wir sollten, dass wir die Möglichkeit haben, dass wir die Möglichkeit haben, dass wir die Code in der App zu unterstützen, ohne Hilfe, ohne Hilfe, ohne Hilfe.
Und das ist was es, was es geht um, und eigentlich, das ist nicht ein schlechtes Platz zu sein, weil wenn du auf die Prennungen auf Cloud services hast, dann könnte man sich auf die Prennungen aufwachsen.
Wenn du auf die Binnen und die Binnen und die Binnen nicht so haben, dann wird das nicht mehr so sein.
Du musst du für das, oder du hast eine sehr expensive, eine sehr angenehnte, Arbeit vorhanden.
Aber es ist interessant, dass die Menschen sehr komfortabliefert sind.
Das ist definitiv, Ich würde lieber sehen, wo wir eine Sustainable Open Source Ecosystem haben.
Wir nutzen Standards wie CSS, als möglich, stattdessen zu re-inventen die Wheel, denn wenn etwas in der Browser ist, wird es nicht weitergehen.
Und so ich denke, es ist safe zu nehmen, auf das zu nehmen.
So ein Kommentar von UltraKittel hat in der Chat.
Es ist, dass die Comparison zwischen AI und Library ist, dass es AI anders ist, weil es die Ausput-A-Noisz-Prädckeln ist?
Ja, das ist eine fairer Observation.
Ich sage, dass es die Code nicht mehr verändern wird.
Es ist nur, wenn du es geplant hat, die gleiche Code wiederverkaufst wird, dann wird es nicht.
Aber wenn die Code geplant hat, die Probleme hat, dann kann man entweder deploy es oder man kann es auf einen Seite setzen und man kann die guten Bits oder man kann es, man kann es, man kann es, man kann es, man kann es, man kann es, man kann es, man kann es, man kann es, man kann es, man kann es, man kann es, man kann es, man kann es, man kann es, man kann es, man kann es, man kann es, man kann es, man kann es, man kann es, man kann es, man kann es, man kann es, man kann es, dass diese Tools können die Kraft der Entwicklung von Software aussehen.
Es gibt uns ein paar neue approaches, die wir nicht vorher hatten.
Aber ja, die Non-Determinismus ist definitiv ein Faktor.
Ich denke, Elie hat auch eine gute Frage gemacht.
Du hast es auch ein bisschen, aber wenn wir ein bisschen aussehen, die LLM-output in deinem Code ist, ist es ein bisschen wie ein Fuzzy Copy von Open Source Project, weil das ist, was es trainiert.
Es ist wahrscheinlich copy-pastet von jemandem Open Source Project, aber du hast nicht den Vorteil, dass wenn jemand ein Bug in es, du hast...
Das ist etwas, was ich nicht richtig verstanden ist.
Ich denke, die Dependencies sind nicht frei.
Die Dependencies sind nicht frei.
Die Dependencies sind ein Liability.
Das ist definitiv der Fall.
Aber ich denke, wir machen es worse, über die Verkostung es in unsere Codebase, das ist basically was wir mit dem LLM machen.
Und sogar noch ein Fuzziness und ein Un-Determinismus.
für mich ist, dass ich glaube, dass du richtig bist.
Und Leute sind zu interessiert in die Dependencies, richtig?
In meinem vorherigen Unternehmen, wir hatten, wenn du all die Dependencies aus dem Dependencies hast, wir hatten, wie viele NPM-Packages installiert.
In meinem neuen Projekt haben wir ne.
Ich sage, dass wir 9 NPM-packages haben.
Sie sagen, was du mit 9?
9 in total.
Das ist die Zahl der Package wir haben, und die Leute können nicht glauben.
Und ich denke, das ist, für mich, das eine Sache, die ich möchte, die Leute zu nehmen, von einer Diskussion wie das ist.
Look at deine Browser heute.
Es geht nicht um, ob es eine JavaScript-Library oder JavaScript-Functionalität oder ob es CSS ist.
Es kann so viel mehr machen als es.
even 4 years ago, let alone 10 years ago.
There are so many things built in.
And especially if you stop paying attention to what is happening on the web and just let some bot do it for you, then you will also maybe...
Das ist interessant, wie wir das 10 Jahre alt haben, aber wir nicht jetzt brauchen.
Jetzt können wir das in einem viel einfacher machen.
Du kannst nicht Popper.js einfach nur eine wirklich gute Anker Positionierung auf dem CSS und du musst nicht mehr über das alles.
Es ist interessant, wie die state der ...
LLMs und AI-assisted coding tools, oftmals für die Patterns, die ein paar Jahre alt sind, die letzten Web-Standards sind.
Und ich denke, das ist die Training-Data.
LLMs denken, dass die Websites sind in React, weil die Daten die sie trainieren, auf jeden Fall, die sie auf die Website looked at ist, in React.
Und so, Statistisch, die valid innenferenz ist, dass Website ist React.
Ich würde sagen, dass ich einen LLM und trainieren es auf ...
Hand-coded semantic HTML.
And that's what it does.
Like it's a weird LLM.
Yeah, just answering Coder by Heart's question, I meant nine in total, including transient packages.
There is actually, if anybody wants to see a really interesting example, SQLite, which is one of my favorite pieces of software ever.
Incredibly rock solid, you know, brilliant local embedded database.
SQLite ships as 1C file.
Und es ist eine Maschine-LLM-Generative, aber sie haben Build Scripts, die das Rationalize es.
Aber die Idee ist, dass es eine Binary-Dependenz ist, es eine DLL.
Wenn du eine Objektfile hast, eine Componenten, hat es keine Downstream-Dependenzies.
Und wenn du willst, kannst du es in die Projekte und jetzt haben wir eine Database.
Es ist ein sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr, sehr Their browser bookmarks are a SQLite database.
Their contacts in their phones, you know, the phone book application is a SQLite database.
And it's great.
And it's a really interesting kind of, you know, antithesis to the whole NPM, lots of packages, lots of transitive dependencies and everything.
It's like, no, it's one big C file and it does all these things.
One thing that I was thinking about from like a bit ago, like going to the browser standards also has advantages for like, Reusability, like recognizability for people, right?
Like if you take, my favorite example is the Material UI thing, where they replaced like normal input fields with like an underlined thing.
And then they recognize years later, okay, people do not know that this is an input field.
They are entirely confused, right?
And I think...
Modern CSS allows us to do small variations of the existing form fields, for example, but without giving up on the recognizability of the field.
Okay, it now has your pinkish color, which is nice, but it's still recognizable as a form field and you're not going super creative and nobody understands that this is a form field.
I think that's also an advantage of sticking with.
The convention that causes me the most pain is we decided a long time ago radio buttons are round and you can pick one and checkboxes are square and you can pick as many as you want.
And the number of websites that I have seen where they've used checkboxes but then they've written some code to make them behave like radio buttons.
And so one, it's confusing because you think you can pick more than one.
in your milkshake.
Like, I'm going to have a blend smoothie today.
I'm going to have apple and carrot.
And then you're like, oh, you mean I have to choose apple or carrot or ginger?
I can't have all three.
And you're like, well, if you'd had radio buttons, I wouldn't even have had to.
I'd be like, I get to pick one from this list because that's...
And, you know, it's because that is so kind of ingrained for me because that's how user interfaces have worked for my entire career.
I don't know if there are people out there for whom that's not true, but it...
Es macht es ein bisschen einfacher zu sticken mit den Dingen die Leute gelernt haben über die Jahre, wie wie bestimmte UI-Elementen sind.
Und ich meine, es gibt Raum für Innovation, wenn du eine Input-Field hast, eine gute Idee hast, dann test es und sehen, ob die Leute wirklich lieben.
Aber stickt mit den Standard-Stufen, in der Code.
aber auch in der UX-UI-Way.
In den meisten Fällen.
Weil die Leute nicht für ihre Text-Field wollen, sie einfach nur ihre Sachen zu enteren.
So, um Ihre Innovation in anderen Plätzen in der App.
Und also, wenn man sich sagt, wir haben eine bessere Text-Field geplant.
Ich sage, das ist ja, das ist ja.
Hier ist ein LIST, ich will Sie das in Traditionell Chinese, ich will Sie das in Hebrew, ich will Sie das in Arabic, ich will Sie das in Korean, ich will Sie das mit einem Screenreader, ich will Sie das auf einem Mobile-Phone, ich will Sie das auf einem Dashboard, auf einer Carrein.
Wenn Sie das all diese Probleme haben, kommen Sie zurück und wir reden.
Und sie sind, was?
Und es ist, wie Sie haben keine Ahnung, was ein Text-Input-Type-Equals-Text ist eigentlich capable.
Ich sage das mit Respekt, dass du wahrscheinlich ein Western-European bist.
Alle documenten du hast in deinem Leben von leften zu rechts, starten auf der Seite, es geht auf der Seite, es geht auf der Seite, es geht auf und du hast immer wieder zu sehen mit deinen Augen und klicken mit deinen Fingern.
Ja, genau.
Und all du musst du ist find jemanden für die eine solche Dinge nicht wahrnehmen und dann ist dein Homebrewed Textbox Replacement.
Oh, look at that.
In Japanese, the underline's still on the bottom, but the text flows downwards.
That's not going to work.
Yeah, exactly.
I mean, it's also interesting.
I worked with developers before that were surprised that, for example, a form can be submitted without JavaScript.
They did not know that this is possible.
They were surprised because, like, how do I make JSON out of this?
And I'm like, let's go back to a few steps.
Yes, exactly.
So, we did not get into the question at the beginning about CSS and JS.
We are a bit over time, but I would like to take five more minutes to just talk a bit about organizing CSS.
So, I think, on the one hand, I think we need to categorize the...
dass wir wissen, dass es dieses ganze Approche von nesting ist, das war bei SAS und jetzt ist es in CSS.
Wenn Sie sich so, dass es nur ein Verwalt ist, wenn es in ein bestimmtes Container ist, dann, heute, Sie können native nesting in CSS sein und es funktioniert gut, ich würde sagen, in Browser Support.
Ich habe immer immer einen Compiler, das mit einem Nested-Code zu verwendet ist.
Mit Lightning?
Ja, genau.
Mit Lightning oder mit ESBuild, beide funktionieren wirklich gut.
Und die Vorteile ist, dass als die Coverage ist gut genug ist, kann ich einfach den Compiler und dann bin ich fertig.
Das ist anders.
Das ist anders.
Ich würde gerne checken das.
Ich denke, viele Leute haben das gebetet.
In Gesprächen, ich sehe, dass viele Leute missen das.
Und dann gibt es zwei andere Projekte, die CSS and JS approach und die Utilität-Class approach.
Let's call es Tailwind, right?
Es ist die Person in der Room.
Ich denke, die CSS and JS approach ist, dass es eine Dead End ist.
Es hat in der wrongen Richtung gegangen.
Es ist schlecht für Performance.
Es ist hart zu maintain.
Most people I know have moved away from it.
And I think it is time to rethink that approach if you are going down that road.
The utility approach, I think there is a much more...
You can have a mixed approach, like using some utilities, using some classes.
My preference is to use as little utilities as possible.
But I can understand if you want to have a few things like doing something like a margin.
Aber es geht all in, das ist auch eine weirde approach.
Wenn du eine CSS-Component hast, ist in eine Art Klasse, dann ist es etwas, was du auch später delete kannst.
die major factors.
Wenn ich nicht mehr diese Componenten, kann ich eine Folder und es ist völlig weggegangen?
Dann ist es gut.
Und das ist mein Hauptsache zu CSS-Maintainability.
Was ist yours?
Das hat mich immer frustriert, um die Utilität-Classen zu tun, ist, dass sie all of the drawbacks of inline styles and actually make them worse.
Because, like you say, you've got a button and you need to just move it a little bit.
And so you have one button that needs 10 pixels of left margin.
And so inside the tag, you could say style equals, you know, margin left 10 pixels.
Utility classes, and I will give you a class called margin left 10 or margin left 10px, which is the same, you know, class is the same length of style.
So you haven't saved any.
Und die Name der Utilität ist über die Stilesheet-Rolle in der ersten Zeit.
Und es nur ein Ding, weil es nicht so gut ist.
H1 Class equals Logotype ist natürlich, es geht mit dem Funktion.
Wir haben eine Heading auf unserer Website, die hat eine Special Job.
Und so das lässt uns zu targeten.
H1 equals Big Green Underline.
Well, if that says big green underline, you might as well have done it by using a font size and a color and a text decoration.
And if you then go in later and say, well, actually big green underline now is pink italic, and it's still called big green underline, because that's the abstraction that you get out of class names, is you can say, well, the logo type now is going to, it's not the old font anymore, it's the new font.
The abstraction doesn't leak across the boundary there.
But with a lot of utility classes, you don't get the abstraction because the class name is so tightly coupled to what it does.
Und du hast nicht die brevete.
Und so, instead of learning native CSS, weil du wie die Style-by-hand-stil hast, was du hast du jemanden selbst'artigte Description für all diese Visual-Concepts.
Und so, es ist wie, du wirklich nicht wissen.
Und ich weiß, Leute, die Teilwind sind, Leute, die finden es sehr produktiv, weil sie einfach finden, das sie einfach finden, das sie einfach finden, und sie finden, das sie in, und sie machen es, und es macht es.
Und ich bin absolut, ich bin sympathetic.
People who have a website, it's almost right.
They don't have a design system.
They don't have a design team.
They have not got a top-down, holistic, semantic HTML.
They just say, this button's in the wrong place and I want to move it and go.
And I think utility classes work very well in those scenarios, but I think those scenarios are symptomatic of an approach to developing web applications, which I do not enjoy.
I'm like, if I can get away with no...
und keine inline Stylen, dann ist das die Web der Art des Designs zu nutzen, um die Tarketung alles auf die Semantik zu nutzen.
Aber in der Tarkung der CSS und JS und so weiter, die neue Dinge haben wir.
So eine Art ist, wir haben Web Componenten, die sich eine Shadow DOM anstatt, so man kann eine Componenten auf die Seite, die sich insulatet aus dem Rest des Renderingen.
So man kann die Style specifically target.
We've got CSS Layers.
This is another really big deal when it comes to managing specificity.
Because you can say, well, this is our base, and then we've got this layer here, which only applies to these components.
But then we've got this third-party widget that needs weird styles, so we'll put those in a dominating layer so we know those are always going to take effect on there.
We've got much, much better support for selectors.
So you can do something now like, I had a really interesting example of this the other day.
I've got a scrolling marquee.
So sponsor logos like moving left to right.
And the marquee tag is gone.
That's not there anymore.
And the problem is that, you know, if there's only three or four sponsors, you don't want them to scroll at all because it'll fit.
And if there are 10 sponsors, then it should take 10 seconds to go across the page.
And if there are 20 sponsors, it should take 20 seconds so they don't move too fast.
And you can now using CSS, you can write a rule that says, look, this thing doesn't move.
Aber wenn es fünf Bilder im Ingenieur gibt, dann möchte ich diese Animation und diese Animation Timing.
Aber wenn es zehn Bilder im Ingenieur gibt, dann wird diese Animation Timing.
Und wenn es 20 gibt, dann wird diese Animation Timing.
Und es ist ein bisschen ein Hack, weil es auf, wie es das Ding hat eine 10-Til-Child hat.
Aber es funktioniert.
Und es ist sehr easy zu sehen, warum es funktioniert.
Und es ist sehr, sehr self-contained.
Und es bedeutet, dass...
Das ist die Art, die es in den Karten, nicht zu erzeugen, wie viele Logos werden in den Komponenten sehen.
Und das ist die Möglichkeit, die mir noch nicht auszuladen ist, dass es die Möglichkeit, etwas in einem kleinen Fond, wenn es eine lange Worte gibt.
Weil das ist, wo die Styligen zwischen Styligen und Content Management ist.
Wenn du mit einem Liste auf Deutschlands bist, wenn du mit einem Liste auf Deutschlands bist, dann ist es ein guter Beispiel, weil die Germanen verbundenen Worte können sehr, sehr lange werden.
Aber wie Rocklands, du hast eine Band-Muse, das sind vier Letters, du kannst das in eine ganz, große Fonte, ohne die Läge zu machen.
Aber dann hast du eine Band-Näge und du will-Know-Use-By-The-Trail-Of-The-Dead.
Und wenn du und ...
Und die Verlöper sollte nicht machen, die Bands sind, die auf den Ticket-Band werden.
Aber du hast ein Problem.
Und jetzt ist das Problem, die die Möglichkeit, die das Problem ist, dass das Code, die es, die es, die Klasse auf die Output hat, um die Länge der Text, und dann die CSS, die du auf den Ticket hast.
Und es wäre sehr schön, dass eine Facilität, die es, um...
Ich glaube, es ist ein sehr guter Punkt.
Aber es wäre etwas, was ich benutze jeden Tag, aber es wäre etwas, was ich benutze über eine Woche.
Ja, definitiv.
Aber eine Sache, ich würde noch mal an, um die ganze Talewind und die Debatte zu sagen...
One thing you should consider is, is your problem really a tooling problem?
Should you have a different tool?
Or are you missing an expert on CSS in your team?
If you are a bigger company, hire people that know CSS really well.
They are unfortunately very underappreciated and then replaced by very mediocre tools.
And I think having someone, like one person on the team that will help you, like...
architect your CSS.
You have an architect for your JavaScript.
You have an architect for your backend.
You have no architect for CSS and you're confused where your CSS is hard to maintain.
That's...
Sorry.
Actually, let me recommend, if I can recommend a book at this point.
Sure.
It's called Architecting CSS.
It's by Martin and Michael Dowden.
And it is basically...
Ein paar Jahre alt sind jetzt, so ein paar von den letzten China-Klipen sind nicht mehr in den Karten.
Aber das ist ein sehr guter, das ist die Landschaft von CSS, wenn man es von einem Software Engineering Perspektive aus dem Frontend-Design Perspektive ist.
Und jemand, der sich in der Kartei aus dem Hohle aus dem, ob es CSS und JS ist, oder sie versuchen, aus dem Teilwind zu verändern, oder sie einfach zu konsolidieren, ein paar Disparate Stiles und Approaches ist gut.
Das ist gut, gut gut, gut gut für eine Kartei.
Awesome.
I will put it in the show notes for the people that want to check it out.
And I think at this point we will wrap it up.
We are a bit over time already.
And thanks a lot for your time, Dylan.
It was really nice chatting with you.
It's been my pleasure.
Thank you.
And yeah, to everyone who listened, thank you for listening.
If you are listening on Software Architecture in Stream...
Switching between English and German is really hard.
Then also check out Maschinenraum if you don't want to miss any future episodes.
And yeah, if you want to meet us in person, come to Software Architecture Gathering.
We will both be there and we will be happy to chat with you.
Ja, answer any additional questions and everything.
And it means you get to go to Berlin and Berlin is awesome and is one of the most fun cities to visit.
And I'm looking forward to it immensely.
Awesome.
So, take that from Dylan.
So, have a nice day and see you soon.
Bye.
Bye-bye.
A note from our team.
Hello Software Active Toon Stream listeners.
My name is Lukas and you might know me from some episodes here.
I will start a spin-off podcast called Maschinenraum, which will focus on web developments, operations and design.
You will hear the first few episodes on this channel, but if you don't want to miss any episode in the future, you can already subscribe on Maschinenraum.fm.
