<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
 
 <title>CabGFX</title>
 <link href="http://cabgfx.github.com/atom.xml" rel="self"/>
 <link href="http://cabgfx.github.com"/>
 <updated>2015-09-24T21:53:01+00:00</updated>
 <id>http://cabgfx.github.com</id>
 <author>
   <name>Casper Klenz-Kitenge</name>
   <email>hi@cabgfx.com</email>
 </author>

 
 <entry>
   <title>Stay shipping</title>
   <link href="http://cabgfx.github.com/2013/02/04/stay-shipping"/>
   <updated>2013-02-04T00:00:00+00:00</updated>
   <id>hhttp://cabgfx.github.com/2013/02/04/stay-shipping</id>
   <content type="html">
&lt;blockquote&gt;
  &lt;p&gt;We’re clearly a bad judge of our own creations. We should just put it out and let the world decide.
—Derek Sivers, one of my alltime favorite bloggers and a great inspiration, shares this wonderful little nugget in an old, but good, post on what is &lt;a href=&quot;http://sivers.org/obvious&quot;&gt;obvious to you, is amazing to others&lt;/a&gt;.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;A good reminder to stay shippping and consistently improve.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Stop dissing your clients</title>
   <link href="http://cabgfx.github.com/2013/02/01/stop-dissing-your-clients"/>
   <updated>2013-02-01T00:00:00+00:00</updated>
   <id>hhttp://cabgfx.github.com/2013/02/01/stop-dissing-your-clients</id>
   <content type="html">
&lt;p&gt;Since I first read Don Norman’s classic &lt;a href=&quot;http://www.amazon.com/Design-Everyday-Things-Donald-Norman/dp/0465067107/ref=sr_1_1?ie=UTF8&amp;amp;qid=1359766840&amp;amp;sr=8-1&amp;amp;keywords=design+of+everyday+things (Amazon link. No affiliations.)&quot;&gt;The Design of Everyday Things&lt;/a&gt;, one particular takeaway has stuck with me ever since: &lt;em&gt;if people fail to understand my design, the fault is mine, and mine alone&lt;/em&gt;. As the designer, &lt;em&gt;I&lt;/em&gt; am responsible for conveying the meaning and intended use of the interfaces I put into the world.&lt;/p&gt;

&lt;p&gt;Similarly, as a professional, I must assume full responsibility and take control of the process, in which I engage my clients, colleagues and stakeholders. Deferring responsibility, avoiding tough decisions, failing to take preemptive measures, and other  acts of unprofessional conduct, all point to the signs of an amateur at play.&lt;/p&gt;

&lt;p&gt;Perhaps you can understand why, then, I cannot come to terms with the fact, that we, as an industry, seem to accept the phenomenon of &lt;a href=&quot;http://clientsfromhell.net/&quot;&gt;ridiculing&lt;/a&gt; &lt;a href=&quot;http://sharpsuits.net/Home&quot;&gt;our&lt;/a&gt; &lt;a href=&quot;http://theoatmeal.com/comics/design_hell&quot;&gt;clients&lt;/a&gt; in public, albeit anonymously. &lt;/p&gt;

&lt;p&gt;I saw a &lt;a href=&quot;https://twitter.com/fchimero/status/296635654236938240&quot;&gt;tweet from Frank Chimero&lt;/a&gt;, which completely sums up how I feel about this practice:&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot;&gt;&lt;p&gt;I get really bummed when designers create projects that make fun of their clients.&lt;/p&gt;&amp;mdash; Frank Chimero (@fchimero) &lt;a href=&quot;https://twitter.com/fchimero/status/296635654236938240&quot;&gt;30. jan. 2013&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;async&quot; src=&quot;//platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt; /*mdfix*/ &lt;/script&gt;

&lt;p&gt;Please. We are &lt;a href=&quot;http://designprofessionalism.com/defining-design-professionalism-1.php (Andy Rutledge wrote a great book about what it means to practice your craft like a boss.)&quot;&gt;design professionals&lt;/a&gt;. Imagine hiring someone to carry out a job, which you did not feel equipped to take on by yourself, only to find out later that your questions, requests and enquiries had been posted online, with the sole purpose of making fun of your apparent ignorance (completely ignoring the fact that said ignorance is what created the job in the first place). Wouldn’t sit right with me, even if there was no mention of my name, or anything else that could otherwise identify me or my company. So why should &lt;em&gt;my&lt;/em&gt; clients feel any different? &lt;/p&gt;

&lt;p&gt;Yes, I’ve had my share of professional relations gone south, and I can certainly relate to most of the scenarios described in many of these “silly client” stories.&lt;/p&gt;

&lt;p&gt;Yes, I’ve been talking shit about a client or two, behind their back, to a coworker. I stress that last part — &lt;em&gt;to a coworker&lt;/em&gt;. Everyone needs to ventilate frustrations every now and again, and it might very well be legitimate woes, but you should never take it to the streets, so to speak.&lt;/p&gt;

&lt;p&gt;And yes, some people really aren’t very good at comprehending what it is that we do, or at least they don’t want to. But perhaps this shouldn’t define how we think about &lt;em&gt;all&lt;/em&gt; of our clients? Perhaps it is simply because some (a few) people just don’t act like professionals at all?&lt;/p&gt;

&lt;p&gt;Then, perhaps, the real issue is: Don’t work with amateurs. Don’t work with anyone who doesn’t respect you, your craft or your position as an equal partner in a professional relationship. Learn to gauge your client’s initial level of engagement, and if it doesn’t meet the standards you hold yourself to, disengage. It’s that simple.&lt;/p&gt;

&lt;p&gt;I’m not saying you should just fire customers willy-nilly (bad idea if you’re in it for the long haul), and I’m definitely not advocating an elitist approach to how you conduct your business. However, &lt;a href=&quot;http://jasonsantamaria.com/articles/saying-no (A great CreativeMornings talk by Jason Santa Maria.)&quot;&gt;&lt;em&gt;No&lt;/em&gt; is such a powerful word&lt;/a&gt;, and I’m beginning to see how, when employed with good sense and respect, it can be truly liberating.&lt;/p&gt;

&lt;p&gt;Don’t do work you can’t put your name behind; go hard or go home. Always seek to better yourself and the people you work with.  Listen. Learn. Educate. Work to become a trusted ally, not a commodity, to your client’s business, and you will be rewarded with less hassle, fewer hiccups and more good work to ship. After all, isn’t that we all set out to do?&lt;/p&gt;

&lt;p&gt;I absolutely love what I do. And I want the people I work for to feel the same way. That’s &lt;em&gt;my&lt;/em&gt; responsibility, not theirs.
Similarly, I love working within this industry of ours. We are at the very forefront of the times we live in, and people trust us to lead them into new ways of doing business. Coming off as a bunch of snotty hipsters will only stifle our collective progress, instead of moving us forward. We can do better. That is a common responsibility we all share as professionals.&lt;/p&gt;

&lt;p&gt;Comments are open, ditto &lt;a href=&quot;https://twitter.com/cabgfx&quot;&gt;twitter&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Related reading&lt;/strong&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.andyrutledge.com/stupid-is-as-stupid-does.php&quot;&gt;Stupid Is As Stupid Does&lt;/a&gt; — Andy Rutledge&lt;br /&gt;
&lt;a href=&quot;http://unitinteractive.com/blog/2010/06/24/your-clients-are-not-stupid/&quot;&gt;Your Clients Are Not Stupid&lt;/a&gt; — Nathan Ford&lt;/p&gt;

</content>
 </entry>
 
 <entry>
   <title>Jason Grigsby on responsive app design</title>
   <link href="http://cabgfx.github.com/2013/01/04/jason-grigsby-on-responsive-app-design"/>
   <updated>2013-01-04T00:00:00+00:00</updated>
   <id>hhttp://cabgfx.github.com/2013/01/04/jason-grigsby-on-responsive-app-design</id>
   <content type="html">
&lt;blockquote&gt;
  &lt;p&gt;By making a decision to design solely for a “desktop UI”, you are creating technical debt and limiting the longevity of the app you’re building.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Jason Grigsby wrote a great article on how the design paradigms of desktop, tablet and phone UI are converging.&lt;/p&gt;

&lt;p&gt;You should read it now: &lt;a href=&quot;http://blog.cloudfour.com/responsive-design-for-apps-part-1/&quot;&gt;Responsive Design for Apps — Part 1&lt;/a&gt;&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Meet Votes.io, our Rails Rumble 2012 contender</title>
   <link href="http://cabgfx.github.com/2012/10/16/meet-votesio-our-rails-rumble-2012-contender"/>
   <updated>2012-10-16T00:00:00+00:00</updated>
   <id>hhttp://cabgfx.github.com/2012/10/16/meet-votesio-our-rails-rumble-2012-contender</id>
   <content type="html">
&lt;figure&gt;
	&lt;img src=&quot;/images/rails-rumble-votes-io.jpg&quot; alt=&quot;Image of Votes.io logo and mobile view&quot; /&gt;
	&lt;figcaption&gt;&lt;a href=&quot;http://votes.io/&quot;&gt;Votes.io&lt;/a&gt; is instant feedback. Quick polls. Fast answers.&lt;/figcaption&gt;
&lt;/figure&gt;

&lt;p&gt;So the Rails Rumble 2012 is a wrap, and I’m really proud of what we’ve built.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://votes.io&quot;&gt;Votes.io&lt;/a&gt; is instant feedback: create a poll, share the short link and watch the results tick in, beautifully rendered in real-time.&lt;/p&gt;

&lt;h2 id=&quot;embracing-constraints&quot;&gt;Embracing constraints&lt;/h2&gt;

&lt;p&gt;Working within a 48-hour constraint enforced a focus in the team on getting things done. Most of the team members, including yours truly, have toddlers at home, further enhancing the time constraints and the focus on being über-productive.&lt;/p&gt;

&lt;p&gt;Between diapers, family dinners and that pesky need for sleep, the task was simple: create a simple app that does one thing well.&lt;/p&gt;

&lt;h2 id=&quot;removing-friction&quot;&gt;Removing friction.&lt;/h2&gt;

&lt;p&gt;We deliberately chose to not provide any account management or poll administration. Creating a poll should be dead simple — write a question, add some choices and share the link. Done.&lt;/p&gt;

&lt;p&gt;Made a typo? Forgot to include a choice? No problem — just create a new poll. No messing around with deleting, editing or unpublishing a poll.&lt;/p&gt;

&lt;p&gt;Sure, there’s a lot of good reasons for tying votes to a user, and letting the creator go back and edit/update polls. It just wasn’t right for this type of poll system. Votes.io was built for immediate responses to simple questions, and as such, each poll is shortlived.&lt;/p&gt;

&lt;p&gt;The premises of the contest was also a factor in this decision. Judges can’t be expected to invest a lot of time in each app, considering there’s roughly 300 apps competing. I fear a lot of great apps in the Rumble will suffer a lack of votes, because of this.&lt;/p&gt;

&lt;h2 id=&quot;designing-the-ui&quot;&gt;Designing the UI&lt;/h2&gt;

&lt;figure&gt;
	&lt;img src=&quot;/images/rails-rumble-usecases-votes-io.jpg&quot; alt=&quot;Three different sketches of use cases for Votes.io&quot; /&gt;
	&lt;figcaption&gt;Use cases for Votes.io: Vote for tomorrow&#39;s lunch, get audience reactions and sending polls in emails.&lt;/figcaption&gt;
&lt;/figure&gt;

&lt;p&gt;Our canonical use case is a speaker who creates a poll, prior to a presentation, and includes the URL in her slide deck. Then everyone vote simultaneously at the event and watch as results update instantly.&lt;/p&gt;

&lt;p&gt;This focus on doing one thing well shines through in the UI, especially on the homepage. The interface is obvious and needs no further introduction:&lt;/p&gt;

&lt;figure&gt;
	&lt;img src=&quot;/images/rails-rumble-votes-io-homepage.png&quot; alt=&quot;&quot; /&gt;
	&lt;figcaption&gt;Votes.io homepage&lt;/figcaption&gt;
&lt;/figure&gt;

&lt;h3 id=&quot;getting-started&quot;&gt;Getting started&lt;/h3&gt;

&lt;p&gt;I initially hashed out some simple flows, to get a feel for the screens we’d need and what elements would be required to support the interactions:&lt;/p&gt;

&lt;figure&gt;
	&lt;img src=&quot;/images/rails-rumble-userflows-votes-io.jpg&quot; alt=&quot;Two diagrams of the user flows, needed to build the app&quot; /&gt;
	&lt;figcaption&gt;The flows needed for a minimally viable product&lt;/figcaption&gt;
&lt;/figure&gt;

&lt;p&gt;After a couple of back-and-forths with the team, we started building the app. The rest of the team took on Rails and data modelling, and I started building the UI. For such a simple app, a quick sketch and then straight to code, felt like &lt;a href=&quot;http://cabgfx.com/2012/03/16/removing-waste-in-your-design-process/&quot;&gt;the right approach&lt;/a&gt;.&lt;/p&gt;

&lt;figure&gt;
	&lt;img src=&quot;/images/rails-rumble-campfire-sketches-votes-io.png&quot; alt=&quot;A snapshot showing sketches posted to our chatroom&quot; /&gt;
	&lt;figcaption&gt;Quick sketch in Draft for iPad, post to Campfire for a quick discussion, then back to work. (In danish, sorry.)&lt;/figcaption&gt;
&lt;/figure&gt;

&lt;p&gt;We didn’t have time to design the UI from scratch, and decided to build off of Twitter Bootstrap. We’d get battle-tested components for free, eliminating potentially time-consuming issues. Bootstrap also provides a simple, pragmatic foundation for responsive design—a crucial factor for us.&lt;/p&gt;

&lt;figure&gt;
	&lt;img src=&quot;/images/rails-rumble-copy-iterations-votes-io.jpg&quot; alt=&quot;Four different snapshots of our iterations to body copy&quot; /&gt;
	&lt;figcaption&gt;Good copy is everything.&lt;/figcaption&gt;
&lt;/figure&gt;

&lt;h3 id=&quot;feature-freeze&quot;&gt;Feature freeze&lt;/h3&gt;

&lt;p&gt;At the end of Day One, we’d achieved our goal for the day: have a working, usable app. Still rough around the edges, but feature-complete. Create a poll; get a short link; watch results update in real-time, visualized in three different charts.&lt;/p&gt;

&lt;p&gt;We started Day Two polishing the UI, refining copy, refactoring code and squashing bugs. We didn’t quite manage to make all the visualizations really sing, so we decided to kill one of them. It’s still in there, you might be able to find it ;)&lt;/p&gt;

&lt;p&gt;As the end of Day Two was approaching, the app felt polished and we decided to ice the cake. We anticipated a lot of mistyped shortlinks (think thumbs vs. touch keyboards), so we added a little easter egg to our 404 page. We also added some featured polls to the frontpage.&lt;/p&gt;

&lt;h3 id=&quot;the-cherry&quot;&gt;The cherry&lt;/h3&gt;

&lt;p&gt;With less than 3 hours left on the clock, I figured we could use a logo. I got busy with my Wacom stylus and &lt;a href=&quot;http://www.fiftythree.com/paper&quot;&gt;Paper for iPad&lt;/a&gt;:&lt;/p&gt;

&lt;figure&gt;
	&lt;img src=&quot;/images/rails-rumble-logo-iterations-votes-io.jpg&quot; alt=&quot;Ideas for the logo and the final version&quot; /&gt;
	&lt;figcaption&gt;Combining bar charts to form the letter V&lt;/figcaption&gt;
&lt;/figure&gt;

&lt;p&gt;And we had a logo. Admittedly, not the best logo I’ve made, but considering my caffeine level, it’s alright. I used Jason Zimdars’ &lt;a href=&quot;http://37signals.com/svn/posts/3271-easy-retina-ready-images-using-scss&quot;&gt;handy SCSS mixin&lt;/a&gt; to serve it @2x-dead simple.&lt;/p&gt;

&lt;p&gt;We went trough the app, securing all pitfalls, tagged the repo and exhaled. Signed, sealed, delivered.&lt;/p&gt;

&lt;h3 id=&quot;recommended&quot;&gt;Recommended.&lt;/h3&gt;

&lt;p&gt;This was my first time participating in the Rumble, and it’s been great fun. I had a chance to try out some new techniques and just geek out for 48 hours. Bliss.&lt;/p&gt;

&lt;p&gt;If you’re a designer, you should definitely try joining a hackathon—it’s not just for programmers. You might even pick up some new coding skills along the way, I sure did.&lt;/p&gt;

&lt;p&gt;Huge props to the rest of Team Votes.io: Jacob Tjørnholm (&lt;a href=&quot;https://twitter.com/chopmo&quot;&gt;@chopmo&lt;/a&gt;), Laust Rud Jacobsen (&lt;a href=&quot;https://twitter.com/laustrud&quot;&gt;@laustrud&lt;/a&gt;) and especially Jakob Skjerning (&lt;a href=&quot;https://twitter.com/mentalizer&quot;&gt;@mentalizer&lt;/a&gt;) for inviting me. Amazing what a simple retweet can lead to.&lt;/p&gt;

&lt;p&gt;Try out our app at &lt;a href=&quot;http://votes.io&quot;&gt;votes.io&lt;/a&gt; and if you think it’s good, &lt;a href=&quot;http://railsrumble.com/entries/159-votes-io&quot;&gt;please vote for us&lt;/a&gt;—thanks!&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Rails Rumble 2012</title>
   <link href="http://cabgfx.github.com/2012/10/12/rails-rumble-2012"/>
   <updated>2012-10-12T00:00:00+00:00</updated>
   <id>hhttp://cabgfx.github.com/2012/10/12/rails-rumble-2012</id>
   <content type="html">
&lt;p&gt;This weekend (Oct. 13—14) I’ll be participating in the recently resurrected &lt;a href=&quot;http://railsrumble.com&quot;&gt;Rails Rumble&lt;/a&gt;, along with the amazing backend chops of Jakob Skjerning (&lt;a href=&quot;https://twitter.com/mentalizer&quot;&gt;@mentalizer&lt;/a&gt;), Jacob Tjørnholm (&lt;a href=&quot;https://twitter.com/chopmo&quot;&gt;@chopmo&lt;/a&gt;) and Laust Rud Jacobsen (&lt;a href=&quot;https://twitter.com/laustrud&quot;&gt;@laustrud&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;Obviously, I’ll be doing the UI and a lot of the frontend of our entry. I definitely look forward to working with, and learning from, these guys.&lt;/p&gt;

&lt;p&gt;Can’t say much about our plans for the app yet, but you can follow along and root for us on &lt;a href=&quot;http://railsrumble.com/entries/159-polltergeist&quot;&gt;the Rumble entry page&lt;/a&gt;.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Oliver Reichenstein on design by committee</title>
   <link href="http://cabgfx.github.com/2012/08/20/oliver-reichenstein-on-design-by-committee"/>
   <updated>2012-08-20T00:00:00+00:00</updated>
   <id>hhttp://cabgfx.github.com/2012/08/20/oliver-reichenstein-on-design-by-committee</id>
   <content type="html">
&lt;blockquote&gt;
  &lt;p&gt;Nothing is more destructive to good design than group thinking and collective decision making. Why? As I said, to most people good design is invisible. Group decisions focus on the visible, bad aspects of design.
–from a lengthy &lt;a href=&quot;http://www.theverge.com/2012/7/24/3177332/ia-oliver-reichenstein-writer-interview-good-design-is-invisible&quot;&gt;interview on The Verge&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
</content>
 </entry>
 
 <entry>
   <title>Getting started with web development</title>
   <link href="http://cabgfx.github.com/2012/05/03/getting-started-with-web-development"/>
   <updated>2012-05-03T00:00:00+00:00</updated>
   <id>hhttp://cabgfx.github.com/2012/05/03/getting-started-with-web-development</id>
   <content type="html">
&lt;p&gt;I was asked the other day to compile a list of resources for a friend that wants to get started designing &amp;amp; building for the web.&lt;/p&gt;

&lt;p&gt;As I was compiling the list, it dawned on me how far we’ve come. Not long ago, resources were scarce and mostly &lt;em&gt;HTML for dummies&lt;/em&gt;-type-stuff. Now there’s an immense amount of material available, and I’m especially keen on the recent rise of interactive courses. Sites like Treehouse, Code School and Code Academy are really pushing the envelope in this space, and I can only imagine where we’ll be 10 years from now.&lt;/p&gt;

&lt;p&gt;The following list is what I came up with initially, and I’ll be expanding it over time. If you can think of any resources I haven’t listed, please suggest them in the comments below. Think of it from the perspective of a complete beginner, with no prior understanding of how a website is built. Thanks.&lt;/p&gt;

&lt;h2 id=&quot;interactive-courses&quot;&gt;Interactive courses&lt;/h2&gt;
&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.codeschool.com/&quot;&gt;Codeacademy&lt;/a&gt; - The title says it all: &lt;em&gt;Web Fundamentals&lt;/em&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://teamtreehouse.com/&quot;&gt;Treehouse&lt;/a&gt; - A bit more advanced, but still great if you’re just getting your feet wet.&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.codecademy.com/tracks/web/&quot;&gt;Code School&lt;/a&gt; - Advanced frontend coding (HTML, CSS and Javascript) and programming courses.&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.code.org/&quot;&gt;Code.org&lt;/a&gt; - Simple courses to get your feet wet, plus a whole slew of additional resources to dig into.&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://www.udemy.com/&quot;&gt;Udemy.com&lt;/a&gt; - Since I first published this, a lot of sites have added tons of great courses, materials, etc. Udemy especially have quite a catalogue to peruse these days.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2 id=&quot;online-tutorials--references&quot;&gt;Online tutorials &amp;amp; references&lt;/h2&gt;
&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;http://reference.sitepoint.com/html&quot;&gt;SitePoint&lt;/a&gt; - good, basic references &amp;amp; resources to get going. I haven’t gone through them all, but there’s generally high quality to be found.&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://html5doctor.com/&quot;&gt;HTML5 Doctor&lt;/a&gt; - a great site for understanding the semantics behind the new additions to HTML, and how, when and where to apply them. It does require an understanding of the basics of HTML, however.&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://blog.udemy.com/learn-html-learn-the-foundations-of-html/&quot;&gt;Udemy&lt;/a&gt; - recently posted a good, thorough and up to date introduction to HTML. Great primer for anyone looking to start with the very basics.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2 id=&quot;books&quot;&gt;Books&lt;/h2&gt;
&lt;p&gt;I had trouble finding the best entry-level books on website design &amp;amp; development, so the books on this list all require a general idea of how websites come to be.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;http://amzn.to/IG5NEh&quot;&gt;Don’t Make Me Think&lt;/a&gt;, Steve Krug - the usability bible. Mandatory reading.&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://amzn.to/IG59Xx&quot;&gt;Bulletproof Web Design&lt;/a&gt;, Dan Cederholm - a great resource for applying best practices to the way you build websites.&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://amzn.com/0321616952&quot;&gt;Designing with Web Standards&lt;/a&gt;, Jeffrey Zeldman and Ethan Marcotte - I’ve never read this myself, but I’m pretty sure the authors earned some of their stripes with this opus.&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://abookapart.com&quot;&gt;Every single book from A Book Apart&lt;/a&gt; - every single one is excellent and will prepare you for building the websites of tomorrow.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2 id=&quot;general-thoughts-on-web-design--development&quot;&gt;General thoughts on web design &amp;amp; development&lt;/h2&gt;
&lt;p&gt;This list could easily go on forever, but these are &lt;em&gt;some&lt;/em&gt; of the people/places I’ve found to consistently post great articles on how to build better software for the web:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.alistapart.com/articles/&quot;&gt;A List Apart&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://feltpresence.com&quot;&gt;Ryan Singer&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://blog.intercom.io/&quot;&gt;Des Traynor / Intercom blog&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;Joshua Porter - both &lt;a href=&quot;http://bokardo.com&quot;&gt;his personal blog&lt;/a&gt; and the co-op &lt;a href=&quot;http://52weeksofux.com/&quot;&gt;52 Weeks of UX&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://methodandcraft.com/&quot;&gt;Method &amp;amp; Craft&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://bradfrostweb.com/blog/&quot;&gt;Brad Frost&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Finally, you should check out my earlier post on &lt;a href=&quot;http://cabgfx.com/2012/03/16/removing-waste-in-your-design-process/&quot;&gt;how to maximize your productivity&lt;/a&gt; when you start designing that awesome thing you have in mind. Oh, and remember: sites with pictures of funny cats will never go out of fashion. Now go and build something!&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>A review of the new Basecamp</title>
   <link href="http://cabgfx.github.com/2012/04/03/a-review-of-the-new-basecamp"/>
   <updated>2012-04-03T00:00:00+00:00</updated>
   <id>hhttp://cabgfx.github.com/2012/04/03/a-review-of-the-new-basecamp</id>
   <content type="html">
&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt; The new Basecamp from 37signals is out, and I’ve been using it for about a month now. It’s an amazing product and, pending some minor tweaks &amp;amp; additions, poised to become the new standard for project management tools to adhere to.&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;Most project are small and short. The original Basecamp was overkill for most kinds of projects. The new Basecamp is perfect for projects of every size.
&lt;cite&gt;&lt;a href=&quot;http://37signals.com/svn/posts/3129-launch-the-all-new-basecamp&quot;&gt;Jason Fried&lt;/a&gt;, in the launch post on Signals vs. Noise (company blog).&lt;/cite&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;I’ve used the original Basecamp (now renamed to Basecamp Classic) for a long time and I always had mixed feelings about it. It did a lot of things well, but as a whole, it often felt like a drag; keeping Basecamp updated became a task of its own.&lt;/p&gt;

&lt;p&gt;Boy, has that changed.&lt;/p&gt;

&lt;h2 id=&quot;rewrite&quot;&gt;Rewrite&lt;/h2&gt;
&lt;p&gt;The team at 37signals decided to start from scratch with the new Basecamp (initially dubbed Basecamp Next, or BCX, for short), and launched it as a separate product from the Classic edition, which is still available and maintained. That is a bold move: it takes balls to decide to rewrite your flagship offering, one that’s been profitable for 8 years and counting. Gotta respect that.&lt;/p&gt;

&lt;p&gt;It’s interesting to see a company with the clout of 37signals take on The Big Rewrite, and they’ve done a very good job. Chris Bliss of VM Associates &lt;a href=&quot;http://www.vm-associates.com/2012/03/15/basecamp-software-cloud-consulting-37signals/&quot;&gt;wrote a great post&lt;/a&gt; about their execution, which he thinks is (sort of) revolutionary:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;Once the product felt dated (after ~8 years, or roughly 3 cycles in the old model) they built a brand new product from the ground up. They combined the best of both worlds: the quick feedback loop of the new model with the “ground up” approach of the old model. Brilliant.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2 id=&quot;focus--simplicity&quot;&gt;Focus &amp;amp; Simplicity&lt;/h2&gt;
&lt;p&gt;The number one reason I love BCX is how it exudes simplicity and feels powerful at the same time. Every feature clearly had to fight to make the cut, which leaves a razor-sharp focus on getting things done.&lt;/p&gt;

&lt;p&gt;A lot of people are up in arms about features from Classic that’s not in BCX, such as private items, time-tracking and Milestones (to-dos tied to an event) – all features I rarely used myself, and the app seems better off without them. It feels like a lean and focused app that complements, rather than compromise, my workflow – checking in to catch up or post an update is now quick and effortless, which was rarely the case in the past.&lt;/p&gt;

&lt;h2 id=&quot;snappy-ui&quot;&gt;Snappy UI&lt;/h2&gt;

&lt;p&gt;Part of this is because of the speed and responsiveness of the interface – Basecamp is stupid fast, due to some solid engineering with sophisticated &lt;a href=&quot;http://37signals.com/svn/posts/3112-how-basecamp-next-got-to-be-so-damn-fast-without-using-much-client-side-ui&quot;&gt;HTML5 pushState wizardry&lt;/a&gt; on top of &lt;a href=&quot;http://37signals.com/svn/posts/3090-basecamp-nexts-caching-hardware&quot;&gt;a ridiculous amount of RAM&lt;/a&gt; used in &lt;a href=&quot;http://37signals.com/svn/posts/3113-how-key-based-cache-expiration-works&quot;&gt;an interesting approach to caching&lt;/a&gt;. Did I mention how fast it is?&lt;/p&gt;

&lt;p&gt;Attractive things work better, and the new Basecamp is testament to that. The interface is gorgeous and a joy to use, mainly because of how unobtrusive it is. Generous use of whitespace and excellent choice in colors &amp;amp; typography combine to form a layout that’s pleasant to work with and most importantly–gets out of my way.&lt;/p&gt;

&lt;p&gt;There’s a lot of great details in the UI, but one that stands out is what 37signals calls &lt;em&gt;page-stacking&lt;/em&gt; - pages as sheets of paper. This is a truly innovative approach, and it works really well. &lt;a href=&quot;http://www.vimeo.com/36917486&quot;&gt;This video&lt;/a&gt; explains it way better than I ever could (jump to 3:20).&lt;/p&gt;

&lt;h2 id=&quot;human-friendly&quot;&gt;Human-friendly&lt;/h2&gt;

&lt;p&gt;Too many people are slaves to their email, but I totally get why most people stick with it; it’s easy and it Just Works (most of the time). I’ve tried suggesting tools like Basecamp to these people, with the same outcome every time: busy people can’t be bothered to take a new system in until the benefits are proven.&lt;/p&gt;

&lt;p&gt;Now, people don’t have to adapt to a new system at all if it doesn’t work for them. Basecamp works incredibly well as a transparent layer on top of the regular flow of emails - I’ve been using it with my team at autobutler.dk since launch, and we’ve had none of the pushback from the last time we tried to introduce Basecamp (when only Classic was available). Some team members use Basecamp, others just use Gmail, and all of our progress on projects is recorded and gathered nicely in BCX.&lt;/p&gt;

&lt;p&gt;This is in large part due to a new feature called &lt;strong&gt;Loop-in&lt;/strong&gt;.
Here’s how it works: you post something in BCX, and want to let others know about it. You tick off the usual suspects to be notified, and in addition to that, you can notify (loop-in) someone that’s not on the project by adding their email to the list of recipients:&lt;/p&gt;

&lt;figure&gt;
	&lt;img src=&quot;/images/new-basecamp-loop-in-feature.png&quot; alt=&quot;Image of how Basecamp&#39;s new loop-in feature works&quot; /&gt;
	&lt;figcaption&gt;The new loop-in feature in Basecamp&lt;/figcaption&gt;
&lt;/figure&gt;

&lt;p&gt;They’ll get an email with the entire conversation in reverse chronological order, and can just reply to that email. Business as usual. This works really well, even more so for when you want to include someone that’s not even a part of your company.&lt;/p&gt;

&lt;h2 id=&quot;overview&quot;&gt;Overview&lt;/h2&gt;

&lt;p&gt;Another great feature is the &lt;em&gt;Daily Progress&lt;/em&gt; page, accessible from the main navigation. This is the successor to the Dashboard in BCC, and is way better - it was called &lt;em&gt;Timeline&lt;/em&gt; during the beta, which describes what type of overview it provides.&lt;/p&gt;

&lt;p&gt;This global overview is complimented by each project’s &lt;em&gt;Catch up on recent changes&lt;/em&gt; page, that lists activity day-by-day. Additionally, almost all actions in Basecamp are covered by an audit trail and undoable history, so you quickly become confident that data won’t ever wind up missing, once it’s been put in Basecamp.&lt;/p&gt;

&lt;p&gt;Another thing that works well is how Discussions are aggregated on the main project page from all comments, on all items. This is especially great compared to the old Dashboard and Messages index, both tedious to go through when you just needed to get an idea of what was currently being discussed.&lt;/p&gt;

&lt;p&gt;You can also have a daily catch-up mail sent to you at 7am with yesterdays progress and as always, you can subscribe to RSS feeds of your projects activity. All of these things might seem a bit daunting at first, but they’re not. Apart from the occasional overflow of emails, the team at 37signals seems to have struck a near-perfect balance with regards to how and when you catch up on a project.&lt;/p&gt;

&lt;h2 id=&quot;quirks&quot;&gt;Quirks&lt;/h2&gt;

&lt;p&gt;As I mentioned in the start of this post, there are some parts of the new Basecamp that rub me the wrong way. But the fact that they’re all minor details, speaks volumes about the quality of the first release.&lt;/p&gt;

&lt;p&gt;First of all, the administration of people and their permissions/project access is a bit wonky. For example, new invitees are granted permission to create new projects by default - that surprised me a bit, but it’s not that bad. However, when compared with the fact that new projects they create aren’t initially visible to me, an Administrator &lt;em&gt;and&lt;/em&gt; the account owner, it becomes weird. Regardless of your role &amp;amp; permissions in the account, you can only see projects to which you’ve explicitly been granted access. That just doesn’t feel right, especially on accounts with a set project limit.&lt;/p&gt;

&lt;p&gt;Generally speaking, I sometimes get lost navigating between sheets (pages). I tried narrowing it down to a specific example/scenario, but I couldn’t – it’s just one of those things that’s hard to explain until you try it yourself.&lt;/p&gt;

&lt;p&gt;I might be biased from using the Classic version, but I initially thought Todo-lists weren’t sortable by dragging and dropping - there’s no visual clues that you can do this on the items in the list. This goes for the entire list as well - they both afford clicking much more than dragging.&lt;/p&gt;

&lt;p&gt;It also really bugs me that there’s no apparent way to delete files - it’s not a problem right now, but it will be once I’ve used a sufficient amount of the storage in my account.&lt;/p&gt;

&lt;p&gt;Finally, I miss some mobile optimizations - but given that this is version 1.0, and that the new API was recently released, I’m confident that we’ll see some efforts in this area soon.&lt;/p&gt;

&lt;h2 id=&quot;section&quot;&gt;9/10&lt;/h2&gt;

&lt;p&gt;Overall, it’s been a long time since I was this impressed with the initial release of an app - the high expectations I had, have definitely been met.&lt;/p&gt;

&lt;p&gt;I had the pleasure of participating in the closed beta, and it’s been really fascinating to get an inside peek of how 37signals prioritize their efforts and push back on feature creep. Their approach to building a great user experience leaves no room for compromise and it shows in the product.&lt;/p&gt;

&lt;p&gt;If you haven’t used Basecamp before, or if you’re still using the Classic version, now is the time to switch. With a 45-day trial and a price starting at $20, it’s a no-brainer.&lt;/p&gt;
</content>
 </entry>
 
 <entry>
   <title>Removing waste in your design process</title>
   <link href="http://cabgfx.github.com/2012/03/16/removing-waste-in-your-design-process"/>
   <updated>2012-03-16T00:00:00+00:00</updated>
   <id>hhttp://cabgfx.github.com/2012/03/16/removing-waste-in-your-design-process</id>
   <content type="html">
&lt;p class=&quot;callout&quot;&gt;
Sketching, wireframing, Photoshop and HTML/CSS each have their place in certain phases of the process. In this post I want to give you an idea of which method to employ and highlight the advantages and pitfalls of each.
&lt;/p&gt;

&lt;p&gt;When I work on a feature or flow, I actively question my thoughts &amp;amp; decisions: &lt;em&gt;how does this get the job done?&lt;/em&gt; – &lt;em&gt;does it make sense?&lt;/em&gt; - &lt;em&gt;will it be easy to code?&lt;/em&gt; etc. If/when I catch myself making little or no progress towards a solution, I’ve found that it’s usually because of a lack of feedback. As designers, we all know the feeling of “going in circles” and I consider this a wasteful part of the process.&lt;/p&gt;

&lt;p&gt;Iterative design is all about spending as little effort as possible -but no less– to make an informed decision and then ship the work, so that our feedback loop(s) may tell us where to go next. So what exactly constitutes “as little effort as possible”, and how can we minimize waste in the design process?&lt;/p&gt;

&lt;h2 id=&quot;sketching&quot;&gt;Sketching&lt;/h2&gt;

&lt;p&gt;A simple sketch is the natural place to begin exploring possible solutions. Most of us keep a pad and pen readily available at all times, and for good reason – this is by far the fastest way to visualize your thoughts. However, the low fidelity of the good ol’ sketch can sometimes hinder your ability to see if the direction you’re taking is worth pursuing.&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;A little sketching is an exploration, a lot of sketching is a procrastination
&lt;cite&gt;&lt;a href=&quot;http://37signals.com/svn/posts/2241-a-little-sketching-is-an-exploration-a-lot&quot;&gt;Ryan Singer&lt;/a&gt;&lt;/cite&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Sketching should be for quick explorations of abstract concepts, isolated UI elements or for outlining high-level flows (how does one get from A to B, what screens are necessary, etc.)&lt;/p&gt;

&lt;p&gt;The sketch is also as a great vehicle for bouncing ideas off of  co-worker(s). These discussions then serve as a litmus test of how well you’ve thought through the proposed solution, and especially if it’s time to move on to a higher fidelity. You should stop sketching if a teammate expresses the need to see things in greater detail, in order to see the big picture.&lt;/p&gt;

&lt;p&gt;Remember, your sketch is just that: a doodle. This is why being able to recognize when to sketch, and when to &lt;em&gt;stop&lt;/em&gt; sketching, is crucial.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;aside:&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;I personally prefer big, cardboard-like paper and a chisel-tip pen (danish shop for cheapskates, Tiger, has some great pads at DKK 50,-). This keeps me from thinking about the finer details too soon – much like premature optimization in programming, both of which should be considered wasteful.&lt;/p&gt;

&lt;p&gt;I’ve tried out lots of iPad apps as well and found &lt;a href=&quot;http://itunes.apple.com/us/app/penultimate/id354098826?mt=8&quot;&gt;Penultimate&lt;/a&gt; and &lt;a href=&quot;http://itunes.apple.com/us/app/draft/id375570329?mt=8&quot;&gt;Draft&lt;/a&gt; to be my favorites - the &lt;a href=&quot;http://tenonedesign.com/stylus.php&quot;&gt;Ten One Pogo stylus&lt;/a&gt; is awesome for drawing on an iPad, by the way.
This is of less importance, of course - what matters is knowing when to sketch, when to stop and where to go next.&lt;/p&gt;

&lt;h2 id=&quot;wireframing&quot;&gt;Wireframing&lt;/h2&gt;

&lt;p&gt;The wireframe is a two-headed beast: the low production cost lets you quickly visualize details a simple sketch cannot provide, especially when mocking up interactions and how a user flows through the application. But the quick and cheap affordances of wireframing also provide an invite for features to creep in through the backdoor.&lt;/p&gt;

&lt;p&gt;The sheer breadth of readymade widgets, UI components &lt;sup&gt;&lt;a href=&quot;#footnote1&quot;&gt;1&lt;/a&gt;&lt;/sup&gt; and even entire frameworks &lt;sup&gt;&lt;a href=&quot;#footnote2&quot;&gt;2&lt;/a&gt;&lt;/sup&gt; for apps like &lt;a href=&quot;http://www.omnigroup.com/products/omnigraffle&quot;&gt;OmniGraffle&lt;/a&gt;, makes it painless to drag in a button here and a few tabs there (most often by request from stakeholders) – and before you know it, the budget is blown implementing all these things.&lt;/p&gt;

&lt;p&gt;Such a souped-up wireframe will ultimately take on spec-like characteristics; everything in the wireframe is expected to be implemented. More often than not, such conditions are a root cause of an agile process turned waterfall.&lt;/p&gt;

&lt;p&gt;Still, apps like Omnigraffle or &lt;a href=&quot;http://www.balsamiq.com/&quot;&gt;Balsamiq Mockups&lt;/a&gt; have no match when you need an easy way to visualize dynamic/JavaScript-driven interaction, eg. modal boxes, filling out forms, etc. – sometimes it pays to hold back on coding and explore a bit more by wireframing. The cost of trying out another idea is usually much lower in a wireframe, compared to a full-blown prototype in code.&lt;/p&gt;

&lt;p&gt;Similarly, you may find yourself wanting to elaborate on a sketch, and need greater detail prior to moving into code and/or visuals. This is often the case when starting work on entirely new products, or large features, with no foundation to build upon and/or concepts that have yet to be fully understood.&lt;/p&gt;

&lt;p&gt;The challenge obviously lies in striking the balance. Wireframes can and will often end up in too high fidelity - time wasted on details that would’ve been better spent on a real prototype in code.&lt;/p&gt;

&lt;ol class=&quot;footnotes&quot;&gt;
	&lt;li id=&quot;footnote1&quot;&gt;&lt;a href=&quot;http://graffletopia.com/&quot;&gt;Graffletopia&lt;/a&gt; has an amazing collection of stencils for Omnigraffle&lt;/li&gt;
	&lt;li id=&quot;footnote2&quot;&gt;Yahoo! maintains a &lt;a href=&quot;http://developer.yahoo.com/ypatterns/about/stencils/&quot;&gt;library of design patterns&lt;/a&gt; in a wide array of formats.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2 id=&quot;photoshop&quot;&gt;Photoshop&lt;/h2&gt;

&lt;p&gt;Over time, Photoshop has (d)evolved into little more than a necessary evil to me – it’s a slow, bloated piece of software and it was never &lt;a href=&quot;http://v4.jasonsantamaria.com/articles/a-real-web-design-application/&quot; title=&quot;Jason Santa Maria articulated this better than I ever could back in 2010&quot;&gt;a good fit for web design&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;My biggest issue with Photoshop is, and has always been, the lack of template hierarchy, page states and how nearly everything must be duplicated in order to be re-used. This enforces a focus on form &lt;em&gt;before&lt;/em&gt; function, and leads to things like filler text for body copy, near-identical .psd’s with different filenames, etc.&lt;/p&gt;

&lt;p&gt;As much as I try to avoid Photoshop, I feel that the necessary 20% of my time spent using it accounts for 80% of the waste in my process. Sure, this can be alleviated to some extent by applying some &lt;a href=&quot;http://photoshopetiquette.com/&quot; title=&quot;Colloquially known as The Photoshop Etiquette&quot;&gt;best practices&lt;/a&gt; like sensible layer names, grouping, etc. – but there’s just no way around the fact that simple changes quickly turn into huge tasks in your average .psd and this has always frustrated me.&lt;/p&gt;

&lt;p&gt;I really only use PS for two things these days: rendering graphics that isn’t feasible to do in HTML/CSS, and for quickly altering the layout/dimensions of many screen elements at once.&lt;/p&gt;

&lt;p&gt;My approach to mocking up a page is somewhat backwards – where others might do most, or all, of their work in PS, I much prefer to mark up &amp;amp; style as much as possible, grab a screenshot and then move into PS. This remains the easiest way to try out broad changes to the layout and general look &amp;amp; feel. Whenever you need to do excessive search/replacing in the code to try an idea, Photoshop is most likely an easier way to test it.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;(Seeing how CSS preprocessing is proliferating these days, such global code changes are becoming less of a hassle with the advent of code re-use in stylesheets. That might prove to be another nail in the coffin for PS as an app for web design – more on that in a future post.)&lt;/em&gt;&lt;/p&gt;

&lt;h2 id=&quot;htmlcss&quot;&gt;HTML/CSS&lt;/h2&gt;

&lt;p&gt;Time spent mocking up a full page in Photoshop or wireframes can rarely be justified these days. Considering how many screen sizes we need to design for, I think we owe it to our stakeholders - and ourselves - to explore solutions in the natural habitat of web design, as early as possible.&lt;/p&gt;

&lt;p&gt;I’m a big fan of designing in the browser for a number of reasons. For one, my assumptions about the UI instantly become tangible in a browser: real code, real issues. How should the app respond to a click, a form submission, etc.? These things become much more obvious when you can actually interact with the system, and not just a static representation of it.&lt;/p&gt;

&lt;p&gt;There are limits to this approach, of course. Designing in the browser can also be a wasteful part of the process. As a rule of thumb, you should have a rough sketch to work from when you start coding. Whether the sketch is on paper, a wireframe or a .psd is not important - visualizing the concept you’re implementing is what matters.&lt;/p&gt;

&lt;p&gt;When you start building your prototype, being sloppy is a Good Thing. Crank out the HTML you need as fast as possible, keep the CSS inline and mostly concerned with structure - dimensions and floats/positioning. Once you’ve got the basic elements laid out, you can start making decisions about how the page or component will fulfill its job and start honing in on a solution to the problem.&lt;/p&gt;

&lt;p&gt;You want to keep the code &amp;amp; visuals in a state that allows rapid changes in the early phase of your prototype build. This is why inline styles make sense in the beginning; a component is self-contained, can easily be moved and most importantly – quickly discarded, without any need for removing references to it in other files. Javascript functionality is best avoided early on - you don’t want to get sucked up in some weird programming problem (and you will) when you’re just exploring solutions.&lt;/p&gt;

&lt;p&gt;The goal is to expend as little effort as possible to gain the insights you need to inform your decisions. Once you can commit to a solution, you can start to clean up your beautiful mess - this should mostly be a matter of extracting CSS to separate files, and maybe reconsidering the HTML tags you’ve used. For example, you might have marked up an unordered list (&lt;code&gt;&amp;lt;ul&amp;gt;&lt;/code&gt;) that turned out to have an implicit order, thus an ordered list (&lt;code&gt;&amp;lt;ol&amp;gt;&lt;/code&gt;) is a better fit. This is called &lt;a href=&quot;http://en.wikipedia.org/wiki/Code_refactoring&quot;&gt;code refactoring&lt;/a&gt;.&lt;/p&gt;

&lt;h2 id=&quot;so-which-method-is-the-right-one&quot;&gt;So, which method is the right one?&lt;/h2&gt;

&lt;p&gt;The approach you take should be proportional to the amount of confidence in your solution and your understanding of the problem space. We’ve all tried spending too much time fiddling with a Photoshop canvas, when we should’ve been drawing lines on paper. Or reworked some code snippet a million times over, when we should’ve been using some simple dummies in a wireframe.&lt;/p&gt;

&lt;p&gt;I hope this has provoked some thoughts about your own design process and which methods you employ at a given phase.&lt;/p&gt;

&lt;p&gt;If you want to observe a master at work, who makes all of this seem easy, I highly suggest watching &lt;a href=&quot;http://peepcode.com/products/ryan-singer-ux&quot;&gt;Ryan Singer’s two-part Play by Play videos from PeepCode&lt;/a&gt;. That session was a large inspiration to this post.&lt;/p&gt;

&lt;p&gt;Share your thoughts in the comments, on twitter or anywhere else you feel like it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Related reading&lt;/strong&gt;&lt;br /&gt;
&lt;a href=&quot;http://garybacon.com/post/responsive-design-warrants-a-change-in-workflow/&quot;&gt;Responsive Design Warrants a Change in Workflow&lt;/a&gt; — Gary Bacon&lt;br /&gt;
&lt;a href=&quot;http://bradfrostweb.com/blog/post/the-post-psd-era/&quot;&gt;The Post-PSD Era&lt;/a&gt; — Brad Frost&lt;/p&gt;

</content>
 </entry>
 
 
</feed>