## Posts tagged with 'graffiti'

A couple of years ago I did a series of posts about TVM, the Time Value of Money ( 1 , 2 , 3 ). Because they were mathematical in nature, I had to write a few math expressions and equations. Way back when I’d have written them out in the Equation Editor in Word, and taken screenshots, but this time I decided to go for a browser-based solution: MathJax . In essence, I’d write the expressions in LaTeX format, such as x = \frac {-b \pm \sqrt{b^2 - 4ac}} {2a} , and have it rendered as: \[ x = \frac ...

## Blog issues. Or GraffitiCMS issues. Or GoDaddy issues.

Apologies to all if you saw a whole bunch of posts appearing and disappearing in the past hour. I’m having – all of a sudden – extreme problems with publishing a blog post from Windows Live Writer to this blog, which is hosted on GoDaddy. This first happened on November 5, but I thought it was a transient issue and ignored it. And then over the weekend I wrote the “adding parentheses” post but it would not publish, no matter what. I finally published it just now with...

The story so far : in essence I’ve added AddThis and Google +1 support to this blog using their “simple” markup. Unfortunately, the simple way breaks XHTML validation using the W3C validator because of the non-standard attributes ( addthis:url , addthis:title ) and elements ( g:plusone ). As I said previously, time to break out the JavaScript. Let’s do this in reverse order, starting with the +1 button. The reason for doing it this way round is that Google’s documentation was easier to follow, and...

Up to now, I’ve used an old plug-in to GraffitiCMS to serve up a set of sharing buttons on this blog. Old as in the code used to have (until I took it out) a link for Furl – remember that? No, I don’t either. photo © 2006 MyEyeSees | more info Prompted by a blog post by Nick Hodges , I signed up to AddThis and have now added their sharing toolbar to my posts. It wasn’t quite as simple as it made out though. I have two main type of pages where I want the sharing toolbar to appear: the index page and...

I haven’t been too happy about the facilities for commenting in GraffitiCMS ever since I started using it. Great for minor feedback, but awful for pasting code when crafting an implementation detail as an example. Since StackOverflow uses MarkDown for its comments and I’ve grown used to that, I decided to experiment adding it to my blog here as well. photo © 2006 David Boyle | more info (via: Wylio ) Problem number 1 : finding a JavaScript implementation of a MarkDown parser. As Jeff Atwood found...

## Adding support for iPhone with GraffitiCMS

This blog uses GraffitiCMS as the blogging engine. This software has now been open-sourced by the original developers, Telligent, and is available on CodePlex . Although it’s pretty full-featured and does most of what I want and need from a blogging engine (and has lots of features I don’t use) there is no built-in support as yet for providing a special view for mobile devices. Consequently, when you view the site on an iPhone, say (since this is what I use as a mobile phone), it displays the wide...

## Bug with comments and GraffitiCMS

One bug with Graffiti that's been driving me nuts ever since I started using the app over a year ago is that it assumes that a commenter will naturally add the http:// to the beginning of their website name. If they don't, the code that displays the comment later will force the URL to be absolute (essentially by prepending the Graffiti application's base URL to the name). Of course that link is then nonsense and leads to a 404 if someone clicks on it later. Since I use Scott Cate's 404 manager ,...

## Open source GraffitiCMS and IIS6

Color me stupid, but then again I was under some emotional pressure at the time. The open source version of GraffitiCMS has some changes in it compared to the final official commercial release. Well, duh, I suppose; and of course I'd mentioned some of them in my previous blog post on the subject. There's another change, one that bit me good and proper. My old friend Scott Bussinger alerted me to it pretty much straight away, but I wasn't able to properly diagnose the issue without internet access...

## Converting to the open source GraffitiCMS

Once GraffitiCMS had been posted as open source, I downloaded it with the intent of upgrading this site to it. There wasn't much news on the Graffiti CodePlex page about what had changed since the latest official release (1.2). In particular, no news whether any of the proposed plans from the beginning of the year had been implemented, partially or not. Since I wanted to fix certain problems with the product, I had to first make sure that my site worked with the released open source version. After...

## GraffitiCMS has been released as Open Source

It's finally happened. After almost a year of no progress on GraffitiCMS, the blogging engine I use for this site, it's now available as open source on CodePlex , using a Microsoft Reciprocal License (Ms-RL). Go get it! Now playing: Yello - Distant Solution (from The Eye )...

Is that SEO-specific enough, do you think? Heh. Anyway, here's the situation. I started this blog using GraffitiCMS about a year ago, previously having used static web pages created with CityDesk . All my sites are hosted on GoDaddy : I went with a Deluxe hosting option which means I can host pretty much as many sites as I want to in the same single folder tree. At the time — can't remember why — I decided to stick with the default VistaDB as the database instead of opting to...

## GraffitiCMS to be released as open source

Scott Watermasysk of Telligent has just announced on Twitter that GraffitiCMS (the CMS engine behind this blog) is going to be released as open source on December 11: A few initial thoughts: First: thank goodness they've decided to do something with the product. I would have preferred, perhaps, that they added new features and functionality and brought out a new "closed" version, but this is a good second best. I wonder if they'll be using codeplex for publishing it. Second: I wonder if...

## Fixing site problems

Bang in the middle of my trip to Los Angeles for PDC, on 15th November, this GraffitiCMS site you are reading ( http://blog.boyet.com/ ) went down. Hard. It seemed to happen just after my last post as well. I added a "site under repair" default.html file to the root directory while I investigated (it would be picked up first if no filename is entered in a browser address bar). I had absolutely no idea what was wrong. I couldn't log into the site (indeed, the main page didn't even...

## Printer CSS - call to action

Ned Batchelder is a tech blogger I like to read, although he tends to deal with languages and situations I don't. Nevertheless he comes up with some great insights that have applicability to what I do and some great topics that extend what I know. In a recent post , he brought to his readers' attention that good websites should have a proper printer CSS stylesheet, so that their content not only gets rendered well on the screen, but also on paper. Paper being paper, there's no point in rendering...

## Archive Calendar for GraffitiCMS now resets stats

After a while of using my archive calendar, the statistics for page views were starting to get really skewed in favor of the archive "post". It finally got to the point where the graph that's displayed under the Reporting tab in the Graffiti control panel had a line for archive that was 5 times longer than the nearest "real" post. Since the information about the number of people using the archive system is not that interesting to me, it was time to do something about it. A bit...

## Archive Calendar for GraffitiCMS released

Well that didn't take too long. Just enough time to open up an account at CodePlex, start a new project, point TortoiseSVN at it, and upload. The biggest time sink was actually the readme file and deciding on the license (I went for the MIT license ). I've now published the Archive Calendar for GraffitiCMS on CodePlex . You can get it here . If you want the source code, you can download it from the project's repository. Now playing: Matt Bianco - Wap Bam Boogie (from Indigo )...

## Making the Calendar into a Graffiti CMS Widget

Last time I kind of trailed off. The Archive Calendar was working fine as a Chalk extension and I had a business trip to make for a week and doing the work to change it into a widget wasn't at the top of my list. Earlier this week, though, back safely in Colorado Springs, I spent a couple of hours extracting it all out as a joint widget/Chalk extension assembly, all ready for posting on CodePlex. Since this is the first widget I'd written, and since the official help page is a little, er...

## Writing an Archive Calendar, part 4b

Man, paging — the second bug I'd reported to myself in part 4 — was long-winded, mainly because I was trying to use the built-in paging system and spent far too much time tracing through Graffiti code in Reflector. In the end, I abandoned that line of attack, mainly because I think I'd been gaming GraffitiCMS by creating a "post" called archive, when it was really a list of posts, and the auto-generated default.aspx was all wrong for that purpose. Further investigation will wait for a rainy...

## Writing an Archive Calendar, part 4a

OK the first bug I reported to myself in the previous post was trivial to fix. I changed the PostReader class to add a couple of new methods GetFilteredPostsForMonth() : public static PostCollection GetFilteredPostsForMonth( int year, int month) { return GetFilteredPostsForDate(year, month, 0 ); } and GetFilteredPostsForDate() : public static PostCollection GetFilteredPostsForDate( int year, int month, int day) { PostCollection posts = GetPostsForDate(year, month, day); PostCollection filteredPosts...

## Now running Graffiti CMS 1.2

In the gap in between two shows, after posting the last blog, I downloaded Graffiti CMS 1.2 and upgraded this site. Using the shared WiFi in the theatre it took a little while, but that was all upload and download times. The actual "upgrade" was practically instantaneous ("copy these new files over the existing ones"). So, now running the latest bits...

## Quickie Chalk extension for the tags issue

I mentioned in my previous blog post that the workaround I had for displaying the tags for a post vertically, rather than as a horizontal, comma-separated list, was flawed. There are in fact two issues at play. First of all here's a magnified view of the tag list in Firefox 3.0: As you can see, the biggest problem is that the clever CSS hackery I used means that the commas are still displayed in a line after the title, like an ellipsis with tails. At normal size this isn't really visible, but it...

## So I get bored easily...

No sooner do I finish my quick series on customizing a Wordpress theme for Graffiti ( I , II , III , IV ) than I throw it all away for a — gasp — hand-written one. Yes, I got bored with the browns and went with the grays. There were two reasons for this: first, I wanted to use the entire wide-screen browser window and avoid the dead space on either side, yet still have a non-cluttered look, and, second, I wanted to use the visual ideas present in Adobe Lightroom in doing so. Adobe Lightroom...

## Customizing Graffiti CMS, part IV

(In which I continue taking apart a Wordpress theme to make it work with Graffiti . Part I . Part II . Part III .) We're finally ready for the last piece of the jigsaw. I've created the layout.view file that determines the common look-n-feel for the site based on the Chronicles theme, and the index.view file that determines what a list of posts looks like. It's now time for the post.view file, the view that determines how to display a single blog post. Apart from the comments, in effect this is much...

I noticed this a couple of weeks ago, but couldn't pin it down to anything. All of a sudden, the Graffiti application used to run this blog suddenly stopped working, throwing up its generic error page. After a little bit of investigation why, I found out that the write permissions on the blog root folder had been cleared. So I set them back, and promptly forgot about it. Well, it happened again yesterday afternoon and the only thing that I had done with regard to my website configuration was to create...

## Customizing Graffiti CMS, part III

(In which I continue taking apart a Wordpress theme to make it work with Graffiti . Part I . Part II . Part IV . ) Last time I'd set up the layout.view file and completed it by adding the @childcontent statement. Now I need to think about the other two main view files, index.view and post.view , the ones that will supply the child content. The index.view file is possibly the easiest at this stage, since we started out with analyzing the equivalent PHP file from the Chronicles theme. The index.view...

## Customizing Graffiti CMS, part II

(In which I continue taking apart a Wordpress theme to make it work with Graffiti . Part I . Part III . Part IV .) Unpacking the downloaded zip file for Chronicles gave me this set of files: OK, so I recognize the css file, but the rest are PHP files, and nothing like "layout". Oh well, time to investigate. index.php looks like it could be the equivalent of index.view , so let's take a look: 1: <? php get_header (); ? > 2: 3: < div id ="main" > 4: <? php include ( TEMPLATEPATH . '...

## Customizing Graffiti CMS, part I

There were several reasons for choosing Graffiti as the CMS for my blog, but I suppose two were at the forefront: first, it was written in ASP.NET, and second it was very customizable, even to the point of writing plug-ins in C#. Since, in theory, I know this platform, this made it an attractive choice. But, and what a big but, the documentation for all this is pretty bad. Ugly I'd say. All of the help is written with and displayed in Graffiti, and there doesn't seen to be any rhyme or reason...