<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Dennis Plucinik's Web Design Blog</title>
	
	<link>http://www.dennisplucinik.com/blog</link>
	<description>Just another WordPress site</description>
	<lastBuildDate>Wed, 06 Feb 2013 23:37:33 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/SocialNetworkingEcommerceWebDesignDevelopment" /><feedburner:info uri="socialnetworkingecommercewebdesigndevelopment" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>10 Tips for Bringing Your LinkedIn A-Game</title>
		<link>http://feedproxy.google.com/~r/SocialNetworkingEcommerceWebDesignDevelopment/~3/Bn0QcHMvABg/</link>
		<comments>http://www.dennisplucinik.com/blog/2013/01/12/ten-tips-for-bringing-your-linkedin-a-game/#comments</comments>
		<pubDate>Sat, 12 Jan 2013 16:08:46 +0000</pubDate>
		<dc:creator>Dennis Plucinik</dc:creator>
				<category><![CDATA[Marketing]]></category>
		<category><![CDATA[LinkedIn]]></category>

		<guid isPermaLink="false">http://www.dennisplucinik.com/blog/?p=1469</guid>
		<description><![CDATA[Either if you're just getting started using LinkedIn or if you've had a profile for ages, here are some tips to help you optimize your LinkedIn effort. In summary, here are the tips in no particular order: Flesh out your &#8230; <a href="http://www.dennisplucinik.com/blog/2013/01/12/ten-tips-for-bringing-your-linkedin-a-game/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.dennisplucinik.com/blog/wp-content/uploads/2013/01/linkedin-a-game.png" alt="linkedin-a-game" title="linkedin-a-game" width="600" height="238" class="alignnone size-full wp-image-1478" /></p>
<p>Either if you're just getting started using LinkedIn or if you've had a profile for ages, here are some tips to help you optimize your LinkedIn effort.</p>
<p>In summary, here are the tips in no particular order:</p>
<ol>
<li>Flesh out your profile
<li>Request recommendations from old colleagues
<li>Congratulate people on job changes
<li><del>Support people who are unemployed</del>
<li>Reach out to old contacts every once in a while
<li>Pay attention to who views your profile
<li>Answer questions, Join groups, Run a poll
<li>Update your status with professional achievements
<li>Properly structure your employment history descriptions
<li>Do good work
</ol>
<p><span id="more-1469"></span></p>
<h2>1.) Flesh out your profile</h2>
<p><img src="http://www.dennisplucinik.com/blog/wp-content/uploads/2013/01/Screen-Shot-2013-01-12-at-9.34.38-AM-300x193.png" alt="LinkedIn - Profile completeness" title="LinkedIn - Profile completeness" width="300" height="193" class="alignnone size-medium wp-image-1477" /></p>
<p>LinkedIn has a "profile-completeness" helper that will guide you on the general things you should do. At the very least make sure you've got these covered.</p>
<ul>
<li>Upload a well focused, professional (not holding a beer bottle) photo of your face and make sure you're smiling. Nobody wants to work with a smug, cynical, emo, asshole so look friendly.
<li>Complete your employment history with title, date range, and description (more on description later).
<li>Fill out your skills &#038; expertise. This will prompt LinkedIn to ask your contacts to endorse you for those skillsets.
</ul>
<p>After you've spent the time bringing your profile up to speed, make sure you keep it updated. </p>
<h2>2.) Request recommendations from old colleagues</h2>
<p>To get to the recommendations section, click<br />
<code>Profile > Recommendations > Ask to be recommended</code></p>
<p><img src="http://www.dennisplucinik.com/blog/wp-content/uploads/2013/01/recommendations-1024x587.png" alt="LinkedIn - recommendations" title="LinkedIn - recommendations" width="640" height="366" class="alignnone size-large wp-image-1480" /></p>
<p>Here are a few guidelines on how to appropriately make requests.</p>
<ul>
<li>Don't ask for recommendations from people you are currently working with. If the person doesn't want to leave one or just doesn't get around to it soon it may make for an uncomfortable workplace. First and foremost you should focus on maintaining high quality professional relationships at any position you hold. Putting unnecessary pressure on your colleagues may leave them with a bad impression of you.
<li>Once you're no longer colleagues, all bets are off... If you had a good working relationship with someone then there is no excuse NOT to ask for a recommendation. Feel free to use the default recommendation message unless you feel like being especially personal about it. I don't recommend personal messages for one reason. If you send the request again (see next bullet point), the message you used before will be copied and if it is no longer relevant, you'll have to spend time typing out a new one.
<li>Re-send requests every three months. I find three months to be an appropriate amount of time to pass without coming across as pushy. That said, there are some people who have been on my "three month list" for years. I'm confident they'll eventually come around <img src='http://www.dennisplucinik.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />
<li>Leave recommendations for the people you are requesting recommendations from FIRST. This is much more polite and clears you of any guilt associated with re-sending requests to them every three months.
</ul>
<h2>3.) Congratulate people on job changes</h2>
<p>One of the main points of a social network like LinkedIn is the "social" component. LinkedIn enables you to stay loosely connected to a larger network, so why not take advantage of it. If you see a colleague who has just changed positions, sent them a congratulatory message via LinkedIn. Remember to make it genuine. Disingenuous actions are IMO a misuse of the service and</p>
<h2>4.) <del>Support people who are unemployed</del></h2>
<p><strong>To be clear, I mean to say <em>don't</em> make mention of people being unemployed.</strong></p>
<p>A lot of time I see people who I know are unemployed leave their previous employer listed as current. It may be disingenuous on their part or at least they can argue they didn't have the time to update it yet. But in the case that they just don't want to publicly announce their unemployment, it's probably best not to make public mention of it. Since there is no concept of a public wall (like Facebook) the only way to do this would be to post an update on your own profile which doesn't really make sense anyways. Otherwise you may be thinking about sending them a private message however, this may just come across as patronizing unless you can offer them something of value like a job referral.</p>
<p>TLDR; tread lightly on this topic. Unemployment is serious and people can be sensitive about it.</p>
<h2>5.) Reach out to old contacts every once in a while</h2>
<p>This is a better way to resolve the previous bullet point issue. It only takes a little thought and effort to ask how someone is doing. Again, you want to take advantage of the social benefits the network provides you thus enriching your network. You may find out someone is unemployed this way. Then by chance if you're approached about a position, then you'll have someone to refer. This cycle is cumulative — the more people you have to refer, the more you will be asked for referrals — and the more people will think to ask you to refer them.</p>
<p>This is the foundation of the professional network effect. Malcolm Gladwell calls these types of people "Connectors" in his book The Tipping Point. </p>
<h2>6.) Pay attention to who views your profile</h2>
<p>This is sort of tied to the previous bullet point. If you see someone checking out your profile who you haven't spoken to in a while, it may be a good time to reach out to them. They may subconsciously feel like it's less of an out of the blue message (they might also feel like you're spying on them though so be especially careful to make sure your message couldn't be construed as spam).</p>
<h2>7.) Answer questions, Join groups, Run a poll</h2>
<p>LinkedIn has done a great job to really leverage the network it has by providing mutually beneficial features for professionals. The person asking a question can expect to get a great response because the person asking has a great chance to wave their banner in public. For you who are looking to bolster the strength of your profile, answering questions positions you as an expert and draws more people to your profile. The same goes for participating in groups, and requesting user feedback via a poll.</p>
<p>To get to the Answers section click<br />
<code>More > Answers</code></p>
<p><img src="http://www.dennisplucinik.com/blog/wp-content/uploads/2013/01/Screen-Shot-2013-01-12-at-10.30.18-AM-1024x298.png" alt="" title="LinkedIn - Answer questions" alt="LinkedIn - Answer questions" width="640" height="186" class="alignnone size-large wp-image-1476" /></p>
<p>Running a poll shows that you know have relevant and interesting questions to ask. If you get a big response, then everyone who responds will see the level of your influence. Polls can have the opposite effect though if you don't have a network, then everyone will see that you don't have a network and be less likely to respond or think of you as a less influential person. There's a bit of chicken and egg going on here so the best chance you have with polls is to make sure you have a strong network, and make sure you're not asking a dumbass question like "Which is better iPhone or Android?"</p>
<h2>8.) Update your status with professional achievements</h2>
<p>One thing I constantly see is good qualified people who are either afraid or embarrassed to talk about themselves. In fact a lot of people were brought up to think it's rude. I'm here to say the opposite — if you're proud of something, say something.</p>
<p>Tactful self promotion is a key to growing your network.</p>
<h2>9.) Properly structure your employment history descriptions</h2>
<p>Just like a resume, you don't want to make yours difficult to read. Avoid lengthy descriptions that include every buzzword in the book. If you want to use buzzwords, put them in a buzzwords specific section titled "technologies used" or something relevant to your industry. When it comes to descriptions, keep them as short as possible (especially if you have many positions in your history), and focus on the highlights. Don't bother with listing trivial responsibilities that would at any position take zero time to learn.</p>
<p>Companies want to be able to gauge what value they would get by hiring you so explain your responsibilities in that context.</p>
<p>Here are some tips on structuring your descriptions:</p>
<ul>
<li>Add a link to something external. Don't waste the potential traffic by not linking to your blog. I have added my about.me profile and my blog is linked from there.
<li>Your Summary description should start with a concise, one line intro. "I'm a _______ who likes ________." I have two additional small paragraphs focusing on Specialties and Fluencies. Fluencies may include software you have experience with, spoken languages, or programming languages.
</ul>
<h2>10.) Do good work</h2>
<p>Above all else you need to do good work first. Doing good work and working hard will give you all the ammunition to execute all the strategies I've outlined. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.dennisplucinik.com/blog/2013/01/12/ten-tips-for-bringing-your-linkedin-a-game/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.dennisplucinik.com/blog/2013/01/12/ten-tips-for-bringing-your-linkedin-a-game/</feedburner:origLink></item>
		<item>
		<title>My Goal Journaling Strategy</title>
		<link>http://feedproxy.google.com/~r/SocialNetworkingEcommerceWebDesignDevelopment/~3/A6fkjOLTJH4/</link>
		<comments>http://www.dennisplucinik.com/blog/2013/01/08/my-goal-journaling-strategy/#comments</comments>
		<pubDate>Tue, 08 Jan 2013 18:30:28 +0000</pubDate>
		<dc:creator>Dennis Plucinik</dc:creator>
				<category><![CDATA[Culture]]></category>
		<category><![CDATA[goals]]></category>
		<category><![CDATA[strategy]]></category>

		<guid isPermaLink="false">http://www.dennisplucinik.com/blog/?p=1445</guid>
		<description><![CDATA[This strategy describes a very simple system for simultaneously setting goals and keeping a short daily journal. Generally speaking, both setting goals and keeping a daily diary are nearly impossible to keep up for most people. I've designed this simple &#8230; <a href="http://www.dennisplucinik.com/blog/2013/01/08/my-goal-journaling-strategy/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>This strategy describes a very simple system for simultaneously setting goals and keeping a short daily journal.</p>
<p>Generally speaking, both setting goals and keeping a daily diary are nearly impossible to keep up for most people. I've designed this simple system so that I can do both and I've been able to (mostly) stick to it for the last 4 years.</p>
<p><a href="http://www.dennisplucinik.com/blog/wp-content/uploads/2013/01/iphone-note.png"><img src="http://www.dennisplucinik.com/blog/wp-content/uploads/2013/01/iphone-note.png" alt="" title="iphone-note" width="200" height="300" class="alignnone size-medium wp-image-1446" /></a></p>
<p><span id="more-1445"></span></p>
<h2>Copy this goals template</h2>
<p>The concept is simple. I first create a new note on my phone and paste in this template:</p>
<p><a href="http://pastebin.com/xukrCvSh">http://pastebin.com/xukrCvSh</a>.</p>
<h2>Define all goals for the year</h2>
<p>At the top I add in my yearly goals broken down by category (e.g., business, personal, places to eat, etc.) and add one goal per line.</p>
<pre>Business:
- meet 5 new clients
- hire one new employee
- win one award
- write 2 blog posts a month
- create content for <a href="http://FrontEndSchool.com">FrontEndSchool.com</a>

Personal:
- travel to Japan
- buy new computer speakers
- buy new sliverware

Restaurants to eat at:
- Buddakan
- The Breslin (suckling pig)
</pre>
<p>The beginning of the note is usually longer each year as I learn how to manage more goals.</p>
<h2>Assign monthly goals</h2>
<p>Next I break down each month with a heading.</p>
<pre>January goal: eat at Buddakhan
1/1
1/2
1/3
1/4
...
</pre>
<p>This allows me to pull from my list on top what goals I think I should be able to complete in one month. It's this process of breaking down lofty goals into more granular pieces which gives me a good idea of where this year is headed. Also, this helps when goals are based on a scheduled rate (e.g., X restaurants/month).</p>
<h2>Set smaller weekly goals</h2>
<p>Next I break down the weeks so I can set smaller goals.</p>
<pre>January goal: Eat at Buddakan, Finish all FES content for course 1
week 1: Write "Goal Setting Strategies" post
1/1
1/2
1/3
1/4
...
</pre>
<h2>Record one major daily event</h2>
<p>Each day I record the most significant thing that happened that day on one line. This forces me to 1) really focus on what's important, 2) keep the note clean looking for when I look back and review my history, and 3) be aware of whether I am progressing towards my weekly and monthly goals.</p>
<pre>January goal: Eat at Buddakan
week 1: Write "Goal Setting Strategies" post
1/1 Watched Sherlock BBC show
1/2 pediatrician appt.
1/3 FES content
1/4 lunch at Parish Hall
...
</pre>
<h2>Summary</h2>
<p>Following this process is un-intimidating enough to prevent you from giving up. Like I said I've kept it up for 4 years already. The simplicity of the design allows me to comfortably skip a day (or even a week) and still be able to come back later and remember what I did each day. Also, the phone is always in your pocket, by your bedside, etc. so you don't have the excuse that it's too much effort to open a physical journal or sit in front of a computer. I find myself filling out the journal at night in bed most times when I'm thinking about what I did that day and what I'm going to do tomorrow.</p>
<p>Because I don't keep it updated every-single-day, I have changed my behavior by leaving clues for myself via things like checking into FourSquare more, being more active on Twitter, and scheduling things on Google Calendar religiously. This way I can retrace my steps when I can't remember what happened on a particular day. </p>
<p>One final note is that I didn't anticipate the value I get from looking back at my year and realizing how far I've progressed. You would be surprised at how fast you forget the events in your life, but when you write them down you effectively get to live them over each time to you look back.</p>
<p>Here's the full 2013 Goals Template with month and week headings : <a href="http://pastebin.com/eGHrq4aP">http://pastebin.com/eGHrq4aP</a></p>
<p>I hope some people find this helpful. Please leave a comment if you have a simple strategy for managing your goals.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dennisplucinik.com/blog/2013/01/08/my-goal-journaling-strategy/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.dennisplucinik.com/blog/2013/01/08/my-goal-journaling-strategy/</feedburner:origLink></item>
		<item>
		<title>How to Always Start VIM with ‘syntax: on’</title>
		<link>http://feedproxy.google.com/~r/SocialNetworkingEcommerceWebDesignDevelopment/~3/CYpkQ8f1tKA/</link>
		<comments>http://www.dennisplucinik.com/blog/2012/08/24/how-to-always-start-vim-with-syntax-on/#comments</comments>
		<pubDate>Fri, 24 Aug 2012 15:04:43 +0000</pubDate>
		<dc:creator>Dennis Plucinik</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[text editors]]></category>
		<category><![CDATA[VIM]]></category>

		<guid isPermaLink="false">http://www.dennisplucinik.com/blog/?p=1432</guid>
		<description><![CDATA[I don't know why it's so hard to find this simple answer on the web. So, I'm writing it myself. Add this to your ~/.vimrc file: syntax on If you do not have a ~/.vimrc file, just create one: vim &#8230; <a href="http://www.dennisplucinik.com/blog/2012/08/24/how-to-always-start-vim-with-syntax-on/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I don't know why it's so hard to find this simple answer on the web. So, I'm writing it myself.</p>
<p>Add this to your ~/.vimrc file:</p>
<pre><code>syntax on</code></pre>
<p>If you do not have a ~/.vimrc file, just create one:</p>
<pre><code>vim ~/.vimrc</code></pre>
<p>VIM looks here for configuration instructions before starting.</p>
<p>This solution is meant to avoid having to type '<code>:syntax on</code>' every time you open VIM.</p>
<p>In case you're not familiar with 'syntax: on' is basically enables smart syntax highlighting/coloring.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dennisplucinik.com/blog/2012/08/24/how-to-always-start-vim-with-syntax-on/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.dennisplucinik.com/blog/2012/08/24/how-to-always-start-vim-with-syntax-on/</feedburner:origLink></item>
		<item>
		<title>Common Mercurial Commands</title>
		<link>http://feedproxy.google.com/~r/SocialNetworkingEcommerceWebDesignDevelopment/~3/xNc7qFgTeVE/</link>
		<comments>http://www.dennisplucinik.com/blog/2012/06/04/common-mercurial-commands/#comments</comments>
		<pubDate>Mon, 04 Jun 2012 17:35:25 +0000</pubDate>
		<dc:creator>Dennis Plucinik</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[Mercurial]]></category>
		<category><![CDATA[Version Control]]></category>

		<guid isPermaLink="false">http://www.dennisplucinik.com/blog/?p=1394</guid>
		<description><![CDATA[This post will mainly be a reference for me on the most used commands that I tend to forget. Hopefully you find it useful as well. Also, feel free to make suggestions and I will add them. See which files &#8230; <a href="http://www.dennisplucinik.com/blog/2012/06/04/common-mercurial-commands/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>This post will mainly be a reference for me on the most used commands that I tend to forget. Hopefully you find it useful as well. Also, feel free to make suggestions and I will add them.</p>
<p><span id="more-1394"></span></p>
<ul>
<li>
<h3>See which files need to be merged</h3>
</li>
<p><small>After committing changes, pulling, and finding conflicts, I want to be able to see which files are on deck to be merged before typing <code>hg merge</code>.</small></p>
<p><code></p>
<pre class="prettyprint lang-html">
hg merge -Pv
</pre>
<p></code></p>
<hr />
<li>
<h3>View conflicted files on merge conflict</h3>
</li>
<p><small>After merging conflicted files, I want to view the merged files so as to be able to <code>hg resolve</code> them individually.</small></p>
<p><code></p>
<pre class="prettyprint lang-html">
hg resolve -l
</pre>
<p></code></p>
<p><small>Now to mark resolved conflicts:</small></p>
<p><code></p>
<pre class="prettyprint lang-html">
hg resolve -m filename
</pre>
<p></code></p>
<hr />
<li>
<h3>Show change history for one file</h3>
</li>
<p><small>I want to choose from a previous revision for comparison with the current revision.</small></p>
<p> <a href="http://stackoverflow.com/questions/3459161/how-to-view-revision-history-for-mercurial-file">reference</a></small></p>
<p><code></p>
<pre class="prettyprint lang-html">
hg log filename
</pre>
<p></code></p>
<hr />
<li>
<h3>Compare file with pervious revision</h3>
</li>
<p><small><a href="http://stackoverflow.com/questions/3459161/how-to-view-revision-history-for-mercurial-file">reference</a></small></p>
<p><code></p>
<pre class="prettyprint lang-html">
hg diff -r 10 -r 20 filename
</pre>
<p></code></p>
<hr />
<li>
<h3>Restore files to their checked out state</h3>
</li>
<p><code></p>
<pre class="prettyprint lang-html">
hg revert filename
</pre>
<p></code>
</ul>
<p>This is it for me for now. If I think of any in the future I will add them. Feel free to make suggestions as well.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dennisplucinik.com/blog/2012/06/04/common-mercurial-commands/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.dennisplucinik.com/blog/2012/06/04/common-mercurial-commands/</feedburner:origLink></item>
		<item>
		<title>Learning Web Design: Adding Structure with CSS using Positioning, Floating, &amp; Clearing</title>
		<link>http://feedproxy.google.com/~r/SocialNetworkingEcommerceWebDesignDevelopment/~3/A4VZHcwFtBU/</link>
		<comments>http://www.dennisplucinik.com/blog/2012/04/30/learning-web-design-adding-structure-with-css-using-positioning-floating-clearing/#comments</comments>
		<pubDate>Tue, 01 May 2012 03:34:20 +0000</pubDate>
		<dc:creator>Dennis Plucinik</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Learning Web Design Series]]></category>

		<guid isPermaLink="false">http://www.dennisplucinik.com/blog/?p=1293</guid>
		<description><![CDATA[Positioning, Floating, and Clearing are three fundamental pieces you need in order to add visual structure to your site. This is the second post of a two part series discussing how to add structure to your site with CSS. The &#8230; <a href="http://www.dennisplucinik.com/blog/2012/04/30/learning-web-design-adding-structure-with-css-using-positioning-floating-clearing/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Positioning, Floating, and Clearing are three fundamental pieces you need in order to add visual structure to your site. This is the second post of a two part series discussing how to add structure to your site with CSS. The first post can be found <a href="http://www.dennisplucinik.com/blog/2012/03/28/learning-web-design-adding-structure-with-css">here</a>.</p>
<p><span id="more-1293"></span></p>
<h2><a name="positioning"></a>Positioning</h2>
<h3>Default Positioning</h3>
<p>By default every element is set to <code>position: static;</code>. In CSS-land this stupidly means your element <em>hasn't</em> been positioned. Maybe it's better to think of it as meaning that you just haven't applied a non-default position yet. Why is that important? - because your element <em>needs</em> to be positioned to do almost anything important with it (e.g., adding width, height, or moving left, right, up, or down).</p>
<p style="text-align:center">
<img src="http://www.dennisplucinik.com/blog/wp-content/uploads/2012/03/position-default.jpg" alt="CSS Position: static (default)" title="CSS Position: static (default)" width="315" height="237" class="size-full wp-image-1298" />
</p>
<p>Note: The only position values we'll deal with are <code>relative &#038; absolute</code>. This should make it easy to remember. You can check out the other possible values <a href="http://www.w3schools.com/css/css_positioning.asp">here</a>.</p>
<h3>Relative vs. Absolute Positioning</h3>
<p>Here are three rules to remember with positioning:</p>
<ol>
<li>"relative" means "relative to where the element lies naturally in the document flow"</li>
<li>"absolute" means any CSS values given to top, right, bottom, &#038; left will be made "from the bounds of the <em>closest positioned parent</em></li>
<li>setting <code>position: absolute</code> removes the element from the document flow causing subsequent content to take its place.</a>
</ol>
<p>Once you've applied a relative or absolute position value, you can begin moving it around using the CSS <code>top, left, right, &#038; bottom</code>.</p>
<p style="text-align: center;padding:0">
<img src="http://www.dennisplucinik.com/blog/wp-content/uploads/2012/03/position-relative.jpg" alt="CSS Position: relative" title="CSS Position: relative" width="315" height="237" class="size-full wp-image-1299" /><img src="http://www.dennisplucinik.com/blog/wp-content/uploads/2012/03/position-absolute.jpg" alt="CSS Position: absolute" title="CSS Position: absolute" width="315" height="237" class="size-full wp-image-1300" />
</p>
<p>In the left example applying a relative position, with top &#038; left offset values causes it to move 20px from the top and from the right of its natural position (without breaking the layout of surrounding elements).</p>
<p>In the right example applying an absolute position causes <code>img #3</code> to move in to the left taking the place of <code>img #2</code> which is now positioned 20px from the top and left of the <em>closest positioned parent</em> (which we're assuming is either a relatively positioned <code>div</code> or the <code>body</code>).</p>
<p>If you're still having trouble with this concept, I found a pretty good tutorial here: <a href="http://www.barelyfitz.com/screencast/html-training/css/positioning/">Learn CSS Positioning in Ten Steps</a>.</p>
<h2><a name="floating"></a>Floating</h2>
<p>The idea of floating is directly related to an element's display value (i.e., inline or block). Block level elements (e.g., div, p, ul, li) naturally occupy 100% of the width in the document flow. </p>
<style>
div.block_example ul { list-style: none; }
div.block_example li { border: 1px solid red; }
</style>
<p>CSS:</p>
<pre><code class="prettyprint lang-css linenums">div.block_example ul { list-style: none; }
div.block_example li { border: 1px solid red; }
</code>
</pre>
<p>HTML:</p>
<pre><code class="prettyprint lang-html linenums">&lt;div class="block_example"&gt;
  &lt;ul&gt;
    &lt;li&gt;item 1 isn't floated&lt;/li&gt;
    &lt;li&gt;item 2 isn't floated&lt;/li&gt;
    &lt;li&gt;item 3 isn't floated&lt;/li&gt;
  &lt;/ul&gt;
&lt;/div&gt;
</code>
</pre>
<p>Example:</p>
<div class="block_example">
<ul>
<li>item 1 isn't floated</li>
<li>item 2 isn't floated</li>
<li>item 3 isn't floated</li>
</ul>
</div>
<p>Conversely, inline elements only take up the width of the element (e.g., img, span). </p>
<style>
div.span_example { background: #ccc; }
div.span_example span { border: 1px solid red; }
</style>
<p>CSS:</p>
<pre><code class="prettyprint lang-css linenums">div.span_example { background: #ccc; }
div.span_example span { background: #aaa; }
</code>
</pre>
<p>HTML:</p>
<pre><code class="prettyprint lang-html linenums">&lt;div class="span_example"&gt;
  &lt;span&gt;this is a span&lt;/span&gt;
  &lt;span&gt;this is a span&lt;/span&gt;
  &lt;span&gt;this is a span&lt;/span&gt;
&lt;/div&gt;
</code>
</pre>
<p>Example:</p>
<div class="span_example">
<span>this is a span</span><span>this is a span</span><span>this is a span</span><span>this is a span</span></p>
</div>
<p>Floating a block element basically forces it to shrink back to only the width it needs. The "width it needs" depends on either an explicit width set or the width of its contents. Floating also causes the following elements to wrap around the floated element, causing them to appear as if they were inline. Here is the list item example above with each item floated left.</p>
<style>
.float_left { float: left; }
</style>
<p>CSS:</p>
<pre><code class="prettyprint lang-css linenums">.float_left { float: left; }
</code>
</pre>
<p>HTML:</p>
<pre><code class="prettyprint lang-html linenums">&lt;div class="block_example"&gt;
  &lt;ul&gt;
    &lt;li class="float_left"&gt;item 1 is floated left&lt;/li&gt;
    &lt;li class="float_left"&gt;item 2 is floated left&lt;/li&gt;
    &lt;li class="float_left"&gt;item 3 is floated left&lt;/li&gt;
  &lt;/ul&gt;
&lt;/div&gt;
</code>
</pre>
<p>Example:</p>
<div class="block_example">
<ul>
<li class="float_left">item 1 is floated left</li>
<li class="float_left">item 2 is floated left</li>
<li class="float_left">item 3 is floated left</li>
</ul>
</div>
<p>The options for the float property are left, right, none (default), &#038; inherit. Floating an item to the right simply aligns the floated element to the right-most boundary of its containing element.</p>
<style>
.float_right { float: right; }
</style>
<p>CSS:</p>
<pre><code class="prettyprint lang-css linenums">.float_right { float: right; }
</code>
</pre>
<p>HTML:</p>
<pre><code class="prettyprint lang-html linenums">&lt;div class="block_example"&gt;
  &lt;ul&gt;
    &lt;li class="float_right"&gt;item 1 is floated right&lt;/li&gt;
    &lt;li class="float_right"&gt;item 2 is floated right&lt;/li&gt;
    &lt;li class="float_right"&gt;item 3 is floated right&lt;/li&gt;
  &lt;/ul&gt;
&lt;/div&gt;
</code>
</pre>
<p>Example:</p>
<div class="block_example">
<ul>
<li class="float_right">item 1 is floated right</li>
<li class="float_right">item 2 is floated right</li>
<li class="float_right">item 3 is floated right</li>
</ul>
</div>
<h2><a name="clearing"></a>Clearing</h2>
<p>"Elements after the floating element will flow around it. To avoid this, use the clear property." - <a href="http://www.w3schools.com/css/css_float.asp">http://www.w3schools.com/css/css_float.asp</a></p>
<p>Think of clearing as a way to "break out of the float". Clearing allows an element to avoid the wrap-around caused by a floated element before it.</p>
<p>Here is the floated list-item example with one cleared element.</p>
<style>
.float_left { float: left; }
.clear_left { clear: left; }
</style>
<p>CSS:</p>
<pre><code class="prettyprint lang-css linenums">.float_left { float: left; }
.clear_left { clear: left; }
</code>
</pre>
<p>HTML:</p>
<pre><code class="prettyprint lang-html linenums">&lt;div class="block_example"&gt;
  &lt;ul&gt;
    &lt;li class="float_left"&gt;item 1 is floated left&lt;/li&gt;
    &lt;li class="float_left"&gt;item 2 is floated left&lt;/li&gt;
    &lt;li class="float_left clear_left"&gt;item 3 is floated left&lt;/li&gt;
  &lt;/ul&gt;
&lt;/div&gt;
</code>
</pre>
<p>Example:</p>
<div class="block_example">
<ul>
<li class="float_left">item 1 is floated left</li>
<li class="float_left">item 2 is floated left</li>
<li class="float_left clear_left">item 3 is floated left and cleared left</li>
</ul>
</div>
<p>The options for the clear property are left, right, both, none (default), &#038; inherit.</p>
<p>The concept of clearing either left or right means specifically that an element set to clear left will get rendered on a new line after any items before it that are set to float left. Conversely, an element set to clear right will get rendered on a new line after any items before it that are set to float right. You may have guessed that an element set to clear both will get rendered on a new line after elements that are floated either left or right. See the illustration below for an example.</p>
<div id="attachment_1380" class="wp-caption alignnone" style="width: 640px"><img src="http://www.dennisplucinik.com/blog/wp-content/uploads/2012/04/CSS-Clear-Both.gif" alt="CSS Clear Both" title="CSS-Clear-Both" width="630" height="400" class="size-full wp-image-1380" /><p class="wp-caption-text">CSS Clear Both</p></div>
<h2>In Closing</h2>
<p>Understanding these three concepts of positioning, floating, and clearing is essential for applying structure to your website. You can find additional resources on a presentation I made for my Web Design 1 class at Parsons - <a href="http://dennisplucinik.github.com/Parsons/Slides/2012-03-30/">Adding Structure with CSS</a>.</p>
<p>If you have any more questions or need clarification on any of these concepts please let me know and I'll be happy to help.</p>
<p>Thanks for reading!</p>
<h3>Related Books</h3>
<p class="amazonBook"><iframe src="http://rcm.amazon.com/e/cm?t=denpluwebdes-20&#038;o=1&#038;p=8&#038;l=as1&#038;asins=B006PIW4IM&#038;ref=tf_til&#038;fc1=000000&#038;IS2=1&#038;lt1=_blank&#038;m=amazon&#038;lc1=607890&#038;bc1=000000&#038;bg1=FFFFFF&#038;f=ifr" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe></p>
<p class="amazonBook"><iframe src="http://rcm.amazon.com/e/cm?t=denpluwebdes-20&#038;o=1&#038;p=8&#038;l=as1&#038;asins=B002MV2Z4E&#038;ref=tf_til&#038;fc1=000000&#038;IS2=1&#038;lt1=_blank&#038;m=amazon&#038;lc1=607890&#038;bc1=000000&#038;bg1=FFFFFF&#038;f=ifr" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe></p>
<p class="amazonBook"><iframe src="http://rcm.amazon.com/e/cm?t=denpluwebdes-20&#038;o=1&#038;p=8&#038;l=as1&#038;asins=B005ES0DWI&#038;ref=tf_til&#038;fc1=000000&#038;IS2=1&#038;lt1=_blank&#038;m=amazon&#038;lc1=607890&#038;bc1=000000&#038;bg1=FFFFFF&#038;f=ifr" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe></p>
<p class="amazonBook"><iframe src="http://rcm.amazon.com/e/cm?t=denpluwebdes-20&#038;o=1&#038;p=8&#038;l=as1&#038;asins=B00457X7L8&#038;ref=tf_til&#038;fc1=000000&#038;IS2=1&#038;lt1=_blank&#038;m=amazon&#038;lc1=607890&#038;bc1=000000&#038;bg1=FFFFFF&#038;f=ifr" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe></p>
]]></content:encoded>
			<wfw:commentRss>http://www.dennisplucinik.com/blog/2012/04/30/learning-web-design-adding-structure-with-css-using-positioning-floating-clearing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.dennisplucinik.com/blog/2012/04/30/learning-web-design-adding-structure-with-css-using-positioning-floating-clearing/</feedburner:origLink></item>
		<item>
		<title>Learning Web Design: Adding Structure with CSS using Resets, Grid Frameworks, &amp; LESS CSS</title>
		<link>http://feedproxy.google.com/~r/SocialNetworkingEcommerceWebDesignDevelopment/~3/7k9V2bhSTcY/</link>
		<comments>http://www.dennisplucinik.com/blog/2012/04/30/learning-web-design-adding-structure-with-css-using-resets-grid-frameworks-less-css/#comments</comments>
		<pubDate>Tue, 01 May 2012 03:34:03 +0000</pubDate>
		<dc:creator>Dennis Plucinik</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Learning Web Design Series]]></category>

		<guid isPermaLink="false">http://www.dennisplucinik.com/blog/?p=1279</guid>
		<description><![CDATA[You may have learned how to write rudimentary HTML, or even have come from a background of creating websites using tables, or neither. In any case, you're at the point where you need to bring your site to life by &#8230; <a href="http://www.dennisplucinik.com/blog/2012/04/30/learning-web-design-adding-structure-with-css-using-resets-grid-frameworks-less-css/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>You may have learned how to write rudimentary HTML, or even have come from a background of creating websites using tables, or neither. In any case, you're at the point where you need to bring your site to life by giving it some structure. I will introduce several components of HTML &#038; CSS you'll need to know, and a few tricks as well. This is the first post of a two part series discussing how to add structure to your site with CSS. The second post can be found <a href="http://www.dennisplucinik.com/blog/2012/03/28/learning-web-design-adding-structure-with-css-part-2">here</a>.</p>
<p><span id="more-1279"></span></p>
<p>Before getting too excited about hand-coding up a storm, I want to point out a few best practices for lessening your workload. There are two things I would recommend doing. These are to 1) use a CSS reset, and 2) use a CSS framework. As I will soon elaborate on, a reset file removes default browser CSS styles, readying your canvas for pixel-perfect design. Additionally, a CSS framework will have already addressed a number of common needs in many websites. I will contrast and compare several of the available frameworks.</p>
<h2><a name="resets"></a>Resets</h2>
<p>If you are not already aware, each browser actually applies a whole bunch of default CSS to your HTML, even if you didn't write any CSS. This is why elements like <code>h1, h2, h3, h4, etc.</code> have different sizes. These are the default browser styles, and they are troublesome because they are different across browsers. </p>
<p>Imagine trying to create a pixel perfect design, but you can't rely on having consistent margins, padding, etc. This is the problem a CSS reset solves. A CSS reset is simply a CSS file which includes a collection of rules designed to remove all the default browser styles. Many reset files also provide additional helpful features like a .clearfix rule (which I will explain later).</p>
<p>I recommend using the <a href="http://necolas.github.com/normalize.css/">Normalize.css</a> file. It is the reset file included in the <a href="http://html5boilerplate.com/">HTML5 Boilerplate</a> which has become somewhat of a standard starting point for many developers.</p>
<p style="text-align: center">
<a href="http://necolas.github.com/normalize.css/">Normalize.css</a><br />
<a href="http://html5boilerplate.com/">HTML5 Boilerplate</a>
</p>
<p>All you need to do is click the 'Download' button on the home page, and copy/paste the text into a new file on your server. Make sure you include the file before any other styles to prevent <a href="http://www.dennisplucinik.com/blog/2012/02/13/learning-web-design-basic-css/#specificity">specificity</a> conflicts.</p>
<h2><a name="resetsFrameworksAndLESSCSS"></a>Grid Frameworks</h2>
<p>Frameworks are much more advanced than a simple reset file. Due to the overwhelming number of CSS frameworks available, it is likely you can find one that suits you. A couple of years ago, I drafted an article comparing the top 3 CSS frameworks since there were only a few notable ones at the time. Since then, the number of frameworks has exploded and especially so since the advent of the tablet era. Many frameworks now include support for responsive design and mobile friendly layouts (which I think is necessary). Also, note that when I say "framework" I mean "grid framework" meaning, one which assists with implementing grid-based designs.</p>
<p>I recently went through a round of reviewing available CSS frameworks to use on a new project and landed on one I hadn't used before: <a href="http://semantic.gs/">The Semantic Grid System</a>. This framework supported nearly all of our needs: fixed layouts, fluid layouts, max-width, nested columns, responsive design (there are examples for each of those on the site's home page). Also, it runs with SCSS (<a href="#lessCSS">see below</a>), which we had also chosen to use.</p>
<p>Other available grid frameworks:</p>
<p style="text-align: center">
<a href="http://semantic.gs/">The Semantic Grid System</a><br />
<a href="http://960.gs/">960.gs</a><br />
<a href="http://adapt.960.gs/">adapt.960.gs</a><br />
<a href="http://blueprintcss.org/">Blueprint</a><br />
<a href="http://goldengridsystem.com/">Golden Grid System</a>
</p>
<h2><a name="lessCSS"></a>LESS CSS</h2>
<p><a href="http://lesscss.org/">LESS CSS</a> is JavaScript utility that allows you to write more concise CSS. A simple example will suffice as a convincing reason to use it.</p>
<pre><code class="prettyprint linenums lang-css">#container {
  color: red;
}

#container.left .content {
  text-align: left;
}

#container.right .content {
  text-align: right;
}

#container .content span {
  padding: 10px;
}

#container .content span a {
  text-decoration: none
}
</code>
</pre>
<p class="preCaption">Original CSS</p>
<pre><code class="prettyprint linenums lang-css">#container {
  color: red;
  &#038;.left {
    text-align: left;
  }
  &#038;.right {
    text-align: right;
  }
  .content span {
    padding: 10px;
    a {
      text-decoration: none;
    }
  }
}
</code>
</pre>
<p class="preCaption">LESS CSS</p>
<p>In my opinion, the biggest benefit from a CSS extension script like LESS is the ability to nest rules. As stated on the website, there are also a few other super powerful features such as variables, mixins, operations, and functions. All of which ultimately allow you to actually write less code.</p>
<p>I almost never start a project without choosing either SASS or LESS. There's a good article comparing the two here: <a href="http://coding.smashingmagazine.com/2011/09/09/an-introduction-to-less-and-comparison-to-sass/">An Introduction To LESS, And Comparison To Sass</a>.</p>
<h2>Now on to Part 2...</h2>
<p>I originally intended to cover positioning, floating, and clearing in this post but it turned out to be a bit too long for my taste.</p>
<p>So, I've simply moved the next section into a post of its own:<br />
<a href="http://www.dennisplucinik.com/blog/2012/03/28/learning-web-design-adding-structure-with-css-part-2">Learning Web Design: Adding Structure with CSS using Positioning, Floating, &#038; Clearing</a>.</p>
<h3>Related Books</h3>
<p class="amazonBook"><iframe src="http://rcm.amazon.com/e/cm?t=denpluwebdes-20&#038;o=1&#038;p=8&#038;l=as1&#038;asins=B006PIW4IM&#038;ref=tf_til&#038;fc1=000000&#038;IS2=1&#038;lt1=_blank&#038;m=amazon&#038;lc1=607890&#038;bc1=000000&#038;bg1=FFFFFF&#038;f=ifr" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe></p>
<p class="amazonBook"><iframe src="http://rcm.amazon.com/e/cm?t=denpluwebdes-20&#038;o=1&#038;p=8&#038;l=as1&#038;asins=B002MV2Z4E&#038;ref=tf_til&#038;fc1=000000&#038;IS2=1&#038;lt1=_blank&#038;m=amazon&#038;lc1=607890&#038;bc1=000000&#038;bg1=FFFFFF&#038;f=ifr" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe></p>
<p class="amazonBook"><iframe src="http://rcm.amazon.com/e/cm?t=denpluwebdes-20&#038;o=1&#038;p=8&#038;l=as1&#038;asins=B005ES0DWI&#038;ref=tf_til&#038;fc1=000000&#038;IS2=1&#038;lt1=_blank&#038;m=amazon&#038;lc1=607890&#038;bc1=000000&#038;bg1=FFFFFF&#038;f=ifr" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe></p>
<p class="amazonBook"><iframe src="http://rcm.amazon.com/e/cm?t=denpluwebdes-20&#038;o=1&#038;p=8&#038;l=as1&#038;asins=B00457X7L8&#038;ref=tf_til&#038;fc1=000000&#038;IS2=1&#038;lt1=_blank&#038;m=amazon&#038;lc1=607890&#038;bc1=000000&#038;bg1=FFFFFF&#038;f=ifr" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe></p>
]]></content:encoded>
			<wfw:commentRss>http://www.dennisplucinik.com/blog/2012/04/30/learning-web-design-adding-structure-with-css-using-resets-grid-frameworks-less-css/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.dennisplucinik.com/blog/2012/04/30/learning-web-design-adding-structure-with-css-using-resets-grid-frameworks-less-css/</feedburner:origLink></item>
		<item>
		<title>Common Git Commands</title>
		<link>http://feedproxy.google.com/~r/SocialNetworkingEcommerceWebDesignDevelopment/~3/MnY8XZAaSOI/</link>
		<comments>http://www.dennisplucinik.com/blog/2012/03/17/common-git-commands/#comments</comments>
		<pubDate>Sat, 17 Mar 2012 20:16:19 +0000</pubDate>
		<dc:creator>Dennis Plucinik</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[Git]]></category>
		<category><![CDATA[Version Control]]></category>

		<guid isPermaLink="false">http://www.dennisplucinik.com/blog/?p=1254</guid>
		<description><![CDATA[These are some common and useful commands to help you along with using Git. This post will grow as I think of more to add for future reference. Also, feel free to recommend any that you think are relevant. Getting &#8230; <a href="http://www.dennisplucinik.com/blog/2012/03/17/common-git-commands/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>These are some common and useful commands to help you along with using Git. This post will grow as I think of more to add for future reference. Also, feel free to recommend any that you think are relevant. </p>
<p><span id="more-1254"></span></p>
<h2>Getting started with Git</h2>
<p>These are the absolute most common commands you'll use with Git. I've listed them in the order that you'd usually use them.<br />
<h3>Step 1 - Clone a Git repository</h3>
<p>What this means is that you are copying someone else's repository down to your computer. This is fundamental to the way Git works. Each time a Git repository is cloned, literally the entire repository including all change history is copied to your computer. This is why it's referred to as "distributed source control".</p>
<pre><code>git clone username@yourhost.com:path/to/repo/repo-name.git</code></pre>
<p>After you have cloned the repo, you need to <code>cd</code> into the repo folder</p>
<pre><code>cd repo-name</code></pre>
<h3>Step 2 - Save your changes</h3>
<p>Making and saving changes to your repo is a three step process. then.</p>
<p>First you need to edit the file(s) and save them. Next, to see which edited files are ready for add/commit/pushing, you check your repository status.</p>
<pre><code>git status</code></pre>
<p>Next, you need to add it (a.k.a. "stage" it)</p>
<pre><code>git add .</code></pre>
<p>You can also add individual files by using the filename instead of the "."</p>
<pre><code>git add filename.ext</code></pre>
<p>Next, commit the staged changes to your local repository copy</p>
<pre><code>git commit -m "Made XYZ changes"</code></pre>
<p>The <code>-m</code> flag indicates that you want to add a commit message, which goes inside quotes</p>
<p>Lastly, since you have so far only been committing changes to the repository on your local computer, you'll need to push all those commits back up to the master repository.</p>
<pre><code>git push</code></pre>
<p>It's important to understand these fundamental concepts of Git before getting started. However, don't be afraid/shy/embarrassed to ask coworkers, or even the community (i.e., this blog) for help. Things can certainly get more complex than these few commands. Fortunately, there is a user-friendly-ish <a href="http://schacon.github.com/git/git.html">Git manual</a> to help if you can't find a live person.</p>
<h2>Merging conflicts</h2>
<p>If get the message after trying to pull "Automatic merge failed; fix conflicts and then commit the result.", use this to launch your mergetool</p>
<pre><code>git mergetool</code></pre>
<h2>Merging branches</h2>
<p>In this scenario imagine you've created a branch locally to work in isolation and you want to merge your changes back into the master branch. What you need to to is simply checkout the branch you want to merge your changes into. Then run git merge to define which branch to merge into the branch you just checked out.</p>
<pre><code>git checkout master
git merge branchname</code></pre>
<p><a href="http://git-scm.com/book/en/Git-Branching-Basic-Branching-and-Merging">More reading</a></p>
<h2>Add color to UI</h2>
</p>
<pre><code>git config color.ui true</code></pre>
<h2>Diff files against head/remote/origin/branch/etc.</h2>
<p>For comparing a local file against the latest in the repository (<a href="http://deadlytechnology.com/web-development/compare-versions-file-in-git/">source</a>)</p>
<pre><code>git difftool HEAD~50 path/to/file</code></pre>
<h2>Get info about your repository</h2>
<p>This is where you can find out information about your repository including branch and origin settings.</p>
<pre><code>vim .git/config</code></pre>
<h2>Checkout a tracked remote branch</h2>
<p>Remember to run <code>git fetch</code> first or you might get this error: "<code>fatal: git checkout: updating paths is incompatible with switching branches</code>". Using -b will create a new branch named "haml" linked to the remote branch of the same name.<br /><a href="http://gitready.com/intermediate/2009/01/09/checkout-remote-tracked-branch.html">additional reading [gitready.com]</a></p>
<pre><code>git fetch
git checkout --track -b haml origin/haml</code></pre>
<p><a href="http://stackoverflow.com/questions/424071/list-all-the-files-for-a-commit-in-git">http://stackoverflow.com/questions/424071/list-all-the-files-for-a-commit-in-git</a></p>
<h2>Show all remote branches available for checkout</h2>
<p>This is useful for finding out the exact branch name when checking out a new remote branch.<br /><a href="http://gitready.com/intermediate/2009/01/09/checkout-remote-tracked-branch.html">additional reading [gitready.com]</a></p>
<pre><code>git remote show origin</code></pre>
<h2>View unpushed Git Commits</h2>
<p>This is the only way I know of seeing the difference in state between your local repo and the remote. If you want to see the files of each Git commit, check out the command below.</p>
<pre><code>git log origin/master..HEAD</code></pre>
<h2>Show files changed in a Git commit</h2>
<p>Replace the string below (eeeb63e29ff62c0f06bdcc05588e941a2ff3467d) with your own commit id.</p>
<pre><code>git show eeeb63e29ff62c0f06bdcc05588e94</code></pre>
<p>also, if you want to only see a list of file names for each commit:</p>
<pre><code>git show --pretty="format:" --name-only eeeb63e29ff62c0f06bdcc05588e94</code></pre>
<p><!--</p>
<h2>Setting up P4Merge as your mergetool</h2>
<p>This will replace your default mergetool with the Perforce merge application</p>
<p>--></p>
]]></content:encoded>
			<wfw:commentRss>http://www.dennisplucinik.com/blog/2012/03/17/common-git-commands/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.dennisplucinik.com/blog/2012/03/17/common-git-commands/</feedburner:origLink></item>
		<item>
		<title>Learning Web Design: Basic JavaScript</title>
		<link>http://feedproxy.google.com/~r/SocialNetworkingEcommerceWebDesignDevelopment/~3/TvENm8VFw_A/</link>
		<comments>http://www.dennisplucinik.com/blog/2012/02/23/learning-web-design-basic-javascript/#comments</comments>
		<pubDate>Fri, 24 Feb 2012 05:48:27 +0000</pubDate>
		<dc:creator>Dennis Plucinik</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Learning Web Design Series]]></category>

		<guid isPermaLink="false">http://www.dennisplucinik.com/blog/?p=1183</guid>
		<description><![CDATA[JavaScript is the most popular language in the world [citation]. It is the modern way to add dynamic behavior and interactivity to web pages. This article assumes you know nothing about JavaScript. This article is a precursor to the Intro &#8230; <a href="http://www.dennisplucinik.com/blog/2012/02/23/learning-web-design-basic-javascript/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>JavaScript is the most popular language in the world <sup>[<a href="http://www.quora.com/Is-JavaScript-the-most-popular-programming-language-in-the-world">citation</a>]</sup>. It is the modern way to add dynamic behavior and interactivity to web pages. This article assumes you know nothing about JavaScript. This article is a precursor to the <a href="http://dennisplucinik.github.com/Parsons/Slides/2012-02-24/" alt="Intro to JavaScript">Intro to JavaScript</a> lesson in my <a href="http://dennisplucinik.github.com/Parsons" alt="Web Design 1">Web Design 1</a> class at <a href="http://www.newschool.edu/parsons/" alt="Parsons New School for Design">Parsons New School for Design</a>. I will be covering a few fundamental aspects of JavaScript and then promptly recommending that you just use jQuery (at least to start).</p>
<p><span id="more-1183"></span></p>
<p>At the end of this article you should have at least an elementary understanding of:</p>
<ul>
<li>What is JavaScript</li>
<li>How to use JavaScript on your website</li>
<li>Why you should just use jQuery</li>
</ul>
<h2>What is JavaScript?</h2>
<p>JavaScript is an <a href="http://en.wikipedia.org/wiki/Object-oriented_programming">object-oriented</a>, <a href="http://www.vanguardsw.com/dshelp/dsc00195.htm">interpreted</a> programming language that runs in the browser<sup>[<a href="#sup1" alt="sup1">1</a>]</sup>. It contains all the standard features of a programming language such as variables, functions, if/then conditionals, loops, etc.</p>
<p>There are many unique parts of JavaScript (good parts and bad parts). The bad parts mostly are at fault for its old reputation of being an amateur, and annoying toy language. To be sure, JavaScript can be very elegant and quite capable.</p>
<p>One interesting component of the language that you'll need to know is that it relies heavily on the environment in which it runs. I mentioned it "runs in the browser" which means, the browser parses it by opening your JavaScript like a text file, and translating it line by line into instructions that do things on the page like animations and rollovers. This is interesting because JavaScript itself can't do much without the presence of the Document Object Model (DOM). The DOM is the object representation of the HTML file the browser had to parse before executing your JavaScript.</p>
<p>JavaScript's interactions with the DOM are event-based, which means that your script can listen to what the browser is doing (and also what the user is doing on the browser, like clicking links, etc.)</p>
<p>An example of the event-based nature of JavaScript is how most well-constructed scripts will wait until the HTML has been fully parsed and the DOM has been fully built before running. This prevents errors like if your script depends on a certain part of the DOM being available (like a footer) and it has not been built at the time the script runs because you put your script in the &lt;head&gt; section of your site (before that footer loaded).</p>
<p>The code might look something like this:</p>
<pre><code class="prettyprint lang-javascript linenums">&lt;script&gt;
<span class="highlightee id-window">window</span>.<span class="highlightee id-onload">onload</span> = <span class="highlightee id-function">function () {</span>
<span class="highlightee id-function">  alert('page is loaded!');</span>
<span class="highlightee id-function">};</span>
&lt;/script&gt;
</code>
</pre>
<p class="preCaption">Waiting until the page loads to execute JavaScript.</p>
<p>What's happening is that <a href="javascript:void(0);" class="highlighter" data-highlightee-id="window"><code class="inline">window</code></a> is referring to the page's root object. The root object is always the "window" object, and everything is a child of it. When the browser finishes loading the window object, it calls the <a href="javascript:void(0);" class="highlighter" data-highlightee-id="onload"><code class="inline">onload</code></a> method which we have assigned our <a href="javascript:void(0);" class="highlighter" data-highlightee-id="function"><code class="inline">function</code></a> to.</p>
<p>In plan English our script reads like this:</p>
<pre><code>"When the window finishes loading, run this function."</code></pre>
<h2>How to use JavaScript on your website?</h2>
<p>JavaScript can be included on your website in several ways. </p>
<p>It can be included via an external file,</p>
<pre><code class="prettyprint lang-javascript linenums">&lt;script type='text/javascript' src='scriptName.js'&gt;&lt;/script&gt;
</code>
</pre>
<p>or by an embedded script block,</p>
<pre><code class="prettyprint lang-javascript linenums">&lt;script type='text/javascript'&gt;
//...script body here...
&lt;/script&gt;
</code>
</pre>
<p>or attached to HTML elements via inline event handlers,</p>
<pre><code class="prettyprint lang-javascript linenums">&lt;a href='link.html' onclick='alert("hello!");return false;'&gt;&lt;/a&gt;
</code>
</pre>
<p>or injected into the href attribute of an anchor tag,</p>
<pre><code class="prettyprint lang-javascript linenums">&lt;a href='javascript:alert("oh yeah");return false;'&gt;&lt;/a&gt;
</code>
</pre>
<p>It is important to understand how the browser parses JavaScript in order to know how to include it correctly. As soon as the browser parser encounters any JavaScript, everything else stops until it is finished executing. This means if you include an external file at the top of the HTML document (e.g., in the head), none of the rest of the page will finish loading and you will see a blank white page until it is finished. This could potentially end up being quite a long time depending on how many scripts you've included, and how large the files are.</p>
<p>The best practice is based both on form and function. By 'form', I mean that the user is primarily concerned with the time it takes from pressing 'enter' and being able to interact with the page. This is referred to as 'time to interaction.' If we don't block the page from rendering by putting script includes at the top of the page, the page will both appear to load more quickly and be partially interactive quicker. By 'function', I mean that if a script relies on certain parts of the HTML to be available, and at the time the script executes they have not loaded and thus are not available, the script will fail.</p>
<p>Because of those two reasons, the best practice for including JavaScript on your site is to simply include it at the bottom of the page immediately before the &lt;/body&gt; tag.</p>
<h2>Why you should just use jQuery</h2>
<p>JavaScript is itself an insanely confusing and technically daunting language. There are many ways to perform the same task, and there are components of the language that are just plain dangerous (e.g., <a href="http://blogs.msdn.com/b/ericlippert/archive/2003/11/01/53329.aspx">eval</a>). Because of these things, it turns most traditional developers away. Not to mention the myriad variations of browser implementations of the specification.</p>
<p>Fortunately, jQuery alleviates most if not all of these problems and more. jQuery is a library written in JavaScript that makes JavaScript infinitely easier and more enjoyable to write. Let's look at an example.</p>
<p>Core JavaScript:</p>
<pre><code class="prettyprint lang-javascript linenums">var header = document.getElementById('header');
</code>
</pre>
<p>...vs. jQuery:</p>
<pre><code class="prettyprint lang-javascript linenums">var header = $('#header');
</code>
</pre>
<p>Not impressed? How about another example.</p>
<p>Core JavaScript:</p>
<pre><code class="prettyprint lang-javascript linenums">var header = document.getElementById('header');

for (var x = 100; x--;) {
  header.setAttribute('opacity', x/100);
}
</code>
</pre>
<p>...vs. jQuery:</p>
<pre><code class="prettyprint lang-javascript linenums">$('#header').fadeOut();
</code>
</pre>
<p>Yea, I thought that last one would catch your eye - and that's a super simple example. Don't even get me started about doing event delegation or cross browser Ajax calls in core JavaScript. jQuery reduces the amount of code you have to write to almost nothing. The caveat here is that you don't have to understand what's happening behind the scenes in order to use jQuery.</p>
<p>So why would I recommend learning JavaScript by using a library that you can use without having to actually understand core JavaScript? Because it lowers the barrier to entry for inexperienced developers and makes using JavaScript approachable and fun. From there on in hopefully you get hooked and then don't realize what a slippery slope you've landed on before it's too late. </p>
<p>Seriously though, I don't like unapproachable languages and I found myself more interested in learning about core JavaScript once I felt comfortable with jQuery. If that method doesn't work for you, then by all means dive head first into the 624,000,000 Google search results for "javascript."</p>
<h2>In closing</h2>
<p>To be sure, there is a lot to learn about the language including syntax, data types, scoping, events, the DOM API and many more. I will be writing more articles about JavaScript and jQuery but for the time being, I would recommend getting acquainted with the three links listed below. </p>
<p>Thanks for reading!</p>
<h3>Helpful Articles</h3>
<p><a href="http://javascript.crockford.com/" alt="Douglas Crockford's Javascript">Douglas Crockford's Javascript</a><br />
<a href="http://www.quirksmode.org/js/intro.html" alt="quirksmode">Quirksmode - General [JavaScript] Introduction</a><br />
<a href="http://www.w3schools.com/js/js_intro.asp">w3schools.com - JavaScript Introduction</a></p>
<h3>Related Books</h3>
<p class="amazonBook"><iframe src="http://rcm.amazon.com/e/cm?t=denpluwebdes-20&#038;o=1&#038;p=8&#038;l=as1&#038;asins=0596805527&#038;ref=qf_sp_asin_til&#038;fc1=000000&#038;IS2=1&#038;lt1=_blank&#038;m=amazon&#038;lc1=0000FF&#038;bc1=000000&#038;bg1=FFFFFF&#038;f=ifr" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe></p>
<p class="amazonBook"><iframe src="http://rcm.amazon.com/e/cm?t=denpluwebdes-20&#038;o=1&#038;p=8&#038;l=as1&#038;asins=0596517742&#038;ref=qf_sp_asin_til&#038;fc1=000000&#038;IS2=1&#038;lt1=_blank&#038;m=amazon&#038;lc1=0000FF&#038;bc1=000000&#038;bg1=FFFFFF&#038;f=ifr" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe></p>
<p class="amazonBook"><iframe src="http://rcm.amazon.com/e/cm?t=denpluwebdes-20&#038;o=1&#038;p=8&#038;l=as1&#038;asins=0596806752&#038;ref=qf_sp_asin_til&#038;fc1=000000&#038;IS2=1&#038;lt1=_blank&#038;m=amazon&#038;lc1=0000FF&#038;bc1=000000&#038;bg1=FFFFFF&#038;f=ifr" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe></p>
<p class="amazonBook"><iframe src="http://rcm.amazon.com/e/cm?t=denpluwebdes-20&#038;o=1&#038;p=8&#038;l=as1&#038;asins=059680279X&#038;ref=qf_sp_asin_til&#038;fc1=000000&#038;IS2=1&#038;lt1=_blank&#038;m=amazon&#038;lc1=0000FF&#038;bc1=000000&#038;bg1=FFFFFF&#038;f=ifr" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe>
</p>
<p><a name="sup1"></a><br />
[1] JavaScript can also be run on the server.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dennisplucinik.com/blog/2012/02/23/learning-web-design-basic-javascript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.dennisplucinik.com/blog/2012/02/23/learning-web-design-basic-javascript/</feedburner:origLink></item>
		<item>
		<title>Learning Web Design: Basic CSS</title>
		<link>http://feedproxy.google.com/~r/SocialNetworkingEcommerceWebDesignDevelopment/~3/6hHBFsqw7to/</link>
		<comments>http://www.dennisplucinik.com/blog/2012/02/13/learning-web-design-basic-css/#comments</comments>
		<pubDate>Tue, 14 Feb 2012 01:57:47 +0000</pubDate>
		<dc:creator>Dennis Plucinik</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Learning Web Design Series]]></category>

		<guid isPermaLink="false">http://www.dennisplucinik.com/blog/?p=1088</guid>
		<description><![CDATA[CSS is the modern way to add style to an HTML web page. There are only a few fundamental concepts you need to grasp before getting started with CSS. In order of importance: How to connect CSS to HTML elements &#8230; <a href="http://www.dennisplucinik.com/blog/2012/02/13/learning-web-design-basic-css/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>CSS is the modern way to add style to an HTML web page. There are only a few fundamental concepts you need to grasp before getting started with CSS. In order of importance: </p>
<ol>
<li>How to connect CSS to HTML elements</li>
<li>Specificity (order of importance)</li>
<li>The box model</li>
</ol>
<p><span id="more-1088"></span></p>
<h2><a name="connectCSStoHTML"></a>How to connect CSS to HTML elements</h2>
<p>There are three ways to match a CSS rule to an HTML element. They are by tag, class, or id. Here is an example of each.</p>
<pre><code class="prettyprint lang-html linenums">&lt;div&gt;this text will be blue&lt;/div&gt;
&lt;div class="mySpecialClass"&gt;this text will be green&lt;/div&gt;
&lt;div id="myUniqueId"&gt;this class will be red&lt;/div&gt;
</code>

<code class="prettyprint linenums lang-css">&lt;style&gt;
/* tag selector */
div {
  color: blue;
}

/* class selector */
div.mySpecialClass {
  color: green;
}

/* id selector */
div<em style="display: none;">\</em>#myUniqueId {
  color: red;
}
&lt;/style&gt;
</code>
</pre>
<p class="preCaption">Using a tag, class, and id selector</p>
<p>The major point here is how you identify elements in CSS. A rule defined for "div" will apply that style to <em>all</em> divs. A rule defined with "." (period) will apply that rule to all HTML elements that include that value in their class attribute. The same is for "#" (pound) which applys to HTML elements with the corresponding id attribute.</p>
<p>One important thing to remember is id's are unique identifiers and so there can only be one per page. You may however, use the same class multiple times per page. Elements can also have multiple classes per element (e.g., &lt;div class="first orange grid"&gt;>).</p>
<h3>Chaining</h3>
<p>A powerful feature of CSS is the ability to chain multiple selectors together. By doing this you can match different elements based on their hierarchical order in the HTML. For example, check out the following rules and how they are applied.</p>
<pre><code class="prettyprint lang-css linenums"><span title="applies to all divs that are children of a div">div div { color: red; }</span>
<span title="applies to all elements with a class value of 'someClass' that are also children of a div">div .someClass { color: red; }</span>
<span title="applies to a div with the id 'someID'">div<em style="display: none;">\</em>#someID {color: red; }</span>
</code>
</pre>
<p class="preCaption">Showing simple parent / child relationships</p>
<p><em>NOTICE the space between the selectors</em>. This indicates that the latter selector is a child of the former. NOT including a space indicates that the selectors apply to the same element. For example, the following example shows a CSS rule that matches the given HTML snippet using a tag, class, AND id selector.</p>
<pre><code class="prettyprint lang-html linenums">&lt;div id="myOneAndOnly" class="headline"&gt;Hold me&lt;/div&gt;
</code>

<code class="prettyprint lang-css linenums">
div<em style="display: none;">\</em>#myOneAndOnly.headline {
  color: red;
}
</code>
</pre>
<p class="preCaption">Chaining a tag, id, and class selector</p>
<h2><a name="specificity"></a>Specificity</h2>
<p>Now that you know how ids and classes work, you'll need to understand how the browser determines which rules are more important than others. This level of importance given to each selector is called "specificity". By "specificity" we mean literally "how specifically a CSS rule can target HTML elements." The easiest way to think about this is to consider how many elements a single selector will effect.</p>
<ul>
<li>a <strong>tag</strong> selector will target <strong>every single tag</strong> (a LOT of elements)</li>
<li>a <strong>class</strong> selector will target <strong>only a subset of tags</strong> (quite a few less)</li>
<li>an <strong>id</strong> selector will only target <strong>one element per page</strong> (exactly one)</li>
</ul>
<p>Let's start with the basic premise that that the lowest level of specificity is order of appearance. This means if we have multiple rules for the same element, only the last one will be applied.</p>
<pre><code class="prettyprint lang-html linenums">&lt;body&gt;
&lt;div class="things_I_love" id="NewYork" &gt;This text will be red&lt;/div&gt;
&lt;/body&gt;
</code>

<code class="prettyprint lang-css linenums">div { color: green; }
div { color: black; }
div { color: red; } /* <-- this rule wins because it's last */
</code>
</pre>
<p class="preCaption">Lowest specificity: order of appearance</p>
<p>Next up the specificity ladder are tags, then classes, then ids in order of increasing specificity. This means, if we take the previous example, and we want to make the text green, we just need to increase the specificity of that rule. We can do this by adding more selectors or by using a different selector with higher specificity.</p>
<pre><code class="prettyprint lang-html linenums">&lt;body&gt;
&lt;div class="things_I_love" id="NewYork"&gt;This text will be green&lt;/div&gt;
&lt;/body&gt;
</code>

<code class="prettyprint lang-css linenums">body div { color: green; } /* <-- this rule wins */
div { color: black; }
div { color: red; }
</code>
</pre>
<p class="preCaption">Level 1 specificity = tag selectors</p>
<h3>Calculating specificity</h3>
<p>Another way to quickly figure out how your CSS is going to get parsed is to calculate a specificity score. Following the math in this graphic should cover you for about 99% of the time. Basically what we're doing is applying an order of magnitude multiplier to each of the three selectors. This is because for each of the three tiers: tag, class, &#038; id, even using one selector from a higher tier will trump any number of lower tier selectors. For example, you could have 50 class selectors trying to set your text color to red, but if another rule uses even one id selector to set the color to blue, blue will win.</p>
<div id="attachment_1125" class="wp-caption aligncenter" style="width: 625px"><a href="http://www.dennisplucinik.com/blog/wp-content/uploads/2012/02/specificity.gif"><img src="http://www.dennisplucinik.com/blog/wp-content/uploads/2012/02/specificity.gif" alt="CSS Specificity Calculation Diagram / Infographic" title="CSS Specificity Calculation Diagram / Infographic" width="615" height="1806" class="size-full wp-image-1125" style="border: 5px solid #ccc; box-shadow: 0 1px 6px #555;" /></a><p class="wp-caption-text">CSS Specificity Calculation Diagram</p></div>
<h3>More resources explaining specificity</h3>
<p>If you're still stumped, here are some other resources to try and explain this concept differently (one example uses Star Wars characters to explain the ranking!). Also, you'll find that I drew a lot of inspiration from these posts, especially the one from css-tricks. My diagram is essentially a simplified version of theirs.</p>
<ul>
<li><a href="http://css-tricks.com/specifics-on-css-specificity/">Specifics on CSS Specificity</a></li>
<li><a href="http://coding.smashingmagazine.com/2007/07/27/css-specificity-things-you-should-know/">CSS Specificity: Things You Should Know</a></li>
<li><a href="http://net.tutsplus.com/tutorials/html-css-techniques/quick-tip-understanding-css-specificity/">Quick Tip: Understanding CSS Specificity</a></li>
<li><a href="http://www.w3.org/TR/css3-selectors/#specificity">Calculating a selector's specificity (W3C)</a></li>
</ul>
<h2><a name="boxModel"></a>The Box Model</h2>
<p>This diagram illustrates the relationship between the primary CSS properties of all HTML elements. It is important to understand this model since you will regularly need to calculate how much total space your elements can take up on the page. For instance, in the element illustrated below if the width was set to 300px, and padding, border, and width were all each 10px, the total width taken up by the element would be 360px (300 + (10 * 2) + (10 * 2) + (10 * 2)).</p>
<div id="attachment_1159" class="wp-caption aligncenter" style="width: 625px"><a href="http://www.dennisplucinik.com/blog/wp-content/uploads/2012/02/box_model1.gif"><img src="http://www.dennisplucinik.com/blog/wp-content/uploads/2012/02/box_model1.gif" alt="CSS Box Model Diagram" title="CSS Box Model Diagram" width="615" height="500" class="size-full wp-image-1159" style="border: 5px solid #ccc; box-shadow: 0 1px 6px #555;" /></a><p class="wp-caption-text">CSS Box Model Diagram</p></div>
<blockquote cite="http://www.w3.org/TR/CSS2/box.html"><p>The CSS box model describes the rectangular boxes that are generated for elements in the document tree and laid out according to the visual formatting model. <cite>- <a href="http://www.w3.org/TR/CSS2/box.html">W3C</a></cite></p></blockquote>
<p>Before beginning to code a website, we need visually break apart the design into rectangular sections. This process used to be done in the context of an HTML table since CSS support wasn't widespread among browsers at the time. Nowadays, we can think in the context of pure CSS based layouts. Ultimately this gives us more freedom over the layout while retaining the semantic value of the HTML document.</p>
<p>If we take this website, we can clearly see how the sections break down into rectangles. Each of the rectangles will follow the rules of the box model.</p>
<div id="attachment_1174" class="wp-caption aligncenter" style="width: 610px"><img src="http://www.dennisplucinik.com/blog/wp-content/uploads/2012/02/css_layout.gif" alt="CSS Layout illustrating use of the box model" title="CSS Layout illustrating use of the box model" width="600" height="426" class="size-full wp-image-1174" /><p class="wp-caption-text">CSS Layout illustrating use of the box model</p></div>
<p>In the next post, I will explain how we use positioning and floats to bring structure to our markup. </p>
<h2>In Conclusion</h2>
<p>If you have managed to follow along until this point, congratulations! You have a good enough understanding of CSS to move on to bigger and better things. Yes I admit it hasn't been too sexy so far but trust me once we get to positioning, floats, and cross-browser quirks, things are really going to start heating up <img src='http://www.dennisplucinik.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<h3>Helpful Articles</h3>
<p><a href="http://sixrevisions.com/css/20_websites_learn_master_css/">20 Websites To Help You Learn and Master CSS</a><br />
<a href="http://meyerweb.com/">meyerweb.com</a></p>
<h3>Related Books</h3>
<p class="amazonBook"><iframe src="http://rcm.amazon.com/e/cm?t=denpluwebdes-20&#038;o=1&#038;p=8&#038;l=as1&#038;asins=0321658531&#038;ref=qf_sp_asin_til&#038;fc1=000000&#038;IS2=1&#038;lt1=_blank&#038;m=amazon&#038;lc1=0000FF&#038;bc1=000000&#038;bg1=FFFFFF&#038;f=ifr" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe></p>
<p class="amazonBook"><iframe src="http://rcm.amazon.com/e/cm?t=denpluwebdes-20&#038;o=1&#038;p=8&#038;l=as1&#038;asins=1593272863&#038;ref=qf_sp_asin_til&#038;fc1=000000&#038;IS2=1&#038;lt1=_blank&#038;m=amazon&#038;lc1=0000FF&#038;bc1=000000&#038;bg1=FFFFFF&#038;f=ifr" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe></p>
<p class="amazonBook"><iframe src="http://rcm.amazon.com/e/cm?t=denpluwebdes-20&#038;o=1&#038;p=8&#038;l=as1&#038;asins=0596527330&#038;ref=qf_sp_asin_til&#038;fc1=000000&#038;IS2=1&#038;lt1=_blank&#038;m=amazon&#038;lc1=0000FF&#038;bc1=000000&#038;bg1=FFFFFF&#038;f=ifr" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe></p>
<p class="amazonBook"><iframe src="http://rcm.amazon.com/e/cm?t=denpluwebdes-20&#038;o=1&#038;p=8&#038;l=as1&#038;asins=0321719638&#038;ref=qf_sp_asin_til&#038;fc1=000000&#038;IS2=1&#038;lt1=_blank&#038;m=amazon&#038;lc1=0000FF&#038;bc1=000000&#038;bg1=FFFFFF&#038;f=ifr" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe></p>
]]></content:encoded>
			<wfw:commentRss>http://www.dennisplucinik.com/blog/2012/02/13/learning-web-design-basic-css/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.dennisplucinik.com/blog/2012/02/13/learning-web-design-basic-css/</feedburner:origLink></item>
		<item>
		<title>Learning Web Design – Series Introduction</title>
		<link>http://feedproxy.google.com/~r/SocialNetworkingEcommerceWebDesignDevelopment/~3/wcpPKTel89g/</link>
		<comments>http://www.dennisplucinik.com/blog/2012/02/02/learning-web-design-series-introduction/#comments</comments>
		<pubDate>Thu, 02 Feb 2012 20:00:04 +0000</pubDate>
		<dc:creator>Dennis Plucinik</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[Learning Web Design Series]]></category>

		<guid isPermaLink="false">http://www.dennisplucinik.com/blog/?p=1061</guid>
		<description><![CDATA[Starting January 27th I started teaching Web Design 1 at Parsons The New School for Design in New York City. I will be producing quite a bit of content in the next few months and I'll use this blog to &#8230; <a href="http://www.dennisplucinik.com/blog/2012/02/02/learning-web-design-series-introduction/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Starting January 27th I started teaching Web Design 1 at Parsons The New School for Design in New York City. I will be producing quite a bit of content in the next few months and I'll use this blog to expound on the in-class discussions.</p>
<p>You may follow along via the course website:<br />
<a href="http://dennisplucinik.github.com/Parsons">http://dennisplucinik.github.com/Parsons</a></p>
<p>You can access the syllabus, all the slides and additional resources as well.</p>
<p><span id="more-1061"></span></p>
<h2>Topics I Will Cover</h2>
<p>Here is a short synopsis of the topics I'll be covering in the class in order of occurrence.</p>
<ul>
<li>History of the web and HTML
<li>Website fundamentals
<li>HTML basics
<li>CSS basics
<li>JavaScript (i.e., jQuery) basics
<li>HTML5
<li>CSS3
<li>Intermediate JavaScript
<li>PHP &#038; MySQL
</ul>
<p>Each week I assign a few articles to read and an activity (usually a tutorial or simple task related to the week's content). I also briefly recap the previous week's reading assignment at the beginning of each class. In addition to the in-class discussion I plan to write a more well thought out response of my own to each reading here on this blog. So to my friends who want to participate in this discussion outside of class, this is the appropriate venue. The class discussion will remain private although any of my students are welcome to engage with me here as well.</p>
<p>Hopefully my conversations here will help spark new ideas in class and vice versa. If you have any thoughts please let me know in the comments below.</p>
<p>Also, if you want real time updates when I post new articles, <a href="http://www.twitter.com/dennisplucinik">follow me on Twitter at @dennisplucinik</a>.</p>
<p>Thanks for reading!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.dennisplucinik.com/blog/2012/02/02/learning-web-design-series-introduction/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.dennisplucinik.com/blog/2012/02/02/learning-web-design-series-introduction/</feedburner:origLink></item>
	</channel>
</rss>
