Merry Christmas

Each year around Christmas and New Years I like to find the time to combine my interests in music and video into some sort of of greeting. This year it seems my interest in Apple’s products has also played a key part ;)

I wish you all a very merry Christmas and a happy New Year.

The culture of development communities: Ruby vs. .NET

I have worked professionally with Ruby on Rails for the past 4 years and definitely consider myself a part of the Ruby community. Before that, however, I was a .NET consultant for many years – in fact I worked with .NET from the early betas and I was very exited about replacing VBScript and classic ASP with C# and ASP.NET. Being at MIX 10 – Microsoft’s conference for developers and designers working with web and mobile technologies – has made me realize both how much the .NET community has changed since I left it – and how much it hasn’t. In this article I outline the differences in culture in the Ruby and .NET development communities as I perceive them, and voice my opinion on what could be changed.

I have a good friend named Oliver Kofoed who is a brilliant .NET developer. Oliver is an entrepreneur and has written the entire backend for Nonoba and Player IO, he has written his own object-relational mapper (ORM), templating system, multiplayer game server, content management system and so on. He has also been toying with several experimental .NET languages over the years (such as Boo) and even worked a bit on one of his own. Oliver is both curious and passionate about development, and he was in fact the one who initially told me about Ruby on Rails – I owe you one, Oliver ;)

I occasionally nudge Oliver about releasing some of his work as open source, but it has yet to happen. I don’t think Oliver mind sharing his stuff with the community, but the fact is that it takes a lot of work to prepare your code for open sourcing, especially if you haven’t build it with that in mind from the beginning. You need to take anything out that’s specific to your own applications, you have to write at least some documentation and you probably also have to make the code a bit more configurable and modular. To make that effort you need to get something in return from the community – you have to be reasonably sure that your efforts will be appreciated and that your peers will respect you for sharing valuable code with them.

Continue reading

Curiosities of HTML5

Molly Holzschlag talked about HTML5 (yes, apparently the convention is no space between HTML and 5) at the MIX 10 conference. I didn’t get any ground-breaking knowledge into the workings of, say, the <video /> tag, but I did get some insights into what’s happening with HTML5 that I’d like to share. For a more technical reference to HTML5, Holzschlag recommended Dive into HTML5.

MIX 10 keynote graphics
© 2010 MIX

You might have noticed that I did not link HTML5 to W3C’s specification of the language, but rather to the Wikipedia entry. The reason for that is not just the entry on Wikipedia is much easier to read than any academical spec, but also that W3C’s spec is not necessarily the official spec – or least not the only recognized spec. Molly Holzschlag explained how members of the XHTML 2.0 working group in 2004 grew tired of the slow progress and seemingly wrong direction of what was at the time supposed to be the next generation of HTML, and formed their own working group known as WHAT-WG. These “cowboys”, as Holzschlag likes to call them, very quickly (that is, they did in less than a year!) reached consensus on a new spec and further managed to get all the major browser vendors on board. As a result, W3C eventually shut down their XHTML 2 working group and started their own HTML5 working which adapts and formalizes the WHAT-WG spec into the the long legal specs we know and love … right.

Continue reading

Playing with Webby

I have been in a relationship with Ruby on Rails for more than 3 years, and I’ve completely dedicated and faithful to the beautiful web framework for almost 2 years. Until now.

Today I decided to cheat on Rails. And I’m not talking going back to the ugly ex, ASP.NET, or getting back in touch with old flirts such as PHP or Java, no … Once you go Ruby, you don’t go back.

But there are other Ruby web frameworks than Rails. “What? I thougth Ruby was invented for Rails, as a kind of unintentional side effect?” you might say, but it is no so. Until recentl, Merb has probably been the most well-known “Ruby-based framework that is not Rails”, but now the two are getting hitched and as such we have to look elsewhere for alternative Ruby frameworks.

Webby is one such framework. Or to be fair, Webby is so much less than both Rails and Merb, and that’s the whole point. Webby are for simple, static home pages that can be hosted on anywhere. The Ruby framework generates static html files based on layouts and content pieces defined in the project. It doesn’t use a database, it doesn’t parse forms and that is exactly the simplicity you sometimes need.

Continue reading

Reflections on Copenhagen Twestival

We were all there. The geeks, the journalists, the communication and new media consultants and the Internet entrepreneurs. Copenhagen Twestival was my first experience of meeting the Twitter community, and my guess is it was probably also the largest gathering of Danish Twitter users to date – we were around 120 people. Turns out that the Danish tweet-crowd consists of many well known faces from gatherings such as Copenhagen Ruby Brigade, Barcamp Copenhagen and Reboot.

Copenhagen Twestival was, along with many other similar meetings around the world, a charity event with the purpose of raising money for charity:water – an organization that argues that clean drinking water is the essential foundation upon which developing countries can evolve into something better. I can’t claim that I suffer from any great social conscience, but when Maame Agyeben – a former intern with the organization – told about charity:water, I was truly impressed. Their administration costs is sponsored separately, which makes them able to say that 100% of the general donations goes to building wells.

Red Cross and other global help organizations are doing a great job, but I like the prospects of charity organizations with a more narrow and dedicated purpose being able to pursue their cause globally by innovative use of Internet services. That night, we generated DKK 5,000 from the sale of 500 lottery tickets to win donated gifts, and probably a similar amount from buying overpriced, donated drinks.

Continue reading

Christmas greetings from a happy boy

Dear friends and clients, business associates and regular blog readers.

Thank you for helping me out, thank you for doing business with me, and thank you for following my ramblings. Let’s do it all again next year!

Now that I’ve had some time to experience self-employment on my own, I’ve come to realize that there are many similarities between being an entrepreneur and being a nissemand. Both is hard, but when and if you reach the happy ending, everything will be good. As a Christmas greeting especially for you, I’ve recorded a song about just that :)

I wish you a merry Christmas and a happy New Year!

All the best,
Casper

Keeping git repositories on Dreamhost using SSH

“is bemused/awed by how fast svn became a legacy technology in ruby community/developers” Dr. Nic recently said on Twitter. It is true. Greatly aided by Geoffrey Grosenbach’s screencast on git, I myself is starting to feel comfortable enough with git to start abandoning subversion altogether.

Github is great, but there is really no reason to pay for private git repositories unless you need the added functionality. I have a Dreamhost account that I am happy with, so why not use that for my private git repos? It is easy to do through SSH, now that git is installed on all Dreamhost servers, but it is not that easy, so I thought I’d better document it here for my own future reference.

(This stuff is tested on Mac OSX, and should work fine for *nix users. Windows users will have to do some workarounds, but can use this as a reference point.)

Continue reading

Impressions from BarCamp Copenhagen

It’s the day after the second BarCamp in Copenhagen ever, and the first one that I’ve been lucky enough to participate in. Heck, I even presented at it, contributing with what you can is the whole point of such an arrangement, right?

BarCamp Copenhagen 2007
Copyright © 2008: Thomas Kristiansen

Here is some mixed impressions from night:

  • Meeting Henriette for the first time and realizing that her hair looks even more impressive IRL.
  • Geek talking about iPhone, RadiantCMS and other good stuff with fellow members of the Copenhagen Ruby Brigade.
  • Accusing MC of sounding like Martin Fowler when he asks insightful questions from the back of the room during presentations. His answer to these accusations is: “Who is Martin Fowler??”
  • Helping an ITU student realize that a nice no-so-geeky subject for her upcoming technical four-weeks assignment could be something about agile development.
  • Recommending Michael to go Thailand for his next business adventure, even though I have never been there myself.
  • Sneaking out and starting early on the very delicious buffet, consisting of plenty of small Mediterranean dishes.
  • Meeting for the first time a Turk – Tayfun – who is not trying to fit into the narrow-minded Danish society, but is simply an exchange student from DTU.
  • Discussing C# versus Ruby with Allan. Why is the first thing .NET guys ask always: “So, what IDE do you use for Ruby?” ??

My own presentation turned out to be only the second-most geeky of the night (MC’s on IPv6 being number one on that list), and I think it went pretty well. Perhaps I shouldn’t admit this, but it was a bit of rip-off from Dr. Nic’s talk at RailsConf Europe 2007, although my attempts at being funny, while keeping up the proud tradition of ridiculing non-Ruby programming languages, was to compare PHP to a Chihuahua dog and C# to Uffe Holm.

It turned out, however, that my last slide was what generated the most response. It was nothing more than a screenshot of the heroku.com in-browser Ruby on Rails editor and recommendation of using this innovative service to get started with Rails. Perhaps I should do a full article about Heroku in the near future.

To those of you who were at BarCamp: Great meeting you! To those who weren’t there: Don’t miss out next year! And finally a big thanks to Henriette and Thomas for organizing the event, to Beaconware for hosting it, and not least: Thanks for the food and beers!

Happy New Year!

In Denmark, this song is always put on TV just after the clock has struck midnight. On TV, it is a large girl’s choir performing, but I thought it was time for a change.

So here it is, my way of wishing you a fantastic 2008!

Hva’ sÃ¥, Roskilde!

The title of this article is a sentence, most Danish bands dream of shouting out at the Roskilde Festival some day. It means, “What’s up, Roskilde!”, and is usually followed by loud screaming in response from the audience at the Roskilde Festival; North Europe’s largest festival, located in Denmark near Copenhagen.

This year was my 14th year at Roskilde. While memories from the many years are hard to keep apart, each year is something special. This year will, without a doubt, first and foremost be remembered as the rainiest Roskilde Festival ever. Roskilde usually has rain; this year it had a flood. Roskilde usually has mud; this year it had liquid dirt. Roskilde usually has puddles (of rainwater, that is), this year it had ponds. But I won’t be one to complain – I had water in my tent at one point, but I was lucky to be camping in a relatively dry area.

In fact, I took pleasure in defying the rain. The festival opened Thursday at 5 PM, and at 1 PM, I was invited to a 10-year anniversary reception far away in the West camp. Thursday was the most rainy day of the festival, and probably will be the most rainy day of this entire year. It poured down for almost 24 hours non-stop, and I had to cross several ponds of mud deeper than the top of my wellies, but I made through to the reception party, and spent the next few hours eating canapés and drinking Champaign, a very odd thing to do indeed at Roskilde.

I also had great music experiences at the festival. Two bands, whose albums I immediately need to buy, are Goose and Loney, Dear, but I also enjoyed a number of Danish acts, as well as the band ending the festival; Basement Jaxx. That last concert, especially, reminded my of a thing that is so unique to Roskilde: People are always so damn nice to each other! I was up in front of the main stage, Orange, and of course it takes a lot of cheering, jumping, dancing, pushing, shoving and shouting to be part of the spearhead of 50.000 people, but it never gets uncomfortable or nasty.

Alas, 7 people died in front of Orange Stage in 2000, but the festival and the audience really learned from that. If I accidentally hit someone in my wild cheering (and that happens a lot), I apologize with a smile, and get a smile back. If I find me and my 189 centimetres towering in front a group of girls trying to see just a bit of the stage, I offer them to get in front of me. If things get wild and some of the more intoxicated people in the audience can’t behave them selves, I use my size to protect those who are smaller around me. The great thing is, most people tend are just as considerate as me, and that’s what’s makes the whole thing work.

I wouldn’t call this The Orange Feeling, but there has been an interesting discussion about that at Jaiku. Speaking of Jaiku; I attempted to microblog from the festival, and also wrote 16 entries during those 5 days, but I wasn’t really able to check on comments from the mobile phone, and didn’t really get that many anyway. It was an experiment, and I don’t know what to make of it yet. See you next year!