We wanted to go deeper on the caching library Nebulex, so we visited with the creator, Carlos Bolaños, to learn what prompted its creation. Nebulex takes a couple unique approaches to things. It supports a decorator pattern to indicate that a function should be cached without having to write the boilerplate code for reading and writing to the cache. Nebulex was inspired by Ecto, in that it supports multiple adapters to different backends like Redis, Cachex and even Horde! It also supports multiple caching strategies. It's an interesting project that aims to solve common caching challenges in new ways and we enjoyed learning more about it.
Show Notes online - http://podcast.thinkingelixir.com/124 (http://podcast.thinkingelixir.com/124)
Elixir Community News
- https://hex.pm/blog/hex-v2.0-released-with-new-version-solver (https://hex.pm/blog/hex-v2.0-released-with-new-version-solver) – Hex 2.0 released with a new version solver
- https://twitter.com/emjii/status/1587116679724765184 (https://twitter.com/emjii/status/1587116679724765184)
- https://nex3.medium.com/pubgrub-2fb6470504f (https://nex3.medium.com/pubgrub-2fb6470504f) – Based on the algorithm PubGrub used by Dart's packager at https://pub.dev
- https://twitter.com/benoitc/status/1584699685822164995 (https://twitter.com/benoitc/status/1584699685822164995) – erlang-certifi 2.10.0, updated SSL Certificates bundle
- https://twitter.com/josevalim/status/1585290898497224712 (https://twitter.com/josevalim/status/1585290898497224712) – Broadway update has new version of the Google Cloud PubSub adapter
- https://twitter.com/joladev/status/1585302755085717504 (https://twitter.com/joladev/status/1585302755085717504)
- https://elixir-broadway.org/ (https://elixir-broadway.org/)
- https://twitter.com/josevalim/status/1585733673256906752 (https://twitter.com/josevalim/status/1585733673256906752) – VegaLite, the graphing library used in Livebook, was updated to add support for binning, scaling, and different color schemes.
- https://twitter.com/akoutmos/status/1586566107447656449 (https://twitter.com/akoutmos/status/1586566107447656449) – Alex Koutmos is adding a file upload SmartCell for Livebook and shared a preview of it online.
- https://twitter.com/davydog187/status/1584967478991388674 (https://twitter.com/davydog187/status/1584967478991388674) – Dave Lucia got TimescaleDB working in Livebook
- https://github.com/timescale (https://github.com/timescale)
- https://twitter.com/sean_moriarity/status/1571983702413959175 (https://twitter.com/sean_moriarity/status/1571983702413959175) – Sean Moriarity wrote 15 Livebook guides which go deeper into some of Axon's APIs.
- https://elixir-nx.github.io/axon/Axon.html (https://elixir-nx.github.io/axon/Axon.html)
- https://fly.io/phoenix-files/shut-down-idle-phoenix-app/ (https://fly.io/phoenix-files/shut-down-idle-phoenix-app/) – Chris McCord wrote a blog post about how a Phoenix app can shut itself down when idle.
- https://newrelic.com/blog/how-to-relic/memory-spikes-erlang (https://newrelic.com/blog/how-to-relic/memory-spikes-erlang) – Article about using Observer to debug memory bugs by Matt Baker
- https://open.spotify.com/episode/0yMdXbB2MVmIb8MN8crEgV (https://open.spotify.com/episode/0yMdXbB2MVmIb8MN8crEgV) – Jose Valim was the guest on the "Software Unscripted" podcast to talk about introducing static types to Elixir.
- https://www.youtube.com/watch?v=q49vsCjpWGs&list=PLqj39LCvnOWbmaPrkGCAzFMC_FYZUkmSr (https://www.youtube.com/watch?v=q49vsCjpWGs&list=PLqj39LCvnOWbmaPrkGCAzFMC_FYZUkmSr) – A batch of ElixirConf 2022 videos were released
- https://elixirconf.uy/ (https://elixirconf.uy/) – ElixirConf UY - Uruguay - In-person and virtual on Nov 12th
Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at [email protected] (mailto:[email protected])
Discussion Resources
- https://github.com/cabol/nebulex (https://github.com/cabol/nebulex)
- https://www.oracle.com/java/coherence/ (https://www.oracle.com/java/coherence/)
- https://github.com/duomark/epocxy (https://github.com/duomark/epocxy)
- https://github.com/derekkraan/horde (https://github.com/derekkraan/horde)
- https://github.com/whitfin/cachex (https://github.com/whitfin/cachex)
- https://github.com/arjan/decorator (https://github.com/arjan/decorator)
- https://www.erlang.org/doc/man/mnesia.html (https://www.erlang.org/doc/man/mnesia.html)
- https://www.martinfowler.com/bliki/TwoHardThings.html (https://www.martinfowler.com/bliki/TwoHardThings.html)
- There are only two hard things in Computer Science - cache invalidation and naming things. -Phil Karlton
Guest Information
- https://twitter.com/CAndresBolanos (https://twitter.com/CAndresBolanos) – on Twitter
- https://github.com/cabol/ (https://github.com/cabol/) – on Github
- http://cabol.github.io/ (http://cabol.github.io/) – Blog
- https://medium.com/@cabol (https://medium.com/@cabol) – Medium
Find us online
- Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir)
- Email the show - [email protected] (mailto:[email protected])
- Mark Ericksen - @brainlid (https://twitter.com/brainlid)
- David Bernheisel - @bernheisel (https://twitter.com/bernheisel)
- Cade Ward - @cadebward (https://twitter.com/cadebward)

We wanted to go deeper on the caching library Nebulex, so we visited with the creator, Carlos Bolaños, to learn what prompted its creation. Nebulex takes a couple unique approaches to things. It supports a decorator pattern to indicate that a function should be cached without having to write the boilerplate code for reading and writing to the cache. Nebulex was inspired by Ecto, in that it supports multiple adapters to different backends like Redis, Cachex and even Horde! It also supports multiple caching strategies. It's an interesting project that aims to solve common caching challenges in new ways and we enjoyed learning more about it.

Show Notes online - http://podcast.thinkingelixir.com/124

Elixir Community News

https://hex.pm/blog/hex-v2.0-released-with-new-version-solver – Hex 2.0 released with a new version solver
https://twitter.com/emjii/status/1587116679724765184
https://nex3.medium.com/pubgrub-2fb6470504f – Based on the algorithm PubGrub used by Dart's packager at https://pub.dev
https://twitter.com/benoitc/status/1584699685822164995 – erlang-certifi 2.10.0, updated SSL Certificates bundle
https://twitter.com/josevalim/status/1585290898497224712 – Broadway update has new version of the Google Cloud PubSub adapter
https://twitter.com/joladev/status/1585302755085717504
https://elixir-broadway.org/
https://twitter.com/josevalim/status/1585733673256906752 – VegaLite, the graphing library used in Livebook, was updated to add support for binning, scaling, and different color schemes.
https://twitter.com/akoutmos/status/1586566107447656449 – Alex Koutmos is adding a file upload SmartCell for Livebook and shared a preview of it online.
https://twitter.com/davydog187/status/1584967478991388674 – Dave Lucia got TimescaleDB working in Livebook
https://github.com/timescale
https://twitter.com/sean_moriarity/status/1571983702413959175 – Sean Moriarity wrote 15 Livebook guides which go deeper into some of Axon's APIs.
https://elixir-nx.github.io/axon/Axon.html
https://fly.io/phoenix-files/shut-down-idle-phoenix-app/ – Chris McCord wrote a blog post about how a Phoenix app can shut itself down when idle.
https://newrelic.com/blog/how-to-relic/memory-spikes-erlang – Article about using Observer to debug memory bugs by Matt Baker
https://open.spotify.com/episode/0yMdXbB2MVmIb8MN8crEgV – Jose Valim was the guest on the "Software Unscripted" podcast to talk about introducing static types to Elixir.
https://www.youtube.com/watch?v=q49vsCjpWGs&list=PLqj39LCvnOWbmaPrkGCAzFMC_FYZUkmSr – A batch of ElixirConf 2022 videos were released
https://elixirconf.uy/ – ElixirConf UY - Uruguay - In-person and virtual on Nov 12th

Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at [email protected]

Discussion Resources

https://github.com/cabol/nebulex
https://www.oracle.com/java/coherence/
https://github.com/duomark/epocxy
https://github.com/derekkraan/horde
https://github.com/whitfin/cachex
https://github.com/arjan/decorator
https://www.erlang.org/doc/man/mnesia.html
https://www.martinfowler.com/bliki/TwoHardThings.html
There are only two hard things in Computer Science - cache invalidation and naming things. -Phil Karlton

Guest Information

https://twitter.com/CAndresBolanos – on Twitter
https://github.com/cabol/ – on Github
http://cabol.github.io/ – Blog
https://medium.com/@cabol – Medium

Find us online

Message the show - @ThinkingElixir
Email the show - [email protected]
Mark Ericksen - @brainlid
David Bernheisel - @bernheisel
Cade Ward - @cadebward

Sponsored By:

Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!

Twitter Mentions