44
CakePHP The yum & the yuck. Friday, 4 October, 13

CakePHP the yum & yuck

Embed Size (px)

DESCRIPTION

A talk I gave at PHP Conference Argentina about the development of CakePHP and lessons I've had in the last 6 years of working on CakePHP.

Citation preview

Page 1: CakePHP the yum & yuck

CakePHPThe yum & the yuck.

Friday, 4 October, 13

Page 2: CakePHP the yum & yuck

Me

• Developer @ FreshBooks.

• Lead Developer of CakePHP.

• markstory on Github.

• mark_story on Twitter.

Friday, 4 October, 13

Page 3: CakePHP the yum & yuck

Friday, 4 October, 13

Page 4: CakePHP the yum & yuck

MistakesI’ve made a few.

Friday, 4 October, 13

Page 5: CakePHP the yum & yuck

SuccessI’ve had a bit of that too.

Friday, 4 October, 13

Page 6: CakePHP the yum & yuck

DisclaimerThis is not intended to be mean.

Friday, 4 October, 13

Page 7: CakePHP the yum & yuck

Community

Friday, 4 October, 13

Page 8: CakePHP the yum & yuck

Be respectfulEvery starts as a newbie.

Friday, 4 October, 13

Page 9: CakePHP the yum & yuck

No test, no bugHigh entry barriers are not healthy

Friday, 4 October, 13

Page 10: CakePHP the yum & yuck

Set a good examplePeople will follow.

Friday, 4 October, 13

Page 11: CakePHP the yum & yuck

ConflictsEgo, language & culture.

Friday, 4 October, 13

Page 12: CakePHP the yum & yuck

Be transparent“Open” is an important part of open source.

Friday, 4 October, 13

Page 13: CakePHP the yum & yuck

Empower othersTrust people who have proven themselves.

Friday, 4 October, 13

Page 14: CakePHP the yum & yuck

Documentation

Friday, 4 October, 13

Page 15: CakePHP the yum & yuck

Maintenance hellMake docs dead easy to maintain

Friday, 4 October, 13

Page 16: CakePHP the yum & yuck

3rd RoundSphinx + Elasticsearch

Friday, 4 October, 13

Page 17: CakePHP the yum & yuck

Simple toolsMake docs accessible, & easy to contribute to.

Friday, 4 October, 13

Page 18: CakePHP the yum & yuck

Deployment

Push to github makejenkins ssh

Friday, 4 October, 13

Page 19: CakePHP the yum & yuck

Search & offline docs

Friday, 4 October, 13

Page 20: CakePHP the yum & yuck

Releases & Upgrading

Friday, 4 October, 13

Page 21: CakePHP the yum & yuck

Releasing must simple

54 release since Oct 2011

Friday, 4 October, 13

Page 22: CakePHP the yum & yuck

Version numbers matter.

Semantic versioning is important.http://semver.org

Friday, 4 October, 13

Page 23: CakePHP the yum & yuck

Security fixesBe transparent and respond quickly.

Friday, 4 October, 13

Page 24: CakePHP the yum & yuck

Breaking compatibility

Mistakes should be fixed.

Friday, 4 October, 13

Page 25: CakePHP the yum & yuck

Migration guides

Friday, 4 October, 13

Page 26: CakePHP the yum & yuck

Upgrade toolsCLI sugar

Friday, 4 October, 13

Page 27: CakePHP the yum & yuck

Building a Framework

Friday, 4 October, 13

Page 28: CakePHP the yum & yuck

Have opinions

Friday, 4 October, 13

Page 29: CakePHP the yum & yuck

People will hate you.

Friday, 4 October, 13

Page 30: CakePHP the yum & yuck

People will love you.

Friday, 4 October, 13

Page 31: CakePHP the yum & yuck

Code generationPowerful, but relies on coupling.

Friday, 4 October, 13

Page 32: CakePHP the yum & yuck

Intelligent defaultsMake good ideas the standard

Friday, 4 October, 13

Page 33: CakePHP the yum & yuck

Derp defaultsWhen ideas age poorly.

Friday, 4 October, 13

Page 34: CakePHP the yum & yuck

ConventionsAnd configuration.

Friday, 4 October, 13

Page 35: CakePHP the yum & yuck

ConventionsCan lead to magic.

Friday, 4 October, 13

Page 36: CakePHP the yum & yuck

Evil magicWas meant to help, really.

Friday, 4 October, 13

Page 37: CakePHP the yum & yuck

Don’t GuessComputers are stupid.

Friday, 4 October, 13

Page 38: CakePHP the yum & yuck

Future proof APIsOption parameters make growing easy.

Friday, 4 October, 13

Page 39: CakePHP the yum & yuck

“Declarative” interfaces

Kind of suck in PHP

Friday, 4 October, 13

Page 40: CakePHP the yum & yuck

Say no to featuresSave your sanity.

Friday, 4 October, 13

Page 41: CakePHP the yum & yuck

In closing,

Friday, 4 October, 13

Page 42: CakePHP the yum & yuck

Make mistakesFalling down is how I learn.

Friday, 4 October, 13

Page 43: CakePHP the yum & yuck

Try this at homeOpen source is hard, but rewarding

Friday, 4 October, 13

Page 44: CakePHP the yum & yuck

Thank you

Friday, 4 October, 13