Thinking Elixir Podcast

ThinkingElixir.com
undefined
Dec 13, 2022 • 54min

129: Time series data with Timescale DB

Tracking, analyzing and visualizing time series data can add a lot of business value to a project! We met up with Dave Lucia to learn more about Timescale DB, a PostgreSQL extension that adds time series tools to our regular database. Dave also created a timescale hex package to make it easier to work with hypertables and hyperfunctions. We learn why Timescale DB makes sense over other options, how to get started with it, example use cases, helpful resources and more! Show Notes online - http://podcast.thinkingelixir.com/129 Elixir Community News https://adventofcode.com/ – Advent of Code is going on https://gist.github.com/marpo60/bcf7dd45003adfe01b5581d03157a5de – Marcelo Dominguez' Livebook template for working on the daily problems. https://genserver.social/notice/AQAdGQAE5sgRL8x1g8 – José Valim created a repository to share all the Livebooks he has worked on, including talks and last year's Advent of Code https://github.com/josevalim/livebooks/ – José Valim's collection of shared public Livebooks https://github.com/rosaan/advent-of-code-2022 – Some shared solutions https://twitter.com/josevalim/status/1597880468032040960 – Explorer v0.4.0 is out https://hexdocs.pm/explorer/0.4.0 https://hexdocs.pm/explorer/0.4.0/Explorer.Query.html – Explorer.Query is a new API for writing expressive and performant queries https://podcast.thinkingelixir.com/104 – Chris Grainger talked about Explorer with us in episode 104 https://tips.nerves-project.org/ – Nerves website gets a new “tips” view https://twitter.com/josevalim/status/1597943279164993537 – José Valim announced he was migrating to the genserver.social Mastadon server https://genserver.social/josevalim – José's genserver.social profile https://genserver.social/notice/AQIfjB7SQcuEwPGEAC – José teased something "really big". Already released by the time you hear this. https://genserver.social/notice/AQIlH84yjkrh856rS4 – The graphic he teased http://codebeammexico.com/ – Code BEAM Lite México, March 3-4 2023 in México City https://thetinycto.com/blog/writing-a-game-using-chatgpt – Writing an Elixir LiveView game using ChatGPT https://thetinycto.com/gpt-game – The generated game https://chat.openai.com/chat – ChatGPT Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com Discussion Resources https://github.com/bitfo/timescale – Timescale and Elixir https://www.timescale.com/ https://docs.timescale.com/ https://www.bitfo.com/ https://defirate.com/ https://www.bitcoinprice.com/ https://ethereumprice.org/ https://docs.timescale.com/api/latest/hypertable/ – Hypertables https://docs.timescale.com/api/latest/hyperfunctions/ – Hyperfunctions https://codebeamamerica.com/talks/accessible-time-series-data-with-timescaledb/ https://fly.io/docs/postgres/managing/enabling-timescale/ https://www.whoop.com/ – Dave's biometric watch https://www.postgresql.org/docs/current/rules-materializedviews.html https://www.influxdata.com/ https://fly.io/docs/postgres/managing/enabling-timescale/ – Fly.io command to add timescale DB - fly pg config update --shared-preload-libraries timescaledb --app https://www.crunchydata.com/ https://docs.timescale.com/api/latest/hypertable/ https://docs.timescale.com/api/latest/hyperfunctions/ https://docs.timescale.com/timescaledb/latest/timescaledb-edition-comparison/ https://hexdocs.pm/timescale/intro.html https://www.milkroad.com/ https://docs.google.com/presentation/d/1c2gCxfigeQNz-Z32IaLrpdxt0JYwMc6Lam_vvUND31Y/edit?usp=sharing – Slides for Dave's Timescale talk from Code BEAM America https://hexdocs.pm/timescale/intro.html – Dave's “Intro to Timescale” Livebook from the Elixir Timescale docs Guest Information https://twitter.com/davydog187 – on Twitter https://github.com/davydog187/ – on Github https://davelucia.com/ – Blog Find us online Message the show - @ThinkingElixir Message the show on Mastadon - @ThinkingElixir@genserver.social Email the show - show@thinkingelixir.com Mark Ericksen - @brainlid Mark Ericksen on Mastadon - @brainlid@genserver.social David Bernheisel - @bernheisel David Bernheisel on Mastadon - @dbern@genserver.social Cade Ward - @cadebward Cade Ward on Mastadon - @cadebward@genserver.social Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!
undefined
Dec 6, 2022 • 1h

128: Speedy like a Bandit

The Phoenix 1.7 announcement blog post mentioned the ability to swap out Cowboy for another webserver like Bandit. We talked with Mat Trudel to learn more about his pure-Elixir webserver and find out how it works with Phoenix. We learn Bandit can be up to 5x faster by narrowly focusing on turning a request into a Plug connection and much more! Show Notes online - http://podcast.thinkingelixir.com/128 Elixir Community News https://github.com/features/security/ – Github's Dependabot now supports private hex repositories. https://twitter.com/sorentwo/status/1595526317436452864 – Parker Selbert brought this to our attention. https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file#hex-repository https://hexdocs.pm/mix/Mix.Tasks.Deps.Unlock.html – CI tip to check for unused mix lock entries https://twitter.com/RudManusachi/status/1597341690653999106 – Shared by Rudolf on Twitter mix deps.unlock --check-unused https://fly.io/phoenix-files/github-actions-for-elixir-ci/ – CI resource for Elixir projects on Github https://twitter.com/TechRecHayden/status/1595776257513373699 – Hayden Evans spotted that Zoom is using Erlang in production for their chat platform. Mastadon instances to consider if looking for a Twitter alternative... https://genserver.social/about https://hachyderm.io/explore https://fosstodon.org/ https://mastodon.social/explore https://www.lambdadays.org/lambdadays2023 – Lambda Days conference returns as an in-person only event to Kraków on 5-6 June 2023. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com Discussion Resources https://phoenixframework.org/blog/phoenix-1.7-released – Phoenix 1.7 blog post described at the end - “Alternative Webserver Support” https://github.com/mtrudel/bandit – “Bandit is a pure Elixir HTTP server for Plug & WebSock applications” https://github.com/mtrudel/thousand_island – “Thousand Island is a pure Elixir socket server, powering the layer underneath Bandit” https://ninenines.eu/docs/en/cowboy/2.9/guide/ – Cowboy docs https://www.pagerduty.com/ https://github.com/ninenines/cowlib https://www.youtube.com/watch?v=ZLjWyanLHuk https://github.com/crossbario/autobahn-testsuite https://en.wikipedia.org/wiki/Cyclic_redundancy_check https://en.wikipedia.org/wiki/Cyclic_redundancy_check#CRC-32_algorithm https://github.com/phoenixframework/websock https://hexdocs.pm/plug/Plug.Conn.html#upgrade_adapter/3 https://podcast.thinkingelixir.com/57 – Scaling Live Chat with Cade Ward episode https://en.wikipedia.org/wiki/HTTP/3 https://github.com/mtrudel/talks/blob/main/2022-05-EMPEX-MTX-a-funny-thing-happened-on-the-way-to-the-phoenix.pdf – 2022 EMPEX presentation slides https://github.com/mtrudel/talks/blob/main/2021-10-ElixirConf-bandit-on-the-loose.pdf – 2021 Elixir Conf presentation slides Guest Information https://twitter.com/mattrudel – on Twitter https://github.com/mtrudel/ – on Github https://mat.geeky.net – Blog Find us online Message the show - @ThinkingElixir Email the show - show@thinkingelixir.com Mark Ericksen - @brainlid David Bernheisel - @bernheisel Cade Ward - @cadebward Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!
undefined
Nov 29, 2022 • 53min

127: Ecto gets Lively in Livebook

We talked with Spawnfest competitors Filipe Cabaço & Joel Carlbark about their entry “Lively”. Lively was all about doing cool things with Ecto in Livebook. The project, later renamed to KinoEcto does 4 cool things around Ecto in Livebook. It builds Entity Relationship diagrams from the Ecto Schemas in your Elixir project. It can visualize the dense Postgres explain output and highlight a problem like when a full table scan is performed. It includes a ChangesetValidator SmartCell, and a QueryBuilder that uses NimbleParsec to parse a raw SQL query and do the initial work of turning that into an Ecto query. We talk about what the 48-hour competition was like, what they accomplished and what they plan to do next! Show Notes online - http://podcast.thinkingelixir.com/127 Elixir Community News https://github.com/AdRoll/rebar3_hank – rebar3_hank detects dead code in Erlang projects and reports it. https://twitter.com/fiquscoop/status/1592539028578250757 https://unused.codes/ https://github.com/hauleth/mix_unused https://hexdocs.pm/ex_doc/cheatsheet.html – ExDoc v0.29.1 is out with initial support for media prints for cheatsheets https://twitter.com/josevalim/status/1594649732768489475 https://github.com/pawurb/ecto_psql_extras/pull/31 – Add ability to gets all active connections to the database which can be displayed on the Phoenix LiveDashboard for Ecto. https://paraxial.io/blog/securing-elixir – Learned 2 additional CI checks to run on Elixir projects https://fly.io/phoenix-files/github-actions-for-elixir-ci/ – Mark's CI/CD guide was updated to include the new checks https://github.com/mirego/mix_audit https://hexdocs.pm/hex/Mix.Tasks.Hex.Audit.html – mix hex.audit https://twitter.com/nathanwillson/status/1594565494941458432 – Nathan Willson noticed that Chris recently updated the components in LiveBeats to use the new Phoenix 1.7 abilities https://github.com/fly-apps/live_beats/blob/master/lib/live_beats_web/components/core_components.ex – LiveBeats project with new core_components.ex file https://twitter.com/agundy_/status/1594558443125350400 – Aaron Gunderson created a really cool basic fly.io Phoenix Function as a Service with auto shutdown sample project. https://github.com/agundy/fly-faast https://adventofcode.com/2022 – Advent of Code 2022 starts on Dec 1st. https://www.elixirconf.eu/ – ElixirConf EU 2023 - in Lisbon Portugal. Hybrid conference 20-21 April 2023 - In person and virtual https://fosdem.org/2023/ – FOSDEM 2023 - Sunday, 5 February 2023 in Brussels, Belgium https://beam-fosdem.dev/ – BEAM specific gathering and devroom information https://elixirstatus.com/p/mJpKy-erlang-elixir-and-friends-devroom--fosdem-2023-call-for-talks http://elixirstream.dev – David moved the Elixir diffing project and other tools from utils.zest.dev to ElixirStream.dev https://twitter.com/bernheisel/status/1594549004687364098 Starting in 2023, we may not include an interview with every episode. Still bringing you the news! Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com Discussion Resources https://spawnfest.org/ https://github.com/spawnfest/lively – Spawnfest submission repo https://github.com/vorce/kino_ecto – Project continuing after competition https://forvillelser.vorce.se/posts/2022-11-11-spawnfest-kino-ecto-fka-lively.html – Blog post about Lively project https://twitter.com/filipecabaco/status/1581786455688777728 – Tweet about the project https://remote.com/ https://supabase.com/ https://www.talkdesk.com/ https://github.com/dashbitco/nimble_parsec https://github.com/cocoa-xu/evision https://twitter.com/_uwu_cocoa https://github.com/sorentwo/oban https://twitter.com/thramosal – Teammate - Thiago Ramos https://twitter.com/vittoria_bitton – Teammate - Vittoria Bitton Guest Information https://twitter.com/filipecabaco – Filipe Cabaço on Twitter https://github.com/filipecabaco/ – Filipe Cabaço on Github https://filipecabaco.com – Blog https://twitter.com/octavorce – Joel Carlbark on Twitter https://github.com/vorce/ – Joel Carlbark on Github https://forvillelser.vorce.se/ – Blog Find us online Message the show - @ThinkingElixir Email the show - show@thinkingelixir.com Mark Ericksen - @brainlid David Bernheisel - @bernheisel Cade Ward - @cadebward Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!
undefined
Nov 22, 2022 • 1h 1min

126: Working at a Software Agency with the Wizards

As software developers, there are many different types of companies we can work at. We met up with the Elixir Wizards crew to learn more about working at a Software Agency like SmartLogic. We compare what this is like vs working at a product company. Of course, we take the opportunity to learn more about Sundi Myint and Owen Bickford, their journeys to Elixir and the work they are doing now. Sundi shares how becoming an Engineering Manager presented new growth opportunities and Owen goes deeper on the ETL system he's creating to migrate an MSSQL DB to Postgres and how gets to play with Broadway in the process. Show Notes online - http://podcast.thinkingelixir.com/126 Elixir Community News https://www.youtube.com/playlist?list=PLqj39LCvnOWbmaPrkGCAzFMC_FYZUkmSr – Final batch of ElixirConf US 2022 videos were released! https://fly.io/phoenix-files/github-actions-for-elixir-ci/ – CI for Elixir projects using Github Actions and CD to auto-deploying on Fly.io https://nathanwillson.com/blog/posts/2022-11-11-partitioned_tests/ – Nathan Wilson showed how to partition CI tests over more runners for faster overall time. https://twitter.com/nathanwillson/status/1591604043780358144 – Nathan Wilson documented how dead-view controllers, pages, and views were restructured. https://fly.io/phoenix-files/opentelemetry-and-the-infamous-n-plus-1/ – Alex Koutmos wrote a guide and sample project showing how to use OpenTelemetry with Elixir and visualize the data in Grafana. https://elixirforum.com/t/visual-font-for-diagramming-elixir/51477 – Unique Elixir font created that renders as graphics of data structures. Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com Discussion Resources https://smartlogic.io/ https://smartlogic.io/podcast/elixir-wizards/ https://smartlogic.io/about/team https://www.cava.com/ https://smartlogic.io/software-development/ https://elixir-broadway.org/ https://en.wikipedia.org/wiki/Extract,_transform,_load https://www.microsoft.com/en-us/sql-server/sql-server-downloads https://github.com/elixir-ecto/tds https://hex.pm/packages/webauthn_live_component https://www.youtube.com/watch?v=krbriAecqUk – Owen's ElixirConf talk about his WebAuthnLiveComponent https://smartlogic.io/about/jobs Guest Information https://twitter.com/smartlogic – SmartLogic on Twitter https://twitter.com/owenbickford – Owen on Twitter https://twitter.com/sundikhin – Sundi on Twitter https://github.com/smartlogic/ – SmartLogic on Github https://github.com/type1fool/ – Owen Bickford on Github https://github.com/liveshowy/webauthn_live_component https://www.owencode.com/ – Owen's blog Find us online Message the show - @ThinkingElixir Email the show - show@thinkingelixir.com Mark Ericksen - @brainlid David Bernheisel - @bernheisel Cade Ward - @cadebward Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!
undefined
Nov 15, 2022 • 59min

125: Elixir at the Royal Bank of Canada

While hearing how Elixir is being used in the Royal Bank of Canada's Capital Markets, we learned a lot of extra things we didn't expect! Thanos Vassilakis, head of R&D in the CM group, explained how middle managers talk about “scaling” to mean hiring staff with the goal of using all of their budgets. Not the kind of scaling we typically think about! Thanos identified the biggest problem limiting Elixir's adoption at large financial institutions and it wasn't what we expected. He also shared stories of how LiveView greatly out performed React when rendering hundreds of live updating financial charts and, after experimenting with it, the React devs fully adopted LiveView! Lots of great insights and stories in this one! Show Notes online - http://podcast.thinkingelixir.com/125 Elixir Community News https://phoenixframework.org/blog/phoenix-1.7-released – Phoenix 1.7.0-rc.0 released! https://twitter.com/chris_mccord/status/1589721565692067840 – Chris McCord's Twitter announcement https://github.com/phoenixframework/phoenix/blob/v1.7.0-rc.0/CHANGELOG.md – Phoenix 1.7.0-rc.0 changelog https://www.youtube.com/watch?v=9-rqBLjr5Eo – Chris McCord's keynote https://twitter.com/clarkware/status/1587894081572569089 – Mike Clark shows how params can be added in embedded in Sigil P routes https://hex.pm/packages/heroicons – Heroicons https://github.com/mtrudel/bandit – Alternative webservers like Bandit become possible https://twitter.com/bernheisel/status/1589803460320710656 – David's diff of for going to new Phoenix 1.7 https://utils.zest.dev/gendiff – David's free Diff Generator tool for Phoenix projects https://twitter.com/josevalim/status/1589738157196869634 – Jose Valim's summation of new Phoenix release https://www.youtube.com/watch?v=mOeONt6Hkf8&list=PLqj39LCvnOWbmaPrkGCAzFMC_FYZUkmSr&index=15 – New batch of ElixirConf 2022 videos were released Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com Discussion Resources https://www.rbccm.com/en/ https://shapeshift.com/ https://en.wikipedia.org/wiki/Ada_(programming_language) https://en.wikipedia.org/wiki/Joe_Armstrong_(programmer) https://en.wikipedia.org/wiki/Hope_(programming_language) https://en.wikipedia.org/wiki/Miranda_(programming_language) https://www.investopedia.com/terms/c/capitalmarkets.asp https://www.investopedia.com/terms/f/financialrisk.asp https://couchdb.apache.org/ https://www.ericsson.com/en https://docs.oracle.com/cd/E15261_01/tuxedo/docs11gr1/tech_articles/CORBA.html https://www.amazon.com/Programming-Erlang-Concurrent-Pragmatic-Programmers/dp/193778553X https://www.postgresql.org/ https://github.com/absinthe-graphql/absinthe https://github.com/lasp-lang/partisan https://github.com/devinus/poolboy https://docs.python.org/3/library/multiprocessing.html https://en.wikipedia.org/wiki/X_Window_System https://openwhisk.apache.org/ https://www.drools.org/ https://en.wikipedia.org/wiki/Rete_algorithm https://en.wikipedia.org/wiki/COBOL https://sqlite.org/src4/doc/trunk/www/bt.wiki https://www.honeybadger.io/blog/elixir-memory-structure/ https://docs.python.org/3/library/multiprocessing.shared_memory.html https://github.com/membraneframework/shmex https://semiengineering.com/the-rise-of-smartnics/ https://www.nvidia.com/en-us/networking/ethernet-adapters/ https://www.nvidia.com/en-us/networking/products/data-processing-unit/hpc/ https://github.com/zeroc-ice/ice https://github.com/afiniate/seresye Guest Information https://twitter.com/thanos_tweets – on Twitter [thanos.vassilakis@rbccm.com](thanos.vassilakis@rbccm.com) – Email https://www.rbccm.com/en/ – Royal Bank of Canada Capital Markets https://elixirforum.com/u/thanos/summary – Thanos on Elixir Forum Find us online Message the show - @ThinkingElixir Email the show - show@thinkingelixir.com Mark Ericksen - @brainlid David Bernheisel - @bernheisel Cade Ward - @cadebward Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!
undefined
Nov 8, 2022 • 58min

124: Caching Things Anywhere with Nebulex

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

123: Ash Framework Models Resources

Creator of the Ash Framework, Zach Daniel, shares how he feels Ecto is such a good tool, that people haven't built a modeling layer above it and end up using Ecto directly. Ash models a resource above Ecto, making it more expressive while supporting LiveView, REST, and GraphQL interfaces on top. While cutting boilerplate, a major goal builds in escape hatches to keep from being boxed in. Ash Framework recently celebrated a 2.0 release, accompanied by the release of the Ash HQ website. A fun look into the achievements and philosophy that make the Ash Framework what it is today! Show Notes online - http://podcast.thinkingelixir.com/123 Elixir Community News https://twitter.com/josevalim/status/1582770471728484352 – ExDoc v0.29 is out with a new Cheatsheet feature https://devhints.io – DevHints was a source of inspiration for Cheatsheets https://www.youtube.com/watch?v=MTE7dLhkQ8Q – Phoenix LiveView Storybook video published. Demo of v0.4.5 https://podcast.thinkingelixir.com/117 – Previous interview about Phoenix LiveView Storybook https://github.com/spawnfest/graphql_smart_cell – GraphQL Smart Cell for Elixir Livebook https://twitter.com/mcrumm/status/1581350976354627584 – Michael Crumm explains they intend to further develop the project. https://twitter.com/alan_zimm/status/1583012582847262720 – WhatsApp team released a new Tree Sitter Erlang Github project https://github.com/WhatsApp/tree-sitter-erlang – The Erlang Tree Sitter project https://twitter.com/katafrakt_pl/status/1582808419157041152 – Try "mix hex.outdated" to see nice DX feature https://twitter.com/bernheisel/status/1583252469550678016 – LiveViewJS as in LiveView API but all in JavaScript? https://www.youtube.com/watch?v=7khBftbpHLs – Strangeloop presentation on LiveViewJS https://github.com/floodfx/liveviewjs – LiveViewJS project https://github.com/kipcole9/image – Kip Cole's Image library https://twitter.com/kipcole9/status/1583632387589566464 – Kip's weekend project to generate meme images for fun Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com Discussion Resources https://ash-hq.org/ https://github.com/ash-project/ash https://github.com/ash-project https://podcast.thinkingelixir.com/27 – Previous discussion from Dec 2020 https://alembic.com.au/ https://rethinkdb.com/ https://github.com/ash-project/ash_phoenix https://hexdocs.pm/ash_phoenix/AshPhoenix.Form.html https://ash-hq.org/docs/module/ash/latest/ash-flow – Ash.Flow docs https://twitter.com/ZachSDaniel1/status/1582139826752483329 – Family showing support for the milestone STAPLE Stack - Surface, Tailwind, Ash, Phoenix, LiveView, Elixir https://discord.com/invite/D7FNG2q - Discord invite https://elixirforum.com/t/ash-framework-a-declarative-resource-oriented-application-development-framework-for-elixir/51119 Guest Information https://twitter.com/ZachSDaniel1 – on Twitter https://github.com/zachdaniel/ – on Github https://twitter.com/AshFramework – Ash on Twitter https://ash-hq.org/ – Ash HQ Find us online Message the show - @ThinkingElixir Email the show - show@thinkingelixir.com Mark Ericksen - @brainlid David Bernheisel - @bernheisel Cade Ward - @cadebward Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!
undefined
Oct 25, 2022 • 46min

122: Securing Elixir and Teaching the Team

It’s important to learn safe coding practices. As developers, we want people to love our products and happily pay to use them. We also want to protect our services and users from hackers and information leaks. However, sometimes we unknowingly create vulnerabilities in our systems. One of the best ways to prevent problems is to train the team working on the project. To help do this, Holden Oullette started an OpenSource project called Elixir Secure Coding Training for teams. Livebook based, the lessons can be forked and customized for what’s relevant to our projects. Check out what's already available! There’s more work and lessons to create. People are invited to jump in and help out. The goal is to create an education and training resource for the Elixir community! Show Notes online - http://podcast.thinkingelixir.com/122 Elixir Community News https://twitter.com/AshFramework/status/1582062954891350016 – Ash Framework 2.0 released https://github.com/ash-project/ash/blob/2.0/CHANGELOG.md – Ash Framework changelog https://www.ash-hq.org/ https://elixirforum.com/t/ex-cldr-common-locale-data-repository-cldr-functions-for-elixir/17350/92 – Ex_cldr and Kip Cole's development plans https://podcast.thinkingelixir.com/120 – Interview with Kip Cole https://hexdocs.pm/ex_cldr_routes – New CLDR library to help localize Phoenix routes https://hexdocs.pm/phoenix_localized_routes – There are other route localizing options as well https://twitter.com/lukaszsamson/status/1578521810554916864 – Elixir-LS fixed 4 year old bug with help from reporter! https://github.com/elixir-lsp/elixir-ls/issues/120 – Elixir-LS history and details on the fix https://twitter.com/fhunleth/status/1580524909939556353 – Nerves on Apple silicon improvements in upcoming release https://spawnfest.org/ – Spawnfest competition closed. People sharing their creations. https://twitter.com/spawnfest/status/1581347422671806464 – List of Spawnfest judges https://twitter.com/michalmuskala/status/1581743531764617217 – JSON Native project shared https://github.com/spawnfest/json_native https://twitter.com/livebookdev/status/1581995785637756928 – Livebook Ecto extension called Lively supports Entity Relationship Diagrams and more. https://github.com/orgs/spawnfest/repositories?q=2022+in%3Atopics – See all the submissions with this non-obvious GitHub search https://www.elixirconf.eu/ – ElixirConf EU 2023 in in Lisbon Portugal - Hybrid conference 20-21 April 2023 - In person and virtual Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com Discussion Resources https://github.com/Podium/elixir-secure-coding https://www.podium.com/ https://jupyter.org/ https://twitter.com/holdenoullette/status/1565486046237921280 https://2022.elixirconf.com/speakers/holden-oullette https://owasp.org/Top10/ https://en.wikipedia.org/wiki/Capture_the_flag_(cybersecurity) https://github.com/podium/elixir-secure-coding/blob/main/modules/4-graphql.livemd – Incomplete GraphQL module https://hex.pm/packages/sobelow https://semgrep.dev/ https://www.theregister.com/2016/03/23/npm_left_pad_chaos/ – Background on "left pad" https://github.com/podium/vigil Guest Information https://twitter.com/holdenoullette – on Twitter https://github.com/houllette/ – on Github https://oullette.xyz – Blog Find us online Message the show - @ThinkingElixir Email the show - show@thinkingelixir.com Mark Ericksen - @brainlid David Bernheisel - @bernheisel Cade Ward - @cadebward Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!
undefined
Oct 18, 2022 • 55min

121: Self Taught Coder to First Elixir Job

She started at the very beginning of her self-directed, non-traditional route to coding. She first had to learn to code. She worked, studied, and leaned on mentors and others until she reached the point of being hired for a full time job. What language did she tackle as that very first one? Elixir! We talked with Kimberly Johnson about how she did it. She shared her story at ElixirConf which we found inspiring. We wanted to go deeper on how she kept going when things got hard and how she built up a network of mentors and resources to help along the way. A great story and potential roadmap for others who want to follow a non-traditional path to a software development career! Show Notes online - http://podcast.thinkingelixir.com/121 Elixir Community News https://elixirforum.com/t/phoenix-1-3-1-4-1-5-and-1-6-security-releases-for-wildcard-check-origin-vulnerability/50902 – Phoenix Security Releases for versions 1.3, 1.4, 1.5, and 1.6 https://github.com/elixir-lang/elixir/releases/tag/v1.14.1 – Elixir 1.14.1 released https://github.com/phoenixframework/phoenix_live_view/blob/master/CHANGELOG.md – Phoenix LiveView 0.18.3 bug fix release https://blog.appsignal.com/2022/10/11/phoenix-liveview-018-new-special-html-attributes.html – Sophie DeBennedetto wrote an article that covers the new :let, :if, and :for special forms https://github.com/CargoSense/absinthe_client – AbsintheClient - new library that is a GraphQL client for Absinthe with built-in support for subscriptions https://podcast.thinkingelixir.com/99 – Episode 99 with Michael Davis to learn more about Slipstream https://github.com/elixir-ecto/ecto_sql/blob/master/CHANGELOG.md#v390-2022-09-27 – EctoSQL v3.9.0 released https://fly.io/phoenix-files/safe-ecto-migrations/ – Safe Ecto Migrations guide https://twitter.com/josevalim/status/1578411348404228096 – Livebook v0.7 released https://elixir-lang.org/blog/2022/10/05/my-future-with-elixir-set-theoretic-types/ – New blog post from José Valim on Elixir's future with set-theoretic types https://codebeamamerica.com/ – Code Beam America conference. Held November 3-4 in the Computer History Museum in Mountain View, CA. & online https://www.cloudflare.com/products/turnstile/ – Cloudflare created a new captcha replacement called Turnstile Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com Discussion Resources https://www.travelpassgroup.com/ https://www.udemy.com/course/the-complete-elixir-and-phoenix-bootcamp-and-tutorial/ https://pragmaticstudio.com/phoenix-liveview https://pragmaticstudio.com/elixir https://grox.io/about https://www.psychologytoday.com/us/basics/grit – Grit on Psychology Today https://en.wikipedia.org/wiki/Rubber_duck_debugging https://pragprog.com/titles/tpp20/the-pragmatic-programmer-20th-anniversary-edition/ https://www.manning.com/books/elixir-in-action-second-edition Guest Information https://twitter.com/siestakimberly – on Twitter https://github.com/siestakimberly/ – on Github https://www.linkedin.com/in/kimberly-johnson-716869142/ – LinkedIn Find us online Message the show - @ThinkingElixir Email the show - show@thinkingelixir.com Mark Ericksen - @brainlid David Bernheisel - @bernheisel Cade Ward - @cadebward Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!
undefined
Oct 11, 2022 • 56min

120: Localize and Personalize Your Elixir Apps

Localizing and personalizing an application is separate from the language used in the interface. Kip Cole explains how the mismatch of computers with the culture of our audience creates friction we may not even be aware of. In fact, our benign app may be unintentionally offensive to millions of people! Kip created the libraries ex_cldr, money and tempo to help Elixir developers localize applications in a culture aware way. What does that mean? It means using minimal information we can infer how names should appear, how numbers are represented, the assumed numeric rounding rules, first day of the week, the calendar being used, and more! Show Notes online - http://podcast.thinkingelixir.com/120 Elixir Community News https://github.com/phoenixframework/phoenix_live_view – LiveView v0.18.1 and 0.18.2 were released https://twitter.com/mcrumm/status/1575571809470070784 – PhoenixProfiler plugin updated for LiveView 0.18 https://github.com/mcrumm/phoenix_profiler https://podcast.thinkingelixir.com/88 – Previous interview with Michael Crumm about PhoenixProfiler https://news.livebook.dev/how-to-query-and-visualize-data-from-amazon-athena-using-livebook-4dfQ5y – Livebook blog tutorial post showing how to use Amazon Athena https://aws.amazon.com/athena/ – Amazon Athena service page https://github.com/phenixdigital/phx_live_storybook – PhxLiveStorybook released v.0.4 https://github.com/phenixdigital/phx_live_storybook/blob/main/CHANGELOG.md https://podcast.thinkingelixir.com/117 – Previous interview about PhxLiveStorybook https://supabase.com/blog/postgres-wasm – Supabase open-sources PostgreSQL on WASM https://dockyard.com/blog/2022/10/01/liveview-native-weekly-update-4 – LiveView Native - weekly update 4 Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com Discussion Resources https://twitter.com/wiebemarten/status/1557852447414132739 https://github.com/kipcole9 https://2022.elixirconf.com/speakers/kip-cole – Time algebra - a new way to think about and work with time https://github.com/kipcole9/tempo – Tempo library https://github.com/kipcole9/money https://github.com/elixir-cldr/cldr – ex_cldr - Elixir implementation of CLDR/ICU https://www.amazon.com/Astronomical-Algorithms-Jean-Meeus/dp/0943396611 https://github.com/kimlai/tz_world https://www.iflscience.com/what-is-a-leap-second-and-why-do-amazon-facebook-and-google-want-to-scrap-it-64625 https://github.com/kipcole9/money Guest Information https://twitter.com/kipcole9 – on Twitter https://github.com/kipcole9/ – on Github https://elixirforum.com/u/kip/summary – ElixirForum Find us online Message the show - @ThinkingElixir Email the show - show@thinkingelixir.com Mark Ericksen - @brainlid David Bernheisel - @bernheisel Cade Ward - @cadebward Sponsored By:Fly.io: Fly.io is a great place to deploy your next Phoenix application! Check them out!

The AI-powered Podcast Player

Save insights by tapping your headphones, chat with episodes, discover the best highlights - and more!
App store bannerPlay store banner
Get the app