Month: January 2009

Checklist for success:
  • Identify and attack the most important risks early on in the project before they come back and haunt you at the end of the project.
  • According to Murphy's Law this is usually right before an important launch date when the customer is the most eager to see results.
  • From the very beginning, keep an up to date risk list in order to track progress and ensure the success of the project.
  • Along with each risk listed, include a plan for mitigating that risk.
  • Order these risks according to importance, e.g. those risks which would have the biggest impact on the project should go first.
  • A very simple Excel sheet with a few columns should suffice.
  • This list serves as a focal point for planning project activities, and is the basis around which iterations are organized.
  • As the project continues this list will change and if it doesn't be weary of impending danger.

It's been quite some time since I did any Flash, besides so much has changed since then that I doubt I could make anything spectacular anymore.

However, in the meantime I've been having a look at the new <canvas> tag, which in my opinion does alot of interesting graphics stuff for JavaScript. Nothing super fancy, but fun to play around with anyway.

Here's a simple example that draws two intersecting rectangles, one of which has alpha transparency:

<script type="application/x-javascript">
function draw_rects() {
    var canvas = document.getElementById("canvas");
    var ctx = canvas.getContext("2d");

    ctx.fillStyle = "rgb(200,0,0)";
    ctx.fillRect (10, 10, 55, 50);

    ctx.fillStyle = "rgba(0, 0, 200, 0.5)";
    ctx.fillRect (30, 30, 55, 50);

<canvas id="canvas"></canvas>


Some related links:

All of sudden was no longer available, and for the life of me I could not figure out what was wrong. It had simply vanished into thin air.

After several days of investigating this most ornery of problems, I was finally able to figure it out.

Turns out that when I upgraded to a faster subscription, my ISP decided to switch my IP address without notifying me, those jerks.
Don't forget that the real reason Medea murdered her children was not because she was crazy or barbaric but because she was extremely distressed that her lover had left her for some less than worthy princess.

Life repeats itself in the real world as history fails to prevent us from repeating the same mistakes that the Greeks had warned us against so long ago.

Humanity is painlessly blind in that regard.


Let's say that you want to insert a node somewhere in the DOM, but if it is a string, then you want to insert it automatically as a text node. Here is how you might want to achieve this:

function checkElem(elem)
    // If only a string was provided, convert it to a Text Node
    return elem && elem.constructor == String ?
        document.createTextNode(elem) : elem;

Borrowed from the book Pro JavaScript Techniques by John Resig.

What a great feeling pushing myself to a new personal record on the cross-trainer: 7.83 kilometers in 31 minutes.

I was sweating so much in the sauna that I must have lost 10 kilograms in sweat, which is good for my diet.

It's now time for a nice tuna salad and half a pizza.
| 1 Comment

Here's the best way to get a random blog entry from the movable type database:

SELECT entry_basename, entry_week_number
FROM `mt_entry` 
WHERE entry_id >= ( 
SELECT FLOOR( MAX( entry_id ) * RAND( ) ) 
FROM `mt_entry` ) 
ORDER BY entry_id

Should we be supporting Israel for just wanting to defend itself or should we be protecting the poor Palestinians from a grievous assault?
# portupgrade --batch -arR


I try to run this at least once a week so that my web server stays up to date.

Sometimes even non-heroes can cheat death. Why become a tragic hero when it makes much more sense to first ignore the call to adventure until the time is ripe. Besides, how many of us are non-heroes at heart anyway?
This evening the moon looks so close that I can almost touch it if I reach up high enough. The night sky is clear and cold and the silvery moon is just barely dangling there by a single celestial thread. Welcome into my mind logical moon. Tell me something interesting and inspiring at the same time.
This morning while cycling to the train station, I was treated with an amazing landscape of frozen solitude and extreme whiteness. Everywhere I looked it, was completely silent. I couldn't even here myself cycling. The plants and trees were frozen solid and light scattered from there shiny surfaces with an eerie anticipation.

Let's say that you want to select a random link within a certain div tag which has a given id and then jump to where that link points to. Here's a way to do that:

function random_link(id)
    var obj = document.getElementById(id);
    var links = obj.getElementsByTagName("a");
    var offset = Math.floor(Math.random() * links.length);
    document.location = links[offset].href;
Rumor has it that 2009 is going to be a very difficult year. However, I believe that things will go along much better than people expect. My prediction is that after only three months the world will overcome this dip and recover quickly.

Random entries

Here are some random entries that you might be interested in:

Recent Comments

  • Random entry: As the New Year 2018, most of us possess some expe ...
    - marina josef
  • Eleven years ago: As the New Year 2018, most of us possess some expe ...
    - marina josef
  • Latest searches: As the New Year 2018, most of us possess some expe ...
    - marina josef
  • Powered by page: As the New Year 2018, most of us possess some expe ...
    - marina josef
  • This blog is 15 years old: As the New Year 2018, most of us possess some expe ...
    - marina josef

Golf Handicap


This personal weblog was started way back on July 21, 2001 which means that it is 7-21-2001 old.

So far this blog contains no less than 2316 entries and as many as 1893 comments.

Important events

Graduated from Stanford 6-5-1979 ago.

Kiffin Rockwell was shot down and killed 9-23-1916 ago.

Believe it or not but I am 10-11-1957 young.

Began well-balanced and healthy life style 1-8-2013 ago.

My father passed away 10-20-2000 ago.

First met Thea in Balestrand, Norway 6-14-1980 ago.