Site uses cookies to provide basic functionality.
Javascript rendering is set to off by default when visiting the site via .onion and .i2p domains. It can be enabled back again in user's settings section. Javascript rendering set to off means, that you can disable javascript in your browser now and the site will remain functional.
There is also IRC server now available via native IRC clients or non javascript web based one.
Fonts can be adjusted in user's settings section as well.
Check FAQ for more.

OK

Update : I wrote a Python-based OStackProf stack trace summarizer that works on MacOS and Linux/Unix clients too (possibly even on Windows client if you have Python installed). I have mentioned ORADEBUG SHORT_STACK command in my blog posts before – it’s an easy way to get and see target processes stack backtrace directly in sqlplus. No need to log on to the Unix/Windows server and use OS tools for extracting the stack. I have also ....

Update : I wrote a Python-based OStackProf stack trace summarizer that works on MacOS and Linux/Unix clients too (possibly even on Windows client if you have Python installed). I have mentioned ORADEBUG SHORT_STACK command in my blog posts before – it’s an easy way to get and see target processes stack backtrace directly in sqlplus. No need to log on to the Unix/Windows server and use OS tools for extracting the stack. I have also ....

When I encounter a system that has already been in development or production for a while, the first sign of real trouble is always a dirty log. You know what I’m talking about. When clicking a single link on a normal flow on a web page results in a deluge of messages in the only log that the system provides. Too much logging is as useless as none at all.

I had a bit of a weird problem last night – when trying to remove BGP from a VRF on a 7600 running 12.2(33)SRC2, I tried: ar01.tn5(config)#router bgp 65302 ar01.tn5(config-router)#no address-family ipv4 vrf SRC2-TEST ar01.tn5(config-router)#exit ar01.tn5(config)#exit One would expect that this would stop BGP redistributing the VRF routes for the VRF SRC2-TEST. In fact, what happens is that the VRF starts reporting ‘debugging....

I had a bit of a weird problem last night – when trying to remove BGP from a VRF on a 7600 running 12.2(33)SRC2, I tried: ar01.tn5(config)#router bgp 65302 ar01.tn5(config-router)#no address-family ipv4 vrf SRC2-TEST ar01.tn5(config-router)#exit ar01.tn5(config)#exit One would expect that this would stop BGP redistributing the VRF routes for the VRF SRC2-TEST. In fact, what happens is that the VRF starts reporting ‘debugging....

I’m going on the road again. This time it’s not far, just to Trondheim for a seminar for the Norwegian computer association that I will be giving together with Aslak Hellesøy on agile development and testing. This will be similar to our line-up at JavaZone: Aslak will cover “how to make the correct software”, and I will cover “how to make the software correct”. Hopefully, we’ll make a few test managers think and a few others angry.

Yesterday I spent the entire day getting the following amazing state-of-the-art not-ever-done-before feature to work: Executing a SQL statement from my program Because, as everyone knows, I don’t suffer from NIHS , I used standard object-relational mapping software  Hibernate , with a standard programming language Java, using the standard web-application server Tomcat, and now I am using the standard “connection pooling” software  C3P0..

The alumni organization from my old university is arranging a debate about open source, and I’ll be moderating. The debate will be next Wednesday at Scotsman in downtown Oslo. There will be a four person panel, with two skeptics and two open source fans. So far, the panel looks as follows: Heidi Arnesen Austlid, Friprogsenteret Per Hove, Oracle Norge Shahzad Rana, Questpoint An exciting surprise! The event will be held in The Scotsman, wher..

I recently saw a fellow OakTable member mentioning a section in Oracle documentation where it’s said that: “When a database contains tablespaces that have been plugged in (from other databases), the ROWIDs in that database are no longer unique. A ROWID is guaranteed unique only within a table.” It’s a well known fact that the old Oracle7 style restricted rowids (which contained only File#, block# and row#) may not be unique in Oracl....

I recently saw a fellow OakTable member mentioning a section in Oracle documentation where it’s said that: “When a database contains tablespaces that have been plugged in (from other databases), the ROWIDs in that database are no longer unique. A ROWID is guaranteed unique only within a table.” It’s a well known fact that the old Oracle7 style restricted rowids (which contained only File#, block# and row#) may not be unique in Oracl....

In the recent OpenMind conference we were discussing how open source projects simply don't die as long as there is an interested user community: Even if the original company or individual who built the application stops working on it, somebody will always rise and start maintaining it. Last few weeks have been a great example of this. Nemein is the company which originally built the OpenPsa2 suite of project management and CRM t....

In the recent OpenMind conference we were discussing how open source projects simply don't die as long as there is an interested user community: Even if the original company or individual who built the application stops working on it, somebody will always rise and start maintaining it. Last few weeks have been a great example of this. Nemein is the company which originally built the OpenPsa2 suite of project management and CRM t....

The Norwegian Agile User Group conference, Smidig 2008 was on Thursday and Friday. Both days started with three hour sessions of Lightning Talks, followed by three hours of open space work groups after lunch. We have been very happy with the format. The lightning talks give people food for thought. The best lightning talks are formulated around a provoking hypothesis. Kai Gilb talked about how we should focus on value instead of function.

The videos from JavaZone are up. Here’s my talk about Extending Continuous Integration, which talks about how I automatically run system level integration tests after every build.



It took me a few hours over the course of this week to build the RIPE whois server for some internal projects – given that there seems to be a very limited amount of documentation for the build process, and threads on mailing lists, I’m going to post this here. I hope that it gets picked up by Google. The first problem that is encountered is that the libtool that is included with the whois server does not support ‘modern’ tags, such as..

It took me a few hours over the course of this week to build the RIPE whois server for some internal projects – given that there seems to be a very limited amount of documentation for the build process, and threads on mailing lists, I’m going to post this here. I hope that it gets picked up by Google. The first problem that is encountered is that the libtool that is included with the whois server does not support ‘modern’ tags, such as..

Recently I programmed the following screen in PHP: The user logs in The user has a subscription The subscription has a number of states ("terminate", "auto-extend", ..) There is a screen allowing the user to change this state The screen is a set of radio buttons – each radio button relates to one state The user clicks on the radio-button representing the state they wish, clicks "ok", and the new state gets saved to t..

While my daughter and I sat across from each other in Starbucks drinking coffee and PIN messaging each other in Leetspeak using our BlackBerries (yes, I realize how drastically nerdy this is), the thought occurred to us that a simple shell script could easily be used to simulate the War Operation Plan Response (WOPR) supercomputer from the movie War Games (1983). Anyways, we analyzed the frame-by-frame output from the movie and recreated ..

While my daughter and I sat across from each other in Starbucks drinking coffee and PIN messaging each other in Leetspeak using our BlackBerries (yes, I realize how drastically nerdy this is), the thought occurred to us that a simple shell script could easily be used to simulate the War Operation Plan Response (WOPR) supercomputer from the movie War Games (1983). Anyways, we analyzed the frame-by-frame output from the movie and recreated ..

In the middle of changing jobs, I have also been quite busy with the last minute preparations for the Smidig 2008 conference for the Oslo Agile user community (“smidig” being the closest Norwegian translation of “agile”). The conference be two days of lightning talks before lunch and open spaces after lunch. The program is in the final stages of being finalized as we speak. There are still a few open seats.

Site Updates - rob.sh - 18 years ago - eng
Not that I am expecting a large number of people to have anything to say about what I post on this site - but I just added a comments system using the Django FreeComment system. The contrib comments module seems to have a load of features - and did just about everything I was hoping of it! There’s an excellent tutorial on the Django wiki . Feel free to tell me I’m posting rubbish at any time :-)

Site Updates - rob.sh - 18 years ago - eng
Not that I am expecting a large number of people to have anything to say about what I post on this site - but I just added a comments system using the Django FreeComment system. The contrib comments module seems to have a load of features - and did just about everything I was hoping of it! There’s an excellent tutorial on the Django wiki . Feel free to tell me I’m posting rubbish at any time :-)

It’s been a while since I promised to write top five unit testing tips, so I guess I should better start writing #2. As with my first example this one is based on a real-life story. Your code is worth nothing if it can’t be tested. Change your code to make it more testable. In my last project, we used a pipes and filter architecture, with messages being passed forward through a chain of services.

I was reading an entry posted by Brett Carr on Nominet’s techblog today entitled “ipv6 It just works”. Unfortunately, for IPv6, and for the sentiment behind this message (IPv6 can be run pretty easily!), in my experience, IPv6 - it doesn’t just work! It’s easy to dismiss the previous sentence, given that many networks aren’t designed to run IPv6, and there’s kit out there that’s just not IPv6-capable yet. When building the AS29636 ....

I was reading an entry posted by Brett Carr on Nominet’s techblog today entitled “ipv6 It just works”. Unfortunately, for IPv6, and for the sentiment behind this message (IPv6 can be run pretty easily!), in my experience, IPv6 - it doesn’t just work! It’s easy to dismiss the previous sentence, given that many networks aren’t designed to run IPv6, and there’s kit out there that’s just not IPv6-capable yet. When building the AS29636 ....

I don’t normally post just a link to another blog, but More thinking about “Agile” vs “Waterfall” by Jason Yip is just too important. It the most well-argued, well-referenced, short post I’ve seen about the subject. Here’s a taste: Be careful about saying that Waterfall is more disciplined. The waterfall model is simple and structured but the “discipline” is in following prescribed steps as opposed to “discipline” in thinking. The second ki..

Wordle - jhannes.github.io - 18 years ago - eng

Warnings are useful. You get warnings from your IDE when you write something that might be a bug. You have probably made your program print out warnings or error messages when something goes wrong. But too often, we down in the sheer volume of warnings. Then it’s impossible to separate the relevant and important warnings from the noise. To make warnings useful again, I use a zero-warning tolerance policy. Even if the warning is irrelevant, ..

Geohashing , as introduced by the awesome web comic xkcd , is an spontaneous adventure generator. The geohashing algorithm uses the current date and the day's Dow Jones Industrial Average to generate a new location for each region in the world. Geohashers then use various means to reach that location in search for fun and adventure. As out there was beautiful autumn weather, and I needed to go somewhere to air my thoughts, I ....

Geohashing , as introduced by the awesome web comic xkcd , is an spontaneous adventure generator. The geohashing algorithm uses the current date and the day's Dow Jones Industrial Average to generate a new location for each region in the world. Geohashers then use various means to reach that location in search for fun and adventure. As out there was beautiful autumn weather, and I needed to go somewhere to air my thoughts, I ....


Sometimes it feels like I’m stating the obvious. But the fact that users only care about the interface of the service is something we often say, but seldom understand. If this is true, how can we think that we can develop the interface as an after though to the central system. Not all your users might be human. And the computerized users are treated even worse. If the non-human users also care about the interface, how do we think that they ..

Data Mining - boyter.org - 18 years ago - eng
So a quick update. I spent 2 hours or so yesterday working on the netflix data mining. I basically just tidied it up and started testing. I was almost finished and was about to post a blog with results, but decided I wasn’t happy with the results. It turned out there was a bug but that my code which worked out how related users are wasn’t as effective as I thought it would be. See I used the vector space index to calculate how similar users..


I’ve made two new interesting discoveries about wpa_supplicant since writing my last blog post on the subject. (Actually, I pretty much made both of them while reading documentation in order to write it, and have been lame about writing them up). Using wpa_gui It turns out that wpa_gui not only allows you to select existing networks, but also to scan for and add new networks to your configuration file. In addition, you can run it as yoursel..

I’ve made two new interesting discoveries about wpa_supplicant since writing my last blog post on the subject. (Actually, I pretty much made both of them while reading documentation in order to write it, and have been lame about writing them up). Using wpa_gui It turns out that wpa_gui not only allows you to select existing networks, but also to scan for and add new networks to your configuration file. In addition, you can run it as yoursel..

Today I sold my car to a guy from France. He took a plane to Vienna yesterday, this morning we met, he looked at the car, we took the contract to a notary office, we paid in his cash into my bank, then took my number plates to a insurance company who canceled my insurance (even though it was with a different company), and gave us temporary number plates (precondition was the contract had to be notarized).

autocutsel - blog.nelhage.com - 18 years ago - eng
As most of you probably know, X has several different mechanisms for copy-paste, used by different applications in different ways. I know some people who use them deliberately, juggling two pieces of text in different clipboards at once, but for me, it’s always just been annoying. When I copy something, be it by Gnome C-c, emacs C-w, or selecting it in an xterm, I then want to be able to paste it again, no matter what mechanism I use.

autocutsel - blog.nelhage.com - 18 years ago - eng
As most of you probably know, X has several different mechanisms for copy-paste, used by different applications in different ways. I know some people who use them deliberately, juggling two pieces of text in different clipboards at once, but for me, it’s always just been annoying. When I copy something, be it by Gnome C-c, emacs C-w, or selecting it in an xterm, I then want to be able to paste it again, no matter what mechanism I use.

So everyone in the “blogosphere” is going on about Google Chrome . From one day to the next, a bunch of personal blogs written by random people I don’t know which I for some reason subscribed to all suddenly had 1 new entry – subject “I like Chrome”. A bit like a few days before when Mozilla released some new feature and exactly the same thing happened. And now if I write about Chrome I am one of them as well….

There’s a bunch of stuff online about the Shimano Dura-Ace Di2. And there’s a lot of comment online, people saying that they feel electronic-shift is unnecessary, and over-complicated. I’m mostly interested in why I might want to ride Di2, and I think there’s a bunch of reasons that I would want to, despite all the negative comments that are flying around! So, the big thing that I see as an advantage in the system is the fact tha....

There’s a bunch of stuff online about the Shimano Dura-Ace Di2. And there’s a lot of comment online, people saying that they feel electronic-shift is unnecessary, and over-complicated. I’m mostly interested in why I might want to ride Di2, and I think there’s a bunch of reasons that I would want to, despite all the negative comments that are flying around! So, the big thing that I see as an advantage in the system is the fact tha....

6 visitors online