# KDE Ruby SOC projects

**URL:** <https://www.ruby-forum.com/t/kde-ruby-soc-projects/89261>\
**Category:** Ruby\
**Created:** [March 19, 2007, 3:35am UTC](https://www.ruby-forum.com/t/kde-ruby-soc-projects/89261 "2007-03-19T03:35:48Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![casper\_the\_ghost](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/58956e/32.png) [@casper\_the\_ghost](https://www.ruby-forum.com/u/casper_the_ghost)\
**Post date:** [March 19, 2007, 3:35am UTC](https://www.ruby-forum.com/t/kde-ruby-soc-projects/89261/1 "2007-03-19T03:35:48Z")

</div>

The KDE project has been approved for Google’s Summer of Code project  
with an unlimited number of possible projects subject to project  
quality and suitable mentors. Alexander Dymo has proposed ‘Implement  
foundations for KDevelop4 Ruby language support’ here:

[http://techbase.kde.org/Projects/Summer\_of\_Code/2007/Ideas#KDevelop\_.26\_Quanta](http://techbase.kde.org/Projects/Summer_of_Code/2007/Ideas#KDevelop_.26_Quanta)

And that is the most important starting point for KDevelop 4 ruby  
support.

I’m happy to mentor other projects to improve ruby support as part of  
SOC, and here are my dreams. A dream is not the same as a concrete  
proposal to Google, and so if you want to volunteer we will need to  
come up with a proposal and deliverables that can actually be done in  
the time available.

- Interactive visual irb. Like a Smalltalk environment I think ruby  
projects  
should be developed against an always running program. This makes  
code  
completion much easier as we can use ruby’s runtime introspection  
instead of  
faking it with a combination of a static parser and guesswork. Can  
this be  
done if the language is text based, rather than image based like  
Smalltalk?  
How do we save state in between sessions?

- A better ruby debugger. The current KDevelop ruby debugger is in  
pure ruby  
and is very slow and doesn’t work with Rails. The next one should be  
based on  
the C ruby-debug project and integrate with qtruby/korundum in the  
same way  
as the current debugger, as well as actually working with Rails.

- Support for QtRuby/Korundum Rails activeresource projects. The  
recent  
release of Rails allows project to be based on RESTful style where the  
same  
controller method can server up html, xml or rss etc formats. This  
means that  
QtRuby is a great way to write rich web clients that leave AJAX/Flash  
for  
dead if only we can have great IDE support for it (ie integrated Qt  
Designer,  
downloading qtruby code from the web server, graphic UI to the Rails  
scafolding etc). The Rails app on the server sends an xml message  
which is  
then converted into a ruby class at the client end by ActiveResource,  
and  
QtRuby can then use it as a basis for a Qt::ActiveItemModel to drive  
a  
Qt::TableView or Qt::TreeView, or forms containing Qt::LineEdit etc  
with data  
bound from the ActiveResource instance.

- Alternatively, QtRuby/Korundum work great with ActiveRecord and we  
can add  
support to KDevelop for developing database applications visually.  
NeXT’s  
Enterprise Object Framework did this fine over ten years ago, and I  
would  
like to do much the same thing but with ActiveRecord. Rails is very  
much text  
based, and it would be nice to develop database applications  
diagrammatically.

- Combining ActiveResource with ActiveRDF, and free text indexing will  
allow  
new types of application to be written. I have a prolog inference  
engine that  
I have ported from an Objective-C one that I wrote. I think this would  
be a  
perfect match to extend ActiveRDF to do inferencing on SPARQRL  
endpoints.  
There is already a simple rule engine for ActiveRDF, but I think it  
would be  
much more powerful with prolog style backtracking. So this is a  
perfect  
student project in my opinion.

– Richard

---

<div class="post-metadata">

**Author:** ![casper\_the\_ghost](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/58956e/32.png) [@casper\_the\_ghost](https://www.ruby-forum.com/u/casper_the_ghost)\
**Post date:** [March 19, 2007, 2:22pm UTC](https://www.ruby-forum.com/t/kde-ruby-soc-projects/89261/2 "2007-03-19T14:22:47Z")

</div>

On 3/18/07, removed\_email\_address@domain.invalid [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> How do we save state in between sessions?  
> This is an interesting idea which I think deserves its own thread, so  
> I’ll start one.

–  
Rick DeNatale

My blog on Ruby  
[http://talklikeaduck.denhaven2.com/](http://talklikeaduck.denhaven2.com/)
