The network owner where I have my current server is not very good at maintaining proper DNS and reverse-DNS records (!), and I consider it to be really important for mail servers to have those properly configured. In order to workaround this issue I’m now renting a Virtual Private Server (VPS) that allows me to set the reverse-DNS record myself, and that is the new SMTP server for my domains.
I checked the mail log from time to time to see that things were working properly, and after a while I noticed that a number of SMTP servers were refusing mail to me. My server had been listed in The Spamhaus Exploits Block List (XBL) for some reason! Why?
My server was actually listed in the Composite Blocking List (CBL), and it was listed because it sent a bad HELO in its SMTP conversation. After a minor wild goose chase I realized that I simply had forgotten to change myhostname in /etc/postfix/main.cf from the default! I corrected the hostname setting in postfix, verified that HELO was correct, requested unlisting from CBL and things worked fine the next day.
(Continued from Highway to Dell, part five.)
Yesterday I noticed a problem with ssh on the Dell Inspiron 1525: I could ssh in any direction between the laptop and other computers on the same wireless network, but not to a computer outside of the wireless network. The issue was already reported as Bug #237894: I cannot connect to any server. Conection hangs up at "channel 0: open confirm rwindow 0 rmax 32768". The solution – as documented in the comments to the bug report – is easy but a bit unexpected: Disable the wl driver and use ndiswrapper for the wireless network interface! As I already had ndiswrapper working in Ubuntu 7.10, i only had to reboot after disabling the wl driver and the ndiswrapper was used instead and ssh worked!
(Continued from Accelerated Agile on Øresund Agile 2008.)
After two days of workshops, Wednesday was the conference day. Two sessions specifically addressed distributed Scrum: having teams, or part of teams, in different geographic locations. The presentation by Scrum co-creator Jeff Sutherland was great but also a bit utopian while the other, by Arto Vihavainen and Muqeet Kahn from Qvantel, was not only interesting but also very down to earth. Tobias Fors from Citerus had a very the best presentation slides and Henrik Kniberg told a great tale of Scrum and XP adoption.
Next year’s conference, obviously Øresund Agile 2009, will be in Copenhagen on May 12-14. Add it to your calendar right now!
Yesterday I participated in the Accelerated Agile workshop at Øresund Agile 2008. It was attended by both developers and non-developers. Some parts of the workshop were common for the two groups and others were separate. Me and another developer actually did both TDD and pair programming! BestBrains, the company that organized the workshop, had prepared an Eclipse project in a Subversion repository, using Maven to build and with CruiseControl for automated build on commit. We pair programmed on an MS Windows machine but I tried on my Ubuntu Linux machine to and it worked fine.
Update Photos and comments from BestBrains.
Today, on the first day of Øresund Agile 2008, I attended the Agile Architecture workshop held by Jim Coplien. He is a really great speaker! Some things that stuck in my head:
- Don’t use TDD, it destroys architecture because it makes the programmer focus on individual methods, losing the bigger picture on the way
- Don’t bother with unit tests, they make a bigger code base (equal amounts of application and unit test code is not unlikely), meaning more defects! The system tests should be enough
- A subset of system tests that run in less than ten minutes should be used as a smoke test.
- For interactive systems he was able to unify Agile software development, Model-View-Controller(-User) and Object Orientation.
- MVC inventor Trygve Reenskaug was referred to a few times, and Jim told us that Trygve’s Data-Collaboration-Algorithm (DCA) was going to be the next big thing in software development! (This will be the seventh hit or so on a Google search for "Data-Collaboration-Algorithm". Maybe I should make a dedicated blog post about it.)
- Domain Specific Languages (DSLs) are bad because they add new languages to learn when new people should work on a system, and it takes years to create a good language.
- UML could be used to visualize a system, but should be generated from source code. Quote: "No hand should ever touch a UML diagram."
Food for thought, isn’t it?
The list above is unfortunately a little short on things that Jim advocates but I need some good sleep before the Accelerated Agile workshop tomorrow and my writing would not be half as good as hearing him saying it.