Railfrog è un CMS minimale fatto in Ruby on Rails. L'idea di partenza era quella di ricreare un cms minimale (tipo l'ottimo Drupal), fatto in ruby.

sudo gem install mime-types
sudo gem install rspec
svn co https://svn.versiondude.net/railfrog/cms/railfrog/trunk/ref_app railfrog-svn-refapp
gedit config/database.yml
Sostituite a mysql, sqlite3, che è molto più veloce da gestire.
rake db:migrate
script/server webrick
http://localhost:3000/users/login
Allo stato attuale c'é stata qualche release, ma siamo ancora lontani dalle aspettative; più che altro ci sono delle faccende strutturali(Rails) tutt'altro che risolte:
Le funzionalità attuali sono abbastanza basilari: si può costruire una pagina tipo sito.com/pippo/mimmi/puppi e il nodo può essere un mime type html, markdown o del file uploadato.
C'é Xinua come editor WYSIWYG e si possono guardare i test fatti con RSPEC.
La versione ref_app da SVN sarà la prima a supportare un sistema plugin (deprecato), il core si sta scomponendo in plugin e se tutto va bene, ci si potrà aspettare una reale diffusione.
Come promesso ironruby è realtà ed è ospitato da rubyforge, lo stesso hosting di Ruby, Rails e Typo
Il principale programmatore, John Lam ha reso disponibile anche uno screencast su come utilizzare il codice.
La licenza adottata è la Ms-Pl (Microsoft Permissive License), che come la GPLv3, è in attesa di essere considerata Open Source o meno.
Dal punto di vista tecnico il progetto è utile, dal punto di vista etico e legale non ho ancora un opinione.
Se una VM condivisa tra linguaggi dinamici (python, ruby, php, perl) mi sembra una cosa furba, condivido che aiutare Microsoft a diffondere delle tecnologie minoritarie (es. ASP.NET e Silverlight) potrebbe essere dannoso.
Guardando la babele dei linguaggi supportati dalle Gtk (lista non aggiornata) viene da mettersi le mani nei capelli. Anche le applicazioni per GNOME non scherzano: Evolution si può estendere un C e C#, Gedit in C e Python, altri in C++, Python, Perl, Java..
Il prezzo della libertà o di una scelta mancata
Ovvero:
(tante librerie Gtk/GNOME) X (i linguaggi supportati) X (Tipo di distribuzione) X (Piattaforma) = troppa ridondanza | spazio | risorse.
Fortuna che arriva la Microsoft ad aiutare l'open source e con IronRuby(IronPython,..) evita di mantenere tutti questi pacchetti, linguaggi e piattaforme.
Certo, le Gtk rimarranno in C, l'utilizzo del linguaggio sarà un po' diverso (così come le librerie), ma se Mono/IronRuby/.. fosse anche sicuro come prestazioni, brevetti e trucchetti, non vi verrebbe voglia di usarlo?
..o forse è sempre la solita storia del divide et impera?
Traduzione in Ruby dell'equivalente in IronRuby.
$ irb
irb(main):001:0> require 'gtk2'
=> true
irb(main):002:0> Gtk.init
=> Gtk
irb(main):003:0> w = Gtk::Window.new "Hello"
=> #<Gtk::Window:0xb73496b4 ptr=0x831a000>
irb(main):006:0> b = Gtk::Button.new "Ok"
=> #<Gtk::Button:0xb733a5ec ptr=0x82feed0>
irb(main):007:0> w.add b
=> #<Gtk::Window:0xb73496b4 ptr=0x831a000>
irb(main):008:0> w.show_all
=> #<Gtk::Window:0xb73496b4 ptr=0x831a000>
irb(main):009:0> Gtk.main
La Microsoft rilascia il compilatore Ruby per .NET (IronRuby) con una licenza Open Source (secondo Miguel de Icaza), e come se non bastasse il progetto sarà ospitato da Rubyforge invece che CodePlex!
Rilasciato Tracker 0.6 con supporto ai metadata XMP, anche dubito che lo sia anche in scrittura.
Uno screencast su come sviluppare facilmente un'interfaccia grafica per il desktop GNOME con Ruby, Gedit e Glade3
Una vaga conoscenza di qualche linguaggio di programmazione.
Un editor di testo (qualche consiglio su come sistemare Gedit) e magari anche un'introduzione a ruby.
apt-get install libgtk2-ruby libglade2-ruby glade-3
Se vi interessa anche la documentazione e le altre librerie (aggiungete rbbr e Ruby-GNOME2)
Se utilizzate Ubuntu è disponibile una versione più aggiornata delle librerie Ruby-GNOME2.
Wiki
Rbbr
irb. È la console interattiva di ruby e scrivendo Gtk::Entry.<tab> vedete direttamente tutti i metodi che supporta
#!/usr/bin/ruby
require 'gtk2'
require 'libglade2'
@threads = []
Gtk.init
@glade = GladeXML.new('data/gui.glade')
@glade.widget_names.each do |name|
instance_variable_set("@#{name}".intern, @glade[name])
UPDATE: A !! new version !! of this guide is avalaible.
UPDATE: This guide was for gedit 2.18.x, please upgrade to gedit 2.20.x to have an easier color scheme managing. Textmate is really a great text-editor (almost an IDE but faster), it has even the support for latest Ruby/Rails technologies like RSpec. On the GNU/Linux side there are also similar full-featured text editor and one is Gedit.
Gedit can be extended by plugins written in C or in Python, here is a tutorial how to set up a Textmate-like Gedit.
By default Gedit supports a lot of languages php, C#, java,.. and Ruby, but Ruby embedded. To enable the sintax highlight in HTML files with embedded ruby code (.rhtml) you have to add 2 files (Thanks to Bitsbam).
From the terminal:
$ wget http://grigio.org/files/x-rhtml.xml; sudo mv x-rhtml.xml /usr/share/mime/packages
$ wget http://grigio.org/files/rhtml.lang; sudo mv rhtml.lang /usr/share/gtksourceview-1.0/language-specs/
The list of the plugins avalaible is growing fast; this is a list of plugins that work well each other.

Snippets: it permits to call structures of code easly and everytime you press TAB the cursor automatically jumps to the right position
Snap Open: it opens the files that contains the word you are typing

=begin
° Introduzione
Ci sono tanti linguaggi di programmazione, il C per il "basso livello",
il Php per il web, il Visual Basic per le interfacce veloci, Java per le
applicazioni multipiattaforma, Bash per lo scripting di sistema, il Perl
per gli exploit..
Tutti simili e ognuno con le proprie peculiarità. Il C rimarrà ancora per
molto lo standard per il basso livello, ma ad alto livello ci sono state
innovazioni che non tutti i linguaggi di programmazione hanno considerato.
Questo documento non ha la pretesa di essere esaustivo sull'argomento
Mi dicono..
3 days 20 hours fa
4 days 16 hours fa
4 days 17 hours fa
5 days 19 hours fa
6 days 3 hours fa
1 settimana 1 giorno fa
1 settimana 5 days fa
1 settimana 6 days fa
2 weeks 14 hours fa
2 weeks 14 hours fa