There's a very specific feeling a person gets in their stomach when they realize that something they've been working so hard on has reached a fork in the road. Something that was created to make things easier could potentially now do something that is anything but. This was the feeling I had yesterday while working on adding some core functionality to the front-end side of Noteworthy1. Despite the months of planning, the detailed system schematics, and all the work that had gone in to building the web server components, I missed a crucial element that will now make (what should be) a simple function very, very difficult to implement. I fucked up, to put it lightly.
Noteworthy has become an interesting project. Many people know how much I detest WordPress and the various arguments I've gotten involved in with the core development team as my code was consistently rejected, and Noteworthy is the answer to the years of inefficiency and excessive server loads that comes with running a site2 that is proudly powered by WordPress. Noteworthy is currently powering four sites containing over 4,000 blog posts, 130,000 Tweets, millions of IRC entries, and a multitude of other meta content on a virtual machine with just 512 MB RAM. Over 9,000 pages are served daily, and the server load rarely exceeds 0.05 during rush hour. Considering how technology has advanced by leaps and bounds over the last decade, this is how a blogging platform should work. Let people blog the way they want, and stay the heck out of the way.
Alas, I need to go back to the drawing board with one particular component of the web engine, specifically the content caching class, but it shouldn't stand in the way of the August release date for Noteworthy. Hopefully this little setback will remind me to stay focused and carefully plan all of the core features before writing the first line of code. Sometimes I do get ahead of myself though.