

The Ranting Rubyists - ashleytowers
http://www.renaebair.com/2008/11/24/the-ranting-rubyists/

======
jrockway
_But who wants to spend time contributing when there’s no money to be made or
fame left to be had?_

Yeah, who would? Open source is not about altruism. It's about either money or
ego. If there are neither of those to be had, what's the point?

However, there is plenty of money and ego left to be had in the Ruby
community. The last few years have been about "hey, programming can be fun."
Most of us knew this already, but some people assumed that Java was all there
was (thanks to JavaSchools). The Ruby community, I think, made it OK to use
non-Java languages and still be taken seriously. But with that out of the way,
it's time to get serious. It's time to fix the ruby's memory leaks. It's time
to tighten up the libraries. People who work on this will get money and fame,
trust me.

I have been doing Perl for a long time. Even though I keep hearing that it's a
dead language, I know for a fact that there is plenty of fame to go around for
library authors and people that work on the core. So there is no need to leave
the Ruby community if you want fame and want to use Ruby. (And if you don't
like Ruby, why not give Perl a try ;)

(I should also point out that it took the Perl community almost 10 years to
get a really solid implementation that didn't leak memory (it took until
5.10.0). The Ruby community has a lot of work ahead of them.)

------
LogicHoleFlaw
I'm going to sidestep ranting about ranting about ranting about Ruby. The
linked article seems very common-sense to me. But then, I never was much of
one for ego-contests. I did however find something worth discussing in the
blog post. Let me quote:

 _For myself, I’ve been learning to program with a language that doesn’t make
me want to cry. I remember doing C++ and Java homework in CS classes in
college; I do believe I have post-traumatic Java syndrome. It’s unbelievable
even to me that I have dared to get into programming again. But Ruby is making
it easy; even fun. I’m happy to code with it, and I’m happy to be enjoying the
amenities of the lifestyle it has provided for us._

These sorts of experiences give me hope for the future of this profession. I
firmly believe that the culture of good ol' boys' clubs and bondage-and-
discipline programming languages are fettering access to the minds and talents
of too many promising individuals. It's a crying shame.

~~~
timr
_"These sorts of experiences give me hope for the future of this profession. I
firmly believe that the culture of good ol' boys' clubs and bondage-and-
discipline programming languages are fettering access to the minds and talents
of too many promising individuals. It's a crying shame."_

Oh, geez. Melodramatic, much?

I know it's antithetical around these parts, but I _like_ C++. If you want to
talk about beauty, there's beauty in OO design. There's beauty in type safety.
And there's most definitely beauty in a language that will make correctness
guarantees at compile time. But then again, I've been using C++ long enough to
have some perspective. I remember when Java was the silver bullet; now it's
Ruby. This too shall pass.

Most of the complaints that I hear about C++ come from inexperienced
programmers, and most of those complaints boil down to _"I don't understand
it"_. That's fine, and to be expected -- I didn't understand anything either,
when I first started. The tragic mistake comes when you begin to assume that
type-safety, encapsulation, access control, and other _"bondage-and-
discipline"_ features of the language were put there simply to make your life
more difficult.

There were (and are), talented C++ programmers, and I think it's possible that
some of them know what they were doing.

~~~
LogicHoleFlaw
I'm not railing against type-safety, compile-time guarantees, encapsulation,
or access control. In fact, I use them every day. I think haskell is pretty
neat! And you can definitely get stuff done in C++. I'm not arguing against
any of those things.

What I am saying is that in the rush to create the best engineering solutions,
we have forgotten how to make programming approachable to the newcomer. Even
people with aptitude and inclination get discouraged, if not by the technical
stumbling blocks of the language they are using, by the unfriendly culture
which has surrounded the craft.

Even children can write simple English. They aren't discouraged from reading
and writing because they aren't great novelists. Good teachers try to teach
the fundamentals and instill both the technical capability of writing and the
joy of reading. Current CS pedagogy fails utterly in this regard. Early
students spend so much thought on extraneous things like _public static void
main_ and pleasing a compiler that little attention is left to see the beauty
in the theory and practice of computation.

The lack of a decent REPL or any useful interactive introspective techniques
make C++ and Java particularly awful for teaching introductory computing
concepts. Ruby is much more friendly on that level, as are many other
languages. Look at projects like _why's Shoes or some of the things being done
with Squeak. Look at the volumes of hackers who cut their teeth on things like
BASIC. Look at how many industrial-strength best practices we can bypass while
still teaching the fundamental joy of programming.

Nintendo's Shigeru Miyamoto, designer of many key gameplay concepts we now
take for granted, was once asked in an interview what the fundamental concept
behind his games is. He replied that the fundamental nature of a video game is
that you press a button and something happens on the screen. It sounds simple
but cuts through to the heart of the matter. Similarly I think that the
fundamental appeal of computer programming is that I type something in and the
computer carries out my wishes.

The love of programming is something that seems to come to people only by
happenstance these days. If a language like Ruby can help more people to
discover that love then more power to it.

~~~
Prrometheus
There are some people working on this. The creator of Alice recently talked at
my school. Alice is a syntax-free programming language used to tell stories
using 3D models. The idea is to teach children computing concepts early, in a
fun way, before throwing syntax at them. Right now Alice is used in many CS 1
classes and some high schools, but it could really be taught much earlier if
public school bureaucracies weren't so inflexible. A person's first
introduction to computing should come well before they enter college.

Alice's creator hopes that it will encourage more women and minorities to
enter CS. His thesis is that telling a story is something that is natural and
interesting to these groups, moreso than, say, solving the Towers of Hanoi.

Our intro class at UCSD uses Java and the intro professor hates it - being a
leading researcher in CS pedagogy. She does do some interesting things with
her class though. The earliest programming projects they do are not things
like the fibonacci sequence, rather they do cool media projects such as
sampling and modifying sounds, using a green screen to put themselves in
images, and other fun projects. The students respond enthusiastically when
their creativity is allowed to run wild and as a side-bonus, cheating is near-
impossible.

The creator of Alice said he was struck one day when interviewing a female who
had taken a CS 1 class and she said "Sure, I can figure out how to sort a list
of numbers. But why would I ever want to?" CS pedagogy has a long way to
evolve, but it is making improvements.

------
thomasmallen
If these Ruby bloggers got together and coded instead with the time they take
to write and edit these posts to nowhere, they might come up with something
pretty cool.

~~~
alecco
They can't match expectations.

Violent discussions, even with name-calling and everything, is very common in
open source projects. Look at Linux, BSD, etc. There will always be a clash of
egos. That might even be motivational for the mud slingers, to prove their
point.

------
tptacek
_I’ve been a rubyist for three weeks now and it’s my turn to rant._

No, it isn't.

~~~
tlrobinson
I'm not sure, but I think she was trying to be ironic (or perhaps irony is the
wrong word. sarcastic?)

------
jrsims
We bash Ruby because we love it so.

