rails 041 copenhagen



[music]
Geoffrey Grossenbach: It's the Ruby, on Rails podcast. I'm Jeffery Grossenbach. I have a great interview today from Obie Fernandez talking to some of the members of the Copenhagen Denmark Ruby Users Group. Also, I want to remind you of e Ruby con happening February 9-11 in Columbus, Ohio. A lot of great speakers: Jim Weirich, Bruce Tate, Dave Hoover, and others talk about using Ruby in the enterprise. Go to erubycon.com for the details.


I also just finished downloading a new podcast from Dan Benjamin who was on this show over a year ago. He's a Rails developer behind a list of Part Corked and a bunch of other great sites. You can check that out at highlogic.com.


[music]
Obie Fernandez: I am having a really cool night with the guys from the Copenhagen Ruby Brigade. You guys actually have - that's your naming lingo, right? Is Ruby Brigade, right?
Group: Yeah.
Obie: So why don't you guys introduce yourselves. Just let us know who you are what you're about a little bit.
Jesper Rønn-Jensen: Okay, I'm Jesper. I'm in Capgemini (http://dk.capgemini.com). Done a bit of Rails since January. And recently I've been working with a plugin for making easier internationalization.
Tobias Michaelsen: My name is Tobias. I work in a company that's called EasyFlow (http://easyflow.dk). We use C#.NET for all the work so I can't really use Ruby that much. Not at all Rails at my work. But I do some of the spin-offs and try to use some of the different tools for like Watir, stuff for testing.
Obie: OK.
Olle Johnsson: My name is Olle. I work with a company called Olle, Olle, Olle. (http://olleolleolle.dk).


[laughter]
Olle: It's a web development company that does web apps and mostly with PHP.
Obie: Are there three of you?
Olle: Sorry?
Obie: Are there three of you?
Olle: Me. Model, view, controller!
Obie: Oh.


[laughter]
Olle: Olle Olle Olle. I use Ruby for importing stuff and everything that people used Pearl for back in the day. Doing that with Ruby is pretty much more convenient. And I've been hosting roles, so I've been staying off Rails for a while. But now there's a fine VPS company in Copenhagen that can really, really take care of you.
Obie: Well, bravo. Do you want to give them a plug?
Olle: I would. They're called Giga Host. Their pro packaging you can find, by really, really looking hard at the website: gigahost.dk.
Obie: There you go.
Thomas Watson: I'm the last one here. My name is Thomas Watson, and I'm also working at Capgemini (http://dk.capgemini.com) with Jesper. Originally I'm a Java programmer, but at the moment, I would call Scott into this whole Rails thing, and working half in Java and half in Rails. I've been looking at Rails for the last year, but only coding the last half year or something like that.
Obie: So you've got a great group here. So tell me a little bit more about how it got started?
Jesper: Well, it started by me contacting Yokoiv, who has the blog mentalized.net (http://mentalized.net). He has actually been working very hard to introduce, to convert his company work into Rails. They had an old legacy system that he has written quite a lot about in his blog. He has done a lot of work in convincing his company into going with Rails instead of... and dumping the old ASP and VB script. Dumping all that. At a moment I contacted him and we immediately knew we had to do an initiative like what we've seen in Chicago and elsewhere. I guess that's what started it three or four months ago. Just before the summer holidays.
Obie: So how many people came to the first meeting?
Tobias: I think we were around....
Jesper: 22.
Obie: So tell us a little bit about the work that you've done. The localization stuff?
Jesper: Actually, I had been looking into some of the localization plug-ins, just to make something really, really simple, and to make it much easier to localize your Rails application.


[background noise]
Obie: We're recording this at a club by the way, so [laughter]. For all you aspiring pod casters, it doesn't matter where you record it, just get something good.
Jesper: I had a look into much of the localization plug-in, and they really do a lot of stuff that I personally didn't need when working with prototypes at work. I just wanted a simple localization feature to make a very fast one-language application.


So what I wanted to do was just translating the basic stuff, and supporting multiple languages was not an option. That was way too much in relation to what I wanted. So I wanted something that was not in the database that had to be really, really simple. And I ended up writing my own plug-in instead of modifying somebody else's.
Obie: What's the plug-in called?
Jesper: Localization Simplified.
Obie: Localization Simplified.
Jesper: It's kind of a complex name. I put in on RubyForge, so it's called L10n-Simplified. (http://rubyforge.org/projects/l10n-simplified/).


[laughter]
Obie: Cheers, simplicity!
Tobias: Cheers!
Thomas: And just to comment on that, there's actually after we released it there's a lot of people writing back and saying, "Hey, I can add a language to this" and you also added some pretty cool languages like pirate talk and I think there was another one.
Jesper: Swedish chef.


[laughter]
Thomas: Swedish chef. So, you can actually edit a text to say "Ho, ho, ho. You have an error."


[laughter]
Jesper: I was at Rails conference in London in the past month and actually localization talk, the plug-in was mentioned. I am extremely honored about it. But also I tried to see if there was a chance to get the core team to comment on the issues of localization difficulties in Rails. I mean there have a variable to modify Active Record error messages. Yes it is but it does not really modify the header in Active Record. So it is very inconsistent, so thats...
Obie: So you have a message for core team, is that what you are trying to say?
Tobias: Yes. Actually, I put my first patch in today, on number_to_currency, because it really annoys me that it always has to unit before the currency. And not the opposite, the way we do in Denmark. I put a patch for the core, which of course, I hope they accept. Like they have accepted some modification to distance of words in time recently.


I really hope I modify that we can get all this override of functions out of the localization plug-ins that does not belong. The localization plug should focus on translating messages in Rails and that should be it.
Obie: Tell the Rails Podcast Audience, what is going on in Denmark with Ruby on Rails? Ruby on Rails born here, right?
Thomas: Yes, the Danish way is, unfortunately, to wait and see what other people are doing, in terms of like big companies and stuff. Even though David Heinemeier started out here. Rails is not that huge compared to the United States.


The whole idea of the group is to come you need to we needed to know other Rails guys, because the community was not that active. People were sitting around in theirown little companies somewhere and doing their small localized stuff but nobody knew about it.
Olle: The dangerous thing is just thinking about Ruby or anything else as your own secret weapon. It is so stupid to think that, "Not publishing is a smart thing." That is so completely out of the map.
Obie: What do you mean by not publishing?
Thomas: Not blogging about it. Basically, last half years that Jesper and I have been doing a lot of Rails at Capgemini. Suddenly our managers and sales people are like, "Oh yeah, this is pretty cool. We did not know about this. This is new cool stuff. Maybe we could choose something out this."


Slowly we can our managers and sales people accept the fact that there is a pretty cool new thing that we can sell to customers. And do stuff in half of the time. I think by doing that and other people are doing that that Rails are going to kick ass very soon in Copenhagen and in Denmark.
Obie: What is the Capgemini story for Ruby on Rails in Denmark?
Jesper: Actually, I blogged a little about it. I think the story is we wanted to introduce Rails in a non intrusive way were we really could show a sweet spot for Ruby on Rails.


We could gain productivity and we are fit into our usual development style. What we did was actually prototyping a lot of stuff in Rails just making rapid prototypes within a weekend, within a week, within two weeks, to see how long we could go. To see how far it would take us.


And sales people immediately bought into it. Every time we had a big offer, sales people actually want us to show off make something cool. They could show to the customers. I think for the first project, they decided to just take screen shots of our Rails application. And then document everything that was happened. It was like ten screen shots, or something like that. The documentation was 70 pages. What we went after next time was actually demo it to the customers, to the clients.


When delivering an offer, We could actually demo the application. How we thought it would work and that actually made us win a project where we want to make a Java application (running on JBoss), but we actually do prototyping in Rails because we could show off a lot of things. We could kick start a lot of thoughts that were very deep down in analysis. We could actually bring it top right away.


I guess the point is that we could prototype a lot faster. We could benefit from a common understanding on a whole team, because we could actually visualize it. Furthermore, we could actually accellerate the analysis phase, because we could dig deep into problems. Some of our luxury problems were we want it more accurate data. We wanted more data. We had a completely different view point.
Thomas: I think we actually mentioned here is pretty cool thing. We had a customer contacting us saying: "We want to do this ASP.net application." We went about doing the prototype and of course we did the prototype in Rails, what else, showed it to customer and said "Hey, is this what you want. Was what you were thinking about? We can do this in ASP.net." I think it was like 400 man-hours. It was not a huge application a small one. I think a 400 man-hours application but you can choose to get in Rails and get into 100. And they were like: "Hmm. Yeah."


[laughter]
Jesper: Actually, I just want to add that particular company which is a big public agency here in Denmark. They were used to Microsoft technology and they want it implemented Microsoft technology. Actually considering the fact that they have to four double the price, they want it to continue with the Rails.
Obie: If you can generalize your advice, there is a lot of people out there listening who are at their big companies, Capgemini is huge.


Even in Denmark, it is really big right? How many guys?
Jesper: In Denmark we have around 400 and worldwide we have 60,000.
Thomas: So Denmark is not like that huge but even it is not huge but it is not like if you are comparing to Sweden where it is like 3000 or something like that.
Obie: Still same sort of challenges right now are faced by anyone who is that like at shops that are used to doing things the Java and.NET way. If you can generalize your advice right now.
Jesper: The shortest way how we can formulate this, start Rails instead of starting with work documents.
Thomas: When you want document or prototype something?
Jesper: I mean when you want to specify what you actually want to do or want to deliver: Do not do in Word. Do it in Rails.
Thomas: We actually code it instead of describing it in a Word document.
Jesper: Yeah, exactly.
Tobias: so you can see how this stuff works.
Thomas: Yeah, like a picture says more than thousand words. A web application says more than a thousand Word documents.


[laughter]
Thomas: Instead of trying to convince the salespeople from start, "Hey, we want to sell Rails applications". We say, "OK, we still want to sell Java or.NET or whatever. But as part of the process we want to prototype this as a usual thing. I mean it is pretty nice to prototype stuff. We want to prototype it in Rails because it is faster not because it is Rails."
Obie: And management does not have a problem with that?
Thomas: Yeah because the management says, "Cool. This stuff is faster. You can prototype it way faster than whatever and HTML prototype or whatever." The customer can actually work with this application and discover things that they did not know they wanted. You get Rails from the back.
Obie: Sneak in it.
Thomas: Yeah, sneak in it basically.
Obie: You had that comment.
Olle: I am quite interested in how long would it take to write those specs; these functional specs that you were describing the description of something. I am outside of this big corporate world. I would like to know how much time to spend by the word processor?
Jesper: The actual example I mentioned the guy that did the description of the Rails that we did. He actually worked a lot faster than us. We spent a whole weekend quoting like eight hours every night that weekend. This guy, he spent only one night from like Monday afternoon till Tuesday morning where they delivered a 74 page description of this.
Obie: But was it based on your prototype?
Jesper: Yeah, it was based on the prototype. We have that screenshots of the prototype.
Thomas: But to be frank actually, a big company like ours does delivers a lot of this to the big companies, they want to have custom built IT systems and usually what the way that happens is that we write a word document. I mean it is not like 100 pages. It is not 200 pages. It can be way more then that. I am talking like volumes of paper here.
Obie: In you experience does those binders get used? Afterwards, once you develop the styles. I do not want to get into trouble.
Thomas: Not really. I would not say that none of them get used but actually the real reason why both the customer and provider or IT people like us, we are doing this. It is basically to safeguard us.
Obie: Let's wrap this up. Denmark, Rails, Ruby, what is going to happen in the next year? Put on your little prophet hat. What do you think is going to happen?
Olle: We are going to take over the world.


[laughter]
Olle: Our club is going to adopt at least two libraries there are not well enough to kept these days.
Jesper: I think that we will definitely meet pursue making being committed to help making Rails even better. It has given us so much already. I think that we will pursue contributing more to Rails in the ways that we can do it.


The best way right now is probably internationalization and localization. That is the obvious. That is the low hang fruit here. But that should be done within a year. There is plenty of time for deadline here, which is one year.
Thomas: Olle just mentioned hosting, let's going to be some hosting companies.
Obie: We can see hosting products. Shared hosting in Rails, hosting for dummies.
Obie: Is that important that to get that on local basis?
Olle: Very, super important.
Thomas: Very important.
Obie: Why it is important?
Jesper: Big times. It is between text and dream host. If you do not know a lot about hosting, you choose it in big players. If you do not, you are going to have to take a VPS yourself and learn a lot about the Debian or another distribution. If you do not manage that, you are not going to have Rail hosting.
Thomas: Another thing, I think we are going to see a lot of broader acceptance of Rails and Ruby. We are going to see bigger companies taken it in and than having running Rail applications.
Obie: You see it is starting to happen?
Thomas: Yes. It is starting to happen now and I think so far it is going really fast. It is fast projects to do. You're quickly on to your next project. It is really fast at moment. I think it is going to continue to next year. It is kind of early. It is going to have a broad acceptance also in the media.
Obie: Absolutely. Thank you guys for sharing time with me here. I think we will find another round of beers.
Olle: It is a pleasure to be here with you.
Obie: I look forward to coming back within a year, finding out some of this predictions come true. Thanks a lot you guys. Thanks again.
Announcer: This weekend we have just finished rolling a new site for Peepcode screen cast; peepcode.com has a lot of new features asking for you can subscribe five or ten pack for discount. If you sign in, it will keep a record of screen-cast you purchased from here on out, also have every episode available in I-Pod video format. So, you can download that watch it on your I-Pod or take it to go.


This has been the Ruby on Rails on podcast, music by Why the Lucky Stiff, equipment donated by Sampson Audio.


Transcription by CastingWords