Continued from day one.
The first talk on Saturday was about
Ruby and JavaScript by Sven C. Koehler,
who noticed he used less and less Rails, but more and more JavaScript
when developing websites. He explained he likes using JavaScript,
since he can use DHTML (e.g. animations), AJAX and it also saves the
server CPU, since it works on the client side (I’m not really buying
that ;-)). He doesn’t want to use RHTML since it’s too obtrusive
(cf. JSP), difficult to separate mentally and he prefers prefers
CGI-like HTML generation. Also, he doesn’t like RJS because of the
“you don’t need to know JavaScript”-mentality and since JavaScript
code gets slow quickly with growing size. Before digging deeper, he
warned about a few caveats: JavaScript can be taken seriously, it’s a
lot unlike Java, it’s not class-based object-oriented, and it’s
difficult at times to combine libraries. He showed some idioms in
JavaScript (together with Prototype), about using the Ruby-like
enumerable or doing default parameters for methods. Next, he also
listed some bad features of JavaScript, notably the lack of
namespaces, having no nice debugger (it slowly gets better), and
having only a single thread in the browser. Then, he went to show
some Prototype niceties (Try.these
, Builder.node
and using JSON).
At the end, he presented a new “Web 2.0” web site he has been
developing called MySit.es, best quote during the demo: “It takes a
while, because it’s JavaScript”. The whole user-interface of the web
site is purely based on JavaScript.
Next in line was a talk about ebXML by Sacha Schlegl, which started with the explanation of open standards and why they are useful, about the work of OASIS, where ebXML is from, and that open source and open standards are a good match. ebXML is an XML format for the next generation of e-business, but I didn’t learn a lot more, except that, according to him, it should be EBxml, since the “electronic business”-part is the important one, not the XML.
After this, we got into Ruby code again in the talk
CodeGolfing with Ruby by Jannis Harder, which was written over-night,
but pretty good and interesting nevertheless. Jannis started by
showing off a golfed “paint my numbers” solver, and then tried to
justify code-golfing: his first point was to learn more about obscure
features of Ruby, then he stumbled, and, ehm, ehm, it’s to have fun!
He went on with the problem of adding numbers in a path traversing a
triangle, and polled the audience whether it was “shorter to code” if
he went from top-to-bottom or bottom-to-top. Top-to-bottom actually
turned out to be a lot shorted, especially since you can read the
input and compute at the same time. Then, he showed some golfing
tricks, e.g. using *x=1
instead of x=[1]
, using map
instead of
each
or Array#*
instead of join
. He also listed a few other
techniques, such as heavy use of side-effects, reuse of return values,
use of $...
-variables and multiple assignments. After showing us
some more examples of golfed code, he ended his presentation referring
to http://codegolf.com, where one can participate in golfing
contests.
The next talk was about Transparent Archiving by Kero Van Gelder, which is a kind of lightweight API for assignment that can keep more than one timestamp of values and archive automatically to files (that is, some light way of persistence). He wanted the archives to be human readable, editable and not being too harsh on flash memory. Following good manners as a software engineer, it’s of course developed using TDD (he gave a quick introduction to it). After an overview of its usage, he showed tests and how the implementation worked.
After this, I presented Sublanguages. You actually can read the presentation for yourself on my talks page. Enjoy!
I had to leave Euruko early just after my presentation, so I missed the talks on CRM and Rails, Patching Ruby, Pay4Code and Mongrel, which I really would have liked to see… but then I wouldn’t get the train home. I hope someone else blogged about it, else, you got to wait until the videos get uploaded.
Euruko 2006 was big fun for me, and I’d like to thank again the organizers, Ruby Central, O’Reilly for the book each speaker got for free, and everyone attending for the great time I had.
See you all next Euruko!
NP: Pearl Jam—Nothingman