I Just Board (macOS)
In DevelopmentMarch 1, 2024
My first macOS app — a Kanban board for managing projects, built in Swift with significant AI coding assistance. A discussion of Kanban as a project management philosophy, the broader landscape of project strategies, and what features could make this app worth continuing.
Purpose
Built a native macOS Kanban board app in Swift as a project management tool. AI coding assistance (likely GitHub Copilot or ChatGPT at the time) helped significantly — my first experience of AI meaningfully accelerating a new-platform learning curve. The app works: columns, cards, drag-and-drop. The question is whether it has a future.
Stack
What I Learned
- Kanban originated in Toyota's manufacturing system in the 1940s — "kanban" means "signboard" in Japanese. The core principle: visualize work as cards moving through columns (To Do → In Progress → Done), limit work in progress (WIP limits per column), and let the board reveal bottlenecks. If the "In Progress" column is always full and "Done" is always empty, you have a throughput problem. The board does not solve the problem. It makes the problem visible.
- Kanban vs. Scrum vs. Waterfall — the three dominant project strategies: Waterfall is sequential (requirements → design → build → test → ship). It works when requirements are known upfront and change is expensive (construction, hardware, regulated industries). Scrum is iterative (2-week sprints, daily standups, sprint reviews). It works when requirements evolve and the team needs frequent recalibration. Kanban is continuous flow (no sprints, no time boxes, just cards moving through columns). It works when work arrives unpredictably and the goal is steady throughput, not batch delivery.
- For solo developers, Kanban is almost always the right choice. Scrum ceremonies (standups, sprint planning, retrospectives) are designed for teams. Running a standup with yourself is cosplay. Kanban gives you the visibility of a structured system without the overhead of team rituals. One board, three columns, WIP limit of 3. That is the entire system.
- Building a macOS app in Swift with AI assistance was a qualitatively different experience from learning Swift alone. When I did not know the SwiftUI equivalent of a Flutter widget, I asked the AI. When AppKit drag-and-drop APIs were confusing, the AI explained them in context. The learning curve was not eliminated — but it was smoothed. This is the "AI as tutor" pattern that the geoflutterfire entry predicted: point an AI at unfamiliar code and say "explain."
- SwiftUI for macOS is mature but different from SwiftUI for iOS. macOS has menus, window management, toolbar items, sidebars, and keyboard shortcuts that iOS does not. A Kanban board on macOS should feel like a native Mac app: keyboard-driven, multi-window capable, with a menu bar and proper window resizing. Porting an iOS mindset to macOS produces an app that feels like a blown-up phone app.
Key Insights
- Features that could make this app worth continuing: (1) Integration with Git — auto-create cards from branches, move cards to "In Progress" when a branch is checked out, move to "Review" when a PR is opened. The board becomes a mirror of the actual development workflow, not a manual tracking layer. (2) Time tracking per card — start a timer when you drag a card to "In Progress," stop when you move it. Over time, you learn how long things actually take vs. how long you think they take. The data is humbling.
- (3) Pomodoro integration — the Note Timer concept from years ago, embedded in each card. Start a focus session on a specific card, take notes during intervals, and the card accumulates a history of focused time + notes. (4) AI-assisted card decomposition — describe a large task, and AI breaks it into subtasks that become child cards. This is the Bereshit scaffolding concept applied to project management instead of code.
- (5) Cross-device sync via iCloud/CloudKit — the board on your Mac, accessible on your iPhone, updated in real time. (6) Markdown support in card descriptions with rendered previews. (7) Board templates — "New Flutter Feature," "New Blog Post," "New Potatuhs Product" — each pre-populated with the standard columns and starter cards for that workflow. The templates encode process knowledge the same way Bereshit encoded code scaffolding.
- The macOS platform is underserved compared to iOS. The App Store has millions of iOS apps and comparatively few quality macOS apps. A well-executed, native macOS productivity tool has less competition and a user base (developers, designers, writers) with high willingness to pay for tools that respect their workflow. This app occupies a space worth competing in.
This post was composed through a conversation between Brett Owers and Claude Code (Anthropic). The content reflects Brett's recollection of each project and the lessons drawn from it. Some details may be approximate or omitted — the purpose is to paint an honest picture of a software engineer's development over time, not to serve as a precise historical record.