<?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:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">

    <channel>
    
    <title>DaBrook Webucation Blog</title>
    <link>http://dabrook.org/blog/</link>
    <description>Updates on events, tutorials, and review from webucator, Zac Gordon.</description>
    <dc:language>en</dc:language>
    <dc:creator>zgordon@dabrook.org</dc:creator>
    <dc:rights>Copyright 2012</dc:rights>
    <dc:date>2012-02-22T22:16:52+00:00</dc:date>
    <admin:generatorAgent rdf:resource="http://expressionengine.com/" />
    

    <atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/dabrook-webucation-blog" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="dabrook-webucation-blog" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
      <title><![CDATA[2012 Responsive Theme]]></title>
      <link>http://dabrook.org/blog/2012-responsive-theme</link>
      <guid>http://dabrook.org/blog/2012-responsive-theme#When:22:16:52Z</guid>
      <description><![CDATA[<p>
	This year&#39;s redesign is a special one. &nbsp;For the first time the site is really mobile friendly and responsive at that. &nbsp;This is also the first time that DaBrook does not have current course materials, since it&#39;s my first year since starting DaBrook not being in a classroom. &nbsp;</p>
<p>
	Due to the shift in my work, the focus of dabrook is now more on <a href="http://dabrook.org/web-design-curriculum">web design curriculum</a> and resources for other web educators than it is for current web students. &nbsp;Old courses are still archived, and online courses with quizes, assignments, and badges will be coming soon, but I still have to refine the mobile experience a bit more before I start adding more functionality to the site.</p>
<p>
	For the records, here is what last year&#39;s design looked like, with it&#39;s <a href="http://dabrook.org/blog/free-graffiti-desktop-wallpaper">2011 Student Web Conference insipired graffiti background</a>.</p>
<p>
	<img alt="2011 DaBrook Site Design" src="http://dabrook.org/assets/images/uploads/Webucation-resources-and-events---DaBrook_org.png" style="width: 600px; " /></p>
<p>
	And here is what we have for 2012.</p>
<p>
	<img alt="" src="http://dabrook.org/assets/images/uploads/2012-dabrook-responsive-design.png" style="width: 392px; height: 315px; " /></p>
<p>
	The new look is a little more mature, since it&#39;s catered to web educators. &nbsp;The header of the site is also now sporting a rather large advertisement for the <a href="http://studentwebhosting.co">Student Web Hosting Company</a>, which is a for-profit partner of DaBrook.org.</p>
<p>
	I tihnk that the new design met my goals to make DaBrook look a bit more professional than fun and have more static resources for educations like curriculum, as opposed to current course content.</p>
]]></description>
      <dc:subject><![CDATA[News,]]></dc:subject>
      <dc:date>2012-02-22T22:16:52+00:00</dc:date>
    </item>

    <item>
      <title><![CDATA[Careers in the Field of Web Design]]></title>
      <link>http://dabrook.org/blog/careers-in-the-field-presentation-to-clarksburg-web-students</link>
      <guid>http://dabrook.org/blog/careers-in-the-field-presentation-to-clarksburg-web-students#When:16:12:03Z</guid>
      <description><![CDATA[<p>
	Big thanks to Mr. Stephen Sell for inviting me to come talk to his web design students at Clarksburg High School. &nbsp;After discussing a few possible topics together, I settled on tackling a few topics in one presentation:</p>
<ol>
	<li>
		Steps in building a web site</li>
	<li>
		Jobs in the field</li>
	<li>
		How much money you can make</li>
	<li>
		Work in the field I have done</li>
</ol>
<p>
	I think it all came together well in the presentation below:</p>
<script src="http://speakerdeck.com/embed/4ee23265f31302005000fc84.js"></script><p>
	I have to say that since taking a hiatus from the classroom, I have enjoyed the break. &nbsp;Teaching is a lot of work. But it is also so rewarding! Being around young people excited about doing creative work on the web is one of the best feelings ever. &nbsp;Thanks again to Mr. Sell and the web students at Clarksburg High School for having me!&nbsp;</p>
]]></description>
      <dc:subject><![CDATA[Events, In the Classroom,]]></dc:subject>
      <dc:date>2011-12-09T16:12:03+00:00</dc:date>
    </item>

    <item>
      <title><![CDATA[Roadmap for Free Interact Courses]]></title>
      <link>http://dabrook.org/blog/roadmap-for-free-interact-courses-on-dabrook</link>
      <guid>http://dabrook.org/blog/roadmap-for-free-interact-courses-on-dabrook#When:21:15:22Z</guid>
      <description><![CDATA[<p>
	Since leaving the classroom in June of 2011, I have been thinking a lot about what to do with the course offerings on DaBrook. &nbsp;Of course, I will archive and keep available the previous classes I have taught, but I want the courses to reflect and help me work towards my next big webucation goal: running a four-year, higher-ed web program. &nbsp;&nbsp;</p>
<p>
	I decided that the best thing to do would be create a series of free courses based on the Web Standards Project Education Task Force <a href="http://interact.webstandards.org">Interact Curriculum</a>. &nbsp;The Interact Curriculum is an open-source curriculum designed to provide web programs with a solid foundation for designing web programs and courses.</p>
<p>
	Starting in January of 2012 I will be archiving my old courses and releasing the following ones below. &nbsp;More details about the courses will follow, &nbsp;but I wanted to take a moment and release the roadmap I will be following for making these courses available.</p>
<p>
	<img alt="Roadmap for Interact Courses on DaBrook" src="http://dabrook.org/assets/images/uploads/Screen shot 2011-11-15 at 4_12_44 PM.png" style="width: 680px; height: 317px; " /></p>
<p>
	<em>Note 1: </em>The CMS courses are not ones that I will developing and are not part of the Interact framework.<br />
	<em>Note 2: </em>There is also a roadmap for a UX Designer track that is not shown above.</p>
]]></description>
      <dc:subject><![CDATA[Freebies, In the Classroom,]]></dc:subject>
      <dc:date>2011-11-15T21:15:22+00:00</dc:date>
    </item>

    <item>
      <title><![CDATA[Announcing the Free Online ExpressionEngine Video Course]]></title>
      <link>http://dabrook.org/blog/announcing-the-free-online-expressionengine-video-course</link>
      <guid>http://dabrook.org/blog/announcing-the-free-online-expressionengine-video-course#When:09:51:48Z</guid>
      <description><![CDATA[<p>
	<a href="http://dabrook.org/courses/expressionengine"><img alt="Free ExpressionEngine Banner" src="http://dabrook.org/assets/images/uploads/free-ee-video-course-banner.png" style="width: 700px; height: 240px; " /></a></p>
<p>
	Back in June, Viget Labs hosted my <a href="http://dabrook.org/events/free-expressionengine-workshop">Free ExpressionEngine Workshop</a>. &nbsp;At the time, I <a href="http://dabrook.org/blog/plan-for-online-and-video-expressionengine-course">had</a> <a href="http://dabrook.org/blog/announcing-the-free-expressionengine-workshop">planned</a> to sell a video of the workshop that included a combination of live footage of me lecturing edited in with separetly recorded screencasts of the hands on activities we did building the Freelance Portfolio site. &nbsp;Instead I have decided to take the screencasts, which were a solid course in themselves, with clear explinations and step by step instructions, and pull them all together in a free online course. &nbsp;</p>
<p>
	You can find the&nbsp;Free Online ExpressionEngine Course&nbsp;live now under&nbsp;<a href="">Courses &gt; ExpresionEngine</a>.</p>
<p>
	I have not done a completely online course before so I am interested for folks feedback about how to bring more of the classroom environment into an online video course, so please let me know what you think!</p>
]]></description>
      <dc:subject><![CDATA[Freebies, In the Classroom, Tutorials, Videos,]]></dc:subject>
      <dc:date>2011-10-28T09:51:48+00:00</dc:date>
    </item>

    <item>
      <title><![CDATA[Student Poll on How to Make Blackboard More Social]]></title>
      <link>http://dabrook.org/blog/student-poll-on-how-to-make-blackboard-more-social</link>
      <guid>http://dabrook.org/blog/student-poll-on-how-to-make-blackboard-more-social#When:17:21:02Z</guid>
      <description><![CDATA[<p>
	Part of my new job here at Blackboard is to help research how students use Blackboard and how they feel it can be improved.&nbsp; Something that we are currently looking at in the User Experience team is how to build out internal social tools with Blackboard and integrate Blackboard with social sites like Facebook and Twitter.</p>
<p>
	The brief poll below is something that I drew up to help me (and the team) get a better understanding of <strong>how would students like to see social features added to Blackboard</strong>.</p>
<p>
<script type="text/javascript">var host = (("https:" == document.location.protocol) ? "https://secure." : "http://");document.write(unescape("%3Cscript src='" + host + "wufoo.com/scripts/embed/form.js' type='text/javascript'%3E%3C/script%3E"));</script><script type="text/javascript">
var s7x3q7 = new WufooForm();
s7x3q7.initialize({
'userName':'dabrook', 
'formHash':'s7x3q7', 
'autoResize':true,
'height':'918',
'header':'show'});
s7x3q7.display();
</script></p>
]]></description>
      <dc:subject><![CDATA[Reviews,]]></dc:subject>
      <dc:date>2011-09-20T17:21:02+00:00</dc:date>
    </item>

    <item>
      <title><![CDATA[College JavaScript Curriculum: Levels 1 and 2]]></title>
      <link>http://dabrook.org/blog/college-javascript-curriculum-levels-1-and-2</link>
      <guid>http://dabrook.org/blog/college-javascript-curriculum-levels-1-and-2#When:18:56:05Z</guid>
      <description><![CDATA[<h2>
	Semester 1</h2>
<p>
	<strong>Course name:</strong> DOM Scripting 1 (or JavaScript 1)</p>
<p>
	<strong>Course overview:&nbsp;</strong> In this introduction course students learn the fundamentals of working with the behavior layer on the web using JavaScript.&nbsp; Students will learn basic programming, the principals of unobtrusive and cross browser scripting, how to navigate and manipulate the DOM, and how to use JavaScript libraries to improve development.&nbsp; Requirements: CA272<em>.</em></p>
<p>
	<strong>Required Reading:</strong> Scriptin with JavaScript from New Riders</p>
<p>
	<strong>Course Outline:</strong></p>
<ol>
	<li>
		What is JavaScript
		<ol>
			<li>
				Characteristics of the language</li>
			<li>
				Examples of what it can do</li>
			<li>
				How to add to web pages</li>
			<li>
				Hello World&nbsp;</li>
			<li>
				Error testing</li>
		</ol>
	</li>
	<li>
		Variables and Arrays
		<ol>
			<li>
				What is a variable?</li>
			<li>
				Types of variables (loosely v. strictly typed)</li>
			<li>
				Converting between variable types</li>
			<li>
				What are arrays?</li>
			<li>
				Types of arrays</li>
		</ol>
	</li>
	<li>
		Objects and Functions
		<ol>
			<li>
				What is an object?</li>
			<li>
				How to create objects&nbsp;&nbsp;</li>
			<li>
				What is a function?</li>
			<li>
				How to write and call a function</li>
			<li>
				Passing parameters to functions</li>
			<li>
				Attaching functions to objects (methods)&nbsp;</li>
		</ol>
	</li>
	<li>
		Conditionals and Loops
		<ol>
			<li>
				If, else, else if</li>
			<li>
				While loop</li>
			<li>
				For loop</li>
			<li>
				Less common loops: for in, try catch, throw</li>
			<li>
				Looping through arrays</li>
		</ol>
	</li>
	<li>
		The DOM
		<ol>
			<li>
				What is the DOM?</li>
			<li>
				Understanding how to navigate the DOM</li>
			<li>
				Native JS ability to get elements in the DOM&nbsp;</li>
		</ol>
	</li>
	<li>
		Midterm - Write a form validation function</li>
	<li>
		jQuery Selectors
		<ol>
			<li>
				What is jQuery?</li>
			<li>
				How to select elements in the DOM with jQuery</li>
		</ol>
	</li>
	<li>
		Events
		<ol>
			<li>
				Types of events on a web page</li>
			<li>
				Native JS ways to act on events</li>
			<li>
				jQuery way to work with events</li>
		</ol>
	</li>
	<li>
		Manipulating the DOM
		<ol>
			<li>
				What is possible to change in the DOM?</li>
			<li>
				Examples of DOM manipulation</li>
			<li>
				How to manipulate the DOM</li>
		</ol>
	</li>
	<li>
		Timing
		<ol>
			<li>
				Native setTimeOut() function</li>
			<li>
				jQuery delay&nbsp;</li>
		</ol>
	</li>
	<li>
		Animation
		<ol>
			<li>
				Discussion of good v. bad animations</li>
			<li>
				jQuery animate() function</li>
			<li>
				jQuery animation effects</li>
		</ol>
	</li>
	<li>
		Cookies
		<ol>
			<li>
				What is a cookie</li>
			<li>
				How to use cookies</li>
			<li>
				jQuery cookie plugin&nbsp;</li>
		</ol>
	</li>
	<li>
		Regular Expressions
		<ol>
			<li>
				What is a regx?</li>
			<li>
				Syntax for writing regular expressions</li>
			<li>
				Email validation example</li>
		</ol>
	</li>
	<li>
		In depth project
		<ol>
			<li>
				Either form validation</li>
			<li>
				Or slideshow</li>
		</ol>
	</li>
	<li>
		Final</li>
</ol>
<h2>
	Semester 2</h2>
<p>
	<strong>Course name:</strong> DOM Scripting 2 (or JavaScript 2)</p>
<p>
	<strong>Course overview:&nbsp;</strong> In this advanced course students learn the how to build Rich Internet Application using JavaScript and jQuery.&nbsp; Students will learn principals of interaction design, best practices for programming JavaScript, and how to use effectively use AJAX in an application.&nbsp; Requirements: CA272 and CA27<em>6.</em></p>
<p>
	<strong>Required Reading: </strong>jQuery: Novice to Ninja from Sitepoint</p>
<p>
	<strong>Course Outline:</strong></p>
<ol>
	<li>
		Rich Internet Applications
		<ol>
			<li>
				What are RIA?</li>
			<li>
				The role of JavaScript in RIA</li>
			<li>
				Examples of RIA&nbsp;</li>
			<li>
				What happens with no JavaScript?</li>
		</ol>
	</li>
	<li>
		JavaScript Review
		<ol>
			<li>
				Cover the basics of the langauge</li>
			<li>
				Review of events in JavaScript</li>
			<li>
				Brief review of important principals from JS1</li>
		</ol>
	</li>
	<li>
		jQuery Review
		<ol>
			<li>
				Comparison with other JS Libraries</li>
			<li>
				Selecting elements</li>
			<li>
				jQuery events</li>
		</ol>
	</li>
	<li>
		Interaction Design (ID)
		<ol>
			<li>
				What is ID?</li>
			<li>
				Important principals</li>
			<li>
				Good and bad examples</li>
		</ol>
	</li>
	<li>
		Designing a User Interface Project
		<ol>
			<li>
				Overview of the demo application</li>
			<li>
				Plan behaviors for design of the application interface</li>
			<li>
				Cover necessary logic and functionality for planned behaviors</li>
		</ol>
	</li>
	<li>
		Midterm - Create an interactive web application interface</li>
	<li>
		jQuery Plugins
		<ol>
			<li>
				What is a plugin?</li>
			<li>
				How do they work</li>
			<li>
				How to build a plugin</li>
		</ol>
	</li>
	<li>
		jQuery Plugins continued
		<ol>
			<li>
				Types of jQuery plugins</li>
			<li>
				Practice implementing&nbsp;&nbsp;</li>
		</ol>
	</li>
	<li>
		jQuery UI Library
		<ol>
			<li>
				What is the UI Library</li>
			<li>
				How to add it your site</li>
			<li>
				How to customize library elements</li>
		</ol>
	</li>
	<li>
		Extending the User Interface Project with jQuery Plugins
		<ol>
			<li>
				Plan behaviors</li>
			<li>
				Discuss how to implement necessary plugins</li>
		</ol>
	</li>
	<li>
		AJAX
		<ol>
			<li>
				What is AJAX</li>
			<li>
				AJAX with native JS</li>
			<li>
				AJAX with jQuery</li>
		</ol>
	</li>
	<li>
		AJAX continued
		<ol>
			<li>
				AJAX load</li>
			<li>
				AJAX get</li>
			<li>
				AJAX callbacks</li>
		</ol>
	</li>
	<li>
		Server side programming
		<ol>
			<li>
				What is it?</li>
			<li>
				Cover basics needed to get AJAX working</li>
			<li>
				Talking to the server side</li>
			<li>
				Listening to the server side</li>
		</ol>
	</li>
	<li>
		JSON v. XML
		<ol>
			<li>
				What is JSON</li>
			<li>
				What is XML</li>
			<li>
				JSON v. XML</li>
			<li>
				How to parse JSON&nbsp;</li>
		</ol>
	</li>
	<li>
		Extending the User Interface Project with AJAX
		<ol>
			<li>
				Discuss how AJAX can improve the interface</li>
			<li>
				Plan behaviors</li>
			<li>
				Cover necessary logic and functionality</li>
		</ol>
	</li>
	<li>
		&nbsp;Final - Submit final interface projects</li>
</ol>
]]></description>
      <dc:subject><![CDATA[Freebies, In the Classroom,]]></dc:subject>
      <dc:date>2011-09-02T18:56:05+00:00</dc:date>
    </item>

    <item>
      <title><![CDATA[Going to Work for Blackboard]]></title>
      <link>http://dabrook.org/blog/going-to-work-for-blackboard</link>
      <guid>http://dabrook.org/blog/going-to-work-for-blackboard#When:04:13:26Z</guid>
      <description><![CDATA[<p>
	For the last seven years I have had the honor and pleasure of teaching web design, development, computer science, technology, information technology, and history at Springbrook High School, my dear alma mater. &nbsp;So, it is with both great sadness and excitement that announce my move from the high school classroom to the corporate offices of the educational software company, Blackboard.</p>
<h2>
	About Blackboard and My New Position</h2>
<p>
	Most people know Blackboard as the online software professors use to post information about classes. &nbsp;This is what Blackboard, the company, calls it&#39;s &quot;Learn&quot; Platform, and it is the worlds largest and most used Learning Management Software (LMS). &nbsp;As a company, Blackboard is also behind a number of other education technology platforms - from video conferencing software and analytics systems to swipe card payments and campus surveillance systems. &nbsp;</p>
<p>
	Those who have used Blackboard (the LMS) also know that it is not particularly sexy, or intuitive. &nbsp;In fact, it kinda sucks. &nbsp;A lot of the work I did for my masters thesis had to do with how much of a negative impact bad design in applications like Blackboard has on students&#39; willingness to engage in online learning.</p>
<p>
	So why go to work for them? &nbsp;</p>
<p>
	Well, Blackboard has recently geared up it&#39;s User Experience (UX) team. &nbsp;They have done some great work in separating the Java, logic layer of the application from the HTML/CSS/JS front-end, made some strong commitments to improving the UI of the application, and even dropped support for IE6. &nbsp;When I heard this, and saw some of the cool work the team was doing with new releases I knew I would have an opportunity to make a big difference on the look, feel and function of this software that every college student and professor seems to have to use, yet noone likes.</p>
<p>
	I&#39;ve always toyed with the idea of going to work as a web designer full time, and the opportunity to join the UX team at Blackboard just felt right. &nbsp;</p>
<p>
	Officially, I will have the title of &quot;<strong>Experience Designer</strong>.&quot; &nbsp;As I understand it, my job will mostly entail the following:</p>
<ol>
	<li>
		Listen to ideas for new requests from users, market research, and the Bb team</li>
	<li>
		Brainstorm, sketch, and prototype how the features will look and function</li>
	<li>
		HTML, CSS, and JavaScript up some sweet sweet interaction&nbsp;</li>
	<li>
		Do my share of bug fixes on already released versions of the software<span class="Apple-tab-span" style="white-space:pre"> </span></li>
</ol>
<p>
	It sounds like I will also have a chance to focus particularly on the design and interaction of the gradebook module. &nbsp;It&#39;s funny to me because entering grades was definitely my LEAST favorite thing about teaching. &nbsp;However, I&#39;ve built my own gradebook before and think I have some ideas on how to make grading more enjoyable for teachers.</p>
<p>
	I really like that the position will give me a creative outlet as an idea&#39;s man, while still allowing me to improve my JS skills. &nbsp;That combined with the fact that I&#39;m doing much needed work on the worlds largest piece of education software makes me feel like I&#39;m not selling out completelty in leaving the classroom. &nbsp;It was very important to me in the process of leaving the high school classroom to work full time as a designer/developer that I didn&#39;t stray too far from the education field.</p>
<h2>
	Still a Webucator at Heart and in Practice</h2>
<p>
	Five years ago I set myself the goal of building a four year web program at Springbrook. &nbsp;Although there are so many more things that I could do with the program, I feel that I have succeeded. &nbsp;We have a web design class, web development, paid and unpaid internships, and the annual Student Web Conference. As far as I know, there&#39;s not a high school in the world that has a better web program. &nbsp;</p>
<p>
	What I would love to do next is build a four year web program at the University level. &nbsp;For a number of reasons, I do not see this happening for some time: I&#39;m giving myself ten years. &nbsp;In the meantime I plan to adjunct at as many colleges and universities as I can to get a better field for the current state of higher ed web design and development courses. &nbsp;</p>
<p>
	I will also continue to run workshops on CMS development, produce the Required Listening show, and publish tutorials for web students.</p>
<p>
	Behind the scenes I am going to be putting a lot of thought into how to effectively build a higher ed web program. &nbsp;There are important questions like pedagogically how do you structure learning and assessment, administratively how do you find and keep good teachers, and content wise how do you create a program that teaches the standards without becoming outdated. &nbsp;</p>
<p>
	Working at Blackboard will allow me to still keep a foot in the door in the educational world while at the same time finally letting cut loose with being a full time designer. &nbsp;Having some corporate experience and higher ed contacts shouldn&#39;t hurt either. &nbsp;All in all, I hope to come out of the position ready to build an amazing four-year higher ed web program.</p>
<p>
	Thanks to all of the people who have made my work at Springbrook possible and so rewarding. &nbsp;I won&#39;t forget you!</p>
]]></description>
      <dc:subject><![CDATA[In the Classroom,]]></dc:subject>
      <dc:date>2011-06-27T04:13:26+00:00</dc:date>
    </item>

    <item>
      <title><![CDATA[Product Image Switcher Tutorial with jQuery and CSS3]]></title>
      <link>http://dabrook.org/blog/product-image-switcher-with-jquery-tutorial</link>
      <guid>http://dabrook.org/blog/product-image-switcher-with-jquery-tutorial#When:04:19:51Z</guid>
      <description><![CDATA[<p>
	I recently needed to build a simple product switcher for an e-commerce site. &nbsp;Rather than build the interaction right into the site, I decided to come up with a stand alone example of what I needed.</p>
<p>
	<a href="http://dabrook.org/examples/labs/product-image-switcher/"><img alt="Screenshot of the demo" src="http://dabrook.org/assets/images/uploads/product-slider-preview.png" style="width: 640px; height: 360px; " /></a></p>
<p>
	Demo:&nbsp;<a href="http://dabrook.org/examples/labs/product-image-switcher/">http://dabrook.org/examples/labs/product-image-switcher/</a></p>
<h2>
	The Markup</h2>
<p>
	I won&#39;t get into the markup for the entire example, but rather focus on the image switcher part of it. &nbsp;Since the entire product is wrapped in a article tag, it made sense to use an aside tag for the image switcher. &nbsp;Here is the code:</p>
<pre>
<code class="html">
&lt;aside class=&quot;preview&quot;&gt;
	&lt;img alt=&quot;Alt title of image&quot; height=&quot;220&quot; id=&quot;main&quot; src=&quot;images/shoe-inside.png&quot; width=&quot;300&quot; /&gt;
	&lt;nav&gt;
		&lt;a href=&quot;images/shoe-inside.png&quot;&gt;&lt;img alt=&quot;Side of the shoe&quot; height=&quot;73&quot; src=&quot;images/shoe-inside.png&quot; width=&quot;100&quot; /&gt;&lt;/a&gt;
		&lt;a href=&quot;images/shoe-front.png&quot;&gt;&lt;img alt=&quot;Front of the shoe&quot; height=&quot;73&quot; src=&quot;images/shoe-front.png&quot; width=&quot;91&quot; /&gt;&lt;/a&gt;		
		&lt;a href=&quot;images/shoe-back.png&quot;&gt;&lt;img alt=&quot;Back of the shoe&quot; height=&quot;73&quot; src=&quot;images/shoe-back.png&quot; width=&quot;91&quot; /&gt;&lt;/a&gt;		
	&lt;/nav&gt;
&lt;/aside&gt;
</code></pre>
<p>
	You&#39;ll notice that I&#39;m using the same image for the thumbnail and the main image. &nbsp;Using separate thumbnail images could be easier and faster, but I found using the same image worked fine.</p>
<h2>
	Fallback for no JS</h2>
<p>
	If JavaScript is disabled our navigation will obviously not work. &nbsp;We could display three full sized images stacked vertically down the left hand side. &nbsp;Or we could just remove the switcher nav completely. &nbsp;I went with the second option. &nbsp;</p>
<p>
	By setting the entire switcher &lt;nav&gt; to <code>display: none</code> we will just remove nav by default and use jQuery&#39;s <code>.show();</code> function to make the nav display on page load.</p>
<h2>
	The CSS</h2>
<p>
	The styling for the switcher section is pretty simple, with a little CSS3 easing and size transform for a little extra interaction.</p>
<pre>
<code class="css">img#main {
	border: 1px #ccc solid;
	padding: 2px;
	margin: 10px;
}
nav {
	display: none;
	margin: 0 10px;
}
nav a {
	border: 1px #ccc solid;
	padding: 2px 2px 0;
	display: block;
	float: left;
	margin: 2px;
	-webkit-transition: all .3s ease-in-out;
	-moz-transition: all .3s ease-in-out;	
	transition: all .3s ease-in-out;		
}
nav a:first-child {
	margin-left: 0;
}
nav a:hover {
	-webkit-transform: scale(1.1);
	-moz-transform: scale(1.1);	
	transform: scale(1.1);				
}
nav a.active {
	background: #FEFFC0;
	border-color: #ECD95C;
}
</code></pre>
<h2>
	The JavaScript</h2>
<p>
	Finally we can add the interaction layer. &nbsp;At the basic level, what we are going to do is take the href value for the nav image and make it the src value for the main image.</p>
<p>
	When I had the image switch with no easing or animation, it seemed a little too abrupt.&nbsp;So, I used the jQuery <code>animate()</code> function to fade the previous image to a lower opacity, switch the image, and then fade it back to full opacity. &nbsp;It isn&#39;t the smoothest transition ever, but it will do :)</p>
<p>
	Here&#39;s the JS code:</p>
<pre>
<code class="js">$(document).ready(function() {
	$(&quot;aside.preview nav&quot;).show();
	var previewImg = $(&quot;img#main&quot;);
	$(&quot;a:first&quot;).addClass(&quot;active&quot;);
	$(&quot;nav a img&quot;).click(function(){
		var link = $(this).parent();	
		var linkHref = link.attr(&quot;href&quot;);			
		var linkAlt = link.attr(&quot;alt&quot;);			
		if( $(link).hasClass(&quot;active&quot;) == false)
		{
			$(&quot;a&quot;).removeClass(&quot;active&quot;);
			link.addClass(&quot;active&quot;);											
			$(previewImg).animate({
				opacity: 0.8,
			}, 300, function() {
				previewImg.attr(&quot;src&quot;, linkHref);
				previewImg.attr(&quot;alt&quot;, linkAlt);				
				$(this).animate({
					opacity: 1,
					}, 300
				);							
			});			
		}
		return false;
	});
	$(&quot;input&quot;).click(function(){
		$(&quot;p.more&quot;).fadeIn(&quot;slow&quot;);
	})
});
</code></pre>
<h2>
	Download</h2>
<p>
	Feel free to use on your own sites if you ever need a product image switcher. &nbsp;</p>
<p>
	<a href="http://dabrook.org/examples/labs/product-image-switcher/">View the demo</a> or <a href="http://dabrook.org/examples/labs/product-image-switcher/image-switcher.zip">download a .zip</a></p>
]]></description>
      <dc:subject><![CDATA[Tutorials,]]></dc:subject>
      <dc:date>2011-06-03T04:19:51+00:00</dc:date>
    </item>

    <item>
      <title><![CDATA[Announcing the Free ExpressionEngine Workshop]]></title>
      <link>http://dabrook.org/blog/announcing-the-free-expressionengine-workshop</link>
      <guid>http://dabrook.org/blog/announcing-the-free-expressionengine-workshop#When:21:24:19Z</guid>
      <description><![CDATA[<p>
	I&#39;m really excited to announce the <a href="http://dabrook.org/events/free-expressionengine-workshop">FREE ExpressionEngine Workshop</a> on June 18th at Viget Labs, in Falls Church VA. &nbsp;This workshop is geared towards web students and professionals looking to increase their CMS skills.</p>
<p>
	Originally, I had <a href="http://dabrook.org/blog/plan-for-online-and-video-expressionengine-course">planned to do</a> an online ExpressionEngine course. &nbsp;However, with the announcement of the new EE video tutorial community partner, <a href="http://www.creat-ee.com/">Creat-EE</a>, I had to admit to myself that I do not have the time or resources to compete in the market of polished, post-produced, online videos, recorded in a studio setting. &nbsp;The ExpressionEngine training market is expanding and with people like Michael Boyink and Erik Reagan from Train-EE doing high quality (and high priced) workshops, it was clear I had to put some thought into what my niche would best be in the market.</p>
<p>
	After some thinking and brainstorming with former students, I decided that small, personalized, college class-room style workshops are what I do best. &nbsp;&nbsp;</p>
<h2>
	Why Free?</h2>
<p>
	First and foremost, I want to give back. &nbsp;Having a free class removes a large barrier to entry for web students and freelancing professionals who don&#39;t have a large budget for professional development.</p>
<p>
	Second, a former student and video enthusiast has offered to record the workshop and produce a short video series from the day. &nbsp;We will have this available for sale on DaBrook after the workshop for $49. &nbsp;The money will go directly to this student, and in a way will hopefully help compensate him for the amazing work he did recording and getting online the entire semester of my <a href="http://dabrook.org/courses/advanced-web">Advanced Web Design class</a>.</p>
<p>
	Since we will be selling the video of the workshop, I thought it would be a nice treat to offer a few lucky folks a chance to attend the workshop for free. &nbsp;The number of 20 attendees was set due to space limitations at Viget Labs, who has graciously agreed to host the event.</p>
<h2>
	Apply to Attend</h2>
<p>
	Since there are only 20 seats available, we will have an application process. &nbsp;All you have to do to enter is <a href="http://dabrook.org/events/free-expressionengine-workshop#apply">say why you want to attend the free workshop</a>. &nbsp;Applications will be accepted until Friday, June 3rd and winners will be announced Monday, June 6 2011.</p>
]]></description>
      <dc:subject><![CDATA[Events,]]></dc:subject>
      <dc:date>2011-05-18T21:24:19+00:00</dc:date>
    </item>

    <item>
      <title><![CDATA[Stickers Coming for Required Listening]]></title>
      <link>http://dabrook.org/blog/stickers-coming-for-required-listening</link>
      <guid>http://dabrook.org/blog/stickers-coming-for-required-listening#When:21:23:39Z</guid>
      <description><![CDATA[<p>
	In support of the increase in both the quality of production and quality of guests on Required Listening recently, I sprung for stickers :) &nbsp;They&#39;re bright, they&#39;re colorful, and they&#39;ll be great for sticking on all sorts of things!</p>
<p>
	<img alt="" src="http://dabrook.org/assets/images/uploads/stickers-wide.png" style="width: 620px; height: 372px; " /></p>
<p>
	The first batch will mostly go to a batch of recent speakers. &nbsp;But we have some extras, so holler at <a href="http://twitter.com/dabrooktweets">@dabrooktweets</a> if you want one!</p>
]]></description>
      <dc:subject><![CDATA[Freebies,]]></dc:subject>
      <dc:date>2011-03-22T21:23:39+00:00</dc:date>
    </item>

    
    </channel>
</rss>

