New Frontiers in Web Platform Development with Bruce Lawson - JSJ 634

In this episode, they dive into the world of web development, featuring insightful discussions on the differences and costs associated with hiring React Native developers, the importance of understanding web standards and browser differences, and the ongoing efforts of the Open Web Advocacy organization. They share their experiences, concerns, and insights on Apple's impact on the open web, the EU's investigation into Apple's actions, and the implications of progressive web apps in light of Apple's policies. Join them as they unravel the complexities and controversies shaping the web development landscape, and explore the future of web app accessibility and competition across devices.

Special Guests: Bruce Lawson

Show Notes

In this episode, they dive into the world of web development, featuring insightful discussions on the differences and costs associated with hiring React Native developers, the importance of understanding web standards and browser differences, and the ongoing efforts of the Open Web Advocacy organization. They share their experiences, concerns, and insights on Apple's impact on the open web, the EU's investigation into Apple's actions, and the implications of progressive web apps in light of Apple's policies. Join them as they unravel the complexities and controversies shaping the web development landscape, and explore the future of web app accessibility and competition across devices.

Socials


Picks

Transcript

Charles Max Wood [00:00:05]:
Hey, folks. Welcome back to another episode of JavaScript Jabber. This week on our panel, we have Dan Shapiro.

Dan Shappir [00:00:12]:
Hello from a warm and sunny Tel Aviv.

Charles Max Wood [00:00:14]:
I'm Charles Max Wood from, cold and rainy Utah, from Top End Devs, and we have a special guest this week. That is Bruce Lawson.

Dan Shappir [00:00:23]:
How'd you do, everybody? Show. Yeah.

Bruce Lawson [00:00:25]:
Thank you. I'm here from, Birmingham, UK. And today, we're celebrating our annual, my word, it's not raining day.

Charles Max Wood [00:00:34]:
I was gonna ask how often that happens, but you said annual so I get the picture. You wanna just remind people who you are? I'm pretty sure we've had you on the show before but, you know, I don't remember we talked about last time and so

Bruce Lawson [00:00:47]:
For sure. Yes. I'm an old colleague of Dan's and when we both worked at Wix which is quite a while ago now. I have been I I was in development in the late eighties and then dropped out to travel the world and stuff. Got into the world wide web because I figured it looked quite cool when I was a primary school teacher in in Thailand, and then came back and got into web tech. So started mostly hassling people about specifications, you know, trying to build things and saying the spec is incomprehensible and eventually people got tired of me so they would change the spec. And and accessibility, you know, making sure that your stuff works for people with disabilities because, it's important. And also performance.

Bruce Lawson [00:01:47]:
I'm not a performance nerd. You know? I I don't know every next step to implement crud, rum, rocks, crooks stuff that Dan knows, but having spent a great deal of my time in Asia, working and and traveling and living, I know how it feels to have a a crappy $50 Android device on a terribly constrained network and watch the the loading spinner of doom just circle around when you're just trying to find out if you've missed your train or if it should be on the next platform. So these are things that matter to me. And I was here last time, I guess, about 12 months ago. Mhmm. But who knows? I'm close to a 100 and tempest fuguettes, so it could have been 3 weeks ago or 10 years ago. But I was here talking about some of the advocacy that I've been doing along with a dozen other developers across the globe, just normal developers, to try to make sure there's better browser competition on the mobile duopoly, I, Android and iOS, with a group called Open Web Advocacy. We've had quite a lot of success, or we have contributed to the success of getting legislation passed in Australia, most recently Japan, most notably the European Union, basically prohibiting, Apple from only allowing Safari or or its WebKit view based browsers on iOS.

Bruce Lawson [00:03:34]:
The regulators have finally agreed with us and and other interested co lobbying partners, if you like, that it's actually holding the development of the web back if people can't use, you know, fire full fat Firefox with Gecko inside or full fat Chrome slash Vivaldi slash Opera slash Brave slash Edge with Chromium inside. And it's been really, really eye opening watching Apple squirm around and make, make themselves look pretty silly, actually, trying to evade regulation. It's been very noticeable that the traditionally highly, highly pro Apple press have become more and more frustrated or or less willing to simply parrot Apple's party line, if you will. So, for example, here in the EU well, here in the EU, I'm in the UK, so no no longer in the EU. But in the EU, when the Digital Markets Act came into force, Apple tried to evade regulation by saying, well, you can't regulate Safari because Safari on iOS is different from Safari on macOS, which is different from Safari on iPadOS. And, the EU declined to, declined to believe them, pointing out that they were in their own marketing materials. Apple says 3 devices, 1 Safari.

Dan Shappir [00:05:15]:
Oh, but but before before we we go there and before we delve so deeply into the technicalities, I'd like to pull us back a little bit because I want to relate something that I encounter very often with with actual web developers. So, obviously, it's it's even, you know, quote, unquote worse when you're talking to laypeople. And it's the fact that when I say to to web developers that you only have Safari on iOS, many times I hear a response like, what do you mean? That's absolutely not true. I'm using Chrome on my iOS, device. So what are you talking about? So maybe you can clarify why it is that we insist on the fact that it's actually Safari and not really Chrome.

Bruce Lawson [00:06:06]:
Sure, Dan. Yeah. Well, the clarification of why it is, you would have to ask, Tim Cook about that. The reason we know it is is because the App Store rules Apple's App Store rules say any any app, and, of course, a browser is an app, any app that can, browse the web must use Apple's WebKit view. So you you can't even use your own fork of WebKit or a newer version of Web kits. It's the web kit view that Apple ships inside the, Ifing that every browser must use as a rendering engine. And, similarly, anything that can execute JavaScript in an app must use, the analogous web kits. I forget its name, but the web JavaScript core.

Bruce Lawson [00:07:04]:
Thank you. Yes. Apple itself doesn't have to do this, but it requires it of anybody who ships an app that they want to put in the App Store. Why this should be? Apple will tell you it's for your comfort and security. I would say, and this is, you know, purely speculation because Tim Cook hasn't sent me a Christmas card for, like, years now.

Charles Max Wood [00:07:33]:
Oh, what a jerk.

Bruce Lawson [00:07:35]:
I know. And I haven't I haven't had Valentine's cards from the, safari team this year, but, I would say it's very simple. If you could have GECKO or Blynk, which is inside Chromium, inside your app, then it would have access to a lot more device APIs, etcetera, than you can access with Safari. And, therefore, you would be able to ship a web app that was feature, equal with a native single platform app that goes in the iOS App Store for which Apple can extract a 30% rent. Simple as that, in my it seems to me. And and if I were, you know, if I were Tim Apple, and richer than Croesus, but still demanding more money, I I I can see the logic in it, but the trouble is is it's really, it's really inhibiting development of the cutting edge web apps because if you could just ship one progressive web app that worked on Android, worked on Chrome OS, worked on macOS desktop, worked on Windows, worked on Linux, and worked on iOS, it would reduce development time a great deal. You know, it might not be quicker to develop, but it's a lot quicker to ship out upgrades. You're not having to muck about with variant code bases and have separate testing teams.

Bruce Lawson [00:09:14]:
But, of course, that would mean that it would be much more difficult for Apple to extract that 30%. And, of course, the the vision, would be up they're they're they're funny. AR goggle things are not flying off the shelves. IPhone sales are down. It I don't know how much they have are in, how much they have to grumble to their shareholders, but they have bills to pay and makes sense. I would be unwilling to relinquish the 1,000,000,000 of dollars they get every year from this 30% rent extraction that they charge for people to put an app in the App Store.

Dan Shappir [00:09:59]:
So you mentioned progressive web apps. We've had people on our show to talk about this, obviously. Alex Russell, for example, who I think he never invented he deny any knowledge. As I recall, he actually he and his dear and his, partner I forget her name. I believe Francis. Exactly. I think they both coined the term together. Maybe it's worthwhile explaining what progressive web apps are in case because they are you know? Thanks to Apple, they're not taking off as they should have.

Dan Shappir [00:10:35]:
So maybe it's worthwhile to remind people what they actually are and what they're missing out on.

Bruce Lawson [00:10:39]:
For sure. Yeah. A progressive web app, is it's it's a term. It's an umbrella term. It's like, you know, Ajax. It's it's it's a useful marketing term to describe a suite of different technologies working together. Years ago, Opera and Mozilla and Google got together. We all had similar similar ways of being able to use web technologies to make what looked to be a desktop app, but it was Chrome less, and installable on desktop.

Bruce Lawson [00:11:19]:
They were called widgets. A fellow called Marcus Casares, who worked for Opera at the time, now works for Apple, specified them in the w three c. But they didn't really take off simply because there weren't that many device APIs they could hook into at that point.

Dan Shappir [00:11:35]:
Just just a comment, though. You meant you said Chromeless just to emphasize that it's not about not being the Chrome browser.

Bruce Lawson [00:11:42]:
I'm in the UI. Yeah. You just get a square box like a WebView effectively.

Charles Max Wood [00:11:46]:
Yeah. You don't have so when you're talking about Chrome, you're talking about, like, the search bar or the, URL bar. Yeah. All that stuff. Okay.

Bruce Lawson [00:11:56]:
Yeah. Yeah. We're just talking like a window. In fact, like an Electron app or or a WebView.

Charles Max Wood [00:12:02]:
And then a good way to put it. Yeah.

Bruce Lawson [00:12:03]:
Yeah. And then devices, we got more and more device APIs. Geolocation was the first. And, you know, they've got loads of them now. Some are controversial like WebUSB. Some are not controversial like the accelerometers.

Dan Shappir [00:12:20]:
Project Fugu, I think, is the project that brought a lot of these APIs, to the forefront.

Bruce Lawson [00:12:26]:
It did. Although, I wanna give a shout out to Firefox OS, which pioneered a lot of them. They aren't necessarily now standardizing the format that Firefox OS did them, but Firefox Firefox OS did a lot of the work on

Dan Shappir [00:12:41]:
Late lamented Firefox OS.

Bruce Lawson [00:12:44]:
Who still exist and going great guns in India under the name of Kios, k I o s. Yeah. Yeah. I think it's the 2nd biggest, operating mobile operating system in India. But, anyway, we I digress. So a progressive web app is effectively a a website plus plus. It is a web page that's made of HTML, CSS, JavaScript, SVG. It has a manifest file, which gives it a long name, a short name that would show, you know, if you installed it on your home screen, various different icons, you know, what Obviously, iOS, Android, the late lamented Windows phone have a have different icon sizes and formats.

Bruce Lawson [00:13:29]:
And then with a service worker, you can basically have a web app, a website that when a PWA aware browser goes to, the browser can say, hey. There's a manifest. There's a service worker. And it can say to the user, do you wanna install this to your home screen? The user goes, yep. And then it becomes, you know, a nice circular icon on your home screen that you can tickle into life with a magical twitch of your digit just like any other app. It it fires up full screen. It can work offline with a correctly written service worker. And to all intents and purposes, it's indistinguishable from a single platform, Android or iOS app.

Bruce Lawson [00:14:21]:
But, of course, Apple don't really like that because there's no way to monetize it. If brucelawson.c0.uk wanted to have a PWA, and Dan went there in his Android device, and it would his device would say, I wouldn't do any work. His device would go, hey. This is installable. Do you wanna install it? He can. There's no App Store gatekeeper intermediary there. Apple would argue that that's bad because something's being installed onto your device, and they haven't scanned it for security. They haven't scanned it for viruses.

Bruce Lawson [00:15:04]:
They haven't scanned it to make sure it doesn't contravene whichever, crackpot puritan wave of moral panic is sweeping Cupertino at this very moment. I would counter that and say the web has existed for 25 years. Browsers are really, really damn good at sandboxing. In fact, in the I think it was in something that Apple submitted to the UK Competition and Markets Authority, whom we've also been briefing. Apple admitted that browsers, have a sandbox, quote, an order of magnitude more secure than that of the App Store. And we've seen at at at this very moment, there are sanctions busting Russian bank apps in the App Store. Their their curation is not so great. I would argue that there are way too many, identical fart apps in the App Store.

Bruce Lawson [00:16:13]:
I I don't know. I mean, I'm an English guy, so farting is inherently fantastic.

Charles Max Wood [00:16:22]:
I have teenagers, and it's funny.

Bruce Lawson [00:16:26]:
It is funny, but I don't think you need more than 500,000,000 of them or however many there are. I I I suppose I'm saying that I don't I personally don't buy Apple's argument that the world owes in 30% of the cost price of an app for their fantastic extra security and curation. I I'm a I'm I'm a grown up. Web browsers are brilliant and have been brilliant for ages at sandboxing tabs from each other, the OS away from rogue websites because there's been rogue websites since since Tim Berners Lee rode a stegosaurus across the Earth. So if people wanna do this, I I I I I I'm comfortable with it. However, the the men in Cupertino in gray suits, they they know better than me or you or anybody else in the world, and they prohibit

Dan Shappir [00:17:23]:
I just wanted to mention that from my perspective, the big three features, the progressive web apps ideally provide that make the most significant difference are the fact that, a, that as you mentioned, you can it automatically can add an icon to the home screen. I mean, you can add icons to the home screen effectively for any web page, but it's a very manual and somewhat convoluted process. And most users, certainly, my mother doesn't know how to do it. So having it automatically suggests it makes all the difference in the world. The other one is, as you mentioned, is the fact that it's Chromeless, that it covers the entire screen. That's really important when you're trying to create an actual app like experience. And the final one is, push notifications. It would you know, like, without the ability to have push notifications, that's like a deal breaker for a lot of, organizations that want to have an app like presence on a mobile device.

Dan Shappir [00:18:33]:
There are obviously other features as well, but those are the big three from my perspective. And, technically, they're totally doable. Goo, Google have done them on on the Android phone. I mean, you know, they work. Their progressive web apps work on Android. Apple has always managed to break at least one of these features. Like, they they it's a sort of like, sort of malicious compliance in a sense. The the they kind of work, and then they stop working, and then they work again, but some other one that used to work suddenly stops working.

Dan Shappir [00:19:12]:
So it's it's you can't really seem to get all 3 of them to properly work on on the iPhone.

Bruce Lawson [00:19:18]:
This is correct. And and the the the weird the sad thing is is that Apple have been getting much better with this, the WebKit team, who who do a great job. And then I I I friends in the WebKit team, and I I I cannot believe for an instant that anybody who works in WebKit thinks I don't want my browser to be the best in the world. But even you 2, gentlemen, the dizzying pinnacle of your careers, you know, we've all had managers that we've had to take orders from. But recently, Apple implemented web push. It's not perfect, but, you know, none of we 3 have ever had a bug, but there are developers who occasionally have made written bugs and corrected them later. That's normal in software development. The Marcus Gocera, so I mentioned earlier, he used to work for Opera, then at Firefox.

Bruce Lawson [00:20:17]:
Now he's at Apple, and he implemented the badging API. That's like the little red blob that you'd see if you had a progressive web app mail client, the way you can badge it to say there are, you know, x new notifications or x new emails. This is a a UI thing that people like in, single platform apps, and it came to the web. And then earlier this year, Apple just killed progressive web app functionality across the EU. Just killed it. Just took it away, which caused considerable outrage. And again, I can't speak for them, but it's pretty easy to see that it was about 10 days before the the Digital Markets Act was due to be enforced. It came into force.

Bruce Lawson [00:21:12]:
It came into law, but, obviously, you give people time to to ramp up to it. So they were given a grace period. And the digital market act says that you cannot self preference by giving your own stuff better access than than a competitor's. So I can imagine

Dan Shappir [00:21:40]:
all a platform maker.

Bruce Lawson [00:21:41]:
Yes. If you're if you're a platform maker of over a certain size, and you have to use, like, €400,000,000 a year x 1,000 users. So I can imagine Bob's suit as I like to call him, in Cupertino sitting there and thinking, okay. So we're going to have to let other browsers do progressive web apps because Safari can. But what happens if the day before this comes into force, we completely kill progressive web apps even from our own products because then we're not self referencing, which if you are Bob suit, that probably makes great sense. But, luckily, in OWA, Open Web Advocacy, we, somebody noticed that this was just didn't exist anymore in a beta. People asked, and the the the the the the Safari bug trackers, the forums. You know? Have you deliberately broken PWAs on the beta? And there was silence.

Bruce Lawson [00:22:48]:
So we organized, basically, a campaign of developers and business owners across the EU to email the the people who are in charge of enforcing the Digital Markets Act to say, you know, in 10 days time, the business the the progressive web app that my business makes and depends upon is going to break irrevocably and completely, and this will be the business effect. We only had, like, a week. And bless and bless everybody who did it. 100 of people were up to the EU. Now there was there were businesses, little progressive web apps that would tell people if a kindergarten was gonna shut down early for any reason and alert people, that was gonna break. There were small community things that would giving each other oncology advice and support that was gonna break. A friend of mine runs heavily, heavily privacy focused note taking progressive web app that nothing you do ever leaves your device. Nothing's stored in Icloud.

Bruce Lawson [00:24:14]:
Nothing goes out. It's all on your device. And that was heavily used by EU journalists reporting behind the, on the front lines of the Ukraine war. And this was going to break in 10 days. There was no way of telling these people because they were out of you know, it wouldn't be safe to be connecting to Twitter and announcing your location. So there was no way to tell these people, for Pete's sake, save your data because this is gonna be just completely kiboshed in a week. Hundreds of people wrote to the EU, and the EU who knows what they said to Apple, but Apple backtracked. So now in the EU, progressive web apps still exist, but at the moment, I can only use the WebKit engine, which is obviously not even in malicious compliance with the act.

Bruce Lawson [00:25:08]:
That is, contravening the act. So the EU opened, an investigation. And, you know, it's a massive change that's been requested from Apple, and I've been in software since or since since Dan, since you were in short trousers. So I've been working in software. I have to say viewers that before we started, he got up and closed the door, and he used

Dan Shappir [00:25:33]:
to short trousers. Occasionally I still occasionally wear short trousers to the consternation of my kids.

Bruce Lawson [00:25:40]:
So Well,

Charles Max Wood [00:25:42]:
you were talking about teaching primary school in Thailand in the late eighties, and I was Yeah. In primary school in the late eighties. So, anyway

Bruce Lawson [00:25:51]:
But but but I've been in software forever, and I know I know that changing a massive system even when you've had to I mean, they only had 6 months formal grace period. But Apple must have known 2 years ago when the DMA was announced that it was going to be considered to be a primary gatekeeper. But even so, it I I can understand that you can't do everything in 2 years, and and I'm sure sure I can't speak for the EU. I've spoken to them many times as of Apple, as of lots of other advocacy organizations. That's not a secret. But I I am certain that the EU don't want court cases and fights. What they want is a more competitive landscape. And if that means saying to Apple, look.

Bruce Lawson [00:26:43]:
Okay. For 6 months more, you can do what you're doing. As long as you promise to get it right rather than rushing through a half assed fix or or just nuking stuff like you did with PWAs. You know what? I get that. I I I want a better environment. I don't want Apple to go down in flames. I want Apple to go actually yeah. It's better for everybody if Safari competes on its own merits.

Bruce Lawson [00:27:12]:
It's all great. Everybody.

Charles Max Wood [00:27:14]:
So the thing that I've there there are a couple of things, and I'm trying to figure out how to, like, how to state some of this stuff. Because on the one hand, I definitely feel the you know? Because I I have an iPhone. Right? I have an iPhone.

Dan Shappir [00:27:32]:
So am I testing?

Charles Max Wood [00:27:33]:
Right. But and and so I feel this right because yeah. You know, ultimately, I I use Brave Browser, but Brave Browser is more or less a reskinned Safari browser. Right? It's using WebKit. It's using all of those things. If I'm building some other application, lately, I've been so I primarily do Ruby on Rails, and then I do a lot of front end stuff. And so that's where I get into JavaScript and web. This relevant to most of our listeners here.

Charles Max Wood [00:28:02]:
Right? But one thing that I've gotten into is the team at Basecamp provides, Turbonative, right, which gives kind of a clean, chromeless wrapper around your Ruby on Rails app or other web app. And so you can essentially build a PWA, but your native app is your web app.

Bruce Lawson [00:28:21]:
Yeah.

Charles Max Wood [00:28:21]:
Right? And so, you know, I feel this because there are some problems that I'd really like to solve with a PWA or with specific features that go into a PWA. And when they don't do what you need them to do, that that's really sucks.

Bruce Lawson [00:28:37]:
Mhmm.

Charles Max Wood [00:28:37]:
But on the other end, I I am not a big fan of government intervention. Right? And so I'm looking at it and I'm going, okay, well, Apple's a private company and they you know, when you buy the iPhone, you're kind of signing up for whatever they do or don't do. IOS will do or not do whatever it wants. You know there's a walled garden here. Right? Because you have to submit apps to the App Store and get them approved, and it may or may not play nicely with some of this other stuff. And so as much as I want Apple to be doing this stuff, I'm a little bit allergic to the government telling them they have to do this stuff. Does that make sense?

Bruce Lawson [00:29:23]:
It it does. And I If

Dan Shappir [00:29:24]:
if I if I can say something about this, Chuck, I think what a lot of people miss, and, unfortunately, it's often people in the US, especially, is the fact that if you you want what you actually want is not is is a free market. And your concern about government intervention is the fact that they are getting in the way of a free market. The problem is that when you have a monopoly, you don't have a free market. And you might say, well, Apple is only, like, half the market. They're not a monopoly. I can always decide to purchase an Android device instead. But the reality is that they are a monopoly because I can't not support iOS as, as a as a company that that, you know, that delivers some sort of a service. If I'm so for the web, the mobile web constitutes something between 17 80% of of of web browsing.

Charles Max Wood [00:30:32]:
Yes.

Dan Shappir [00:30:32]:
And if if my web app doesn't work on iOS, then I'm basically out of half that market.

Bruce Lawson [00:30:45]:
Mhmm.

Dan Shappir [00:30:46]:
That's not something that any company could deal with. Look at what happened with, what's the that game manufacturer? The the ones that create Fortnite.

Bruce Lawson [00:30:59]:
And all I can't remember. I don't play games.

Charles Max Wood [00:31:03]:
I don't either. I don't remember.

Bruce Lawson [00:31:04]:
I play Fortnite.

Dan Shappir [00:31:05]:
They had that big row with Apple over all the over the App Store rules.

Bruce Lawson [00:31:10]:
They're

Dan Shappir [00:31:11]:
also think. Epic Games, I think.

Charles Max Wood [00:31:13]:
Is it epic?

Dan Shappir [00:31:14]:
And and and they're, like, the biggest game manufacturer in the world, and and and it was and and they're basically losing this fight in a lot of ways. So, you know, what chance does does the little guy have? It's it's it's kind of like think about the days of the railroads. It's like you have to have some sort of regulation here, or or the little farmers get run out of their lands.

Charles Max Wood [00:31:42]:
Mhmm.

Dan Shappir [00:31:43]:
And and this is literally what it is. It's it's Apple taking advantage of the monopoly that it's been able to create. Now, again, you know, I'm not saying that Apple should not be a successful company, or or that they they, you know, they they invent invent to great extent, invented this space. Good on them. It's that the fact that there needs to be some sort of a mechanism that protects the free market. Because in a totally unregulated, capitalistic environment, you don't end up in a free market. You end up in a series of monopolies controlling everything.

Bruce Lawson [00:32:29]:
What Dan said, I mean, I'm I'm as I'm pro perhaps not as allergic to government as many American people are, because, unfortunately, when you were a colony, we didn't govern you terribly well. Terribly sorry about that. But I but I am It's okay.

Charles Max Wood [00:32:49]:
I'm happy with where we ended up in a lot of ways. So it it's fine.

Bruce Lawson [00:32:53]:
But I am allergic to government intervention in tech, because I work a lot in accessibility, and I've seen attempts by governments to regulate. And of necessity, regulation is law, and it takes a long time to be passed and come into force. And by which point, you might have frozen into law a technique which is 2 years older and much worse than the technique now. But which is why the EU and the UK laws or the regulators, everything they write is about opening up competition, preventing people from self preferencing. It doesn't mention, you know, it doesn't say you must, you must allow this API. I mean, I like the fact that now in the EU everything must, every new device must come with USB c, so you don't have hundreds of different proprietary chargers. But the problem is what happens when USB d, e, and f come about, which are much better, but the legislation only allows USB c. I I I get your problem, Chuck.

Bruce Lawson [00:34:06]:
But, certainly, this legislation is designed to promote a level claim failed. It's not and I I don't wanna penalize Apple. I'm talking to you with, on on a on a hugely expensive, MacBook Pro that cost considerably more than my first car ever did, and you'll you'll prize it out of my cold dead hands. But if I had to give up one thing and it was the MacBook Pro or the open web, you can have my MacBook Pro. I really want the open web to win. And I think, anyway, your argument ended in was it the fifties or the sixties when, the a AT and T was broken up and so you know? It it it became obvious that nobody could own the telephone network and be the sole supplier of telephones. Right. It was an abuse, and it was distorting the free market.

Bruce Lawson [00:35:09]:
It wasn't because every company of necessity tends to monopoly. Every company wants to raise its market share, and the logical end of raising your market share is owning a 100% of the market.

Charles Max Wood [00:35:25]:
Yeah. So I mean,

Bruce Lawson [00:35:26]:
I I would love to fix capitalism, but but I don't think I have enough years left in me to to do that. But, certainly, certainly, helping what we've been doing at OWA is helping the CMA and the EU and the Japanese and the Australians understand the competition ramifications of what are pretty pretty erudite, esoteric things like, you know, well, if they don't allow, they say p I. And and I will say, you know, I expected when I first met these, people in you know, who are lawyers and economists, I expected lots of elderly men in dusty wigs going, what what is a computer? But, actually, it hasn't been that at all. I wish my grasp of economics and law were anything like as quick as their grasp has been of the technical issues we've shown them. I mean, we gave them, just recently. We gave them, I don't know, 70 page report on in app browsers. This isn't Apple bashing at all. This is bashing all in app browsers.

Bruce Lawson [00:36:40]:
And I'll tell you what

Dan Shappir [00:36:41]:
In app browsers are the tool of the devil.

Bruce Lawson [00:36:45]:
That would that if I had been allowed to write the executive summary down, that is pretty much the synopsis I would have written, but I wasn't allowed it. I'm just allowed to turn up at the meetings and look beautiful. Right.

Charles Max Wood [00:36:57]:
Well

Bruce Lawson [00:36:58]:
But yeah. I can't.

Charles Max Wood [00:37:00]:
Yeah. I I just wanna jump in on some of this because to a certain extent, I agree with you guys. Right? You know, monopolies are anti capitalist. You know, we also see crony capitalism where, you know, some of these tools get used on behalf of companies then kick back money to the politicians that did them the favors. Some of these tools are open to that kind of abuse. And so, when it comes right down to it, I mean, if it if it truly is antimonopolistic, there's a long word for you, you know, I I'm I'm happy to support some of that. I I get a little bit concerned because in case folks haven't listened to the show and haven't heard me, I I try and keep the politics out of this, but I am very involved, especially in the state of Utah with with our political, system and and our politicians. And I'm actually the vice chair of the Utah County Republican Party, so I'm I'm in it all the time.

Charles Max Wood [00:38:04]:
But, my my concerns mostly come down to because right what you're talking about, I I agree with. Right? It's like, hey. Let's open this up. Let's let everybody, you know, play in the space. Right? But the the concern is is are there unintended consequences? Are there things that are gonna come out of this that we don't want? And then the other concern that I have and and it's hard to know those things. Right? And so it's it's kind of not an argument against this. But at the same time, I wanna make sure that as much as we can, we can foresee what may come out of this. And then the other thing is is if we're creating the tools for government to do these kinds of things, right, pass these kinds of regulations and then enforce them.

Charles Max Wood [00:38:50]:
As I've said, most of my allergy to government intervention comes from they find some other way to turn this into something else that we don't want. And so when when we're looking at this, right, we we have to be very careful and say, okay. Look. We're allowing you to regulate these things under these very narrow areas so that, you know, we can open the market so that you don't have a monopoly without allowing them to be abused on behalf of, well, my buddy's the CEO of such and such a company and so, you know, there are competitors, a monopoly now too. And so now I'm gonna treat them like I'm treating this other company. And to your other point, though, yeah, I don't feel like anybody's necessarily trying to pick on Apple per se or try to hurt them. But anyway

Dan Shappir [00:39:42]:
I mean, I I'd like to I'd like to say one thing about that, or few things about that. First of all, from my experience, like, I don't you know, I dislike politicians significantly. It's not it's not a big leap given that I'm in Israel. And, but we've seen that tech companies are and tech company CEOs are usually a lot smarter, more efficient, and wield more power than your average politician.

Charles Max Wood [00:40:15]:
Fair.

Dan Shappir [00:40:16]:
Yeah. And

Charles Max Wood [00:40:17]:
That's also a concern.

Dan Shappir [00:40:18]:
And and think about let let's take a different example. Like, think what would happen if Google in their search engine decided to, you know, to, you know, basically remove your company or your organization out of the search results, the impact that they that would have.

Charles Max Wood [00:40:40]:
They do that to a certain degree.

Dan Shappir [00:40:42]:
And they do that to a certain degree. And and and and the fact that they can is more scary than almost anything else. You know, think about the fact that the ranking algorithm for TikTok is controlled by the Chinese Communist Party. Like, I I would I don't I'm not saying that they decide on the rank of any video, but they decide the ranks of the videos that they specifically like or dislike. So they certainly have their finger on the, what's it called, The the the Elijah.

Charles Max Wood [00:41:24]:
Yeah. With the recommendations and yeah.

Dan Shappir [00:41:26]:
Yeah. Yeah. So so and and think of on the impact that that has on the opinions of people. Now in this particular case that we're speaking about in the context of Apple, that seems to be purely about, revenue and not about, you know, ideologies or or stuff like that. But still, you know, they are creating a situation that is effectively killing the open web. And as and and as people who are proponents of the open web, that's a problem. And it seems like, you know, I would love for there to be a different mechanism that government intervention to fix this, but I'm not seeing any such mechanism available.

Bruce Lawson [00:42:18]:
And we have been appealing to Apple Mhmm. For a decade, you know, appealing to their better nature. I I personally no. I I don't want Some people hate Apple. Some people hate Google. I'm too old for hating. I don't want anybody to to to be taken down in flames.

Charles Max Wood [00:42:42]:
Right.

Bruce Lawson [00:42:43]:
I don't I don't want Apple to involve themselves and us in a decade long, series of malicious compliance until they eventually go, oh, alright then. Because, of course, for a monopolist, any delay is profit. So Right. That that's just a given. They will have to do this stuff, but they have every fiscal, every fiscal incentive as towards dragging it out with mucking about with take you know, going to court about procedure as they've done in the UK recently. That's a given. But what I really want is for Apple to do the right thing. You know, people have accused me of, oh, well, you just want the world to be chromium.

Bruce Lawson [00:43:38]:
Like, no. That's absolutely not what I want. And in fact, I I know I I love Firefox, but it's it's been losing now now for for for years years. Yeah. I really want what I really want is Safari to run on iOS, iPadOS, if that's a different thing, Android, Windows, Linux, Chromebook, as well as macOS, because WebKit runs on all those things. Safari used to be on Windows. I would love to see Safari running all of those things, giving Chromium a run for its money, being a competitor to Chrome. Because there's only one organization that has brand loyalty, a marketing budget, technical nouse, worldwide prominence to be able to compete against Google, and that is Apple.

Bruce Lawson [00:44:34]:
Mhmm. So I I I really want Apple to set my friends and colleagues in the WebKit team free to compete so we could see 5th you know, if it if it were 40% Safari, 40% Chrome, 10%, 10% Firefox and Brave and Vivaldi and Opera. I'd much rather it was equal shares each, but I'm also I'm a realist. I would much rather it be a a a better balance. So this this would allow that. I also know many of the WebKit team personally, and they're some of the brightest people I've ever met. I'm sure that they're frustrated.

Charles Max Wood [00:45:19]:
Yeah. I just I guess my point is is that because I think I agree with you guys, especially in this case, but we have to be careful where we apply the hammer and how big a hammer we use.

Bruce Lawson [00:45:34]:
I I completely agree. And luckily I mean, I I would guess it's the same in the States as well, but the EU is an entity, but 27 different was it 26 countries now get to vote on stuff. So in the same way as the states, you've got lots of different states of competing cultures and and and and concerns and imperatives. So you have in the EU. It's it's cumbersome, but it means there's checks and balances built in. And, I

Charles Max Wood [00:46:08]:
I would also argue that people. Yeah. You have everybody thinking about it and coming out of from their own angle, and it makes it better.

Dan Shappir [00:46:15]:
Yes. Yeah. I I would also argue that in the power dynamics, you know, the $1,000,000,000,000 company probably has more power than a couple of farts arguing about this thing in in some parts somewhere.

Bruce Lawson [00:46:30]:
With 3 parts. Yeah. With 3 farts then.

Charles Max Wood [00:46:36]:
Are we back to that Fard app or the 50,000 Fard apps?

Bruce Lawson [00:46:39]:
Yeah. But but what what you say about krone capitalism is quite interesting, Chuck, because we have to remember as well that Google paid Apple 20,000,000,000 to be, the search provider on iOS. Mhmm. So the idea that these are 2

Charles Max Wood [00:47:00]:
more cronyism so much as you see them supporting campaigns of

Bruce Lawson [00:47:05]:
politicians. Cronyism.

Charles Max Wood [00:47:08]:
Yeah.

Bruce Lawson [00:47:08]:
I didn't say cronyism. I'm just looking up. No. You bet. But it's people people try and paint it as a sort of battle between these 2 behemoths like alien predator, Godzilla Right. Is the other one. It's it's a much more nuanced than that.

Charles Max Wood [00:47:24]:
Totally.

Bruce Lawson [00:47:25]:
Go going back to what Dan said earlier, unless, lest people what what normal person cares about regulation. But, in the EU, the people who are designated as gatekeepers, it's not only Apple and Google. Whichever company runs TikTok, ByteDance, is it? They are a gatekeeper. Whatever Facebook's called today is a gatekeeper. It is an attempt to stop any of the major digital players distorting the market to allow smaller companies to compete fairly. I think that's a good thing. It can't be

Charles Max Wood [00:48:11]:
perfect. Absolutely.

Bruce Lawson [00:48:13]:
There's nothing perfect apart from me.

Charles Max Wood [00:48:15]:
We're kind of getting toward the end of the our time, and I just wanna just nail things down. So with open web advocacy, is that the mission then to open up the web space to competition, Or is it these particular fights? Or how how does that work?

Bruce Lawson [00:48:32]:
We we want to be able to make web apps that will work cross device because the web is a mature platform. It works everywhere now. It should work everywhere now, but it's being prevented from nearly everywhere now. Yeah. So we want to be able to make web apps, and that's because we're developers. You know, none of us are I know far more about regulation than I ever wanted ever to know. You know, we're a couple of us had a company in in China and couldn't use couldn't use iPads because one particular, API is only allowed on a native app. It's not allowed from Safari, but it could use Android, and that was a problem.

Bruce Lawson [00:49:25]:
I got tired of making a PWA and having to wrap it up in capacitor or something like that to go into the App Store. It was just an unnecessary extra step, which meant, periodically, I had to download 48 exabytes of something called Xcode in order to cajole it to do something which was

Charles Max Wood [00:49:48]:
Could sleep better. Easier. Yeah.

Bruce Lawson [00:49:52]:
Other people, they they they wanna buy web apps because they work for smaller companies that don't have a colossal budget, you know, to to a Google or Microsoft or Netflix to even to a Wix, it it it's it's not that expensive to have a team who test iOS, a team who test Android, maybe a React Native team, and then other people to walk around with buckets to collect those people's tears every time they have to use React Native. But to a smaller company, that's prohibitively costly.

Dan Shappir [00:50:31]:
Oh, Bruce.

Bruce Lawson [00:50:35]:
Yeah. Down down the nights where we first met, we were we we used to have to empty the buckets out over the over the wall into the porch.

Dan Shappir [00:50:43]:
Yeah. They they were they were they were well compensated for their tiers, though.

Bruce Lawson [00:50:49]:
Yeah. Yeah. And that's another thing. To smaller companies, hiring loads of people who are React Native devs is a lot more expensive than hiring people who are competent HTML, CSS, and JavaScript devs. And, also, you don't have to have, you know, you don't have to pay for $99 a year Right. For a developer license. You don't have to have a Mac and an iOS device and an iPad for testing if you're a web developer. Most of us do, but it's not required simply to put put, put pixels on a screen.

Charles Max Wood [00:51:28]:
So so I imagine. Gotcha. So what do because it's you know, all all the things you're talking about, right, with having things work everywhere or mostly everywhere and, you know, be able to move forward without worrying about having to be compatible with the lack of things in a safari or similar. What do we do? Like, so me, you know, developer dude working my day job. Right? What what can I do then to to make this work, or what can my company do? Right?

Bruce Lawson [00:52:05]:
I suppose in the states, what you could do is, perhaps rein back your personal aversion towards government regulation because I know you've got that DOJ, versus Apple thing coming up. I don't know the details of that because American regulation is it's too much for my tiny brain with 50 piece mates and people

Charles Max Wood [00:52:29]:
don't know if anybody follows all of it.

Bruce Lawson [00:52:33]:
It's basically to educate yourself. You know? There's a lot of people for whom Apple are still, sort of shining beacon of all things good. That that's being

Charles Max Wood [00:52:47]:
targeted. Right?

Bruce Lawson [00:52:48]:
They and many people are, but you'll also find many people aren't. And as Dan said, you know, there's even web developers. Couple of months ago, somebody said to me, I had no idea that Chrome on iOS was not the same as Chrome everywhere else. It's like, you're a web developer, dude.

Charles Max Wood [00:53:04]:
Right.

Bruce Lawson [00:53:05]:
So you just tell people. You know, make make them aware that there are other things in the world than iOS and Android native apps.

Charles Max Wood [00:53:18]:
So then

Dan Shappir [00:53:19]:
Is there is there a way people can actually actively support the web, advocacy group?

Bruce Lawson [00:53:25]:
You could. Yes. You can retweet or retoot our stuff or even relinked in our stuff. He said

Charles Max Wood [00:53:34]:
to we're back to the fart apps.

Bruce Lawson [00:53:36]:
I'm British. A couple a couple of the people on the team are devoted full time on this, so you could, if you would, if you want to, help pay their salaries. I I'm not salaried. I I do this because it's a a mission, but and also these guys couldn't work because it was COVID time, and so they spent many hours writing the reports and drawing the graphs, etcetera. You can support them, but, basically, what you can do is just support people who are talking about this. And if you live in a country like Brazil, Korea, India, Israel. Places where you have regulators that could be doing something about this because you're a big market, whether, like, Israel, you're a rich developed economy, or somewhere like Brazil, you are a rich developed economy, but you're also massive. You know, ask what your regulators are doing about this.

Bruce Lawson [00:54:50]:
Yep. Write and write a blog post.

Charles Max Wood [00:54:53]:
I guess I guess this kind of, you know, writing a blog post and and, you know, being informed as to who's working on it, you said also to educate yourself. And so I was wondering, you know, open web advocacy group, I'm you sounded like you were putting out reports and statistics and things like that. So where do people find that stuff? And are there other organizations that are putting out good information too so that I can get informed?

Bruce Lawson [00:55:16]:
There's other organizations. Yeah. Completely unaffiliated from us, says Tim Sweeney from Epic Games, who writes a lot of stuff about this. I did, DHH from 37 signals, whatever they're called. I I I disagree with him about mostly everything, but on this on this stuff, I don't disagree with him at all. But, again, you know, hopefully, that shows people that this is this is fundamentally a technical issue that we're having to fight through regulators because there's no other venue. It isn't a socialist versus free marketing. It isn't a communist versus libertarian thing.

Bruce Lawson [00:55:59]:
It's, it's a technological issue that, individually, we developers haven't been able to persuade the bad guys at Google and Apple and previously Microsoft to amend their ways. And the only people who are bigger are governments. Even if in many ways they're not bigger than a $2,000,000,000,000 company. You know, it shouldn't have come to this. It's a shame that it's come to this, but it has. And we are where we are. And, just spreading the word around, you know, amplifying our voices, helping out where you can, where there will be other fights in the future, like the 10 days till PWAs die when we basically had a team of volunteers just running, keeping the website up, designing and coding up a website in record time, sifting through, submissions that came through our form and forwarding them onto the EU, making sure we didn't forward stuff on with confidential information, for example. You know, you you can drop in and help us out from time to time, but or you can help pay, those 2 guys' salaries.

Bruce Lawson [00:57:14]:
Alright. Good deal. You know? Just cross your fingers and hope we win. If you can't do anything else, just moral support is good

Charles Max Wood [00:57:20]:
too. Yep. Is there a website for the group?

Bruce Lawson [00:57:22]:
Open web advocacy.org.openhyphen webhyphenadvocacy.org. Yes. It's a mouthful, but we invented it before we really thought through a social media strategy. It literally was 2 guys in Australia emailed a mutual friend saying, do we know anybody in the UK who'd be prepared to go to the UK regulator to Mhmm. Make them aware about PWAs? Because the UK were thinking Android versus iOS, and we wanted to say, well, actually, there's this third way that works everywhere. And the mutual introduced me to these 2 guys. I introduced him to a friend of Michael Stewart, who's a drinking friend down the pub. We worked together on and off for 15 years.

Bruce Lawson [00:58:11]:
We set up a little group. It's grown organically. Everybody is just a developer. There's no most of us have never met in real life. We're just people who want to make sure that the web has, a future across all devices for everybody. As so and called Timbo himself said, this is for everyone. Awesome.

Charles Max Wood [00:58:34]:
Alright. Well, let's go ahead and do our picks. Yeah. Hopefully, people are getting some ideas on how they can help out with this. And, yeah, I mean, these are changes I'd like to see. And, anyway, Dan, do you wanna start us off with our picks?

Dan Shappir [00:58:51]:
Yes. Why not? Not a lot of picks, this time. A few technical ones. So it turns out that there were 2 as of the time of this recording oh, yeah. You know, there's actually one thing which isn't exactly a pick, but it's a bit of news. Today was my first day at a new company that I work at. Last week, I left, Next Insurance after two and a half years there. I only have good things to say about them, but, it was time for me.

Dan Shappir [00:59:24]:
And now I've joined as the principal engineer at company called Sisense. It's a company that does, data intelligence and and data analytics and stuff like that, creating all sorts of tools and services. They are working on providing their tools as an SDK that can be embedded within others services and solutions and whatnot, and I'm to be a principal So that's kind of a bit.

Charles Max Wood [01:00:01]:
Congratulations.

Bruce Lawson [01:00:02]:
Congrats, man. Can't believe you've been at Next for two and a half years. It feels like you only just joined. Wow, man. We're getting old.

Charles Max Wood [01:00:09]:
Yeah. Is next. Next was last.

Dan Shappir [01:00:15]:
Yeah. That's true. Anyway, so the 2 the few technical picks as well. The first one so there were a couple of conferences, last week as the time of as of the time of this recording. There was, Google IO, which is Google's big technical conference. And also, more or less the same time, there was React conf where, Bruce's favorite, framework shows off its new developments and capabilities. And I'm kidding. But, there were a couple of things that were, released, and I would like to mention 2 of them.

Dan Shappir [01:00:56]:
So over at Google IO, our our my friend, Barry Pollard, presented at Google IO for the for the first time. We have had him on the guest on the show. He's a great guy. And he spoke about, what's it called? It's called, the, the name escapes me right now. It's it's it's a thing called speculation rules. It's a way to it's a way to specify within, the HTML itself, which other pages and resources should be prefetched, preloaded, and even pre rendered. Now some of these capabilities have it sort of existed before as resources. But this mechanism is much more sophisticated and generally all around better.

Dan Shappir [01:01:52]:
And what it enables are websites that appear to load instantly. Especially if you're building a multi page application, you can achieve a performance when navigating between pages that's on par and potentially even better than single page applications, which is, really great. So and when you couple that with other technologies like, view transitions and and stuff like that, I think we're going to be seeing an MPA renaissance, potentially. Yeah. It'll be interesting to see. So that would be my first pick, and there's, so as I said, the the link to that talk would be my first pick. My, second pick is a talk from ReactConf. Well, actually, it's a talk about the technology presented at ReactConf.

Dan Shappir [01:02:43]:
It's, it's, from our friend, Jack Herrington, used to be a host on React ground up. He has this channel on YouTube called Blue Collar Coder where he presents a lot of technologies, web technologies, and gets into the nitty gritty. And he did a video and going in-depth on the new React compiler. And this is an interesting technology that basically, kind of optimizes your React code. So you write React code as most developers do, which is kind of inefficient. And then that mechanism kinda turns it into fine tuned, highly efficient React code. At least that's the goal. And I will add that I'm trying to get the relevant React people to come on this show to talk about that technology because I think it should be interesting.

Dan Shappir [01:03:45]:
So, Jack's video is my second pick for today. And my final pick is because, Bruce, at the very beginning of, this, show, you mentioned the fact that you used to work on standards. And whenever I think about standards, I'm always reminded of the design notes section in the HTML spec. The spec the actual spec for HTML itself. And I'll read this part because it's worth reading out every once in a while. And it goes as following. It must be admitted that many aspects of HTML appear at first glance to be nonsensical and inconsistent. And I stress this is from the HTML spec.

Dan Shappir [01:04:36]:
HTML, its supporting DOM APIs, as well as many of its supporting technologies have been developed over a period of several decades by a wide variety of people with different priorities who, in many cases, did not know of each other's existence. Features have thus arisen from many sources and have not always been designed in an especially consistent ways. Furthermore, because of the unique characteristics of the web, implementation bugs have often become de facto and now dearerized standards as content is often unintentionally written in ways that rely on them before they can be fixed. Despite all this, efforts have been made to adhere to certain design goals. These are described in the next few sec subsections. So I this is such a great piece this is such a great piece of content to put in the actual HTML spec, and I really love it. And there there is candidness and forthrightness about the state of things as they are, which doesn't in any way decrease the fact that the web itself is one of the greatest achievements of the human race, in my opinion. And Here.

Dan Shappir [01:05:51]:
It might be for today.

Bruce Lawson [01:05:53]:
I'm I'm gonna butt in as a guest and make a pick because, one Butt away,

Charles Max Wood [01:05:57]:
man. Butt away.

Bruce Lawson [01:05:59]:
Fart again. I see. One of the things they've done one one of those design principles that it that passage alludes to is when you're writing the specs, it's called the priority of constituencies. And it says, you always considered users over web authors, over implementers, over theoretical purity. So in other words, the people who count most are the end users, and the next most important constituency are developers. And then the next most constituency are browser manufacturers. And only then it's theoretical purity. And my picks are web standards picks on the frontiers to front end guys.

Bruce Lawson [01:06:44]:
Dan mentioned them earlier. Multipage view transitions are coming soon to, shipping Chrome. This is, for a multipage application or what we old timers call a website with lots of different URLs. You'll be able to transition between them without the page going white and refreshing. And, again, it's just bringing a UX feature from the world of apps to the web without all the nonsense of having to try to do SPAs. It's gonna be a game changer.

Dan Shappir [01:07:21]:
We have we actually had Norm Rosenthal, who's the guy who's working on this spec as a guest on this show talking exactly about view transitions. I I don't remember the number of the episode, but we should probably link to it.

Bruce Lawson [01:07:34]:
Yeah. Love me a bit of Noah Rosenthal. He was at with when,

Charles Max Wood [01:07:38]:
when beyond. Is this does this go beyond sort of the HTMX or turbo approach?

Dan Shappir [01:07:46]:
It it has nothing to do with that. It's basically you can specify in CSS and HTML. You don't well, you need a potentially little bit of JavaScript. But, ideally, just HTML and CSS, you can create animated transitions between pages when you're navigating.

Charles Max Wood [01:08:03]:
Oh, interesting.

Dan Shappir [01:08:04]:
Okay. So so think think about app experiences when when you're clicking something and, like, you know, like a Netflix type experience or an Amazon type experience. When you're clicking, let's say, something in Netflix and that thing expands, like, you're going to a specific movie and and that item expands to cover. So you have so it's not like you're you you you don't see the transition. It kind of animates from one page to the next. Okay.

Bruce Lawson [01:08:34]:
And it's, it's it's a game changer because somebody who comes with a browser that doesn't yet support view transitions, it just works as it as before. Nothing breaks. It's so nobody gets a worse experience than they do now, and gradually, everybody gets a better one. There's also, newly come to baseline, which is, a new initiative. I don't know whose initiative it was, but you see all over the place on MDN. Baseline is a category of stuff that, as a jobbing web developer, you can expect to be supported. So it's it's sort of your if it's in baseline, I can use it. That's what I tell people I wanna mentor.

Bruce Lawson [01:09:14]:
Newly in baseline is the has, pseudo class, which allows you to say, if this form has an input that is invalid, put a red line around the whole form or something.

Charles Max Wood [01:09:30]:
Oh, interesting.

Bruce Lawson [01:09:32]:
A parent selector. That's everywhere now. It's much more than a parent selector. In fact, I just wrote a blog post an hour before we joined about, what I call has the god selector because it's omnipotent and awe inspiring. There's also, in baseline the popover API. That's when you can say, here's a button, popover target equals foo, and a div id equals foo and without any JavaScript at all, when you hit that button, foo will pop up. By default, it's centered vertically and horizontally. You can with CSS, you can give it an opaque backdrop.

Bruce Lawson [01:10:12]:
You can change you can do anything with it that you can do in CSS. When you hit the button again, the popover disappears. It's also got lite dismiss with the esque key built in, just given to you for free for browsers. And that's everywhere now, so I've been using that a great deal in a recent project. And coming tuned to soon to CSS is, masonry layouts. There's been really interesting conversations between, WebKit and Chrome about different ways to achieve this. Each party believes that it's necessary to add to the web platform, but there are differences of opinion about how it should be, implemented. Is it a kind of grid? Is it a layout method of its own? I'm too stupid to know what's right or wrong because it's all about how hard it is to implement in browsers, etcetera.

Bruce Lawson [01:11:10]:
Excuse me. But what I really like is the conversations between all the interested parties Because not only is it really well thought out, people are arguing their case, but in a really mannered, decent way. But all along, people are saying, if we do it that way, that's too complicated, and it doesn't even matter if Masonry supports it at all if developers don't understand this. We they're they're always thinking along that priority of constituency. Let's if we make it easy for us as browser manufacturers, do we make it too hard for developers to actually do the thing we're trying to allow? And it's just a really great GitHub issue of, yeah, but what about this? Maybe you're right. What about this? I I I'm I'm absolutely convinced that they're going to arrive at the best solution. I don't know what it is because these people have mighty brains, but it's so refreshing to see for those of my

Dan Shappir [01:12:12]:
Anchor positioning is also coming, which is

Bruce Lawson [01:12:15]:
Coming soon. Yeah. Do you wanna describe what that is, Dan?

Dan Shappir [01:12:18]:
As I recall, it's basically the ability to, in in a smart way, position elements relative to one another. So for example, we were talking about popovers, and you want the popovers to be positioned relative to some other element on the page. You can use anchors in order to achieve it. You know, we spoke about the fact that both

Charles Max Wood [01:12:37]:
like a tooltip instead of a Yeah.

Dan Shappir [01:12:40]:
I'm I'm working And it will be probably positioned within the the viewport, which is really hard to do. And and by the way, you know, as I Bruce mentioned that both he and I worked at Wix, like, half of Wix code, tons and tons of code was about implementing behavior kind of like anchor positioning in using just JavaScript and CSS, the existing the current JavaScript and CSS. So, theoretically, it could get rid of half of Windows code. So so I'm really excited about that. And another thing that I think Carson Gross from HDMX mentioned when he was on the show, the ability to move elements in the DOM without resetting them. So think about the fact that you can move a video from 1 page to another from one part of the page to another part of the page, and the video will continue playing and not reset itself to the beginning of the video, stuff like that. Really, a lot of exciting things are happening and making the browser and the web itself much more of an application platform without needing to resort to really sophisticated frameworks.

Bruce Lawson [01:13:51]:
And also without having to resort to crusty old component libraries, I was doing some research for my last job. And, I looked at 3 different component libraries, which were had an accordion component, which were full of crusty JavaScript that wasn't listening to the it wasn't checking whether you were hitting space or enter to open a thing and wasn't setting all the accessibility property properties correctly. For the last 4 years, 5 years, in HTML, we've had the details element where this is just given to you with all of the accessibility mappings built into the browsers for free. It's time if you haven't looked at the component libraries you're using for a couple of years, it's time to have a look and see how much of this stuff you can retire because it's technical debt on yourself, and it's more for your user to download, so it's hurting performance.

Charles Max Wood [01:14:49]:
Yeah. I've I discovered the details. So I was working on an application for my client, and, they said, wouldn't this be easier in a details element? I was like, what's that? And I went and looked it up, and I was like, oh, damn. I'm not writing this ever ever again.

Bruce Lawson [01:15:06]:
And I'll tell you what, Chuck. I, you know, I live and breathe HTML. I can't blame anybody for not following it because so much is going on in the web standards. And one of the reasons why I finished my last gig, I'm starting a new one next month, is I got tired of filling my brain with stuff about node and Docker and all the ephemera of build process and deployment process, and it was blocking my ability to actually understand what was being given to me for free. I I just couldn't absorb the information, so I've chosen to to go back to my roots and just go back to the, the frontiest of the front end stuff.

Charles Max Wood [01:15:53]:
Yep. Well, it sounds like there's a lot of cool stuff coming to the web platform, so maybe we should see if we can use it everywhere. That that'd be real cool.

Bruce Lawson [01:16:01]:
And we go around in a back to where we started like an ouroboros of love.

Charles Max Wood [01:16:07]:
Right. I'm gonna jump in with my, picks real quick. We're already past time. There's another call I wanted to get on. It's a webinar presentation thing. So it's it's running without me, which is fine. But, anyway, no. This is fascinating stuff.

Charles Max Wood [01:16:21]:
I I don't have a problem sticking around for a few minutes. But, my pick so I usually do a board game pick. And so I'm gonna pick a game called death eaters rising if you've read or watched the Harry Potter movies, read the books. Effectively, it's a game where you build a team of wizards to fight off Voldemort's rise. And so Voldemort shows up about halfway through the deck. You stick him in halfway through, and then you just play until he shows up. And then if you've defeated enough death eaters, then you can you could defeat Voldemort. And, you play it with the cards, and the wizards can all take damage and right.

Charles Max Wood [01:17:06]:
And you can heal each other. And, anyway, it's it's a fun game. And so you have your team and you're working together with the other players that have their teams. BoardGameGeek weights it at 2.73 or 2.37. Sorry. So, that's pretty approachable. It's it's a little bit on the complicated side for people who are just casual gamers, but you can definitely pick it up, and it's a fun game. You can play it 2 to 4 players.

Charles Max Wood [01:17:33]:
We found that at 4 players so you have a starting wizard. At 4 players, somebody gets a wizard that's not ideal for the team. And so we usually just play it with 3 people. But if one of the kids wants to play it and it makes it 4, then we just make it 4, and then we do what we can to help the other personnel. Let's see. One other thing that I've been playing with lately, I usually don't do too many, deeply technical picks, but, I've been playing a lot with Vite lately and while it's magical, like I'd get lost managing, Webpack or what have you. And so I I didn't always love having to use Webpack. I switched over rails has import maps built in, and that mostly works most of the time.

Charles Max Wood [01:18:24]:
But what I found is that Beat gave me a couple of capabilities like hot module reloading and stuff that import maps just didn't quite. You didn't have it. And then some of the older libraries, their module setup just wasn't quite like, you had to play with it a little bit to get it to work, and beat seems to just mostly work. So I've been pretty happy with that. And, Yeah. I I think that's all of the picks that I have. So let's go ahead and wrap it up. Thanks for coming, Bruce.

Charles Max Wood [01:18:56]:
This was a ton of fun.

Bruce Lawson [01:18:57]:
Thank you both for having me and, listening to me. And people on the other end of this whom I can't see, thank you too.

Charles Max Wood [01:19:03]:
Alright. Well, till next time, folks. Max out.
Album Art
New Frontiers in Web Platform Development with Bruce Lawson - JSJ 634
0:00
01:19:09
Playback Speed: