60 min listen
52: IOList and Postgres with Nathan Long
ratings:
Length:
50 minutes
Released:
Jun 15, 2021
Format:
Podcast episode
Description
We take a deeper dive with Nathan Long into IOLists in Elixir. We cover what they are, how they work, the power they have when concatenating strings, and how they are used in Phoenix and Logger. We even talk about improper lists and why they exist. And no, it isn’t a bug. We then talk about PostgreSQL features like materialized views, triggers, and using denormalized tables for solving complicated caching situations. Nathan shares some tips for when to use them and provides some cautions worth hearing.
Show Notes online - http://podcast.thinkingelixir.com/52 (http://podcast.thinkingelixir.com/52)
Elixir Community News
- https://2021.elixirconf.com/ (https://2021.elixirconf.com/) – ElixirConf US 2021 ElixirConf US 2021 scheduled for October
- https://elixir-lang.org/blog/2021/06/02/social-virtual-spaces-with-elixir-at-mozilla/ (https://elixir-lang.org/blog/2021/06/02/social-virtual-spaces-with-elixir-at-mozilla/) – New Elixir Case study about Mozilla using Phoenix to create an opensource virtual social space called "Hubs"
- https://ziglang.org/ (https://ziglang.org/) – Zig, the language some use to create NIFs was updated for Apple Silicon.
- https://github.com/ityonemo/zigler (https://github.com/ityonemo/zigler) – The Elixir library for working with embedded Zig code
- https://twitter.com/sean_moriarity/status/1401182959844143104 (https://twitter.com/sean_moriarity/status/1401182959844143104) – Training Callback feature added to Axon
- https://github.com/elixir-nx/livebook/pull/328 (https://github.com/elixir-nx/livebook/pull/328) – Livebook gets a new "inputs" feature
- https://thinkingelixir.com/podcast-episodes/046-livebook-with-jonatan-klosko/ (https://thinkingelixir.com/podcast-episodes/046-livebook-with-jonatan-klosko/) – Previous discussion with Livebook developer Jonatan Kłosko
- https://twitter.com/michalslaski/status/1402243589720117255 (https://twitter.com/michalslaski/status/1402243589720117255) – Livebook notebook example shows a scatterplot displaying BEAM statistics like reductions and memory of processes
- https://www.mitchellhanberg.com/how-i-handle-static-assets-in-my-phoenix-apps/ (https://www.mitchellhanberg.com/how-i-handle-static-assets-in-my-phoenix-apps/) – Ditch webpack? Handling static assets with Phoenix and esbuild, postcss-cli, cpx
- https://www.mitchellhanberg.com/how-to-set-up-neovim-for-elixir-development/ (https://www.mitchellhanberg.com/how-to-set-up-neovim-for-elixir-development/) – Followup from last week's news item about Neovim, Language Server integration
Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com)
Discussion Resources
- https://nathanmlong.com/2021/05/what-is-an-iolist/ (https://nathanmlong.com/2021/05/what-is-an-iolist/)
- https://nathanmlong.com/2016/11/elixir-and-io-lists-part-2-io-lists-in-phoenix/ (https://nathanmlong.com/2016/11/elixir-and-io-lists-part-2-io-lists-in-phoenix/) – Discussion on IOLists in Phoenix
- https://nathanmlong.com/2016/11/elixir-and-unicode-part-1-unicode-and-utf8-explained/ (https://nathanmlong.com/2016/11/elixir-and-unicode-part-1-unicode-and-utf8-explained/) – Unicode background part 1
- https://nathanmlong.com/2016/11/elixir-and-unicode-part-2-working-with-unicode-strings/ (https://nathanmlong.com/2016/11/elixir-and-unicode-part-2-working-with-unicode-strings/) – Unicode background part 2
- https://devchat.tv/elixir-mix/emx-078-phoenix-phrenzy-with-nathan-long/ (https://devchat.tv/elixir-mix/emx-078-phoenix-phrenzy-with-nathan-long/) – Mark talked with Nathan back on Elixir Mix 78 about his work on the Phoenix Phrenzy competition/project
- https://thinkingelixir.com/podcast-episodes/044-elixir-data-types-with-sasha-fonseca/ (https://thinkingelixir.com/podcast-episodes/044-elixir-data-types-with-sasha-fonseca/) – Episode 44 with Sasha Fonseca covered IOLists
- https://www.youtube.com/watch?v=uf6cgxm9iFQ (https://www.youtube.com/wat
Show Notes online - http://podcast.thinkingelixir.com/52 (http://podcast.thinkingelixir.com/52)
Elixir Community News
- https://2021.elixirconf.com/ (https://2021.elixirconf.com/) – ElixirConf US 2021 ElixirConf US 2021 scheduled for October
- https://elixir-lang.org/blog/2021/06/02/social-virtual-spaces-with-elixir-at-mozilla/ (https://elixir-lang.org/blog/2021/06/02/social-virtual-spaces-with-elixir-at-mozilla/) – New Elixir Case study about Mozilla using Phoenix to create an opensource virtual social space called "Hubs"
- https://ziglang.org/ (https://ziglang.org/) – Zig, the language some use to create NIFs was updated for Apple Silicon.
- https://github.com/ityonemo/zigler (https://github.com/ityonemo/zigler) – The Elixir library for working with embedded Zig code
- https://twitter.com/sean_moriarity/status/1401182959844143104 (https://twitter.com/sean_moriarity/status/1401182959844143104) – Training Callback feature added to Axon
- https://github.com/elixir-nx/livebook/pull/328 (https://github.com/elixir-nx/livebook/pull/328) – Livebook gets a new "inputs" feature
- https://thinkingelixir.com/podcast-episodes/046-livebook-with-jonatan-klosko/ (https://thinkingelixir.com/podcast-episodes/046-livebook-with-jonatan-klosko/) – Previous discussion with Livebook developer Jonatan Kłosko
- https://twitter.com/michalslaski/status/1402243589720117255 (https://twitter.com/michalslaski/status/1402243589720117255) – Livebook notebook example shows a scatterplot displaying BEAM statistics like reductions and memory of processes
- https://www.mitchellhanberg.com/how-i-handle-static-assets-in-my-phoenix-apps/ (https://www.mitchellhanberg.com/how-i-handle-static-assets-in-my-phoenix-apps/) – Ditch webpack? Handling static assets with Phoenix and esbuild, postcss-cli, cpx
- https://www.mitchellhanberg.com/how-to-set-up-neovim-for-elixir-development/ (https://www.mitchellhanberg.com/how-to-set-up-neovim-for-elixir-development/) – Followup from last week's news item about Neovim, Language Server integration
Do you have some Elixir news to share? Tell us at @ThinkingElixir (https://twitter.com/ThinkingElixir) or email at show@thinkingelixir.com (mailto:show@thinkingelixir.com)
Discussion Resources
- https://nathanmlong.com/2021/05/what-is-an-iolist/ (https://nathanmlong.com/2021/05/what-is-an-iolist/)
- https://nathanmlong.com/2016/11/elixir-and-io-lists-part-2-io-lists-in-phoenix/ (https://nathanmlong.com/2016/11/elixir-and-io-lists-part-2-io-lists-in-phoenix/) – Discussion on IOLists in Phoenix
- https://nathanmlong.com/2016/11/elixir-and-unicode-part-1-unicode-and-utf8-explained/ (https://nathanmlong.com/2016/11/elixir-and-unicode-part-1-unicode-and-utf8-explained/) – Unicode background part 1
- https://nathanmlong.com/2016/11/elixir-and-unicode-part-2-working-with-unicode-strings/ (https://nathanmlong.com/2016/11/elixir-and-unicode-part-2-working-with-unicode-strings/) – Unicode background part 2
- https://devchat.tv/elixir-mix/emx-078-phoenix-phrenzy-with-nathan-long/ (https://devchat.tv/elixir-mix/emx-078-phoenix-phrenzy-with-nathan-long/) – Mark talked with Nathan back on Elixir Mix 78 about his work on the Phoenix Phrenzy competition/project
- https://thinkingelixir.com/podcast-episodes/044-elixir-data-types-with-sasha-fonseca/ (https://thinkingelixir.com/podcast-episodes/044-elixir-data-types-with-sasha-fonseca/) – Episode 44 with Sasha Fonseca covered IOLists
- https://www.youtube.com/watch?v=uf6cgxm9iFQ (https://www.youtube.com/wat
Released:
Jun 15, 2021
Format:
Podcast episode
Titles in the series (100)
2: REST vs GraphQL with Ben Wilson: REST Controllers vs GraphQL. You've probably heard of GraphQL but maybe you haven't played with it yet. We talk with Ben Wilson, co-creator of Absinthe, a GraphQL library for Elixir and the book Craft GraphQL APIs in Elixir with Absinthe to get a bette... by Thinking Elixir Podcast