Skip to content
DevMeme
2541 of 7590
Frontend Post #2816 · source on Telegram

Single-page app profile joke about always losing your scroll position

Description

Screenshot of a tweet that shows a mock dating-profile questionnaire rendered in black text on a white background. Bullet-style radio buttons appear as grey hollow circles except where selected, which is a dark-filled circle. The text reads: "I'm:" followed by options "◯ a man", "◯ a woman", and "◉ a single page app" with the last one selected. A second section reads "Looking for:" with options "◯ a man", "◯ a woman", and "◉ my previous scroll position" with the final choice selected. Visually it parodies typical profile forms while poking fun at single-page applications that fail to restore scroll state, a common UX frustration for frontend engineers working with SPAs and virtual DOM frameworks

Comments

16
Anonymous ★ Top Pick Isn’t it poetic? We shipped 400 kB of JS, three hydration passes, and a virtual DOM diff… just so the browser can forget the one feature href solved in ’94: remembering where I was on the page
  1. Anonymous ★ Top Pick

    Isn’t it poetic? We shipped 400 kB of JS, three hydration passes, and a virtual DOM diff… just so the browser can forget the one feature href solved in ’94: remembering where I was on the page

  2. Anonymous

    After 15 years of SPAs promising seamless experiences, we've successfully recreated the browser's back button... poorly. At least our bundle sizes are now large enough to justify those loading spinners we love so much

  3. Anonymous

    Every SPA architect's existential crisis: you can handle complex state management across distributed microservices, implement sophisticated lazy-loading strategies, and optimize bundle sizes to perfection - yet somehow preserving scroll position after a route transition remains the Sisyphean task that haunts your dreams. It's the technical debt that compounds with every 'window.scrollTo(0, 0)' you copy-paste, silently judging your life choices as users rage-quit after losing their place in that infinite scroll feed for the third time

  4. Anonymous

    We shipped SSR, hydration, and micro‑frontends, yet restoring scroll still needs three hooks, a context provider, and a postmortem - window.history.scrollRestoration = 'auto' was the real senior engineer

  5. Anonymous

    SPAs: where preserving scrollY takes more ceremony than a distributed transaction commit

  6. Anonymous

    We reinvented navigation with a router and hydration, then filed a P3 because nobody wired window.history.scrollRestoration to anything

  7. @iksunen 5y

    Какой-то профессиональный юмор

    1. @lord_nani 5y

      Наоборот - обычного потребителя пост

      1. @iksunen 5y

        Ну, сколько я ни сталкивался с SPA (в качестве потребителя), не очень понимаю, что за проблема с previous scroll position имеется в виду. Буду рад объяснению

        1. @lord_nani 5y

          Листаешь посты в группе телеграмма уже 3 часа, случайно нажал на кнопку «промотать до последнего поста»

          1. @iksunen 5y

            Спасибо! Хм, действительно валидный use case, для него уже есть решение? Звучит тривиально, не удалять значение последнего прочитанного поста, если пользователь нажал "промотать до последнего поста"

            1. @lord_nani 5y

              Много чего можно придумать, просто пометка поста последнего увиденного перед нажатой кнопкой «вниз» и какой-либо якорь к нему. В 9gag приложении только полгода назад появилась фича, которую требовали уже года 3

              1. @iksunen 5y

                Ну телега вроде как и так хранит значение последнего увиденного поста, то есть решение — просто не удалять его, если пользователь бросился вниз

  8. @dre1337 5y

    Ахахах

  9. @lord_nani 5y

    И теперь чтобы вернутся в прочитанному посту - нужно пальчиком листать 40 минут

  10. @iksunen 5y

    Да и фича якоря есть, наглядно работает при использовании поиска. В общем, @durov, обрати внимание 😁

Use J and K for navigation