Many folks have asked me to share the results of the evaluation that resulted in my choice of Graffiti to power misfitgeek.com, so here it is.
My blog ran on .text until it was orphaned when it’s author went to Telligent to work on Community Server. It’s since been forked by Microsoft’s own Phil Haack – see Subtext.
I tried the 1st version of Community Server but it was just way more than I needed for a blog.
At the time I was doing some Podcast work and Subtext (at the time) lacked support for RSS Enclosures so I moved to DasBlog.
At some point I migrated to BlogEngine.net – which I loved, but I had lots of little “issues”. I couldn’t find a theme that I liked; I also felt that, though it had many slick features, it was missing some niceties. Adding permanent content on the home page required editing the theme, which meant switching themes was a pain, etc. Though it was fast and had good support for static pages, eventually, my frustrations brought me back to DasBlog.
DasBlog has served me well, but then I had started to have some performance issues.
I run my log in a Hyper-V Instance at MaximumASP. I have between 6/7 hundred posts, most have images, and nothing has been really optimized.
DasBlog uses .xml file based storage and I started to find that comment administration had become VERY Slow. Since I moderate comments on my blog and since DasBlog lacks any batch moderation feature (difficult with an .xml based storage mechanism) the performance issue I was having became a problem.
There was also another factor that was asking me to consider a move. I want to publish more.
Code, snippets, etc….. But Microsoft has been experiencing an increased attack phenomenon of late. It seems like former MVPs (perhaps pissed off about the “former” and the ALT.NETers seem to have taken to attacking everything coming out of DevDiv these days. They expect PERFECTION in version 1.
The result is, we need to be more careful about publishing things like code, whitepapers, non “Product” applications, etc.
We need to have a “review and rework” process for just about everything, this takes time and more time means more expense and less productivity. The end result can’t help but be a decrerase in resources for the development community.
So, to avoid have to go through “process” when I just want to publish some sample code, I’ll do ot on my blog. (My code may suck, don’t blame Microsoft, I know many of my readers are way smarter than I am, if my code sucks, instead of telling me how much it sucks, fix it and I’ll post YOUR code instead J )
Now I know that I can “blog” code, but I wanted the ability to have “permanent” landing pages for certain things.
So…. I went on a search for an engine to meet my needs.
It went something like this…..
1.) WordPress.
WordPress is a GREAT application, but it’s written in PHP. Though I do a lot of work in PHP I strongly prefer to do new development in .NET and I want to be able to extent by publishing platform with .NET code.
I thought about it long and hard, but ultimately wanted a pure .NET solution.
2.) DasBlog
Since I’ve used DasBlog so much, and since its open source, I thought I might “start over” with Das Blog. Obviously, DasBlog works well; Scott Hansleman wrote it and uses it for his own blog. But, I want things that Scott hasn’t added yet so I kept looking.
3.) BlogEngine.net
I’m a Fan. It’s fast, it’s clever, and it supports stand alone “pages”, but……
Its default storage mechanism is .xml (like DasBlog). There is apparently a SQL provider option but I couldn’t find much info about it. Though the community seems to be growing, the themeing options seem to be the same as when I tried it before.
BlogEngine.net is defiantly in my future, it’s free, open source, and the “current” community favorite.
But I decided to keep looking.
4.) Dot Net Nuke.
I have to admit that I haven’t historically been a DNN fan.
It’s a pretty heavyweight framework, but it’s not a publishing platform as compared with thinks think Nuke, Drupal, Joomla, etc.
It’s pretty good if you really know what end result you are looking for but, though it’s “free”, there is a heavy commercial circumference around DNN and most of the plug in functionality I would be interested in is neither free or cheap.
The free DNN blog module seemed “ok” but seemed to be not too much more than a post container. I “guessed” that real customization would be a pretty big investment.
So, I decided to continue my search while making a mental note that DNN has come a lone way and I need to re educate myself to using the latest version.
5.) SharePoint
SharePoint has come a long way…… but not far enough for my need.
The biggest disqualifier is that there still seem to be difficulties using MS AJAX, the ACT and some 3rd party controls.
Since SharePoint is developed in the Microsoft Office Organization (not NDP, where I hang my hat), I decided to avoid the complexities.
Maybe someday I’ll do Developer Community work for the Sharepoint team J
6.) Umbraco.
I know, there are some good .NET CMS projects happening. I though about Kentico, Mojo, Rainbow (eek), and Sitefinity.
But, the only one that I really looked into was Umbraco.
Why ?
Well, first it’s free and open source but with real commercial support available ($$$)
Second, the guy who wrote Umbraco (Niels Hartvig)was at MIX this year and we were able to get him to come and give my team an in-depth demo of Umbraco.
Now, we are NOT an easy crowd (Me, Tim Heuer, Scoot Hansleman, Jesse Liberty, Simon Muzio), but Neils did a great job. We hammered him. “Show how to do THIS ?”. “Why did you do that THAT way ?”
Let me tell you, I WANTED to use Umbraco. I WILL use it for future projects, but not this one.
My reasons are these ……
· It’s flexible, really flexible. I’m sort of in a hurry. Umbraco wants to be embraced.
· I couldn’t find a BlogML importer. (I’ve since found one http://blog4umbraco.codeplex.com/Wiki/View.aspx)
· Lack of canned themes (though I found some http://www.freeumbracotemplates.co.uk)
7.) Telligent Community Server
Before evaluating CS I rejected Graffiti CMS, but since you are reading this served up by Graffiti, I’ll leave that part of the story for last.
I know that CS is not Open Source but it’s free for developer communities, it’s “the standard”, and has an avid ecosystem.
I was pretty much set when I got coached by former softie, ASP.NET Guru and Telligent CEO Rob Howard who told me that the NEXT version of CS really won’t be satisfying for use by a single publisher and he really encouraged me back to Graffiti.
8.) When Graffiti first came out I wanted to like it, but I didn’t.
It was my fault. I think, in hind sight, I just wanted Graffiti to work like stuff I already new (Nuke / Drupal / Joomla / WordPress)…. It didn’t.
Plus, Graffiti came out of the gate to a lot of fanfare. Then, wham, bang, boom….. nothin’ !
Well, not really nothing, just s few quiet some-things. (Version 1.1 & 1.2 that included not only fixes but new features.)
2 new releases from a growing company on second (and lower end) product is actually pretty good, but we all want everything yesterday so expectations were high.
Though no one from Telligent has told me this, I’m sure the economy problems got in the way a bit. Telligent had to do some reorganizing of staff to cut costs. Everyone think that once you get venture capital the money worries are over, but just the opposite is true.
Once you take VC money, you’re on the clock ! There are people (with control) watching when you spend and were (and sometimes second guessing your decisions) and the investors are tracking what you are doing with their money against revenue to make sure you are on track to make their investment a good one. The plunging economy (as an excuse) is of no interest to your investors, they just want to make sure you are gonna get them their money back.
Still, I’ve heard the community chatter that Graffiti is an orphaned product.
Being an old timer and being connected to the community has one or two advantages (to offset all the disadvantages ) and one is that I have access to decision makers, so I connected with Rob and asked him outright. (See Rob’s recent blog on the topic here http://graffiticms.com/blog/what-is-the-future-of-graffiti/)
Graffiti v.next is planned, alive and well. Some additional resources are scheduled and Rob & Company are still passionate about Graffiti CMS.
So, I installed it again and committed to take a real good look at it.
Install is REALLY easy and there are multiple data storage options. The default is VistaDB with is fast, easy, and requires no additional “server” software to be installed. SQL Server is supported so I can always migrate if circumstances require it.
Once installed on my local dev machine I needed to import data from my old www.JoeOn.net site (Blogengine.net) and www.misfitgeek.com (DasBlog)
BlogEngine.net has a BlogML exporter and Graffiti CMS has a BlogML importer and they both worked flawlessly. (And if you’ve worked with BlogML importers and exporters you know this is not always the case.)
Graffiti CMS has a DasBlog importer, so I gave it a try. Kaa-Boom. Crash! (I think it was a NULL Object Reference). So, I remembered there was a DasBlog BlogML utility on the MSDN Code Gallery (http://code.msdn.microsoft.com/DasBlogML) so I tried it.
Kaboom ! Similar crash.
Well, to make a long story short, before I started to moderate comments I got lots of junk comments including comments in apparently unsupported character sets and a few hacking attempts. Some of the older comments were causing any type of I/O of the DasBlog .xml content files to induce fits.
But, I’m tenacious. The one really nice thing about Das Blogs .xml file storage is that each DAY has 2 .xml files. One is for Posts and one is for Comments.
So, I moved the files to the import directory and imported them one day at a time. When the importer crashed, I simply deleted the comments file for that day and imported only the POSTS file. It worked fine.
Now that I had my own real data into Graffiti, I could really start to see if it would handle my needs.
Graffiti is NOT a blogging engine. It’s a publishing platform it is a “light weight” CMS with strong blogging features.
First I needed to pick a theme. I did, and you are looking at it, but I don’t really like this theme. It’s not “me”, but, Graffiti themes have specific functionality. I’ll need to get back to my theme as I want a different look and there are some features I need.
The first is the categories widget is incomplete (for my needs).
In Graffiti, content is assigned to categories (or they are uncategorized), and blog posts go in the blog category.
Other stuff goes in a non-blog category. (Code Snippets, Videos, Etc.)
Each category has it’s own RSS feed.
Problem. Each item of content can only be assigned to a SINGLE category. This is a problem for me because I need to be able to select specific posts to be syndicated to specific Microsoft developer web properties. (Silverlight related posts might need to get syndicated to www.Silverlight.net for example.)
Enter “Tags”. In Graffiti, I can tag a piece of content with as many “tags” as I like.
Problem. Graffiti CMS does support RSS feeds by Tag.
This began to look like a real showstopper for me. I know that Graffiti was built to be extended and since the data was in a VDB database I was sure I could figure out how to create an RSS feed by tag, but how much work would it be for me to learn the Graffiti API, understand the Database Schema and write the code to pull the feed that I needed.
Enter the sheer power that is Twitter. (I often say that if it weren’t for Twitter I’d have no social life what-so-ever.)
First I started Tweeting about stuff I was trying to do with Graffiti. Terri Morton (former Graffiti PM at Telligent and now helping keep www.asp.net up and running at Neudesic) was full of answers for me. (Supporting a product she no longer worked on from a company she no longer works for.)
Still, this apparent RSS inflexibility was a show stopper for me.
I “could” have still used Graffiti and come up with a category strategy that I could stick to for my RSS needs but it really wouldn’t be ideal. Still, it would work until I could figure out a better solution.
Then, I got a Tweet from my new hero, Scott Watermasysk.
Scott tweeted me this ….
@MisfitGeek drop this into your Graffiti site: http://dl.getdropbox.com/u/24455/tagrss.ashx Then just do tagrss.ashx?tag=tagname
…. And this …..
@MisfitGeek if you have access to ISAPI Rewrite, pretty urls: RewriteRule ^/tags/(.+)/feed/ /tagrss.ashx?tag=$1 [NC]
He wrote the RSS by Tag handler on his lunch break !!!!!!!!!
This experienced proved a couple things to me.
1.) If you “grock” GraffitiCMS the custom extensions capability is huge, and this is something I need.
2.) The “core” Graffiti CMS guys are proud of their work and very active.
So….
I’ve been on Graffiti CMS a week and I still like it a lot.
Bacuase it’s “different” than what I’m used to it’s taking me some time to get up to speed.
Though not Open Source the extensibility model is powerful and I’m looking forward to build some customization.
Please feel free to send me thought and suggestions. The CONTACT link now works all the time as my inbound messages from the contact form are now 4 times what they were pre-Graffiti !
Thanks





















I´ve been testing Graffitti CMS and it looks great but the information about extensibility is not pretty clear. Do you know some links in where i get content about it?
RE: My move to Graffiti
Technorati Tags: ASP.NET , CMS , Graffiti Many folks have asked me to share the results of the evaluation
Graffiti is awesome, glad you are enjoying it so far!
nice
I tried to use Graffiti Before and it was horrible. The themes that are available are pretty much igly except for one that is called the Training theme. Go ahead and buy and try installing that theme. Guess what I was not able to. It was complete waste of money for me. They tried to help and told me reset and start all over and when I did that I cannot even logon to my site. I tried communicating with the support people in forum but they banned me from the site because of me complaining about their product. It was complete waste of $99 for me. I run most of my sites with DNN and it is 1000 times better than Graffiti. Core blog module is not so great but you can some decent ones much cheaper than Graffiti.
I used Community Server as well and that is a nice product by telligent. I assumed that Graffiti will be as great as Communtiy Server and bought it without any thoughts. But I regret my decision until now. My recommendation try it before you buy it so you don’t end up wasting money like me.
This is the exchange which Tareq is referring to: http://support.graffiticms.com/t/1312.aspx. I went to a lot of effort to help him, and did not ban him from the site.
Well, sometimes people wanna blame the application (and sometimes it actually IS the applications fault. )
All I can tell you is that I’m not a Telligent Fan Boy, I’ve been critical in the past, but in my experience – Graffiti just ROCKS and is a great value at $99.
I like Sitefinity. The support is great and documentation is getting better, but the product is very polished!
I used dnn for a couple of years and didn’t like it at all..
Is the support okay for Graffiti? I found some bad reviews and forums that stated they were not supporting the product during some periods. This is a concern for a paid product.
Hey Joe, thanks for providing some insight into your CMS/blogging platform choice.
For anyone interested in giving Sitefinity a look, keep in mind the community version is free and can be used on commercial web sites.
Thanks for your blog, I’ve been a fan for a couple years now.
On a side note, I really like that cartoon image of your head. I want to do that with my website also. Do you happen to remember who did the cartoon for you?
Hi, we’ve been using Kentico CMS for our site, community and blog for a few months and I must say we are pretty happy. They also have a free edition that can be used for smaller sites or blogs and their support is second to none!
Thansk Dave – I actually don’t know who did the character. The DE team in the UK had it made for me !
Great post and awesome theme. I like this one better then your old blog – especially the green, which is similar to the green of DNS
How much were you paid to endorse Graffiti? The sad thing being many developers would actually read this and think you were making an un-biased, well informed decision
First Stephen – since this is my blog – bite me !
I am not paid one single red cent, but I understand that GraffitiCMS’s rich feature set may have been to advanced for you and that you are angry that it made you feel intellectually inferior.
Norm – I’m leveraging Telligent and getting great support !
Stephen: you are a moron.
Not everybody has to be "paid off" to endorse a product. The product speaks for itself, is worlds apart from many others on the market for this purpose, and is downright simple to use. And, with the wide array of importers and database migration tools, is very simple to get rolling quickly.
I mean, if the Chalk language is too much for you, using generic logic, and modular theming is a concept that makes your head spin like a top..
Might I inquire if you truly are one of these "developers" you are speaking for, or just a sad, angry individual who wishes they can code with the rest of the big boys?
Joe, thanks for this article. I’m new to ASP.NET and have been looking over the different CMS and blogging tools with really no clue why I should pick one over the other. This article will help me… get a clue.
Thanks for sharing your decision making process.
Terri I see you have unblocked me I was able to access the site. For all of you who are thinking to buy Graffit just go to their bug forum support.graffiticms.com/…/7.aspx and checkout their response time(lousy). Also check how many people are having issues using or installing it.
tareq – please do not use my blog to spam against Telligent. If you would like to post intelligent detail about your dissatisfaction, you are free to do so. But 4 "Graffiti Sucks" posts is simply spam.
I’ve always wondered why people buy/use pre-packaged CMS systems… I mean, how hard is it to build one yourself? Certainly the benefits outweigh the little bit of extra time needed to build it… I built a CMS that updates 3 linked web applications/sites in less than 2 days– and one of them hooks into MOSS 2007.
Anyhow, thanks for the tutorials Joe. You’re the best.
I am a fan of Graffiti CMS as well. I wanted to respond with all the recent attackes, bad news, or whatever term one may want to use about the attacks on Microsoft and the ASP.NET website. All I can say everyone has an opinion and these opinions have a time and place to be voiced and we all should really think before we speak.
Having used both graffiti and umbraco for client CMS projects, I have to say that I will choose umbraco hands down over graffiti. Graffiti is okay, and does what it’s supposed to do. Umbraco is just so damn flexible, I can easily adapt any design to umbraco. I could also do that with graffiti, but it wasn’t nearly as intuitive. I’m just glad to see some realisitic alternatives to wordpress etc.
RE: My move to Graffiti
For Good Or Bad Everyone Has An Opinion
I run my own site on Graffiti CMS, and I will admit that it’s been a very decent product for me.
However, having said that, I would add that if I were starting a blog *today*, I would not choose Graffiti. Furthermore, I wouldn’t advise anyone to switch an existing blog to Graffiti right now either. If you want to know more about my reasoning on that, feel free to read the following post:
leedumond.com/…/open-source-or-
I’m glad Joe is enjoying the level of support that he has with it. It sure is nice to have powerful, well-connected "insider" friends. Unfortunately, the rest of us haven’t been as fortunate, as the level of support for Graffiti users has been close to nil lately, and the company’s communication (or should I say, *lack* thereof) with its established user base has been inexcusably poor.
In my opinion, Graffiti need to become OSS in order to survive. I just don’t think Telligent is prepared to give it the time, attention, and resources it needs (I’m not blaming Telligent here; I understand that Graffiti is not a core priority for them, and that’s perfectly okay). I just hope if and when the time comes, they would opt to graciously offer it to the community and let us give it the love and attention it deserves, rather than letting it just wither away.
Just my $.02.