On Thu, Dec 8, 2011 at 10:02 AM, Michael Pearson <[email protected]> wrote: > > > On Thu, Dec 8, 2011 at 9:51 AM, Dmytrii Nagirniak <[email protected]> wrote: >> >> >> On 07/12/2011, at 9:13 PM, Mike Williams wrote: >> >> On 07/12/2011, at 6:01 PM, Dmytrii Nagirniak wrote: >> >> Every time I hear something like this (different environments) I remember >> a DBA I used to work with. He said that you should always run the same >> environment everywhere. >> >> >> Indeed. On the other hand, I think the benefits we got from using a >> lighter-weight stack for development outweighed the disadvantages. >> >> >> I definitely feel the benefits of lightweight dev stack (I myself use >> sqlite during dev). >> But I when you need to do a little bit more complex things (geospatial, >> DB-driven full-text search etc) then it just doesn't work well. >> You either have to effectively maintain both dev and prod environments. >> >> But I agree that something as RDBMS can be relatively easy abstracted >> away. > > > <trollhat> > > You CAN, but you probably don't want to, as you'll start to have lots of fun > with heisenbugs. > > One fun one I had a while ago was sqlite and mysql doing completely > different things WRT nested transactions. Spent a while wondering why tests > were failing on CI (mysql) but passing on the devs machines (sqlite, > usually). > > These days I have a policy of software that runs in prod runs in dev and > test. Use unicorn/nginx in production? Don't run your dev environment as > passenger/apache. > > There's certain cases where that can be unreasonable (eg, JRuby warmup time) > but for me that's a reason to _not_ use JRuby more than it is to use > entirely different interpreters between environments. I have a massive rant > forming in my head regarding why your development environment is just as > important as your production one, and why you should avoid software licenses > that restrict your developers ability to use production software like the > plague. > > I don't go as far as Ted Dzuiba and say that people shouldn't develop on > Macs because you don't ship on Macs, but I will say that developing with > JRuby if you're shipping JRuby will prevent a lot of "What? I can't do X in > JRuby?". > > -- > Michael Pearson
I occassionally run my work project on other implementations of Ruby for the fun of it. Hopefully it'll lead to the alternative implementations being better, and maybe the bug reports will help improve RubySpec. About half of my bug reports for Rubinius are the result of running my work project against it, and the other half are from the Small Eigen Collider. https://github.com/rubinius/rubinius/issues/created_by/agrimm?sort=created&direction=desc&state=closed&page=1 https://github.com/agrimm/small_eigen_collider/wiki/Bugs-found If finding and reporting bugs is easy, and workarounds are time-consuming and waiting for bug fixes takes a while, then it may make sense to run tests on Ruby implementations you aren't currently using. Andrew -- You received this message because you are subscribed to the Google Groups "Ruby or Rails Oceania" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/rails-oceania?hl=en.
