Snapshot of the (technical) problems I’m thinking about right now:

  • AWS:
    • Logging is a special case of telemetry (or vice-versa). Unify telemetry logging client. Incremental step: logging system is a “sink” for the telemetry, and the source of truth for querying metrics logs.
      • Reimplement the metrics “collector” to be browser-compatible. Currently it uses nodejs async_hooks.
      • Need to get this done before another 6+ months of technical debt accrues.
      • 1 week of work.
    • Redevelop the API for capturing a telemetry “span” (user workflow).
      • 1 week of work.
    • WASM-based code sharing solution.
      • 1 month of work.
    • Strategy for scaling development across 20+ teams (100+ developers). Monorepo, libraries, horizontal, LSP: all of the above.
      • 2 weeks of work.
    • Trying to design and develop software while working a Wendy’s drive-thru.
      • Every day.
  • Neovim:
    • Finish talk for Neovimconf 2023. Understand what happened in the last 12 months, be able to explain and demo the most interesting contributions.
      • Deadline in 5 days.
      • 3+ days of work.
    • Finish vim.uri.
      • 1-2 days of work.
    • Finish [optional] support in vimdoc parser.
      • 4 hours of focus time.
    • Finish pkg.json (packspec) specification.
      • Started 4 months ago, idling for 3 months = risk of decay / lost investment (mis-timing, lost momentum, misalignment with key parties).
      • 1 week of work.
    • Implement function name linter. Too much time spent validating function names.
      • 1 day of work.
    • Rename various APIs before 0.10 release (imminent).
      • 2-3 days of work.
    • Need to do a pynvim release.
      • 2 hours of yak shaving.
    • Need to do a node-client release.
      • 2-4 hours of yak shaving.
    • node-client code needs a linting overhaul.
      • 2+ days of work.
    • node-client getNvimFromEnv() needs to work without $PATH.
      • 1 day of work.
    • Rework Nvim --remote interface.
      • 2 weeks of work.
  • Plugins:
    • Make a fugitive-like minimalist wrapper for gh.
      • Prototype = 1 day of work, Beta = 1 week of work.