/egilh

Learning by doing

January 2007 Entries

The Consumer Ombudsman in Norway has ruled the Apple's Digital Rights Management system, FairPlay, illegal as only iPods can play songs bought on iTunes: "It doesn't get any clearer than this. Fairplay is an illegal lock-in technology whose main purpose is to lock the consumers to the total package provided by Apple by blocking interoperability," Waterhouse told OUT-LAW.COM. "For all practical purposes this means that iTunes Music Store is trying to kill off one the most important building blocks in a well functioning digital society, interoperability, in order to boost its own profits."…"iTunes Music Store must remove its illegal lock-in technology or appear ...

Regular Expressions are very powerful when working with text, and in my case when detecting blog spam. I didn't feel like modifying .TEXT so I modified the DB to match comments against a list of "bad words". I replaced MT Blacklist with regular expressions after it went offline The user function below matches a string against a regular expression. It works in all flavors of SQL Server that I have tried it on (SQL Server 2000 MSDE, SQL Server 2005 standard, Express and Express with Advanced Services). It has caught more than 12.800 spam comments since it went online :-) But more on the anti spam later, this is the function: CREATE FUNCTION evalRegEx ( @source ...

Once in a while I find projects like the Lego NXT Segway that makes me feel sorry for hardly using my Lego NXT. The serious bots don't use the official Lego Mindstorms NXT graphical development environment but lower level tools like NBC (Next Byte Codes & Not eXactly C) for improved performance and added features like multithreading. But while coding in "C" makes it possible to make advanced bots it completely locks out my young kids. They are better at using the computer than my parents but they still have a long way before they start messing with threads… So, I have decided to put the "advanced" bots on the shelf for a while and have fun with the kids building ...

My ex boss, Maurizio Cunico, has written an article on MSDN on the role of the architect (in Italian). I agree with most of the points in the article but I think there is one aspect missing; teamwork. The article describes a "one man show" scenario where the Software Architect does everything. Being humble, as Maurizio mentions, also means realizing that you have limitations and have to actively seek input from the people you work with to produce the best possible solution for the client. You sometimes have to be a Jack of all trades if you work on small projects but I don't think it is a good idea on complex projects. I have seen many examples in the past where the ...

This article on DrDobbs is well worth the read: Ant Colony Algorithms. Ant systems are usually used to solve traveling salesman problems. The ant algorithm mimic the behavior of ants in the real world to find a close to optimal solution fast without spending forever evaluation of all possible solutions. Wikipedia describes the algorithm better than I ever could: In the real world, ants (initially) wander randomly, and upon finding food return to their colony while laying down pheromone trails. If other ants find such a path, they are likely not to keep travelling at random, but to instead follow the trail, returning and reinforcing it if they eventually find food ...