The P0.1K Problem
I am here with an EIP exclusive on the next impending worldwide computer disaster. Like Y2K before it, this one portends doom and gloom for many.
It is the Post 100 Problem, or P0.1K.
Doubters, liberals, procedural programmers, and gremlins worldwide only used two digits next to their burning effigies of me, El MoffDo, of the number of posts on I Built His Cage. When this post is published, and by the time you are reading this, it will already have been, the post counters will roll over back to 00.
This will cause widespread false celebration by my enemies, mistakenly believing that I have deleted this blog. The consequences could be dire.
But not to worry, my friends. You see, I, your trusted author, will quell such demonstrations and public outrage by reviewing the best of the previous 99 excursions into Programming Excellence.
This is a quantitative measure that bloggers at WordPress can see with just a few mouse clicks. It is the number of unique page views by people other than me.
- Lessons of Why Software Sucks: coming in at the number one spot, I couldn’t've predicted this one. The fact that most of the hits to this book review came from Google is partially indicative of how much software does suck. Heh.
- WinForms DataGrid Pagination: a close second was also a surprise, a rather narrowly-focused post. For a short time, this post was the most popular, having finally overtaken #4 on this list. I suppose this post owes its popularity to Microsoft’s ubiquity. Thanks, Bill.
- Dynamic Enumerations: Ah, now this is one I predicted. I had a feeling that dynamic enumerations were a common problem, and I have since been proven right.
- The Project Architecture: I know exactly why this is #4. First, I left a comment on The Daily WTF linking to this post. That comment produced this blog’s most busy day, June 26, 2008. For a long time, that boost was enough to rocket this post to the #1 spot and keep it there, until it was overtaken by the DataGrid post.
- Anatomy of an Anti-Corruption Layer, Part 1: This one is not a surprise, since the number of hands-on examples of anti-corruption layers are few and far between on the web.
Of the top five most viewed posts, only three of them on the list did I ever envision being popular. That’s the interesting thing about blogging: often the posts you think are going to be biggest hits end up being the biggest duds. And if I could find it, I’d link to the post on Coding Horror where I read that.
Qualifications for this category are those excursions which have yielded great personal programming truth for myself or for my readers. This is entirely subjective.
- Domain-Driven Reports, parts 1, 2, 3, and 4: when I faced this problem on The Project, it was epic then, and it is just as relevant today. At my place of work, there is an application that is essentially a reporting system for an existing set of data. The code is a massive multi-thousand line quagmire of lists of maps of lists of arrays.
- My Definition of Software Architecture: this post helped me clarify for myself what is and what isn’t a software’s architecture, and I have learned that the answer is highly contextual.
- The Spreadsheet Conundrum: a day at corporate-mandated training yielded one of the more thought-provoking posts on the real truth behind how behavior can be allocated in an object-oriented design. Special thanks to Ken Pugh.
- Getters and Setters: A people problem: in the long line of obsessive posts about procedural OO, this one is the most truthy. It was difficult for me to admit that I couldn’t avoid the dealing with delusional morons who pump this stuff out.
- Dynamic Enumerations, Revisited: it did my soul good to mend the harm I did in the original Dynamic Enumerations post. Don’t doubt me: my code sucks.
Most Talked About
One of the most discouraging parts of the first 100 posts was the lack of comments. But the Atwood path to blogging success told me to keep on chugging, and I did. Notice how secure I am in my blogging masculinity that I reveal the absolute numbers of comments, however comparatively low they are.
This quantitative measure is also available on the WordPress dashboard.
And yes, my own comments count, damn you.
- The Getter Setter Debate, 8 comments: no surprise here.
- The Spreadsheet Conundrum, 6 comments: special thanks to Ken Pugh for the discussion.
- Domain-Driven Method-Naming Guidelines, 5 comments
- Walking Big, Talking Small, 5 comments: this might show how active the SmallTalk community is.
- Anemic Re-use, Revisited, 4 comments
Criteria: my all-around five favorite posts.
- Anything tagged getters and setters are evil.
- I can’t believe I get paid for this: a reminder to pinch myself every now and then that I actually get paid to write code!
- Visions, Revisited: verbalizing a metaphor that I use on a daily basis was fun, and finding out that others had the same thoughts was fun as well.
- Odorless Code Dreamer: with apologies to those with actual OCD, this post is perhaps the one which as survived the longest as my current conclusion on how to deal with getters and setters.
- The Coder’s Whiteboard: this is how I operate when I am attempting Domain-Driven Design.
Criteria: the funniest Nowhere To Run strips, as judged by me.
I never thought I would make it to 100 posts. I’d like to thank all of you for reading. Here’s to 100 more.
|Announcer: You’re reading the EIP web-ring.|