Presentation: Vanilla.rb

1 view
Skip to first unread message

James Adam

unread,
Nov 9, 2009, 10:08:25 AM11/9/09
to ruby-...@googlegroups.com
To expand on my previous email, I'm offering to give a short
presentation about Vanilla.rb[1].

Vanilla.rb is a wiki system that I wrote, in Ruby, taking
philosophical inspiration from the REBOL-implemented Vanilla[2].

What makes this novel is that unlike normal wikis where the atom of
information is the 'page', Vanilla breaks it further down, into
'snips'. Snips can be composed together dynamically so, for example,
you only have to have your postal address in one place, and this
content can be included in many different places.

I've extended the core idea in a few ways:

* snips can declare a renderer, which means that I can write some
content in Markdown, and some in Textile, and snips in either can
appear on the same page seamlessly
* snips can contain running code - Ruby, naturally. These can take
parameters, and be referenced either from the page (i.e. 'display my
latest 5 tweets embedded here in this page'), or directly via a URL
(i.e. 'render the latest 10 blog posts as an XML feed').

It's less of a wiki now, and more of a wiki-and-potentially-anything-
else-framework, but despite that ambiguity, its simplicity is its real
strength. I think it's a pretty good example of taking a pure idea,
and exploring the possibilities that its realisation can offer.

Aside from the elegance of its design, here's what I think is
interesting about it, and why you might want to hear about it for 8
minutes or so:

* Not using a schema-based database opens up exciting possibilities
* .... as does rroding the separation between content and data
* Writing new tools and scripts that run on your site, even directly
in the browser, is pretty neat too; ever wanted to add Feature X to
your blog, but dreaded hacking it's cumbersome and assumption-laden
source? Vanilla is for you.
* Deliberately ignoring 'MVC' conventions can be a Good Thing.

Your comments are greatly appreciated, even if they are simply 'huh?
that sounds dull'.

[1]: http://interblah.net/vanilla-rb
[2]: http://www.vanillasite.at

James Adam

unread,
Nov 9, 2009, 12:21:14 PM11/9/09
to em...@acgreen.co.uk, ruby-...@googlegroups.com
On 9 Nov 2009, at 17:19, em...@acgreen.co.uk wrote:

> Didn't you give this talk at LRUG or am I imagining it ?
>
> *confused*

I did speak about vanilla.rb for around 5 minutes last year as part of
a lightning talk thing, but I felt it might be worth a more structured
discussion. In particular, I could use the motivation of presentation
to really polish some areas and develop stronger examples of why I
find it exciting.

It's totally fine to wonder if you may have heard it all before;
however, if people don't start suggesting other more interesting
things they'd like to hear, or like to talk about, you're not going to
have much choice ;-)

- James

Chris Roos

unread,
Nov 11, 2009, 4:27:50 AM11/11/09
to ruby-manor
2009/11/9 James Adam <ja...@lazyatom.com>:

I know you've tried to explain it to me before, and I think I do kinda
understand what it does, I guess I'm just not sure why it does it or
when I'd use it. So, yeah, I think it'd be interesting to hear about
practical applications of vanilla.rb.

Chris

alan

unread,
Nov 24, 2009, 4:30:09 AM11/24/09
to Ruby Manor
+1 Sounds interesting, I'd like to hear more about it.

Jason Cale

unread,
Nov 24, 2009, 10:11:01 AM11/24/09
to ruby-...@googlegroups.com

> +1 Sounds interesting, I'd like to hear more about it.
>
> On Nov 11, 9:27 am, Chris Roos <chrisjr...@gmail.com> wrote:
>> 2009/11/9 James Adam <ja...@lazyatom.com>:
>>
>>> I did speak about vanilla.rb for around 5 minutes last year as
>>> part of
>>> a lightning talk thing, but I felt it might be worth a more
>>> structured
>>> discussion. In particular, I could use the motivation of
>>> presentation
>>> to really polish some areas and develop stronger examples of why I
>>> find it exciting.
>>
>>> It's totally fine to wonder if you may have heard it all before;
>>> however, if people don't start suggesting other more interesting
>>> things they'd like to hear, or like to talk about, you're not
>>> going to
>>> have much choice ;-)
>>
>> I know you've tried to explain it to me before, and I think I do
>> kinda
>> understand what it does, I guess I'm just not sure why it does it or
>> when I'd use it. So, yeah, I think it'd be interesting to hear about
>> practical applications of vanilla.rb.
>>
>> Chris


Put me down for a yes on this too, having played with vanilla.rb I'd
be interested in seeing what is possible.
Reply all
Reply to author
Forward
0 new messages