Slideshare.net (beta)

 

All comments

Add a comment on Slide 1

If you have a SlideShare account, login to comment; else you can comment as a guest


Showing 1-50 of 0 (more)

RailsToItaly - english

From ngw, 9 months ago

My speech at RailsToItaly, the first italian conference on RubyOnR

580 views  |  0 comments  |  0 favorites  |  11 downloads  |  1 embed (Stats)
Embed
options

More Info

This slideshow is Public
Total Views: 580
on Slideshare: 507
from embeds: 73

Slideshow transcript

Slide 1: Productivity with RubyOnRails or how I stopped worrying and love Zooppa sabato 3 novembre 2007 1

Slide 2: What’s it ? • I give you a brand • You make an AD • You rate the BEST ones • I pay you sabato 3 novembre 2007 2

Slide 3: sabato 3 novembre 2007 3

Slide 4: Winner contest C1Deejay section Video Ads • 1303 stars (281 votes), 371 comments • Using a concept of another user • 1500 z$ (1500 real $) for the video, 500 z$ for the concept (500 real $) sabato 3 novembre 2007 4

Slide 5: sabato 3 novembre 2007 5

Slide 6: Vincitore Contest C1 Deejay sezione Print Ads • 798 stars (185 voti), 99 comments • 1000 z$ (1000 real $) sabato 3 novembre 2007 6

Slide 7: • Image and Video Upload • Voting (antifraud system) • Users personal area (edit profile, conversion from Z$ to $) • Users ranking • Contest management • A lot of complex relations between data sabato 3 novembre 2007 7

Slide 8: 40 days of time and a few dozens of JPGs as specifications sabato 3 novembre 2007 8

Slide 9: How ? sabato 3 novembre 2007 9

Slide 10: sabato 3 novembre 2007 10

Slide 11: • The right team • Prototypes and incremental development • Release Often • Interface First • Tests sabato 3 novembre 2007 11

Slide 12: Benefits • Bring the team to contribute instead of implementing acritically • Minimize errors • Work on a real basis and not on abstract specifications • Change doesn’t hurt sabato 3 novembre 2007 12

Slide 13: The team sabato 3 novembre 2007 13

Slide 14: Ends and objectives perfectly clear sabato 3 novembre 2007 14

Slide 15: A good formulated idea is an idea without details that are not fundamental sabato 3 novembre 2007 15

Slide 16: Less details, less discussions, more prototypes sabato 3 novembre 2007 16

Slide 17: GOD SAVE HIGH LEVEL LANGUAGES sabato 3 novembre 2007 17

Slide 18: Prototypes and incremental development sabato 3 novembre 2007 18

Slide 19: Going from an idea to a functional prototype is very quick (especially in Ruby) sabato 3 novembre 2007 19

Slide 20: A prototype is a good base to start implementing sabato 3 novembre 2007 20

Slide 21: • Crystallizes the idea • The developer can start to take a grasp of the application domain • Minimizes the risk of overestimating or underestimating a problem sabato 3 novembre 2007 21

Slide 22: In Zooppa we’ve never thrown away a prototype, we just refactor sabato 3 novembre 2007 22

Slide 23: Refactoring is simpler then starting with a new implementation sabato 3 novembre 2007 23

Slide 24: When refactoring, employ RubyOnRails in full sabato 3 novembre 2007 24

Slide 25: Release first and release often sabato 3 novembre 2007 25

Slide 26: Daily internal releases sabato 3 novembre 2007 26

Slide 27: Release often to the public sabato 3 novembre 2007 27

Slide 28: Manifesto for Agile Software Development • Individuals and interactions over processes and tools • Working software over comprehensive documentation • Customer collaboration over contract negotiation • Responding to change over following a plan sabato 3 novembre 2007 28

Slide 29: Zooppa value are users, our customers are more than 8000 sabato 3 novembre 2007 29

Slide 30: Constant specification change sabato 3 novembre 2007 30

Slide 31: Releasing is changing perspective sabato 3 novembre 2007 31

Slide 32: Feedback from different professionalities is pure gold sabato 3 novembre 2007 32

Slide 33: Or: how the lack of analisys can become a strenght (if the project has been set up in the correct way) sabato 3 novembre 2007 33

Slide 34: Interfaces sabato 3 novembre 2007 34

Slide 35: Interfaces are understandable by definition sabato 3 novembre 2007 35

Slide 36: MVC (use the V to build the MC) sabato 3 novembre 2007 36

Slide 37: Impossible to overengineer sabato 3 novembre 2007 37

Slide 38: KISS and make it work sabato 3 novembre 2007 38

Slide 39: An interface allows to build a software keeping in mind the main features and focal points sabato 3 novembre 2007 39

Slide 40: What’s outside the interface isn’t important sabato 3 novembre 2007 40

Slide 41: You can refactor what’s outside the interface and your users will never know sabato 3 novembre 2007 41

Slide 42: Test sabato 3 novembre 2007 42

Slide 43: Rails has the best testing framework actually on the market sabato 3 novembre 2007 43

Slide 44: Plugin and gems • Rcov • Watir • Rspec • Arts sabato 3 novembre 2007 44

Slide 45: Without analysis, the only salvation is testing sabato 3 novembre 2007 45

Slide 46: Tests become functional specifications on real code sabato 3 novembre 2007 46

Slide 47: • Functional Specifications = Functional Tests • Data Integrity Specifications = Unit Tests • User Interaction Specifications = Integration Tests sabato 3 novembre 2007 47

Slide 48: Making a new developer productive in a project is difficult sabato 3 novembre 2007 48

Slide 49: Understanding an API by looking at how it’s used is much more simpler than understanding it by looking at how it’s implemented sabato 3 novembre 2007 49

Slide 50: • Less code dependencies problems • Less bugs • Joining the project is quicker and a new developer doesn’t need to be followed step by step sabato 3 novembre 2007 50

Slide 51: I didn’t stop worrying, I’m still a compulsive paranoic sabato 3 novembre 2007 51

Slide 52: At least, thanks Rails and a good developmente strategy, I’m the fool, not my software sabato 3 novembre 2007 52