Essential insights from Hacker News discussions

Lazy-brush – smooth drawing with mouse or finger

Here's a summary of the themes expressed in the Hacker News discussion:

Intuitive UI and Skeuomorphism

A significant portion of the discussion centers on the intuitive nature of the UI and its connection to physical world metaphors. Users found the "dragging" behavior particularly satisfying and easy understand.

  • gdubs: "The dragging behavior is so intuitive – it's funny because usually if you create this kind of resistance in a UI it can be confusing, but in this context it works so well."
  • chii: "> this kind of resistance in a UI it can be confusing\nit's actually intuitive because it mimics a real life physical dragging of an object by a rope, which most people have a feel for. Skeuomorphism can be quite intuitive imho."
  • DonHopkins: "Very nice! I love the way the leash droops from gravity when you give it some slack, to unobtrusively and intuitively show users what's really going on, how the control system actually works, so it's tangible and physical, not a mysterious unpredictable black box. True honest wysiwyg 'direct manipulation', no invisible magic."

There was also a parallel discussion about the definition of skeuomorphism:

  • DrewADesign: "Skeuomorphs retain purely ornamental components of the thing it’s mimicking. If it was a graphic of a rope rather than a dashed line, or if it looked like the line was tied up around the thing in a bow, those would be skeuomorphic elements. But graphical interface elements always retain ‘some’ functional connection to the physical world and trigger ‘some’ abstracted existing metal model about how the world works. GUIs themselves conceptually mimic the idea of a physical space because it’s easier for people to reason about than a bunch of text. This is no more skeuomorphic than the reply button below the comment box."

Comparison to Existing Tools and Techniques

Many users pointed out that the functionality demonstrated in the post is not new and is present in various existing graphics software and tools, sometimes under different names.

  • ahoka: "This a very nice web implementation of a feature that exists since probably forever in most graphics software."
  • dtn: "Lazy Nezumi has been around since 2009. Stabilisers,etc. are a lot more prominent in the digital art community."
  • edflsafoiewq: "I think this is the same as the brush stabilizer in Krita."
  • baxuz: "Possibly in tldraw as well, but that one was also velocity based"
  • RicoElectrico: "And Affinity tools."
  • kilpikaarna: "LazyMouse in Zbrush was the first one I think? But yeah, this feature is not uncommon. There's even a program called Lazy Nezumi that adds global mouse smoothing, rulers etc. to Windows."
  • jeremyscanvic: "Neat! This is known as a stabilizer in the digital art community."
  • iamjackg: "This technique was also used in mid-late non-motion-plus Wii games to smooth out the pointer movement! Early games have an incredibly twitchy pointer because they were simply mapping the IR data 1:1 to cursor movement, whereas later ones have an invisible circle around the cursor and only move the cursor itself once the circle edges start "dragging" it."
  • DonHopkins: "It reminds me of artist/engineer's Paul Haeberli's legendary and monumentally influential "DynaDraw" which he wrote at SGI."

Effectiveness and Limitations for Specific Tasks (Signatures vs. Drawing)

A key point of discussion was whether this tool is suitable for all drawing tasks, particularly signatures, and the trade-offs involved. Some users found it excellent for general drawing but less so for precise signature replication or natural freehand.

  • justlik Reddit: "Try drawing your signature with it and see how intuitive it feels."
  • heeton: "It’s not a tool for signatures. It’s also hard to sign documents with a paint roller. But this UI is much better at, e.g. drawing a smooth, symmetrical heart symbol, with a crisp turn."
  • unconed: "I dunno why people are praising this, because it makes it impossible to do natural scribbles. It's picking the algorithm over the result. Perfect freehand is the right way to solve this."
  • Nikx Da: "An alternative that works very well for signatures too is Perfect Freehand (by the guy behind TLDRaw)"
  • npteljes: "This is fantastic! Never in my life could I input my signature with a mouse, and have it come out this close to how it looks like the pen-and-paper version. Mindblowing, as it worked like so out of the box."
  • dwringer: "Using a trackball I couldn't get this to work noticeably better than just plain paintbrush input in MS Paint. Conversely the one from TFA took me a little more time to get the hang of but I got a lot better control with it."

Technical Implementation and Input Lag

There was some discussion around the technical implementation, particularly concerning input lag and alternative approaches.

  • ishKebab: "I think it would be much better to use some kind of Kalman filtering so you don't have the huge lag. You don't need to commit to permanent output immediately so it is possible to draw with zero lag and then smooth the output afterwards."
  • wffurr: "Yeah it’s a nice brush model but that is a huge gap between the input and ink."
  • westcoast49: "Kalman filtering is what's used in G PS navigation apps, is it not, to smooth out imperfections in the raw GPS signal?"
  • WithinReason: "The trick is hysteresis but in 2D:"

Developer Dedication and Project History

The dedication of the author in developing the project over several years was recognized and appreciated.

  • zastai0day: "Wow, this is amazing! I see you've been building this on GitHub for 7 years - that's truly impressive dedication. What keeps you motivated to stick with this product for so long?"
  • heeton: "Not to speak for OP, and this library is very cool, but: It’s ~20 commits done in two batches. 2018 for the initial release then some more work on it in 2023."
  • Zastai: "you could have that kind of progress on any lib you wish to release, and it’s a nice feeling to have something out in the wild."

The "Open-Web" and Internet Culture

Some users commented on the nature of the open web and the satisfaction derived from such projects, as well as broader internet culture elements like retro homepages.

  • gdubs: "These types of experiments are something I really love about the open-web, and part of what bums me out about how most social networks tend to throttle links."
  • test1235: "OT, but I love the author's retro homepage. Just seeing that made me smile this morning"
  • marsavar: "OP's personal website deserves its own post! https://dulnan.net/ <0xF0><0x9F><0x91><0x8C>"
  • throwaway290: '"The best FREE scripts" got me!'

Legality and Manipulation of Signatures

A brief but notable concern was raised regarding the potential for modifying or forging signatures, although this was quickly addressed by referencing the nature of physical signatures and legal implications.

  • lionkor: "Is it allowed to modify the signature someone puts digitally on a document? Because that's what this does. Is that not an issue?"
  • stavros: "That's also what a pen does, but we haven't banned pens. Don't forge signatures, it's illegal."
  • heeton: "What makes you say the library is modifying the signature? (It’s not)"
  • thinkingemote: "Given it a bit of thought (as I was also puzzled), I think the comment was about the modification compared to a normal way of doing it. So if I would normally write a scribble with angular lines for a signature, and it might be consistent across different places, this brush could smooth it out and modify what it might be."
  • arcticbull: "Have you met Preview's Tools > Annotate > Signature? If you're concerned about people modifying a document after you share it out, consider using a digital signature or a hash."

Broader Inspirations and Historical Context

The discussion also touched upon historical precedents and inspirations for such dynamic drawing techniques.

  • moritonal: "I believe a logic similar to this was used to enact the "Gestures" system in Black and White 1. Breaking down the mouse-movements into vectors following a guide-point."
  • batperson: "Damn, what a flashback. I forgot about that game, it was quite something for its time. I remember the gesture spell casting system not working very consistently, but it was still a ton of fun."
  • DonHopkins: "It reminds me of artist/engineer's Paul Haeberli's legendary and monumentally influential "DynaDraw" which he wrote at SGI."

Other Observations

  • Positive Feedback: Many users expressed direct admiration for the tool's performance and impact.
    • kristopolous: "this has no business working this well...quite impressive."
    • ndr: "This works shockingly well."
    • jflessau: "Simple, fun, precise and works on mobile. Love it!"
    • sophyphreak: "This is absolutely amazing"
  • Mobile Functionality/Permissions:
    • ndr: "And apparently without asking any permissions on the phone. What sorcery is this?"
  • Platform Comparisons:
    • mgaunard: "Looks much better indeed, wasn't able to write anything with the OP's library."
    • dwringer: "Using a trackball I couldn't get this to work noticeably better than just plain paintbrush input in MS Paint."
  • Specific Algorithmic Mentions:
    • davedx: "I wonder what Duo Lingo are using behind the scenes...it constrains your movements...then, it relaxes the constraints totally..."
    • sdafasdfad: "This does not work at all, half of my drawing is missing"