zachdaniel

zachdaniel

Creator of Ash

Your standard application generally only tracks what is true right now. Updates overwrite previous data, and asking questions about the past requires either introducing a mechanism to track the previous state of your application (versions), or reshaping your entire mental model of application development (event-driven/event-sourcing). Temporal resources are the answer.

Temporal resources are a new, experimental feature in Ash that make dealing with changes over time boring. You can read it as of any moment, write to it as of any moment (yes, including the future), without changing how you use or write your application (almost) at all. Filters, relationships, aggregates, calculations. All of it from one option, as_of.

I announced the new feature at Goatmire Elixir in a talk called Time Travel for Normies, and I’ve rebuilt it here for the web. These pixel examples are based on a live multi-player game that had the audience split into two teams, competing for territory while traveling and using powerups that travelled through time. You had to be there for that one.

See the full explainer here:

Where Next? Top

Trending in News & Updates Top

woylie
Doggo 0.18.3 has been released. Added tabs: Add a disabled attribute to the :panel slot. A disabled tab can be focused with the arrow k...
New
bartblast
Hologram v0.12 is out! This one is for the big apps. Evo Store, Hologram’s Performance Sponsor, has an app with over 9,000 Elixir modules...
New
mikehostetler
ReqLLM v1.28.0 has been released. Features: add StepFun chat and audio providers (#1087) by mikehostetler openai: honour image deta...
New
GenericJam
Mob 0.9.18 has been released. Added anchor: "bottom" on :scroll, for chat logs (MOB-481). The scroll opens at the end of its content. ...
New
fhunleth
Nerves v2.0.0-pre.4 and v2.0.0-pre.3 has been released. Changes Fix typo preventing SOURCE_DATE_EPOCH from propogating through the fi...
New
GenericJam
Mob 0.9.17, 0.9.16 and 0.9.15 has been released. Added Async work in screens, the LiveView way. Mob.Socket.start_async/3 runs a functi...
New
mudasobwa
Finitomata v1.0.0-rc.0 and v0.43.0 has been released. Published to Hex.pm: finitomata | Hex Documentation: Finitomata v1.0.0-rc.0 — Doc...
New

Other Trending Topics Top

mudasobwa
I fully migrated to my own harness from Anthropic/Gemini and I think it’s time to share it. Welcome DSH, the DeepSeek Harness, fully writ...
New
KristerV
Hey. Is there anyone here who creates agents in their apps? Not talking about using agents, but creating them. I’m finding it pretty diff...
New
jimsynz
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
juhalehtonen
There has been a thread to discuss the Stack Overflow Developer Survey on this forum every year since 2018, so here’s yet another one for...
New
webofbits
With AI doing more of the implementation work, I’ve been wondering how much coding I should deliberately keep doing myself. My main conc...
#ai
New
budgie
I love Elixir. It’s one of 2 programming languages I’ve ever fallen in love with. But I don’t use it anymore. Serverless was the promis...
New

We're in Beta

About us Mission Statement

Options

Thread Display Mode




Thread Preview

Skip Thread Previews