Older blog entries for mstarch (starting at number 22)

Spent the weekend at my fathers new house away from the computer (well almost :-)). Read an annotated book-style danish version of Dantes "Comedy". Reading the entire book in verse form was just a bit more than I dared, but reading the revised version was interesting, because the author had intermixed comments that related the original story to Dantes contemporary history. One of the most interesting things I realized was that the part about being "lost in a dark wood" which was also the thought that was the central aspect of "in a dark wood wandering", was also one of the central themes in "Comedy". Ah well, I may be a litterary nimwit, but I still find it fascinating :)

I have been following the debate about "recovering from a morale slump" with interest. Although I wouldn't say I suffer from writers block to any bad extent generally, I know the feeling of not being motivated. I think one of the most true points made was the one about the necessity of feeling that the work one does matter somehow. I think thats one of the central problems of software construction as it is today.

Everyday thousands, in fact millions, of programmers write software that share so many similarities that it would be a far stretch of the imagination to talk about the "art" of software development. An analogous example from "real life" might be the contrast between an art painter, and a painter of walls. Both use paint, but the big difference lies in the artist making a unique work, whereas the painter of walls is simply painting "yet another wall".

Perhaps the average everyday programmer just has to come to terms with him just being a "painter of walls" in that sense. It's tempting for the everyday programmer to think he's an art painter. But there can only be so many art painters. We must strive to become art painters, and use this striving to avoid thinking about that what we're currently painting is walls.

I've finished "In a dark wood wandering" which is a very well-written story about factional strife in medieval feudal France in the early 15th century. I am now going to read an old classic that I've heard about for years but still haven't taken the time to read - Steve McConnells "Code Complete". I'm looking forward to it - he really knows how to write books that are both educating but also entertaining to read. If it wasn't because he obviously has deep knowledge of the subjects he writes about you might be tempted to call him a giant fuckwit :-)

Right now I really feel like starting to write on a a medieval strategy game incorporating elements of feudal obligations, trade and factional strife. The problem is that I know myself too well to believe that I would be able to see it through before I loose my enthusiasm. So, if you're reading this, are very dedicated and are also a world-class graphician, then send me a mail ;-) (like that would ever happen)

I hacked together a small basic set of dx8 sprite/texture classes, and it's just great how much the dx api has improved since earlier versions :-)

11th of september was a strange day, and somehow the days continue to be strange.

I am anxious about how the world will look as a result of the attack on the US. Maybe something good will come of it, but I doubt it. I understand the rage of the americans, and I think retribution is justified, but I fear nothing good will come of it. I watched CNN from just after the second plane hit the WTC and it was really weird to just stand and see the plot unfold - the buildings burning and then falling down, and afterwards the news about the pentagon and the believed car bomb outside the state department.

... also in the news (we are all becoming cnn zombies);

I have now received a new more game-enabling computer at home, and has also begun to toy around a bit with directx 8. Last I had a serious look at directx was around directx5, and my how the api has changed since then. But thankfully it has changed to the better :-) I really just love the thought of vertex and pixel shaders, and really hate that it's not a Geforce 3 I ordered ;-)

I have read Microserfs for the umpteenth time, and I am now reading "In a dark wood wandering" by Hella Haase, which takes place in medieval france in the beginning of the 15th century. It's very much concerned with intricacies of high politics, and has a dark looming feeling over it which is kinda inspiring. It's also funny to read the introduction about how the book was translated from its original language dutch, to english in a process that took over 25 years, because the translater after several years died during translation, whereafter the almost finished manuscript lay in his appartment for 20 years until it was salvaged after a fire. Reading that story reminds you how warped our modern idea of deadlines sometimes seem.

I really hate hardware. (sometimes I hate software too, but at least that can be fixed)

I've been reading Steve McConnells "Rapid Development" this last week. I really love his way of writing. Very sure of himself, and always backed up by relevant citations to empirical studies to show for it. I'm sure the book has given me a keener eye for project process dynamics, and I can hardly wait to try to put it's advise into use at work somehow and over time.

I was glad to see in the past week, that the demo scene yet again seems to receive some deserved attention in the medias. Wired had an article about assembly01. I have always admired the dedication, commitment, patience and hard work it must take to compete in demo competitions. Of course there are many of the demos that are not-so-cool, but every once in a while a classic pops up, that demonstrates why demo-making is a real art form. Purple Motion rules :-)

Finished the first of 3 books in a historical novel about Alexander the Great. Now I have to go and find the other 2 somewhere, but I fear they won't be in the bookstores (grumble).

Actually did some weekend coding (the first in a long while), trying to make a decent freecell ai player. I havent made it complete its first game yet, but it seems to be doing fairly well up to the point where it gets confused by long sequences of sorted cards. I guess I'll have to make some special support to detect situations where it's advantageous to move an entire part-column of cards onto another column.

I found good use of the "design patterns" methodology, recognizing the benefits of the command pattern in representing the different permutations of the game state for the decision tree. I have a game state that contains the state of a game at a specific moment. The ai subsequently tries to play a predefined number of moves, where it for each move adds all possible moves from that situation into a list. Each move is assigned a weight depending on how much is gained by performing the move, and this is weighted together with an overall combination of the weight of the obtained game state. Weights are calculated for all attempted moves, and the list is sorted by weight. The next iteration subsequently considers follow- up's to the N best states obtained in the previous iteration. I really am not sure if this will be sufficient to produce a working ai, and I really don't care about the performance. It's just "a bit of fun". I will work a bit more on the ai tonight, tweaking the weights and adding some special moves coded as sequences of basic commands.

Came home for a relaxing week in my mothers summer house. Read "The early history of Rome", which is pretty much a year-by-year rundown of the happenings in the early days of Rome from its founding in 753 BC, until around 370 BC. The interesting part is that it's one of the great surviving comtemporary histories, written by Livius around 20 BC. The thought of reading a book that actually 2000 years old is fascinating in itself (although of course it was in an english translation ;-)).

Read some of Design Patterns. Obviously a classic. Most interesting part was recognizing patterns one has used for different purposes countless times, but still with some extra rationale as to when that particular pattern is useful, and what it's drawbacks/benefits are, that adds some extra perspective to the design process (or something like that :-)).

Now I'm looking forward to reading "Code Complete", in my little game of catch-up to some of the software engineering classics.

I really agree with lkcl's commentary on the mono project subject. Building a brave new world of free software is fine, but if you're going to keep up with the development budget of a multi-billion dollar company, you're in a hurry.

I think that visionary projects like Mono is what Linux needs, but perhaps they should have tried building some of the more basic system building blocks that Linux lacks instead. On the other hand, facilitating .net applications may be a way to avoid some of the system infrastructure demands that "normal" applications would otherwise confront Linux with.

I've started reading "Design patterns". It's an obvious classic, sort of like a zoo of class structuring techniques with rationales. I have also received 2 books about the history of philosophy, and Livy, "The Early history of Rome", which I hope to find time to read during my vacation next week.

Back from Sicily. The weather was hot, and the island is incredibly beautiful. We spent the first week in Taormina, and drove around the last 4 days, to Syracusa, Agrigento and Palermo. If you're mind-numbingly bored, you can check out some pictures here.

Now a week of work awaits me, before I'm going for away for another week - this time in my mothers summer house.

I'm looking forward to reading "Design patterns" which I've finally acquired. Otherwise, I've been reading a bit on the vacation about the thinkings of Wittgenstein and Schopenhauer.

I've also bought the expansion set to Diablo - Lord of Destruction. Just thought I'd write that, so I can look back in time at some later point, to see where it went wrong ;-)

3 days before I'm going to Sicily for 2 weeks :-) The search engine finally went online a few weeks ago, and has (thankfully) run without any problems since then. Now I've started working on some new functionality that is needed in another search engine related project.

I was on a very nice company picnic a week ago, where we visited the prime minister of Denmark, and saw his house, and was showed around by his wife, who is also an active politician, but in the european parliament. It was a bit weird sitting there, listening to a guy you otherwise only see on television, but it was pretty interesting, and definitely a funny experience.

I have become addicted to freecell! Yes, it's true - what you would normally think unthinkable has happened. I have now played almost 200 games in the last 3 weeks, and soon I will be forced to uninstall it, because it's just too silly.

Today is a day called "Sankt Hans" in Denmark, where it's customary to burn a fires on the beaches in celebration of the longest day in the year (which is actually a few days before). I bicycled to Charlottenlund, and saw a huge fire on the beach. Nothing special, just thought I might as well write it.

Today I also read a small introductory text about the authorship of Søren Kirkegaard. It was interesting, but at the same time, it would probably be more healthy to spend my time reading something a little less depressing.

A little about my trip to Silicy. I'm going to be away for 10 days, and I'm travelling with my father and my little sister. We're going to spend the first week in Taormina (have you seen "The Big Blue"?), and the last days driving around on the island. I think the history of Sicily is very exciting - it's very few places in the world that has been influenced by so many different cultures, and I really love the mediterranean and Italy in particular.

13 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!