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?

Where Next?

Popular Community topics Top

New
PragmaticBookshelf
“Finding the Boundaries” Hero’s Journey with Noel Rappin @noelrappin Even when you’re ultimately right about what the future ho...
New
PragmaticBookshelf
Author Spotlight James Stanier @jstanier James Stanier, author of Effective Remote Work , discusses how to rethink the office as we e...
New
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: Tammy Coron @Paradox927 Gaming, and writing games in particular, is about passion, vision, experience, and immersio...
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: Leemay Nassery @leemay You do your best new feature development when you’re not afraid to be wrong. We sat down and...
New
Margaret
Ask Me Anything with Ashley Peacock @ashleypeacock On February 27 and 28, we are giving you a chance to ask questions of PragProg aut...
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
AstonJ
I ended up cancelling my Moonlander order as I think it’s just going to be a bit too bulky for me. I think the Planck and the Preonic (o...
New
AstonJ
Do the test and post your score :nerd_face: :keyboard: If possible, please add info such as the keyboard you’re using, the layout (Qw...
New
foxtrottwist
A few weeks ago I started using Warp a terminal written in rust. Though in it’s current state of development there are a few caveats (tab...
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
PragmaticBookshelf
Author Spotlight Rebecca Skinner @RebeccaSkinner Welcome to our latest author spotlight, where we sit down with Rebecca Skinner, auth...
New
PragmaticBookshelf
Author Spotlight: Tammy Coron @Paradox927 Gaming, and writing games in particular, is about passion, vision, experience, and immersio...
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
AstonJ
Curious what kind of results others are getting, I think actually prefer the 7B model to the 32B model, not only is it faster but the qua...
New
Fl4m3Ph03n1x
Background Lately I am in a quest to find a good quality TTS ai generation tool to run locally in order to create audio for some videos I...
New

Latest in Engineering Elixir Applications