Beginner or pro, Author & expert Bruce Tate's tailored approach to Elixir training will help you think beyond routine code to beautifully designed software.
Generated code can follow your conventions and still miss the domain. Start review at the public API: what does this function promise, and does the domain agree?
grox.io/blog/49-reviewing-th…#AIEngineering
Your repository guidance does not share one update rhythm. Keep human-authored process stable, regenerate dependency rules, and point to the project facts that keep moving.
grox.io/blog/57-stable-vs-dy…#ElixirLang#AIEngineering
Today! Groxio Live wth @redrapids
Where does MCP fit in an LLM workflow?
Bruce Tate will demo an LLM harness, connect MCP to the workflow, and answer questions live.
Thursday, September 17 at noon ET / 16:00 UTC. Free: grox.io/live#AIEngineering#ElixirLang
Where does MCP fit in an LLM workflow?
Bruce Tate will demo an LLM harness, connect MCP to the workflow, and answer questions live.
Thursday, September 17 at noon ET / 16:00 UTC. Free: grox.io/live
ALT Sign Up Jimmy Fallon GIF by The Tonight Show Starring Jimmy Fallon
A prompt chain is a program written in English. Keep its units small, its interfaces clean, and its architecture in the source tree. Move forward when you decide to, not when the agent does.
grox.io/blog/58-how-vibe-cod…#ElixirLang
Bruce Tate Live: Building a LiveView Skill from a Refactored Counter.
Finish the counter refactor, name the pattern, and turn it into a reusable LiveView skill an agent can apply again.
Thursday, September 3. Noon ET / 16:00 UTC.
Free. Register here: grox.io/live#ElixirLang
Agentic coding is not the problem. Unguided agentic coding is. The agent does not wait, and cheap tokens make it easy to stop steering until the rewrite is already on the calendar.
grox.io/blog/54-the-tab-is-c…#ElixirLang#AIEngineering
Tidewave does not make Claude smarter. It makes Claude less dependent on guesses by giving it live access to your app's docs, logs, schemas, SQL, and project context.
grox.io/blog/47-installing-t…#ElixirLang
A plain map lets `%{nmae: "Bruce"}` run. A struct can stop that typo before it becomes a downstream bug.
Read the blog:
grox.io/blog/46-a-struct-is-…#ElixirLang
Join us at Noon today!
Bruce Tate Live: Building a LiveView Skill from a Refactored Counter.
Finish the counter refactor, name the pattern, and turn it into a reusable LiveView skill an agent can apply again. Thursday, August 20. Noon ET / 16:00 UTC. Free.
grox.io/live
No one starts a project as an expert. @JEG2 walks through a real project with 40x speed gains - the wizardry and the mundane work behind it.
Talk: elixirconf.com/participants/…
📍 Chicago & Virtual | 📅 Sept 10-11, 2026
Get your ticket: elixirconf.com/#register/#Elixir
The Tidewave Toolbar recently got the ability to visualise client and server updates on the page. Here is a quick video showing how you can use it to improve the performance of your LiveView apps!
GitHub stars measure volume, not whether an agent can reliably build in a language. In 2026, language choice has a new question beside it: what can the agent do with this structure?
grox.io/blog/47-choose-for-t…#ElixirLang#AIEngineering
Claude's context is not just the chat. The system prompt, tools, rules, skills, and components are already spending memory before your first message.
Read more: grox.io/blog/44-inside-claud…#ElixirLang
Maps are not prettier keyword lists. They are the Elixir container you choose when key access needs to stay fast, even as the collection grows. The post breaks map work into four modes you can actually remember.
Read more: grox.io/blog/43-maps-elixir-…#ElixirLang
Bruce Tate is teaching live Today - Thursday, August 6.
Building a LiveComponent Alternative and a Skill to Match - Part 2.
Explicit state flow, pure function components, focused modules, and a reusable agent skill.
Free. Noon ET.
live.grox.io#ElixirLang
AI being here to stay does not settle the moral question.
The real test is whether it pays its own way, compensates the people it learned from, sharpens judgment, and leaves room for juniors to grow.
Read more: grox.io/blog/42-pay-your-own…#AIEngineering#ElixirLang
If the model is writing more code, the language still matters. #ElixirLang gives AI agents fewer hidden moving parts and sharper correction boundaries.
grox.io/blog/43-why-elixir-i…
Elixir's `require`, `import`, and `alias` are not three versions of the same idea. They answer different readability questions: macro access, local names, and shorter module names.
Read the blog: grox.io/blog/40-three-ways-t…#ElixirLang