The Thinking Elixir podcast is a weekly show where we talk about the Elixir programming language and the community around it. We cover news and interview guests to learn more about projects and developments in the community.
Similar Podcasts

The Cynical Developer
A UK based Technology and Software Developer Podcast that helps you to improve your development knowledge and career,
through explaining the latest and greatest in development technology and providing you with what you need to succeed as a developer.

Elixir Outlaws
Elixir Outlaws is an informal discussion about interesting things happening in Elixir. Our goal is to capture the spirit of a conference hallway discussion in a podcast.

Linux For Everyone
A show about the thrilling world of desktop Linux, open-source software, and the community creating it. For beginners and veterans alike! Hosted by Jason Evangelho, Jerry Morrison and Schykle.
161: Lexical LS and Elixir Dev UX
Language Servers underpin the language specific support we rely on in modern code editors. Lately, there have been new efforts in this area in the Elixir community. We talk with Steve Cohen about his project Lexical LS to learn about his new Elixir Language Server, how long he's been at it, and what it can do today. We learn about some of the technical challenges when creating a tool like this, and why there's still room for new projects in this area. Steve explains how Lexical LS is architected and that it is a goal to be easy to contribute to and work on the Lexical project itself. Time to give it a try! Show Notes online - http://podcast.thinkingelixir.com/161 (http://podcast.thinkingelixir.com/161) Elixir Community News - https://github.com/elixir-lang/elixir/releases/tag/v1.15.4 (https://github.com/elixir-lang/elixir/releases/tag/v1.15.4?utm_source=thinkingelixir&utm_medium=shownotes) – Elixir v1.15.3 and v1.15.4 were released. v1.15.4 includes fixes for running on Erlang/OTP 26. - https://github.com/elixir-lang/elixir/releases/tag/v1.15.3 (https://github.com/elixir-lang/elixir/releases/tag/v1.15.3?utm_source=thinkingelixir&utm_medium=shownotes) – Elixir v1.15.3 release notes - https://gleam.run/news/v0.30-local-dependencies-and-enhanced-externals/ (https://gleam.run/news/v0.30-local-dependencies-and-enhanced-externals/?utm_source=thinkingelixir&utm_medium=shownotes) – Gleam v0.30 was released - https://news.livebook.dev/whats-new-in-livebook-0.10---introducing-multi-session-livebook-apps-3Dbpss (https://news.livebook.dev/whats-new-in-livebook-0.10---introducing-multi-session-livebook-apps-3Dbpss?utm_source=thinkingelixir&utm_medium=shownotes) – The Livebook v0.10 was released - https://gitlab.com/MachinesAreUs/archeometer (https://gitlab.com/MachinesAreUs/archeometer?utm_source=thinkingelixir&utm_medium=shownotes) – Archeometer analyzes your project and now supports a --format livemd - https://twitter.com/MachinesAreUs/status/1676127531840204800 (https://twitter.com/MachinesAreUs/status/1676127531840204800?utm_source=thinkingelixir&utm_medium=shownotes) – Archeometer Twitter share with Livebook demo - https://gitlab.com/MachinesAreUs/archeometer/-/merge_requests/205 (https://gitlab.com/MachinesAreUs/archeometer/-/merge_requests/205?utm_source=thinkingelixir&utm_medium=shownotes) – MR for the new feature - https://twitter.com/wojtekmach/status/1679919717648138241 (https://twitter.com/wojtekmach/status/1679919717648138241?utm_source=thinkingelixir&utm_medium=shownotes) – Learned about "repotransact" as an alternative to Ecto.Multi - https://tomkonidas.com/repo-transact/ (https://tomkonidas.com/repo-transact/?utm_source=thinkingelixir&utm_medium=shownotes) – Blog post about repotransact with the code - https://twitter.com/germsvel/status/1678721797561131012 (https://twitter.com/germsvel/status/1678721797561131012?utm_source=thinkingelixir&utm_medium=shownotes) – German Valesco highlighted the new DateTime comparison functions added in Elixir 1.15. - https://github.com/phoenixframework/dns_cluster (https://github.com/phoenixframework/dns_cluster?utm_source=thinkingelixir&utm_medium=shownotes) – DNS Cluster - Simple DNS clustering for distributed Elixir nodes - https://twitter.com/DNAutics/status/1679902629000880128 (https://twitter.com/DNAutics/status/1679902629000880128?utm_source=thinkingelixir&utm_medium=shownotes) – Apical 0.2.0 released - an OpenAPI schema builder - https://0x7f.dev/post/ntp-implementation-in-elixir (https://0x7f.dev/post/ntp-implementation-in-elixir?utm_source=thinkingelixir&utm_medium=shownotes) – Post about implementing a Network Time Protocol in Elixir. - https://erikarow.land/articles/mix-completions (https://erikarow.land/articles/mix-completions?utm_source=thinkingelixir&utm_medium=shownotes) – Post about implementing shell completions for mix tasks - https://www.youtube.com/playlist?list=PLKBMoE8mCkXijPYoLCKtWeHa-q69EYwDf (https://www.youtube.com/playlist?list=PLKBMoE8mCkXijPYoLCKtWeHa-q69EYwDf?utm_source=thinkingelixir&utm_medium=shownotes) – Youtube playlist for published GigCityElixir conference talks 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://github.com/lexical-lsp/lexical (https://github.com/lexical-lsp/lexical?utm_source=thinkingelixir&utm_medium=shownotes) – Lexical LS Github project - https://github.com/lexical-lsp/vscode-lexical (https://github.com/lexical-lsp/vscode-lexical?utm_source=thinkingelixir&utm_medium=shownotes) – Lexical VS Code project - https://github.com/lexical-lsp/vscode-lexical#known-issues (https://github.com/lexical-lsp/vscode-lexical#known-issues?utm_source=thinkingelixir&utm_medium=shownotes) – Currently need to using Erlang 25.2 - https://marketplace.visualstudio.com/items?itemName=lexical-lsp.lexical (https://marketplace.visualstudio.com/items?itemName=lexical-lsp.lexical?utm_source=thinkingelixir&utm_medium=shownotes) – VS Marketplace Link for Lexical LS extension - https://venturebeat.com/dev/pinterest-elixir/ (https://venturebeat.com/dev/pinterest-elixir/?utm_source=thinkingelixir&utm_medium=shownotes) - https://discord.com/invite/elixir (https://discord.com/invite/elixir?utm_source=thinkingelixir&utm_medium=shownotes) – Join the Elixir Discord - https://github.com/elixir-lsp/elixir_sense (https://github.com/elixir-lsp/elixir_sense?utm_source=thinkingelixir&utm_medium=shownotes) - https://en.wikipedia.org/wiki/ComparisonofUnicode_encodings (https://en.wikipedia.org/wiki/Comparison_of_Unicode_encodings?utm_source=thinkingelixir&utm_medium=shownotes) Guest Information - https://twitter.com/icecreamcohen (https://twitter.com/icecreamcohen?utm_source=thinkingelixir&utm_medium=shownotes) – on Twitter - https://github.com/scohen/ (https://github.com/scohen/?utm_source=thinkingelixir&utm_medium=shownotes) – on Github Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Message the show on Fediverse - @ThinkingElixir@genserver.social (https://genserver.social/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - Mark Ericksen on Fediverse - @brainlid@genserver.social (https://genserver.social/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - David Bernheisel on Fediverse - @dbern@genserver.social (https://genserver.social/dbern) - Cade Ward - @cadebward (https://twitter.com/cadebward) - Cade Ward on Fediverse - @cadebward@genserver.social (https://genserver.social/cadebward)
160: LiveView Async Pattern and Admin Tools
After experience with a LiveView “anti-pattern”, Andy Glassman developed an “Async Pattern” for loading data into a LiveView. Andy shares the problem this helps solve and we discuss when it's a good fit. We also talk with Andy about the current state of “admin tools” in Elixir and he shares his feelings on the importance of building admin tools from the start in our projects. Show Notes online - http://podcast.thinkingelixir.com/160 (http://podcast.thinkingelixir.com/160) Elixir Community News - https://twitter.com/josevalim/status/1678411790361718786 (https://twitter.com/josevalim/status/1678411790361718786?utm_source=thinkingelixir&utm_medium=shownotes) – A new Livebook version should have been released with a new “Presentation View” feature - https://2023.elixirconf.com/presenters#speakers (https://2023.elixirconf.com/presenters#speakers?utm_source=thinkingelixir&utm_medium=shownotes) – List of speakers for ElixirConf US 2023 has been released along with their talk topics. - https://paraxial.io/blog/app-audit (https://paraxial.io/blog/app-audit?utm_source=thinkingelixir&utm_medium=shownotes) – Inspecting Elixir Dependencies at Runtime for Security - https://twitter.com/josevalim/status/1678536270664876033 (https://twitter.com/josevalim/status/1678536270664876033?utm_source=thinkingelixir&utm_medium=shownotes) – José Valim completed his live-coding work to load database results directly into Explorer dataframes with ADBC - https://github.com/elixir-explorer/explorer/pull/648 (https://github.com/elixir-explorer/explorer/pull/648?utm_source=thinkingelixir&utm_medium=shownotes) – ADBC work resulted in a PR - https://twitter.com/mitchhanberg/status/1676611642786820096 (https://twitter.com/mitchhanberg/status/1676611642786820096?utm_source=thinkingelixir&utm_medium=shownotes) – Mitch Hanberg announced the first public release of Next LS and an elixir-tools update. - https://www.elixir-tools.dev/news/introducing-next-ls-and-an-elixir-tools-update/ (https://www.elixir-tools.dev/news/introducing-next-ls-and-an-elixir-tools-update/?utm_source=thinkingelixir&utm_medium=shownotes) – To get started with Next LS, either install the “Elixir Tools” NeoVim extension or the “Elixir Tools” VSCode extension. - https://twitter.com/joao_lubien/status/1676983495476891648 (https://twitter.com/joao_lubien/status/1676983495476891648?utm_source=thinkingelixir&utm_medium=shownotes) – Lubien wrote a mix task to turn any Phoenix Site into a static site. - https://github.com/lubien/single-file-phoenix-static/blob/main/lib/mix/tasks/generate_static.ex (https://github.com/lubien/single-file-phoenix-static/blob/main/lib/mix/tasks/generate_static.ex?utm_source=thinkingelixir&utm_medium=shownotes) – Lubien's example mix task - https://tylerayoung.com/2023/07/08/hiring-elixir-devs/ (https://tylerayoung.com/2023/07/08/hiring-elixir-devs/?utm_source=thinkingelixir&utm_medium=shownotes) – Tyler Young wrote a blog post with tips for companies wanting to hire Elixir devs. - https://twitter.com/TylerAYoung/status/1677635466990874626 (https://twitter.com/TylerAYoung/status/1677635466990874626?utm_source=thinkingelixir&utm_medium=shownotes) – Tyler's Twitter thread - https://johnelmlabs.com/posts/magic-link-auth/ (https://johnelmlabs.com/posts/magic-link-auth/?utm_source=thinkingelixir&utm_medium=shownotes) – John Curran wrote up a nice guide for how to build the “magic link” feature into mix gen.auth generated code - https://link.springer.com/article/10.1007/s10664-023-10343-6 (https://link.springer.com/article/10.1007/s10664-023-10343-6?utm_source=thinkingelixir&utm_medium=shownotes) – Paper about Elixir was submitted to the Empirical Software Engineering journal titled “Understanding code smells in Elixir functional language” - https://twitter.com/peregrine/status/1676984142251081728 (https://twitter.com/peregrine/status/1676984142251081728?utm_source=thinkingelixir&utm_medium=shownotes) – Jason Stiebs wrote a post about how “Elixir Docs are Built Different” - https://fly.io/phoenix-files/elixir-docs-are-built-different/ (https://fly.io/phoenix-files/elixir-docs-are-built-different/?utm_source=thinkingelixir&utm_medium=shownotes) – Article that guides people on using the Elixir docs. 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://blog.andyglassman.com/2023/06/phoenix-liveview-async-assign-pattern.html (https://blog.andyglassman.com/2023/06/phoenix-liveview-async-assign-pattern.html?utm_source=thinkingelixir&utm_medium=shownotes) – Phoenix Live View - Async Assigns - https://blog.andyglassman.com/2022/08/write-admin-tools-from-day-one.html (https://blog.andyglassman.com/2022/08/write-admin-tools-from-day-one.html?utm_source=thinkingelixir&utm_medium=shownotes) – Write Admin Tools From Day One - https://sway.dm/info/ (https://sway.dm/info/?utm_source=thinkingelixir&utm_medium=shownotes) - https://www.empex.co/new-york (https://www.empex.co/new-york?utm_source=thinkingelixir&utm_medium=shownotes) - https://github.com/aesmail/kaffy (https://github.com/aesmail/kaffy?utm_source=thinkingelixir&utm_medium=shownotes) - https://www.youtube.com/watch?v=3c9kMmxeSA0 (https://www.youtube.com/watch?v=3c9kMmxeSA0?utm_source=thinkingelixir&utm_medium=shownotes) – Andy Glassman - Write Admin Tools from Day One (EMPEX) - https://github.com/pragdave/earmark (https://github.com/pragdave/earmark?utm_source=thinkingelixir&utm_medium=shownotes) - https://activeadmin.info/ (https://activeadmin.info/?utm_source=thinkingelixir&utm_medium=shownotes) - https://github.com/ash-project/ash_admin (https://github.com/ash-project/ash_admin?utm_source=thinkingelixir&utm_medium=shownotes) - https://www.postman.com/collection/ (https://www.postman.com/collection/?utm_source=thinkingelixir&utm_medium=shownotes) Guest Information - https://twitter.com/a_glassman (https://twitter.com/a_glassman?utm_source=thinkingelixir&utm_medium=shownotes) – on Twitter - https://github.com/aglassman/ (https://github.com/aglassman/?utm_source=thinkingelixir&utm_medium=shownotes) – on Github - https://blog.andyglassman.com/ (https://blog.andyglassman.com/?utm_source=thinkingelixir&utm_medium=shownotes) – Blog Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Message the show on Fediverse - @ThinkingElixir@genserver.social (https://genserver.social/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - Mark Ericksen on Fediverse - @brainlid@genserver.social (https://genserver.social/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - David Bernheisel on Fediverse - @dbern@genserver.social (https://genserver.social/dbern) - Cade Ward - @cadebward (https://twitter.com/cadebward) - Cade Ward on Fediverse - @cadebward@genserver.social (https://genserver.social/cadebward)
159: Langchain with Elixir and Safe Ecto Migrations
Mark and David share what's caught their interests and focus. Langchain is a popular framework in JS and Python communities for building services that knit together different services enabling people to quickly build impressive demos. Mark talks about the parts of Langchain that interest him and how he's been building ways for Elixir apps to play in that space too. We also catch up with David’s job change, moving, and talk about his ideas around using Oban for managing data migrations in a new way. Show Notes online - http://podcast.thinkingelixir.com/159 (http://podcast.thinkingelixir.com/159) Elixir Community News - https://twitter.com/josevalim/status/1674817111863054337 (https://twitter.com/josevalim/status/1674817111863054337?utm_source=thinkingelixir&utm_medium=shownotes) – Elixir v1.15.2 and Erlang/OTP 26.0.2 are both out. All of the known bugs have been ironed out. This release also contains fixes needed by ElixirLS. ElixirLS release 0.15.1 leverages these. - https://github.com/elixir-lang/elixir/releases/tag/v1.15.1 (https://github.com/elixir-lang/elixir/releases/tag/v1.15.1?utm_source=thinkingelixir&utm_medium=shownotes) - https://github.com/elixir-lang/elixir/releases/tag/v1.15.2 (https://github.com/elixir-lang/elixir/releases/tag/v1.15.2?utm_source=thinkingelixir&utm_medium=shownotes) - https://twitter.com/josevalim/status/1675900744954785796 (https://twitter.com/josevalim/status/1675900744954785796?utm_source=thinkingelixir&utm_medium=shownotes) – Elixir's type system has moved out of the “research” phase into the “development” phase. - https://elixir-lang.org/blog/2023/06/22/type-system-updates-research-dev/ (https://elixir-lang.org/blog/2023/06/22/type-system-updates-research-dev/?utm_source=thinkingelixir&utm_medium=shownotes) - https://twitter.com/ElixirConf/status/1675995012453093376 (https://twitter.com/ElixirConf/status/1675995012453093376?utm_source=thinkingelixir&utm_medium=shownotes) – José will be talking more about the Elixir work around types in his ElixirConf US 2023 keynote talk. - https://twitter.com/josevalim/status/1674893183640125442 (https://twitter.com/josevalim/status/1674893183640125442?utm_source=thinkingelixir&utm_medium=shownotes) – José shared where he wants to turn more of his focus in Elixir 1.16. It's all around “docs”. - https://github.com/woodward/integrator (https://github.com/woodward/integrator?utm_source=thinkingelixir&utm_medium=shownotes) – A new Nx focused Hex package by Greg Woodward called “Integrator”. - https://github.com/woodward/integrator/tree/main/guides (https://github.com/woodward/integrator/tree/main/guides?utm_source=thinkingelixir&utm_medium=shownotes) – Includes Livebook guides with samples - https://twitter.com/whatyouhide/status/1675887336339406850 (https://twitter.com/whatyouhide/status/1675887336339406850?utm_source=thinkingelixir&utm_medium=shownotes) – Andrea Leopardi released v2.0.0 of Corsica, an Elixir library for handling CORS requests. - https://hex.pm/packages/corsica (https://hex.pm/packages/corsica?utm_source=thinkingelixir&utm_medium=shownotes) - https://twitter.com/voltonez/status/1676125858581422080 (https://twitter.com/voltonez/status/1676125858581422080?utm_source=thinkingelixir&utm_medium=shownotes) – Bram Verburg pointed out AWS RDS database connection failure issue after upgrading to Erlang/OTP 26 is probably due to certificate validation. - https://elixirforum.com/t/aws-rds-castore-certificate-validation-for-aws-rds-dbs/55111 (https://elixirforum.com/t/aws-rds-castore-certificate-validation-for-aws-rds-dbs/55111?utm_source=thinkingelixir&utm_medium=shownotes) - https://github.com/voltone/awsrdscastore (https://github.com/voltone/aws_rds_castore?utm_source=thinkingelixir&utm_medium=shownotes) – The Hex package awsrdscastore to help manage AWS CA certificates - https://hex.pm/packages/image (https://hex.pm/packages/image?utm_source=thinkingelixir&utm_medium=shownotes) – Image 0.35.0 was released. Updates primarily focused on image contrast. - https://twitter.com/DNAutics/status/1676059564188286976 (https://twitter.com/DNAutics/status/1676059564188286976?utm_source=thinkingelixir&utm_medium=shownotes) – ZigDocs was released - https://hexdocs.pm/zig_doc/Zig.Doc.html (https://hexdocs.pm/zig_doc/Zig.Doc.html?utm_source=thinkingelixir&utm_medium=shownotes) – Integrates Zig documentation into Elixir docs. - https://getoban.pro/releases#1.0.0 (https://getoban.pro/releases#1.0.0?utm_source=thinkingelixir&utm_medium=shownotes) – Oban Pro v1.0 is out without any new features or bugfixes, purely a renamed engine and deprecation cleanup. 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://blog.langchain.dev/announcing-our-10m-seed-round-led-by-benchmark/ (https://blog.langchain.dev/announcing-our-10m-seed-round-led-by-benchmark/?utm_source=thinkingelixir&utm_medium=shownotes) – Langchain announced $10m seed round - https://js.langchain.com/docs/ (https://js.langchain.com/docs/?utm_source=thinkingelixir&utm_medium=shownotes) – Langchain JS docs and introduction to the project - https://python.langchain.com/docs/get_started/introduction.html (https://python.langchain.com/docs/get_started/introduction.html?utm_source=thinkingelixir&utm_medium=shownotes) – Python version of the docs - Be agentic - allow a language model to interact with its environment - https://github.com/orthagonal/langchainex (https://github.com/orthagonal/langchainex?utm_source=thinkingelixir&utm_medium=shownotes) – Existing Elixir library called langchainex. - https://twitter.com/josevalim/status/1668726716947222528 (https://twitter.com/josevalim/status/1668726716947222528?utm_source=thinkingelixir&utm_medium=shownotes) – José talked about OpenAI's new function support - https://openai.com/blog/function-calling-and-other-api-updates (https://openai.com/blog/function-calling-and-other-api-updates?utm_source=thinkingelixir&utm_medium=shownotes) – OpenAI blog announcing official function calling support - https://dscout.com/ (https://dscout.com/?utm_source=thinkingelixir&utm_medium=shownotes) - David is thinking about Oban and data migrations - https://fly.io/phoenix-files/safe-ecto-migrations/ (https://fly.io/phoenix-files/safe-ecto-migrations/?utm_source=thinkingelixir&utm_medium=shownotes) – David wrote a guide on how to run Safe Ecto Migrations for production systems - https://github.com/fly-apps/safe-ecto-migrations (https://github.com/fly-apps/safe-ecto-migrations?utm_source=thinkingelixir&utm_medium=shownotes) – Guide to Safe Ecto Migrations on Github Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Message the show on Fediverse - @ThinkingElixir@genserver.social (https://genserver.social/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - Mark Ericksen on Fediverse - @brainlid@genserver.social (https://genserver.social/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - David Bernheisel on Fediverse - @dbern@genserver.social (https://genserver.social/dbern) - Cade Ward - @cadebward (https://twitter.com/cadebward) - Cade Ward on Fediverse - @cadebward@genserver.social (https://genserver.social/cadebward)
158: From Ruby to Elixir with Steve Bussey
A challenge for many people learning Elixir is the change in the mental model. Coming from OOP to Functional changes how we reason about our applications and the old way doesn't always map over cleanly. Also, Elixir is capable of doing a lot more than other languages and frameworks can and this means learning how to build a “normal” application may change. We talk with Steve Bussey about his new book “From Ruby to Elixir” that aims to help people bridge that gap. While the title says “Ruby”, we discuss how many of the concepts apply to people coming from most OOP languages. We talk about different libraries to recommend to people coming from a traditional Rails stack and more! Show Notes online - http://podcast.thinkingelixir.com/158 (http://podcast.thinkingelixir.com/158) Elixir Community News - https://github.com/livebook-dev/livebook/security/advisories/GHSA-564w-97r7-c6p9 (https://github.com/livebook-dev/livebook/security/advisories/GHSA-564w-97r7-c6p9?utm_source=thinkingelixir&utm_medium=shownotes) – Livebook security advisory for Windows installs - https://twitter.com/livebookdev/status/1671576191461990407 (https://twitter.com/livebookdev/status/1671576191461990407?utm_source=thinkingelixir&utm_medium=shownotes) – Livebook security notice on Twitter - https://www.twitch.tv/josevalim/videos?filter=highlights&sort=time (https://www.twitch.tv/josevalim/videos?filter=highlights&sort=time?utm_source=thinkingelixir&utm_medium=shownotes) – José Valim shared where we can find past Twitch videos - https://elixirforum.com/t/elixir-v1-15-0-released/56584/6 (https://elixirforum.com/t/elixir-v1-15-0-released/56584/6?utm_source=thinkingelixir&utm_medium=shownotes) – Workaround for Elixir 1.15.0 with issues compiling the Erlang dependency sslverifyfun. - https://twitter.com/ac_alejos/status/1672351346278944769 (https://twitter.com/ac_alejos/status/1672351346278944769?utm_source=thinkingelixir&utm_medium=shownotes) – New Decision Tree library called Mockingjay takes advantage of Nx - https://github.com/acalejos/mockingjay (https://github.com/acalejos/mockingjay?utm_source=thinkingelixir&utm_medium=shownotes) – Mockingjay Decision Tree library - https://twitter.com/zachsdaniel1/status/1673278949667885057 (https://twitter.com/zachsdaniel1/status/1673278949667885057?utm_source=thinkingelixir&utm_medium=shownotes) – The EEF (Erlang Ecosystem Foundation) approved the creation of a new working group. - https://erlef.org/wg/libs-and-frameworks (https://erlef.org/wg/libs-and-frameworks?utm_source=thinkingelixir&utm_medium=shownotes) – the Libraries and Frameworks working group page - https://twitter.com/ZachSDaniel1/status/1672248650502660098 (https://twitter.com/ZachSDaniel1/status/1672248650502660098?utm_source=thinkingelixir&utm_medium=shownotes) – Ash Framework released 2.11.0-rc.0 is out - https://github.com/CargoSense/briefly (https://github.com/CargoSense/briefly?utm_source=thinkingelixir&utm_medium=shownotes) – Noticed "briefly" is a library to help manage temporary files - https://twitter.com/DNAutics/status/1672828839574089728 (https://twitter.com/DNAutics/status/1672828839574089728?utm_source=thinkingelixir&utm_medium=shownotes) – Isaac Yonemoto released 0.1 of his OpenAPI router library Apical - https://hexdocs.pm/apical (https://hexdocs.pm/apical?utm_source=thinkingelixir&utm_medium=shownotes) – Apical github project - https://www.elixir-tools.dev/next-ls/ (https://www.elixir-tools.dev/next-ls/?utm_source=thinkingelixir&utm_medium=shownotes) – Mitch Hanberg sharing some early progress with his Next-LS project. - https://twitter.com/royalicing/status/1671689512685301762 (https://twitter.com/royalicing/status/1671689512685301762?utm_source=thinkingelixir&utm_medium=shownotes) – Patrick Smith shared a sneak peak of a new library called Orb for compiling Elixir code to WebAssembly - https://github.com/ComponentsGuide/componentsguide/tree/master/lib/componentsguide/wasm (https://github.com/ComponentsGuide/components_guide/tree/master/lib/components_guide/wasm?utm_source=thinkingelixir&utm_medium=shownotes) – The OpenSource project where Orb code will be extracted from. 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://twitter.com/YOOOODAAAA/status/1663988571047354371 (https://twitter.com/YOOOODAAAA/status/1663988571047354371?utm_source=thinkingelixir&utm_medium=shownotes) – Twitter post announcing Beta version of the book. - https://pragprog.com/titles/sbelixir/from-ruby-to-elixir/ (https://pragprog.com/titles/sbelixir/from-ruby-to-elixir/?utm_source=thinkingelixir&utm_medium=shownotes) - https://www.supered.io/ (https://www.supered.io/?utm_source=thinkingelixir&utm_medium=shownotes) - https://pragprog.com/titles/sbsockets/real-time-phoenix/ (https://pragprog.com/titles/sbsockets/real-time-phoenix/?utm_source=thinkingelixir&utm_medium=shownotes) – Previous book "Real-Time Phoenix” published in March 2020. - https://www.supered.io (https://www.supered.io?utm_source=thinkingelixir&utm_medium=shownotes) - https://github.com/elixir-tesla/tesla (https://github.com/elixir-tesla/tesla?utm_source=thinkingelixir&utm_medium=shownotes) - https://github.com/wojtekmach/req (https://github.com/wojtekmach/req?utm_source=thinkingelixir&utm_medium=shownotes) Guest Information - https://twitter.com/YOOOODAAAA (https://twitter.com/YOOOODAAAA?utm_source=thinkingelixir&utm_medium=shownotes) – on Twitter - https://github.com/sb8244/ (https://github.com/sb8244/?utm_source=thinkingelixir&utm_medium=shownotes) – on Github - http://www.stephenbussey.com/ (http://www.stephenbussey.com/?utm_source=thinkingelixir&utm_medium=shownotes) – Blog Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Message the show on Fediverse - @ThinkingElixir@genserver.social (https://genserver.social/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - Mark Ericksen on Fediverse - @brainlid@genserver.social (https://genserver.social/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - David Bernheisel on Fediverse - @dbern@genserver.social (https://genserver.social/dbern) - Cade Ward - @cadebward (https://twitter.com/cadebward) - Cade Ward on Fediverse - @cadebward@genserver.social (https://genserver.social/cadebward)
157: Adding Dialyzer Late in the Game
Dialyzer is something that eventually everyone hears about in the Elixir community. It's a static code analysis tool that has both fans and detractors, and with good reasons on both sides! We talk with Noah Betzen about how he brought Dialyzer to several mature Elixir projects. He wanted the benefits of finding and fixing bugs and to prevent new problems from being added. He shared tools, strategies and other resources for how to get started without stopping everything to fix all the existing problems. If you've ever tried to add Dialyzer to a project and aborted, then this discussion may give you the courage and the tools to try again! Show Notes online - http://podcast.thinkingelixir.com/157 (http://podcast.thinkingelixir.com/157) Elixir Community News - https://elixir-lang.org/blog/2023/06/19/elixir-v1-15-0-released/ (https://elixir-lang.org/blog/2023/06/19/elixir-v1-15-0-released/?utm_source=thinkingelixir&utm_medium=shownotes) – Elixir 1.15 release blog post - https://github.com/elixir-lang/elixir/releases/tag/v1.15.0 (https://github.com/elixir-lang/elixir/releases/tag/v1.15.0?utm_source=thinkingelixir&utm_medium=shownotes) – full release notes - https://twitter.com/josevalim/status/1670879654134050828 (https://twitter.com/josevalim/status/1670879654134050828?utm_source=thinkingelixir&utm_medium=shownotes) – José Valim's tweet about reported compilation time improvements - https://elixirforum.com/t/elixir-v1-15-0-released/56584 (https://elixirforum.com/t/elixir-v1-15-0-released/56584?utm_source=thinkingelixir&utm_medium=shownotes) – ElixirForum.com post about the release with comments, feedback, and workarounds for issues. - https://github.com/phoenixframework/phoenix/blob/v1.7.4/CHANGELOG.md (https://github.com/phoenixframework/phoenix/blob/v1.7.4/CHANGELOG.md?utm_source=thinkingelixir&utm_medium=shownotes) – Phoenix 1.7.4 (then up to 1.7.6) was released with a small, but handy fix around deploying with active websockets - https://survey.stackoverflow.co/2023/ (https://survey.stackoverflow.co/2023/?utm_source=thinkingelixir&utm_medium=shownotes) – StackOverflow Developer Survey results - https://survey.stackoverflow.co/2023/#technology-most-popular-technologies (https://survey.stackoverflow.co/2023/#technology-most-popular-technologies?utm_source=thinkingelixir&utm_medium=shownotes) – Most popular technologies - https://survey.stackoverflow.co/2023/#section-top-paying-technologies-top-paying-technologies (https://survey.stackoverflow.co/2023/#section-top-paying-technologies-top-paying-technologies?utm_source=thinkingelixir&utm_medium=shownotes) – Top paying technologies - https://survey.stackoverflow.co/2023/#section-admired-and-desired-web-frameworks-and-technologies (https://survey.stackoverflow.co/2023/#section-admired-and-desired-web-frameworks-and-technologies?utm_source=thinkingelixir&utm_medium=shownotes) – Phoenix is the most admired web framework and technology - https://twitter.com/bcardarella/status/1669423297518264320 (https://twitter.com/bcardarella/status/1669423297518264320?utm_source=thinkingelixir&utm_medium=shownotes) – LiveView Native got animated charts working in SwiftCharts - https://twitter.com/moomerman/status/1670021284900614144 (https://twitter.com/moomerman/status/1670021284900614144?utm_source=thinkingelixir&utm_medium=shownotes) – Apache ECharts with LiveView - https://huggingface.co/blog/livebook-app-deployment (https://huggingface.co/blog/livebook-app-deployment?utm_source=thinkingelixir&utm_medium=shownotes) – José Valim's has a Livebook blog post on the Hugging Face blog. - https://twitter.com/thibaut_barrere/status/1670789241436028931 (https://twitter.com/thibaut_barrere/status/1670789241436028931?utm_source=thinkingelixir&utm_medium=shownotes) – Using IEx helpers in Livebook cells - import IEx.Helpers - https://twitter.com/germsvel/status/1669669754305404928 (https://twitter.com/germsvel/status/1669669754305404928?utm_source=thinkingelixir&utm_medium=shownotes) – German Velasco has created a number of short tip videos that now have a home on ElixirStreams.com - https://twitter.com/elixirphoenix/status/1670856560480747526 (https://twitter.com/elixirphoenix/status/1670856560480747526?utm_source=thinkingelixir&utm_medium=shownotes) – Adding Bandit to a Phoenix 1.7 project fits in a single tweet - https://erlef.org/events (https://erlef.org/events?utm_source=thinkingelixir&utm_medium=shownotes) – The EEF (Erlang Ecosystem Foundation) has an "events" page.1 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://fly.io/phoenix-files/adding-dialyzer-without-the-pain/ (https://fly.io/phoenix-files/adding-dialyzer-without-the-pain/?utm_source=thinkingelixir&utm_medium=shownotes) – Blog post with more resources and code - https://www.erlang.org/doc/man/dialyzer.html (https://www.erlang.org/doc/man/dialyzer.html?utm_source=thinkingelixir&utm_medium=shownotes) – Dialyzer docs - https://github.com/jeremyjh/dialyxir (https://github.com/jeremyjh/dialyxir?utm_source=thinkingelixir&utm_medium=shownotes) – Dialyxir project - https://github.com/jeremyjh/dialyxir/pull/493 (https://github.com/jeremyjh/dialyxir/pull/493?utm_source=thinkingelixir&utm_medium=shownotes) – PR to add new format for ignorefilestrict - https://elixirforum.com/t/blog-post-adding-dialyzer-without-the-pain/56461 (https://elixirforum.com/t/blog-post-adding-dialyzer-without-the-pain/56461?utm_source=thinkingelixir&utm_medium=shownotes) – Feedback to blog post that we discuss - https://www.youtube.com/watch?v=4PZE40h13wM (https://www.youtube.com/watch?v=4PZE40h13wM?utm_source=thinkingelixir&utm_medium=shownotes) – Slaying the Type Hydra, or How We Went from 12,000 Dialyzer Errors to None | Jesper Eskilson - Senior Engineer at Klarna - https://github.com/bamorim/typedectoschema (https://github.com/bamorim/typed_ecto_schema?utm_source=thinkingelixir&utm_medium=shownotes) - https://podcast.thinkingelixir.com/72 (https://podcast.thinkingelixir.com/72?utm_source=thinkingelixir&utm_medium=shownotes) – Interview about type_check - https://github.com/Qqwy/elixir-type_check (https://github.com/Qqwy/elixir-type_check?utm_source=thinkingelixir&utm_medium=shownotes) - https://github.com/lexical-lsp/lexical (https://github.com/lexical-lsp/lexical?utm_source=thinkingelixir&utm_medium=shownotes) – Lexical Language Server - https://github.com/elixir-tools/next-ls (https://github.com/elixir-tools/next-ls?utm_source=thinkingelixir&utm_medium=shownotes) – Next-LS Language Server - https://smartlogic.io/podcast/elixir-wizards/s10-e12-jose-guillaume-giuseppe-types-elixir/ (https://smartlogic.io/podcast/elixir-wizards/s10-e12-jose-guillaume-giuseppe-types-elixir/?utm_source=thinkingelixir&utm_medium=shownotes) – José Valim, Guillaume Duboc, and Giuseppe Castagna discussing static types in Elixir Guest Information - https://twitter.com/Nezteb (https://twitter.com/Nezteb?utm_source=thinkingelixir&utm_medium=shownotes) – on Twitter - https://github.com/Nezteb/ (https://github.com/Nezteb/?utm_source=thinkingelixir&utm_medium=shownotes) – on Github - https://genserver.social/Nezteb/ (https://genserver.social/Nezteb/?utm_source=thinkingelixir&utm_medium=shownotes) – on Fediverse - https://nezteb.net (https://nezteb.net?utm_source=thinkingelixir&utm_medium=shownotes) – Blog Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Message the show on Fediverse - @ThinkingElixir@genserver.social (https://genserver.social/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - Mark Ericksen on Fediverse - @brainlid@genserver.social (https://genserver.social/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - David Bernheisel on Fediverse - @dbern@genserver.social (https://genserver.social/dbern) - Cade Ward - @cadebward (https://twitter.com/cadebward) - Cade Ward on Fediverse - @cadebward@genserver.social (https://genserver.social/cadebward)
156: React to LiveView for Performance
When their React app stuttered and slowed with the hundreds of items they needed to display, Tim Gremore tried it out as a LiveView rendered page and found they could scale to thousands without issue. The LiveView version was so responsive the users thought it must not be working because there was no delay to register the changes! Tim shares their journey migrating a service from React to LiveView to solve their issue. He shares tips, what they learned in the process and more! Show Notes online - http://podcast.thinkingelixir.com/156 (http://podcast.thinkingelixir.com/156) Elixir Community News - https://github.com/elixir-lang/elixir/releases/tag/v1.15.0-rc.2 (https://github.com/elixir-lang/elixir/releases/tag/v1.15.0-rc.2?utm_source=thinkingelixir&utm_medium=shownotes) – Elixir 1.15.0-rc.2 - https://elixirforum.com/t/elixir-v1-15-0-rc-2-released/56450 (https://elixirforum.com/t/elixir-v1-15-0-rc-2-released/56450?utm_source=thinkingelixir&utm_medium=shownotes) – Release announcement on ElixirForum - https://danschultzer.com/posts/prefixed-base62-uuidv7-object-ids-with-ecto (https://danschultzer.com/posts/prefixed-base62-uuidv7-object-ids-with-ecto?utm_source=thinkingelixir&utm_medium=shownotes) – Automated UUIDs with human-friendly prefixes - blog post by Dan Schultzer - https://twitter.com/sean_moriarity/status/1668371536481337346 (https://twitter.com/sean_moriarity/status/1668371536481337346?utm_source=thinkingelixir&utm_medium=shownotes) – Decision trees get the ability to be compiled to Nx/EXLA - https://twitter.com/sean_moriarity/status/1668053540302999552 (https://twitter.com/sean_moriarity/status/1668053540302999552?utm_source=thinkingelixir&utm_medium=shownotes) – Sean Moriarity teased an image showing EXLA_TARGET=metal - https://github.com/phoenixframework/phoenixliveview/blob/v0.19.2/CHANGELOG.md#L1 (https://github.com/phoenixframework/phoenix_live_view/blob/v0.19.2/CHANGELOG.md#L1?utm_source=thinkingelixir&utm_medium=shownotes) – Phoenix LiveView 0.19.1 and 0.19.2 - minor bug fix releases - https://hauleth.dev/post/beam-process-memory-usage/ (https://hauleth.dev/post/beam-process-memory-usage/?utm_source=thinkingelixir&utm_medium=shownotes) – Blog post from Hauleth, “How much memory is needed to run 1M Erlang processes?” - https://paraxial.io/blog/exploit-guard (https://paraxial.io/blog/exploit-guard?utm_source=thinkingelixir&utm_medium=shownotes) – ExploitGuard blog post is a security focused tool - https://github.com/paraxialio/exploit_guard (https://github.com/paraxialio/exploit_guard?utm_source=thinkingelixir&utm_medium=shownotes) – Github project for ExploitGuard - aims to help prevent RCE (Remote Code Execution) - https://github.com/ferd/recon/ (https://github.com/ferd/recon/?utm_source=thinkingelixir&utm_medium=shownotes) – Recon library - https://www.twitch.tv/josevalim (https://www.twitch.tv/josevalim?utm_source=thinkingelixir&utm_medium=shownotes) – José Valim's Twitch account - https://smartlogic.io/podcast/elixir-wizards/s10-e12-jose-guillaume-giuseppe-types-elixir/ (https://smartlogic.io/podcast/elixir-wizards/s10-e12-jose-guillaume-giuseppe-types-elixir/?utm_source=thinkingelixir&utm_medium=shownotes) – ElixirWizards podcast interview with José Valim, Guillaume Duboc, and Giuseppe Castagna about Elixir and a type system - https://twitter.com/bcardarella/status/1666995102542118913 (https://twitter.com/bcardarella/status/1666995102542118913?utm_source=thinkingelixir&utm_medium=shownotes) – LiveView Native gets SwiftCharts support 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://twitter.com/dpaola2/status/1654591023341772803 (https://twitter.com/dpaola2/status/1654591023341772803?utm_source=thinkingelixir&utm_medium=shownotes) – The tweet that inspired the discussion - https://usebirdseye.com (https://usebirdseye.com?utm_source=thinkingelixir&utm_medium=shownotes) – Birdseye - the app being discussed - https://expo.dev/ (https://expo.dev/?utm_source=thinkingelixir&utm_medium=shownotes) – Cross-platform mobile framework - https://usebirdseye.com/ (https://usebirdseye.com/?utm_source=thinkingelixir&utm_medium=shownotes) – The task management service being discussed - https://github.com/chrismccord/todo_trek (https://github.com/chrismccord/todo_trek?utm_source=thinkingelixir&utm_medium=shownotes) – A trello-like todo board which shows off different dynamic form strategies with Phoenix LiveView. Guest Information - https://twitter.com/timgremore (https://twitter.com/timgremore?utm_source=thinkingelixir&utm_medium=shownotes) – on Twitter - https://github.com/timgremore/ (https://github.com/timgremore/?utm_source=thinkingelixir&utm_medium=shownotes) – on Github - https://headway.io/ (https://headway.io/?utm_source=thinkingelixir&utm_medium=shownotes) – Headway company - https://usebirdseye.com (https://usebirdseye.com?utm_source=thinkingelixir&utm_medium=shownotes) – Birdseye task management app Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Message the show on Fediverse - @ThinkingElixir@genserver.social (https://genserver.social/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - Mark Ericksen on Fediverse - @brainlid@genserver.social (https://genserver.social/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - David Bernheisel on Fediverse - @dbern@genserver.social (https://genserver.social/dbern) - Cade Ward - @cadebward (https://twitter.com/cadebward) - Cade Ward on Fediverse - @cadebward@genserver.social (https://genserver.social/cadebward)
155: Thinking Elixir News
OpenSource contributions recognition for Jonatan Kłosko, more from Sean Moriarity on AI with Elixir, the latest update on LLaMa running locally, Stephen Bussey is helping people move from OO languages like Ruby to Elixir with a new book, unraveling recent Arrow related contributions, a security fix to apply and conferences requesting speakers! Show Notes online - http://podcast.thinkingelixir.com/155 (http://podcast.thinkingelixir.com/155) Elixir Community News - https://twitter.com/michalslaski/status/1664237603728551936 (https://twitter.com/michalslaski/status/1664237603728551936?utm_source=thinkingelixir&utm_medium=shownotes) – Jonatan Kłosko won an award for opensource contributions to Livebook. - https://podcast.thinkingelixir.com/151 (https://podcast.thinkingelixir.com/151?utm_source=thinkingelixir&utm_medium=shownotes) – Previous interview with Jonatan Kłosko about Livebook - https://dockyard.com/blog/2023/05/16/open-source-elixir-alternatives-to-chatgpt (https://dockyard.com/blog/2023/05/16/open-source-elixir-alternatives-to-chatgpt?utm_source=thinkingelixir&utm_medium=shownotes) – Sean Moriarity wrote a post titled “Open-Source Elixir Alternatives to ChatGPT” - https://twitter.com/natfriedman/status/1665402680376987648 (https://twitter.com/natfriedman/status/1665402680376987648?utm_source=thinkingelixir&utm_medium=shownotes) – LLaMa update running on local hardware - https://twitter.com/yoooodaaaa/status/1663988571047354371 (https://twitter.com/yoooodaaaa/status/1663988571047354371?utm_source=thinkingelixir&utm_medium=shownotes) – Stephen Bussey's new book in beta called "From Ruby to Elixir" - https://pragprog.com/titles/sbelixir/from-ruby-to-elixir/ (https://pragprog.com/titles/sbelixir/from-ruby-to-elixir/?utm_source=thinkingelixir&utm_medium=shownotes) – PragProg book page where it can be purchased as early access. - https://twitter.com/josevalim/status/1664743585873264641 (https://twitter.com/josevalim/status/1664743585873264641?utm_source=thinkingelixir&utm_medium=shownotes) – José Valim calling out contributions by Qqwy with links to the Arrow related PRs - https://github.com/elixir-nx/explorer (https://github.com/elixir-nx/explorer?utm_source=thinkingelixir&utm_medium=shownotes) – Nx Explorer - https://arrow.apache.org/docs/format/ADBC.html (https://arrow.apache.org/docs/format/ADBC.html?utm_source=thinkingelixir&utm_medium=shownotes) – ADBC Apache project for data connectivity - https://arrow.apache.org/ (https://arrow.apache.org/?utm_source=thinkingelixir&utm_medium=shownotes) – Arrow Apache project - https://github.com/jorgecarleitao/arrow2 (https://github.com/jorgecarleitao/arrow2?utm_source=thinkingelixir&utm_medium=shownotes) – Aarow2 Rust project - https://jorgecarleitao.github.io/arrow2/main/guide/ (https://jorgecarleitao.github.io/arrow2/main/guide/?utm_source=thinkingelixir&utm_medium=shownotes) – Arrow2 guide - https://elixirforum.com/t/mime-v2-0-4-has-been-released-with-a-potential-security-fix/56216 (https://elixirforum.com/t/mime-v2-0-4-has-been-released-with-a-potential-security-fix/56216?utm_source=thinkingelixir&utm_medium=shownotes) – PSA for security concern with package version update available - https://elixirforum.com/t/livemonacoeditor-monaco-editor-component-for-phoenix-liveview/56212 (https://elixirforum.com/t/livemonacoeditor-monaco-editor-component-for-phoenix-liveview/56212?utm_source=thinkingelixir&utm_medium=shownotes) – New library LiveMonacoEditor for integrating the VSCode JS-powered editor called Monoco into LiveView - https://github.com/BeaconCMS/livemonacoeditor (https://github.com/BeaconCMS/live_monaco_editor?utm_source=thinkingelixir&utm_medium=shownotes) – BeaconCMS linked LiveMonacoEditor project - https://codebeameurope.com/ (https://codebeameurope.com/?utm_source=thinkingelixir&utm_medium=shownotes) – CodeBEAM EU October 19-20 - https://twitter.com/ElixirConf/status/1663920528829161474 (https://twitter.com/ElixirConf/status/1663920528829161474?utm_source=thinkingelixir&utm_medium=shownotes) – ElixirConf US 2023 - call for speakers - https://docs.google.com/forms/d/e/1FAIpQLSeN6BFybOd4vXweCuBvINjhbO-Ev7Zk1sZf8YBXwjnwQC0-aA/viewform (https://docs.google.com/forms/d/e/1FAIpQLSeN6BFybOd4vXweCuBvINjhbO-Ev7Zk1sZf8YBXwjnwQC0-aA/viewform?utm_source=thinkingelixir&utm_medium=shownotes) – Form for submitting a talk 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) Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Message the show on Fediverse - @ThinkingElixir@genserver.social (https://genserver.social/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - Mark Ericksen on Fediverse - @brainlid@genserver.social (https://genserver.social/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - David Bernheisel on Fediverse - @dbern@genserver.social (https://genserver.social/dbern) - Cade Ward - @cadebward (https://twitter.com/cadebward) - Cade Ward on Fediverse - @cadebward@genserver.social (https://genserver.social/cadebward)
154: Serving Up AI with Sean Moriarity
AI topics are all the rage right now, so we team up with Sean Moriarity to unpack what's going on and what it means for Elixir. Sean talks about Nx and his insights on the timing of Elixir's readiness for the public AI shift. He explains some of the Python frustrations that Elixir can alleviate and he shares tips on putting a PoC ML solution into a production Elixir app. Recently, Sean added LLaMa support to Bumblebee and he explains the background for the OpenSource Meta LLM people have been playing with and more! Turns out there's a lot to be excited about for AI and Elixir! Show Notes online - http://podcast.thinkingelixir.com/154 (http://podcast.thinkingelixir.com/154) Elixir Community News - https://github.com/elixir-lang/elixir/releases/tag/v1.15.0-rc.1 (https://github.com/elixir-lang/elixir/releases/tag/v1.15.0-rc.1?utm_source=thinkingelixir&utm_medium=shownotes) – Elixir 1.15.0-rc.1 - https://github.com/elixir-lang/elixir/releases/tag/v1.14.5 (https://github.com/elixir-lang/elixir/releases/tag/v1.14.5?utm_source=thinkingelixir&utm_medium=shownotes) – Elixir 1.14.5 - small bug fix release - https://elixirforum.com/t/elixirls-not-working-runtime-terminating-during-boot/56017/6 (https://elixirforum.com/t/elixirls-not-working-runtime-terminating-during-boot/56017/6?utm_source=thinkingelixir&utm_medium=shownotes) – Elixir-LS crashes with OTP 26. Using OTP 25.x works great. - https://github.com/elixir-lsp/elixir-ls/issues/886 (https://github.com/elixir-lsp/elixir-ls/issues/886?utm_source=thinkingelixir&utm_medium=shownotes) – Issue that tracks Elixir LS OTP 26 issues - https://github.com/phoenixframework/phoenixliveview/blob/v0.19.0/CHANGELOG.md (https://github.com/phoenixframework/phoenix_live_view/blob/v0.19.0/CHANGELOG.md?utm_source=thinkingelixir&utm_medium=shownotes) – Phoenix LiveView 0.19 changelog - https://twitter.com/chris_mccord/status/1663275883845566473 (https://twitter.com/chris_mccord/status/1663275883845566473?utm_source=thinkingelixir&utm_medium=shownotes) – Chris McCord announced LiveView 0.19 and TodoTrek demo application. - https://phoenixframework.org/blog/phoenix-liveview-0.19-released (https://phoenixframework.org/blog/phoenix-liveview-0.19-released?utm_source=thinkingelixir&utm_medium=shownotes) – Blog post for the LiveView 0.19 release - https://github.com/chrismccord/todo_trek (https://github.com/chrismccord/todo_trek?utm_source=thinkingelixir&utm_medium=shownotes) – OpenSourced Todo Trek project. “A trello-like todo board which shows off different dynamic form strategies with Phoenix LiveView.” - https://www.twitch.tv/josevalim (https://www.twitch.tv/josevalim?utm_source=thinkingelixir&utm_medium=shownotes) – José Valim Twitch account - https://www.twitch.tv/videos/1827518510 (https://www.twitch.tv/videos/1827518510?utm_source=thinkingelixir&utm_medium=shownotes) – Prompts for AI agents in Elixir - Day 1 (NO LONGER AVAILABLE) - https://www.twitch.tv/videos/1828360654 (https://www.twitch.tv/videos/1828360654?utm_source=thinkingelixir&utm_medium=shownotes) – Prompts for AI agents in Elixir - Day 2 (NO LONGER AVAILABLE) - https://www.twitch.tv/videos/1832616594 (https://www.twitch.tv/videos/1832616594?utm_source=thinkingelixir&utm_medium=shownotes) – Contributing to Open Source with Elixir! - https://twitter.com/josevalim/status/1663316201584443394 (https://twitter.com/josevalim/status/1663316201584443394?utm_source=thinkingelixir&utm_medium=shownotes) – José on Twitter sharing the - https://github.com/livebook-dev/livebook/pull/1936 (https://github.com/livebook-dev/livebook/pull/1936?utm_source=thinkingelixir&utm_medium=shownotes) – Livebook doctest feature ended in a PR that was merged. - https://twitter.com/christhekeele/status/1661178730037886978 (https://twitter.com/christhekeele/status/1661178730037886978?utm_source=thinkingelixir&utm_medium=shownotes) – Chris Keele shared a tip about customizing your IEx prompt to make copying output easier. - https://www.youtube.com/watch?v=qr6VAfCm_QE (https://www.youtube.com/watch?v=qr6VAfCm_QE?utm_source=thinkingelixir&utm_medium=shownotes) – On the shoulder of giants there's room for larger giants- F. Cesarini, A. Leopardi | CBL Mexico 23 - https://www.youtube.com/watch?v=7yU9mvwZKoY (https://www.youtube.com/watch?v=7yU9mvwZKoY?utm_source=thinkingelixir&utm_medium=shownotes) – Distributed Elixir made easy by Johanna Larsson | Code BEAM Lite Mexico 2023 - https://www.youtube.com/watch?v=phRXs8SKzP0 (https://www.youtube.com/watch?v=phRXs8SKzP0?utm_source=thinkingelixir&utm_medium=shownotes) – How to sell Elixir (Again) by Evadne Wu | Code BEAM Lite Stockholm 2023 - https://2023.elixirconf.com (https://2023.elixirconf.com?utm_source=thinkingelixir&utm_medium=shownotes) – ElixirConf tickets are now on sale 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://pragprog.com/titles/smgaelixir/genetic-algorithms-in-elixir/ (https://pragprog.com/titles/smgaelixir/genetic-algorithms-in-elixir/?utm_source=thinkingelixir&utm_medium=shownotes) - https://teller.io/ (https://teller.io/?utm_source=thinkingelixir&utm_medium=shownotes) - https://github.com/livebook-dev/kino_bumblebee (https://github.com/livebook-dev/kino_bumblebee?utm_source=thinkingelixir&utm_medium=shownotes) - https://github.com/elixir-nx/bumblebee/pull/199 (https://github.com/elixir-nx/bumblebee/pull/199?utm_source=thinkingelixir&utm_medium=shownotes) – You recently added LLaMa support to Bumblebee - https://www.semianalysis.com/p/google-we-have-no-moat-and-neither (https://www.semianalysis.com/p/google-we-have-no-moat-and-neither?utm_source=thinkingelixir&utm_medium=shownotes) – Google AI researcher leaked memo - https://ai.facebook.com/blog/large-language-model-llama-meta-ai/ (https://ai.facebook.com/blog/large-language-model-llama-meta-ai/?utm_source=thinkingelixir&utm_medium=shownotes) - https://en.wikipedia.org/wiki/Monkeyselfiecopyright_dispute (https://en.wikipedia.org/wiki/Monkey_selfie_copyright_dispute?utm_source=thinkingelixir&utm_medium=shownotes) – In December 2014, the United States Copyright Office stated that works created by a non-human, such as a photograph taken by a monkey, are not copyrightable. - https://github.com/microsoft/LoRA (https://github.com/microsoft/LoRA?utm_source=thinkingelixir&utm_medium=shownotes) Guest Information - https://twitter.com/sean_moriarity (https://twitter.com/sean_moriarity?utm_source=thinkingelixir&utm_medium=shownotes) – on Twitter - https://github.com/seanmor5/ (https://github.com/seanmor5/?utm_source=thinkingelixir&utm_medium=shownotes) – on Github - https://seanmoriarity.com (https://seanmoriarity.com?utm_source=thinkingelixir&utm_medium=shownotes) – Blog Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Message the show on Fediverse - @ThinkingElixir@genserver.social (https://genserver.social/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - Mark Ericksen on Fediverse - @brainlid@genserver.social (https://genserver.social/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - David Bernheisel on Fediverse - @dbern@genserver.social (https://genserver.social/dbern) - Cade Ward - @cadebward (https://twitter.com/cadebward) - Cade Ward on Fediverse - @cadebward@genserver.social (https://genserver.social/cadebward)
153: Elixir Tools and Language Servers
Language servers are an important part of modern developer tooling. Mitch Hanberg has made this his new focus with gen_lsp, a generic language server behaviour that he then implemented a Credo language server on top of. Yes, that's right, Credo! We learn what that means and what his new elixir-tools Github organization is intended to do. Listen to Mich share his vision for what Elixir dev tools could be like! We get an update on his Temple project, an alternative to Phoenix templates, we learn about an existing Elixir formatter plugin that may reformat code more to your liking and more! Show Notes online - http://podcast.thinkingelixir.com/153 (http://podcast.thinkingelixir.com/153) Elixir Community News - https://github.com/elixir-lang/elixir/releases/tag/v1.15.0-rc.0 (https://github.com/elixir-lang/elixir/releases/tag/v1.15.0-rc.0?utm_source=thinkingelixir&utm_medium=shownotes) – Elixir 1.15-rc.0 - https://groups.google.com/g/elixir-lang-core/c/CjY7W9xvu80 (https://groups.google.com/g/elixir-lang-core/c/CjY7W9xvu80?utm_source=thinkingelixir&utm_medium=shownotes) – Proposal for adding URI sigil - https://groups.google.com/g/elixir-lang-core/c/MfB7GJSXV5w (https://groups.google.com/g/elixir-lang-core/c/MfB7GJSXV5w?utm_source=thinkingelixir&utm_medium=shownotes) – Proposal for adding UTC sigil - https://podcast.thinkingelixir.com/149 (https://podcast.thinkingelixir.com/149?utm_source=thinkingelixir&utm_medium=shownotes) – More on Logging from Łukasz Niemier - https://twitter.com/ac_alejos/status/1658943203364544512 (https://twitter.com/ac_alejos/status/1658943203364544512?utm_source=thinkingelixir&utm_medium=shownotes) – Exgboost library released - https://github.com/acalejos/exgboost/blob/main/notebooks/iris_classification.livemd (https://github.com/acalejos/exgboost/blob/main/notebooks/iris_classification.livemd?utm_source=thinkingelixir&utm_medium=shownotes) – Livebook example for Exgboost - https://www.youtube.com/watch?v=cG8iwK_6KIg (https://www.youtube.com/watch?v=cG8iwK_6KIg?utm_source=thinkingelixir&utm_medium=shownotes) – ElixirConf EU Lightning Talk that visualizes supervisor behaviors using the classic computer game Doom with monster spawning and killing. - https://github.com/amalbuquerque/doom-supervisor (https://github.com/amalbuquerque/doom-supervisor?utm_source=thinkingelixir&utm_medium=shownotes) – Github project for DoomSupervisor - http://twitch.com/josevalim (http://twitch.com/josevalim?utm_source=thinkingelixir&utm_medium=shownotes) – José Valim has resumed some Live coding and chatting on Twitch. - https://twitter.com/josevalim/status/1660300292619923457 (https://twitter.com/josevalim/status/1660300292619923457?utm_source=thinkingelixir&utm_medium=shownotes) – José sharing on Twitter that a Twitch Livestream will start 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://github.com/elixir-tools/credo-language-server (https://github.com/elixir-tools/credo-language-server?utm_source=thinkingelixir&utm_medium=shownotes) – LSP implementation for Credo - https://github.com/elixir-tools/gen_lsp (https://github.com/elixir-tools/gen_lsp?utm_source=thinkingelixir&utm_medium=shownotes) – A behavior for creating language servers - https://github.com/elixir-tools (https://github.com/elixir-tools?utm_source=thinkingelixir&utm_medium=shownotes) – Githug organization - https://simplebet.io/index.html (https://simplebet.io/index.html?utm_source=thinkingelixir&utm_medium=shownotes) - https://github.com/elixir-lsp/elixir-ls (https://github.com/elixir-lsp/elixir-ls?utm_source=thinkingelixir&utm_medium=shownotes) - https://twitter.com/mitchhanberg/status/1648327430912843779 (https://twitter.com/mitchhanberg/status/1648327430912843779?utm_source=thinkingelixir&utm_medium=shownotes) - https://www.mitchellhanberg.com/credo-language-server-and-the-birth-of-elixir-tools/ (https://www.mitchellhanberg.com/credo-language-server-and-the-birth-of-elixir-tools/?utm_source=thinkingelixir&utm_medium=shownotes) – Blog post about the Credo Language Server and Elixir Tools - https://podcast.thinkingelixir.com/92 (https://podcast.thinkingelixir.com/92?utm_source=thinkingelixir&utm_medium=shownotes) – Previous interview about Temple (March 29th, 2022) - https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/ (https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/?utm_source=thinkingelixir&utm_medium=shownotes) – Language Server spec from Microsoft - https://www.youtube.com/watch?v=Ug-SEozyG1A (https://www.youtube.com/watch?v=Ug-SEozyG1A?utm_source=thinkingelixir&utm_medium=shownotes) – Code BEAM talk - "OTP Process Abstractions with proc lib" - https://github.com/adobe/elixir-styler (https://github.com/adobe/elixir-styler?utm_source=thinkingelixir&utm_medium=shownotes) – Formatter plugin from Adobe - https://github.com/tree-sitter/tree-sitter (https://github.com/tree-sitter/tree-sitter?utm_source=thinkingelixir&utm_medium=shownotes) - https://github.com/elixir-toniq/norm (https://github.com/elixir-toniq/norm?utm_source=thinkingelixir&utm_medium=shownotes) - https://github.com/mhanberg/temple (https://github.com/mhanberg/temple?utm_source=thinkingelixir&utm_medium=shownotes) - https://github.com/petalframework/petal_components (https://github.com/petalframework/petal_components?utm_source=thinkingelixir&utm_medium=shownotes) Guest Information - https://twitter.com/mitchhanberg (https://twitter.com/mitchhanberg?utm_source=thinkingelixir&utm_medium=shownotes) – on Twitter - https://github.com/mhanberg/ (https://github.com/mhanberg/?utm_source=thinkingelixir&utm_medium=shownotes) – on Github - https://hachyderm.io/@mitchhanberg (https://hachyderm.io/@mitchhanberg?utm_source=thinkingelixir&utm_medium=shownotes) – on Fediverse - https://www.mitchellhanberg.com/ (https://www.mitchellhanberg.com/?utm_source=thinkingelixir&utm_medium=shownotes) – Blog - https://champions-of-hope.funraise.org/fundraiser/mitchell-hanberg (https://champions-of-hope.funraise.org/fundraiser/mitchell-hanberg?utm_source=thinkingelixir&utm_medium=shownotes) – Fund raising page for FightCRC Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Message the show on Fediverse - @ThinkingElixir@genserver.social (https://genserver.social/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - Mark Ericksen on Fediverse - @brainlid@genserver.social (https://genserver.social/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - David Bernheisel on Fediverse - @dbern@genserver.social (https://genserver.social/dbern) - Cade Ward - @cadebward (https://twitter.com/cadebward) - Cade Ward on Fediverse - @cadebward@genserver.social (https://genserver.social/cadebward)
152: Rust and Elixir Play Great Together
Rust is a popular lower level language and the community has created a number of libraries to solve different problems. We talk with Jason Stiebs, a Phoenix Core Team member, about how Elixir and Rust can play well together. Jason wrote an article about how he leveraged an image processing library available in Rust by using the Elixir Rustler package. We talk about how Rustler works through NIFs, and we learn how easy using Rustler has become. It's great to understand that we have a powerful escape hatch like Rustler for those times we need it. We also get Jason’s insights into the Phoenix project and talk about the importance of improving the developer experience when a LiveView crashes and more! Show Notes online - http://podcast.thinkingelixir.com/152 (http://podcast.thinkingelixir.com/152) Elixir Community News - https://www.erlang.org/news/164 (https://www.erlang.org/news/164?utm_source=thinkingelixir&utm_medium=shownotes) – Erlang OTP 26 Final was released - https://www.erlang.org/blog/otp-26-highlights/ (https://www.erlang.org/blog/otp-26-highlights/?utm_source=thinkingelixir&utm_medium=shownotes) - https://www.erlang.org/blog/otp-26-highlights/#improvements-of-maps (https://www.erlang.org/blog/otp-26-highlights/#improvements-of-maps?utm_source=thinkingelixir&utm_medium=shownotes) – Improvements to Maps - https://github.com/elixir-lang/elixir/releases/tag/v1.14.4 (https://github.com/elixir-lang/elixir/releases/tag/v1.14.4?utm_source=thinkingelixir&utm_medium=shownotes) – When Elixir 1.14.4 was released, it included the ability to request sorted map keys when inspecting. - https://www.erlang.org/blog/otp-26-highlights/#incremental-mode-for-dialyzer (https://www.erlang.org/blog/otp-26-highlights/#incremental-mode-for-dialyzer?utm_source=thinkingelixir&utm_medium=shownotes) – Incremental mode for Dialyzer - https://erlangforums.com/t/in-erlang-otp-27-0-0-will-no-longer-be-exactly-equal-to-0-0/2586 (https://erlangforums.com/t/in-erlang-otp-27-0-0-will-no-longer-be-exactly-equal-to-0-0/2586?utm_source=thinkingelixir&utm_medium=shownotes) – Erlang OTP 27 where +0.0 will no longer be exactly equal to -0.0. - https://felt.com/blog/startup-and-shutdown-for-phoenix-applications (https://felt.com/blog/startup-and-shutdown-for-phoenix-applications?utm_source=thinkingelixir&utm_medium=shownotes) – Jason Axelson wrote an article about doing a “Graceful Startup and Shutdown for Phoenix Applications” over on the Felt blog. - https://smartlogic.io/podcast/elixir-wizards/s10-e08-jose-valim-future-elixir-ecosystem/ (https://smartlogic.io/podcast/elixir-wizards/s10-e08-jose-valim-future-elixir-ecosystem/?utm_source=thinkingelixir&utm_medium=shownotes) – José Valim was on the Elixir Wizards podcast talking about the future development of Elixir - https://twitter.com/josevalim/status/1658160088354369546 (https://twitter.com/josevalim/status/1658160088354369546?utm_source=thinkingelixir&utm_medium=shownotes) – José Valim was asking for feedback on the "Optional Syntax Sheet" documentation. - https://elixir-lang.org/getting-started/optional-syntax.html (https://elixir-lang.org/getting-started/optional-syntax.html?utm_source=thinkingelixir&utm_medium=shownotes) – Optional syntax sheet in the Elixir Getting Started docs - https://twitter.com/sean_moriarity/status/1648466250828484609 (https://twitter.com/sean_moriarity/status/1648466250828484609?utm_source=thinkingelixir&utm_medium=shownotes) – LLaMa support added to Nx and Bumblebee by Sean Moriarity - https://twitter.com/FrerichRaabe/status/1648696436266004480 (https://twitter.com/FrerichRaabe/status/1648696436266004480?utm_source=thinkingelixir&utm_medium=shownotes) – Nicely summarizing Tweet that frames the LLaMa work - https://www.youtube.com/watch?v=e2fDjl2hoAk (https://www.youtube.com/watch?v=e2fDjl2hoAk?utm_source=thinkingelixir&utm_medium=shownotes) – ElixirConf EU keynote video titled “Using Elixir & Phoenix To Build A City Software Infrastructure” - https://www.empex.co/new-york (https://www.empex.co/new-york?utm_source=thinkingelixir&utm_medium=shownotes) – Empex NYC - use code THINKING to get $100 of your ticket - https://www.lambdadays.org/lambdadays2023 (https://www.lambdadays.org/lambdadays2023?utm_source=thinkingelixir&utm_medium=shownotes) – LambdaDays functional programming conference on 5-6 June 2023 in Kraków Poland - https://twitter.com/josevalim/status/1658159252773453824 (https://twitter.com/josevalim/status/1658159252773453824?utm_source=thinkingelixir&utm_medium=shownotes) – José Valim will speak about meta-programmable functional notebooks with Livebook 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://fly.io/phoenix-files/elixir-and-rust-is-a-good-mix/ (https://fly.io/phoenix-files/elixir-and-rust-is-a-good-mix/?utm_source=thinkingelixir&utm_medium=shownotes) – Elixir and Rust Is a Good Mix - https://youtu.be/FADQAnq0RpA?t=3636 (https://youtu.be/FADQAnq0RpA?t=3636?utm_source=thinkingelixir&utm_medium=shownotes) – Chris McCord specifically calling out Jason for advocating for a better DX around LiveView errors. - https://github.com/rusterlium/rustler (https://github.com/rusterlium/rustler?utm_source=thinkingelixir&utm_medium=shownotes) - https://discord.com/blog/using-rust-to-scale-elixir-for-11-million-concurrent-users (https://discord.com/blog/using-rust-to-scale-elixir-for-11-million-concurrent-users?utm_source=thinkingelixir&utm_medium=shownotes) - https://news.livebook.dev/label/45764 (https://news.livebook.dev/label/45764?utm_source=thinkingelixir&utm_medium=shownotes) - https://fly.io/phoenix-files/tensors-and-nx-are-not-just-for-machine-learning/ (https://fly.io/phoenix-files/tensors-and-nx-are-not-just-for-machine-learning/?utm_source=thinkingelixir&utm_medium=shownotes) Guest Information - https://twitter.com/peregrine (https://twitter.com/peregrine?utm_source=thinkingelixir&utm_medium=shownotes) – on Twitter - https://github.com/jeregrine/ (https://github.com/jeregrine/?utm_source=thinkingelixir&utm_medium=shownotes) – on Github - https://merveilles.town/@peregrine (https://merveilles.town/@peregrine?utm_source=thinkingelixir&utm_medium=shownotes) – on Fediverse - mailto:jason@fly.io (mailto:jason@fly.io?utm_source=thinkingelixir&utm_medium=shownotes) – Email Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Message the show on Fediverse - @ThinkingElixir@genserver.social (https://genserver.social/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - Mark Ericksen on Fediverse - @brainlid@genserver.social (https://genserver.social/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - David Bernheisel on Fediverse - @dbern@genserver.social (https://genserver.social/dbern) - Cade Ward - @cadebward (https://twitter.com/cadebward) - Cade Ward on Fediverse - @cadebward@genserver.social (https://genserver.social/cadebward)
151: Peeking inside the Livebook
Recently Livebook had its first launch week. We met with Jonatan Kłosko, the developer behind most of the exciting new features, to learn what some of these additions are, how they actually work and what's coming with the new Teams feature. Jonatan shares some of his favorite unsung features and where the new apps ability may go in the future. Livebook is an important community project and it's fun getting a deeper look inside! Show Notes online - http://podcast.thinkingelixir.com/151 (http://podcast.thinkingelixir.com/151) Elixir Community News - https://changelog.com/podcast/538 (https://changelog.com/podcast/538?utm_source=thinkingelixir&utm_medium=shownotes) – José Valim was on the Changelog podcast talking about the Livebook release week. - https://twitter.com/josevalim/status/1653838129306935301 (https://twitter.com/josevalim/status/1653838129306935301?utm_source=thinkingelixir&utm_medium=shownotes) – José sharing his podcast interview on Twitter - https://twitter.com/bigcodeproject/status/1654174941976068119 (https://twitter.com/bigcodeproject/status/1654174941976068119?utm_source=thinkingelixir&utm_medium=shownotes) – StarCoder Twitter thread - https://github.com/bigcode-project/starcoder (https://github.com/bigcode-project/starcoder?utm_source=thinkingelixir&utm_medium=shownotes) – StarCoder Github project page - https://huggingface.co/bigcode/starcoder (https://huggingface.co/bigcode/starcoder?utm_source=thinkingelixir&utm_medium=shownotes) – New LLM (Large Language Model) on HuggingFace. Heads up! It's a 64GB model! - https://huggingface.co/chat (https://huggingface.co/chat?utm_source=thinkingelixir&utm_medium=shownotes) – Link where you can play with the StarCoder via a chat interface - https://towardsdatascience.com/4-autonomous-ai-agents-you-need-to-know-d612a643fa92 (https://towardsdatascience.com/4-autonomous-ai-agents-you-need-to-know-d612a643fa92?utm_source=thinkingelixir&utm_medium=shownotes) – Autonomous AI agents have become a hot topic. Examples include AutoGPT, Westworld simulation and others. - https://twitter.com/servusmario/status/1655883183643033601 (https://twitter.com/servusmario/status/1655883183643033601?utm_source=thinkingelixir&utm_medium=shownotes) – Twitter discussion with José Valim about Elixir and processes being used as LLM Agents. - https://twitter.com/akoutmos/status/1654728415252029440 (https://twitter.com/akoutmos/status/1654728415252029440?utm_source=thinkingelixir&utm_medium=shownotes) – Alex Koutmos shared how he and Amos King worked together to create a new Elixir library called denoex that makes it easy to run TypeScript and JavaScript from Elixir. - https://github.com/akoutmos/deno_ex (https://github.com/akoutmos/deno_ex?utm_source=thinkingelixir&utm_medium=shownotes) – The denoex library on Github - https://stackoverflow.blog/2023/05/08/the-2023-developer-survey-is-now-live/ (https://stackoverflow.blog/2023/05/08/the-2023-developer-survey-is-now-live/?utm_source=thinkingelixir&utm_medium=shownotes) – Stack Overflow 2023 Developer Survey is out - https://www.youtube.com/watch?v=K51fj1JGQEY (https://www.youtube.com/watch?v=K51fj1JGQEY?utm_source=thinkingelixir&utm_medium=shownotes) – Lars Wikman's ElixirConf EU 2023 video was released. This is the 2nd video released from the ElixirConf EU. It is titled "Lively LiveView with Membrane" - https://hex.pm/blog/new-domain-for-build-artifacts (https://hex.pm/blog/new-domain-for-build-artifacts?utm_source=thinkingelixir&utm_medium=shownotes) – Hex.pm blog post announcing the subdomain change for hosting builds. It includes instructions on migrating tools to prevent an interruption. - https://www.empex.co/new-york#speakers (https://www.empex.co/new-york#speakers?utm_source=thinkingelixir&utm_medium=shownotes) – Empex NYC lineup has been announced. It is a one day, single-track Elixir conference in New York City 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://news.livebook.dev/deploy-notebooks-as-apps-quality-of-life-upgrades---launch-week-1---day-1-2OTEWI (https://news.livebook.dev/deploy-notebooks-as-apps-quality-of-life-upgrades---launch-week-1---day-1-2OTEWI?utm_source=thinkingelixir&utm_medium=shownotes) – Day 1 - Deploy notebooks as apps & quality-of-life upgrades - https://news.livebook.dev/distributed2-machine-learning-notebooks-with-elixir-and-livebook---launch-week-1---day-2-1aIlaw (https://news.livebook.dev/distributed2-machine-learning-notebooks-with-elixir-and-livebook---launch-week-1---day-2-1aIlaw?utm_source=thinkingelixir&utm_medium=shownotes) – Day 2 - Distributed² Machine Learning notebooks with Elixir and Livebook - https://news.livebook.dev/hubs-and-secret-management---launch-week-1---day-3-3tMaJ2 (https://news.livebook.dev/hubs-and-secret-management---launch-week-1---day-3-3tMaJ2?utm_source=thinkingelixir&utm_medium=shownotes) – Day 3 - Hubs and secret management - https://news.livebook.dev/build-and-deploy-a-whisper-chat-app-to-hugging-face-in-15-minutes---launch-week-1---day-4-wYM0w (https://news.livebook.dev/build-and-deploy-a-whisper-chat-app-to-hugging-face-in-15-minutes---launch-week-1---day-4-wYM0w?utm_source=thinkingelixir&utm_medium=shownotes) – Day 4 - Build and deploy a Whisper chat app to Hugging Face in 15 minutes - https://news.livebook.dev/data-wrangling-in-elixir-with-explorer-the-power-of-rust-the-elegance-of-r---launch-week-1---day-5-1xqwCI (https://news.livebook.dev/data-wrangling-in-elixir-with-explorer-the-power-of-rust-the-elegance-of-r---launch-week-1---day-5-1xqwCI?utm_source=thinkingelixir&utm_medium=shownotes) – Day 5 - Data wrangling in Elixir with Explorer, the power of Rust, the elegance of R - https://podcast.thinkingelixir.com/46 (https://podcast.thinkingelixir.com/46?utm_source=thinkingelixir&utm_medium=shownotes) – 1st time we talked. May 2021 ~2 years ago! - https://podcast.thinkingelixir.com/130 (https://podcast.thinkingelixir.com/130?utm_source=thinkingelixir&utm_medium=shownotes) – 2nd time we talked about Bumblebee - Dec 2022 - https://github.com/livebook-dev/livebook/graphs/contributors (https://github.com/livebook-dev/livebook/graphs/contributors?utm_source=thinkingelixir&utm_medium=shownotes) – Livebook Github contributor graph Guest Information - https://github.com/jonatanklosko/ (https://github.com/jonatanklosko/?utm_source=thinkingelixir&utm_medium=shownotes) – Jonatan Kłosko on Github - https://jonatanklosko.com/ (https://jonatanklosko.com/?utm_source=thinkingelixir&utm_medium=shownotes) – Blog - https://erlef.org/slack-invite/erlef (https://erlef.org/slack-invite/erlef?utm_source=thinkingelixir&utm_medium=shownotes) – The EEF Slack - https://elixirforum.com/u/jonatanklosko (https://elixirforum.com/u/jonatanklosko?utm_source=thinkingelixir&utm_medium=shownotes) – Elixir Forum profile Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Message the show on Fediverse - @ThinkingElixir@genserver.social (https://genserver.social/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - Mark Ericksen on Fediverse - @brainlid@genserver.social (https://genserver.social/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - David Bernheisel on Fediverse - @dbern@genserver.social (https://genserver.social/dbern) - Cade Ward - @cadebward (https://twitter.com/cadebward) - Cade Ward on Fediverse - @cadebward@genserver.social (https://genserver.social/cadebward)
150: Thinking Elixir News
News covers Chris McCord's keynote speech on LiveView 1.0. We cover the EEF's final election results, latest from the LiveView Native space, ex_cldr updates for localizing our apps, an OTP patch release, and more! Show Notes online - http://podcast.thinkingelixir.com/150 (http://podcast.thinkingelixir.com/150) Elixir Community News - https://www.youtube.com/watch?v=FADQAnq0RpA&t=408s (https://www.youtube.com/watch?v=FADQAnq0RpA&t=408s?utm_source=thinkingelixir&utm_medium=shownotes) – Chris McCord's keynote from ElixirConf EU - https://erlef.org/blog/eef/election-2023-revote-results (https://erlef.org/blog/eef/election-2023-revote-results?utm_source=thinkingelixir&utm_medium=shownotes) – EEF final election results - https://twitter.com/bcardarella/status/1651266755443015681 (https://twitter.com/bcardarella/status/1651266755443015681?utm_source=thinkingelixir&utm_medium=shownotes) – LiveView Native has a new SwiftUI VSCode plugin with code completion and documentation access - https://github.com/liveview-native/liveview-native-vscode (https://github.com/liveview-native/liveview-native-vscode?utm_source=thinkingelixir&utm_medium=shownotes) – The LiveView Native VSCode plugin - https://podcast.thinkingelixir.com/120 (https://podcast.thinkingelixir.com/120?utm_source=thinkingelixir&utm_medium=shownotes) – Previous interview with Kip Cole about excldr - https://github.com/elixir-cldr/cldr (https://github.com/elixir-cldr/cldr?utm_source=thinkingelixir&utm_medium=shownotes) – The Elixir CLDR project - https://elixirforum.com/t/ex-cldr-common-locale-data-repository-cldr-functions-for-elixir/17350/98 (https://elixirforum.com/t/ex-cldr-common-locale-data-repository-cldr-functions-for-elixir/17350/98?utm_source=thinkingelixir&utm_medium=shownotes) – CLDR version 43 released, 15 excldr libraries updated - https://erlangforums.com/t/patch-package-otp-25-3-1-released/2574 (https://erlangforums.com/t/patch-package-otp-25-3-1-released/2574?utm_source=thinkingelixir&utm_medium=shownotes) – Minor patch release for OTP 25.3.1 - https://github.com/doorgan/channel_handler (https://github.com/doorgan/channel_handler?utm_source=thinkingelixir&utm_medium=shownotes) – Routing Patterns for Manageable Phoenix Channels - https://felt.com/blog/pheonix-channel-routing-patterns (https://felt.com/blog/pheonix-channel-routing-patterns?utm_source=thinkingelixir&utm_medium=shownotes) – Blog post on channel routing patterns - https://twitter.com/zacksiri/status/1652515195724627968 (https://twitter.com/zacksiri/status/1652515195724627968?utm_source=thinkingelixir&utm_medium=shownotes) – Overview of recent Elixir projects and frameworks 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) Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Message the show on Fediverse - @ThinkingElixir@genserver.social (https://genserver.social/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - Mark Ericksen on Fediverse - @brainlid@genserver.social (https://genserver.social/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - David Bernheisel on Fediverse - @dbern@genserver.social (https://genserver.social/dbern) - Cade Ward - @cadebward (https://twitter.com/cadebward) - Cade Ward on Fediverse - @cadebward@genserver.social (https://genserver.social/cadebward)
149: Elixir's new Unified Logger
Hauleth (Łukasz Jan Niemier) takes us deeper into the Elixir and Erlang loggers. He recently closed a 3.5 year old bug on the ElixirLang Github project by unifying the Elixir logger with the logger that Erlang got in OTP 21. We touch on the history, why it took so long, what we should think of the new logging levels, and what the original goals were that he set out to achieve. We also get an introduction to the new logging filters and handlers along with some peeks into future Erlang logging features that may still be yet to come in Elixir! Show Notes online - http://podcast.thinkingelixir.com/149 (http://podcast.thinkingelixir.com/149) Elixir Community News - https://podcast.thinkingelixir.com/73 (https://podcast.thinkingelixir.com/73?utm_source=thinkingelixir&utm_medium=shownotes) – Previous interview with Paul Copplestone about Elixir and Supabase - https://twitter.com/kiwicopple/status/1646918873445195783 (https://twitter.com/kiwicopple/status/1646918873445195783?utm_source=thinkingelixir&utm_medium=shownotes) – Supabase had their own release week. Paul shared his favorite one. - https://supabase.com/blog/dbdev (https://supabase.com/blog/dbdev?utm_source=thinkingelixir&utm_medium=shownotes) – Supabase blog post about dbdev - a Postgres extension package manager - https://database.dev/installer (https://database.dev/installer?utm_source=thinkingelixir&utm_medium=shownotes) – Database.dev is the dedicated site for dbdev - https://twitter.com/josevalim/status/1649001076404768768 (https://twitter.com/josevalim/status/1649001076404768768?utm_source=thinkingelixir&utm_medium=shownotes) – José Valim shared the Livebook notebook used during his ElixirConf EU presentation - https://github.com/josevalim/livebooks/blob/main/talks/2023/04-elixir-conf.livemd (https://github.com/josevalim/livebooks/blob/main/talks/2023/04-elixir-conf.livemd?utm_source=thinkingelixir&utm_medium=shownotes) – José's Livebook from his presentation - https://twitter.com/visual_partner/status/1648979346491580416 (https://twitter.com/visual_partner/status/1648979346491580416?utm_source=thinkingelixir&utm_medium=shownotes) – Visual drawing created from José's ElixirConf EU keynote - https://twitter.com/livebookdev/status/1648328527026987008 (https://twitter.com/livebookdev/status/1648328527026987008?utm_source=thinkingelixir&utm_medium=shownotes) – New Livebook KinoDiff feature makes it easy to visually display a diff between two strings in Livebook. - https://twitter.com/theerlef/status/1649442881302822915 (https://twitter.com/theerlef/status/1649442881302822915?utm_source=thinkingelixir&utm_medium=shownotes) – Erlang OTP 26 RC 3 - https://www.erlang.org/news/163 (https://www.erlang.org/news/163?utm_source=thinkingelixir&utm_medium=shownotes) – Blog post for Erlang/OTP 26.0 Release Candidate 3 - https://www.erlang.org/blog/more-optimizations/ (https://www.erlang.org/blog/more-optimizations/?utm_source=thinkingelixir&utm_medium=shownotes) – Blog post on Erlang website about OTP 26 optimizations in the compiler and JIT - https://twitter.com/michalmuskala/status/1650511805339381763 (https://twitter.com/michalmuskala/status/1650511805339381763?utm_source=thinkingelixir&utm_medium=shownotes) – Erlang library called “erlfuzz” was released. - https://erlangforums.com/t/open-sourcing-erlfuzz/2562 (https://erlangforums.com/t/open-sourcing-erlfuzz/2562?utm_source=thinkingelixir&utm_medium=shownotes) – Erlfuzz forum post. It is a fuzzer for Erlang code and the BEAM. - https://github.com/evadne/emporium (https://github.com/evadne/emporium?utm_source=thinkingelixir&utm_medium=shownotes) – Evadne Wu released an Elixir example application that walks through a variety of Elixir ML operations - https://paraxial.io/blog/sobelow-guide (https://paraxial.io/blog/sobelow-guide?utm_source=thinkingelixir&utm_medium=shownotes) – Blog post from Paraxial.io on a guide to using Sobelow - https://github.com/paraxialio/sobelow_guide (https://github.com/paraxialio/sobelow_guide?utm_source=thinkingelixir&utm_medium=shownotes) – Github readme explains more about Sobelow findings and how to correct them. - https://github.com/woutdp/live_svelte (https://github.com/woutdp/live_svelte?utm_source=thinkingelixir&utm_medium=shownotes) – A new project called LiveSvelte was released. Helps integrate using Sevelte front-end JS with a LiveView - https://wout.space/notes/live-svelte (https://wout.space/notes/live-svelte?utm_source=thinkingelixir&utm_medium=shownotes) – Blog post about live_svelte 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://twitter.com/whatyouhide/status/1626544505506656257 (https://twitter.com/whatyouhide/status/1626544505506656257?utm_source=thinkingelixir&utm_medium=shownotes) – PR that closed a 3.5yo Elixir issue on unifying Erlang and Elixir loggers. - https://github.com/elixir-lang/elixir/issues/9465 (https://github.com/elixir-lang/elixir/issues/9465?utm_source=thinkingelixir&utm_medium=shownotes) – Github Issue “Further unify logger and Logger” - https://www.erlang.org/doc/man/logger.html (https://www.erlang.org/doc/man/logger.html?utm_source=thinkingelixir&utm_medium=shownotes) – Erlang logger docs. Referenced. - https://hexdocs.pm/logger/main/Logger.html (https://hexdocs.pm/logger/main/Logger.html?utm_source=thinkingelixir&utm_medium=shownotes) – Elixir logger docs (able to see the “1.15.0-dev” version) - https://www.erlang.org/doc/apps/sasl/ (https://www.erlang.org/doc/apps/sasl/?utm_source=thinkingelixir&utm_medium=shownotes) – SASL Logging docs - https://www.eiger.co/ (https://www.eiger.co/?utm_source=thinkingelixir&utm_medium=shownotes) - https://github.com/hauleth/mix_unused (https://github.com/hauleth/mix_unused?utm_source=thinkingelixir&utm_medium=shownotes) - https://github.com/hauleth/erlang-systemd (https://github.com/hauleth/erlang-systemd?utm_source=thinkingelixir&utm_medium=shownotes) - https://systemd.io/ (https://systemd.io/?utm_source=thinkingelixir&utm_medium=shownotes) - https://github.com/erlang-lager/lager (https://github.com/erlang-lager/lager?utm_source=thinkingelixir&utm_medium=shownotes) - https://riak.com/posts/technical/introducing-lager-a-new-logging-framework-for-erlangotp/index.html (https://riak.com/posts/technical/introducing-lager-a-new-logging-framework-for-erlangotp/index.html?utm_source=thinkingelixir&utm_medium=shownotes) - OTP 21 added built-in logging - https://www.erlang.org/doc/man/logger_filters.html (https://www.erlang.org/doc/man/logger_filters.html?utm_source=thinkingelixir&utm_medium=shownotes) - https://github.com/elixir-lang/elixir/blob/main/CHANGELOG.md (https://github.com/elixir-lang/elixir/blob/main/CHANGELOG.md?utm_source=thinkingelixir&utm_medium=shownotes) Guest Information - https://twitter.com/hauleth (https://twitter.com/hauleth?utm_source=thinkingelixir&utm_medium=shownotes) – on Twitter - https://github.com/hauleth/ (https://github.com/hauleth/?utm_source=thinkingelixir&utm_medium=shownotes) – on Github - https://fosstodon.org/@hauleth (https://fosstodon.org/@hauleth?utm_source=thinkingelixir&utm_medium=shownotes) – on Fediverse - https://hauleth.dev (https://hauleth.dev?utm_source=thinkingelixir&utm_medium=shownotes) – Blog Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Message the show on Fediverse - @ThinkingElixir@genserver.social (https://genserver.social/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - Mark Ericksen on Fediverse - @brainlid@genserver.social (https://genserver.social/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - David Bernheisel on Fediverse - @dbern@genserver.social (https://genserver.social/dbern) - Cade Ward - @cadebward (https://twitter.com/cadebward) - Cade Ward on Fediverse - @cadebward@genserver.social (https://genserver.social/cadebward)
148: Security Scanning our Apps with Sobelow
We go deeper on the Sobelow library, a security-focused static analysis tool for Elixir and Phoenix apps. We talk with Griffin Byatt, the creator, and Holden Oullette, the new maintainer. We learn how and why the project was created, how it works, what it can and can't do, and how to use it in CI pipelines for continuous scanning. Sobelow is a cornerstone project in the community that checks a critical box for certification requirements which means we get to use Elixir when it might otherwise be a hard sell. Join us as we learn more about the project and the people behind it! Show Notes online - http://podcast.thinkingelixir.com/148 (http://podcast.thinkingelixir.com/148) Elixir Community News - https://news.livebook.dev/hubs-and-secret-management---launch-week-1---day-3-3tMaJ2 (https://news.livebook.dev/hubs-and-secret-management---launch-week-1---day-3-3tMaJ2?utm_source=thinkingelixir&utm_medium=shownotes) – Livebook Launch Week - Day 3 - Hubs, secrets, teams, authentication - https://news.livebook.dev/build-and-deploy-a-whisper-chat-app-to-hugging-face-in-15-minutes---launch-week-1---day-4-wYM0w (https://news.livebook.dev/build-and-deploy-a-whisper-chat-app-to-hugging-face-in-15-minutes---launch-week-1---day-4-wYM0w?utm_source=thinkingelixir&utm_medium=shownotes) – Livebook Launch Week - Day 4 - What is deploying apps to HuggingFace? - https://news.livebook.dev/data-wrangling-in-elixir-with-explorer-the-power-of-rust-the-elegance-of-r---launch-week-1---day-5-1xqwCI (https://news.livebook.dev/data-wrangling-in-elixir-with-explorer-the-power-of-rust-the-elegance-of-r---launch-week-1---day-5-1xqwCI?utm_source=thinkingelixir&utm_medium=shownotes) – Livebook Launch Week - Day 5 - Data wrangling in Elixir with https://news.livebook.dev/data-wrangling-in-elixir-with-explorer-the-power-of-rust-the-elegance-of-r---launch-week-1---day-5-1xqwCI - https://github.com/elixir-nx (https://github.com/elixir-nx?utm_source=thinkingelixir&utm_medium=shownotes) – The Nx GitHub organization page was set up - https://twitter.com/sorentwo/status/1646493981591625732 (https://twitter.com/sorentwo/status/1646493981591625732?utm_source=thinkingelixir&utm_medium=shownotes) – Oban update 2.15.0 - https://github.com/sorentwo/oban/releases/tag/v2.15.0 (https://github.com/sorentwo/oban/releases/tag/v2.15.0?utm_source=thinkingelixir&utm_medium=shownotes) – Oban release notes - https://twitter.com/osterbergmarcus/status/1646833341881016323 (https://twitter.com/osterbergmarcus/status/1646833341881016323?utm_source=thinkingelixir&utm_medium=shownotes) – Tweet asking about bulk steam inserts - https://twitter.com/elixirphoenix/status/1646913447030865921 (https://twitter.com/elixirphoenix/status/1646913447030865921?utm_source=thinkingelixir&utm_medium=shownotes) – Phoenix response says the bulk insert is in main now. - https://hexdocs.pm/ecto/Ecto.Changeset.html#cast_assoc/3-sorting-and-deleting-from-many-collections (https://hexdocs.pm/ecto/Ecto.Changeset.html#cast_assoc/3-sorting-and-deleting-from-many-collections?utm_source=thinkingelixir&utm_medium=shownotes) – Ecto's Sorting and deleting from -many collections - https://twitter.com/iteamon/status/1648310734479130627 (https://twitter.com/iteamon/status/1648310734479130627?utm_source=thinkingelixir&utm_medium=shownotes) – Dry run implementation by Tymon Tobolski - https://twitter.com/theerlef/status/1646211583172034563 (https://twitter.com/theerlef/status/1646211583172034563?utm_source=thinkingelixir&utm_medium=shownotes) – ElixirConf EU keynote to look forward to 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://twitter.com/paraxialio/status/1641242283134660616 (https://twitter.com/paraxialio/status/1641242283134660616?utm_source=thinkingelixir&utm_medium=shownotes) - https://github.com/nccgroup/sobelow (https://github.com/nccgroup/sobelow?utm_source=thinkingelixir&utm_medium=shownotes) - https://github.com/nccgroup/sobelow/releases/tag/v0.12.2 (https://github.com/nccgroup/sobelow/releases/tag/v0.12.2?utm_source=thinkingelixir&utm_medium=shownotes) – recent release - https://github.com/podium/elixir-secure-coding (https://github.com/podium/elixir-secure-coding?utm_source=thinkingelixir&utm_medium=shownotes) - https://www.podium.com/ (https://www.podium.com/?utm_source=thinkingelixir&utm_medium=shownotes) - https://podcast.thinkingelixir.com/122 (https://podcast.thinkingelixir.com/122?utm_source=thinkingelixir&utm_medium=shownotes) – Securing Elixir and Teaching the Team interview with Holden - https://www.crowdstrike.com/cybersecurity-101/shift-left-security/ (https://www.crowdstrike.com/cybersecurity-101/shift-left-security/?utm_source=thinkingelixir&utm_medium=shownotes) – Shift left - https://www.nccgroup.com/us/ (https://www.nccgroup.com/us/?utm_source=thinkingelixir&utm_medium=shownotes) - https://github.com/podium/elixir-secure-coding (https://github.com/podium/elixir-secure-coding?utm_source=thinkingelixir&utm_medium=shownotes) - https://github.com/ExHammer/hammer (https://github.com/ExHammer/hammer?utm_source=thinkingelixir&utm_medium=shownotes) - SAST - Static Application Security Testing - IAST - Interactive Application Security Testing Guest Information - https://twitter.com/HoldenOullette (https://twitter.com/HoldenOullette?utm_source=thinkingelixir&utm_medium=shownotes) – Holden on Twitter - https://github.com/houllette/ (https://github.com/houllette/?utm_source=thinkingelixir&utm_medium=shownotes) – Holden on Github - https://oullette.xyz/ (https://oullette.xyz/?utm_source=thinkingelixir&utm_medium=shownotes) – Holden's Blog - https://twitter.com/griffinbyatt (https://twitter.com/griffinbyatt?utm_source=thinkingelixir&utm_medium=shownotes) – Griffin on Twitter - https://github.com/GriffinMB/ (https://github.com/GriffinMB/?utm_source=thinkingelixir&utm_medium=shownotes) – Griffin on Github - https://griffinbyatt.com/ (https://griffinbyatt.com/?utm_source=thinkingelixir&utm_medium=shownotes) – Griffin's page Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Message the show on Fediverse - @ThinkingElixir@genserver.social (https://genserver.social/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - Mark Ericksen on Fediverse - @brainlid@genserver.social (https://genserver.social/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - David Bernheisel on Fediverse - @dbern@genserver.social (https://genserver.social/dbern) - Cade Ward - @cadebward (https://twitter.com/cadebward) - Cade Ward on Fediverse - @cadebward@genserver.social (https://genserver.social/cadebward)
147: Thinking Elixir News
Day 1 and 2 of Livebook's first launch week announcements, a new JsonSchema compiler named Exonerate, Ecto 3.10.0 brings changeset improvements for LiveView, the Image library can now skew and unskew images using Nx, KnockLabs released the oneanddone library for idempotent APIs, and more! Show Notes online - http://podcast.thinkingelixir.com/147 (http://podcast.thinkingelixir.com/147) Elixir Community News - https://twitter.com/josevalim/status/1644035841080143872 (https://twitter.com/josevalim/status/1644035841080143872?utm_source=thinkingelixir&utm_medium=shownotes) – Livebook's first “launch week” is going on at the time of this recording. - https://twitter.com/josevalim/status/1645453335615483908 (https://twitter.com/josevalim/status/1645453335615483908?utm_source=thinkingelixir&utm_medium=shownotes) – Day 1 - show how to deploy notebooks as applications plus other QoL improvements arriving in Livebook v0.9 - https://news.livebook.dev/deploy-notebooks-as-apps-quality-of-life-upgrades---launch-week-1---day-1-2OTEWI (https://news.livebook.dev/deploy-notebooks-as-apps-quality-of-life-upgrades---launch-week-1---day-1-2OTEWI?utm_source=thinkingelixir&utm_medium=shownotes) – Blog post - Deploy notebooks as apps & quality-of-life upgrades - Launch Week 1 - Day 1 - https://news.livebook.dev/distributed2-machine-learning-notebooks-with-elixir-and-livebook---launch-week-1---day-2-1aIlaw (https://news.livebook.dev/distributed2-machine-learning-notebooks-with-elixir-and-livebook---launch-week-1---day-2-1aIlaw?utm_source=thinkingelixir&utm_medium=shownotes) – Distributed² Machine Learning notebooks with Elixir and Livebook - Launch Week 1 - Day 2 - https://www.youtube.com/watch?v=ELBQytOaQUQ (https://www.youtube.com/watch?v=ELBQytOaQUQ?utm_source=thinkingelixir&utm_medium=shownotes) – Sean Moriarity attended the Denver Online Elixir Meetup and talked about Bumblebee and conversational bots in Elixir. - https://github.com/E-xyza/Exonerate (https://github.com/E-xyza/Exonerate?utm_source=thinkingelixir&utm_medium=shownotes) – Exonerate (an opinionated JSONSchema compiler for Elixir) 0.3.0 is released and available on Hex - https://twitter.com/DNAutics/status/1643347181103874050 (https://twitter.com/DNAutics/status/1643347181103874050?utm_source=thinkingelixir&utm_medium=shownotes) – Twitter thread with discussion about what a JsonSchema compiler is - https://twitter.com/josevalim/status/1645485723242430465 (https://twitter.com/josevalim/status/1645485723242430465?utm_source=thinkingelixir&utm_medium=shownotes) – Ecto 3.10.0 was released with improvements around changesets, some of them focused on better interplay with LiveView - https://github.com/elixir-ecto/ecto/blob/v3.10.0/CHANGELOG.md (https://github.com/elixir-ecto/ecto/blob/v3.10.0/CHANGELOG.md?utm_source=thinkingelixir&utm_medium=shownotes) – Ecto 3.10.0 changelog - https://hexdocs.pm/ecto/3.10.0/Ecto.Changeset.html#field_missing?/2 (https://hexdocs.pm/ecto/3.10.0/Ecto.Changeset.html#field_missing?/2?utm_source=thinkingelixir&utm_medium=shownotes) – field_missing function as an example - https://twitter.com/chris_mccord/status/1645490346543964162 (https://twitter.com/chris_mccord/status/1645490346543964162?utm_source=thinkingelixir&utm_medium=shownotes) – Chris McCord will be showing off some of these new Ecto features in his upcoming ElixirConf EU talk. - https://twitter.com/germsvel/status/1643933568585043968 (https://twitter.com/germsvel/status/1643933568585043968?utm_source=thinkingelixir&utm_medium=shownotes) – German Valesco shared another short tip about using liveSocket.enableLatencySim() for slowing local dev experience - https://pragmaticstudio.com/courses/phoenix-liveview (https://pragmaticstudio.com/courses/phoenix-liveview?utm_source=thinkingelixir&utm_medium=shownotes) – PragmaticStudio updated their video based Phoenix LiveView course - https://elixirforum.com/t/image-an-image-processing-library-based-upon-vix/47568/98 (https://elixirforum.com/t/image-an-image-processing-library-based-upon-vix/47568/98?utm_source=thinkingelixir&utm_medium=shownotes) – Image 0.28.x released. Forum post with images showing what it does. - https://github.com/elixir-image/image/blob/main/CHANGELOG.md#image-0281 (https://github.com/elixir-image/image/blob/main/CHANGELOG.md#image-0281?utm_source=thinkingelixir&utm_medium=shownotes) – Image uses Nx and Vix to straighten or skew image data - https://twitter.com/cjbell_/status/1645508923196071936 (https://twitter.com/cjbell_/status/1645508923196071936?utm_source=thinkingelixir&utm_medium=shownotes) – Chris Bell at Knock Labs shared a new library release called “One and Done”. It is a tool for creating APIs that are idempotent. - https://github.com/knocklabs/oneanddone (https://github.com/knocklabs/one_and_done?utm_source=thinkingelixir&utm_medium=shownotes) – One and Done GitHub project - https://knock.app/blog/using-one-and-done-to-power-idempotency (https://knock.app/blog/using-one-and-done-to-power-idempotency?utm_source=thinkingelixir&utm_medium=shownotes) – One and done idempotency blog post - https://www.empex.co/new-york (https://www.empex.co/new-york?utm_source=thinkingelixir&utm_medium=shownotes) – EMPEX NYC conference reminder - June 9, 2023 - A one day, single-track Elixir conference in Brooklyn, NY 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) Find us online - Message the show - @ThinkingElixir (https://twitter.com/ThinkingElixir) - Message the show on Fediverse - @ThinkingElixir@genserver.social (https://genserver.social/ThinkingElixir) - Email the show - show@thinkingelixir.com (mailto:show@thinkingelixir.com) - Mark Ericksen - @brainlid (https://twitter.com/brainlid) - Mark Ericksen on Fediverse - @brainlid@genserver.social (https://genserver.social/brainlid) - David Bernheisel - @bernheisel (https://twitter.com/bernheisel) - David Bernheisel on Fediverse - @dbern@genserver.social (https://genserver.social/dbern) - Cade Ward - @cadebward (https://twitter.com/cadebward) - Cade Ward on Fediverse - @cadebward@genserver.social (https://genserver.social/cadebward)