OwlTail

Cover image of Saša Jurić

Saša Jurić

12 Podcast Episodes

Latest 28 Jan 2023 | Updated Daily

Episode artwork

Elixir in 2021 with Saša Jurić

Functional Futures

What's the future of Elixir? Listen to the discussion between Saša Jurić, the author of Elixir in Action, and Serokell CAO Jonn Mostovoy to learn their thoughts on Elixir and frameworks like Nx and Nerves. This is an audio version of the discussion. You can watch the original on our YouTube channel: https://www.youtube.com/watch?v=me4cANg9RMU FP merch that doesn't suck: https://shop.serokell.io/ Follow on social media: https://twitter.com/sasajuric https://twitter.com/serokell Learn more about us: https://serokell.io Contact us: academy@serokell.io

1hr 24mins

20 Jan 2022

Episode artwork

Erlang, Elixir, Blockchain & Serverless…Wait What?! • Ulf Wiger, Saša Jurić & Eric Johnson

GOTO - Today, Tomorrow and the Future

This interview was recorded at GOTO Copenhagen 2019 for GOTO Unscripted.https://gotopia.techRead the full transcription of this interview here:https://gotopia.tech/articles/erlang-elixir-blockchain-serverlessUlf Wiger - Freelance Consultant & Core Developer Team Member at æternity blockchainSaša Jurić - Author of "Elixir in Action"Eric Johnson - Principal Developer Advocate - Serverless at AWSDESCRIPTIONJoin Eric Johnson, principal developer advocate at AWS Serverless, as he takes a deep dive into the BEAM languages Elixir & Erlang, along with the help of two experts in the field Saša Jurić, a well-known, independent Elixir mentor, and Ulf Wiger, first paying customer or Erlang and senior specialist in the architecture and design of carrier-class systems. They explore the relationship between the two languages and when they should be used, and they focus on specific use cases such as Erlang in blockchain or bringing the two languages into the serverless space.https://twitter.com/GOTOconhttps://www.linkedin.com/company/goto-https://www.facebook.com/GOTOConferencesRECOMMENDED BOOKSSaša Jurić • Elixir in Action • https://amzn.to/2RZh5eNJoe Armstrong • Programming Erlang • https://amzn.to/3fzY53gDave Thomas • Programming Elixir ≥ 1.6: Functional • https://amzn.to/34Dw3O5Cesarini & Vinoski • Designing for Scalability with Erlang/OTP • https://amzn.to/3uCB43VSimon St. Laurent • Introducing Erlang • https://amzn.to/3pbIni6Logan, Merritt & Carlsson • Erlang and OTP in Action • https://amzn.to/3pjZqP7McCord, Tate & Valim • Programming Phoenix 1.4 • https://amzn.to/3zcUqj4Looking for a unique learning experience?Attend the next GOTO conference near you! Get your ticket at https://gotopia.techSUBSCRIBE TO OUR YOUTUBE CHANNEL - new videos posted almost daily.https://www.youtube.com/user/GotoConferences/?sub_confirmation=1Dev InterruptedWhat the smartest minds in engineering are thinking about, working on and investing in.Listen on: Apple PodcastsSpotifyTwitterLinkedInFacebookLooking for a unique learning experience?Attend the next GOTO conference near you! Get your ticket: gotopia.techSUBSCRIBE TO OUR YOUTUBE CHANNEL - new videos posted alm...

32mins

5 Nov 2021

Similar People

Episode artwork

Elixir in Action • Saša Jurić & Erik Schön

GOTO - Today, Tomorrow and the Future

This interview was recorded for the GOTO Book Club.http://gotopia.tech/bookclubSaša Jurić - Author of "Elixir in Action"Erik Schön - Author of "The Art of Strategy"DESCRIPTIONIs Elixir the right tool for your job? Find the answer to that question from Saša Jurić, the author of "Elixir in Action". In this conversation, interviewer Erik Schön, managing director at Erlang Solutions Nordics and interviewee Saša explore key benefits and practices in using Elixir, a functional language with over 20k commits on GitHub.The interview is based on Saša Jurić's new book "Elixir in Action": https://amzn.to/2RZh5eNRead the full transcription of the interview here:https://gotopia.tech/bookclub/episodes/how-to-start-with-the-elixir-programming-languageRECOMMENDED BOOKSSaša Jurić • Elixir in Action • https://amzn.to/2RZh5eNErik Schön • The Art Of Strategy • https://amzn.to/2UPzXPahttps://twitter.com/GOTOconhttps://www.linkedin.com/company/goto-https://www.facebook.com/GOTOConferencesLooking for a unique learning experience?Attend the next GOTO conference near you! Get your ticket at http://gotopia.techSUBSCRIBE TO OUR YOUTUBE CHANNEL - new videos posted almost daily.https://www.youtube.com/user/GotoConferences/?sub_confirmation=1TwitterLinkedInFacebookLooking for a unique learning experience?Attend the next GOTO conference near you! Get your ticket: gotopia.techSUBSCRIBE TO OUR YOUTUBE CHANNEL - new videos posted alm...

34mins

22 Apr 2021

Episode artwork

38: Maintainable Elixir with Saša Jurić

Thinking Elixir Podcast

Saša Jurić shares how the team at Very Big Things is building maintainable Elixir code. This ranges from the development processes to code design and organization. He takes some "radical" positions and challenges conventions on a mission to find what actually works well. We talk about his library Boundary and how it helps enforce API designs. He talks about the "Junk Drawer Pattern" and how code analysis helps identify lines of separation for refactoring. A thought provoking and fun discussion! Show Notes online - http://podcast.thinkingelixir.com/38 Elixir Community News https://twitter.com/josevalim/status/1366417827528396803 – Jose Valim is stepping down in his role as Board Director of the The Erlang Ecosystem Foundation https://twitter.com/josevalim/status/1366427218306564096 – Jose Valim calls out to the Erlang community for any developers who are interested in Machine Learning https://pragprog.com//titles/liveview/programming-phoenix-liveview/ – A new Phoenix LiveView book is coming out and is currently in a beta release https://twitter.com/chris_mccord/status/1365031826813825033 – Chris McCord shared his perspective around the general community excitement with LiveView https://blog.aeternity.com/erlscripten-92c815786987 – The company https://aeternity.com released a project called "Erlscripten" https://seanmoriarity.com/ – Follow Sean Moriarity's blog for his "Nx Tip of the Week" series https://www.erlang.org/news/144 – OTP 24 will release candidates have started https://hex.pm/packages/finch – Finch HTTP library https://twitter.com/chriskeathley/status/1364692787032113153 – Chris Keathley posted graphics showing the before and after performance charts from it's use at BleacherReport https://github.com/elixir-ecto/ecto/pull/3566 – Ecto.Multi.inspect/2,3 support being added to Ecto https://github.com/phoenixframework/phoenix_live_view/pull/1349/files – Fix for compiler warnings on live_component usage https://blog.discord.com/why-discord-is-switching-from-go-to-rust-a190bbca2b1f – Discord announced why they were moving away from Go to Rust Do you have some Elixir news to share? Tell us at @ThinkingElixir or email at show@thinkingelixir.com Discussion Resources https://www.manning.com/books/elixir-in-action-second-edition – Elixir in Action 2nd Edition book https://verybigthings.com/ https://medium.com/very-big-things/towards-maintainable-elixir-the-development-process-205ee257c109 https://medium.com/very-big-things/towards-maintainable-elixir-the-core-and-the-interface-c267f0da43 https://en.wikipedia.org/wiki/Code_Complete https://www.amazon.com/Code-Complete-Practical-Handbook-Construction/dp/0735619670 https://github.com/rrrene/credo https://github.com/rrrene/credo/blob/master/lib/credo/check/readability/strict_module_layout.ex https://github.com/sasa1977/boundary https://github.com/sasa1977/ci https://elixirforum.com/ Guest Information https://twitter.com/sasajuric – on Twitter https://github.com/sasa1977/ – on Github https://www.theerlangelist.com/ – Blog Find us online Message the show - @ThinkingElixir Email the show - show@thinkingelixir.com Mark Ericksen - @brainlid David Bernheisel - @bernheisel Cade Ward - @cadebward

1hr 12mins

9 Mar 2021

Most Popular

Episode artwork

EMx 116: Where Should We Take Elixir with Saša Jurić

Devchat.tv Episode Roundup

This guest barely needs an introduction and we roll quickly forward from his one-punch knockout book Elixir in Action and onward. Saša makes the panel consider what we could and maybe should be doing with Elixir in the future. We talk about his talks, his libraries and his overall vision for what the future could and possibly should hold. Rather than reading this, you should be listening because the erlangelist is talking and it serves us all to pay attention. Links KEYNOTE: Using the Beam to fight COVID-19 - Bryan Hunter https://github.com/rabbitmq/ra https://github.com/tantivy-search/tantivy Picks Bruce Elixir in Action Grox.io training course Brian Troutwine interviews Josh KEYNOTE: Using the Beam to fight COVID-19 - Bryan Hunter Return of the 90's Web Lars BLE and Elixir GOTO 2019 • The Soul of Erlang and Elixir • Saša Jurić Saša https://github.com/sasa1977/boundary Deconstructing the Monolith Unit Testing Principles Practices and Patterns

53mins

24 Nov 2020

Episode artwork

EMx 116: Where Should We Take Elixir with Saša Jurić

Elixir Mix

This guest barely needs an introduction and we roll quickly forward from his one-punch knockout book Elixir in Action and onward. Saša makes the panel consider what we could and maybe should be doing with Elixir in the future. We talk about his talks, his libraries and his overall vision for what the future could and possibly should hold. Rather than reading this, you should be listening because the erlangelist is talking and it serves us all to pay attention.Links KEYNOTE: Using the Beam to fight COVID-19 - Bryan Hunter https://github.com/rabbitmq/ra https://github.com/tantivy-search/tantivy PicksBruce Elixir in Action Grox.io training course Brian Troutwine interviews Josh KEYNOTE: Using the Beam to fight COVID-19 - Bryan Hunter Return of the 90's Web Lars BLE and Elixir GOTO 2019 • The Soul of Erlang and Elixir • Saša Jurić Saša https://github.com/sasa1977/boundary Deconstructing the Monolith Unit Testing Principles Practices and Patterns Special Guest: Saša Jurić. Advertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacy

53mins

24 Nov 2020

Episode artwork

Betweenisode Part 1: Saša Jurić, Bruce and Maggie Tate, James Edward Gray II, Jim and Chris Freeze, and Frank Hunleth

Elixir Wizards

The world has changed so much since the end of season 3, that we thought we’d put together a special Betweenisode to tide you over until Season 4 launches. In this episode, we talk to several friends and respected members of the Elixir community, about how they’re coping and tips they have for retaining some normalcy in your life if you’re suddenly having to work from home. Our first guest, Saša Jurić, of Very Big Things, and author of the unrivaled Elixir in Action, has had the privilege of working from home for several years. He shares the importance of having a routine, connecting with people, and why you should get out of your pajamas and into some real clothes when you work. He also shares what it’s been like in his home city of Zagreb, and how previous devastating events have in some way prepared him for what’s currently happening. Bruce and Maggie Tate of Groxio, an educational platform to learn languages, also join us. Maggie shares more on her culinary adventures, and the importance of having a definite start and finish time to your day. Bruce talks about some of the professional projects he’s working on, and why he believes it’s crucial to tackle difficult technical skills outside of developing. Other guests include James Edward Gray II, who shares more about the incredible way he and his daughter have been bonding, Jim Freeze, founder of ElixirConf, and his son Chris, who share some of the benefits of working from home, and show us how to see the silver lining during this difficult time, and Frank Hunleth, of Nerves Project, who talks about what he’s up to. There have certainly been more changes in the world than we could have anticipated, so it was wonderful to catch up and see how people in our community have been coping. Be sure to tune in today! Key Points From This Episode: Learn what’s happening in Saša’s home city, Zagreb, and what he’s doing to keep busy. Saša’s advice for coping during the pandemic and preventing information overload. The transition to remote work in Saša’s company and the impacts it’s had on workload. How Saša started working remotely and the main lessons he has learned from doing it. What Saša believes the future of virtual events and conferences will be. Find out how Bruce and Maggie are dealing with these strange times. Groxio’s mission in terms of learning and Bruce and Maggie’s tip for working from home. Current projects that Bruce and Maggie are working on both at Groxio and personally. What’s in the pipeline with Groxio’s Elixir material and Bruce and Maggie’s plugs. How James is holding up and his take on the COBOL debacle. Find out what motivated James to transition from Ruby to Elixir and what it’s been like. James’s experience working from home and tips for people who are new to it. Specific versus general solutions: The difference and how James thinks we can tackle this. Hear James’s ExVenture plug, which is Eric’s project. Jim’s and Chris’s experience of the lockdown and the silver linings that have come from it Find out Jim and Chris’s necessities for working from home and being productive. Jim’s plans for ElixirConf for this year and 2021, and Chris and Jim’s final plug. Frank’s tips for working from home and his product plugs. Links Mentioned in Today’s Episode: Saša Jurić on Twitter — https://twitter.com/sasajuric Saša Jurić on LinkedIn — https://hr.linkedin.com/in/sa%C5%A1a-juri%C4%87-21b23186 Erlangelist — https://www.theerlangelist.com/ Very Big Things — https://verybigthings.com/ Elixir in Action — https://www.manning.com/books/elixir-in-action-second-edition Bruce Tate — https://www.linkedin.com/in/bruce-tate-a836b Bruce Tate on Twitter — https://twitter.com/redrapids Maggie Tate on LinkedIn — https://www.linkedin.com/in/maggie-tate-230234171 Groxio — https://grox.io/ Programmer Passport — https://elixirforum.com/t/programmer-passport-grox-io-pragprog/28253 Lonestar Elixir — https://lonestarelixir.com/ James Edward Gray II — https://twitter.com/JEG2 COBOL — https://www.tutorialspoint.com/cobol/index.htm Gray Inc — http://graysoftinc.com/ Programming Erlang — https://pragprog.com/book/jaerlang2/programming-erlang Nathan Long — https://twitter.com/sleeplessgeek POV-Ray — http://www.povray.org/ Elixir Wizards S02 Eric on ExVenture — https://podcast.smartlogic.io/season-two-oestrich Jesse Link — http://www.jesselink.com/ Jim Freeze on Twitter— https://twitter.com/jimfreeze ElixirConf — https://elixirconf.com/2020 Chris Freeze on Twitter— https://twitter.com/chrisfreeze_ Tesla Car Lot — https://teslacarlot.com/ David Antaramian — https://www.linkedin.com/in/davidantaramian/ PepsiCo — https://www.pepsico.com/ Nerves Project — https://www.nerves-project.org/ Frank Hunleth on Twitter — https://twitter.com/fhunleth SmartLogic — https://smartlogic.io/ Special Guests: Bruce Tate, Chris Freeze, Dr. Jim Freeze, Frank Hunleth, James Gray, Maggie Tate, and Saša Jurić.

53mins

21 Apr 2020

Episode artwork

EMx 025: Rethinking App Env and more with Saša Jurić

Elixir Mix

Panel: Mark Ericksen Josh Adams Charles Max Wood Special Guest: Sasa JuricIn this episode of Elixir Mix, the panel talks with Sasa Juric who is the author of Elixir in Action (2nd edition) and uses Elixir, Erlang, and OTP. He is from Zagreb, Croatia and you can check out his blog here! The panel talks about his book, past and current projects, in addition to configurations, and Elixir.Show Topics:0:00 – Advertisement: Get A Coder Job!0:50 – Chuck: Panel. Our guest is Sasa Juric. Introduce yourself to us please.1:12 – Guest: I am known for writing my book and my blogs. I am president to the Elixir forum and helping people out. I have been using Elixir for 5 years; in the past I have used C++ and others.1:46 – Chuck: App env and configuration and sounds like we could talk about more. Let’s start there, though.1:59 – Guest.2:03 – Panel: A little background with configuration b/c it’s been a topic in the community. There is a lot of discussion around it. What is the right way? And there is a change in how we deploy software. We have more docker containers and multiple stages of deployment and tons of configurations through environment settings. Anything you can talk about that?2:51 – (Guest answers those questions. He discusses in detail about docker configurations. Also, the guest talks about the various settings per the different environments.)7:25 – Panel: That was a thorough summary.7:29 – Guest: I can talk more.7:35 – Panel: So we have background on configuration is setup and the goals we have. What are some of the ways that a person with Elixir – how do they start? Tips / advice? They have their app and trying to go to production?8:22 – (Guest answers the question.)Guest: 90% of the time, this is what you want to do. This is what you do...build it and put it in the folder structure, and you are good to go. Why is this good? You don’t have to have a bunch of...If you are using Phoenix than you need Node.js and you don’t want to have that on your production. You can easily run side-by-side different versions of Erlang and Phoenix.11:40 – Panel: You can do that in a single docker file?11:47 – Guest.11:51 – Panel: You just copy the files...11:56 – Panel: I learned I could do that by the distiller 2.0...I hadn’t encountered that before.12:11 – Guest: Look into the distillery. I want to give compliments to Paul and the team is great. Go to Distillery and see the tutorials.12:37 – Panel: People think I don’t want to use docker there is an option....13:01 – Guest.13:04 – Chuck: Different types of configuration?13:13 – Guest: Right this discussion too which is probably talking about my blog post, and I have this wild thought about configurations. We can discuss the issues and different solutions. We have these configurations files and they contain these time various configurations and...There is usually more than 1 configuration file.17:53 – Panel: You only get agreement. I have had that problem, too, saying what is this configuration? What are THE Settings that are present and yeah that is a problem? You identify these problems in your blog, where it’s not checked in and the code will not...I have had to work around that in my projects. We are going to create a sample project and it will have defaults. So we can improve the situation.18:45 – Panel: Class based configurations – I get angry.19:05 – Guest: I try to challenge this status quo. Some people agree and others disagree. Some say this blanket statement.19:54 – Loot Crate!20:47 – Guest: Another thing to note is that configurations are free form key values. Remember, my point is that it boils down to some function being involved with these values.(Guest continues...)23:36 – What is your direction that you are proposing?23:40 – Guest: We are going to discuss other issues.23:49 – Panel: As background, as apart of that whole configuration in those distillery docs...24:41 – What is the next step in the discussion?24:48 – Guest: Let’s take a step back.(Guest talks about Distillery 2.0.)27:09 – Guest continues...29:50 – Panel: That makes sense and flexible.29:58 – Guest: The other complaint is that the Phoenix generator is pushing the community in the wrong direction by forcing a lot of things by default. When you generate your project with...My team we have used the configuration b/c it seems the right way to do, but what constitutes this? Should this go here and what is a configuration?30:52 – Panel: I don’t have a synced answer – I don’t have a boundary to say what does or doesn’t’ go in there.31:13 – Guest: Like the operator might decide to change the HPP port or maybe you want to...? You have to make the decision – what will those things be?31:32 – Panel: React to a configuration change, it’s very clear to...31:57 – Guest: It is very arbitrary by its nature. One of the main things (in the blog post) my coworker said it felt like a configuration. What does that mean? Should we have some sort of rules? What is a configuration and what isn’t?32:33 – Panel comments.32:55 – Guest: Now I am swinging in a new extreme. You started with parameters nothing more and there is nothing more than functions and parameters.34:41 – Chuck: You keep bringing up JSON is there a reason why?34:55 – Guest: I am not a super fan of JSON for various reasons but we decided on JSON b/c it’s fairly easy. Most of our clients and admin can add it.35:18 – Chuck: Asks a question.35:30 – Guest: Getting a configuration...36:35 – Panel.36:39 – Guest: With Distillery 2.0...36:47 – Chuck: What formats do you like if you don’t like JSON?36:58 – Guest: I am not sure. I would like to run everything in Elixir directly.37:47 – Panel: I have been using Kubernetes. I like that I can have comments.38:00 – Panel.38:10 – Panel.38:17 – JSON is terrible but you can use it and everyone can, too.38:27 – Guest: I would probably pick JSON between those two. It’s the lesser of 2 evils.38:40 – Panel.39:03 – Guest: The key is to clean up this configuration in the first place. My impression is...39:30 – Panel: I wrote a library, and there was configuration but it doesn’t belong – it’s not a configuration setting nor...so where should those kinds of settings be? I know they are just parameters, but...so we can pull out our configuration files?40:11 – Guest: It should be grouped by scope. Take Phoenix application...41:54 – Panel: That’s your exposed configuration – conceivably – but it should be hard coded.42:04 – Guest: It won’t be hard coded, and the server will be different in production than your machine.42:17 – Panel.42:30 – Guest: Precisely. You have to ask: is this a configured parameter or not?42:43 – Chuck: Can you talk about how to encrypt and/or protect these secrets?42:56 – Guest: There are these secrets that are broad secrets via...and it depends on you how you’re going to protect them. Use some encryption scheme.43:20 – Panel.43:28 – Guest: Right.43:31 – Chuck: In Rails it has a secret file, too and you have to provide the key to the app. Then your KEY is a secret. It feels like this circular problem.43:53 – Guest.44:54 – Panel: When you are dealing with that sort of thing...library will absolutely assume...and it limits flexibility.45:17 – Guest: It’s not just an Elixir thing I have seen it in Erlang, too.47:32 – Chuck: Any stories of people getting this wrong or right? I guess people don’t talk about that; any good stories?47:54 – Guest: A lot of stories, actually! 49:52 – Panel: Being that Elixir is a more functional language, how do I put in a configuration that will be available at runtime and available very early. I think that is why we stick things up there by putting it in there.50:35 – Panel.50:43 – Panel: If it is a library and passes it to a configuration - where does it put it?50:53 – Panel: A library and not an application...51:05 – Guest.51:45 – Panel: Where do I put it?52:03 – Guest: There are some libraries that have to be configured before we start. The only case that needs some setting before we start is LOGGER.53:00 – Panel.53:15 – Guest.54:00 – (Guest mentions à la Carte – check it out here! It’s just a factory.)55:38 – Chuck: Let’s do picks!55:46 – Fresh Books!Links: Ruby Elixir JavaScript React Erlang Kubernetes JSON Logger Docker Config Rethinking App Env Distillery Documentation Elixir in Action Elixir in Action – Book – 2nd edition Elixir – Library Guidelines Elixir Forum The 12-Factor App Distillery’s Documentation GitHub: Toml-Elixir GitHub: Riak_Ensemble GitHub: Elm – Beam GitHub: CodeC-Beam Library Guidelines – Elixir Configuring Elixir Libraries Handling Configurations Etcher Tweet Mashup Sasa’s YouTube Video Sasa’s Twitter Sasa’s GitHub Sasa’s Information at Elixir Conf Sasa’s LinkedIn Josh Adams’ Email: josh@smoothterminal.com Sponsors: Loot Crate Fresh Books Cache Fly Get a Coder Job! Picks:Sasa Run-time Library Guidelines Elixir in Action – Book – 2nd edition The Erlangelist Solid Ground Chuck Tweet Mashup My JavaScript Story Channel Shush App Mark Etcher.io Josh Elm Beam Special Guest: Saša Jurić. Advertising Inquiries: https://redcircle.com/brandsPrivacy & Opt-Out: https://redcircle.com/privacy

1hr 4mins

30 Oct 2018

Episode artwork

EMx 025: Rethinking App Env and more with Saša Jurić

Devchat.tv Episode Roundup

Panel: Mark Ericksen Josh Adams Charles Max Wood Special Guest: Sasa Juric In this episode of Elixir Mix, the panel talks with Sasa Juric who is the author of Elixir in Action (2nd edition) and uses Elixir, Erlang, and OTP. He is from Zagreb, Croatia and you can check out his blog here! The panel talks about his book, past and current projects, in addition to configurations, and Elixir. Show Topics: 0:00 – Advertisement: Get A Coder Job! 0:50 – Chuck: Panel. Our guest is Sasa Juric. Introduce yourself to us please. 1:12 – Guest: I am known for writing my book and my blogs. I am president to the Elixir forum and helping people out. I have been using Elixir for 5 years; in the past I have used C++ and others. 1:46 – Chuck: App env and configuration and sounds like we could talk about more. Let’s start there, though. 1:59 – Guest. 2:03 – Panel: A little background with configuration b/c it’s been a topic in the community. There is a lot of discussion around it. What is the right way? And there is a change in how we deploy software. We have more docker containers and multiple stages of deployment and tons of configurations through environment settings. Anything you can talk about that? 2:51 – (Guest answers those questions. He discusses in detail about docker configurations. Also, the guest talks about the various settings per the different environments.) 7:25 – Panel: That was a thorough summary. 7:29 – Guest: I can talk more. 7:35 – Panel: So we have background on configuration is setup and the goals we have. What are some of the ways that a person with Elixir – how do they start? Tips / advice? They have their app and trying to go to production? 8:22 – (Guest answers the question.) Guest: 90% of the time, this is what you want to do. This is what you do...build it and put it in the folder structure, and you are good to go. Why is this good? You don’t have to have a bunch of... If you are using Phoenix than you need Node.js and you don’t want to have that on your production. You can easily run side-by-side different versions of Erlang and Phoenix. 11:40 – Panel: You can do that in a single docker file? 11:47 – Guest. 11:51 – Panel: You just copy the files... 11:56 – Panel: I learned I could do that by the distiller 2.0...I hadn’t encountered that before. 12:11 – Guest: Look into the distillery. I want to give compliments to Paul and the team is great. Go to Distillery and see the tutorials. 12:37 – Panel: People think I don’t want to use docker there is an option.... 13:01 – Guest. 13:04 – Chuck: Different types of configuration? 13:13 – Guest: Right this discussion too which is probably talking about my blog post, and I have this wild thought about configurations. We can discuss the issues and different solutions. We have these configurations files and they contain these time various configurations and... There is usually more than 1 configuration file. 17:53 – Panel: You only get agreement. I have had that problem, too, saying what is this configuration? What are THE Settings that are present and yeah that is a problem? You identify these problems in your blog, where it’s not checked in and the code will not... I have had to work around that in my projects. We are going to create a sample project and it will have defaults. So we can improve the situation. 18:45 – Panel: Class based configurations – I get angry. 19:05 – Guest: I try to challenge this status quo. Some people agree and others disagree. Some say this blanket statement. 19:54 – Loot Crate! 20:47 – Guest: Another thing to note is that configurations are free form key values. Remember, my point is that it boils down to some function being involved with these values. (Guest continues...) 23:36 – What is your direction that you are proposing? 23:40 – Guest: We are going to discuss other issues. 23:49 – Panel: As background, as apart of that whole configuration in those distillery docs... 24:41 – What is the next step in the discussion? 24:48 – Guest: Let’s take a step back. (Guest talks about Distillery 2.0.) 27:09 – Guest continues... 29:50 – Panel: That makes sense and flexible. 29:58 – Guest: The other complaint is that the Phoenix generator is pushing the community in the wrong direction by forcing a lot of things by default. When you generate your project with... My team we have used the configuration b/c it seems the right way to do, but what constitutes this? Should this go here and what is a configuration? 30:52 – Panel: I don’t have a synced answer – I don’t have a boundary to say what does or doesn’t’ go in there. 31:13 – Guest: Like the operator might decide to change the HPP port or maybe you want to...? You have to make the decision – what will those things be? 31:32 – Panel: React to a configuration change, it’s very clear to... 31:57 – Guest: It is very arbitrary by its nature. One of the main things (in the blog post) my coworker said it felt like a configuration. What does that mean? Should we have some sort of rules? What is a configuration and what isn’t? 32:33 – Panel comments. 32:55 – Guest: Now I am swinging in a new extreme. You started with parameters nothing more and there is nothing more than functions and parameters. 34:41 – Chuck: You keep bringing up JSON is there a reason why? 34:55 – Guest: I am not a super fan of JSON for various reasons but we decided on JSON b/c it’s fairly easy. Most of our clients and admin can add it. 35:18 – Chuck: Asks a question. 35:30 – Guest: Getting a configuration... 36:35 – Panel. 36:39 – Guest: With Distillery 2.0... 36:47 – Chuck: What formats do you like if you don’t like JSON? 36:58 – Guest: I am not sure. I would like to run everything in Elixir directly. 37:47 – Panel: I have been using Kubernetes. I like that I can have comments. 38:00 – Panel. 38:10 – Panel. 38:17 – JSON is terrible but you can use it and everyone can, too. 38:27 – Guest: I would probably pick JSON between those two. It’s the lesser of 2 evils. 38:40 – Panel. 39:03 – Guest: The key is to clean up this configuration in the first place. My impression is... 39:30 – Panel: I wrote a library, and there was configuration but it doesn’t belong – it’s not a configuration setting nor...so where should those kinds of settings be? I know they are just parameters, but...so we can pull out our configuration files? 40:11 – Guest: It should be grouped by scope. Take Phoenix application... 41:54 – Panel: That’s your exposed configuration – conceivably – but it should be hard coded. 42:04 – Guest: It won’t be hard coded, and the server will be different in production than your machine. 42:17 – Panel. 42:30 – Guest: Precisely. You have to ask: is this a configured parameter or not? 42:43 – Chuck: Can you talk about how to encrypt and/or protect these secrets? 42:56 – Guest: There are these secrets that are broad secrets via...and it depends on you how you’re going to protect them. Use some encryption scheme. 43:20 – Panel. 43:28 – Guest: Right. 43:31 – Chuck: In Rails it has a secret file, too and you have to provide the key to the app. Then your KEY is a secret. It feels like this circular problem. 43:53 – Guest. 44:54 – Panel: When you are dealing with that sort of thing...library will absolutely assume...and it limits flexibility. 45:17 – Guest: It’s not just an Elixir thing I have seen it in Erlang, too. 47:32 – Chuck: Any stories of people getting this wrong or right? I guess people don’t talk about that; any good stories? 47:54 – Guest: A lot of stories, actually!  49:52 – Panel: Being that Elixir is a more functional language, how do I put in a configuration that will be available at runtime and available very early. I think that is why we stick things up there by putting it in there. 50:35 – Panel. 50:43 – Panel: If it is a library and passes it to a configuration - where does it put it? 50:53 – Panel: A library and not an application... 51:05 – Guest. 51:45 – Panel: Where do I put it? 52:03 – Guest: There are some libraries that have to be configured before we start. The only case that needs some setting before we start is LOGGER. 53:00 – Panel. 53:15 – Guest. 54:00 – (Guest mentions à la Carte – check it out here! It’s just a factory.) 55:38 – Chuck: Let’s do picks! 55:46 – Fresh Books! Links: Ruby Elixir JavaScript React Erlang Kubernetes JSON Logger Docker Config Rethinking App Env Distillery Documentation Elixir in Action Elixir in Action – Book – 2nd edition Elixir – Library Guidelines Elixir Forum The 12-Factor App Distillery’s Documentation GitHub: Toml-Elixir GitHub: Riak_Ensemble GitHub: Elm – Beam GitHub: CodeC-Beam Library Guidelines – Elixir Configuring Elixir Libraries Handling Configurations Etcher Tweet Mashup Sasa’s YouTube Video Sasa’s Twitter Sasa’s GitHub Sasa’s Information at Elixir Conf Sasa’s LinkedIn Josh Adams’ Email: josh@smoothterminal.com Sponsors: Loot Crate Fresh Books Cache Fly Get a Coder Job! Picks: Sasa Run-time Library Guidelines Elixir in Action – Book – 2nd edition The Erlangelist Solid Ground Chuck Tweet Mashup My JavaScript Story Channel Shush App Mark Etcher.io Josh Elm Beam

1hr 4mins

30 Oct 2018

Episode artwork

Episode @078: Software Architecture Panel with Saša Jurić & Lance Halvorsen

Elixir Fountain

Check our patreon page for show notes: www.patreon.com/elixirfountain

1hr

25 Jan 2018

Loading