SlideShare ist ein Scribd-Unternehmen logo
1 von 36
Downloaden Sie, um offline zu lesen
Build Engineering
The Evolution of Build Engineering in
Managing Open Source
Panelists
● Pete Garcin, Senior Product Manager, ActiveState
● Shaun Lowry, Build Engineering Lead, ActiveState
Build Engineering
Evolution in Managing OS
Build Engineering and its Role in
Managing Open Source
Pete Garcin, ActiveState
Pete Garcin
Senior Product Manager
ActiveState
Platform Presentation
Build Engineering
Evolution in Managing OS
Track-record: 97% of Fortune 1000, 20+ years open source
Polyglot: 5 languages - Python, Perl, Tcl, Go, Ruby
Runtime Focus: concept to development to production
Build Engineering
Evolution in Managing OS
Open Source in the Enterprise
Applications built with Open Source
Have Vulnerabilities
Not Compliant
Build Engineering
Evolution in Managing OS
Open Source in the Enterprise
More sources, more attack surface, more repositories to manage
Build Engineering
Evolution in Managing OS
Build Engineering Defined
Who? Developers with:
● Ecosystem knowledge
● Systems knowledge
● Process knowledge
What? Core tasks are:
● Locating canonical sources of libraries, languages, tools, etc.
● Compiling those sources into artifacts.
● Packaging those artifacts for distribution.
Build Engineering
Evolution in Managing OS
Build Engineering in Relation to SDLC
Build Engineering
Evolution in Managing OS
SDLCMissing LinkBuild Engineer
Hidden Costs
75%
Build Engineering
Evolution in Managing OS
Managing
dependencies
Automating Build Engineering
● Environment configuration
● Dependency management
● Build execution and storage.
Build Engineering
Evolution in Managing OS
What are the challenges?
● Automate, systematize, componentize builds
● Seamless, effortless and reproducible across your
team and organization.
● Reproducibility, critical for testing, deployment and
development — without it, nobody is speaking the
same language.
Build Engineering
Evolution in Managing OS
Challenges in Build Engineering
Environment
Configuration
Dependency
Management
Build
Reproducibility
Build Engineering
Evolution in Managing OS
Environment Configuration
Compiler
version
Toolchain
setup
Language /Tool
versions Setup
Build Engineering
Evolution in Managing OS
Dependency Management
Build Engineering
Evolution in Managing OS
Version
Pinning
Binary Sources
Dependency
Chains
Monitoring
CVEs, Licenses
Automation Wins
Build Engineering
Evolution in Managing OS
Developer
Time
Developer
Sanity
Shrink
Tech Debt
Potential Features + Automation
● “Free” speculative builds
● Build revisions as source control — can be forked,
reverted, merged, etc.
● Integration with your CI
● No more local hacks, “Franken-builds”, etc. —
everything is audited and guaranteed
Build Engineering
Evolution in Managing OS
ActiveState Platform
Build Engineering
Evolution in Managing OS
Build Engineering - Why It’s Hard
and Why You Still Need It
Shaun Lowry, ActiveState
Shaun Lowry
Build Engineering Lead
ActiveState
Platform Presentation
Build Engineering
Evolution in Managing OS
Third-party software
● Many benefits of using open source components
● OSS or licensed components offer shortcuts and
competitive advantage
● How to incorporate 3rd-party components
Build Engineering
Evolution in Managing OS
What’s so hard?
Compiling disparate OSS components
● Not all authors use the same tools
● Not all authors care about your platform(s)
● Authors might be great SMEs, but not great engineers
Build Engineering
Evolution in Managing OS
Compilers
● Different compilers disallow different code
● Same for compiler versions
● Some even have different ABIs between versions
(GCC4 vs GCC5)
Build Engineering
Evolution in Managing OS
Build Tools
setup.py
Build Engineering
Evolution in Managing OS
Autotools CustomCmakeBazel
Dependencies
ACTIVEPYTHON
Build Engineering
Evolution in Managing OS
C libraries
● Assumed to be on the system
○ Sometimes incompatible (e.g. libffi, libgdbm)
● Source included with package
○ Do not keep pace with security updates
● Download source at build time (!)
Build Engineering
Evolution in Managing OS
Example
● Builds using bazel
○ Tensorflow versions sensitive to bazel version
○ Take hours
● Many variations, optional support
○ for additional instruction sets (SSE, AVX, AVX2)
○ for GPU acceleration (CUDA)
Build Engineering
Evolution in Managing OS
Why?
That’s scary! What’s wrong with just downloading free stuff?
Build Engineering
Evolution in Managing OS
● Was that zipfile/wheel/magic binary
really compiled from that source?
● What else is in there?
● How many people are you trusting?
● Do your customers trust all of them?
Build Engineering
Evolution in Managing OS
● OS or runtime dependencies
○ Glibc, ucrt, msvcrt etc.
● Uniform compiler
● Hardware dependencies
○ Instruction set optimisations
○ GPU availability
Build Engineering
Evolution in Managing OS
Bugs
● What happens when one hits a
customer?
● How quickly can you address it?
Licenses
● Are your licenses compatible with
every 3rd-party package?
● What about the packages they bring
with them?
Build Engineering
Evolution in Managing OS
Example: wand
● Python binding to ImageMagick
○ ImageMagick has different licenses at different
versions
● ImageMagick needs Ghostscript for PDF
manipulation
○ Ghostscript is AGPL
Build Engineering
Evolution in Managing OS
So what should I do?
● Building OSS from source can be hard to deal with
● Not building from source can be worse
● Incorporate OSS builds into your own pipeline
● Outsource OSS builds to a single trusted source
Build Engineering
Evolution in Managing OS
Q & A
What’s Next
● Watch a demo:
https://www.youtube.com/watch?v=c5AIxN9ehrI
● Get a demo marketing@activestate.com
● Contact us for the language build you need:
platform@activestate.com
Tel: 1.866.631.4581
Website: www.activestate.com
Twitter: @activestate
Facebook: /activestatesoftware
Platform Presentation
Where to find us

Weitere ähnliche Inhalte

Was ist angesagt?

How to Work Efficiently in a Hybrid Git-Perforce Environment
How to Work Efficiently in a Hybrid Git-Perforce EnvironmentHow to Work Efficiently in a Hybrid Git-Perforce Environment
How to Work Efficiently in a Hybrid Git-Perforce EnvironmentPerforce
 
Tech Talk #5 : CI/CD FOR MOBILE DEVELOPMENT - Đinh Ngọc Kiên
Tech Talk #5 : CI/CD FOR MOBILE DEVELOPMENT - Đinh Ngọc KiênTech Talk #5 : CI/CD FOR MOBILE DEVELOPMENT - Đinh Ngọc Kiên
Tech Talk #5 : CI/CD FOR MOBILE DEVELOPMENT - Đinh Ngọc KiênNexus FrontierTech
 
Last 2019: Designing a DevOps Dependency Diagram to Decide Development Direction
Last 2019: Designing a DevOps Dependency Diagram to Decide Development DirectionLast 2019: Designing a DevOps Dependency Diagram to Decide Development Direction
Last 2019: Designing a DevOps Dependency Diagram to Decide Development DirectionMark Grebler
 
Why every Tester should also aspire to be a Developer on his project!-Sandee...
Why every Tester should  also aspire to be a Developer on his project!-Sandee...Why every Tester should  also aspire to be a Developer on his project!-Sandee...
Why every Tester should also aspire to be a Developer on his project!-Sandee...bhumika2108
 
Bigger & Better RnD - GeeCON.cz 2014
Bigger & Better RnD - GeeCON.cz 2014Bigger & Better RnD - GeeCON.cz 2014
Bigger & Better RnD - GeeCON.cz 2014Juraj Michálek
 
Using Git/Gerrit and Jenkins to Manage the Code Review Processord
Using Git/Gerrit and Jenkins to Manage the Code Review ProcessordUsing Git/Gerrit and Jenkins to Manage the Code Review Processord
Using Git/Gerrit and Jenkins to Manage the Code Review ProcessordMarc Karasek
 
Let's Go @ St. Louis CocoaHeads
Let's Go @ St. Louis CocoaHeadsLet's Go @ St. Louis CocoaHeads
Let's Go @ St. Louis CocoaHeadsPaul Balogh
 
[Webinar] The Frog And The Butler: CI Pipelines For Modern DevOps
[Webinar] The Frog And The Butler: CI Pipelines For Modern DevOps[Webinar] The Frog And The Butler: CI Pipelines For Modern DevOps
[Webinar] The Frog And The Butler: CI Pipelines For Modern DevOpsBaruch Sadogursky
 
Large Scale Development with Git and Gerrit - EclipseCon Europe 2012
Large Scale Development with Git and Gerrit - EclipseCon Europe 2012Large Scale Development with Git and Gerrit - EclipseCon Europe 2012
Large Scale Development with Git and Gerrit - EclipseCon Europe 2012msohn
 
Simplified CI/CD Flows for Salesforce via SFDX - Downunder Dreamin - Sydney
Simplified CI/CD Flows for Salesforce via SFDX - Downunder Dreamin - SydneySimplified CI/CD Flows for Salesforce via SFDX - Downunder Dreamin - Sydney
Simplified CI/CD Flows for Salesforce via SFDX - Downunder Dreamin - SydneyAbhinav Gupta
 
Continuous integration for Ruby on Rails
Continuous integration for Ruby on RailsContinuous integration for Ruby on Rails
Continuous integration for Ruby on RailsDavid Paluy
 
Creating a reasonable project boilerplate
Creating a reasonable project boilerplateCreating a reasonable project boilerplate
Creating a reasonable project boilerplateStanislav Petrov
 
Continuously Break The Android
Continuously Break The AndroidContinuously Break The Android
Continuously Break The AndroidHasan Hosgel
 
[Public] gerrit concepts and workflows
[Public] gerrit   concepts and workflows[Public] gerrit   concepts and workflows
[Public] gerrit concepts and workflowsYanbin Kong
 
tantangan menjadi developer di abad 21
tantangan menjadi developer di abad 21tantangan menjadi developer di abad 21
tantangan menjadi developer di abad 21DicodingEvent
 
A brief history of automation in Software Engineering
A brief history of automation in Software EngineeringA brief history of automation in Software Engineering
A brief history of automation in Software EngineeringGeorg Buske
 
Agile .NET Development with BDD and Continuous Integration
Agile .NET Development with BDD and Continuous IntegrationAgile .NET Development with BDD and Continuous Integration
Agile .NET Development with BDD and Continuous IntegrationQuan Truong Anh
 

Was ist angesagt? (20)

Gerrit Code Review
Gerrit Code ReviewGerrit Code Review
Gerrit Code Review
 
How to Work Efficiently in a Hybrid Git-Perforce Environment
How to Work Efficiently in a Hybrid Git-Perforce EnvironmentHow to Work Efficiently in a Hybrid Git-Perforce Environment
How to Work Efficiently in a Hybrid Git-Perforce Environment
 
Tech Talk #5 : CI/CD FOR MOBILE DEVELOPMENT - Đinh Ngọc Kiên
Tech Talk #5 : CI/CD FOR MOBILE DEVELOPMENT - Đinh Ngọc KiênTech Talk #5 : CI/CD FOR MOBILE DEVELOPMENT - Đinh Ngọc Kiên
Tech Talk #5 : CI/CD FOR MOBILE DEVELOPMENT - Đinh Ngọc Kiên
 
Last 2019: Designing a DevOps Dependency Diagram to Decide Development Direction
Last 2019: Designing a DevOps Dependency Diagram to Decide Development DirectionLast 2019: Designing a DevOps Dependency Diagram to Decide Development Direction
Last 2019: Designing a DevOps Dependency Diagram to Decide Development Direction
 
Why every Tester should also aspire to be a Developer on his project!-Sandee...
Why every Tester should  also aspire to be a Developer on his project!-Sandee...Why every Tester should  also aspire to be a Developer on his project!-Sandee...
Why every Tester should also aspire to be a Developer on his project!-Sandee...
 
Bigger & Better RnD - GeeCON.cz 2014
Bigger & Better RnD - GeeCON.cz 2014Bigger & Better RnD - GeeCON.cz 2014
Bigger & Better RnD - GeeCON.cz 2014
 
Using Git/Gerrit and Jenkins to Manage the Code Review Processord
Using Git/Gerrit and Jenkins to Manage the Code Review ProcessordUsing Git/Gerrit and Jenkins to Manage the Code Review Processord
Using Git/Gerrit and Jenkins to Manage the Code Review Processord
 
Let's Go @ St. Louis CocoaHeads
Let's Go @ St. Louis CocoaHeadsLet's Go @ St. Louis CocoaHeads
Let's Go @ St. Louis CocoaHeads
 
[Webinar] The Frog And The Butler: CI Pipelines For Modern DevOps
[Webinar] The Frog And The Butler: CI Pipelines For Modern DevOps[Webinar] The Frog And The Butler: CI Pipelines For Modern DevOps
[Webinar] The Frog And The Butler: CI Pipelines For Modern DevOps
 
What is dev ops?
What is dev ops?What is dev ops?
What is dev ops?
 
C++ in our world
C++ in our worldC++ in our world
C++ in our world
 
Large Scale Development with Git and Gerrit - EclipseCon Europe 2012
Large Scale Development with Git and Gerrit - EclipseCon Europe 2012Large Scale Development with Git and Gerrit - EclipseCon Europe 2012
Large Scale Development with Git and Gerrit - EclipseCon Europe 2012
 
Simplified CI/CD Flows for Salesforce via SFDX - Downunder Dreamin - Sydney
Simplified CI/CD Flows for Salesforce via SFDX - Downunder Dreamin - SydneySimplified CI/CD Flows for Salesforce via SFDX - Downunder Dreamin - Sydney
Simplified CI/CD Flows for Salesforce via SFDX - Downunder Dreamin - Sydney
 
Continuous integration for Ruby on Rails
Continuous integration for Ruby on RailsContinuous integration for Ruby on Rails
Continuous integration for Ruby on Rails
 
Creating a reasonable project boilerplate
Creating a reasonable project boilerplateCreating a reasonable project boilerplate
Creating a reasonable project boilerplate
 
Continuously Break The Android
Continuously Break The AndroidContinuously Break The Android
Continuously Break The Android
 
[Public] gerrit concepts and workflows
[Public] gerrit   concepts and workflows[Public] gerrit   concepts and workflows
[Public] gerrit concepts and workflows
 
tantangan menjadi developer di abad 21
tantangan menjadi developer di abad 21tantangan menjadi developer di abad 21
tantangan menjadi developer di abad 21
 
A brief history of automation in Software Engineering
A brief history of automation in Software EngineeringA brief history of automation in Software Engineering
A brief history of automation in Software Engineering
 
Agile .NET Development with BDD and Continuous Integration
Agile .NET Development with BDD and Continuous IntegrationAgile .NET Development with BDD and Continuous Integration
Agile .NET Development with BDD and Continuous Integration
 

Ähnlich wie The Evolving Role of Build Engineering in Managing Open Source

Why Pay for Open Source Linux? Avoid the Hidden Cost of DIY
Why Pay for Open Source Linux? Avoid the Hidden Cost of DIYWhy Pay for Open Source Linux? Avoid the Hidden Cost of DIY
Why Pay for Open Source Linux? Avoid the Hidden Cost of DIYEnterprise Management Associates
 
RISC-V Summit 2019: Next-generation IDE for your RISC-V Product in 20 Minutes
RISC-V Summit 2019: Next-generation IDE for your RISC-V Product in 20 MinutesRISC-V Summit 2019: Next-generation IDE for your RISC-V Product in 20 Minutes
RISC-V Summit 2019: Next-generation IDE for your RISC-V Product in 20 MinutesIvan Kravets
 
An Introduction To Linux Development Environment
An Introduction To Linux Development EnvironmentAn Introduction To Linux Development Environment
An Introduction To Linux Development EnvironmentS. M. Hossein Hamidi
 
Efficient platform engineering with Microk8s & gopaddle.pdf
Efficient platform engineering  with  Microk8s & gopaddle.pdfEfficient platform engineering  with  Microk8s & gopaddle.pdf
Efficient platform engineering with Microk8s & gopaddle.pdfVinothini Raju
 
Code, ci, infrastructure - the gophers way
Code, ci, infrastructure - the gophers wayCode, ci, infrastructure - the gophers way
Code, ci, infrastructure - the gophers wayAlex Baitov
 
Understanding the GitOps Workflow and CICD Pipeline - What It Is, Why It Matt...
Understanding the GitOps Workflow and CICD Pipeline - What It Is, Why It Matt...Understanding the GitOps Workflow and CICD Pipeline - What It Is, Why It Matt...
Understanding the GitOps Workflow and CICD Pipeline - What It Is, Why It Matt...Gibran Badrulzaman
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous IntegrationXPDays
 
Source Control with Domino Designer 8.5.3 and Git (DanNotes, November 28, 2012)
Source Control with Domino Designer 8.5.3 and Git (DanNotes, November 28, 2012)Source Control with Domino Designer 8.5.3 and Git (DanNotes, November 28, 2012)
Source Control with Domino Designer 8.5.3 and Git (DanNotes, November 28, 2012)Per Henrik Lausten
 
[APIdays Singapore 2019] Managing the API lifecycle with Open Source Technolo...
[APIdays Singapore 2019] Managing the API lifecycle with Open Source Technolo...[APIdays Singapore 2019] Managing the API lifecycle with Open Source Technolo...
[APIdays Singapore 2019] Managing the API lifecycle with Open Source Technolo...WSO2
 
Preparing for Neo - Singapore OutSystems User Group October 2022 Meetup
Preparing for Neo - Singapore OutSystems User Group October 2022 MeetupPreparing for Neo - Singapore OutSystems User Group October 2022 Meetup
Preparing for Neo - Singapore OutSystems User Group October 2022 MeetupYashrajNayak4
 
Start your open source project
Start your open source projectStart your open source project
Start your open source projectAhmed Othman
 
Enterprise-Grade DevOps Solutions for a Start Up Budget
Enterprise-Grade DevOps Solutions for a Start Up BudgetEnterprise-Grade DevOps Solutions for a Start Up Budget
Enterprise-Grade DevOps Solutions for a Start Up BudgetDevOps.com
 
Why the yocto project for my io t project elc_edinburgh_2018
Why the yocto project for my io t project elc_edinburgh_2018Why the yocto project for my io t project elc_edinburgh_2018
Why the yocto project for my io t project elc_edinburgh_2018Mender.io
 
The adoption of FOSS workfows in commercial software development: the case of...
The adoption of FOSS workfows in commercial software development: the case of...The adoption of FOSS workfows in commercial software development: the case of...
The adoption of FOSS workfows in commercial software development: the case of...dmgerman
 
Bootify Yyour App from Zero to Hero
Bootify Yyour App from Zero to HeroBootify Yyour App from Zero to Hero
Bootify Yyour App from Zero to HeroEPAM
 
Designing flexible apps deployable to App Engine, Cloud Functions, or Cloud Run
Designing flexible apps deployable to App Engine, Cloud Functions, or Cloud RunDesigning flexible apps deployable to App Engine, Cloud Functions, or Cloud Run
Designing flexible apps deployable to App Engine, Cloud Functions, or Cloud Runwesley chun
 
Webinar: Capabilities, Confidence and Community – What Flux GA Means for You
Webinar: Capabilities, Confidence and Community – What Flux GA Means for YouWebinar: Capabilities, Confidence and Community – What Flux GA Means for You
Webinar: Capabilities, Confidence and Community – What Flux GA Means for YouWeaveworks
 
INTERFACE, by apidays - Crossing the low-code and pro-code chasm: a platform...
INTERFACE, by apidays  - Crossing the low-code and pro-code chasm: a platform...INTERFACE, by apidays  - Crossing the low-code and pro-code chasm: a platform...
INTERFACE, by apidays - Crossing the low-code and pro-code chasm: a platform...apidays
 

Ähnlich wie The Evolving Role of Build Engineering in Managing Open Source (20)

Why Pay for Open Source Linux? Avoid the Hidden Cost of DIY
Why Pay for Open Source Linux? Avoid the Hidden Cost of DIYWhy Pay for Open Source Linux? Avoid the Hidden Cost of DIY
Why Pay for Open Source Linux? Avoid the Hidden Cost of DIY
 
Arif_Shaik_CV
Arif_Shaik_CVArif_Shaik_CV
Arif_Shaik_CV
 
RISC-V Summit 2019: Next-generation IDE for your RISC-V Product in 20 Minutes
RISC-V Summit 2019: Next-generation IDE for your RISC-V Product in 20 MinutesRISC-V Summit 2019: Next-generation IDE for your RISC-V Product in 20 Minutes
RISC-V Summit 2019: Next-generation IDE for your RISC-V Product in 20 Minutes
 
An Introduction To Linux Development Environment
An Introduction To Linux Development EnvironmentAn Introduction To Linux Development Environment
An Introduction To Linux Development Environment
 
Efficient platform engineering with Microk8s & gopaddle.pdf
Efficient platform engineering  with  Microk8s & gopaddle.pdfEfficient platform engineering  with  Microk8s & gopaddle.pdf
Efficient platform engineering with Microk8s & gopaddle.pdf
 
Code, ci, infrastructure - the gophers way
Code, ci, infrastructure - the gophers wayCode, ci, infrastructure - the gophers way
Code, ci, infrastructure - the gophers way
 
Understanding the GitOps Workflow and CICD Pipeline - What It Is, Why It Matt...
Understanding the GitOps Workflow and CICD Pipeline - What It Is, Why It Matt...Understanding the GitOps Workflow and CICD Pipeline - What It Is, Why It Matt...
Understanding the GitOps Workflow and CICD Pipeline - What It Is, Why It Matt...
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
 
Source Control with Domino Designer 8.5.3 and Git (DanNotes, November 28, 2012)
Source Control with Domino Designer 8.5.3 and Git (DanNotes, November 28, 2012)Source Control with Domino Designer 8.5.3 and Git (DanNotes, November 28, 2012)
Source Control with Domino Designer 8.5.3 and Git (DanNotes, November 28, 2012)
 
[APIdays Singapore 2019] Managing the API lifecycle with Open Source Technolo...
[APIdays Singapore 2019] Managing the API lifecycle with Open Source Technolo...[APIdays Singapore 2019] Managing the API lifecycle with Open Source Technolo...
[APIdays Singapore 2019] Managing the API lifecycle with Open Source Technolo...
 
Preparing for Neo - Singapore OutSystems User Group October 2022 Meetup
Preparing for Neo - Singapore OutSystems User Group October 2022 MeetupPreparing for Neo - Singapore OutSystems User Group October 2022 Meetup
Preparing for Neo - Singapore OutSystems User Group October 2022 Meetup
 
Vijay_Teekinavar_Kallesh
Vijay_Teekinavar_KalleshVijay_Teekinavar_Kallesh
Vijay_Teekinavar_Kallesh
 
Start your open source project
Start your open source projectStart your open source project
Start your open source project
 
Enterprise-Grade DevOps Solutions for a Start Up Budget
Enterprise-Grade DevOps Solutions for a Start Up BudgetEnterprise-Grade DevOps Solutions for a Start Up Budget
Enterprise-Grade DevOps Solutions for a Start Up Budget
 
Why the yocto project for my io t project elc_edinburgh_2018
Why the yocto project for my io t project elc_edinburgh_2018Why the yocto project for my io t project elc_edinburgh_2018
Why the yocto project for my io t project elc_edinburgh_2018
 
The adoption of FOSS workfows in commercial software development: the case of...
The adoption of FOSS workfows in commercial software development: the case of...The adoption of FOSS workfows in commercial software development: the case of...
The adoption of FOSS workfows in commercial software development: the case of...
 
Bootify Yyour App from Zero to Hero
Bootify Yyour App from Zero to HeroBootify Yyour App from Zero to Hero
Bootify Yyour App from Zero to Hero
 
Designing flexible apps deployable to App Engine, Cloud Functions, or Cloud Run
Designing flexible apps deployable to App Engine, Cloud Functions, or Cloud RunDesigning flexible apps deployable to App Engine, Cloud Functions, or Cloud Run
Designing flexible apps deployable to App Engine, Cloud Functions, or Cloud Run
 
Webinar: Capabilities, Confidence and Community – What Flux GA Means for You
Webinar: Capabilities, Confidence and Community – What Flux GA Means for YouWebinar: Capabilities, Confidence and Community – What Flux GA Means for You
Webinar: Capabilities, Confidence and Community – What Flux GA Means for You
 
INTERFACE, by apidays - Crossing the low-code and pro-code chasm: a platform...
INTERFACE, by apidays  - Crossing the low-code and pro-code chasm: a platform...INTERFACE, by apidays  - Crossing the low-code and pro-code chasm: a platform...
INTERFACE, by apidays - Crossing the low-code and pro-code chasm: a platform...
 

Mehr von DevOps.com

Modernizing on IBM Z Made Easier With Open Source Software
Modernizing on IBM Z Made Easier With Open Source SoftwareModernizing on IBM Z Made Easier With Open Source Software
Modernizing on IBM Z Made Easier With Open Source SoftwareDevOps.com
 
Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...
Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...
Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...DevOps.com
 
Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...
Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...
Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...DevOps.com
 
Next Generation Vulnerability Assessment Using Datadog and Snyk
Next Generation Vulnerability Assessment Using Datadog and SnykNext Generation Vulnerability Assessment Using Datadog and Snyk
Next Generation Vulnerability Assessment Using Datadog and SnykDevOps.com
 
Vulnerability Discovery in the Cloud
Vulnerability Discovery in the CloudVulnerability Discovery in the Cloud
Vulnerability Discovery in the CloudDevOps.com
 
2021 Open Source Governance: Top Ten Trends and Predictions
2021 Open Source Governance: Top Ten Trends and Predictions2021 Open Source Governance: Top Ten Trends and Predictions
2021 Open Source Governance: Top Ten Trends and PredictionsDevOps.com
 
A New Year’s Ransomware Resolution
A New Year’s Ransomware ResolutionA New Year’s Ransomware Resolution
A New Year’s Ransomware ResolutionDevOps.com
 
Getting Started with Runtime Security on Azure Kubernetes Service (AKS)
Getting Started with Runtime Security on Azure Kubernetes Service (AKS)Getting Started with Runtime Security on Azure Kubernetes Service (AKS)
Getting Started with Runtime Security on Azure Kubernetes Service (AKS)DevOps.com
 
Don't Panic! Effective Incident Response
Don't Panic! Effective Incident ResponseDon't Panic! Effective Incident Response
Don't Panic! Effective Incident ResponseDevOps.com
 
Creating a Culture of Chaos: Chaos Engineering Is Not Just Tools, It's Culture
Creating a Culture of Chaos: Chaos Engineering Is Not Just Tools, It's CultureCreating a Culture of Chaos: Chaos Engineering Is Not Just Tools, It's Culture
Creating a Culture of Chaos: Chaos Engineering Is Not Just Tools, It's CultureDevOps.com
 
Role Based Access Controls (RBAC) for SSH and Kubernetes Access with Teleport
Role Based Access Controls (RBAC) for SSH and Kubernetes Access with TeleportRole Based Access Controls (RBAC) for SSH and Kubernetes Access with Teleport
Role Based Access Controls (RBAC) for SSH and Kubernetes Access with TeleportDevOps.com
 
Monitoring Serverless Applications with Datadog
Monitoring Serverless Applications with DatadogMonitoring Serverless Applications with Datadog
Monitoring Serverless Applications with DatadogDevOps.com
 
Deliver your App Anywhere … Publicly or Privately
Deliver your App Anywhere … Publicly or PrivatelyDeliver your App Anywhere … Publicly or Privately
Deliver your App Anywhere … Publicly or PrivatelyDevOps.com
 
Securing medical apps in the age of covid final
Securing medical apps in the age of covid finalSecuring medical apps in the age of covid final
Securing medical apps in the age of covid finalDevOps.com
 
How to Build a Healthy On-Call Culture
How to Build a Healthy On-Call CultureHow to Build a Healthy On-Call Culture
How to Build a Healthy On-Call CultureDevOps.com
 
The Evolving Role of the Developer in 2021
The Evolving Role of the Developer in 2021The Evolving Role of the Developer in 2021
The Evolving Role of the Developer in 2021DevOps.com
 
Service Mesh: Two Big Words But Do You Need It?
Service Mesh: Two Big Words But Do You Need It?Service Mesh: Two Big Words But Do You Need It?
Service Mesh: Two Big Words But Do You Need It?DevOps.com
 
Secure Data Sharing in OpenShift Environments
Secure Data Sharing in OpenShift EnvironmentsSecure Data Sharing in OpenShift Environments
Secure Data Sharing in OpenShift EnvironmentsDevOps.com
 
How to Govern Identities and Access in Cloud Infrastructure: AppsFlyer Case S...
How to Govern Identities and Access in Cloud Infrastructure: AppsFlyer Case S...How to Govern Identities and Access in Cloud Infrastructure: AppsFlyer Case S...
How to Govern Identities and Access in Cloud Infrastructure: AppsFlyer Case S...DevOps.com
 
Elevate Your Enterprise Python and R AI, ML Software Strategy with Anaconda T...
Elevate Your Enterprise Python and R AI, ML Software Strategy with Anaconda T...Elevate Your Enterprise Python and R AI, ML Software Strategy with Anaconda T...
Elevate Your Enterprise Python and R AI, ML Software Strategy with Anaconda T...DevOps.com
 

Mehr von DevOps.com (20)

Modernizing on IBM Z Made Easier With Open Source Software
Modernizing on IBM Z Made Easier With Open Source SoftwareModernizing on IBM Z Made Easier With Open Source Software
Modernizing on IBM Z Made Easier With Open Source Software
 
Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...
Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...
Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...
 
Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...
Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...
Comparing Microsoft SQL Server 2019 Performance Across Various Kubernetes Pla...
 
Next Generation Vulnerability Assessment Using Datadog and Snyk
Next Generation Vulnerability Assessment Using Datadog and SnykNext Generation Vulnerability Assessment Using Datadog and Snyk
Next Generation Vulnerability Assessment Using Datadog and Snyk
 
Vulnerability Discovery in the Cloud
Vulnerability Discovery in the CloudVulnerability Discovery in the Cloud
Vulnerability Discovery in the Cloud
 
2021 Open Source Governance: Top Ten Trends and Predictions
2021 Open Source Governance: Top Ten Trends and Predictions2021 Open Source Governance: Top Ten Trends and Predictions
2021 Open Source Governance: Top Ten Trends and Predictions
 
A New Year’s Ransomware Resolution
A New Year’s Ransomware ResolutionA New Year’s Ransomware Resolution
A New Year’s Ransomware Resolution
 
Getting Started with Runtime Security on Azure Kubernetes Service (AKS)
Getting Started with Runtime Security on Azure Kubernetes Service (AKS)Getting Started with Runtime Security on Azure Kubernetes Service (AKS)
Getting Started with Runtime Security on Azure Kubernetes Service (AKS)
 
Don't Panic! Effective Incident Response
Don't Panic! Effective Incident ResponseDon't Panic! Effective Incident Response
Don't Panic! Effective Incident Response
 
Creating a Culture of Chaos: Chaos Engineering Is Not Just Tools, It's Culture
Creating a Culture of Chaos: Chaos Engineering Is Not Just Tools, It's CultureCreating a Culture of Chaos: Chaos Engineering Is Not Just Tools, It's Culture
Creating a Culture of Chaos: Chaos Engineering Is Not Just Tools, It's Culture
 
Role Based Access Controls (RBAC) for SSH and Kubernetes Access with Teleport
Role Based Access Controls (RBAC) for SSH and Kubernetes Access with TeleportRole Based Access Controls (RBAC) for SSH and Kubernetes Access with Teleport
Role Based Access Controls (RBAC) for SSH and Kubernetes Access with Teleport
 
Monitoring Serverless Applications with Datadog
Monitoring Serverless Applications with DatadogMonitoring Serverless Applications with Datadog
Monitoring Serverless Applications with Datadog
 
Deliver your App Anywhere … Publicly or Privately
Deliver your App Anywhere … Publicly or PrivatelyDeliver your App Anywhere … Publicly or Privately
Deliver your App Anywhere … Publicly or Privately
 
Securing medical apps in the age of covid final
Securing medical apps in the age of covid finalSecuring medical apps in the age of covid final
Securing medical apps in the age of covid final
 
How to Build a Healthy On-Call Culture
How to Build a Healthy On-Call CultureHow to Build a Healthy On-Call Culture
How to Build a Healthy On-Call Culture
 
The Evolving Role of the Developer in 2021
The Evolving Role of the Developer in 2021The Evolving Role of the Developer in 2021
The Evolving Role of the Developer in 2021
 
Service Mesh: Two Big Words But Do You Need It?
Service Mesh: Two Big Words But Do You Need It?Service Mesh: Two Big Words But Do You Need It?
Service Mesh: Two Big Words But Do You Need It?
 
Secure Data Sharing in OpenShift Environments
Secure Data Sharing in OpenShift EnvironmentsSecure Data Sharing in OpenShift Environments
Secure Data Sharing in OpenShift Environments
 
How to Govern Identities and Access in Cloud Infrastructure: AppsFlyer Case S...
How to Govern Identities and Access in Cloud Infrastructure: AppsFlyer Case S...How to Govern Identities and Access in Cloud Infrastructure: AppsFlyer Case S...
How to Govern Identities and Access in Cloud Infrastructure: AppsFlyer Case S...
 
Elevate Your Enterprise Python and R AI, ML Software Strategy with Anaconda T...
Elevate Your Enterprise Python and R AI, ML Software Strategy with Anaconda T...Elevate Your Enterprise Python and R AI, ML Software Strategy with Anaconda T...
Elevate Your Enterprise Python and R AI, ML Software Strategy with Anaconda T...
 

Kürzlich hochgeladen

Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 

Kürzlich hochgeladen (20)

Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 

The Evolving Role of Build Engineering in Managing Open Source

  • 1. Build Engineering The Evolution of Build Engineering in Managing Open Source
  • 2. Panelists ● Pete Garcin, Senior Product Manager, ActiveState ● Shaun Lowry, Build Engineering Lead, ActiveState Build Engineering Evolution in Managing OS
  • 3. Build Engineering and its Role in Managing Open Source Pete Garcin, ActiveState
  • 4. Pete Garcin Senior Product Manager ActiveState Platform Presentation Build Engineering Evolution in Managing OS
  • 5. Track-record: 97% of Fortune 1000, 20+ years open source Polyglot: 5 languages - Python, Perl, Tcl, Go, Ruby Runtime Focus: concept to development to production Build Engineering Evolution in Managing OS
  • 6. Open Source in the Enterprise Applications built with Open Source Have Vulnerabilities Not Compliant Build Engineering Evolution in Managing OS
  • 7. Open Source in the Enterprise More sources, more attack surface, more repositories to manage Build Engineering Evolution in Managing OS
  • 8. Build Engineering Defined Who? Developers with: ● Ecosystem knowledge ● Systems knowledge ● Process knowledge What? Core tasks are: ● Locating canonical sources of libraries, languages, tools, etc. ● Compiling those sources into artifacts. ● Packaging those artifacts for distribution. Build Engineering Evolution in Managing OS
  • 9. Build Engineering in Relation to SDLC Build Engineering Evolution in Managing OS SDLCMissing LinkBuild Engineer
  • 10. Hidden Costs 75% Build Engineering Evolution in Managing OS Managing dependencies
  • 11. Automating Build Engineering ● Environment configuration ● Dependency management ● Build execution and storage. Build Engineering Evolution in Managing OS
  • 12. What are the challenges? ● Automate, systematize, componentize builds ● Seamless, effortless and reproducible across your team and organization. ● Reproducibility, critical for testing, deployment and development — without it, nobody is speaking the same language. Build Engineering Evolution in Managing OS
  • 13. Challenges in Build Engineering Environment Configuration Dependency Management Build Reproducibility Build Engineering Evolution in Managing OS
  • 15. Dependency Management Build Engineering Evolution in Managing OS Version Pinning Binary Sources Dependency Chains Monitoring CVEs, Licenses
  • 16. Automation Wins Build Engineering Evolution in Managing OS Developer Time Developer Sanity Shrink Tech Debt
  • 17. Potential Features + Automation ● “Free” speculative builds ● Build revisions as source control — can be forked, reverted, merged, etc. ● Integration with your CI ● No more local hacks, “Franken-builds”, etc. — everything is audited and guaranteed Build Engineering Evolution in Managing OS
  • 19. Build Engineering - Why It’s Hard and Why You Still Need It Shaun Lowry, ActiveState
  • 20. Shaun Lowry Build Engineering Lead ActiveState Platform Presentation Build Engineering Evolution in Managing OS
  • 21. Third-party software ● Many benefits of using open source components ● OSS or licensed components offer shortcuts and competitive advantage ● How to incorporate 3rd-party components Build Engineering Evolution in Managing OS
  • 22. What’s so hard? Compiling disparate OSS components ● Not all authors use the same tools ● Not all authors care about your platform(s) ● Authors might be great SMEs, but not great engineers Build Engineering Evolution in Managing OS
  • 23. Compilers ● Different compilers disallow different code ● Same for compiler versions ● Some even have different ABIs between versions (GCC4 vs GCC5) Build Engineering Evolution in Managing OS
  • 24. Build Tools setup.py Build Engineering Evolution in Managing OS Autotools CustomCmakeBazel
  • 26. C libraries ● Assumed to be on the system ○ Sometimes incompatible (e.g. libffi, libgdbm) ● Source included with package ○ Do not keep pace with security updates ● Download source at build time (!) Build Engineering Evolution in Managing OS
  • 27. Example ● Builds using bazel ○ Tensorflow versions sensitive to bazel version ○ Take hours ● Many variations, optional support ○ for additional instruction sets (SSE, AVX, AVX2) ○ for GPU acceleration (CUDA) Build Engineering Evolution in Managing OS
  • 28. Why? That’s scary! What’s wrong with just downloading free stuff? Build Engineering Evolution in Managing OS
  • 29. ● Was that zipfile/wheel/magic binary really compiled from that source? ● What else is in there? ● How many people are you trusting? ● Do your customers trust all of them? Build Engineering Evolution in Managing OS
  • 30. ● OS or runtime dependencies ○ Glibc, ucrt, msvcrt etc. ● Uniform compiler ● Hardware dependencies ○ Instruction set optimisations ○ GPU availability Build Engineering Evolution in Managing OS
  • 31. Bugs ● What happens when one hits a customer? ● How quickly can you address it? Licenses ● Are your licenses compatible with every 3rd-party package? ● What about the packages they bring with them? Build Engineering Evolution in Managing OS
  • 32. Example: wand ● Python binding to ImageMagick ○ ImageMagick has different licenses at different versions ● ImageMagick needs Ghostscript for PDF manipulation ○ Ghostscript is AGPL Build Engineering Evolution in Managing OS
  • 33. So what should I do? ● Building OSS from source can be hard to deal with ● Not building from source can be worse ● Incorporate OSS builds into your own pipeline ● Outsource OSS builds to a single trusted source Build Engineering Evolution in Managing OS
  • 34. Q & A
  • 35. What’s Next ● Watch a demo: https://www.youtube.com/watch?v=c5AIxN9ehrI ● Get a demo marketing@activestate.com ● Contact us for the language build you need: platform@activestate.com
  • 36. Tel: 1.866.631.4581 Website: www.activestate.com Twitter: @activestate Facebook: /activestatesoftware Platform Presentation Where to find us