Zed Shaw - Ruby has dodged a bullet

Jari W. kirjoitti:

If Ruby was very much designed to make the programmer feel good (which I
personally feel to be very much the case, my eyes opened by Giles’
excellent blog post at
http://gilesbowkett.blogspot.com/2007/11/why-i-program-in-ruby-and-maybe-why-you.html),
Zed clearly needs 2 new languages (one for the computer world one for
the real world). IMHO.

Well… Given that Giles there is one of those ‘good coders’ who snipe
at people who he sees as inferior coders… I must say you are on the
wrong track Jari. Tahvoja ne on molemmat

I say Go Zed! Tell it like it is! 8)

My perceptions are similar to his in regards to these strange
better-thab-thou-ex-php-wanna-be-coder-characters accumulating around
the Rails. And its time to ditch the (ruby-)rose-colored glasses that
seem to have been falling on peoples eyes in regard to anything
Ruby-related.

Sometimes it seems to me almost ALL rails ‘experts’ I meet or have any
kind of dialogue with JUST CAN’T WRITE GOOD CODE. Or know it when they
see some. They make snide comments in order to hide their poor skills
etc. puts a leash on forthcoming rant

And I am not even CS person, just an artist whose life is on “The Web.”
But I like coding. And code. I must say I have NO idea about rails
code/deployment/maintaining qualities, Ive only used Heroku.

It seems to me the Rails community really has some self-studying to do.

Happy New Year to Matz and the whole Ruby community! Thanks for a great
language!

Yes! Ruby is sweet like sweet red grapefruits and I hope all your 2008
is sweet too!

Csmr

On 2 ene, 04:24, “M. Edward (Ed) Borasky” [email protected] wrote:

controlled IT environments, and anything other than approved software
is frowned upon. That includes One-Click, MinGW, Cygwin, and lots of
other things.

Yeah, those tight controlled environments play they role in the
equation. I’ve seen also tightly controlled linux servers too.

Now if you’re talking about servers, I’d be inclined to join in the
chorus of “get a real OS”. :wink: Seriously, though, Windows servers using
all of the native Microsoft tools
have an unjustified bad reputation.
They’re fine tools, the performance is competitive with the LAMP stack
(now), and the .NET development environment is world-class. But why pay
the Windows license fees for the base server OS if you’re going to run
Apache, MySQL or PostgreSQL, and Ruby/Rails or PHP? Why not just get
Debian, Fedora, CentOS (free), or even RHEL, which is cheaper than
Windows Server?

Ok, maybe I should add some light on this, since it seems I been keep
associated with servers all the time.

I don’t use Windows Servers, neither all the Microsoft tools for the
job. I develop and create solutions for TV Stations and cable/
satellite networks.

The problem with that is some of the hardware (the real hardware in
charge of stream the content to your tv, either in analog or digital
way) works on Windows. There are some comapnies just starting using
Linux as platform to develop their drivers, but the viral nature of
GPL and some zealots make them keep that secret.

You see, these companies invest a huge amount of money creating
hardware, but there are also other companies that do the same – there
is some competition. Some ppl demand (yeah, demand) comapnies should
release the source code of they propietary hardware, just to be
allowed enter the linux community. That will impact on their
investment.

Come on, I don’t see Ford or Audi open the internals of their motors
(black box), but they still sell so many cars.

Ok, I work on that area. That hardware, even it’s expensive, need
coding, need a software run on top of these NDA-powered SDK to be
useful. That’s my job, that’s is what I do.

NOTE: before users start pointing me “hey, there is VLC” or “hey,
MythTV can do that”… stop right there. That is amateurish, that is
for your computer, for your home, that is not broadcast.

Search for Broadcast television and eat all the papers about broadcast
analog tv standards, all the MPEG specifications, DVB and ATSC, code
your first 24x7 software to handle 16 channels ad insertion solution
and then we can talk about it.

So, even that I use Windows, doesn’t meant I will use all the tools
Microsoft want me to sell. Is not a issue of speed, but maintainance.
I need to control my environment, not someone else.
deployment and maintainance nightmares happens on every OS, not just
Windows. Take a look at the so-many-different packaging systems that
exist for linux. There are too many that keep track of them and their
features is almost impossible.

I choose Ruby even that Python is more mature on Windows platforms.
Why? Because after 3 years of using it (python) just get tired of 4
spaces identations (and no tabs!). (Well, there is more but I’ll not
trash that language here).

With respect to anyone suggestion this all over again: You keep
using your OS of choice, I’ll keep using mine, we (everybody) have
their own reasons. If we respect eacho the world will be a better
place to live.

On Wed, 2 Jan 2008 01:38:47 -0500, James B. wrote:

You may have a different recollection of ruby-talk of a few years ago
than I.

No, you’re right; I was being flip, but I notice it when I look in the
archives. OTOH, I also notice it now, at least compared to, er, some
other
similar lists.

We’re nice because Matz is nice.

Some of the frameworks built on Ruby have communities of young,
VC-funded
brilliant hotshots. Having been a young, VC-funded brilliant hotshot, I
can tell you that the impulse to act like a rock star - with the
mind-blowing concert, the hotel-room trashing, and the “don’t you know
who
I am” - is huge. Especially when everyone calls you a rock star.

I’m dangling my legs in two pools at the moment; I try to keep up with
computing, and I also try to attend Berklee. Which is, in fact, chock
full
of next year’s rock stars. Only they’re not rock stars yet. There are
no
cliques in that school; there are no rappers dissing other rappers, or
rock
stars making bold philosophical statements (other than when they get
high
after class). Nobody spends any time criticizing someone else’s
fretboard
technique. It’s all about the music, and about learning from each
other.

In five years, a bunch of them will be famous, and maybe one or two will
start acting like a big famous rock star. People will pay attention,
and
give them a platform, and they’ll stop talking about what they learn,
and
they’ll start talking about what they KNOW. Then they’ll decide that
they
know a lot about a lot more than music. Eventually, you get Toby Keith
giving foreign policy lessons. (Toby Keith did not go to Berklee.)

Programmers are worse, because on average, we have even fewer social
skills
than musicials. (Which is pretty impressive, if you’ve ever hung out
with
a few thousand musicians.) And we don’t have to wait for the press to
build us a platform; we literally build our own. So we can turn
ourselves into rock stars.

One thing that gets forgotten sometimes, when you become a rock star -
and
I’m not talking about Zed, I’m talking about the rock-star-as-pundit
philosophy in general:

Tiger Woods takes golf lessons every week.

My voice teacher, who you have all heard on Domino’s and Pillsbury
commercials, has a voice teacher. His voice teacher has a voice
teacher.
All the greats spend all their lives studying and jamming with the other
greats.

I myself have a big ego from time to time. (Usually from the time I
wake
up to the time I go to bed.) But I know enough to know that I can’t
start
teaching people what I know, because I don’t know anything. All I
have
is a bunch of useful metaphors that I’ve learned. I can tell people
about
what I learned lately. Maybe they’ll find them useful too.

I think I’ve drifted off topic here, but in my defense, it’s Wednesday.

On Wed, 02 Jan 2008 19:54:58 +0900, Jay L. wrote:

I think I’ve drifted off topic here, but in my defense, it’s Wednesday.

ROFL.

-Thufir

On Wed, 02 Jan 2008 16:56:31 +0900, M. Edward (Ed) Borasky wrote:

Well, briefly – in most cases, a Ruby extension written in C needs to
be compiled and “linked” (converted to a DLL)

Completely off topic, but what’s the equivalent for Linux?

-Thufir

a lib*.so file

Jason

On 02/01/2008, Luis L. [email protected] wrote:

allowed enter the linux community. That will impact on their
investment.

Well, some jerks might demand whatever they wish. However, GPL
requires that the source code of the software is released, not sources
of the hardware. I know many hardware vendors feel that releasing the
drivers might reveal too much about their solution and might put them
at disadvantage or even risk of patent suits (as it is harder to claim
patents against something completely unknown than something partially
known). Still Linus made an exception for driver modules: only the
changes to the Linux core that are needed to make the driver work with
the kernel have to be released, the driver itself can be kept
proprietary. And all this only applies if they want to sell the
hardware. As long as they keep it for themselves they need not release
anything.

I do not want to judge the arguments against releasing the source of
the drivers, sometimes it is even legally impossible because of
government regulations (when dealing with radio and possible
interference with reserved frequencies). Arguing with GPL when
speaking against using Linux is complete nonsense, though, There might
be reasons, and good reasons but this is not one of them.

Thanks

Michal

On 02/01/2008, Thufir [email protected] wrote:

On Wed, 02 Jan 2008 16:56:31 +0900, M. Edward (Ed) Borasky wrote:

Well, briefly – in most cases, a Ruby extension written in C needs to
be compiled and “linked” (converted to a DLL)

Completely off topic, but what’s the equivalent for Linux?

It has to be compiled. For every architecture, every libc version, …

It’s jut more common for people running Linux to be set up for this
(or using a distribution that packages precompiled stuff for them).

On Windows it is assumed that software is proprietary and it either
just works or you trash it. So there is no infrastructure for dealing
with software for which the source is available in place.
Which means that the ruby community would have to provide binaries of
every library Ruby uses, every gem, for every libc version, for both
architectures MS supports, … for this to work smoothly. But that’s
too much work. The library authors only compile for the oldest most
widespread libc version, and since ruby uses these libraries the One
Click Installer does the same…

Thanks

Michal

On Jan 1, 2008 11:59 PM, M. Edward (Ed) Borasky [email protected]
wrote:

  1. Rebol is slow. It was pretty much the slowest thing in the Alioth
    shootout the last time I ran the analysis.

This from a rubyist? :slight_smile:

2.The problem I have with Factor is that it’s so close to Forth that I
don’t see any advantage in learning it, since I already know (and love)
ANS Forth.

Fair point. Since I don’t know any forth dialect, I figured I’d invest
in one that’s being done from scratch (both for the excitement and for
the fact that it won’t have accumulated historical cruft).

martin

On 2 ene, 10:00, Michal S. [email protected] wrote:

is some competition. Some ppl demand (yeah, demand) comapnies should
known). Still Linus made an exception for driver modules: only the
changes to the Linux core that are needed to make the driver work with
the kernel have to be released, the driver itself can be kept
proprietary. And all this only applies if they want to sell the
hardware. As long as they keep it for themselves they need not release
anything.

Err, bad typing, I meant ‘propietary software’ not hardware :slight_smile:

I do not want to judge the arguments against releasing the source of
the drivers, sometimes it is even legally impossible because of
government regulations (when dealing with radio and possible
interference with reserved frequencies). Arguing with GPL when
speaking against using Linux is complete nonsense, though, There might
be reasons, and good reasons but this is not one of them.

I just tried to show just one point about that, but is not the whole
picture.
(After all, wasn’t about Windows, Ruby Windows or whatever else the
real topic of this thread).

Thanks

Thank you for sharing your thoughts Michal,

Regards and have a nice week.

Thufir wrote:

-Thufir

There is a compiler, usually gcc but others exist. It translates the C
code to an object file. Then there is a linker which collects all of the
object files and translates them to a “shared library”, which usually
has a name ending in “.so”. At run time, the shared library is brought
into working memory the first time a Ruby program references it, and
other Ruby programs can then reference it without having to load another
copy.

On 1/2/08, Casimir [email protected] wrote:

wrong track Jari. Tahvoja ne on molemmat
Oh my God. Giles is not a perfect human being, therefore you should
not pay attention to anything he says on his blog.

Talk about projection, too. I don’t think thefed is an “inferior
coder.” I think he’s a very spirited whippersnapper who told me to
wrap up somebody else’s code as a gem for him because he had homework
to do. So I said sometimes I want to keep Zed S. in a cage and feed
him newbies. So what? Lighten up man. Sometimes whippersnappers get
whipped and snapped. Sheesh.

I say Go Zed! Tell it like it is! 8)

Heh. I agree and disagree. A) having the kind of “angry guy”
personality Zed gives off in that particular post is a huge risk
indicator for heart disease. More so than obesity. Being that angry
literally makes you sick, in a very dangerous (to yourself) way. On
the other hand it is nice to hear bullshit called bullshit, because
honesty is a good thing, but I think he got kinda carried away with
it. Also I really dislike when people call other people gay as a way
of insulting them, prejudice against gay people has gotten gay people
killed, it’s not cool. Also it really doesn’t have a lot to do with
code.

My perceptions are similar to his in regards to these strange
better-thab-thou-ex-php-wanna-be-coder-characters accumulating around
the Rails. And its time to ditch the (ruby-)rose-colored glasses that
seem to have been falling on peoples eyes in regard to anything
Ruby-related.

There’s certainly a lot of BS in the Rails community. I got myself
kicked off the Rails list. I’m no fan of the way Rails people
congregate. On the other hand I use Rails every day and I find it
massively useful (although slightly boring at this point). If the
community bugs you, and you’re a superstar God codah hero like Zed,
you can in fact just play reclusive and chill instead of getting angry
about things. Anybody who interacts with a particular cliche type of
Rails programmer, the PHP guy with a ton of attitude and nothing to
back it up, anybody who encounters that gets tired of it and ready to
bite off heads, but it’s easy enough to avoid. Especially if you’re
someone like Zed. A guy like that can easily just make people come to
him if going into their community bothers him. You contribute
something like Mongrel, you have enough leverage to command respect.
All you got to do is invest in your people skills a little bit.

Sometimes it seems to me almost ALL rails ‘experts’ I meet or have any
kind of dialogue with JUST CAN’T WRITE GOOD CODE. Or know it when they
see some. They make snide comments in order to hide their poor skills
etc. puts a leash on forthcoming rant

The snideness and general interpersonal unpleasantness tolerated in
the Rails community is pretty horrible.

And I am not even CS person, just an artist whose life is on “The Web.”
But I like coding. And code. I must say I have NO idea about rails
code/deployment/maintaining qualities, Ive only used Heroku.

It seems to me the Rails community really has some self-studying to do.

That’s one way to say it. I see it the other way. If there’s a
healthier community, it’s really easy for people from that healthier
community to steal people away if/when they want to, since the Rails
community does have some abusive aspects, and good people deserve a
good community.

The Rails community isn’t likely to do any deep soul-searching as a
result of this. This is the kind of thing where people outside a
community will shake their heads and go, “Saw that coming,” while
people inside the community will laugh, shrug it off, or just get
even nastier. Whatever it is that makes the Rails community so
unpleasant, it won’t be undone by something like Zed’s experience. I
indulged in a very similar but much smaller explosion when I got
myself kicked off the Rails list, and it didn’t have any effect on
anyone. That means Zed wasn’t the first, and if he wasn’t the first,
he probably won’t be the last. That’s not how groups of people work.
Toxic social systems are generally self-perpetuating. The furious
departure could become a recurring cycle in the Rails community pretty
easily. The next time it happens, they’ll probably say “Bye Zed” to
whoever the next guy is and laugh about it. “Hahaha, you called him
Zed”, etc.

I think the only question worth thinking about here is how do we make
damn sure that whatever the hell is wrong with the Rails community
never becomes a problem for us.

Happy New Year to Matz and the whole Ruby community! Thanks for a great
language!

Yes! Ruby is sweet like sweet red grapefruits and I hope all your 2008
is sweet too!

Yah! :slight_smile:


Giles B.

Podcast: http://hollywoodgrit.blogspot.com
Blog: http://gilesbowkett.blogspot.com
Portfolio: http://www.gilesgoatboy.org
Tumblelog: http://giles.tumblr.com

On Wed, 2 Jan 2008, Sam S. wrote:

Anyways, back to Zed: Despite some people claiming “it’s not that
hard”, people willing to write robust, stable, C extensions for Ruby
are very few and far between it seems. Pure Rubyists are a dime a
dozen in comparison. At least that’s my perception of things.

Extensions aren’t that hard. Not for the Ruby->C glue, anyway. Most
of
the problems with extensions come from the same things that are always a
problem for C/C++ code – memory management. The actual act of creating
an extension, though, isn’t that hard. It’s kind of fun, too.

Kirk H.

Martin DeMello wrote:

On Jan 1, 2008 11:59 PM, M. Edward (Ed) Borasky [email protected] wrote:

  1. Rebol is slow. It was pretty much the slowest thing in the Alioth
    shootout the last time I ran the analysis.

This from a rubyist? :slight_smile:

I guess you haven’t seen my RubyConf 2007 paper. Rebol is slower than
Ruby … a lot slower.

2.The problem I have with Factor is that it’s so close to Forth that I
don’t see any advantage in learning it, since I already know (and love)
ANS Forth.

Fair point. Since I don’t know any forth dialect, I figured I’d invest
in one that’s being done from scratch (both for the excitement and for
the fact that it won’t have accumulated historical cruft).

Yeah … I buzzed by the Factor web site again. Slava has attempted to
merge Forth and Lisp concepts into a new language, even though it looks
more like Forth on paper. The one thing that struck me about that
concept is that the “native” programming language of the Hewlett-Packard
HP-28, HP-48 and HP-49 is something called RPL, which stands for Reverse
Polish Lisp.

RPL looks much like Forth, but I think it’s a much more elegant language
than Forth. Built in data types, in addition to real and complex
numbers, include strings, algebraic expressions, binary constants,
matrices and “programs”. IIRC it is recursive as well; it definitely has
a functionality equivalent to “lambda”. But HP has always considered it
a dialect of Lisp, not a dialect of Forth.

Jay L. wrote:

Tiger Woods takes golf lessons every week.

My voice teacher, who you have all heard on Domino’s and Pillsbury
commercials, has a voice teacher. His voice teacher has a voice teacher.
All the greats spend all their lives studying and jamming with the other
greats.

OTOH (and OT), Nicolo Paganini, arguably the first rock star, gave up
practicing the violin in between his pyrotechnic concerts.

Or so the story goes, but then there’s also a story about some kind of
deal with the Prince of Darkness…

Giles B. wrote:

I think the only question worth thinking about here is how do we make
damn sure that whatever the hell is wrong with the Rails community
never becomes a problem for us.

Exactly.

Part of that will mean self-policing. When someone on the list decides
to unload with the vitriol, the rest of us need to step up and insist on
some basic maturity.

That doesn’t mean people can’t or shouldn’t point out weak arguments,
unsound ideas, bad code, etc, just that being nasty is self-serving and
bad for the Ruby community.

On Wednesday 02 January 2008, Giles B. wrote:

I think the only question worth thinking about here is how do we make
damn sure that whatever the hell is wrong with the Rails community
never becomes a problem for us.

So what is wrong with the Rails community? I take it, that behavior
like Zed’s or your own, whatever it may be, can’t be it. There are
annoyances, of course, people asking questions and demanding answers
(“bump”) without doing the slightest research beforehand. Well, that’s
easily ignored, the worst about it is the traffic it generates. Are
Rails people unpleasant in the real world? Honestly, I don’t meet that
many to judge the case. If anyone of those I did meet was unpleasant,
it was entirely unrelated to Rails or Ruby.

Michael

M. Edward (Ed) Borasky [mailto:[email protected]]

  1. Microsoft has a Ruby product in the works, which is called IronRuby.
    It is as I understand it an open source project, under development by a
    small team including John L… I haven’t heard the latest status, but
    as
    of RubyConf 2007 it was still “under construction”.

We still have a lot of work ahead of us, but we’ve now got a lot of the
core language implemented. The last major pieces are the *_eval methods
that accept strings as parameters, and that is tied to our
implementation of the DLR hosting interfaces.

Library implementation is where we’re weakest, but thanks to the awesome
Rubinius spec suite, we’ve got a good definition of the work we have
left to do.

-John

On Jan 2, 10:05 am, [email protected] wrote:

Kirk H.

Right, not really what I meant exactly. Probably should have kept my
mouth shut, but I was thinking of a comment on RubyInside, where the
poster said something to the effect of: “So he wrote a faster Webrick,
big deal! It’s a piece of cake!”

It just seemed to me that some people are responding by belittling
Zed’s contribution of Mongrel. I can’t think of another contribution
to Rails’ success since 1.0 that even comes close. It’s not like
people who are willing to write these sort of things, like Zed is/was
with Mongrel, or yourself with Swiftiply and EventMachine, or
MentalGuy with FastThread, or Wycats with DataObjects, or Evan with
Rubinius exactly grow on trees. The people that are making these types
of contributions, and more importantly delivering working, stable
code, are relatively rare. When we lose one it’s a shame.

On Jan 2, 2008 12:30 PM, Sam S. [email protected] wrote:

an extension, though, isn’t that hard. It’s kind of fun, too.
to Rails’ success since 1.0 that even comes close. It’s not like
people who are willing to write these sort of things, like Zed is/was
with Mongrel, or yourself with Swiftiply and EventMachine, or
MentalGuy with FastThread, or Wycats with DataObjects, or Evan with
Rubinius exactly grow on trees. The people that are making these types
of contributions, and more importantly delivering working, stable
code, are relatively rare. When we lose one it’s a shame.

For the record, it’s Francis who does EventMachine, but your point is no
less valid.

I’ve read through a lot of Zed’s blog now, and I do feel sorry for the
guy,
being pidgeon-holed like that now. There’s a lot of truth to what he
says,
you just have to ignore the brashness that he uses in his delivery.

I hope he’s able to get past this and continue doing great work, though
from
the sounds of it he’ll try to get back into management and only do
coding as
a last resort. No, Ruby didn’t dodge a bullet, Ruby lost a very capable
contributor.

Jason