<?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:dc="http://purl.org/dc/elements/1.1/" xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0" xml:base="http://www.chromaticsites.com">
<channel>
 <title>CHROMATIC | Projects</title>
 <link>http://www.chromaticsites.com</link>
 <description>New projects from Chromatic.</description>
 <language>en</language>
<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/chromaticsites-projects" /><feedburner:info uri="chromaticsites-projects" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><creativeCommons:license>http://creativecommons.org/licenses/by-nc-nd/2.0/</creativeCommons:license><feedburner:emailServiceId>chromaticsites-projects</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><item>
 <title>Only 16% of consumer brands have a mobile strategy, so it’s no surprise that only 14% are happy with the results.</title>
 <link>http://feedproxy.google.com/~r/chromaticsites-projects/~3/LARtP3TXuRA/only-16-consumer-brands-have-mobile-strategy-so-it%E2%80%99s-no-surprise-only-14-are-happy-results</link>
 <description>&lt;div class="field field-name-field-fact-source field-type-link-field field-label-hidden"&gt;&lt;div class="field-items"&gt;&lt;div class="field-item even"&gt;&lt;a href="http://www.digiday.com/brands/brands-struggle-in-mobile/"&gt;Digiday&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/chromaticsites-projects?a=LARtP3TXuRA:lp9HToABlcI:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/chromaticsites-projects?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/chromaticsites-projects/~4/LARtP3TXuRA" height="1" width="1"/&gt;</description>
 <pubDate>Tue, 18 Jun 2013 16:51:34 +0000</pubDate>
 <dc:creator>matt</dc:creator>
 <guid isPermaLink="false">279 at http://www.chromaticsites.com</guid>
 <comments>http://www.chromaticsites.com/only-16-consumer-brands-have-mobile-strategy-so-it%E2%80%99s-no-surprise-only-14-are-happy-results#comments</comments>
<feedburner:origLink>http://www.chromaticsites.com/only-16-consumer-brands-have-mobile-strategy-so-it%E2%80%99s-no-surprise-only-14-are-happy-results</feedburner:origLink></item>
<item>
 <title>46% of shoppers reported they exclusively use their mobile device to conduct pre-purchase research for local products and services.</title>
 <link>http://feedproxy.google.com/~r/chromaticsites-projects/~3/uGE66I0cdiY/46-shoppers-reported-they-exclusively-use-their-mobile-device-conduct-pre-purchase-research-local</link>
 <description>&lt;div class="field field-name-field-fact-source field-type-link-field field-label-hidden"&gt;&lt;div class="field-items"&gt;&lt;div class="field-item even"&gt;&lt;a href="http://www.mobilepathtopurchase.com/wp-content/uploads/2013/04/xAd_Telmetrics_Mobile_Path_to_Purchase_Press_Release_2013_US_General.pdf"&gt;Mobile Path-to-Purchase Study&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/chromaticsites-projects?a=uGE66I0cdiY:REMJ3qHv1Bg:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/chromaticsites-projects?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/chromaticsites-projects/~4/uGE66I0cdiY" height="1" width="1"/&gt;</description>
 <pubDate>Tue, 18 Jun 2013 16:50:35 +0000</pubDate>
 <dc:creator>matt</dc:creator>
 <guid isPermaLink="false">278 at http://www.chromaticsites.com</guid>
 <comments>http://www.chromaticsites.com/46-shoppers-reported-they-exclusively-use-their-mobile-device-conduct-pre-purchase-research-local#comments</comments>
<feedburner:origLink>http://www.chromaticsites.com/46-shoppers-reported-they-exclusively-use-their-mobile-device-conduct-pre-purchase-research-local</feedburner:origLink></item>
<item>
 <title>Blacks, Hispanics, low-income Americans, high school educated are more likely to be mobile-only users.</title>
 <link>http://feedproxy.google.com/~r/chromaticsites-projects/~3/1gSQ-TU8nxk/blacks-hispanics-low-income-americans-high-school-educated-are-more-likely-be-mobile-only-users</link>
 <description>&lt;div class="field field-name-field-fact-source field-type-link-field field-label-hidden"&gt;&lt;div class="field-items"&gt;&lt;div class="field-item even"&gt;&lt;a href="http://www.pewinternet.org/Reports/2012/Cell-Internet-Use-2012/Main-Findings/Cell-Internet-Use.aspx"&gt;Pew Internet&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/chromaticsites-projects?a=1gSQ-TU8nxk:bMPo_2Y7cHU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/chromaticsites-projects?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/chromaticsites-projects/~4/1gSQ-TU8nxk" height="1" width="1"/&gt;</description>
 <pubDate>Tue, 18 Jun 2013 16:49:18 +0000</pubDate>
 <dc:creator>matt</dc:creator>
 <guid isPermaLink="false">277 at http://www.chromaticsites.com</guid>
 <comments>http://www.chromaticsites.com/blacks-hispanics-low-income-americans-high-school-educated-are-more-likely-be-mobile-only-users#comments</comments>
<feedburner:origLink>http://www.chromaticsites.com/blacks-hispanics-low-income-americans-high-school-educated-are-more-likely-be-mobile-only-users</feedburner:origLink></item>
<item>
 <title>55% of mobile phone owners say they use their phone to access the internet.</title>
 <link>http://feedproxy.google.com/~r/chromaticsites-projects/~3/ZpytH8eBH5A/55-mobile-phone-owners-say-they-use-their-phone-access-internet</link>
 <description>&lt;div class="field field-name-field-fact-source field-type-link-field field-label-hidden"&gt;&lt;div class="field-items"&gt;&lt;div class="field-item even"&gt;&lt;a href="http://www.pewinternet.org/Reports/2012/Cell-Internet-Use-2012/Main-Findings/Cell-Internet-Use.aspx"&gt;Pew Internet&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/chromaticsites-projects?a=ZpytH8eBH5A:nU1wwSN2UIs:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/chromaticsites-projects?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/chromaticsites-projects/~4/ZpytH8eBH5A" height="1" width="1"/&gt;</description>
 <pubDate>Tue, 18 Jun 2013 16:48:32 +0000</pubDate>
 <dc:creator>matt</dc:creator>
 <guid isPermaLink="false">276 at http://www.chromaticsites.com</guid>
 <comments>http://www.chromaticsites.com/55-mobile-phone-owners-say-they-use-their-phone-access-internet#comments</comments>
<feedburner:origLink>http://www.chromaticsites.com/55-mobile-phone-owners-say-they-use-their-phone-access-internet</feedburner:origLink></item>
<item>
 <title>Responsive Grid Building with Sass and Zen Grids: The Tale of the Breakpoint Grid Breakdown mixin</title>
 <link>http://feedproxy.google.com/~r/chromaticsites-projects/~3/_NTte-Xv1M4/responsive-grid-building-sass-and-zen-grids-tale-breakpoint-grid-breakdown-mixin</link>
 <description>&lt;div class="field field-name-body field-type-text-with-summary field-label-hidden"&gt;
              &lt;p&gt;A common scenario in the world of responsive design: a grid of elements needs to have different numbers of columns depending on the screen width. This can easily be accomplished using media queries and clever selectors, but what if the same effect is needed on another list of elements? With Sass, you might create a mixin to avoid rearranging your styles or even worse, copying and pasting those rules.&lt;/p&gt;
&lt;p&gt;Let's take it to the next level. Other grids with different selectors need different numbers of columns across different breakpoints. What then? Create another, almost identical mixin? No! You're copying and pasting again! Instead, create one mixin that can be passed a few variables and sit back while it does all the work for you. How? Keep reading!&lt;/p&gt;
&lt;p&gt;Before we get started, it's worth mentioning that this specific example is tailored to &lt;a href="http://sass-lang.com/"&gt;Sass&lt;/a&gt; and &lt;a href="http://zengrids.com/"&gt;Zen Grids&lt;/a&gt;. If you are not using Sass, we'd highly recommend it. It just might change your life. As for Zen Grids, we've been using it a lot lately. If you're using a different responsive grid framework, that's cool, but you'll need to adapt small portions of the final mixin.&lt;/p&gt;
&lt;p&gt;For those who are skimming: &lt;a href="#meat-and-potatoes"&gt;jump to the meat and potatoes&lt;/a&gt; of the article.&lt;/p&gt;
&lt;h2&gt;Creating a breakpoint mixin&lt;/h2&gt;
&lt;p&gt;If you aren't already doing something similar, this is a slick strategy for styling one element across multiple breakpoints.&lt;/p&gt;
&lt;p&gt;First, create a simple mixin like so:&lt;/p&gt;
&lt;pre class="prettyprint"&gt;&lt;code&gt;@mixin breakpoint($breakpoint-size) {&lt;br /&gt;  @media all and (min-width: $breakpoint-size) {&lt;br /&gt;    @content;&lt;br /&gt;  }&lt;br /&gt;}&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;
You can pass that mixin pixel values, but if you're using it a lot (you will be), you'll probably want to define some variables. We don't like using device-centric names for ours (they aren't future-friendly), but we're going to here to keep things easy to understand.&lt;/p&gt;
&lt;p&gt;Maybe you define these breakpoints:&lt;/p&gt;
&lt;pre class="prettyprint"&gt;&lt;code&gt;$breakpoint-mobile: 320px;&lt;br /&gt;$breakpoint-tablet: 768px;&lt;br /&gt;$breakpoint-desktop: 960px;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;
As a general strategy, we prefer to use these mixins multiple times within a given element rather than spread the same element across a few "master" media queries. Notice we used &lt;code class="prettyprint"&gt;min-width&lt;/code&gt; in the mixin above. By listing the breakpoints from small to large, the styles become additive and will override the same rules in smaller breakpoints.&lt;/p&gt;
&lt;p&gt;Using the mixin could look something like this:&lt;/p&gt;
&lt;pre class="prettyprint"&gt;&lt;code&gt;.headline {&lt;br /&gt;  // Global and mobile styles&lt;br /&gt;  font-family: sans-serif;&lt;br /&gt;  font-size: 1em;&lt;br /&gt;&lt;br /&gt;  @include breakpoint($breakpoint-mobile) {&lt;br /&gt;    // Styles from 480px on up. Can override those previously defined.&lt;br /&gt;    font-size: 1.25em;&lt;br /&gt;    font-weight: bold;&lt;br /&gt;  }&lt;br /&gt;  @include breakpoint($breakpoint-tablet) {&lt;br /&gt;    // Styles from 768px on up. Again, can override.&lt;br /&gt;    font-size: 1.5em;&lt;br /&gt;  }&lt;br /&gt;  @include breakpoint($breakpoint-desktop) {&lt;br /&gt;    // Styles from 960px on up. Overrides everything!&lt;br /&gt;    font-size: 2em;&lt;br /&gt;    font-style: italic;&lt;br /&gt;  }&lt;br /&gt;}&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;
Keep in mind that you might use more (or less) breakpoints in any given element. You don't have to use every breakpoint in every element - just use what you need in each one.&lt;/p&gt;
&lt;p&gt;This example produces the following CSS:&lt;/p&gt;
&lt;pre class="prettyprint"&gt;&lt;code&gt;.headline {&lt;br /&gt;  font-family: sans-serif;&lt;br /&gt;  font-size: 1em;&lt;br /&gt;}&lt;br /&gt;@media all and (min-width: 320px) {&lt;br /&gt;  .headline {&lt;br /&gt;    font-size: 1.25em;&lt;br /&gt;    font-weight: bold;&lt;br /&gt;  }&lt;br /&gt;}&lt;br /&gt;@media all and (min-width: 768px) {&lt;br /&gt;  .headline {&lt;br /&gt;    font-size: 1.5em;&lt;br /&gt;  }&lt;br /&gt;}&lt;br /&gt;@media all and (min-width: 960px) {&lt;br /&gt;  .headline {&lt;br /&gt;    font-size: 2em;&lt;br /&gt;    font-style: italic;&lt;br /&gt;  }&lt;br /&gt;}&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;
That gets us through using a simple mixin to change styles across breakpoints. Awesome!&lt;/p&gt;
&lt;h2 id="meat-and-potatoes"&gt;Dynamic grid creation with Breakpoint Grid Breakdown&lt;/h2&gt;
&lt;p&gt;Now is when things get exciting. Remember the scenario that we proposed at the beginning of the article? We need to create one mixin that can accomodate styles for different grids with different numbers of columns across different breakpoints.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Note:&lt;/em&gt; the most common use case for this is styling a View. When doing so, don't use the Grid format! Use "HTML list" or "Unformatted" and this mixin will build the grid for you.&lt;/p&gt;
&lt;p&gt;Here we go (with a heavy dose of comments):&lt;/p&gt;
&lt;pre class="prettyprint"&gt;&lt;code&gt;// Breakpoint Grid Breakdown&lt;br /&gt;// Displays a grid of items with a dynamic column count across breakpoints.&lt;br /&gt;// For use with Zen Grids and a breakpoint-oriented mixin.&lt;br /&gt;// @author Gus Childs &lt;a href="http://drupal.org/user/1468898&amp;lt;br /&amp;gt;//&amp;lt;br /&amp;gt;//"&gt;http://drupal.org/user/1468898&lt;br /&gt;//&lt;br /&gt;//&lt;/a&gt; @param list $column-counts&lt;br /&gt;//   A list of how many columns should exist on the respective breakpoints.&lt;br /&gt;// @param list $breakpoints&lt;br /&gt;//   A list of breakpoints to be used in the 'breakpoint' mixin. Corresponds&lt;br /&gt;//   directly with the $column-counts list. Defaults to those commonly used.&lt;br /&gt;// @param string $selector&lt;br /&gt;//   The selector of each individual grid item. Defaults to 'views-row'.&lt;br /&gt;@mixin breakpoint-grid-breakdown($column-counts, $breakpoints: $breakpoint-mobile $breakpoint-tablet $breakpoint-desktop, $selector: '.views-row') {&lt;br /&gt;  // The selector, such as '.views-row'.&lt;br /&gt;  #{$selector} {&lt;br /&gt;    // Loop through the breakpoints specified.&lt;br /&gt;    @each $breakpoint in $breakpoints {&lt;br /&gt;      // Which breakpoint are we currently on?&lt;br /&gt;      $key: index($breakpoints, $breakpoint);&lt;br /&gt;      // How many columns should exist in that breakpoint?&lt;br /&gt;      $column-count: nth($column-counts, $key);&lt;br /&gt;&lt;br /&gt;      // Uses our breakpoint mixin to specify what should happen on the current&lt;br /&gt;      // breakpoint in the loop.&lt;br /&gt;      // Important: Adjust this if using a different mixin or strategy.&lt;br /&gt;      @include breakpoint($breakpoint) {&lt;br /&gt;        // Loop through the number of columns on this breakpoint.&lt;br /&gt;        @for $i from 1 through $column-count {&lt;br /&gt;          // Creates :nth-child selectors for each column. For example, in four&lt;br /&gt;          // columns we would have the following selectors here:&lt;br /&gt;          // &amp;amp;:nth-child(4n+1), &amp;amp;:nth-child(4n+2),&lt;br /&gt;          // &amp;amp;:nth-child(4n+3), and &amp;amp;:nth-child(4n+0).&lt;br /&gt;          $remainder: $i % $column-count;&lt;br /&gt;          &amp;amp;:nth-child(#{$column-count}n+#{$remainder}) {&lt;br /&gt;            // Important: this relies on the use of $zen-column-count, which is&lt;br /&gt;            // specific to Zen Grids. $zen-column-count should be replaced with&lt;br /&gt;            // a variable that represents how many columns you're using&lt;br /&gt;            // within the current breakpoint (or globally).&lt;br /&gt;&lt;br /&gt;            // How many columns of the general grid on my page should one&lt;br /&gt;            // column of this specific grid take up? For example, if the whole&lt;br /&gt;            // page uses 12 columns, and we have a 3 column grid going for&lt;br /&gt;            // these elements, $page-grid-column-span would be 4.&lt;br /&gt;            $page-grid-column-span: $zen-column-count / $column-count;&lt;br /&gt;            // Which column should this specific column start on?&lt;br /&gt;            $page-grid-column-position: 1 + (($i - 1) * $page-grid-column-span);&lt;br /&gt;&lt;br /&gt;            // Important: adapt this if you aren't using Zen Grids!&lt;br /&gt;            // If you are: this is where all the magic happens.&lt;br /&gt;            // &lt;a href="http://zengrids.com/help/#zen-grid-item&amp;lt;br /&amp;gt;"&gt;http://zengrids.com/help/#zen-grid-item&lt;br /&gt;&lt;/a&gt;            @include zen-grid-item($page-grid-column-span, $page-grid-column-position);&lt;br /&gt;&lt;br /&gt;            // Clear the first item in every row so they don't stack on top&lt;br /&gt;            // of each other.&lt;br /&gt;            @if $remainder == 1 or $column-count == 1 {&lt;br /&gt;              clear: both;&lt;br /&gt;            } @else {&lt;br /&gt;              clear: none;&lt;br /&gt;            }&lt;br /&gt;          }&lt;br /&gt;        }&lt;br /&gt;      }&lt;br /&gt;    }&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;  // A clearfix so elements following this grid will be placed correctly.&lt;br /&gt;  &amp;amp; &amp;gt; div:after {&lt;br /&gt;    content: "";&lt;br /&gt;    display: table;&lt;br /&gt;    clear: both;&lt;br /&gt;  }&lt;br /&gt;}&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;
With that breakpoint, your styles elsewhere become as simple as this:&lt;/p&gt;
&lt;pre class="prettyprint"&gt;&lt;code&gt;// Create a grid of unformatted views rows that has one column on mobile, two&lt;br /&gt;// on tablet, and four on desktop.&lt;br /&gt;.view-id-fancy-grid {&lt;br /&gt;  @include breakpoint-grid-breakdown(1 2 4);&lt;br /&gt;}&lt;br /&gt;// Create a grid of unformatted list items that has one column on mobile and&lt;br /&gt;// tablet, and two on desktop.&lt;br /&gt;.list-of-items {&lt;br /&gt;  @include breakpoint-grid-breakdown(1 2, $breakpoint-mobile $breakpoint-desktop, '.list-item');&lt;br /&gt;}&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;
The first example will generate the following CSS structure using Compass:&lt;/p&gt;
&lt;pre class="prettyprint"&gt;&lt;code&gt;@media all and (min-width: 320px) {&lt;br /&gt;  .view-id-fancy-grid .views-row:nth-child(1n+0) {&lt;br /&gt;    /* Zen Grid output to position the only column (removed for simplicity). */&lt;br /&gt;    clear: both;&lt;br /&gt;  }&lt;br /&gt;}&lt;br /&gt;@media all and (min-width: 768px) {&lt;br /&gt;  .view-id-fancy-grid .views-row:nth-child(2n+1) {&lt;br /&gt;    /* Zen Grid output to position column 1 (removed for simplicity). */&lt;br /&gt;    clear: both;&lt;br /&gt;  }&lt;br /&gt;  .view-id-fancy-grid .views-row:nth-child(2n+0) {&lt;br /&gt;    /* Zen Grid output to position column 2 (removed for simplicity). */&lt;br /&gt;    clear: none;&lt;br /&gt;  }&lt;br /&gt;}&lt;br /&gt;@media all and (min-width: 960px) {&lt;br /&gt;  .view-id-fancy-grid .views-row:nth-child(4n+1) {&lt;br /&gt;    /* Zen Grid output to position column 1 (removed for simplicity). */&lt;br /&gt;    clear: both;&lt;br /&gt;  }&lt;br /&gt;  .view-id-fancy-grid .views-row:nth-child(4n+2) {&lt;br /&gt;    /* Zen Grid output to position column 2 (removed for simplicity). */&lt;br /&gt;    clear: none;&lt;br /&gt;  }&lt;br /&gt;  .view-id-fancy-grid .views-row:nth-child(4n+3) {&lt;br /&gt;    /* Zen Grid output to position column 3 (removed for simplicity). */&lt;br /&gt;    clear: none;&lt;br /&gt;  }&lt;br /&gt;  .view-id-fancy-grid .views-row:nth-child(4n+0) {&lt;br /&gt;    /* Zen Grid output to position column 4 (removed for simplicity). */&lt;br /&gt;    clear: none;&lt;br /&gt;  }&lt;br /&gt;}&lt;br /&gt;.view-id-fancy-grid &amp;gt; div:after {&lt;br /&gt;  content: "";&lt;br /&gt;  display: table;&lt;br /&gt;  clear: both;&lt;br /&gt;}&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;
The part that really makes the magic happen is the use of :nth-child. The Internet Explorer wizards among us may remember that IE 8 and lower don't support &lt;code class="prettyprint"&gt;:nth-child&lt;/code&gt; by default, so you'll need to use &lt;a href="http://selectivizr.com/"&gt;Selectivizr&lt;/a&gt; to do so. There's a &lt;a href="https://drupal.org/project/selectivizr"&gt;Selectivizr module&lt;/a&gt; if you need it.&lt;/p&gt;
&lt;h2&gt;Less comments, please!&lt;/h2&gt;
&lt;p&gt;For the brave souls who have wrapped their brains around what's going on:&lt;/p&gt;
&lt;pre class="prettyprint"&gt;&lt;code&gt;// Breakpoint Grid Breakdown&lt;br /&gt;// Displays a grid of items with a dynamic column count across breakpoints.&lt;br /&gt;// For use with Zen Grids and a breakpoint-oriented mixin.&lt;br /&gt;// @author Gus Childs &lt;a href="http://drupal.org/user/1468898&amp;lt;br /&amp;gt;//&amp;lt;br /&amp;gt;//"&gt;http://drupal.org/user/1468898&lt;br /&gt;//&lt;br /&gt;//&lt;/a&gt; @param list $column-counts&lt;br /&gt;//   A list of how many columns should exist on the respective breakpoints.&lt;br /&gt;// @param list $breakpoints&lt;br /&gt;//   A list of breakpoints to be used in the 'breakpoint' mixin. Corresponds&lt;br /&gt;//   directly with the $column-counts list. Defaults to those commonly used.&lt;br /&gt;// @param string $selector&lt;br /&gt;//   The selector of each individual grid item. Defaults to 'views-row'.&lt;br /&gt;@mixin breakpoint-grid-breakdown($column-counts, $breakpoints: $breakpoint-mobile $breakpoint-tablet $breakpoint-desktop, $selector: '.views-row') {&lt;br /&gt;  #{$selector} {&lt;br /&gt;    @each $breakpoint in $breakpoints {&lt;br /&gt;      $key: index($breakpoints, $breakpoint);&lt;br /&gt;      $column-count: nth($column-counts, $key);&lt;br /&gt;&lt;br /&gt;      @include breakpoint($breakpoint) {&lt;br /&gt;        @for $i from 1 through $column-count {&lt;br /&gt;          $remainder: $i % $column-count;&lt;br /&gt;          &amp;amp;:nth-child(#{$column-count}n+#{$remainder}) {&lt;br /&gt;            $page-grid-column-span: $zen-column-count / $column-count;&lt;br /&gt;            $page-grid-column-position: 1 + (($i - 1) * $page-grid-column-span);&lt;br /&gt;            @include zen-grid-item($page-grid-column-span, $page-grid-column-position);&lt;br /&gt;            @if $remainder == 1 or $column-count == 1 {&lt;br /&gt;              clear: both;&lt;br /&gt;            } @else {&lt;br /&gt;              clear: none;&lt;br /&gt;            }&lt;br /&gt;          }&lt;br /&gt;        }&lt;br /&gt;      }&lt;br /&gt;    }&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;  &amp;amp; &amp;gt; div:after {&lt;br /&gt;    content: "";&lt;br /&gt;    display: table;&lt;br /&gt;    clear: both;&lt;br /&gt;  }&lt;br /&gt;}&lt;/code&gt;&lt;/pre&gt;&lt;h2&gt;Wrapping up&lt;/h2&gt;
&lt;p&gt;We understand that this can be overwhelming for someone who isn't extremely familiar with Sass and Zen Grids. While this won't be a plug-and-play solution for the faint of heart, we hope it will get some folks thinking and set others out on the right foot. If you end up using this on a project or have any suggestions for improvements, we'd love to hear about it!&lt;/p&gt;
&lt;p&gt;If you'd like to easily grab the code or perhaps even submit a pull request, &lt;a href="https://github.com/guschilds/breakpoint-grid-breakdown"&gt;it's on GitHub&lt;/a&gt;!&lt;/p&gt;
          &lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/chromaticsites-projects?a=_NTte-Xv1M4:XeOEW6jNavw:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/chromaticsites-projects?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/chromaticsites-projects/~4/_NTte-Xv1M4" height="1" width="1"/&gt;</description>
 <pubDate>Tue, 18 Jun 2013 03:41:18 +0000</pubDate>
 <dc:creator>gus</dc:creator>
 <guid isPermaLink="false">275 at http://www.chromaticsites.com</guid>
 <comments>http://www.chromaticsites.com/blog/responsive-grid-building-sass-and-zen-grids-tale-breakpoint-grid-breakdown-mixin#comments</comments>
<feedburner:origLink>http://www.chromaticsites.com/blog/responsive-grid-building-sass-and-zen-grids-tale-breakpoint-grid-breakdown-mixin</feedburner:origLink></item>
<item>
 <title>Coming Down the DrupalCon Portland Mountain</title>
 <link>http://feedproxy.google.com/~r/chromaticsites-projects/~3/vbnXoKM6PQc/coming-down-drupalcon-portland-mountain</link>
 <description>&lt;div class="field field-name-body field-type-text-with-summary field-label-hidden"&gt;
              	&lt;p&gt;It’s been one week since we returned from Portland for &lt;a href="https://portland2013.drupal.org/"&gt;DrupalCon 2013&lt;/a&gt;, and I feel like I’m almost caught back up.  The time in Portland was fantastic (as DrupalCon usually is).  For &lt;span class="caps"&gt;CHROMATIC&lt;/span&gt;, we basically had two trips: most of us went and spent the weekend up on Mt. Hood and then came back for the ‘second’ trip which was the week in Portland for DrupalCon. &lt;/p&gt;

	&lt;p&gt;While the first trip (or weekend) wasn’t directly related to Drupal, we did the spend the time with some of our best friends in the Drupal community. And just as we did in Denver last year, and we had an amazing time.  We were literally able to ‘come down the mountain’ after a day of hiking around lower Mt. Hood.&lt;/p&gt;

	&lt;p&gt;&lt;img src="http://blog-media.chromaticsites.com.s3.amazonaws.com/drupal/uploads/2013/05/31/DrupalConMtHood.jpg" alt="" /&gt;&lt;/p&gt;

	&lt;p&gt;Chris and I are all about the time lapse craze that is currently happening, so the drive from the mountain to Portland was captured on our GoPros, one safely mounted within the car and the other mounted to the roof (thankfully, both cameras made it!).   &lt;/p&gt;

	&lt;p&gt;
&lt;/p&gt;&lt;div class="embedded-video"&gt;
  &lt;div class="player"&gt;
    &lt;iframe width="640px" height="360px" src="//www.youtube.com/embed/CaNrFIUe3uQ?width=640px&amp;amp;height=360px&amp;amp;autoplay=0&amp;amp;hd=1&amp;amp;rel=0&amp;amp;autohide=2&amp;amp;showinfo=1&amp;amp;modestbranding=0&amp;amp;theme=dark&amp;amp;iv_load_policy=1&amp;amp;start=0&amp;amp;wmode=opaque" frameborder="0" allowfullscreen=""&gt;&lt;/iframe&gt;  &lt;/div&gt;
&lt;/div&gt;

	&lt;h2&gt;Back to work…&lt;/h2&gt;

	&lt;p&gt;I was able to attend the Drupal &lt;span class="caps"&gt;CXO&lt;/span&gt; event on Monday before the conference officially started.  It was a great experience to get to meet and talk with a lot of the other company owners, partners, and managers.  It was one more place where I was really able to see the Drupal community coming together and sharing in a very open way.  I feel like I was able to take away a few valuable lessons from the day:&lt;/p&gt;

	&lt;ul&gt;&lt;li&gt;[Almost] All small Drupal companies are dealing with the same issues: resourcing, cash flow, growth (too much and too little), dealing with bad clients, partnerships, product development, dedicating time to the company v. time for clients, and the list goes on.  The takeaway here was to not get too hung up on any single issue and to remember that if there is something that we as a company are struggling with, there are probably others struggling with it, too.  And in that same vein, that it is ok to share struggles and solutions with the community.&lt;/li&gt;
		&lt;li&gt;Tracking all time related to both internal and external work is the only way to really understand profitability, but it can be really tough either way.&lt;/li&gt;
		&lt;li&gt;There are a tremendous number of talented people working in this industry and I feel very lucky to be a part of it!&lt;/li&gt;
		&lt;li&gt;To really fit in with the Drupal &lt;span class="caps"&gt;CXO&lt;/span&gt; crowd you need to wear a company t-shirt and a sport coat or blazer…&lt;/li&gt;
	&lt;/ul&gt;&lt;p&gt;There were a lot of additional connections made during the rest of week and some sessions that I really enjoyed.  Here are my top five (in no particular order) and some of the points that I took away from them:&lt;/p&gt;

	&lt;ul&gt;&lt;li&gt;&lt;a href="https://portland2013.drupal.org/node/1078"&gt;Development by the Numbers&lt;/a&gt; by &lt;a href="http://blog.ircmaxell.com/"&gt;Anthony Ferrara&lt;/a&gt; (&lt;a href="https://twitter.com/ircmaxell"&gt;@ircmaxell&lt;/a&gt;)
	&lt;ul&gt;&lt;li&gt;To be honest, I kept up with the first half of the session and then it got a little over my head, but overall I feel like it was very thought provoking.&lt;/li&gt;
		&lt;li&gt;Measuring code complexity is tough, but we need to care about it&lt;/li&gt;
		&lt;li&gt;Cyclomatic complexity is more or less the number of ‘decisions points’ in a routine, an N-path complexity is the number of ‘unique paths’ and these are not always equal (watch the presentation with the slide to really understand this one)&lt;/li&gt;
		&lt;li&gt;Using tools like &lt;a href="https://github.com/sebastianbergmann/phploc"&gt;&lt;span class="caps"&gt;PHPLOC&lt;/span&gt;&lt;/a&gt; can really help to determine how complex your code is, but this doesn’t really provide answers to what to do about it.&lt;/li&gt;
		&lt;li&gt;Reducing the complexity of your code will increase the long term ability to maintain the system that you have built.&lt;/li&gt;
	&lt;/ul&gt;&lt;/li&gt;
		&lt;li&gt;&lt;a href="https://portland2013.drupal.org/node/3083"&gt;Mistakes Agencies Make&lt;/a&gt; by &lt;a href="http://www.lullabot.com/who-we-are/seth-brown"&gt;Seth Brown&lt;/a&gt; (&lt;a href="https://twitter.com/sethlbrown"&gt;@sethlbrown&lt;/a&gt;)
	&lt;ul&gt;&lt;li&gt;‘The blood of a unicorn will keep you alive, even if you are an inch from death, but at a terrible price.’ – J.K. Rowling
	&lt;ul&gt;&lt;li&gt;Seth used a lot of quotes to communicate some great points. He warned agencies not to drink the blood of unicorns, meaning at a basic level don’t work your company to death just to make a profit.&lt;/li&gt;
	&lt;/ul&gt;&lt;/li&gt;
		&lt;li&gt;‘How sad it is! I shall grow old and horrible and dreadful.  But this picture will remain young. If it were only the other way.’ – Oscar Wilde, The Picture of Dorian Grey
	&lt;ul&gt;&lt;li&gt;Growth is really tough!  Knowing when and how much to grow (or not) is really hard to understand.  The recommendation was to try to keep and maintain at least 10% of your annual revenue in the bank for considering growth. In addition, you need to have a planned strategy for growth.&lt;/li&gt;
	&lt;/ul&gt;&lt;/li&gt;
		&lt;li&gt;‘We can’t solve problems by using the same kind of thinking we used when we created them’ – Albert Einstein
	&lt;ul&gt;&lt;li&gt;Diversifying your clients, partnerships, and work is critical to success.&lt;/li&gt;
		&lt;li&gt;Taking on risk isn’t a terrible thing (if it’s managed properly).&lt;/li&gt;
		&lt;li&gt;‘Allow for healthy dissent’
	&lt;ul&gt;&lt;li&gt;Just because you are running a company or are the project manager doesn’t mean you always know what’s best; sometimes the best innovations come from the bottom up, and not the top down.&lt;/li&gt;
	&lt;/ul&gt;&lt;/li&gt;
	&lt;/ul&gt;&lt;/li&gt;
	&lt;/ul&gt;&lt;/li&gt;
		&lt;li&gt;&lt;a href="https://portland2013.drupal.org/node/428"&gt;Remotely Virtual&lt;/a&gt; by &lt;a href="http://www.lullabot.com/who-we-are/karen-stevenson"&gt;Karen Stevenson&lt;/a&gt; (&lt;a href="https://twitter.com/KarenStevenson"&gt;@KarenStevenson&lt;/a&gt;)
	&lt;ul&gt;&lt;li&gt;Remote and virtual are not interchangeable words.  The Drupal project is run by a ‘virtual’ team. However, we are not a ‘virtual’ company, we are a real company with remote employees.  It is a subtle but important distinction.&lt;/li&gt;
		&lt;li&gt;Remote is everywhere!  Teams that are on different floors in the same office can be just as remote as teams that are in different locations all around the world.&lt;/li&gt;
		&lt;li&gt;The Five Commandments for Team Members was a great take away:
	&lt;ul&gt;&lt;li&gt;Thou wilt spend much time on the phone!&lt;/li&gt;
		&lt;li&gt;Thou must be visible and accessible in virtual channels.&lt;/li&gt;
		&lt;li&gt;Thou must not disappear without explanation.&lt;/li&gt;
		&lt;li&gt;Thou must over-communicate.&lt;/li&gt;
		&lt;li&gt;Thou must know thy virtual tools.&lt;/li&gt;
	&lt;/ul&gt;&lt;/li&gt;
		&lt;li&gt;Having common tools and team intranet can be very beneficial to both productivity and team building/camaraderie.&lt;/li&gt;
		&lt;li&gt;Time tracking is really, really important!&lt;/li&gt;
		&lt;li&gt;In addition to the aforementioned points, there were many more great takeaways for managing teams, both in person and remotely. Moreover, she provided a number of valuable insights and ideas to consider when working with your clients remotely.  Watch the session and check out the slides!&lt;/li&gt;
	&lt;/ul&gt;&lt;/li&gt;
		&lt;li&gt;&lt;a href="https://portland2013.drupal.org/node/503"&gt;Reponsive Discovery: The Underpants of a Great Web Project&lt;/a&gt; by &lt;a href="http://hellofisher.com/"&gt;Steve Fisher&lt;/a&gt;  (&lt;a href="https://twitter.com/hellofisher"&gt;@hellofisher&lt;/a&gt;)
	&lt;ul&gt;&lt;li&gt;“Collaboration is far better than competition.”&lt;/li&gt;
		&lt;li&gt;Design should focus on the human element and not just the technology.&lt;/li&gt;
		&lt;li&gt;It is really important to work together to try to solve issues face-to-face. Most people don’t work in the same place as their clients and in a lot of cases not even the team works together.  The concept of working together as a team adds a lot of strength to a project.&lt;/li&gt;
		&lt;li&gt;Getting out and actually talking to your end users can really help define the user experience that you are creating.&lt;/li&gt;
	&lt;/ul&gt;&lt;/li&gt;
		&lt;li&gt;&lt;a href="https://portland2013.drupal.org/node/2528"&gt;Weathering Storms; How Robin Hood uses Drupal to fight poverty&lt;/a&gt; by &lt;a href="http://www.phase2technology.com/author/smerrill/"&gt;Steven Merrill&lt;/a&gt; (&lt;a href="https://twitter.com/stevenmerrill"&gt;@stevenmerrill&lt;/a&gt;), &lt;a href="http://www.phase2technology.com/author/jwilson/"&gt;John Robert Wilson&lt;/a&gt; (&lt;a href="https://twitter.com/JohnRobertWilso"&gt;@JohnRobertWilso&lt;/a&gt;), &lt;a href="http://www.robinhood.org/"&gt;Heather Johnson&lt;/a&gt; (&lt;a href="https://twitter.com/johns582"&gt;@johns582&lt;/a&gt;), &lt;a href="http://www.phase2technology.com/author/mbyrnes/"&gt;Molly Byrnes&lt;/a&gt; (&lt;a href="https://twitter.com/mabfire"&gt;@mabfire&lt;/a&gt;), and &lt;a href="http://www.phase2technology.com/author/bmcmurray/"&gt;Brian McMurray&lt;/a&gt; (&lt;a href="https://twitter.com/bmcmurray"&gt;@bmcmurray&lt;/a&gt;)
	&lt;ul&gt;&lt;li&gt;First and foremost, Robin Hood is awesome! Check them out at &lt;a href="http://www.robinhood.org/"&gt;http://www.robinhood.org/&lt;/a&gt;.&lt;/li&gt;
		&lt;li&gt;Using Bean (&lt;a href="https://drupal.org/project/bean"&gt;https://drupal.org/project/bean&lt;/a&gt;) and Embeddables (&lt;a href="https://drupal.org/project/embeddable"&gt;https://drupal.org/project/embeddable&lt;/a&gt;) is a great approach to providing content editors a very dynamic way to create pages and manage content. Using this on Robin Hood, they were able to really empower the content editors.&lt;/li&gt;
		&lt;li&gt;Drupal (with the right hardware…and Steven Merrill) can scale to handle some &lt;span class="caps"&gt;CRAZY&lt;/span&gt; traffic!&lt;/li&gt;
	&lt;/ul&gt;&lt;/li&gt;
	&lt;/ul&gt;&lt;p&gt;These are just a few of the key points and things that I feel like I learned while at DrupalCon. On a personal level, I had a great time!  I really enjoyed getting to spend time with friends, making some new ones, and bonding with the &lt;span class="caps"&gt;CHROMATIC&lt;/span&gt; team. Planning for Austin has already started – hope to see you there!&lt;/p&gt;

	&lt;p&gt;PS – If you like food and are headed to Portland, then I have two recommendations for you. The first, which is probably in my top 20 (maybe 10) meals, was at &lt;a href="http://oxpdx.com/"&gt;OX&lt;/a&gt;.  The clam chowder was the most unique I’ve ever had (and I &lt;span class="caps"&gt;LOVE&lt;/span&gt; clam chowder).  The second recommendation is &lt;a href="http://littlebirdbistro.com/"&gt;Little Bird&lt;/a&gt;. Not only did they have a really awesome aesthetic, the food and service was fantastic!&lt;/p&gt;          &lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/chromaticsites-projects?a=vbnXoKM6PQc:D-34fPDhZLM:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/chromaticsites-projects?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/chromaticsites-projects/~4/vbnXoKM6PQc" height="1" width="1"/&gt;</description>
 <pubDate>Mon, 03 Jun 2013 14:00:00 +0000</pubDate>
 <dc:creator>dave</dc:creator>
 <guid isPermaLink="false">274 at http://www.chromaticsites.com</guid>
 <comments>http://www.chromaticsites.com/blog/coming-down-drupalcon-portland-mountain#comments</comments>
<feedburner:origLink>http://www.chromaticsites.com/blog/coming-down-drupalcon-portland-mountain</feedburner:origLink></item>
<item>
 <title>The Black Magic Effect</title>
 <link>http://feedproxy.google.com/~r/chromaticsites-projects/~3/YttHNl_XN4M/black-magic-effect</link>
 <description>&lt;div class="field field-name-body field-type-text-with-summary field-label-hidden"&gt;
              	&lt;p&gt;I’ve been working with Drupal since the days of Drupal 4.7. Back then I was a green intern at the &lt;a href="http://www.ionagroup.com"&gt;Iona Group&lt;/a&gt; working on some very basic Drupal sites. And when I say “green” I mean, I didn’t know anything about Drupal. In fact, I really had only begun to understand &lt;span class="caps"&gt;HTML&lt;/span&gt; and &lt;span class="caps"&gt;CSS&lt;/span&gt; (I distinctly remember a &lt;a href="http://www.csszengarden.com/"&gt;&lt;span class="caps"&gt;CSS&lt;/span&gt; Zen Garden&lt;/a&gt; assignment giving me fits). A &lt;span class="caps"&gt;CMS&lt;/span&gt; and dynamic websites in general must’ve seemed like “black magic” to me. What do I mean by “black magic”? I mean being completely unsure of how the hell something was built on the web. Black Magic.&lt;/p&gt;

	&lt;p&gt;Anyways, I’ve been reflecting a lot lately on my career and the growth of &lt;span class="caps"&gt;CHROMATIC&lt;/span&gt;. Through that, I realized how much I now take for granted. What I mean is, the “black magic effect” is no longer something that occurs to me (at least not often). I can now easily look at a piece of functionality on the web and figure out how the developers pulled it off. I can look at the source code and know they’re using jQuery for front-end effects. I can look for “tells” in the document’s head to see what &lt;span class="caps"&gt;CMS&lt;/span&gt; they’re using. I can use Dev Tools to inspect CSS3 styles and know exactly how they pulled off that slick gradient.&lt;/p&gt;

	&lt;p&gt;I take all of this for granted. From the skills I’ve learned to the tools I rely on every day, this stuff is just a part of my routine. It wasn’t always this transparent.  When I first started developing websites, I realize I simply didn’t know what I didn’t know. I didn’t have the knowledge and the experience I have today. &lt;del&gt;For new developers, this stuff can be hard.&lt;/del&gt; This stuff is hard.&lt;/p&gt;

	&lt;p&gt;All that said, I wanted to write a short guide for new Drupal developers; the guide that I wish I would’ve had when I started. Sort of a short outline of stuff that would’ve been helpful to me back when I was cutting my teeth.&lt;/p&gt;

	&lt;h2&gt;Learn the basics&lt;/h2&gt;

	&lt;p&gt;Knowing how to program (even just the basics) can get you a long way. If you can write basic &lt;span class="caps"&gt;PHP&lt;/span&gt; and understand basic programming principles, you’re well on your way. Get your hands dirty with some tutorials on variables, conditionals, loops, functions, etc. and you’ll have a foundation to build on.  A fundamental understanding of these things is the basis for life as a developer. Without them, much of the web will seem like black magic. This ground-up approach isn’t the only way to learn, but I sure wish I would’ve learned this way. &lt;a href="http://drupal.org/node/1880590"&gt;This looks like a very good roundup&lt;/a&gt; from Drupal.org itself.&lt;/p&gt;

	&lt;p&gt;From there, try reading some code (like that of the &lt;a href="http://drupal.org/project/examples"&gt;examples&lt;/a&gt; module). I can’t tell you how much I’ve learned (and continue to learn) simply by reading code. Seeing the actual code that runs a module will often times get you to the “Aha!” moment where you understand how something is actually done.&lt;/p&gt;

	&lt;h2&gt;The Drupal Web Developer Toolbox&lt;/h2&gt;

	&lt;p&gt;Here’s a rundown of things I use just about every day: (sorry, I’m a Mac guy)&lt;/p&gt;

	&lt;ul&gt;&lt;li&gt;&lt;a href="https://developers.google.com/chrome-developer-tools/"&gt;Chrome Dev Tools&lt;/a&gt; – in browser debugging of &lt;span class="caps"&gt;HTML&lt;/span&gt;, &lt;span class="caps"&gt;CSS&lt;/span&gt; and JavaScript (I currently prefer this to Firebug)&lt;/li&gt;
		&lt;li&gt;&lt;a href="http://drupal.org/project/devel"&gt;Devel module&lt;/a&gt; – &lt;span class="caps"&gt;THE&lt;/span&gt; debugging module for Drupal&lt;/li&gt;
		&lt;li&gt;&lt;a href="http://drupal.org/project/drush"&gt;Drush&lt;/a&gt; – drupal control from the command line&lt;/li&gt;
		&lt;li&gt;You need a top notch text editor. These are the standouts for me:
	&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.sublimetext.com/"&gt;Sublime Text 2&lt;/a&gt; (my favorite)&lt;/li&gt;
		&lt;li&gt;&lt;a href="http://www.barebones.com/products/bbedit/index.html"&gt;&lt;span class="caps"&gt;BBE&lt;/span&gt;dit&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;a href="http://www.panic.com/coda/"&gt;Coda&lt;/a&gt;&lt;/li&gt;
	&lt;/ul&gt;&lt;/li&gt;
		&lt;li&gt;&lt;a href="http://www.git-tower.com/"&gt;Tower&lt;/a&gt; – &lt;span class="caps"&gt;GUI&lt;/span&gt; for Git on the Mac, great for Git beginners&lt;/li&gt;
		&lt;li&gt;&lt;a href="http://www.sequelpro.com/"&gt;Sequel Pro&lt;/a&gt; – the best &lt;span class="caps"&gt;GUI&lt;/span&gt; for db management on the Mac&lt;/li&gt;
		&lt;li&gt;&lt;a href="https://agilebits.com/onepassword"&gt;1Password&lt;/a&gt; – sane password management&lt;/li&gt;
	&lt;/ul&gt;&lt;h2&gt;Tinker&lt;/h2&gt;

	&lt;p&gt;This is probably the best way to learn, in my opinion. Just get in there and get your hands dirty. The beauty of what we do is that there is very little cost to tinker. Other professions have greater expenses to learn. Painters need paints, brushes, etc. Mechanics need parts, tools, and garages. We need a text editor and an internet connection.&lt;/p&gt;

	&lt;p&gt;If you want to be a module developer, start by writing a simple module and tinkering with hooks. Maybe try to replicate the functionality of a simple module.  Or follow the &lt;a href="http://drupal.org/developing/modules"&gt;Module Developers Guide&lt;/a&gt; on Drupal.org (your new home away from home). The &lt;a href="http://drupal.org/project/examples"&gt;examples&lt;/a&gt; module (mentioned above) is also a great place to start.&lt;/p&gt;

	&lt;p&gt;If you want to be a themer, try to replicate your favorite website’s look and feel with a custom Drupal theme. I started using &lt;a href="http://drupal.org/project/zen"&gt;Zen&lt;/a&gt; as the base for my themes years ago and haven’t looked back. Zen is great because it’s really well documented and gives you a great jumping off point for many of the most used theme hooks.&lt;/p&gt;

	&lt;h2&gt;Learn Git&lt;/h2&gt;

	&lt;p&gt;I’ll be honest. &lt;a href="http://git-scm.com/"&gt;Git&lt;/a&gt; was probably the last thing I learned that seemed truly like black magic at the time. In fact, it still feels that way sometimes. If you want to be a true developer these days, you’re going to have to learn to work with version control systems. Git isn’t the only version control tool, but it certainly is one of the most popular. This is the version control system Drupal uses, so for new devs looking to work with Drupal, it’s a pretty safe bet.  &lt;/p&gt;

	&lt;p&gt;Read the &lt;a href="http://git-scm.com/book"&gt;online version of Pro Git&lt;/a&gt; to get started and consider buying &lt;a href="http://www.git-tower.com/"&gt;Tower&lt;/a&gt; if you’re new to the command line. Focus on understanding commits, pushes/pulls and merges. This will be a good start. At &lt;span class="caps"&gt;CHROMATIC&lt;/span&gt;, we use &lt;a href="http://github.com"&gt;Github&lt;/a&gt; to host all of our project repositories, so you might try their services as well. GitHub is your friend.&lt;/p&gt;

	&lt;h2&gt;Command Line is also your friend&lt;/h2&gt;

	&lt;p&gt;I avoided using the command line for years. It scared the shit out of me. Now, I spend lots and lots of time there. For me, I didn’t quite get why I’d want to use the command line until I started using &lt;a href="http://drupal.org/project/drush"&gt;Drush&lt;/a&gt;. It was only then that I realized how much faster you can get (most) things done from within a terminal window. It takes some getting used to, but once you learn the basics, there is a whole other world of computing out there. The command line is powerful and virtually all devs can benefit from being familiar with it. My friends at &lt;a href="http://www.lullabot.com"&gt;Lullabot&lt;/a&gt; have a great series on &lt;a href="http://drupalize.me/series/command-line-basics-series"&gt;learning the command line&lt;/a&gt; available for free on their Drupal training site &lt;a href="http://www.drupalize.me"&gt;Drupalize.me&lt;/a&gt;.&lt;/p&gt;

	&lt;h2&gt;Sharpen, Tune, Refine&lt;/h2&gt;

	&lt;p&gt;Being a web developer means adaptation. The web is an ever-evolving beast and if you want to be a developer ten years from now, you’re going to have to continue to learn and refine your skills. This was one of the main reasons I got into this field. I love getting better, learning new things, not knowing everything. As a rule, I try to spend five-ten hours a week on honing my craft. Whether it’s reading blog posts on emerging technologies, following code tutorials or trying out new modules, I try to keep up on things as best I can. Making time to continue to learn is really important. I can’t stress this one enough.&lt;/p&gt;

	&lt;h2&gt;Let Go&lt;/h2&gt;

	&lt;p&gt;This could be an entire post on its own. The point here is that it’s OK to not know everything. No one does! It’s OK if you don’t yet know Git. That doesn’t mean you can’t make kick ass websites. It’s OK if you’re still writing vanilla &lt;span class="caps"&gt;CSS&lt;/span&gt;, that doesn’t mean you can’t make beautiful themes. &lt;/p&gt;

	&lt;p&gt;If I’m honest, this is the hardest one for me. I’m always thinking, “Shit. I really need to learn X or get caught up on Y.” The part I often forget is that you can’t know everything. Maybe I’m an awesome module developer but I’m not the best with &lt;a href="/sass-lang.com"&gt;Sass&lt;/a&gt; yet. That’s OK!&lt;/p&gt;

	&lt;h2&gt;Wrapping Up&lt;/h2&gt;

	&lt;p&gt;I’m hoping developers new to Drupal (or development in general) find this post useful. I’d hardly say this everything you need but I think it will get you headed in the right direction. Leave a comment if you have things you’d like to add and happy Drupaling!&lt;/p&gt;          &lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/chromaticsites-projects?a=YttHNl_XN4M:rWWafdwplyI:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/chromaticsites-projects?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/chromaticsites-projects/~4/YttHNl_XN4M" height="1" width="1"/&gt;</description>
 <pubDate>Fri, 24 May 2013 04:31:38 +0000</pubDate>
 <dc:creator>chris</dc:creator>
 <guid isPermaLink="false">273 at http://www.chromaticsites.com</guid>
 <comments>http://www.chromaticsites.com/blog/black-magic-effect#comments</comments>
<feedburner:origLink>http://www.chromaticsites.com/blog/black-magic-effect</feedburner:origLink></item>
<item>
 <title>Contact Us</title>
 <link>http://feedproxy.google.com/~r/chromaticsites-projects/~3/WQ3G64Z2OLw/contact-us</link>
 <description>&lt;form class="webform-client-form webform-hints" enctype="multipart/form-data" action="/rss.xml" method="post" id="webform-client-form-270" accept-charset="UTF-8"&gt;&lt;div&gt;&lt;div class="contact-form-column-left"&gt;&lt;div class="column-inner"&gt;&lt;div class="form-item webform-component webform-component-textfield" id="webform-component-name"&gt;
  &lt;label class="element-invisible" for="edit-submitted-name"&gt;Name &lt;span class="form-required" title="This field is required."&gt;*&lt;/span&gt;&lt;/label&gt;
 &lt;input title="Name" placeholder="Name" type="text" id="edit-submitted-name" name="submitted[name]" value="" size="60" maxlength="128" class="form-text required" /&gt;
&lt;/div&gt;
&lt;div class="form-item webform-component webform-component-email" id="webform-component-email"&gt;
  &lt;label class="element-invisible" for="edit-submitted-email"&gt;Email &lt;span class="form-required" title="This field is required."&gt;*&lt;/span&gt;&lt;/label&gt;
 &lt;input class="email form-text form-email required" title="Email" placeholder="Email" type="email" id="edit-submitted-email" name="submitted[email]" size="60" /&gt;
&lt;/div&gt;
&lt;div class="form-item webform-component webform-component-textfield" id="webform-component-phone"&gt;
  &lt;label class="element-invisible" for="edit-submitted-phone"&gt;Phone &lt;/label&gt;
 &lt;input title="Phone" placeholder="Phone" type="text" id="edit-submitted-phone" name="submitted[phone]" value="" size="60" maxlength="128" class="form-text" /&gt;
&lt;/div&gt;
&lt;div class="form-item webform-component webform-component-textfield" id="webform-component-business-organization"&gt;
  &lt;label class="element-invisible" for="edit-submitted-business-organization"&gt;Business/Organization &lt;/label&gt;
 &lt;input title="Business/Organization" placeholder="Business/Organization" type="text" id="edit-submitted-business-organization" name="submitted[business_organization]" value="" size="60" maxlength="128" class="form-text" /&gt;
&lt;/div&gt;
&lt;div class="form-item webform-component webform-component-textfield" id="webform-component-website"&gt;
  &lt;label class="element-invisible" for="edit-submitted-website"&gt;Website &lt;/label&gt;
 &lt;input title="Website" placeholder="Website" type="text" id="edit-submitted-website" name="submitted[website]" value="" size="60" maxlength="128" class="form-text" /&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div class="contact-form-column-right"&gt;&lt;div class="column-inner"&gt;&lt;div class="form-item webform-component webform-component-textarea" id="webform-component-details"&gt;
  &lt;label class="element-invisible" for="edit-submitted-details"&gt;Details &lt;span class="form-required" title="This field is required."&gt;*&lt;/span&gt;&lt;/label&gt;
 &lt;div class="form-textarea-wrapper"&gt;&lt;textarea placeholder="Please enter your message..." title="Details" id="edit-submitted-details" name="submitted[details]" cols="60" rows="5" class="form-textarea required"&gt;&lt;/textarea&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;input type="hidden" name="details[sid]" value="" /&gt;
&lt;input type="hidden" name="details[page_num]" value="1" /&gt;
&lt;input type="hidden" name="details[page_count]" value="1" /&gt;
&lt;input type="hidden" name="details[finished]" value="0" /&gt;
&lt;input type="hidden" name="form_build_id" value="form-McJVHmZwJX8nUwcfO-VwGleDe-D4UUlDCvqB9zX9Qus" /&gt;
&lt;input type="hidden" name="form_id" value="webform_client_form_270" /&gt;
&lt;div class="form-actions form-wrapper" id="edit-actions"&gt;&lt;input type="submit" id="edit-submit" name="op" value="Submit" class="form-submit" /&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/form&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/chromaticsites-projects?a=WQ3G64Z2OLw:m6SqsEtxNGI:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/chromaticsites-projects?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/chromaticsites-projects/~4/WQ3G64Z2OLw" height="1" width="1"/&gt;</description>
 <pubDate>Fri, 10 May 2013 00:00:38 +0000</pubDate>
 <dc:creator>admin</dc:creator>
 <guid isPermaLink="false">270 at http://www.chromaticsites.com</guid>
 <comments>http://www.chromaticsites.com/contact-us#comments</comments>
<feedburner:origLink>http://www.chromaticsites.com/contact-us</feedburner:origLink></item>
<item>
 <title>Google recommends following the industry best practice of using responsive web design to decide the rendering on each device.</title>
 <link>http://feedproxy.google.com/~r/chromaticsites-projects/~3/WchRdKkqeYg/google-recommends-following-industry-best-practice-using-responsive-web-design-decide-rendering-each</link>
 <description>&lt;div class="field field-name-field-fact-source field-type-link-field field-label-hidden"&gt;&lt;div class="field-items"&gt;&lt;div class="field-item even"&gt;&lt;a href="http://developers.google.com/webmasters/smartphone-sites/"&gt;Google&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/chromaticsites-projects?a=WchRdKkqeYg:b5AElQ9hk3s:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/chromaticsites-projects?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/chromaticsites-projects/~4/WchRdKkqeYg" height="1" width="1"/&gt;</description>
 <pubDate>Thu, 09 May 2013 12:58:12 +0000</pubDate>
 <dc:creator>admin</dc:creator>
 <guid isPermaLink="false">269 at http://www.chromaticsites.com</guid>
 <comments>http://www.chromaticsites.com/google-recommends-following-industry-best-practice-using-responsive-web-design-decide-rendering-each#comments</comments>
<feedburner:origLink>http://www.chromaticsites.com/google-recommends-following-industry-best-practice-using-responsive-web-design-decide-rendering-each</feedburner:origLink></item>
<item>
 <title>77% of mobile searches take place at home or work, only 17% on-the-go, according to Google.</title>
 <link>http://feedproxy.google.com/~r/chromaticsites-projects/~3/BCB5tWYYvXU/77-mobile-searches-take-place-home-or-work-only-17-go-according-google</link>
 <description>&lt;div class="field field-name-field-fact-source field-type-link-field field-label-hidden"&gt;&lt;div class="field-items"&gt;&lt;div class="field-item even"&gt;&lt;a href="http://www.google.com/think/research-studies/creating-moments-that-matter.html"&gt;Google&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/chromaticsites-projects?a=BCB5tWYYvXU:h1vuZdXuEuA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/chromaticsites-projects?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/chromaticsites-projects/~4/BCB5tWYYvXU" height="1" width="1"/&gt;</description>
 <pubDate>Thu, 09 May 2013 12:56:09 +0000</pubDate>
 <dc:creator>admin</dc:creator>
 <guid isPermaLink="false">268 at http://www.chromaticsites.com</guid>
 <comments>http://www.chromaticsites.com/77-mobile-searches-take-place-home-or-work-only-17-go-according-google#comments</comments>
<feedburner:origLink>http://www.chromaticsites.com/77-mobile-searches-take-place-home-or-work-only-17-go-according-google</feedburner:origLink></item>
</channel>
</rss>
