[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

Ruby IDE

adaworks

12/17/2006 4:03:00 PM

I am new to Ruby, but I have used a lot of other
programming languages including Python, Ada, C++,
Java, etc.

I downloaded Ruby to my Windows machine and installed
it by executing the self-install file (a .exe). An IDE that
came with it, FreeRide, does not seem to work at all. The
editor, SciTE seems pretty useless.

Is there an IDE that actually works that one can use to
develop and compile Ruby. I am guessing there is since
so many people are using it.

Thanks in advance,

Richard Riehle


26 Answers

David Vallner

12/17/2006 4:38:00 PM

0

adaworks@sbcglobal.net wrote:
> Is there an IDE that actually works that one can use to
> develop and compile Ruby.

Here we go again.

Try and search the archives? There have been previous discussions on the
topic. The topic alone tends to cause the signal-to-noise ratio to
decrease though, so some wading through opinionated rants is required.

(By the way, you don't need to compile anything, so a text editor -can-
cover the tiny part of the development cycle that I audaciously guess
you have only used of your IDEs.)

David Vallner

Sam Smoot

12/17/2006 4:40:00 PM

0


adaworks@sbcglobal.net wrote:
> I am new to Ruby, but I have used a lot of other
> programming languages including Python, Ada, C++,
> Java, etc.
>
> I downloaded Ruby to my Windows machine and installed
> it by executing the self-install file (a .exe). An IDE that
> came with it, FreeRide, does not seem to work at all. The
> editor, SciTE seems pretty useless.
>
> Is there an IDE that actually works that one can use to
> develop and compile Ruby. I am guessing there is since
> so many people are using it.
>
> Thanks in advance,
>
> Richard Riehle

Some more IDEs for Windows are: ArachnoRuby, Komodo, Eclipse with Ruby
Development Tools, Visual Studio with Ruby In Steel, RadRails (Eclipse
based, Rails focused).

There seems to be some confusion though: You don't compile Ruby. The
Ruby interpreter executes your source code directly. So other than
syntax checking, integrated help, and syntax highlighting, an IDE
doesn't buy you much. Fortunately, you have "ri" (command-line tool),
"fxri" (GUI version of "ri"), the Firefox Ruby Sidebar, ruby-doc.org,
gem_server (command-line tool to start a local-webserver to view the
RDocs for installed gems), for help (and that's just the shortlist).

Don't forget the power of just dropping into irb and typing:
(MyClass.methods - Object.methods).sort

I use that form of "help" more than anything else these days.

Syntax highlighting is a must IMO, but the UltraEdit syntax snippet is
good enough for me.

Frankly, I recommend _against_ an IDE for Ruby. It's not because there
aren't good ones either. After a bit of adjustment Komodo is a pretty
polished package. ArachnoRuby is great too, though I think it may be a
"dead" project, and has a few quirks. But I don't use class-browsers,
integrated unit-testing suites, etc. There's a command-line equivilent
for each of those with Ruby, and they're a lot more convenient than
learning 5 different ways for 5 different IDEs. So for me at least, I
appreciate the speed dropping a file into UltraEdit, making a quick
change, and saving gives me. I can go through that whole cycle in a
fraction of the time it takes Visual Studio 2005 + Resharper to load on
my work computer...

x1

12/17/2006 4:45:00 PM

0

All I use is SCiTE and I've been writing ruby code for nearly two years.

On 12/17/06, adaworks@sbcglobal.net <adaworks@sbcglobal.net> wrote:
> I am new to Ruby, but I have used a lot of other
> programming languages including Python, Ada, C++,
> Java, etc.
>
> I downloaded Ruby to my Windows machine and installed
> it by executing the self-install file (a .exe). An IDE that
> came with it, FreeRide, does not seem to work at all. The
> editor, SciTE seems pretty useless.
>
> Is there an IDE that actually works that one can use to
> develop and compile Ruby. I am guessing there is since
> so many people are using it.
>
> Thanks in advance,
>
> Richard Riehle
>
>
>
>

David Vallner

12/17/2006 4:59:00 PM

0

Sam Smoot wrote:
> There seems to be some confusion though: You don't compile Ruby. The
> Ruby interpreter executes your source code directly. So other than
> syntax checking, integrated help, and syntax highlighting, an IDE
> doesn't buy you much.

Like integrated unit test support.
Project management.
Debugging with source code navigation.
Semantics-aware code templates.

No, not much, unless you actually learn to use one effectively.

> But I don't use class-browsers,
> integrated unit-testing suites, etc. There's a command-line equivilent
> for each of those with Ruby, and they're a lot more convenient than
> learning 5 different ways for 5 different IDEs.

Erm. The thing is you pick an IDE, stay with it, and use one way to
consume those things only instead of keeping idiosyncracies of
command-line interfaces in your head.

Also, this is too strongly an issue of personal work patterns to be
preached, and I find it irresponsible to mention that without a big YMMV
disclaimer.

> I can go through that whole cycle in a
> fraction of the time it takes Visual Studio 2005 + Resharper to load on
> my work computer...
>

How often a month do you need to load an IDE again? Twice?

David Vallner


Huw Collingbourne

12/17/2006 5:41:00 PM

0


<adaworks@sbcglobal.net> wrote in message
news:HSdhh.6748$Gr2.2195@newssvr21.news.prodigy.net...
> Is there an IDE that actually works that one can use to
> develop and compile Ruby. I am guessing there is since
> so many people are using it.

You don't mention if you are a Visual Studio user. If so, you may want to
try out our IDE, Ruby In Steel, which provides a full range of Ruby and
Rails editing, project management and debugging tools for VS.

best wishes
Huw Collingbourne

http://www.sapphir...
Ruby Programming In Visual Studio 2005


David Vallner

12/17/2006 5:56:00 PM

0

Mushfeq Khan wrote:
> Ideally you would keep your IDE open all the time. But in practice things
> are often less than ideal. As intellijent as these things are, they are
> also
> often very memory and disk intensive and eclipse your computer's resources.
> I have the good fortune of using two rather heavyweight IDEs during the
> course of my daily work and I find that on average I have to restart at
> least once a day due to bugs, corrupted local histories and other general
> wonkiness.
>

Weird, that didn't really happen to me on IDEA yet.

> That's not so bad, but sometimes there are legitimate usage patterns that
> become a real pain. For example, if you're working on several different
> projects each day, all of them large-ish codebases, then you probably don't
> want to keep them all open at the same time. Closing and reloading projects
> in the IDEs that I use is no quicker than a full restart.
>

Oi, talk about pots and kettles. I've never had the scenario of having
to split work time between projects and shamefully oversaw it.

Obviously, the solution is to keep all projects open at once, switching
between the windows (or more probably virtual desktops) and pester your
employer for more RAM ;P


David Vallner

Jim Cochrane

12/17/2006 6:24:00 PM

0

On 2006-12-17, David Vallner <david@vallner.net> wrote:
> --------------enigDE8C94F1688FE918C543A3A4
> Content-Type: text/plain; charset=ISO-8859-1
> Content-Transfer-Encoding: quoted-printable
>
> Sam Smoot wrote:
>> There seems to be some confusion though: You don't compile Ruby. The
>> Ruby interpreter executes your source code directly. So other than
>> syntax checking, integrated help, and syntax highlighting, an IDE
>> doesn't buy you much.=20
>
> Like integrated unit test support.
> Project management.
> Debugging with source code navigation.
> Semantics-aware code templates.

Not to mention the ability to get a comprehensive view of the structure of
a system (inheritance hierarchies, client relationships, subsystems, class
interfaces [public methods and specs], etc.) as an aid in refactoring or
adding components. It's pretty hard to do that from the command line.
(Not sure if any Ruby IDEs can currently do this, but it's so useful, I
suspect it will be available in a few years.)


--

Sam Smoot

12/17/2006 8:20:00 PM

0


David Vallner wrote:
> Like integrated unit test support.

Meh? What's a couple keystrokes? Does that really help you be more
productive? I've used TestDriven.NET quite a bit, but I don't think
twice about test integration with Test::Unit.

> Project management.

Why would I want Gantt charts in my IDE?

> Debugging with source code navigation.

You have a point here. I've lived without it, but it would be a plus.
Am I willing to trade speed for it though? Probably not.

> Semantics-aware code templates.

You don't need an IDE for this.

> No, not much, unless you actually learn to use one effectively.

Ouch.

> Erm. The thing is you pick an IDE, stay with it, and use one way to
> consume those things only instead of keeping idiosyncracies of
> command-line interfaces in your head.

Lucky you. I'm not seeing how "IDE idiosyncracies < command-line
idiosyncracies" though. Plus I work on Linux, Macs and Windows. So a
unified set of tools available on every platform is really nice. ri,
gem_server, irb, Test::Unit, etc give me that. TextMate > AnythingElse,
so I manage with UltraEdit on Windows and Vim on Linux. :-)

> Also, this is too strongly an issue of personal work patterns to be
> preached, and I find it irresponsible to mention that without a big YMMV
> disclaimer.

Fair enough. YMMV. It's just opinion. It's not like it's going to hurt
you to learn the command-line tools. Frankly, any Rubyist that doesn't
know how to use "ri", "irb", "gem_server", etc is doing themselves a
big disservice IMO, IDE or not. Whatever floats your boat though...

> How often a month do you need to load an IDE again? Twice?

VS2K5 + Resharper eats enough RAM with a few browser windows,
query-analyzer, and folders open that having two solutions open at once
burns through my work computer's 2GB of RAM pretty quickly and makes
things sluggish.

I think the reason why we don't see much refactoring support is that
it's just not needed. That's just my opinion tho'.

delta11

12/17/2006 8:56:00 PM

0

David Vallner

12/17/2006 9:08:00 PM

0

Sam Smoot wrote:
> David Vallner wrote:
>> Like integrated unit test support.
>
> Meh? What's a couple keystrokes? Does that really help you be more
> productive?

Yes. I've switched from Eclipse and 250 dollars + VAT to IDEA precisely
because they add up. It's also not only about the less time spend
typing, but about keeping the flow of your development cycle fluid and
without mental context switches.

>> Project management.
>
> Why would I want Gantt charts in my IDE?
>

Not THAT meaning of project management. I meant keeping track of what
files belong to which project, or keeping track of interrelated
projects. Being able to only specify this dependency and never have to
bother with library load paths is one more thing utterly unrelated to
the code itself that you don't need to keep in your head, which is a
Good Thing.

>> Semantics-aware code templates.
>
> You don't need an IDE for this.
>

An IDE implemented in Emacs Lisp / vimscript still is an IDE. Though
this specific feature doesn't have much to do with the main focus of
IDEs, that's providing uniform access to a set of tools, it is true that
what you commonly call IDEs usually implement more extensively
code-aware editing features.

>> Erm. The thing is you pick an IDE, stay with it, and use one way to
>> consume those things only instead of keeping idiosyncracies of
>> command-line interfaces in your head.
>
> Lucky you. I'm not seeing how "IDE idiosyncracies < command-line
> idiosyncracies" though. Plus I work on Linux, Macs and Windows. So a
> unified set of tools available on every platform is really nice.

Surprisingly enough, cross-platform IDEs are not unheard of in the 21st
century. It's also missing the point, the issue isn't that a given
toolset isn't available on a platform, rather that there is an impedance
mismatch between the different tools. How easily can you look up
documentation for some element you see in the debugger or irb? I
consider a copy/paste operation as something that takes too long for this.

>> Also, this is too strongly an issue of personal work patterns to be
>> preached, and I find it irresponsible to mention that without a big YMMV
>> disclaimer.
>
> Fair enough. YMMV. It's just opinion. It's not like it's going to hurt
> you to learn the command-line tools. Frankly, any Rubyist that doesn't
> know how to use "ri", "irb", "gem_server", etc is doing themselves a
> big disservice IMO, IDE or not. Whatever floats your boat though...
>

No, it's not going to hurt. I know how to use them, I know how to use
their equivalents in all the other programming languages I regularly
use, I just find them suboptimal. I also use ruby-doc.org instead of ri
because of the cross-referencing.

> I think the reason why we don't see much refactoring support is that
> it's just not needed. That's just my opinion tho'.
>

No, it's just mind-bogglingly hard to implement. Refactoring means the
operation must be nondestructive with regards to semantics, and it's
very difficult for a program that isn't a Ruby interpreter to
sufficiently reason on Ruby code. And because of late method binding,
even the interpreter doesn't know ahead of time for example what a given
method call might invoke. But that's digressing.

David Vallner