acquisto viagra originale sildenafil prezzo levitra viagra cialis differenze vendita cialis senza ricetta durata levitra cialis femminile viagra naturale farmacia cialis prezzo in farmacia cialis miglior prezzo viagra costa viagra generico in farmacia kamagra controindicazioni cialis pasti acquistare viagra cialis generico opinioni viagra cialis differenza cialis vendo viagra generico contrassegno cialis rosa cialis da 2 5 mg cialis generico 5mg cialis caratteristiche compra viagra generico viagra roma viagra generico funziona comprare viagra in internet viagra x le donne prezzo levitra 10 mg ordina cialis viagra female acquista cialis generico confezioni cialis cialis generico costo cialis pagamento alla consegna cialis farmacia senza ricetta viagra generico in italia erboristeria viagra naturale farmacie viagra comprare cialis su internet vendita cialis generico levitra acquisto costi cialis levitra confezioni e prezzi levitra 10 mg costo cialis pagamento contrassegno levitra prezzo vendita viagra in italia viagra naturale per donne prezzo farmacia cialis farmaco levitra cialis prescrizione medica cialis da banco levitra in farmacia medicinale levitra cialis torrino prezzo cialis 10 cialis prezzo in farmacia acquisto cialis senza ricetta cialis generico sicuro levitra vendita sildenafil dosaggio vendita cialis san marino viagra vendita libera viagra per femmine viagra generico opinioni viagra da banco cialis da banco viagra serve la ricetta comprare cialis online viagra online sicuro viagra euro prezzi viagra cialis o simili acquisto cialis in farmacia levitra 10 mg generico cialis su internet acquistare cialis generico cialis medicinale comprare cialis in contrassegno prezzo cialis generico impotenza rimedi cialis effetti collaterali viagra generico online cialis o simili cialis acquisto on line compra cialis in italia cialis benefici cialis farmaco levitra 20 mg levitra costo cialis caratteristiche acquisto cialis on line cialis 5 mg prezzo cialis san marino tadalafil principio attivo cialis comprare comprare viagra viagra costo costo cialis generico cialis costa acquisto viagra net levitra ci vuole ricetta comprare cialis a san marino levitra contrassegno viagra sostituto kamagra opinioni levitra contrassegno viagra alternativo acquisto cialis svizzera viagra per donne viagra a san marino cialis originale cialis generico opinioni cialis in contrassegno cialis vendita libera viagra prezzi in farmacia cialis pagamento paypal comprare cialis sicuro viagra quanto costa in farmacia differenze cialis viagra cialis prezzo acquisto viagra net cialis prezzo farmacia levitra costo in farmacia acquistare cialis su internet acquistare viagra in italia cialis fa bene viagra x le donne sildenafil 100 mg viagra naturale funziona cialis generico costo viagra generico in farmacia acquista levitra vendita cialis italia viagra compresse cialis costo viagra farmacie kamagra funziona offerte viagra viagra per donne viagra donna cialis al naturale dosaggio viagra prezzo viagra farmacia sildenafil generico levitra acquista levitra originale viagra sottobanco vendo cialis milano viagra fa bene viagra 100 prezzo cialis 20 mg prezzo in farmacia prescrizione cialis acquistare cialis in farmacia aquisto viagra comprare viagra svizzera cialis farmaco benefici viagra viagra cialis differenze viagra alle donne levitra farmaco prezzo tadalafil farmaci impotenza viagra e cialis differenze viagra svizzera cialis alle erbe tadalafil 10 mg cialis fa bene viagra medicinale viagra compresse cialis vendita in farmacia viagra pasti levitra 5 mg prezzo viagra senza ricetta in svizzera cialis generico 10 mg viagra costo effetti viagra sulle donne levitra costo viagra x donne levitra ricetta medica acquisto cialis acquisto levitra online cialis 10 mg cialis super active levitra informazioni sildenafil prezzo viagra meccanismo d'azione cialis controindicazioni cialis vendita in italia viagra vendita in italia viagra dogana viagra femminile naturale vendita viagra san marino costo cialis in francia levitra generico in farmacia levitra generico online acquistare cialis acquistare levitra prescrizione viagra compro levitra femminile viagra viagra informazioni vendita viagra san marino viagra torino libera vendita cialis costo levitra 10 mg vendita cialis cialis alle erbe viagra acquisto sicuro viagra prezzo farmacia viagra alle erbe viagra naturale femminile costo levitra cialis euro tadalafil farmacia viagra nelle donne vendo cialis milano curare impotenza viagra a basso costo viagra naturale in erboristeria tadalafil effetti collaterali cialis recensioni cialis italia cialis 20 mg originale viagra rosa per donne comprare viagra internet farmaci impotenza compresse levitra viagra da 25 vendo viagra milano viagra acquisto sicuro cialis originale vendita comprare viagra in farmacia comprare cialis in svizzera viagra da 25 mg viagra modalità d'uso viagra ricetta ripetibile cialis per donne prezzo viagra 50 mg female viagra femigra viagra a san marino curare impotenza viagra ricetta libera vendita cialis prezzo levitra viagra offerte vendita cialis in contrassegno cialis compresse 5 mg cialis forum al femminile generico levitra comprare levitra viagra euro acquisto levitra tadalafil generico farmacia viagra erbe viagra farmaco generico cialis torino viagra acquistare cialis generico forum cialis compresse cialis generico india cialis dosaggio tadalafil effetti collaterali dosaggio levitra levitra 5 mg prezzo sildenafil donne viagra compra viagra e simili cialis europa svizzera viagra cialis recensioni levitra medicinale prezzi cialis cialis cialis differenze farmaco cialis ordina viagra comprare cialis sicuro cialis durata effetto levitra generico cialis 5 mg quanto costa comprare viagra in svizzera viagra prezzo farmacia compra viagra online viagra dove comprarlo acquista cialis on line cialis 20 mg effetti collaterali cialis generico sicuro cialis rosa viagra da 25 acquisto viagra levitra opinioni ricetta cialis cialis senza prescrizione acquistare cialis online cialis 20 mg in farmacia acquisto viagra svizzera cialis 5 mg quanto costa cura impotenza vendita cialis generico in italia vendo cialis napoli comprare cialis originale vardenafil costo viagra cialis levitra differenze cialis roma compro viagra online viagra 100 mg prezzo viagra in farmacia viagra originale cialis medicinale cialis comprare online viagra in contrassegno tadalafil in farmacia comprare viagra senza ricetta kamagra generico viagra quanto costa in farmacia levitra da 20 svizzera viagra cialis naturale funziona viagra senza ricetta forum cialis professional vendita cialis originale acquistare viagra farmacia levitra vendita viagra contrassegno comprare cialis senza ricetta costo cialis 20 mg cialis 20 mg originale cialis 5 mg generico cialis generico funziona viagra generico vendita impotenza sessuale cialis vendita on line vendita cialis generico in italia levitra originale prezzo disfunzione erettile rimedi costo cialis 5 mg cialis italia vendita cialis senza ricetta vendita viagra senza ricetta levitra donna compro viagra generico pasticche cialis viagra senza prescrizione prezzo viagra in farmacia viagra generico prezzo cialis farmacia prezzo compra viagra originale viagra super acquisto viagra in farmacia differenze cialis viagra levitra costo cialis

Rails is growing up

15 Aug 2006

Rails is growing up, indeed. I’m hoping that last week’s security incident with Rails will bring a few needed changes to the Rails world, some of which I’ll detail here. Before I get started, though, rest assured that I’m a very happy Railser. Even before I was completely sold on Rails, I admired what it could do (back in the 0.10 days, even). Now that I have been completely sold on Rails (since 0.13), life just wouldn’t be as good without it. 1.1.6 is a long way from 0.13, though, and now is as good a time as any to make some changes. I hope these thoughts can be be conversation starters for the Rails core team and those interested in the continuing success of the Ruby on Rails framework.

As we learned last week, people can get a little cranky when the framework on which they depend undergoes changes that disrupts their schedules. I myself was frustrated that so little information was initially released that I had to stop what I was doing to diff the subversion branches so I could find out what the problem was. Obviously, change happens, and it’s definitely better to get bugs fixed than not, but there are some things that can be done to improve the Rails development process that should help Rails continue to grow and be the thriving environment we all want it to be. Here are my suggestions that will help people like me, who derive their livelihood from development with Rails, continue to be successful with Rails and continue to be able to recommend it to clients, bosses, and the like.

First, here are some things we need realize about where the Rails community is today, so that we can focus our energies on supporting that community.

1. There is a large and growing community of developers, projects, and businesses that are relying on this framework for their success. Gone are the days that we can just toss out a release and expect everyone to upgrade quickly (or even at all). The events of last week showed there is a significant number of people that either can not or will not upgrade at a moment’s notice, either because their operating environment is too restrictive to move quickly without sufficient justification, or because they have made decisions (for whatever reason) to stick with a particular version of Rails. These people, who are often the champions of Rails in their organizations or among their peers, need to be considered when issues arise with or changes or made to the Rails framework.

2. Quite a community of code has grown up around Rails. There are now more than 300 plugins listed in the plugin directory, a few of which are very widely used, such as Acts as Authenticated and Rails Engines. Regardless of whether the core team uses or even likes the popular add-ons to Rails, the fact is that they are here to stay, and many people depend on them. If these add-ons are going to be broken by a release, we ought to know that before the release happens and have a plan for dealing with that breakage.

Now that we have a couple of ideas about the environment in which we find ourselves, here are my suggestions on how we can best support the Rails community as Rails continues to grow.

1. Have a QA team. This could start as a team of one, but I do feel the QA team needs to include people who are not core contributors, for two reasons. First, it always makes sense to have someone besides the developer verifying changes that are being made to the code. Of course unit testing is great, but you also need a fresh pair of eyes to catch things like a missing set of parentheses in a regular expression. Second, we don’t want to take any of the core team away from their responsibilities of actually building the framework by having them dedicated to QA. Yes, the developers should be reviewing each others work, but we want them to primarily build, not inspect.

2. Have a test matrix. We saw the beginnings of this in #rails-security last week. Let’s continue that good start by making the test matrix a permanent thing, with continuous integration regularly checking changes against various environments. The deployment scenarios should definitely include the plumbing variations like Apache/Mongel, Lighttpd/FastCGI, etc. The matrix should also include commonly-encountered environments, like applications dependent on the most popular plugins and Rails Engines.

3. Follow development best practices. As I mentioned, I was frustrated by having to resort to diff to get even a hint as to the nature of the security hole, but that frustration was compounded when I saw in that diff that additional features had been added to a bug fix release. I’m a big fan of the filter_logged_params plugin, and I’m glad it’s now in core, but a bug fix release is not the time to add it to core. If you are going to make a critical bug fix release and then urge people to immediately install it, the changes in the should be as minimal as possible. No new functionality should be added.

4. Improve the bug/patch submission process. I hesitated to add this item to the list, since I’m not sure I have a good recommendation, but the patch submission / bug reporting process needs some help. Patches languish far too long in Trac, frustrating those who submit them, and the signal-to-noise ratio can be low, frustrating those who review them. Perhaps the new QA team can be the front line of people who review new Trac submissions, thus reducing the noise seen by the core and letting them more quickly get to and incorporate the quality tickets.

Again, let me say how much I enjoy using Rails and how much I appreciate the effort put in by all those who contribute code, documentation, support, etc. This is why I felt I had to write this, as the better Rails is, the happier I’ll be. If these suggestions are followed, I know we’ll be on the track to a more reliable and predictable development and release process for Rails, and that will only make life better for all of us who use it.

private voyeur russian voyeur voyeur sex voyeur web adult voyeur amateur voyeur asian voyeur bathroom voyeur beach voyeur black voyeur candid voyeur college voyeur fotos voyeur french voyeur gay voyeur girl voyeur hidden camera voyeur homemade voyeur igor voyeur japan voyeur japanese voyeur locker room voyeur mature voyeur naked voyeur nude beach voyeur nude voyeur nudist voyeur original voyeur outdoor voyeur private voyeur rtp public voyeur real voyeur sexy voyeur shower voyeur teen voyeur toilet voyeur top voyeur true voyeur uk voyeur upskirt voyeur vince voyeur voyeur bikini voyeur blog voyeur cam voyeur camera voyeur clips voyeur dorm voyeur france voyeur gallery voyeur girls voyeur hidden voyeur house voyeur masturbation voyeur movies voyeur pee voyeur photos voyeur pics voyeur pictures voyeur porn voyeur post voyeur pussy voyeur rtp voyeur russia voyeur site voyeur spy voyeur submitted voyeur tgp voyeur thumbs voyeur videos voyeur vids voyeur webcam voyeur wife voyeur window voyeur women wc voyeur xxx voyeur young voyeur amature voyeur argentina voyeur beach cabin voyeur beach voyeur pics changing room voyeur club voyeur dressing room voyeur erotic voyeur explicit voyeur filthy voyeur hardcore voyeur hotel voyeur lesbian voyeur panty voyeur pantyhose voyeur school voyeur spring break voyeur street voyeur tanning bed voyeur twisted voyeur voyeur brazil voyeur couples voyeur mpegs

Actions

Informations

9 responses to “Rails is growing up”

Elliot Smith (11:43:22) :

Great suggestions, well reasoned. I wholeheartedly second them. Particularly the “languishing patches” issue…

Anonymous (13:18:17) :

I am sure the rails community would welcome your efforts at forming a QA team. Lead by example!

Ben (19:02:26) :

If I were qualified to lead that effort, I just might throw my hat in the ring. :)

Dr Nic (23:56:43) :

Re: #3 – I was thinking about the awkward release process due to SVN. Perhaps someone who has a best practise for integrating/releasing bug fixes, and for managing a major release path, could write up what their best practise is. E.g. branching and merging? etc

Benjamin (00:45:21) :

I also believe rails is growing up, but in short, that is stating the obvious. It is changing and maturing and due to the large incorporation of it in the last year and a half in web 2.0 projects, it’s excelled the development. However… it still is stunted by a grid-iron management team in the sense that it doesn’t feel like a completely open-source project all the time, even though anyone can contribute. It seems still very core-dev team specific, but I think that team is slowly growing and many people are becoming more interested in contributions.
- ben @ http://rubyonrailsblog.com/

Ben (05:27:20) :

@Dr. Nic: That’s a good point. If I can dig up a link that goes into more detail about how to use SVN for release management, I’ll post it. If not, I’ll write something up.

16 Great Ruby Articles and Resources In The $100 Contest So Far (10:11:39) :

[...] 5. Ruby/Tk Client for SOAP Server by Satish Talim. 6. Ruby-Prof and Call Graphs by Pat Eyler. 7. Profile and Ruby-Prof: Getting Specific by Pat Eyler. 8. Security Threat Last Week by Nick Seiger (some insight into the 1.1.4->1.1.6 kerfuffle). 9. Finding Out Who Called a Partial in Rails by Michael Mahemoff. 10. A Perl of Great Price by Rick DeNatale (a look at some of how Perl has influenced Ruby). 11. Scriptaculous Rails from TechKnow Zenze. 12. Rails Is Growing Up by Ben Curtis. 13. 3 Skills to Make You A More Valuable Rails Developer by Matt Margolis. 14. Ruby or Rails Cheat Sheets from TechCheatSheets.com. 15. PuneRuby’s SOAP Server and Client by Satish Talim. 16. Ruby/Tk by Satish Talim. [...]

ben (09:21:58) :

I’d love to see: 1) better documentation (if your method takes a hash – document it!) and 2) a way to release Rails apps that doesn’t require you to be Linus Torvalds’ first child… Rails is super easy but, unless you’re a Linux guru, forget about getting it running in production on a non-webbrick server. Where’s the “apt-get rails-production-box”? I can’t believe this still doesn’t exist.

Still WAY better than .Net though.

Final Entries in the Ruby Inside $100 + $15 Contest (05:18:01) :

[...] 1. Setting Up a Rails Development Environment and Deploying to Textdrive by Jordan McKible. 2. Anatomy of an Attack Against Rails 1.1.4 by Evan Weaver. 3. Top 13 Ruby on Rails Presentations from TechKnow Zenze. 4. Noobies First Impression of His First RoR Project by Shane Thomas. 5. Ruby/Tk Client for SOAP Server by Satish Talim. 6. Ruby-Prof and Call Graphs by Pat Eyler. 7. Profile and Ruby-Prof: Getting Specific by Pat Eyler. 8. Security Threat Last Week by Nick Seiger. 9. Finding Out Who Called a Partial in Rails by Michael Mahemoff. 10. A Perl of Great Price by Rick DeNatale. 11. Scriptaculous Rails from TechKnow Zenze. 12. Rails Is Growing Up by Ben Curtis. 13. 3 Skills to Make You A More Valuable Rails Developer by Matt Margolis. 14. Ruby or Rails Cheat Sheets from TechCheatSheets.com. 15. PuneRuby’s SOAP Server and Client by Satish Talim. 16. Ruby/Tk by Satish Talim. 17. 10 Reasons Why Rails Will Succeed by Larry Myers. 18. Ruby Isn’t Always Dynamic by Chris Carter. 19. Using Simile Timeline with Ruby on Rails views by Duncan Beevers. 20. Writing a Typo Sidebar Test First in Rails by Paul Ingles. 21. How Dynamic Finders Work by Josh Susser. 22. Magic Join Model Creation by Josh Susser. 23. Migration Wars: The Model Strikes Back by Jon Leighton. 24. Lite Rails: The DBA’s Toolkit by Chris Carter. [...]