- Posted Date: 2024-12-12
- FlowLight Construction: Built based on reading Reducing Interruptions at Work: A Large-Scale Field Study of FlowLight. Aim is to detect if a programmer is in flow by seeing if they're typing in their editor.
- Emacs and MagTag: Use Emacs and a MagTag board from AdaFruit with its built-in NeoPixel Strip. Track activity through keypresses and mouse clicks (initially) or entirely inside Emacs. Idle timers wait 10 seconds and append (now,seconds-of-idle-time) to a list. Another timer runs every 60 seconds to calculate status and remove old elements.
- LEDs and CircuitPython: MagTag runs CircuitPython and can run an HTTP server. Hooked a webserver endpoint to LED colors and e-ink text. Added support for multicast DNS. Core code includes endpoints for BUSY or FREE status with corresponding LED and text changes.
- Improvements: Consider hooking into every keypress instead of using timers. Wanted a sparkline but no suitable board. Wanted to use Matrix Portal S3 but it's out of stock. Ignored per-minute buckets and smoothing from the original paper.
- Credits: Got emacs timer stuff from discussions with Reed Mullanix and Kragen Sitaker. Chris Corley told about the FlowLight paper.
- Notes: Started with AdaFruit's FunHouse Board but had issues. MagTag has a case with an attached battery and magnet feet. Suggested Memento camera or AdaFruit Feather boards for running the code.
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。