Ship It ! with Ruby/ Rails Ecosystem

  • 3,968 views
Uploaded on

non-blocking Rails Development

non-blocking Rails Development

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
3,968
On Slideshare
0
From Embeds
0
Number of Embeds
2

Actions

Shares
Downloads
95
Comments
0
Likes
5

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide











































































Transcript

  • 1. Ship It ! with Ruby / Rails ecosystem
  • 2. How ruby ecosystem helps your team
  • 3. About Me • a.k.a “xdite” • http://blog.xdite.net • http://twitter.com/xdite • http://github.com/xdite • Ruby on Rails Developer since 2007 • T - Lead Developer • http://www.techbang.com.tw
  • 4. Agenda • Why Rails ? • Team Development with Rails ecosystem • Ruby
  • 5. T • Pc home • • •
  • 6. startup
  • 7. out of minds
  • 8. broken documents in Taiwan
  • 9. learning curve too high in Taiwan
  • 10. hard to maintain in Taiwan
  • 11. lack of developers in Taiwan
  • 12. NOT a problem
  • 13. Best
  • 14. Developers are trainable http://blog.xdite.net/?p=1754
  • 15. Framework Convention
  • 16. Rails Best Practices www.slideshare.net/ihower/rails-best-practices
  • 17. Practical solution by default
  • 18. Strong Ecosystem
  • 19. We are trying to build...
  • 20. Content Factory
  • 21. Developer Factory
  • 22. Application Factory
  • 23. 10+ Deploys A Day: Devs & Ops Cooperation at Flickr. Velocity 2009 http://bit.ly/aqlOp8
  • 24. Team Development
  • 25. Non-blocking Development
  • 26. Blocking Development • developing on production server (!!!) • manual update from SCM / FTP (!!!) • one project maintained by one developer • recording bug by using Google Docs(!!)
  • 27. Non-blocking Development • SCM • database, release version source code • Automate • Notify • Document • Issue Tracking System, Wiki
  • 28. Tools and Infrastructure • Develop in a Sandbox • Manage Assets Using SCM • Script Your Build • Build Automatically • Track Issues / Track Features
  • 29. Pragmatic Project Techniques • Work from The List • Review All Code • Send Code Change Notifications
  • 30. Database with SCM ( Develop in Sandbox )
  • 31. rake db:migrate
  • 32. rake db:seed
  • 33. Environment with SCM ( Develop in Sandbox )
  • 34. • enviroments/development.rb • enviroments/testing.rb • enviroments/production.rb
  • 35. Bundler
  • 36. Chef
  • 37. Continuous Integration ( Script Your Build )
  • 38. Integrityapp
  • 39. Automated Deployment ( Build Automatically )
  • 40. cap deploy
  • 41. cap deploy:rollback
  • 42. capistrano/ext/multistage
  • 43. Notification System ( Send Code Change Notification)
  • 44. hoptoad
  • 45. redmine_irccat_notification
  • 46. Github Hooks
  • 47. Issue Tracking System ( Track Issues / Track Features )
  • 48. Redmine
  • 49. Source code Review ( Review All Code )
  • 50. Github
  • 51. another problem comes out
  • 52. We can’t afford a SA
  • 53. SA’s job • monitor production status • build production environment • build job worker • maintain mail system / dns server ..etc.
  • 54. ScoutApp
  • 55. ScoutApp • Server Load • MySQL Slow Queries • Disk Usage • MySQL Statistics • Memory Profiler • Network Throughput • Process Usage • Delay Job • URL Monitoring • Memcached Monitor • Server Uptime
  • 56. God
  • 57. New Relic
  • 58. Moonshine
  • 59. Delay Job
  • 60. Cloud-Crowd
  • 61. MadMimi
  • 62. PowerDNS on Rails
  • 63. there is more...
  • 64. Conclusion
  • 65. http://bit.ly/techbang-job We are still hiring....
  • 66. Thanks for listening! xdite@techbang.com.tw