BlogCFC 5.9.2.004 (and a question).

Thanks to Matt Woodward for finding another issue under OpenBlueDragon. I've just released a minor update that corrects an issue when no blog entries exist. It did not throw an error under Adobe ColdFusion, but, it is a fix that makes sense in general, and may have been exposed in other circumstances as well. In other words, get it. It's a one line change to getEntries, which as you guys know, I heavily modified in the previous version for performance reasons.

New topic: BlogCFC6. I spent a lot of time working on skins for BlogCFC6. I actually got it working... but it was hellishly complex code. The skins weren't, just the code behind it. My objective had been: "Thou shall not see CFML in skins." And I got that working. But... the more I think about it, the more I think it was overkill.

What I'm thinking of now is a skin solution that works with custom tags. So for example, to display an entry, it runs a custom tag and the attributes are passed to it. Layout - ditto. So this means there will be CFML involved, but - and this is the kicker for me - BlogCFC will use a 'contract' with the custom tags. By that I mean, when you design the Entry custom tag, for example, you will know that you will ALWAYS get certain attributes passed in. This means that you can upgrade w/o worry. So let's say I add the Cowbell feature to the blog. Cowbell could be passed as an argument to your (your being your skin) custom tag, and since you don't use it, your skin won't throw an error.

Does that make sense? I'm thinking this could greatly simplify things. I'm also thinking of XML definitions for skins that make it easier to modify w/o making a whole new skin. Kind of like skin arguments.

So imagine some skin called X, made by a great designer. He wants to have a few different versions of the skin, where 100% of the code is the same, but the CSS is _slightly_ different. The XML definition of the skin could point to one CSS, and if I wanted to use the 'varient', I simply edit the XML to point to the other CSS.

That's probably not greatly defined above, but I think you get the idea.

Comments welcome.

FYI - upcoming BlogCFC 5 changes. Andrew Scott found some issues with XML-RPC (my favorite feature, ahem) that will go into the next build. I also plan on getting Twitbacks in soon. Now that I'm a heavy Twitter user I'd love to see this added to BlogCFC.

TweetBacks
Comments
Flávio's Gravatar Hi Raymond,
i'm trying to download blogCFC from RiaForge but the site is so slowly for me, all the times i triyed to download the file i got it corrupted.

I don't know why but the speed of download is no more than 1.2kbps for me. I'm from Brasil and my internet connection is a ADSL2+ 10mbps.

Do you have another link like a rapidshare to download the BlogCFC file?

Sorry if I posted this comment in a wrong place, and sorry my english too!

Thank you so much
# Posted By Flávio | 3/30/09 1:11 PM
Raymond Camden's Gravatar Weird. RIAForge runs very fast for me. Can you download via SVN?
# Posted By Raymond Camden | 3/30/09 1:12 PM
Flávio's Gravatar I can not use svn.
Can you make temporary link like rapidshare?

I really tryed to download the file many times, but all the times i have the file corrupted. I alredy tried to download by proxy but got the same error.

Thank you!
# Posted By Flávio | 3/30/09 2:04 PM
Raymond Camden's Gravatar I can't right now - maybe someone else can. What I can do is when I release my next update (tonight), I'll post a copy of the zip on the blog entry.
# Posted By Raymond Camden | 3/30/09 2:07 PM
Flávio's Gravatar Ok Raymond,
I stay waiting for the link...

Thank you so much for this and all other projects!
Hugs from Brasil
# Posted By Flávio | 3/30/09 4:17 PM
Doug's Gravatar My only thought on this is K.I.S.S. (Keep it simple stupid)

I don't know how many times I've programmed something that was totally ingenious, only to come back to it a month or two later and ask my self, why the heck I made it so complicated.

I think a little CFML is ok, if it keeps everything simple and easy for people to understand. This should also make it easier for core updates down the road, which means less work on you and the teams part.

Just my 2¢
# Posted By Doug | 3/31/09 1:31 AM
Tom K's Gravatar I've learnt a lot by looking at Drupal themeing;
There are "core" variables which will always be available to the theme;

Personally, I'd be happy with just a dedicated scope: say request.theme, where you could set all theme related vars etc.

Eitherway, it would be good if you could release the theme code earlier rather than later - i'm sure there's a few people out there (myself included) who would do a theme (best one gets a t-shirt and their theme included as the default) etc...
# Posted By Tom K | 5/19/09 9:07 AM
Raymond Camden's Gravatar Tom, this is exactly what I'm considering for now. My initial Theme build, which was completed actually, supported running with NO code at all, just tokens. But I felt it got too messy. I'm switching to a custom tag/include approach. So for example, the Entries template will always have "q" passed to it where q is a query of entries. (I won't call it q, but you know what I mean.)

Frankly - no idea when I'll start up v6 dev again. My current focus is spearheading some RIAForge improvements.
# Posted By Raymond Camden | 5/19/09 9:12 AM
Brad's Gravatar Ray,

One thing you might want to consider is making each part of the blog engine a custom tag that can be plugged into any page design. So, essentially, it would just be an HTML theme, with tags spread around the page to implement the different functions.

For instance you could have tags for the following:

* Last N number of entries.
* Entry detail.

Most everything else would be a system of "pods" that are a series of children which belong to one parent (let's call it a pod organizer). This would allow you to pick the elements that you want to go in the left or right columns and also to set their order.

The biggest problem with this idea is styling the tag output to match the rest of the page, but this could be controlled by a separate style sheet.

Keep up the great work.
# Posted By Brad | 5/28/09 10:35 PM
BlogCFC was created by Raymond Camden. This blog is running version 5.9.6.001. Contact Blog Owner