All posts in General

The iPhone cult and self criticism among followers…

Apple iphoneSo the iPhone is out and the Apple cult followers are going crazy all over the place. Unpacking porn and disassemblies are being posted.

When the iPhone was announced I had my doubts about the touch screen keyboard. I had been using a HTC phone for a while and did not really see how they would be able to make a decent touch keyboard. Especially not for us in the norhern hemisphere that use gloves during winter. TUAW is reviewing the touch keyboard and concurs that there is “nothing wrong with the keyboard”. The error seems to be the “meat mittens” of the user. How is that for self criticism? The user is to blame instead of the phone…

What happened to plain old HTTP redirects?

Broken redirect from bredbandbolaget.seSo, I was looking for an offer on IP telephony and thus decided to point my browser to one of the larger ISP:s. I get a blank page back (blank as in “all white”). A couple of years ago, this wasn’t uncommon if you were brave enough to use a non-mainstream browser. But today it is 2007.

A brief look at the HTML source gives:

…which safari doesn’t follow. Interestingly, search engines won’t be following that either. What happened to the plain old HTTP redirect header? There can’t be a single programming language for the web today that doesn’t support output of HTTP headers. Or are there still web developers that don’t know about HTTP? Apparently so.

Self-imposed RSS reading ban…

Am I alone having trouble staying away from the RSS reader? With the number of subscriptions I have there is always something interesting to read. This absolutely kills productivity when you try to use the 1 hour free time per day you have when you are on parental leave. Must. Stop. Reading.

And who cares about the recommended refresh rate property anyway? I want to update NOW! I need some sort of time lock on all things RSS.

Maybe I should stop writing pointless blog posts like this as well. Aaargh!

IKEA may start selling computers

Chief Executive Anders Dahlvig in an interview with Reuters said IKEA aimed to put a “bigger focus” on the living room in the next year, adding accessories for TV and videogames alongside new sofas and storage ranges.

When asked if that could lead to electricals being sold in its iconic blue and yellow stores, he replied:

Maybe. It depends on the stores. They are big, but they are still crowded; there are lots of products we would like to have in there.

Will we see an IKEA computer? It is an interesting idea and IKEA has a lot of good design people so why not? My suggestion is to call the first model “Bill”…

Blogs increasingly more popular among senior citizens

Via PR 2.0 (in swedish) I found the recently published TeliaSonera report on communication trends in Sweden (PDF in swedish). 10,000 people were interviewed about their online media use and expectations.

Most of their findings were not surprising; people expect wifi in hotel rooms, want to be able to watch TV on their cell phone and so on. One thing did stand out though:

25% of the population regularly reads one or more blogs. Among persons 26 and younger the figure goes up to 50% but for the group 60 or older it is still close to 25%.

This is very interesting.

Putting Camping in the Camping logo

The camping framework embedded in the campin logoHaving played with the Digital Invisible Ink Toolkit (DIIT) lately it was interesting to see how big the logo file for the camping framework would become if the camping framework itself was embedded in it. The original logo file (stolen from Why’s site) is a 73 Kb PNG file. Embedding camping.rb in it creates a 101 Kb file visible to the right.
Read more…

Capture Full Web Page in OS X

If you need to capture an image of a full web page without having to do the scroll-cut-paste-repeat dance you should have a look at Paparazzi. Paparazzi uses the WebKit framework to create nice full length captures of web pages.

If you need to do this programmatically for a large number of sites there is a nice library called webkit2png by Paul Hammond. It is a Python script utilizing the PyObjC bridge
.

Update: There is also a cheap commercial alternative to Paparazzi called Red Snapper. For $8 you get a button directly in Safari to do a capture. Worth checking out if you don’t want an extra app on your system.

Staying Up-to-date With Technology During Parental Leave

LucasSo, after Christmas and New Year’s Eve I am on parental leave until October 2007. Nine months is a long time in the technology industry so I am planning some projects to keep up-to-date. My project list is getting longer every day but for some reason no-one is taking it seriously. My wife tells me I should be happy if I manage to read the morning paper while taking care of our son…
Read more…

Bigger Screens for the Glorious Benefit of Productivity!

I have been seeing more and more information on how bigger screens increase productivity of software developers (or professional computer users in general). The latest entry is by Martin Fowler in “How do you improve the productivity of software developers?Read more…

Professor Saves Newbie Programmers From Shame

“Error: division by zero” is a commonly seen error for inexperienced programmers. The BBC reports that Dr. James Anderson, of the University of Reading, has finally conquered the problem of dividing by zero. His new number, which he calls “nullity” solves the 1200 year old problem that niether Newton nor Pythagoras could solve, the problem of zero to the zero power.

The Ideal VIM Keyboard

My colleague Niklas nagged me for not having disabled the caps lock key on my MacBook Pro. I was a bit disoriented at first but coming to think of it, I haven’t used the caps lock key since I got the MBP back in April.

This made me think about which keys I actually use. Being a recent VIM convert I wonder if Apple’s designers hate VIM. Efficient editing in VIM require you to use the escape key a lot. On the MBP the escape key is one of the smallest keys on the keyboard for some reason.

Am I whining about superfluous things? Maybe so. Maybe I should just shut up and remap my caps lock key to escape.

Give me larger keys!

The ideal VIM keyboard should have a large escape key. The colon is used a lot too. Maybe it could look something like this:

The ideal VIM keyboard

Google Code Search Reveals Anger, Frustration and Hate

Google’s Code search is a great way to spend an evening. Indexing a hefty amount of source code reveals anger, frustration and hate. Some favourites:

Interestingly, searching for “Ruby sucks” does not return any matching documents…

Programming Languages for Cineasts: Ruby is Jackie Chan

My colleague Niklas Lindström has put together a list of programming languages for cineasts. Ruby is Jackie Chan which, I guess, is a pretty much spot on: asian, agile, get things done but with poor support for european languages.

Java is Richard Gere which pretty much says it all. His complexion is in decay from being in the Sun for too long…

Deploying Rails in Amazon’s Elastic Compute Cloud

Here is a cool thing which I didn’t hear of until today. Amazon provides a service where you can upload a machine image (think VMWare), deploy it to as many instances you need and pay Amazon 10 cents for every hour you use it and 20 cents for each Gb data transfer. This will allow you to instantly scale an application if your demand temporarily increases.

With the risk of sounding like an Amazon marketing droid here are some highlights of what you get for those 10 cents:

  • Self-scaling: You can commission one, hundreds or even thousands of server instances simultaneously. This is all controlled with web service APIs, your application can automatically scale itself up and down depending on its needs.
  • Complete control of your instances. You have root access to each one, and you can interact with them as you would any machine. Each instance provides the equivalent of a system with a 1.7Ghz Xeon CPU, 1.75GB of RAM, 160GB of local disk, and 250Mb/s of network bandwidth.
  • Easily hook up to the S3 storage service.

The cool thing is that it seems relatively simple to deploy a machine. So, it would be easy to create a Linux image with your great Rails mashup application, deploy it and just switch on more instances as customers start arriving.

When I think about applications I have created earlier in my career I can see how nicely several of them would fit this business model. Who will be the first to report of a Rails deployment to the Elastic Cloud? Oh, someone already did it.

For more details see Amazon Elastic Compute Cloud (Amazon EC2) and how to set up a VM in the cloud.

Languages Influence Your Thought Process

When I studied social antropology a couple of years ago I never thought that it would influence my future programming endeavours. At that time we looked at theories on how things in our surroundings influence thought processes. One theory is called the Sapir-Whorf hypothesis. It states:

“…there is a systematic relationship between the grammatical categories of the language a person speaks and how that person both understands the world and behaves in it.”

Recently I have found more information on how other people feel programming languages influence how they think (e.g. Paul Graham, Charlie Savage). Maybe this can put an end to the Ruby vs Python debate? Some people will feel that Ruby relates more to their thought process than Python does. And some will feel that Python is superior.

If you like me believe that programming languages influence your thought process the advice in The Pragmatic Programmer: From Journeyman to Master is very relevant:

“Learn at least one new [programming] language every year. Different languages solve the same problems in different ways. By learning several different approaches, you can help broaden your thinking and avoid getting stuck in a rut.”

Others may disagree.

So, what is your next language?