Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Cleaners of Caribbean

109 views

Published on

Our Amoniac OU CEO Alexander Simonov inspired everyone with an original report and even played a bottle of rum on Ruby Meditation Conference in Kyiv.
Get more how really you need to clean the deck in your long Ruby's journey.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Cleaners of Caribbean

  1. 1. Cleaners of Caribbean
  2. 2. about me In IT from 1998 My first OS was CP/M My first computer was without monitor My first contribution into OpenSource was a support of Cyrillic and UTF-8 in Gentoo
  3. 3. Rails Guide Rails blog in 15 minutes...
  4. 4. need something to do
  5. 5. Required Software Homebrew RMV/RBENV/etc PostgreSQL/MySQL/Mongo/Etc libxml, libxslt, and others...
  6. 6. 5 hours later
  7. 7. What did we do?
  8. 8. What did we do? we have already begun to pollute our system
  9. 9. What did we do? we have already begun to pollute our system we have made our system unstable
  10. 10. What did we do? we have already begun to pollute our system we have made our system unstable we have made our system unpredictable
  11. 11. What did we do? we have already begun to pollute our system we have made our system unstable we have made our system unpredictable we have made our system unmaintainable
  12. 12. How to solve?
  13. 13. Docker Clean local system
  14. 14. Docker Clean local system Easy startup with docker-compose
  15. 15. Docker Clean local system Easy startup with docker-compose Predictable environment
  16. 16. Docker Clean local system Easy startup with docker-compose Predictable environment Kubernates
  17. 17. What we need for our blog?! devise cancancan rolify rmagick commentable acts_as_tree, acts_as_list, etc And much more other libraries …
  18. 18. How to solve?
  19. 19. Use a standard libraries net/http instead of rest-client/faraday/etc json instead of multi_json/oj/yajl/etc You don't need cancancan for limiting one controller You don't need rolify for 2 roles You don't need trailblazer for 2 actions
  20. 20. Contamination of project
  21. 21. Fat Models
  22. 22. Fat Controllers
  23. 23. no tests
  24. 24. copy - paste
  25. 25. Model.all On Table with 100000 records
  26. 26. after some time …
  27. 27. plan of barbossa
  28. 28. Service Objects Put your business logic outside models, controllers, jobs
  29. 29. Test Driven Development Its a fastest way to check your code and a way to increase your development speed
  30. 30. Code Review Review your code all the time. Use a tools for it.
  31. 31. Continuous Integration Automate your processes of check, review and deployment
  32. 32. K.I.S.S. Keep it simple stupid
  33. 33. Check the limits Run your staging with limited resources
  34. 34. questions? Email: oleksandr@amoniac.eu Github: simonoff

×