<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Spicy Data blog</title><description>Notes from the field: real projects, the tools we reach for, and what AI-native delivery actually looks like in practice.</description><link>https://spicydata.ai/</link><language>en-us</language><item><title>Your sales funnel, transparent in both directions.</title><link>https://spicydata.ai/blog/sales-funnel-attribution/</link><guid isPermaLink="true">https://spicydata.ai/blog/sales-funnel-attribution/</guid><description>A B2B sales funnel you can read both ways: which activities became closed-won revenue, and every deal traced back to the activity that sourced it. Full pipeline transparency for sales teams, plus the attribution logic and architecture behind it.</description><pubDate>Thu, 04 Jun 2026 00:00:00 GMT</pubDate><category>Attribution</category><category>Data Apps</category><category>DuckDB</category></item><item><title>A live data app for $0: DuckDB, Astro, and no BI tool</title><link>https://spicydata.ai/blog/zero-dollar-data-app/</link><guid isPermaLink="true">https://spicydata.ai/blog/zero-dollar-data-app/</guid><description>When and where to find tropical fruit in Hawaii, built on iNaturalist data with DuckDB and Astro for the cost of zero dollars. The architecture, the tools, and an honest take on open source vs Omni, Hex, and Tableau.</description><pubDate>Fri, 29 May 2026 00:00:00 GMT</pubDate><category>DuckDB</category><category>Open Source</category><category>Data Apps</category></item><item><title>Migrating a Tableau dashboard to Omni by writing for the CLI, not the human</title><link>https://spicydata.ai/blog/tableau-to-omni-cli/</link><guid isPermaLink="true">https://spicydata.ai/blog/tableau-to-omni-cli/</guid><description>A Claude Code skill that turns a Tableau .twbx into a live Omni dashboard in 5 minutes. The thesis: stop writing migration docs for humans, design backwards from the target tool&apos;s CLI.</description><pubDate>Mon, 11 May 2026 00:00:00 GMT</pubDate><category>BI Migration</category><category>Claude Code</category><category>Omni</category></item><item><title>A Claude Code skill that builds your PowerPoint decks (so you can build more with Claude)</title><link>https://spicydata.ai/blog/claude-deck-automation/</link><guid isPermaLink="true">https://spicydata.ai/blog/claude-deck-automation/</guid><description>How I built a Claude Code skill that turns a one-paragraph brief into a branded PowerPoint deck in seconds. Architecture, code, and a sanitized public repo.</description><pubDate>Tue, 28 Apr 2026 00:00:00 GMT</pubDate><category>Claude Code</category><category>Automation</category><category>Design Systems</category></item><item><title>Building an open-source analytics chatbot on Vercel&apos;s Chat SDK</title><link>https://spicydata.ai/blog/analytics-chatbot-vercel-chat-sdk/</link><guid isPermaLink="true">https://spicydata.ai/blog/analytics-chatbot-vercel-chat-sdk/</guid><description>Forking Vercel&apos;s d0-chatbot, swapping Grok for Claude, and wiring it into Snowflake. A working natural language analytics chatbot for the cost of API calls.</description><pubDate>Mon, 27 Apr 2026 00:00:00 GMT</pubDate><category>AI SDK</category><category>Vercel</category><category>Snowflake</category></item><item><title>When executives want Excel and AI, and your data team wants fewer fire drills</title><link>https://spicydata.ai/blog/omni-leasing-report-ai/</link><guid isPermaLink="true">https://spicydata.ai/blog/omni-leasing-report-ai/</guid><description>How Omni delivers spreadsheet-style reports on a schedule for executives while giving data teams AI-powered exploration and full SQL lineage, all from one semantic layer.</description><pubDate>Fri, 03 Apr 2026 00:00:00 GMT</pubDate><category>Omni</category><category>AI</category><category>Embedded</category></item><item><title>Migrating a Tableau dashboard to Omni with Claude Code</title><link>https://spicydata.ai/blog/tableau-to-omni-migration/</link><guid isPermaLink="true">https://spicydata.ai/blog/tableau-to-omni-migration/</guid><description>From .twbx to live dashboard: automating BI migration with AI. How Claude Code parsed 3,355 lines of Tableau XML and deployed a working Omni dashboard via API, with about 80% of the migration handled automatically.</description><pubDate>Thu, 26 Mar 2026 00:00:00 GMT</pubDate><category>BI Migration</category><category>Claude Code</category><category>Omni</category></item><item><title>Managing your semantic layer with Claude Code: context engineering in Omni</title><link>https://spicydata.ai/blog/semantic-layer-claude-code-omni/</link><guid isPermaLink="true">https://spicydata.ai/blog/semantic-layer-claude-code-omni/</guid><description>AI chatbots can write SQL, but can they write the right SQL? How we built a Claude Code skill that deploys, validates, and manages a semantic layer in Omni, catching silent failures before they reach production.</description><pubDate>Sun, 22 Mar 2026 00:00:00 GMT</pubDate><category>Semantic Layer</category><category>Claude Code</category><category>dbt</category></item><item><title>Using data to find mushrooms (Tableau vs Omni)</title><link>https://spicydata.ai/blog/mushroom-data-tableau-vs-omni/</link><guid isPermaLink="true">https://spicydata.ai/blog/mushroom-data-tableau-vs-omni/</guid><description>Using data to help people find mushrooms and comparing Tableau and Omni throughout the process.</description><pubDate>Mon, 15 Sep 2025 00:00:00 GMT</pubDate><category>Tableau</category><category>Omni</category><category>Comparison</category></item><item><title>I built an embedded analytics solution with Omni</title><link>https://spicydata.ai/blog/embedded-analytics-omni/</link><guid isPermaLink="true">https://spicydata.ai/blog/embedded-analytics-omni/</guid><description>I built an embedded analytics solution using omni.co. These are some of my learnings.</description><pubDate>Fri, 29 Aug 2025 00:00:00 GMT</pubDate><category>Embedded</category><category>Omni</category><category>ClickHouse</category></item></channel></rss>