Skip to content
By using Twitter’s services you agree to our Cookies Use. We and our partners operate globally and use cookies, including for analytics, personalisation, and ads.
  • Home Home Home, current page.
  • About

Saved searches

  • Remove
  • In this conversation
    Verified accountProtected Tweets @
Suggested users
  • Verified accountProtected Tweets @
  • Verified accountProtected Tweets @
  • Language: English
    • Bahasa Indonesia
    • Bahasa Melayu
    • Català
    • Čeština
    • Dansk
    • Deutsch
    • English UK
    • Español
    • Filipino
    • Français
    • Hrvatski
    • Italiano
    • Magyar
    • Nederlands
    • Norsk
    • Polski
    • Português
    • Română
    • Slovenčina
    • Suomi
    • Svenska
    • Tiếng Việt
    • Türkçe
    • Ελληνικά
    • Български език
    • Русский
    • Српски
    • Українська мова
    • עִבְרִית
    • العربية
    • فارسی
    • मराठी
    • हिन्दी
    • বাংলা
    • ગુજરાતી
    • தமிழ்
    • ಕನ್ನಡ
    • ภาษาไทย
    • 한국어
    • 日本語
    • 简体中文
    • 繁體中文
  • Have an account? Log in
    Have an account?
    · Forgot password?

    New to Twitter?
    Sign up
wycats's profile
Yehuda Katz 🥨
Yehuda Katz 🥨
Yehuda Katz  🥨
Verified account
@wycats

Tweets

Yehuda Katz  🥨Verified account

@wycats

Tilde Co-Founder, OSS enthusiast and world traveler.

Portland, OR
yehudakatz.com
Joined August 2007

Tweets

  • © 2018 Twitter
  • About
  • Help Center
  • Terms
  • Privacy policy
  • Cookies
  • Ads info
Dismiss
Previous
Next

Go to a person's profile

Saved searches

  • Remove
  • In this conversation
    Verified accountProtected Tweets @
Suggested users
  • Verified accountProtected Tweets @
  • Verified accountProtected Tweets @

Promote this Tweet

Block

  • Tweet with a location

    You can add location information to your Tweets, such as your city or precise location, from the web and via third-party applications. You always have the option to delete your Tweet location history. Learn more

    Your lists

    Create a new list


    Under 100 characters, optional

    Privacy

    Copy link to Tweet

    Embed this Tweet

    Embed this Video

    Add this Tweet to your website by copying the code below. Learn more

    Add this video to your website by copying the code below. Learn more

    Hmm, there was a problem reaching the server.

    By embedding Twitter content in your website or app, you are agreeing to the Twitter Developer Agreement and Developer Policy.

    Preview

    Why you're seeing this ad

    Log in to Twitter

    · Forgot password?
    Don't have an account? Sign up »

    Sign up for Twitter

    Not on Twitter? Sign up, tune into the things you care about, and get updates as they happen.

    Sign up
    Have an account? Log in »

    Two-way (sending and receiving) short codes:

    Country Code For customers of
    United States 40404 (any)
    Canada 21212 (any)
    United Kingdom 86444 Vodafone, Orange, 3, O2
    Brazil 40404 Nextel, TIM
    Haiti 40404 Digicel, Voila
    Ireland 51210 Vodafone, O2
    India 53000 Bharti Airtel, Videocon, Reliance
    Indonesia 89887 AXIS, 3, Telkomsel, Indosat, XL Axiata
    Italy 4880804 Wind
    3424486444 Vodafone
    » See SMS short codes for other countries

    Confirmation

     

    Welcome home!

    This timeline is where you’ll spend most of your time, getting instant updates about what matters to you.

    Tweets not working for you?

    Hover over the profile pic and click the Following button to unfollow any account.

    Say a lot with a little

    When you see a Tweet you love, tap the heart — it lets the person who wrote it know you shared the love.

    Spread the word

    The fastest way to share someone else’s Tweet with your followers is with a Retweet. Tap the icon to send it instantly.

    Join the conversation

    Add your thoughts about any Tweet with a Reply. Find a topic you’re passionate about, and jump right in.

    Learn the latest

    Get instant insight into what people are talking about now.

    Get more of what you love

    Follow more accounts to get instant updates about topics you care about.

    Find what's happening

    See the latest conversations about any topic instantly.

    Never miss a Moment

    Catch up instantly on the best stories happening as they unfold.

    1. Yehuda Katz  🥨‏Verified account @wycats Jan 3
      Replying to @sebmarkbage

      Every reimplementation of <select> on the web since the beginning of time that I have come into contact with has made my experience worse. It got even worse on mobile. Flex was not an improvement.

      2 replies 0 retweets 10 likes
    2. Sebastian Markbåge‏ @sebmarkbage Jan 3
      Replying to @wycats

      Fair but native <select> is also terrible. If we built web with only native components we'd never get a decent experience. That's my point. We shouldn't necessarily rely on people reimplementing. The browsers could do it but they have to try harder.

      1 reply 0 retweets 5 likes
    3. Sebastian Markbåge‏ @sebmarkbage Jan 3
      Replying to @sebmarkbage @wycats

      The status quo is that both browsers and JS ecosystem are doing a poor job. The JS ecosystem often has an excuse because we don't have access to the primitives that are needed. That's not to say that it would be good even if we did. The game theory might not align.

      2 replies 0 retweets 6 likes
    4. Sebastian Markbåge‏ @sebmarkbage Jan 3
      Replying to @sebmarkbage @wycats

      One exception is scrolling and things like position: sticky. That's an area where browsers focused on using their leverage to build one UI component well. (Although they also didn't give us the control to fix it ourselves.) But that's just one of many features that needs fixing.

      1 reply 0 retweets 3 likes
    5. Sean Thomas Larkin (肖恩)‏ @TheLarkInn Jan 3
      Replying to @sebmarkbage @wycats

      Couldn't agree more with Seb here. WC relatively was never what developers wanted but what some browsers wanted to try and work around _them_ needing to solve the above problem. Better primitives are what developers want and need, at the platform level, not API/WC level.

      2 replies 0 retweets 2 likes
    6. Sebastian Markbåge‏ @sebmarkbage Jan 3
      Replying to @TheLarkInn @wycats

      It might be possible for developers to solve this in user space but what we need is not WC/convenience APIs. We need access. Access to compositor threads, access to cache, access to hardware, access to local data, access to OS level UI outside the browser frame...

      2 replies 0 retweets 7 likes
    7. Sebastian Markbåge‏ @sebmarkbage Jan 3
      Replying to @sebmarkbage @TheLarkInn @wycats

      These are hard problems to solve while also retaining the security model of the browser. Therefore it is probably *easier* for the browsers to just do it themselves.

      2 replies 0 retweets 2 likes
    8. TreyScript‏ @treshugart Jan 3
      Replying to @sebmarkbage @TheLarkInn @wycats

      I think these two ideas are orthogonal. Objectively, WC have a legitimate use case for many and I think we'll see more of this as time goes on. Exposing other useful APIs, such as access to hardware, can co-exist. Maybe in terms of priority the latter would have been more useful.

      2 replies 1 retweet 6 likes
    9. Rob Dodson‏ @rob_dodson Jan 3
      Replying to @treshugart @sebmarkbage and

      I agree with Trey here. Even with all of that access, you'd still need a way to tell the system that you're making a new element type. WC let you express that. It's literally just telling the parser to instantiate a class. the class can do whatever.

      3 replies 0 retweets 4 likes
    10. Yehuda Katz  🥨‏Verified account @wycats Jan 3
      Replying to @rob_dodson @treshugart and

      It can do whatever, originally asynchronously, and nobody considered that a problem for EWM. More concerningly, you're forced to buy into the WC framework's DOM isolation story in order to get the benefits of CSS isolation.

      1 reply 0 retweets 5 likes
      Yehuda Katz  🥨‏Verified account @wycats Jan 3
      Replying to @wycats @rob_dodson and

      In practice, all frameworks have alternative DOM isolation stories than WC but badly want CSS isolation. In practice frameworks want to intercept "anytime someone clicks a link on the page" even if using Shadow DOM for CSS isolation.

      6:54 PM - 3 Jan 2018
      • 4 Likes
      • @pluma@mastodon.social Greg Stroup Chris Coyier TreyScript
      2 replies 0 retweets 4 likes
        1. New conversation
        2. Yehuda Katz  🥨‏Verified account @wycats Jan 3
          Replying to @wycats @rob_dodson and

          That doesn't mean frameworks are breaking DOM isolation. It means they offer a different isolation paradigm (based on declarative constructs and userspace components) for DOM but can't always accomplish that for CSS (because of light DOM leakage)

          1 reply 0 retweets 2 likes
        3. Yehuda Katz  🥨‏Verified account @wycats Jan 3
          Replying to @wycats @rob_dodson and

          And frameworks use the non-isolated DOM as a substrate to building isolation paradigms on top. This is all fine but the style/event conflation set frameworks back years from using Shadow DOM for style isolation. Makes me sad.

          2 replies 0 retweets 2 likes
        4. Rob Dodson‏ @rob_dodson Jan 3
          Replying to @wycats @treshugart and

          There's a good thread where a member of the shadow dom team tried to explain why style isolation is coupled to DOM isolation. Let me try to dig that up...

          2 replies 0 retweets 2 likes
        5. Rob Dodson‏ @rob_dodson Jan 3
          Replying to @rob_dodson @wycats and

          https://github.com/whatwg/dom/issues/531#issuecomment-341609348 … I don't actually work on the rendering engine so I can't argue the validity of his point. But wanted to share the information.

          2 replies 0 retweets 3 likes
        6. Sebastian Markbåge‏ @sebmarkbage Jan 3
          Replying to @rob_dodson @wycats and

          Meh. Style isolation is nice but not the reason the web is trailing in UX.

          1 reply 0 retweets 3 likes
        7. Rob Dodson‏ @rob_dodson Jan 3
          Replying to @sebmarkbage @wycats and

          I think you hit on it earlier. Exposing lower level APIs in a way that doesn't mess up the security sandbox is tricky. But folks are working on it, just maybe not as fast as we'd all like :)

          1 reply 0 retweets 4 likes
        8. Yehuda Katz  🥨‏Verified account @wycats Jan 3
          Replying to @rob_dodson @sebmarkbage and

          In practice, the speed of the work is really slow and people can't ever help themselves from trying to avoid footguns at the same time. New primitives should expose the low level and leave ergonomics to libs using the primitives.

          1 reply 0 retweets 0 likes
        9. Yehuda Katz  🥨‏Verified account @wycats Jan 3
          Replying to @wycats @rob_dodson and

          If you try to build ergonomic primitives you go slow and don't expose the needed stuff to frameworks anyway. Worst of both worlds.

          0 replies 0 retweets 1 like
        10. End of conversation
        1. New conversation
        2. Justin Fagnani‏ @justinfagnani Jan 3
          Replying to @wycats @rob_dodson and

          In practice frameworks can do that because mouse events cross the shadow boundary, what's the problem? CSS and DOM isolation are pretty intertwined on the implemention side. I think it's good DX that we don't have to many kinds of scopes that interleave down the tree.

          1 reply 0 retweets 0 likes
        3. Yehuda Katz  🥨‏Verified account @wycats Jan 3
          Replying to @justinfagnani @rob_dodson and

          Keep telling yourself that and we'll keep not using WC, which breaks your utopian future. Or we can fix it. I vote for that.

          0 replies 0 retweets 2 likes
        4. End of conversation

      Loading seems to be taking a while.

      Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.

        Promoted Tweet

        false

        • © 2018 Twitter
        • About
        • Help Center
        • Terms
        • Privacy policy
        • Cookies
        • Ads info