<?xml version="1.0" encoding="UTF-8" ?><?xml-stylesheet type="text/xsl" href="/css/feed.xsl" ?>
<rss version="2.0"><channel><title>Recent Writing | Mark Story</title><link>http://www.mark-story.com/posts/rss</link><url>/posts/rss</url><description>Recent writing and musings of Mark Story</description><language>en-us</language><managing-editor>mark@mark-story.com</managing-editor><item><title>Creating easy reports with pivot tables </title><link>http://www.mark-story.com/posts/view/creating-easy-reports-with-pivot-tables</link><guid>http://www.mark-story.com/posts/view/creating-easy-reports-with-pivot-tables</guid><description>	I&#8217;ve been working on a project that collects various surveys and stores the data very much like below.

	

	While this is a data structure is very normalized and provides a flexible base to build various surveys with. What it does not provide is an easy interface for building reports.</description><pubDate>Sat, 19 Jul 2008 18:45:49 +0000</pubDate></item><item><title>Auth and ACL an end to end tutorial pt.2</title><link>http://www.mark-story.com/posts/view/auth-and-acl-an-end-to-end-tutorial-pt-2</link><guid>http://www.mark-story.com/posts/view/auth-and-acl-an-end-to-end-tutorial-pt-2</guid><description>	If you are looking for part one go here

	In the last article we created the basic models, controllers and views for our Auth and Acl controlled app as well as initialized the Acl tables.  We also bound our groups and users to the Acl through the use of the AclBehavior.</description><pubDate>Sun, 13 Jul 2008 16:40:14 +0000</pubDate></item><item><title>Auth and ACL an end to end tutorial pt. 1</title><link>http://www.mark-story.com/posts/view/auth-and-acl-an-end-to-end-tutorial-pt-1</link><guid>http://www.mark-story.com/posts/view/auth-and-acl-an-end-to-end-tutorial-pt-1</guid><description>	Now, there are many tutorials out there for Auth and ACL in CakePHP.  However, none of them (as far as I know of) cover putting together Auth and ACL from beginning to end.  That is what I&#8217;m going to do in this article.  I am splitting the article into two parts;  the first about setting up our app and getting the Aros running, the second on building Acos and putting it all together.</description><pubDate>Mon, 07 Jul 2008 00:37:57 +0000</pubDate></item><item><title>Introducing the Webservice Behavior</title><link>http://www.mark-story.com/posts/view/introducing-the-webservice-behavior</link><guid>http://www.mark-story.com/posts/view/introducing-the-webservice-behavior</guid><description>	As webservices grow so does the need for being able to communicate with them in an easy fashion.  This simple blog alone uses 2 webservices.  The recent tracks at the bottom is a feed I pull from Last.fm and my spam protection is provided by Akismet. When first building my site I looked for an already built solution and found a partial solution in Felix Geisendörfer&#8217;s WebModel.</description><pubDate>Fri, 04 Jul 2008 03:55:39 +0000</pubDate></item><item><title>More dogfood</title><link>http://www.mark-story.com/posts/view/more-dogfood</link><guid>http://www.mark-story.com/posts/view/more-dogfood</guid><description>	Well I just got back from a wonderful 2 week vacation of europe.  My wife and I went to Amsterdam, Rome and Paris, for an art-geekout.  We went to every museum we could and saw tons of beautiful works that really need to be seen in the stone and paint.  We took tons of photos and I hopefully will find the time to do some painting based on them in the upcoming months.</description><pubDate>Sun, 29 Jun 2008 21:14:39 +0000</pubDate></item><item><title>Eating my own dogfood Upgrading to CakePHP RC1</title><link>http://www.mark-story.com/posts/view/eating-my-own-dogfood-upgrading-to-cakephp-rc1</link><guid>http://www.mark-story.com/posts/view/eating-my-own-dogfood-upgrading-to-cakephp-rc1</guid><description>	Well today I took the time to upgrade to CakePHP 1.2 RC1 in the spirit of &#8216;eating your own dogfood&#8217;. I got the usual warnings about vendor() being deprecated. I also took the time to switch over all my Bindable calls to the fresh core Containable Behavior. Which for the most part consisted of changing restrict() calls to contain() calls.</description><pubDate>Fri, 13 Jun 2008 05:31:54 +0000</pubDate></item><item><title>CakePHP RC1 released</title><link>http://www.mark-story.com/posts/view/cakephp-rc1-released</link><guid>http://www.mark-story.com/posts/view/cakephp-rc1-released</guid><description>	Earlier today a CakePHP 1.2 RC1 was released.  You can read the full changelog
or read the official announcement to learn about whats been going on since the beta. Also download a new Cake and smell the fresh icing.</description><pubDate>Thu, 05 Jun 2008 00:39:27 +0000</pubDate></item><item><title>PHP&#039;s isset() and arrays</title><link>http://www.mark-story.com/posts/view/php-s-isset-and-arrays</link><guid>http://www.mark-story.com/posts/view/php-s-isset-and-arrays</guid><description>	Earlier this week I learned that isset() behaves a little differently than I had expected when dealing with arrays.  Now I already knew that isset() would return false on a variable not existing, or being set to null.  However, I was not expecting it to return false on an array key existing and being set to null.</description><pubDate>Sun, 01 Jun 2008 23:04:07 +0000</pubDate></item><item><title>Contributing to your first open source project.</title><link>http://www.mark-story.com/posts/view/contributing-to-your-first-open-source-project</link><guid>http://www.mark-story.com/posts/view/contributing-to-your-first-open-source-project</guid><description>	I was recently asked to join the development team at CakePHP a position I graciously and excitedly accepted. And although I&#8217;m still a bit wet behind the ears, I thought I would share some of my experiences in how you can get involved with Open Source Software.</description><pubDate>Sat, 24 May 2008 23:51:36 +0000</pubDate></item><item><title>Hacking the CakePHP FormHelper Adding Required Indicators</title><link>http://www.mark-story.com/posts/view/hacking-the-cakephp-formhelper-adding-required-indicators</link><guid>http://www.mark-story.com/posts/view/hacking-the-cakephp-formhelper-adding-required-indicators</guid><description>	Indicating to the user which fields are required is something that increases usuability, helping the user fill out the form more effectively and efficiently.  These visual cues have absolutely nothing to do with the structure of the document, and would best be handled by CSS.</description><pubDate>Wed, 14 May 2008 16:56:41 +0000</pubDate></item><item><title>CSS expressions in IE and scoping</title><link>http://www.mark-story.com/posts/view/css-expressions-in-ie-and-scoping</link><guid>http://www.mark-story.com/posts/view/css-expressions-in-ie-and-scoping</guid><description>	All versions of Internet Explorer from 5.5 forward support CSS expressions.  If you are not familiar with CSS expressions in IE, they are a powerful and non-standard way commonly used to plug the gaping and vast holes in IE&#8217;s CSS support.</description><pubDate>Wed, 07 May 2008 01:28:49 +0000</pubDate></item><item><title>Code Coverage in CakePHP 1.2 Test Suite</title><link>http://www.mark-story.com/posts/view/code-coverage-in-cakephp-1-2-test-suite</link><guid>http://www.mark-story.com/posts/view/code-coverage-in-cakephp-1-2-test-suite</guid><description>	Super fresh in the SVN builds of CakePHP 1.2 is the new code coverage analysis.  If you are living on the bleeding edge of cake development or just want a preview of the neat things to come once 1.2 is complete read on. 

	The guys at debuggable have contributed a fantastic tool to the testing suite for CakePHP 1.2.</description><pubDate>Wed, 30 Apr 2008 23:45:20 +0000</pubDate></item><item><title>Hacking the Form Helper and Editing Multiple Rows with CakePHP 1.1</title><link>http://www.mark-story.com/posts/view/hacking-the-form-helper-and-editing-multiple-rows-with-cakephp-1-1</link><guid>http://www.mark-story.com/posts/view/hacking-the-form-helper-and-editing-multiple-rows-with-cakephp-1-1</guid><description>	CakePHP 1.2 is a fantastic improvement over 1.1.  However like many, my work has a stable release only policy.  So I&#8217;m stuck using 1.1 at work for the time being. But after drinking the 1.2 juice, 1.1 is missing some of the potent automagic flavours. First up editing multiple rows in models.  The stock syntax is lacking in that it doesn&#8217;t support this at all.</description><pubDate>Sat, 26 Apr 2008 15:01:14 +0000</pubDate></item><item><title>CSS Resets and why I love them</title><link>http://www.mark-story.com/posts/view/css-resets-and-why-i-love-them</link><guid>http://www.mark-story.com/posts/view/css-resets-and-why-i-love-them</guid><description>	I&#8217;ve been a bit out of the loop due to the awesome weather we&#8217;ve been having in toronto as of late.  I&#8217;ve just read through Jonathan Snook’s article about CSS resets and how he doesn’t use them  and while I can totally understand his position and how he is okay with browser variances and typographic quirks.</description><pubDate>Sun, 20 Apr 2008 05:04:09 +0000</pubDate></item><item><title>Understanding MVC and CakePHP</title><link>http://www.mark-story.com/posts/view/understanding-mvc-and-cakephp</link><guid>http://www.mark-story.com/posts/view/understanding-mvc-and-cakephp</guid><description>	Continuing with the trend of CakePHP information here, I&#8217;m going to cover some of the acronyms and lexicon of CakePHP.  I hang out a lot on #cakephp and there are repeating trends in some of the questions that get asked so hopefully I can answer some of those questions here. As well as provide a bit of my personal experiences.</description><pubDate>Sun, 20 Apr 2008 04:18:24 +0000</pubDate></item><item><title>Fancy routing examples with CakePHP 1.2</title><link>http://www.mark-story.com/posts/view/fancy-routing-examples-with-cakephp-1-2</link><guid>http://www.mark-story.com/posts/view/fancy-routing-examples-with-cakephp-1-2</guid><description>	Routing in CakePHP is quite flexible in how you can route your urls to your controllers and actions.  Offering both variable replacement and regex routing.  You can route almost any parameter that is set by dispatcher and more.  So lets try a few of these.</description><pubDate>Tue, 15 Apr 2008 02:34:49 +0000</pubDate></item><item><title>Geshi Helper for CakePHP</title><link>http://www.mark-story.com/posts/view/geshi-helper-for-cakephp</link><guid>http://www.mark-story.com/posts/view/geshi-helper-for-cakephp</guid><description>	GeSHi or the Generic Syntax Highlighter is a simple yet powerful syntax highlighter for many languages. Implemented in many CMS. When I wanted syntax highlighting for my postings I decided to implement GeSHi. I wanted to share my implementation of GeSHi as a CakePHP helper.</description><pubDate>Sat, 05 Apr 2008 15:56:09 +0000</pubDate></item><item><title>Creating RSS feeds with CakePHP and extensionless routing </title><link>http://www.mark-story.com/posts/view/creating-rss-feeds-with-cakephp-and-extensionless-routing</link><guid>http://www.mark-story.com/posts/view/creating-rss-feeds-with-cakephp-and-extensionless-routing</guid><description>	Making RSS feeds and alternative content types other than HTML opens a lot of options in how your content can be used, displayed and combined. In prior version of cakePHP webservices were indicated by prefixing a url with the desired content type so an xml version of a blog index might look like xml/posts/index.</description><pubDate>Fri, 28 Mar 2008 00:58:29 +0000</pubDate></item><item><title>Relaunch!</title><link>http://www.mark-story.com/posts/view/relaunch</link><guid>http://www.mark-story.com/posts/view/relaunch</guid><description>	 Well the redesign and rebuild is complete.  I&#8217;ve gutted my site and rebuilt it from the ground up. There are more changes than just a shiny new design though.  With this redesign I&#8217;m shifting the focus of the site around a bit as well.</description><pubDate>Mon, 24 Mar 2008 20:48:20 +0000</pubDate></item><item><title>Changes, they are a comin</title><link>http://www.mark-story.com/posts/view/changes-they-are-a-comin</link><guid>http://www.mark-story.com/posts/view/changes-they-are-a-comin</guid><description>	Well Merry Christmas and Happy New Year to everyone.  I&#8217;ve been busy as always and have put up a new character painting in the Digital Section.  This is the first painting that I&#8217;ve done in Photoshop that is approaching the quality and feel of my oil work.  As time is always at a premium these days, I will probably be doing a few more digital paintings.  They are easier and less fussy to work on than oils.</description><pubDate>Sat, 29 Dec 2007 23:38:00 +0000</pubDate></item></channel></rss>