I’ve create a simple screen scraper which sends a message to a Jabber
client for notification. The scraper portion works as does the Jabber
portion but I’m having trouble passing the data from the scraper to the
Jabber client.
Here’s what gets all the data in the scraper portion
link.search("//font[@class=‘hosts’]").each do |host|
I’ve create a simple screen scraper which sends a message to a Jabber
client for notification. The scraper portion works as does the Jabber
portion but I’m having trouble passing the data from the scraper to the
Jabber client.
Here’s what gets all the data in the scraper portion
link.search("//font[@class=‘hosts’]").each do |host|
On May 8, 2007, at 6:58 AM, Enrique Comba R. wrote:
Being so I just set up a web site http://www.rubypatterns.org where
I hope we can all share pattern knowledge in Ruby. It is a wiki and
be warned, there is no content at all there yet. Just a blank page
to be edited by anyone so that we can start a pattern catalogue for
all the Ruby developers out there…
I have recently joined this group to see what things are being
discussed Ruby. And I have to say that there is a lot of interesting
information shared in this group!
I come from a Java environment (have been coding in Java for the past
11 years) and I must admit that I was amazed by Ruby when I stumbled
onto it not long ago.
One of my hobbies has always been the study of design patterns,
refactoring, etc… And in general the way we can improve code to
make it more maintainable, etc.
A sentence comes into my mind on this:
Any fool can write code that a computer understands, it takes a good
developer to write code that a human being understands
I think it was Kent Beck who said this… Not sure though.
Anyway, Ruby, as far as I can tell really adapts to this words pretty
well and I consider it a fantastic OO language.
Being so I just set up a web site http://www.rubypatterns.org where I
hope we can all share pattern knowledge in Ruby. It is a wiki and be
warned, there is no content at all there yet. Just a blank page to be
edited by anyone so that we can start a pattern catalogue for all the
Ruby developers out there…
Enrique
I just left my footprints on your Wiki, but I did not understand
“pattern” in the strict sense of “Design Patterns”.
I strongly believe that Design Patterns are not related to specific
languages.
[That does not mean at all that it is not interesting to see how you
implement them best in Ruby, just that I did not interpret your idea
as such]
you are absolutely right with the statement that a design pattern is
language independent, still the way to implement a specific design
pattern differs from language to language…
Take the Observer for example. In Java for instance no one would
think to implement this pattern from scratch (unless there is a very
specific need not covered by the language) as it is available in the
language (aka Observer and Observable).
I do strongly believe that we would profit in general by a body of
knowledge in Ruby Patterns as there might be even patterns that only
apply to Ruby development… and for those patterns that are commonly
known (Visitor, Strategy, Factory Method, etc) we still can build
some advice for other novice developers that need advice…
I do strongly believe that we would profit in general by a body of
knowledge in Ruby Patterns as there might be even patterns that only
apply to Ruby development… and for those patterns that are commonly
known (Visitor, Strategy, Factory Method, etc) we still can build
some advice for other novice developers that need advice…
Thanks a lot for your input!
Cheers,
Sure I did not say the contrary, go ahead and delete my entry about
blocks or I can do it myself if you are busy.
I come from a Java environment (have been coding in Java for the past 11
years) and I must admit that I was amazed by Ruby when I stumbled onto it not
long ago.
One of my hobbies has always been the study of design patterns, refactoring,
etc… And in general the way we can improve code to make it more
maintainable, etc.
Be warned that several Javarish design patterns become practically
null ops in Ruby because…
Everything in Ruby, including and especially Classes are objects.
Everything in Ruby is open for extension at compile time.
The Ruby module / class structure is hackable at run time.
Thus, especially the construction patterns from the GoF practically
vanish into the background of ruby just doing what ruby does.
So don’t be disappointed when some of your Design Pattern translation
efforts seem to give trivial results, that should be make you say Wow!
Ruby is powerful!
John C. Phone : (64)(3) 358 6639
Tait Electronics Fax : (64)(3) 359 4632
PO Box 1645 Christchurch Email : [email protected]
New Zealand
Any fool can write code that a computer understands, it takes a good
developer to write code that a human being understands
I think it was Kent Beck who said this… Not sure though.
That was Martin F. in “Refactoring.”
I just want to echo the sentiment that design patterns are less useful
in Ruby than in Java or C. However, I’m not totally sure about that.
It’s definitely a popular view, and definitely true in some cases, but
I’d stop short of dismissing the entire book. Some of the Gang of Four
examples are in Smalltalk, not C, and some Smalltalkers say they
consider Ruby to be a Unix dialect of Smalltalk. Some design patterns
break down into about a line and a half of Ruby, Decorator I think
being a good example, but really you should view “Design Patterns” as
a set of tools whose usefulness varies by language. I think the
Flyweight pattern is probably useful in any language, it seems more a
sanity preservation device than anything else. Could be wrong though.
I think the Flyweight pattern is probably useful in any language, it
seems more a sanity preservation device than anything else. Could be
wrong though.
I cannot resist…
:just_a_symbol_of_its_usefulness
John C. Phone : (64)(3) 358 6639
Tait Electronics Fax : (64)(3) 359 4632
PO Box 1645 Christchurch Email : [email protected]
New Zealand
Actually I am not only trying to translate the GoF patterns into
Ruby, there are zillions of different patterns…
“Each pattern is a three-part rule, which expresses a relation
between a certain context, a problem, and a solution.” as Christopher
Alexander says.
And I don’t believe that this cases don’t apply for Ruby, they just
do it in a different way. If you take the creational patterns in GoF
they might be differences in the implementation, but the problems
still exists…
I will not be disappointed Ruby is powerful! But with any language
in the world you can use it wrong and lose most of it’s power…
Another take on Ruby Patterns - you might be better off looking for
Ruby idioms. Programming Java and programming Ruby can be very
different experiences, and it’s always good to approach a new topic
with the mind of a beginner. Techniques that would be impossible or
insane in Java are sometimes the best way to do something in Ruby.