# Is it safe to use rails engine?

**URL:** <https://www.ruby-forum.com/t/is-it-safe-to-use-rails-engine/75589>\
**Category:** Rails\
**Created:** [November 11, 2006, 4:18am UTC](https://www.ruby-forum.com/t/is-it-safe-to-use-rails-engine/75589 "2006-11-11T04:18:21Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![WuyaSea\_O](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/w/ac8455/32.png) [@WuyaSea\_O](https://www.ruby-forum.com/u/WuyaSea_O)\
**Post date:** [November 11, 2006, 4:18am UTC](https://www.ruby-forum.com/t/is-it-safe-to-use-rails-engine/75589/1 "2006-11-11T04:18:21Z")

</div>

I’ve read everything I can read about rails engine. I think I have a  
fair amount of idea of what it does, but I still can’t draw my  
conclusion whether it’s safe to use the rails engine.

Like everyone else, I’m planning to create the next big thing  
(myspace2, or youtube2). just for pete’s sake, say this next big thing  
will do everything under the sky, social networking, photo sharing,  
blogging, wiki, etc. I can program it in 1 of 3 ways:

1. giant rails app does everything.
2. use rails engine, so social net, photo, blogging, each will be an  
engine. so 1 app, multi engines.
3. create separate rails app for each, so if i want social net, photo  
share, blog, then that’s 3 rails app. and use one central logging  
system like how google account works.

as I’ve read, rails engine is fairly new and changing, so is rails. So  
if I choose the rails engine road, will my app work down the road? eg,  
like when rails 1.2 comes out? I’m in no position to debug either rails  
or engine’s internal.

which way would you do?

thanks.

---

<div class="post-metadata">

**Author:** ![WuyaSea\_O](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/w/ac8455/32.png) [@WuyaSea\_O](https://www.ruby-forum.com/u/WuyaSea_O)\
**Post date:** [November 11, 2006, 8:48am UTC](https://www.ruby-forum.com/t/is-it-safe-to-use-rails-engine/75589/2 "2006-11-11T08:48:46Z")

</div>

WuyaSea O. wrote:

> 1. use rails engine, so social net, photo, blogging, each will be an  
> which way would you do?
> 
> thanks.

lol. LMfAO this is hilarous.

tells us how much u kno

---

<div class="post-metadata">

**Author:** ![WuyaSea\_O](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/w/ac8455/32.png) [@WuyaSea\_O](https://www.ruby-forum.com/u/WuyaSea_O)\
**Post date:** [November 11, 2006, 4:41pm UTC](https://www.ruby-forum.com/t/is-it-safe-to-use-rails-engine/75589/3 "2006-11-11T16:41:36Z")

</div>

On 11/11/06, jo [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> WuyaSea O. wrote:
> 
> > as I’ve read, rails engine is fairly new and changing, so is rails. So  
> > if I choose the rails engine road, will my app work down the road? eg,  
> > like when rails 1.2 comes out? I’m in no position to debug either rails  
> > or engine’s internal.
> 
> lol. LMfAO this is hilarous.
> 
> tells us how much u kno

wow, jo. real constructive. instead of mocking, why don’t you help by  
giving him a tip? and if you don’t want to give a tip point him  
towards a link, or even keywords he can use in google.

–  
Austin G.  
Thinking & Making: IA, UX, and IxD  
[http://thinkingandmaking.com](http://thinkingandmaking.com)  
removed\_email\_address@domain.invalid

---

<div class="post-metadata">

**Author:** ![WuyaSea\_O](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/w/ac8455/32.png) [@WuyaSea\_O](https://www.ruby-forum.com/u/WuyaSea_O)\
**Post date:** [November 12, 2006, 1:18am UTC](https://www.ruby-forum.com/t/is-it-safe-to-use-rails-engine/75589/4 "2006-11-12T01:18:58Z")

</div>

jo wrote:

> lol. LMfAO this is hilarous.
> 
> tells us how much u kno

I have just one question for you, Jo. Do you, by chance, spend all  
your time in your parents’ basement playing online games, except when  
you’re grounded?

Why do I ask? No reason.

---

<div class="post-metadata">

**Author:** ![WuyaSea\_O](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/w/ac8455/32.png) [@WuyaSea\_O](https://www.ruby-forum.com/u/WuyaSea_O)\
**Post date:** [November 12, 2006, 4:56am UTC](https://www.ruby-forum.com/t/is-it-safe-to-use-rails-engine/75589/5 "2006-11-12T04:56:43Z")

</div>

> 1. giant rails app does everything.
> 2. use rails engine, so social net, photo, blogging, each will be an  
> engine. so 1 app, multi engines.
> 3. create separate rails app for each, so if i want social net, photo  
> share, blog, then that’s 3 rails app. and use one central logging  
> system like how google account works.

Meanwhile - to address the actual question, while engines might not  
always be such a great way to distribute _general purpose_ code, they  
seem to be to be a perfectly good way to create vertical slices in a  
special purpose app, as in 2. above.

Anyone have any (constructive, helpful) thoughts?

=vg

---

<div class="post-metadata">

**Author:** ![WuyaSea\_O](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/w/ac8455/32.png) [@WuyaSea\_O](https://www.ruby-forum.com/u/WuyaSea_O)\
**Post date:** [November 12, 2006, 5:05am UTC](https://www.ruby-forum.com/t/is-it-safe-to-use-rails-engine/75589/6 "2006-11-12T05:05:14Z")

</div>

I like em

But im interested in what all the concern is about their use

---

<div class="post-metadata">

**Author:** ![WuyaSea\_O](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/w/ac8455/32.png) [@WuyaSea\_O](https://www.ruby-forum.com/u/WuyaSea_O)\
**Post date:** [November 12, 2006, 10:55am UTC](https://www.ruby-forum.com/t/is-it-safe-to-use-rails-engine/75589/7 "2006-11-12T10:55:31Z")

</div>

I haven’t used engines myself, but to decide between 1 and 3 would,  
imho, depend on how interconnected you want your various pieces to be.

Google’s applications are fairly decoupled and handled by different  
teams of developers. Each team simply needs to know how to utilize the  
central log-in API.

Myspace, on the other hand, is very interconnected: blogs are tied to  
profiles which can be tied together in groups, events, etc. With so  
many touch-points, it makes more sense to handle them under one  
application roof.

And then there’s everything in between.

Good luck!

---

<div class="post-metadata">

**Author:** ![WuyaSea\_O](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/w/ac8455/32.png) [@WuyaSea\_O](https://www.ruby-forum.com/u/WuyaSea_O)\
**Post date:** [November 12, 2006, 5:17am UTC](https://www.ruby-forum.com/t/is-it-safe-to-use-rails-engine/75589/8 "2006-11-12T05:17:15Z")

</div>

DHH isn’t (or wasn’t?) a big fan of engines:  
[http://weblog.rubyonrails.com/2005/11/11/why-engines-and-components-are-not-evil-but-distracting/](http://weblog.rubyonrails.com/2005/11/11/why-engines-and-components-are-not-evil-but-distracting/)

Also the core team doesn’t seem to worry much about breaking them since  
they  
use non-public Rails API methods.

To the OP I think the 3rd option is your best bet. The functionality  
you  
describe is easily categorized into separate web applications.

On 11/11/06, Clayton C. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> [[mailto:removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)] On Behalf Of Victor G.
> 
> > system like how google account works.  
> > –  
> > Posted via [http://www.ruby-forum.com/](http://www.ruby-forum.com/).
> 
> >

–  
Thanks,  
-Steve  
[http://www.stevelongdo.com](http://www.stevelongdo.com)

---

<div class="post-metadata">

**Author:** ![WuyaSea\_O](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/w/ac8455/32.png) [@WuyaSea\_O](https://www.ruby-forum.com/u/WuyaSea_O)\
**Post date:** [November 12, 2006, 10:43pm UTC](https://www.ruby-forum.com/t/is-it-safe-to-use-rails-engine/75589/9 "2006-11-12T22:43:27Z")

</div>

with all your comments, i’m more leaning towards the 3rd option now.  
thanks all.
