<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet href="" type="text/css"?>

<Channel xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
         xmlns:dc="http://purl.org/dc/elements/1.1/"
         xmlns:dcterms="http://purl.org/dc/terms/"
         xmlns="http://purl.org/net/rss1.1#"
         xmlns:p="http://purl.org/net/rss1.1/payload#"
         rdf:about="http://quills.sitefusion.co.uk/blog">

    <title>Quills Blog</title>
    <link>http://quills.sitefusion.co.uk/blog</link>

    <description>Running commentary on the development of the Quills weblog project funded by the Google Summer of Code (2007).</description>

    <image rdf:parseType="Resource">
        <title>Quills Blog</title>
        <url>http://quills.sitefusion.co.uk/logo.png</url>
    </image>

    <items rdf:parseType="Collection">
        
        <item rdf:about="http://quills.sitefusion.co.uk/blog/archive/2009/05/27/quills-1.7.0c1-released">
            <title>Quills 1.7.0c1 released</title>
            <link>http://quills.sitefusion.co.uk/blog/archive/2009/05/27/quills-1.7.0c1-released</link>
            
            <p:payload xmlns="http://www.w3.org/1999/xhtml"
                       rdf:parseType="Literal">
<p>A short note to say that Jan Hackel has released Products.Quills and Products.QuillsEnabled and version 1.7.0c1-post1.  These are release candidates, with the 'post1' reflecting a couple of minor bug fixes that arose shortly after the initial rc1 release.</p>
<p>They're up on pypi. Give them a go!</p>
</p:payload>
            <dc:date>2009-05-27T07:49:37-05:00</dc:date>
            <dcterms:modified>2009-05-27T07:49:37-05:00</dcterms:modified>
            <dc:creator>tim</dc:creator>
            
            
            <dc:subject>Release</dc:subject>
            
            
            <dc:subject>QuillsEnabled</dc:subject>
            
            
            <dc:subject>Quills</dc:subject>
            
        </item>
        
        
        <item rdf:about="http://quills.sitefusion.co.uk/blog/archive/2009/04/30/quills-enabled-1.7.0b3-released">
            <title>Quills[Enabled] 1.7.0b3 released</title>
            <link>http://quills.sitefusion.co.uk/blog/archive/2009/04/30/quills-enabled-1.7.0b3-released</link>
            
            <p:payload xmlns="http://www.w3.org/1999/xhtml"
                       rdf:parseType="Literal">
<p>Jan Hackel has been making great leaps forward with the quills codebase recently.&nbsp; After fixing several important bugs, he released (in egg form) 1.7.0b3 versions of Products.Quills and Products.QuillsEnabled a few weeks ago.&nbsp; (We forgot to announce it at the time.)</p>
<p>Since then, if anything, Jan has picked up the pace - as can be seen from the <a class="external-link" href="http://plone.org/products/quills/issues/poi_issue_search?state=resolved">'resolved' issues </a>log in the tracker! Pending issues appear to be mainly feature requests (i.e. not for 1.7) or problems to do with remote blogging (i.e. not <em>core</em>). Still, Jan is working on the latter already, so they may yet be fixed before 1.7.0 is released... which should be soon :).</p>
<p>... yes, I'm aware that if we do make it to 1.7.0, it'll be the first 'final' release since 0.9. Quills has been 'beta' for too long, but things are looking much better now and the test coverage is really very good now.</p>
</p:payload>
            <dc:date>2009-04-30T12:30:54-05:00</dc:date>
            <dcterms:modified>2009-04-30T12:30:54-05:00</dcterms:modified>
            <dc:creator>tim</dc:creator>
            
            
            <dc:subject>QuillsEnabled</dc:subject>
            
            
            <dc:subject>RemoteAuthoring</dc:subject>
            
            
            <dc:subject>Quills</dc:subject>
            
        </item>
        
        
        <item rdf:about="http://quills.sitefusion.co.uk/blog/archive/2009/02/08/quillsenabled-1.7.0b2-released">
            <title>QuillsEnabled 1.7.0b2 released</title>
            <link>http://quills.sitefusion.co.uk/blog/archive/2009/02/08/quillsenabled-1.7.0b2-released</link>
            
            <p:payload xmlns="http://www.w3.org/1999/xhtml"
                       rdf:parseType="Literal">
<p>I've just released QuillsEnabled 1.7.0b2 onto pypi.&nbsp; You should be able to add it to your buildouts and be away.</p>
<p>(Much thanks to Tarek Ziade for helping me get windows and pypi to play nicely together via collective.dist.)</p>
</p:payload>
            <dc:date>2009-02-08T15:58:22-06:00</dc:date>
            <dcterms:modified>2009-02-08T15:58:22-06:00</dcterms:modified>
            <dc:creator>tim</dc:creator>
            
            
            <dc:subject>QuillsEnabled</dc:subject>
            
        </item>
        
        
        <item rdf:about="http://quills.sitefusion.co.uk/blog/archive/2009/01/18/how-to-use-quillsenabled">
            <title>How to use QuillsEnabled</title>
            <link>http://quills.sitefusion.co.uk/blog/archive/2009/01/18/how-to-use-quillsenabled</link>
            <description>I've been asked "How do I use QuillsEnabled?".   Here is an answer.</description>
            <p:payload xmlns="http://www.w3.org/1999/xhtml"
                       rdf:parseType="Literal">
<p>I start from the assumption that you have a functioning Zope/Plone instance and that you have correctly 'installed' the QuillsEnabled code.&nbsp; The easiest way to do this is with buildout and including the Products.QuillsEnabled egg.</p>
<p>Now, go to your Plone instance, navigate to the portal_quickinstaller, and then install Products.QuillsEnabled.&nbsp; This should lead to both Products.QuillsEnabled and quills.app appearing in your list of installed products/packages.</p>
<p>Next, create or navigate to a folder that you wish to act as a weblog.&nbsp; Click on the 'Actions' drop-down menu and select 'Activate blog'.&nbsp; You should now see that the folder has been 'decorated' with various blog-ish features.&nbsp; Most notably, it should have a selection of new portlets such as: a 'tag cloug', 'recent entries', syndication, 'authors', and a 'weblog admin' portlet.</p>
<p>Great, you're basically there :).</p>
<p>To start actually blogging, just add a 'Page' (or 'News Item', if you prefer the features offered by that) type to the folder.&nbsp; Once you're done editing your new Page-ish content, 'publish' it (in the standard Plone workflow sense) and then go back to the weblog-ish folder that you first created.</p>
<p>You should now see your newly-published post in the weblog view.&nbsp; Some of the portlets should also have a little content now to reflect your new post - i.e. 'recent entries', 'authors', and 'weblog archive'.&nbsp; If you added 'categories' (in the standard Plone keyword-ish way) to your post, then the tag cloud will also reflect this and provide you with links to listings of all posts in the weblog that have each of those 'tags'.&nbsp; These are referred to as 'topics' in Quills.</p>
<p>People can actually subscribe to syndication feeds (i.e. RSS and Atom) for either the entire weblog or for each of the individual 'topics'.&nbsp; 'Neat', I hear you say ;-).</p>
<p>Actually, there is equivalent functionality for each individual 'author' who has posted to the weblog.&nbsp; A listing of all posts made my each author is available, together with syndication feeds for them.&nbsp; 'Double neat', I hear you say ;-).</p>
<p>QuillsEnabled comes with a fair number of configuration options that are available via the 'Weblog Admin' portlet.&nbsp; Click on 'Configure Blog' to access these.&nbsp; You'll find you can adjust how much of each post gets shown in the weblog view (i.e. just the excerpt, if you wish).&nbsp; You can configure which workflow states QuillsEnabled should consider as being 'published' and which to consider as being 'draft' - which makes it easy for you to use QuillsEnabled with your own custom workflow.&nbsp; Other options are available but I'll let you find them yourself.</p>
<p>Finally, if you decide that you want to use some kind of remote blogging tool - like ScribeFire or Ecto - you can enable this as well.&nbsp; Go back to portal_quickinstaller and install QuillsEnabledRemoteBlogging. Note, though, that you will have to have included this in your zope installation/buildout for it to be available.&nbsp; It is an optional extra for QuillsEnabled.&nbsp; The QI tool install process should also install MetaWeblogPASPlugin.&nbsp; With that done, you should now have MetaWeblog API support for all your QuillsEnabled-enabled blogs.</p>
</p:payload>
            <dc:date>2009-01-18T06:35:04-06:00</dc:date>
            <dcterms:modified>2009-01-18T06:35:04-06:00</dcterms:modified>
            <dc:creator>tim</dc:creator>
            
            
            <dc:subject>QuillsEnabled</dc:subject>
            
        </item>
        
        
        <item rdf:about="http://quills.sitefusion.co.uk/blog/archive/2009/01/14/status-update-for-quills-and-quillsenabled">
            <title>Status update for Quills and QuillsEnabled</title>
            <link>http://quills.sitefusion.co.uk/blog/archive/2009/01/14/status-update-for-quills-and-quillsenabled</link>
            <description>The Quills issue collector and codebase seems in good shape and releases are imminent.</description>
            <p:payload xmlns="http://www.w3.org/1999/xhtml"
                       rdf:parseType="Literal">
<p>I thought I'd update the list on some bugs I've just closed out:</p>
<ul>
  <li><a href="http://plone.org/products/quills/issues/151">#151</a> - "Blog view should not use H3 for titles"</li>

  <li><a href="http://plone.org/products/quills/issues/120">#120</a> - "Viewing a weblog entry in the archive gives an incorrect
breadcrumb path"</li>

  <li><a href="http://plone.org/products/quills/issues/119">#119</a> - "Add comment form doesn't respect weblog archive URLs"</li></ul>
<p>I also made some (checked-in) progress on:</p>
<ul>
<li><a href="http://plone.org/products/quills/issues/145">#145</a> - "Templates should only use methods/attributes defined on
relevant interfaces"</li></ul>
<p>Finally, it would be great if someone with even *minimal* CSS
understanding could take a look at:</p>
<ul>
  <li><a href="http://plone.org/products/quills/issues/153">#153</a> - "Weblog Archive portlet renders incorrectly in IE6", where a fix has been
suggested already, but just needs to be generalised to other portlets (I
think).</li></ul>
<p>As of now, the tracker has 10 <a href="http://plone.org/products/quills/issues/poi_issue_search?state=unconfirmed&amp;state=open&amp;state=in-progress">open issues</a>.</p>
<p>By my count, 3 (<a href="http://plone.org/products/quills/issues/79">#79</a>, <a href="http://plone.org/products/quills/issues/82">#82</a>, <a href="http://plone.org/products/quills/issues/113">#113</a>) of these are exceedingly low priorities or not really issues.  1 (<a href="http://plone.org/products/quills/issues/156">#156</a>) is a translation awaiting svn commit
(the author has offered to do this).  2 are discussed above (<a href="http://plone.org/products/quills/issues/145">#145</a> and
<a href="http://plone.org/products/quills/issues/153">#153</a>).  1 should/may have been fixed already (<a href="http://plone.org/products/quills/issues/155">#155</a>).  1 has a fix in svn and is just awaiting confirmation to close (<a href="http://plone.org/products/quills/issues/149">#149</a>).  1 is in-progress by Jan Hackel (<a href="http://plone.org/products/quills/issues/142">#142</a>) but not a release blocker (IMO).  And 1 on migration
from 0.9 to 1.5 that seems old and I haven't looked at.</p>
<p>So, the tracker seems in good shape, as does the code base.  New releases are imminent for both Products.Quills and Products.QuillsEnabled.</p>
</p:payload>
            <dc:date>2009-01-13T19:42:23-06:00</dc:date>
            <dcterms:modified>2009-01-13T19:42:23-06:00</dcterms:modified>
            <dc:creator>tim</dc:creator>
            
            
            <dc:subject>QuillsEnabled</dc:subject>
            
            
            <dc:subject>BugFix</dc:subject>
            
            
            <dc:subject>Quills</dc:subject>
            
        </item>
        
        
        <item rdf:about="http://quills.sitefusion.co.uk/blog/archive/2008/07/10/introducing-plonestatcounter">
            <title>Introducing PloneStatCounter</title>
            <link>http://quills.sitefusion.co.uk/blog/archive/2008/07/10/introducing-plonestatcounter</link>
            <description>Off-topic (for a Quills blog), but I've written a small product to ease integration of a StatCounter page counter into Plone sites.</description>
            <p:payload xmlns="http://www.w3.org/1999/xhtml"
                       rdf:parseType="Literal">
<p>As part of the migration detailed in the previous post, I took the opportunity to write a small 'product' that makes it easy to integrate a StatCounter page counter into Plone sites. I had finally gotten sick of having to hack at main_template.pt in order to jam in the StatCounter code fragment. The result is <a class="external-link" href="http://pypi.python.org/pypi/Products.PloneStatCounter/">Products.PloneStatCounter</a>.</p>
<p>It provides an easy-to-use configlet for setting up the StatCounter project id and security code - as well as a couple of other slightly mysterious variables that appear to be required.</p>
<p>I made extensive use of Malthe Borch's tutorial on <a class="external-link" href="http://plone.org/documentation/how-to/adding-configuration-settings-using-zope-3-schemas-and-formlib">'Adding configuration settings using Zope 3 schemas and formlib</a>' and David Convent's tutorial on '<a class="external-link" href="http://plone.org/documentation/tutorial/customizing-main-template-viewlets">Customizing the viewlets in main_template</a>'. As such, there is little of interest in a coding sense.</p>
<p>... Except for the fact that I found it necessary to avoid registering my viewlet in ZCML as I only wanted it to be used once the product itself had been installed in a portal_quickinstaller/GenericSetup sense. As such, I had to write <a class="external-link" href="http://dev.plone.org/collective/browser/Products.PloneStatCounter/trunk/Products/PloneStatCounter/setuphandlers.py">the local viewlet registration code</a> manually and have it run in my final GS import step.&nbsp; philiKON was very helpful in pointing me in the right direction for how to do this, so thanks to him for saving me several hours of pain.</p>
</p:payload>
            <dc:date>2008-07-10T05:07:05-05:00</dc:date>
            <dcterms:modified>2008-07-10T05:07:05-05:00</dcterms:modified>
            <dc:creator>tim</dc:creator>
            
            
            <dc:subject>PloneStatCounter</dc:subject>
            
        </item>
        
        
        <item rdf:about="http://quills.sitefusion.co.uk/blog/archive/2008/07/08/site-upgrades-and-eating-my-own-dog-food">
            <title>Site upgrades and eating my own dog food</title>
            <link>http://quills.sitefusion.co.uk/blog/archive/2008/07/08/site-upgrades-and-eating-my-own-dog-food</link>
            <description>Underlying Plone upgrades and now using Quills 1.7.0b2.</description>
            <p:payload xmlns="http://www.w3.org/1999/xhtml"
                       rdf:parseType="Literal">
<p>I spent this weekend upgrading the underlying Plone instance used to host my blog.&nbsp; (This was largely because I wanted to get <a class="external-link" href="http://tim.hicks.me.uk/">my personal site</a> onto Plone 3 so I could use the NuPlone theme.)</p>
<p>In the process, I took the opportunity to migrate the blog to <a class="external-link" href="http://pypi.python.org/pypi/Products.Quills/1.7.0b2">Quills 1.7.0b2</a>.&nbsp; Doing so required me first to release 1.7.0b2.&nbsp; The only change included from beta 1 is that the migration now ensures that weblog entry workflow states are correctly handled.&nbsp; My hope is that this will address <a class="external-link" href="http://plone.org/products/quills/issues/129/">issue 129</a> in the Quills tracker.</p>
<p>Eating my own dog food has revealed a couple of bugs.&nbsp; First, portlets don't appear to work in the archive and topics areas of blogs.&nbsp; From what I recall, this works in QuillsEnabled, so the fix shouldn't be difficult.&nbsp; Second, when I tried to use ScribeFire (for remote blogging), adding a new post as a draft meant it was lost to ScribeFire (although there on the server).&nbsp; Not sure whether this is a Quills or ScribeFire bug, though.</p>
<p>Looks like there'll need to be a 1.7.0b3 release...</p>
</p:payload>
            <dc:date>2008-07-08T10:39:28-05:00</dc:date>
            <dcterms:modified>2008-07-08T10:39:28-05:00</dcterms:modified>
            <dc:creator>tim</dc:creator>
            
            
            <dc:subject>Admin</dc:subject>
            
            
            <dc:subject>RemoteAuthoring</dc:subject>
            
            
            <dc:subject>Quills</dc:subject>
            
        </item>
        
        
        <item rdf:about="http://quills.sitefusion.co.uk/blog/archive/2008/06/04/weblog-products-quills-and-quillsenabled-beta-releases">
            <title>Weblog products Quills and QuillsEnabled beta releases</title>
            <link>http://quills.sitefusion.co.uk/blog/archive/2008/06/04/weblog-products-quills-and-quillsenabled-beta-releases</link>
            <description>Versions 1.7.0b1 of Quills and QuillsEnabled have now been released as eggs on PyPI.</description>
            <p:payload xmlns="http://www.w3.org/1999/xhtml"
                       rdf:parseType="Literal">
<h2>QuillsEnabled</h2>
<p>The 1.7.0b1 code is the first actual release of the QuillsEnabled codebase.  The version number reflects the progress of development in the rest of the Quills project.<br /></p>
<p>It removes the need for custom content types and instead makes it possible to mark standard Plone folders as blogs and then treats standard Plone 'Page' objects as entries.  Those objects are adapted to specific blog-ish interfaces under the hood.  Advantages of this over just using those standard objects on their own are:</p>
<ul><li>Blog-ish URLs of the [weblog]/2008/06/31/entry-id form.</li><li>The ability to use a MetaWeblog remote blogging client to post new entries.</li><li>A selection of blog-ish portlets - including by-month archives, a tag cloud, author listing, recent comments, recent posts, etc.</li><li>Powerful syndication features - including syndication feeds on a per-topic basis.</li></ul>
<h2>Quills</h2>
The 1.7.0b1 release provides incremental changes over the existing 1.6 series.  A detailed change log will probably be forthcoming when we get to 1.7.0 (final)... or when someone writes it :).<br /><br />
<h2>Giving Them a Try</h2>
Both products are released as eggs and are available on PyPI.  Giving the code a try should be as easy as add "Products.Quills" (or "Products.QuillsEnabled") to the "eggs" listing in your buildout.cfg.  (Svn tags of all packages have also been made, but there seems little need to get involved in that.)<br /><br />Using the MetaWeblog remote blogging facility is optional.  Add the "Products.QuillsRemoteBlogging" (or "Products.QuillsEnabledRemoteBlogging") egg to enable this feature.<br /><br />These releases should work on both Plone 3.0.x and 3.1.x.<br /><br />Bug reports and feedback most welcome via the <a href="http://plone.org/products/quills/issues/">issue tracker</a>.<br /><br /></p:payload>
            <dc:date>2008-06-04T15:56:09+00:00</dc:date>
            <dcterms:modified>2008-06-04T15:56:09+00:00</dcterms:modified>
            <dc:creator>tim2p</dc:creator>
            
            
            <dc:subject>QuillsEnabled</dc:subject>
            
            
            <dc:subject>Quills</dc:subject>
            
        </item>
        
        
        <item rdf:about="http://quills.sitefusion.co.uk/blog/archive/2008/04/18/metaweblog-newmediaobject-and-quillsenabled">
            <title>MetaWeblog.newMediaObject and QuillsEnabled</title>
            <link>http://quills.sitefusion.co.uk/blog/archive/2008/04/18/metaweblog-newmediaobject-and-quillsenabled</link>
            <description>A new remote blogging feature is available via Quills, and a new way of enjoying Quills-ish blogging technology is soon to be released.</description>
            <p:payload xmlns="http://www.w3.org/1999/xhtml"
                       rdf:parseType="Literal">
<p>Following up on the previous post about, the <a href="http://svn.plone.org/svn/collective/Products.Quills/buildouts/trunk/">Quills trunk</a> now makes it possible to use the newMediaObject feature of the MetaWeblog remote blogging API. This makes it possible to use your remote blogging client to upload images. Hopefully Jon Stahl will be pleased.</p>
<p>That new feature is also available on the new <a href="http://svn.plone.org/svn/collective/Products.QuillsEnabled/buildouts/trunk/">QuillsEnabled trunk</a>. For the uninitiated, QuillsEnabled provides a new way for you to make use of Quills-ish blogging technology. It "blog-ifies" standard plone content types - 
Pages and Folders, currently implemented - with just easily-written adapters required 
for other types you may wish to support (like, say, SmartFolders). It gives you blog-ish URLs (e.g. blog/2008/01/13/entry-id), 
blog views, tag cloud and other relevant portlets, remote blogging 
(MetaWeblog API), etc. I plan to make a first beta release of this code in the next few days. If you can't wait that long, then please do <a href="http://svn.plone.org/svn/collective/Products.QuillsEnabled/buildouts/trunk/">give the buildout a go</a>.<br /></p>
</p:payload>
            <dc:date>2008-04-18T13:01:21+00:00</dc:date>
            <dcterms:modified>2008-04-18T13:01:21+00:00</dcterms:modified>
            <dc:creator>tim2p</dc:creator>
            
            
            <dc:subject>RemoteAuthoring</dc:subject>
            
            
            <dc:subject>QuillsEnabled</dc:subject>
            
        </item>
        
        
        <item rdf:about="http://quills.sitefusion.co.uk/blog/archive/2007/12/05/time-to-implement-metaweblogapi-newmediaobject">
            <title>Time to implement MetaWeblogAPI.newMediaObject</title>
            <link>http://quills.sitefusion.co.uk/blog/archive/2007/12/05/time-to-implement-metaweblogapi-newmediaobject</link>
            
            <p:payload xmlns="http://www.w3.org/1999/xhtml"
                       rdf:parseType="Literal"><p>Jon Stahl <a href="http://blogs.onenw.org/jon/archives/2007/12/04/windows-live-writer-really-nice-offline-blogging-software/">just posted</a> about how good he thinks <a href="http://windowslivewriter.spaces.live.com/">Windows Live Writer</a> is. In doing so, he notes that,</p>

<blockquote>it would be cool if we could support uploading of images via FTP or via a blogging API from an offline client.</blockquote>

<p><a href="http://dev.plone.org/collective/browser/quills.remoteblogging/trunk/quills/remoteblogging">quills.remoteblogging</a>'s implementation of MetaWeblog API does not allow this at the moment, but it shouldn't be too difficult to add. From what I can tell, we just need to implement the newMediaObject method. The only complication is that doing so would require extending the IWeblog interface defined in quills.core.</p>

<p>To cut a long story short: I'll try to do this shortly.</p></p:payload>
            <dc:date>2007-12-05T12:26:17+00:00</dc:date>
            <dcterms:modified>2007-12-05T12:26:17+00:00</dcterms:modified>
            <dc:creator>tim2p</dc:creator>
            
            
            <dc:subject>RemoteAuthoring</dc:subject>
            
        </item>
        
        
        <item rdf:about="http://quills.sitefusion.co.uk/blog/archive/2007/10/12/response-to-mrtopf">
            <title>Response to MrTopf</title>
            <link>http://quills.sitefusion.co.uk/blog/archive/2007/10/12/response-to-mrtopf</link>
            <description>Christian Scholz has posted some thoughtful comments on blogging in Plone.  He mainly discusses Quills, but some of his previous experiences are now outdated...</description>
            <p:payload xmlns="http://www.w3.org/1999/xhtml"
                       rdf:parseType="Literal">
<p>"<a>Getting the Blogging story right in Plone</a>" is a good post, getting to lots of the problems that we see and have seen in blog products in Plone.  I just want to respond to a few of the specific points as <a href="http://tomster.org/blog/">Tom Lazar</a> and I have been working on many of them for the upcoming Quills 1.6 and "2.0" (that version number is not set in stone yet, I'd say) releases.</p>
<blockquote>
So what’s wrong with blogging in Plone right now? Mainly I think it’s commenting, at least this is the reason why I switched my <a href="http://comlounge.tv/">COM.lounge TV blog</a>
to Wordpress. With Quills I had several problems back then. Some might
be due to the version I used (it simply seemed to be bugs) but the most
important was trackback spam actually.</blockquote>
<p>Yup.  Commenting sucks in Plone.  This is something that Plone needs to fix, not Quills.  Happily, people do seem to be working on this area.  See the new release of <a href="http://diefenba.ch/blog/archive/2007/10/07/ann-easycommenting-easyrating">easycommenting</a> (which I haven't had a chance to try out yet).</p>
<p>Trackback <em>is</em> something that the Quills project should handle.  For the 1.6 release, we have recognised that our implementation is not nearly as good as it should be, and so ship without it.  That's better than shipping with something unusable (due to spam) as was the case in Quills 1.5, but obviously it's not optimal to ship without this important functionality.  My view is that trackback should share lots of code with commenting, so careful work on the latter has the potential to push forward the former as well.</p>
<blockquote>
enable every content or folder to be turned into a blog. This was an idea I had a while back and it seemed that Tom had it, too :-) It probably is simply about adding some marker interface to a folder to enable various blogging features.</blockquote>
<p>This is what is slated to be be Quills 2.0.  There is code that does this in the collective under the <a href="http://dev.plone.org/collective/browser/QuillsEnabled/trunk">QuillsEnabled</a> project.  It worked a couple of months ago, but is currently broken (I expect) as the code it shares with Quills 1.6 was refactored somewhat, without these changes being reflected in QuillsEnabled... yet.  I believe Tom plans to sprint on this after the Plone Conference!</p>
<blockquote>
If a folder is marked as a blog it might enable a blogging API for using a blog editor</blockquote>
<p>See <a href="http://dev.plone.org/collective/browser/QuillsEnabled/trunk">QuillsEnabled</a> :).</p>
<blockquote>
If a folder is marked as a blog it might have technorati tags as a viewlet available</blockquote>
<p>This may be something that <a href="http://dev.plone.org/collective/browser/PloneBookmarklets/trunk">PloneBookmarklets</a> does or could address.</p>
<blockquote>
enable blogging APIs (the more we can provide the better) to also edit non-blog content, like normal pages or news items (what’s the difference anyway?)</blockquote>
<p>See <a href="http://dev.plone.org/collective/browser/QuillsEnabled/trunk">QuillsEnabled</a> :).  We currently have a MetaWeblogAPI implementation that will work with standard plone content as soon as QuillsEnabled is updated.  I know Tom is keen on AtomPub.  Ian Bicking appears to be <a href="http://blog.ianbicking.org/2007/09/12/flatatompub/">working in this area</a> as well, albeit not explicitly for Plone.</p>
<blockquote>
Enable simple statistics on your blog. It would be nice to directly be able to see a rough click count per entry a la Wordpress, the same would be nice for your RSS subscribers.</blockquote>
<p>I agree this would be nice, but has to be something the Plone and/or its documentation handles, I think.</p>
<blockquote>
Enable a "more" section on posts which doesn’t show up in the overview listing or the RSS feed.</blockquote>
<p>Quills basically has this already.  The weblog view can be told to only display entry summaries (i.e. the standard AT description field), instead of the full text.  This is not wired up to the syndication feeds yet, I believe.  But that should be easy enough for an only slightly enterprising hacker :).</p>
<blockquote>
Enable a feed per category (should be easily doable with collections but making it even easier for end-users or even automatic might be nice)</blockquote>
<p>Quills has had this since 1.5.  Append /@@atom.xml to any of the 'topics' URLs, and you get an atom feed for that topic.  Likewise for the other feed types we offer.  e.g. <a href="topics/Core/@@atom.xml">http://quills.sitefusion.co.uk/blog/topics/Core/@@atom.xml</a>.</p>
<p>So, Quills already offers lots.  And where it doesn't quite meet expectations, we have code in the works to address them.  Things are getting better :).</p>
</p:payload>
            <dc:date>2007-10-12T10:32:42+00:00</dc:date>
            <dcterms:modified>2007-10-12T10:32:42+00:00</dcterms:modified>
            <dc:creator>tim2p</dc:creator>
            
            
            <dc:subject>Trackback</dc:subject>
            
            
            <dc:subject>RemoteAuthoring</dc:subject>
            
            
            <dc:subject>QuillsEnabled</dc:subject>
            
            
            <dc:subject>Plans</dc:subject>
            
        </item>
        
        
        <item rdf:about="http://quills.sitefusion.co.uk/blog/archive/2007/06/26/ready-for-merge-to-trunk">
            <title>Ready for merge to trunk</title>
            <link>http://quills.sitefusion.co.uk/blog/archive/2007/06/26/ready-for-merge-to-trunk</link>
            
            <p:payload xmlns="http://www.w3.org/1999/xhtml"
                       rdf:parseType="Literal">Thanks to Tres Seaver (who <a href="http://svn.zope.org/Products.Five/branches/1.5/browser/metaconfigure.py?rev=77057&amp;view=rev">applied my fix</a> to the various Zope and Five branches), the <a href="http://quills.sitefusion.co.uk/blog/archive/2007/06/21/developments-and-barrier-to-merging-to-trunk">barrier to merging</a> the maurits-traversal branch to trunk is now gone.<br /><br />Also, as <a href="http://lists.etria.com/pipermail/quills-dev/2007-June/002530.html">Jon Stahl pointed out</a> on the Quills-Dev mailing list, it would be a good thing if quills.remoteauthoring was made to work with standard Plone content types, not just the specific Quills Weblog type.<br /><br />I'll be working on the merge-to-trunk and extending the application of quills.remoteauthoring soon.<br /></p:payload>
            <dc:date>2007-06-26T10:38:16+00:00</dc:date>
            <dcterms:modified>2007-06-26T10:38:17+00:00</dcterms:modified>
            <dc:creator>tim2p</dc:creator>
            
            
            <dc:subject>Core</dc:subject>
            
            
            <dc:subject>RemoteAuthoring</dc:subject>
            
        </item>
        
        
        <item rdf:about="http://quills.sitefusion.co.uk/blog/archive/2007/06/21/developments-and-barrier-to-merging-to-trunk">
            <title>Developments and barrier to merging to trunk</title>
            <link>http://quills.sitefusion.co.uk/blog/archive/2007/06/21/developments-and-barrier-to-merging-to-trunk</link>
            
            <p:payload xmlns="http://www.w3.org/1999/xhtml"
                       rdf:parseType="Literal"><div><br />I haven't made a status update in a while, so here goes...<br /><br />Things have moved on fairly well since my last post here.&nbsp; The <a href="http://quills.sitefusion.co.uk/blog/archive/2007/06/08/status-update-2">traversal security bug</a> is now resolved, albeit not in the way I thought it would be.&nbsp; I won't provide the gory details here, but suffice it to say I ended up having to write a class named "<a href="http://dev.plone.org/collective/browser/Quills/branches/maurits-traversal/utilities.py">EvilAATUSHack</a>" ;-).<br /><br />Remote authoring (aka MetaWeblogAPI) has seen some more refactoring based on improved - well, "revised", at least - interfaces for weblogs and weblog entries.&nbsp; MetaWeblogAPI should now be completely generic and pluggable, such that it only depends on interfaces defined in quills.core and quills.remoteblogging.&nbsp; As a consequence, it should be reusable by other projects - be they Archetypes- or pure Zope3-based.&nbsp; Well, that's the idea, anyway.<br /><br />These changes leave the maurits-traversal branch in pretty good shape.&nbsp; One obvious problem is that I've made no effort either to update the old Quills tests, or to include any new ones for the new interfaces/functionality.&nbsp; To be generous to myself, those interfaces have been in a state of flux.&nbsp; Anyway, I don't consider that a barrier to merging maurits-traversal to trunk.<br /><br />The real barrier is a <a href="http://www.zope.org/Collectors/Zope/2333/">bug I discovered in Five</a> that means security declarations for interfaces miss out method names that are inherited from interface superclasses.&nbsp; This is a pain, and a trivial fix if anyone with commit rights to svn.zope.org is reading this...<br /><br /></div></p:payload>
            <dc:date>2007-06-21T19:54:31+00:00</dc:date>
            <dcterms:modified>2007-06-21T19:58:27+00:00</dcterms:modified>
            <dc:creator>tim2p</dc:creator>
            
            
            <dc:subject>Core</dc:subject>
            
            
            <dc:subject>RemoteAuthoring</dc:subject>
            
        </item>
        
        
        <item rdf:about="http://quills.sitefusion.co.uk/blog/archive/2007/06/09/metaweblog-api-view-ified">
            <title>MetaWeblog API view-ified</title>
            <link>http://quills.sitefusion.co.uk/blog/archive/2007/06/09/metaweblog-api-view-ified</link>
            
            <p:payload xmlns="http://www.w3.org/1999/xhtml"
                       rdf:parseType="Literal">I made some good progress today.&nbsp; With a bunch of checkins (still on the maurits-traversal branch), I removed the old MetaWeblogAPI code that worked by adding persistent attributes called 'metaWeblog' and 'blogger' to Weblog instances.<br /><br />This was achieved by implementing 'metaWeblog' and 'blogger' as a (i.e. the same) view, instead.&nbsp; The view is currently implemented in <a href="http://dev.plone.org/collective/browser/quills.remoteblogging/">quills.remoteblogging</a>, together with a PAS plugin to extract user credentials from a MetaWeblog request (<a href="http://dev.plone.org/collective/browser/PASPlugins/MetaWeblogPASPlugin/">MetaWeblogPASPlugin</a>).<br /><br />I'm not completely comfortable with the code layout at the moment.&nbsp; I'm wondering if there should be another layer of abstraction such that the default metaWeblog implementation adapts to, say, IEditableWeblog which would provide addEntry, deleteEntry, etc.&nbsp; That might make it easier to implement other remote blogging APIs (like Atom), which presumably call equivalent methods (but with different names).&nbsp; It might also make it easier for others to reuse the remote blogging functionality for other content types as well.<br /><br />Something to think about...<br /></p:payload>
            <dc:date>2007-06-09T23:34:40+00:00</dc:date>
            <dcterms:modified>2007-06-09T23:34:40+00:00</dcterms:modified>
            <dc:creator>tim2p</dc:creator>
            
            
            <dc:subject>RemoteAuthoring</dc:subject>
            
        </item>
        
        
        <item rdf:about="http://quills.sitefusion.co.uk/blog/archive/2007/06/08/status-update-2">
            <title>Status Update 2</title>
            <link>http://quills.sitefusion.co.uk/blog/archive/2007/06/08/status-update-2</link>
            <description>A quick post to say what has (and hasn't) been happening with Quills this week.</description>
            <p:payload xmlns="http://www.w3.org/1999/xhtml"
                       rdf:parseType="Literal">
<h3>Traversal Security Bug</h3>
First, I <i>think</i> I have partly tracked down what the security problem is that requires the use of __allow_acess_to_unprotected_subobjects__ on the archive and topic classes.  After another pdb session, it seems that those classes do not have a __roles__ attribute, which the Zope security machinery wants, apparently.  Actually, I think it's more than that.  Even when I add a workaround of __roles__ = Acquisition.Acquired (so that the attribute is just picked up from the next persistent object it finds), things don't work properly as the security machinery chokes a little further down the line.<br /><br />My best guess at the moment is that InitializeClass isn't getting called (properly?) by the Five ZCML handler for this.  That's my next avenue of investigation.<br /><br />
<h3>Remote Authoring (aka MetaWeblogAPI)</h3>
The other news is that I've started refactoring the MetaWeblogAPI support into separate packages that implement the API with a view rather than a persistent subobject of Weblogs.  This should make it easier to disable the functionality, and easier to apply it to alternative content types.<br /><br />As things stand, I have a PAS IExtractionPlugin that gets user credentials from a MetaWeblog request, and a view that is largely a copy-n-paste job from the existing MetaWeblog implementation.<br /><br />Some issues remain, though.  While I can add the blog successfully with ScribeFire (nee Performancing) - which means at least one MetaWeblogAPI method is getting called without problem - attempts then to get category listings or otherwise use the API fail with a security error.<br /><br />None of this is checked in to svn, yet.  I will do so as and when it gets a little more polished.<br /></p:payload>
            <dc:date>2007-06-08T10:08:15+00:00</dc:date>
            <dcterms:modified>2007-06-08T10:08:15+00:00</dcterms:modified>
            <dc:creator>tim2p</dc:creator>
            
            
            <dc:subject>Core</dc:subject>
            
            
            <dc:subject>RemoteAuthoring</dc:subject>
            
        </item>
        
    </items>
</Channel>

