12. BORG
A Distributed Test Suite Runner for Rails
-- Hemant Kumar and Karunakar
● Eventmachine is fast, simple eventmachine processing lib
● Redis is advanced key value storage
13. How BORG works?
Developer
Machine-1
Borg Server
Developer
Machine-2
Cruise
Machine
Developer
Redis Machine-3
Server
14. BORG Supports
● Shoulda on MRI with rails
● Cucumber on MRI with rails
● Rake::Test on MRI with rails
● Rspec on MRI with rails
Works with 1.8.7 and 1.9.1, 1.9.2 with rails2x and 3x
https://github.com/Karunakar/borg
https://github.com/gnufied/borg
15. GOOD and BAD
GOOD
● Fast build
● Devs spend less time waiting to checkin
BAD
● Developer machines
● Test Splitting
22. Advantages
● Code is clean
● Bugs are less
● More than one will be familiar with code
● Sharing the knowledge is easy
● Good Learning curve
● Maintaining the code quality
23. Disadvantages
● Active vs Passive
● Communication between the pairs
Solutions
Switch the pairs frequently
24. Code Reviews
● Code review helps spread information about a project
between team members
● Allows people to suggest ideas and help clarify code
● Its a good time to implement some small refactoring, as
soon as problems are found
● Works best with small groups
34. New Relic
● Performance management tool
● Slow web transactions
● Database hits and queries
● Slow web pages
● What are the reasons
35. Optimization
● Find with select
● Eager loading
● Use active-reload in development
● Use ActiveRecord to_xml instead of the xml_bulders
● Validations when needed
● Use memcache
● Use query-analyzer in development