.. meta::
:description: This is my online diary. Just small things and thoughts from my everyday life.
:keywords: online diary, blog, Stian Husemoen
.. class:: center
|rss|
*This is my online diary. Just small things and thoughts from my
everyday life. I guess this should be called a «blog» now but when I
started this diary over 7 years ago that word didn't exists :-)*
.. contents::
:depth: 1
01.08.2008:
-----------
`Goodnews 0.9.7 is released`_
=============================
So it's time again for another release of Goodnews_, and as always
it's the best one yet. A whole bunch of nifty new features including
*auto-updates*, *article expiry* , and *view pager*, together with
lots of bugfixes. Feel free to read the whole `changelog
`__ and give it a go.
24.04.2008:
-----------
A computer virus history lesson
===============================
For the last three years I have been holding guest lectures in a
course at |guc| discussing viruses and how they work. Viruses and
Worms are something that's always fascinated me, and something I've
always had some degree of knowledge in. The real `computer virus
`__, that infects files
it's longer very wide spread, and in a very sick nostalgic way, I find
it a bit sad. Because compared to most Internet worms, they are a work
of art.
This year I planned to present a complete virus to the students and
demonstrate how it worked and replicated itself, but for various
reasons it wasn't finished on time for the guest lecture.
The virus itself isn't actually a full functioning virus, it's for
*educational purposes only*, and wont infect more than a single file
with a specific name (I want tempt fate by making a virus that has a
chance to escape out to the real world, however teoricly improbable
and unlikely it it, the history is full of viruses escaping the
creator to wreck havoc onto the world)
The virus is an very simple DOS/COM-infecter, it's a virus from the
ancient past, and wont work on any modern operating system, but it
will run just fine in `dosbox `__ and give you
a nice rundown of how viruses work in theory. The virus will infect
only one file with the name "hello.com", but it can be easily modified
to search for more files.
To try it out, download both the `hello world program
`__ and the `virus `__ itself, and
compile them using `NASM `__::
[stianh@batstick ~]$ nasm virus.asm -fbin -o virus.com
[stianh@batstick ~]$ nasm hello.asm -fbin -o hello.com
Then start up `dosbox `__ and run the
HELLO.COM file to see that it actually prints a "Hello World!". Then
run "VIRUS.COM" to infect the file, and re-run "HELLO.COM", to confirm the
virus has actually been planted (it will give you a message on the screen)
Now all you need to do is to sit down with a debugger and step through the
program several times to really understand what it does ;)
05.04.2008:
-----------
Another flash of Warhol's fifteen minutes
=========================================
So got another taste of Andy Warhol's `fifteen minutes of fame
`__. Being the
IT-manager at |guc| gives you opportunities to figure in the
media from time to time, but it's not every day you get an `interview
in Computerworld `__
(albeit only the Norwegian edition). My parents are so proud, or so
they told me ;)
Off course it didn't go without glitches (a journalist was
involved after all), and they managed to get my name wrong - not
just the spelling - the name itself. They decided I looked more like
a "Kai Mathisen" and used that name throughout the entire
article. Very awkward, but I did get an embarrassed apology and a
complete reprint of the article the following week, which suits me
fine since they did manage to get the name of |guc| right and
all publicity right before high school graduates decide which
college to apply to, is a very Good Thing :)
27.01.2008:
-----------
`Goodnews 0.9.6 is released`_
=============================
So a new year demands a new release of Goodnews_, and boy this time
it's a good one ;) There is a *lot* great of `changes
`__, with highlights like
a new unified config file, drastically reduced start-up times, finally
a fix for that stupid bug that prevented your from entering URLs
beyond certain lengths, allowing for editing of feeds directly
in Goodnews_, and lots of and lots of bug-fixes.
25.01.2008:
-----------
The sound of a new gadget
=========================
.. image:: bilder/H41.jpg
:alt: The Zoom H4
:align: right
:width: 150
:target: bilder/H41.jpg
One of my long time plans was always to build some sort of home
studio. Of course a real home studio isn't cheap. One needs all kind
of expensive equipment, like mixers, microphones, sound cards, and
recording software. Being a "less is more"-freak ,of course, I wanted
to find out whats the least amount of money and equipment you need to
do decent recordings for song writing and demo use. I had almost given
up, when I discovered this small gadget called the `Zoom H4
`__. This little baby is truly
amazing. It has two built-in high quality condenser microphones, set in
a `X-Y setup
`__
giving you real stereo recordings. You can record with quality up to
96KHz 24bit (or strait to mp3 up to 320kbps) on to a standard SD-card,
applying all kind of built-in effects real-time. It can also function
as a 4-track studio, making it useful for quick demo recordings any
where any time. The connectors is the really cool part. It has four
inputs, two standard jack connections, and two "real" XLR plugs **with
phantom power** allowing you to use any kind of external
microphones. The unit also comes with an usb-connection to easily
transfer your recording to the computer, and can even function as **an
external USB sound card** which shows up automatically even in Linux. The
recordings sound great, just listen to this `short improvised jam
`__ of me just goofing around. Others I've
spoken to tells me it's also great for recording concerts and band
rehersals, and I can't wait to try it out.
16.11.2007:
-----------
Old hardware makes new toys
============================
.. image:: bilder/xbox.jpg
:alt: The Original Xbox
:align: right
:width: 150
:target: bilder/xbox.jpg
I have really wanted to build a `HTPC
`__ for a long time, but never
gotten around to it. Both because spare time is something I have very
little of, and that most HTPC parts cost more that I want to
spend. Then I suddenly had a revelation during a visit to some friends
of mine. They had an old Xbox hooked up to their TV as a media center,
and I really liked the looked and feel, and superb *usability* of it,
so I decided this was the route to pursue. I finally got my hands on
an old Xbox (even with a DVD kit addon) for *free* though an old
friend of mine that had just upgraded to the Xbox 360. I then bought a
very cheap modchip for about kr. 200,- and one of my coworkers offered
to chip it for me and install `XBMC
`__ on it. I now watch and listen to
all kinds of media over the network in my living room on my big screen
TV and Home Surround System. I have even watched a few Everton UEFA
Cup games via live Internet streams on it, and it works like a
charm. So people: don't throw away your old hardware, someone will
always find some good use for it.
18.05.2007:
-----------
`Goodnews 0.9.5 is released.`_
==============================
I've just made a new release of Goodnews_. This release makes a small
adjustment on how HTML in description-fields are handled. We now try
see if there are any HTML tags, and if it is use text2html to render
it. It also fixes a rare crash bug on empty description-fields. This
release also comes with a distutils-script that should make installing
Goodnews_ a whole lot easier. Enjoy!
15.09.2006:
-----------
O Gadget, Where Art Thou?
=========================
.. image:: bilder/deh-p55bt-small.jpeg
:alt: Pioneer DEH-P55BT
:align: right
:target: bilder/deh-p55bt-large.jpeg
This week I ended up purchasing a new CD player for my car. Initially
I was only looking for a new CD player that could blend more in to the
car's dashboard than my old one, meaning it needed to be dark grey or
black with red LEDs. Then by chance I stumbled into the Pioneer web
site and looking at their CD tuner section I found their DEH-P55BT
model not only had color configurable LCD and LEDs, read MP3/WMA
discs, and options to connect iPods with additional accessories, but
also a built-in Bluetooth hands-free for almost any mobile
phone. Nice! You get all your phones functions on to the diplay of and
control it with the player. Look up numbers in the phone book, speech
commands, the works. Only down side is that it didn't support streaming
audio from your phone, apparently you need to add another €300 and buy
the more expensive player to get that option. Well, anyways, now I
only need to get the damn thing plugged in properly ;-)
10.09.2006:
-----------
One, Two, and oh yes.. Three Fscking Nil!!!
============================================
.. image:: bilder/three_nil.jpg
:alt: Andrew Johnson scores 3-0
:align: right
:width: 150
:target: bilder/three_nil.jpg
Derby days, aren't they just great? Up yearly, nice breakfast, the
whole body tingling with excitement and anticipation, off to the pub,
good friends, singing, cheering, few pints, build up to kick off,
Z-cars, a full Gooodison Park roaring, the Red Shites sent home
packing after a real trashing in every position of the park! 3-0! The
biggest Goodison derby win since 1909, the biggest derby win since
1964, what a game, what goals, what a twatting! Today I'm a very happy
man (albeit a bit hung over). Come on you Blues, the School of Science
is back!
26.08.2006:
-----------
Planet's gains and losses
=========================
So, someone added me to a planet: Pluto's dead, long live `Planet
LiLUG `__. A very nice gesture, but the
problem was my `rss feed `__ wasn't
really designed for syndication as part of a planet, as most
*standard* compliant RSS feeds is, so this meant spending the good
half of my weekend rewriting the XSLT stylesheet of my diary. Well
quite fun actually.
You see all these planets that keep popping up rely on HTML in the RSS
feed, so you can add `links `__, or nice bullet lists:
* one `link `__
* two
* three
or even a nice image:
.. image:: bilder/hackergotchi_stianh.png
:alt: Hackergotchi
But as you (should) know there is no room for HMTL is RSS, and
certainly **I just don't do HTML**, I use |rst|_ ;-) One trick of
course is to use the content namespace, and add "content:encoded"
nodes to your feed, and keep the description nodes clean. So that's what
I did, and I wrote this diary entry to test the result.
So here you have it, a shiny new nice RSS, with all the gore you eye candy
junkies crave, and with plain 'ol text for the rest of us. Enjoy :-)
03.08.2006:
-----------
The compiling of a summer
=========================
I've not updated my diary for a while simply because it's been rather
busy, and other things have taken more focus. Though, I've managed to
take out my first real vacation in over ten years. Three whole weeks,
with one week been spend going away with my family. This is in fact
the very first vacation me and my wife ever been on together since we
first met (how she put up with me is a mystery). However, having sooo
much free time on my hands with nothing to do called for some fun
project to fill it up with. Two years ago I started writing a Simula
compiler that never got finished, so this summer I picked it up
again. The compiler is coming along nicely and I will release as open
source as soon as I think is usable for other people. The compiler is
written in Python, which might sound surprising at first, but this has
some obvious advantages:
* Python is quick and easy to develop in and let you have something
working very fast.
* It has a effective runtime system that does much of the things that
Simula's runtime also must handle giving you much for free.
* Python is so dynamically that even language specific things in Simula
can be expresses in a similar manner in Python
* Even though CPython is tragically welded to the C stack, Python 2.5
now has support for co-routines through the extended yield
statement, and some preliminary testing indicates it can be used to
simulate Simula co-routines.
* Python is *very* portable, runs on almost anything, and has a vast
Standard Library that's part of the language itself. So writing a
compiler in Pythin let's Simula easily access Python modules giving
it more tools to do real tasks with.
* The PyPY project shows that a compiler written in Python is
actually very doable, and gives you an extremely flexible compiler
that can be very quickly adapted and extended with no or little
effort..
* The performance issue isn't that important in most cases anyway,
and if it is adding a new back-end should be simple enough. Like
for instance a CLI option would be a mouth watering thought.
18.04.2006:
-----------
Private founders, public Keepers
================================
During Easter there was an `article
`__ in a Norwegian
financial paper discussing how privately held companies, with their
founders still as CEO, consistently delivers better results than
publicly held companies. The article was a pick up from `Fortune
Magazine
`__
and refer to `work
`__
done by `Rüdiger Fahlenbrach
`__ about how they not only
systematically deliver better results, but also do more research, more
development, invest more in their scope of operations, and make more
focused mergers.
This is something I have been claiming for nearly ten years now, that
publicly traded companies doesn't work properly. They spend more time
trying to do want they think the stock marked want, rather than
focusing on want the **customer** want. They trade quarterly results
for the company's survival in the long run. This is because every
stock marked investor is screaming at the top of their lungs at every
quarterly result presentations that the next quarter **must** be
better than the last. It's not enough that you make sound profits, the
profits must increase every quarter, not in numbers, but in rates mind
you, or all the day-traders and mutual fund managers will drop the
stock like yesterdays newspaper. I worked at a company that had
**never** in it's existence lost money, still we were stamped as
"boring" by the stock marked because the stock never moved thus not
giving stock investors any chance for quick profits. Since most CEO
salaries and stock options are decided not on the company's heath, but
on it's stock price, they will do anything to "please" the stock
marked, usually by cutting cost (which in corporate terms always means
layoffs).
Having worked for a public company myself, I've seen first hand how
the quartile result race strangle all creativity, kills employee
satisfaction, a ignore humane and ethical thinking, and eventually
destroy the company itself. All by seemingly looking healtly and
managing to holding it's stock price high by constantly laying off
staff thus cashing in on the short term boost it gives to profit
margins. No attempts to boost the turn-around was made, because that
meant hard work and probably delivering losses a couple of quarters, so
eventually shortly after I left the company it was slowly broken up in
tiny pieces that where sold off or dropped.
After this I made a promise that I will think long and hard before I
work for a publicly traded company again. Working for entrepreneurs
and founders is fine, so is privately held companies, even government
held companies might do, but if you're a recruiter from a company
noted on some stock exchange, you better be carrying a *very* good
offer to tempt me in to even consider it ;-).
21.03.2006:
-----------
A rub of green and royal blue
=============================
Another trip to Liverpool is over. Ryanair from Torp to
Lennon. St. Patrick's Day in Liverpool. £1 a pint at The
Richmond. Mugging. Everton trashing Aston Villa 4-1. Kids in the
park. Jumpers for goal posts. Mmmm.
15.03.2006:
-----------
A fuel cell changing experience
================================
.. image:: bilder/fuel_cell.jpeg
:alt: Fuel cell backup power
:align: right
:height: 200
:target: bilder/fuel_cell.jpeg
Sitting in a sales meeting with APC talking about cooling the
discussion suddenly took a surprising turn when the sales rep mention
in a casual comment that APC was now pursuing fuel cell powered backup
systems. This got me really exited because it suddenly dawned on me
that is would revolutionize the way we do backup powering in computer
rooms, and apart from laptops this must be one of the most perfect uses
of fuel cell technology. No more diesel generators, no more large
battery driven UPS', just one system powered by hydrogen providing
long time *stable* AC backup power with no moving
parts. Brilliant. APC has this only half way out the research labs
yet, but can deliver you a system for €25,000 per 10Kw module. The
system is powered by standard industrial quality `hyrogen
cylinders `__, each providing 79 minutes of run time with runtime
extending linear by adding more cylinders. One cylinder cost about €25
and with three cylinders you achieve N+1 redundancy.
I'm telling you all now: this is the new way you will be doing backup
power in the future. Of all my predictions; this is one I have great
confidence in. Certainly, the next computer room *I'm* building will be
with fuel cells ;-)
08.03.2006:
-----------
Hacking Series60 with Python
============================
.. image:: bilder/n70.jpeg
:alt: Nokia N70
:align: right
:height: 200
:target: bilder/n70.jpeg
I finally got my hands of one of those Series60 Symbian phones, a
Nokia N70. I'm really disappointed by how slow and bloated it is (I
mean when a phone takes 30 seconds just to boot, something has gone
horribly wrong) but on the brighter side I finally got to try out the
Symbian port of Python. One cool features I discovered was that you
can connect to the python shell on your phone remotely over bluetooth
using a laptop computer.
First I told my box to accept incoming bluetooth connections on
channel 1::
[root@batchop ~]# rfcomm listen /dev/rfcomm4
Waiting for connection on channel 1
Connection from 00:16:4E:D7:14:DA to /dev/rfcomm4
Press CTRL-C for hangup
Then I started the python bluetooth remote shell, and connected to the
serial device using a simple terminal emulator like "minicom", or "cu"::
[stianh@batchop ~]$ cu -l /dev/rfcomm
or alternatively::
[stianh@batchop ~]$ minicom -m
Then you get the familiar python interactive shell prompt::
>>>
>>> print sys.version
2.2.2 (#0, Sep 26 2005, 11:38:57)
[GCC 2.9-psion-98r2 (Symbian build 546)]
>>> sys.platform
'symbian_s60'
>>> dir()
['__builtins__', '__doc__', '__name__', 'appuifw', 'commands',
'exec_btconsole', 'exec_interactive', 'exit', 'init_options_menu',
'menu_action', 'my_console', 'os', 'pr', 'query_and_exec', 'quit',
'series60_console', 'sys', 'this_dir']
>>> os.listdir('c:')
['cache', 'DxDPOF.txt', 'Nokia', 'Private', 'System']
Of cource like all other python distributions batteries' included, and
Nokia gives you some nice modules to play around with the phone's
data. Like accessing it's calendar::
>>> import calendar
>>> db = calendar.open()
>>> print db.export_vcalendars((2,))
BEGIN:VCALENDAR
VERSION:1.0
BEGIN:VEVENT
UID:2
DESCRIPTION:Skattekort
DTSTART:20060127T000000
DTEND:20060128T000000
X-EPOCAGENDAENTRYTYPE:EVENT
CLASS:PUBLIC
DCREATED:20060327T000000
LAST-MODIFIED:20060327T105500
PRIORITY:0
STATUS:NEEDS ACTION
END:VEVENT
END:VCALENDAR
05.03.2006:
-----------
`Goodnews 0.9.4 is released.`_
==============================
So, another release of Goodnews_ is out there. This release adds
threading (spit) when updating feeds, which makes it considerably
faster. I really wanted to use asynchronous I/O but that was not
trivial to add without writing my own http-client, maybe some other
time.
04.03.2006:
-----------
Keeping your Windows fresh and clean
====================================
I'm a Linux and Open Source guy, GPL is my thing, but professionally I
have the most fun administrating Windows and making Redmond software
place nice. Most satisfying is it when I can use Open Source or
freeware tools to "fix" Windows annoyances. This last few weeks I've
tried out `WPKG `_ to do software distribution at
work. The tool is very simple, so even though it has a few rough
edges, it's easy to hack, fix, and add new features to. I've already
submitted a few patches, and it does the job. One problem with WPKG
though, is that it's a *pull* tool and dependent of users rebooting
their computer every once and a while to get updates. The problem is
that sometimes you *need* to push out changes. Maybe a security fix, a
personal firewall configuration, etc. The much overrated Microsoft
System Management Server can do this, but I don't like it, so I've
found other means. I first used `Sysinternals
`_ excellent `PsExec
`_ to run commands
on remote computers, but since the license is a bit restricted, I
found `BeyondExec
`_
that does the same thing and more. With another freeware tool `Adfind
`_ you've got a
pretty powerful tools-chest::
C:\>adfind -list -b ou=wpkg,dc=hig,dc=no -f "objectcategory=computer" cn > wpkg.grp
C:\>beyondexec -g c:\wpkg.grp -s cscript \\higvm\wpkg\wpkg.js /install:firefox
And voilá, you push out Firefox to all computers in the wpkg OU.
30.01.2006:
-----------
`Goodnews 0.9.3 is released.`_
==============================
I've just released a new bugfix release of Goodnews_. This release
fixes an embarrassing crash bug when adding more feeds than lines on
the console (duh!). Also the code is cleaned up a bit, and a several
bugs regarding color handling is ironed out. Also, development is now
moved into a `subversion repository `_ so it should be
easier to maintain several release branches at once.
21.01.2006:
-----------
As we didn't love SSH enough already
====================================
Having just recently installed `Fedora Core 4
`_ on my laptop I discovered today that
both `FUSE `_ and `sshfs
`_ was included in the `extras
repository `_. Now there's a
great tool. I've just tried it out now for ten minutes, and I already
love it. I think this can be my new favorite tool. With sshfs users
can mount any remote file system as easy as using ssh. If it's
accessible with a ssh account, you can mount it. This is exactly what
I've been looking for a long time, a secure and *easy* way of mounting
your file system from anywhere.
10.01.2006:
-----------
Docutils 0.4 released
=====================
Reading Freshmeat_, as you do, I discovered that `Docutils 0.4
`_ has just been released with `tons
of nice updates
`_. First,
the website has been gives some great updates with additional
documentation, but one of the nicest new addition is the `rst2s5.py
`_
front-end to make nice looking `S5
`_ presentations using only
good ol' |rst|_.
08.01.2006:
-----------
Bump up your lock pick toools
=============================
This Sunday I've mostly been in bed with a hefty migraine, and used
the dead time to listen up on the backlog of radio shows my computer
automatically tapes for me, and reading slashdot of course. On
slashdot they run a story that linked to the `Hack a day
`_ website. The story itself wasn't anything
to mention but, ending up reading about the other hacks on the
site, I stumbled upon a short article linking to a `white paper
`_ and `presentation video
`_ on `The Open
Organisation Of Lockpickers (TOOOL) `_ website describing
a technique called "lock bumping" using a so called "bump key"
Seeing the `video
`_ and reading the
`white paper `_ my jaw fell to my
knees. I was just gob smacked of how easy you can open so called
"safe" locks without any traces of tampering. The more expensive lock,
the more vulnerably it probably is.
Basically a `bump key `_ is a key with all it's cuts
made at maximum depth. This is some times called a 999 key. When
inserted into a lock and hit with a heavy tool while turned, it
applies the principle of `Newton's Cradle
`_ and the lock jumps open
just like magic. This method can open most `pin tumbler locks
`_ with little effort
and very simple tools.
19.11.2005:
-----------
IT-forum and Tapas in Barcelona
================================
.. image:: bilder/itforum05_small.gif
:alt: IT Forum 2005
:align: right
Just back from Barcelona where I attended the Microsoft IT-Forum 2005,
a conference I've been going to for years. This year it was a bit slow
on the news front except for a couple of exceptions.
First, virtualisation is coming hard, and IT people should be
ready. The Microsoft Virtual Server 2003 R2 looks decent, and even
though it doesn't add up to the technical standard of VMWare ESX
server, it blow VMWare out of the water when it comes to pricing
(about 1/10 that of VMWare).
Second, the new command shell Monad. Yes, you heard it, command shell
for Windows. The best part: It rocks! Microsoft has managed to come up
with a whole new way of thinking in shell design. Where in Unix we
usually think of everything as a file, Monad treats everything as an
object. This paradigm creates a few interesting possibilities. Like
access COM and .NET objects directly in the shell. Or what do think of
cd'ing into your registry, grep through the keys, and pipe the result
into a built in function you wrote you self?
The presentation was made by Monads designer during which he was
interrupted by spontaneous applause several times. Monad is planned to
ship with Microsoft Exchange 12 in 2006. The Exchange Team has adopted
Monad to the extent that they've thrown out the old GUI admin tool,
and built a new one on top of Monad. So everything you can do in the
GUI, and *more*, you can now do on the command line too. Whoo hoo!
29.10.2005:
-----------
The car is dead, long live the car
==================================
.. image:: bilder/nybilen.jpeg
:alt: new car
:align: right
:width: 200
:target: bilder/nybilen.jpeg
I've just bought me self a new car - well it's a few years old - but
it's new to me.
Since beginning work at |guc| I now have a 40 minutes commute each way
and I need a car that I can trust to start every morning and get me to
work on time.
My old car has been dying a slow horrible death ever
since I first acquired it five years ago. The last year it has been
falling apart with rust, and central pieces of the engine has been
failing in turn. You can say a replacement was high due.
The new car is surprisingly well kept. It's doesn't really look used
and has been taken very good care of by it's previous owner. Let's
hope I can follow that example, because my car rep is not that good :-)
02.10.2005:
-----------
Ajax is no longer just for cleaning
===================================
In case you haven't noticed we're experiencing a shift of paradigms in
web application development, and it comes in the form of *Ajax*,
Asynchronous JavaScript and XML. In a very short period of time a lot
of Ajax based applications have popped up, and it's popularity is
picking up pace, fast.
You may have already tried *Ajax* applications without even realizing,
Google Maps for instance is one such application, Outlook Web Access
is an other.
Ajax make use of XHTML, CSS, and JavaScript to *asynchronous* and
*dynamically* change the look and behavior of the web page by using
XMLHTTP calls between a client (written in JavaScript and run inside
your browser), and a server (usually in the form of an ASP or JSP
page). The gain is that you don't have to reload the whole page on
events, and consequently behave more like a "native" application.
The key to make Ajax work, is the Javascript XmlHTTPRequest object,
which interestingly was originally implemented by Microsoft in 1998
for Internet Explorer 4.0 and put heavily into use by Outlook Web
Access in Exchange 5.5 the same year. Microsoft inventing stuff, who
knew?!? ;-)
It's important to know that Ajax not a defined standard, in reality
it's just a loose term of a series of techniques and "tricks", if you
will, that's been around for years. But expect to see a lot of
articles, books, and presentations in the next six months misusing the
term excessively. I predict much of the same hype we experienced with
Java a couple of years ago. Hopefully we'll get to see a few new and
exiting web applications in return for it.
29.09.2005:
-----------
Don't panic
===========
I've been on 50% sick leave this week, and will be for another. You
see; I had been feeling tired and exhausted for a few weeks, and had
it down to just lack of sleep. Then one weekend I suddenly had the
most frightening experience. My heartbeat was raging, I got chest
pains, felt I couldn't get enough air, my hands and feet was tingling,
and I was generally just paralyzed. Really scary. I went to the
doctor's and as soon as I told him the symptoms, he gave me a smile
and said: "That's a clear cut description of a panic attack".
Apparently they can be caused by severe stress, and since I took over
as IT manager at HiG I've ignored every early warning signals my body
has been trying to send me, and just continued to press on. I skipped
my vacation, stopped working out, worked weekends and late nights,
missing sleep, and jumped both breakfasts and lunches almost
daily. Looking back it was just stupid, stupid, stupid! It was so
obvious and I really should know better than this.
Well, guess I was thought a lessons or two, and now I will pay for it
by needing several weeks of recuperating and rest because of it.
19.08.2005:
-----------
Hacking the Opera Mini
======================
.. image:: bilder/opera_mini_shoot2.gif
:align: right
Opera Software ASA have, in partnership with the Norwegian
broadcasting channel TV2, just released a new 'browser' for low-end
mobile phones. The browser marketed aggressively through big TV ads
here in Norway, and all you have to do is send a SMS to a certain
number to receive and install it on your cell phone.
At first I was impressed, the downloaded j2me jar file was just 55K.
Amazing I thought, how the hell did they make a browser in just 55Kb
worth of compiled Java? Well, it turned out they really didn't.
One of the first things I tried was of course to point the Opera Mini
towards my own site to see how it looked on a mobile phone. The first
thing I noticed was that I was getting strange entries in my Apache
access logs, with IPs not originating from my phone or GPRS provider,
but some server hosted in Germany. This got me curious, so I decided
to have a closer look.
I was able to pull out the jar file and got it running under the j2me
emulator on my laptop. I then fired up ethereal as started to watch
what it was sending over the wire. I also ran the class files through
`Jad `_ got a general impression on how
Opera Mini worked. The results the both surprising and some what
disturbing.
You see, Opera hasn't really made a browser at all, they've made a
small image viewer client that talks to a central proxy server that
does all the handing for you. The server only sends a small stub of
information back to the client describing it's complete pixel
layout. This stub is what Opera call OBML - Opera Binary Markup
Language, and is part of Operas patented small screen rendering.
Also, when you request a web page, the client sends the link - along
with client information like; session cookies, screen size and **phone
number** - to a central server, which act as a proxy and fetches the
web pages and converts them into OBML. The server knows **everything**
about you. Cached web pages, surfing history, website passwords, and
theoreticaly - via your phone number - even your home address (because
anti terrorist laws here in Norway has banned unregistered cell phone
calls).
My only conclution is that Opera is trying to brake into the spyware
buissness. I think this is the most sneeking attack on privacy I seen
in years. The real ironic part is that the phone number you send a SMS
to download the browser is **1984**\....
**Please, please, please, do not use Opera Mini unless you know exacly
what you are doing!**
17.08.2005:
-----------
Battery power to the people
===========================
.. image:: bilder/smartups1000.jpg
:align: right
We discontinued a couple of old APC SmartUPS-1000s at work with broken
batteries. I took one of them home, and was able to replace the
battery pack using a cheap replacement I got from my uncle's car
battery store. For the layout of just kr.850,- I got myself a tip top
home UPS with 30 minutes of battery run time cheap as chips :-)
I connected the UPS to one of my linux boxes using a serial cable and
installed `apcupsd `_ on it. This worked
right out of the box without any configuration, including a neat web
interface. I even added some nice mrtg graphs with just a couple of
lines of bash scripting in no time. Very impressing little piece of
software.
Now for the weird part; just after connecting my servers to the UPS,
11 minutes and 33 seconds to be exact and I have the logs to prove it,
there was a loud thunder and all the lights flashed for a couple of
seconds. Talk about "nick of time" and "real life testing" :-)
24.07.2005:
-----------
New design goes live
====================
So after a short beta period I decided to switch the site to the new
design. I'm really pleased with it and even though it uses a bit more
'advanced' CSS, it should work well in most modern browsers.
22.07.2005:
-----------
I laugh at your puny little script kiddie attempts
==================================================
In the last six month my logs has been filled with failed ssh login
attempts from automated scripts. Other than being annoying they're
really just stupid and mostly conducted by idiot script kiddies that
think they rule just because they can "hack" into a computer that
someone left without a decent root password.
For a while I sent out abuse reports on the most imbecile attempts
(after 2000 fail attempts just give it up already) but since most
"attacks" originated from ISPs that seemingly didn't care, I wrote a
script to just block these attempts out of my network.
Get it here: `sshdeny.py `_
The script is simple enough. It tails the security-log looking for bad
login attempts and drops a line into /etc/hosts.deny if they exceed
five failed attempts. Just start it up with::
[root]# tail --follow=name --retry /var/log/secure | ./sshdeny.py
21.07.2005:
-----------
Antivirus makers grab your ankles, here's Microsoft
====================================================
Everyones favorite software company just released their first beta
of `Windows OneCare `_, a security
package for the home user. Interestingly it features, along with
anti-spyware and a firewall, an anti-virus module.
If I was a CEO of an anti-virus company I would be pissing my pant. If
and when Microsoft releases an anti-virus solution of their own that's
in effect the end of the whole industry. You don't believe me? Fine,
but ask yourself, what happened to all those word processor and spread
sheet companies in the eighthes? Or those browser guys in the nineties?
Compiler makers? Instant messaging? Groupware? They all vanished
without a trace just around the time little Bill decided "Hey that's
an interesting product, lets make one of those".
I mean even me, a linux user for over 10 years, wouldn't think twice
of throwing out my anti-virus vendor if Microsoft starts offering an
decent anti-virus enterprise solution of their own, because most
anti-virus vendors make crap products anyway.
It's my claim that anti virus software is now the number one reason
why people's computer crash. Fact is, Microsoft has cleaned up their
act a lot, when it comes to stability, but since antivirii must be run
with a complete access to the underlying OS, it's can crash your
computer just as effective as Microsoft ever did in the old days - and
they do!
It never stops to amaze me just how *bad* anti-virus software really
is, frankly it stinks! It slows your computer down to a grinding halt,
destroys vital functionality, brake your application access, deletes
important files, and crashes your computer. Still: the average user
have no other options if they are to access the Internet without being
rooted.
I have yet to see an anti-virus solution that didn't suck! So I say:
good riddance to all you proprietary anti-virus makers, may your stock
options soon plummet to a near zero value. The sooner the better! I
would never in a million years think I ever say this but: Go
Microsoft!
17.07.2005:
-----------
Oh wonderful stylesheets
========================
CSS is a wonderful tool. For years I brushed it off as something bad
because it wasn't compatible with older and simpler browsers, but in
later years, after working with Plone_ and |rst|_, I've come to realize
it's strengths. Most importantly it draws a clear line between the
presentation layer and contents so designers, programmers, and writers
can step on each other toes a bit less.
As I rewrote this whole site in |rst|_ a while back, I designed a CSS
that made it look exactly like the old site, I was surprised of how
easy it really was. This Sunday I was bored, so I hacked up an
`alternative design <../altstyle/diary.html>`_ to the site in just a short
hour. Again with very little effort.
Notice that the *only* difference between the to designs is the
stylesheet, no changes has been done to the text, HTML, or build
system. Very cool ;-)
16.07.2005:
-----------
Stupid researchers with stupid ideas
====================================
The other night I saw a re-run if a danish popular science TV show
called `Viden Om
`_
about some "research" being done at `IT University of Copenhagen
`_ on something they called "intelligent ghost
applications". Basically a computer would track your movements by
picking up signals from your pda, wlan-device, mobile phone, implanted
RFID whatever, and give you relevant "information" and "assistance"
depentant on your location. I watched this one hour hallelujah of
technology praising, containing not a single critical word about the
downsides and dangers of having such systems. If you've seen `Minority
Report `_ the scenes with the
eye scanners and personalised bill boards, you get the idea. One
"scientist" even went so far to calling this not a "Big Brother"
system, but a "Big Mother" system, "It's not a system to control you
but to take *care* of you". Holy peanut brain Batman, how retarded can
you be?!? I'm really provoked by how naive some so called
"researchers" and "scientists" can be. The total disregard of evil
uses for their work, and the apparent wearing of horse blinkers of
what the consequences their work can have to the life of the common
man.
So why this rant, well today 60 years ago, July 16, 1945, the world's
first nuclear bomb exploded at Trinity Site, New Mexico, it is the
ultimate example of scientists effect on our lifes. I remember at the
age of 11 or 12 seeing a TV interview from 1965 with Robert Oppenheimer
where he was asked how he felt about his "success". His words, and face
when he said them, made a lasting impression on me::
"We knew the world would not be the same. A few people laughed, a few
people cried, most people were silent. I remembered the line from the
Hindu scripture, the Bhagavad-Gita. Vishnu is trying to persuade the
Prince that he should do his duty and to impress him takes on his
multi-armed form and says, 'Now, I am become Death, the destroyer of
worlds.' I suppose we all thought that, one way or another."
-- J. Robert Oppenheimer
13.07.2005:
-----------
`Goodnews 0.9.1 is released.`_
==============================
I've just released a bugfix release of Goodnews_. This fixes small
layout problems when showing RSS items, and it now uses the textwrap_
modules from the `Python Standard Library`_ to to wrap text more
perty.
12.07.2005:
-----------
Com and join the org
====================
So I'm "migrating" the domain from batbelt.com to batbelt.org, because
this isn't really a commercial site is it? ;-) I'll still pay the fees
for batbelt.com for a considerable amount of time yet, but gradually it
will just fade away.
19.06.2005:
-----------
The choices of a GNU generation
================================
I'm pondering the choice of Linux server distribution. I'm torn
between Debian, Novell/Suse, and Redhat. Even Fedora is an
option. Since we at |guc| run our servers on Dell hardware, the only
official supported Linux platform for us is RHEL, which also happens
to be my personal preference.
The problem is that we don't need the expensive
support offering that comes with RHEL. Because of this I've been
looking at CentOS_, a community supported version of Redhat Enterprise
Linux.
To be honest I'm divided. One part of me acknowledge the fact that
Linux and all of Redhat's software is licensed under the GPL and it's
perfectly within everyones right to do with it what we want, but on
the other hand the community needs RedHat and their survival is
dependent on them making a profit. Then again big companies, who's
Redhats main source of income, are more than willing to pay for
support, and feel *that* is the real value of the Redhat product.
Others like `Duke University `_ are using
CentOS_ just like we want to and I've been searching news groups and
mailing lists for discussions around this topic but come up short. So
maybe It's just me being silly?
12.06.2005:
-----------
Dirty ol' Street
================
This weekend I played the `Fjellhamar Street
`_ three-on-three basketball
tournament in Lørenskog . The famous rap collective `Dirty Oppland`_
had entered the tournament with two teams and needed some extra
players - seven actually - and asked a few of us to give them a
helping hand. We managed to bring both teams through to the play-offs,
and gave even teams with players from the Norwegian pro league `BLNO
`_ a hard time along the way. The whole day was
just pure joy, and it also seeded loose plans to arrange something
similar here in Lillehammer in collaboration with `Lillehammer
Basketball Club`_ and `Dirty Oppland`_.
05.06.2005:
-----------
Gmane may be the missing link
==============================
I've been sniffing out Gmane_ for a while, because I'm not to happy
about how reading and searching of mailing lists work for me. Gmane_
is a mail-to-news gateway, not in itself a new idea, but Gmane_ goes a
very long way in getting it right. First, the gateway is bidirectional
so you can post from the nntp interface even if your not a member if
the list (if the list allow it of course). Second it never expire any
messages so it also a good archive, even it's web interface is the
best I've seen for mailing lists or news.
04.06.2005:
-----------
Feed the info junkies
=====================
I've just added a `RSS feed `_ and Live Bookmark to the
diary. Now you can easily stay up to date with all the new diary
entries. It also shows what you can do with good tools as |rst|_. The
feed is generated by first converting the |rst|_ document into XML, and
then running it though a XSLT to create a RSS 2.0 XML. Read more on
how this is done in the About_ section.
02.06.2005:
-----------
Entering managment
==================
I've been asked to step in as the acting IT-manager at |guc|, after my
boss rather surprisingly turned in his resignation today. I originally
had no intentions of entering management this soon after leaving
Accenture, but when I'm asked in such circumstances I feel a call of
duty. There is still a few things that needs sorting before I can give
my final answer, but I've given a initial yes for now.
01.06.2005:
-----------
`Goodnews 0.9 is released.`_
=============================
A new version of Goodnews_ is released, and this one adds the \*bozo\*
flag for badly formated feeds. Though you still see them if they are
remotely parseble but the application will give you a note. Also since
The *description* field are allowed to contain HTML, I'm using Aaron
Swartz' html2text_ module to parse the feeds for now. I'll probably
change that later. Also Python's curses modules doesn't support wide
characters so I've done some fiddling to prevent it from seeing them.
31.05.2005:
-----------
I'm now my own company
======================
I have finally received my business entity number, which means I now
have my own legal company. This doesn't really mean all that much
since, unlike public companies, I'm still personally responsible
for all depths in the company, but it does give me right to write off
expenses, and taxes when my turnover exceeds Kr.100K. My specialties
are incident response, server administration configuration, and
troubleshooting, smaller programming tasks, along with project
management and system design.
21.05.2005:
-----------
Freshrpms and Dag Wieers, move over!
====================================
Well, not yet anyway ;-) Since I made my first RPM a couple a weeks
ago I done more packaging, and it's quite fun actually. I'm slowly
starting to package software I use regularly which is usually install
from source. I've never been happy with keeping my custom software in
/usr/local because it makes a pain when I reinstall my system. So now
I'm building my own repository of packages. A subversion repository
holds all the `specs `_ and the rpms
live at http://dilbert.hig.no/pub/stianh/RPMS/.
19.05.2005:
-----------
Revenge Of The Star Wars Geek
=============================
I went to the Revenge of the Sith premiere which was screened at 00:03
AM. My mom was a real sweet and watched the kids even though she was
going to work the day after, and we didn't get home until 3 AM. The
movie was great, George finally got it right. I noticed at one point
that I wasn't paying that much attention to the FXs as I did the two
earlier prequels. Unlike the two earlier films, the story very much
drove the movie forward. Some great scenes too, the dialog was almost
bearable, and Ian McDiarmid and Ewan McGregor did some great acting at
times. A special moment for me was when they entered the ship of
Captain Antilles from the opening scene of *A New Hope* - really made me
feel 10 years old again.
08.05.2005:
-----------
EVERTON ARE IN THE CHAMPIONS LEAGUE!
====================================
YES!!! Everton are in the Champions League! It's unbelievable, we're
in the Champions League, I can't believe it. Next season I'll be
following Everton into Europe. I don't know where I'll find the money
to do so, but who cares. All the pain and misery these last 10 years
are all but forgotten. Congratulations to every Evertonian around the
world, you are the best! See you all in Europe next season. Thank you!
07.05.2005:
-----------
Now, put that in your repository and smoke it
=============================================
As I metioned earlier we're rebuilding HiG's linux network, and part
of that includes implementing a method to automaticly update software
on the servers. With Fedora and AptRpm we see a lot of great apt
repsitories emerging. People like Dag Wieers (http://dag.wieers.com)
and Matthias Saou (http://freshrpms.net) provide services similar to
what Debian users have been ranting on about for ages. Apt is truly a
wonderful tool, and the decition to use is as our primary software
control tool was easy. This of course made it neccesary for us to
create our own local repository. Much to my suprise that was quite a
simple task. Just a short hour of mirroring the fedora tree and
writing a couple of scripts was all it took. Though it's not in
a production state yet, you can have a look at it here: http://dilbert.hig.no/mirrors/apt/fedora/3/i386/
06.05.2005:
-----------
It's all part of the package
============================
Well I guess it had to happen sometime but I've just made my first RPM
package. Wasn't really planning on it either, it just happened. We're
currently cleaning up and rebuilding the linux server network at work,
and one the policies we've made is that all software packages should
be in RPMs to able us to cleanly remove or upgrade them later. We're
also planning some testing with Postfix_ and ClamAV_ using a small
daemon called ClamSMTP_. Problem was that that software wasn't
available in RPM for Fedora, so I just took the Mandrake RPM spec file
and ported it to Fedora. So here it is: my first real RPM:
`clamsmtp-1.4.1-2.fc3.hig.i386.rpm
`_
05.05.2005:
-----------
Submission to Subversion
========================
I've just imported batbelt.com into a Subversion_ repository_. Mostly
just to learn and test Subversion which I've had on my list for years,
but Subversion looks very promising and feels much better in use than
other RCSs I've tried. Like most other CS students, I was forced to
use CVS at university, and this put me off RCSs for a very long
time. Now I'm back with Subversion, and might I add, it's fun, simple,
and easy to use - which some of you might know is very important to me
;-)
24.04.2005:
-----------
Small ears hurt the most
========================
Eivind's just recovered from two weeks of illness. It started as a
couple of sleepless nights with a creaming 8 months old baby that
couldn't be calmed down no matter what we did. We knew something
wasn't right, and when we brought him to the doctor's he took one
quick look into his ears and said the two words every parent dread:
"ear infection". Poor Eivind, he was already on antibiotics for
another infection, but that didn't kill of these suckers. They were
probably immune so we got a different kind of penicillin and luckily
that did the trick. Soon we had our boy back smiling again.
15.04.2005:
-----------
Rant warning: XML and font madness
==================================
Someone decided that the old X font rendering was too difficult and
replaced it with something *worse*. My Fedora Core 3 now uses GTK2
with XFT2, and can I say; what a complete pile of stinking dog
droppings. Maybe from a developers viewpoint it's a good idea but for
an end user it's just annoying and too difficult to grasp - and who got
the brilliant idea of using XML in plain config files? It's stupid,
stop it! I mean look at this piece of brain damage:
::
815false
What in the name of the maker are you doing implementing *if* tests in
XML for? This is exactly why I don't like XML. It makes things harder
to understand, harder to read, write, and *parse* for both man *and*
machine, but still people insists on implementing and using it in ways
it was never intended. XML parsing is a waist of CPU cycles, and more
important a waist of mind processing. That was today's rant, thank
you!
02.04.2005:
-----------
The Sun always shines (but only until your NVRAM battery runs out)
==================================================================
.. image:: bilder/ssipx.png
:align: right
I have a couple of `Sun4/50 IPX SPARCstation`_\s (OK, so I have five :)
which I saved from the dumpster at my old employer during the y2k
hysteria. These «lunchbox» sized computers are way cool, and makes me
very nostalgic since I used them a lot when I was attending
university. The boxes have been collecting dust in my basement for a
while now, but I thought I would put one of them to use as a backup
server together with an old SCSI tape streamer I had lying around.
Imagine my disappointment when I tried booting one of them only to
discover the NVRAM was nuked on all of them :,-( Luckily NVRAMs are
still relatively easy to obtain so I've ordered a new chip from
http://www.mouser.com/ for the price of $16.99 plus shipment (not all
that bad really).
I will also attempt to hack one of the old NVRAMs and try to attach a
new battery to it. I found a `couple
`_ of `instructions
`_ via Google which looks simple
enough.
01.04.2005:
-----------
`Goodnews 0.8 is released.`_
=============================
A while ago I wrote Goodnews_, a simple console RSS reader that was
originally meant as a quick python port of another RSS reader called
Snownews_. It wasn't very well written so I wrote my own
RSS reader based on the same structure, but with an UI modeled after
Pine_.
At first I only wrote it to learn about RSS, but as the tool actually
became useful to me, I replaced it's own XML parser with `Universal
Feed Parser`_, cleaned it's code a bit (it's still ugly though) and
are now releasing it to the public.
To download please go to the Goodnews_ section.
30.03.2005:
-----------
I admit to everything..
=======================
OK, I admit it, *I don't understand Pythons Unicode support*. I don't get
it, I'm sorry! I just can't wrap my head around it. Every f*cking time
I program I fight with this problem and I'm wasting precious time,
every time. If there is something wrong with me I truly apologize and
if I'm the only one please do say so, but I suspect there's a lot more
of us out there. If that's the case Python should fixed not us! That's
today's rant, thank you!
26.03.2005:
-----------
Nobody nose the trouble I've seen..
===================================
What luck! I'm really a lucky person. I managed to get a bump on my
new nose. I turned too quickly and hit someones shoulder, if you can
believe it? The nose started bleeding internally and began swelling,
so the doctors had to cut it open and drain the blood, and they forced
two very *large* tampons deep into both nostrils to keep things in
place. On top of it all I got a fever and got real sick, which could
have been from an ordinary flu or worse, an infection. Since there was
no way of being sure they put me on antibiotics just to be safe. So
what should have been a quick in and out operation has now kept me off
my feet for almost two weeks and ruined my whole Easter vacation. Did
I mention how lucky I am?
20.03.2005:
-----------
An interesting project
=======================
A post on news:alt.lang.s-lang giving tip on how to do GUI programming
in `S-Lang`_ using `GTK-server`_ got me interested. Now this is a cool
project. `GTK-server`_ is a stand alone binary which talks to your
program through a two way pipe. You print plain GTK calls on stdout
and GTK-server send you the response on stdin. It's primarily designed
for use with scripts and interpreted languages but should work with
compiled languages too.
I've been looking for a simple way of doing GUIs in SIMULA, and
started porting GraphApp_ a while ago, but I'm such a lazy person that
it has taken a bit longer than planned ;-). GTK-server could be an
alternative solution to my problem that needs to be tested one of
these days.
19.03.2005:
-----------
A brick of book.
================
I love books, manuals that is, and I've just got a new one from
Amazon.com: `The Practice of System and Network Administration`_. This
is not a technical manual. No, it's a manual on how to be a sysadmin
*in practice*. I'm half way through it now, and wow! Reading this
book, I'm constantly nodding my head, «yes, that's the way you do
it». If you want to be a sysadmin, or want to know *how* it like to be
a sysadmin, read this book.
It spells out things experienced sysadmins just know after years in
the profession. Things we've learned by ourselves through trial and
error, but never thought of formalizing on paper. Well, someone just
did.
Being a sysadmin is a true profession, almost every modern business is
totally dependent on them, still many treat them like shit go figure,
and no schools or universities will ever tell you how to be a good
sysadmin, which I find really crazy. `The Practice of System and
Network Administration`_ gives a good insight of how sysadmin are more
than just monitor movers or glorified janitors, as some people seem to
see us.
17.03.2005:
-----------
Batbelt.com is finally home
===========================
Batbelt.com is now served from my own DSL line at home. Since it's old
home wasn't that stable anyway and my DSL uptime has been quite
impressive since I had it installed, I couldn't see any point of
having the site «outsourced» ;-) So from now on I can see the leds
blink and hear the hard disks buzz when people access the site.
15.03.2005:
-----------
You nose it make sense.
=======================
I've just had a nose job, yes that's right, a nose job. Not one of
those vain exterior rhinoplasty, but a small surgery call «septoplasty»
to fix the shape of the wall between the two nostrils.
I've had difficulty breathing through the nose for years and this has
cause me to have a very bad sleep quality and giving me a lot of sinus
problems. The surgery took just over an hour but since I was under
full anesthesia I needed to spend the night at the hospital.
Right now I feel like being I've given a good beating, but I can feel
the difference already, and hopefully I'll get better sleep and feel
more awake during the day from now on.
07.03.2005:
-----------
Total rewrite of batbelt.com.
=============================
I've done a complete rewrite of the entire site and I'm pretty pleased
with my self. You might wonder "What rewrite? Everything looks the
same!?". Well, it's only the backend that's changed, not the
design. The old site was pretty hackish, being generated with a
Makefile through a couple of python scripts spewing out HTML from a
series of templates.
This entire site is now rewritten in |rst|_ which is something I've got
to know from using Plone_. You see the problem with the old site
was that it was too hard to change and update, which is why this diary
is so loosely updated. I first thought of using Plone_, but that would
really be overkill, plus it would mean redesigning the whole look and
feel of the site.
|rst|_ let's me just hack things down with very little effort in any
old editor, spell check it easily using standard tools, all without
really thinking about layout at all. Hopefully this diary will be
used a bit more for now on. You can read more about the site in the
"about_" section.
03.01.2005:
-----------
A New Hope.
===========
Today I begin my new job as a sysadmin at |guc|_. I'm really looking
forward to it. The only down side is that I now get a 35-40 minute
commute, compared to the 15 minutes it took to get to my old job, but
I don't think that will be a problem.
06.10.2004:
-----------
Attending Entrepreneur Course.
==============================
Reading the paper at breakfast one day I noticed the local employment
service was offering a *free* course on how to start your own
business. Having my own business has always been one of my dreams and
goals in life, and I've always had it in the back of my mind. The
course is centered around forming a clear business plan and finding
startup finances. Jolly fun, even though I'm pretty sure this is not
the right time for me to be starting up a business with a brand new
job, two small children, and an unemployed wife :-)
01.10.2004:
-----------
Leaving Accenture.
==================
As of today I've informed Accenture_ of my resignation and entered a
three months notice period. Just over the new year I start a new career
at |guc|_.
Ever since Accenture_ acquired parts of EDB Telekom AS in May, I've
been considering my future. Because things would change so much anyway
(I would probably had been transfered into a consultant group) I could
just as well see what my options was.
I've had seven wonderful years at EDB Telekom AS (now Accenture) but
these last three years have been tough, all the uncertainties,
downsizing, and threats of outsourcing. Problem was you never got to
just get on with your job. Everything was just maintaining status quo
waiting for some decision to happen, and the lack of professional
challenges really took it's toll. Work suddenly stopped being fun, and
then you just have to make some changes.
I now really look forward to begin work at HiG_, and finally just
focus on making better IT-solutions again.
27.08.2004:
-----------
Luke, I am your father!
=======================
Eivind was born just before seven o'clock on 17 Aug. 2004. 51cm and
3700g. The whole thing went as a breeze, but two days later we got a
real scare. Eivind had caught an infection and the doctors had to treat
him with antibiotics. Luckily he recovered quickly and he's back home
with us healthy as a horse.
01.07.2004:
-----------
A goal set: achieved...
=======================
I now weigh 84kg. Four years ago I weighed in at 99.5kg and decided I
would do anything to prevent it turning the 100kg mark. Though I'm a
former athlete (basketball) I stopped all physical activity when I
started work at Telenor 4tel AS in October of 1998. Too many company
paid pizzas and too many pints of lager - all while sitting on my ass
in font of a computer (or some bar counter) - made me gain over 15kg in
just over a year. Since I'm only 180cm tall I shouldn't weigh above 85kg,
so I set my goal at 84. First I started jogging. My personal best 10km
(as a 20 year old) was 40m35sec, and now I couldn't even run 3km without
pauses heaving for my breath. The first year the goal was just competing
a 10km without pauses. Now four later later I run 10km in just 35m40sec.
I'm in better shape than I ever was, and goes to show it's never too
late to turn things around.
01.05.2004:
-----------
New employer.
=============
The company I work for just got acquired by Accenture_, so now I've got
a new employer. The whole thing went really fast though we had known
something was going on for a while now. Of course things will change for
me personally - as a sysadmin in a highly centralised company - but I'll
just play the waiting game for a while before making any decisions.
26.04.2004:
-----------
If you know your history...
===========================
So, back from another Liverpool trip. Really nice one this time though
Everton was really shite as usual. Meet some absolute crazy but
wonderful people after the game. Jimbo and Bobby showed us the local
pubs and introduced us to the wonderful world that is Walton. Never
thought I could feel so at home with thieves, thugs, drug dealers, fags,
and red noses. Just a fantastic, though surreal, night. Apart from the
two heavy armed copper twats at Manchester Airport on our return trip,
this was truly a week to remember - even the weather was fantastic, warm
and sunny, if we hadn't known any better we could think we'd come to the
wrong city :-)
01.03.2004:
-----------
The comeback kid..
==================
I finally did it. I put on my basketball shoes and turned up for
practice. The club I helped found over ten years ago is still going
strong, though not as big as it used to be. Maybe it's because I'm
turning 30 soon, or just the love of the game, but I really felt like
playing again. Now I can't stop, shooting hoops at every opportunity and
even planning my own basketball court when we dig up our driveway this
summer.
05.01.2004:
-----------
A New Year.
===========
Back to work after a rather long Christmas vacation - two weeks. Started
very slow by reading my email and planning the next few weeks. Then I
read an very interesting `article `_
by Paul Graham posted on Slashdot which really hit me.
22.12.2003:
-----------
I'm going to be a dad again.
============================
In a rather pleasant surprise we discovered Magnus will be a big brother
i August. We were planning more children but didn't think it would be
this soon. Very welcome news though.
05.09.2003:
-----------
..and now he brews beer too
===========================
OK here's what happened; I was planning to build a pub in my basement,
and I started thinking about how cool it would be when it was finished.
Then I realized I needed a beer tap and - beer - as well. But where to
buy beer on kegs? Then it struck me; why not brew my own. A little
googling, mailing and reading and I've gained a new hobby (as if I needed
one :-)
28.06.2003:
-----------
The book worm strikes again
===========================
Maybe this management thing is getting to me, but I'm actually reading
my first non technical books in years (not counting Lord Of The Rings of
course). One is about project management which is very useful in my
current job situation, and the other handles how to become better at
communication which is funny because according to this book it turns out
I'm not as bad at it as I thought.
06.06.2003:
-----------
batbelt.com is up and going again... and again
==============================================
Well this time I lost my name service .. It's now temporary running on
the DNS server at work. *Sigh* I really want a Internet line at home to
take care of all this my self.
28.04.2003:
-----------
Attending management course
===========================
I've been offered a place in an internal management program here at
Telesciences. Guess I've put my neck out one to many times, and people
started taking notice. I'm not sure I really want to be in management
(other than maybe owning my own business some day) but it's an unique
opportunity that I couldn't turn down really.
19.08.2002:
-----------
batbelt.com is up and going again
=================================
So at last... Batbelt.com is up and running again. Since my service
provider when belly up (not surprising considering their severe
incompetence), and my university account was closed I have had no
place to serve the pages. I was planning to use a server at work, but
didn't really want to mix work and leisure. Then, giving after a
presentation on GPL for my LUG, they offered to serve my domain on
their box - many thanks guys! Real life savers.
29.07.2002:
-----------
I'm a dad!!!
============
At 22.15 28.07.2002 Magnus was born weighing in at 3850g. Already he can
lift his own head, and is charming everyone around him. The whole thing
was a bit emotional, but now I only feel relief, pride, and pure joy!
01.07.2002:
-----------
Making a Simula-to-Python compiler
==================================
Hoping to better understand how CIM (the Simula-to-C compiler) works,
and how Simula is parsed and compiled, I started to code a simple
compiler myself. I have often said that the feel of Python reminds me
much of how it was coding with Simula. With my work on a GraphApp_
binding for Simula I discovered shortcoming with both the compiler and
the language itself. Wishing to improve some of this I wrote a "test
Simula compiler" in Python. Parsing Simula code and compiling it in to
Python code. It has of course no practical use other than teaching me
how Simula and compilers in general work. All types of legal
declarations are implemented, but expressions and statements are still
missing. I will release it late on, when and if I get it working.
11.06.2002:
-----------
SimGraphApp is coming along nicely
==================================
Discovered that the author of GraphApp_ was rewriting the whole library.
The rewrite is much better. It's more portable, and a lot cleaner. This
caused my motivations for writing bindings for Simula to get a spike. I
now have 30-40% of the GUI objects implemented. I am also 'porting' the
documentations and examples from C as I go along. The Simula binding for
GraphApp_ is also supporting subclassing, but also support a 'flat'
interface like C. I have also managed to get it working on Win32 -
though the port of CIM to Win32 has some issues.
20.03.2001:
-----------
Making GraphApp bindings for Simula
===================================
I have rediscovered my old favorite programming language: Simula. Boy -
what a fantastic language. The main reason for dropping Simula was that
it lacks a nice and easy way to do GUIs.. So now I'm making Simula
bindings to a small platform independent GUI API called GraphApp_ . The
reason for choosing GraphApp_ is mostly accidental. But GraphApp_ is
LGPL'ed, small, simple. easy, platform independent, and made with C -
not C++. (which to me is very important *wink*) I reckon I should be
able to make a fairly complete bindings in only 2-3000 lines off Simula
and C code. Which shouldn't be that much work.
11.03.2001:
-----------
Learning Ada95
==============
Started to look at some Ada tutorials.. and to my surprise Ada95 felt
much like Simula. I also liked how well it worked together with C. I
wonder why Ada95 haven't gained more popularity over road kill languages
like C++ and Java?
07.02.2001:
-----------
I'm back
========
Well here's the thing: The people I rented server space from had a disk
crash. Not really a big thing - but these morons didn't have any
backups.. So now I'm back, to my old university account.. for now..
17.11.2000:
-----------
Insomnia insane(ia)
===================
Couldn't sleep last night, this resulted in a rather silly program:
`Having Fun With Keyboard LEDs `_.
12.11.2000:
-----------
Designing a simple language
===========================
A good friend of mine is tending a course in language design this
semester, and after a discussion about the pro and cons of various
designs we started talking about how the perfect language would look
like. The snowball started rolling, and we soon had the specification
for a very small clean language. The next step is to put our theories
into practice by implementing it. This could turn out to be a problem
since we both have very little time to spare. We'll know more when the
Christmas holidays begin.
07.11.2000:
-----------
"It's not the leaving of Liverpool..."
======================================
Last year's trip to Liverpool, was such a success-- despite catching a
brutal pneumonia --that I have decided to do a journey this year too.
The plan is to see Man.City-Everton in Manchester on December 9. The
same day catch a concert with `Saw Doctors`_ in Liverpool. Do the pub
crawl, and end the week with Everton-West Ham at Goodison on the 16th.
30.10.2000:
-----------
S-Lang frustrations
===================
I have been missing a decent ispell function in my favorite editor JED ,
and after having a quick look at it's embedded language S-Lang , I
though this would be an easy thing to implement. The S-Lang language
itself is simple enough, but the programming environment JED offers is
just a disaster. Because of it's brain damage, it's only suited to do
simple tasks. I find this very frustrating, since I really like the JED
editor itself.
10.10.2000:
-----------
A car, a car, my kingdom for a car
==================================
Bought a car... it is ugly, has a crap engine, and cost me way to much
money. But it has four tires and a steering wheel, and gets me to work
and back just fine. Therefore: I'm happy!
23.09.2000:
-----------
Back from Stockholm
===================
Came back from a few days visit in Stockholm. I went over to see an old
friend, and to attend the derby between Hammarby and AIK. Bajen lost 2-0
of course - so this is my fifth derby without Hammarby even scoring a
single goal. But as always the Bajen fans won the game off the pitch.
06.09.2000:
-----------
Learning to master Regex
========================
Bought a great O'Reilly book - `Mastering Regular Expressions`_ - I
never liked regex that much, but it can be pretty useful sometimes, plus
it's part of the curriculum of the course I'm attending this semester..
03.09.2000:
-----------
Began working on the new website
================================
Began working on the new batbelt web site. Same simple interface
philosophy, but with an improved design. Also this online diary was
included.
01.09.2000:
-----------
New position at 4tel
====================
Today I officially started in my new position at 4tel as a Project
Manager in the Design Team. Still work in the Internal-IT department,
but more with system design. This was part of my deal with 4tel after
the near Teamco switch in June. Looking forward to not have to sit on
helpdesk, even though I haven't done that for a while anyway.
22.08.2000:
-----------
The semester starts
===================
First lecture today.. Going to try and follow in228 - Technical
Software. It's mostly about scripting in Tcl, Perl, and Python. Maybe I
can pick up some easy credits on something I do everyday anyway
21.08.2000:
-----------
Back to work
============
Back on work after my holiday.. First Monday is the worst! All work and
no play, makes Jack a dull boy!
17.08.2000:
-----------
Back from honeymoon
===================
Back from a rather short honeymoon. We went on a weekend cruise to
Copenhagen. First class of course :-) - This was a gift from all my
cousins. Great gift you guys!
.. raw:: html