Build Infrastructure: What It Is, Why You Need It, and How to Use Python to Fuel It

A session at PyCon Ireland 2015

Sunday 25th October, 2015

2:00pm to 2:30pm (DMT)

Buy Tickets Here

Why is developing software so hard? Why is it usually late and why is it so hard to get right? These questions don’t have a simple answer, but one important element is build infrastructure. Building, testing, and deploying software should be as automatic as possible. After all, why should humans do work that a computer can do better?

Giving your team the tools they need to be as productive as they can be and allowing them focus on the important problems is what Build & Infrastructure Engineering is all about. This talk will explain the value that having proper build infrastructure will add to your team and show you how to put the infrastructure and tools in place within a python-based organization.

Na’Tosha started working as the first Build & Infrastructure Developer at Unity Technologies in August of 2010. At that time, the company was still a start-up with 70 very eager employees making a game engine and development toolkit. In her time at Unity, she has developed and deployed two generations of a distributed build farm, transitioned a team to distributed version control and introduced a collaborative development process that involves continuous integration and a heavy reliance on automated testing. The company has since grown to over 350 employees and enjoys much more rapid release cycles, better collaboration between developers, and less stress and frustration for everyone involved, despite the fact that this game engine is now ported to, and actively being shipped for, approximately 20 different platforms.

The presentation is straightforward and will cover the following concepts as important elements of build infrastructure:

  • One-click Builds: A complete and well-integrated build system system that, ideally, integrates with the development tools developers are using every day.
  • Build Automation: A Build Server to automate the build process so that builds for any given version of the codebase can be made quickly and easily in a reliable environment.
  • Continuous Integration: Continuous integration with automated builds on the automated build server.
  • Automated Testing: Leveraging automated testing as a part of continuous integration.
  • Automated Deployment: Finally, automatically built and tested builds can be deployed in an automated way.

The important element here is that each of these topics leads into the next: one-click builds make build automation possible, which in turn makes continuous integration possible, which then allows for automated testing, which finally leads to automated deployment (either triggered by a human or completely automated deployment i.e, nightly builds). For each of these points the author will cover the following:

  • Warning signs that not enough investment has been made in this area
  • The tangible benefits of investing in this area
  • Existing Python-based software solutions that could be leveraged to develop this area (for example, Buildbot a combined buildserver and continuous integration solution)

Throughout the presentation, references will be made to what has (and in some cases has not) worked well at Unity Technologies. This means that the evolution of build infrastructure at Unity Technologies will be referred to as a case study, but the focus of the talk is not company or product-specific.

After this talk, the audience will understand the benefits of proper build infrastructure in a development team as well as common consequences of not having it. They will also be provided with guidance and starting points to begin establishing Python-based infrastructure in their own teams or evaluating where existing infrastructure could be improved.

About the speaker

This person is speaking at this event.
Na'Tosha Bard

Engineering Tools Lead

Na'Tosha Bard is the Lead Build & Infrastructure Developer at Unity Technologies, an industry-leading company that develops a multi-platform game engine and content creation tool used millions of times every month by several hundred thousand developers around the world. She started as the company's first dedicated build engineer in 2010 and now leads a team of Build & Infrastructure Developers responsible for a wide range of tasks ensuring, among other things, the productivity of the development and quality assurance teams within Unity. She has been an avid Linux user for over 10 years and is a strong believer in open­-source software. In her role as Lead Build & Infrastructure Developer at Unity Technologies, she makes heavy use of open-­source solutions and has a history of contributing to various open-source software projects. She spends her spare time blogging and speaking about various technical topics related to software development, games, and gender issues in technology.

Next session in Goldsmith 1 + 2

2:30pm Python & PostgreSQL, a Wonderful Wedding by Stéphane Wirtel

13 attendees

  • Aleksandar Topuzovic
  • diarmuidbourke
  • Tim Kersten
  • Michael Twomey
  • Naomi Ceder
  • Na'Tosha Bard
  • Nicolas Laurance
  • Philip Roche
  • John Moylan
  • Sorcha (Nic Amhalaí) Bowler
  • Maciek S.
  • Keith Gaughan
  • Xevi

2 trackers

  • Neil Kenealy
  • Niall Glynn

Sign in to add slides, notes or videos to this session

Sign in to track this session

PyCon Ireland 2015

Ireland Ireland, Dublin

24th25th October 2015

Tell your friends!

When

Time 2:00pm2:30pm DMT

Date Sun 25th October 2015

Where

Goldsmith 1 + 2, Radisson Blu Royal Hotel

Short URL

lanyrd.com/sdrkyf

Official event site

python.ie/pycon

View the schedule

Share

See something wrong?

Report an issue with this session