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

Top five signs that you might not be working on an agile project: Your iterations do not produce anything that could be put into production You’re not testing your work You tasks are called “code the UI for the foo”, “update the bar component” and “test the work done in the previous iteration” Your iterations are called “specification”, “testing”, and “preproduction” And the top sign that you might not be working on an agile project: You mi..

Yesterday it was announced that Merb and rails would merge and be released as Rails 3.0. I never saw this coming, and to be honest I am super happy that it did. I’m glad the the Rails and Merb core teams understand the value of both frameworks, and they can now enhance Rails with the best ideas from Merb. I’m still going to hole my breath to see how the team members points of view clash or come together… but so far its looking like a grea..

This is firstly a reminder for myself, here is a great example how to fire up a thread to perform long operation on iphone, without blocking reactivity. Stanford CS 193P iPhone application programming is still the best place to find optimised example that works. All this examples was taken from this courses, see chap 10 & 11 about TableView optimisation ` // LetsMakeAThreadAppDelegate.m // LetsMakeAThread // // Created by Evan Doll on 10/27..

Rails::Rack::Metal - amerine.net - 17 years ago - eng
As usual there has been quite the storm over a commit in edge rails. Link Some people don’t understand Metal, but its pretty simple and I wanted to put out a post explaining it and hopefully you learn a little bit. Metal(s) allows you to design data access points that bypass most of the rails routing and rendering code. So instead of exposing data through normal controllers we can write better performing actions through metal(s). In....

Complete with blinking light! It’s amazing what you can make with a soldering iron and the spare electrical parts you have in your basement. If you are wondering what the heck I am talking about, just watch the BBC sitcom “The IT Crowd” Series 3 Episode 4.

Complete with blinking light! It’s amazing what you can make with a soldering iron and the spare electrical parts you have in your basement. If you are wondering what the heck I am talking about, just watch the BBC sitcom “The IT Crowd” Series 3 Episode 4.

Yes, I am definitely a CrackBerry user. As a result, when I saw a new book on Amazon called CrackBerry: True Tales of BlackBerry Use and Abuse , I simply had to order it and pay the inflated shipping and US exchange rate to have it delivered to Canada. And I am glad I did - it was a hilarious read, and I must admit that I can relate well to the crazy stories within.

Yes, I am definitely a CrackBerry user. As a result, when I saw a new book on Amazon called CrackBerry: True Tales of BlackBerry Use and Abuse , I simply had to order it and pay the inflated shipping and US exchange rate to have it delivered to Canada. And I am glad I did - it was a hilarious read, and I must admit that I can relate well to the crazy stories within.

Python 3.0 is here. Guido and others released Python 3.0, a major “backward” incompatible python release. It was a necessary choice to remove many old libraries, rework the std library, and change some behaviour. You can see it all in What’s new in Python 3.0. The most visible change is maybe the print statement, print is now a function: print “toto” becomes print("toto") The % operator whis is supplented by the format() method:

I’ll let you in on a dirty secret: my first paid programming task was to make custom modifications to an oscommerce shopping cart. I cut my teeth on PHP that weekend and learned through trial by fire how much good, clean code (with no global variables!) matters, and how much it really SUCKS when everything is in the global scope. I always died a little inside each time I had to make a modification… I once started refactoring the code on the..

Here’s my new system for conquering the world. It will solve all my problems, at least the artistic ones. Ingredients: sketchbook pencils of various hardness/thickness/sharpness white gouache paint , water and brushes Uni-ball micro pen Mitsubishi 0.28 micro pen 2-3 Kuretake brush pens filled with black ink, and diluted ink Kneadable erasers Helix battery-powered electric eraser Presto correction pen My standard sketchbook (I go....

Here’s my new system for conquering the world. It will solve all my problems, at least the artistic ones. Ingredients: sketchbook pencils of various hardness/thickness/sharpness white gouache paint , water and brushes Uni-ball micro pen Mitsubishi 0.28 micro pen 2-3 Kuretake brush pens filled with black ink, and diluted ink Kneadable erasers Helix battery-powered electric eraser Presto correction pen My standard sketchbook (I go....

I became a programmer so that I could spend time creating software by programming. I don’t want to waste my time managing low-quality code. Does your code work the first time your test it out? Mine certainly never does. So if I hand over the code to someone else, I’m sure to get a bug report back that will take up my valuable programming time. This much is obvious to most developers.



Agile software development has learned about informative workplaces and stop-the-line quality management from lean manufacturing systems. Here are my implementations of it at my last project: All is well This video shows how our project looked when all is well. The large green light in the front shows the status of our build server. The green flashing lights show the status of our staging and production server. For the production server, th..

Update Thanks to Alan Palmer for this trick that makes this whole post unnecessary: If you use !path {java.class.path} You get the classpath that fitnesse was called with, without the need for changing the fitnesse code. Regular readers of my blog may remember that I’ve researched how to get the classpath from the FitNesse-process inherited by the Fit process that FitNesse spawns when it runs a test. This trick is an easy way to get around ..

I have just spent an hour debugging the following problem. Suddenly my Jetty Java web server didn’t work any more. Starting it claimed: Starting Jetty: OK Yet connecting to the port (telnet localhost 8080) showed that the port was not open. Looking in the logfile (/var/log/jetty6) showed the following error: 2008-11-20 12:08:47.477::WARN: failed SelectChannelConnector@null127.0.0.1:8080 ... Caused by: java.nio.channels.UnresolvedAdd..

I have came to the realization tonight that I’ve failed at working on any of the ideas I’ve had outside of $work (including blogging here and @ counix.com ). Most of the projects that I have thought about personally have never seen the light of day. Now I’m sitting here writing this in hopes that I can figure out what the problem is. Is there such thing as “personal developer block” At $work I have to balance my main responsibilities (ma....

I’ve learned a great deal since being out in the valley, first, is the confirmation that I do love the atmosphere. Second that I really miss the fall, but more importantly I’ve learned a lot that I feel is useful in a startup environment. The startup environment and business model is a very unique one, especially in recent years. It seems to not require a business model to get someone just to give you $10 million and hope you come out with ....

I’ve learned a great deal since being out in the valley, first, is the confirmation that I do love the atmosphere. Second that I really miss the fall, but more importantly I’ve learned a lot that I feel is useful in a startup environment. The startup environment and business model is a very unique one, especially in recent years. It seems to not require a business model to get someone just to give you $10 million and hope you come out with ....

As I watch the news and posts roll in each day with new layoffs in the valley, ranging from large corporations such as HP and EA, down to the small guys such as seesmic, imeem, searchme, and zillow to name only a few, there still seems to be a demand for certain job skills. While as I look down the list some of these I dont feel are any longer demanded skills, and others will soon be there. In part I want to call attention to facebook first....

As I watch the news and posts roll in each day with new layoffs in the valley, ranging from large corporations such as HP and EA, down to the small guys such as seesmic, imeem, searchme, and zillow to name only a few, there still seems to be a demand for certain job skills. While as I look down the list some of these I dont feel are any longer demanded skills, and others will soon be there. In part I want to call attention to facebook first....

This article is a repost of my comments to the question on how to implement hashCode and equals on stackoverflow There are some issues worth noticing if you’re implementing hashCode and equals for classes that are persisted using an Object-Relationship Mapper (ORM) like Hibernate. If you didn’t think this topic is stupidly overcomplicated already! Lazy loaded objects are subclasses If your objects are persisted using an ORM, in many cases y..

There’s a command called: ORADEBUG SETORAPNAME in 11g. It allows you to attach to a named background process as shown below, so you don’t need to figure out what’s the PID or SPID of the target process. SQL> oradebug setorapname dbw0 Oracle pid: 9, Unix process pid: 5506, image: oracle@linux03 (DBW0) SQL> SQL> oradebug setorapname pmon Oracle pid: 2, Unix process pid: 5490, image: oracle@linux03 (PMON) SQL> Even though you probably..

There’s a command called: ORADEBUG SETORAPNAME in 11g. It allows you to attach to a named background process as shown below, so you don’t need to figure out what’s the PID or SPID of the target process. SQL> oradebug setorapname dbw0 Oracle pid: 9, Unix process pid: 5506, image: oracle@linux03 (DBW0) SQL> SQL> oradebug setorapname pmon Oracle pid: 2, Unix process pid: 5490, image: oracle@linux03 (PMON) SQL> Even though you probably..



This is a rough Norwegian language translation of the article JKE Day 1: Toyota Kyushu - The Manufacturing Ballet by Kevin Meyer (improvements on the language are very welcome, comments on the contents should go to Kevin). The reproduction has been authorized by the author. Unlike the rest of my site, this article is not available under creative commons license. Jeg kom over en artikkel som demonstrerte hvor bemerkelsesverdig lean productio..

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....

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.



30 visitors online