<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Helen Marie: Design and Code</title>
	
	<link>http://blog.helen-marie.com</link>
	<description>Strategy, design, technology, and how to be our client</description>
	<lastBuildDate>Mon, 27 Jul 2009 20:33:19 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/helenmarieblog" /><feedburner:info uri="helenmarieblog" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>TRON</title>
		<link>http://feedproxy.google.com/~r/helenmarieblog/~3/habtIWJrj7c/</link>
		<comments>http://blog.helen-marie.com/index.php/2009/07/tron/#comments</comments>
		<pubDate>Mon, 27 Jul 2009 20:33:19 +0000</pubDate>
		<dc:creator>chakaras</dc:creator>
				<category><![CDATA[Inspiration]]></category>

		<guid isPermaLink="false">http://blog.helen-marie.com/?p=137</guid>
		<description><![CDATA[Every once in a while I come across something that makes me say &#8220;I would have loved to have had a hand in making that&#8221;. The new TRON teaser trailer is no exception. 
Two words. Light Cycle
]]></description>
			<content:encoded><![CDATA[<p>Every once in a while I come across something that makes me say &#8220;I would have loved to have had a hand in making that&#8221;. The new <a href="http://tinyurl.com/mfbc54">TRON</a> teaser trailer is no exception. </p>
<p>Two words. Light Cycle</p>
<img src="http://feeds.feedburner.com/~r/helenmarieblog/~4/habtIWJrj7c" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.helen-marie.com/index.php/2009/07/tron/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.helen-marie.com/index.php/2009/07/tron/</feedburner:origLink></item>
		<item>
		<title>Agility and the User Experience</title>
		<link>http://feedproxy.google.com/~r/helenmarieblog/~3/ev6CRFV5KaA/</link>
		<comments>http://blog.helen-marie.com/index.php/2009/04/agility-and-the-user-experience/#comments</comments>
		<pubDate>Wed, 15 Apr 2009 18:20:09 +0000</pubDate>
		<dc:creator>msh</dc:creator>
				<category><![CDATA[Client Side]]></category>
		<category><![CDATA[Strategy]]></category>
		<category><![CDATA[The Craft]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[informationarchitecture]]></category>
		<category><![CDATA[phases]]></category>
		<category><![CDATA[uxd]]></category>

		<guid isPermaLink="false">http://blog.helen-marie.com/?p=128</guid>
		<description><![CDATA[It&#8217;s easy to think of a web site in terms of the teams who participate in the project: content, design, information architecture, hardware, platform, application development.  But it&#8217;s the user who ties all the parts together: the user experience is the end-product of a web application.
This is why people freak out about user experience [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s easy to think of a web site in terms of the teams who participate in the project: content, design, information architecture, hardware, platform, application development.  But it&#8217;s the user who ties all the parts together: the user experience is the end-product of a web application.</p>
<p>This is why people freak out about user experience design, or UxD, these days.  We can define and justify and normalize everything we do during the course of a web project by referring to the user experience, and we can keep this experience in mind as a theoretical model to help us make decisions along the way.<span id="more-128"></span></p>
<p>But the user experience is only just that &#8212; a theoretical model &#8212; until you get <em>real users</em>.  This is why we can&#8217;t begin a project with all the answers.  The answers to many important questions are provided by the users.  But the users don&#8217;t come until we&#8217;ve actually designed and built something.</p>
<p>Oh, the Catch-22!</p>
<p>The way out, of course, is by agreeing to launch with something that&#8217;s in some important way unfinished.  Knowing that our users will provide us with feedback that will shape the future site &#8212; that we plan and build the site in phases, and that these phases are informed by an ongoing engagement with the user experience.</p>
<p>As an agency, you need to go to great lengths to get your clients to understand this.  They can&#8217;t provide a spec, like a blueprint for a shed, and get a quote and schedule based solely on the blueprint, and then expect the actual shed to look exactly like the blueprint.  This is what they&#8217;ll want, because it&#8217;s easier to plan, and easier to budget for, and just generally easier to think about.  But it doesn&#8217;t comport with reality, so you&#8217;ll have to make a strong case for agility throughout the process.</p>
<p>And as a client, you need to go to equally great lengths to factor this fluidity into your own plans.  Remember the great triangle of software development: one side is budget; the second side is functionality; and the third is schedule.  You can&#8217;t fix all of these sides, because you&#8217;ll end in horrendous failure (the great triangle of pain and disappointment).  If you must, try to fix two; but leave the third one agile.</p>
<p>Say you&#8217;ve got a project with some fairly well-defined requirements, and pegged to a particular real-world date.  You&#8217;ve got your functionality and schedule fixed.  This means you must remain agile with your budget.  In practical terms, you&#8217;ll need to provide the agency with a budget range that is acceptable, and trust them (<em>Trust them!</em> Seriously!) to keep their costs down.</p>
<p>(Side note: if you can&#8217;t trust your agency to keep their costs down, you should find another agency.  This shouldn&#8217;t be an antagonistic process, but one where both sides share common goals.)</p>
<p>A second example, one that we see very often at HM: Say you&#8217;re a not-for-profit institution that secured funding for a particular project proposal from a big foundation.  You may see all three sides of the triangle as fixed: you promised a set of functionality in your proposal.  You also received a fixed amount of funding, and have a delivery date as part of the funding timeline.</p>
<p>In truth, though, one side of the triangle has to be flexible in this situation.  Chances are the foundation won&#8217;t increase the budget, so one of the other sides needs to be subject to change.  This may require some advocacy on your part to get the flexibility you need from the funder, but the big selling point here is the main goal: a beautiful, functional, memorable web experience that users will visit again and again because it was <em>built around their needs</em>.  If you can&#8217;t get it all done in the budget and timeline provided, consider this a first phase.  Phases are good!</p>
<img src="http://feeds.feedburner.com/~r/helenmarieblog/~4/ev6CRFV5KaA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.helen-marie.com/index.php/2009/04/agility-and-the-user-experience/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.helen-marie.com/index.php/2009/04/agility-and-the-user-experience/</feedburner:origLink></item>
		<item>
		<title>HM A-LIST: Episode 1: Tucker Viemeister</title>
		<link>http://feedproxy.google.com/~r/helenmarieblog/~3/D1CTQtMYyDw/</link>
		<comments>http://blog.helen-marie.com/index.php/2009/04/hm-a-list-episode-1-tucker-viemeister/#comments</comments>
		<pubDate>Wed, 15 Apr 2009 01:01:44 +0000</pubDate>
		<dc:creator>msh</dc:creator>
				<category><![CDATA[HM A-List]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://blog.helen-marie.com/?p=81</guid>
		<description><![CDATA[Tucker Viemeister brings new meaning to the term “multi-media.” Trained as a product designer, he is also involved in architecture, graphics and new media. He runs a design consultancy, teaches and lectures, serves on a few boards and still has time for volunteer work. http://www.lab.rockwellgroup.com/]]></description>
			<content:encoded><![CDATA[<p>The Helen Marie A-List is a video interview series, featuring creative thinkers who are using design and code to produce engaging experiences. We’ll shine the spotlight on artists and developers and everyone in between. The “A” in HMA-List does not stand for alpha or first but authentic.</p>
<p>Check back next month for a new installment.</p>
<div><object width="600" height="430" data="http://blip.tv/play/AfqbfAA" type="application/x-shockwave-flash"><param name="src" value="http://blip.tv/play/AfqbfAA" /><param name="allowfullscreen" value="true" /></object></div>
<p>Tucker Viemeister is Lab Chief, heading research and development at <a href="http://www.lab.rockwellgroup.com/">Rockwell Group</a>. The Lab recently made an interactive introduction installation for the Venice Architecture Biennale. He was a founder of Smart Design where he helped design the widely acclaimed OXO &#8220;GoodGrips&#8221; kitchen tools. He also was president of Springtime-USA, a partnership with the Dutch industrial design company, he helped to found Razorfish&#8217;s physical design capability and frogdesign&#8217;s New York office.</p>
<p>A graduate from Pratt Institute, Viemeister has worked for clients like Apple, Corning, Gap, J&amp;J, Jet Blue, P&amp;G, McDonald’s, Timex, Levi’s, Motorola, Vodaphone, Unilever, Coca-Cola, Nike, Toyota, Viking, and Kate Spade. He serves on the Board of Directors of the Architectural League of New York, chair of the Rowena Reed Kostellow Fund, president of the International Design Network Foundation He was called “scruffy brand-meister” by the <em>Architect’s Newspaper</em> (2/06) and <em>New York Magazine</em> selected him as a “Living Design Innovator” (10/29/07). He teaches at NYU&#8217;s ITP, holds 32 US Utility Patents and was named after a car.</p>
<img src="http://feeds.feedburner.com/~r/helenmarieblog/~4/D1CTQtMYyDw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.helen-marie.com/index.php/2009/04/hm-a-list-episode-1-tucker-viemeister/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		<feedburner:origLink>http://blog.helen-marie.com/index.php/2009/04/hm-a-list-episode-1-tucker-viemeister/</feedburner:origLink></item>
		<item>
		<title>Things We Do in Drupal</title>
		<link>http://feedproxy.google.com/~r/helenmarieblog/~3/lXUaSKq5EPw/</link>
		<comments>http://blog.helen-marie.com/index.php/2009/02/things-we-do-in-drupal/#comments</comments>
		<pubDate>Wed, 25 Feb 2009 22:36:58 +0000</pubDate>
		<dc:creator>msh</dc:creator>
				<category><![CDATA[Our Work]]></category>
		<category><![CDATA[contentmanagement]]></category>
		<category><![CDATA[drupal]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[prototyping]]></category>

		<guid isPermaLink="false">http://blog.helen-marie.com/?p=71</guid>
		<description><![CDATA[Back in the day, Drupal was for us a platform of necessity.  There was a lot to dislike about it: no object architecture to speak of, patchy module support, enormous amounts of spaghetti sprawling through the hooks-based function names, a lot of messy UI, and a deep knowledge of magic words needed to theme [...]]]></description>
			<content:encoded><![CDATA[<p>Back in the day, Drupal was for us a platform of necessity.  There was a lot to dislike about it: no object architecture to speak of, patchy module support, enormous amounts of spaghetti sprawling through the hooks-based function names, a lot of messy UI, and a deep knowledge of magic words needed to theme an element or alter a behavior.  And on the design side, there was this seemingly deep-set predilection towards boxy pages.</p>
<p>Then we really started using it.  Then Drupal 6 dropped.  Now, D6 is our development platform of choice, and our default platform for many kinds of projects.  Here are a few types that range beyond the typical &#8220;site with managed content&#8221; category.</p>
<p><span id="more-71"></span></p>
<p><strong>Flash front end with CMS</strong></p>
<p>We&#8217;ve developed two sites where the client needed pervasive animated elements that required us to build in Flash.  We still wanted to give the client content management capabilities, however, so we resolved to do it with Drupal.  Our <a href="http://bearhog.com/">Flash developer</a>, who is awesome, built his piece around an assumed XML data source, and provided us with a static XML sample.</p>
<p>We modeled the data as Drupal &#8220;books&#8221;: each book is a site section, and each section contains pages and other nodes as needed.  CCK and its closest friends (Filefield, ImageAPI/cache) are sufficient to fill out the core modules for this.  The we wrote a custom module that iteratively goes through each book and uses the structured node content to fill out an XML template.  The system handles image attachments and Flash video references with aplomb.</p>
<p>Our theme consists of a quick modification to Garland that serves up the Flash file on a clean, white background if the home page is requested, and the typical Garland page rendering otherwise.  This lets Garland show the structured content and admin pages to authorized users, while public users only see the Flash.</p>
<ul>
<li><a href="http://mesaglobal.com/">http://mesaglobal.com/</a></li>
<li><a href="http://uniworldgroup.com/">http://uniworldgroup.com/</a></li>
</ul>
<p><strong>News aggregation and volunteerism portal</strong></p>
<p>The three founders at Fractor, no intellectual slouches, won themselves a MacArthur grant for their novel idea: a way for users to look at top news, and for each story see a list of related opportunities for volunteerism.  Facts plus acts equals Fractor.</p>
<p>We designed and built the identity, design, and site with them.  The site is in semi-private beta now.</p>
<p>The theme consists of typical Drupal-rendered pages, but also of a persistent &#8220;news finder&#8221; layer, a jQuery-run news browser application that shows by default on the home page and stands at the ready on other public pages.  In this layer, you can easily browse through thousands of news items by category and see the top volunteer act related to each one.  If you click on one of the news items, you&#8217;ll see a detail view that shows a longer list of related acts.  All of this happens with a good bit of Ajax, so that the user experience is of an application that lives in a separate layer over the rest of the site.  Since it&#8217;s aggregated news and constantly updated, we had no SEO worries with supplying so much content through Ajax.  Fun stuff.</p>
<ul>
<li><a href="http://demo.fractor.org/">http://demo.fractor.org/</a></li>
</ul>
<p><strong>Rapid prototyping</strong></p>
<p>As <a href="http://blog.helen-marie.com/index.php/2009/01/drupal-as-a-prototyping-tool/">we&#8217;ve said before</a>, Drupal&#8217;s flexibility actually allows you to prototype a site before you need to commit to much in earnest.  It also allows you to fill out content without making huge commitments to content structures &#8212; or the site structure, for that matter.</p>
<p>One of our clients came to us in January with a need to get a prototype up for an international media conference &#8212; in February.  The idea behind the site is to serve as a support and networking platform for independent citizen journalists.  They can store and share footage, craft their projects online, and learn from seasoned professionals.  The client didn&#8217;t have the whole site structure or functionality in place; indeed, they wanted to use feedback from the conference attendees to help determine the course of development.</p>
<p>So we took a month to prototype a fairly robust site that allows users to create profiles, upload footage, and contribute footage to other users&#8217; projects.  We&#8217;ve also got a second set of professional or &#8220;faculty&#8221; users who can create instructional blog posts and upload footage and files.  We did this by making three important decisions:</p>
<ol>
<li>Write a minimum of custom code, relying instead on the most rock-solid modules in the community.</li>
<li>De-emphasize theming, which can eat up a lot of time without providing much benefit in the prototyping phase.</li>
<li>Take advantage of a third-party media delivery network (Kaltura) with a well-written Drupal module already available.</li>
</ol>
<p><a href="http://mojo.helen-marie.com/">http://mojo.helen-marie.com/</a></p>
<img src="http://feeds.feedburner.com/~r/helenmarieblog/~4/lXUaSKq5EPw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.helen-marie.com/index.php/2009/02/things-we-do-in-drupal/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.helen-marie.com/index.php/2009/02/things-we-do-in-drupal/</feedburner:origLink></item>
		<item>
		<title>Build what you need, not what you want</title>
		<link>http://feedproxy.google.com/~r/helenmarieblog/~3/C86R8vTEkVQ/</link>
		<comments>http://blog.helen-marie.com/index.php/2009/02/build-what-you-need/#comments</comments>
		<pubDate>Mon, 23 Feb 2009 21:17:18 +0000</pubDate>
		<dc:creator>msh</dc:creator>
				<category><![CDATA[Client Side]]></category>
		<category><![CDATA[contentmanagement]]></category>
		<category><![CDATA[technologicalpanic]]></category>

		<guid isPermaLink="false">http://blog.helen-marie.com/?p=72</guid>
		<description><![CDATA[I met a writer the other night who has spent months freelancing for a prominent national magazine.  The magazine had enjoyed a reasonably popular web audience, including a community of frequent posters to its bulletin board.  The community was mostly middle-aged, middle-American women who used the magazine&#8217;s online space to chat and bring up issues [...]]]></description>
			<content:encoded><![CDATA[<p>I met a writer the other night who has spent months freelancing for a prominent national magazine.  The magazine had enjoyed a reasonably popular web audience, including a community of frequent posters to its bulletin board.  The community was mostly middle-aged, middle-American women who used the magazine&#8217;s online space to chat and bring up issues that were loosely related to the magazine&#8217;s content.</p>
<p>It was an open question how best to take advantage of this community to benefit the magazine.  But instead of starting with obvious questions &#8212; Who are these users? What do they care about?  How can we increase their enthusiasm for our brand? &#8212; someone high up in the magazine&#8217;s interactive food chain had a classic <a href="http://blog.helen-marie.com/index.php/tag/technologicalpanic/">technological panic</a>.<span id="more-72"></span> The panic took this form, probably late at night:</p>
<p><em>What about social networks?  What about Facebook?  What about Twitter?  What about blogging?  Everyone&#8217;s doing it but us!  <strong>We need to catch up.</strong></em></p>
<p>So the magazine built a social network.  It probably hired an agency that affirmed the magazine&#8217;s fears of obsolescence and charged them an outsized fee to build every last microblog and Twitter integration, user profile, friend-manager, minifeed, video uploader, and widget that <a href="http://blog.helen-marie.com/index.php/2008/12/dangerous-phrases-wouldnt-it-be-cool-if/">they could imagine</a> in their darkest nightmares of media isolation.</p>
<p>The magazine launched their Spanking New Social Presence and, to their shock, lost all of the users who had made their old bulletin board such a lively place.</p>
<p>That&#8217;s how this writer I met, a young, urban, male Brooklynite, got his job: every day he logs in as five different women and maintains their ghost user profiles.  He simulates social activity on a social network that was conceived in panic, cost the magazine a good deal of increasingly scarce resources, alienated the community it was supposed to engage.</p>
<p>Instead of starting with open questions, this online initiative started in a panic.  And now they have a structure that requires them to lie through their teeth just to present a semblance of activity.</p>
<p>Don&#8217;t let this be you!  Start with the right questions about your situation, and be open to the answers that you&#8217;ll find.  For some organizations, blogging, Twitter, and a Facebook presence are just what the doctor ordered.  Those who are  lucky enough to have an existing online user base need to start with their users.  Users are the lifeblood of a participatory web.</p>
<p>And remember this: the structure you build brings with it a certain infrastructure, and that infrastructure must be maintained.  If you create employee blogs, you better make sure that your employees have something to say, and are trained to publish on a regular basis.  If you push your staff to sign up for Twitter, you need to make sure that they&#8217;re actively writing &#8212; and, I hope it doesn&#8217;t need to be said, that they <em>want</em> to write.  And if you let users create profiles and write blog entries, you need staff to review those profiles and posts on a regular basis.</p>
<p>An empty social network is just like bad standup comedy: nobody wants to be in the same room.  Make sure that your room, regardless of its size, makes your audience want to come back.</p>
<img src="http://feeds.feedburner.com/~r/helenmarieblog/~4/C86R8vTEkVQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.helen-marie.com/index.php/2009/02/build-what-you-need/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.helen-marie.com/index.php/2009/02/build-what-you-need/</feedburner:origLink></item>
		<item>
		<title>The Web is Expensive</title>
		<link>http://feedproxy.google.com/~r/helenmarieblog/~3/rRms6v1RPOs/</link>
		<comments>http://blog.helen-marie.com/index.php/2009/01/the-web-is-expensive/#comments</comments>
		<pubDate>Fri, 23 Jan 2009 19:15:37 +0000</pubDate>
		<dc:creator>msh</dc:creator>
				<category><![CDATA[Client Side]]></category>
		<category><![CDATA[budget]]></category>
		<category><![CDATA[consulting]]></category>
		<category><![CDATA[specialization]]></category>
		<category><![CDATA[technologicalpanic]]></category>

		<guid isPermaLink="false">http://blog.helen-marie.com/?p=62</guid>
		<description><![CDATA[It&#8217;s easy to forget that we work in a new and strange industry.  We surround ourselves with ourselves, so we take the nature of our product for granted.  But for the majority of web users, we create virtual products &#8212; they take up no space; their size, complexity, and location are indeterminate; they appear and [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s easy to forget that we work in a new and strange industry.  We surround ourselves with ourselves, so we take the nature of our product for granted.  But for the majority of web users, we create virtual products &#8212; they take up no space; their size, complexity, and location are indeterminate; they appear and disappear from the screen in an instant.  So how to value their worth?</p>
<p><span id="more-62"></span></p>
<p>For many of our clients, the worth is apparent, either because of their past experience in this arena or their experience with similar creative services (advertising, brand strategy, business consulting, etc.).  It&#8217;s a relatively straightforward process to translate a strategy into a proposal and budget with clients like these.</p>
<p>For many other clients, though, even those with deep pockets, the web is a hard place to get a grip on.  This could be because <a title="Technological Panic: a continuing study" href="http://blog.helen-marie.com/index.php/tag/technologicalpanic/">technology scares them</a>.  They might equate their IT budget with the kind of work that we do, because of they perceive <a title="Maybe they Know A Guy." href="http://blog.helen-marie.com/index.php/2008/11/dangerous-phrases-i-know-a-guy/">a shared arena of activity</a>.  Or the web to them is <a title="That's wicked cool" href="http://blog.helen-marie.com/index.php/2008/12/dangerous-phrases-wouldnt-it-be-cool-if/">an infinite realm of untold, mind-boggling possibility</a>.  Or, maybe, they&#8217;ve stumbled through every creative project they&#8217;ve ever embarked on in the past, and expect that we operate in the same fashion.</p>
<p>There are myriad ways to get to a common vision of the value of the work that we do.  And keep in mind that we don&#8217;t mean only us; we want to arrive at a common vision of value for our industry, not just ourselves.  We may not be the firm for you, but you&#8217;ll have a much more successful search if you can better quantify the worth of your project.</p>
<p>So, the &#8220;we&#8221; and &#8220;us&#8221; below don&#8217;t refer just to us at Helen Marie; we&#8217;re presumptuously speaking for the industry.</p>
<p><strong>The bottom line</strong></p>
<p>An easy one. You, the client, need us to do something that you estimate will affect your bottom line by X dollars in the next year.  You want to come out ahead, so obviously our work can&#8217;t cost X dollars.  But it shouldn&#8217;t be surprising for it to cost, say, half of X.  Your payment to us is fixed, but the value to you increases beyond the next year.  Our fee, then, decreases over time in relationship to the change in your bottom line.  This is math that you can do in advance of your agency search, and that will help you square your available budget against what you&#8217;re asking an agency to produce.</p>
<p><strong>What it would really cost you</strong></p>
<p>This often comes into play with calculations against your IT budget, because you imagine that the IT team can do work similar to ours.  Our long experience working with (and in) IT departments is that this assumption is always, always wrong.  And your IT team will be happy to disabuse you of the notion that they can magically transmogrify into a group with decades of collective web experience who can give your project the attention and focus it deserves.</p>
<p>If you can&#8217;t square our cost against your IT team, then what other point of reference do you have?  You can look at the job listings for web designers, web developers, information architects, and interactive project managers, and piece together the cost of bringing them on salary for a year or more.</p>
<p><strong>Our experience</strong></p>
<p>If you think a project is expensive, try doing it twice.  Or three times.  This happens often.  As we&#8217;ve said elsewhere on this blog, we&#8217;re often approached to redesign the client&#8217;s current site.  And the current site is often some kind of minor tragedy of wasted time and money.</p>
<p>We don&#8217;t guarantee that we will design and build a product that will answer all your needs for the next ten years.  What we do offer is the experience to make intelligent choices, and the opportunity to educate you on the process and help you to make informed choices.</p>
<p><strong>Peace of mind</strong></p>
<p>There are few experiences more relieving than finding the perfect experts for your problem.  You can&#8217;t quantify the dollar worth of that feeling.  But you can imagine paying for it.</p>
<img src="http://feeds.feedburner.com/~r/helenmarieblog/~4/rRms6v1RPOs" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.helen-marie.com/index.php/2009/01/the-web-is-expensive/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.helen-marie.com/index.php/2009/01/the-web-is-expensive/</feedburner:origLink></item>
		<item>
		<title>Drupal as a Prototyping Tool</title>
		<link>http://feedproxy.google.com/~r/helenmarieblog/~3/lLACfKU6Ros/</link>
		<comments>http://blog.helen-marie.com/index.php/2009/01/drupal-as-a-prototyping-tool/#comments</comments>
		<pubDate>Fri, 23 Jan 2009 18:32:57 +0000</pubDate>
		<dc:creator>msh</dc:creator>
				<category><![CDATA[The Craft]]></category>
		<category><![CDATA[drupal]]></category>
		<category><![CDATA[prototyping]]></category>

		<guid isPermaLink="false">http://blog.helen-marie.com/?p=63</guid>
		<description><![CDATA[There is a vast matrix that exists in my mind (there are also other, emptier spaces of such magnitude that we dare not approach).  The matrix maps functional requirements, content structures, and media assets against out-of-the-box Drupal functionality, popular and flexible modules, and theming methodologies.
This matrix exists in a Platonic form where all of [...]]]></description>
			<content:encoded><![CDATA[<p>There is a vast matrix that exists in my mind (there are also other, emptier spaces of such magnitude that we dare not approach).  The matrix maps functional requirements, content structures, and media assets against out-of-the-box Drupal functionality, popular and flexible modules, and theming methodologies.</p>
<p>This matrix exists in a Platonic form where all of the requirements and conditions map neatly to available functionality and structures.  It&#8217;s only when I populate it with the real-world facts of a project that gaps emerge. Those gaps identify the responsibilities and data structures that we&#8217;ll need to delegate to our own modules.  Once we group these by logical or functional affinity, we have our module strategy.</p>
<p><span id="more-63"></span></p>
<p>For instance, while scoping a recent project it became clear that the client was asking for functionality resembling part of an e-commerce application.  Part, but not all: the client wouldn&#8217;t specify the order, but would rather be supplied with a template of an order, and given the option to alter details of the order before submitting.  And instead of processing payment, our application would submit to the client&#8217;s fulfillment department, who would then issue an invoice and process the order through existing systems.</p>
<p>We could have scoped this by documenting order flow, architecting the process, and writing a technical brief that would summarize business requirements and accompanying functional requirements.  Instead, we built a Drupal prototype to explore how far existing modules would get us.</p>
<p>You can see a very basic iteration of this prototype here:</p>
<p><a href="http://d1.helen-marie.com/">http://d1.helen-marie.com/</a></p>
<p>Barebones indeed.  But that&#8217;s the point: this took fifteen minutes, and supplied us with much more accurate information regarding how we could work around the assumptions of the <a href="http://drupal.org/project/ubercart">UberCart module</a>.  Those assumptions form the core of our module strategy.  On top of that, we build in time and budget to cover theme development, and we have our basic scope and requirements.  We also know a lot more about our upgrade path than we would from an abstract scoping document, because we can cite UberCart&#8217;s support and upgrade history (as well as Drupal&#8217;s, of course).</p>
<p>And on top of <em>that</em>, we could show the client a working example of a portion of the proposed functionality.  That&#8217;s exciting for everyone involved, and comes at a very small internal cost.</p>
<p>The customization strategy becomes clear:</p>
<ul>
<li>A user of type A (or, in Drupal &#8220;role A&#8221;) can create an order for a user of type B.</li>
<li>Type B user receives email notification and link when order is created.</li>
<li>Order is considered &#8220;paid&#8221; by UberCart when submitted.</li>
<li>Type A user receives email notification with order details when it is submitted.</li>
</ul>
<p>That wasn&#8217;t so hard, was it?</p>
<p>One of the reservations underlying this approach is this: &#8220;What if I pick the wrong modules the first time around?  What if my scope is affected because I change my mind about my module strategy after the client accepts the budget?&#8221;</p>
<p>This is a risk you run whenever you pair a scope and a budget.  It doesn&#8217;t matter what platform you use, or how specifically you set your scope.  This is a problem you solve by setting a budget that allows for a certain degree of agility (i.e., making useful mistakes, learning from them, and correcting) during development.</p>
<img src="http://feeds.feedburner.com/~r/helenmarieblog/~4/lLACfKU6Ros" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.helen-marie.com/index.php/2009/01/drupal-as-a-prototyping-tool/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://blog.helen-marie.com/index.php/2009/01/drupal-as-a-prototyping-tool/</feedburner:origLink></item>
		<item>
		<title>Flash and HTML layers: still a problem</title>
		<link>http://feedproxy.google.com/~r/helenmarieblog/~3/hrgNGCO-0fs/</link>
		<comments>http://blog.helen-marie.com/index.php/2009/01/flash-and-html-layers/#comments</comments>
		<pubDate>Thu, 08 Jan 2009 04:45:11 +0000</pubDate>
		<dc:creator>msh</dc:creator>
				<category><![CDATA[The Craft]]></category>
		<category><![CDATA[bugs]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[informationarchitecture]]></category>
		<category><![CDATA[jquery]]></category>

		<guid isPermaLink="false">http://blog.helen-marie.com/?p=38</guid>
		<description><![CDATA[Update, April 2009: Change.gov seems to have changed their video player size, so the working example in this entry no longer has a strict correlation between the video player and the image replacement.  The principle still holds, though, and it would be an easy fix to create a new replacement image using the naming conventions [...]]]></description>
			<content:encoded><![CDATA[<p><em>Update, April 2009: Change.gov seems to have changed their video player size, so the working example in this entry no longer has a strict correlation between the video player and the image replacement.  The principle still holds, though, and it would be an easy fix to create a new replacement image using the naming conventions below. &#8212; msh</em></p>
<p>Happy 2009!  OK, back to work.</p>
<p>Note to developers and designers: you still can&#8217;t layer HTML over Flash, and you still need to design around it.  Sad, but true.  For instance, this page on <a href="http://change.gov/page/content/discussservice">change.gov</a> has the classic problem: a Flash video player at the top of the page, and a menu that draws a layer on rollover.  The two are not friends.</p>
<p><span id="more-38"></span></p>
<p>In its natural state:</p>
<p><a href="http://blog.helen-marie.com/wp-content/uploads/2009/01/layer-off.png"><img class="aligncenter size-medium wp-image-39" title="layer-off" src="http://blog.helen-marie.com/wp-content/uploads/2009/01/layer-off-300x251.png" alt="layer-off" width="300" height="251" /></a></p>
<p>On mouse over &#8212; whoops!  The video&#8217;s &#8220;play&#8221; icon shows through the menu:</p>
<p><a href="http://blog.helen-marie.com/wp-content/uploads/2009/01/layer-over.png"><img class="aligncenter size-medium wp-image-40" title="layer-over" src="http://blog.helen-marie.com/wp-content/uploads/2009/01/layer-over-300x238.png" alt="layer-over" width="300" height="238" /></a></p>
<p>It&#8217;s a problem on standards-compliant browsers and elsewhere.  There are two ways around it: hide the Flash player when the menu layer appears, or design around it.  We recommend the latter, as it enables you to avoid hacks or sleight-of-hand.</p>
<p>If you need the video right there, though, you&#8217;ll have to figure out a better way.  And  if you have to resort to trickery, you might as well entertain yourself.</p>
<p><strong>Fixing change.gov&#8217;s problem</strong></p>
<p>This page uses the uber-popular <a href="http://www.longtailvideo.com/players/jw-flv-player/">Media Player from Jeroen Wijering</a>, which unlike the QuickTime player is fairly scriptable.  But instead of making any calls on the Flash player or its helper scripts, we&#8217;re just going to destroy it entirely.</p>
<p>The goal is to replace the video player with some kind of flat HTML whenever the mouse is over the menu.  Then we can guarantee that the menu layers will always layer properly over boring HTML elements instead of being invaded by underlying Flash goobers.  When the mouse leaves the menu, we can restore the original video player.</p>
<p>You&#8217;ll need two main entities: a listener, to respond to the menu rollover event; and a Flash player handler, to hide and show (or destroy and re-create) the player.  Luckily, change.gov already has the former; it&#8217;s in <a href="http://change.gov/js/jquery">this JavaScript file</a>.  Our modified version, <a href="http://blog.helen-marie.com/examples/20090107-changegov/change.js">available here</a>, has two additional method calls at lines 95 and 106.  These refer to a nav handler object defined in <a href="http://blog.helen-marie.com/examples/20090107-changegov/hm.js">this additional JS file</a>.</p>
<p>I made one substantial change to change.gov&#8217;s original HTML: I gave a class of &#8220;wrapper-video&#8221; to the div that contains the video player.  The nav handler will work on the assumption that every video player that might be affected is classed with &#8220;wrapper-video&#8221;.</p>
<p>When the handler&#8217;s setOver() method is invoked, it loops through &#8220;wrapper-video&#8221; divs.  For each div, it caches the original HTML and the calculated width and height.  Next, it sets the div&#8217;s background to an image: in this case, an exact still of the video player.  E.g.:</p>
<p><img class="aligncenter size-full wp-image-48" title="hide-293x185" src="http://blog.helen-marie.com/wp-content/uploads/2009/01/hide-293x185.png" alt="hide-293x185" width="293" height="185" /></p>
<p>Looks convincing.  The image file name contains the dimensions, and setOver() takes advantage of this by constructing the file name dynamically.  This way, if you had more than one video player size, you&#8217;d be covered.  For good measure, we also explicitly set the div&#8217;s width and height, so it doesn&#8217;t collapse when we erase its contents.</p>
<p>Once all of this is done, we call jQuery.html(&#8221;") on the div, erasing its contents.  Now it just shows the background image, and will play nicely with the menu layers.</p>
<p>When the mouse leaves the menu area, navHandler.setOut() restores the original HTML contents of each video wrapper div.</p>
<p><a href="http://blog.helen-marie.com/examples/20090107-changegov/">You can see a working example here.</a></p>
<p>The files are also available for <a title="Download a ZIP of the final files" href="http://blog.helen-marie.com/examples/20090107-changegov/change-gov-fun.zip">downoad as a ZIP</a>.</p>
<p>The better solution clearly would be to design around this issue, but all too often we don&#8217;t have a lot of choice.  If video is the featured page content, there&#8217;s rarely a good way to push it safely towards the fold.</p>
<p>(Caveats: browser testing, your mileage may vary, etc.)</p>
<img src="http://feeds.feedburner.com/~r/helenmarieblog/~4/hrgNGCO-0fs" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.helen-marie.com/index.php/2009/01/flash-and-html-layers/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://blog.helen-marie.com/index.php/2009/01/flash-and-html-layers/</feedburner:origLink></item>
		<item>
		<title>Common Information Architecture Documents</title>
		<link>http://feedproxy.google.com/~r/helenmarieblog/~3/0n4WL-H2FzI/</link>
		<comments>http://blog.helen-marie.com/index.php/2008/12/common-ia-documents/#comments</comments>
		<pubDate>Wed, 31 Dec 2008 18:00:11 +0000</pubDate>
		<dc:creator>msh</dc:creator>
				<category><![CDATA[The Basics]]></category>
		<category><![CDATA[informationarchitecture]]></category>
		<category><![CDATA[Strategy]]></category>

		<guid isPermaLink="false">http://blog.helen-marie.com/?p=32</guid>
		<description><![CDATA[What&#8217;s in a web page design, anyway?  If you abstract away the colors, textures, imagery &#8212; all of the elements we call the &#8220;look and feel&#8221; &#8212; what&#8217;s left?

Words
Links
Buttons
Input fields
Columns
Boxes
Scroll bars

Mmm, boring list.  That&#8217;s good, though: this should not be the exciting part.  The exciting parts should be the purpose and content of the web [...]]]></description>
			<content:encoded><![CDATA[<p>What&#8217;s in a web page design, anyway?  If you abstract away the colors, textures, imagery &#8212; all of the elements we call the &#8220;look and feel&#8221; &#8212; what&#8217;s left?</p>
<ul>
<li>Words</li>
<li>Links</li>
<li>Buttons</li>
<li>Input fields</li>
<li>Columns</li>
<li>Boxes</li>
<li>Scroll bars</li>
</ul>
<p>Mmm, boring list.  That&#8217;s good, though: this should not be the exciting part.  The exciting parts should be the purpose and content of the web site, and the look and feel that give it life &#8212; the struggle and the glory of web design. The elements in the list above should be the basic tools, not the wheels you&#8217;re going to reinvent in order to make your site the greatest thing ever to happen to the web.</p>
<p><span id="more-32"></span></p>
<p>We&#8217;ve come a long way on in web design in the last ten years.  We all used to feel compelled to re-think every element of every page: scrollbars, link treatments,  you name it.  There was scant agreement on a common toolbox of elements and techniques, even though experts like <a href="http://www.useit.com/jakob/">Jakob Nielsen</a> were (and still are) pushing us to adopt just such a toolbox to make the web a more usable place.</p>
<p>To organize these basic elements, your agency will engage in a period of information architecture, or IA.  IA is a discipline that organizes the information, structure, interfaces, and functional goals of a site, and provides guidance in these areas to both the designers and technologists involved.  (At Helen Marie, we consider IA a cross-disciplinary practice that involves all of us: producers, programmers, designers, and clients.)</p>
<p>The process of creating these documents will also enable you to see the first abstract view, the &#8220;bones&#8221;, of your site.  If you were designing a house with an architect, you&#8217;d use this phase to decide where things go: is there a bathroom attached to the kitchen?  What about in the front hall instead?  You&#8217;ll run into similar structural issues with your site: Do we have a separate &#8220;frequently asked questions&#8221; page?  Should it be its own section in the site, or in a larger &#8220;help&#8221; section?</p>
<p><strong>Sitemaps and Wireframes</strong></p>
<p>On common IA product is a <a href="http://en.wikipedia.org/wiki/Site_map">sitemap</a>.  This document provides a bird&#8217;s-eye view of your site, its major sections and pages.  Another is a <a href="http://en.wikipedia.org/wiki/Website_wireframe">wireframe</a>.  This is typically a collection of documents that describe the interfaces and organization of elements on each page of your site.</p>
<p>A simple sitemap might look like this:</p>
<p><a href="http://blog.helen-marie.com/wp-content/uploads/2008/12/sitemap-sample.png"><img class="alignnone size-medium wp-image-33" title="Sample sitemap" src="http://blog.helen-marie.com/wp-content/uploads/2008/12/sitemap-sample-300x231.png" alt="" width="300" height="231" /></a></p>
<p>As you can see, the sitemap can indicate pages or sections that you want to include in the future, as well as those you mean to build immediately.  This is a smart, cost-efficient way to start planning your site in phases.</p>
<p>A wireframe can be more or less complicated, but generally looks something like this:</p>
<p><a href="http://blog.helen-marie.com/wp-content/uploads/2008/12/wireframe-sample1.png"><img class="alignnone size-medium wp-image-34" title="Sample wireframe" src="http://blog.helen-marie.com/wp-content/uploads/2008/12/wireframe-sample1-300x244.png" alt="" width="300" height="244" /></a></p>
<p>Wireframing is an opportunity to hash out what each page will contain, and how it will prioritize and organize its content, before the designers get to work.  This process also enables you to make concrete decisions about what features and content are important on your site.  These decisions can be easy or difficult, and this can affect the length of the IA process.  But it&#8217;s always much easier, and more cost-efficient, to wrestle with these issues at the very beginning, before designers start putting the flesh on these bones.</p>
<img src="http://feeds.feedburner.com/~r/helenmarieblog/~4/0n4WL-H2FzI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.helen-marie.com/index.php/2008/12/common-ia-documents/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.helen-marie.com/index.php/2008/12/common-ia-documents/</feedburner:origLink></item>
		<item>
		<title>Dangerous Phrases: “Wouldn’t it be cool if…”</title>
		<link>http://feedproxy.google.com/~r/helenmarieblog/~3/Ho7-tRmH0ow/</link>
		<comments>http://blog.helen-marie.com/index.php/2008/12/dangerous-phrases-wouldnt-it-be-cool-if/#comments</comments>
		<pubDate>Tue, 30 Dec 2008 18:48:31 +0000</pubDate>
		<dc:creator>msh</dc:creator>
				<category><![CDATA[Client Side]]></category>
		<category><![CDATA[Strategy]]></category>
		<category><![CDATA[dangerousphrases]]></category>
		<category><![CDATA[informationarchitecture]]></category>
		<category><![CDATA[phases]]></category>

		<guid isPermaLink="false">http://blog.helen-marie.com/?p=25</guid>
		<description><![CDATA[Now, we at Helen Marie think the web is very cool. That&#8217;s why we&#8217;re in this business.  We get excited on a daily basis about all manner of new design and interface ideas and technology.  (Personally, I discover a new way to love jQuery almost every day, and that&#8217;s exciting.)  It&#8217;s this constant fascination that [...]]]></description>
			<content:encoded><![CDATA[<p>Now, we at Helen Marie think the web is <em>very cool.</em> That&#8217;s why we&#8217;re in this business.  We get excited on a daily basis about all manner of new design and interface ideas and technology.  (Personally, I discover a new way to love <a href="http://jquery.com/">jQuery</a> almost every day, and that&#8217;s exciting.)  It&#8217;s this constant fascination that energizes each one of our projects, and that we hope to find reflected in our clients.</p>
<p>Part of our job is to focus this enthusiasm into disciplined decisions about how best to serve a particular client and a particular project.  We have a lot of healthy arguments that start with, &#8220;Wouldn&#8217;t it be cool if&#8230;?&#8221;  The question is often followed by, &#8220;I agree, but we shouldn&#8217;t do that in this case because&#8230;.&#8221;  Or, just as often: &#8220;That&#8217;s great &#8212; but let&#8217;s consider that for phase 2.&#8221;</p>
<p>We go through this in order to avoid three big pitfalls: building more than the client needs or can immediately use, rejecting new approaches or techniques because we&#8217;re unfamiliar, and committing to unreliable approaches or techniques because the coolness factor affects our judgment.  We wrestle with these issues so you don&#8217;t have to.</p>
<p><span id="more-25"></span></p>
<p>(There are a lot of interactive technologies that are the equivalent of a two-seat <a title="Nice" href="http://www.lotuscars.com/exige_s240.html">Lotus Exige</a>: extremely cool, but maybe not what you need.)</p>
<p>You may have done your own research before you even found us, however, and decided that your new site absolutely has to include X, or be built on Y.  We often meet with potential clients who say, &#8220;We want our new site to be built on [insert trendy platform or poorly-understood technology here].&#8221;  Why, we ask? &#8220;We&#8217;ve read about it, and it looks like the best new technology for us.&#8221;</p>
<p>This is an ideal point to ask us what we think of the idea, and whether we have other recommendations.  That&#8217;s the beginning of a great conversation that will help you to educate yourself about your options, learn something about us and our experience, and save money in the long-haul by making the right decisions when you have the most flexibility – i.e., before you start down any road.</p>
<p>You&#8217;ll be able to meet the overwhelming majority of your project&#8217;s critical strategic needs with proven, industry-standard design and interface practices.  Your agency, if they&#8217;re up to snuff, will have a toolbox of information design, user interface, and technology solutions that apply in some manner to almost everything that can come up.</p>
<p>Your first contact with an agency should be a great learning experience.  I know that I love talking to potential and new clients about the broad strokes of planning and building a web application.  I call it <em>Everything You Always Wanted To Know About The Web But Were Afraid To Ask</em>.  For you, the client, it&#8217;s free advice; for us, it&#8217;s a chance to show you how we think and work.</p>
<img src="http://feeds.feedburner.com/~r/helenmarieblog/~4/Ho7-tRmH0ow" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.helen-marie.com/index.php/2008/12/dangerous-phrases-wouldnt-it-be-cool-if/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://blog.helen-marie.com/index.php/2008/12/dangerous-phrases-wouldnt-it-be-cool-if/</feedburner:origLink></item>
	</channel>
</rss>

