Dmitrii Profile picture
Oct 26, 2023 7 tweets 2 min read Read on X
Web Components are *not* using the platform. It's easy to show. They keep changing the rules of what "the platform" means, but they are still not using it, unlike literally everyone else.

Ironic because they are in a very literal sense a part of the platform themselves

1/7
Web Components: The only tech that struggled to create form components that would be seen by the browser and sent as a part of the payload.

Had they used the platform, this would be a non-issue. So they changed the rules:

2/7web.dev/articles/more-…
This didn't help much. In 2023 there's still an open issue that a web component cannot be a submit button:

Had they used the platform, like everyone else, this would be a non-issue.

They are changing the rules on this, again:

3/7github.com/WICG/webcompon…
developer.mozilla.org/en-US/docs/Web…
Web Components are HTMLElements. So they cannot subclass, or encapsulate SVG, or be used inside SVGs

Had they used the platform correctly, this would be a non-issue, as it is a non-issue, you guessed it, for everyone else.

They are not changing the rules on this (yet?)

4/7
In 2022 Web Components Community Group released their first status report:

It shows that Web Component need to change the rules 20 more times. Literally none of them are issues for projects that use the platform. Including the critical ones like ARIA

5/7w3c.github.io/webcomponents-…
And as some proponents of "use the platform" decry the increased usage of JS on the web, Web Components are continuously changing the rules by requiring more and more JS for them to be able to do work that literally everyone else can already do.

6/7
Next time a Web Component proponent asks you to "use the platform", tell them: "Already am. Are you?"

7/7

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Dmitrii

Dmitrii Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @dmitriid

Mar 21, 2024
A short thread on Googlers congratulating themselves an patting themselves on the back, a thread.

@sarah_edo Director of Eng Web iOS etc. announced that Angular is merging with Google's internal framework called wiz:

1/
Image
In the thread she made the following claims: that wiz powers Search, Workplace and Youtube and that the merge will bring impressive improvements to Angular's performance due to wiz:

innovative

2/




Image
Image
Image
Make no mistake, the amazing performance of Youtube looks like this:

3 seconds to render an empty page. 11 MB of JS, 2.5 MB of CSS, Lighthouse screams at every Youtube embed and suggests you use third-party embed scripts etc.

Keep this in mind as you read about this
3/


Image
Image
Image
Image
Read 13 tweets
Feb 17, 2022
@lil_htlr @kleschby Я не то, чтобы спец, у меня по этому поводу strong opinions :D

Итак.

*Концепция* веб-компонентов такова: зачем плодить еще больше все больше новых фреймворков, которые, по сути, создают одни и те же компоненты? Можно часть необходимого функционала впилить в браузер. 1/
@lil_htlr @kleschby Тогда если кто-то создаст, например, date picker или там menu, которые все нравятся, то их можно будет использовать напрямую, не подтягивая сторонние фреймворки.

То есть ты создаешь «черную коробочку» из JS и CSS, и используешь, как хочешь, не боясь, что она поломается 2/
@lil_htlr @kleschby Дополнительной концепцией было «userland сможет быстро проводить итерации над требуемыми вещами, стандартизировать их, а потом их можно будет постепенно втягивать в браузер», а так же «можно будет стандартным способом расширять встроенные компоненты типа select'ов и input'ов», 3/
Read 20 tweets
Nov 8, 2021
A story of

- a design change for the sake of a design change
- by people who couldn't care less
- by people who clearly never use the app they change

featuring @AmazonKindle @KindleHelp

1/
Imagine, when all you have is a 27" 5K screen where you make these mockups. Who cares to look at them on an a real screen? No one.

Most changes to Kindle are done by "designers" who have never seen a world outside their infinitely zoomable mockups

2/
They removed the list view.

So, instead of easily readable book names you now have to remember what a book's cover is and/or try to decipher the name fro the grid of images.

3/ A screenshot of the Kindle app that shows a grid of book cov
Read 11 tweets
Aug 7, 2021
Let's talk about the Web, UIs and layout.

I often hear: well, it's an amazing layout system. If there's anything lacking, show me anything that works under the same constraints: having to work with multiple screen sizes and adapt to them seamlessly.

Well, a thread🧵

1/
Let's start with this: the whole idea of "we have a web-site, and it can display itself differently in a desktop browser and in a mobile browser" is literally nothing but an extension of CSS Zen garden: csszengarden.com

The idea is as old as CSS itself:

2/
You have a website, and just by changing CSS you can make it look and feel completely differently. Here's CSS Zen Garden with various CSS applied.

It works as well as you'd expect: some manage to do it very well. Some manage to do it poorly. And some don't manage at all

3/ CSS Zen Garden with a subdu...CSS Zen Garden with a stark...CSS Zen Garden with contras...
Read 15 tweets
Sep 15, 2020
A small unstructured mini-thread/mini-rant on GraphQL.

I’ve now completed server prototypes for roughly the same functionality in C#, Java, Go (twice), Elixir, and nodejs.

GraphQL exemplifies everything that’s wrong in the industry :D

1/
First, it’s supposed to bring together data from different sources, right?

All GraphQL libraries have no proper examples of that. “Let’s create an array of values and serve that”. No one ever does that in real life.

As a result in reality everything is double the code 2/
Why? Because you get your data from an external service. And usually you present this data in an only slightly different way in GraphQL.

External service may provide a client with a contract id, but you present a client with a full contract from another external service 3/
Read 22 tweets
Oct 12, 2019
If you follow @troyhunt and @lukew you know how bad things are around passwords, password forms, and password requirements. At the same time you're thinking: "it can't be *that* bad, can it?"

Oh, boy. A thread with nine examples

1/12
My laptop was stolen. So I decided to go through ~300 accounts stored in my 1password looking for weak passwords, 10-year old passwords etc. And updating them.

I updated ~50 accounts. Too bad I was busy changing passwords and not taking screenshots. Here's what I found:

2/12
- If you use a password manager, you will have to copy paste the new generated password into the "New password/Reset password form".

Pasting text will not trigger form validation. You have to at least delete and re-type a character. The most common problem.

3/12
Read 13 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us!

:(