Getting things done (in small increments)
[Whoops, this was supposed to go out earlier this week! Sorry for the delay. 😬]
I just published a new blog post: Getting things done (in small increments). It started with an observation on Twitter:
There's this idea that programming needs large blocks of uninterrupted time — maker's schedule vs. manager's schedule, etc.
— Patrick Dubroy (@dubroy) March 18, 2022
I wonder why more people don't realize that being productive with a busy schedule is a skill you can get better at.
In the conversation that followed, there were some questions and suggestions about concrete ways about how to learn to focus more quickly. I reflected on the habits and techniques I've found useful, and decided to write something up.
I still think that having large blocks of uninterrupted time is ideal — but I'm glad that I've found ways to be productive in smaller chunks of time.
More ways of handling user input
Earlier this year, I published Three ways of handling user input, in which I compared the different approaches using a small challenge problem:
The goal is to implement a square that you can either drag and drop, or click. The code should distinguish between the two gestures: a click shouldn’t just be treated as a drop with no drag. Finally, when you’re dragging, pressing escape should abort the drag and reset the object back to its original position.
Since then, a couple of people have offered their own take on the problem:
Handling user input in Céu. A Toy Problem: Drag, Click, or Cancel:https://t.co/HUAudkBWYG
— Francisco Sant'Anna (@_fsantanna) February 19, 2022
I've had a go at using Syndicate to implement @dubroy's toy click/drag problem. It came out pretty well! https://t.co/1o63qQoWbo
— Tony Garnock-Jones (@leastfixedpoint) March 6, 2022
Both systems (Céu and Syndicate) are well worth a look if you're not familiar with them.
That's all for now. Until next time,
Patrick