Skip to content
Newer
Older
100644 59 lines (47 sloc) 2.89 KB
23533b0 @benjaminoakes Generated pages
benjaminoakes authored Apr 23, 2012
1 **Presenter:** Richard Huang
2
3 ## Bio
4
5 > Richard Huang is a senior engineer, a passionate rubyist and open source advocate, he created <a href="https://github.com/railsbp/rails_best_practices">rails_best_practices</a> gem, and also built the websites <a href="http://rails-bestpractices.com">rails-bestpractices.com</a> and <a href="http://railsbp.com">railsbp.com</a>
6
7 ## Abstract
8
9 > Rails is so popular to be used to fast build a website, at the beginning we sometimes write codes too fast without considering code quality, but after your company grows fast, you have to pay more attentions on code review to make your website more robust and more maintainable.
10 >
11 > In this talk I will introduce you a way to build a semi automatic code review process, in this process a tool will analyze the source codes of your rails project, then give you some suggestions to refactor your codes according to rails best practices. It can also check your codes according to your team's rails code guideline. So engineers can focus on implementation performance, scalability, etc. when they do code review.
12
a587346 @benjaminoakes modified: Semi-Automatic-Code-Review.md
benjaminoakes authored Apr 24, 2012
13 ## Summary
14
15 Automation of tasks is important. This talk discussed the speaker's open-source `rails_best_practices` gem (similar to JSLint in concept) and its associated web service. It can point out code smells, etc. as a GitHub hook. If you already use GitHub and do pull requests for code review, this can automate simple detection.
16
23533b0 @benjaminoakes Generated pages
benjaminoakes authored Apr 23, 2012
17 ## Notes
18
796b193 @benjaminoakes Start of notes
benjaminoakes authored Apr 24, 2012
19 ### From @benjaminoakes
20
21 * He works on OpenFeint
cc8aaea @benjaminoakes modified: Semi-Automatic-Code-Review.md
benjaminoakes authored Apr 24, 2012
22 * Prefer automatic processes to manual processes (e.g., automatic testing)
23 * Totally manual: code review
be41dc5 @benjaminoakes (m)
benjaminoakes authored Apr 24, 2012
24 * Automatic tests / manual verification
25 * Automated deploy via Capistrano
26 * But can you automate code review?
95e6964 @benjaminoakes modified: Semi-Automatic-Code-Review.md
benjaminoakes authored Apr 24, 2012
27 * What is review?
28 * Easy
29 * Coding guidelines
30 * Syntax
31 * Remove unused methods
32 * Difficult
33 * Performant
34 * Scalable
35 * Automate "easy"
36 * Gem: `rails_best_practices`
37 * Can suggest things like "use scope access", "use model association", or "use query attribute")
38 * A code review service?
3328813 @benjaminoakes modified: Semi-Automatic-Code-Review.md
benjaminoakes authored Apr 24, 2012
39 * railsbp.com
7ce0593 @benjaminoakes modified: Semi-Automatic-Code-Review.md
benjaminoakes authored Apr 24, 2012
40 * Integrates with GitHub (service hook); looks similar to Travis CI if you've used that
3328813 @benjaminoakes modified: Semi-Automatic-Code-Review.md
benjaminoakes authored Apr 24, 2012
41 * Tracks history
42 * Configurble
7ce0593 @benjaminoakes modified: Semi-Automatic-Code-Review.md
benjaminoakes authored Apr 24, 2012
43 * Gives analysis in web UI
44 * Configuration
779149f @benjaminoakes modified: Semi-Automatic-Code-Review.md
benjaminoakes authored Apr 24, 2012
45 * Cost: unclear (TODO check site; looks like donations)
7ce0593 @benjaminoakes modified: Semi-Automatic-Code-Review.md
benjaminoakes authored Apr 24, 2012
46 * Plugins are possible (e.g., for `try()`)
779149f @benjaminoakes modified: Semi-Automatic-Code-Review.md
benjaminoakes authored Apr 24, 2012
47 * Both the site and gem are OSSS
23533b0 @benjaminoakes Generated pages
benjaminoakes authored Apr 23, 2012
48
49 ## External Links
50
eac792c @benjaminoakes Slides for Semi Automatic Code Review
benjaminoakes authored Apr 25, 2012
51 * [Slides](http://www.slideshare.net/flyerhzm/semi-automatic-code-review)
95e6964 @benjaminoakes modified: Semi-Automatic-Code-Review.md
benjaminoakes authored Apr 24, 2012
52 * [`rails_best_practices` gem](http://rubygems.org/gems/rails_best_practices) TODO check link (internet connection is bad now)
796b193 @benjaminoakes Start of notes
benjaminoakes authored Apr 24, 2012
53 * Twitter (TODO links)
54 * @flyerhzm
55 * @railsbp
3328813 @benjaminoakes modified: Semi-Automatic-Code-Review.md
benjaminoakes authored Apr 24, 2012
56 * [`guard-rails_best_practices`](https://github.com/logankoester/guard-rails_best_practices) - Guard integration
95e6964 @benjaminoakes modified: Semi-Automatic-Code-Review.md
benjaminoakes authored Apr 24, 2012
57 * Jenkins integration TODO link
3328813 @benjaminoakes modified: Semi-Automatic-Code-Review.md
benjaminoakes authored Apr 24, 2012
58 * [railsbp.com](http://railsbp.com) - online code review service, integrates with GitHub
Something went wrong with that request. Please try again.