Maturing as a programmer – How to supercharge your career

From the age of 11 one thing that was absolutely certain to me was that I was going to be a programmer. That was the age when I got my Commodore 64 and started to program in BASIC. I loved programming so much, that after a while I was programming more than I was playing games. There is something so sweet and pure about programming that nothing else in real life really can match it. Even with the bugs, time constraints and frustrations a modern programmer deals with, programming is still a sweet deal!

How to avoid Play Framework killing performance

  Note: This article is about Play Framework 1.2.x and might not apply to Play 2.x projects. The other day I had to convert some code from C to Java. This code runs some pretty simple calculations, using a few classes as data-holders, and running a few thousand iterations. I had to get this working as part of the backend for a Play Framework web application. In C the code would run blindingly fast, and return the results within 10-20 milliseconds. All good! After a couple of hours of converting the code and fixing the pointer/reference/initialization oddities between Java and C, I got the code running. Well, more like walking, or lazily sauntering along. The Java code took 4 seconds to run. I know Java is perceived to be slow, but my experience with it was telling me that there is no way it should be so slow. I had a look at the Java code. Lots of Math.Pow(), Math.sqrt() calls, a lot

read more How to avoid Play Framework killing performance

Hibernate, just stop it!

In 2001 Hibernate was created to ease development for the hordes of unhappy developers fighting with Java’s poor EJB implementation. EJB was so confusing and over-engineered that Hibernate’s simpler approach seemed like pure heaven in contrast. Eventually hibernate inspired Java’s JPA and became a certified implementation of JPA. History lesson is over. Lets look at the status today. Right now Hibernate is a very popular ORM java library, maybe the most popular of them all. And I can’t understand what is wrong with people.

Dragons’ Den – Into the mouth of madness

This year Bergen had its first Game Development Festival, arranged by Linn Søvig, JoinGame and the Norwegian Game Developers Guild. The festival was named Konsoll, the Norwegian word for Console (read: Xbox, Ps3, Wii and the likes).

Dungeons Den is based on a TV show. The concept goes like this:

A hopeful entrepreneur has a set time to present his great idea to a panel of experts, and then the panel has a set time to critique the idea. When I say critique, I mean tear apart, as dragons do.

read more Dragons’ Den – Into the mouth of madness

Pragmatic OOP

In my last blog post I talked about people pushing a process as the magic bullet when it is the people that matter. Having the wrong people on a team can cause havoc and kill a project. Sometimes these wrong people are cargo cult programmers. According to Wikipedia: ‘Object-oriented programming (OOP) is a programming paradigm using “objects” – data structures consisting of data fields and methods together with their interactions – to design applications and computer programs.’ OOP is supposed to be a practical way to organize a program into hierarchies of objects where similar objects can inherit behavior from each other and override that behavior when necessary. Objects can also contain other objects and that is a technique called composition. Certain programmers pick up OOP and fall in love with the rule-set without fully understanding it, or they over-apply the principles. These people are cargo cult programmers.

F*ck the process, embrace the team!

Agile seems to be losing some of its shiny newness at last. This is great! It means we can start talking about agile without fanboys eagerly interrupting to spurt out some repeat-hyperbole from an Agile Evangelist meeting of some sort. It also means that I can  tell you this dirty little secret without too many people choking on their agile-conference-coffee: TDD, XP, Scrum, Kanban (and the rest) are all processes and tools. All their proponents claim you *have* to follow the process, no matter what. If Agile fails for you, then it is because you are not following the process! The Manifesto for Agile Software Development tells us that we should value “Individuals and interactions over processes and tools”.  How is it that the Agile community has accepted the rigorous following of strict processes? I think it is because there is a market for selling processes. And those in the game of selling processes won’t tell you that sometimes the process

read more F*ck the process, embrace the team!

Darkfall 2 year anniversary!

Darkfall was released a little over 2 years ago, on the 25th of February 2009. Having been one of the original members of the team and one of the founders, I felt the urge to tell the story of the making of Darkfall. This my personal account, but I have tried to tell the story as accurately as possible. There are enough details to fill a book, so I have selected the parts that are important to me in order to fit this into a readable post. Click here to read ‘The making of Darkfall – One developers perspective’