Slashdot Mirror


Ajax On Rails

mu-sly writes "Ajax and Rails - probably two of the biggest buzzwords in web development at the moment. In this article over at ONLamp, Curt Hibbs introduces the incredibly powerful Ajax support that is part of the Ruby on Rails web application framework. It's a great read, and serves as a gentle introduction to the cool stuff you can accomplish with ease using the Ajax features of Rails."

235 comments

  1. Pimpin with Rails by Anonymous Coward · · Score: 0

    Yeah, conf I'm at right now (NFJS) the dudes are pimpin' the ride with rails. FWIW.

  2. Kill the buzzwords by Anonymous Coward · · Score: 0

    please....

    1. Re:Kill the buzzwords by Anonymous Coward · · Score: 0

      What? Do you prefer RESTful applications over Google-esque AJAX-webapps?

      Don't you like 14 year old IT-girls managing their own business of "standart complaint web-pages for 15 dollars"?

    2. Re:Kill the buzzwords by Anonymous Coward · · Score: 0

      Dude, buzzwords are totally what Web 2.0 is all about. Get with the program.

  3. Rails, great for those fed up with J2EE. by newdamage · · Score: 5, Interesting

    I'm sure many developers like myself have a day job that probably involves J2EE. The first time I did the iniitial tutorials for Rails several weeks ago I was blown away. Connecting to a database is not susposed to be this easy.

    Even when using newer frameworks like Spring, Tapestry and Hibernate (I hate you so much Struts) Rails still manages to be easier.

    I highly suggest any developers looking for a change of pace at least give Ruby on Rails a few hours of your evening. While it's not nearly as comprehensive as Java, it's gaining libraries and functionality by leaps and bounds.

    And just so I don't get labeled as a Rails fanboy/Java basher: Rails is not perfect, I still would recommend using J2EE for large corporate projects. It's just a much more mature solution with less unknowns. I think Rails needs another year at least before people are ready to really give it a shot in the corporate environment.

    --
    ce n'est pas un Sig.
    1. Re:Rails, great for those fed up with J2EE. by Uber+Banker · · Score: 2, Interesting

      I've not tried RoR from a development perspective (I have no need/desire to write web apps), but from a user perspective it rocks! Well done Javascript can be a nice user experience, but sites that need regular reloading rarely use it, the main exception I can think of being Gmail.

      RoR, IMHO, is a major step forward to web deployed applications becomming mainstream.

    2. Re:Rails, great for those fed up with J2EE. by Vacindak · · Score: 1

      It also needs YARV (which I believe will be the VM for Ruby 2.0) in order to be competitive. As it is, Ruby's speed (or the comparative lack thereof) is one of the biggest obstacles to corporate adoption. That and that it's hard to convince managers that the fact that only one person on their team knows Ruby isn't actually a problem.

    3. Re:Rails, great for those fed up with J2EE. by wfberg · · Score: 1
      I'm sure many developers like myself have a day job that probably involves J2EE. The first time I did the iniitial tutorials for Rails several weeks ago I was blown away. Connecting to a database is not susposed to be this easy.


      Damn right! Databases all ought to be like Oracle, where even typing in a query is a hellish quest involving obscure replacements for DNS (tnsnames), client software that's incompatible when even a minor versionnumber changes, convoluted connectstrings and non-gui client tools (unless you shell out for toad). And a database should cost a thousands of dollars, require gigabytes of storage and memory, and the constant supervision of a DBA to make sure the thing doesn't explode!


      Connecting to such complex high-tech databases should of course not be easy! If the database's license costs tens of thousands of dollars, there should be no objection to paying some J2EE guys to figure out how to do that within the space of a few weeks.


      You all know who to thank for your job security, database geeks!

      --
      SCO employee? Check out the bounty
    4. Re:Rails, great for those fed up with J2EE. by Cyberax · · Score: 3, Interesting

      Ruby is easier. Until you try to do something even moderately complex.

      Our company recently tried to do a web-project (workflow management application for a publishing house) based RoR. It was a spectacular failure - LOTS of things are mostly absent from RoR: caching and transaction support, object-relational mapping is inferior (yes, ActiveRecord is NOT enough), etc.

      RoR is nice, but it needs lots of polishing and some redesign. In its present state RoR can't be compared with J2EE solutions, they are far more powerfull and _flexible_.

    5. Re:Rails, great for those fed up with J2EE. by Atzanteol · · Score: 1

      And since you're paying thousands of dollars for this database the command-line based client should under NO circumstances be easy to use! Do not allow command line history, or the ability to edit the line you're working on!

      Seriously, I don't know how Oracle gets away with sqlplus... Would it be *that* hard to add readline support?

      --
      "Ignorance more frequently begets confidence than does knowledge"

      - Charles Darwin
    6. Re:Rails, great for those fed up with J2EE. by Anonymous Coward · · Score: 0

      Slight problem... there are NO Ruby developers in the world. At least, not in any numbers that anyone gives a shit about Rails, or Ruby on Rails, or whatever cute name you zealots think up next.

    7. Re:Rails, great for those fed up with J2EE. by sucresemoule123 · · Score: 5, Informative

      RoR has caching : here and supports transactions : here

    8. Re:Rails, great for those fed up with J2EE. by marcello_dl · · Score: 3, Interesting

      hmmmmm troll alert?

      Ruby can't do complex things java can??? You meant rails, probably, and such confusion of terms is not a good sign.

      Have you checked out the latest rails versions' API? I see transaction support and caching of db data and cgi actions too.

      As for the 'inferior' object relational mapping: indeed Active record tries to keep things simple: I'm grateful for it. Rails developers got too far sometimes, as you see if you have a column named 'type' in your tables ;)
      But, that's not being inferior, it's being different. If your app requires convolute mappings, either extend active record to suit your needs or do without it (possibly dropping rails altogether and wasting precious ram with a JVM ;) ).

      --
      ---- MISSING MISCELLANEOUS DATA SEGMENT --- [sigdash] trolololol
    9. Re:Rails, great for those fed up with J2EE. by n3bulous · · Score: 1

      IIRC, readline is GPL, not LGPL, so Oracle would have to open the source of sqlplus. I know, not much worth hiding, but oracle's tools have pretty much always sucked (especially when compared with informix, god rest its soul)

      --
      "The area of penetration will no doubt be sensitive." ~ Spock
    10. Re:Rails, great for those fed up with J2EE. by ajm · · Score: 2, Interesting

      So what you're saying is that RoR is becoming more complex as it tries to handle the complex things J2EE has to handle? There is a certain irreducable amount of complexity in writing enterprise software (whatever that is). Frameworks that try to support this completely generally become more and more complex themselves until they reach J2EE levels. The vast majority of the "complicated" things in J2EE are in there because they are needed to solve real world problems. Anything that attempts to solve the same set of problems will approach the same complexity.

    11. Re:Rails, great for those fed up with J2EE. by systems · · Score: 2, Insightful

      You should probably read this paper on scripting
      The moral is, no matter how complex a system build on Ruby will get, it will always be more simple to use than a system build on Java, just because Java carries the characteristics of a systems programming language while Ruby carries the characteristics of a scripting programming language.

    12. Re:Rails, great for those fed up with J2EE. by Cyberax · · Score: 1

      How about distributed caching (SwarmCache, Tangasol, Memcached)? How about optimistic locking based on timestamps (it is still absent and we needed it BADLY)?

      And Ruby's transaction support is very limited, for example it's impossible to detach record from a transaction, save it to session and then reattach this record to a new transaction (with concurrency control based on timestamps/verisons, of course). Hibernate (http://www.hibernate.org/) supports this, BTW.

    13. Re:Rails, great for those fed up with J2EE. by Cyberax · · Score: 1

      Ruby is Turing complete, so it can do any thing that Java can do.

      I'm just saying that Ruby in its current state can't really handle complex web-applications. I don't say anything about future RoR versions.

      Active record tries to keep things simple, yes. But sometimes things just can't be simple: we've had lots of problems with cascaded deletes/updates, inverse mappings and bi-directional structures. Finally, we just used Active records like a plain SQL query engine with little additional benefit.

    14. Re:Rails, great for those fed up with J2EE. by Cyberax · · Score: 2, Insightful

      Scripting is not a holy grail. The only fundamentall advantage of scripting is name-based polymorphism (i.e. dynamic dispatch), it allows you to skip extracting common interfaces in your object model. As the software grows this advantage soon becomes negligible, and may even turn to disadvantage, because you'll have to find and isolate general interfaces manually.

    15. Re:Rails, great for those fed up with J2EE. by afd8856 · · Score: 1

      Not knowing what Rails is (ROR is mostly a server thingy, the AJAX extension is just that, an extension), doesn't it bother you that you're posting without having an idea on what you're posting?

      --
      I'll do the stupid thing first and then you shy people follow...
    16. Re:Rails, great for those fed up with J2EE. by zorander · · Score: 4, Informative

      Enterprise software is a different game. Rails is pretty all around terrible at integrating with non-rails-intended database schemas which are plentiful in any enterprise situation.

      I'm going to overlook the fact that a flexible caching mechanism has been in place since pre-snowdevil (maybe february) and transaction support was added at some point before the last time I worked with rails (late april). Keep in mind that it's still pre-1.0 and beta and not yet feature-complete. Criticizing it for a lack of features it supports, though, is in poor taste.

      Furthermore, almost all rails development at this point has been executed using very small (5 people) core teams. J2EE supports large scale development because it was designed for it. Rails was designed to let a relatively small number of people write an agile application using the set of paradigms which rails was built on. Coming at it from an "I use java in the enterprise and couldn't plug rails in its place tomorrow" is a little bit unfair, because in the same sense, I couldn't just drop J2EE onto my own desktop and start developing with it tomorrow. (Not to mention that my boss would not even begin to authorize such an expenditure for one developer on one product).

      I see rails more as a contender to PHP than to J2EE. J2EE and rails are not really comparable in the same market. Sure, rails beats the crap out of J2EE when you've got 1-3 developers on the project, and inversely, when there's more than 10, J2EE has a clear advantage. Coming from java, you're likely to miss many of the benefits of metaprogramming in rails. Even coming from python (a somewhat similar language to ruby), I was a bit startled at some of the techniques being used.

      Your project might have failed, but I'm not sure it was completely rails that caused it. AR is very easily extensible (in a matter of hours, usually) to do all sorts of more enterprise-java-like things. Ruby's dynamic messaging and open classes makes that a much simpler affair than it would be in java. Why didn't you extend it to meet your needs? Also, how did you miss the fact that caching and transactions have been there for a while? Were you trying to shoehorn rails onto an old schema? Did you have prior ruby programming experience or were you learning as you went? Did you have prior experience in a dynamically typed language writing an app of similar complexity? Nothing is going to make the solution of a hard problem easy. Some things can make it more pleasant, if used correctly.

    17. Re:Rails, great for those fed up with J2EE. by afd8856 · · Score: 1

      Go for zope. All you're mentioning is already built (internal, or extension products):
      workflow, caching, object based database, transaction, etc. I don't know if it's easier than Java, but it's easy enough for me.

      --
      I'll do the stupid thing first and then you shy people follow...
    18. Re:Rails, great for those fed up with J2EE. by mixonic · · Score: 2, Informative

      > Ruby is easier.

      yes

      > Until you try to do something even moderately complex.

      nothing is easy when it's complex

      > caching

      nope, its there

      > transaction support

      yep it's weak.

      > object-relational mapping is inferior

      Isn't any OR mapper slow/bloated and really just a starting point?

      > RoR is nice

      yes :)

      > but it needs lots of polishing and some redesign.

      it's not 1.0 yet

      > In its present state RoR can't be compared with J2EE solutions, they are far more powerfull and _flexible_.

      I don't code Java professionally, so I don't know. But Rails ain't 1.0 yet. Check back in 3 months ;-)

    19. Re:Rails, great for those fed up with J2EE. by abulafia · · Score: 3, Interesting
      Were you trying to shoehorn rails onto an old schema?

      This, I think, is the crux.

      My company has a library, too, that makes certain assumptions about the DB. We're really wicked-fast when using it, when building an app from the gound up. It has hooks for overriding some assumptions, so we can shoe-horn it in to some other projects. But if the DB is hopeless, the game is over, and we have to do things like everyone else.

      And nearly every company out there has a hopelessly messy DB, that can't be refactored because of X, where X is legacy apps, no money, management resistance, [...]

      Hell, even Hibernate/middlegen has a problem related to this: all it takes is one clueless app developer that scorns DB constraints, and you have a Situation that can cost 10s of K to fix.

      Rails is neat (I'm a pretty big perl bigot, and I like it), but it isn't designed for integration. Folks playing around with it should recognize that up front, so that they don't try to do the wrong thing with it.

      --
      I forget what 8 was for.
    20. Re:Rails, great for those fed up with J2EE. by Cyberax · · Score: 4, Interesting

      First, you have some misconeptions about J2EE.

      True, you can't just drop J2EE on your desktop because there's no such _thing_ as J2EE. J2EE is a set of standards (which contains just about everything).

      The only things you need to start developing J2EE applications are: Tomcat (http://jakarta.apache.org/tomcat/index.html), optionally a web-framework (like http://jakarta.apache.org/tapestry/index.html) and you can start developing tomorrow (if you know Java of course) and a decent IDE (http://www.eclipse.org/). It will cost you about $0.

      Java has some metaprogramming featues starting from version 1.5. Right now we're writing application in C++ and Python, so I don't miss metaprogramming features :)

      RoR is extensible, but some features are just very hard to implement: maintaning persistent object identity, complex mappings support, distributed caching and long-running transactions with optimistic locking.

      We had previous expirience in dynamic languages (Python, Perl, PHP). This project was a sort of expirement - we wanted to see what can be done with RoR.

    21. Re:Rails, great for those fed up with J2EE. by Cyberax · · Score: 1

      We are using Zope in our current project, because Python can seamlessly interoperate with C++ (http://boost.org/libs/python/doc/index.html).

    22. Re:Rails, great for those fed up with J2EE. by E_elven · · Score: 1
      --
      Marxist evolution is just N generations away!
    23. Re:Rails, great for those fed up with J2EE. by metamatic · · Score: 1
      If only Rails applications (and Ruby) could be compiled for the JVM and run in a J2EE application server...

      I guess what I really want is a Java equivalent of Rails. Java On Crutches or something like it.

      P.S. Slashdot just said:
      Slashdot requires you to wait 2 minutes between each successful posting of a comment to allow everyone a fair chance at posting a comment.

      It's been 3 minutes since you last successfully posted a comment

      Fucktards.
      --
      GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
    24. Re:Rails, great for those fed up with J2EE. by milesegan · · Score: 4, Informative

      Rails supports optimisting locking out of the box. Just add a lock_version column to your table and it will do the rest.

    25. Re:Rails, great for those fed up with J2EE. by ceejayoz · · Score: 1

      I'm just saying that Ruby in its current state can't really handle complex web-applications.

      By saying "Ruby doesn't have ____" and being shown to be wrong? Heh.

      As for being able to handle complex web apps, depends on your definition, I suppose. I'd certainly consider things like Basecamp to be a "complex web app," but perhaps Java lets sites like that remotely read your mind using ESP or something else nifty.

    26. Re:Rails, great for those fed up with J2EE. by fupeg · · Score: 1

      As a long time J2EE developer, I hear ya. I did a lot of investigation and experimentation with RoR, for the very reasons you listed. I tried out some of the tutorials and was amazed at how fast it was to get something going and how little code/configuration there was to write. I think RoR is on to something, but is way,way off from being anything other than a great prototyping tool right now.

      It uses a lot of assumptions and works best with MySQL. Once you start using it with a legacy database and start having to throw in things distributed transactions on dbs like Oracle, then it suddenly becomes a lot more painful. Throw in making it deal with a stored procedure or some complex CRUD-related logic, and suddenly you start wondering what the point was at all. If you can start from scratch on your schema, so that you can devise your schema so that all your CRUD is straightforward, and only have to deal with a single open source database, then it's great. In other words, it's great for prototyping.

      I think other technologies (J2EE and .NET) will borrow for RoR though. Groovy will make it a lot easier to do something exactly equivalent to RoR inside a JVM. It won't be too hard for such a framework to make use of JTA as well as the many other technologies in J2EE (and the open source projects based on it.)

    27. Re:Rails, great for those fed up with J2EE. by kwoff · · Score: 1
      Criticizing it for a lack of features it supports, though, is in poor taste.
      In poor taste? It's not like he fancied a dirty sanchez with your Alheimer's-afflicted grandmother or something.
    28. Re:Rails, great for those fed up with J2EE. by Anonymous Coward · · Score: 0
      Rails is pretty all around terrible at integrating with non-rails-intended database schemas which are plentiful in any enterprise situation.

      That blows. The principles of solid database design aren't changing. So why are new frameworks requiring something different?

      I see rails more as a contender to PHP than to J2EE.

      Put that way, I hope Ruby-on-Rails becomes wildly successful. I have a lot of reservations about it (just as I've had about the full J2EE EJB experience for a while), but there's no question that it stomps on PHP. A more solid language (blocks!), more consistent API, better multi-database support, etc.

    29. Re:Rails, great for those fed up with J2EE. by Cyberax · · Score: 1

      And does it work with timestamps?

    30. Re:Rails, great for those fed up with J2EE. by Uber+Banker · · Score: 1

      I know what Ruby is, what Javascript is, what AJAX is, and what RoR is. I have used all of them from a user perspective, and all from a 'tinkering' perspective.

      Tinkering is not developing. So yes I have an idea; I did not state I had anything otherwise, and the statement, Not knowing what Rails is, is logically false; surprising from one who considers themselves opinionated on Python issues when Python should lend itself to (easily) logically provable thinking.

      Thank you for your contribution.

    31. Re:Rails, great for those fed up with J2EE. by Master+of+Transhuman · · Score: 1

      Got that right.

      Oracle's "brilliant" product for developers - Developer 2000 - involved TWO - count 'em! - TWO 800 page books on how to develop forms.

      Forms which have absolutely NO WAY to be documented as to how they are constructed (other than printing out individual screens of trigger code and the like.)

      One of the most pathetically incompetently designed products I've ever seen.

      Anybody who uses Oracle (other than the database itself - with nothing else) is out of their minds.

      --
      Richard Steven Hack - This sig is TOO GODDAMN SHORT TO DO ANYTHING USEFUL WITH! MORONS!
    32. Re:Rails, great for those fed up with J2EE. by zorander · · Score: 2, Insightful

      ActiveRecord is a *design pattern*. It dictates, to a certain extent, the shape of the database it supports. In reality, using it well is often a relatively good way to get a flexible/good schema from scratch with less db knowledge. It's not completely braindead, but a reasonably aware developer can do much better with the active record limitations than with a blank slate IMHO.

      Rails itself could be put on top of any persistence layer. Instiki uses Madeliene instead of AR and it works fine. It just comes, out of box, with AR installed and that is the most natural. If you write your own ORM, it can work with rails. People have had success working with legacy schemas by frontending them with postgres views that behave more in the way that AR expects.

      In any case, rails is more suited to new projects with new databases at this time. AR doesn't propose nonstandard database design in principle, it just dictates certain facts (mostly naming conventions for columns/tables) which can often be overridden. The most obvious one is that rails expects non-join tables to have an INT(11) PRIMARY KEY AUTO_INCREMENT field. Not being a DBA, I don't know what database design patterns are out there. Being a performance and efficiency conscious developer, I don't see how AR's patterns could get you into a performance or maintainability muddle by using them on a new project.

    33. Re:Rails, great for those fed up with J2EE. by Leffe · · Score: 1

      Connecting to a database is not susposed to be this easy.



      Neither should it be to wipe out your database by setting the rake testing database to the same as you store your important data in.
    34. Re:Rails, great for those fed up with J2EE. by MoeDrippins · · Score: 1

      Why do you [think you] *need* timestamps? Either it has optimistic locking, or it doesn't... no?

      It sounds like you're trying to say a framework "doesn't do something" simply because it doesn't "do it the way *I'd* do it".

      --
      Before you design for reuse, make sure to design it for use.
    35. Re:Rails, great for those fed up with J2EE. by Lelon · · Score: 1
      I see rails more as a contender to PHP than to J2EE.

      Which makes perfect sense, since PHP is becoming a contender to J2EE.

    36. Re:Rails, great for those fed up with J2EE. by Anonymous Coward · · Score: 0

      God, I never realized before...Oracle client tools suck!

      On MySQL, you get phpMyAdmin, which is a pretty spectacular application for free. The mysql CL tool is also pretty handy.

      Even MS SQL Server has some very nice frontends.

      Where are ya at Oracle?

      TOAD is pretty good...I guess. Can't you get that for free? Though I got so much spam from Quest software that I got jaded.

      http://www.quest.com/oracle/index.asp

      If you didn't know, Quest software has a real hard-on for Oracle.

    37. Re:Rails, great for those fed up with J2EE. by Runagate+Rampant · · Score: 1

      Why not do it yourself with rlwrap?

      It's the way readline should be used!

      :-)
    38. Re:Rails, great for those fed up with J2EE. by shutdown+-p+now · · Score: 2, Insightful
      The only things you need to start developing J2EE applications are: Tomcat (http://jakarta.apache.org/tomcat/index.html), optionally a web-framework (like http://jakarta.apache.org/tapestry/index.html) and you can start developing tomorrow (if you know Java of course) and a decent IDE (http://www.eclipse.org/). It will cost you about $0.
      You forgot the "learn J2EE" part, which is going to be a task at least a magnitude more complex than learning Java itself.
    39. Re:Rails, great for those fed up with J2EE. by Atzanteol · · Score: 1

      Hmm. That's really nifty actually! Unfortunately SQL*Plus in Windows runs in its own window (not a cmd line app). But perhaps for the Linux client which does run in a terminal...

      Thanks, I'll check this out!

      --
      "Ignorance more frequently begets confidence than does knowledge"

      - Charles Darwin
    40. Re:Rails, great for those fed up with J2EE. by CableModemSniper · · Score: 1
      --
      Why not fork?
    41. Re:Rails, great for those fed up with J2EE. by FictionPimp · · Score: 1

      I agree with everything you said about oracle, but the part about GUI tools. You can get aqua data studio, tora, SQL-developer, etc all free/cheap compared to toad.

    42. Re:Rails, great for those fed up with J2EE. by Forbman · · Score: 1

      So what you're saying is that RoR is becoming more complex as it tries to handle the complex things J2EE has to handle?

      No, it's getting much better at doing most of the boring stuff (i.e., object persistance, database CRUD actions, basic UI underpinnings), while leaving as much of it as clean and easy to use to do business logic, you know, the COOL stuff.

      There is a certain irreducable amount of complexity in writing enterprise software (whatever that is).

      Really? If by "enterprise software" you mean applications that have nearly every complex interaction model, algorithm, and support for EVERY theoretical edge case thrown in, then yes.
      Including silly things like "we must plan for enterprise database migration (i.e., Sybase->Oracle, Informix->Oracle, MySQL->Access, etc)."

      Frameworks that try to support this completely generally become more and more complex themselves until they reach J2EE levels.

      Well, it seems like J2EE started out with making every little edge case visible to the point where they affect everything that has to be done, even for basic, simple stuff that is probably 90% of what one does. My view of J2EE, and most Java things, is it's complexity for complexity's sake. Rather than make the simple stuff easy, and enable/facilitate graceful migration of more complex things, it starts down with "to use a motor, first you must cut these plates out of sheet iron, wrap by hand like so with this really fine copper wire, etc." because, after all, the only way to use an electric motor is to roll your own [sic].

      The vast majority of the "complicated" things in J2EE are in there because they are needed to solve real world problems.

      No, they are there because they're edge cases, and the edge case people shouted loud enough for them to be "important features", and the J2EE developers had decided that they wanted to generically deal with these things because no one else had. And, it's because J2EE is very very generalized. I see the need for all of J2EE's pieces on their own, but as a whole, it seems way too complicated.

      It's like buying the biggest Craftsman tool set from Sears, because it has every possible hand tool you might ever need, but then when all you need to do is tighten a nut and bolt, you are stuck trying to decide "do I use a screwdriver and pliers, a crescent wrench and socket, or the hammer?" (but then, which hammer? the claw hammer? the rubber mallet? the deadblow hammer? the ball peen hammer? the jackhammer?)

      Anything that attempts to solve the same set of problems will approach the same complexity.

      Yes, but most applications will only hit a few of those complexities, and most of them will hit about the same subset of complexities. So why not make those complexities handled easily, nicely, etc., without duplication of efforts, etc.?

      Rails is for doing Web apps. It's set up for a pattern of development and application usage, that maps out to about what 90% of webapps are and what they need for plumbing.

      Would you write an airline ticket reservation system with it? Nope. J2EE is the way to go with that (especially with the mainframe links). Would you write an application that attempts to link together data from disparate database systems into a "portal" application? Nope. J2EE is probably better for that, too.

      But if you decide you really would be better off developing your own Content Management System, etc., then Rails is probably a better choice if you don't want to use something that's already been developed (i.e., phpnuke, etc).

      Probably the coolest thing so far is that Rails is nicely layered, and it does not seem to have a lot of feature creep right now. Need a login form? then "gems login" is it. I don't need it (right now), so out of sight is out of mind, and that's a good thing.

      It even acknowledges its weaknesses (i.e., supporting existing "legacy" database schemas, such as your gloried "timestamps" for transaction control), and suggests that J2EE might be better for you in that case.

    43. Re:Rails, great for those fed up with J2EE. by Vacindak · · Score: 1

      Wrong. It is definately slower. Always. It is, however, often more efficient. But this is a function of how well written the code is. It's a well-known fact in computer science that no matter how fast your language-choice (or hardware, or whatever) allows your code to run, if your algorithm is inefficient, the more efficient algorithm running on the slower language/hardware will eventually outrun it given a large enough chunk of data. (That's the general point of that big-O notation and the study of algorithm efficiency and all that icky, mathy, theoretical stuff we love to hate.)

      Numerous benchmarks have demonstrated that for simple tasks where the choice in algorithms are the same and the data is the same (ie, a controlled experiment), Ruby gets the crap kicked out of it by Java. Sorting, for instance, is occasionally as much as 45 times slower in Ruby than it is in Java.

      Real-world situations with comparable algorithms are often just as dramatic. I was running an XPath query in Ruby on a very large XML file about a week ago, doing it in Ruby in the hope that I could phase out some Java code in favor of Ruby. The XPath query in Ruby (using REXML) took over an hour to finish (and it was a fairly simple one too). In Java, it took under 5 seconds. There are many reasons for the huge difference, but the main one in this case, is that Ruby sacrificed performance for ease of writing the code (ie, admittedly not so much a language issue, more of a library issue, but still a huge obstacle).

      The situation you were referring to works out the way it does simply because there is an incredible amount of overhead that goes into any of the Java web development systems. Ruby on Rails, in contrast, is comparatively very, very lightweight. But if you hand that same web app a complex processing job, it will inevitably choke and die.

      As much as I hate to admit it (because I truely love coding in Ruby and would love nothing more than to be able to code exclusively in it), Ruby is not ready to be deployed anywhere that performance is a major issue. (Especially if XML is involved. Ruby's XML parsing libraries are still quite a ways away from being the equal of their Java counterparts. And you know management, they have to be buzzword compliant, and XML is a big buzzword and all...)

  4. Substitute for s by fa2k · · Score: 2, Interesting

    Can this again help reducing bandwidth consumption in a similar, but prettier way, than html frames?

    1. Re:Substitute for s by marcello_dl · · Score: 1

      Yes, as the article points out. Ajax has also a problem in common with html frames, as it's difficult to associate content to an uri. The article covers this, too.

      BTW I recommend giving rails a try, it's really a well thought out environment for your web apps. The site linked in my sig is a quick and dirty powerdns + lighttpd + rails experiment on a debian UML host (still on 2.4)

      --
      ---- MISSING MISCELLANEOUS DATA SEGMENT --- [sigdash] trolololol
    2. Re:Substitute for s by jbplou · · Score: 1

      I've messed around with it a little and it should signicicantly reduce bandwidth in some situations.

    3. Re:Substitute for s by curth · · Score: 1

      Not just prettier and lower bandwdith, by way more capable. Try doing what Google Maps does using iframes!

  5. Ruby on Rails as a threat to PHP? by Sv-Manowar · · Score: 4, Insightful

    Every time I see material surrounding Ruby on Rails, I'm further convinced that it could be the web application programming foundation that starts to displace PHP as developers start to look at the transition from PHP 4 to PHP 5. Getting an increased install base for ruby on rails, as is the case with php (a fairly difficult task, admittedly) would definitely help no end in increasing the framework's popularity, at least amongst those programming smaller web applications.

    1. Re:Ruby on Rails as a threat to PHP? by Anonymous Coward · · Score: 0

      I agree that Ruby is a solution to displace PHP, a low performance web framework that results in web applications that scale poorly and has very little commercial tools support for site building. However, this ancient approach of text-edited, interpreted syntax is lost in 1997. Right now with Struts and ASP.Net you can do more visually with less effort and run it on Apache/IIS with far greater scalability. This stuff is just not very useful.

    2. Re:Ruby on Rails as a threat to PHP? by Anonymous Coward · · Score: 0
      an increased install base ... would definitely help no end in increasing the framework's popularity

      Wow, isnt that the DEFINITION of popularity? Good job spewing a bunch of words without actually saying anything. So insightful!!! I just love slashdot...

    3. Re:Ruby on Rails as a threat to PHP? by jbplou · · Score: 1

      could be the web application programming foundation that starts to displace PHP as developers start to look at the transition from PHP 4 to PHP 5

      Do you mean displace PHP from its positions below JSP, ASP, and ASP.NET?

    4. Re:Ruby on Rails as a threat to PHP? by DoctoRoR · · Score: 2, Interesting

      What a troll. PHP is so low performance and scales so poorly that major web sites moved to it from the Java world, and there are enterprise-focused solutions like Active Grid that are now available. It's so un-"useful" that myriad discussion boards and community portals are invariably PHP-based. New development tools and plug-in support for popular design/programming tools are popping up. Each of these web technologies has a sweet spot, but your narrow-minded viewpoint is best revealed by your aversion to "this ancient approach of text-edited, interpreted syntax." Yeah, right. Google and every other major web presence must agree with your assessment since they only use Java and .NET now.

    5. Re:Ruby on Rails as a threat to PHP? by eh2o · · Score: 1

      he transition from PHP 4 to PHP 5.

      And what transition would that be, excatly? PHP5 is almost completely back-compatible with PHP4.

    6. Re:Ruby on Rails as a threat to PHP? by matchboy · · Score: 1

      There is a growing number of people using Rails as a framework.

      Our PostgreSQL hosting services has been far surpassed by our Rails hosting.

      Rails is amazing. If you asked us if we thought that would ever happen in January, we would have laughed.

      --

      Robby Russell
      PLANET ARGON
      Robby on Rails
    7. Re:Ruby on Rails as a threat to PHP? by Renesis · · Score: 1

      ASP.NET is the best replacement for a horrid, outdated language like PHP.

      And ASP.NET can run on Apache now using Mono, so you get the best of all worlds: great dev tools (Microsoft Visual Studio), a great language (Visual Basic/C#) and framework (.NET), a great web server (Apache) and a great server OS (Linux/BSD).

    8. Re:Ruby on Rails as a threat to PHP? by eyeye · · Score: 2, Funny

      Translation of your comment: "eat shit, trillions of flies can't be wrong"

      --
      Bush and Blair ate my sig!
    9. Re:Ruby on Rails as a threat to PHP? by Tablizer · · Score: 1

      PHP would probably adapt whatever grand techniques RR grows popular with rather than just go under. This is open-source, so borrowing ideas is not a problem.

      However, some say that RR is "so great" because of Ruby's functional programming features. However, I am a bit skeptical. Functional fans have exaggerated in the past. But, we'll see....

      I just hope PHP community adds features with care instead of just to keep up with the Fad Jones's. Otherwise the languague will grow into a smooshy mess, chasing Perl, than Java, than Ruby, etc.

    10. Re:Ruby on Rails as a threat to PHP? by DylanQuixote · · Score: 1

      Ruby is technically an object oriented language, not a functional one. It has blocks like Smalltalk, but that doesn't make it functional.

      Also, PHP is already a larger language than perl,
      having 3,000 built in functions.
      And worse, it still doesn't have namespaces.
      Thankfully PHP 5 actually has some decent OO features.

    11. Re:Ruby on Rails as a threat to PHP? by Ian+Bicking · · Score: 1
      Incidentally Google doesn't use PHP at all as far as I know; they use Python, C++, and Java. I can't say why they don't use PHP; but I think because Python fills that niche well for them, and because they have a small number of very good programmers, and PHP is limiting for that kind of programmer. Oh, and of course they use Python for a lot of their internal tools, and PHP is wholely inappropriate for that.

      But, with respect to the parent post, I very much doubt their lack of PHP has anything to do with scalability, and certainly nothing to do with commercial tools.

  6. Rails book from the Pragmatic Bookshelf by gavri · · Score: 4, Informative

    Get the Beta book http://pragmaticprogrammer.com/titles/rails/index. html If you're interested in Rails at all, this book is all you need.

    1. Re:Rails book from the Pragmatic Bookshelf by mav[LAG] · · Score: 5, Informative

      Agreed 100%. I bought it last week. Don't be fooled by its "beta" status - it's a thoroughly well written introduction to Rails that takes you through everything you need to know - including building a REAL application (a shopping cart) from start to finish.

      I also bought Programming Ruby by the same author because I want to do more with Ruby than just Rails, but this isn't necessary for those who just need Rails - all Ruby constructs and idioms are cross-referenced with an included introduction to the language.

      --
      --- Hot Shot City is particularly good.
    2. Re:Rails book from the Pragmatic Bookshelf by Anonymous Coward · · Score: 0

      Anyone have a torrent for this book?

  7. Which is the bigger irony: by smittyoneeach · · Score: 3, Insightful
    Then Microsoft created XMLHttpRequest in Internet Explorer 5, which let browser-side JavaScript communicate with the web server in the background without requiring the browser to display a new web page. That made it possible to develop more fluid and responsive web applications. Mozilla soon implemented XMLHttpRequest in its browsers, as did Apple (in the Safari browser) and Opera.
    XMLHttpRequest must have been one of the Web's best kept secrets. Since its debut in 1998, few sites have used it at all, and most developers, if they even knew about it, never used it. Google started to change that when it released a series of high-profile web applications with sleek new UIs powered by XMLHttpRequest.
    a) Microsoft as a first-mover in a technology, or
    b) Microsoft's own technology being used by Google to loosen Redmond's deathgrip on the market?
    --
    Get thee glass eyes, and, like a scurvy politician, seem to see things thou dost not.--King Lear
    1. Re:Which is the bigger irony: by AKAImBatman · · Score: 2, Interesting

      Then Microsoft created XMLHttpRequest in Internet Explorer 5, which let browser-side JavaScript communicate with the web server in the background without requiring the browser to display a new web page.

      This isn't quite correct. IFrame and hidden IFrame communication was invented before that. The catch is that browsers weren't stable enough or compatible enough to make use of these channels.

      XMLHttpRequest does more or less the same thing as an IFrame (via an ActiveX contarol), except that it adds the overhead of an XML parse. AFAIK, Google doesn't use the XMLHttpRequest for any of their applications.

    2. Re:Which is the bigger irony: by pe1chl · · Score: 1

      You did not yet know about Google Suggest?
      That't a pity...

      Go try it at http://www.google.com/webhp?complete=1&hl=en

    3. Re:Which is the bigger irony: by Buzzard2501 · · Score: 3, Informative

      AFAIK, Google doesn't use the XMLHttpRequest for any of their applications.

      Google Suggest uses XMLHttpRequest, while Google Maps uses a iframe

      --
      Real programmers don't comment their code. It was hard to write, it should be hard to understand.
    4. Re:Which is the bigger irony: by timeOday · · Score: 1

      A remote database query every time you stop typing momentarily? I think that's the most gratuitous waste of computing power I've ever seen.... I like it :)

    5. Re:Which is the bigger irony: by Anonymous Coward · · Score: 1, Informative
      AFAIK, Google doesn't use the XMLHttpRequest for any of their applications.

      Well, you don't know very much, do you?

      http://maps.google.com/mapfiles/maps.keyhole.6.saf ari.js
      // Copyright 2005 Google function Oa(){} Oa.create=function(){if(typeof ActiveXObject!="undefined"){try{return new ActiveXObject("Microsoft.XMLHTTP")}catch(a){}}if(t ypeof XMLHttpRequest!="undefined"){return new XMLHttpRequest()}return null} ;function Aa(){}
      http://www.scss.com.au/family/andrew/opera/gmail/
      When Google introduced Gmail on 2004-04-01, they did not initially support Opera. The main sticking point was Opera's lack of XMLHttpRequest support.
    6. Re:Which is the bigger irony: by AKAImBatman · · Score: 1

      I stand corrected, then. :-)

    7. Re:Which is the bigger irony: by pe1chl · · Score: 1

      Mozilla/Thunderbird has it as well: while you type mail addresses, it searches your address books. When you have one or more LDAP address books defined, it hits them while you type your address, offering autocomplete the same way Google Suggest does.

    8. Re:Which is the bigger irony: by jbplou · · Score: 1

      Microsoft's own technology being used by Google to loosen Redmond's deathgrip on the market? How exactly as Google effected Microsofts market? Last time I checked most desktops are Windows and Windows Servers are gaining market share. The MSN search engine never as large a market share as Yahoo or Google so they never had a "deathgrip" on that market. Plus its what GMAIL, Google Maps, and Google Complete that use AJAX. GMAIL uses it some but I don't think people use GMAIL for the interface they use it for the space. Google complete is in beta and will be more important for attaching yahoo then microsoft. Google Maps doesn't even really compete with any core Microsoft component.

    9. Re:Which is the bigger irony: by smittyoneeach · · Score: 1
      How exactly as Google effected Microsofts market?
      While not Ajax-specific, an example is the increase of storage on Hotmail to 250Mb.
      --
      Get thee glass eyes, and, like a scurvy politician, seem to see things thou dost not.--King Lear
    10. Re:Which is the bigger irony: by Anonymous Coward · · Score: 0
      You did not yet know about Google Suggest? That't a pity...

      Thanks for not leaving the condescension out of your suggestion!

    11. Re:Which is the bigger irony: by QuaZar666 · · Score: 1

      I myself use Gmail for both the interface and the space. The search ability is super quick, the keyboard commands are handy to have, and the Label ability is a nice feature. Now when I first got it all I was thinking about was the space, but soon after I feel in love with its features rather than the size. now size does matter, but only with great abilities to go along with that.

    12. Re:Which is the bigger irony: by dustmite · · Score: 1

      Microsoft's own technology being used by Google to loosen Redmond's deathgrip on the market

      This is nothing new to Microsoft - they have long been creating tools for their own competitors. Microsoft create a platform and sell development tools for the platform. However MS is also an ISV for that same platform (e.g. MS Office). Hence there is an inherent conflict of interest - the platform side is developing and selling the tools that will be used by competitors to compete with the ISV side.

      This is one of the reasons MS makes such bad APIs, and why their API documentation is frequently outright incorrect - it slows down competitors, so they can stay "one step ahead".

    13. Re:Which is the bigger irony: by jbplou · · Score: 1

      That effects a microsoft product, not really thier markets. Hotmail isn't even a profitable product for them.

    14. Re:Which is the bigger irony: by Shadowlore · · Score: 1

      XMLHttpRequest does more or less the same thing as an IFrame (via an ActiveX contarol), except that it adds the overhead of an XML parse.

      No it doesn't. There is no requirement to actually request XML. Indeed many uses of it do not use XML at all. So far, none of mine use XML.

      --
      My Suburban burns less gasoline than your Prius.
    15. Re:Which is the bigger irony: by Shai-kun · · Score: 1

      That's very interesting. I tried finding some tutorials on XMLHttpRequest, but couldn't find anything that doesn't use XML. For a little project i'd like the object, but I don't want to do the XML parsing. Do you have anything of yours online that I could check out to see how you do it, or a guide on how to do it?

      --
      ...or so I've been told.
    16. Re:Which is the bigger irony: by krumms · · Score: 1

      XMLHttpRequest does more or less the same thing as an IFrame (via an ActiveX contarol), except that it adds the overhead of an XML parse. AFAIK, Google doesn't use the XMLHttpRequest for any of their applications.

      Well, yeah, it can be used like an iframe if you use XMLHttpRequest to pull HTML snippets from the server.

      There's more power in passing back real XML documents, then using request.responseXML (which is a DOM document) to process that data and display it as something meaningful.

      Half the tutorials you see are just about dumping HTML snippets into a <div> element, and while that's a nice, easy way to get things done, I certainly don't think the authors of these documents realize the full power of what XMLHttpRequest provides.

  8. Dont Forget Zope by salimfadhley · · Score: 3, Insightful

    Of course Rails isnt the only completely F/OSS web application framework; Rails is best when you want to put relational data online: It's edge is it's simplicity.

    On the other hand remember Zope - If you can get your head around Aqusition, the ZODB and Product Deveopment then Zope is a super-fast development platform.

    1. Re:Dont Forget Zope by Anonymous Coward · · Score: 1, Informative

      It's also an extremely heavy-weight platform, especially if all you're looking to do is simple web applications. In addition, running it alongside Apache is a bit of a resource hog.

      I'm not saying it's bad, but Rails and Zope are two completely different things. Comparing CGI to something that has its own built-in relational database, FTP server, et. al. doesn't make much sense.

    2. Re:Dont Forget Zope by Ranger · · Score: 2, Interesting

      If you can get your head around Aqusition[sic], the ZODB and Product Deveopment[sic] then Zope is a super-fast development platform.

      I recenty became the web administrator at a small university and the college I work for uses Zope. I knew a little Zope and Python beforehand and it helped me get the job. I was all hot and heavy to switch them to a PHP/MySQL solution, though my first love is Perl. Doing stuff in PHP was fast. As I studied Zope and Python more and more I came to realize that my initial impression was correct. It does have a steep learning curve (Zope not Python), but it is very powerful and reasonably fast. I'm not crazy about ZODB. I'll keep Zope put it behing Apache and connect to MySQL when I redesign the site. Also I'll throw Plone on top.

      What does this have to do with Ruby and Rails? Not much. The user base of Plone/Zope/Python (8) is much smaller than the PHP (5)/MySQL crowd. The Ruby (23) on Rails is even smaller than the Plone crowd.

      --
      "You'll get nothing, and you'll like it!"
    3. Re:Dont Forget Zope by Anonymous Coward · · Score: 0

      So you were hired to work on a team because they felt that you were well versed in Python and Zope, but you intend to waste their time and money rebuilding it in something else you like?

    4. Re:Dont Forget Zope by Ranger · · Score: 1

      So you were hired to work on a team because they felt that you were well versed in Python and Zope, but you intend to waste their time and money rebuilding it in something else you like?

      I said small university. I am the team.

      What would you recomend?

      A few of them there know Zope but not Python. Since Plone doesn't cost anything I'm not wasting their money. If Python is good enough for Google and ILM, it's good enough for me. I'm not wasting their time. They already have a history with Zope. Plone wasn't my first choice, but after looking at a lot of PHP/MySQL solutions, none had the robustness or security or XML support I felt was needed. The only PHP/MySQL solution that came close was Typo3 and it doesn't have the documentation, community, or support that Zope does. I'm still gonna use PHP/MySQL solutions other sites I maintain.

      --
      "You'll get nothing, and you'll like it!"
    5. Re:Dont Forget Zope by Anonymous Coward · · Score: 0

      if you can get your head around Aqusition, the ZODB and Product Deveopment

      That's the thing about Zope: it's is just a bunch of complex concepts and new names for existing ideas. I call it a "mountain climber" framework: a framework for people who get satisfaction from figuring out something complicated, rather than just getting their work done. Zope has a steep learning curve, with very little reward at the end.

      You're right about one thing: Rails' edge is simplicity. The 10,000-foot view of most web apps is the same. Rails just factors that out and lets you code directly at the 10,000 foot level, only coming down when necessary. Sure, your ego might be bruised knowing that your new web site only took 500 lines of code, and your junior programmer can understand it too, but who cares, you just did a web site in 500 lines!

      Rails is good for any web site that needs to run code when you access an URL. Not just putting "relational data online" (what is "relational data" anyway? The relational model is a model for data storage and manipulation). If you mean "putting data from SQL databases online", yes Rails is good for that, but the SQL-object mapping is an optional component, you don't even need to use it!

    6. Re:Dont Forget Zope by Ian+Bicking · · Score: 1
      Zope targets a very different space than Rails. It's always been a bit of a struggle for a programmer -- it tries to make certain things easy, and in the process makes other things very hard, or introduces very difficult magic. You can't get your head around Acquisition, no matter how you try it'll kick your ass periodically.

      If you are comparing Rails and Zope, you probably aren't comparing things properly. Doing a CMS? Then Zope has a lot of infrastructure, and Rails has none. Doing a small databased-backed web application? Then Zope will be rather painful.

      If you want to compare a Python option to Rails and Ruby, you should look at something like Paste/Webware, CherryPy, Subway, Aquarium, or others. There's a lot of choices, but there's very active work to bring together these web platforms, so won't be trapped by your initial choice.

  9. it's an illusion alright by udderly · · Score: 4, Funny

    From the article:The most visually impressive of these is Google Maps, which gives you the illusion of being able to drag around an infinitely sizable map in its little map window.

    It's illusory alright, when I start at the US and scroll due west the first thing that I come to is the UK. Where'd all the other countries go?

    1. Re:it's an illusion alright by MyLongNickName · · Score: 4, Funny

      All the other countries don't really exist. You see, Oceana needs to have enemies in order to keep the people focused, and subservient to the government. It is all part of the plan.... ... oh shit... its the Ministry of Love. See you in a few years...

      --
      See my journal for slashdot ID's by year. Mine created in 2005. http://slashdot.org/journal/289875/slashdot-ids-by-year
    2. Re:it's an illusion alright by Thomas+Miconi · · Score: 1

      It's illusory alright, when I start at the US and scroll due west the first thing that I come to is the UK. Where'd all the other countries go?

      Wherever you threw your eyeballs I suppose. The first country to appear should be Ireland (not taking smaller islands into account).

      Thomas-

    3. Re:it's an illusion alright by Best+ID+Ever! · · Score: 1

      It's illusory alright, when I start at the US and scroll due west the first thing that I come to is the UK.

      Best to read these things closely before you start hurling around insults.

  10. And the funny thing is... by TrappedByMyself · · Score: 2, Insightful

    Ajax grew from one of those hated, non-standard Microsoft features.

    --

    Help me take back Slashdot. When did 'News for Nerds' become 'FUD and Conspiracy Theories for Extremist Nutjobs'?
    1. Re:And the funny thing is... by Master+of+Transhuman · · Score: 1


      Um, was that actually hated by anybody? Did anybody know about it except Microsoft?

      I think IE is hated for its complete lack of support for just about anything standard and less so for ITS non-standard features - especially the one nobody knew about (until it became useful.)

      --
      Richard Steven Hack - This sig is TOO GODDAMN SHORT TO DO ANYTHING USEFUL WITH! MORONS!
    2. Re:And the funny thing is... by TrappedByMyself · · Score: 1

      Well that's nice that you're unhappy about IEs lack of standards support, but I was addressing the issue of extending standards.
      People get bent out of shape about it, especially in the web world, becuase developers create IE only sites that hose on other browsers.
      I just think its kinda funny that this criticized practice lead to an innovation which is changing the way many sites are built. It's kind of a subtle way of pointing out that Microsoft often takes flak for just being Microsoft.
      You're response is even an example. I stated something positive about Microsoft and you're like "No, no, but they don't follow standards, and Bill Gates pees on hobos!"

      --

      Help me take back Slashdot. When did 'News for Nerds' become 'FUD and Conspiracy Theories for Extremist Nutjobs'?
    3. Re:And the funny thing is... by TrappedByMyself · · Score: 1

      You're response

      Arrgh, shoot me now.

      --

      Help me take back Slashdot. When did 'News for Nerds' become 'FUD and Conspiracy Theories for Extremist Nutjobs'?
    4. Re:And the funny thing is... by Master+of+Transhuman · · Score: 1

      "I just think its kinda funny"

      Well, I think it's funny that Microsoft can do something USEFUL BY ACCIDENT!

      And Microsoft SHOULD take flak for being Microsoft - given that's the problem with them. Assholes should be criticized for being assholes - even when they do something that works out.

      Did Microsoft INTEND for this extension to be something other browsers could use, so it would be general enough to advance the functionality of Web sites? Or did they INTEND for it to be a non-standard extension to lock Web site visitors into using IE?

      Guess which... I don't need to.

      --
      Richard Steven Hack - This sig is TOO GODDAMN SHORT TO DO ANYTHING USEFUL WITH! MORONS!
  11. AJAX meme by broward · · Score: 3, Informative

    The rise in AJAX is almost solely due to the recent AdaptivePath article. I'm not sure it's a major trend.

    http://www.realmeme.com/miner/technology/ajaxDejan ews.png

    However, Ruby on Rails is clearly rising,
    moving steadily upward for over a year. Thanks to a reader for bringing this to my attention.

    http://www.realmeme.com/miner/technology/hibernate vsrubyDejanews.png

    1. Re:AJAX meme by shashark · · Score: 3, Informative
      From http://en.wikipedia.org/wiki/AJAX

      There have been some critics of the term AJAX, claiming that the Adaptive Path consultancy who created it are using it as a marketing vehicle (and as a meme) for previously used techniques

      It has been pointed out that the AJAX technologies did not have a common name before, and that some welcome a unifying term for the process. However it is also reported that the Google engineers who have created the most prominent applications using this technique consider their technologies as 'Javascript'

      AJAX is not a new approach of building software. From a higher perspective the presentation layer is like a form and a programming layer behind handling the events, commonly known in programming terms as MVC. This kind of programming is very well known in older programming environments like Delphi, MFC, Visual Basic, Oracle ADF, and Windows Forms, just to name a few. Applications using this model of programming have been around for years: Microsoft Outlook Web Access using WebDAV and the Web based ERP system P2plus using web services directly from the browser. However, because there are no standards available for the communication model behind previous implementations, all use proprietary extensions.

      A new aspect to AJAX is that there are now multiple browsers that can be used to realize this type of application, as opposed to earlier technologies which were frequently limited only to Microsoft's Internet Explorer.

    2. Re:AJAX meme by duffbeer703 · · Score: 1

      AJAX is just a catchy name cooked up by a few guys and embraced by O'Reilly, who no doubt are in the works with about 2 dozen books on the topic.

      --
      Conformity is the jailer of freedom and enemy of growth. -JFK
    3. Re:AJAX meme by Anonymous Coward · · Score: 0

      > . I'm not sure it's a major trend.

      I'm sure it is. Are you suggesting that rich, interactive HTML client-side apps will regress? that we'll go back to one page at a time clunkiness?

      I fully expect AJAX & FAME (Flash) apps to become very widespread. If someone tells me "oh, what about my old browser?", I will say "what, you haven't upgraded your old browser, even with all the security holes out there?".

      Java applets were supposed to be a major trend, but they never
      caught on in a big way. AJAX has fewer barriers. I'm glad it's taking hold.

  12. ASP.NET by Anonymous Coward · · Score: 0

    how is this better than ASP.NET?

    1. Re:ASP.NET by Queuetue · · Score: 1

      In just about every way you could possibly imagine.

    2. Re:ASP.NET by Anonymous Coward · · Score: 2, Funny

      How is eating feces not better than ASP.NET?

    3. Re:ASP.NET by Anonymous Coward · · Score: 0

      seriously - i'm making the decision soon. any actual, concrete reasons you can give me?

    4. Re:ASP.NET by jbplou · · Score: 1

      Its not better than ASP.NET in any way except for the fact you can put it on servers that have free OS's. ASP.NET is considerably more feature full and as better caching and performance features. Now that said AJAX can be used with any web platform, so if you want to use AJAX you can still do it with ASP.NET. If you are making a large scale site or a corporate inter/intranet site you really have two choices ASP.NET and J2EE. Either one is a vast improvement over Ruby/PHP/Perl is both performance and features.

    5. Re:ASP.NET by Anonymous Coward · · Score: 0

      Seriously, RoR is way better. Better productivity (management will see results faster), encouraging good practices (unit testing, design patterns), developers having fun developing, etc, etc. Just try it.

      Of course, it has also downsides. Ruby isn't exactly speed demon (don't run your production servers in CGI mode), your management may have objections, that random programmer from the street doesn't know Ruby (it is not Java/C#) or, if you are NBM shop, that it is not made by Microsoft.

    6. Re:ASP.NET by multi+io · · Score: 1
      If you are making a large scale site or a corporate inter/intranet site you really have two choices ASP.NET and J2EE.

      Yeah, proof by assertion. That must be why Slashdot, Amazon, Livejournal and zillions of other "large scale site" don't use them, or what? Amazon and Slashdot use Perl, btw...

      Either one is a vast improvement over Ruby/PHP/Perl is both performance and features.

      What features of ASP.NET and J2EE are so unique and essential that they make them a "vast improvement" and the only viable choices for larger web apps? Ruby and Rails have features that simply let programmers do the same thing with less code, faster, and with more fun, and make programming in Java/C# look boring and tedious.

    7. Re:ASP.NET by team99parody · · Score: 2, Insightful
      What features of ASP.NET and J2EE are so unique and essential that they make them a "vast improvement" and the only viable choices for larger web apps?

      You don't understand one of the most important necessary preconditions for a larger web app in corporations - someone to approve it.

      J2EE and ASP.NET have rich organizations that they can loan you to take key decision makers (CFOs) out to lunch to help approve expensive J2EE projects.

      Compared to the Oracle sales guy flying my previous CFO out to some golf conference to pitch their J2EE-based framework, Rails has NOTHING..

      I speak from experience - We had the case of One Oracle Salesguy against EVERY SINGLE internally developer telling this CFO that the Oracle framework sucked and that even Oracle was moving to Tomcat. Guess who won.

      That feature - the lunch&conference&golf budget - and that feature alone is enough to make J2EE and ASP.NET win most corporate environments.

    8. Re:ASP.NET by jbplou · · Score: 1

      Amazon is on a complete different level then most sites. They don't use standard Perl by the way, they use C and Perl mixxed together, they have a custom build web server that completly changes the game. Most companies can not afford to write their own webserver specific to their needs. Slashdot handles a large load by generating static pages for the main areas, they are not dynamic, so arguement here does not hold either. Livejournal probably does use Perl or PHP but I don't know anything about them, so maybe they pull it off. Both MSDN and MSNBC use ASP.NET and they both have more vistors then Slashdot so I don't know what your point was. ASP.NET blows away Ruby on Rails, I don't even know how to counter you arguement about Ruby being more fun since fun is subjective. But ASP.NET has much larger community support, documentation, it has caching options that boost performance greatly, it uses managed code that protects from errors. The VS.NET ide provides faster development time, ASP.NET lets you code your application with less code and has better database integration. I could go on and on. J2EE is better as well but I don't feel like typing anymore.

    9. Re:ASP.NET by Anonymous Coward · · Score: 0

      Its not better than ASP.NET in any way except for the fact you can put it on servers that have free OS's.

      Nope.
      You *can* develop & run ASP.NET on servers that have free OSs.

      /s

    10. Re:ASP.NET by Master+of+Transhuman · · Score: 1

      "Its not better than ASP.NET in any way except for the fact you can put it on servers that have free OS's."

      By George I think he's got it!

      Why was it somebody wanted to use ASP.NET?

      --
      Richard Steven Hack - This sig is TOO GODDAMN SHORT TO DO ANYTHING USEFUL WITH! MORONS!
    11. Re:ASP.NET by darnok · · Score: 1

      > If you are making a large scale site or a
      > corporate inter/intranet site you really have two
      > choices ASP.NET and J2EE.

      Agree with the parent, disagree with the GP.

      Any large corporation has many layers of Web presence. There's their customer-focused Internet site, and I agree it'd be brave (not necessarily foolhardy) to use Rails for that.

      However, there's also a LOT of intranet stuff going on, under the covers so to speak. Every person in that corporation needs access to internal information, and a lot of it is held in databases. That's where Rails can shine.

      In my current job, while a debate was going on about how to build a small intranet site (serving ~30 people, but used by them 90% of the day), I put together the solution using Rails. Almost literally (missed it by about 30 minutes!), when someone asked for my input, I was able to say "Well I think it should look something like this..." and demonstrate a full working solution. I did say "Yep, the UI is absolute basis HTML, and I'm aware that the corporate standard is J2EE, and you're fully welcome to take this functionality and port it to J2EE if you want to, and if you can find the budget to do so" - guess what happened...

      They went with the Rails solution, and (more importantly) I got exactly the feature set I wanted in the solution. My workmates jumped on and started using it straight away, so there's been no time since then for me to add all the esoteric/useless features that were requested by the "less-informed" users. Funny about how that worked out... ;->

      Many many intranet sites in large corps fall into the same category; there's a relatively small group of users need highly-specific and/or flexible functionality where a J2EE or .NET solution is neither timely or cost-effective. The choice is to try to come up with a business case to use J2EE or .NET, or to look elsewhere. There's so much of this work around, it's almost scary to contemplate.

      I've worked in many large corps over many years, and only a tiny percentage of the Web dev work is on the huge sites that need mass scalability/auditability/etc. Rails may or many not evolve to serve the needs of those huge sites, but it's absolutely golden for the myriad smaller sites.

    12. Re:ASP.NET by multi+io · · Score: 1
      Of course MSDN uses ASP.NET -- what did you expect? They also used ASP back when that was en vogue, and ASP is, well, not better than PHP. Livejournal uses Perl/MySQL, Wikipedia uses PHP/MySQL, for example. *Your* point was that ASP.NET or J2EE are the only way to build large sites. Enumerating large sites that use ASP.NET or J2EE doesn't prove this point; enumerating large sites that use something else disproves it. Most web apps are naturally scalable because the only shared parts are the database (cluster) and the session data (for which fast methods exist for sharing the data among machines in your web server farm), so if everything else fails, you can just throw hardware at the problem to speed it up as long as your database scales.

      Rails has multiple possibilities for caching web content at different granularities. You could at least have googled for "Rails caching" and incorporated the results in your posting to make it look as if you'd made a comparison.

      Essentially everything but assembler and C/C++ uses some variant of "managed code that protects from errors", and Ruby is no exception.

      The Ruby and Rails communities are very competent and helpful, and Rails itself is actually easy enough that you can read and understand the source code in a few days. I strongly dispute the claim that big real-world applications (that's those containing large amounts of business code, not just a dragged'n'dropped bunch of databound controls) require less code in ASP.NET than in Ruby. Ruby's OOP features and its meta-object protocol (i.e. runtime "hackability" of artifacts of the language itself) make it easy to write very clean, high-level, declarative code.

      Let's just say that you may know something about J2EE and ASP.NET but not much else :-p

    13. Re:ASP.NET by Ian+Bicking · · Score: 1
      You don't understand one of the most important necessary preconditions for a larger web app in corporations - someone to approve it.

      J2EE and ASP.NET have rich organizations that they can loan you to take key decision makers (CFOs) out to lunch to help approve expensive J2EE projects.

      This is one of the good aspects of things like Rails -- because large organizations have disfunctional decision making processes, it gives small more independent developers and shops a leg up. Damn, from that perspective it almost seems like a feature that Rails doesn't appeal to CFOs or compete head-to-head with J2EE.

      There's something kind of karmic about this, really. Those big organizations get exactly what they want, and exactly what they deserve: a big smelly heap of J2EE. Why should we try to convince them of the technical superiority of our techniques, unless we actually care about the success of the institutions themselves? We have nothing to win -- if we're wrong, then we lose credibility; if we're right, then they get to take our good ideas.

    14. Re:ASP.NET by Anonymous Coward · · Score: 0

      Well worded! If I hadn't already posted here, I'd have modded you up.

  13. Well, let's see here. by Anonymous Coward · · Score: 0, Flamebait

    the "Traditional Web App" is still running, but the "Ajax Web App" is down.

    This tells me everything I need to know about this amazing technology :-P

    1. Re:Well, let's see here. by Anonymous Coward · · Score: 0

      Application error (Apache)

      Change this error message for exceptions thrown outside of an action (like in Dispatcher setups or broken Ruby code) in public/500.html

  14. Rails changes the whole Web development game by Peter+Cooper · · Score: 3, Interesting

    Most of this product comparison site was developed in Ruby on Rails within the last two months, and it already does more than Froogle, has more search features, etc.

    I've also developed a large marketing system for the restaurant industry in Rails which lets restauranteurs develop e-cards, e-gifts, and send them to their customers on certain days.. or certain days away from their birthdays, etc.. and that will be going fully live soon.

    My 10,000 user strong RSS Digest will be making the leap to Rails soon (July 1st) and this is a system driving over half a million uses a day.

    I developed a del.icio.us-style tagged Code Snippets site in Rails within two days! It's had further refinements since then, but less than two weeks after launch, it was getting thousands of pageviews a day and hundreds of visitors a day from Google.

    I was ready to give up development work 6 months ago, and now it's the most fun and profitable work out there for me. Ruby on Rails deserves the attention it's getting. You can put together your ideas in a fraction of the time you'd have ever imagined.

    1. Re:Rails changes the whole Web development game by Anonymous Coward · · Score: 0

      Nice ad. Except that, well, all those sites look pretty sucky.

      Every Rails app I've seen looks exactly the same as every other Rails app I've seen. And they're usually extremely simple, seemingly "cool" concepts that are *as* trivial to implement in PHP/Python/Whatever as in Rails.

      And yes, I've developed Rails apps. And no, it's not a magical framework that cures all. And it's getting way too much fucking hype for what it is.

      Oh, there's also this little issue with Ruby being painfully slow, and having about 10x lower performance than PHP.

      Morons.

    2. Re:Rails changes the whole Web development game by Peter+Cooper · · Score: 1

      If you were logged in I'd give you mod points for having pointlessly trolled with every single sentence of your post, Anonymous. Thanks!

    3. Re:Rails changes the whole Web development game by Anonymous Coward · · Score: 0

      Sucky! NOT

      I just took Peter's snippets code and put it on my own site Matlab Snippets two days ago and I reckon it rocks!

      Brad

  15. AJAX, not Rails by Anonymous Coward · · Score: 0

    I love Rails as much as the next guy, I'm using it for every new project. But this thread is about ***AJAX*** in Rails, is it not?

    Does anyone have experience yet with *AJAX* in Rails? I'm about to play around with it right now. Can anyone please comment on THIS ARTICLE instead of babbling around the point?

    Thank you.

    1. Re:AJAX, not Rails by Anonymous Coward · · Score: 0

      BTW: Thank you in advance for modding me up. ;-)

    2. Re:AJAX, not Rails by Anonymous Coward · · Score: 0

      To hell with slashdot. I'm not going to read or post anymore. You people are like a bunch of yammering girls. No respect I tell ya. No respect.

    3. Re:AJAX, not Rails by Master+of+Transhuman · · Score: 1


      By George I think he's got it!

      --
      Richard Steven Hack - This sig is TOO GODDAMN SHORT TO DO ANYTHING USEFUL WITH! MORONS!
  16. Wow.. by LilGuy · · Score: 1

    First thing this title reminded me of was Cheech & Chong's Up In Smoke. That chick does a couple rails of ajax that Chong was cuttin up for fun. I was surprised no one else posted about it.

    --

    You're nothing; like me.
  17. Will that be 5 or 10 years experience? by GoofyBoy · · Score: 4, Funny

    Time to add Ajax and Rails on my resume!

    (To all potential employeers: I kid!)

    --
    The surprise isn't how often we make bad choices; the surprise is how seldom they defeat us.
    1. Re:Will that be 5 or 10 years experience? by Master+of+Transhuman · · Score: 1


      Hell, I was doing AJAX back in my System/32 RPG II days!

      (Yeah, right! Ajax cleanser, maybe...)

      (As an aside, I just read some article about some major financial company trying to get away from doing RPG II programming on one of their mainframes. I'm like, WHAT? Some asshole is STILL programming in RPG II?)

      --
      Richard Steven Hack - This sig is TOO GODDAMN SHORT TO DO ANYTHING USEFUL WITH! MORONS!
  18. Ruby? by Cthefuture · · Score: 1

    Has the performance of Ruby gotten much better since the early days?

    I started using Ruby a long time ago, back when no one knew about it. I liked it because it was like a better Perl (better OO support but with Perl syntax). However, I quickly tired of its lackluster performance. I mean it was a lot slower than even Perl or Python. I eventually moved on hoping to return when Rudy had matured and performance was kicking. Last time I checked the performance was the same as always. So much for the "tune for performance later" crap. When will programmers learn that doesn't actually work? You need a good design that includes tuning for performance early on.

    Now I know Ruby on Rails has been shown to be faster than J2EE and similar but that's just a small part of what Ruby can do. Everywhere else it doesn't seem to perform as good. Sorta like Java. Good for server-side web stuff (mostly due to the nice API's really) but suck-ass at everything else.

    --
    The ratio of people to cake is too big
    1. Re:Ruby? by mini+me · · Score: 1

      I also have been using it from the early days and found it quite fast back then.

      Now it is really slow if you use it in CGI mode (because it has to load the entire framework every time), but it's fine as long as you use FastCGI.

    2. Re:Ruby? by metamatic · · Score: 1

      Ruby's still about half the speed of Perl.

      Whether that's a good tradeoff for faster development and less maintenance time is, of course, a matter of opinion.

      --
      GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
    3. Re:Ruby? by Anonymous Coward · · Score: 0

      Fine by me. I really miss native threading, though.

    4. Re:Ruby? by I+Like+Pudding · · Score: 1, Insightful

      So much for the "tune for performance later" crap. When will programmers learn that doesn't actually work? You need a good design that includes tuning for performance early on.

      Algorithmic and architectural optimization is best accomplished after you fully understand the problem domain, and low-level code optimization is best done only after you've optimized the big stuff. Most of the time, you don't go in knowing exactly what you're doing, so you can't make big gains without refactoring a ton. In fact, the more you design up front, the more work it is to go back and change things around. This is one reason why iterative development methodologies are gaining in popularity.

      Our example, Ruby, is currently a 1.x release. A feature-complete 1.x release, as far as I'm concerned. Now, Ruby 2's VM is planned to be JIT and generally faster. But, I guess it won't because apparantly refactoring "doesn't actually work". Just the other day I was writing some new code that ran faster, but it actually didn't because, see, I had written slower code to begin with, which makes all succeeding versions work at exactly the same speed. Yeah.

      -/ILP/-

      So much for make it work, make it right, make it fast

    5. Re:Ruby? by Cthefuture · · Score: 0, Flamebait

      Whatever... When building a system you should have goals. One of those goals should be performance related.

      For example, if I had written Ruby one of my goals would be to have it run faster than the other systems I was basing it on. In this case that would mean at a minimum making it the same or faster than Perl. So as I was building the system I would constantly test performance to make sure it was meeting or beating the performance goals throughout the whole process. This requires no design work, just common sense.

      Now they're going back and having to redo the entire thing. As a programmer I know how that goes. It's insanely difficult to stay motivated while redoing the same work as you did before (or even that someone else did before). Good designs are iterative in nature rather than massive re-writes. Ruby v2 has about as much chance of success as Perl 6... (ie. extremely unlikely)

      Most programmers are idiots.

      --
      The ratio of people to cake is too big
  19. Application error (Apache) by Anonymous Coward · · Score: 0

    Try the examples ... http://blog.curthibbs.us/articles/2005/01/01/ajax- on-rails

    It looks like Ruby is not primetime, I get this error ...

    Application error (Apache)

    Change this error message for exceptions thrown outside of an action (like in Dispatcher setups or broken Ruby code) in public/500.html

    1. Re:Application error (Apache) by curth · · Score: 1

      It looks like the ISP's entire server is down, not just this particular web app.

  20. Get the book by Ridgelift · · Score: 3, Informative

    I first heard of Ruby on Rails here on Slashdot. Although Rails is dead simple once you get it, getting to the "ah ha" point is a bit of a steep climb.

    If you want to learn Ajax in Rails, the best thing I've read has been Dave Thomas' new book "Agile Web Development with Ruby on Rails". The author of Ruby on Rails itself, David Heinemeier Hansson, is also a co-author. Great book, absolutely fantastic web development framework.

  21. Rails Game & Geocomments using google maps by Jesse_132 · · Score: 1
    Speaking of the Web Development Game -

    On Railsday (a 24 hour ruby on rails competition), myself and a couple of pals built a "Ajax" powered game on top of google maps. I'm not going to put a live link to it. (each client does xmlhttprequests to the server for status ASAP, and I don't want my poor server to die)

    See Britt's write up and my (Jesse's) write up, Rails Day SVN source for all the projects.

    Then using that I was able to build Geo-comments into my rails based blog with a couple hours work... When leaving a comment, you leaving your zip code, and then the geo-comments view using embedded google maps to show who has said what

  22. Rails of Ajax by Anonymous Coward · · Score: 0

    That one girl in that Cheech & Chong movie snorted a rail of ajax thinking it was coke..

    That was funny.

  23. Suspicious until... by Anonymous+Cowdog · · Score: 1

    It's best to be suspicious of this framework until it has a nicely integrated mechanism for graceful degradation of the user experience in clients that don't support Javascript.

    I used to think, like the tadalist folks, if you aren't willing to upgrade your browser, screw you. But that was before my mobile web client began being an ever-more-important part of my systems for managing my personal data on the web. Most mobile devices just don't support Javascript, and even if you find one that does, it isn't that quick or easy to switch devices, with many such devices being cell phones that have contracts. These days if a site doesn't support plain HTML, it's as if it doesn't work at all, unless you are tied to a desktop.

    There certainly are AJAX apps out there that do gracefully degrade the UI on HTML-only clients. But the rails stuff I've seen so far are not among those.

    1. Re:Suspicious until... by rahul_kumar · · Score: 1

      suspicious of Ajax, not Rails. Without Ajax, Rails will work fine on your device.

      --
      -- rahul benegal : http://kalki.benegal.org
    2. Re:Suspicious until... by Anonymous Coward · · Score: 0

      So, when you write your fancy AJAX code, write it to degrade gracefully.

      Or, since Rails is an open source project, why not contribute such a feature back into the code?

    3. Re:Suspicious until... by Master+of+Transhuman · · Score: 1


      And when was the last time you found a site that just had plain HTML - no JavaScript, no Flash, no CSS, no nothing but hand-written (in NotePad) HTML?

      Face it, the world is not going to change for your PDA or cellphone.

      --
      Richard Steven Hack - This sig is TOO GODDAMN SHORT TO DO ANYTHING USEFUL WITH! MORONS!
    4. Re:Suspicious until... by curth · · Score: 1

      The Ajax support in Rails does have the ability to degrade gracefully. I just didn't cover that aspect in my article.

    5. Re:Suspicious until... by Mr2001 · · Score: 1

      And when was the last time you found a site that just had plain HTML - no JavaScript, no Flash, no CSS, no nothing but hand-written (in NotePad) HTML?

      The nice thing about CSS is your page still works fine without a style sheet (if you've properly separated your layout from your content). That's true in many cases with JavaScript and Flash too.

      Ajax frameworks will have to do the same if they want to make themselves useful to sites with mobile clients.

      --
      Visual IRC: Fast. Powerful. Free.
    6. Re:Suspicious until... by Anonymous+Cowdog · · Score: 1

      >And when was the last time you found a site that just had plain HTML - no JavaScript, no Flash...

      The point is not whether the sites have these elements. The point is whether the sites are coded to degrade gracefully, in other words, to still provide a usable user interface even to clients that cannot support such elements.

      >Face it, the world is not going to change for your PDA or cellphone.

      Actually the world is changing for PDAs and cellphones, and the story isn't over yet.

    7. Re:Suspicious until... by Master+of+Transhuman · · Score: 1

      "if you've properly separated your layout from your content"

      As Han Solo said, "Well, that's the trick, isn't it?"

      If your "content" is primarily plain text fuzzed up with other elements, you can do that. Most sites these days are full of GIFs, Flash, JavaScript-enabled elements that pop-up stuff and yada yada. The odds of any of this "degrading to text" is not very good.

      I personally eschew all that crap (except CSS). I think Web sites should present the INFORMATION people go there for and NOTHING else unless it makes getting that information easier or more precise.

      In some cases, you have to use CSS and JavaScript to replace even worse elements. I did work on the City College of San Francisco Web site which is heavily loaded with GIFs - for TEXT elements, no less - and frames. It took me weeks to design a method to replace that crap with CSS and JavaScript which would still at least LOOK like the original layout (simulating frames) - when it fact the original layout should be scrapped. When the Webmaster took my pages, he slapped them into the GIF/frame layout anyway.

      Face it, most of this stuff is not going to work on cellphones or PDAs until they are considerably more powerful - which I assume will happen in due time.

      --
      Richard Steven Hack - This sig is TOO GODDAMN SHORT TO DO ANYTHING USEFUL WITH! MORONS!
  24. I for one welcome by future+assassin · · Score: 1

    our new scripting overlords who feed us ajax rails.

    --
    by TheSpoom (715771) Uncaring Linux user here. I have nothing to add to this but please continue. *munches popcorn*
  25. Rails is nice ... by blankslate · · Score: 0

    heaps nice.

    You can bend the rails pretty violently if you need to as well, which is what makes the inbuilt 'sensible defaults' a useful starting point rather than an ultimate obstacle.

    And the rails source code is written in Ruby, so you can a) read it, and b) fit enough of it on your screen to grok what's going on.

    Go buy the book.

    --
    ---- death to all fanatics
  26. Article's examples dont work by rubato · · Score: 1

    The article has two links intended to allow the reader to compare a traditional web app to Ajax.

    In Firefox 1.04, the 'traditional web app' link doesn't work: the form for posting comments doesn't appear. (It does work in IE).

    The Ajax link throws up an error message:

    Application error (Apache)

    Change this error message for exceptions thrown outside of an action (like in Dispatcher setups or broken Ruby code) in public/500.html

    Not all that impressive!

    1. Re:Article's examples dont work by matchboy · · Score: 2, Informative

      That's the default Rails error page. Wasn't keeping up with the /. load with the default settings. Try again now.

      --

      Robby Russell
      PLANET ARGON
      Robby on Rails
    2. Re:Article's examples dont work by MoeDrippins · · Score: 1

      Because we all know that NEVER in the history of /. has a web page stopped being available after mention of it was made here...

      --
      Before you design for reuse, make sure to design it for use.
    3. Re:Article's examples dont work by curth · · Score: 1

      Yes, this *was* due to server overload (the slashdot effect). Its been mirrored now, so I hope there won't be any more problems.

  27. JavaScript libraries comparison by subtropolis · · Score: 1

    Would anyone care to post their experiences with any of the libraries - DWR, Prototype, Sajax, and Ajax.NET (i'm not interested in this one at all, but to be fair...) - mentioned in TFA?

    --
    "Our interests are to see if we can't scale it up to something more exciting," he said.
    1. Re:JavaScript libraries comparison by 33degrees · · Score: 1

      I used Sajax on a recent project; it was easy to use (only a single php file to include) and worked flawlessly. The only complaint I would make is that it uses neither PHP's nor Javascript's object oriented features, although that could probably be easily hacked together.

    2. Re:JavaScript libraries comparison by curth · · Score: 1

      Prototype, the library used in Rails, is completely object oriented.

  28. Extract from Web 2.0 chapter available there by DoctoRoR · · Score: 1

    As mentioned in Curt's great article, the Agile Web Development with Rails (beta) book has a nice chapter on Ajax support. You can even get an extract of the chapter at the pragmatic programmer's site: PDF Extract of Chap 18: Web 2.0

    Figure 18.1 should make Ajax clear. The book is highly recommended, and the 2nd Beta was just released last week.

  29. No, its still slow. by Some+Random+Username · · Score: 1

    Matz is well aware of the speed problems, and unlike ruby zealots is at least willing to admit that its a problem, and plans to make ruby2's performance competitive with perl and python.

  30. browser versions by serano · · Score: 1

    Can anyone who has experience with this comment on how well this works with various browser versions, older and newer?

    1. Re:browser versions by Anonymous Coward · · Score: 0

      Older browsers don't count any more. If people don't upgrade their browsers, they have bigger problems (security) than not being able to use XMLHttpRequest.

    2. Re:browser versions by will_die · · Score: 1

      Look into JSRS it has been around for 5 years and provides full support for everything for IE or NS 4+

  31. Funny Slashdotting by HansF · · Score: 1

    Traditional Web App (at this moment running fine)

    Ajax Web App (Crashed / burnt)

    --
    --> Insert Funny Sig Here
    1. Re:Funny Slashdotting by curth · · Score: 1

      This was caused by the slashdot-overload-effect. It is now being mirrored.

  32. Q: Can you mix PHP and RoR? by kanweg · · Score: 1

    I'm not a programmer, but someone who pays a programmer to develop a web-application for which PHP is used. It is possible to mix PHP and RoR, making a gradual transition possible? The FA surely mentions types of behaviour I'd like to have. Bert

    1. Re:Q: Can you mix PHP and RoR? by slappy · · Score: 1

      You don't need RoR to get the AJAX functionality, it's just a little more baked-in that way. Packages like prototype.js, SAJAX, etc. make it pretty easy to add nice interactivity to a web app developed in many languages.

    2. Re:Q: Can you mix PHP and RoR? by Kethinov · · Score: 2

      It's possible, but not a good idea. RoR is like a Mac. It thrives on integration. Running the Darwinport of XMMS may work for you, but using iTunes is ultimately the overall better solution.

      Hope that helps.

      (This comes from someone who runs XMMS on a Mac ;)

      --
      You're right, I wouldn't steal a car. But if it were possible, I sure as hell would download one!
  33. The Straight Scoop On AJAX & RoR here... by Anonymous Coward · · Score: 0
    Both are acronyms currently being hyped by small but vociferous groups of proponents (small furry mammals with big teeth):
    AJAX (Asynchronous JavaScript And XML):
    Acronym for a programming technique. The acronym was coined by AdaptivePath, but the technique existed long before the acronym arrived. In AJAX the client browser uses JavaScript/DHTML to send/receive HTTP requests in the background from a hidden frame (or IFRAME) or by using the XMLHttpRequest object, while maintaining a persistent GUI for the user. The intention is to reduce the "request-response" nature of web applications and provide a more X- or Windows-like GUI interface for web applications. Although AJAX is hyped as new, only cross-browser support of the XMLHttpRequest object is new. The "AJAX" technique has been around a long time: e.g., ESRI, the mapping company, has used the technique for years in web apps.

    Ruby on Rails (RoR):
    A web application framework that includes a web application program generator, a database, and the Ruby language (and optionally a web server written in Ruby). The program generator accepts a description of database tables and generates generic Ruby code (web pages) to do CRUD (create, read, update, delete) maintenance of each table. With very little initial effort one can create a (very) basic web application.

    Main weaknesses:

    • AJAX - relies on JavaScript/DHTML and so is a security risk and prone to failure due to cross-browser incompatibilities. Won't work if users (wisely or otherwise) turn JavaScript off.
    • RoR - Same weaknesses as most one-way program generators:
      • Once a site is generated, modifying the generated code slows things to a near-halt since, to do this you must understand the generated Ruby code and internals of the RoR framework,
      • There is no round-trip capability (i.e., if you hand-coded changes to a web app, regenerating the app in RoR will wipe out those changes.


    Both RoR and AJAX are being pitched to communities not particularly skilled in development. This is unfortunate since only a skilled developer can fully utilize either. Developers who use PHP or Perl will see little new in RoR or AJAX since program generators and frameworks (e.g., MayPole, Catalyst, Class::DBI, CGI::Application, Mason, EmbPerl, etc.) have been available for years in Perl and PHP.

    If you have a simple CRUD website that will remain simple, then you might experiment with RoR, (but I would not). I don't recommend AJAX under any circumstances, because of the high maintenance issues.

    1. Re:The Straight Scoop On AJAX & RoR here... by Anonymous Coward · · Score: 1, Insightful
      Your comments on Ruby on Rails are utter nonsense. Clearly you've never programmed in Lisp or pretty much any other dynamic language, and have no clue what it means to generate the body of function at run-time. If you don't like what Rails is doing, just create your own version of the method, and Rails won't replace it.

      A web application framework that includes a web application program generator

      No, Rails generates many methods "on the fly", but it doesn't generate any program for you. You still have to write the program. However, there are many cases where if you don't write your own code for something, Rails will supply a "default". When you get started writing your app, do you really need to waste time writing code to "display the template"? No, rails does it for you and chooses the template with the same name as the action. However if you need it to do something different, which is common, you simply have to add the one line of code to render the template. This saves a lot of time!

      Think of it this way: when you log into a Unix shell, you need to "ls" some files, "cp" some files, etc. Luckily, most Unix shells have those commands available, already written for you. Does that mean you can't write your own? No. Does that mean you can't customize what they do? No, they have lots of flags. Do you often need to write your own? No, usually the existing functions are good enough.

      That's what Rails is: a domain-specific language for writing web apps. Of course you can throw all that out the window and write *any code you want*, Ruby is a general programming language, but it's kinda silly to waste your time like that.

      a database

      what database?

      ,and the Ruby language (and optionally a web server written in Ruby).

      Rails doesn't "include" the Ruby language! And the web server is part of the Ruby library, not Rails!

      The program generator accepts a description of database tables and generates generic Ruby code (web pages) to do CRUD (create, read, update, delete) maintenance of each table.

      Man, you are really lost. ActiveRecord (a PART of Rails, you can use your own model classes) queries the DB to find methods *if you haven't defined them*. It also makes time-saving assumptions like, the name of the table is derived from the name of your class. Most people of course, use the defaults.

      With very little initial effort one can create a (very) basic web application.

      Delete "initial". Delete "(very) basic". Replace "create" with "create and maintain".

      Same weaknesses as most one-way program generators:

      Rails is not a code generator. Do you understand? No .rb files are created. It's all done dynamically, on the fly, with well-factored libraries. You can rewrite or replace any part of it.

      Once a site is generated, modifying the generated code slows things to a near-halt since

      Man, when you're in a hole, stop digging. All you have to do to "modify" the "generated code" is write a method that overrides the default. If you're an OO programmer you already understand the concept. (And no, it's not hard to do. If your table has a "first_name" column, and you want to override Rails' generated method, name your method "first_name". The original value is in a hash called "@attributes". It ain't rocket science).

      There is no round-trip capability (i.e., if you hand-coded changes to a web app, regenerating the app in RoR will wipe out those changes.

      You seriously need to take 10 minutes to look at Rails so you can realize how ridiculous this is.

      Both RoR and AJAX are being pitched to communities not particularly skilled in development.

      If this community doesn't include folks like you, count me in.

      I've been coding since before the web, for nearly 20 years. I've done "real" MVC. Rails is a collection of all the good ideas people have been using for years, all in one pac

    2. Re:The Straight Scoop On AJAX & RoR here... by Anonymous Coward · · Score: 0
      You really need to get a grip: posting the same misleading shit twice in a row indicates way too much Starbucks and far too much investment in a SoS ("Sack of Shit" - next version of "RoR").

      Our noble readers may wish to read Rolling with Ruby on Rails where it describes the .rb files generated by RoR. Make no mistake that RoR is a program generator: that some methods are dynamically compiled only tells us that it's slower than need be. The fact that a simple application can be created without explicitly writing code tells us that it's a program generator. Get over it!

      RoR is not "a domain-specific language for writing web apps". If you think it is, then show me the BNF definition of the syntax of the language. RoR is a program generator, not a language.

      RoR requires the Ruby language, requires a compatible database and requires a web server. Why you think those are not requirements is beyond me. Show me an example of RoR written in Perl, show me an RoR site that has no database, show me an RoR site that has no web server and I'll show you a site that doesn't exist.

      RoR does not support round-trip development , no matter how many times you repost. The article Rolling with Ruby on Rails, Part 2 speaks to this weakness. If you override a method and regen the skeleton, your method is overwritten, wiped out.

      FYI I've written code in Lisp for more than 30 years and programmed since I was 16. You were shitting in your pants when I was writing satellite navigation control systems and today you're still shitting in your pants [Again I recommend a reduction in coffee intake].

      FWIW the parent post is typical of RoR and AJAX proponents - Like Scientologists, they're ready to bite the ass of anyone who says something negative about their "new" toy.

      BTW if I find out that you're one of my sons, I'm gonna kick your ass on Father's Day! Hell, you're such an asshole, you probably are one of my sons - one I left behind after fucking some witch whore on a mountaintop in Timbuktu.

    3. Re:The Straight Scoop On AJAX & RoR here... by curth · · Score: 1

      I'm not going to go into a detailed rebuttal like the previous poster, but you've really missed the point. The only real generation of code are the helpers that create initial skeletons, no different than what IDEA or Eclipse do for you when you want a new class. These are starting point templates, no the sort of thing that the terms "round trip" or "two way" geneneration even apply.

      Your generation comments on Rails are completely wrong. You would realize this if you tried it.

  34. Get real. by Some+Random+Username · · Score: 1

    Comparing lighttpd + fastcgi rails to tomcat is just retarded. That's the fastest rails configuration vs one of the slowest java configurations. Tomcat is a very slow reference implimentation, java web apps are almost never deployed using tomcat. Repeat the benchmark using a reasonably performing java server (resin is free and fast) and then compare numbers.

    1. Re:Get real. by Darby · · Score: 1

      Tomcat is a very slow reference implimentation, java web apps are almost never deployed using tomcat.

      I suppose the 3 interviews and 2 job offers I recently got for sysadmin positions with heavy Tomcat must be an illusion.

      Yeah, you're right, nobody is using it.

    2. Re:Get real. by Anonymous Coward · · Score: 0

      For example, I know of a company called AOL that has a lot of Tomcat in production.

    3. Re:Get real. by cduffy · · Score: 1

      Yes, Tomcat is used in production sometimes. That's not to say that the folks using it in production (like my employer) don't know it's slow. We know it's slow, and we use it anyhow (for the moment), because our customers have more money for buying good hardware than we have developer-hours to decouple ourselves from it. There certainly are faster alternatives, though.

      That said, performance has improved substantially over the last several versions (ie. between 4.1 and 5.5), so the "Tomcat is reeeally slow" meme is less accurate than it used to be.

      I've got to disagree with his claim that real-world deployments almost never use Tomcat -- my present employer isn't the first place I've seen that does (the last site I was at using Tomcat didn't buy it directly -- it was wrapped up in a tens-of-K$ "solution" they purchased and then regretted).

    4. Re:Get real. by Vacindak · · Score: 1

      Yeah, ditto. At work we have a "solution" using Tomcat that cost us at least $100,000. It's terribly slow and there's nothing we can do about it.

  35. readline is also obsolete. by Some+Random+Username · · Score: 1

    libedit is a free replacement for libreadline, which oracle could use without any problems at all. They choose not to because they do not care about making their product usable.

  36. ASP.Net 2.0 by DigitlDud · · Score: 3, Informative

    ASP.NET 2.0 does this also. You can define client callbacks on web controls which let you run code on the server-side and get the results back without reposting the page.
    http://www.developer.com/net/asp/article.php/35068 96

    1. Re:ASP.Net 2.0 by team99parody · · Score: 1
      Well, any Turing complete language can do this too. (some Google engineers like pointing out that the technology they use for googlemaps and gmail is called "javascript", not ajax).

      The advantage of Ruby is the way in which the callbacks are attached to the controls. In C# or J2EE or VB you basically need to create a special type of class to handle the callback, and create an instance of it. In Ruby you basically pass in a code block representing the action you want without having to create new classes in your class heirarchy. It's kinda the difference between smalltalk/lisp object-orientedness (ruby) and C++ object orientedness (C#/VB/J2EE). Java comes close with its syntax to create anonymous classes; but it's still a long long way from not having to create the class at all, but just attaching the callback to it by giving an instance the code block it needs.

    2. Re:ASP.Net 2.0 by Anonymous Coward · · Score: 0

      .NET 2.0 now supports anonymous delegates.

    3. Re:ASP.Net 2.0 by shutdown+-p+now · · Score: 1

      Only in Java you need to define new classes for callbacks. In C# and VB.NET, you have delegates for that, which are pretty similar to C/C++ function pointers (or more so, Delphi's "function of object" type).

  37. No, you hold the hype for 3 months. by Some+Random+Username · · Score: 4, Insightful

    I am sick of seeing this excuse. You can't run around the internet screaming how rails is the greatest thing since the wheel, and how it renders java obsolete because its 100x faster to work with, and then say "its not done" when people actually try to use it. If you are ready to hype something and tell everyone how great it is, then you need to be ready to accept criticism too. If we can't compare it yet because it isn't finished, then stop running around telling us how great it is and how we should all be using it.

    1. Re:No, you hold the hype for 3 months. by shutdown+-p+now · · Score: 1

      You seem to mix the "it's great" and "it's definitely better than Java" part with "it's ready to be used in production environment". There's no contradiction in claiming the first two points and then stating the third. That's what prereleases are for - so you can evaluate the product as it's being developed, and give your feedback on it.

    2. Re:No, you hold the hype for 3 months. by Some+Random+Username · · Score: 1

      No, I'm not mixing anything up. The rails community, lead by David the professional troll, is constantly stirring up shit with the java people and making rediculous claims about how rails is better than java. But when someone points out things java handles, and rails does not, we hear "its not finished yet". I don't care if its finished or not, it has issues that make it clearly and obviously inferior to more mature java offerings, so quit lying to us and pretending otherwise, then trying to pretend your lies don't count because rails is still beta.

      Rails may very well end up being just as good or better than other options, but until it is, quit lying to us. Comparing what you imagine rails will be like in the future with what java offers now is rediculous and dishonest. And don't forget that as rails improves, so does everything else. I don't see what rails could do to improve itself that RIFE couldn't do too.

    3. Re:No, you hold the hype for 3 months. by shutdown+-p+now · · Score: 1
      making rediculous claims about how rails is better than java.
      *sigh* They're right, it is indeed better. They aren't lying. It's better on all counts except for "available to use one". Many of us geeks actually don't care about that last part.
    4. Re:No, you hold the hype for 3 months. by tpv · · Score: 1
      Yeah, it's "better" like a flying car is better than a land car...
      General Motors is obsolete already.

      However in my world, I generally judge how good something is, based on what I can actually do with it.

      "Hey boss, you know that project we need finished by the end of this year? I've found this great framework. It'll be ready sometime next year..."

      --
      Read more of this story at Slashdot.Read more of this story at Slashdot.Read more of this story at Slashdot.
  38. Yes, you are talking out of your ass. by Some+Random+Username · · Score: 1

    You can still cache over the network. Pulling an object out of a simple key/value hash which is stored entirely in RAM (memcached) is significantly faster than parsing an SQL query, retrieving all the data, and then making an object out of it. And it also allows your database to only have to deal with queries that MUST be done, instead of fetching the same things over and over again for no reason.

    1. Re:Yes, you are talking out of your ass. by Cyberax · · Score: 1

      You can't just pull object from the cache, you have to check somehow if it isn't stale. Of course, sometimes it isn't neccessary (with dictionary tables, for example).

      Usualy cache coherence is ensured using distributed evictions (like in SwarmCache) or clever locking strategies (like in Coherence). Most of this can be abstracted into separate layer, but still some interaction from the host container is required.

    2. Re:Yes, you are talking out of your ass. by Anonymous Coward · · Score: 0

      your sql is cached too and so are query results. this is why databases work, and would often be much faster than some ad-hoc network cache system.

  39. Please explain: What is the big fat hairy deal? by Qbertino · · Score: 1

    Ok. So someone built a webpage with java script rich client features and some server stuff to deal with it. Right? Well, this is as old as the hills. Web developers where doing this 5 years ago.
    But this is called Ajax and suddenly everyone goes crazy.
    Then there is ROR. I checked Ruby on Rails about a year ago. Then again a little more just the other month. It looks like Zopes younger brother. Not half as powerfull, and 5 years to late. But with Ruby, as to add even more extra geekness or what?

    Please understand: I think all these OSS PLs, Appservers and Web technologies are great. I love to use them for my work, and when a new one pops up - it happens every odd week - I'm the first one checking it out. I just would like to understand what all the extra excitement is about.
    Could someone please explain? I'm serious.

    --
    We suffer more in our imagination than in reality. - Seneca
    1. Re:Please explain: What is the big fat hairy deal? by MemoryDragon · · Score: 1

      Actually there are only so many ways to do things, after all you always deal with the same stuff, rails is new, but the concepts are old, and can be found in many other frameworks. The thing about rails is the excellent ruby language behind it which eases many of those constructs found and taken from many other frameworks by the usage of heavy introspection.

  40. What and what? by dspisak · · Score: 1

    These are "hot" technologies?

    I haven't heard jack-all about them. Then again I don't make my living doing web apps so who knows.

  41. Re:Curious by symbolic · · Score: 1


    I've been working with struts as of late, and although setting things up can be a little tedious, what specifically don't you like about it?

  42. Read harder. by Some+Random+Username · · Score: 1

    I didn't say nobody uses it. I said almost never deployed. You can get lots of offers for PHP too, that doesn't change the fact that its slow. Like I said, comparing the fastest rails setup to one of the slowest possible java setups is dishonest.

  43. What are you talking about? by Some+Random+Username · · Score: 2, Informative

    I very clearly stated that you can cache over the network, and pointed out why a network cache like memcached is faster than an RDBMS. Your post has nothing to do with what I said, so why is it a reply to me? And you can just pull an object from the cache with memcached, because every time you update the db, you also update the cache.

  44. as a flash fanboy.. by zenzizi · · Score: 1

    ok i had to post on this
    i'm just sick of people rejoicing about AJAX
    doing stuff FLASH does since like 2000..

    OMG SERVER LOAD NO PAGE REFRESH !@#$%

    that is all.

    --
    /// evilloop.com // la route est plus large que longue /
  45. JavaScript/JScript by leptons · · Score: 1

    I only have a few comments about the web-development community in general, relating to the technologies under discussion.

    It seems to me that the majority of web developers program in javascript for the browser and then use something like ruby, python, perl, or even php on the back-end. And even though PHP is very similar to javascript, it isn't.

    It saves me so much time to write code once, and be able to use it on the front-end as well as the back-end.

    Now, with the ability to load content AND CODE dynamically into the browser, doesn't it make sense to write back-end code in JavaScript as well?

    I've been doing "Ajax" (hate that name!) since 2000, and it is still difficult to convince the back-end coders at work that it is a good thing. They all code in VB/VBScript. One or two know javascript for the browser, but don't use it at all on the back-end.

    I know and have used many other languages, for over 25 years, and I have found that javascript is univeral, extremely solid, and powerful. It is as robust as the developer(s) using it.

    --my $.02 towards increasing Javascript's popularity and market penetration.

    1. Re:JavaScript/JScript by curth · · Score: 1

      In raw capability, JavaScript and Ruby are very similar, its just that JavaScript is messier and Ruby is much cleaner. That's how I originally found Ruby... when looking for a cleaner alternative to JavaScript (which I already loved).

  46. Data-centric apps by Tablizer · · Score: 1

    In the mid-90's the best tools for developing data-centric client/server apps where VB, Delphi, Powerbuilder, and Clarion. They fell out of favor because management wanted everything webatized. This was partly out of fad chasing and partly because deployment over the web is usually a lot easier.

    I would like to see interface kits take the best features of these four and create HTTP-friendly protocols for using them: a Biz-GUI browser. HTML+JS+DOM is growing into fat-client technology anyhow, just a messy set.

  47. How RoR Generates Web App Code... by Anonymous Coward · · Score: 0
    is at Ruby on Rails And Why Code Generation Isn't The Bomb. It compares RoR with AppFuse, another program generation framework. Ends with an ominous warning about the Ruby language:
    when analysing the productivity gains of Ruby, the initial benefit of code generation should be seen as just that - an initial benefit. Rails will stand (or fall) based on Ruby itself - both its technologies, tools and workforce.
  48. Is RoR Part of Scientology? by Anonymous Coward · · Score: 0
    What else can explain the aggressive nasty takeover of threads by Ruby on Rails proponents? Look at what they do to a discussion thread Move over Ruby on Rails, Java can be concise too!.

    There seems to be a lot of RoR fanatics out there. Why are they so sensitive to criticism?

    1. Re:Is RoR Part of Scientology? by JamesOfTheDesert · · Score: 1
      Is RoR Part of Scientology?

      Damn you, I spit up my coffee. L. Ron Hansson?

      Yes, there appears to be a core set of Rails fanboys who never miss a chance to slag off ABR (Anything But [Ruby|Rails]). This is quite sad, as the freakish hype and nonsense coming from many of these people denigrates both the general Ruby community and the truly good things in Rails.

      FWIW, I hope people do not equate Railers with the more general Ruby community, which is overwhelmingly tolerant and open to new ideas and alternative approaches.

      --

      Java is the blue pill
      Choose the red pill
  49. Rails: It's great! (but doesn't work) by philovivero · · Score: 1

    The little demo they have on ONLamp has a tiny little mention of unchecking a particular checkbox on your MySQL install. You know. To turn off authentication of username/password to login to the database. They claim that MySQL broke authentication in 4.1.9.

    Whatever.

    My DBD::DBI applications are able to athenticate against MySQL just fine, but this app throws large gaudy errors when trying to connect to my (non-crippled) MySQL instance. (Yes, I ran through the tutorial in the hopes that the bug would have already been fixed)

    Rails is a great toy for running on your Windows-only development server. When it comes time to actually point it to a database, you're screwed. I might recommend to the developers to use an existing DB abstraction layer.

    1. Re:Rails: It's great! (but doesn't work) by curth · · Score: 1

      Rails' MySQL client has supported the new authentication protocol since shortly after the part 1 of Rolling with Ruby on Rails was published. Part 2 mentions this.

  50. PHP Rails Ripoff by esconsult1 · · Score: 1
    There's a pretty good effort underway to create a PHP framework that works like Rails. Its over at Cake and is surprisingly robust and mature.

    They use the exact same Javascript library that is used in Rails as well: Prototype.

    Rails is pretty decent. I guess the only issue is performance... you pretty much have to count out your typical web hosting account and have your own server. Mod_ruby pretty much takes care of the performance issues and it installed without incident in my Apache 2.xx web server with PHP 5.

    Like many other people here, I realized that the whole Rails paradigm is great for new schemas and sites and will not fit well into my old crufty database schemas.

    1. Re:PHP Rails Ripoff by curth · · Score: 1

      FastCGI is the best way to run a production Rails app. There are many web hosts supporting Ruby on Rails, see:

      http://wiki.rubyonrails.com/rails/show/CommercialS upport

      which lists eight such web hosts.

  51. ASP.Net 2.0 Rocks! by Anonymous Coward · · Score: 1, Interesting

    ASP.Net has a LOT of new and very impressive features. I was blown away when I tried it (so were my co-workers). It's nice to have "Ajax-like" controls, but that wasn't the selling point for me.

    A few new things...

    Complete separation of code and HTML (code behind). No more generated-on-the-fly HTML by some snippets of code everywhere in your HTML (ala PHP). The code is compiled as well, and it'll run faster than all the parsed & interpreted stuff (like PHP). It makes it harder for others to shamelessly steal your code.

    Caching! A new and very powerful feature. Pages have output caching - no need to render it every single time it's requested. It also caches the data source - no "trips" to the SQL server if the data hasn't changed. (Used with stored procedures, you get VERY fast and scalable app).

    Sessions have been improved. They are shared across all webservers in a cluster. The new profiles are very powerful. No need to save or retrieve them either. As soon as a user logs in, you can start using their full profile and make modifications to it.

    Login system (Forms, NTLM, etc). Are you sick yet of creating a new user manager for every new project? Well, that's history. With ASP.Net 2.0, you can have complete LogIn, CreateUserWizzard, ChangePassword, LostPassword solutions with exactly 0 lines of code to type - that's right! No code AT ALL! It's all taken care of by the .Net framework. It has user groups and roles as well. Combined with profiles, these 2 things save me about half the work on most projects.

    Sick of writing tons of javascript for onchange/onsubmit validation (as well as server-side validation) for every form? Well, again, there's form validation components. Nothing to code. Add them to your form (there's some RegExp validators too), and you're done. Major time saver!

    Everything has excellent data binding (like, bind the "themes" or "skins" of all web controls to a user's preferences in his Profile - nothing to code at all!)

    Tired of all the server side includes for headers/footers/menus? No need for that anymore! Master pages take care of it all.

    WebParts let everybody pick different things they want (or don't) to see on their customized view of the webpage. Easy to use, and everybody has the web pages the way they want them. Definately welcomed!

    New data access controls. More powerful, less code.

    It's supposedly a LOT faster than J2EE.

    Stability wise, it's a lot better too. It has health monitoring (can notify you) and it self-recovers.

    Projects are easy to deploy on other servers.

    And the new VS.Net 2005 really rocks :)

    Have a peek! Guided Tour

    I was wondering lately if I wouldn't be switching to another language/platform for web development, and I couldn't really pick anything superior. Well, I've found it. Nothing comes even close to it. It's not the usual "develop faster!" claims - this time it IS faster, you'll be amazed! And everybody else I've shown it to has adopted it too.

    Bye bye Java, ASP, PHP, ... Been a good time, but the ride's over. ASP.Net 2.0 is like a revolution. A next generation tool/platform. Microsoft have really done a great job of it. Once it's out on November 7th, I think it'll start getting a lot of well-deserved attention, and eventually get adopted by a lot of companies. I've already got myself ASP.Net 2.0 beta hosting :) I'm not looking back to anything else anymore.

  52. Good defence, well done. by leonbrooks · · Score: 1

    +1, Well Met. (-:

    --
    Got time? Spend some of it coding or testing
  53. Memcached exists for a reason. by Some+Random+Username · · Score: 1, Flamebait

    Try it before talking out of your ass. Its not an ad-hoc network cache system, its a simple, VERY FAST cache that stores objects in RAM. If you are too stupid to grasp why this helps, go read about how it saved livejournal thousands of dollars that they would have had to spend buying a huge DB server and still had worse performance.

  54. Speaking as someone used to the simplicity... by leonbrooks · · Score: 1

    ...of urpmi "postgresql-server; createdb mydbname; psql mydbname" but has used Oracle a few times, I have to say: Amen, brother, amen!" (-:

    Yes, sqlplus is one of Oracle's big minuses (and not just the lack of readline). Yes, I'm aware that there are many replacements and that Oracle has to be configurable in detail in order to be able to scale, but you shouldn't have to deal with all of that rhubarb up front. It should remain politely anonymous out of the box until you explicitly ask for it.

    You should be able to type in one or two non-obscure commands and at that point be able to bang in SQL92 or whatever and get stuff running. You can do it in PostgreSQL, ibFirebird or (albeit slightly weirdly) MySQL and others, why not Oracle? Can't they afford to make it easy to use out of the box?

    --
    Got time? Spend some of it coding or testing
  55. Seconded. by leonbrooks · · Score: 0, Flamebait

    Cyberax, you come across like a VB programmer bagging PHP or mod_perl. Your conversation resonates from keel to crowsnest of exactly the kind of tunnel-vision MoeDrippings mentions.

    Would you care to give us a bit more context? Maybe a page or two on what you're actually trying to achieve, rather than just stating that specific features were absent (when they weren't) and then falling back on more bald statements that said features were inadequate. Something more convincing and complete?

    --
    Got time? Spend some of it coding or testing
  56. Not a holy grail? True, but... by leonbrooks · · Score: 1

    ...grail or not, Ruby is a lot holier than any other scripting language I've used. Unless you try to treat it like Java or PERL, in which case it comes across about as well as a CoBOL programmer writing in C.

    --
    Got time? Spend some of it coding or testing
  57. Why not? by leonbrooks · · Score: 1

    Microsoft and many others have been doing similar things for over a decade, and for money.

    If I had to change what they were saying, it would be to add one word, "already", to their spiel to flag its immaturity for the sake of the innocent.

    However, the whole situation is pretty much like a simple ballistics comparison transmogrified into software: J2EE has been flying for a lot longer, so it's higher in the air now, but by sighting along the trajectories you can easily see that RoR has a clearly greater base velocity and will fly both higher and further than J2EE. If there are performance bottlenecks, they will be coded around, and probably in far shorter order than they were on Java's timeline. Java and other languages have been doing a certain amount of trailblazing there already, so Ruby can simply reimplement only the roundest and most resilient of software wheels and use them rather than having to laboriously reinvent them from scratch and try each one out.

    Is that enough metaphor soup for one day?

    --
    Got time? Spend some of it coding or testing
    1. Re:Why not? by Anonymous Coward · · Score: 0

      ok, so "Microsoft and many others" do something for years, and for money, therefore, it is not evil, nor gay.

      Corruption must be all right too since that Al Capone guy did it for years and for money. oh, and killing people, too

  58. Advantages of dynamic languages by cquark · · Score: 2, Insightful

    No, the fundamental advantage of dynamic languages is programmer productivity. You can accomplish a goal in a dynamic language like Scheme, Smalltalk, Python, or Ruby in 100 lines that would require 500 or more lines of Java. That's also an advantage when you have to modify the code--there's less of it and it's faster and easier to read as a result. It's also much simpler and faster to create unit tests in dynamic languages, leading to more and faster testing of projects. These advantages grow with the size of the project.

    The other advantage of dynamic languages is flexibility. While Java has limited support for features like reflection and generics, dynamic languages have offered much more powerful and easy to use versions of these features for years. Java is also missing other dynamic features like closures and metaprogramming. Groovy's feature list is an inverted list of many of the limitations in Java's dynamic capabilities.

    Java's main contribution to programming languages isn't any new feature. It doesn't have any significant new features, and most of its main features like object orientation, byte-compilation/VM and primitive concurrency were in other languages like Simula and Pascal in the 1960s or 1970s. Java's primary contribution is that it was well marketed and that its limited dynamic features have inspired a large number of programmers to want more of the flexibility that languages like Scheme and Smalltalk offered decades ago.

  59. Well, the ImageMagick extension hasn't caught up by leonbrooks · · Score: 1

    ...so I still have to use PHP4 for anything involving iMagick calls.

    Yes, I know. I was just pushing your buttons. (-:

    --
    Got time? Spend some of it coding or testing
  60. VB is "a great language"? by leonbrooks · · Score: 1



    It's clear that you've not had exposure to any great languages yet. (-:

    --
    Got time? Spend some of it coding or testing
    1. Re:VB is "a great language"? by Renesis · · Score: 1

      Ah, let's not get this into a flame war, but if you'd told me 15 years ago when I was waist-deep in hardcore x86 assembler writing crazy 3D demos that I would be evangelising BASIC in 2005 I would have laughed so hard several of my internal organs would have burst.

      Yet, having used VB.NET for the last 4 years I can currently imagine no language I would rather code in. I've done many years of x86, 68000 assembler, 10 years of C/C++, many horrid years of Pascal. I even suffered VB in ASP2.0 and VB6, which were both horrid nasty creatures.

      VB.NET is the most beautiful, easy language I've ever had the pleasure to use. It is so clear to read, so effortless to code.. I spend all my time now thinking about the algorithms and the design rather than wondering whether I have the right case on a variable name, or whether I've accidently put a ; on the end of a "for" construct.

      If only there was a way to get more developers to dip their toe in the water and try VB.NET - I really can't praise it highly enough. Sick, but true!

      Try it - you might be surprised!

    2. Re:VB is "a great language"? by Anonymous Coward · · Score: 0

      thats teh sam reason i stoped righting with propa lanage or speeling i find without worring if i put a coma or perid in teh write place or not alows me to fucus on my contend instead of signtax

  61. PHP is already "a smooshy mess"... by leonbrooks · · Score: 1

    ...but like PERL, it just happens to be a useful "smooshy mess".

    PERL is generally more consistent than PHP. When you consider PHP's history, this is completely unsurprising. It went from a simple CGI templating thingy to a Swiss Army Complete Web Engineering Corps that also does command-line, interactive graphics (including 3D), Flash, PDF and all manner of other stuff.

    --
    Got time? Spend some of it coding or testing
  62. I think it's Beta because... by leonbrooks · · Score: 1

    ...by the time it rolls off the presses, makes its way through warehouses and parcel post to your doorstep, RoR will have been substantially improved. (-:

    --
    Got time? Spend some of it coding or testing
    1. Re:I think it's Beta because... by mav[LAG] · · Score: 1
      Good point :) They do warn you though:

      1.4 Stuff in Flux
      Rails is changing. Before this book gets printed, we should be up-to-date with Rails 1.0. In the meantime, this book doesn't yet cover:
      • Named routes


      At least by the time Rails gets to 1.0 I will (thanks to the book) have a firm grasp of MVC and why it does things the way it does. Any improvements or additions to the API are unlikely to be major deviations in philosophy.
      --
      --- Hot Shot City is particularly good.
  63. ...and been so since... by leonbrooks · · Score: 1

    ...they switched away from FreeBSD.

    --
    Got time? Spend some of it coding or testing
  64. Agree 100% by leonbrooks · · Score: 1

    Zope is a hog, but it's also very quick development environment - until you hit a wall and have to rebuild big slabs of the Zope universe more or less from scratch in order to handle a small extra feature. Modulo that and heaps of server horsepower, it's extremely attractive.

    --
    Got time? Spend some of it coding or testing
  65. RoR/AJAX successors out: SoS/JAXOFF by Anonymous Coward · · Score: 0

    SoS ("Sack of Shit") is the name of the newly-designated replacement for RoR ("Ruby on Rails"). The former RoR designers felt that this more fully expressed the flaming fervor of their framework's proponents. "And we picked the next letter in the alphabet, 'S' follows 'R', just to show how much fun we're having."

    JAXOFF ("JavaScript and XML Over Form Field validation) is the new highly-touted RoR successor to AJAX.

    New websites in SoS/JAXOFF should begin appearing within the next 10 minutes, since development time is so short and "no code whatsoever is necessary to produce an SoS/JAXOFF application." said SoS developers.

  66. This ajax and ruby stuff by codepunk · · Score: 1

    Hey this is all well and good but do you honestly believe that I really wish to learn ruby? Python does a simply smashing job for me and so does PHP.

    Call me lazy but rails is not that great that I am going to invest time in yet another scripting language.

    Although ajax architecture is the big buzz word because of google maps it is still damn messy to deal with from a programming aspect.

    Now I am not a guy big on flash but take a look at a project with some potential like Lazslo. Now that is a great innovative use of a ajax type architecture that has some fantastic capabilities. Hell I just seen a tv ad promoting a application written in it....Lazslo not that is a innovative open source product....and no I have never even developed a lazso app but it exceeds anything I have seen thus far.

    --


    Got Code?
  67. Try again. by Some+Random+Username · · Score: 1

    Go read David's blog. He makes up completely and utterly false claims about rails vs java all the time, just to stir up shit with java people. Rails is not under any circumstances 10 times faster to develop in than any java framework, but that's the claim he's always making. In fact, having used both rails and RIFE, rails isn't actually faster to use at all, but David still makes misleading comparisons on his blog of best case rails examples vs worst case rife examples to make it seem like rails is 10 times faster to use.

    If your sole criteria for "better" is "less keystrokes", then rails is better, and so is not commenting your code and using single letter variable names. If you instead consider things like time to develop, time to maintain, performance, scalability, security, reliability, etc, then you will realize that some java frameworks will be better for some things, and rails will be better for other things, and that there's plenty of other options in other languages that are perfectly viable too. Trying to pretend rails is simply "better" than everything is rediculous.

    Keep in mind, rails "scales" by spawning processes, which is slow and uses lots of memory. It also means that if someone tried to actually run a big site on rails like the rails zealots falsly claim you can, then you would end up with literally THOUSANDS of connections to your database server. So much for scaling. How you can possibly claim that rails is universally better than anything java has is beyond me. Think for yourself for a change, maybe even go try a few java frameworks before you making such rediculous claims.

    And again, "available to use" does matter. Because you are comparing a version of rails that only exists in your imagination, to a vague concept you don't understand (J2EE). Compare what rails has now, what is really there. And compare an actual framework in java, not a vague concept of stuffy "enterprise" java. Or did you not realize there's many different frameworks you can use in java, with different strengths and weaknesses, so you can pick the one that best suites what you are doing.