coding for uncertainty
Post on 22-Oct-2014
2.091 views
DESCRIPTION
My RubyNation 2012 talk about maiTRANSCRIPT
![Page 1: Coding for uncertainty](https://reader034.vdocuments.us/reader034/viewer/2022052617/5447b311b1af9f13098b4756/html5/thumbnails/1.jpg)
CODING FOR UNCERTAINTY
@SUBELSKY
![Page 2: Coding for uncertainty](https://reader034.vdocuments.us/reader034/viewer/2022052617/5447b311b1af9f13098b4756/html5/thumbnails/2.jpg)
BACKGROUND
![Page 3: Coding for uncertainty](https://reader034.vdocuments.us/reader034/viewer/2022052617/5447b311b1af9f13098b4756/html5/thumbnails/3.jpg)
THE OBSESSION: DURABILITY / FLEXIBILITY / SPEED
![Page 4: Coding for uncertainty](https://reader034.vdocuments.us/reader034/viewer/2022052617/5447b311b1af9f13098b4756/html5/thumbnails/4.jpg)
![Page 5: Coding for uncertainty](https://reader034.vdocuments.us/reader034/viewer/2022052617/5447b311b1af9f13098b4756/html5/thumbnails/5.jpg)
![Page 6: Coding for uncertainty](https://reader034.vdocuments.us/reader034/viewer/2022052617/5447b311b1af9f13098b4756/html5/thumbnails/6.jpg)
12factor.net
![Page 8: Coding for uncertainty](https://reader034.vdocuments.us/reader034/viewer/2022052617/5447b311b1af9f13098b4756/html5/thumbnails/8.jpg)
TL;DL
![Page 9: Coding for uncertainty](https://reader034.vdocuments.us/reader034/viewer/2022052617/5447b311b1af9f13098b4756/html5/thumbnails/9.jpg)
USE 12 FACTOR ARCHITECTURE
![Page 10: Coding for uncertainty](https://reader034.vdocuments.us/reader034/viewer/2022052617/5447b311b1af9f13098b4756/html5/thumbnails/10.jpg)
LESS UNIT TESTING*,MORE BEHAVIOR TESTING
![Page 11: Coding for uncertainty](https://reader034.vdocuments.us/reader034/viewer/2022052617/5447b311b1af9f13098b4756/html5/thumbnails/11.jpg)
KEEP MODELS SMALL,USE LOTS OF POROS
![Page 12: Coding for uncertainty](https://reader034.vdocuments.us/reader034/viewer/2022052617/5447b311b1af9f13098b4756/html5/thumbnails/12.jpg)
SPLIT YOUR APP INTO SEPARATE CODEBASES
![Page 13: Coding for uncertainty](https://reader034.vdocuments.us/reader034/viewer/2022052617/5447b311b1af9f13098b4756/html5/thumbnails/13.jpg)
USE THE DATABASE AS A FORTRESS
![Page 14: Coding for uncertainty](https://reader034.vdocuments.us/reader034/viewer/2022052617/5447b311b1af9f13098b4756/html5/thumbnails/14.jpg)
USE SSL IN YOUR DEV ENVIRONMENT
![Page 15: Coding for uncertainty](https://reader034.vdocuments.us/reader034/viewer/2022052617/5447b311b1af9f13098b4756/html5/thumbnails/15.jpg)
HANDOVER DEVOPS TO 3RD PARTY SERVICES
![Page 16: Coding for uncertainty](https://reader034.vdocuments.us/reader034/viewer/2022052617/5447b311b1af9f13098b4756/html5/thumbnails/16.jpg)
REFACTOR MERCILESSLY
![Page 17: Coding for uncertainty](https://reader034.vdocuments.us/reader034/viewer/2022052617/5447b311b1af9f13098b4756/html5/thumbnails/17.jpg)
RUTHLESSLY EXTRACT GENERIC CODEINTO GEMS
![Page 18: Coding for uncertainty](https://reader034.vdocuments.us/reader034/viewer/2022052617/5447b311b1af9f13098b4756/html5/thumbnails/18.jpg)
HAVE A rake deploy COMMAND IN EVERY PROJECT
![Page 19: Coding for uncertainty](https://reader034.vdocuments.us/reader034/viewer/2022052617/5447b311b1af9f13098b4756/html5/thumbnails/19.jpg)
HAVE A rake install COMMAND IN EVERY PROJECT
![Page 20: Coding for uncertainty](https://reader034.vdocuments.us/reader034/viewer/2022052617/5447b311b1af9f13098b4756/html5/thumbnails/20.jpg)
![Page 21: Coding for uncertainty](https://reader034.vdocuments.us/reader034/viewer/2022052617/5447b311b1af9f13098b4756/html5/thumbnails/21.jpg)