Growing Venture Solutions - GVS - IxDA http://growingventuresolutions.com/taxonomy/term/120/0 en Marketing, beauty, the senses, and Agile at Big Apple Redux 2011 http://growingventuresolutions.com/blog/big-apple-redux-2011 <p>In May, I had the pleasure of attending the <a href="http://www.ixda.org/local/new-york-ixda">IXDA NYC</a>'s "redUX", showcasing some of the talks from <a href="http://www.ixda.org/interaction/">Interaction 11 conference</a> earlier this year (where possible, I've linked to the video from the Interaction 11 session).</p> <p>Ray DeLaPena (@rayraydel) did an excellent writeup of the talks in <a href="http://raydel.net/blog/archives/809">Big Apple Redux Recap</a>, so I'm going to focus on the talks that I could relate to the most (and they were the ones where I captured the most notes).</p> <h3>Marketing is not a 4 Letter Word by Megan Grocki</h3> <p>[<a href="http://www.ixda.org/resources/megan-grocki-marketing-not-4-letter-word">video</a>]</p> <p>Many folks, particularly designers and developers, have a negative reaction to the word "marketing".</p> <p>Megan says, "Marketing is like matchmaking". You want people to know about your work, your portfolio, your company or your product. It's a nice little ecosystem where something that is well designed gets promoted, and then you're more likely to get more work like it.</p> <p>Who is doing marketing right? The Disney experience is immersive and enchanting and when you get home, they remind you to book your next trip! Netflix has great branding and also immersive. It's pretty easy to spend ages in their site rating, reviewing and being shown suggestions for things you might like. I agree with both those examples. Megan also cited Zipcar as a product with excellent user experience.</p> <p>During Megan's talks, it really dawned on me that at GVS, we don't spend much time marketing ourselves, particularly our work on event and conference sites, yet we should. Given the choice, we've always done client work and improvements to the <a href="http://usecod.com">Conference Organizing Distribution (COD)</a> itself, rather than putting portfolios and case studies together. But we are focusing on conference and event websites, and we need to raise the awareness our focus and abilities to potential clients. And those clients always help fund direct improvements to COD.</p> <p>Therefore, I'm glad to say we've got several new <a href="http://growingventuresolutions.com/portfolio/153">conference project listings in our portfolio</a>.</p> <h3>Beautiful Interactions: Codifying Aesthetics in Interaction Design</h3> <p>by Callie Neylan [<a href="http://www.ixda.org/resources/callie-neylan-beautiful-interactions">video</a>]</p> <p>Callie told us that beauty is visceral, behavioral and reflective. Beauty is symmetry and patterns and mathematics. It's the Fibonacci sequence and golden ratio. Humans have evolved to find these patterns beautiful. The new <a href="http://www.flickr.com/photos/stop/5034665936/">Twitter site layout was based on the Golden Ratio</a>.</p> <p>Vision is the dominant sense, but interactions and experience design aren't just limited to visuals either. Touch is the other primary interaction that we design for. Buy there's audio: pink noise is filtration of white noise. It helps humans get into a flow. And smell. Did you know, the Katy Perry's CD <em>Teenage Dream</em> was scented with cotton candy, as will her upcoming concert tour (if anyone goes, please let me know if it enhanced the experience!).</p> <p>Humans have a preference for patterns. Beautiful relationships are honesty, trust, support, communication and humor. These are all working within a healthy relationship. Callie then went on to rank the beauty of Seattle and Baltimore based on all of these criteria.</p> <p>I love her quote “Interaction designers are mixtures of aesthetic equalizer".</p> <p><img src="http://growingventuresolutions.com/gvsfiles/295426740.jpg" alt="Drupal, the smell of freedom" /><br /> <em>An image that embodies marketing, Drupal and the senses touch, sight and smell! Photo by <a href="http://twitter.com/#!/rupl">@rupl</a></em></p> <h3>Agile’s Secret Step: Discovery (and Planning!)</h3> <p>by Lis Hubert [<a href="http://www.slideshare.net/lishubert/agiles-secret-step-discovery">slides</a>]</p> <p>In Agile, or any other project management system, the first step is the discovery and planning phase.<br /> But in Agile, teams don't always know where UX fits in. In waterfall, UX had it's own "design" phase.</p> <p>Lis pointed out the hard truth: UX slows down Agile, but without it, we don't know who users are, how they need to use it, etc. She says, the problem is we're not using Agile correctly, and used the assembly-line analogy: there is a backlog and there is a priority.</p> <p>During discovery, you discover the what. You conduct user research, business research. You put the product roadmap in priority order, you plan, analyze and prioritize continuously. Discovery is figuring out what to build in what order. Discovery and planning often happens outside of Agile.</p> <p>Usability testing decreases risk.</p> <h4>Agile, yay!</h4> <p>This talk resonated with me because we (GVS) are Agile as much as possible. Even when clients think it's totally weird, and make us do tons of documentation upfront, we always end up adopting some Agile techniques. Early feedback is a critical one. During the requirements phase, it's nearly impossible for clients and development team to think of every single scenario, and we'd rather not. We'd rather start building, getting feedback, tweaking, building, feedback, etc.</p> <p>We're building UX into projects. I recently had pleasure of interviewing 14 readers of the product we were converting to Drupal. It was invaluable in understanding their unique needs and desires. Many of the readers are 40+ years old, and less confident about interacting with the social web (specifically, they were nervous about posting comments!) The product is now 90% built, and I'm ready to start usability testing. I hope that we have designed a reassuring interface.</p> <h3>Conclusion</h3> <p>For a one day mini conference, this was $30 very well spent. I met loads of people in the NYC interaction design community, and several of them were familiar with Drupal. I really value and appreciate time spent with smart folks!</p> <p>Additionally, local Drupal groups should consider hosting their own DrupalCon Redux. Invite a few speakers from a recent DrupalCon, and let your local community hear some of the great sessions live. And hey, you can use COD to put together your Redux site!</p> http://growingventuresolutions.com/blog/big-apple-redux-2011#comments Business conference organizing distribution interaction design IxDA Thu, 02 Jun 2011 01:14:27 +0000 lisa 1338 at http://growingventuresolutions.com What content is HOT on my site? Drupal's Radioactivity module to the rescue http://growingventuresolutions.com/blog/what-content-hot-my-site-drupal-s-radioactivity-module-rescue <p>Earlier this year we supported the IxDA in launching a new version of their IxDA.org site. One of the many interesting new features of this site is the ability to sort content by <a href="http://www.ixda.org/discussion/by-hotness">"hotness"</a>. The goal of this tool is to create a list of interesting content on the site. Their analytics show them that most people who are involved in the site visit it at least twice a month. So, they wanted a system to highlight content over the last two to three weeks. Enter the <a href="http://drupal.org/project/radioactivity">radioactivity module</a>.</p> <h3>Radioactivity Module for Drupal</h3> <p>The Radioactivity module works on the concept of adding energy to a piece of content which then "decays" (or diminishes) with a particular half-life. The exact behavior is up to the site administrator, but on IxDA.org we originally set it up with values roughly similar to:</p> <ul> <li>Posting content adds a lot of energy so that the hotness favors recent items.</li> <li>Commenting on a post adds some energy</li> <li>Voting up adds a bit of energy, voting down subtracts some energy</li> <li>Favoriting a post adds some energy as well</li> </ul> <p>We've got a few other elements that affect energy to help offset any potential gaming.</p> <p>We set the half-life for decay to 15 days. So, if a piece of content gets posted and 3 comments and 2 vote ups and 1 favorite with 100 views on the first day it will have about 500 units of energy. If it gets no new energy, it would decay down to 250 units of energy after 15 days, and then down to 125 after 30 days and so on. Eventually the energy and decay are really small and for efficiency the module simply deletes all records with less than 2 units of energy.</p> <!--break--><!--break--> <h3>Extending the Radioactivity Module</h3> <p>We needed some features which simply were not available in the Radioactivity module. The first two were to create events for adding energy when a <a href="http://drupal.org/node/688556">node is created</a> and then some better <a href="http://drupal.org/node/451024">fivestar integration</a>.</p> <p>But I want to talk the most about the custom flag integration. The nature of the flag module is that it is so flexible and specific on each site that general flag integration for the Radioactivity module is probably not reasonable to add. So, instead I created a site-specific module for IxDA to do flag integration and have provided it here as an attachment so that you can download it and see how it works. If you look at the code, it is amazingly simple to build integration with the Radioactivity module!</p> <p>Creating a new Radioactivity integration module is amazingly simple. You really only need two hooks. The first is hook_radioactivity_info which declares some information about your integration module.</p> <p>Those of you comfortable with the FormAPI will appreciate the structure of the code - it contains an array of arrays of arrays!</p> <p><div class="codeblock"><code>/**<br /> * Implement hook_radioactivity_info().<br /> */<br />function ixda_radioactivity_flag_radioactivity_info() {<br />&nbsp; return array(&#039;sources&#039; =&gt; <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; array(&#039;node&#039; =&gt;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; array(&#039;favorite&#039; =&gt; array(&#039;title_placeholder&#039; =&gt; &#039;Flag post as favorite.&#039;),<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &#039;unfavorite&#039; =&gt; array(&#039;title_placeholder&#039; =&gt; &#039;Unflag a post as favorite.&#039;)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; )));<br />}</code></div></p> <p>The sources can be about different kinds of objects, this particular flag happens to be a flag on nodes called "Favorite" and people can either mark it as a Favorite or remove it as a favorite and I wanted the administrator to be able to assign points for either of those events.</p> <p>The next hook is not specifically radioactivity but is from the Flag module. This hook is called whenever an item is flagged (or un-flagged). This flag then calls functions from the radioactivity module to add energy to content.</p> <p><div class="codeblock"><code>/**<br /> * Implement hook_flag().<br /> */<br />function ixda_radioactivity_flag_flag($event, $flag, $content_id, $account) {<br />&nbsp; require_once drupal_get_path(&#039;module&#039;, &#039;radioactivity&#039;) .&#039;/radioactivity.inc&#039;;<br /><br />&nbsp; // If this is a favoriting.<br />&nbsp; if ($flag-&gt;name == &#039;favorite&#039;) {<br />&nbsp;&nbsp;&nbsp; $oid = $content_id;<br />&nbsp;&nbsp;&nbsp; $oclass = &#039;node&#039;;<br /><br />&nbsp;&nbsp;&nbsp; // Then either favorite the object or unfavorite it.<br />&nbsp;&nbsp;&nbsp; if ($event == &#039;flag&#039;) {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; radioactivity_add_energy($oid, $oclass, &#039;favorite&#039;);<br />&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp; else {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; radioactivity_add_energy($oid, $oclass, &#039;unfavorite&#039;);<br />&nbsp;&nbsp;&nbsp; }<br />&nbsp; }<br />}</code></div></p> <p><strong>That's IT!</strong> Two simple functions and you've done it. Everything else is configuration. Check out this video of setting up a new radioactivity profile and sorting content by that profile:</p> <p><object width="400" height="300"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=9337149&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=9337149&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed></object></p><p><a href="http://www.masteringdrupal.com/screencast/highlight-your-best-content-using-radioactivity-module">Using Drupal's Radioactivity Module to Highlight Your Best Content</a><br /> from <a href="http://www.masteringdrupal.com">Mastering Drupal</a>.</p> <h3>Best content on groups.drupal.org: Radioactivity again</h3> <p>I liked the module so much that I've now also deployed it on <a href="http://groups.drupal.org/hot">groups.drupal.org/hot</a>. It's available as a single page and the top 5 items at any given time are shown in a sidebar block.</p> <p>One of the features I would love to see is an rss feed of hot content. The problem there is that a piece of content could become hot twice. So, we would want to create a threshold value of energy for content that is included in the feed and then sort it descending by the day it broke that threshold.</p> http://growingventuresolutions.com/blog/what-content-hot-my-site-drupal-s-radioactivity-module-rescue#comments Planet Drupal content recommendation development IxDA Tue, 10 Aug 2010 06:00:00 +0000 Greg 911 at http://growingventuresolutions.com