<?xml version="1.0" encoding="UTF-8"?>
<!--Generated by Squarespace Site Server v5.11.81 (http://www.squarespace.com/) on Fri, 01 Jun 2012 10:56:57 GMT--><feed xmlns="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/"><title>Antony's Writings</title><subtitle>Antony's Writings</subtitle><id>http://antonyh.co.uk/blog/</id><link rel="alternate" type="application/xhtml+xml" href="http://antonyh.co.uk/blog/"/><link rel="self" type="application/atom+xml" href="http://antonyh.co.uk/blog/atom.xml"/><updated>2012-05-28T18:53:17Z</updated><generator uri="http://www.squarespace.com/" version="Squarespace Site Server v5.11.81 (http://www.squarespace.com/)">Squarespace</generator><entry><title>When to Proof-of-Concept, Prototype, or Implement</title><category term="Development"/><category term="Guides"/><category term="Web Development"/><id>http://antonyh.co.uk/blog/2012/5/28/when-to-proof-of-concept-prototype-or-implement.html</id><link rel="alternate" type="text/html" href="http://antonyh.co.uk/blog/2012/5/28/when-to-proof-of-concept-prototype-or-implement.html"/><author><name>Antony</name></author><published>2012-05-28T13:00:47Z</published><updated>2012-05-28T13:00:47Z</updated><content type="html" xml:lang="en-GB"><![CDATA[<p>It should be really clear when to prototype, when to use a proof-of-concept, or when to start building the solution to a problem but unfortunately it's often not clear cut enough when considering the options for the first stages of development.</p>  <p>In order of vagueness-to-precision, the requirements for a Proof-of-Concept are the least defined, and a full system implementation is completely specified. Understanding where your project lies in this spectrum will help you gauge how much effort you need to put into non-coding activities and help manage your expectations when receiving deliverables.</p>  <h3 style="font-size: 1.17em">Proof-of-Concept</h3>  <p>Commonly known as a PoC, proof-of-concept work should determine if a given approach is appropriate or to find out if integration between two systems makes sense from a technical point-of-view. It can also be used to uncover deficiencies in the architecture or the system design. It's often used as a non-committal way of exploring the capabilities of a system and as such usually lacks unit tests, non-functional criteria, documentation, strict design constraints, visual design, and other aspects required for the creation of a reliable usable system.</p>  <p>Often the PoC work will really be a prototype and not intended to prove that something works. The only thing that should be carried forward from a PoC is library code and tools created to assist in creating these libraries such as code generation tools.</p>  <p>PoC code should usually be discarded at the end.</p>  <h3>Prototypes</h3>  <p>Prototyping is often used as a mechanism for discovery and quite rightly so. It's use implies that the solution is known but the form it will take is subject to too many uncertainties that the only realistic way forward is to create something with limited functionality to show the way forward.</p>  <p>Very often the prototype will form the bulk of the groundwork for the finished product. Many might argue that this shouldn't happen but in the real world the work done is often too valuable. This is true if the prototype is successful and covers all the needs of the problem at hand. It's also true when the prototype is an extension of an existing product or an implementation using a specific platform where the limitations of the prototype are in fact the constraints of the underlying technology.</p>  <p>Prototypes should be built in the same way as production code, but with less constraints on the developer. They need the freedom to hack and create in the fastest possible way, and yet still create all the secondary outputs that are required such as unit tests, documentation, release notes, correct code styles, and follow the quality assurance guidelines that are in place.</p>  <p>It used to be said that prototypes should be discarded at their end but more often than not they are released as 'beta' products or further developed into complete solutions. Prototypes should be rolled into the final solution if they prove successful.</p>  <h3>Implementation</h3>  <p>If you already know the majority of the elements of the UI and the solution architecture the most appropriate strategy is to start implementation. This doesn't prevent exploring the technical options for subsections, modules, and components of the system particularly in areas that interface with other systems and for parts of the UI that have been loosely defined.</p>  <p>Obviously final implementation is subject to the most rigorous testing and ratification. It must conform to the requirements but this doesn't preclude that components cannot be developed as prototypes.</p>  <h3>Conclusion</h3>  <p>If you know a lot, build your solution to a specification and explore the gaps with proof of concept work. If you don't know that something will work, prove it. If you don't know if the parts you intend to use will fit together in a logical way, do a prototype. Don't mix the terminology of prototype and proof-of-concept - one is inherently more rapid to do and is generally unsuitable for production use. Expect to throw a small percentage of prototype code away even if it's successful, and a high percentage of PoC code or face the penalty of adding documentation and unit tests later.</p>]]></content></entry><entry><title>Multi-page forms in CQ5</title><category term="CQ5"/><category term="Development"/><category term="Sling"/><category term="Web Development"/><category term="architecture"/><category term="component"/><category term="cq5"/><category term="form"/><category term="multipage"/><category term="multistep"/><category term="servlet"/><category term="wizard"/><id>http://antonyh.co.uk/blog/2012/5/15/multi-page-forms-in-cq5.html</id><link rel="alternate" type="text/html" href="http://antonyh.co.uk/blog/2012/5/15/multi-page-forms-in-cq5.html"/><author><name>Antony</name></author><published>2012-05-15T22:00:00Z</published><updated>2012-05-15T22:00:00Z</updated><summary type="html" xml:lang="en-GB"><![CDATA[Sometimes it's necessary to create a form that has multiple steps. Examples of this might include user registration, surveys, and any kind of form where the selections influence the options available on subsequent pages. Application integration can have predefined sets of steps that are required are risky to leave in the hands of content authors who may miss things out or misinterpret the way they need to be set up. This is one approach to creating a form with multiple pages.]]></summary></entry><entry><title>No More Analytics</title><category term="Web Development"/><category term="analytics"/><category term="cookies"/><category term="google"/><category term="law"/><category term="legal"/><category term="privacy"/><category term="tracking"/><category term="web development"/><id>http://antonyh.co.uk/blog/2012/5/14/no-more-analytics.html</id><link rel="alternate" type="text/html" href="http://antonyh.co.uk/blog/2012/5/14/no-more-analytics.html"/><author><name>Antony</name></author><published>2012-05-14T11:01:49Z</published><updated>2012-05-14T11:01:49Z</updated><content type="html" xml:lang="en-GB"><![CDATA[<p>I'm dropping Google Analytics from all my web properties. Why? It's partly because of the UK privacy legislation and partly because the metrics they give are not really useful to me.</p>
<h3>Cookies and Privacy</h3>
<p>The short version of the UK regulations that will come into play on the 26th May 2012 is that users need to explicitly opt-in to cookies that are not an essential part of the functionality of the site. Rather than waste my time trying to make my web site comply with the law I have opted to drop all cookie-based analytics.</p>
<h3>More Useful Metrics</h3>
<p>I love looking at the nice graphs the people at Google make for me that track visitors to my sites. Unfortunately that it's really of any practical use for my non-ecommerce sites. There are only two key metrics that are really useful for me:&nbsp;</p>
<ol>
<li>Number of comments on pages</li>
<li>Frequency of contact form submission</li>
</ol>
<p>These are reinforced by two off-web events that occur as a result of the websites:&nbsp;</p>
<ol>
<li>Phone calls</li>
<li>Email received as a result of my website&nbsp;&nbsp;</li>
</ol>
<p>This is followed up with secondary results that can also be monitored:</p>
<ol>
<li>New followers, mentions, and direct messages on Twitter</li>
<li>New connections and messages via LinkedIn</li>
</ol>
<p>None of these are monitorable using traditional web analytics yet in many ways they are a more tangible result.</p>]]></content></entry><entry><title>Java CMS Roundup</title><category term="Content Management"/><category term="Java"/><category term="Review"/><category term="Web Development"/><category term="cms"/><category term="content management"/><category term="review"/><id>http://antonyh.co.uk/blog/2012/4/30/java-cms-roundup.html</id><link rel="alternate" type="text/html" href="http://antonyh.co.uk/blog/2012/4/30/java-cms-roundup.html"/><author><name>Antony</name></author><published>2012-04-30T11:00:18Z</published><updated>2012-04-30T11:00:18Z</updated><summary type="html" xml:lang="en-GB"><![CDATA[I'm looking for a new CMS to replace my company site to replace Google Sites hosting that I currently use. Here's a roundup of the current state of the Free / Open Source Java CMS market.]]></summary></entry><entry><title>Web Development Options for Mobile and Desktop</title><category term="JavaScript"/><category term="Web Development"/><category term="development"/><category term="mobile"/><category term="mobile development"/><category term="web development"/><id>http://antonyh.co.uk/blog/2012/4/16/web-development-options-for-mobile-and-desktop.html</id><link rel="alternate" type="text/html" href="http://antonyh.co.uk/blog/2012/4/16/web-development-options-for-mobile-and-desktop.html"/><author><name>Antony</name></author><published>2012-04-16T11:00:58Z</published><updated>2012-04-16T11:00:58Z</updated><summary type="html" xml:lang="en-GB"><![CDATA[There are several options when developing web sites and applications that will need to be used on mobile devices. Here are some options.]]></summary></entry><entry><title>The correct use of logging</title><category term="Development"/><category term="Guides"/><category term="Java"/><category term="Web Development"/><category term="debug"/><category term="error"/><category term="log"/><category term="trace"/><category term="warn"/><id>http://antonyh.co.uk/blog/2012/4/2/the-correct-use-of-logging.html</id><link rel="alternate" type="text/html" href="http://antonyh.co.uk/blog/2012/4/2/the-correct-use-of-logging.html"/><author><name>Antony</name></author><published>2012-04-02T11:00:01Z</published><updated>2012-04-02T11:00:01Z</updated><summary type="html" xml:lang="en-GB"><![CDATA[Log levels allow developers to assign messages into categories that can be filtered into different log files. They are often misused, this style guide will help you assign the right category to the message. I recommend that you add this to your code style guide and enforce it with code reviews.]]></summary></entry><entry><title>The parallels between video games and enterprise software</title><category term="ECM"/><category term="Enterprise"/><category term="Software"/><category term="cms"/><category term="comparison"/><category term="enterprise"/><category term="fun"/><category term="software"/><id>http://antonyh.co.uk/blog/2012/3/19/the-parallels-between-video-games-and-enterprise-software.html</id><link rel="alternate" type="text/html" href="http://antonyh.co.uk/blog/2012/3/19/the-parallels-between-video-games-and-enterprise-software.html"/><author><name>Antony</name></author><published>2012-03-19T12:01:03Z</published><updated>2012-03-19T12:01:03Z</updated><summary type="html" xml:lang="en-GB"><![CDATA[There's quite a few similarities between computer games and software designed for the enterprise. Ignoring gamification techniques where points, awards, and trophies are given for doing things, there's a lot of incidental likenesses between these two very different categories.]]></summary></entry><entry><title>Automatic Backup Software</title><category term="Apple"/><category term="CrashPlan"/><category term="Linux"/><category term="Mac OSX"/><category term="MobileMe"/><category term="Review"/><category term="Software"/><category term="Windows"/><category term="backup"/><category term="data"/><category term="files"/><category term="iDisk"/><category term="linux"/><category term="mac"/><category term="windows"/><id>http://antonyh.co.uk/blog/2012/3/5/automatic-backup-software.html</id><link rel="alternate" type="text/html" href="http://antonyh.co.uk/blog/2012/3/5/automatic-backup-software.html"/><author><name>Antony</name></author><published>2012-03-05T12:01:09Z</published><updated>2012-03-05T12:01:09Z</updated><summary type="html" xml:lang="en-GB"><![CDATA[I'm now using CrashPlan to back up my files instead of Apple's iDisk.]]></summary></entry><entry><title>What the LinkedIn Contact Options Really Mean</title><category term="Social Media &amp; Social Networks"/><category term="commentary"/><category term="contact options"/><category term="guide"/><category term="jobs"/><category term="linkedin"/><category term="observations"/><id>http://antonyh.co.uk/blog/2012/2/27/what-the-linkedin-contact-options-really-mean.html</id><link rel="alternate" type="text/html" href="http://antonyh.co.uk/blog/2012/2/27/what-the-linkedin-contact-options-really-mean.html"/><author><name>Antony</name></author><published>2012-02-27T12:00:14Z</published><updated>2012-02-27T12:00:14Z</updated><summary type="html" xml:lang="en-GB"><![CDATA[I’ve been thinking about the real meaning of the contact preferences on LinkedIn amidst a barrage of spammy job offers recently, and these are my conclusions as to how they are interpreted assuming anyone looks at them at all…]]></summary></entry><entry><title>An Introduction to CQ5 for Architects</title><category term="Apache Sling"/><category term="CQ5"/><category term="Content Management"/><category term="Development"/><category term="Guides"/><category term="architect"/><category term="archtecture"/><category term="cq5"/><category term="crx"/><category term="guide"/><category term="introduction"/><category term="jcr"/><id>http://antonyh.co.uk/blog/2012/2/20/an-introduction-to-cq5-for-architects.html</id><link rel="alternate" type="text/html" href="http://antonyh.co.uk/blog/2012/2/20/an-introduction-to-cq5-for-architects.html"/><author><name>Antony</name></author><published>2012-02-20T12:00:19Z</published><updated>2012-02-20T12:00:19Z</updated><summary type="html" xml:lang="en-GB"><![CDATA[This is all really elementary stuff, but as an introduction to CQ5 it may help to put in context by identifying the requirements to run CQ5, the basic terminology used, and how certain areas operate.]]></summary></entry><entry><title>Types of Content</title><category term="Content Management"/><category term="Content Strategy"/><category term="Content Theory"/><category term="content"/><category term="content management"/><category term="content type"/><category term="media"/><category term="workflows"/><id>http://antonyh.co.uk/blog/2012/2/13/types-of-content.html</id><link rel="alternate" type="text/html" href="http://antonyh.co.uk/blog/2012/2/13/types-of-content.html"/><author><name>Antony</name></author><published>2012-02-13T12:01:03Z</published><updated>2012-02-13T12:01:03Z</updated><summary type="html" xml:lang="en-GB"><![CDATA[What is content? We talk about it as if it’s something tangible, but without understanding it’s composition, properties, and lifecycle are we really qualified to discuss it effectively? Content on the web; It’s like writing a magazine for someone who is hyper-caffeinated and standing in the world biggest magazine / book / video game store with the most amazing sound system.]]></summary></entry><entry><title>Content Strategy through applied tactics</title><category term="Content Strategy"/><category term="Content Theory"/><category term="content"/><category term="content strategy"/><category term="tactics"/><id>http://antonyh.co.uk/blog/2012/2/6/content-strategy-through-applied-tactics.html</id><link rel="alternate" type="text/html" href="http://antonyh.co.uk/blog/2012/2/6/content-strategy-through-applied-tactics.html"/><author><name>Antony</name></author><published>2012-02-06T12:00:36Z</published><updated>2012-02-06T12:00:36Z</updated><summary type="html" xml:lang="en-GB"><![CDATA[We have started to hear about the emergence of Content Strategy as a role, an occupation and as an industry but in order for a strategy to be enacted we must use tactics. If there are tactics then logically there must also be a Content Tactician.]]></summary></entry><entry><title>I need your style guides and strategy documents</title><category term="Content Management"/><category term="Content Strategy"/><category term="Content Theory"/><category term="Development"/><category term="Guides"/><category term="Social Media &amp; Social Networks"/><category term="Web Development"/><category term="code"/><category term="content strategy"/><category term="development"/><category term="document"/><category term="guidelines"/><category term="rules"/><category term="style"/><category term="web development"/><id>http://antonyh.co.uk/blog/2012/2/3/i-need-your-style-guides-and-strategy-documents.html</id><link rel="alternate" type="text/html" href="http://antonyh.co.uk/blog/2012/2/3/i-need-your-style-guides-and-strategy-documents.html"/><author><name>Antony</name></author><published>2012-02-03T14:41:34Z</published><updated>2012-02-03T14:41:34Z</updated><summary type="html" xml:lang="en-GB"><![CDATA[I'm currently looking to collect documents. Please read the article, and if you have anything even remotely related please send them to me if you are able.]]></summary></entry><entry><title>Alfresco Cloud Review</title><category term="Content Management"/><category term="Review"/><category term="SaaS"/><category term="Social Media &amp; Social Networks"/><category term="alfresco"/><category term="cloud"/><category term="document management"/><category term="review"/><id>http://antonyh.co.uk/blog/2012/2/1/alfresco-cloud-review.html</id><link rel="alternate" type="text/html" href="http://antonyh.co.uk/blog/2012/2/1/alfresco-cloud-review.html"/><author><name>Antony</name></author><published>2012-02-01T13:14:48Z</published><updated>2012-02-01T13:14:48Z</updated><summary type="html" xml:lang="en-GB"><![CDATA[Finally, after a long wait I'm able to get into Alfesco in the Cloud and find out what it's all about.]]></summary></entry><entry><title>Get Things Done</title><category term="Guides"/><category term="getting things done"/><category term="gtd"/><category term="kanban"/><category term="lists"/><category term="personal kanban"/><category term="task management"/><category term="time management"/><category term="todo lists"/><id>http://antonyh.co.uk/blog/2012/1/29/get-things-done.html</id><link rel="alternate" type="text/html" href="http://antonyh.co.uk/blog/2012/1/29/get-things-done.html"/><author><name>Antony</name></author><published>2012-01-29T12:00:37Z</published><updated>2012-01-29T12:00:37Z</updated><summary type="html" xml:lang="en-GB"><![CDATA[I have a copy of Getting Things Done by David Allen on my bookshelf at the moment (it has been lent to me) and I've got about a third of the way through it before having a relevation. So before you go looking for alternatives to GTD such as Personal Kanban, try this instead.]]></summary></entry></feed>
