PragmaticBookshelf

PragmaticBookshelf

Devtalk Sponsor

Spotlight: Ellie Fairholm and Josep (Pep) Giralt D'Lacoste (Authors) Interview and AMA!

Democratizing Deployment
with Ellie and Pep
@elliefairholm and @Gilacost

Ellie Fairholm and Josep (Pep) Giralt D’Lacoste are on a mission to democratize the process of software deployment and encourage development teams to “fail fast.”

We spoke with Ellie and Pep about their new book for BEAM developers on how to combine development and operations with the goal of creating a frictionless team that delivers frequent small releases.

Engineering Elixir Applications: Navigate Each Stage of Software Delivery with Confidence by Ellie Fairholm and Josep Giralt D’Lacoste

INTERVIEW

Watch to the complete interview here:


WIN!

We’re giving away one of Ellie and Pep’s books to one lucky winner! Simply post a comment or a question in his ask me anything (AMA) below, and the Devtalk bot will randomly pick a winner at a time of the author’s choosing…then automatically update this thread with the results!


Interview Highlights

For those who prefer to read rather than watch or listen, following are highlights from the interview.

On shared responsibility…

The DevOps approach that Ellie and Pep advocate combines continuous integration, delivery, and deployment in a pattern of source, build, test, and deploy. It also has a tendency to democratize software development and build happy teams. There are many compelling reasons to move to a CI/CD pipeline. “If you’ve Dockerized everything, people can quickly spin up the app. You can deploy faster. Ship features faster even if new people come in.” says Ellie.

“If you submit a pull request to the main branch and it’s automatically deployed, you know—everyone knows—that it’s going to be deployed, so everyone is going to be more careful,” Pep muses. If teams can shift towards CI/CD, deployments become routine and manageable. “And then you have healthier teams and there’s more love in the environment because knowledge is shared, problems are shared, and we all take care of each other.”

“Sharing responsibilities, it creates a lot more empathy across teams. It makes teams work, I think, better and more efficiently.” Ellie postulates.

When the documentation is the code you can “let the code base be the source of truth of everything. If you have continuous delivery, you don’t need to ask anyone how the application is deployed,” explains Pep, “just go to the Github workflow…and see how it’s deployed.”

On environment integrity…

Differences in development and production environments often mean bugs in production that can’t be reproduced locally. “Hopefully, [those issues] will be a thing of the past.” says Ellie. “One of the big things that we talk about is environment integrity…using the same tools for development and production. So …you can replicate all production scenarios in development.”

For example, with Docker Swarm, you can use the Docker Compose file for both development and production. One of the downsides is that it’s easy to lock yourself into particular versions of libraries and everything else. Ellie and Pep use tools like Renovate that regularly check your dependencies and submit pull requests to update those dependencies.

On visualizing infrastructure…

Engineering Elixir Applications offers much more than just the practical steps to deliver BEAM applications using a DevOps approach. The authors developed an application for the book that visualizes infrastructure operations. They built a Phoenix LiveView application that “allows you to visualize the different nodes in which availability zones they are deployed. It allows you to see the CPU usage. And then it allows you also to stress the cluster and see the different auto-scaling activities.”

Visualization makes the process much less abstract and more tangible to developers who may not be experienced with deployment-related tasks and information. And while the book uses the BEAM ecosystem for examples, principles like CI/CD, shared responsibility, environment integrity, and Kaizen are universal. For example, no matter the framework, tools, or language, submitting something small frequently and then testing it offers benefits. “You aim small, you fail small.” Pep reminds us.

On writing together…

The couple met while working at the same company six years ago, where they realized they shared a passion for improving deployment practices. And now they are writing a book together about deploying software, which has the potential to be quite stressful.

But just as they automate away friction points to make teams a happier place to be, they automate away some of the pain points of writing together.

“We have our own CDI pipeline for the book, for each chapter, checking all the code in each chapter to make sure it works.” Ellie explains.

They wanted to reproduce the whole infrastructure that was being built in each of the chapters, but decided to do the minimum. “For example, if we have a Terraform module, let’s try to validate, check the format…and try to at least plan the Terraform but not apply it.” says Pep.

Ellie and Pep are able to communicate openly without ego to avoid conflict and make writing a book together a happy experience.

Dave Thomas asks if they guarantee that if you follow CI/CD practices you’ll find love. “Yes, that should be our marketing tagline,” Ellie says, laughing. “Everyone should be in love with each other.” Pep adds with a grin.


Now that you know their story, add Ellie and Pep’s book to your developer toolkit today! Don’t forget you can get 35 percent off with the coupon code devtalk.com!

Engineering Elixir Applications
book-engineering-elixir-applications


Follow the authors:

Ellie Fairholm

Josep Giralt D’Lacoste


YOUR TURN!

We’re now opening up the thread for your questions! Ask Ellie and Pep anything! Please keep it clean and don’t forget: by participating you automatically enter the competition to win one of Ellie and Pep’s ebooks!

Most Liked

DevotionGeo

DevotionGeo

I watched the interview again. I like how humble they are. Their humility and passion for their work are truly inspiring. This book seems like an invaluable resource for Phoenix developers who are interested in enhancing their DevOps practices.

Personally, I find watching the interview as a video much more engaging than reading it as text.

AstonJ

AstonJ

Great interview and it’s nice to see video interviews making a return (and nice to see Dave in them!) :smiley:

shishini

shishini

@elliefairholm

Nice interview and this seems like a very interesting book

My question to the author, is around Dynamic vs Static languages

How do you think Engineering an application written in Dynamic language could different from Static language

Also noting that Elixir is adding a type system how could this impact Engineering Elixir Apps in the future?

Popular In The Spotlight topics Top

PragmaticBookshelf
“Finding the Boundaries” Hero’s Journey with Noel Rappin @noelrappin Even when you’re ultimately right about what the future ho...
New
PragmaticBookshelf
A Hero’s Journey with VM (Vicky) Brasseur @vmbrasseur VM (Vicky) Brasseur, author of Forge Your Future with Open Source, discuss...
New
New
PragmaticBookshelf
Author Spotlight Mike Riley @mriley This month, we turn the spotlight on Mike Riley, author of Portable Python Projects. Mike’s book ...
New
PragmaticBookshelf
Author Spotlight: VM Brasseur @vmbrasseur We have a treat for you today! We turn the spotlight onto Open Source as we sit down with V...
New
PragmaticBookshelf
Author Spotlight: Lauren Maffeo @lmaffeo Businesses own more data than ever before, but it’s of no value if you don’t know how to use...
New
PragmaticBookshelf
Author Spotlight: Peter Ullrich @PJUllrich Data is at the core of every business, but it is useless if nobody can access and analyze ...
New
PragmaticBookshelf
Author Spotlight: Sean Moriarity @seanmor5 Machine learning sounds both magical and difficult, but with the right tools and the right...
New
Margaret
Ask Me Anything with Zach Daniel and Rebecca Le @zachdaniel and @sevenseacat On February 24 and 25, we are giving you a chance to ask...
New
Margaret
Ask Me Anything with Mark Volkmann @mvolkmann On February 24 and 25, we are giving you a chance to ask questions of PragProg author M...
New

Other popular topics Top

siddhant3030
I’m thinking of buying a monitor that I can rotate to use as a vertical monitor? Also, I want to know if someone is using it for program...
New
DevotionGeo
I know that -t flag is used along with -i flag for getting an interactive shell. But I cannot digest what the man page for docker run com...
New
AstonJ
Inspired by this post from @Carter, which languages, frameworks or other tech or tools do you think is killing it right now? :upside_down...
New
AstonJ
In case anyone else is wondering why Ruby 3 doesn’t show when you do asdf list-all ruby :man_facepalming: do this first: asdf plugin-upd...
New
mafinar
Crystal recently reached version 1. I had been following it for awhile but never got to really learn it. Most languages I picked up out o...
New
New
First poster: joeb
The File System Access API with Origin Private File System. WebKit supports new API that makes it possible for web apps to create, open,...
New
First poster: bot
The overengineered Solution to my Pigeon Problem. TL;DR: I built a wifi-equipped water gun to shoot the pigeons on my balcony, controlle...
New
First poster: bot
Large Language Models like ChatGPT say The Darnedest Things. The Errors They MakeWhy We Need to Document Them, and What We Have Decided ...
New
New