Skip to content

Instantly share code, notes, and snippets.

@fredoliveira
Last active December 16, 2015 23:59
Show Gist options
  • Save fredoliveira/5517211 to your computer and use it in GitHub Desktop.
Save fredoliveira/5517211 to your computer and use it in GitHub Desktop.
For great victory. And faster development.
# grab the patch
# background info: https://gist.github.com/funny-falcon/4136373
curl -O https://raw.github.com/gist/4136373/falcon-gc.diff
# install ruby 1.9.3 patch level 327 with speed patch
rvm reinstall ruby-1.9.3-p327 --patch falcon-gc
# activate the new ruby
rvm use --default ruby-1.9.3-p327
# install zeus
# background info: https://github.com/burke/zeus
# also: http://railscasts.com/episodes/412-fast-rails-commands
gem install zeus
# run it
zeus start
@ches
Copy link

ches commented May 4, 2013

Zeus is kind of a further evolution of Spin so I've kept an eye on it and tried it a few times. I've held off on it for a few reasons:

  1. Simply resistance of fooling around with the setup again, which implies some laziness I guess -- after getting sick of Spork's invasiveness, I was happy to swing far in the other direction with Spin because it's non-invasive and dead-simple. It's like 200 LOC that's just good ol' Unix process smarts. No fucking config file. It's not quite as fast as Spork but has never given me the slightest bit of yak-shave headache, which has been worth far more to me. The new tools like Zeus have the same non-invasive philosophy, but the complexity is on the rise again.

    Probably my biggest distaste with Zeus is the foreground process -- as you noted in your commit message, that makes things awkward for the foreman/guard setup. It seems like a small thing but I really do hate the fact that I need to run two commands and use two tmux windows to start the app in dev. One foreman start and its nice logging has really grown on me. Personally I develop in tmux all day long so sacrificing the screen real estate of another window, or moving to a tab I otherwise have no need for, just to run the dumb foreground Zeus server truly irks me.

  2. I've been watching the development of Spring also, holding off on making a move while it matures a bit. I like the philosophy, and the transparency it should be able to achieve as wrinkles get ironed out. Jon Leighton is a badass dude, smart, and supports his projects very well. His relationship to Rails core also probably means that, if any of these things are ever deemed "official" in some way, he's got a good chance.

In theory none of these tools needs to be in the Gemfile and it should be easy to just let a developer try out and use their preference without anyone else being the wiser, but of course Guard integration gets in the way of it leaving the project repo untainted.

All of that said, I realize that everyone has different dev environment working preferences and I'm willing to give it a try on a branch for awhile if everyone else likes it. But I'd propose we also give Spring a trial, there's a guard-spring plugin as well. The automatic background process management might work really nicely with our foreman/guard setup.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment