<?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>Shaun Abram &#187; JavaScript</title>
	<atom:link href="http://www.shaunabram.com/tag/javascript/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.shaunabram.com</link>
	<description>Java and Technology weblog</description>
	<lastBuildDate>Wed, 18 Jan 2012 00:39:03 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>HTML5 talk at Google Technology User Group</title>
		<link>http://www.shaunabram.com/gtug-html5-talk/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=gtug-html5-talk</link>
		<comments>http://www.shaunabram.com/gtug-html5-talk/#comments</comments>
		<pubDate>Wed, 14 Jul 2010 05:38:14 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[Closure]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[gtug]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[JavaScript]]></category>

		<guid isPermaLink="false">http://www.shaunabram.com/?p=824</guid>
		<description><![CDATA[Last Wednesday, I attended a talk on HTML5 at the Silicon Valley Google Technology User Group (SV GTUG). HTML5 is a broad term for the next generation of web technologies, including (obviously) the next and long overdue version of HTML, as well as CSS and JavaScript Libraries. The talk was in 3 sections: The first [...]]]></description>
			<content:encoded><![CDATA[<p>Last Wednesday, I attended <a href="http://www.meetup.com/sv-gtug/calendar/13977944/">a talk on HTML5</a> at the Silicon Valley Google Technology User Group (<a href="http://www.meetup.com/sv-gtug/">SV GTUG</a>). HTML5 is a broad term for the next generation of web technologies, including (obviously) the next and long overdue version of HTML, as well as CSS and JavaScript Libraries. The talk was in 3 sections: The first by Seth Ladd (a Developer Advocate for Google) was an introduction to HTML5; The second by Tab Atkins Jr. (a Software Engineer at Google) was on the new HTML5 &lt;video&gt; and &lt;canvas&gt; tags; And the third and final section was by Nathan Naze (also a software engineer at Google) on the Closure JavaScript Library.  </p>
<p><span id="more-824"></span></p>
<h1>Intro to HTML5</h1>
<p>Seth Ladd&#8217;s introduction was the highlight of the night for me. </p>
<h3>New JavaScript capabilities</h3>
<p>He started talking about the new capabilities of JavaScript Libraries:</p>
<h5>Web storage</h5>
<p>aka Local Storage or DOM Storage<br />
A way to store data on the client side (crash safe), making it crash safe and a good way to store, for example, user preferences. It is similar in some way to cookies, but offers more storage (5-10MB)and better programmatic interfaces.<br />
<a href="http://diveintohtml5.org/storage.html">http://diveintohtml5.org/storage.html</a></p>
<h5>Web SQL Database</h5>
<p>Web Storage is useful for storing simple key value pairs but not for more complex relational data. That is where the new Web SQL Database API comes into play. It brings SQL to the client side. Databases can be created on the fly, updated queried like any server side database and can involve asynchronous transactions for a more responsive user experience.<br />
<a href="http://html5doctor.com/introducing-web-sql-databases/">http://html5doctor.com/introducing-web-sql-databases/</a><br />
<a href="http://openbit.co.uk/?p=135">http://openbit.co.uk/?p=135</a></p>
<h5>Application Cache API</h5>
<p>Prior to HTML, most browsers performed some kind of caching, but it could be inconsistent and of limited value (e.g. try refreshing a web page when you have no internet connection). With the offline application caching API, you (the developer) can specify exactly what should be cached by using a manifest file. This can result in a faster browser experience with less load on the server and, of course, means web pages can still be browsed even when you go offline.</p>
<h5>Web Workers</h5>
<p>Web workers are kind of like threads for your HTML apps. Your can now spawn background workers running scripts in parallel to the main page. </p>
<h5>Web Sockets</h5>
<p>Bi directional, full duplex communication channels over a single TCP socket, designed to be implemented in web browsers and web servers.</p>
<h5>Notifications</h5>
<p>How do we deliver a more desktop like experience to users?<br />
Notifications can appear transiently in upper right hand corner. They fade in and fade out rather than being intrusive or modal.</p>
<h5>Drag &#038; drop</h5>
<p>This was one of the most interesting (at least from a visual perspective) aspects of the new JavaScript APIs. Drag &#038; Drop provides a very desktop like experience. Similar functionality could previously be provided by using libraries with JQuery,  but now you no longer need to do crazy workarounds, or browser specific solutions.</p>
<h5>Geo Location</h5>
<p>Imprecise forms of geolocation have been available for a while, for example via best-guess based on your IP address. But the new Geo Location capabilities provide more reliable ways to provide location specific or customized content and functionality.</p>
<h3>New HTML5 Capabilities</h3>
<p>Seth&#8217;s next section was HTML5 itself, i.e. the new capabilities in HTML itself.</p>
<h5>New semantic tags</h5>
<p>He talked about the new semantic tags (such as section/article/header and aside) that can be used as a way to avoid &#8216;div&#8217;itus.</p>
<h5>New link relations</h5>
<p>Several new rel attributes for the &lt;a&gt; and &lt;ink&gt; elements have been introduced for HTML5. </p>
<h5>Micro data</h5>
<p>Is intended to provide a simple way to embed semantic markup into HTML documents, without the complexities of approaches such as RDFa (Resource Description Framework in Attributes).</p>
<h5>ARIA attributes</h5>
<p>Attributes for enhancing the accessibility of RIAs (Rich Internet Applications)</p>
<h5>New form field types</h5>
<p>e.g. can specify valid input ranges</p>
<h5>Audio &#038; Video</h5>
<p>e.g. audio &#038; video tags can interact with JavaScript, Canvas<br />
e.g. Javascript can control video</p>
<h5>Canvas</h5>
<p>A Canvas is a 2Dimensional drawing surface that can be manipulated pixel by pixel.</p>
<h3>New CSS Capabilities</h3>
<p>Finally, Seth talked about the new CSS aspects of HTML5, including the new font support, columns (no JavaScript required!) and Sliders, which can be implemented using just css with no JavaScript required.</p>
<h1>HTML5 &lt;video&gt; and &lt;canvas&gt; Tags</h1>
<p>The 2nd of the 3 presentations was by Tab Atkins Jr., on the new HTML5 &lt;video&gt; and &lt;canvas&gt; Tags. </p>
<h1>Closure JavaScript Library</h1>
<p>The final presenter was Nathan Naze on the <a href="http://code.google.com/closure/library/">Closure JavaScript Library</a>.<br />
Closure is Google&#8217;s &#8216;Standard Lib&#8217; for JavaScript. It is designed for large scale web development and is the Javascript library behind Google web apps such as GMail, Blogger and Google Books.</p>
<p>It was started in 2005 and is made exclusively by developers working on their 20% projects. </p>
<p>My overall impressions of Closure were that it is a complex, powerful and stable JavaScript library but with a steep learning curve best suited to large scale development (e.g. enterprise apps developed by large teams). It seems a useful library, but not something I would consider using for the upcoming <a href="http://www.meetup.com/sv-gtug/pages/GTUG_Campout:_Silicon_Valley/">GTUG HTML5 campout</a> for example, where something a little more lightweight might be more useful.</p>
<p>Links<br />
<a href="http://www.webreference.com/authoring/languages/html/HTML5/">http://www.webreference.com/authoring/languages/html/HTML5/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.shaunabram.com/gtug-html5-talk/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Silicon Valley Code Camp Notes</title>
		<link>http://www.shaunabram.com/attending-silicon-valley-code-camp/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=attending-silicon-valley-code-camp</link>
		<comments>http://www.shaunabram.com/attending-silicon-valley-code-camp/#comments</comments>
		<pubDate>Sat, 08 Nov 2008 19:58:28 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[threading]]></category>

		<guid isPermaLink="false">http://www.shaunabram.com/?p=22</guid>
		<description><![CDATA[I am at the Silicon Valley Code Camp at the moment. I will try to post some notes on the various talks I attend below&#8230; Day 1: Session 1: JavaScript Session 2: Easing into Agile Session 3: Building Better Tests in Java Session 4: What is Python? Day 2: Session 1: Basics of Threading Session [...]]]></description>
			<content:encoded><![CDATA[<p>I am at the <a href="http://www.siliconvalley-codecamp.com/">Silicon Valley Code Camp</a> at the moment.</p>
<p>I will try to post some notes on the various talks I attend below&#8230;</p>
<p>Day 1:</p>
<ul>
<li>Session 1: <a href="http://shaunabram.com/code-camp-javascript">JavaScript</a></li>
<li>Session 2: <a href="http://www.shaunabram.com/code-camp-easing-into-agile">Easing into Agile</a></li>
<li>Session 3: <a href="http://www.shaunabram.com/code-camp-building-better-tests-in-java">Building Better Tests in Java</a></li>
<li>Session 4: <a href="http://www.shaunabram.com/code-camp-what-is-python">What is Python?</a></li>
</ul>
<p>Day 2:</p>
<ul>
<li>Session 1: <a href="http://www.shaunabram.com/?page_id=24">Basics of Threading </a></li>
<li>Session 2: Introduction to Grails</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.shaunabram.com/attending-silicon-valley-code-camp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

