<?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>Andrew Heins</title>
	
	<link>http://www.andrewheins.ca</link>
	<description>The personal website of Andrew Heins, web developer.</description>
	<lastBuildDate>Tue, 21 Feb 2012 17:27:02 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/AndrewHeins" /><feedburner:info uri="andrewheins" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Girl, Unedited</title>
		<link>http://feedproxy.google.com/~r/AndrewHeins/~3/F-bEfoWExMg/</link>
		<comments>http://www.andrewheins.ca/2012/girl-unedited/#comments</comments>
		<pubDate>Tue, 21 Feb 2012 17:26:21 +0000</pubDate>
		<dc:creator>Andrew Heins</dc:creator>
				<category><![CDATA[Featured]]></category>
		<category><![CDATA[Randomness]]></category>

		<guid isPermaLink="false">http://www.andrewheins.ca/?p=647</guid>
		<description><![CDATA[Girl, why do you do this to me?

Don't I love you? Don't I respect you? Don't I treat you better than any other man ever has? Why do you have to treat me this way?]]></description>
			<content:encoded><![CDATA[<p><img class="alignright size-full wp-image-656" title="image00" src="http://www.andrewheins.ca/wp-content/uploads/2012/02/image00.jpg" alt="" width="327" height="413" />Girl, why do you do this to me?</p>
<p>Don&#8217;t I love you? Don&#8217;t I respect you? Don&#8217;t I treat you better than any other man ever has? Why do you have to treat me this way?</p>
<p>Don&#8217;t I do nice things for you? Take you out to fancy dinners? Make you breakfast in bed on Sunday mornings? Get you things from downstairs when you&#8217;re tired? All I ask is a little respect, some recognition that our relationship has give-and-take, and that you use spell check when you email me.</p>
<p>Love is a two way street, and when we&#8217;re together, girl, I feel you. That connection. That incredible high I get when I&#8217;m near you. I treat you right because I value you as a person. You don&#8217;t ask for much, and I&#8217;d gladly give you all I have and more just to be with you.</p>
<p>And yet when you send me text messages that say &#8220;WHER R U???&#8221;, I don&#8217;t feel that connection. I feel lost, like I don&#8217;t know you, and you don&#8217;t know me. It makes me sad, and yet when I tell you how I feel, you don&#8217;t listen.</p>
<p>Love is about the little things. When I wake you up in the morning to get ready for work, I don’t wake you rudely. I leave the light off and kiss you lightly on the forehead, because I want you to start your day knowing that I love and respect you. It’s not a grand gesture, and takes only a second, but it makes you happy, just like how checking to ensure you’re not using caps-lock when you email me would make me happy. It would make me so very happy.</p>
<p>Girl, it&#8217;s not a lot that I ask from you. Just a little love and respect. Love is all about communication, that&#8217;s why I tell you so often that I love you, and why I listen when you talk. Love is built on being able to understand one another, and I want to understand. But when I get emails like,<!--[if gte vml 1]><v:shapetype id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"><br />
<v:stroke joinstyle="miter"/><br />
<v:formulas><br />
<v:f eqn="if lineDrawn pixelLineWidth 0"/><br />
<v:f eqn="sum @0 1 0"/><br />
<v:f eqn="sum 0 0 @1"/><br />
<v:f eqn="prod @2 1 2"/><br />
<v:f eqn="prod @3 21600 pixelWidth"/><br />
<v:f eqn="prod @3 21600 pixelHeight"/><br />
<v:f eqn="sum @0 0 1"/><br />
<v:f eqn="prod @6 1 2"/><br />
<v:f eqn="prod @7 21600 pixelWidth"/><br />
<v:f eqn="sum @8 21600 0"/><br />
<v:f eqn="prod @7 21600 pixelHeight"/><br />
<v:f eqn="sum @10 21600 0"/><br />
</v:formulas><br />
<v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"/><br />
<o:lock v:ext="edit" aspectratio="t"/><br />
</v:shapetype><v:shape id="_x0000_s1026" type="#_x0000_t75" style='position:absolute; margin-left:279.75pt;margin-top:81.75pt;width:245.25pt;height:309.75pt; z-index:1;mso-position-horizontal-relative:margin; mso-position-vertical-relative:text'><br />
<v:imagedata src="file:///C:\peelapps\temp\msohtml1\01\clip_image001.jpg" o:title=""/><br />
<w:wrap type="square" anchorx="margin"/><br />
</v:shape><![endif]--><!--[if !vml]--><!--[endif]--></p>
<p>&#8220;? 10.00 for the stand, right? we have basket that useles wihtout the stand&#8230;10. no more&#8230;&#8221;,</p>
<p>I can&#8217;t feel that understanding, that visceral love connection I know we both share.</p>
<p>I hope you read this and you feel me, Girl. I hope you understand what I&#8217;m trying to tell you.</p>
<p>Because I have no friggin’ clue what your wrote in that last email.</p>
<p>But Girl, I still love you.</p>
<p>&nbsp;</p>
<p><em>Extrapolated from a real-life exchange I had with my wife. Title image</em><em> by <a href="http://www.flickr.com/photos/photojonny/">PhotoJonny</a>.</em></p>
<img src="http://feeds.feedburner.com/~r/AndrewHeins/~4/F-bEfoWExMg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.andrewheins.ca/2012/girl-unedited/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.andrewheins.ca/2012/girl-unedited/</feedburner:origLink></item>
		<item>
		<title>Embracing The Demons</title>
		<link>http://feedproxy.google.com/~r/AndrewHeins/~3/mgdUA-tz4Lg/</link>
		<comments>http://www.andrewheins.ca/2012/embracing-the-demons/#comments</comments>
		<pubDate>Thu, 16 Feb 2012 00:47:14 +0000</pubDate>
		<dc:creator>Andrew Heins</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Learning]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://www.andrewheins.ca/?p=547</guid>
		<description><![CDATA[You can't focus. You troll around Hacker News and all of the articles are about people younger than you doing cooler things, faster, and making millions doing it. You're frustrated, depressed and unmotivated.

You've got the demons.]]></description>
			<content:encoded><![CDATA[<p><em>This post is part of a continuing series on Teach Yourself Web Development. </em></p>
<p><em>I was originally planning to blog on another topic, but I&#8217;ve been trying to capture my thoughts around a specific issue for a while now, and I finally feel like I&#8217;ve captured how I feel.</em></p>
<p>&nbsp;</p>
<p>You sit down in front of your computer and you&#8217;re uneasy. You&#8217;ve got a ton of work to do, but all of it seems pointless. The code open in front of you is awful; worse yet, it&#8217;s yours, freshly written last night.</p>
<p>You can&#8217;t focus. You troll around Hacker News and all of the articles are about people younger than you doing cooler things, faster, and making millions doing it. You&#8217;re frustrated, depressed and unmotivated.</p>
<p>You&#8217;ve got the demons.</p>
<p>I am intimately acquainted with my demons. They feed on doubt. That little fear I have in the back of my mind that I made a mistake by changing careers &#8211; by trying to become a web developer.</p>
<ul>
<li>How can I compete with computer science grads with 10 years of experience on me?</li>
<li>The web changes too fast. I learn one thing, and suddenly it&#8217;s old and out-of-date. I&#8217;m always behind.</li>
<li>I couldn&#8217;t handle math back in high-school. Real programming is all math, right?</li>
</ul>
<p>I used to worry it was just me. It&#8217;s not. Lots of people have them. Maybe you do too.</p>
<p>If you&#8217;re struggling with demons, I&#8217;ve got some good news and some bad news.</p>
<h2>Let&#8217;s Start with the Bad News</h2>
<p>I don&#8217;t know that the demons ever really go away. In fact, success seems to make them worse.</p>
<p>I&#8217;ve been studying web development for over 5 years now, and I think I&#8217;m reasonably competent as a developer. I&#8217;m employed full-time as a developer and project manager, I write code that works and people like. I even get paid in my off-time doing freelance projects.</p>
<p>For all intents and purposes, I&#8217;ve succeeded. I&#8217;m no start-up millionaire rock star, but I make my living working with computers and the web, just like I wanted. Objectively, that&#8217;s awesome. I should be overjoyed.</p>
<p>And yet, if anything, I seem to get the demons more now than ever. The more I learn, and the better my work gets, the more I fight with inner demons. It&#8217;s like the light at the end of the tunnel constantly gets further away.</p>
<p>Five years on, and I think I&#8217;m starting to understand why.</p>
<h2>Here&#8217;s the Good News</h2>
<p>My best guess is that the demons come from ambition. The drive that makes you and I want more than we have. If we didn&#8217;t care, our demons wouldn&#8217;t bother us.</p>
<p>I set a goal for myself to get a job as a developer. But when I reached that goal, I didn&#8217;t celebrate and settle into a comfortable spot, my eyes went higher. Suddenly developer wasn&#8217;t enough. I wanted to start a business and run my own show. Back came the demons.</p>
<p><strong>Demons mean you&#8217;re capable of more. They are the byproduct of success and possibility.</strong></p>
<p>You&#8217;re hungry and you&#8217;re capable. That&#8217;s a great combination. Even better, just by fighting the demons, you drive yourself closer to your goal.</p>
<ul>
<li>When you&#8217;re sitting up, late at night, ripping your hair out trying to learn something, <strong>you&#8217;re winning</strong>.</li>
<li>When you&#8217;re writing that code, and it doesn&#8217;t work, and you&#8217;re frustrated, <strong>you&#8217;re winning</strong>.</li>
<li>When you&#8217;re feeling out of your league, but you push on anyway, <strong>you&#8217;re winning</strong>.</li>
</ul>
<p>Don&#8217;t get me wrong, it&#8217;s hard. It&#8217;s <strong>really</strong> hard to buckle down and keep pushing when you get that restlessness and everything feels pointless.</p>
<p>But that struggle is where success comes from. No pain, no gain.</p>
<p>Sometimes you need a break &#8211; don&#8217;t be afraid to take one. Go watch a movie or go for a bike ride. Take a few days off if you have to. Burn-out is real, and while, at the time, it might feel like you&#8217;re losing ground, these breaks are critical opportunities to refocus.</p>
<p>But once the fires subside and your head clears, come back at it. Come back and work harder.</p>
<p>Learning something is hard.</p>
<p>But your ambitions are high. Your demons prove it. Stay focused and push, because the next time those bastards try to catch you, they&#8217;ll have one hell of a climb.</p>
<p>&nbsp;</p>
<p><em>Image by <a title="Matiasjajaja on Flickr" href="http://www.flickr.com/photos/matiasjajaja/" target="_blank">matiasjajaja</a></em></p>
<img src="http://feeds.feedburner.com/~r/AndrewHeins/~4/mgdUA-tz4Lg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.andrewheins.ca/2012/embracing-the-demons/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		<feedburner:origLink>http://www.andrewheins.ca/2012/embracing-the-demons/</feedburner:origLink></item>
		<item>
		<title>Unconventional Skills and Tactics</title>
		<link>http://feedproxy.google.com/~r/AndrewHeins/~3/hJw-x0XhcAw/</link>
		<comments>http://www.andrewheins.ca/2012/skills-and-tactics/#comments</comments>
		<pubDate>Mon, 23 Jan 2012 16:40:29 +0000</pubDate>
		<dc:creator>Andrew Heins</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Learning]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://www.andrewheins.ca/?p=541</guid>
		<description><![CDATA[Web Development isn't just data types and syntax - it's really about problem solving. Sometimes the problems that need solving aren't less about computers and more about people, and that can work to your advantage.]]></description>
			<content:encoded><![CDATA[<p><em>This post is the second in a series about Teaching Yourself Web Development. If you haven&#8217;t yet, you might want to <a title="So You Want To Be A Developer" href="http://www.andrewheins.ca/2012/so-you-want-to-be-a-developer/">go back and read the first post</a>. </em></p>
<p><em>In brief, within a month of being hired, I spent two weeks building a web page instead of doing the job I was paid to do. The demo to a room full of execs worked as intended, but everyone seemed to hate it. I didn&#8217;t hear anything from my boss for days.</em></p>
<p>&nbsp;</p>
<p>I don&#8217;t actually remember being told that I was now getting paid to do web work. They didn&#8217;t change my title, and they didn&#8217;t remove me from the sales rankings (even though my sales were always $0).</p>
<p>In fact, the only follow-up I remember about <a title="So You Want To Be A Developer" href="http://www.andrewheins.ca/2012/so-you-want-to-be-a-developer/">that meeting</a> was the Director of Marketing coming over after a few isolated days and telling me, &#8220;We want you to redesign our lead-generator landing page for next week.&#8221;</p>
<p>This new project would require:</p>
<ul>
<li>Making the form more usable</li>
<li>JavaScript validation</li>
<li>Alteration of some ASP.net code</li>
<li>Email confirmations</li>
</ul>
<p><strong>Brain</strong>: &#8220;NO!!! NO NO NO N&#8230;&#8221;<br />
<strong>Mouth</strong>: &#8220;I can do that. Yes.&#8221;<br />
<strong><strong>Brain</strong>:</strong> &#8220;&#8230;&#8221;</p>
<h2>An Unconventional Skill Set</h2>
<p>If you ask people what skills you need to be a software developer, they&#8217;ll probably give you a list like this:</p>
<ul>
<li>Attention to Detail</li>
<li>Abstract Thinking</li>
<li>Logic</li>
</ul>
<p>Don&#8217;t get me wrong, those skills help, but I&#8217;ve tended to rely on a couple of other things:</p>
<ul>
<li>Perseverance</li>
<li>Coercion</li>
<li>Delegation</li>
</ul>
<p>It was these 3 things that saved my job that week, and probably still account for the majority of my success moving into web development full-time.</p>
<h3>Perseverance</h3>
<p>The role of Perseverance is fairly obvious. When you take on a completely new field, you spend all your time learning.  In fact, more than any other field I can think of, web development moves fast, which means you&#8217;re always chasing a moving target.</p>
<p>Worse than that, learning is hard, you actually kind of suck, and you <em>know</em> it.</p>
<p><a href="http://en.wikipedia.org/wiki/Ira_Glass" target="_blank">Ira Glass</a> has a great quote about perseverance (paraphrased for programming),</p>
<blockquote><p>&#8230; For the first couple years you make stuff, and it’s just not that good. It’s trying to be good, it has potential, but it’s not. [...] A lot of people never get past this phase. They quit. [...] We all go through this. And if you are just starting out or you are still in this phase, you gotta know it’s normal and the most important thing you can do is do a lot of work. Put yourself on a deadline so that every week you will finish one [thing]. It is only by going through a volume of work that you will close that gap, and your work will be as good as your ambitions. [...] It’s gonna take awhile. It’s normal to take awhile. You’ve just gotta fight your way through.</p></blockquote>
<p>I don&#8217;t think I could put it any better than that. To bring that a little closer to web development,<strong> the best way to learn is to build.</strong></p>
<p>Web Development is all about solving problems. When you start building something, you start solving problems. Your basic knowledge like programming syntax will naturally grow as you bash your head against your particular app or website&#8217;s dilemmas.</p>
<p>If you&#8217;d asked me if you can learn HTML and CSS in two weeks, I&#8217;d probably have told you no. But in the context of a project, you don&#8217;t really have a choice. You can&#8217;t back away from the bits you&#8217;re having trouble with. You have to get it done, and so you do, and you learn.</p>
<p>Of course, sometimes even perseverance doesn&#8217;t work, which means you need a fall-back.</p>
<h3>Coercion</h3>
<p>Coercion is the skill of getting people to agree to things that they don&#8217;t want to. It&#8217;s a required business skill. Getting that sale from a hesitant customer; getting resources from a stingy manager; getting that meeting from a busy exec.</p>
<p>But before any of that, it plays a critical role in your transition to developer.</p>
<p>In short:</p>
<p><strong>You&#8217;ll never move from hobbyist to working developer until you manage to convince someone with money that you can do something you&#8217;ve never actually done before</strong>. When I said I could redesign the lead-generator page, I had <em>no friggin idea</em> how I was going to make it work, but I was able to look my Director in the eye and say I did.</p>
<p>Now I&#8217;ve got a more difficult project, a shorter timeline, emerging HTML skills, and just enough metaphorical rope to hang myself. Now what?</p>
<p>Well coercion ties in nicely with our next skill:</p>
<h3>Delegation</h3>
<p>Some things you can persevere through, but some things you just can&#8217;t. I can&#8217;t learn to hack C# <em>and</em> redesign the page <em>and</em> learn JavaScript validation <em>and</em> update the form fields in a week.</p>
<p>So I went delegating.</p>
<p>All of our paid designers were busy, but one of the other sales agents had a decent eye for design and was constantly Photoshopping other employees into funny photos and sending them around. I explained the project, asked for help, and he was nice enough to help me out.</p>
<p>Next on the list was hacking the .Net code. This was simply out of my league. My only recourse here was to go back to the Director of Software Development for help.</p>
<p>I had a fairly antagonistic relationship with the Director of Software when I first started. It was no fault of his, I was constantly meddling with his stuff.</p>
<p>But he was a fantastic guy at heart. He also had a philosophy of under-promise and over-deliver. He told me he wouldn&#8217;t change the .Net code, but I got an email an hour or so after work that day with a link to a development server with an unstyled new form with extra fields and an email confirmation system.</p>
<p>Finally, I had to implement the new design on the form and figure out validation. HTML forms weren&#8217;t too far out of reach for my meager skills, and JavaScript form validation is not an arcane art &#8211; it&#8217;s well documented online. jQuery didn&#8217;t exist yet, but tutorials did.</p>
<p>I got to work.</p>
<h2>Humble Beginnings</h2>
<p>It&#8217;s not so pretty, is it?</p>
<p>It&#8217;s not an epic picture of noble man-against-machine feats of programming fury. A lot of it comes down to relying on people.</p>
<p>I mean really, what have I done, here? I&#8217;ve done some HTML, CSS and JavaScript for a couple of simple web pages, while heavily leaning on people of greater skill than I. This isn&#8217;t exactly solving <a href="http://en.wikipedia.org/wiki/P_versus_NP_problem" target="_blank">P = NP</a>.</p>
<p>And yet, <strong>it can work</strong>. These first simple projects gave me confidence and credibility within the organization to get stuff done, and that started my transition from sales agent to web developer.</p>
<p>You&#8217;ll learn over the course of your journey that the money isn&#8217;t in knowing how to do something, but in finding a way to make it happen.</p>
<p>Sure, there are the top 50 tech companies where you have to be a rockstar engineer to solve the problems they&#8217;re facing, but for the other 50,000,000 small and medium sized businesses, you can provide value with simpler means.</p>
<p>If you can show enthusiasm and drive, get cooperation from your colleagues, and (usually) deliver on time, your actual technical chops start to matter less.</p>
<p>Sometimes you just have to take the jump.</p>
<p>&nbsp;</p>
<p><em>Job Descriptions Lie. Sometimes the job you want actually doesn&#8217;t exist yet. There&#8217;s no job title for &#8220;Marketing&#8217;s Non-IT Web Hooligan&#8221;, but that doesn&#8217;t mean that skill set can&#8217;t work for the organization. Next time we&#8217;ll talk about building the job you want in the organization you&#8217;ve got.</em></p>
<p><em><span id="yui_3_4_0_3_1327336908804_2433">Photo By <a style="font-weight: bold;" href="http://www.flickr.com/photos/rossap/">ROSS HONG KONG</a></span></em></p>
<img src="http://feeds.feedburner.com/~r/AndrewHeins/~4/hJw-x0XhcAw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.andrewheins.ca/2012/skills-and-tactics/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		<feedburner:origLink>http://www.andrewheins.ca/2012/skills-and-tactics/</feedburner:origLink></item>
		<item>
		<title>So You Want To Be A Developer</title>
		<link>http://feedproxy.google.com/~r/AndrewHeins/~3/pw1hEX-NGUY/</link>
		<comments>http://www.andrewheins.ca/2012/so-you-want-to-be-a-developer/#comments</comments>
		<pubDate>Thu, 19 Jan 2012 01:18:26 +0000</pubDate>
		<dc:creator>Andrew Heins</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Learning]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://www.andrewheins.ca/?p=538</guid>
		<description><![CDATA[In this post, I discuss the first steps I took to stop being a salesman and start being a web developer. It wasn't exactly a promising start...]]></description>
			<content:encoded><![CDATA[<p><em>This post is the first in a series about Teaching Yourself Web Development. You should see more in the coming days. Feel free to write in the comments about what you&#8217;d like to see or questions I should answer and I&#8217;ll get to them.</em></p>
<p>This first post is going to be a bit long. I&#8217;ve got to get a few things out of the way first. Sorry in advance.</p>
<h2>The Day I Decided</h2>
<p>About 5 years ago, I realized that I wanted to program computers for a living. I had already finished school, had an arts degree and an entry-level job in sales, and although I’d always loved playing around with computers (mostly playing computer games), I thought I was going to be a journalist.</p>
<p>I’d maintained my own website for a few years. Written in Dreamweaver, using HTML4, it was awful, but then most of the web was in those days. In terms of a web development background, I&#8217;d read <a href="http://www.amazon.com/Absolute-Beginners-Guide-C-2nd/dp/0672305100" target="_blank">a book on C</a> when I was 15, and never got past chapter 3. I&#8217;d <a href="http://www.amazon.com/PHP-MySQL-Web-Development-4th/dp/0672329166/ref=sr_1_1?s=books&amp;ie=UTF8&amp;qid=1326893753&amp;sr=1-1" target="_blank">tried again with PHP</a> when I was 18, and failed at that as well. So we&#8217;re not talking about a huge amount of technical knowledge here.</p>
<p>Right out of school I got a job at a non-profit. While there, I built them a web-based newsletter called &#8220;The Beacon&#8221;. It was a webpage written in HTML tables that we would update and email out a link to it. It was pretty awful, but it worked.</p>
<p>On my resume, when later interviewing for my sales position, I’d mentioned I had some skill with computers and HTML. They were apparently intrigued. I got the job, possibly because of my interest in the web, or possibly because I low-balled my salary requirements to try to get the job. .</p>
<p>It was in this role that I really decided to become a developer. Today, I make my living managing and writing code for web projects.</p>
<p>If you want it, it can be done.</p>
<h2>What I Do Now</h2>
<p>Ok, so first let&#8217;s get one thing off the table. I&#8217;m not a self-made Google Engineer (at least not yet). When I say I manage web projects, here&#8217;s what my day job actually entails:</p>
<ul>
<li><strong>33% Project Management</strong> (project plans, meetings, more meetings)</li>
<li><strong>33% UX Design</strong> (Mock-ups, user testing, intuition)</li>
<li><strong>33% Front-end Development</strong> (HTML, CSS, JavaScript)</li>
</ul>
<p>Most of this isn&#8217;t &#8220;writing software&#8221;. Ideally someday soon I&#8217;ll start to get paid as a more traditional developer. That&#8217;s my end goal, but I&#8217;m not there yet. It&#8217;s a work in progress. You&#8217;re coming along for the ride.</p>
<h2>Why I Chose This Route</h2>
<p>The road from Sales to Web Development wasn&#8217;t a straight path for me. In many ways, it couldn&#8217;t be:</p>
<h3>I Needed a Job</h3>
<p>I couldn&#8217;t afford to stop working and focus on <strong>just</strong> coding. I&#8217;d already finished school, had gotten married, and had to make money. I couldn&#8217;t go back to college. Unsurprisingly, very few people will pay you to learn software development, and of those few, I didn&#8217;t meet any of them.</p>
<h3>I Needed a Reasonable Learning Curve</h3>
<p>With limited technical background, I couldn&#8217;t get a job as a developer. I needed the time and an environment that would allow me to learn as I went.</p>
<h2>How I Did It</h2>
<p><strong>Short answer: I stopped making sales calls and started coding.</strong></p>
<p>My employer had a location finder on their website. 70 locations across Canada, and the only way to find out which one was closest was a dropdown list.</p>
<p>In an industry where you want people to go to the local store, that wasn&#8217;t very good, so I walked into the Director of Marketing&#8217;s office (my boss, the Sales Lead&#8217;s boss) and offered to make a webpage where you could drill down on a map and find the closest store.</p>
<p>He took a chance, said yes, and gave me 2 weeks to build it. He also made me promise that I&#8217;d meet my sales quotas at the same time. I was still on my initial probation. If I missed my sales quota, I&#8217;d be fired.</p>
<p>I bought a book called <a href="http://www.elizabethcastro.com/html6ed/" target="_blank">HTML, XHTML and CSS Visual Quickstart Guide</a> and started building. I worked 60-65 hours both weeks. I took the book (and the code) home with me each night and worked on it before bed.</p>
<p>Two weeks later, it was demo day. Present in the room:</p>
<ul>
<li>The Director of Marketing</li>
<li>The Sales Lead</li>
<li>The Director of Software Development</li>
</ul>
<p>I loaded up the website and gave my little presentation. The site worked.</p>
<p>The Software Director, having never even heard of the project, and having final say over the website content, was angry that an untested kid from sales was writing software for his servers.</p>
<p>The Director of Marketing thought it was too simple and didn&#8217;t POP enough.</p>
<p>The Sales Lead was pissed because I hadn&#8217;t made a single sales call in two weeks.</p>
<p>While they yelled at each other, I packed up the laptop, went back, and sat at my desk.</p>
<p>And then there was this <em>lull</em>&#8230;</p>
<p>&nbsp;</p>
<p><em>In <a title="Unconventional Skills and Tactics" href="http://www.andrewheins.ca/2012/skills-and-tactics/">the next part of this series</a>, I&#8217;ll discuss the three basics skills you need for that first web development job, and some learning strategies.</em></p>
<p>Photo by <strong id="yui_3_4_0_3_1326907449038_1283"><a href="http://www.flickr.com/photos/travelinlibrarian/">Travelin&#8217; Librarian</a></strong></p>
<img src="http://feeds.feedburner.com/~r/AndrewHeins/~4/pw1hEX-NGUY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.andrewheins.ca/2012/so-you-want-to-be-a-developer/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		<feedburner:origLink>http://www.andrewheins.ca/2012/so-you-want-to-be-a-developer/</feedburner:origLink></item>
		<item>
		<title>A New Design for a New Year!</title>
		<link>http://feedproxy.google.com/~r/AndrewHeins/~3/pkG1f3Fmoi4/</link>
		<comments>http://www.andrewheins.ca/2012/a-new-design-for-a-new-year/#comments</comments>
		<pubDate>Sun, 08 Jan 2012 23:04:53 +0000</pubDate>
		<dc:creator>Andrew Heins</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://localhost/andrewheins/?p=465</guid>
		<description><![CDATA[Starting the year off right with a refresh of my andrewheins.ca. The old design wasn't properly implemented, and I wanted to test a few more modern practices with this site.]]></description>
			<content:encoded><![CDATA[<p>Starting the year off right with a refresh of my andrewheins.ca. The old design wasn&#8217;t properly implemented, and I wanted to test a few more modern practices with this site.</p>
<h3>Designing Content-First</h3>
<p>If you&#8217;ve ever been to this site before, you&#8217;ll notice that I didn&#8217;t have a ton of content. That won&#8217;t necessarily change, but the content that is here should be accessible. The new site design focuses on getting the content I&#8217;ve got in your hands as effectively as possible.</p>
<h3>Better Implementation</h3>
<p>Because the old site was a quick hack from flat file over to WordPress, much of the wonderful functionality of WordPress was ignored. The search didn&#8217;t work, the 404 page was useless, and the things that make WordPress the best CMS in the world weren&#8217;t utilized. You&#8217;ll now find that the site makes use of many of the finer things WordPress offers.</p>
<h3>Cleaner Code</h3>
<p>Another artifact of the old site architecture was the code. The HTML and CSS wasn&#8217;t maintainable, as I&#8217;d quickly ported the code over from a custom flat file format. The new site code (conveniently <a title="Site Source" href="https://github.com/andrewheins/andrewheins.ca" target="_blank">available on GitHub</a> for your perusal) is easier to maintain and takes advantage of  cleaner CSS, JavaScript best-practices, and more modular PHP.</p>
<p>Hopefully the site should serve me better moving forward, and that just might give me the little push needed to update more.</p>
<p>Happy 2012!</p>
<img src="http://feeds.feedburner.com/~r/AndrewHeins/~4/pkG1f3Fmoi4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.andrewheins.ca/2012/a-new-design-for-a-new-year/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.andrewheins.ca/2012/a-new-design-for-a-new-year/</feedburner:origLink></item>
		<item>
		<title>Dealing with Conflicts in Git</title>
		<link>http://feedproxy.google.com/~r/AndrewHeins/~3/zRnk7ez9N_8/</link>
		<comments>http://www.andrewheins.ca/2011/dealing-with-conflicts-in-git/#comments</comments>
		<pubDate>Thu, 22 Sep 2011 23:31:00 +0000</pubDate>
		<dc:creator>Andrew Heins</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Git]]></category>

		<guid isPermaLink="false">http://tempandrew.wordpress.com/2011/09/22/dealing-with-conflicts-in-git</guid>
		<description><![CDATA[Something that I didn't find immediately obvious was how to deal with conflicts in Git, so here's a quick tutorial. Conflicts arise when two different branches are working on the same file and then try to commit changes. Conflicts don't have to be catastrophic, it simply depends on what's happend with the file.]]></description>
			<content:encoded><![CDATA[<p>Something that I didn&#8217;t find immediately obvious was how to deal with conflicts in Git, so here&#8217;s a quick tutorial.</p>
<p>Conflicts arise when two different branches are working on the same file and then try to commit changes.</p>
<div class="CodeRay">
<div class="code">
<pre>...A--
  /
M-------M-----X - Conflict
            /
     B------</pre>
</div>
</div>
<p>Conflicts don&#8217;t have to be catastrophic, it simply depends on what&#8217;s happend with the file.</p>
<h3>Simple Conflicts</h3>
<p>Generally, if the changes that cause the conflict don&#8217;t affect the same lines of code, git can auto-merge your changes together without too much trouble.</p>
<p>For example, if Branch A  was fixing a typo in a method <code>getPatientByID</code> and Branch B was working on a method called <code>printReport</code>, when the two branches are merged back into Master, assuming no other changes took place, git is smart enough to merge those changes.</p>
<h3>Complex Conflicts</h3>
<p>Sometimes, however, conflicts arise because two changes modify the same line of code.</p>
<p>When this happens (here&#8217;s the part it took me a while to actually understand) Git changes the source code of the file, and expects you to manually do the changes.</p>
<p>Git&#8217;s response to a failed merge</p>
<p><img src="http://www.andrewheins.ca/content/images/conflict-found.gif" alt="Git finds a conflict" /></p>
<p>And the updated source file</p>
<p><img src="http://www.andrewheins.ca/content/images/updated-source.gif" alt="Source updated with conflict data" /></p>
<p>Let&#8217;s get a closer look:</p>
<div class="CodeRay">
<div class="code">
<pre>&lt;&lt;&lt;&lt;&lt;&lt;&lt; HEAD
         alert("I'm... too lazy to act on my muted outrage!");
=======
        var x = escape("I'm mad as hell, and I'm not going to take it anymore!");
&gt;&gt;&gt;&gt;&gt;&gt;&gt; dev</pre>
</div>
</div>
<p>What are we looking at here?</p>
<p>Git has replaced the offending line of code with the code from both files.</p>
<p>From &lt;&lt; HEAD to ===== is the branch you&#8217;re currently working with, and from ===== to  &gt;&gt; dev is the branch you&#8217;re merging in.</p>
<p>So what&#8217;s the resolution? You have to edit the file back to what actually is needed.</p>
<p>So dev represents the new format of that line, and HEAD represents the new language the copywriters want you to use, you&#8217;d probably replace the whole thing above with:</p>
<div class="CodeRay">
<div class="code">
<pre>var x = escape("I'm... too lazy to act on my muted outrage!");</pre>
</div>
</div>
<p>Once this is done, you&#8217;ll likely want to rerun any unit tests to ensure you didn&#8217;t break the build, then re-stage the file using <code>add</code>, and commit your set changes.</p>
<p><img src="http://www.andrewheins.ca/content/images/conflict-resolved.gif" alt="Conflict resolved" /></p>
<p>Done!</p>
<img src="http://feeds.feedburner.com/~r/AndrewHeins/~4/zRnk7ez9N_8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.andrewheins.ca/2011/dealing-with-conflicts-in-git/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.andrewheins.ca/2011/dealing-with-conflicts-in-git/</feedburner:origLink></item>
		<item>
		<title>The Mad Science of Web Design</title>
		<link>http://feedproxy.google.com/~r/AndrewHeins/~3/I87g-V8jcKU/</link>
		<comments>http://www.andrewheins.ca/2011/the-mad-science-of-web-design/#comments</comments>
		<pubDate>Tue, 13 Sep 2011 16:08:00 +0000</pubDate>
		<dc:creator>Andrew Heins</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Development Process]]></category>

		<guid isPermaLink="false">http://tempandrew.wordpress.com/2011/09/13/the-mad-science-of-web-design</guid>
		<description><![CDATA[Back in high school, you probably learned the Scientific Method. It probably looked something like this: &#160; &#160; (quoted from sciencebuddies.com) When I first got started with web design, I thought it was an art. That was bad news at the time because if you&#8217;ve ever met me, you&#8217;ll know I&#8217;m not the most artistic [...]]]></description>
			<content:encoded><![CDATA[<p>Back in high school, you probably learned the Scientific Method. It probably looked something like this:</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><img title="sciencebuddies.com" src="http://www.sciencebuddies.org/science-fair-projects/overview_scientific_method2.gif" alt="diagram of scientific method" /></p>
<p><span style="font-size: x-small;">(quoted from <a href="http://www.sciencebuddies.org/science-fair-projects/project_scientific_method.shtml">sciencebuddies.com</a>)</span></p>
<p>When I first got started with web design, I thought it was an art. That was bad news at the time because if you&#8217;ve ever met me, you&#8217;ll know I&#8217;m not the most artistic or coordinated person in the world.</p>
<p>In reality, however web design, and most web-oriented business, is more akin to a science. Thoughtful, analytical research will drive much better results than pure artistic talent will any day.</p>
<p>That&#8217;s not to say that there aren&#8217;t some incredible artists in the web design community, there certainly are, and I envy them, but the ability to draw is not required for our craft.</p>
<p>In fact, lifting the scientific method right off the pages of your high school textbook can be a great way to apprach web design.</p>
<h3>1) Ask a Question</h3>
<p>The question is your client&#8217;s business goal. Why did they bring someone in to build a website for them? More sales leads? Higher sales? Increased subscription rates? Launching a new product? There&#8217;s a measurable, defined goal that your client has in mind that defines &#8220;success&#8221; for the website you&#8217;re being asked to design, and your first job is to figure out what that is.</p>
<h3>2) Do Background Research</h3>
<p>Your next step is your market research. Look for best practices in their industry, talk to the target audience about what they want in a site. Do your research and find out how best to meet the needs of your client.</p>
<h3>3) Construct a Hypothesis</h3>
<p>Your hypothesis is your best guess at the first design. It&#8217;s your gut instinct, and it&#8217;s both good and bad news.</p>
<ul>
<li>For novice web designers, your gut is usually wrong, but you code it as-is anyway.</li>
<li>For experienced web designers, your gut is usually close to the mark, but you test it to get it right.</li>
<li>For veteran web designers, your gut is almost always correct &#8211; and you test anyway.</li>
</ul>
<p><strong>Don&#8217;t ignore your gut instinct.</strong> Gut instinct is your subconscious mind building connections and patterns of the various data points you&#8217;ve experienced so far on the web.</p>
<p>But like anything else, <strong>don&#8217;t rely solely on gut instinct</strong>. Good science is based on multiple points of documented evidence. The more you design, and the more experience you get in the field, the better your gut instinct will be.</p>
<h3>4 and 5) Test -&gt; Analyze -&gt; Repeat</h3>
<p>This is the heart of good web design. Here, you test your hypothesis against the problem from step 1.</p>
<p>Your tools for this are mockups and user testing. Do some wireframes. Put them in front of people that resemble your target audience, and carefully watch their reactions.</p>
<p>The question you&#8217;re trying to test isn&#8217;t &#8220;do they like the design?&#8221;. The question is &#8220;do they meet the goal criteria set out by the client?&#8221;.</p>
<p>Are they clicking the &#8220;Buy Now&#8221; button? Are they successfully getting through the shopping cart? Are they quickly finding the information they want? Are they successfully entering the contest?</p>
<p>Whatever that call to action was &#8211; the goal your client&#8217;s trying to achieve, that&#8217;s what your design has to accomplish.</p>
<p>Iterate. Build on your idea based on the feedback you receive.</p>
<p>While your first idea won&#8217;t always be right, it doesn&#8217;t mean that you&#8217;re a failure as a web designer. The standard by which good web designers are measured is <strong>results. Are you solving the problem your client gave you?</strong> If so, move on to step 6; if not, try again!</p>
<p>If it takes you five tries to get a design that works, that&#8217;s a success. You meet the goals laid out in Step 1, and your client is happy.</p>
<p>If you sell a client the first thing you think of and it doesn&#8217;t work, your client won&#8217;t be coming back.</p>
<h3>6) Publish your Results</h3>
<p>Once you&#8217;ve got a working design, build it. This part you should be familiar with.</p>
<h3>Conclusion</h3>
<p>Web Design is a beautiful science. You start with an idea, and create something beautiful as an outcome. A little bit of science can go a long way towards making that beautiful thing more successful.</p>
<p>Like what you&#8217;ve read? <a href="http://www.twitter.com/andrewheins">Follow me on Twitter</a>.</p>
<img src="http://feeds.feedburner.com/~r/AndrewHeins/~4/I87g-V8jcKU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.andrewheins.ca/2011/the-mad-science-of-web-design/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.andrewheins.ca/2011/the-mad-science-of-web-design/</feedburner:origLink></item>
		<item>
		<title>Mocking a Responsive Design</title>
		<link>http://feedproxy.google.com/~r/AndrewHeins/~3/0501a_Zg-5w/</link>
		<comments>http://www.andrewheins.ca/2011/getting-started-with-responsive-design-and-origami/#comments</comments>
		<pubDate>Tue, 06 Sep 2011 14:05:00 +0000</pubDate>
		<dc:creator>Andrew Heins</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Development Process]]></category>

		<guid isPermaLink="false">http://tempandrew.wordpress.com/2011/09/06/getting-started-with-responsive-design-and-origami</guid>
		<description><![CDATA[Responsive Design, or the idea that a website should respond to the size and orientation of the device on which it&#8217;s being viewed, is a tough concept for some designers and developers to wrap their heads around. The best advice I can give someone who is just getting started in responsive design is to starting [...]]]></description>
			<content:encoded><![CDATA[<p>Responsive Design, or the idea that a website should respond to the size and orientation of the device on which it&#8217;s being viewed, is a tough concept for some designers and developers to wrap their heads around.</p>
<p>The best advice I can give someone who is just getting started in responsive design is to starting thinking responsively right from the start. Don&#8217;t create a site for one device and scale down, think about all devices the whole way.</p>
<p>&#8220;But that&#8217;s a lot of work!&#8221;, you say.</p>
<p>It doesn&#8217;t actually have to be. Here&#8217;s a simple hack I use for wireframing sites that I want to be responsive, and it doesn&#8217;t take much work at all.</p>
<h3>Tools</h3>
<p>All you need for this is:</p>
<ol>
<li>a sheet of 8.5 x 11 paper,</li>
<li>a pen,</li>
<li>and if you&#8217;re a slightly OCD like me, you might want a ruler.</li>
</ol>
<p><img src="http://www.andrewheins.ca/content/images/materials.jpg" alt="required materials" /></p>
<h3>Step 1</h3>
<p>Fold your sheet of paper in half height-wise. You want two fat rectangles, not two long, slender ones.</p>
<p><img src="http://www.andrewheins.ca/content/images/step-1.jpg" alt="Step1" /></p>
<h3>Step 2</h3>
<p>Fold the closest rectangle up. When pressed totally flat, the paper should look like 1/4, 1/4, 1/2.</p>
<p><img src="http://www.andrewheins.ca/content/images/step-2.jpg" alt="Step 2" /></p>
<h3>Step 3</h3>
<p>Open your paper up, and it should look something like this:</p>
<p><img src="http://www.andrewheins.ca/content/images/step-3.jpg" alt="Step 4" /></p>
<h3>Step 4</h3>
<p>Rotate your paper 90% and fold it up lengthwise. We&#8217;re trying to create thirds here, so with the backside of the fold hidden and pressed completely flat, you should be looking at two equal halves.</p>
<p><img src="http://www.andrewheins.ca/content/images/step-4.jpg" alt="Step 5" /></p>
<h3>Step 5</h3>
<p>Open your paper back up again and use your pen to draw along the folds so your paper looks something like this:</p>
<p><img src="http://www.andrewheins.ca/content/images/step-5.jpg" alt="Step 6" /></p>
<h3>You&#8217;re done!</h3>
<p><img src="http://www.andrewheins.ca/content/images/step-6.jpg" alt="All Done!" /></p>
<p>Now you&#8217;ve got a single sheet of paper ready for simple wireframing that gives you approximate dimensions for Monitors, Tablets and Smartphones, while leaving a little space for a Site and Page Name, as well as some Notes!</p>
<p>The dimensions aren&#8217;t exact, but they&#8217;re close enough, and at this point, you&#8217;re just wireframing; you shouldn&#8217;t be focusing on details anyway!</p>
<p>Using a tool like this, you can ensure that non-PC devices are first-class citizens, and your responsive with purpose, not as an afterthought.</p>
<p>&nbsp;</p>
<p>Do you have any cool tricks that help you with web design like this one? Let me know!</p>
<p>If you like stuff like this, you can <a title="@andrewheins on Twitter" href="http://www.twitter.com/andrewheins">follow me on Twitter</a> and drop me a line!</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<img src="http://feeds.feedburner.com/~r/AndrewHeins/~4/0501a_Zg-5w" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.andrewheins.ca/2011/getting-started-with-responsive-design-and-origami/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.andrewheins.ca/2011/getting-started-with-responsive-design-and-origami/</feedburner:origLink></item>
		<item>
		<title>Stop Screwing with the Scrollbar!</title>
		<link>http://feedproxy.google.com/~r/AndrewHeins/~3/3t2hYsKPQxc/</link>
		<comments>http://www.andrewheins.ca/2011/stop-screwing-with-the-scrollbar/#comments</comments>
		<pubDate>Wed, 31 Aug 2011 18:44:00 +0000</pubDate>
		<dc:creator>Andrew Heins</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Design]]></category>

		<guid isPermaLink="false">http://tempandrew.wordpress.com/2011/08/31/stop-screwing-with-the-scrollbar</guid>
		<description><![CDATA[A new trend that I&#8217;ve seen in UI design lately is to try to redesign the scrollbar. While I understand the good intentions, we&#8217;ve seen some particularly horrible examples of UX from these attempts. A Horrible Idea Reinventing or reskinning the scroll bar isn&#8217;t exactly a new phenonmenon. Ever since Flash became a popular medium, [...]]]></description>
			<content:encoded><![CDATA[<p>A new trend that I&#8217;ve seen in UI design lately is to try to redesign the scrollbar. While I understand the good intentions, we&#8217;ve seen some particularly horrible examples of UX from these attempts.</p>
<h3>A Horrible Idea</h3>
<p>Reinventing or reskinning the scroll bar isn&#8217;t exactly a new phenonmenon. Ever since Flash became a popular medium, we&#8217;ve seen lots of different attempts to make scrollbars sexier.</p>
<p>Altering the scrollbars creates two problems:</p>
<ol>
<li>Scrollbars are a central part of the application</li>
<li>Scrollbars are normally uniform across the OS of computer.</li>
</ol>
<h4>Scrollbars are Central to the application</h4>
<p>Scrollbars are a tool to give access to content that normally wouldn&#8217;t fit on the user&#8217;s screen. They&#8217;re particularly important because screen sizes vary so widely. Altering the design or function of the scrollbars leaves you in danger of discouraging or disabling access to some of your content &#8211; content that you presumably want people to see!</p>
<h4>Scrollbars are uniform across an OS</h4>
<p>For most applications, scrollbar design is set by the OS, not the individual application (similar examples would be the minimize and close buttons, or with window chrome). Changing scrollbars for your particular application or website can be confusing because your UI will be an exception. Even if your design is good, you&#8217;re causing an initial element of confusion with your alternative view.</p>
<h3>Examples</h3>
<h4>Ubuntu 11 and the Unity UI</h4>
<p><img src="http://www.andrewheins.ca/Content/images/unity-scrolbar.png" alt="Unity Scrollbar" /></p>
<p>The most notorious example of Scrollbar UI gone wrong is Ubuntu&#8217;s new Unity UI. Linux distributions have never been particularly pretty from a design point of view, but Unity was Canonical&#8217;s attempt at stepping into the 20th century with UI design and bringing Linux closer to Windows and Apple in visual appeal.</p>
<p>Unfortunately, the scrollbars in the new UI are particularly bad. As a slim coloured bar with no iconography, they&#8217;re largely hidden when not in use. The pop-up overlay is particulaly confusing, as it moves with your cursor even when not actively engaged.</p>
<h4>Google Docs</h4>
<p><img src="http://www.andrewheins.ca/Content/images/google-scrollbar.png" alt="Google Docs Scrollbar" width="300px" /></p>
<p><span style="font-weight: bold;"><br />
</span></p>
<p>I&#8217;m a huge fan of the clean design of Google now that they&#8217;ve launched Google Plus, but the scrollbars in Google Docs are not effective. Similar to Ubuntu, they&#8217;ve gone for the slim coloured bar with no iconography. There are also no buttons at the top or bottom as with traditional scrollbars. These scrollbars literally disappear into the screen noise. Not good.</p>
<h4>Gawker</h4>
<p><img src="http://www.andrewheins.ca/Content/images/gawker-scrollbar.png" alt="Gawker Scrollbar" /><br />
<span style="font-size: x-small;">Gawker &#8211; The only indication that more content exists&#8230;</span></p>
<p>Worst of all designs is the new sidebar of Gawker. Their idea? No Scrollbars. They made the decision that between the scrollwheel and cursor (assuming the scrollbar has focus), the user should be able to figure out how to scroll.</p>
<p>This is awful for many reasons, but the biggest of which is that the user has no visual clue that more content even exists. Unless you magically happen to scroll while hovering over the scrollbar, you&#8217;ll miss that content. That&#8217;s downright awful.</p>
<p>I think I read somewhere that they&#8217;re planning on changing it back, and I certainly hope that&#8217;s the case.</p>
<h3>Conclusion</h3>
<p>Look, I get it. Scrollbars are dull and kind of ugly, and everyone would really be much happier if they were just a little more elegant, but please, do your users a favour, unless it&#8217;s absolutely mission critical to your application to modify the scrollbars AND you&#8217;ve done <a href="http://www.useit.com/alertbox/20050711.html" target="_blank">a ton of research</a> and user testing on the new design, just leave them alone.</p>
<p>Please.</p>
<img src="http://feeds.feedburner.com/~r/AndrewHeins/~4/3t2hYsKPQxc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.andrewheins.ca/2011/stop-screwing-with-the-scrollbar/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.andrewheins.ca/2011/stop-screwing-with-the-scrollbar/</feedburner:origLink></item>
		<item>
		<title>Reddit-Style Comments for Hacker News</title>
		<link>http://feedproxy.google.com/~r/AndrewHeins/~3/wZ7PCHW_Rwc/</link>
		<comments>http://www.andrewheins.ca/2011/reddit-style-comments-for-hacker-news/#comments</comments>
		<pubDate>Thu, 23 Jun 2011 13:14:28 +0000</pubDate>
		<dc:creator>Andrew Heins</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[JavaScript]]></category>

		<guid isPermaLink="false">http://tempandrew.wordpress.com/2011/06/23/reddit-style-comments-for-hacker-news</guid>
		<description><![CDATA[Ever wish you could collapse the comments on Hacker News like you can on Reddit? I sure did. So much so that I wrote a little script to add that functionality. Not a complicated little project, but certainly satisfying. Download the Chrome Extension Download the GreaseMonkey Script View the Source on GitHub]]></description>
			<content:encoded><![CDATA[<p>Ever wish you could collapse the comments on Hacker News like you can on Reddit? I sure did. So much so that <a href="http://andrewheins.ca/Projects/Hacker_News_Comments" title="Project Page">I wrote a little script</a> to add that functionality.</p>
<p>Not a complicated little project, but certainly satisfying.</p>
<ul>
<li><a href="http://chrome.google.com/webstore/detail/gcomokcpehnfjcegfilpfenjnjfkefpc" title="Chrome Web Store" target="_blank">Download the Chrome Extension</a></li>
<li><a href="http://www.userscripts.org/scripts/show/105251" title="UserScripts.org" target="_blank">Download the GreaseMonkey Script</a></li>
<li><a href="http://github.com/andrewheins/HN-Comment-Hider" title="GitHub.com" target="_blank">View the Source on GitHub</a></li>
</ul>
<img src="http://feeds.feedburner.com/~r/AndrewHeins/~4/wZ7PCHW_Rwc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.andrewheins.ca/2011/reddit-style-comments-for-hacker-news/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.andrewheins.ca/2011/reddit-style-comments-for-hacker-news/</feedburner:origLink></item>
	</channel>
</rss><!-- Dynamic page generated in 1.621 seconds. --><!-- Cached page generated by WP-Super-Cache on 2012-02-23 03:36:37 --><!-- Compression = gzip -->

