Sveriges 100 mest populära podcasts

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.

Prenumerera

iTunes / Overcast / RSS

Webbplats

elixiroutlaws.com

Avsnitt

Episode 135: Little's Law

We had a request from Andy Jones to talk about Little's Law. Thanks for the suggestion, Andy. Keep those coming. This is way late coming out, but our life queue was backed up. Little's Law (https://en.wikipedia.org/wiki/Little%27s_law) The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show.
2023-12-06
Länk till avsnitt

Episode 134: Elixir Mexico: Crickets and Beer

Sean and Amos talk tech with Raúl Chouza and Carlo Gilmar. The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show. Special Guests: Carlo Gilmar and Raúl Chouza.
2023-09-22
Länk till avsnitt

Episode 133: Smart Rent

Sean and Amos visit with Eric Oestrich from Smart Rent. The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show. Special Guest: Eric Oestrich.
2023-09-14
Länk till avsnitt

Episode 132: Making Diagrams for No Reason

Amos and Sean visit with Sean Moriarity. The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show. Special Guest: Sean Moriarity .
2023-09-07
Länk till avsnitt

Episode 131: Loving What We Do

Amos and Sean chat with a great crew of guests hosts from Mindvalley (https://www.mindvalley.com/ctl?utm_source=mvcom&utm_campaign=vwo): Bruno Goncalves, John Wong, Fadhil Luqman, and Anton Satin. The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show. Special Guests: Anton Satin, Bruno Goncalves, Fadhil Luqman, and John Wong.
2023-08-10
Länk till avsnitt

Episode 130: Salty Fish

Guest Zac Barnes joins the Outlaws. The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show. Special Guest: Zac Barnes.
2023-07-27
Länk till avsnitt

Episode 129: Best Food in Africa

Peter Ullrich joins us to discuss motorcycles and teaching Elixir. The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show. Special Guest: Peter Ullrich.
2023-06-05
Länk till avsnitt

Episode 128: Elixir and Roses

A visit with Welcome to the Jungle (https://www.welcometothejungle.com/en) about their transition to Elixir. The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show. Special Guests: Oksana Dushenkivska and Samuel Collon.
2023-06-01
Länk till avsnitt

Episode 127: Kansas City, Here We Come

We speak with Tyler Young from Felt (https://felt.com). The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show. Special Guest: Tyler Young.
2023-05-04
Länk till avsnitt

Episode 126: Tech Talking Green (and Yellow)

The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show. Special Guest: Kevin Edey.
2023-04-06
Länk till avsnitt

Episode 125: Checking under the hood of Cars.com

The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show. Special Guests: Angel Jose, Christian Koch, and Stephanie Lane.
2023-03-02
Länk till avsnitt

Episode 124: "A friend of the show is finally on the show"

The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show. Special Guest: Eric Oestrich.
2022-12-22
Länk till avsnitt

Episode 123: An Ear Bender with Fogbender CEO

The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show. Special Guest: Andrei Soroker.
2022-12-15
Länk till avsnitt

Episode 122: Holiday craze and changing times

Coming Of Age | Bryan Cantrill | Monktoberfest 2022 (https://www.youtube.com/watch?v=VzdVSMRu16g) The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show.
2022-11-24
Länk till avsnitt

Episode 121: Potato Hacker vs. Ecto.Multi

The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show.
2022-09-29
Länk till avsnitt

Episode 120: "If you heard it here first..."

The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show.
2022-09-15
Länk till avsnitt

Episode 119: The Eternally Nocturnal Programmer

The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show. Special Guest: Quinn Wilton.
2022-07-28
Länk till avsnitt

Episode 118: Who's crap is it anyway?

The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show. Special Guest: Mitchell Hanberg.
2022-07-21
Länk till avsnitt

Episode 117: Honey Potion and Problem Solving

The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show.
2022-06-23
Länk till avsnitt

Episode 116: TLA+ Catlaws

The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show.
2022-06-09
Länk till avsnitt

Episode 115: EMPEX, A Tale from Two Cities

The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show.
2022-05-19
Länk till avsnitt

Episode 114: A Conversation Continued

The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show.
2022-05-05
Länk till avsnitt

Episode 113: And then there were 3

The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show.
2022-04-21
Länk till avsnitt

Episode 112: ?What?s in a Name??

The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show.
2022-03-10
Länk till avsnitt

Episode 111: Sock it to Me, Ecto

The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show. Elixir Outlaws, 02/22/2022 On today?s episode of the Elixir Outlaws, Amos and Sean are going to talk about authentication and authorization in applications as well as creating starter applications. The forms work great for air handling and everything inside of Phoenix if you are using a changeset otherwise, you got a lot of hand jamming for yourself, says Amos. Episode Highlights JavaScript has buttons to add fields or remove fields, things like that, but it is up to you if you decide that you are going to do it with live view. Changesets don?t work super well with a list. If Amos tries to put in one thing in the list, which is already in the list, it is overriding the whole list. For the invoice cases, whenever we want to add an item to the list, all those changes that are currently there will cause ripping of the form because we are affecting the changeset, says Amos. If you change one of the items in a list, you have to pull everything out, make the one change, and put everything in this change; otherwise, you are going to overwrite the whole list. So, you are going to use the get field instead of getting change, suggests Amos. Sean asks Amos, in your live view implementation, are you taking the changeset you have and trying to find a nested chainset inside it to modify it? Once I have a list, there is this extra cognitive overhead to remember that I need to grab the original fields and make sure that those end up in the changes too, because, otherwise, I am going to overwrite the whole thing, says Amos. Sean inquire from Amos, as you said, your invoice items need to be reused. Are they possible to exist on multiple invoices? Reload doesn?t put it into the changesets once you are building changesets, and that is when it becomes an issue on the front end in the database, says Amos. Amos is going to write a blog post about changeset because he could not find anything on the Internet that talked about it directly, and he is going to take another peruse through the Ecto documentation. Normally, your validations are to a single field on your changeset, and if you are writing a custom validator, use validate change, and you can pass it a function that takes the details about that change on that field, says Sean. Sean explains that all of the things we call validate those happen as soon as you call them but prepare changes like adding a function that will be called right before you call to update or insert or delete. Amos has a function for signing up that versus inviting and signing up says - I am going to create a company, which is a very common thing in web apps. You could even get a very long way into your app and only need one user per group or per team, but there is some overhead to thinking about how you appropriately hide that if you don?t need a multi-user multi-team or multi-group, says Sean. 3 Key Points If you think about the database tables, delete is like on-cast on delete cascade. There is no analog, but you need to delete the associated record if you dissociate, says Sean. When you get your response from your multi, you have to rebuild your form changeset out of that new response and send it out, which sometimes doesn?t build in the same way you want for actually displaying the first time, says Amos. If Sean was building a new web app from scratch and it had some concept of or might feet in the future need some concept of teams, he would probably go ahead and build it from the beginning. Tweetable Quotes ?I spent the last two weeks on the bugs in edge cases, and I guess they weren?t really edged cases.? ? Amos ?When we want to remove something already existing, we have to keep changeset updated constantly with what is on the front end.? ? Amos ?You can use getfield whenever you are working with existing things. Get change makes sense when you only care about the things being added.? ? Sean ?There is some dissonance between I want to modify this one thing or I am modifying the collection and treating them as the same thing makes it complicated for you.? ? Sean ?When I am trying to go back to a phoenix form versus if I am using a multi with something that is not Phoenix, there is no reason to go back to a changeset, and I need to display some error the user.? - Amos Resources Mentioned: Podcast Editing Elixir Outlaws: Website
2022-03-03
Länk till avsnitt

Episode 110: All the Rusty Things

The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show. Elixir Outlaws, 19/02/2022 On today?s episode of the Elixir Outlaws, Chris Keathley and Sean Cribbs are going to talk about Embedded Systems, Microcontrollers, Rust, Raspberry Pi, Zig, etc. There is a compelling benefit of Rust, you can?t use this block of memory, and you can check that at compile time. There is a whole class of memory problems that Rust is stopping you from being able to interact with, but you kind of give it all up. If you dump the thing on a single-threaded, single-core M0 processor. Episode Highlights Zig is very appropriate for the embedded stuff, because if you are dealing with it, then you give up a lot of the benefits of Rust in an embedded context, says Chris. There is a lot to work with Rust to, like write wrappers around unsafe type things to the point where you aren?t really getting a lot of its benefits. There was a project in which Sean was working years ago that was leaning heavily on top of DPDK and which is the Data Plane Developer Kit. Basically, it lets you write network programs using kernel bypass. So, you basically get direct access to the network interface card, and it does some memory tricks and the network buffers into, huge pages that are user space rather than being, passed into kernel buffers and then hand it off with context switches into the userspace. So, you kind of gets the opportunity to do some packet-level programming there. A whole class of problems could happen in a Zig Application that just can?t happen unless you use obviously giant caveat. On the other hand, Rust is going to keep you from making those mistakes. Rust also has the notion of marking variables undefined, which was always a potential bug in C programs. For those of you who don?t know, in old versions of C, you had to declare all your variables, you couldn?t declare them in scope, you couldn?t declare them, in your FOR loop, it had to be declared at a higher scope before you could use it in at least the version of C, which was like a pre ANSI. Zig is an appropriate choice for the embedded work that Chris was doing, and he is starting to get into places where he really does want an arthouse like of some sort. We are working on an API; its job is basically to produce these ginormous JSON documents and serve them to another app that produces the front end for our customers. Sean could have switched back to Alexa or like Jason Library, but that would have made things worse, so there are still like times when you have to take that risky bet. As a leader of an organization, you choose the culture you want, and then, based on that culture, you bring together people, and you tell them to make a decision, and then all you do is ratify that decision once they?ve come to a decision. Sean recommends people to read the book ?Kill It With Fire.? One of the things the author talks about is when there is a big problem, and they really want to solve it, the executives have to be into solving the problem. Sometimes they want to be to be involved, and they end up getting in the way. So, the strategy that she is picked in previous situations is they want to be involved, so they want to have a war room. Chris has been in big company land where if you do anything without asking for permission in triplicate, you get your hands slapped. There is a situation in mind where we are trying to figure out what the next major iteration of our platform is going to look like, and some of that means like questioning the assumptions that were made over the last three years building this product, and then you don?t like on the one hand we want to try things and see if they work like prototypes and whatnot and on the other hand, there is just a massive amount of functionality to figure out, says Chris Chris is building new things then trying to get to the next level of the product. Chris suggests that you can find everything you need if you search long and hard and kind of learn where it all is, it suffers mostly pedagogically like it doesn?t take you from nothing to an expert or even like semi knowledgeable. There is no path for that, and that is the thing that is really missing. For Chris, coming back to an object-oriented language after being in functional land for so long, he gets really scared when he sees those sorts of things. It is one of the few credo rules that Chris turns on from his laser stuff. He wants functions to have docs, and he wanted modules to have docs or at minimum have module block false, which is also again partially for he hides most of his internal modules. You might change memory layout like your username is different than my username, and that changes the layout of how stuff gets into RAM, and that can result in a marked speed improvement. Let?s use statistics and see our improvements are statistically relevant. Or if they are within the noise. If it is just noise, then try optimization Level 3, it is better than optimization level 2. If we can find places in code, the problem with profilers as they show you where you spend all your time. 3 Key Points Chris has written 50 to 100,000 lines of Rust at this point in various projects doing various things. Sean and Chris discuss about the common problem in C language and how Zig is the much better version. Rust is a better version of C++. C++ is a big old honking language at this point. Rust feels like that vein where it has a lot going on, setting aside the ownership stuff. Tweetable Quotes ?All embedded microcontroller platform is a giant bag of global mutable state.?- Chris Keathley ?Rust compile-time memory safety stuff which is very novel and cool.? - Chris Keathley ?It is C that is keeping you from making some of the glaring C problems.?- Chris Keathley ?Zig appeals to me on an aesthetical level that Rust does not? - Chris Keathley ?Java is a safe bet because of adoption, not because of fitness to purpose.?- Sean ?If you are excited about it and getting invested in it, then that means a lot. It doesn?t eliminate risk, but it certainly helps to mitigate it when you make those big choices.? - Chris Keathley ?As a leader high up in an organization, you don?t make choices. You just bring together people who do make choices, and you ratify their choices.?- Chris Keathley ?Our team is responsible for some of the embedded work, which is largely built around nerves.? - Chris Keathley ?We have a deployment setup that?s really nice in that we can just use consistent hashing through a static cluster.? - Chris Keathley ?We made the loading spinner render faster, but it didn?t make loading any faster.? - Chris Keathley Resources Mentioned: Podcast Editing Elixir Outlaws: Website
2022-02-25
Länk till avsnitt

Episode 109: Bike Racks and Frameworks

The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show. Elixir Outlaws, 09/02/2022 On today?s episode of the Elixir Outlaws, Amos and Sean are going to talk about what other models and frameworks are out there for building web apps. The plug has some stuff that looks like Sinatra, but the responses were not what Sean expected in some places. Many people recommended the web machine and the surprising elixir plug. A big point of a web machine is to build something that conforms to the semantics in the RFCs as much as possible. It?s kind of hard for most web frameworks Sean has used, aside from web machines. Episode Highlights In a web machine, your resources are the main thing you work with, and it is a module with a bunch of optional callbacks that you can implement. In a web machine, you have controllers, routers, and dispatch lists that you match over. If you have designed the thing right, you can do that computation at a very low cost to the server. So you are generally improving things in terms of bandwidth, but you are also improving things in terms of time spent processing the request, says Sean. The e-tags are a little bit more complicated, but you could do something like hash the contents of the record and use that as an E-tag. Sometimes you can?t, but that happens all before you even get to the point of producing content. Elli is another great Erling Web server and what?s great about it is super tiny. You can do a lot with very, very little code, and like a phoenix or plug, it will compile your routes when you define them, explains Sean. You can just give ELLI a list of functions, and it?ll run all of them and pass them whatever the output is from the previous function. The only requirement is your end handler because the thing attached to the route has to return particular keys in that map, suggests Amos. Ease is a big deal for people. If you understand any language or server, you can get into this new language or new framework pretty easily with ease. It?s hard to get started or figure out whenever you run into problems. The lifecycle stuff is spread out all over the documentation because sometimes you can change web sockets so that it?ll react, and sometimes you can?t flash messages the same way, says Amos. When you are trying to load your timeline on the big social media websites, you get some placeholder thing first, and then they load in, and it displays, suggests Sean. There are some limitations to the bandit framework yet. It?s not 100% complete, but it can probably work for most of the Phoenix things or plug things you want to do, says Sean. When Amos first started looking into Erling, they looked into Erling for a communication server, not a web server. Nitrogen hails from the days before we have WebSockets, but a lot of what it was trying to do is very much in line with things like live view things, says Sean. 3 Key Points Many people know phoenix but don?t know Elixir, and similarly mid-teen people with Ruby projects don?t know Rails or don?t use the things that the language provides. If you know Elixir well enough, the big Leap is not semantics for Erling, but the syntax. Erling doesn?t apply to Elixir because it made different choices, making the Erling web server less approachable to work on. The flip side of nitrogen is that it?s inefficient to render the tricks that EEX does. Where it?s like I?m going to read everything up until this sigil, and that?s going to be one binary that gets submitted into the compiled function, says Sean. Tweetable Quotes ?With rails, It was hard to do computation because you?d have to go all the way down into the controller and do all of the work you are going to do except rendering the page.? - Sean ?If you focus on doing very little in each callback defined by the web machine, you get a snappy and compliant HTTP interface.? ? Sean ?If your whole page is a live view and the initial render is even really just an empty template that maybe check some authentication to make sure that you are off.? - Amos Resources Mentioned: Podcast Editing Elixir Outlaws: Website
2022-02-10
Länk till avsnitt

Episode 108: Macaroons and Oreos

The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show. Elixir Outlaws, 01/25/2021 On today?s episode of the Elixir Outlaws, Amos and Sean are going to share their technical knowledge and insight on various topics. Amos has been doing a lot of surface-ui work. The surface is a component library for live view. The surface has some excellent features built-in how they handle CSS. Sean hasn?t looked at the Template: Anchor yet, but he has heard mixed things about many people who feel like the eText templates have improved things. Episode Highlights The Troubles with form versus dot form feel like a limitation of the template language should unify those things, says Sean. JSX - React said you could use HTML moments wherever you want, but we are going to turn them into our DOM construction functions that produce the objects with assigned properties from context, says Sean. Sean recalls some web framework to underline called nitrogen used when it was called dynamic HTML, a sort of live update type stuff over Websockets. If you have six elements, six-pointers, and probably at the front of that, you have some metadata, then the thing that follows this block in the OTP case is a tuple, says Sean. A caveat is a kind of blockchain, because a caveat creates a new macaroon that wraps the old one with a new signature, and then you can add another restriction that wraps that one with a new one, says Amos. Sean asks, would it make more sense not to put any permissions in macaroons unless you are restricting them to a limited set because the absence of a caveat is access? Sean inquires, verifying a caveat is just like meeting the signature. If caveat doesn?t apply to an operation being performed, why would that be a problem in application logic? We are storing passwords in the database, which we don?t need. We can make a macaroon for it and give it a time limit like this macaroon will not be any good after this specific time, says Amos. Amos is going to store permissions in the macaroons, but he is not going to pull the list of projects out of the macaroon and then pull them out of the database. The authorization context is not the initial set of facts. It?s the thing you want to unify, especially if there is a caveat for the items. Sean asks Amos, what are your thoughts about code review, and what do you like or dislike about it? What are you trying to get out of it? Everybody tends to hit the lowest bar set on a team no matter what. So code review, to me, is a place to try to push that bar up, says Amos. Sean asks how effective is the code review itself, like the process you implement in your teams? And how often do you catch bugs? Amos says that he feels like learning happens as long as it?s communication. Typos get caught a lot, especially in the documentation, because if somebody wrote documentation, we can read it in the code review and catch typos. Reviewing something to understand how our product is put together or how our infrastructure is put together has not been that good for me, says Sean. As per Amos, if a senior asked the question, a junior will often assume that is how they should go. But once a junior person sees that they know something that you don?t know, it adjusts the power dynamic. Amos suggests that for a good team, we need vulnerability. And the hardest thing to create remotely is vulnerability because there is a lot of interaction that doesn?t happen. Amos affirms that if you can?t explain the code in the code review, you probably haven?t done it well enough for consideration. In his opinion, people don?t spend enough time on code reviews. 3 Key Points A lot of the JSX - React projects Sean had to interact with use Storybook, and Amos creates examples for each of your components, and it is a good thing that helps them with documentation. Authorization is always contextual. When you want to compare or make an authorization decision, you have to look at the context that Sean is trying to authorize and what rights have been granted. Code review is for both sides of the reviewer and the person or people whose code is being reviewed as it takes vulnerability on both sides. Tweetable Quotes ?When you are a property type, and you have a component, you can define properties, and you can say whether they?re required or not.? - Amos ?If I have to debug something, I look at a record. When you are debugging, it is because you don?t know what?s going on.? - Amos ?If someone tried to navigate to the URL without the macaroon, they would just get denied, and that would be a perfect use case for macarons.? - Sean ?With datalog in Prolog, you can declare things that look like functions in datalog, usually called facts or functors, and they have nobody.? ? Sean ?Celebrate failures that create learning. You don?t celebrate failures if you keep continuing to have the same one over and over.? - Amos Resources Mentioned: Podcast Editing Elixir Outlaws: Website
2022-01-27
Länk till avsnitt

Episode 107: Nineteen-Something Cats

The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show. Elixir Outlaws, 01/19/2021 On today?s episode of the Elixir Outlaws, Sean Cribbs and Amos will talk about WASM (Web assembly) to implement some core parts of the app and discuss the server-side too. Rusts for loop syntax is sugar for iterators, says Sean. So, you can also sort of do method chaining type thing in rust. There is an interesting proposal on the Elixir form for loops. Episode Highlights FOR loops are not loops, they are a special form in the compiler, basically a macro with special privileges that generates some code, says Sean. As per Sean, if you have a lead, then you have for loop variable, and you have to return a two-two pole that has the accumulator as the second, or if you don?t, then it is just the accumulator that becomes quite confusing. Amos says that when one uses MapReduce and has FOR loop and you want to step through something and maybe at the same time get an account and a sum, and you want to adjust the current values, then we are getting three things out in adjustment and then two other data points. It is hard to step away from an imperative mindset when you have done it forever and adding imperative things back into the language is going to make it even harder for people to step outside of that imperative mindset, says Amos. People use Monads to write things that look more imperative because it is easier for us to think that way sometimes, and it?s going to create less maintainable code. OCaml is very much like in the same syntactical flavor as Haskell. But it doesn?t have that whole lazy evaluation thing that gets so confusing at times, and it also has the much simpler type of system. Sean had tried hard to encourage his coworkers to use things like in the lists module or use list comprehensions or use fold wherever they could. But some people liked making software recursive functions that had a bunch of arguments to them. In MapReduce there is a trailing option you can put on for loops. It is like reducing given initial value of the accumulator and then you match the accumulator coming in. Using ENUM reduce, there are some tactical forms that represent something, and special form will generate, but they are not things in themselves. The things that are browser based we can?t rewrite completely in Rust. There is always going to be JavaScript at some level. Sean has seen attempts where people want to have JavaScript running the same code on the front end as in the back end. In graphic production, there are many things about memory allocators, but these are all sorts of things that we might have to think about with rust when we are trying to implement. 3 Key Points With MapReduce in the ENUM module, you can do something on each element of the collection, but you are also collecting something about the entire collection as you flow through, says Sean. The flipside of list comprehension is that you can only do so many things in the right side of the comprehension. It may be explicit what you were returning from expression because the entire expression is inside the list brackets. The biggest thing that Amos have ever had to deal with when working on stuff on the front end or on edge computing is if you don?t control the resource at the endpoint, it may be the slowest thing ever, and it may not work that well. Tweetable Quotes ?I am not against pipes, and you can write non-imperative code with pipes, but it looks imperative.? ? Amos ?In FOR loop, FOR is an expression that returns a value. You can choose to ignore that value that?s returned, but it returns a value, usually a list.? ? Sean ?You can have only one let, which is the other thing that?s a little bit surprising. It works in if statements.? ? Sean ?Being able to have code on the back end, you control the hardware and the performance.? ? Amos ?The book Kill it with fire I wish I had picked up a year ago because the author worked for US digital service, updating mainframe applications, and there?s a lot of sage advice in that book.? - Sean Resources Mentioned: Podcast Editing Elixir Outlaws: Website
2022-01-20
Länk till avsnitt

Episode 106: Outlaws Live at Codebeam 2021

The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show.
2021-12-23
Länk till avsnitt

Episode 105: Sports of Sorts

The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show. On today?s episode of the Elixir Outlaws, Sean Cribbs and Amos King are going to talk about Sports of Sorts. Amos shares some driving wisdom and his fondness for silent thoughts. Sean and Amos will share some random and interesting experiences. Episode Highlights: Amos reveals how he developed his creativity and problem-solving skills from driving. Sean has recently resigned from his job, and he is about to join a new company after 12 days. As per Sean, one spends a lot of your time sleeping because their dreams help them to work through problems Amos loves jogging around the river next to the hotel early in the morning when nobody is up. For him, it is nice and quiet. Brittany Matthews is a co-owner of the women's soccer team. She has been big in promoting women?s sports in Kansas City, but especially soccer, and Patrick and Brittany broke ground on a new training center earlier this year. Then, three or four weeks ago, they revealed their new team name. The stadium is first of its kind for the women?s soccer team, which is huge because this team has only been here a year. They just announced that they were going to have a team this January 2021. For those not in Kansas City, the streetcar is absolutely free , which is really awesome with all the buses because buses are free too. So you can go anywhere for free in Kansas City. We have one of the best women soccer players in Samuels who has been on the national team. An Incredible midfielder, dynamic player, and she is going be exciting to watch, says Sean. While talking about the new company where Sean is going to join. He explains that the company is doing motion graphics or motion design. People really want the ability to collaborate to provide feedback on designs, work on different iterations, compare them, and build out a portfolio for you, says Sean. There are multiple companies out there called Fable, so if you want to go look it up, it is Fable, not Fable dot IO, not fable com. It is the Fable Dot app. It is one of those easy, easy ones to find. Amos says he doesn?t know how possible it would be, but it would be interesting if, two designers could work on the same like image or animation at the same time, doing the same kind of ideas of passing changes back and forth. Part of the reason why Sean?s friend wanted to hire him is because he has distributed systems experience, where all the bodies are buried, where all the problems are gonna be like what if we want to have real time collaboration or like something like Miro where people are dragging things around on the on the project at the same time. What always kills me on the front end in the browser, or even if you are compiling and making things faster, is that you really have zero control over the quality of the computer it is running on and the problems like the interactions between the things, says Amos. Sean says that they are going to write C+ code because it was mostly C code, but using the C ++compiler and very few features of C and like the Windows API and like working with it directly to build a 2D kind of Zelda light game. Sean says that the JavaScript community is huge. You have a lot of people experience in JavaScript. It doesn?t take that many of them to make a good customization. Amos shares that his first editor for code other than the QBasic editor was Emacs and that was 22 years ago. Amos says that his first experience with C not running everywhere was in an AI class and they had to write a chess engine and then they all played the developed chess engines against each other. Sean says there is a bytecode format that you can take from running on a Intel being VM and run it on an ARM beam VM or on some other processor that is running your nerves project. 3 Key Points Those of you who don?t know anything about Kansas City, but Patrick Mahomes is a big deal here quarterback for the Chiefs and his fiance Brittany Matthews is kind of influential in her own. Sean says that Figma has changed the way people do collaborate on static web design, this is going to be collaboration on motion design. Motion design would include things like just regular animations you might see on the web. It could include things like advertisements, logo, animations. There are a lot of different ways that we could do collaborate. Another area that he talked about us wanting to do is so a lot of this is like you do in the browser, You draw your shapes, you animate them you set the keyframes, you know you set all that stuff up. But that only produces us a level of quality that the browser can produce. But if you want to do 4K video of this animation that you just created, you are not going to produce that with your browser, says Sean. Tweetable Quotes ?I am a big fan of silent thoughts? ? Sean ?When they introduce the team that the players that are going to start for the match. They had some incredible motion designs on the video board.?- Sean ?It is not movies, it is more about the animation than about video editing. It is like making an animated logo.? - Sean ?There are some pretty interesting problems how to isolate yourself from these, they are doing something very quick and then suddenly they open another program on their desktop, but that hangup.? ? Amos ?90% of your life was spent formatting exactly how that professor wanted it formatted, which is like a huge waste of time.? - Amos Resources Mentioned: Podcast Editing Elixir Outlaws: Website
2021-12-16
Länk till avsnitt

Episode 104: Hot Pockets and Refresh Buttons

The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show. On today?s episode of the Elixir Outlaws, Sean Cribbs and Amos King are going to talk about the Elixir Conference. Amos talks about his ordeal to reach the Elixir Conference, his flight continuously got canceled, and the entire journey was hectic for him. From the scariest landing to nonstop flights getting canceled, rescheduled, and re-routed, Sean?s travel ordeal covers all. Episode Highlights: ? Amos gives detailed insights about his talk and pre-preparation. He has a habit of continuously improving his speech and slides, and this is precisely what he did when he got the extra time due to flight cancellations and re-routing. ? Amos received a lot of positive feedback, and he had a wonderful experience at the conference. For him, it was nice to be around people again post-pandemic. ? Amos suggests before giving a speech, and you don?t have to write out the entire talk, write notes for things that you need to say in a specific way. ? Sean talks about a funny incident that happened in QCON 2014, and he explains why he has a meme and a Russian Fake Facebook account. ? While giving a talk at the vendor track at QCON, which is a big industry very expensive enterprise technology conference type thing, Sean made a funny posture with his hands. ? At the QCON, the photographers have a talent for catching speakers with their hands and really interesting and kind of disturbing positions. Sean tried hard not to make any postures, but the photographer still got a funny picture that later got circulated as a meme. ? Amos explains how nerves are set up; you can use nerves to deploy to your servers if you want to. Because you just have to have something that can run Linux. So now you have B partitions that automatically swap over if one fails. So you can use the nerves hub to deploy to your servers. You just have to build a nerves image for whatever server you have. ? Sean and Amos explain how you can accomplish really great things when your tools are well built. ? Amos says there have been a lot of things that the nerves team and working on nerves has brought back to the ecosystem as a whole. ? Sean feels that there is a lot of good stuff going right now, but there is also a long way to go before you can really feel like, hey, this out of the box or very close to out of the box new Elixir project, it is going to have metrics tracing, logging, built in. So, Sean feels that he just has to add his own flavor for this particular project and make that part of his engineering process. ? Sean talks about a crypto finance company and one of its major functions, i.e., trading. ? Sean explains how there are multiple systems within an infrastructure that interacts as part of the process. ? As soon as you know your product is viable, you get feedback to give users better experiences, says Amos. ? Sean explains how one can directly correlate to the cost of the server, and one can save memory. ? Talking about his side projects, Sean said his project capacity planner became one of his major projects. ? Sometimes you just have to turn people away in order to serve anyone, says Sean. ? There are a bunch of products without the sort of visibility to their customers even those products do not have value or not apparent value like the content distribution networks (CDN). ? While talking about passing the acceptance test, Sean says to Amos that you can build these kinds of things that look like single-page apps, but they are completely server-side driven, and you can manage this state and Elixir, and that is great. 3 Key Points 1. Amos says that at the conference, they mainly talked about whenever you are doing acceptance tests driver browser or really any system that you have to wait for things like transitions so that as a user, you might not think about. 2. Amos talks about his coding journey and how he learned the basics of programming. 3. Sean explains how virtuous feedback cycles make your business successful in addition to your technical side. Tweetable Quotes ? ?You should not take more food than you can eat, but you also don?t have to eat everything like don?t make yourself miserable. It?s not good for your health.? ? Amos ? ?Computer is often faster than what the dropdown will actually open in the browser so.? ? Sean Cribbs ? ?The very first code that I traded run was also the most complicated.? ? Amos ? ?If you learn with small talk, you?re probably in the right place.? ? Amos ? ?Categorically deploying Elixir does not exist.?- Amos ? ?If people know how to measure their systems, then they can get in a situation where they fire up 96 of the largest instances on their cloud provider and don?t care about the cost.? ? Sean Resources Mentioned: ? Podcast Editing
2021-12-10
Länk till avsnitt

Episode 103: Welcome back Anna

Anna, Sean, and Amos talk about what they do to take a break, and follow it up with how to get started on hard problems when there is no clear path forward. The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show.
2021-10-13
Länk till avsnitt

Episode 102: Who's that host? It's Sean.

How do we get started? How does context affect the software we write? The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show.
2021-10-04
Länk till avsnitt

Episode 101: Bright and Tight

This week, Chris and Amos discuss error handling and when its appropriate to "Let It Crash" :tm:. A transcript for this episode is available on Binary Noggin's website: https://binarynoggin.com/blog/episode-101-bright-and-tight/
2021-09-09
Länk till avsnitt

Episode 100: Pop-Tartare

This week our hosts celebrate their 100th episode. The talk about their favorite moments from the show. A transcript of this episode can be found on Binary Noggin's website: https://binarynoggin.com/blog/episode-100-pop-tartare/
2021-08-26
Länk till avsnitt

Episode 99: Big Tubes

The main topic this week is behaviours and protocols and when to use both. Chris, inspired by the wisdom of Quinn Wilton, thinks that its probably incorrect to use Behaviours to define public interfaces for APIs. Protocols seem to fit the bill better. Both hosts agree that the best kind of dependency injection is just called, "passing arguments to functions". A transcript is available for this episode on Binary Noggin's website: https://binarynoggin.com/blog/episode-99-big-tubes/
2021-08-09
Länk till avsnitt

Episode 98: Machine Laundering

This week, Chris, Amos, and Anna talk about conferences, strange loop, and how hard re-entering the real world has been. But, the main topic is copilot. Surprising absolutely no one, everyone has strong opinions. A transcript of this episode is available on Binary Noggin's website: https://binarynoggin.com/blog/episode-98-machine-laundering/
2021-07-15
Länk till avsnitt

Episode 97: Successfully Vamped

This weeks show kicks off with discussion on Ecto. Amos claims that Chris made some bold statements about relations which Chris fervently denies. The topic eventually shifts to Chris's recent blog post on writing more maintainable elixir code. Transcript is available on Binary Noggin's website: https://binarynoggin.com/blog/episode-97-successfully-vamped/
2021-07-08
Länk till avsnitt

Episode 96: Stuck between two ETS Tables and a GenServer

This week kicks off with a discussion on ETS tables and the various ways that they can be used. Chris talks about his experience utilizing ETS tables at Bleacher Report in order to optimize some of their critical paths and build reliability. The conversation then shifts into the various tools and techniques that Bleacher Report utilized to build resilient services. A transcript is available for this episode on Binary Noggin's website: https://binarynoggin.com/blog/episode-96-stuck-between-two-ets-tables-and-a-genserver/
2021-05-19
Länk till avsnitt

Episode 95: Outlaws Live at ElixirConfAfr

This week, the hosts are hanging out at ElixirConf Africa. They discuss improvements to Elixir, community building, and ways that the Elixir community can continue to improve. A transcript is available for this episode on Binary Noggin's website: https://binarynoggin.com/blog/episode-95-elixir-conf-africa-2021/ Special Guests: Collins Mucheru, Shuaib Afegubua, and Sigu Magwa.
2021-05-12
Länk till avsnitt

Episode 93: The story of the code

Chris has started a new job at frame.io, and he's just getting settled in. Amos has questions and Chris describes his process for learning the history of a code base as quickly as possible. A transcript is available for this episode on Binary Noggin's website: https://binarynoggin.com/blog/episode-93-the-story-of-the-code/
2021-04-27
Länk till avsnitt

Episode 92: Outlaws Live at CodeBeam

This week the outlaws are live at CodeBeam and are shucking, jiving, and some combination of the two. They're also answering questions from the community. A transcript is available for this episode on Binary Noggin's website: https://binarynoggin.com/blog/episode-92-outlaws-live-at-code-beam-v/
2021-04-22
Länk till avsnitt

Episode 91: I Promise Not to Take Your Cows

Amos, Anna, and Chris start off the show discussing the morality of making promises you can't keep, then spend the rest of the episode discussing the ups and downs of past conference talks. A transcript is available for this episode on Binary Noggin's website: https://binarynoggin.com/blog/episode-91-i-promise-not-to-take-your-cows/ The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show.
2021-04-11
Länk till avsnitt

Episode 90: Ad Hoc-ly Specified

After confirming that there is indeed a Kansas City, Missouri, the Outlaws discuss Amos's new projects using Phoenix and some LiveView, then opine about CSS, Wallaby, and testing, before closing with brief commentary on Nyx. Shout outs to Friends of The Show : Frank Herbert and Mitch Hanberg. https://www.mitchellhanberg.com/projects/ https://twitter.com/mononcqc A transcript is available for this episode on Binary Noggin's website: https://binarynoggin.com/blog/episode-90-ad-hoc-ly-specified/ The Elixir Outlaws now have a Patreon (https://www.patreon.com/user?u=5332239). If you?re enjoying the show then please consider throwing a few bucks our way to help us pay for the costs for the show.
2021-03-24
Länk till avsnitt

Episode 89: The new-new architecture

Chris skipped his normal pre-podcast prep and is trying to make up for it. Amos wants to know more about what Chris does to prep; a topic which is interesting to literally no one. Quotes are missatributed as the hosts turn to the main topic of the week: What makes for good design. Chris claims to have a specific design sense but has no idea if its a good sense or not. Both he and Amos agree that consistency is important and that software developers should always be working to making the design of a system a little bit better. But, that work also seems hard and its way more fun to play around with Istio or whatever. A transcript is available for this episode on Binary Noggin's website: https://binarynoggin.com/blog/episode-89-the-new-new-architecture/
2021-02-19
Länk till avsnitt

Episode 88: Make it pop!

Chris has recently become the owner of a 3D printer and he agrees with everyone else; 3D printing is really cool. The main topic this week is Mnesia and all of the ways that its possible to "break it". Chris and Amos discuss why Mnesia has a bad reputation, where it is a good fit, and how to mitigate some of the issues. A transcript is available for this episode on Binary Noggin's website: https://binarynoggin.com/blog/episode-88-make-it-pop/
2021-01-14
Länk till avsnitt

Episode 87: All benefits and no tradeoffs

This week kicks off with a discussion of Amos?s reading list. Around the 30 minute mark, the topic shifts to some idle speculation about the benchmarks Jose has been teasing. Towards the end of the discussion, Chris explains his frustration with "modern infrastructure" and programmers chosing complex solutions that they don't need. A transcript is available for this episode on Binary Noggin's website: https://binarynoggin.com/blog/episode-87-all-benefits-and-no-tradeoffs/
2021-01-14
Länk till avsnitt

Episode 86: Time is problematic

Chris has been drawing maps for his DnD game and he's pretty proud of them. Amos is trying to order events and has questions about hybrid logical clocks. This leads to a discussion of what ordering even is and why its such a problem in distributed systems. A transcript is available for this episode on Binary Noggin's website: https://binarynoggin.com/blog/episode-86-time-is-problematic/
2020-12-31
Länk till avsnitt

Episode 85: Showin' up and sayin' words

Chris has introduced Amos to Japandroids and its going pretty well. There is a quick discussion of embarassing punk music before the show shifts from music outlaws back to elixir outlaws. Chris is thirsty for some elixir news and Amos wants to know how Chris Gets Things Done :tm:. The guys discuss how they cultivate their personal skill sets, how they're both bad mentors, and how to read white papers. At the end, Chris teases his latest project which may or may not ever be seen by other people. A transcript is available for this episode on Binary Noggin's website: https://binarynoggin.com/blog/episode-85-showin-up-and-sayin-words/
2020-12-17
Länk till avsnitt
Hur lyssnar man på podcast?

En liten tjänst av I'm With Friends. Finns även på engelska.
Uppdateras med hjälp från iTunes.