in reply to RedWolf MonkChatter
What actually surprised me is that I was convinced that I had used XML::Simple for parsing the chatbox XML (I wrote it a long time ago), but I just looked and I also did manual parsing. The chatbox XML is so simple that I didn't feel the need for it. I may have to update that some time. I did use XML::Simple for the NewestNodes module, though, since the output is much more complex. And XML::Simple is very easy to use. Interestingly, I don't remember the XML modules being problematic to install.
Another thing that surprised me is how similar the code is. Comparing your do_update() with my PerlMonks::Chat::getallines() shows a very similar logical structure, even though the code itself is different. Amazing!