donatj 43 minutes ago

I love this. I miss lighthearted things like this being more of the norm than the exception. Xeyes on 90s Linux, cowsay, whatever that was that made snow gather on top your windows (Xsnow?). Heck, I even have fond memories of Björks website having an animated bee that would follow you around. I think he was named Meesta Bee or something similar.

Everything is so dang serious all the time, I miss the sense of levity and wonder that used to follow tech around.

  • BoxOfRain 33 minutes ago

    Until recently a must-have in my .bashrc was `fortune | cowsay` but this tripped me up when one of the spicier fortunes was output during a video call with my then-boss, no harm done but I decided to retire it to only personal machines.

    I imagine there's many versions of that story contributing to why these things are less popular than they were.

    • guappa 25 minutes ago

      So repressed :D Is your boss a minor? I doubt it.

psygn89 7 hours ago

Nice! I had an idea that I never coded up. Basically a hamster with a parachute that would fall slowly to the bottom of the page. If you scroll down fast his parachute will deploy to catch up and land once again at the bottom of the viewport. He'll hold a "Top" sign when you hover over him and will shoot off with a jetpack when you click on him and as the screen hits the top you'll see him deploy a parachute again to gently land at the bottom of the screen.

  • raaron773 5 hours ago

    Okay now i want this. For some reason i keep imagining the hamster to look similar to the gopher in golang (obviously not blue)

  • andirk 6 hours ago

    Waiting for the repo link. I will add a fork where the hamster's parachute doesn't redeploy if scrolling to fast and then the user "loses". Discourages scrolling. Might be helpful?

    • szszrk 3 hours ago

      Have a look at my other comment. I just noticed it has an issue that parachute doesn't redeploy properly when you scroll down->up->down, but it works nicely aside of that.

  • MHM5000 2 hours ago

    and on scroll up a hamster with jetpack/rocket

  • szszrk 3 hours ago

    https://gist.github.com/iamtomek/5d4a30c1a6765d695950c777e38...

    Disclaimer: I wrote zero lines of this, it was made purely with Claude 3.7 (via Kagi assistant) with around 10 additional revisions in one conversation. I pasted the emojis in the prompt, but that's basically it.

    I never coded anything meaningful in html and js.

    Edit: it silly that in a place where so much discussion is about AI, when I paste a working AI generated code what I first get is downvotes. I guess you like hating AI more than hamsters.

    • matsemann an hour ago

      > a working AI generated

      The parachute will never deploy if you're higher than a previous low. So if you scroll down, a bit up, and then down again it will not have a parachute, until reaching the point where it was at the bottom last and then suddenly it gets a parachute mid fall.

      If it's falling without a parachute, it will get glued to the corner the moment you start scrolling up. If it's falling with a parachute, scrolling up will break it and it will continue past the screen.

      I don't want to sound overly critical - it's cool that you dished this up so quick - just commenting on your comment. The fact that the AI made so many bugs in such a short script is kinda disproving it "working", doesn't mean we like hating AI.

jsheard 11 hours ago

This kind of thing should probably be disabled if the user has prefers-reduced-motion set.

https://developer.mozilla.org/en-US/docs/Web/CSS/@media/pref...

It just needs one extra CSS rule to make the guy invisible when appropriate:

  @media (prefers-reduced-motion) {
    #scrollBuddy {
      visibility: hidden;
    }
  }
  • geor9e 10 hours ago

    It seems the author has now implemented this. Now people like me just see a pointless page of lorem ipsum. I feel like demos can be exempted from filters like this, especially when you can only get to the demo via a clearly worded link.

    The same code that disappeared the thing could add some text explaining that the page is disabled and why, in my case: Apple Menu > System Preferences > Accessibility > Display > Reduce motion (for other OS's see https://developer.mozilla.org/en-US/docs/Web/CSS/@media/pref...)

    For me, this setting makes macOS snappier, by getting rid of the little animations in OS. If it weren't for this comment, I never would have known it affected websites. I've had the setting for years with no issues.

    • rendx 7 hours ago

      If you're like me and want to keep the OS setting intact but not have it affect web sites, add the following preference in Firefox: ui.prefersReducedMotion (0 = no, 1 = yes).

    • DrammBA 10 hours ago

      Every change really does break someone's workflow https://xkcd.com/1172/

      Counter-argument against exempting the demo page: https://news.ycombinator.com/item?id=43237672

      • geor9e 10 hours ago

        At a certain point, one must take responsibility for clicking "a scroll bar buddy that walks down the page when you scroll" and then being faced with exactly what it said.

        • DrammBA 10 hours ago

          I agree that preferring reduced motion and then visiting a site whose sole purpose is presenting motion is an interesting choice, but I don't think the CSS Working Group or web developers in general are in any position to question it.

      • crabmusket 9 hours ago

        > Counter-argument against exempting the demo page

        I really don't think that's a counter-argument for exempting the demo. It's an argument against ever implementing this feature on an actual website. Or, an argument for using the prefers-reduced-motion check on an actual website.

      • hello12343214 6 hours ago

        I like that cartoon. much care and thought should be taken when implementing changes that affect users :)

        • DeepSeaTortoise 3 hours ago

          I really wish there was a separate category for "short and funny" xkcds.

          Some of them are incredibly hilarious, but the author is just way too productive.

    • sitkack 10 hours ago

      Thank you! I just went and adjusted a bunch of these, "reduced transparency" really reduced the visual load, I didn't realize how many windows were bleeding through for no reason.

    • LoganDark 8 hours ago

      > For me, this setting makes macOS snappier

      For me, it just replaces the slow movement animations with slow fade animations instead, which is just utterly infuriating.

  • DrammBA 11 hours ago

    I just replied to call out how negative your initial comment was and was suprised to see the full edit, thank you for the change and even providing sample code.

  • oneeyedpigeon an hour ago

    I guess this is probably the kind of exact reason that I have "reduce motion" set, but it's a shame in this case since it's a pretty harmless implementation!

  • hello12343214 11 hours ago

    good catch. it should be fixed now for users that have those settings turned on. much appreciated!

    • robocat 9 hours ago

      Now some of us would like an override checkbox to enable your demo again!

      I didn't even know I had prefers-reduced-motion turned on and I certainly didn't know it affected web pages via CSS!!!

      Another 0/1 bit for fingerprinting. Doesn't appear in https://coveryourtracks.eff.org/ (panopticlick). Also see prefers-contrast, prefers-reduced-transparency, prefers-color-scheme, inverted-colors

  • Summerbud 11 hours ago

    Oh that is a really good point!

  • codelion 10 hours ago

    that's a good point about prefers-reduced-motion... i hadn't considered that. it's an easy win for accessibility.

  • _blk 11 hours ago

    I don't mean to be rude but that's more of a preference not something you dictate to the server. If I had to care for all those settings I wouldn't get any projects done. The one I do respect is do not track and dark mode when it's part of the project anyway but the rest is on customer request

    • DrammBA 11 hours ago

      Not sure what you mean by "not something you dictate to the server", browser preferences are client-side. When you say "all of those settings" there's really two major prefers- settings and you already covered one (prefers-color-scheme), writting an extra query to cover prefers-reduced-motion requires minimal effort and provides a lot of value to your site's accessibility.

    • block_dagger 11 hours ago

      This is CSS, it's not dictating anything to the server, rather to the browser.

kwar13 an hour ago

Why is this behind a google form...? There isn't even a screenshot of what it looks like before collecting an email address. What a strange post to hit front page.

  • roetlich an hour ago

    Just stay on the page, don't click the "Get a scroll buddy for your website" link.

  • Jleagle an hour ago

    I see a preview on the linked page, but still odd instructions can only be emailed to you.

  • tinthedev an hour ago

    It's not? I opened the page and it worked just fine.

    Oh, you've either got the CSS disabled, or you missed the implementation next to your scrollbar. Check the other comments.

hello12343214 11 hours ago

Instead of a boring scrollbar thought it would be fun to have an animated stick figure that walks up and down the side of your page when you scroll.

This is the first prototype i made.

Going to make a skateboarder, rock climber, or squirrel next. what other kinds of scroll buddies should I make?

  • JKCalhoun 11 hours ago

    Two guys pumping a rail-car.

    Someone rowing the scrollbar thumb (the longer the thumb, the more rowers).

  • block_dagger 11 hours ago

    Very cool idea! Suggestion: add a trail of breadcrumbs that the figure tosses behind them and, when scrolling up, picks them back up again or kicks them off the screen.

    • hello12343214 10 hours ago

      this is a great idea! I am working on a few other scroll buddy animations :)

  • chuckwolfe 11 hours ago

    My first two ideas to ‘innovate’ on this was; a car driving down the page, or a drag racing Christmas tree where the lights count down in ‘full tree’ style.

  • rexer 11 hours ago

    Maybe a raindrop? Anyone else cheer for raindrop races as a kid on long drives?

    An apple falling on to Newton's head.

    Fun to think about!

  • jorisboris 5 hours ago

    Change the persons orientation (make him turn around) when going back up?

  • davidw 11 hours ago

    Some gears meshing together and rotating that 'make' the page go up and down?

  • fooker 9 hours ago

    Monkey climbing a pole (children's arithmetic problem)

    Cat, with different animations depending on how fast you scroll.

    Elevator, with stops at paragraphs(/some other break)

  • amelius an hour ago

    Bookworm, of course.

  • ohwaitnvm 7 hours ago

    Love it! Super creative :)

    How about a skier with little jumps or obstacles at each header

  • andirk 6 hours ago

    A guy falling that just keeps eating shiit.

    • oniony 4 hours ago

      I like it. Coprophilia guy, they could call him.

  • mandmandam an hour ago

    Stickman Michael Jackson; complete with moon walk, anti grav lean, side glide, circle slide, and a toe lean at the end. Crotch grab optional (maybe on click?).

  • memhole 11 hours ago

    Penguin waddle, slinky

  • croisillon 4 hours ago

    could it turn around and walk up forwards?

  • linhns 8 hours ago

    A platypus?

  • johng 11 hours ago

    I like it, it's neat!

brysonreece 10 hours ago

Surprised I seem to be the only one willing to ask; _why in the world would you wall the implementation behind a Google Form?_

Edit: Implementation details are actually readily accessible in the DOM. Here's a gist that extracts the relevant details (for those who, understandably, don't want to give out their email in exchange):

https://gist.github.com/brysonreece/b15f33cda30af06b7b70788d...

  • _def 6 hours ago

    It's baffling to me. It's one thing if you don't want to do a write up and share it but to offer that in exchange to collect email adresses seems so strange.

  • kevlened 8 hours ago

    As it currently stands, code without an explicit license isn't usable. There is no license for the code you posted, but contacting him could get you one. Using the code linked could constitute a copyright violation.

  • rpmisms 9 hours ago

    He wants payment for his work, just in attention rather than money. Seems reasonable to me.

hmmm-i-wonder 26 minutes ago

This highlights just how useless and unusable existing scroll bars are.

The ability to easily see where you were on the page was great. And it's got some humour. I love it.

I_am_tiberius 12 minutes ago

I tried it in 3 browsers but dont see anything in anyone of them.

beardyw 39 minutes ago

I am not sure about walking on a moving thing. I would like to see a kind of surfboard action, balancing only when it moves.

Over to you!

rcfox 6 hours ago

Reminds me of the late 90s when people would add effects to their websites, like snow or trails of sparks that follow the mouse.

  • altacc 6 hours ago

    Yep, DHTML Zone was the go to place for trippy visuals that'd paralyze your users' browser so that you could make your website look super awesome cool!

kmoser 8 hours ago

What am I missing? I don't see anything except the scroll bar itself, on both Firefox and Chrome. Do my custom scroll bar colors have something to do with it?

a12k 11 hours ago

This sort of project reminds me of the old internet. I love it.

  • davidw 11 hours ago

    I had exactly that same reaction. Someone just doing something fun and cool for the heck of it.

pmg101 an hour ago

Would be cool if you could play one sided pong with the scrollbar and bounce a ball around the window.

pentagrama 10 hours ago

This is funny and clever.

If I were a developer, I would make a version where, when the stick figure moves backward as you scroll up, it does the moonwalk.

  • The28thDuck 10 hours ago

    Maybe this is an obtuse question but what brought you to HN as a non-dev?

    • pentagrama 8 hours ago

      Thank you for your question, it was thought provoking.

      Many things brought me here. One of them is that I’m a UX designer, and I like to stay in the loop with my dev friends—not just to build better products together but also to have interesting conversations.

      I also have a lot of respect for development because I deeply value that knowledge. In a way, this aligns with a philosophical idea: understanding and respecting different fields of knowledge helps us grow and build better things together. As Montaigne suggested in his Essays, true wisdom comes from embracing our limitations and staying open to learning. I find it exciting to discover new things, knowing that there will always be more to explore.

    • iJohnDoe 9 hours ago

      Darn, if only HN had any non-dev content.

    • dankwizard 10 hours ago

      Not OP but waiting for the day I can fire my devs and replace with AI...

hu3 10 hours ago

It doesn't render for me on any of these:

- Chrome on Windows 11

- Firefox on Windows 11

- Chrome on Android

- Firefox on Android

Also no JS errors on console.

Maybe I'm doing something wrong?

I tried in both Ultrawide and traditional FullHD screens.

  • varenc 9 hours ago

    Do you a have reduce motion set in your OS? That preference is respected and the guy is disabled.

iamben an hour ago

Haha, this is great fun. Scratching my own itch and making him turnaround when you scroll up:

  /* Add style */
  #scrollBuddy.walkUp {
    transform: rotate(-90deg) scaleX(-1);
  }

  /* Amend script */
  var lastTop = 0;
  function updateBuddyVerticalPosition(scrollPosition) {
    // All as before but add the below before requestAnimationFrame
    if (lastTop <= newTop && buddy.classList.contains('walkUp')) {
      buddy.classList.remove('walkUp')
    } else if (lastTop > newTop) {
      buddy.classList.add('walkUp')
    }
    lastTop = newTop;
  }
ja2 11 hours ago

Finally a useful piece of software that doesn't require a monthly subscription. Count me in.

andirk 6 hours ago

The act of scrolling is only noticeable by the browser + Javascript per whatever cycle it's on; it's not always watched except for at certain checkpoints.

To more accurately be affected by quick scrolls, save the last known y-axis value and compare to the current y-axis value. Act accordingly!

dwags 11 hours ago

Sisyphus when using infinite scroll?

  • nthingtohide 5 hours ago

    Modern Sisyphus is doom scrolling on tiktok.

gavmor 11 hours ago

Ooh, how novel, and we'll-executed. I imagine this might be useful in conjunction with a minimap as "terrain".

Useful, that is, in terms of getting a proprioceptive "feel" for the anatomy/topography of a document.

  • dominicrose 40 minutes ago

    we've had minimaps in (some) text editors for more than a decade so why the hell not!

prajwal-s-x 3 hours ago

Nice, I'm not sure if someone already suggested, reverse the toe direction when scrolling up.

fitsumbelay 6 hours ago

love this. would also love to see the direction of scroll and scroll speed reflected in character's behavior, ie walking up or down and walking vs running respectively.

I often wonder why corporate engagements (advertisements) aren't wrapped in something like this. people are always looking for distractions even while they're in the middle of a distraction so a fun interaction that starts out by getting your attention like this would seem to make sense. anyway, this is cool

diebeforei485 10 hours ago

It looks wrong when scrolling up. The direction of the feet makes it look like walking backwards in a very strange way.

Etherlord87 6 hours ago

I don't see anything in Firefox on Windows. I tried adding `ui.prefersReducedMotion` setting as FALSE, nothing.

  • alisonatwork 4 hours ago

    I also didn't see anything until I realized that it doesn't work if you have browser-based dark mode because the character is black and the page background is black too.

tweakimp 6 hours ago

Can you make him moonwalk when you scroll up?

ramathornn 10 hours ago

This is awesome, thanks for sharing it. I love how creative/random it is, a real gem imo!

AnonHP 10 hours ago

Please change the direction of walking when scrolling up. Right now the stick figure is walking backwards. It could be reversed or perhaps made to seem like backtracking (add a little more “caution”, “fear”, etc.).

  • dag11 10 hours ago

    or more easily, just rename the stick figure to Michael Jackson

boredatoms 6 hours ago

I remember when scrollbars were just visible all the time, everywhere you went, no special support needed

buss_jan 3 hours ago

This is oddly delightful :)

sandreas 10 hours ago

Super cool. The next way is to implement a Breakout game sideways which you can control by scrolling up and down :-)

rkagerer 8 hours ago

But you can't grab him and move him (to scroll past large chunks).

Laydan 8 hours ago

Would be cool if you make him run when the scroll becomes faster

IncreasePosts 11 hours ago

I suspect either OP wasn't using the internet in 2001,or they were using the internet in 2001.

hacsky 7 hours ago

I hope to see a % scrolled please :)

stevage 11 hours ago

Didn't seem to animate on Firefox android.

Also it was invisible with Dark Reader.

  • hello12343214 10 hours ago

    good catch - will see if I can fix the colors for dark mode enabled

napolux 5 hours ago

why should I give you my email to get this?

iandanforth 11 hours ago

Can he turn around when you scroll back up?

  • sigpwned 11 hours ago

    I actually kind of like the "moonwalk"!

  • hello12343214 11 hours ago

    Good idea. I'll make him do that soon

GlassOwAter 11 hours ago

Fun! He’s a great speed walker too

  • hello12343214 11 hours ago

    Haha yeah, the longer the page is the faster he'll move. Should I slow his arms and legs down?

sergiotapia 10 hours ago

Really cool thank for sharing! I tweaked the code a bit so that I could get Mario sliding down the flag pole for my gaming website. https://www.gamedrop.gg/

  • tobystic 7 hours ago

    Coooool. Please share code

maxglute 9 hours ago

Need some sort of dancing gif, maybe user upload. Should fully stop / reset position when not scrolling. Also someone make AI bonzai buddy.

masterkswan 11 hours ago

I like it, quickly tried to scroll back looking for the moonwalk, lol

  • hello12343214 11 hours ago

    I gotta make scroll buddy do the moonwalk next :D

fHr 11 hours ago

amazing!

EGreg 9 hours ago

Speaking of how the guy starts out on one side of the scrollbar and “walks” to the other, a decade ago I programmed a “scroller” js tool (behavior) that I could add to any element. It basically made it so that when I pressed a trigger with my finger, a menu would appear under it, and then I could move the finger without lifting it until I reached the item I want and release. The memu would scroll under my finger, so that if I reached the bottom (minus a margin) it would already be scrolled all the way to the bottom. Same kind of math as the guy here.

I was tired of having to tap, then scroll, then tap again, on phones. Yes, I really made sure that mode worked too, but the “hidden mode” was to get the selection done in one swipe! Just like I could always do on a Mac, in one mouse swipe!

For mouse interaction - you didn’t even need to press, move and release. You’d hover over the trigger element and then move your mouse down, then click. In that case the menu would disppear if you moved the pointer out of it.

You don’t have to imagine, just try the Developer menu on https://Qbix.com for instance (the menu isn’t long enough but try turning your phone horizontally to make vertical space more limited.. or the tech savvy among you can use Safari debugger to copypaste some more menu items into that menu).

By the way, I now have dozens or hundreds of such “tools” I use to create interfaces. Menus. Dialogs. Tooltips. Onboarding Hints. Speech. Tabs. Chatrooms. Live videoconferencing. Peer to peer broadcast that’s uncensorable. Ok that escalated fast :) https://intercoin.app as an example.

TylerE 11 hours ago

Sorry, but I find this incredibly distracting and unpleasant to me. Yanks my focus every time I scroll. Any site using it is an instant back button for me.

  • gblargg 6 hours ago

    Agreed. Extension user installs on their browser? Great. Something sites implement and impose on everyone? Please, no, except for truly pointless sites that are just about silly things. It's like those sites that try to force smooth scrolling on you.

  • dylan604 10 hours ago

    Voting with your wallet is your right. Luckily, you don't control the purse strings for the rest of us

  • hello12343214 11 hours ago

    what would you change about it

    • mgiampapa 11 hours ago

      I would make it a purple gorilla climbing up and down.

    • furyofantares 11 hours ago

      lemme click him to give him a little whack

    • TylerE 11 hours ago

      It not existing. I am adhd, autistic, and have vision deficits. This sort of thing is actual malice towards people like me. It literally feels like “and screw you in particular.

      • wingerlang 9 hours ago

        People adding a fun little visual gag to their own personal website is not active malice to you.

      • hello12343214 10 hours ago

        There is a setting "reduced motion" on many browsers and devices. It should disable Scroll Buddy if a user has this turned on. Hope that helps. Thank you to @jsheard for the suggestion

      • DrammBA 11 hours ago

        Do you have reduced motion/animations enabled on your browser and/or system settings? If you don't, it sounds like it would help you a lot, if you do then OP just updated the site to hide the animation based on that setting.

        • kazinator 10 hours ago

          Do you think it would be a good idea for this to be rolled out by: online banking, government service sites, medical clinic portals, ... on the premise that the user can just opt out with exotic user CSS settings?

          It is just goof-off nonsense for someone's personal site, not a genuine good idea in UI/UX.

          (It would actually be perfect for a 1990's site chock full of animated gifs, such as spinning skulls and flaming swords. Had we had the JS capabilities back then, it would have been all the rage.)

          When Apple rolls out the next iPhone with walking figures for scroll bars, I will publicly retract my remarks and wipe the egg off my face.

          • scripturial 8 hours ago

            Are you ok?

            (Your tone comes off as “rephrasing the original intent of the post as something slightly different in order to have something to whine about.” It’s just a bit of fun to brighten our morning, not a proposal to interfere with your online banking experience)

            • kazinator 7 hours ago

              Then why are we in a thread about honoring browser settings to have this turned off?

              Just don't go to that site if you don't like it.

          • crabmusket 9 hours ago

            > Do you think it would be a good idea for this to be rolled out by: online banking, government service sites, medical clinic portals

            Um... why are you asking this? Feels like an odd tangent. The OP never suggested this was a good idea anybody should use.

        • TylerE 10 hours ago

          Yes, I do. Basically every possibly assistive option that can help me is turned on.