# Ruby Web Application Framework Roundup

**URL:** <https://rubytalk.org/t/ruby-web-application-framework-roundup/9970>\
**Category:** ruby-talk\
**Created:** [2 February 2004 16:49 UTC](https://rubytalk.org/t/ruby-web-application-framework-roundup/9970 "2004-02-02T16:49:51Z")\
**Posts on this page:** 3\
**Page:** 3

<div class="post-metadata">

**Author:** ![Kirk\_Haines](https://avatars.discourse-cdn.com/v4/letter/k/c6cbf5/32.png) [@Kirk\_Haines](https://rubytalk.org/u/Kirk_Haines)\
**Post date:** [5 February 2004 17:10 UTC](https://rubytalk.org/t/ruby-web-application-framework-roundup/9970/41 "2004-02-05T17:10:43Z")

</div>

> In a simple CMS system i’m creating, i have a ui that  
> allows the owner of the site to edit/create (static)  
> content on the fly. Then i started thinking that i’d  
> like to have some smarts in these files. Instead of  
> setting up a harnessing mechanism with Amrita, i added  
> a property to the content, executable, and if it is  
> on, i complile the text through the eruby compiler and  
> eval the code. Dangerous, i know, but it works  
> amazingly well so far. Now, I can create content as  
> well as logic on the fly. Right now, within these  
> files, the world is my oyster (read destruction zone  
> :).

I used to be a big fan of mixing code right into the HTML, but have, over  
time, developed an aversion to that paradigm. I don’t find that the  
advantages outweigh the disadvantages.

I understand where you are coming from with the approach you have taken.  
I have a static content CMS system that many of my clients use to maintain  
their sites. I’m reimplementing it in Ruby with better design and a  
better feature set, and one of the things that I wanted to do was to allow  
for the possibility of executable content.

What I have settled on is, basically, a file permissions sort of  
arrangement for the web content. Each component of content has a  
presentation file, and may have a code file. Whether a site and a user is  
allowed access to the code files is set by permissions flags.

This lets me setup components that do things like handle the site  
navigation creation and basic page layout, and lets me make them  
uneditable by the client, or lets me make the code portion uneditable,  
whil still, at least potentially, giving the client access to at least  
some of the power of code, if they want/need it themselves, while still  
keeping the code blocks out of the HTML.

> This has obvious advantages(and disadvantages), but it  
> also has one BIG advantage that is not immidiately  
> clear - i can compile the code with eruby and save  
> THAT, **which is now pure ruby** , into a supporting  
> table. So it is compiled only ONCE.

That is nice. One of the future enhancements for Iowa that I am looking  
at is the ability to save the components after they have been parsed so  
that on startup, they do not necessarily all have to be reparsed. While  
the system is running, the components only get reparsed if they change,  
but during startup, if there are a lot of components with a lot of HTML in  
them, parsing all of them can take a while.

> The one thing missing from many of these Web  
> Application Platforms/Frameworks is the ability to  
> simply create websites - with content mgt and a common  
> look and feel. I’m not as interested in the webobjects  
> or j2ee platform/methodology as i am in creating sites  
> that are easy to build and maintain. For me, i guess  
> i’m more interested in a Web Site Platform - that i  
> can extend as i see fit. The above works pretty good  
> for me so far. I’d be interested in any constructive  
> crit you may have.

That is more or less where I am headed, as well. In my case, clients are  
typically businesses that want to be able to manipulate their site content  
at will without having to worry about the tricky bits like overall site  
layout or getting the navigation right. So I need a system that lets me  
give them an overall structure, provide certain tools or components to  
them for their use, and that gives them control while at the same time  
limiting the damage that they can do if they mess up. It needs to be easy  
to setup a site in, easy to change look and feel aspects of the overall  
site with, and I want to use Ruby because I just enjoy using it so damn  
much.

Iowa is about perfect for the way that I work, at least as I have adjusted  
it, and I’m hopeful that after I release the current in-progress code  
tree, that a few other people might give it a whirl.

Kirk Haines

> **···**
>
> On Fri, 6 Feb 2004, paul vudmaska wrote:

---

<div class="post-metadata">

**Author:** ![Tom\_Copeland](https://avatars.discourse-cdn.com/v4/letter/t/94ad74/32.png) [@Tom\_Copeland](https://rubytalk.org/u/Tom_Copeland)\
**Post date:** [5 February 2004 17:25 UTC](https://rubytalk.org/t/ruby-web-application-framework-roundup/9970/42 "2004-02-05T17:25:08Z")

</div>

I know just the place for it!

[http://rubyforge.org/](http://rubyforge.org/) 🙂

Tom

> **···**
>
> On Thu, 2004-02-05 at 12:10, Kirk Haines wrote:
> 
> > Iowa is about perfect for the way that I work, at least as I have adjusted  
> > it, and I’m hopeful that after I release the current in-progress code  
> > tree, that a few other people might give it a whirl.

---

<div class="post-metadata">

**Author:** ![Kirk\_Haines](https://avatars.discourse-cdn.com/v4/letter/k/c6cbf5/32.png) [@Kirk\_Haines](https://rubytalk.org/u/Kirk_Haines)\
**Post date:** [5 February 2004 17:34 UTC](https://rubytalk.org/t/ruby-web-application-framework-roundup/9970/43 "2004-02-05T17:34:05Z")

</div>

Probably maybe. I looked at Rubyforge a couple of months ago but decided  
against it then. I have the CVS tree local to my development environment  
right now. When I am ready to release I’ll make an entry in RAA and may  
flip Rubyforge then.

Kirk Haines

> **···**
>
> On Fri, 6 Feb 2004, Tom Copeland wrote:
> 
> > I know just the place for it!
> > 
> > [http://rubyforge.org/](http://rubyforge.org/) 🙂

[Previous page](https://rubytalk.org/t/ruby-web-application-framework-roundup/9970.md?page=2)
