<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss'><id>tag:blogger.com,1999:blog-12931054</id><updated>2009-05-06T00:18:56.681-07:00</updated><title type='text'>Studio Sedition: Designing with Code</title><subtitle type='html'>Kris Hadlock has been a contract web developer and designer since 1996. He is the author of Ajax for Web Application Developers, the founder of Studio Sedition, a web application development firm, and is the cofounder of 33Inc. He maintains a blog called Designing with Code, which focuses on web application development from a design perspective and often features useful code snippets to help enhance web applications. You can find out more about Kris on his web site at www.krishadlock.com.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://blog.studiosedition.com/atom.xml'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default'/><link rel='alternate' type='text/html' href='http://blog.studiosedition.com/index.php'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default?start-index=26&amp;max-results=25'/><author><name>Kris Hadlock</name><email>noreply@blogger.com</email></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>74</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-12931054.post-6814053712995633540</id><published>2009-04-02T09:35:00.001-07:00</published><updated>2009-04-02T10:09:19.221-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='distant measures'/><category scheme='http://www.blogger.com/atom/ns#' term='products'/><title type='text'>Distant Measures product announcement</title><content type='html'>Blog posts have been scarce on Studio Sedition because we've been busy releasing our latest product: &lt;a href="http://www.distantmeasures.com"&gt;Distant Measures&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Distant Measures encompasses all the features of typical email marketing software such as newsletter creation, templates, list management and statistics. However there are many tools not leveraged in other software that can help you retain your audience and deliver your messages more effectively. Automatic event, research and podcast integration with newsletters, social networking and RSS syndication are a few of the additional ways Distant Measures helps differentiate your marketing and broadcast your message to a larger audience.&lt;br /&gt;&lt;br /&gt;We offer a free account to get you started and for a limited time get $10 off any account for the first month with the following coupon code &lt;a href="http://www.distantmeasures.com/app/account"&gt;DM09-10OFF&lt;/a&gt;. Visit www.distantmeasures.com to check out the full list of services we offer or check out our &lt;a href="http://distantmeasures.blogspot.com"&gt;product blog&lt;/a&gt; to get the latest updates.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12931054-6814053712995633540?l=blog.studiosedition.com%2Findex.php' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/6814053712995633540/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=12931054&amp;postID=6814053712995633540' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/6814053712995633540'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/6814053712995633540'/><link rel='alternate' type='text/html' href='http://blog.studiosedition.com/2009_04_01_studiosedition_archive.php#6814053712995633540' title='Distant Measures product announcement'/><author><name>Kris Hadlock</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09864955849840846299'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12931054.post-9033526037818294904</id><published>2008-11-13T08:12:00.000-08:00</published><updated>2008-11-13T08:36:06.471-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vexxhost'/><category scheme='http://www.blogger.com/atom/ns#' term='ffmpeg'/><category scheme='http://www.blogger.com/atom/ns#' term='php'/><title type='text'>ffmpeg on vexxhost</title><content type='html'>I'm currently working on a video conversion project on a vexxhost server using ffmpeg. I was using &lt;a href="http://vexxhost.com/blog/2007/05/20/how-to-convertencode-files-to-flv-using-ffmpeg-php/#" target="_blank"&gt;this article&lt;/a&gt; as a guideline for conversion on the vexxhost server, but apparently the ffmpeg_movie class does not exist... after some digging I found a solution.&lt;br /&gt;&lt;br /&gt;First, download the &lt;a href="http://getid3.sourceforge.net" target="_blank"&gt;getid3&lt;/a&gt; package in order to access all of the properties you'll need from your uploaded videos. It may not be a pretty as using the ffmpeg_movie class, but if you don't have the option and you're hung up on using a class, you can always write your own.&lt;br /&gt;&lt;br /&gt;require_once('getid3/getid3.php');&lt;br /&gt;$getID3 = new getID3();&lt;br /&gt;$fileinfo = $getID3-&gt;analyze('path/to/originalfile');&lt;br /&gt;getid3_lib::CopyTagsToComments($fileinfo);&lt;br /&gt;if(!empty($fileinfo['video']['resolution_x'])) echo '&lt;p&gt; Video width: '.$fileinfo['video']['resolution_x'].'&lt;/p&gt;';&lt;br /&gt;if(!empty($fileinfo['video']['resolution_y'])) echo '&lt;p&gt; Video height: '.$fileinfo['video']['resolution_y'].'&lt;/p&gt;';&lt;br /&gt;exec("/usr/local/bin/ffmpeg -i 'path/to/originalfile' -ar 22050 -ab 32 -f flv -s ". $fileinfo['video']['resolution_x'] ."x". $fileinfo['video']['resolution_y'] ." 'path/to/convertedfile'");&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12931054-9033526037818294904?l=blog.studiosedition.com%2Findex.php' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/9033526037818294904/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=12931054&amp;postID=9033526037818294904' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/9033526037818294904'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/9033526037818294904'/><link rel='alternate' type='text/html' href='http://blog.studiosedition.com/2008_11_01_studiosedition_archive.php#9033526037818294904' title='ffmpeg on vexxhost'/><author><name>Kris Hadlock</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09864955849840846299'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12931054.post-8936626700097504771</id><published>2008-10-08T13:33:00.000-07:00</published><updated>2008-10-08T17:01:00.901-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='php'/><title type='text'>Query String to Object</title><content type='html'>One thing that has always bothered me about PHP is referencing associative arrays for queries, sessions, etc. Here's an example of a quick fix using type casting to make your development a little more object oriented.&lt;br /&gt;&lt;br /&gt;$query = (object)$_GET;&lt;br /&gt;&lt;br /&gt;Now, instead of referencing: $_GET['property']&lt;br /&gt;We can use: $query-&gt;property&lt;br /&gt;&lt;br /&gt;Note: This only works in PHP5 and above.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12931054-8936626700097504771?l=blog.studiosedition.com%2Findex.php' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/8936626700097504771/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=12931054&amp;postID=8936626700097504771' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/8936626700097504771'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/8936626700097504771'/><link rel='alternate' type='text/html' href='http://blog.studiosedition.com/2008_10_01_studiosedition_archive.php#8936626700097504771' title='Query String to Object'/><author><name>Kris Hadlock</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09864955849840846299'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12931054.post-4567654083296610131</id><published>2008-07-14T12:29:00.000-07:00</published><updated>2008-07-14T12:39:14.400-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='The ActionScript 3.0 Migration Guide'/><category scheme='http://www.blogger.com/atom/ns#' term='flash'/><category scheme='http://www.blogger.com/atom/ns#' term='actionscript 3'/><title type='text'>ActionScript Tips</title><content type='html'>The &lt;a href="http://www.peachpit.com/topics/topic.aspx?st=61442"&gt;Five ActionScript Tips in Five Days&lt;/a&gt; blog series for Peachpit is now complete. You can always find these blog posts, along with other articles at &lt;a href="http://www.studiosedition.com/articles"&gt;www.studiosedition.com/articles&lt;/a&gt; or you can subscribe to the &lt;a href="http://www.addthis.com/feed.php?pub=khadlock&amp;h1=http://feeds.feedburner.com/StudioSeditionArticles&amp;t1=Studio%20Sedition:%20Articles"&gt;Studio Sedition article feed&lt;/a&gt;. The blog series is an example of what can be found in my latest book &lt;a href="http://www.amazon.com/ActionScript-3-0-Migration-Guide-Making/dp/0321555589/?tag=krishadlock-20"&gt;The ActionScript 3.0 Migration Guide, The: Making the Move from ActionScript 2.0.&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12931054-4567654083296610131?l=blog.studiosedition.com%2Findex.php' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/4567654083296610131/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=12931054&amp;postID=4567654083296610131' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/4567654083296610131'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/4567654083296610131'/><link rel='alternate' type='text/html' href='http://blog.studiosedition.com/2008_07_01_studiosedition_archive.php#4567654083296610131' title='ActionScript Tips'/><author><name>Kris Hadlock</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09864955849840846299'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12931054.post-895084397916416069</id><published>2008-07-08T10:03:00.000-07:00</published><updated>2008-07-08T10:09:26.419-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='The ActionScript 3.0 Migration Guide'/><category scheme='http://www.blogger.com/atom/ns#' term='actionscript 3'/><title type='text'>Label Statements</title><content type='html'>This week I join the &lt;a href="http://www.peachpit.com/click.ashx?dk=33450&amp;u=002CEFF2-0860-4EFE-BC8F-DB4E7E4AF70C&amp;r=%2fblogs%2f" target="_blank"&gt;Peachpit Commons Blog&lt;/a&gt; with five ActionScript tips to help make your transition from ActionScript 2 to ActionScript 3 a little less painful.&lt;br /&gt;&lt;br /&gt;First up, &lt;a href="http://www.peachpit.com/blogs/blog.aspx?uk=Label-Statements" target="_blank"&gt;Label Staments&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12931054-895084397916416069?l=blog.studiosedition.com%2Findex.php' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/895084397916416069/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=12931054&amp;postID=895084397916416069' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/895084397916416069'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/895084397916416069'/><link rel='alternate' type='text/html' href='http://blog.studiosedition.com/2008_07_01_studiosedition_archive.php#895084397916416069' title='Label Statements'/><author><name>Kris Hadlock</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09864955849840846299'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12931054.post-8661945402732981428</id><published>2008-05-01T14:21:00.000-07:00</published><updated>2008-05-01T14:25:13.574-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='actionscript'/><category scheme='http://www.blogger.com/atom/ns#' term='flash'/><title type='text'>videoPlayer, a reserved word?</title><content type='html'>I have been going crazy trying to determine why I could not add an FLVPlayback component to my AS2 application without creating an infinite loop. Apparently, I had a movie clip that contained the FLVPlayback I was attempting to add, which was named videoPlayer in the library. I'm happy I can rest now, but it leaves me wondering, is videoPlayer a reserved word?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12931054-8661945402732981428?l=blog.studiosedition.com%2Findex.php' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/8661945402732981428/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=12931054&amp;postID=8661945402732981428' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/8661945402732981428'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/8661945402732981428'/><link rel='alternate' type='text/html' href='http://blog.studiosedition.com/2008_05_01_studiosedition_archive.php#8661945402732981428' title='videoPlayer, a reserved word?'/><author><name>Kris Hadlock</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09864955849840846299'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12931054.post-5328590289037486361</id><published>2008-03-10T10:43:00.000-07:00</published><updated>2008-03-10T10:49:05.631-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='flex'/><category scheme='http://www.blogger.com/atom/ns#' term='actionscript'/><category scheme='http://www.blogger.com/atom/ns#' term='adobe'/><category scheme='http://www.blogger.com/atom/ns#' term='flash'/><title type='text'>FileReference to download server-side file</title><content type='html'>I was asked today how to download a server-side file through the FileReference object. The issue was that the server-side file was executing before downloading. The FileReference object uses http, rather than ftp, to download files, so any server-side script will execute before being downloaded. You either need to zip it and use the zip as a download or use an intermediate server-side file to write and return a server-side file for download.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12931054-5328590289037486361?l=blog.studiosedition.com%2Findex.php' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/5328590289037486361/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=12931054&amp;postID=5328590289037486361' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/5328590289037486361'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/5328590289037486361'/><link rel='alternate' type='text/html' href='http://blog.studiosedition.com/2008_03_01_studiosedition_archive.php#5328590289037486361' title='FileReference to download server-side file'/><author><name>Kris Hadlock</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09864955849840846299'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12931054.post-519250966689624800</id><published>2008-01-15T10:54:00.000-08:00</published><updated>2008-01-15T11:09:07.526-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='flex'/><category scheme='http://www.blogger.com/atom/ns#' term='actionscript'/><category scheme='http://www.blogger.com/atom/ns#' term='flash'/><title type='text'>Casting: String to Boolean</title><content type='html'>Convert the string value of a number to a Boolean with AS:&lt;br /&gt;&lt;br /&gt;&lt;div class="code"&gt;Boolean(Number("0"))&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12931054-519250966689624800?l=blog.studiosedition.com%2Findex.php' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/519250966689624800/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=12931054&amp;postID=519250966689624800' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/519250966689624800'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/519250966689624800'/><link rel='alternate' type='text/html' href='http://blog.studiosedition.com/2008_01_01_studiosedition_archive.php#519250966689624800' title='Casting: String to Boolean'/><author><name>Kris Hadlock</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09864955849840846299'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12931054.post-5904972908218459857</id><published>2007-10-30T09:53:00.000-07:00</published><updated>2007-10-30T10:05:10.265-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='hardware'/><category scheme='http://www.blogger.com/atom/ns#' term='apple'/><title type='text'>Apple Mighty Mouse</title><content type='html'>It's been a year now that I have been using Apples Mighty Mouse and overall I love it, I must say that it is the best mouse I have ever used, but every once in a while the scroll ball will only scroll in one direction. I've been super aggravated the past few days because I have not been able to scroll up. While this may not seem like a big deal, it is something I have become so accustomed to that I really can't work well without it, in this day and age who can be bothered with scroll bars.&lt;br /&gt;&lt;br /&gt;At last, I found the solution and it is so simple I can't believe that I didn't figure it out sooner. If you press hard on the scroll ball and scroll it in all directions it will eventually start working. It only took me about 10 seconds to get mine working again! I'm assuming the ball just gets backed up with dust, etc and it simply needs to be broken loose.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12931054-5904972908218459857?l=blog.studiosedition.com%2Findex.php' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/5904972908218459857/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=12931054&amp;postID=5904972908218459857' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/5904972908218459857'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/5904972908218459857'/><link rel='alternate' type='text/html' href='http://blog.studiosedition.com/2007_10_01_studiosedition_archive.php#5904972908218459857' title='Apple Mighty Mouse'/><author><name>Kris Hadlock</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09864955849840846299'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12931054.post-6988661629981950299</id><published>2007-09-10T10:19:00.000-07:00</published><updated>2007-09-10T10:36:03.986-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ajaxworld'/><category scheme='http://www.blogger.com/atom/ns#' term='database-enabled ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='server-side ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='multi-user'/><title type='text'>AjaxWorld Golden Pass discount</title><content type='html'>As an &lt;a href="http://www.ajaxworld.com/general/sessiondetail0907.htm?id=8" target="_blank"&gt;upcoming speaker&lt;/a&gt; at AjaxWorld West in Santa Clara, CA. I am pleased to be able to offer a &lt;b&gt;$500 discount&lt;/b&gt; for new Golden Pass registrations. Simply use the following referral code to receive your discount: &lt;b&gt;ajaxreferral (case sensitive)&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12931054-6988661629981950299?l=blog.studiosedition.com%2Findex.php' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/6988661629981950299/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=12931054&amp;postID=6988661629981950299' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/6988661629981950299'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/6988661629981950299'/><link rel='alternate' type='text/html' href='http://blog.studiosedition.com/2007_09_01_studiosedition_archive.php#6988661629981950299' title='AjaxWorld Golden Pass discount'/><author><name>Kris Hadlock</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09864955849840846299'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12931054.post-4241951825351348596</id><published>2007-08-08T09:34:00.000-07:00</published><updated>2007-08-08T09:45:24.600-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='studio sedition'/><category scheme='http://www.blogger.com/atom/ns#' term='peachpit'/><category scheme='http://www.blogger.com/atom/ns#' term='informit'/><title type='text'>InformIT and Peachpit</title><content type='html'>As some of you may have noticed many of the article links on Studio Sedition stopped working last night due to the new InformIT and Peachpit web sites. They have all been fixed this morning, sorry for any inconvenience. On the bright side, check out the new design for the sites, it's much cleaner and easier to read the articles.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12931054-4241951825351348596?l=blog.studiosedition.com%2Findex.php' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/4241951825351348596/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=12931054&amp;postID=4241951825351348596' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/4241951825351348596'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/4241951825351348596'/><link rel='alternate' type='text/html' href='http://blog.studiosedition.com/2007_08_01_studiosedition_archive.php#4241951825351348596' title='InformIT and Peachpit'/><author><name>Kris Hadlock</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09864955849840846299'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12931054.post-7609655213206762217</id><published>2007-07-19T21:56:00.000-07:00</published><updated>2007-08-15T21:23:25.123-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ajaxworld'/><category scheme='http://www.blogger.com/atom/ns#' term='server-side ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='events'/><title type='text'>AjaxWorld - At a Glance</title><content type='html'>The schedule for AjaxWorld West in Sanata Clara is starting to fill out. My presentation on &lt;a href="http://www.studiosedition.com/events/AjaxWorld+West"&gt;Creating a Multi-User Server-Side Engine for AJAX&lt;/a&gt; is listed on the first day at 2:20 - 3:05. Here's a link to the full schedule so far: &lt;a href="http://www2.sys-con.com/ajax2007west/schedule.cfm" target="_blank"&gt;http://www2.sys-con.com/ajax2007west/schedule.cfm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;--UPDATE--&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;It looks like my session has been updated to a different time on the same day: 5:40-6:25.&lt;br /&gt;&lt;br /&gt;Hope to see you there.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12931054-7609655213206762217?l=blog.studiosedition.com%2Findex.php' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/7609655213206762217/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=12931054&amp;postID=7609655213206762217' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/7609655213206762217'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/7609655213206762217'/><link rel='alternate' type='text/html' href='http://blog.studiosedition.com/2007_07_01_studiosedition_archive.php#7609655213206762217' title='AjaxWorld - At a Glance'/><author><name>Kris Hadlock</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09864955849840846299'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12931054.post-4551519076792724563</id><published>2007-07-16T12:11:00.000-07:00</published><updated>2007-07-16T12:18:34.961-07:00</updated><title type='text'>Trick question: zip on PC</title><content type='html'>Here's a trick question for you. Let's say that you send a zip file with HTML and images to a client on a PC. They open the HTML and say:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;"I can't see the images in the HTML page"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Why do you think this could be happening?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12931054-4551519076792724563?l=blog.studiosedition.com%2Findex.php' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/4551519076792724563/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=12931054&amp;postID=4551519076792724563' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/4551519076792724563'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/4551519076792724563'/><link rel='alternate' type='text/html' href='http://blog.studiosedition.com/2007_07_01_studiosedition_archive.php#4551519076792724563' title='Trick question: zip on PC'/><author><name>Kris Hadlock</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09864955849840846299'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12931054.post-393374107336916228</id><published>2007-07-12T11:26:00.000-07:00</published><updated>2007-07-12T11:53:13.425-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ajaxworld'/><category scheme='http://www.blogger.com/atom/ns#' term='database-enabled ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='events'/><title type='text'>AjaxWorld in Santa Clara, CA</title><content type='html'>Sessions for the upcoming AjaxWorld in Santa Clara, CA are in the process of being posted: &lt;a href="http://www.ajaxworld.com/general/sessions0907.htm" target="_blank"&gt;http://www.ajaxworld.com/general/sessions0907.htm&lt;/a&gt;. The event is occurring Sept. 24-27 2007 with some heavy hitters such as Jouk Pleiter (Backbase) and Adam Sah (Google).&lt;br /&gt;&lt;br /&gt;You can also check out my session details: &lt;a href="http://www.ajaxworld.com/general/sessiondetail0907.htm?id=8" target="_blank"&gt;http://www.ajaxworld.com/general/sessiondetail0907.htm?id=8&lt;/a&gt; on Creating a Multi-User Server-Side Engine for AJAX.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12931054-393374107336916228?l=blog.studiosedition.com%2Findex.php' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/393374107336916228/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=12931054&amp;postID=393374107336916228' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/393374107336916228'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/393374107336916228'/><link rel='alternate' type='text/html' href='http://blog.studiosedition.com/2007_07_01_studiosedition_archive.php#393374107336916228' title='AjaxWorld in Santa Clara, CA'/><author><name>Kris Hadlock</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09864955849840846299'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12931054.post-2827682532749774776</id><published>2007-06-25T11:46:00.000-07:00</published><updated>2007-06-25T11:57:59.980-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='flash bug'/><category scheme='http://www.blogger.com/atom/ns#' term='actionscript'/><category scheme='http://www.blogger.com/atom/ns#' term='flash'/><title type='text'>Consecutive onRelease/onPress bug</title><content type='html'>Here's an old issue that suddenly stumped me today. I have a button that acts as navigation and tends to be clicked consecutively in order to advance from screen to screen. The action would only register the first time unless the mouse was moved. Since I had such a hard time finding a solution online I thought that I would add mine to the few I found.&lt;br /&gt;&lt;br /&gt;&lt;div class="code"&gt;btn.onRelease = function()&lt;br /&gt;{&lt;blockquote&gt;this._focusrect = false;&lt;br /&gt;Selection.setFocus(this);&lt;/blockquote&gt;}&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Feel free to add your two cents, I would love to see other solutions.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12931054-2827682532749774776?l=blog.studiosedition.com%2Findex.php' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/2827682532749774776/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=12931054&amp;postID=2827682532749774776' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/2827682532749774776'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/2827682532749774776'/><link rel='alternate' type='text/html' href='http://blog.studiosedition.com/2007_06_01_studiosedition_archive.php#2827682532749774776' title='Consecutive onRelease/onPress bug'/><author><name>Kris Hadlock</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09864955849840846299'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12931054.post-4830503801649797959</id><published>2007-06-14T12:37:00.000-07:00</published><updated>2007-06-14T15:15:40.289-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='lms'/><category scheme='http://www.blogger.com/atom/ns#' term='actionscript'/><category scheme='http://www.blogger.com/atom/ns#' term='defensive programming'/><title type='text'>Why defensive programming is important</title><content type='html'>&lt;b&gt;The situation:&lt;/b&gt;&lt;br /&gt;A flash movie that uses the ExternalInterface to receive data from the LMS through JavaScript.&lt;br /&gt;Receiving the data just fine.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;The issue:&lt;/b&gt;&lt;br /&gt;The movie freezes as soon as the data is received.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;The solution:&lt;/b&gt;&lt;br /&gt;When the course initially launches the lesson_location is undefined. Apparently Flash freaks out when setting a variable to an undefined value through the ExternalInterface, so its as simple as setting the lesson_location to 0 in the JavaScript if it is undefined.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12931054-4830503801649797959?l=blog.studiosedition.com%2Findex.php' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/4830503801649797959/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=12931054&amp;postID=4830503801649797959' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/4830503801649797959'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/4830503801649797959'/><link rel='alternate' type='text/html' href='http://blog.studiosedition.com/2007_06_01_studiosedition_archive.php#4830503801649797959' title='Why defensive programming is important'/><author><name>Kris Hadlock</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09864955849840846299'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12931054.post-6312494359964260527</id><published>2007-06-14T10:10:00.000-07:00</published><updated>2007-06-14T15:17:59.813-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ajaxworld'/><category scheme='http://www.blogger.com/atom/ns#' term='framework'/><category scheme='http://www.blogger.com/atom/ns#' term='components'/><title type='text'>News coverage from AjaxWorld East</title><content type='html'>The news is out from AjaxWorld East and my free slideshow and code samples from the event are featured. &lt;a href="http://www.ajaxworldconference.com/general/newscoverage.htm" target="blank"&gt;Check it out and take the freebies&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12931054-6312494359964260527?l=blog.studiosedition.com%2Findex.php' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/6312494359964260527/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=12931054&amp;postID=6312494359964260527' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/6312494359964260527'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/6312494359964260527'/><link rel='alternate' type='text/html' href='http://blog.studiosedition.com/2007_06_01_studiosedition_archive.php#6312494359964260527' title='News coverage from AjaxWorld East'/><author><name>Kris Hadlock</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09864955849840846299'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12931054.post-4382069003035205022</id><published>2007-05-08T14:17:00.000-07:00</published><updated>2007-05-08T14:21:06.074-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='database-enabled ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='framework'/><category scheme='http://www.blogger.com/atom/ns#' term='ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='design patterns'/><category scheme='http://www.blogger.com/atom/ns#' term='ajax for web application developers'/><category scheme='http://www.blogger.com/atom/ns#' term='components'/><title type='text'>Ajax for Web Application Developers Source Code</title><content type='html'>I have great news... The source code for &lt;a href="http://www.amazon.com/exec/obidos/redirect?link_code=as2&amp;path=ASIN/0672329123&amp;tag=krishadlock-20&amp;camp=1789&amp;creative=9325" target="_blank"&gt;Ajax for Web Application Developers&lt;/a&gt; is now available for download on Studio Sedition. &lt;a href="http://www.studiosedition.com/publications"&gt;http://www.studiosedition.com/publications&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Today I spoke with Sams Publishing regarding issues with readers getting access to the code on their web site and they are allowing me to add the source code to my web site. They also said that the source code will be available directly on the book page of their web site.&lt;br /&gt;&lt;br /&gt;To everyone who has had issues getting the source code, I truly apologize.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12931054-4382069003035205022?l=blog.studiosedition.com%2Findex.php' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/4382069003035205022/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=12931054&amp;postID=4382069003035205022' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/4382069003035205022'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/4382069003035205022'/><link rel='alternate' type='text/html' href='http://blog.studiosedition.com/2007_05_01_studiosedition_archive.php#4382069003035205022' title='Ajax for Web Application Developers Source Code'/><author><name>Kris Hadlock</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09864955849840846299'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12931054.post-4104696193875303454</id><published>2007-05-07T13:02:00.000-07:00</published><updated>2007-05-07T13:07:30.739-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='dhtml'/><category scheme='http://www.blogger.com/atom/ns#' term='mysql'/><category scheme='http://www.blogger.com/atom/ns#' term='ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='design'/><category scheme='http://www.blogger.com/atom/ns#' term='actionscript'/><category scheme='http://www.blogger.com/atom/ns#' term='php'/><category scheme='http://www.blogger.com/atom/ns#' term='flash'/><category scheme='http://www.blogger.com/atom/ns#' term='html'/><category scheme='http://www.blogger.com/atom/ns#' term='css'/><title type='text'>Call for contractors</title><content type='html'>Studio Sedition is looking for a few &lt;b&gt;top notch contractors&lt;/b&gt; to help with some ongoing web design and development work. If you are interested in finding out more details let us know what you know and why you think that you'd be a good fit: &lt;a href="http://www.studiosedition.com/contact"&gt;http://www.studiosedition.com/contact&lt;/a&gt;. Please allow us some time to get back in touch with you.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12931054-4104696193875303454?l=blog.studiosedition.com%2Findex.php' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/4104696193875303454/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=12931054&amp;postID=4104696193875303454' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/4104696193875303454'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/4104696193875303454'/><link rel='alternate' type='text/html' href='http://blog.studiosedition.com/2007_05_01_studiosedition_archive.php#4104696193875303454' title='Call for contractors'/><author><name>Kris Hadlock</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09864955849840846299'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12931054.post-256794195487349928</id><published>2007-05-06T10:01:00.000-07:00</published><updated>2007-05-06T10:10:12.738-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mysql'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='php'/><category scheme='http://www.blogger.com/atom/ns#' term='iis'/><title type='text'>PHP 5 installation on Windows 2003/IIS 6</title><content type='html'>Since I have had such a fun time installing PHP 5 on a Windows 2003 server/IIS 6 this weekend, I thought that I would share the fun with you all. I have installed PHP many, many times, but this one was a real pain... The short answer is to follow the directions at: &lt;a href="http://tinyurl.com/m8uud" target="_blank"&gt;http://tinyurl.com/m8uud&lt;/a&gt; and get the downloads from &lt;a href="http://us.php.net/downloads.php" target="_blank"&gt;http://us.php.net/downloads.php&lt;/a&gt;. There are many explainations on the downloads page at php.net and I did many searches on Google, but this is the only one that worked for this server. Hope this helps someone save the time I lost.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12931054-256794195487349928?l=blog.studiosedition.com%2Findex.php' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/256794195487349928/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=12931054&amp;postID=256794195487349928' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/256794195487349928'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/256794195487349928'/><link rel='alternate' type='text/html' href='http://blog.studiosedition.com/2007_05_01_studiosedition_archive.php#256794195487349928' title='PHP 5 installation on Windows 2003/IIS 6'/><author><name>Kris Hadlock</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09864955849840846299'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12931054.post-5087451835420842483</id><published>2007-05-03T22:08:00.000-07:00</published><updated>2007-05-04T09:35:42.221-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='3D'/><category scheme='http://www.blogger.com/atom/ns#' term='chalk'/><category scheme='http://www.blogger.com/atom/ns#' term='art'/><category scheme='http://www.blogger.com/atom/ns#' term='illusion'/><title type='text'>3D Illusions</title><content type='html'>I was recently introduced to Julian Beever's chalk drawing work, it is brilliant. Check out the 3D illusions, some of these look incredibly real: &lt;a href="http://users.skynet.be/J.Beever/pave.htm"&gt;http://users.skynet.be/J.Beever/pave.htm&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12931054-5087451835420842483?l=blog.studiosedition.com%2Findex.php' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/5087451835420842483/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=12931054&amp;postID=5087451835420842483' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/5087451835420842483'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/5087451835420842483'/><link rel='alternate' type='text/html' href='http://blog.studiosedition.com/2007_05_01_studiosedition_archive.php#5087451835420842483' title='3D Illusions'/><author><name>Kris Hadlock</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09864955849840846299'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12931054.post-5940051058873232392</id><published>2007-05-03T22:02:00.000-07:00</published><updated>2007-05-03T22:07:25.217-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='database-enabled ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='itworld'/><category scheme='http://www.blogger.com/atom/ns#' term='events'/><title type='text'>IT360: Sample code from Real World Ajax</title><content type='html'>The source code from my Real World Ajax presentation at IT360 is now available for download: &lt;a href="http://www.studiosedition.com/events/IT360"&gt;http://www.studiosedition.com/events/IT360&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12931054-5940051058873232392?l=blog.studiosedition.com%2Findex.php' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/5940051058873232392/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=12931054&amp;postID=5940051058873232392' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/5940051058873232392'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/5940051058873232392'/><link rel='alternate' type='text/html' href='http://blog.studiosedition.com/2007_05_01_studiosedition_archive.php#5940051058873232392' title='IT360: Sample code from Real World Ajax'/><author><name>Kris Hadlock</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09864955849840846299'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12931054.post-405994502017176078</id><published>2007-04-29T16:51:00.000-07:00</published><updated>2007-04-29T17:04:44.435-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='web site'/><title type='text'>A good cause</title><content type='html'>I don't usually blog about web sites that I have developed, but one of my latest, &lt;a href="http://www.philsfriends.org" target="_blank"&gt;Phil's Friends&lt;/a&gt; is really just a great cause. Phil's Friends is an organization that seeks to help patients, families and friends affected by cancer.&lt;br /&gt;&lt;br /&gt;There is even an &lt;a href="http://www.philsfriends.org/?page=6" target="_blank"&gt;Ajax-enabled prayer request page.&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12931054-405994502017176078?l=blog.studiosedition.com%2Findex.php' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/405994502017176078/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=12931054&amp;postID=405994502017176078' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/405994502017176078'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/405994502017176078'/><link rel='alternate' type='text/html' href='http://blog.studiosedition.com/2007_04_01_studiosedition_archive.php#405994502017176078' title='A good cause'/><author><name>Kris Hadlock</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09864955849840846299'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12931054.post-4410941071504354447</id><published>2007-04-24T01:08:00.000-07:00</published><updated>2007-04-24T01:23:35.313-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='studio sedition'/><category scheme='http://www.blogger.com/atom/ns#' term='events'/><category scheme='http://www.blogger.com/atom/ns#' term='articles'/><category scheme='http://www.blogger.com/atom/ns#' term='rss'/><title type='text'>Article and Event Feeds</title><content type='html'>Just a quick note to let you know that the &lt;a href="http://www.studiosedition.com"&gt;Studio Sedition&lt;/a&gt; article and event feeds have officially been launched. By subscribing to the &lt;a href="http://www.addthis.com/feed.php?pub=khadlock&amp;h1=http://feeds.feedburner.com/StudioSeditionArticles&amp;t1=Studio%20Sedition:%20Articles" target="_blank"&gt;article feed&lt;/a&gt; you will immediately start receiving notification about new articles as soon as they are published, while the &lt;a href="http://www.addthis.com/feed.php?pub=khadlock&amp;h1=http://feeds.feedburner.com/StudioSeditionEvents&amp;t1=Studio%20Sedition:%20Events" target="_blank"&gt;event feed&lt;/a&gt; will keep you up to date with company related presentations at upcoming conferences.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12931054-4410941071504354447?l=blog.studiosedition.com%2Findex.php' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/4410941071504354447/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=12931054&amp;postID=4410941071504354447' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/4410941071504354447'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/4410941071504354447'/><link rel='alternate' type='text/html' href='http://blog.studiosedition.com/2007_04_01_studiosedition_archive.php#4410941071504354447' title='Article and Event Feeds'/><author><name>Kris Hadlock</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09864955849840846299'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-12931054.post-8396603382632240225</id><published>2007-03-30T11:38:00.000-07:00</published><updated>2007-03-30T11:39:34.533-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='design'/><category scheme='http://www.blogger.com/atom/ns#' term='actionscript'/><category scheme='http://www.blogger.com/atom/ns#' term='adobe'/><category scheme='http://www.blogger.com/atom/ns#' term='flash'/><title type='text'>Flash CS3 Preview</title><content type='html'>Flash C3 can be previewed on the Flash Magazine web site. It looks amazing, from a design standpoint it integrates with Photoshop and Illustrator, even layers are supported! My favorite is the ActionScript editing and error checking, this has been an issue with Flash for many years and may finally be what all flash developers have been looking for. &lt;a href="http://www.flashmagazine.com/1394.htm" target="_blank"&gt;Check it out for yourself...&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/12931054-8396603382632240225?l=blog.studiosedition.com%2Findex.php' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/8396603382632240225/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=12931054&amp;postID=8396603382632240225' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/8396603382632240225'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/12931054/posts/default/8396603382632240225'/><link rel='alternate' type='text/html' href='http://blog.studiosedition.com/2007_03_01_studiosedition_archive.php#8396603382632240225' title='Flash CS3 Preview'/><author><name>Kris Hadlock</name><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='09864955849840846299'/></author><thr:total xmlns:thr='http://purl.org/syndication/thread/1.0'>0</thr:total></entry></feed>