“only takes a minute”

interdubs technology

So I wrote a script that will save me a minute. I pretty much assumed that I wrote it, just because I like writing code, and this task was just something that fit into the timeslot before dinner. I chalked up the twenty minutes it took as wasted time. Others check Facebook, I write a script that can be done before the next thing on the schedule.

As i said this one will only save a minute. But it will do so every day. Still no big deal, I thought. But -funny as it goes- it finished it a minute early, so I came to realize that I will have saved six hours after a year. Yes, in my head it takes takes 60 seconds to compute 365 / 60. Anyway: after two years I get one more day in Hawaii. That’s actually not bad at all for something squeezed in before dinner.

It also gets to show how bad we are actually in estimating what the impact our actions is. I didn’t start out to save a work day in two years. I simply had twenty minutes to fill and a repeating task that could be sped up. Guess I got lucky. Again.

fonts installed as seen by browser

internet

a very nice tool that will detect the fonts a browser can use

mindsoft speak // technology integration

interdubs technology

“It usually takes about 12 to 18 months to build a new center,” she said. “We’re cutting that down to less than a year.”

from a NY Times article about Microsoft and Google and their respective data center operations.

It is interesting that after years in corporate culture people start saying this kind of thing and feel that there is nothing wrong with it.

The article poses the question whether google benefits from looking at each level of the technology stack and inventing where needs are. It does not come to a conclusive answer. I think it is rather obvious: Google was able to reduce its capex spending simply when it felt oppotune to do so. To my knowledge and own experience there hasn’t been any noticeable impact on the Google useability by this reduction in spending. I would guess google simple turned down the pace innovation while the influx of new equipment was slowing.

On a -in comparison- microscopic scale I experience the benefits of looking at the entire technology stack first hand. Part of what runs INTERDUBS is of the shelve, and other parts are enhanced, customized and severely optimized. Some we even actually build ourselves. We constantly look at the running service and identify room for improvement. Be it, in the user experience, or how efficient internals work. Having an understanding of the entire system on all levels lets us identify clearly where enhancements should be made. Each of these steps might only add a couple of percentage points. Having metrics and detailed information about all aspects of the system at all times not only give us visibility into which areas are to be tunesd and enchanced next. It also reveals, that all those little optimizations add up into a configuration ,that is faster by dimensions than the un-altered and generic one would have been.

Having this culture of change and constant optimization is allot of fun. I was plain scared having to do this on live data and a running service. But the goal was that INTERDUBS is available 24/7. And it turns out that technology – used in the right way – is able to do this now. It is literally flying the airplane and rebuilding it in the same time. You start in LA in a 707 and land in New York on a A380.

machine memory afterburner

linux

sar from the sysstat modules is nice. I think it keeps about a weeks worth of history around. I’d like to have more than that. There might even be a command lines switch to do that. But often it is just faster to write what you need when you can type with reasonable speed. This script will copy all sa files into a directory called /var/log/allsa in the form saYEARMONTHDATE. So today’s sa file I can access forever via


sar -f /var/log/allsa/sa20090822

The script only cares about files that are older than a day. So it will take between 24 and 48 hours that the files appear in their final destination.


#!/usr/bin/perl

#
# This will keep all daily sa files readable via saw.
# It seems to be a shame to # throw them away.
# A year worth of sa files is about 113 MB for my machines
#
# This script is meant to run daily. It probably needs root permissions.
#
# use as much as you like. No Warranties or promises. Your problem if it eats your machine.
# Andreas Wacker, 090822

use strict ;

my $sourcedir = "/var/log/sa";

my $targetdir = "/var/log/allsa";

if (! -d "$sourcedir"){
die "can not find directory $sourcedir for sa files";
}

if (! -d "$targetdir"){
system ("mkdir -p $targetdir");
if (! -d "$targetdir"){
die "was unable to create $targetdir. $0 would need it to proceed ";
}
}

opendir (INDIR , $sourcedir) or die "unable to read directory $sourcedir";

my @allfiles = readdir (INDIR);

close (INDIR);

foreach my $file (@allfiles){
if ($file =~ /^sa[0-9]+$/){
my $completefilepath = "$sourcedir/$file";
my $mtime = (stat $completefilepath)[9];
my $dayage = (time() - $mtime ) / ( 3600 * 24 ) ;
if ($dayage > 1){
my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime ( $mtime);
my $datestring = sprintf ( "%d%0d%02d" , $year + 1900, $mon + 1, $mday);
my $targetfilepath = "$targetdir/sa$datestring";
if (! -f "$targetfilepath"){
#print "$file $dayage $datestring\n";
system ("cp -p $completefilepath $targetfilepath");
if (! -f "$targetfilepath"){
die "tried to copy from $completefilepath to $targetfilepath and it did not work. This is a very bad sign!";
}
if (((stat $completefilepath)[7]) != ((stat $targetfilepath)[7])){
die "file sized for $completefilepath and what should have been a copy $targetfilepath did not match. Not good!";
}
}
}
}
}

five years

misc

2004

2009

According to google the Chrisitan Science Monitor was one of the few publications that made the connection.

How soon before we will have we have ad messages sprayed on highways ?

While we are waving on the space merchants theme I could see that this
art project will turn into a commercial reality soon.

What is happening is that total surface of LED/LCD plasma displays around us is increasing constantly. While classical mass consumption is certainly not growing, the amount of screens to be filled certainly is.

you know you’re old

history

You know you are old when one of your favorite albums gets re-released in a 25th anniversary edition and it takes you three years till you get around to actually listen to it. But even in hindsight I could have made worse choices for the soundtrack of what I did when I was sixteen.

Blu – wait two hundret fourty seconds – Ray

technology

On Amazon some TV shows I wanted to buy are cheaper in Blu-Ray now than they are on DVD. So I got a Panasonic DMP-DB 60 player. When the disk is already in the player it takes 2 minutes before it starts playing. Then there are another 2 minutes of commercials that can not be skipped.

In other words on a good day I clean up 15 balls from a pool table faster than the time it takes between hitting play and starting to watch a DVD.

amazing

malware

in my mail there was a letter fake seal and everything. Looked very official. Total rip off. On the envelope it said:


BUSINESS FILINGS DIVISION
980 NINTH ST. 16th FL
SACRAMENTO, CA 95814
--------------------------------
BUSINESS MAIL - IMPORTANT NOTICE ENCLOSED
THIS IS NOT A GOVERNMENT DOCUMENT

When scanning over this I read the first line and then in the lower right the two words “GOVERNMENT DOCUMENT”. They offer an unneeded service for $239 that would have a ‘penalty’ of $250 in a weeks time. Since I overlooked the “NOT” I actually put this on to the todo stack. Of course their business model is very pre-internet. Google works faster than this one can set up new addresses and contact info.

I find it interesting that I almost fell for it.

It is hard to believe, but somewhere out there must be a person who feels good about running this kind of enterprise. They took great care in everything. A lawyer must have looked over it. This kind of things takes allot of work to set up. All these efforts for something that only has one purpose: moving money into the pockets of the initiator. There is nothing being offered in return. I wonder what a day in the office looks like for people who do this kind of thing.

playing by the old rules in a new game

history internet media technology

An interesting look at actual web usage of news papers. I like how the author takes abstract numbers and puts them in a meaningful context.

Newspapers used to run things. They used to be everywhere. In Paris a couple of weeks ago I realized at some point that we had not seen anybody reading a paper. Even books were rare. It was not only a sudden but also a complete change of habits.

I think we have no actual idea what this means and will mean for the future. Technology develops in a certain pace determined by the problems to be solved and the momentum and financial interests behind it. Peoples use and application thereof is a completely different story.

In hindsight things seem to make sense. But actually only if you choose to ignore facts that don’t fit the pattern. Texting for instance, now a billion dollar revenue stream for cellphone carriers, was never intended to be used by people. It was considered a byproduct of some engineering mode for cell phones.

The invention of the Kinetoscope preceded the existence of movies as we know them by more than a decade.

Technology for pre – internet media was unable to adopt. It took great efforts to shoe-horn color into black and white TV signals. 35mm was the dominantly width in use of film strips used in movies as long as movies existed, and before they became digital.

The internet connects mostly computers with each other. This simple fact puts it into its own league as far as media technology is concerned. MySpace goes and Twitter comes at break neck speed. Limited only by peoples imagination and their willingness to adopt.

Trying to apply mechanisms and rules from ‘old media’ in the Internet space will be as successful as the applications of lessons learned from WW1 was helpful to France when they felt save behind the Maginot line.

wget ftp not working recursively? add a *

misc

When trying to recursively download some sites via wget I only got one message like:

Wrote HTML-ized index to

Turns out that I needed to add a * to the source path. After I changed

wget -r --ftp-user=user --ftp-password=pass ftp://hostname/path

to


wget -r --ftp-user=user --ftp-password=pass 'ftp://hostname/path/*'

things worked much better for me in GNU Wget 1.10.2 (Red Hat modified)