development is a piece of cake

29

Click here to load reader

Upload: james-watts

Post on 16-Apr-2017

1.643 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Development is a Piece of Cake

Cake Development CorporationCake Development Corporation

Development is a piece of CakeDevelopment is a piece of Cake

James Watts (CakeDC)James Watts (CakeDC)james.watts @ cakedc.comjames.watts @ cakedc.com

CakeFest 2013: The CakePHP ConferenceCakeFest 2013: The CakePHP ConferenceSeptember 1September 1stst, 2013 – San Francisco, USA, 2013 – San Francisco, USA

Page 2: Development is a Piece of Cake

Cake Development CorporationCake Development Corporation

James WattsJames Watts

·· Madrid, Spain (British)Madrid, Spain (British)

· · Team Leader @ CakeDCTeam Leader @ CakeDC

· · CakePHP Core MemberCakePHP Core Member

· · Open Source since 2008Open Source since 2008

· · Cake Toolkit and CakeMLCake Toolkit and CakeML

· · XHTTP and DocMLXHTTP and DocML

Page 3: Development is a Piece of Cake

Cake Development CorporationCake Development Corporation

in Washington D.C.in Washington D.C.

CakeDC is not...CakeDC is not...

Page 4: Development is a Piece of Cake

Cake Development CorporationCake Development Corporation

a little backgrounda little background

But first,But first,

Page 5: Development is a Piece of Cake

Cake Development CorporationCake Development Corporation

This guy...This guy...

Page 6: Development is a Piece of Cake

Cake Development CorporationCake Development Corporation

CakeDC PluginsCakeDC Plugins

Page 7: Development is a Piece of Cake

Cake Development CorporationCake Development Corporation

Released as Open SourceReleased as Open Source

Page 8: Development is a Piece of Cake

Cake Development CorporationCake Development Corporation

We've got quite a few...We've got quite a few...

·· users users

· · searchsearch

· · commentscomments

· · utilsutils

·· ratings ratings

· · migrationsmigrations

· · templatestemplates

· · tagstags

Page 9: Development is a Piece of Cake

Cake Development CorporationCake Development Corporation

https://github.com/CakeDChttps://github.com/CakeDC

Page 10: Development is a Piece of Cake

Cake Development CorporationCake Development Corporation

We f*cked up!We f*cked up!

Page 11: Development is a Piece of Cake

Cake Development CorporationCake Development Corporation

But we can make up for it :)But we can make up for it :)

Page 12: Development is a Piece of Cake

Cake Development CorporationCake Development Corporation

Main ObjectivesMain Objectives

·· Define a branch strategy Define a branch strategy

· · Introduce sane versioningIntroduce sane versioning

· · Normalize documentationNormalize documentation

· · Increase confidenceIncrease confidence

Page 13: Development is a Piece of Cake

Cake Development CorporationCake Development Corporation

CakeDC Plugin StandardCakeDC Plugin Standard

Page 14: Development is a Piece of Cake

Cake Development CorporationCake Development Corporation

http://cakedc.com/plugin-standardhttp://cakedc.com/plugin-standard

Page 15: Development is a Piece of Cake

Cake Development CorporationCake Development Corporation

Branch StrategyBranch Strategy

·· master:master: latest stable version latest stable version

· · develop:develop: integration branch integration branch

· · New features → New features → developdevelop

· · Maintainence branchesMaintainence branches

Page 16: Development is a Piece of Cake

Cake Development CorporationCake Development Corporation

Plugin VersioningPlugin Versioning

·· Use semantic versioning Use semantic versioning

· · http://semver.orghttp://semver.org

· · Target core versionsTarget core versions

· · TAG ALL THE THINGS!TAG ALL THE THINGS!

Page 17: Development is a Piece of Cake

Cake Development CorporationCake Development Corporation

DocumentationDocumentation

·· Description/Requirements Description/Requirements

· · Installation/ConfigurationInstallation/Configuration

· · Implementation/ExamplesImplementation/Examples

· · Support/License/CopyrightSupport/License/Copyright

Page 18: Development is a Piece of Cake

Cake Development CorporationCake Development Corporation

What about projects?What about projects?

Page 19: Development is a Piece of Cake

Cake Development CorporationCake Development Corporation

Problems to SolveProblems to Solve

·· Project management Project management

· · Multiple developersMultiple developers

· · Quality and testing (QA)Quality and testing (QA)

· · Staging and reviewStaging and review

Page 20: Development is a Piece of Cake

Cake Development CorporationCake Development Corporation

CakeDC Git WorkflowCakeDC Git Workflow

Page 21: Development is a Piece of Cake

Cake Development CorporationCake Development Corporation

http://cakedc.com/git-workflowhttp://cakedc.com/git-workflow

Page 22: Development is a Piece of Cake

Cake Development CorporationCake Development Corporation

Key FeaturesKey Features

·· Milestone driven development Milestone driven development

· · Permanent/Temporary branchesPermanent/Temporary branches

· · Integrated QA and testingIntegrated QA and testing

· · Multifaceted deploymentMultifaceted deployment

Page 23: Development is a Piece of Cake

Cake Development CorporationCake Development Corporation

WorkflowWorkflow

Page 24: Development is a Piece of Cake

Cake Development CorporationCake Development Corporation

DevelopmentDevelopment

Page 25: Development is a Piece of Cake

Cake Development CorporationCake Development Corporation

TestingTesting

Page 26: Development is a Piece of Cake

Cake Development CorporationCake Development Corporation

ReviewReview

Page 27: Development is a Piece of Cake

Cake Development CorporationCake Development Corporation

ReleaseRelease

Page 28: Development is a Piece of Cake

Cake Development CorporationCake Development Corporation

Hot-FixHot-Fix

Page 29: Development is a Piece of Cake

Cake Development CorporationCake Development Corporation

You may now enquireYou may now enquire