Railsters: While I have work tirelessly on Rails for the past few months, and boosting it for years, I have come to an important career juncture, and have decided to stop using it. No single reason stands out, but this short list should help you all understand my disgruntlement. - The "dynamic typing" system should just be called "passive typing". Everything is just whatever type its environment wants it to be. Types should be more assertive, to prevent bugs, and every interface should declare what types it takes. This also helps self-document. - Between Monkey Patching and Ruby''s absurd "Module" system, every object essentially sprouts every method of every other object. - The unit tests are easy to write for simple things like a database hit, or checking that HTML contains a given field. But they are absurdly hard to write for anything non-trivial, and this just takes time from debugging. If the tests'' primary purpose are to provide what normal languages do internally, with simple type checking, then I can kill two birds with one stone by not writing unit tests and by switching to a much stricter typing system. I will start using Design by Contract, on websites, immediately. - When the time comes to "pick a language", keeping track of which one you are in is a total pain. If you are inside Ruby, the #{} will insert contents into a string. But in RHTML, <%= %> inserts it. And don''t get me started on the horrors of trying to figure out if I should write ", \", \\\'', '', ", or ' into some string that may or may not emerge as JavaScript... - Because of Passive Typing, the editors _can''t_ provide typesafe command-completion, or even a simple Refactoring Browser. - To scale, you just buy more servers. Oh, I can''t _wait_ to tell my penny-pinching client _that_ one! - Ajax destabilizes both servers and browsers. ''nuff said. - Also, I heard a rumor that someone is going to sue 37signals for allegedly making web development "easy". The time is now to get clear of _that_ debacle! In summary, Rails is simply a way to allow inferior programmers to get by with adequate website features. It is not a tool for serious or scalable I am switching back to Tomcat immediately. I''m downloading it now, and I expect to have it configured by May 1st. -- Phlip http://flea.sourceforge.net/PiglegToo_1.html --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
Phlip, I was wondering if you''ve gone bananas as I read, but I think you''ve forgot to add: Happy April Fool Day! Regards, -- Long http://MeandmyCity.com/ - Find your way http://edgesoft.ca/blog/read/2 - No-Cookie Session Support plugin ----- Original Message ----- Phlip wrote:> > Railsters: > > While I have work tirelessly on Rails for the past few months, and boosting > it for years, I have come to an important career juncture, and have decided > to stop using it. No single reason stands out, but this short list should > help you all understand my disgruntlement. > > - The "dynamic typing" system should just be called "passive typing". > Everything is just whatever type its environment wants it to be. > Types should be more assertive, to prevent bugs, and every interface > should declare what types it takes. This also helps self-document. > > - Between Monkey Patching and Ruby''s absurd "Module" system, > every object essentially sprouts every method of every other object. > > - The unit tests are easy to write for simple things like a database > hit, or checking that HTML contains a given field. But they are > absurdly hard to write for anything non-trivial, and this just takes > time from debugging. If the tests'' primary purpose are to provide > what normal languages do internally, with simple type checking, > then I can kill two birds with one stone by not writing unit tests > and by switching to a much stricter typing system. I will start > using Design by Contract, on websites, immediately. > > - When the time comes to "pick a language", keeping track of > which one you are in is a total pain. If you are inside Ruby, the > #{} will insert contents into a string. But in RHTML, <%= %> > inserts it. And don''t get me started on the horrors of trying to > figure out if I should write ", \", \\\'', '', ", or ' into > some string that may or may not emerge as JavaScript... > > - Because of Passive Typing, the editors _can''t_ provide > typesafe command-completion, or even a simple Refactoring > Browser. > > - To scale, you just buy more servers. Oh, I can''t _wait_ to tell > my penny-pinching client _that_ one! > > - Ajax destabilizes both servers and browsers. ''nuff said. > > - Also, I heard a rumor that someone is going to sue 37signals > for allegedly making web development "easy". The time is now > to get clear of _that_ debacle! > > In summary, Rails is simply a way to allow inferior programmers to get by > with adequate website features. It is not a tool for serious or scalable > > I am switching back to Tomcat immediately. I''m downloading it now, and I > expect to have it configured by May 1st. > > -- > Phlip > http://flea.sourceforge.net/PiglegToo_1.html >--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
Long wrote:> Happy April Fool Day!Thank you. (Bats eyelashes.) The worst AFDJ is when nobody acknowledges an attempt! And to this day, you will find nitwits saying everything I said about Duck Typing and TDD... But the local Rails group sure trumped me: http://comox.textdrive.com/pipermail/sdruby/2007-April/001725.html (Note I cited that, too...) -- Phlip http://flea.sourceforge.net/PiglegToo_1.html --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
And of course I read this on April 2nd, having basically already forgot about April Fools, thinking "has this guy gone completely batshit insane?" Thanks for the laugh. Now I should get back to work. Jason On 4/2/07, Phlip <phlip2005-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:> > > Long wrote: > > > Happy April Fool Day! > > Thank you. (Bats eyelashes.) The worst AFDJ is when nobody > acknowledges an attempt! > > And to this day, you will find nitwits saying everything I said about > Duck Typing and TDD... > > But the local Rails group sure trumped me: > > http://comox.textdrive.com/pipermail/sdruby/2007-April/001725.html > > (Note I cited that, too...) > > -- > Phlip > http://flea.sourceforge.net/PiglegToo_1.html > > > > >--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---