All Projects → steveklabnik → turbolinks_test

steveklabnik / turbolinks_test

Licence: other
Seriously. Use numbers.

Programming Languages

ruby
36898 projects - #4 most used programming language
javascript
184084 projects - #8 most used programming language
coffeescript
4710 projects

Turbolinks test

Well, by now, you've done all your arguing on Twitter. Is Turbolinks a good idea, or the Worst Thing Ever?

optimizing a bit early

don knuth tony hoare

See these guys? One of them said this:

"We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil"

Wisdom.

But what makes optimization premature? When you don't know if you should do it or not. How do you know?

measure twice, cut once

measure twice

Measuring. It's good for you. You can do it. If you measure things, you can be sure what's up.

But like eating your veggies, nobody measures. Ever.

you're a scientist, dammit

Computer SCIENCE is called science for a reason, yo. Be a scientist. Don't just argue about stuff on blogs. Measure things. Then report back.

this test sucks

This probably isn't even a good test. I don't care. Tell me how it sucks. Let's figure it out. But having actual measurements beats complaining about shit on Twitter any day.

what's it do?

Well, it fires up Selenium, and clicks some links. 1000 of them, by default. Then it prints out how long that took.

Branches

I've added some commits to master since I originally forked the branches. If you try this, you may want to add some of them in.

To run it:

$ bundle
$ rake assets:precompile
$ TIMES=100 rspec

Done.

What I get:

With 1000 pages:

$ rspec
       user     system      total        real
 no turbolinks 11.170000   0.980000  12.460000 (138.656728)
yes turbolinks 10.800000   0.870000  11.670000 ( 80.436286)

With 100 pages:

$ rspec
       user     system      total        real
 no turbolinks  1.640000   0.190000   2.140000 ( 15.652763)
yes turbolinks  1.120000   0.090000   1.210000 (  7.776116)
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].