Codenvy’s Journey to Continuous
Development
Brad Micklea
Codenvy COO
What is Codenvy?
Codenvy on-demand developer environments
connect teams to the continuous delivery pipeline.
Replicable
Provision workspace
replicas for developers,
QA, PM or
stakeholders.
Replicable
Provision workspace
replicas for developers,
QA, PM or
stakeholders.
Collaborative
Share workspaces with
one click, or work in
isolated “local”
workspaces.
Codenvy on-demand developer environments
connect teams to the continuous delivery pipeline.
Replicable
Provision workspace
replicas for developers,
QA, PM or
stakeholders.
Collaborative
Share workspaces with
one click, or work in
isolated “local”
workspaces.
Constraint-Free
Give developers
unlimited resources
without thrashing or
blocking.
Codenvy on-demand developer environments
connect teams to the continuous delivery pipeline.
Codenvy On-Prem
Codenvy installed behind customer
firewalls - updated automatically.
Open source project in the Eclipse Foundation. >50
contributors from Codenvy, SAP, IBM and others.
Eclipse Che
built on
Codenvy SaaS
Codenvy hosted on AWS serving
150K users and 400K projects.
Increase customer happiness by making 1st
versions more like 3rd versions.
Goal for 2015
Bring User
Feedback into
Pre-Merge
Development
87%Have contributed
feature requests.
Problem: Developer workspaces were “on an island,” not
connected to the continuous delivery pipeline . . .
Localhost
Development
Continuous
Integration
Continuous
Deployment
FEEDBACK IS ONLY
POSSIBLE DURING CI
CONTINUOUS DELIVERYPRE-MERGE DEVELOPMENT
Continuous
Integration
Localhost
Development
Continuous
Deployment
“What I
really
need is...”
“Nailed it!
Time to jump
on a new
feature.”
CONTINUOUS DELIVERY
. . . this made feedback delayed and frustrating.
PRE-MERGE DEVELOPMENT
Continuous
Deployment
What’s needed is to connect users to developers while they
are working on a feature.
Continuous
Development
Continuous
Integration
PRE-MERGE FEEDBACK
AND COLLABORATION
CONTINUOUS DELIVERY
How to enable pre-merge
feedback without breaking the
Developer’s flow?
Question
Codenvy template (Factory) is created for each feature.
Edit / build / debug environment replicable on any machine.
Source code branch is
codified. Isolated build
and run environments
created automatically.
1
During pre-merge development, users and stakeholders use
the Factory to perform isolated, non-intrusive reviews.
Each workspace instance gets
isolated Docker containers
running an identical stack and
populated with the latest code
commits.
2
Policies control if users can edit, build or run the project.
Edit, build and debug for contributors.
Run only for
stakeholders.
3
2012 2015
Customers Giving Pre-Beta Feedback
** As of 8/31
0 1000+
“This is beautiful! Exactly what I need.”
Increase developer happiness by
maximizes coding time.
Goal for 2015
Increase
Coding Time
25.7 5.89.9
Environment Management +
Build/Test Waiting
Administrative
Tasks
Brainstorming, Design and Coding
Before
Automate the creation of
workspaces for each JIRA
issue, feature branch and
pull request.
Issues are developed on an isolated source code branch.
Developers sync from master frequently using Git rebasing.
Codenvy
Project
JIRA issue
branch
1
Codenvy template (Factory) created for each branch.
Contributor gets a guaranteed-correct workspace instantly.
Factory URL guarantees
the developer workspace
has the right branch and is
using the right build and
debug environments.
2
Developers use “local” Docker environments for resource
intensive tests without blocking.
3
All branches are submitted as pull requests. Pull requests
are rebased against latest commits before review.
Review Factory
replicates PR in an
isolated workspace.
4
5
Each pull request automatically generates a “review
Factory” so reviewers can quickly move from PR to PR.
When branch is merged, JIRA issue is marked as Resolved
and Codenvy Factory is automatically updated to the
CommitID on Master for the merge.
When post-merge continuous integration tests pass, JIRA
issue is marked with a fixVersion and Closed.
6
7
Master is always releasable and shippable.
Contributor can move into the next issue immediately
- no Git or environment reconfiguration required.
8
9
2012 2015
Trailing 20 Day Commits / Engineer
** As of 8/31
5 30
33.2 5.82.4
25.7 5.89.9
Environment Management
+ Build/Test Waiting Admin TasksBrainstorming, Design and Coding
After
Before
39% more time for coding.
Gives everyone on the team
their own “supercomputer.”
Solution
Running Codenvy in their
datacenter CCCIS was
able to provide each
developer an isolated
Docker container for build
and run.
Value
Developers can work
faster and collaborate
quickly from any device
and location.
Problem
CCCIS application stack
was too large to run on a
single laptop. Team
members found VDI /
shared VM solutions too
slow.
We call this continuous development.
DevOps can deliver a
workspace per task as
part of the continuous
delivery pipeline.
Codenvy makes
workspaces instant
through automation.
Thank You
Come see me after to learn more about how Codenvy customers are
accelerating their businesses with better development.

Accelerating DevOps at the SF DevOps MeetUp

  • 1.
    Codenvy’s Journey toContinuous Development Brad Micklea Codenvy COO
  • 2.
  • 3.
    Codenvy on-demand developerenvironments connect teams to the continuous delivery pipeline. Replicable Provision workspace replicas for developers, QA, PM or stakeholders.
  • 4.
    Replicable Provision workspace replicas fordevelopers, QA, PM or stakeholders. Collaborative Share workspaces with one click, or work in isolated “local” workspaces. Codenvy on-demand developer environments connect teams to the continuous delivery pipeline.
  • 5.
    Replicable Provision workspace replicas fordevelopers, QA, PM or stakeholders. Collaborative Share workspaces with one click, or work in isolated “local” workspaces. Constraint-Free Give developers unlimited resources without thrashing or blocking. Codenvy on-demand developer environments connect teams to the continuous delivery pipeline.
  • 6.
    Codenvy On-Prem Codenvy installedbehind customer firewalls - updated automatically. Open source project in the Eclipse Foundation. >50 contributors from Codenvy, SAP, IBM and others. Eclipse Che built on Codenvy SaaS Codenvy hosted on AWS serving 150K users and 400K projects.
  • 7.
    Increase customer happinessby making 1st versions more like 3rd versions. Goal for 2015
  • 8.
  • 9.
    Problem: Developer workspaceswere “on an island,” not connected to the continuous delivery pipeline . . . Localhost Development Continuous Integration Continuous Deployment FEEDBACK IS ONLY POSSIBLE DURING CI CONTINUOUS DELIVERYPRE-MERGE DEVELOPMENT
  • 10.
    Continuous Integration Localhost Development Continuous Deployment “What I really need is...” “Nailedit! Time to jump on a new feature.” CONTINUOUS DELIVERY . . . this made feedback delayed and frustrating. PRE-MERGE DEVELOPMENT
  • 11.
    Continuous Deployment What’s needed isto connect users to developers while they are working on a feature. Continuous Development Continuous Integration PRE-MERGE FEEDBACK AND COLLABORATION CONTINUOUS DELIVERY
  • 12.
    How to enablepre-merge feedback without breaking the Developer’s flow? Question
  • 13.
    Codenvy template (Factory)is created for each feature. Edit / build / debug environment replicable on any machine. Source code branch is codified. Isolated build and run environments created automatically. 1
  • 14.
    During pre-merge development,users and stakeholders use the Factory to perform isolated, non-intrusive reviews. Each workspace instance gets isolated Docker containers running an identical stack and populated with the latest code commits. 2
  • 15.
    Policies control ifusers can edit, build or run the project. Edit, build and debug for contributors. Run only for stakeholders. 3
  • 17.
    2012 2015 Customers GivingPre-Beta Feedback ** As of 8/31 0 1000+ “This is beautiful! Exactly what I need.”
  • 18.
    Increase developer happinessby maximizes coding time. Goal for 2015
  • 19.
    Increase Coding Time 25.7 5.89.9 EnvironmentManagement + Build/Test Waiting Administrative Tasks Brainstorming, Design and Coding Before
  • 20.
    Automate the creationof workspaces for each JIRA issue, feature branch and pull request.
  • 21.
    Issues are developedon an isolated source code branch. Developers sync from master frequently using Git rebasing. Codenvy Project JIRA issue branch 1
  • 22.
    Codenvy template (Factory)created for each branch. Contributor gets a guaranteed-correct workspace instantly. Factory URL guarantees the developer workspace has the right branch and is using the right build and debug environments. 2
  • 23.
    Developers use “local”Docker environments for resource intensive tests without blocking. 3
  • 24.
    All branches aresubmitted as pull requests. Pull requests are rebased against latest commits before review. Review Factory replicates PR in an isolated workspace. 4 5 Each pull request automatically generates a “review Factory” so reviewers can quickly move from PR to PR.
  • 25.
    When branch ismerged, JIRA issue is marked as Resolved and Codenvy Factory is automatically updated to the CommitID on Master for the merge. When post-merge continuous integration tests pass, JIRA issue is marked with a fixVersion and Closed. 6 7
  • 26.
    Master is alwaysreleasable and shippable. Contributor can move into the next issue immediately - no Git or environment reconfiguration required. 8 9
  • 27.
    2012 2015 Trailing 20Day Commits / Engineer ** As of 8/31 5 30
  • 28.
    33.2 5.82.4 25.7 5.89.9 EnvironmentManagement + Build/Test Waiting Admin TasksBrainstorming, Design and Coding After Before 39% more time for coding.
  • 29.
    Gives everyone onthe team their own “supercomputer.” Solution Running Codenvy in their datacenter CCCIS was able to provide each developer an isolated Docker container for build and run. Value Developers can work faster and collaborate quickly from any device and location. Problem CCCIS application stack was too large to run on a single laptop. Team members found VDI / shared VM solutions too slow.
  • 30.
    We call thiscontinuous development. DevOps can deliver a workspace per task as part of the continuous delivery pipeline. Codenvy makes workspaces instant through automation.
  • 31.
    Thank You Come seeme after to learn more about how Codenvy customers are accelerating their businesses with better development.