Profiling in PLT Scheme

I've suspected for a while that the select-entries routine in Wordup was the slowest part of the code. That's just an assumption, following Bruce Eckel's rule that most programmers profile programs by guessing. Since select-entries opens and parses every file with the extension ".atom" in the directory designated for posts, it's a pretty easy assumption, but I took the opportunity to learn something about the PLT Scheme profiler. To enable profiling in the IDE, you open the Language | Choose Language... dialog, then select "debugging and profiling" under the Dynamic Properties options (you may have to click the Show Details button to get this to show up). After that, you simply run your program as usual, then go to View | Show Profile to view the results.



My top 3 results were http-get, which is the top level routine handling GET, then the outer loop in select-entries, which iterates over the posts, then SSAX:XML->SXML, which is invoked when parsing the post files. Of course, none of this is rocket science, but I continue to be pleased with PLT's feature set.

— Gordon Weakliem at permanent link

Categories

I'm debating whether categories are a good thing. On the pro side, it allows people to subscribe to just one category of posts; I know there's at least one person subscribed to the programming/lisp category. On the other hand, I don't remember what categories exist, and create them sort of ad-hoc anyway. I've finally quit categorizing every post, and I have the ability to post in multiple categories, but that helps the situation only partially. For example, the category weblog/wordup relates to the software that runs this weblog, and the category programming/lisp relates to posts on Lisp and Scheme programming. Since Wordup! is written in Scheme, I tend to crosspost in those categories, but not always. Anyway, I'm wondering about the overall value of categories. The fact that I'm aware that someone is subscribed to the programming/lisp feed does make me want to carefully consider how I categorize posts, but OTOH, the overall staticness of the situation is frustrating.

— Gordon Weakliem at permanent link