The Technical Person at the Business Table
On leaving management for an IC role inside a commercial business area, what proximity to real problems teaches you, and why agentic AI is about to reshape who builds.
Group Lead: Knowledge & Insights · Speaker · Builder
I'm Dan. I believe most data work fails because we don't truly understand the people we're building for or the problems they're actually facing. And even when we do, the solution still has to land in the real world, inside real operational processes, with real people who need to change how they work. I build AI-driven data products and commercial tools at Coca-Cola Beverages Africa. Then I go make sure they actually work. Based in South Africa, building across Africa.
Latest post: AI-Assisted Semantic Model Development for Power BI and Fabric
Latest TIL: How to Inject Dates Into Fabric Pipelines (and Backfill Them)
On leaving management for an IC role inside a commercial business area, what proximity to real problems teaches you, and why agentic AI is about to reshape who builds.
TMDL files turn your semantic model into plain text that GenAI agents can read, write, and extend. Two workflows to start using this today.
Short notes on things I discover — tools, tricks, ideas worth remembering.
How to pass a shared run_date across Fabric pipeline stages and support historical backfilling with a two-pipeline pattern.
Never call `spark.stop()` in Databricks workflows. Explicitly call `sys.exit()`.
How treating your LLM Tools like humans can help you build personal AI copilots.
Mypy only narrows Union[T, None] when it sees an explicit check for None or an assertion. This behaviour leads to type errors that may seem unintuitive to solve.