Feed
Thinking66 posts

Towards more manageable pointer events

Working with mouse and touch events is one of the biggest challenges for me in making interactive web apps. The availability of pointer events helps a lot, but I still pretty quickly end up with a mess of conditionals that are hard to reason about. I'm working on some new strategies and abstractions to help with this.

PointerOne, PointerTwo, PointerThree

The pointer event API provides events for pointerDown, pointerMove, and pointerUp. Using the pointerId provided you can link those events together into a continuous Pointer object that contains the whole lifecycle. I put this together into a SubPointer class.

Read more

State of mind: scattered thoughts on Typescript, three.js, and class-based architecture

I'm possibly in the midst of revising a bunch of my assumptions about how I like to code projects, so I wanted to write down my current thoughts. I'm probably in a honeymoon phase with the new set-up, so it's possible as I work longer I'll run into a bunch of walls and complications and end up re-revising.

Typescript

I have been avoiding trying Typescript, but I've now seen too much work from people working on involved interfaces (mainly Steve Ruiz's work and the Excalidraw project) to justify not at least trying it. So I've been trying it on the new prototype and I think I like it. Barring running into some tremendous catch, I think I'll use it from here on out.

Read more

I wrote about the trade-offs involved in using Vim-style navigation for the https://constraint.systems projects.

From: https://scrawl.grantcuster.com/2020-057-42.html


Rough music purchasing plan.

From: https://scrawl.grantcuster.com/2020-003-40.html


Writing about using a tiling window manager.

From: https://scrawl.grantcuster.com/2019-350-79.html


Writing about switching to Linux.

From: https://scrawl.grantcuster.com/2019-340-36.html