Wednesday, July 23, 2008

Ellen í Yorkshire Ballet Seminars

Ellen fór í balletskóla í Englandi fyrir síðustu helgi og verður fram yfir verslunarmannahelgi. Þá förum við Hjördís um langa helgi, heimsækjum hana og fylgjum henni og vinkonu hennar heim. Hún er í Yorkshire Ballet Seminars í borginni York, norðarlega í Englandi (ekki langt frá Manchester).

Í dag komumst við yfir nokkrar myndir sem ljósmyndari að nafni Andrew McMillan hefur verið að taka inni á námskeiðinu. Þar sem við erum vel heilbrigt montin af dóttur okkar datt okkur í hug að setja nokkrar af þessum myndum hér á vefinn.

Mynd 1: Við vitum ekki alveg hvaða hópur þetta er en giskum að þetta sé einn af hópunum sem Ellen er í. Hún er allaveganna þriðja frá hægri í fremstu röðinni sem stendur með ljóshærðu vinkonu sinni sér við hægri hlið.


Mynd 2: Þetta eru misstórir hópar sýnist okkur því á öðrum myndum leit út fyrir að vera miklu fleiri nemendur í einu. Ellen og vinkona hennar eru fremst fyrir miðri mynd, hún snýr í okkur baki en lyftir fætinum í áttina að myndavélinni.


Mynd 3: Hugmyndin hlýtur að vera að herma eftir kennaranum og Ellen er náttúrulega lang flottust þarna vinstra megin á myndinni enda gerum við ekki ráð fyrir öðru eins montin og við erum.


Mynd 4: Hér er Ellen hægra megin við kennarann alvarleg á svip, einbeitt enda hæð frá gólfi og staða fóta óaðfinnanleg.


Mynd 5: Æðislegt stökk hjá henni, sjáiði þetta bara.

Við Hjördís erum bara nokkuð góð í að monta okkur af henni. Njótið þið sem viljið.

The Tar Pit, second blog from MM-M

As I drove to the office this morning I was in a surprisingly good mood. Even though I was going to the office during my summer holiday, leaving the family at home without a car on a not-such-a-good-weather day. But it was only going to be for a few hours. The reason for my drop-in was a meeting with two of Rue de Net's developers that form a research-and-development-group to build a general Navision-integrated-table-control.

The control is to be used in many of our web projects, to be sold as a separate entity and integrated into Microsoft SharePoint and other technologies. So this is quite an interesting project to me, being the product manager of the NETConductor, the underlying technology used by the control to interact with Navision. Worth a short trip to the office in the morning of a not-such-a-good-weather day.



The two developers have now been working on the control for about 6-8 weeks and it was time for the first demo showing that it would be beneficial in solving real problems. To show the control's benefits, we had decided that the two developers would build a traditional timesheet, or job journal, to allow employees to punch in their consultancy hours per customer, per job, per task, etc. This would be an authenticated MVC (at ScottGu's blog) based web application build with Microsoft Visual Studio and their control would be the essential part. The complete job journal functionality would be reused from within Navision so it shouldn't take them long nor should it be difficult at all.

During our meeting today we were talking about this timesheet demo project and they were telling me how it had surprised them how difficult it had been to take the control they had built and debugged and getting it to work in another Microsoft Studio project than the one they had been using when developing it. There had been the issue of how to shrink-wrap a user-control, how to deploy it, how to solve namespace issues, some problem with the MVC and the ScriptManager etc. I noticed that they were actually quite worried that I would have expected no such problems - because they surly had not. But I was not surprised at all, and started telling them about Fredrick P. Brooks, Jr.'s (FPB) The Mythical Man-Month (MM-M) and especially the part about his tar pit.

One of the things FPB talks about in his tar pit is the huge effort necessary to evolve an original Program (being merely lines of source code that compile, run and produce a correct set of outputs on the developers machine) into a Programming Product (a fully tested, documented, generalized and reusable component that is easily used by others on their own machines). And, to me, this is exactly the journey being started by these two developers.

FPB estimated the effort to be 3 fold that of building the original Program. Even though the MM-M was published in 1975, discussing the author's experiences since 1965, he later, in the anniversary edition since 1995, quotes DeMarco (author of Peopleware) saying "that there is a big expense in making things reusable" and Yourdon estimating the big expense as being "twice the effort" and FPB himself re-instating his believe that the effort being threefold (MM-M pp. 224).

After I came home from the meeting I thought it would be a good idea to write this experience down; hence this weblog. Below are four snapshots from Chapter 1 The Tar Pit. Hey guys, you should definitely read the snapshots thoroughly and then buy the book, if you don't have it already.


If you can't read this - buy the book!


If you can't read this - buy the book!


If you can't read this - buy the book!


If you can't read this - buy the book!

When I was in the meeting I said that the effort of evolving the control into a product would be nine fold the effort already spent. This is obviously not what FPB is saying, I had obviously been misremembering. He simply claims that evolving an original Program into something reusable to be threefold. The extra 3x effort I had accidentally involved into the experience was the effort of integrating the original Program into a Programming System. This effort is not part of making your control into a product. Sorry guys - anyways now you know. Again, buy the book.

Tuesday, July 15, 2008

The Mythical Man-Month, the book

I started re-re-reading the Mythical Man-Month, by Fredrick P. Brooks Jr., as I was waiting for my new books to arrive from Amazon. Of course this book is one of the classics on software/hardware project management. It's a joyful read so I thought I would give you a couple of snapshots from the signature chapter of the book, The Mythical Man-Month, the chapter. So here we go:

Page 16

What a truth this is! Men and months are not interchangeable commodities. Even though I strongly believe in this, I still always make estimates of tasks in the units of man-days, man-weeks, etc. However, when assigning tasks to people I have to remind myself that adding 2 developers may (or may not) half the almanac time the task takes. Assigning 4 developers to the task definitely does not fourth the time.

Page 25

Now this is the key:

Adding manpower to a late software project makes it later.

The way I would say this goes something like "Assigning multiple developers to a single task does not necessarily make it finish that much earlier". Pretty much the same thing but it allows me to utilize Brooks's Law before the task is late, even before work on the task has commenced.

The book contains many other gems, like No Silver Bullet, that I might just drop in here as time goes by. Like everyone else says: if you haven't read this book don't you dare read other project management books or try to manage a software or hardware building team! If you have read it, then go read Peopleware, another of the best books written on managing development teams. Enjoy!

Monday, July 14, 2008

Father Forgets

I have known about this book for a long time but never found the right time for it. Then, a couple of weeks ago when I was purchasing How to Win Friends & Influence People, by Dale Carnegie, I didn't realize that I was accidentally purchasing the 7hour Audio CD! Not all bad though, because when I run I like listening to talking, not music.

So running today, I started listened to it and only first 40 minutes into it, it touched me. Carnegie used the following story to make a point. The point was important but the story really touched me and is probably one of the best stories I have ever read. It has been reprinted multiple times and referenced and mentioned many, many times on the web. But being a father of two girls and one boy, I just have to put the story here:

FATHER FORGETS
W. Livingston Larned
condensed as in "Readers Digest"

Listen, son: I am saying this as you lie asleep, one little
paw crumpled under your cheek and the blond curls stickily
wet on your damp forehead. I have stolen into your room alone.
Just a few minutes ago, as I sat reading my paper in the
library, a stifling wave of remorse swept over me. Guiltily
I came to your bedside.

There are the things I was thinking, son: I had been cross
to you. I scolded you as you were dressing for school because
you gave your face merely a dab with a towel. I took you to
task for not cleaning your shoes. I called out angrily when
you threw some of your things on the floor.

At breakfast I found fault, too. You spilled things. You
gulped down your food. You put your elbows on the table. You
spread butter too thick on your bread. And as you started off
to play and I made for my train, you turned and waved a hand
and called, "Goodbye, Daddy!" and I frowned, and said in
reply, "Hold your shoulders back!"

Then it began all over again in the late afternoon. As I came
up the road I spied you, down on your knees, playing marbles.
There were holes in your stockings. I humiliated you before
your boyfriends by marching you ahead of me to the house.
Stockings were expensive-and if you had to buy them you would
be more careful! Imagine that, son, from a father!

Do you remember, later, when I was reading in the library, how you came in timidly, with a sort of hurt look in your eyes? When I glanced up over my paper, impatient at the interruption, you hesitated at the door. "What is it you want?" I snapped.

You said nothing, but ran across in one tempestuous plunge,
and threw your arms around my neck and kissed me, and your
small arms tightended with an affection that God had set
blooming in your heart and which even neglect could not wither.
And then you were gone, pattering up the stairs.

Well, son, it was shortly afterwards that my paper slipped
from my hands and a terrible sickening fear came over me. What
has habit been doing to me? The habit of finding fault, of
reprimanding-this was my reward to you for being a boy. It
was not that I did not love you; it was that I expected too
much of youth. I was measuring you by the yardstick of my own
years.

And there was so much that was good and fine and true in your
character. The little heart of you was as big as the dawn
itself over the wide hills. This was shown by your spontaneous
impulse to rush in and kiss me good night. Nothing else matters
tonight, son. I have come to your bedside in the darkness, and
I have knelt there, ashamed!

It is feeble atonement; I know you would not understand these
things if I told them to you during your waking hours. But
tomorrow I will be a real daddy! I will chum with you, and suffer
when you suffer, and laugh when you laugh. I will bite my
tongue when impatient words come. I will keep saying as if it
were a ritual: "He is nothing but a boy-a little boy!"

I am afraid I have visualized you as a man. Yet as I see you
now, son, crumpled and weary in your cot, I see that you are
still a baby. Yesterday you were in your mother's arms, your
head on her shoulder. I have asked too much, too much.

Wednesday, July 9, 2008

Heart Rate Training Zones

When doing Heart Rate Training, like I'm doing for my Glitnir Marathon in Reykjavik the 23. August, it is essential to calculate your zones and know what training within the heart rate range of each zone means for your body.

So, to start with you need to calculate the range of each zone. The parameters into the following formula is the MHR (your maximum heart rate) and the RHR (your resting heart rate).

There are two ways to figure out the MHR, firstly you can calculate it from your age using the formula 220-age for males and 226-age for women. Secondly you can simply do a fitness test with your Heart Rate Monitor (HRM). Just try to get your beats per minute as high as you can. My MHR is 182 today.

Image at top-right shows a ring being sold by Neway Lifetech Corp. It is very cool-looking but not very popular at Amazon, see here and here.

In addition to your MHR you also need to know your RHR and most instructions and websites on the matter say that you can measure it, using your HRM, when you have just woken up in the morning - before you start putting any strain on your body or stress on your mind. My RHR is 42 today.

When you have your MHR and RHR then you can calculate your pulse range for each of the training zones using the following formula:

LowZoneBPM = (MHR - RHR) x LowPercentage + RHR

HighZoneBPM = (MHR - RHR) x HighPercentage + RHR

So, let's take a look at the four most common training zones mentioned by most instructions and websites.

  1. Zone 60% - 70% - Energy Efficient, Weight Control, or Recovery Zone

    Use this zone to increase your basic endurance and aerobic capacity. You should never run beyond 70% if you are recovering from a more difficult run. In this zone you are burning more fat per calorie than in the other zones. However, you are not using as many calories. For more information I like Linda Stradley's Low Intensity Workout vs. High Intensity Workouts over at What's Cooking America.

  2. Zone 70% - 80% - Aerobic Zone

    Aerobic means "with oxygen" and in general means that when training in this zone your muscles will be working with all the oxygen they need. You should use this zone to develop your cardiovascular system, you will be training your body to better absorb oxygen, building muscles and burning some fat at the same time - brilliant isn't it. This zone will make you fitter and stronger so in general it is a very good zone to do most of your training in. I like the lowfat Lifestyle's take on the Aerobic Exercise.

  3. Zone 80% - 90% - Anaerobic Zone

    Anaerobic means "without oxygen" and in general means that when training in this zone you muscles will not be working with enough oxygen and will require the energy source stored in your muscles (your lactic acid system). That source is not big so your body will resist and require you to slow down and allow the muscles to get oxygen and rebuild their internal storage of energy (this point is called your anaerobic threshold). Working in the Anaerobic Zone will increase you performance but it is important to workout in this zone in bursts. You should be working out in this zone every now and then in order to build your body, which can increase your performance during your next aerobic exercise. Brian Mac Sports Coach has a nice description in his Heart Rate Training Zones article, about the Anaerobic Zone.

  4. Zone 90% - 100% - Maximal or Red line Zone

    This zone is very difficult and you should only train in this zone to increase your speed (and I don't mean your long distance running speed), your ability to be fast for a very short amount of time, good for interval running. But, even if you are speed training you should not workout in this zone very often and then only for a very short period of time. Along with all the other zones, including the Healthy Heart Zone (50% - 60%) that I haven't mentioned, in her Train for Change article over at HowToBeFit.com, Sally Edwards warns about training in this zone.
Over at MarathonGuide.com there is a calculator to assist you in calculating your beats per minute for each of these zones.

For the last 2.5 months I have been training in the Aerobic Zone (70% - 80%) in order to train my cardiovascular system so that I would be able to complete a 10K run without stopping. A few days ago I ran 9.5K and then yesterday I broke the 10K mark and managed to run the 10K in a straight relaxed run. However, before my deadline of 23. August I will need to increase my pace. In order to do so I will now start doing more workouts in the Anaerobic Zone (80% - 90%).

I'm also going to get myself a training program that can help me with organizing my tempo runs. I'm currently looking at the FIRST 10K training program by the Furman Institute of Running & Scientific Training.

But we will see. Just get on with it, will you!

Tuesday, July 8, 2008

Breaking the 10K mark!

Yahoo! I managed a straight clean 10K run today.

I'm training for the 10K run at the Glitnir Marathon in Reykjavik the 23. August. I have been training for it since April. Before that I had been a no-training kind of guy for years. So I started slow but today I managed to break the 10K mark without my heart rate going north on me, we are talking about 156, which is quite good for a 39 year old. So, I'm happy today. See running graph below - I know, I'm crazy. But using hlaup.com just makes it all so easy - one click into Excel, one click and I got the graph.


Anyway, I still haven't reached my goal for the 10K run at the Glitnir Marathon. The 23. August I will be running the 10K with a pace equal to or less than 6 minutes per kilometer. Today my run was at 6:40, so I'm not far off, but it is still going to be difficult.

So on with it! I got 6 weeks to get up the pace.

Tuesday, July 1, 2008

Who am I?

About me: Alfred B. Thordarson is still a software developer in Reykjavik, Iceland! And he is me. Since around 1980 I've been developing software; started with the Sinclair ZX81, grew through the ZX Spectrum era into PC development and eventually virtual machines like the JVM and the CLR. During this time and until today, of course I have used numerous technologies ranging from early assembly languages to BASIC to C to C++ to Java to C# and .NET to SQL to web services to ASP.NET and so on and so on. My academical studies include a BS degree in Electrical Engineering from the University of Iceland and an MS degree in Electrical and Computer Engineering from the University of California, Irvine. Yes, when it comes to things like electronics, physics, math and astronomy I am a bit of a popular science fanboi. However, today my day job is running Rue de Net, the providers of the NETConductor and Otto products in conjunction with Microsoft ERP systems. In addition to being involved in general managing the company I'm also the product manager of the NETConductor. This means that most of my day is spent in front of one LCD screen or the other. So, of course, relaxing at home means sitting down with my laptop :-) and browsing the web, news, blogs and different technology write ups. So, this blog is becoming a pad for me to write down and concentrate my thoughts about software, technology and computer related issues in general. In between I also write stuff about my personal life, my wife, my two daughters, my son, my horses, my parrot, my running and other hobbies - but then usually in Icelandic - Sorry - but you know the mom test?