<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	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/"
	>

<channel>
	<title>Think Vitamin &#187; Search Results  &#187;  silverback+app+css</title>
	<atom:link href="http://thinkvitamin.com/search/silverback+app+css/feed/rss2/" rel="self" type="application/rss+xml" />
	<link>http://thinkvitamin.com</link>
	<description>The Web Practitioner&#039;s Blog</description>
	<lastBuildDate>Wed, 08 Feb 2012 14:00:04 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<item>
		<title>Improve your app with Pre-Alpha Testing</title>
		<link>http://thinkvitamin.com/web-apps/improve-your-app-with-pre-alpha-testing/</link>
		<comments>http://thinkvitamin.com/web-apps/improve-your-app-with-pre-alpha-testing/#comments</comments>
		<pubDate>Tue, 05 Apr 2011 11:59:12 +0000</pubDate>
		<dc:creator>Ryan Carson</dc:creator>
				<category><![CDATA[Web Apps]]></category>
		<category><![CDATA[Features]]></category>

		<guid isPermaLink="false">http://thinkvitamin.com/?p=13240</guid>
		<description><![CDATA[We&#8217;ve been working hard on the re-brand and re-build of Think Vitamin Membership (soon to be called Treehouse). If you&#8217;re building a web app, I&#8217;d like to share a tactic that we used that has helped us a lot: Pre-Alpha Testing. Here&#8217;s the main problem: You need to do user testing on your app, but you&#8217;re [...]]]></description>
			<content:encoded><![CDATA[<p>We&#8217;ve been working hard on the re-brand and re-build of Think Vitamin Membership (soon to be called <a href="http://twitter.com/treehouse">Treehouse</a>). If you&#8217;re building a web app, I&#8217;d like to share a tactic that we used that has helped us a lot: Pre-Alpha Testing.<span id="more-13240"></span></p>
<p><img src="https://img.skitch.com/20110405-rw51f6ex2ra7uh2txsuyiws42y.png" alt="A screengrab of the user unlocking the 'Super Alpha Tester' badge" /></p>
<p>Here&#8217;s the main problem: You need to do user testing on your app, but you&#8217;re a long way off from having a Beta ready. The answer is Pre-Alpha Testing.</p>
<h3>How it works</h3>
<p>We&#8217;re building a learning game engine and we needed to do user testing and make sure it actually worked well and helped people learn. We couldn&#8217;t wait to design and build a Beta, only to discover there were fundamental problems with the way the game engine worked.</p>
<p>We solved the problem with what I call a &#8216;Pre-Alpha User Test&#8217;. Here&#8217;s how we did it &#8230;</p>
<h3>1. Created a User Flow Diagram</h3>
<p><img src="https://img.skitch.com/20110405-n59aj8hkfq3jr82sbqikdnin48.png" alt="User Flow Diagram showing the question, answer and quiz process of the gaming engine" /></p>
<p><a href="http://twitter.com/#!/allison_house">Allison</a> created a basic UFD that explained how the gaming engine would work. She used LovelyCharts but I&#8217;m a big fan of Google&#8217;s super-awesome <a href="http://www.google.com/google-d-s/drawings/">online drawing tool</a> (which has live-collaboration and powerful flow charting capabilities &#8211; all for free).</p>
<h3>2. Built basic views</h3>
<p>Once we agreed on the UFD, Allison marked up very basic HTML and CSS views of each page. These views are basically un-styled pages that our Developer, <a href="http://twitter.com/#!/commondream">Alan</a>, can then start hooking up.</p>
<p><img src="https://img.skitch.com/20110405-ehrkfi341tg5nqbgp2q4334fk1.png" alt="Screengrab of first commit" /></p>
<h3>3. Created a rough working mockup</h3>
<p>Once Allison committed the HTML/CSS views to GitHub, Alan then used JavaScript and HTML5 localStorage to create a working mockup of the app.</p>
<p>There were no user accounts or server-side databases. It&#8217;s all just client-side code to give the appearance of a working app.</p>
<p>Alan then deployed the app to <a href="http://heroku.com/">Heroku</a>.</p>
<h3>4. Styled the views</h3>
<p>Once the app was working, Allison went back in and added more styling and spent more time on UX to make the app more usable and life-like.</p>
<p><img src="https://img.skitch.com/20110405-fydyrrhmh6aryut4wrwiceqbma.png" alt="Screenshot of the rough demo quiz game" /></p>
<h3>5. Ordered tests on UserTesting.com</h3>
<p>We ordered 3-5 tests on <a href="http://UserTesting.com">UserTesting.com</a>, specifying the type of user we were looking for ($29 per test). We also asked some of our loyal Think Vitamin Members to help us out as well, by conducting the tests with <a href="http://clearleft.com/">ClearLeft</a>&#8216;s <a href="http://silverbackapp.com/">SilverBack</a> app.</p>
<h3>6. Reviewed the tests and iterated</h3>
<p>Once the user testing videos had been completed, we each watched them and made notes. We then had a Skype meeting where we discusses usability problems with the demo, and what actions we&#8217;d take to fix them.</p>
<p>We&#8217;d then update the app and visuals over one to two days, and then order another set of user tests, and then repeat again.</p>
<p>Overall, we did three rounds of user testing, in just two weeks. It was amazingly valuable and I&#8217;m SO glad we did it.</p>
<p>We&#8217;re going to throw away all the code and start over, but we now know that the fundamental functionality of our app is usable and successful. Bam! :)</p>
]]></content:encoded>
			<wfw:commentRss>http://thinkvitamin.com/web-apps/improve-your-app-with-pre-alpha-testing/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>How to recreate Silverback&#8217;s parallax effect</title>
		<link>http://thinkvitamin.com/design/how-to-recreate-silverbacks-parallax-effect/</link>
		<comments>http://thinkvitamin.com/design/how-to-recreate-silverbacks-parallax-effect/#comments</comments>
		<pubDate>Wed, 27 Feb 2008 15:15:43 +0000</pubDate>
		<dc:creator>Paul Annett</dc:creator>
				<category><![CDATA[Design]]></category>

		<guid isPermaLink="false">http://www.thinkvitamin.com/features/design/how-to-recreate-silverbacks-parallax</guid>
		<description><![CDATA[When I was a lad, I remember being wowed by an effect in Sonic the Hedgehog known as parallax scrolling. Moving my little spiky friend to the right caused the foreground to move past the camera to the left faster than the background, creating a faux-3D view of Green Hill Zone. We can create a [...]]]></description>
			<content:encoded><![CDATA[<p>When I was a lad, I remember being wowed by an effect in Sonic the Hedgehog known as <a href="http://en.wikipedia.org/wiki/Parallax_scrolling">parallax scrolling</a>. Moving my little spiky friend to the right caused the foreground to move past the camera to the left faster than the background, creating a faux-3D view of Green Hill Zone.</p>
<p>We can create a similar effect on a web page by fixing semi-transparent background images to different sides of the browser viewport, and at different horizontal percentage positions. In addition to this, blurring some of those images will emulate focus and depth-of-field. <strong>The effect can only be seen as the browser window is resized, but I really like the subtlety of this — not everybody will notice it, but it’s like a hidden Easter egg for those who do</strong>.</p>
<p>I used this effect with great success on the holding page for <a href="http://clearleft.com/">Clearleft</a>’s latest project, <a href="http://silverbackapp.com/">Silverback</a>.</p>
<p><a href="http://silverbackapp.com/"><img src="http://thinkvitamin.com/images/articles/silverback/holding.jpg" alt="Silverback holding page." /></a></p>
<h3>Upfront about IE6</h3>
<p>Frankly, this just ain’t gonna happen in IE6. Although we could use javascript to force the browser to display transparent PNGs, its not suitable for this effect. We could use alpha-transparent GIFs instead, but the lack of anti-aliasing will end up looking terrible. My recommendation is to think about your target audience and the browsers they will likely be using, show this effect to those with Safari, Firefox, Opera, or IE7 and use conditional comments to override it in IE6. In my example below, IE6 users just see a flat background image and are none the wiser.</p>
<h3>Choosing a suitable scene</h3>
<p>It’s a web page that we’re creating, so as always we should be mindful of file sizes. Because it uses large transparent PNGs this effect isn’t frugal on the bandwidth, and although we’re not going to achieve this in under 100k, we should obviously try to avoid making the total image filesize 500k or more! To avoid large file sizes, we should restrict the height of each layer, or choose a scene which works well with horizontally tiled layers. It’s always a compromise because too much tiling becomes obvious and reduces the impact of the effect.</p>
<p>As you can see from Silverback, hanging vines lend themselves nicely to being split into multiple layers because they are positioned in the foreground, middle distance, and background. You might choose a plane flying through some clouds, or a city-scape with houses and skyscrapers. To use a clichï¿½, the only limit is your imagination … and the fact that you should only use 3 or 4 layers. Any more and the overall file size would be too much of a strain on those with delicate Intertubes.</p>
<p>Your page content will become one layer within the scene, and since even the transparent areas of images can’t be clicked “through”, its best to make your content the foreground element unless your page contains no links or forms. We can fake elements nearer to the “camera” if they don’t overlap the content. I’ll come to that later.</p>
<h3>Creating your layers</h3>
<p>Looking at the Silverback site, there are three layers of vines (1, 2, 3) plus the main content layer at the front (4). Although all of the vines are technically “behind” the main content layer, the foreground vines look closer to the camera because they’re larger, very blurred, and don’t stretch far enough down the screen to ever dip behind Steve (the gorilla) and shatter that illusion.</p>
<p><img src="http://thinkvitamin.com/images/articles/silverback/exploded.jpg" alt="Exploded 3D diagram of Silverback layers" /></p>
<p>The main content of the site will naturally be the focal point of the camera, and in the Silverback example the middle distance layer of vines &#8211; which appears to be slightly behind the main content &#8211; is left without a blur to give the impression that they’re roughly the same distance from the camera as Steve.</p>
<p>Lastly, the back layer of vines are blurred (though not as much as those in the foreground) and slightly lighter, as if fading away into the misty distance. These vines are flattened onto the green gradient which forms the background of the page &#8211; since we don’t need to see anything further into the distance, we can use an opaque JPG instead of a transparent PNG. This saves on file size, and as a result allows us to use an image with larger dimensions for the background if we like.</p>
<h3>Creating the parallax</h3>
<p>There really is nothing new about the CSS we use to create this effect &#8211; it’s just cleverly applied. I will give code examples not because it’s difficult but precisely to show how simple it is.</p>
<p>We wrap the content in a &#8220;div&#8221; which is centered on the screen using this CSS:</p>
<p><code><br />
    div#content{<br />
    margin:0 auto;<br />
    width:640px;<br />
}<br />
</code></p>
<p>For the purposes of positioning the other layers we need to think in percentages, so it makes sense to do the same thing here. Centering the content effectively positions it 50% of the way across the screen. As you make the browser window smaller, it moves horizontally at half the speed of the window-edge that you’re pulling around with your mouse.</p>
<p>The background layer of vines is tiled horizontally across the body of the website, and positioned 20% of the way across the screen. Although this doesn’t change how it initially looks, it does change how it behaves &#8211; 20% of the width is relative to the screen size, so as you make the window smaller the 20% gets proportionally smaller, giving the illusion that the vines are moving slowly to the left (at a fifth of the speed of your mouse).</p>
<p><code><br />
body {<br />
    background:#d3ff99 url(../images/bg-rear.jpg) 20% 0 repeat-x;<br />
}<br />
</code></p>
<p>The middle distance layer of vines is a tiled transparent PNG background on a &#8220;div&#8221; wrapped around the content. It needs to appear to be between the content and the background, so we need to choose a percentage between 50% (the content) and 20% (the background). For this example, I’ve chosen 40% to position them closer to the content than the background. When you resize the browser you’ll notice that they move slower than the main content, but not by much.</p>
<p><code><br />
    div#midground{<br />
    background: transparent url(../images/bg-mid.png) 40% 0 repeat-x;<br />
    margin: 0;<br />
    padding: 0;<br />
    width: 100%;<br />
}<br />
</code></p>
<p>The enlarged and blurred foreground layer of vines follows the same pattern, but for added fun we position the background beyond the top right of the browser window, at 150% (100% would be fixed to the top right), to make it move <em>faster</em> than the browser resize! This gives the illusion that they’re really close to the camera.</p>
<p><code><br />
div#foreground{<br />
    background: transparent url(../images/bg-front.png) 150% 0 repeat-x;<br />
    margin: 0;<br />
    padding: 0;<br />
    width: 100%;<br />
}<br />
</code></p>
<h3>Nothing fancy for IE6</h3>
<p>Finally, we use conditional comments to make sure IE6 only sees a flat image with no faux-3D effect. Remember to override the foreground style even if you’re overriding it with nothing, by specifying &#8220;background:none&#8221;.</p>
<p><code><br />
body{<br />
    background:#d3ff99 url(../images/gradient.gif) 0 0 repeat-x;<br />
}<br />
#midground{<br />
    background:transparent url(../images/flatvines.jpg) top center repeat-x;<br />
}<br />
#foreground{<br />
    background:none;<br />
}<br />
</code></p>
<p>And that’s it! Feel free to use the source code of the <a href="http://silverbackapp.com/">Silverback holding page</a> as an aid to understanding my method. There are a couple of variations to this effect, which I’ll mention now.</p>
<h3>Genuine foreground</h3>
<p>We can move the empty foreground &#8220;div&#8221; to the start of the HTML and add the following lines to the &#8220;div#foreground&#8221; CSS to position it <em>actually</em> in front of the content. Doing this will allow its background image to dip over the content but will also mean that the content can’t be clicked. Only use this if your content contains no links or form elements.</p>
<p><code><br />
position:absolute;<br />
top:0;<br />
left:0;<br />
z-index:1;<br />
</code></p>
<p>Genuine foreground demo (for the purposes of this demo the content is nearer to the top of the page so that it dips behind the shorter foreground vines).</p>
<h3>The Rissington Effect</h3>
<p>With hat tipped gratefully in the direction of <a href="http://therissingtonpodcast.co.uk/">The Rissington Podcast</a>, I should mention the joys of playing around with negative percentages. Notice that the Spitfire at the bottom of their website cleverly moves off the screen to the left as you widen the browser window. It’s positioned at -5%, and the wider the browser the larger 5% of it is, so the further it moves to the left. In our example, if you set the background layers to have negative percentages you can make the landscape appear to rotate around the content as you resize the browser. The more extreme the percentages, the faster the rotational effect.</p>
<h3>My happy ending</h3>
<p>With all my designs I like to try to include something remarkable, pushing the boundaries of what can be achieved using just HTML and CSS. This technique, combined with others, opens the door to all sorts of possibilities. I can imagine things hiding behind solid foregrounds and only sliding into view as the browser size exceeds a certain dimensions, or elements fading into view as the browser is resized. Show me what you can do!</p>
]]></content:encoded>
			<wfw:commentRss>http://thinkvitamin.com/design/how-to-recreate-silverbacks-parallax-effect/feed/</wfw:commentRss>
		<slash:comments>29</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic page generated in 0.621 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2012-02-08 21:14:39 -->

