Hi and welcome to Ode. Glad you stopped by.
Important: Ode is very new. I'm adding content here just as quickly as I can. If something or other referred to in the weblog seems to be missing please be a little patient.
I am working on it every day and will be until this site is completely up.
-Rob
Well not quite 4, but almost that long. So first an apology is in order for anyone waiting for this!
(Luckily there aren't many of you and I'm purposefully not doing anything to promote ode until I have something released.)
I have been steadily working on Ode, primarily on the documentation. In fact, I've spent as much time on the documentation as I have ode itself. Why? I'll start by with why not.
It's not because Ode is complicated. I feel compelled to say again that anyone wanting a complex application should adjust their expectations or look elsewhere. While ode is intended to be genuinely useful as a legitimately practical online web publishing platform, it is not intended to be some kind of a riddle. For experienced programmers, the challenge will not be figuring out how ode works by wrangling with 'clever' (read obfuscated) code. If you are looking for an opportunity to test your programming mettle, you should look elsewhere. On the other hand, You will be able to understand how Ode works, every nook and cranny, and you will be able to do wonderfully interesting things with Ode in a matter of minutes. You can then spend the rest of your time doing still more fun things with Ode, or you could do other things.
So why then am I spending so much time on documentation. The answer to this question is two-fold.
Ode is intended to be accessible to anyone with a genuine interest in learning how to program. To this end I have been careful to use syntax and constructs that a student is likely to learn in an intro programming course, or read about in an intro to programming book. Moreover I have purposefully tried to avoid being terse and overly idiomatic. Ode is written in Perl, and while it is true that Perl can look like a very unique (and uniquely difficult) sort of language, there is no reason why we can't, in most cases, write Perl in such a way that it is recognizable to people coming from other languages, and to do so in a way that is not inefficient. This is true in part because of the interpreter which is very good at recognizing and optimizing code to run efficiently, regardless of how it is written in many cases. I chose Perl because it is widely available, mature, and stable, and not for any other reason. I'm not particularly concerned about writing clever Perl code.
Anyway, if we are going to serve the needs of people very new to programming, in addition to writing obvious code, we need to describe what is is doing in some detail. After all, programming languages are exceedingly concise by design, in comparison to natural language prose for example. Given this fact, it has always been somewhat surprising to me how little time and effort most programmers put into documenting their code. More surprising is how little documentation is emphasized in college CS programs, but that's a topic for another post.
The second reason is best described by a presentation I put together related to topic of documentation for a software architecture course I took recently (Spring 2008). Essentially, the presentation expresses that I feel strongly that documentation is a critically important part of software development. Feel free to take a look at the presentation if you're interested.
Other than documentation I've continued to tweak the code (much more than I anticipated I would) while working toward releasing the project.
Finally, I've added some new features and functionality. I'll write separate posts describing this work and I'll try to do a better job of posting about this sort of change going forward.
Beyond the source code itself I'm working on several themes to accompany the software, some of which are necessary to accomplish some of the things I want Ode to be able to do, e.g. syndication, in-browser editing of posts, presentations. All of these things require unique themes. Beyond these 'utility' themes, I want to include several weblog style themes with Ode.
Also, I'm putting together 'stub' addins in hopes of avoiding any confusion about how addin interfaces work.
So, none of this satisfactorily makes up for the fact Ode is not yet available to download and use but 1) I promise that will happen, and 2) I promise it will happen soon.
My personal weblog is now running on Ode. Maybe that is at least something in the way of proof that I'm aggressively working toward the goal of releasing Ode publicly.
In the interim I'll do a better job of keeping up with the Fresh Today posts, because I still like the idea.
If you have any questions for me, don't hesitate to ask. If you're wondering if Ode might be appropriate for something you have in mind, I may be able to answer your question(s) directly.
Thanks for your patience,
Rob