Wednesday, July 13, 2011

Light Field Camera


While a normal digital camera captures 2D images on the sensor, Lytro is creating a light field camera with a new type of sensor that also captures the vector direction of the rays of light that hits the sensor. The result is images with 3D information. The examples they show are very interesting and the technology have a potential to change the way we take photographs in the future.

Wednesday, May 25, 2011

Animations at a new level

GIF animations is something that has been available for a long time. Most web developers have been working with them. But the cinemagraphs at “From me to you” (http://fromme-toyou.tumblr.com/tagged/gif) takes them to a new level. The rest of us have to put our trust in Adobe making this as easy as “content aware fill” in the next release of Photoshop or Aftereffects.

Sunday, May 22, 2011

Creativity + Memory -

Last Friday I listened to a very good talk by James Latham, Chief Marketing Officer at Open Text. One of his slides summarized a thing I have been thinking about, in a nice short way:

Creativity +

Memory -

In the information society we live in today, we have a lot of information available to us, literally at our fingertips. Using our computer or mobile phone we can easily look up the information we need at any time. This reduce the need to remember things (a very good thing for us with a bad memory). Moreover, the skills of being able to remember and collect large amounts of information become less important, while the skills of being creative and to evaluate and use the information, becomes more important. This can already be seen in the behavior of the younger generation, and it will continue.

When will education (and the selection for higher education) embrace this fully?


Wednesday, May 18, 2011

Reducing bandwidth – Results by putting static content in the cloud

Its time for step two: to reduce internal bandwidth usage of our website by putting static content in the cloud.

I think I can do this fastest by using cloud servers, replicating our internal servers. I can do it better later using CDN.

I started a Red Hat Linux server on Rackspace in US. I installed Apache, MySQL and PHP. I configured the system like our own servers. After verifying that it worked as it should, I cloned it and started a second copy of it. Now I have two new web servers just like my internal ones, situated in the cloud in US. This was done in less than an hour.

I then started a Rackspace redundant load balancer for my two web servers. This is the first time I use such a load balancer, but it turned out to be very easy and done in less than 15 minutes.

The website had already been separated so that the more frequent images and some static content are referred by a different domain name compared to the dynamic website. Now its easy for me to change my DNS so that the static content is fetched from the cloud servers while the rest of the website remain on our own local servers. This needs some time to take effect.

After a couple of days I could once again look at the full page render times in our Apica monitoring system. This time I got 30% less download time from US, 30% worse download time from Sweden and no difference from Asia.

Once again, this result is rather expected since I have moved a lot of content from Sweden to US. But since 50% of our visitors are from US and only 4% from Sweden, this is far better for our visitors. This should however be improved by using a CDN.

Now I can also look at the internal bandwidth usage. It appears as if I have cut the usage of our local network with about 30%.

This means that with a few hours of work I have reduced the local bandwidth with 30% and at the same time made the website 20-30% faster for the majority of our visitors.

Saturday, May 14, 2011

Reducing bandwidth – Results by turning compression on in Apache

The website I'm working with has 41 million visits per year from a global audience. It's hosted internally in our own premises in Stockholm, Sweden. The website is now growing beyond the capacity of the internal network and I need to reduce the bandwidth usage. I have to do this fast in the easiest way possible and without any major costs. Can I even make the visitors benefit from this?

Step one: Compress everything.

We didn't use compression for Javascript and CSS before. I turned it on in Apache. This easy task took less than 10 minutes to change on our web server farm.

The next day I could evaluate the result. I looked at the full page render times in our Apica monitoring service. From within Sweden there were no difference in download time. But from US it took 10% less time to download the start page, and from Asia it was as much as 25% less compared to before compression of Javascript and CSS was turned on!


The result itself is not surprising, but I didn't expect as much as 25% better download times from Asia. I should have done this long ago.

The next step will be to bring static content into the cloud.