Adopting Elixir at FindHotel

Elixir is the “new kid on the block” in Findhotel’s tech stack. I explain why we decided to use Elixir at FindHotel and how we approached its adoption.

https://blog.findhotel.net/2019/11/adopting-elixir-at-findhotel

Rete algorithm implementation in Elixir, a journey into Logic programming

I just wrote about my latest challenge https://medium.com/elixir-bytes/logic-programming-the-infamous-rete-algorithm-in-elixir-b2fb4de85e5e?sk=7bb7ada651b422992604dba7a667960e

Intro to Phoenix LiveView for web developers who don't know Elixir

Should it be a Multi Page App or a Single Page App?

Multi Page Apps are relatively simple, but you’re limited in what you can achieve.

Single Page Apps allow you to build a much richer UX, but you pay for it in terms of increased complexity and lower productivity.

It would be nice if there was an option that allowed you to build a rich UX, without all the complexity associated with Single Page Apps, right?

Well, that’s exactly what Phoenix LiveView offers.

Want to learn more about Phoenix LiveView?

Checkout my new screencast which provides an introduction to LiveView for web developers who don’t know Elixir. (If you do know Elixir, I think you’ll still find this video helpful)

Elixir Trickery: Using Macros & Metaprogramming Without Superpowers

Metaprogramming sounds scary, but in Elixir you don’t need supernatural powers to use it to great success. Read Michał’s article at Curiosum.dev to learn about how macros work & see some useful macro writing techniques.

Using Dataloder.KV to call APIs lazily

A short post on getting started with Dataloader.KV - example code included.

Using Dataloder.KV to call APIs lazily

Oban Recipes Part 7: Splitting Queues

The seventh Oban recipe outlines a technique for running a distinct subset of queues on each node in a cluster.

Oban Recipies Part 7: Splitting Queues

ElixirMix Podcast 076: MUD Development and Grapevine

In this episode of ElixirMix, we catch up with Eric Oestrich about his project Grapevine and his live coding online. Grapevine is open source and a great resource for people to look at. We cover the different OTP concepts employed, how it is architected, deployed, what people can learn from it, and much more!

Podcast Episode

IntelliJ Elixir v11.3.0

Enhancements

  • Show Parameter Info (⌘+P/Ctrl+P)

Bug Fixes

  • Fix must specify non-empty ‘commandLine’ parameter

  • GeneralCommandLine‘s escaping for Windows can’t handle the parentheses in a way that both works for the Windows shell and Elixir running the code the shell hands off. Removing the parentheses leaves runnable code even if it is no longer formatted.

    Fixes “Unknown Version” naming for Elixir SDKs and the “Probably SDK installed in … is corrupt” dialog from appearing.

Installation Instructions

Interceptor v0.5.3 🚀 Intercept all Foo functions with Foo.*/* config

With the new Interceptor v0.5.3 version, you can now intercept all your module functions with a single configuration entry using wildcards: intercept “Foo.*/*”, on_success: “Callbacks.happy/3”.

This should significantly simplify your interception configurations 🔧!

https://github.com/amalbuquerque/interceptor

The Changeset API Pattern

The focus is on enhancing data integrity in your application by adding explicitness between your API and your schema changesets. Check it out: https://pedroassumpcao.ghost.io/the-changeset-api-pattern/

Elixir in VS Code - Extensions and recommendations

Writing Elixir code in the VS Code editor? Checkout my recommended extensions, how to use them and other extensions that help improve your experience.

Blog Post

Ecto & Multi-tenancy - Dynamic Repos in depth

So I’ve been working on the second part of my dive into Ecto multi-tenancy using Dynamic Repos. It’s up now :)

Elixir For Node.js Developers – Your Handbook To Success

I’ve spent recent years coding with Node.js. At some point, I realised there are so many other technologies to discover. I considered several options reviewing blogs, forums and surveys. I knew that I needed a language that would correspond to my skills and experience. I decided to explore the world of functional programming. It was like a promise of better performance and productivity. I then asked myself - “Why not try Elixir”?

Let me tell you my story based on true events.

https://selleo.com/blog/elixir-for-nodejs-developers-your-handbook-to-success

gen_rmq 2.3.0 version release

GenRMQ is a set of behaviours meant to be used to create RabbitMQ consumers and publishers.

Changelog:

  • Add queue utility functions to the publisher api
  • Add message persistence support

Phoenix integration guide for passwordless authentication with Kno

https://dev.to/crowdhailer/phoenix-and-elixir-integration-guide-for-passwordless-authentication-with-kno-2m2j

Kno is a service for passwordless authentication that is simple for users and developers. This guide walks through integrating Kno with Phoenix sessions.

How to setup Phoenix LiveView

First part of a series of episodes for who wants to explore Phoenix LiveView and understand how it works behind the scenes.

How to setup Phoenix LiveView

Modern Talking with Elixir: Build a Messenger App with Phoenix LiveView

Phoenix LiveView is awesome for building reactive UIs without JavaScript. Michal’s article at Curiosum.dev explains why, and commences a tutorial series on using it to build a Messenger-like app.

Building real time search with Phoenix LiveView

Post about how easily you can implement real time search using LiveView:

https://medium.com/@Mike_Andr/building-real-time-search-with-phoenix-liveview-8b7c5f2374e5

ElixirMix Podcast 075: Game of Go in LiveView With Jeff Kreeftmeijer

In this episode of ElixirMix, we talk with Jeff Kreeftmeijer about implementing the game Go in LiveView. He shared his journey in blog posts. We cover DynamicSupervisors, PubSub, managing game state, how immutable data enabled features, and much more!

Podcast Episode

Ecto Preloads in Phoenix Contexts

Some thoughts about preloading, to make Contexts a little easier to maintain.

https://medium.com/@damonvjanis/ecto-preloads-in-phoenix-contexts-167d11e5405e

Previous page Next page