Morphix 0.7.0 published. Now with generic morphiforming of map keys! https://hex.pm/packages/morphix/0.7.0
Morphix 0.7.0 published.
We noticed that we had some duplicated code, and that that duplicated code could be used to apply any function to recursive key transforms in maps, so we made the generic method public. Later releases will have better information about how to implement this, in the meantime, check the test examples. https://hex.pm/packages/morphix/0.7.0
Hashing Files in Elixir
In this article we see what a hash function is and what it can be useful for. We see how to calculate the hash of strings and files using the Erlang :crypto
module and Elixir streams.
Params modules for Phoenix
The Params modules pattern can be used in Phoenix to validate and massage a controller action’s params
into data that can be passed to contexts.
ElixirMix Podcast 046 - Don’t Repeat Your Domain Knowledge with Yiming Chen
In this episode of ElixirMix, the panel talks with Yiming Chen about keeping code DRY for domain knowledge. We talk about contexts, code patterns in Ruby and Elixir, learning Elixir in China and much more!
Revisiting “Tail Call Optimization in Elixir & Erlang” with benchee 1.0
I took the release of benchee 1.0 for a spin and redid one of the first benchmarks I ever did with benchee - looking at tail call optimization in elixir and erlang to show off how benchee has improved over time. The original blog post can be found here.
Cleaning up Phoenix Controller Actions
A pattern I came across that helps when you need to pass a lot of variables to the view / template. https://link.medium.com/u2pVO4TMIV
Implementing link following with OAuth
Link following is the process for dynamically redirecting a user after successful authentication.
I briefly detail how to implement this using the Phoenix and Ueberauth libraries.
Passing a function inside @assigns in Phoenix - Elixir
As you know, the @assigns map of connection in Phoenix is the data map of variables to be rendering in view templates. We often use this conn.assigns to store our value. But how to store a function inside this?
https://hlongvu.com/post/qnqceslup4-Passing-a-function-inside-atassigns-in-Phoenix-Elixir
Jay Ashe from Cava - Elixir in Production
We talk with Jay Ashe from Cava about their current and past Elixir projects and how they are deployed.
Nightly Tasks with a GenServer
Recently on my side project Grapevine, I wanted to start shuffling up the featured games on the homepage. To do this, I set up a nightly process that does the re-ordering. This uses OTP primitives (plus Timex for time manipulating) in order to achieve this.
Elixir Orb for CircleCI
I’ve created an Elixir Orb for CircleCI. If you build projects in Elixir using CircleCI take a look into this blog post https://circleci.com/blog/contributing-the-elixir-orb/. Feel free to leave any feedback and/or contribute to the orb.
Elixir Streams and large HTTP response: processing text
Elixir Streams and large HTTP responses: processing text
This is a second part of the article of last week.
This time we are going to process on the fly a 30 million lines remote file, summing the numbers of each line. We will see how to implement the functions we need to convert a stream of chunks (the one built in the part 1) to a stream of lines. We’ll then run a benchmark of two different implementations.
We will then see how easy and quick is to process just the first 30 lines of the same 125mb file.
Real World Phoenix |> A LiveView Dashboard
Lets’s use LiveView to build a dashboard! Check out how I do it in this blog post
ElixirMix Podcast 045 - Where the Wild Things Are with Johnny Winn
In this episode of ElixirMix, the panel talks with Johnny Winn of ElixirFountain fame. We talk about his podcast’s influence on each of us. We talk about libraries vs simple specific solutions. We cover burnout and the importance of feeling creative and much more!
Discovering the truth behind an invalid_file_path error
A post-mortem article about an invalid_file_path error! https://www.welcometothejungle.co/fr/articles/invalid-file-path-error
5 reasons Elixir can be your competitive advantage
Can a programming language be a business competitive advantage?
Inspired by @devoncestes and @joeerl recent discussion about the topic, I wrote a blog post with some of the reasons that might make Elixir your competitive advantage.
https://www.elviovicosa.com/2019/03/29/5-reasons-elixir-competitive-advantage.html
Why should every process be supervised?
I’ve heard this a lot, most recently at Code BEAM Lite Italy in Andreas’ keynote. But nobody every explains why. It took me a long time to figure it out, and now that I finally know, I’m writing about it on my blog:
https://medium.com/@derek.kraan2/why-should-every-process-be-supervised-4fbd39c495c6
The Poison Pill Process
A narrative on why to consider learning OTP design patterns early on in an Elixir career. Hopefully the first in a series of potential elixir / OTP anti patterns.
https://medium.com/@TehBrofessor/the-poison-pill-process-f027415dafe4
Elixir Protocols
A lot of us tend to skim over and even avoid topics we don’t fully understand. In the world of Elixir, one of those topics is protocols. In my latest article, I break down what protocols are and how to think about them, look at reasons why we should be using them, how to implement them, and finally how to build our own.
Elixir Protocols
https://samuelmullen.com/articles/elixir-protocols/