Where to start

Hi all I am new to Ruby been trying to learn for a while but didn’t get
a chance till now.

Here is my question:

I would like to create a application (not a web application) which will
run on linux machine.

What is the best application to create a ruby application with a GUI.
Where can I get 101 instructions or a cook book type of information on
Ruby and designing a GUI based ruby application.

Thank you,

The easiest (and most pleasant to work with!) Ruby GUI toolkit is
definitely Shoes:

http://shoesrb.com/

Check out the site and the docs, they are very easy to understand.

Shoes was used to build Hackety Hack, an app suitable to teach Ruby to
kids (but quite fun for adults too):

http://hackety-hack.com/

Fabio C.

www.H3RALD.com

Steve: thanks for helping maintaining such an awesome toolkit.

I really can’t wait until you can provide a proper gem. While Shoes is
fine for standalone applications, I’d like to be able to add a GUI to an
existing project, without being ‘tied’ to Shoes’ packaging black magic
for distribution.

I read you guys are planning a partial rewrite in pure ruby… I can’t
wait! I would like to contribute actually, I just don’t know where to
start and what you are looking for right now.

Fabio C.

www.H3RALD.com

+1 for Shoes. I am a bit biased, being on Team Shoes, though. :wink:

On Tuesday, February 01, 2011 02:40:17 pm Fabio C. wrote:

I really can’t wait until you can provide a proper gem. While Shoes is fine
for standalone applications, I’d like to be able to add a GUI to an
existing project, without being ‘tied’ to Shoes’ packaging black magic for
distribution.

+1

I haven’t considered Shoes in quite a long time because of precisely
this
reason. I have several existing ways to deploy apps, and it’d be really
nice
if Shoes could separate the GUI framework from the deployment system. (I
suppose the deployment system might depend on Shoes, but I see no reason
it
should be the other way around.)

Monkeybars seems slightly less bound to Rawr – hey, at least I can
make a
rawr app without Monkeybars – but I’d still much rather have it
entirely
separate, so Ruby people can install my app as a gem.

David, right now, they’re 100% intertwined. That’s the way that _why
liked
it. Not only that, it’s actually pretty integral to how Shoes works.
It’s
largely C code that exposes a Ruby that’s slightly different…
http://shoesrb.com/manual/Rules.html see “Shoes tricky blocks”

Fabio, we’d love to have some contribution. Contact me off-list and I’d
love
to have your help.

On Tuesday, February 01, 2011 05:42:42 pm Steve K. wrote:

David, right now, they’re 100% intertwined. That’s the way that _why liked
it.

Ok. The question is why he liked it, if you’ll pardon the pun.

Not only that, it’s actually pretty integral to how Shoes works. It’s
largely C code that exposes a Ruby that’s slightly different…
http://shoesrb.com/manual/Rules.html see “Shoes tricky blocks”

My first impression is, those don’t look terribly tricky, at least as
far as
implementation. self is changed via instance_eval. The “trick” of
redirecting
drawing seems like an implementation detail, not of the language, but of
whatever classes you use to implement the DSL.

Scrolling down, the only thing I see that looks tricky at all is the
UTF-8
support, and you’d think it would make sense to just use the Unicode
support
that’s built into 1.9, rather than having an entirely different version
of
your own. In fact, it seems like this would cause a lot of problems for
gems
I’d want to use in a Shoes app.

If there’s something I’m missing that absolutely has to modify the
language in
C, is there a reason it couldn’t be implemented as an extension and
scoped to
Shoes?

I don’t mean to imply that the work involved would be trivial. I have
absolutely no idea how much work it would be. I just don’t see any major
blockers here – I really don’t see a good reason why Shoes should carry
its
own version of Ruby, when we have all sorts of other GUI toolkits,
application
frameworks, and DSLs distributed as plain old gems.

Ok. The question is why he liked it, if you’ll pardon the pun.

First of all, a disclaimer: I never met or talked to _why. So I can’t
really
fully represent what his wishes were. That being said, you have to
remember
where Shoes came from: Hackety Hack. Hackety needs to have everything
that
it needs to function wrapped up inside of it: _why didn’t want anyone to
have to download anything else to get it working.

I don’t mean to imply that the work involved would be trivial. I have

absolutely no idea how much work it would be.

Honestly, I can’t think of anything in Shoes that would make it 100%
necessary. But the effort to convert everything over would certainly be
non-trivial.

I just don’t see any major
blockers here – I really don’t see a good reason why Shoes should carry
its
own version of Ruby, when we have all sorts of other GUI toolkits,
application
frameworks, and DSLs distributed as plain old gems.

_why always referred to Shoes as an ‘app toolkit.’ He saw it as a
different
thing. And Hackety needs it to be that way.

That said, we are working on a pure Ruby Shoes, and it’ll end up being
the
future of Shoes. That said, it’s going to be a bit still, and we’ll
still
have to work on getting the packaging system fully operational as well.

All in good time.

On Wednesday, February 02, 2011 11:41:07 am Steve K. wrote:

Ok. The question is why he liked it, if you’ll pardon the pun.

First of all, a disclaimer: I never met or talked to _why. So I can’t
really fully represent what his wishes were. That being said, you have to
remember where Shoes came from: Hackety Hack. Hackety needs to have
everything that it needs to function wrapped up inside of it: _why didn’t
want anyone to have to download anything else to get it working.

That sounds like a problem for something like rawr. As far as I can
tell, it’s
possible to have a rawr app which doesn’t use monkeybars, and vice
versa.

I just don’t see any major
blockers here – I really don’t see a good reason why Shoes should carry
its
own version of Ruby, when we have all sorts of other GUI toolkits,
application
frameworks, and DSLs distributed as plain old gems.

_why always referred to Shoes as an ‘app toolkit.’ He saw it as a different
thing. And Hackety needs it to be that way.

None of which seems to contradict what you said here:

That said, we are working on a pure Ruby Shoes,

Hackity doesn’t need Shoes as a whole to be that way, it just needs
some
sort of “app toolkit” – again, something like rawr, though maybe rawr
itself
isn’t appropriate. I can see why such an “app toolkit” might be tightly
bound
to a GUI toolkit, but I see no reason it should be the other way around.

I don’t think we actually disagree here.

I don’t think we actually disagree here.

Totally. Just explaining why things are the way that they are, and why
they
aren’t different yet. :slight_smile:

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs