Elixir Wizards is an interview-format podcast, focused on engineers who use the Elixir programming language. Initially launched in early 2019, each season focuses on a specific topic or topics, with each interview focusing on the guest's experience and opinions on the topic. Elixir Wizards is hosted by Eric Oestrich and Sundi Myint of SmartLogic, a dev shop that’s been building custom software since 2005 and running Elixir applications in production since 2015. Learn more about how SmartLogic uses Phoenix and Elixir. (https://smartlogic.io/phoenix-and-elixir?utm_source=podcast)

Similar Podcasts

Flutter 101 Podcast

Flutter 101 Podcast
Weekly podcast focusing on software development with Flutter and Dart. Hosted by Vince Varga.

Elixir Outlaws

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.

Remote Ruby

Remote Ruby
Three Rubyists having conversations and interviewing others about Ruby and web development.

ElixirConf 2020 Preview

August 27, 2020 1:17:12 55.89 MB Downloads: 0

With ElixirConf 2020 just around the corner, today’s episode is a sneak peek where we talk with six of this year’s speakers. Each speaker gives listeners an elevator pitch of their talk while throwing in extra details about who their talk is aimed at, what they learned through the process, and which talks they’re excited about attending. Our first guest is Quinn Wilton, a developer at Tinfoil Security, whose talk is titled ‘Type-Safe LiveView with Gleam’. Quinn explains how she’s created a symbiosis between Elixir and Gleam that helps her create more consistent code while offsetting the disadvantages of dynamic typing. We then chat with Dan Lindeman whose talk, ‘Short Circuit IoT Development Time with Nerves,’ is an overview of building custom hardware using Nerves and Elixir. After Dan’s plug on how you can start programming Nerves on your laptop, we welcome Jeffrey Utter to the show. His talk is a deep dive into ‘Debugging Live Systems on the Beam.’ Teasing out the topic, we discuss inefficiencies in the debugging process and how many developers adopt a ‘whack-a-mole’ approach to dealing with bugs. From debugging to UintSet, Luciano Ramalho, our next speaker, gives us a taste of his presentation, ‘UIntSet: enumerable, streamable, understandable.’ Luciano shares how the Go language inspired him to experiment with leveraging protocols and streams to build new idiomatic Elixir data structures from scratch. He also touches on the importance of being humble when learning new languages and gearing Elixir to a non-engineer user base. After Luciano, we’re joined by Melvin Cedeno, a fellow Elixir Wizard from the SmartLogic family. Melvin brings his teaching experience to bear on the topic of ‘Teaching Functional Programming with Elixir.’ This is a key talk in growing our community, especially when considering the point that being an Elixir genius doesn’t necessarily mean that you’re well-suited to teach it. Last but certainly not least, we speak with Japa Swadia from Podium about her talk, ‘Domain-Driven Design with Elixir’ — a subject that’s been a huge focus on the podcast. We chat about what domain-driven design means and why it’s an important foundational concept for beginners to learn. Tune in for this tip-of-the-iceberg preview. It’s just a glimpse into the varied and wonderfully informative talks you can expect at ElixirConf 2020. Key Points From This Episode: Introducing Quinn Wilton who is using Gleam to interact with Elixir. How being acquired by Synopsys has given Tinfoil Security access to greater resources. Balancing the advantages of Elixir with its drawbacks when it comes to dynamic analysis. What Gleam is and how it makes static typing more approachable. Teasing Quinn’s ElixirConf talk — ‘Talk Type-Safe LiveView with Gleam’ What Quinn has learned from the process of creating his presentation. Building a dissembler and the talk that Quinn is most looking forward to attending. Dan Lindeman’s work at Very making solar micro-grids. The benefits of Elixir and Nerves when building custom hardware. Who Dan’s talk is aimed at and why it’s appropriate for any experience level. Working with smart minds and laboring through hardware docs that often lie. How scary it can be to work with hardware and the value of having your talk appeal to entry-level Elixir users. Jeffrey Utter unpacks his talk — ‘Debugging Live Systems on the Beam.’ How most people play ‘whack-a-mole’ when dealing with live system bugs. Using match specs to hone in on your debugging process. Why most Elixir coders should learn about Jeffrey’s debugging system. Why is Recon Library is such an excellent tool and its potential uses in distributed systems. Hear which talks Jeffrey is looking forward to attending. How Go inspired Luciano Ramalho to explore applying different data structures to Elixir. What skill-level Luciano’s talk is aimed at and why. Developing a sense of how Elixir is idiomatic, despite being such a new language. Being humble when learning new languages and the importance of protocols in understanding idiomatic data structures. How Elixir is geared towards engineers which can create barriers of entry. Mark Cedeno gives an elevator pitch for his talk — ‘Teaching Functional Programming with Elixir.’ Why knowing Elixir very well doesn’t mean that you can teach it. The benefits of remote learning; it can make your teaching more organized and to-the-point. Hear about the talks that Mark is excited about attending. Japa gives us a crash-course on domain-driven design. Creating a solid foundation for your app by considering the contexts in which it’s used. Why beginners or those wanting to switch to domain-orientated coding should attend Japa’s talk. Using schema to point to the same table in different contexts. Which talks Japa is attending and how she got selected for ElixirConf 2020. Links Mentioned in Today’s Episode: Elixir Wizards Listener Survey — https://smr.tl/podcastsurvey SmartLogic — https://smartlogic.io/ ElixirConf 2020 — https://2020.elixirconf.com/ Quinn Wilton — https://github.com/QuinnWilton/gleam-chip8 Quinn Wilton Twitter — https://twitter.com/wiltonquinn ‘Type-Safe LiveView with Gleam’ — https://2020.elixirconf.com/speakers/128/talk Tinfoil Security — https://www.tinfoilsecurity.com/ Synopsys — https://www.synopsys.com/ Gleam — https://gleam.run/ Louis Pilfold GitHub — https://github.com/lpil Phoenix LiveView — https://github.com/phoenixframework/phoenixliveview CHIP-8 — https://en.wikipedia.org/wiki/CHIP-8 Stephen Bussey — https://github.com/sb8244 ‘The Joy of an Elixir Monolith’ — https://2020.elixirconf.com/speakers/121/talk Code BEAM / Code Sync — https://codesync.global/ Dan Lindeman — https://github.com/DanLindeman Dan Lindeman Twitter — https://twitter.com/lindemda ‘Short Circuit IoT Development Time with Nerves’ — https://2020.elixirconf.com/speakers/117/talk Nerves Platform — https://www.nerves-project.org/ Very — https://www.verypossible.com/ Justin Schneck — https://www.linkedin.com/in/justinschneck/ Daniel Stoppard — https://www.linkedin.com/in/daniel-spofford-2307a655/ Jenn Gamble — https://2020.elixirconf.com/speakers/115/bio Juliana Helena — https://2020.elixirconf.com/speakers/129/bio ‘How Elixir made me a better Java programmer’ — https://2020.elixirconf.com/speakers/129/talk Nerves Hub — https://www.nerves-hub.org/ Jeffrey Utter — https://github.com/jeffutter Bleacher Report — https://bleacherreport.com/ ‘Debugging Live Systems on the Beam’ — https://2020.elixirconf.com/speakers/114/talk Datadog — https://www.datadoghq.com/ Erlang Sys Trace 2 — https://erlang.org/doc/man/sys.html#trace-2 Recon Library — https://ferd.github.io/recon/ Erlang Debugger — http://erlang.org/doc/apps/debugger/debuggerchapter.html Catalina Astengo — https://github.com/castengo gRPC + Elixir Microservices = A Love Story? — https://2020.elixirconf.com/speakers/116/talk KC Elixir — https://www.kcelixir.com/ Luciano Ramalho — https://github.com/ramalho/ Luciano Ramalho Twitter — https://twitter.com/ramalhoorg ‘UintSet: enumerable, streamable, understandable’ — https://2020.elixirconf.com/speakers/125/talk ThoughtWorks — https://www.thoughtworks.com/ Go — https://golang.org/ The Go Programming Language — https://www.gopl.io/ Brian W. Kernighan — https://www.cs.princeton.edu/people/profile/bwk Fluent Python — https://www.oreilly.com/library/view/fluent-python/9781491946237/ Simon de Haan — https://github.com/smn ‘Using Elixir and WhatsApp to launch WHO’s global COVID-19 response’ — https://2020.elixirconf.com/speakers/124/talk Yutaka Kikuchi — https://github.com/kikuyuta ‘Applying Elixir for driving small hydropower plants with Nerves’ — https://2020.elixirconf.com/speakers/123/talk Processing — https://processing.org/ Melvin Cedeno — https://github.com/thecraftedgem ‘Teaching Functional Programming With Elixir’ — https://2020.elixirconf.com/speakers/99/talk Turing — https://turing.io/ Nicholas Henry — https://github.com/nicholasjhenry ‘The Upside Dimension of Elixir - An Introduction to Metaprogramming’ — https://2020.elixirconf.com/speakers/120/talk Brian Marick — https://github.com/marick/ ‘Tricks and tools for writing Elixir tests’ — https://2020.elixirconf.com/speakers/109/talk German Velasco — http://www.germanvelasco.com/ ‘Testing LiveView’ — https://2020.elixirconf.com/speakers/119/talk Lonestar Elixir — https://lonestarelixir.com/ Japa Swadia — https://github.com/japa-swadia Podium — https://www.podium.com ‘Domain-Driven Design with Elixir’ — https://2020.elixirconf.com/speakers/105/talk Design Patterns — https://en.wikipedia.org/wiki/Design_Patterns Justus Eapen Social Handle — @JustusEapen Eric Oestrich Social Handle — @EricOestrich Sundi Myint Social Handle — @SundiKhin Special Guests: Dan Lindeman, Japa Swadia, Jeffrey Utter, Luciano Ramalho, Melvin Cedeno, and Quinn Wilton.

Mark Windholtz on Domain-Driven Design (DDD)

August 20, 2020 58:51 42.38 MB Downloads: 0

Domain-driven design and extreme programming can help bridge the gap between development and business, and today we invite Mark Windholtz from Agile DNA to talk about how! Mark starts out by telling us about his early work in extreme programming before agile was a term and how he switched from Rails to Elixir after realizing its power for implementing domain-driven design. We take a deep dive with him into what these concepts mean, hearing him weigh in on how DDD can help architecture accommodate both development and business oriented complexities. For Mark, development and business teams must get a better understanding of each other’s jargon, and DDD is a way to accomplish this. The goal is to find a way of building a solid software core and to move away from features to systems thinking, whereby flexible software can make it more possible to do agile on the business side. We chat about some of the practices and principles that come into play when implementing DDD for Mark, and he details concepts like ubiquitous language, bounded contexts, and how to focus on the core domain by exploring models using tactical and strategic patterns. Along with this, Mark discusses users not being a domain concept, the challenges of getting new terms to stick in teams’ minds, and the task of refactoring code to reflect updated glossaries. Near the end of our conversation, Mark drills down on how DDD can optimize team efficiency. In closing, we get to know Chris Bell from ElixirTalk a little better in this week’s edition of Pattern Matching with Todd! Key Points From This Episode: Thoughts on SpaceEx and their approach to engineering: system versus feature optimization. Mark’s background in extreme programming, how he got started with AgileDNA, and the work they do there. A definition of extreme programming that adds engineering practices to Scrum. Elixir’s superior ability to do DDD compared to Rails and how Mark got started using it. A brief introduction to domain-driven design, an approach to simplifying complex software. How architecture needs to accommodate essential as well as accidental complexity. Elixir’s ability to accommodate the building of domain models with well-separated code chunks. Principles of ubiquitous language and bounded contexts that make up DDD for Mark. Ubiquitous language helps devs and businesspeople understand each other. Bounded contexts: ‘Within this space, this world means this thing.’ Shifting focus from trying to make not all software, but core software, good. What patterns are applied to use principles of ubiquitous language and bounded contexts. Finding and focusing on the core domain by exploring models and how to do this using tactical and strategic patterns. The consequences of users not being a domain concept which demands having a clearer language. Challenges of getting language and concepts to stick in business people’s minds. Refactoring code to reflect updated glossaries: Technical challenges teams doing DDD face. Switching paradigms from feature-based optimizations to building an amazing code core. Approaches to modeling: the value of exploring multiple models. How teams can become more efficient using DDD and extreme programming. Final plugs from Mark and how Agile DNA can help use Elixir to implement DDD. Pattern matching: Todd gets to know more about Chris Bell from ElixirTalk. How Chris got into programming, what he’d do if not be a programmer, and more! Why Chris loves history, dream pop, and what movie he’ll watch over and over. What project Chris is most excited about next: Building Settlers of Catan using LiveView. Links Mentioned in Today’s Episode: Elixir Wizards Listener Survey — https://smr.tl/podcastsurvey SmartLogic — https://smartlogic.io/ Mark Windholtz on LinkedIn — https://www.linkedin.com/in/mwindholtz/ Mark Windholtz on Twitter — https://twitter.com/windholtz Agile DNA — http://www.agiledna.com Chris Bell on Twitter — https://twitter.com/cjbell?lang=en ElixirTalk — http://elixirtalk.com/ Chris Keathley — https://keathley.io/ Elon Musk — https://www.forbes.com/profile/elon-musk/#5bbe73cc7999 The Everyday Astronaut — https://www.youtube.com/channel/UC6uKrUWqJ1R2HMTY3LIx5Q Rob Martin — https://www.linkedin.com/in/version2beta/ Perhap — https://github.com/Perhap/perhap Andrew Hao — https://github.com/andrewhao Fred Brooks — http://www.cs.unc.edu/~brooks/ The Mythical Man-Month — https://www.amazon.com/Mythical-Man-Month-Software-Engineering-Anniversary/dp/0201835959 Zach Thomas — https://github.com/zdcthomas?language=elixir&tab=stars 1917 — https://www.imdb.com/title/tt8579674/ Real Estate — https://www.realestatetheband.com/ Galaxie 500 — https://pitchfork.com/artists/1673-galaxie-500/ Star Trek: First Contact — https://www.imdb.com/title/tt0117731/ Star Trek: The Wrath of Khan — https://www.imdb.com/title/tt0084726/ LiveView — https://hexdocs.pm/phoenixliveview/Phoenix.LiveView.html Lonestar Elixir — https://lonestarelixir.com/ Special Guest: Mark Windholtz.

Elixir Wizards Dojo: Nerves Part 2 with Connor Rigby and Todd Resudek

August 13, 2020 42:41 61.99 MB Downloads: 0

Welcome to the second part of our special Elixir Wizards Dojo. A mashup made in partnership with ElixirConf Japan. In today’s episode, we talk to Nerves core team members Todd Resudek and Connor Rigby about all things Nerves. But first, Todd leads us into a delightful digression about his enjoyment of heavy metal music. From metal back to Nerves, Todd chats about how he uses Nerves to monitor his internet connection and to automatically restart his router when certain conditions are met. After talking about using Flutter and Dart to build GUIs, we ask Todd to share another of his Nerves projects; the future of sprinklers — the Drizzle 2000! We then explore Connor’s self-defined role in the Nerves team as the development head of networking libraries before discussing how easy it is to use Nerves if you are an Elixir user. Todd and Connor dive into their utopian visions for the future of Nerves and why no other IoT solutions can compete with the tooling that Nerves provides. We talk about FarmBot and the many features that its models have, including how they can pulverize weeds. This springboards the conversion into the increasing importance of IoT tech in the agriculture sector and how it’s likely to be the next billion-dollar industry. We round off the episode by giving our guests the space to plug themselves and they close with a request for listeners to Iron Maiden and Metallica’s first albums. A perfect compliment to the first installment of the Elixir Wizards Dojo, tune in to learn more about the Nerves Project. Key Points From This Episode: Introducing our guests and this episode’s connection to ElixirConf Japan. Connor and Todd lead a chat on the history and subgenres of heavy metal music. Todd talks about using Nerves to monitor his internet connection and restart his router. Building a user interface for Nerves’s projects using Flutter; Google’s UI toolkit. Best practices for developing apps with a specific focus on GUI apps. Hear about the Drizzle 2000! Todd’s sprinkler controller system that runs on Nerves. Todd and Connor’s respective roles as a part of the Nerves core team. The benefit of using Nerves; once it’s booted it’s a regular Elixir app. What a kiosk terminal is and how you would go about internationalizing one. Exploring the future of Nerves and hardware development. Comparing Nerves to other IoT solutions; in conclusion, nothing can compete. Different FarmBot system models that all use Nerves to grow food for you. Using Nerves to encode and record video or to create a live stream. Why integrating IoT into the agricultural sector will be the next billion-dollar industry. Links Mentioned in Today’s Episode: SmartLogic — https://smartlogic.io/ ElixirConf — https://elixirconf.com/2020 Connor Rigby GitHub — https://github.com/ConnorRigby Todd Resudek Twitter — https://twitter.com/sprsmpl Todd Resudek GitHub — https://github.com/supersimple Simplebet — https://simplebet.io/ Flutter — https://flutter.dev/ Binary Noggin — https://binarynoggin.com/ Nerves Project — https://www.nerves-project.org/ Nerves Project GitHub — https://github.com/nerves-project/nervespack#erlang-distribution Nerves Vintage Net GitHub — https://github.com/nerves-networking/vintagenet Nerves Web Kiosk GitHub — https://github.com/nerves-web-kiosk/kiosksystemrpi3 Rhapsody of Fire — https://www.rhapsodyoffire.com/ Ronnie James Dio — https://www.ronniejamesdio.com/ DragonForce — https://dragonforce.com/ Black Sabbath — https://www.blacksabbath.com/ Deep Purple — https://deeppurple.com/ Iron Maiden — https://ironmaiden.com Judas Priest — http://www.judaspriest.com/home/ Sam Dunn — https://www.imdb.com/name/nm0242757/ Ryan Holiday — https://ryanholiday.net/ Arjen Lucassen — https://www.arjenlucassen.com Metallica — https://www.metallica.com/ San Francisco Symphony — https://www.sfsymphony.org/ Fping — https://fping.org/ Dart — https://dart.dev/ React Native — https://reactnative.dev/ Scenic — https://kry10.com/ Phoenix Framework — https://www.phoenixframework.org/ Drizzler 2000 GitHub — https://github.com/supersimple/drizzle Ditch Witch — https://www.ditchwitch.com/ Jon Carstens — https://twitter.com/joncarstens?lang=en Le Tote — https://letote.com/ Electron — https://www.electronjs.org/ Matthew Ludwigs — https://www.linkedin.com/in/mattludwigs/ SmartRent — https://smartrent.com/ Sophie Debenedetto — http://sophiedebenedetto.nyc/ FarmBot — https://farm.bot/ Membrane Framework — https://www.membraneframework.org/ Greg Mefford — https://www.linkedin.com/in/ferggo/ Omni-eye GitHub — https://github.com/GregMefford/omni_eye Bowery Farming — https://boweryfarming.com/ John Deere — https://www.deere.com Show Notes - Japanese Elixir Wizards Dojo 第2部 Connor Rigby と Todd Resudek Episode S4E13b: 概要 Elixir Wizards Dojo スペシャル番組の第二部にようこそ。ElixirConf JPとのパートナーシップによるマッシュアップです。今日のエピソードでは、NervesコアチームのメンバーであるTodd Resudek と Connor Rigby とNervesの全てについて話します。でも最初に、Toddは私たちをヘビーメタル音楽の彼の楽しみについての楽しい余談に導きます。メタルからNervesに戻って、ToddはNervesをインターネット接続のモニタリングと、特定の条件が満たされた時にルーターの自動で再起動する方法について話します。FlutterとDartを使ってGUIを構築する方法について話したあと、Toddに彼の作ったもう一つのNervesプロジェクト、スプリンクラーの未来,Drizzle 2000!についてシェアしてもらいます。そしてConnorがNervesチームにおける自ら定義した役割である、ネットワーキングライブラリの開発について探求し、もしElixirユーザーである場合にNervesを使うことがいかに簡単かについて議論します。ToddとConnorはNervesの未来の理想郷についての話題と、Nervesが提供するツールに敵うIoTソリューションが他に存在しない理由について飛び込みます。ファームボットについて話をして、雑草をやっつける機能を含む、ファームボットのモデルが持つたくさんの機能について話します。これは、農業分野でのIoT技術の重要性の高まりへの転換と、どのように次の10億ドル規模の産業になる可能性が高まってくるかについてを示しています。エピソードの締めくくりは、ゲストに自分自身とつながる方法について紹介してもらいながら、アイアンメイデン(Iron Maiden)とメタリカ(Metallica)のファーストアルバムをリスナーに紹介します。Elixir Wizards Dojoの初回への謝辞から、Nervesプロジェクトの詳細を学んでください。 このエピソードのみどころ ゲストの紹介と、このエピソードとElixirConf JPとのコネクションについて Connor と Todd によるヘビーメタル音楽の歴史とサブジャンルへの案内 ToddのNervesを使ったインターネット接続のモニタリングとルーターの再起動の Fultter というGoogleのUIツールキットを使ったNervesプロジェクトのユーザインタフェース構築 GUIアプリに焦点を当てたときのアプリ開発のベストプラクティス Drizzle 2000について聴ける! Nervesで動くToddのスプリンクラーコントローラシステム ToddとConnorのNervesコアチームにおけるそれぞれの役割 Nervesを使う利点: 一度起動すると通常のElixirアプリになる キオスク端末とは何か,どのようにキオスク端末を国際化するか Nervesとハードウェア開発の将来の探求 Nervesと他のIoTソリューションの比較: 結論としては,Nervesに敵うものはない ファームボットシステムのモデルの違いについて: 全てにNervesが使われていて、食糧を育てる Nervesを使ってビデオをエンコードしたり録画したり,ライブストリーミングしたりする方法 IoTを農業分野に統合することが次の10億ドル産業になる理由 Special Guests: Connor Rigby and Todd Resudek.

Elixir Wizards Dojo: Nerves Part 1 with Frank Hunleth and Justin Schneck

August 11, 2020 54:17 78.68 MB Downloads: 0

Welcome to the first part of our extra special Elixir Wizards Dojo. A mashup made in partnership with ElixirConf Japan, in today’s episode, we pose questions asked by the Japanese Nerves community to Nerves core team members, Frank Hunleth and Justin Schneck. After introducing our guests, we talk about which companies make use of Nerve and explore its use cases by looking at FarmBot, an open source robotic farming tool. Justin and Frank take turns explaining the differences between soft and hard real-time — a springboard to show how Nerve excels within its ‘middle-ground of complexity’, production-orientated niche. From Halloween pranks to growing Sichuan chili peppers in the office, Justin and Frank share the projects that they’ve built using Nerves and emphasize its wide applicability. We discuss how Nerves has been both officially and unofficially ported to different devices, why people send Frank random pieces of hardware in the mail, and the differences between open-source and making your work publicly available. Justin and Frank commiserate over the challenge of working with Bluetooth and the beauty of the Nerves community in pushing innovation. We chat more about Nerves, including how you can extend the functionality of file systems, before Justin and Frank unpack their roadmap for Nerves’s future. Tune in to learn more about the Nerves Project, a system that can add a great deal of agility to any development cycle. Key Points From This Episode: Introducing our guests and this episode’s focus on the Japanese Elixir community. The double-edge of broadcasting your excitement about Elixir projects. Looking at FarmBot as a practical use-case to show off what Nerve can do. Differences between soft and hard real-time using FarmBot as an example. What Nerves excels at; acting as a gateway for other processors. Justin and Frank share the projects that they’ve built using Nerves. A brief digression where Justin shares his love of Chinese Sichuan cooking. What other markets are making use of Nerves in their product cycle. The unique ‘middle-ground’ of complexity that Nerves is best suited to address. Porting Nerves to different devices and what devices need to run Nerves. Open-source versus making work public and how Justin took some of his Bluetooth work public. The challenges of working with Bluetooth. Hear how a group in the community is making a Nerves keyboard. How you can extend the functionality of a file system on Nerves. Nerves’s features that make it such an excellent tool within a production environment. When deploying with Nerves Hub, learn how to configure Wi-Fi modules with different devices. Starting with a facelift, Frank and Justin share their roadmap for Nerves’s future. How companies Vary and SmartRent have contributed to the longevity of Nerves. Links Mentioned in Today’s Episode: SmartLogic — https://smartlogic.io/ ElixirConf — https://elixirconf.com/2020 Frank Hunleth — https://www.linkedin.com/in/fhunleth/ Justin Schneck — https://www.linkedin.com/in/justinschneck Susumu Yamazaki — https://twitter.com/zacky1972 Nerves Project — https://www.nerves-project.org/ Nerves Project Open Collective — https://opencollective.com/nerves-project Nerves Project GitHub — https://github.com/nerves-project/nervespack#erlang-distribution Nerves Kiosk System GitHub — https://github.com/nerves-web-kiosk/kiosksystemrpi3 FarmBot — https://farm.bot/ Rose Point — https://www.rosepoint.com/ The Food of Sichuan — https://www.amazon.com/Food-Sichuan-Fuchsia-Dunlop/dp/1324004835 Lance Halvorsen — https://www.linkedin.com/in/lance-halvorsen-07a102/ Atom VM GitHub — https://github.com/bettio/AtomVM Lichee Pi Zero — https://licheepizero.us/ Pavlok — https://pavlok.com/ Harald GitHub — https://github.com/verypossible-labs/harald Bluetooth with Nerves Notes GitHub — https://gist.github.com/fhunleth/fae46998609814ae4a8abd44f6f08188 Fwup GitHub — https://github.com/fhunleth/fwup ‘Building a keyboard with Elixir’ — https://medium.com/swlh/building-a-keyboard-with-elixir-fc7bd3f60ec3 Vintage Net Wizard GitHub — https://github.com/nerves-networking/vintagenet_wizard Grizzly GitHub — https://github.com/smartrent/grizzly SmartRent Careers — https://smartrent.com/careers/ Very Possible Careers — https://www.verypossible.com/careers Show Notes - Japanese Elixir Wizards Dojo 第一部 Frank Hunleth と Justin Shneck Episode S4E13a: 概要 Elixir Wizards Dojo スペシャル番組の第一部にようこそ。ElixirConf JPとのパートナーシップによるマッシュアップです。今日のエピソードでは、日本のNervesコミュニティからの質問をNervesコアチームのメンバーであるFrank Hunleth と Justin Schneck に尋ねます。ゲストの2人を紹介した後、Nervesを使用する会社のことや、ファームボット(オープンソースのロボティック農業ツール)に見る使用事例を探ります。JustinとFrankが交互にソフトリアルタイムとハードリアルタイムの違いを説明し、Nervesが「複雑さの中立的立場」、生産指向のニッチという点で優れていることを示します。ハロウィンのいたずらから、オフィスで育つ四川の唐辛子栽培まで、JustinとFrankはNervesを使用して構築したプロジェクトを紹介し、その幅広い応用性を強調します。Nervesが公式・非公式にさまざまなデバイスに移植された方法についてや、なぜみんながFrankにランダムなハードウェアを郵送するのか、オープンソースと単に作品を公開することの違いについて話し合います。JustinとFrankはBluetoothの機能開発の課題に同情し、イノベーションを推進する上でのNervesコミュニティの美点について語ります。さらにNervesについて話が進み、どのようにファイルシステムの機能性を拡張するのかや、JustinとFrankがNervesの将来のロードマップについて披露します。どのような開発サイクルにも「アジャイルに」できるシステムである、Nerves プロジェクトについてより詳しく知りたいという人は、是非聴いてください。 このエピソードのみどころ ゲストの紹介と、日本のElixirコミュニティに対するこのエピソードの焦点 Elixirプロジェクトについての興奮を広める上での「両刃」 ファームボットに見るNervesが実現できる実事例 ファームボットを例にした、ソフトリアルタイムとハードリアルタイムの違い Nervesの何が優れているのか: 他のプロセッサへのゲートウェイの役割 JustinとFrankが共有する、Nervesで今まで構築してきたプロジェクトの数々 Justinが愛する四川料理についての軽い脱線 Nervesを製品サイクルに応用する他のマーケットや事例 Nervesが扱うのに手ごろな複雑さの独特の「中間基盤」 Nervesの異なるデバイスへの移植とNervesを実行させるのにどんなデバイスが必要 オープンソースと作品を公開することの違いと、どのようにJustinがBluetoothでの仕事の一部を公開したか Bluetoothの開発作業のチャレンジ コミュニティのグループがどのようにNervesキーボードを作っているか どのようにNervesのファイルシステムの機能性を拡張するか 本番環境で優れたツールとなる上でのNervesの機能 Special Guests: Frank Hunleth and Justin Schneck.

Greg Mefford on Nerves, Poncho vs Umbrella Apps, and Pre-Code Planning

August 06, 2020 41:43 60.61 MB Downloads: 0

In today’s episode, we chat about system architecture, Ruby, Elixir, and everything in between with Greg Mefford, the senior back-end engineer for the Bleacher Report. We open the conversation by asking Greg about his start in coding, leading to a story about how Greg was that bored kid pressuring a math teacher to teach him QBasic. He shares how he fell in love with Ruby before discovering Elixir and Nerves. Having faced some challenges when learning Nerves, Greg talks about how he began documenting his pain points and writing documents to help onboard newcomers. We discuss Greg’s work with Nerves, his project aspirations, and his recommended resources for anyone looking to get into Nerves or Elixir. After providing his hot take on the latest Code BEAM V conference, we ask Greg what system architecture means to him. From there we get super meta about the meaning of architecture and what it means to translate design into practice. We touch on the struggle of understanding domain-driven design and Greg’s approach to pre-code planning before delving into how the Bleacher Report is set up. As Greg goes into details, you’ll hear why their servers now run on Elixir and not Ruby. Near the end of the episode, we talk about Poncho versus Umbrella apps, and Greg shares his passion for multi-user dungeons (MUDs). Tune in to learn more about Greg and his role in the Elixir and Nerves landscape. Key Points From This Episode: Greg’s start in coding and his transition from electronics design into IT. Why Greg loves Ruby and how he discovered the magic of Elixir. Greg’s contribution to the Elixir and Nerves community by helping onboard newcomers. What Greg’s job as a senior engineer for Bleacher Report looks like. Greg recommends resources for beginners getting into Nerves and Elixir. Creating a kid’s game using Nerves and Greg’s Blinkchain library. Greg’s take on the Code BEAM V conference and hating on the Whova app. What architecture means to Greg. This one gets deep. How translating designs into software has changed over the years. Why Greg struggles with the idea of domain-driven design. The state of Extreme Programming practices and how they synergize together. How Greg views pre-code planning; something that’s become his specialty within his latest job. The many elements that contribute to how the Bleacher Report’s IT is set up. Ruby servers versus Elixir servers and why the Bleacher Report uses Elixir. Why the Poncho system was designed to fix Nerves issues not covered by Umbrella apps. Greg’s history creating multi-user dungeons (MUDs) and playing DragonRealm. Links Mentioned in Today’s Episode: Greg Mefford LinkedIn — https://www.linkedin.com/in/ferggo/ SmartLogic — https://smartlogic.io/ SmartLogic Jobs — https://apply.workable.com/smartlogic/ ElixirConf — https://elixirconf.com/2020 Blinkchain GitHub — https://github.com/GregMefford/blinkchain Justin Schneck GitHub — https://github.com/mobileoverlord Le Tote — https://www.letote.com/ James Smith — https://twitter.com/st23am Garth Hitchens, ElixirCof 2015 — https://www.youtube.com/watch?v=kpzQrFC55q4 Nerves Project — https://www.nerves-project.org/documentation Bleacher Report — https://bleacherreport.com/ Programming Elixir — https://www.amazon.com/Programming-Elixir-1-6-Functional-Concurrent/dp/1680502999 Elixir in Action — https://www.amazon.com/Elixir-Action-Sa%C5%A1a-Juri-cacute/dp/1617295027 Chris Keathley — https://codesync.global/speaker/chris-keathley/ Code BEAM V Conference — https://codesync.global/conferences/code-beam-sto/ Whova App — https://whova.com/ Amos King — https://twitter.com/adkron?lang=en Christopher Keele — https://github.com/christhekeele Steve Bussey Episode — https://smartlogic.io/podcast/elixir-wizards/s4e3-bussey/ Mark Windholtz — https://github.com/mwindholtz Extreme Programming — http://www.extremeprogramming.org/ Adopting Elixir: From Concept to Production — https://www.amazon.com/Adopting-Elixir-Production-Ben-Marx/dp/1680502522 Live Elixir Wizards - Betweenisode — https://www.youtube.com/watch?v=kEwxhGYEGts Twirp GitHub — https://github.com/twitchtv/twirp Frank Hunleth — https://github.com/fhunleth Elixir Supervisor Behavior — https://hexdocs.pm/elixir/Supervisor.html Elixir Poncho Projects — https://embedded-elixir.com/post/2017-05-19-poncho-projects/ Titans of Text — https://www.titansoftext.com/ Miriani — https://www.toastsoft.net/ DragonRealms — https://www.play.net/dr/ Justus Eapen Twitter — https://twitter.com/justuseapen Eric Oestrich — https://twitter.com/EricOestrich Special Guest: Greg Mefford.

Johanna Larsson on Hex Diff, Domain Driven Design, Umbrella apps, and more

July 27, 2020 49:14 35.46 MB Downloads: 0

Johanna Larsson is a community-minded software engineer whose project, Hex Diff, generates highlighted git diffs, right in your browser. In this episode, we talk to Johanna about how Hex Diff can benefit Elixir users, the differences between code architecture and code design, and the debatably under-appreciated role of Elixir umbrella apps. We start the conversation by chatting with Johanna about her recent move to London and her work for Duffel; a startup helping travel agencies book trips. After talking about how she got into software development, we dive into Hex Diff versus GitHub, with Joanna detailing how Hex Diff offers greater security for your code. We ask Johanna about the origins of the Hex Diff project and she explores its aims and her experiences working on the project. In line with this month’s theme, we discuss what architecture means to Joanna and the need for domain-driven design. We quiz Joanna on her approaches to problem-solving and she explains how her coding process emphasizes building an early prototype and constantly iterating on it. Despite hearing that umbrella apps are bad news, Joanna makes a case for their value while acknowledging how that they need greater tooling. We round off our conversation by asking Joanna how she tries to grow her skillset and what her favorite Elixir resource is. Following our discussion with Johanna, we open with another edition of Pattern Matching with Todd. This week, friend of the podcast Todd Resudek asks five questions of Elixir community member Bruce Williams. They talk about Bruce’s work as an Arabic cryptologic linguist for the US Airforce, his software career, and the therapeutic uses of playing Animal Crossing during a pandemic. Key Points From This Episode: We introduce Johanna Larsson and she shares how she is doing in London. How Johanna developed a love for software and how Elixir brought her to London. Details about Johanna’s job at Duffel; a startup that helps travel companies book trips. How Hex Diff is solving problems that arise when using code from GitHub. Johanna’s experience working on Hex Diff and the problems that they aim to solve. Hex Diff’s caching system and what Hex Diff does to counter malicious software uploads. The disconnect between system architecture and implementation. Johanna’s view on the differences between code design and code architecture. Why domain-driven design increases usefulness to the end-user. How Johanna approaches a problem and her steps when building code. Hear what key lesson Johanna learned from her latest big project. Johanna’s experience with umbrella apps and why they need tooling functions. How working in a strong team can motivate you and help grow your skill set. Why the Elixir Slack group is Johanna’s favorite tool. Why you should check out Hex Diff; it’s a great introduction to Elixir. This edition of Pattern Matching with Todd; Todd Resudek interviews Bruce Williams. Links Mentioned in Today’s Episode: Johanna Larsson — https://blog.jola.dev/ Johanna Larsson LinkedIn — https://www.linkedin.com/in/joladev/ Johanna Larsson Twitter — https://twitter.com/joladev SmartLogic — https://smartlogic.io/ ElixirConf — https://elixirconf.com/2020 SharePoint — https://www.microsoft.com/en-us/microsoft-365/sharepoint/collaboration Duffel — https://duffel.com/ Stripe — https://stripe.com/ Hex Diff — https://diff.hex.pm/ Hex Diff GitHub — https://github.com/hexpm/diff Maciej Mensfeld — https://mensfeld.pl/ Diffend — https://my.diffend.io/ Wojtek Mach — https://twitter.com/wojtekmach Eric Meadows-Jönsson — https://twitter.com/emjii Todd Resudek — https://twitter.com/sprsmpl Announcing Hex Diff — https://hex.pm/blog/announcing-hex-diff Hex Core GitHub — https://github.com/hexpm/hexcore Hex Diff Phoenix — https://diff.hex.pm/diff/phoenix/1.5.2..1.5.3 The Design of Everyday Things — https://www.amazon.com/Design-Everyday-Things-Revised-Expanded/dp/0465050654 Brooklyn Zelenka LinkedIn— https://www.linkedin.com/in/brooklynzelenka/ Unified Modeling Language — https://en.wikipedia.org/wiki/UnifiedModeling_Language Elixir v. 1.10.4 Mix CMD — https://hexdocs.pm/mix/Mix.Tasks.Cmd.html Elixir v1.11 Forum Post — https://elixirforum.com/t/elixir-v1-11-will-be-released-in-october-2020/31535 Rustler GitHub — https://github.com/rusterlium/rustler Live View —https://blog.codepen.io/documentation/live-view/ Bruce Williams — https://www.linkedin.com/in/wbruce/ Absinthe — https://absinthe-graphql.org/ Untitled Goose Game — https://goose.game/ Stardew Valley — https://www.stardewvalley.net/ Myst — https://cyan.com/games/myst/ Blanco White — https://www.blancowhite.info/ Groundhog Day — https://www.imdb.com/title/tt0107048/ Animal Crossing — https://www.animal-crossing.com/ Special Guest: Johanna Larsson.

Lau Taarnskov on the Trouble with Time Zones

July 23, 2020 37:32 27.03 MB Downloads: 0

Handling date and time is a challenge in any language, but Lau Taarnskov is determined to solve that problem in Elixir. Lau is today’s guest on Elixir Wizards, and this episode is all about his contributions to Elixir. Lau has been involved with web development and e-commerce for decades. He started contributing to Elixir open source in 2014 and created the Calendar and tzdata libraries. Calendar is a datetime library for Elixir, that provides explicit types for datetimes, dates, and times, and full time zone support is provided via its sister package, tzdata. When it comes to the subject of date, time, and time zones, besides talking about it and writing software for it, Lau also writes about it on his blog, Creative Deletion. This episode explores how Lau got started in programming, and what led him to creating Calendar and tzdata. Lau shares the resources that he found helpful when he started using Elixir, and why he was drawn to Elixir in the first place. We hear Lau’s opinions on time zones and daylight savings and whether or not they’re necessary, and he shares some advice for anyone working with time in Elixir. Then it’s time for another edition of Pattern Matching with Todd, in which Todd Resudek asks Brooklyn Zekanka five questions to help us get to know her better. Brooklyn talks about everything from she has lived, what jobs she did before becoming a programmer, and her education in classical music, to her favorite bands, movies, and TV shows, as well as some of the projects she is working on. For all this, and more, don’t miss today’s episode! Key Points From This Episode: Lau explains what TLAs are and why they aren’t always helpful for explicit communication. Lau introduces himself and shares how he got into programming and computer science. The resources Lau found most useful when he started using Elixir, including books he read. What it means that Elixir’s source code is written in Elixir, and why that was helpful for Lau. Lu talks about Calendar, a datetime library that Lau created for Elixir, and Tzdata, a parser and library he created for the tz database, and why he created them. How Lau deconstructed the time zone problems and how his ideas have changed over time. Lau’s opinions on time zones and daylight savings and whether or not they’re necessary. Advice from Lau for anyone working with time in Elixir. Another edition of Pattern Matching with Todd – today’s guest is Brooklyn Zelenka. Where Brooklyn was born, where she has lived, and the jobs she did before programming. Brooklyn talks about her musical background and how it’s similar to programming. Brooklyn shares a pro tip about slides and reflects on her highlights as a speaker. What Brooklyn would be doing if she weren’t a programmer and the genre of music she likes. Brooklyn’s favorite TV shows and movies, including Amadeus and Mad Men. Brooklyn shares what she’s working on currently and the next project she’s excited about. Links Mentioned in Today’s Episode: Lau Taarnskov on Twitter – https://twitter.com/laut Creative Deletion Blog – http://www.creativedeletion.com/ Lau Taarnskov on GitHub – https://github.com/lau Calendar on GitHub – https://github.com/lau/calendar Tzdata on GitHub – https://github.com/lau/tzdata Elixir in Action – https://www.amazon.com/Elixir-Action Programming Elixir – https://www.amazon.com/Programming-Elixir-1-6-Functional-Concurrent/ Brooklyn Zelenka on LinkedIn – https://www.linkedin.com/in/brooklynzelenka/ Brooklyn Zelenka on Twitter – https://twitter.com/expede Brooklyn Zelenka on GitHub – https://github.com/expede FISSIONcodes Website – https://fission.codes/ SmartLogic — https://smartlogic.io/ Amadeus — https://www.rottentomatoes.com/m/amadeus Mad Men — https://www.rottentomatoes.com/tv/mad-men Special Guest: Lau Taarnskov.

Council of Wizards Part 2 with Chris Bell, Desmond Bowe, Emily Maxie, Dan Lindeman, and Alan Voss

July 16, 2020 55:09 80.01 MB Downloads: 0

For part 2 of our Council of Wizards panel discussion, we are joined by Chris Bell, Desmond Bowe, Emily Maxie, Dan Lindeman, and Alan Voss! Chris and Desmond run the ElixirTalk Podcast and we get in-depth on the intersection of the language and talking about it. They share the lessons they have learned in the podcasting space, making some pit stops to chat about aliens, Elixir beef, and marble flooring! We discuss the community during the pandemic and what the Elixir world might look like for the next year or two. Emily and Dan then step in to give us all the information about Very and their very functional remote work model. They talk us through the full departure that the company made from a physical hub and both share what they love and hate about working from home, before and during the COVID crisis. Dan and Emily talk about onboarding and team spirit in remote teams and the strategies that have best served Very in this regard. Lastly, we have a bonus section with Alan Voss, to discuss his game night competitions and more. He unpacks the games he has already hosted and some of the candidates for future events before we hear about his experiences in the pandemic, specifically as an extrovert and a father. For all of this make sure to join us on the show! Key Points From This Episode: The exciting possibility of starting beef in the Elixir community! Books and podcasts we have been reading and listening to. Marble flooring, glass blowing, aliens, conspiracy theories, and impersonations! Tips, tricks, and lessons for the podcast space from Chris and Desmond. Thoughts on the future of the Elixir community during and after the pandemic. The array of projects that keep Chris and Desmond busy; startups, meetups, conferences! Very's fully remote-work setup and the decision to move away from a physical office. Challenges and lessons in the work-from-home model; making do with less in-person interaction. Positive sides to a home workspace; making a mess and closing the door. Employee socialization and familiarization at a remote company. The applicability of Elixir across different projects and libraries. The infinite amount of puns that are available when talking about Very! Programming Connect Four and the future of bot competitions according to Alan. Strategy snobs and taking this to its logical conclusion with chess and Go. The effect that the pandemic has had on extroverts and the adjustments that Alan has made. The possibility of ElixirConf this year and the forms it could take. Work that has gone into Alan's game-night side project over the last months. The growth of Postmates and their current need for new employees! Links Mentioned in Today’s Episode: SmartLogic — https://smartlogic.io/ Elixir Ecosystem Survey — https://elixirsurvey.typeform.com/to/yYmJv1 ElixirConf — https://elixirconf.com/2020 Github Repo for Transcript Corrections — https://github.com/smartlogic/smartlogic.io/tree/master/podcast/elixir-wizards/transcripts Chris Bell — https://cjbell.co/ Chris Bell on Twitter — https://twitter.com/cjbell Desmond Bowe on Twitter — https://twitter.com/desmondmonster ElixirTalk — http://elixirtalk.com/ Emily Maxie on Twitter — https://twitter.com/emilymaxie Dan Lindeman on Twitter— https://twitter.com/lindemda Very — http://verypossible.com/ Chris McCord — http://chrismccord.com/ Alan Voss — http://www.alanvoss.org/ Alan Voss on Twitter — https://twitter.com/alanvoss Lonestar Elixir— https://lonestarelixir.com/ MPex — https://mpex.com/ Payitoff — https://www.payitoff.io/ Meetup — https://www.meetup.com/ OpenAI — https://openai.com/ Risk — https://www.amazon.com/Hasbro-B7404-Risk-Game/dp/B01ALHAIWG Strange Loop — https://www.thestrangeloop.com/ Postmates — https://postmates.com/ Special Guests: Alan Voss, Chris Bell, Dan Lindeman, Desmond Bowe, and Emily Maxie.

Council of Wizards Part 1 with Andrea Leopardi and René Föhring

July 14, 2020 39:28 57.42 MB Downloads: 0

The Elixir community continues to flourish and evolve in these uncertain times and in honor of this we have put together a live show with a number of special guests! In part one today, we are joined by Andrea Leopardi and René Föhring, who we are so happy to welcome back. We get the lowdown from each of them in turn, discussing personal preferences, tips and tricks, and recommendations for Elixir and beyond. Andrea gets into some of his pet peeves and comments on the trend of slow interfaces. We then look at future possibilities for Elixir including the outside chance of it being run on mobile and for crypto-mining! Andrea also updates us on the book he is currently working on so keep an eye out for that in the future! René then steps in to talk about his work on Credo, his hopes for it in the future, and some suggestions for listeners using it. We do some comparisons between Elixir and Ruby before René offers some thoughts on Electron and functional programming concepts. So for all this and a whole lot more, make sure to tune in today and stay tuned for part 2! Key Points From This Episode: A reintroduction to Andrea and his current work in the Elixir space. Andrea's tool recommendations and what he uses most at the moment. Updates, the short term future of the world of Elixir and Andrea's current focus. RSpec versus xUnit: Andrea's personal preferences. Andrea's limited experience of LiveView and early reactions. Feelings about computers and phones with slow interfaces! The very slim chances of seeing Elixir run on mobile. Cryptocurrency and Andrea's lack of experience and ambition in the space. Some exciting information about Andrea's upcoming book to keep an eye out for. René's current projects; Credo, Elixir weekly newsletter, and more! The future of Elixir — will it be the next Ruby? Elixir on a phone; René's thoughts on this possibility and its validity. Updates for Credo — all the exciting news since our last conversation with René. Improving work that you are proud of and René's own feelings about Credo. The objectives and vision for Credo and improving upon certain pain points. Writing and running in Electron and how to have fun while doing it! The application of functional programming concepts in René's work in Electron. René's suggestion for Credo — using the Credo master after it being reworked. Links Mentioned in Today’s Episode: SmartLogic — https://smartlogic.io/ Elixir Ecosystem Survey — https://elixirsurvey.typeform.com/to/yYmJv1 ElixirConf — https://elixirconf.com/2020 Github Repo for Transcripts Corrections - https://github.com/smartlogic/smartlogic.io/tree/master/podcast/elixir-wizards/transcripts Andrea Leopardi — https://andrealeopardi.com/ Andrew Leopardi on Twitter — https://twitter.com/whatyouhide Rene Föhring — http://rrrene.org/ Rene Föhring on Twitter — https://twitter.com/rrrene Alfred — https://www.alfredapp.com/ Tesla — https://www.tesla.com/ TempleOS — https://templeos.org/ Elon Musk — https://www.forbes.com/profile/elon-musk/ Mint — https://www.mint.com/ Finch — https://finch.io/ Ruby — https://www.ruby-lang.org/en/ Electron — https://www.electronjs.org/ Special Guests: Andrea Leopardi and René Föhring.

Chris McCord with a Deep Dive on Phoenix

July 09, 2020 43:42 31.47 MB Downloads: 0

Although it’s taken him four seasons to make an appearance, we are so glad to finally welcome Chris McCord, creator of the Phoenix framework, onto the show. While this season’s focus is on system and application architecture, today’s discussion deviates to focus on Phoenix. We get started by hearing more about Chris’s programming journey, all the way from TI-Basic to where he is now. After this, we dive into LiveView, the project Chris is currently focusing most of his energy on. We get into some of the incredible changes that have been made including live navigation, deep change tracking optimizations, and static asset tracking. Chris shares which of the changes he is most excited about, along with why he enjoys seeing LiveView being misused. We then look at some of the critiques of LiveView and Phoenix generally. Chris offers counter-arguments to the most common criticisms of the framework. He shares how the title of 'framework' can be a double-edged sword, as well as why he is hesitant to extract channels prematurely. We wrap the show up with a look into the future, hearing more about what’s on the horizon for Phoenix and where Chris hopes the Elixir community is headed. This conversation was well worth the four season-long wait, so be sure to tune in today! Key Points From This Episode: Why it took Chris four whole seasons to finally make an appearance on the show. Chris’s programming journey from T-Basic all the way to Java, HTML, and PHP. How a broken back landed Chris his first paid programming job. Learn more about Chris’s current project, LiveView, and some of the recent additions. Why the optimizations were the most interesting changes for Chris to make on LiveView. Some of the most interesting use cases Chris has seen of LiveView. How Chris plans to navigate laying LiveView out on a larger codebase. Chris’s take on stateful applications and why the platform is so important. The origins of the hilariously termed ‘dead view.’ Some of the most pertinent critiques of LiveView and Phoenix generally. Chris busts some of the invalid critiques of Phoenix. Why the community feedback on LiveWire has been so surprising to Chris. Phoenix 1.6 changes and when we can expect its release. Chris’s take on whether Elixir is likely to overthrow Rails in terms of popularity. The systemic blockers that create adoption friction of Elixir and Phoenix. Looking into the future — Chris’s goals for Phoenix and his hopes for the Elixir community. Links Mentioned in Today’s Episode: Chris McCord — http://chrismccord.com/ Chris McCord on Twitter — https://twitter.com/chrismccord DockYard — https://dockyard.com/ Dave’s Site — https://www.davesite.com/ Hacking with PHP — http://www.hackingwithphp.com/ Phoenix LiveView — https://hexdocs.pm/phoenixliveview/Phoenix.LiveView.html Phoenix Phrenzy — https://groundstation.gigalixirapp.com/ Dashbit: An Upcoming Authentication Solution for Phoenix — https://dashbit.co/blog/a-new-authentication-solution-for-phoenix Aaron Renner on GitHub — https://github.com/aaronrenner/phxgenauth Phoenix Issues on GitHub — https://github.com/phoenixframework/phoenix/issuesq=is%3Aopen+is%3Aissue+milestone%3Av2.0 Phoenix Fire Nest — https://github.com/phoenixframework/firenest Phoenix Pub/Sub — https://github.com/phoenixframework/phoenixpubsub ElixirConf 2020— https://2020.elixirconf.com/ ElixirConf 2020 Speaker Proposals — https://2020.elixirconf.com/#cfp TI-83 Calculator — https://www.amazon.com/Texas-Instruments-TI-83-Graphing-Calculator/dp/B00001N2QU Teach Yourself C in 21 Days — https://www.amazon.com/Teach-Yourself-21-Days-Sams/dp/0672310694 Rest Fest — https://www.restfest.org/ José Valim on Twitter — https://twitter.com/josevalim Jason Goldberger on LinkedIn — https://www.linkedin.com/in/jason-goldberger-84237392/ SmartLogic — https://smartlogic.io/ SmartLogic Jobs — https://smartlogic.workable.com/ Special Guest: Chris McCord.

Amos King on MUDs, Architecture, Domain-driven design, and Military Bases

July 02, 2020 55:23 80.34 MB Downloads: 0

Today’s guest is Amos King, Principal CEO at Binary Noggin, and host on the Elixir Outlaws and This Agile Life podcasts. This episode is centered around a casual conversation about everything from programming, the military, sarcasm, and puns to systems and application architecture, domain-driven design, and bitmasks. Amos shares with us how he got into programming, after wanting to be a doctor or an engineer first, and tells us how he met Famous Amos. We talk about spectrum analyzers, Elixir resources, and MUDs, as well as type-first design and Haskell. Amos gives us his takes on domain-driven design, API, booleans, and enums, and even roasts his co-host Chris Keithley a little. Don’t miss this episode for everything you’ve ever wanted to know about the legendary Amos King (and a whole lot more)! Key Points From This Episode: * Amos explains what Adkron means, which is his gaming and social media handle. * Where the name Elixir Outlaws for the podcast came from. * How Amos got into programming as a career, after wanting to be a surgeon and an engineer. * What Amos’s first opportunity as a programmer was, and how he met Wally Amos. * Amos explains what a spectrum analyzer is, based on his experience in the military. * Amos shares why Steve Bussey’s book, Real-Time Phoenix, is his favorite Elixir resource. * Eric and Amos talk about the MUD engine that they worked on together. * What systems and application architecture means to Amos and how it differs from design. * What type-first design (TFD) is and Amos’s opinion on it as a thought exercise. * Amos talks about Haskell programming and domain-driven design. * Relating domain-driven design to a car dealership to describe types and terminology. * Amos talks a bit about his company and what they do. * Justus, Eric, and Amos debate the term “architect” and what it actually means. * Amos shares his take on API architecture, booleans, enums, and bitmasks. * Amos gives his hot take on his co-host Chris Keithley. Links Mentioned in Today’s Episode: Amos King on Twitter — https://twitter.com/adkron Elixir Outlaws Podcast — https://elixiroutlaws.com/ Wally Amos — https://en.wikipedia.org/wiki/WallyAmos Windows 3.0 — https://en.wikipedia.org/wiki/Windows3.0 Real-Time Phoenix on Pragmatic Bookshelf — https://pragprog.com/book/sbsockets/real-time-phoenix Elixir School — https://elixirschool.com/en/ Elixir Inaction — https://twitter.com/gausby/status/986550202248187904 This Agile Life Podcast — https://www.thisagilelife.com/ Screen — https://screen.so/#/home Haskell Book — https://haskellbook.com/ Binary Noggin Website — https://binarynoggin.com/ Binary Noggin on Twitter — https://twitter.com/BinaryNoggin SmartLogic — https://smartlogic.io/ Justus Eapen on Twitter — https://twitter.com/justuseapen Eric Oestrich — https://oestrich.org/ Kalevala — https://github.com/oestrich/kalevala Eric Oestrich on Twitter — https://twitter.com/ericoestrich Eric Oestrich on GitHub — https://github.com/oestrich Special Guest: Amos King.

Sundi Myint on The Visual Side of Elixir, the History of Emojis, and Test- and Domain-Driven Architecture

June 25, 2020 45:58 66.79 MB Downloads: 0

Welcome to another episode of Elixir Wizards as we continue our journey into system and application architecture! Our featured guest today is Sundi Myint and she is here to share her journey with Elixir and her non-traditional path to programming. We hear about Sundi's interest in gaming, her role at Cava and a bit of the inspiration behind her amazing Instagram account! We discuss her first internship and how she found herself in the role quite suddenly before diving into the motivation behind her blog post on the history of emojis. Sundi did some serious research into this interesting subject and she shares some of the more technical aspects of the story with us on the show. We talk about architecture and both test and design-driven approaches. Sundi also explains her process and how mapping things out on a whiteboard has been her favored way to do things for some time. Andrea Leopardi then joins us for another edition of Pattern Matching with Todd! He answers Todd's questions about his home life, media favorites, future projects and more! Key Points From This Episode: Sundi's Instagram aesthetic and her love of food and photography. How Sundi got into programming and her first internship. Getting hired at Cava and an introduction to Elixir and the community. Video game programming and Sundi's thoughts on the possibility of pursuing this path. Sundi's first paid job out of college and the tech stack at the company. Thoughts on easily available learning resources and the power of Live View. Some background on Sundi's amazing blog post on the history of emojis. Understanding Unicode, how it works and its role in translation and interpretation. Sundi's perspectives on architecture and domain-driven design. Code design strategies, workflow and the idea and practice of test-driven code. Conversations with stakeholders and moving to the planning stage. How Sundi uses whiteboards to map out her work graphically and Elixir's part in this. Andrea's travels and some of the amazing locations he has visited for conferences. Home life and lifestyle in quarantine for Andrea in Italy. Alternative career paths and Andrea's other interests; balancing creativity and logic. Music, movies and television choices for Andrea. Exciting new projects on the horizon for Andrea; a book, HTTP and more! Links Mentioned in Today’s Episode: SmartLogic — https://smartlogic.io/ Sundi Myint on Twitter — https://twitter.com/sundikhin Sundi Myint on Instagram — https://www.instagram.com/sundikhin Cava — https://cava.com/ Hackers & Painters — https://www.amazon.com/Hackers-Painters-Big-Ideas-Computer/dp/1449389554 Lonestar Elixir — https://lonestarelixir.com/ Bruce Tate — https://codesync.global/speaker/bruce-tate/ EA — https://www.ea.com Groxio Learning — https://grox.io/training/elixir/home Live View — https://support.google.com/maps/thread/11554255?hl=en Build a real-time Twitter clone in 15 minutes with LiveView and Phoenix 1.5 — https://www.youtube.com/watch?v=MZvmYaFkNJI The History of Emojis Blog Post — https://engineering.upside.com/emojis-a-history-75d595bbe4a5?gi=6cd53698e5d Burgergate https://www.theverge.com/2017/10/30/16569346/burgergate-emoji-google-apple Joy of Coding — https://joyofcoding.org/ Test-driven development — https://en.wikipedia.org/wiki/Test-drivendevelopment Mox — https://hexdocs.pm/mox/Mox.html Venmo — https://venmo.com/ Mint — https://www.mint.com/ Avengers — https://www.marvel.com/movies/avengers-endgame DC Elixir — https://www.meetup.com/DC-Elixir/ Todd Resudek — https://medium.com/@toddresudek Andrea Leopardi — https://andrealeopardi.com/ Brooklyn Zelenka — https://medium.com/@expede The Lord of Rings — https://www.rottentomatoes.com/franchise/lordoftherings Wes Anderson — https://www.imdb.com/name/nm0027572/ Scott Pilgrim vs. The World — https://www.rottentomatoes.com/m/scottpilgrimsvstheworld Community — https://www.rottentomatoes.com/tv/community The Office — https://www.rottentomatoes.com/tv/theoffice Rick and Morty — https://www.rottentomatoes.com/tv/rickand_morty Justus Eapen on Twitter — https://twitter.com/justuseapen Eric Oestrich on Twitter — https://twitter.com/ericoestrich Special Guests: Andrea Leopardi and Sundi Myint.

Dave Thomas on Learning How Things Work

June 18, 2020 1:09:43 100.99 MB Downloads: 0

Dave Thomas is recognized internationally as an expert who develops high-quality software–accurate and highly flexible systems. He helped write the now-famous Agile Manifesto, and regularly gives inspiring and controversial speeches on new ways of producing software. He is the author of six books, including the best selling The Pragmatic Programmer: From Journeyman to Master and Programming Ruby: A Pragmatic Programmer's Guide. In this episode, we discuss everything from learning computer science in an academic setting, test-driven development, and state to architecture, libraries, and what Dave loves about what he does. Dave talks about his students, both those who are passionate and those who are just going through the motions, as well as his own experience of being a student. He explains to us what he means when he said he doesn’t write unit tests at an Elixir conference in Austin recently, we talk about his favorite and most rewarding books, and Dave gives us a really unique answer to our architecture question. We discuss domain-driven design, microservice architectures, and Elixir libraries, and Dave shares why is so passionate about what he does. Tune in to hear some of Dave’s strong opinions on programming! Key Points From This Episode: The Coding Gnome and how it bridges the gap between learned and practical experience. Dave talks about being a lecturer at SMU and why students aren’t prepared for the real world. Why Dave stopped teaching Elixir at SMU. Students who study computer science for passion versus those who study it to get a job. Dave talks about his experience of studying computer science at university. The inspiring and controversial keynote addresses Dave has given at conferences. What it means when Dave said he doesn’t write unit tests and the projects he’s working on. The culture around test-driven development and writing tests when Dave was at university. Dave tells a story about writing the incoming telex switch for the UK. Why the first edition of Programming Ruby was Dave’s favorite book to write. Why The Pragmatic Programmer is the book Dave is most proud of. Dave isn’t currently writing a new book, so he can concentrate on pseudo-course material. Dave explains the process of developing a narrative arc when writing a technical book. What the state of a system is and how it is distinct from data. Dave describes why he believes architecture is a misunderstood and borrowed metaphor. Dave’s opinions on buzzwords like domain-driven design and microservice architectures. The status on The Component Library, as mentioned by Dave in his EMPEX 2018 keynote. Getting involved with publishing Elixir libraries and what his process looks like. How Dave likes to receive product specification when dealing with clients. What Dave loves about the programming industry. Why Dave doesn’t write Elixir anymore and why he became frustrated with it. Where Dave is going from here to how best to express what he wants. Final advice from Dave, not to abandon Elixir if it makes you happy. Links Mentioned in Today’s Episode: Dave Thomas on Twitter – https://twitter.com/pragdave The Coding Gnome – https://pragdave.me/ The Coding Gnome Training — https://codestool.coding-gnome.com/ Agile Manifesto – https://agilemanifesto.org/ The Pragmatic Programmer – https://pragprog.com/book/tpp20/the-pragmatic-programmer-20th-anniversary-edition Programming Ruby – https://en.wikipedia.org/wiki/ProgrammingRuby Robert Kowalski on Wikipedia — https://en.wikipedia.org/wiki/RobertKowalski Dave Thomas on Wikipedia — https://en.wikipedia.org/wiki/DaveThomas(programmer) Space-state representation — https://en.wikipedia.org/wiki/State-spacerepresentation Christopher Alexander — https://en.wikipedia.org/wiki/ChristopherAlexander A Pattern Language — https://en.wikipedia.org/wiki/APatternLanguage Dave Thomas Keynote at Empex NYC 2018 — https://www.youtube.com/watch?v=6U7cLUygMeI SmartLogic — https://smartlogic.io/ Justus Eapen on Twitter — https://twitter.com/justuseapen Eric Oestrich on Twitter — https://twitter.com/ericoestrich Special Guest: Dave Thomas.

Ben Marx on the Launch and Architecture of SubSpace

June 11, 2020 38:27 55.96 MB Downloads: 0

Joining us on the show for this episode is Ben Marx, author of Adopting Elixir and Principal Control Plane Engineer at the recently launched SubSpace! We continue our Season 4 journey into system and application architecture with Ben and he unpacks what he can about the somewhat still under wraps work at the new company. Ben is all about plain-spoken and easy to understand conversations on these topics, preferring to avoid highfalutin and confusing terms with multiple interpretations. He really drills down on his understanding of the fundamentals of his work and we also get to hear about his previous position at Bleacher Report. He unpacks the lessons he took away from the company, and the changes he witnessed while there. Ben explains how Elixir fits into the work at SubSpace and what a perfect fit it is for their low-latency service. We also spend a bit of time talking about life as an introverted programmer, attending conferences and meeting people, and remote work and family life during the pandemic. For all this and then some, tune in today! Key Points From This Episode: * Ben's exciting new position at SubSpace, and how the company reduces latency. * The increasing need for more reliable internet speeds during the pandemic. * Use of Elixir for SubSpace and how well it fits the needs of the company. * The engineering team at SubSpace and some of the basic system architecture. * Meeting people, giving talks and life at conferences as an introvert. * The meaning of architecture to Ben; more dynamic than static. * Differentiating between architecture and design; the abstract and reality. * The idea of domain-driven design what the concept means to Ben. * Placement of the authentication and authorization systems. * Ben's time working at Bleacher Report and the development of the company during his time there. * Thoughts on Kafka and its baffling name! * Ben's new role at SubSpace and major areas of learning for him so far. * Adapting to a new role during the work from home era; life under quarantine. * Project management and helpful processes for remote work in a new world. * Ideas for another book from Ben, his belief in Elixir and getting in contact! Links Mentioned in Today’s Episode: SmartLogic — https://smartlogic.io/ Ben Marx — https://bgmarx.com/ SubSpace — https://www.subspace.com/ Ben Marx on Twitter — https://twitter.com/bgmarx Adopting Elixir — https://www.amazon.com/Adopting-Elixir-Production-Ben-Marx/dp/1680502522 Bleacher Report — https://bleacherreport.com/ Subspace article at the Wall Street Journal — https://www.wsj.com/articles/subspace-launches-publicly-offering-fast-internet-for-gaming-companies-11584961201 Subspace article at VentureBeat — https://venturebeat.com/2020/04/03/the-deanbeat-subspace-emerges-from-stealth-with-26-million-to-fix-internet-bottlenecks-for-games-and-entertainment/ Kafka — https://kafka.apache.org/coding-guide Franz Kafka — https://www.biography.com/writer/franz-kafka Max Brod — https://www.britannica.com/biography/Max-Brod Sophie DeBenedetto — http://sophiedebenedetto.nyc/ Justus Eapen on Twitter — https://twitter.com/justuseapen Eric Oestrich — https://oestrich.org/ Eric Oestrich on Twitter — https://twitter.com/ericoestrich Eric Oestrich on GitHub — https://github.com/oestrich Special Guest: Ben Marx.

Pattern Matching - Johanna Larsson

June 09, 2020 14:46 21.3 MB Downloads: 0

A special episode of Elixir Wizards highlighting Pattern Matching with Todd - a short format interview where our friend, Todd Resudek, asks different guests the same five questions. This week Todd spoke with Johanna Larsson. Johanna is active on the Elixir scene and is currently working as a Software Engineer at Duffel. Key Points From This Episode: * Living in Malmo, Sweden. * Johanna's love of languages. * The complexities of written Japanese. * How Johanna uses music to set the soundtrack to her work. * Todd missing the boat on a cinematic and cultural masterpiece. * Integrating and improving upon the hex diff project. Links Mentioned in Today’s Episode: Johanna Larsson on GitHub - https://github.com/joladev Johanna Larsson on Twitter - https://twitter.com/joladev Todd Resudek on Twitter — https://twitter.com/sprsmpl SmartLogic — https://smartlogic.io/ Special Guest: Johanna Larsson.