[GLLUG] Best Web/Desktop Programming solution (...)
Jeremy Bowers
jerf at jerf.org
Tue Apr 19 16:36:40 EDT 2005
Asenchi wrote:
> On 4/19/05, Jeremy Bowers <jerf at jerf.org> wrote:
> Well for such a new framework to run 'thousands' of users in the
> capacity that Basecamp runs them, I think it is pretty safe to point
> at. Of course it is new, but for a new frame work to run like this,
> it is pretty spectacular.
You lack the perspective to understand that no, it isn't. It isn't
spectacular *at all*.
There are bajillions of awesome projects out there. Ruby on Rails got
lucky to be the one to be hyped.
One can *always* take a framework, and with huge community support and
the best programmers available make something awesome with it. It takes
longer to get to the point everybody can do that.
> I encourage you to read this blog and comments:
> http://www.37signals.com/svn/archives/000606.php
>
> Granted it is from the guy who dev'd Rails, however he is a
> 'experienced programmer'.
See above.
> No, this is not true. It was very easy to understand.
Have you ever taught programmers?
I find Ruby easy to understand. I also find closures, pointers, OO (in a
useful way), functional programming, blocks, logical programming, and
continuations all fairly easy to understand. This is not, however,
normal, as fifteen minutes with truly novice programmers will show you.
> Which is easier?
> for (hi = 100, lo = 0; hi >= lo; lo++)
> or
> (0..100).each
>
> Probably really bad examples, but they both begin to do the same thing.
For most people, the former. Most people find the imperative style
easier to understand than the functional style, **especially** when
you're nesting two or three layers deep to get something done rather
than just print 100 numbers or something. Again, if you feel
differently, it's because you've lost the newbie perspective or have an
unusually mathematical background.
> Excuse my ignorance, but do you mean form designers as in html forms
> (for example)?
>
> I still don't think you've really presented what these tradeoffs are.
> Ruby is 2 years younger than Python, so it can't be age necessarily.
> Can you elaborate more.
All frameworks have tradeoffs. It's what they are. If you don't
understand the tradeoffs your framework makes, you ought to be careful
about suggesting them.
*You* tell *me*... what is Ruby on Rails not so good at? What's a little
harder to do than it is in other environments? If your answer is
"nothing", that's a problem, because I *know* there are tradeoffs. One
I've heard of is that it is a pain to get it going with existing
databases because Ruby on Rails wants its own database layout, for
instance. Based on what I've seen, I don't think there is any support
for using a graphical tool to layout the screens. How easily does it tap
into the pre-existing Access-based code to make it easy to transition?
How many programmers can you hire which will understand it? Can I
switch to use it with XUL? Does it have good remote graphical debugging
support? Does it play well with other web frameworks or does it sort of
demand that it be the entire site? (**Very** common problem with web
frameworks.) Does it have hooks for some sort of AJAX support? If so,
how easy is it to modify when it turns out that it isn't quite the right
paradigm, maybe it works on a push-like model and you need a pull-like
model? (This is a **huge** one; when you run into an impedence mismatch
between your problem domain and the framework assumptions, how badly are
you screwed?)
For each of those, I'm thinking of at least framework where that is a
strength or weakness. I'm not really interested directly in the answers,
because my real point is that there are tradeoffs, always, no matter what.
You keep saying you don't understand why businesses go with other
solutions. I'll give you a hint; it's only *partially* because they are
often stupid. "There are more things in Heaven and Earth, Horatio, than
are dreamt of in your philosophy."
Ruby on Rails can be *both* the best thing to happen to web development
since CGI... and a completely inappropriate choice for the original poster.
More information about the linux-user
mailing list