<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	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/"
	>

<channel>
	<title>John Keston Classes &#187; IM2420 Fundamentals of Scripting Languages</title>
	<atom:link href="http://aim.johnkeston.com/category/im2420/feed/" rel="self" type="application/rss+xml" />
	<link>http://aim.johnkeston.com</link>
	<description>Curriculum for classes taught by John Keston at Art Institutes Minnesota</description>
	<lastBuildDate>Wed, 01 Feb 2012 18:46:18 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Syllabus and Meeting Times</title>
		<link>http://aim.johnkeston.com/im2420/schedule-and-meeting-times/</link>
		<comments>http://aim.johnkeston.com/im2420/schedule-and-meeting-times/#comments</comments>
		<pubDate>Mon, 30 Jun 2008 21:59:36 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[IM2420 Fundamentals of Scripting Languages]]></category>

		<guid isPermaLink="false">http://aim.johnkeston.com/im2420/schedule-and-meeting-times/</guid>
		<description><![CDATA[IM2420 Fundamemtals of Scripting Languages Students develop and refine basic programming skills. Emphasis is placed on programming concepts including logic, problem solving, process flow and flowcharting, syntax and structures, and debugging and troubleshooting. Students will acquire skills needed to design, develop, and produce practical interactive applications. (Course Prerequisite: IM1480 Fundamentals of Interactive Design) Note: WDIM [...]]]></description>
			<content:encoded><![CDATA[<h1>IM2420 Fundamemtals of Scripting Languages</h1>
<p>Students develop and refine basic programming skills. Emphasis is placed on programming concepts including logic, problem solving, process flow and flowcharting, syntax and structures, and debugging and troubleshooting. Students will acquire skills needed to design, develop, and produce practical interactive applications. (Course Prerequisite: IM1480 Fundamentals of Interactive Design) <strong>Note:</strong> WDIM students must earn a C or better to pass this capstone course.</p>
<p><strong>Instructor: John Keston</strong></p>
<p>Meeting Times and Location Section (M/W):<br />
Session 1 / Session 2<br />
M/W 8am – 11am (with appropriate breaks), Room P305, Pence building</p>
<p>Syllabus: <a href='http://aim.johnkeston.com/wp-content/uploads/2008/06/im2420_su2011_keston.doc'>IM2420 Fundamentals of Scripting</a><br />
Textbook:</strong> <a href="http://www.amazon.com/XHTML-Sixth-Visual-Quickstart-Guide/dp/0321430840/" target="_blank">HTML, XHTML &amp; CSS (6th edition) Visual Quickstart Guide by Elizabeth Castro</a></p>
<p><a href="../week-1-5">Week 1</a> | <a href="../week-2-5">Week 2</a> | <a href="../week-3-5">Week 3</a> | <a href="../week-4-5">Week 4</a> | <a href="../week-5-5">Week 5</a> | <a href="../week-6-5">Week 6</a><br />
<a href="../week-7-5">Week 7</a> | <a href="../week-8-5">Week 8</a> | <a href="../week-9-5">Week 9</a> | <a href="../week-10-5">Week 10</a> | <a href="../week-11-5">Week 11</a></p>
]]></content:encoded>
			<wfw:commentRss>http://aim.johnkeston.com/im2420/schedule-and-meeting-times/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Week 1</title>
		<link>http://aim.johnkeston.com/im2420/week-1-5/</link>
		<comments>http://aim.johnkeston.com/im2420/week-1-5/#comments</comments>
		<pubDate>Wed, 09 Jul 2008 14:32:12 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[IM2420 Fundamentals of Scripting Languages]]></category>

		<guid isPermaLink="false">http://aim.johnkeston.com/im2420/week-1-5/</guid>
		<description><![CDATA[Session 1: Learn about and utilize basic HTML tags, including tables, in a web calendar of the current year. Our assignment for the week is to create a 12 month calendar for the current year. Each month must contain all the accurate days for the month arranged in a table structure of columns and rows. [...]]]></description>
			<content:encoded><![CDATA[<p><b>Session 1:</b> Learn about and utilize basic HTML tags, including tables, in a web calendar of the current year. Our assignment for the week is to create a 12 month calendar for the current year. Each month must contain all the accurate days for the month arranged in a table structure of columns and rows. The requirements for this exercise are as follows:</p>
<p>1. Use a typeface other than the default.<br />
2. Include some content besides day numbers (i.e. holidays, etc.).<br />
3. Create borders without using the table border attribute.<br />
4. Create navigation to get to every month from any month.<br />
5. Use background images in some of the cells.<br />
6. Use background colors to enhance your design.<br />
7. Upload to the OLS or comparable hosting.<br />
8. Place internet shortcut to your project on the dropoff drive under &#8220;John Keston:IM2420:&lt;your name&gt;:Calendar URL&#8221;.</p>
<p>This assignment is <strong>due Week 3, Session 1.</strong> Here are some tag definitions and example tags to work from. Remember to use the resources linked below.</p>
<pre class="brush: xml; title: ; notranslate">
&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&quot;&gt;
&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;
&lt;head&gt;
&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=utf-8&quot; /&gt;
&lt;title&gt;Basic Tags and Attributes&lt;/title&gt;
Body Tag and Attributes:
&lt;body bgcolor=&quot;#ffffff&quot; background=&quot;image.jpg&quot; link=&quot;#ff0000&quot;
vlink=&quot;#cc6633&quot; alink=&quot;#cccccc&quot;&gt;All page content goes here&lt;/body&gt;

HTML Comment:
&lt;!-- Type your comments here --&gt;

Headings, etc:
&lt;h1&gt;Heading&lt;/h1&gt;
&lt;h2&gt;Subheading&lt;/h2&gt;
&lt;h3&gt;Subheading&lt;/h3&gt;
&lt;h4&gt;Subheading&lt;/h4&gt;
&lt;h5&gt;Subheading&lt;/h5&gt;
&lt;h6&gt;Subheading&lt;/h6&gt;
&lt;center&gt;Centered Information&lt;/center&gt;
&lt;p&gt;Paragraph&lt;/p&gt;
&lt;b&gt;Bold&lt;/b&gt;
&lt;i&gt;Italic&lt;/i&gt;
&lt;u&gt;Underline&lt;/u&gt; (Can be mistaken for a link)
&lt;br /&gt;Line break

&lt;!-- Typefaces are usually managed with styles --&gt;
&lt;font face=&quot;Arial, Helvetica, sans-serif&quot; color=&quot;red&quot; size=&quot;1&quot;&gt;
Font Attributes&lt;/font&gt;

Ordered Lists:
&lt;ol type=&quot;1, A, a, I, i&quot;&gt;
&lt;li&gt;list items&lt;/li&gt;
&lt;li&gt;list items&lt;/li&gt;
&lt;/ol&gt;

Unordered Lists:
&lt;ul type=&quot;circle, square, disc&quot;&gt;
&lt;li&gt;list items&lt;/li&gt;
&lt;li&gt;list items&lt;/li&gt;
&lt;/ul&gt;

Image Tag and Paths:
&lt;img src=&quot;images/mugshot1.jpg&quot; width=&quot;150&quot; height=&quot;75&quot; border=&quot;0&quot;
 alt=&quot;Click Here to Contact Us&quot; lowsrc=&quot;lowimage.gif&quot; /&gt;

Relative Link:
&lt;a href=&quot;contact/contact_list.html&quot;&gt;click here to view contacts&lt;/a&gt;

Internal Link or Anchor:
&lt;a name=&quot;linkname&quot;&gt;Top of Page&lt;/a&gt;
&lt;!-- Page Content ---&gt;
&lt;a href=&quot;#linkname&quot;&gt;Click here to go to the top&lt;/a&gt;

Absolute or Hard Link:
&lt;a href=&quot;http://www.startribune.com/news&quot;&gt;click here&lt;/a&gt;

Table Tags and Attributes:
&lt;table width=&quot;600&quot; height=&quot;300&quot; border=&quot;0&quot; bgcolor=&quot;#FFFFFF&quot;
cellspacing=&quot;1&quot; cellpadding=&quot;1&quot;&gt;
&lt;tr&gt;
&lt;td align=&quot;left, right, center&quot; valign=&quot;top, middle, bottom&quot;
bgcolor=&quot;&quot; colspan=&quot;&quot; rowspan=&quot;&quot;&gt;info&lt;/td&gt;
&lt;td align=&quot;left, right, center&quot; valign=&quot;top, middle, bottom&quot;
bgcolor=&quot;&quot; colspan=&quot;&quot; rowspan=&quot;&quot;&gt;info&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
</pre>
<p><strong>Required Reading:</strong><br />
Reading from Textbook: Introduction and Chapter 1 (pages 13-42), Skim chapters 2,3,4 (pages 43-79)<br />
Online reading: <a href="http://w3schools.com/xhtml/default.asp">XHTML Tutorial</a></p>
<p><strong>Resources:</strong><br />
<a href="http://www.webmonkey.com/reference/HTML_Cheatsheet">HTML Cheat Sheet</a> (an excellent html resource)<br />
<a href="http://www.webmonkey.com/">www.webmonkey.com</a> (a comprehensive web development resource)</p>
<p><strong>Session 2:</strong> Today we will be looking more carefully at tables to organize information in a grid, like a calendar. We will also cover some techniques on how to trick tables into being more flexible like using bgcolor and cellspacing to create a border, or using &#8220;colspan&#8221; within your table data cells to merge cells without days in the beginning and end of months (i.e. <code>&lt;td colpsan="4"&gt;&amp;nbsp;&lt;/td&gt;</code>). Try adding images and/or text for holidays or birthdays. Also, use &#8220;width&#8221; and &#8220;height&#8221; attributes to line up the calendar days. Here&#8217;s an example month: </p>
<pre class="brush: xml; title: ; notranslate">
&lt;table width=&quot;100%&quot; height=&quot;100%&quot;&gt;
&lt;tr&gt;
&lt;th width=&quot;14%&quot;&gt;Sunday&lt;/th&gt;
&lt;th width=&quot;14%&quot;&gt;Monday&lt;/th&gt;
&lt;th width=&quot;14%&quot;&gt;Tuesday&lt;/th&gt;
&lt;th width=&quot;14%&quot;&gt;Wednesday&lt;/th&gt;
&lt;th width=&quot;14%&quot;&gt;Thursday&lt;/th&gt;
&lt;th width=&quot;14%&quot;&gt;Friday&lt;/th&gt;
&lt;th width=&quot;14%&quot;&gt;Saturday&lt;/th&gt;
&lt;/tr&gt;
&lt;tr bgcolor=&quot;#999999&quot; height=&quot;20%&quot;&gt;
&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;
&lt;td valign=&quot;top&quot;&gt;1&lt;/td&gt;
&lt;td valign=&quot;top&quot;&gt;2&lt;/td&gt;
&lt;td valign=&quot;top&quot;&gt;3&lt;/td&gt;
&lt;td valign=&quot;top&quot;&gt;4&lt;/td&gt;
&lt;td valign=&quot;top&quot;&gt;5&lt;/td&gt;
&lt;/tr&gt;
&lt;tr bgcolor=&quot;#999999&quot; valign=&quot;top&quot; height=&quot;20%&quot;&gt;
&lt;td&gt;5&lt;/td&gt;&lt;td&gt;7&lt;/td&gt;&lt;td&gt;8&lt;/td&gt;&lt;td&gt;9&lt;/td&gt;&lt;td&gt;10&lt;/td&gt;&lt;td&gt;11&lt;/td&gt;&lt;td&gt;12&lt;/td&gt;
&lt;/tr&gt;
&lt;tr bgcolor=&quot;#999999&quot; valign=&quot;top&quot; height=&quot;20%&quot;&gt;&lt;td&gt;13&lt;/td&gt;&lt;td&gt;14&lt;/td&gt;&lt;td&gt;15&lt;/td&gt;
&lt;td&gt;16&lt;/td&gt;&lt;td&gt;17&lt;/td&gt;&lt;td&gt;18&lt;/td&gt;&lt;td&gt;19&lt;/td&gt;
&lt;/tr&gt;
&lt;tr bgcolor=&quot;#999999&quot; valign=&quot;top&quot; height=&quot;20%&quot;&gt;
&lt;td&gt;20&lt;/td&gt;&lt;td&gt;21&lt;/td&gt;&lt;td&gt;22&lt;/td&gt;&lt;td&gt;23&lt;/td&gt;&lt;td&gt;24&lt;/td&gt;&lt;td&gt;25&lt;/td&gt;&lt;td&gt;26&lt;/td&gt;
&lt;/tr&gt;
&lt;tr bgcolor=&quot;#999999&quot; valign=&quot;top&quot; height=&quot;20%&quot;&gt;
&lt;td&gt;27&lt;/td&gt;&lt;td&gt;28&lt;/td&gt;&lt;td&gt;29&lt;/td&gt;&lt;td&gt;30&lt;/td&gt;&lt;td&gt;31&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
</pre>
<p><strong>Note:</strong> The use of HTML escape sequences such as &amp;nbsp; allows you to place special characters into your HTML documents. Less than (&#8220;<") and greater than (">&#8220;) symbols would not be available without using an escape sequence. View the link below for a complete list of HTML escape sequences.</p>
<p><a href="http://www.hybridelephant.com/computer/tutorial/spechar.html" target="_blank">HTML Escape Sequences</a></p>
<p><a href='http://aim.johnkeston.com/wp-content/uploads/2008/07/im2420_problem_set_1.zip'>Download: IM2420 Problem Set 1</a><br />
1. All IM2420 problems are due by the beginning of class on the next day that the class meets.<br />
2. Answers must be available via links on the OLS or comparable hosting and copied to the drop off drive.<br />
3. Solutions to each problem set will be given during demonstrations on the day that they are due.<br />
4. Grades will be collected during the solution demonstrations by an assigned classmate.</p>
]]></content:encoded>
			<wfw:commentRss>http://aim.johnkeston.com/im2420/week-1-5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Week 2</title>
		<link>http://aim.johnkeston.com/im2420/week-2-5/</link>
		<comments>http://aim.johnkeston.com/im2420/week-2-5/#comments</comments>
		<pubDate>Thu, 10 Jul 2008 20:39:12 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[IM2420 Fundamentals of Scripting Languages]]></category>

		<guid isPermaLink="false">http://aim.johnkeston.com/im2420/week-2-5/</guid>
		<description><![CDATA[Session 1: Make sure that your link on the drop off drive is there and working properly. If we have time we may look at a few of your calendar projects during the lab. These are not required presentations. Stylesheets (technically Cascading Stylesheets), or CSS allow web developers much more control over the look of [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Session 1:</strong> Make sure that your link on the drop off drive is there and working properly. If we have time we may look at a few of your calendar projects during the lab. These are not required presentations. </p>
<p>Stylesheets (technically Cascading Stylesheets), or CSS allow web developers much more control over the look of their web pages than with HTML alone. They make it possible to define styles globally for a site, eliminating the need for repetitive font tags, color tags, alignment attributes and so on. This creates better organization by separating form from structure. Sytlesheets are a critical tool for any web developer and make creating sites infinitely faster and easier, once you&#8217;ve learned how to use them.There are four ways to include styles in your HTML documents. </p>
<p><strong>1. Local or Inline</strong> is right inside a tag and overrides other definitions. Example: <code>&lt;h1 style="color: orange; font-size: 18pt; font-family: Verdana, sans-serif"&gt;This is an INLINE style&lt;/h1&gt;</code></p>
<h1 style="color: orange; font-size: 18pt; font-family: Verdana, sans-serif">This is an INLINE style</h1>
<p><strong>2. Global or Embedded</strong>. A better solution is to include the style definitions in a style tag otherwise known as by using the global (embedded) technique. Like this <a href="/im2420/css_demo/style_demo1.html" target="_new">example</a>:</p>
<pre class="brush: xml; title: ; notranslate">
&lt;html&gt;
&lt;head&gt;
&lt;title&gt;Style Demo Page 1&lt;/title&gt;
&lt;style type=&quot;text/css&quot;&gt;
&lt;!--
h1 { color: red; font-size: 24px; font-family: arial }
p { text-indent: 1cm; background: #eeeeee; font-family: courier }
td { font-family: arial }
b, i { color: green; font-size: 20px }
--&gt;
&lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;h1&gt;TEST&lt;/h1&gt;
&lt;p&gt;Hello World&lt;/p&gt;
&lt;table&gt;
&lt;tr&gt;&lt;td&gt;I'm in a TD tag with no font tag&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;b&gt;bold. &lt;u&gt;underline&lt;/u&gt; within bold (no style)&lt;/b&gt;&lt;br /&gt;
&lt;i&gt;italics&lt;/i&gt;
&lt;/body&gt;
&lt;/html&gt;
</pre>
<p><strong>3. Linked</strong> stylesheets are even better because they allow you to define the styles for an entire website once, then when you modify the stylesheet the changes take effect over the entire site, or wherever the stylesheet is linked. Here&#8217;s how you link a stylesheet:</p>
<pre class="brush: xml; title: ; notranslate">
&lt;html&gt;
&lt;head&gt;
&lt;title&gt;Untitled Document&lt;/title&gt;
&lt;link rel=&quot;stylesheet&quot; href=&quot;/im2420/my_styles.css&quot; type=&quot;text/css&quot;&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;h1&gt;TEST&lt;/h1&gt;
&lt;/body&gt;
&lt;/html&gt;
</pre>
<p>and here&#8217;s what the stylesheet document (my_styles.css) looks like:</p>
<pre class="brush: css; title: ; notranslate">
/* CSS Document */
h1 { color: red; font-size: 24px; font-family: arial }
p { text-indent: 1cm; background: #eeeeee; font-family: courier }
td { font-family: arial }
b, i { color: green; font-size: 20px }
</pre>
<p><strong>4. Imported</strong> stylesheet go within a style tag, thus allowing you to include other global styles which will override what&#8217;s imported. In the following example the h1 definition will override the h1 definition found in my_styles.css:</p>
<pre class="brush: css; title: ; notranslate">
&lt;STYLE TYPE=&quot;text/css&quot;&gt;
&lt;!--
@import url(my_styles.css);
h1 { color: #FF00FF; font-family: impact }
textarea { text-transform: uppercase }
--&gt;
&lt;/STYLE&gt;
</pre>
<p>Click any of the following links to view the examples we looked at in class:<br />
<a href="/im2420/css_demo/style_demo0.html" target="_blank">style_demo0.html</a><br />
<a href="/im2420/css_demo/style_demo1.html" target="_blank">style_demo1.html</a><br />
<a href="/im2420/css_demo/style_demo2.html" target="_blank">style_demo2.html</a><br />
<a href="/im2420/css_demo/style_demo3.html" target="_blank">style_demo3.html </a></p>
<p><strong>Reading assignment: </strong>Stylesheets are extremely powerful and critical to creating useable, consistent and accessible sites. Please take the time to read the following tutorial and checkout other resources so you can take advantage of these techniques in your  projects (<strong>note:</strong> using stylesheets is a requirement in all subsequent projects).<br />
<a href="http://www.webmonkey.com/2010/02/get_started_with_css_3/">Web Monkey Stylesheet Tutorial (Getting Started)</a><br />
<a href="http://www.w3schools.com/css/css_reference.asp">W3Schools CSS Reference</a><br />
<a href="http://www.brainjar.com/css/positioning/" target="_blank">Brainjar CSS Positioning Tutorial</a><br />
<a href="http://css.maxdesign.com.au/selectutorial/index.htm">Selectutorial &#8211; CSS selectors</a></p>
<p><strong>Session 2:</strong> A good set of guidelines to follow for web development are the SCANMIC Usability Criteria. Read the the reading assignment linked below to gain a full understanding of the SCANMIC principals. Here&#8217;s a quick outline of each of the criteria:</p>
<p>1. Screen Design (Space, choice of color, readability, image placement, etc.)<br />
2. Content (Who, What, Where, When)<br />
3. Accessibility (Fast Load Times, Browser Compatibility, Easy to Read)<br />
4. Navigation (Title Bar, Headers, Highlighted Navigation Links. Good navigation is like a roadmap, know where you are where you&#8217;ve been and where to go next.)<br />
5. Media Use (Graphics help keep users attention and can enhance usability, poor use slows down sites and distract users, Sound, Animation, and Video)<br />
6. Interactivity (e-commerce, feedback, discussions, chat, user customization)<br />
7. Consistency (Page size/page layout, navigation buttons/ images, menus, etc. text &#8211; font, font size and color).</p>
<p><strong>Assignment:</strong> As a first project utilizing CSS let&#8217;s create single page with the layout, images and type all formatted with CSS. Write the content for your web page as a critique of a website that you consider a bad design. Create a one or two page web based evaluation of the website outlining how your example site does not adequately apply the usability points above. The site you evaluate must be accessible over the internet and shouldn&#8217;t be too high profile or contain inappropriate materials. Make sure you include links to the pages that you&#8217;re evaluating in your web document also include images to illustrate your points. Links to your evaluations will be due on the drop off drive by Session 1, Week 4.</p>
<p>SCANMIC Evaluation Project Requirements<br />
1. Select a poorly designed &#8220;under the radar&#8221; website to evaluate.<br />
2. Write a paragraph or two of content for each of the seven SCANMIC points.<br />
3. Create anchors with navigation to each point from the top of the page.<br />
4. Use a linked or imported custom CSS document to format the type and images.<br />
5. Link your evaluation on the drop off drive by Session 1, Week 4.</p>
<p>Student Example:<br />
<a href="http://www.daneray.com/examples/scanmic/scanmic.html" target="_blank">http://www.daneray.com/examples/scanmic/scanmic.html</a></p>
<p>Reading Assignment (PDF):<br />
<a href="/im2420/wp0103.pdf">Identifying Web Usability Criteria</a></p>
<p><a href='http://aim.johnkeston.com/wp-content/uploads/2008/07/im2420_problem_set_2.zip'>Download: IM2420 Problem Set 2</a><br />
1. All IM2420 problems are due by the beginning of class on the next day that the class meets.<br />
2. Answers must be available via links on the OLS or comparable hosting and copied to the drop off drive.<br />
3. Solutions to each problem set will be given during demonstrations on the day that they are due.<br />
4. Grades will be collected during the solution demonstrations by an assigned classmate.</p>
]]></content:encoded>
			<wfw:commentRss>http://aim.johnkeston.com/im2420/week-2-5/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Week 3</title>
		<link>http://aim.johnkeston.com/im2420/week-3-5/</link>
		<comments>http://aim.johnkeston.com/im2420/week-3-5/#comments</comments>
		<pubDate>Sun, 27 Jul 2008 19:47:49 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[IM2420 Fundamentals of Scripting Languages]]></category>

		<guid isPermaLink="false">http://aim.johnkeston.com/im2420/week-3-5/</guid>
		<description><![CDATA[Session 1: By the end of lab today your calendars are due. Today we will cover anchor links or &#8220;page jumps&#8221;, link targeting, and frames. Anchor links are used to jump to content within an HTML document. The most typical use is for navigating back to the top of a page where a lot of [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Session 1:</strong> By the end of lab today your calendars are due. Today we will cover anchor links or &#8220;page jumps&#8221;, link targeting, and frames. Anchor links are used to jump to content within an HTML document. The most typical use is for navigating back to the top of a page where a lot of scrolling is required, or to sections within the content.</p>
<pre class="brush: xml; title: ; notranslate">
&lt;a name=&quot;top&quot;&gt;This is the top of the page&lt;/a&gt;
.
.
.
&lt;a href=&quot;#top&quot;&gt;Go to the top of the page&lt;/a&gt;
</pre>
<p>Link targeting is most commonly used to open the content of a link in a new browser window or tab. This can be achieved by using the &#8220;target&#8221; attribute and setting the value to blank (i.e. <code>&lt;a href="http://www.external-site.com" target="_blank"&gt;External Link&lt;/a&gt;</code>). </p>
<p>Targeting is also required to load content into specific frames. I do not recommend the use of frames, but it is still important to understand how they work. <a href="http://www.useit.com/jakob/" target="_blank">Jakob Neilsen</a>, a prominent usability expert, cited &#8220;Using Frames&#8221; among the top ten mistakes in web design. However, there are rare instances of when frames (generally iframes are preferable) can help solve specific problems. This <a href="/im2420/frames/">example</a> shows how a basic frame set behaves. </p>
<p>Frame Attributes and Targeting:</p>
<pre class="brush: xml; title: ; notranslate">
&lt;frameset rows=&quot;100,*,100&quot; frameborder=&quot;yes,no&quot;&gt;
&lt;frame src=&quot;doc1.html&quot; name=&quot;top&quot; scrolling=&quot;yes,no,auto&quot;&gt;
&lt;frameset cols=&quot;*,*&quot; frameborder=&quot;yes,no&quot;&gt;
&lt;frame src=&quot;doc2.html&quot; name=&quot;middle_left&quot; scrolling=&quot;yes,no,auto&quot;&gt;
&lt;frame src=&quot;doc3.html&quot; name=&quot;middle_right&quot; scrolling=&quot;yes,no,auto&quot;&gt;
&lt;/frameset&gt;
&lt;frame src=&quot;doc4.html&quot; name=&quot;bottom&quot; scrolling=&quot;yes,no,auto&quot;&gt;
&lt;/frameset&gt;
</pre>
<p>Targeting Links:</p>
<pre class="brush: xml; title: ; notranslate">
&lt;a href=&quot;link.html&quot; target=&quot;name&quot;&gt;    - Opens in a specific frame
&lt;a href=&quot;link.html&quot; target=&quot;_blank&quot;&gt;  - Opens in a new window or tab
&lt;a href=&quot;link.html&quot; target=&quot;_self&quot;&gt;   - Opens within its own frame
&lt;a href=&quot;link.html&quot; target=&quot;_top&quot;&gt;    - Current browser window
&lt;a href=&quot;link.html&quot; target=&quot;_parent&quot;&gt; - Opens in its outer frameset
</pre>
<p><strong>Session 2:</strong> Now we are going to take a closer look at CSS positioning. CSS can be used to format type, but also be used to position and style <code>&lt;div&gt;</code> layers or containers. Just like HTML tables, CSS positioning can be used to arrange content within the browser. CSS positioning also offers some advantages over the traditional table method; primarily that the content can be separated from the layout to provide better site maintenance and accessibility.</p>
<p><a href="http://www.dmag.org.uk/resources/design_articles/cssvtablesforlayout.asp" target="_blank">CSS vs Tables for Layout</a><br />
<a href="http://www.csszengarden.com/" target="_blank">CSS Zen Garden</a></p>
<p>For the next exercise the content has been provided in a word document. It includes some information about cycling collected from wikipedia. It&#8217;s your job to design a set of six pages using the text content provided. Create a consistent design scheme that incorporates images, navigation and type treatments using CSS styles and positioning. The use of tables for this exercise is not allowed. The requirements and a link to the content follows:</p>
<p>CSS Positioning Exercise<br />
1. Organize the content provided into six pages<br />
2. Create a consistent design scheme<br />
3. Include navigation on each page to all the pages<br />
4. Incorporate images into each page<br />
5. Format type, images and the positioning of the content with CSS<br />
6. Each piece of content (including images) should be contained in a <code>&lt;div&gt;</code> layer/container<br />
7. Use of HTML tables is prohibited<br />
8. <strong>Due before class on Session 2 of Week 5</strong></p>
<p><a href="/im2420/cycling_content.doc">Content for the CSS Positioning Exercise</a><br />
<a href="http://www.maxdesign.com.au/presentation/page_layouts/">Sample CSS Page Layouts </a> &#8211; Step by step tutorial from <a href="http://www.maxdesign.com.au/">Max Design</a><br />
<a href="http://glish.com/css/home.asp" target="_blank">CSS Layout Techniques</a> &#8211; Great tutorial on &#8220;no tables&#8221; layout<br />
<a href="http://www.daneray.com/examples/cycling/cycling.html">Student Example of CSS Positioning Exercise</a></p>
]]></content:encoded>
			<wfw:commentRss>http://aim.johnkeston.com/im2420/week-3-5/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Week 4</title>
		<link>http://aim.johnkeston.com/im2420/week-4-5/</link>
		<comments>http://aim.johnkeston.com/im2420/week-4-5/#comments</comments>
		<pubDate>Mon, 04 Aug 2008 02:29:15 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[IM2420 Fundamentals of Scripting Languages]]></category>

		<guid isPermaLink="false">http://aim.johnkeston.com/im2420/week-4-5/</guid>
		<description><![CDATA[Week 4 Reading: Chapter 8 &#8220;Working with Stylesheet Files&#8221; Chapter 17 &#8220;Forms&#8221; Session 1: Today we will look at a variety of CSS layouts starting with a simple two column, fluid layout with a banner that spans both columns (see code example below). We will also examine 3 column layouts and static width layouts. Useful [...]]]></description>
			<content:encoded><![CDATA[<p>Week 4 Reading:<br />
Chapter 8 &#8220;Working with Stylesheet Files&#8221;<br />
Chapter 17 &#8220;Forms&#8221;</p>
<p><strong>Session 1:</strong> Today we will look at a variety of CSS layouts starting with a simple two column, fluid layout with a banner that spans both columns (see code example below). We will also examine 3 column layouts and static width layouts.  </p>
<pre class="brush: xml; title: ; notranslate">
&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;
&lt;head&gt;
&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=ISO-8859-1&quot; /&gt;
&lt;title&gt;CSS Layout Example&lt;/title&gt;
&lt;style type=&quot;text/css&quot;&gt;
&lt;!--
#banner {
    margin: 10px auto 0px auto;
	width: 80%;
	border: #cccccc solid 1px;
	padding: 3px;
}
#container {
    padding: 3px;
    margin: 0px auto 0px auto;
	width: 80%;
	border: #cccccc solid;
	border-width: 0px 1px 1px 1px;
	clear: left;
	overflow: hidden;
}
#left_sidebar {
    padding: 3px;
	border: #cccccc solid;
	border-width: 0px 1px 0px 0px;
    float: left;
	width: 30%;
	margin-right: 5px;
}
#main_content {
    padding: 3px;
}
--&gt;
&lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;div id=&quot;banner&quot;&gt;Content for id &quot;banner&quot; Goes Here&lt;/div&gt;
&lt;div id=&quot;container&quot;&gt;
  &lt;div id=&quot;left_sidebar&quot;&gt;
  1. left_sidebar content&lt;br /&gt;
  2. left_sidebar content&lt;br /&gt;
  3. left_sidebar content&lt;br /&gt;
  4. left_sidebar content&lt;br /&gt;
  5. left_sidebar content&lt;br /&gt;
  6. left_sidebar content&lt;br /&gt;
  7. left_sidebar content
  &lt;/div&gt;
  &lt;div id=&quot;main_content&quot;&gt;
Praesent ut nulla. Sed tellus magna, tempor sit amet, pulvinar eu,
dignissim sit amet, purus. Phasellus ultrices massa sed metus. Nulla
scelerisque, metus a ultricies blandit, nisi arcu lacinia orci, et
posuere urna lacus bibendum turpis. Maecenas nibh nulla, cursus in,
pulvinar eu, dictum quis, neque. Curabitur ac purus a ipsum ultrices
consequat. Aliquam sed velit sit amet diam mattis aliquet.
&lt;br /&gt;&lt;br /&gt;
Pellentesque habitant morbi tristique senectus et netus et malesuada
fames ac turpis egestas. Sed bibendum molestie tortor. Sed ut nunc.
Maecenas purus felis, scelerisque id, egestas ut, pretium et, nulla.
Nunc nisl arcu, vulputate et, feugiat non, luctus eu, justo. Quisque
rhoncus. Mauris dapibus orci non dui. Mauris lobortis. Aenean
gravida pede a justo.
  &lt;/div&gt;
&lt;/div&gt;
&lt;/body&gt;
&lt;/html&gt;
</pre>
<p>Useful CSS navigation resource:<br />
<a href="http://css.maxdesign.com.au/listamatic/">http://css.maxdesign.com.au/listamatic/</a></p>
<p>Technique to create tiled backgrounds:<br />
<a href="http://psd.tutsplus.com/articles/how-a-turn-a-texture-into-a-seamlessly-tiled-background/">How to Turn a Texture into a Seamlessly Tiled Background</a></p>
<p><strong>Session 2:</strong> Today we will be covering the next assignment which involves creating an interactive XHTML form. There are several parts to this assignment that we will work on sequentially:</p>
<p>1. This week we will start by creating the form and layout using XHTML and CSS.<br />
2. Next we will use some simple Javascript to help validate the input from the user.<br />
3. Thirdly we will will use server side scripting to process the information and email it to ourselves.</p>
<p>Here&#8217;s a very basic tableless form formatted with CSS:</p>
<pre class="brush: xml; title: ; notranslate">
&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;
&lt;head&gt;
&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=ISO-8859-1&quot; /&gt;
&lt;title&gt;Form Demo&lt;/title&gt;
&lt;style type=&quot;text/css&quot;&gt;
&lt;!--
input {
	display: block;
	width: 150px;
	float: left;
	margin-bottom: 10px;
}
label {
	display: block;
	text-align: right;
	float: left;
	width: 80px;
	padding-right: 5px;
	margin-bottom: 10px;
}

br {
	clear: left;
}
--&gt;
&lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;form action=&quot;mailto:test@email.com&quot; method=&quot;post&quot;&gt;
  &lt;label for=&quot;first_name&quot;&gt;First Name:&lt;/label&gt;
  &lt;input id=&quot;first_name&quot; name=&quot;first_name&quot; type=&quot;text&quot; /&gt;
  &lt;br /&gt;
  &lt;label for=&quot;last_name&quot;&gt;Last Name:&lt;/label&gt;
  &lt;input id=&quot;last_name&quot; name=&quot;last_name&quot; type=&quot;text&quot; /&gt;
  &lt;br /&gt;
  &lt;label for=&quot;email&quot;&gt;Email:&lt;/label&gt;
  &lt;input id=&quot;Email&quot; name=&quot;last_name&quot; type=&quot;text&quot; /&gt;
  &lt;br /&gt;
&lt;/form&gt;
&lt;/body&gt;
&lt;/html&gt;
</pre>
<p>The following resource illustrates how forms can be put into horizontal, vertical, columnar, and other formats using CSS with fieldset, label, and legend tags:</p>
<p><a href="http://www.themaninblue.com/experiment/InForm/" target="_blank" title="css form layouts">http://www.themaninblue.com/experiment/InForm/</a><br />
<a href="http://www.smashingmagazine.com/2006/11/11/css-based-forms-modern-solutions/" target="_blank">CSS-Based Forms: Modern Solutions</a></p>
]]></content:encoded>
			<wfw:commentRss>http://aim.johnkeston.com/im2420/week-4-5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Week 5</title>
		<link>http://aim.johnkeston.com/im2420/week-5-5/</link>
		<comments>http://aim.johnkeston.com/im2420/week-5-5/#comments</comments>
		<pubDate>Sun, 10 Aug 2008 23:16:53 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[IM2420 Fundamentals of Scripting Languages]]></category>

		<guid isPermaLink="false">http://aim.johnkeston.com/im2420/week-5-5/</guid>
		<description><![CDATA[Session 1: Today we&#8217;ll be looking at a complete example of an XHTML form, similar to what is expected for the Interactive Form project. The form demo can be found here: Form Demo Once we have looked carefully at the form I will demonstrate how to use Javascript to pre-validate the input from the user. [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Session 1: </strong>Today we&#8217;ll be looking at a complete example of an XHTML form, similar to what is expected for the Interactive Form project. The form demo can be found here:</p>
<p><a href="/im2420/form_demo/">Form Demo</a></p>
<p>Once we have looked carefully at the form I will demonstrate how to use Javascript to pre-validate the input from the user. Javascript validation is a useful way to prevent users from leaving out required information from the form. However, server-side validation is also necessary in case Javascript has been disabled in the browser. </p>
<p>Reading:<br />
<a href="http://www.w3schools.com/js/js_intro.asp" target="_blank">Introduction to Javascript<br />
</a><br />
Also, if you are looking for more ideas on form layout. Have a look at this list hosted on <a href="http://www.smashingmagazine.com/" target="_blank">Smashing Magazine</a>:</p>
<p><a href="http://www.smashingmagazine.com/2006/11/11/css-based-forms-modern-solutions/" target="_blank">CSS-Based Forms: Modern Solutions</a></p>
<p><strong>Session 2:</strong> Today we will start looking at the server-side scripting necessary in order to make our Interactive Form project handle the data entered by users. The language we will be using to do this is PHP. One of the best resources for PHP is <a href="http://php.net" target="_blank">php.net</a>. </p>
<p><strong>Interactive Form Project Requirements:</strong><br />
Create an interactive form designed to collect information from users, validate that required information has been entered, process the information, and send an email to yourself containing the user input. The form must be designed well using XHTML and CSS positioning. No table layout is acceptable. </p>
<p>1. The form must contain a minimum of ten input fields.<br />
2. Use of text fields, check boxes, radio buttons, select lists, and text areas are required.<br />
3. Design the form with XHTML and CSS (no table layouts).<br />
4. Validate required fields with both Javascript and PHP.<br />
5. Process the user input on the server side using PHP.<br />
6. Automatically email the formatted data to your email address.<br />
<strong>7. Due on Session 2, Week 7.</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://aim.johnkeston.com/im2420/week-5-5/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Week 6</title>
		<link>http://aim.johnkeston.com/im2420/week-6-4/</link>
		<comments>http://aim.johnkeston.com/im2420/week-6-4/#comments</comments>
		<pubDate>Mon, 18 Aug 2008 15:46:12 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[IM2420 Fundamentals of Scripting Languages]]></category>

		<guid isPermaLink="false">http://aim.johnkeston.com/im2420/week-6-4/</guid>
		<description><![CDATA[Session 1: Today we will start developing the PHP required to process the information collected in our forms. PHP (PHP Hypertext Pre-processor) is a server-side scripting language that has been designed specifically for web application development. Using PHP will we collect the data from the form, validated any required fields, compile the data into a [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Session 1:</strong> Today we will start developing the PHP required to process the information collected in our forms. PHP (PHP Hypertext Pre-processor) is a server-side scripting language that has been designed specifically for web application development. Using PHP will we collect the data from the form, validated any required fields, compile the data into a message format, and email the results to ourselves. </p>
<p>In order to validate the information efficiently it is important to make sure that the form itself is a PHP document. PHP documents may be a combination of HTML, Javascript, CSS and PHP. In this case it is mostly XHTML, but take note of the PHP instructions dispersed throughout this example:  </p>
<pre class="brush: xml; title: ; notranslate">
&lt;form action=&quot;&lt;?php echo $_SERVER[PHP_SELF] ?&gt;&quot; method=&quot;post&quot; name=&quot;form_demo&quot; onSubmit=&quot;return validate_form('Form Demo');&quot;&gt;
  &lt;h3&gt;Personal Information&lt;/h3&gt;
  &lt;fieldset&gt;
  &lt;label class=&quot;field-first&quot;&gt;First Name*
  &lt;input type=&quot;text&quot; name=&quot;first_name&quot; value=&quot;&lt;?php echo $_POST[first_name] ?&gt;&quot; /&gt;
  &lt;/label&gt;
  &lt;label class=&quot;field-last&quot;&gt;Last Name*
  &lt;input type=&quot;text&quot; name=&quot;last_name&quot; value=&quot;&lt;?php echo $_POST[last_name] ?&gt;&quot; /&gt;
  &lt;/label&gt;
  &lt;label class=&quot;field-address&quot;&gt;Home Address*
  &lt;input type=&quot;text&quot; name=&quot;address&quot; value=&quot;&lt;?php echo $_POST[address] ?&gt;&quot; /&gt;
  &lt;/label&gt;
  &lt;label class=&quot;field-city&quot;&gt;City*
  &lt;input type=&quot;text&quot; name=&quot;city&quot; value=&quot;&lt;?php echo $_POST[city] ?&gt;&quot; /&gt;
  &lt;/label&gt;
  &lt;label class=&quot;field-state&quot;&gt;State*
  &lt;select name=&quot;state&quot;&gt;
    &lt;option value=&quot;MN&quot;&gt;MN&lt;/option&gt;
    &lt;option value=&quot;WI&quot;&gt;WI&lt;/option&gt;
    &lt;option value=&quot;IO&quot;&gt;IO&lt;/option&gt;
    &lt;option value=&quot;IL&quot;&gt;IL&lt;/option&gt;
    &lt;option value=&quot;MI&quot;&gt;MI&lt;/option&gt;
  &lt;/select&gt;
  &lt;/label&gt;
  &lt;label class=&quot;field-postal&quot;&gt;Postal Code*
  &lt;input type=&quot;text&quot; name=&quot;postal&quot; value=&quot;&lt;?php echo $_POST[postal] ?&gt;&quot; /&gt;
  &lt;/label&gt;
  &lt;br style=&quot;clear: left;&quot; /&gt;
  &lt;label class=&quot;field-email&quot;&gt;Email*
  &lt;input type=&quot;text&quot; name=&quot;email&quot; value=&quot;&lt;?php echo $_POST[email] ?&gt;&quot; /&gt;
  &lt;/label&gt;
  &lt;label class=&quot;field-phone&quot;&gt;Phone
  &lt;input type=&quot;text&quot; name=&quot;phone&quot; value=&quot;&lt;?php echo $_POST[phone] ?&gt;&quot; /&gt;
  &lt;/label&gt;
  &lt;/fieldset&gt;
  &lt;h3&gt;How often do you eat sushi?&lt;/h3&gt;
  &lt;fieldset&gt;
  &lt;label class=&quot;radioitem&quot; for=&quot;radiobutton1&quot;&gt;&lt;input id=&quot;radiobutton1&quot; type=&quot;radio&quot; name=&quot;sushi&quot; value=&quot;Raw fish? Gross!&quot; /&gt;Raw fish? Gross!&lt;/label&gt;
  &lt;label class=&quot;radioitem&quot; for=&quot;radiobutton2&quot;&gt;&lt;input id=&quot;radiobutton2&quot; type=&quot;radio&quot; name=&quot;sushi&quot; value=&quot;&quot; /&gt;Once in a while&lt;/label&gt;
  &lt;label class=&quot;radioitem&quot; for=&quot;radiobutton3&quot;&gt;&lt;input id=&quot;radiobutton3&quot; type=&quot;radio&quot; name=&quot;sushi&quot; value=&quot;&quot; /&gt;Every payday&lt;/label&gt;
  &lt;label class=&quot;radioitem&quot; for=&quot;radiobutton4&quot;&gt;&lt;input id=&quot;radiobutton4&quot; type=&quot;radio&quot; name=&quot;sushi&quot; value=&quot;&quot; /&gt;Breakfast, lunch, AND dinner&lt;/label&gt;
  &lt;/fieldset&gt;
  &lt;h3&gt;I have never tried...&lt;/h3&gt;
  &lt;fieldset&gt;
  &lt;label for=&quot;checkbox1&quot; class=&quot;field-checkbox&quot;&gt;&lt;input id=&quot;checkbox1&quot; type=&quot;checkbox&quot; name=&quot;never[]&quot; value=&quot;Spelunking&quot; /&gt;Spelunking&lt;/label&gt;
  &lt;label for=&quot;checkbox2&quot; class=&quot;field-checkbox&quot;&gt;&lt;input id=&quot;checkbox2&quot; type=&quot;checkbox&quot; name=&quot;never[]&quot; value=&quot;Exotic Travel&quot; /&gt;Exotic Travel&lt;/label&gt;
  &lt;label for=&quot;checkbox3&quot; class=&quot;field-checkbox&quot;&gt;&lt;input id=&quot;checkbox3&quot; type=&quot;checkbox&quot; name=&quot;never[]&quot; value=&quot;Scuba Diving&quot; /&gt;Scuba Diving&lt;/label&gt;
  &lt;/fieldset&gt;
  &lt;h3&gt;Comments&lt;/h3&gt;
  &lt;fieldset&gt;
  &lt;label class=&quot;field-routine&quot;&gt;What's your morning routine?&lt;br /&gt;&lt;textarea name=&quot;routine&quot; cols=&quot;40&quot; rows=&quot;5&quot;&gt;&lt;/textarea&gt;&lt;/label&gt;
  &lt;/fieldset&gt;
  &lt;h3&gt;Send&lt;/h3&gt;
  &lt;fieldset&gt;
  &lt;label&gt;Click &quot;Send&quot; to post your information&lt;/label&gt;
  &lt;input type=&quot;submit&quot; name=&quot;submit&quot; value=&quot;Send&quot; /&gt;
  &lt;input type=&quot;hidden&quot; name=&quot;submitted&quot; value=&quot;true&quot; /&gt;
  &lt;/fieldset&gt;
&lt;/form&gt;
</pre>
<p><strong>Session 2:</strong> The next step in completing our form project involves creating the logic necessary to process the data entered into the form by the user. The code I&#8217;ll be demonstrating today will perform several tasks using PHP. </p>
<p>1. We&#8217;ll use a PHP include in the form to perform the tasks<br />
2. The first tasks performed will be to validate the data entered into the form<br />
3. The data will be processed to prevent harmful header injection attacks<br />
4. An email will be sent containing all the processed data from the form entry<br />
5. Adequate feedback will be provided for the user as a response message</p>
<p>Take a look at this function that we will be using to validate form input for email addresses:</p>
<pre class="brush: php; title: ; notranslate">
	function is_valid_email($email) {
		$result = true;
		$pattern = '/^([a-z0-9])(([-a-z0-9._])*([a-z0-9]))*\@([a-z0-9])' .
'(([a-z0-9-])*([a-z0-9]))+' . '(\.([a-z0-9])([-a-z0-9_-])?([a-z0-9])+)+$/i';
		if(!preg_match($pattern, $email)) {
			$result = false;
		}
		return $result;
	}
</pre>
]]></content:encoded>
			<wfw:commentRss>http://aim.johnkeston.com/im2420/week-6-4/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Week 7</title>
		<link>http://aim.johnkeston.com/im2420/week-7-5/</link>
		<comments>http://aim.johnkeston.com/im2420/week-7-5/#comments</comments>
		<pubDate>Mon, 25 Aug 2008 15:14:44 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[IM2420 Fundamentals of Scripting Languages]]></category>

		<guid isPermaLink="false">http://aim.johnkeston.com/im2420/week-7-5/</guid>
		<description><![CDATA[Session 1: Let&#8217;s finish working on our form projects today, so that we can move on to the next assignment that involves delving deeper into the possibilities of Javascript within web application design. We will be looking at several Javascript frameworks and then utilize JQuery to implement motion graphic elements into a web application. There [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Session 1: </strong>Let&#8217;s finish working on our form projects today, so that we can move on to the next assignment that involves delving deeper into the possibilities of Javascript within web application design. We will be looking at several Javascript frameworks and then utilize <a href="http://jquery.com/" target="_blank">JQuery</a> to implement motion graphic elements into a web application. There are many advantages to using pre-existing Javascript frameworks, rather than writing new code from the ground up. </p>
<p>1. You are not reinventing the wheel<br />
2. Browser compatibility in built into most frameworks<br />
3. Large development and support communities surround the projects<br />
4. Security exploits are quickly found and resolved by the developer community</p>
<p>Reading Assignment:<br />
<a href="http://docs.jquery.com/How_jQuery_Works " target="_blank">How jQuery Works</a><br />
<a href="http://jqueryvsmootools.com/" target="_blank">jQuery vs. MooTools</a></p>
<p><strong>Sessione 2:</strong> Today we will be discussing the requirements for the next project as well as having a look at your form projects. </p>
<p>Javascript Framework Project:<br />
In this project we will be using a Javascript framework called JQuery to add functionality beyond what is possible with XHTML and CSS alone. Due on session 2 of week 8.</p>
<p>1. Use JQuery to animate hidden content into view<br />
2. Integrate JQuery animation techniques to text navigation<br />
3. Apply one or more tutorials from <a href="http://docs.jquery.com/Tutorials" target="_blank">http://docs.jquery.com/Tutorials</a> under one of the following headings:<br />
&nbsp; &nbsp; a) General Tutorials<br />
&nbsp; &nbsp; b) Manipulation, Attributes, and CSS<br />
&nbsp; &nbsp; c) Traversing and Selectors<br />
&nbsp; &nbsp; d) Using jQuery with&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://aim.johnkeston.com/im2420/week-7-5/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Week 8</title>
		<link>http://aim.johnkeston.com/im2420/week-8-5/</link>
		<comments>http://aim.johnkeston.com/im2420/week-8-5/#comments</comments>
		<pubDate>Wed, 03 Sep 2008 13:49:11 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[IM2420 Fundamentals of Scripting Languages]]></category>

		<guid isPermaLink="false">http://aim.johnkeston.com/im2420/week-8-5/</guid>
		<description><![CDATA[Session 1: Today I&#8217;ll be demonstrating how to enable a Javascript framework within an HTML document. We will also start looking at how to apply functionality that exists in the framework to our web applications, including content animation behaviors as shown here: http://wayfarerweb.com/animate-example.php Session 2: After discussing the final project requirements we will look at [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Session 1:</strong> Today I&#8217;ll be demonstrating how to enable a Javascript framework within an HTML document. We will also start looking at how to apply functionality that exists in the framework to our web applications, including content <a href="http://wayfarerweb.com/animate-example.php">animation</a> behaviors as shown here:</p>
<p><a href="http://wayfarerweb.com/animate-example.php">http://wayfarerweb.com/animate-example.php</a></p>
<p><strong>Session 2:</strong> After discussing the final project requirements we will look at your JQuery exercises. </p>
<p><strong>Final Project Requirements:</strong><br />
The final project we are producing for this class involves creating a web application with a minimum of six content areas. The site content must be formatted using XHTML and CSS. It is also required that the site use behaviors included in the <a href="http://jquery.com">JQuery</a> Javascript framework.</p>
<p><strong>Final Web Application Content:</strong><br />
1. Portfolio sites are not acceptable<br />
2. Create something that might be suited for your portfolio<br />
3. Sites for organizations or businesses work well<br />
4. Informational sites are also acceptable (FAQ, etc.)</p>
<p><strong>Final Web Application Requirements:</strong><br />
1. You must include a minimum of 6 content areas<br />
2. All content must be formatted with XHTML and CSS<br />
3. It is required that the JQuery Javascript framework is used for animations, etc.<br />
4. Use JQuery to animate hidden content into view<br />
5. Apply one or more tutorials from <a href="http://docs.jquery.com/Tutorials" target="_blank">http://docs.jquery.com/Tutorials</a> under one of the following headings:<br />
&nbsp; &nbsp; a) General Tutorials<br />
&nbsp; &nbsp; b) Manipulation, Attributes, and CSS<br />
&nbsp; &nbsp; c) Traversing and Selectors<br />
&nbsp; &nbsp; d) Using jQuery with&#8230;<br />
&nbsp; &nbsp; e) Interface<br />
6. You may use Flash if necessary, however, all Flash sites are unacceptable for this project</p>
<p><strong>Final Web Application Evaluation:</strong><br />
1. All requirements must be met to achieve a passing grade on the final<br />
2. The SCANMIC criteria will be used to evaluate the design and functionality</p>
]]></content:encoded>
			<wfw:commentRss>http://aim.johnkeston.com/im2420/week-8-5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Week 9</title>
		<link>http://aim.johnkeston.com/im2420/week-9-5/</link>
		<comments>http://aim.johnkeston.com/im2420/week-9-5/#comments</comments>
		<pubDate>Wed, 03 Sep 2008 21:44:12 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[IM2420 Fundamentals of Scripting Languages]]></category>

		<guid isPermaLink="false">http://aim.johnkeston.com/im2420/week-9-5/</guid>
		<description><![CDATA[Session 1: Let&#8217;s continue examining JQuery behaviors and how we can apply them to our web applications. Also, here are the requirements for the mockup milestone which are due before class starts on Session 2 of Week 9. Mockup Milestone: Two mockups of one page design are required for in class critiques on Session 2, [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Session 1:</strong> Let&#8217;s continue examining JQuery behaviors and how we can apply them to our web applications. Also, here are the requirements for the mockup milestone which are due before class starts on Session 2 of Week 9.</p>
<p><strong>Mockup Milestone:</strong><br />
Two mockups of one page design are required for in class critiques on Session 2, Week 9<br />
1. Create a minimum of two mockups of a single page that contains a typical amount of content<br />
2. No mockups of splash pages!<br />
3. Try changing navigation, typefaces, layout, color schemes and/or logos<br />
4. Acceptable formats include: jpg, gif, png, pdf, html<br />
5. Presenting your mockups in class earns you 5% of the points for the final project<br />
6. Place your mockups in a folder under your name on the drop off drive before class on session 2, week 9 (next session).</p>
<p><strong>Session 2:</strong> Today we will be reviewing everyone&#8217;s mockups in class. This is a group participation project that will last most of the session due to the size of the class. </p>
]]></content:encoded>
			<wfw:commentRss>http://aim.johnkeston.com/im2420/week-9-5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Week 10</title>
		<link>http://aim.johnkeston.com/im2420/week-10-5/</link>
		<comments>http://aim.johnkeston.com/im2420/week-10-5/#comments</comments>
		<pubDate>Wed, 17 Sep 2008 03:18:28 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[IM2420 Fundamentals of Scripting Languages]]></category>

		<guid isPermaLink="false">http://aim.johnkeston.com/im1480/week-10-5/</guid>
		<description><![CDATA[Session 1: Let try to continue to get a better understanding of how jQuery works and apply it to our finals. Also, we&#8217;ll be discussing how things are going on your final projects. Session 2: Prior to presenting your milestone, most of the day will be focused on individually answering questions and help with troubleshooting. [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Session 1:</strong> Let try to continue to get a better understanding of how jQuery works and apply it to our finals. Also, we&#8217;ll be discussing how things are going on your final projects.</p>
<p><strong>Session 2:</strong> Prior to presenting your milestone, most of the day will be focused on individually answering questions and help with troubleshooting.</p>
<p><strong>Prototype Milestone</strong><br />
Today I would like to see a working prototype of your final project.</p>
<p>1. Include working navigation to a minimum of three pages<br />
2. Demonstrate  the use of CSS in your layout<br />
3. Discuss how you intent to use Javascript behaviors in your site</p>
]]></content:encoded>
			<wfw:commentRss>http://aim.johnkeston.com/im2420/week-10-5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Week 11</title>
		<link>http://aim.johnkeston.com/im2420/week-11-6/</link>
		<comments>http://aim.johnkeston.com/im2420/week-11-6/#comments</comments>
		<pubDate>Wed, 17 Sep 2008 15:17:09 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[IM2420 Fundamentals of Scripting Languages]]></category>

		<guid isPermaLink="false">http://aim.johnkeston.com/?p=161</guid>
		<description><![CDATA[Session 1: Today we&#8217;ll critique your final projects. These critiques are a required component for you final project, so don&#8217;t miss the class. If you have an emergency and can&#8217;t be in class, let me know as soon as possible. If we have anytime after the critiques we can continue reviewing for the final exam. [...]]]></description>
			<content:encoded><![CDATA[<p>Session 1: Today we&#8217;ll critique your final projects. These critiques are a required component for you final project, so don&#8217;t miss the class. If you have an emergency and can&#8217;t be in class, let me know as soon as possible. If we have anytime after the critiques we can continue reviewing for the final exam.</p>
<p>Session 2: Take final exam. No late work will be accepted after this date. I hope you all enjoyed this class. Thanks, and have a good break!</p>
]]></content:encoded>
			<wfw:commentRss>http://aim.johnkeston.com/im2420/week-11-6/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Examples from Class</title>
		<link>http://aim.johnkeston.com/im2420/examples-from-class/</link>
		<comments>http://aim.johnkeston.com/im2420/examples-from-class/#comments</comments>
		<pubDate>Fri, 25 Sep 2009 21:29:34 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[IM2420 Fundamentals of Scripting Languages]]></category>

		<guid isPermaLink="false">http://aim.johnkeston.com/?p=190</guid>
		<description><![CDATA[Here are archives of the examples shown in class that were stored on the WDIM drive during the course. Summer 2011: IM2420 Summer 2011 Examples]]></description>
			<content:encoded><![CDATA[<p>Here are archives of the examples shown in class that were stored on the WDIM drive during the course. </p>
<p>Summer 2011:<br />
<a href='http://aim.johnkeston.com/wp-content/uploads/2009/09/IM2420_SU2011_Examples.zip'>IM2420 Summer 2011 Examples</a></p>
]]></content:encoded>
			<wfw:commentRss>http://aim.johnkeston.com/im2420/examples-from-class/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

