<?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>absent design &#124; useful simple software &#187; programming</title>
	<atom:link href="http://blog.absentdesign.com/tag/programming/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.absentdesign.com</link>
	<description>useful simple software</description>
	<lastBuildDate>Thu, 02 Feb 2012 02:54:59 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.4</generator>
		<item>
		<title>Prototype time</title>
		<link>http://blog.absentdesign.com/2010/11/prototype-time/</link>
		<comments>http://blog.absentdesign.com/2010/11/prototype-time/#comments</comments>
		<pubDate>Mon, 01 Nov 2010 03:38:47 +0000</pubDate>
		<dc:creator>Reuben</dc:creator>
				<category><![CDATA[design]]></category>
		<category><![CDATA[ipad]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[objective-c]]></category>
		<category><![CDATA[reflections]]></category>
		<category><![CDATA[practice]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[prototype]]></category>

		<guid isPermaLink="false">http://blog.absentdesign.com/?p=432</guid>
		<description><![CDATA[A process I went through a lot in my years as a flash developer went approximately as follows: The client/agency would supply a finished design of a flash site (with complex interactions specified) I&#8217;d question the interaction ideas, but my questions would be dismissed and I&#8217;d have to build the entire site to a full [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-433" title="_1030907" src="http://blog.absentdesign.com/wp-content/uploads/2010/11/1030907.jpg" alt="" width="592" height="278" /></p>

<p>A process I went through a lot in my years as a flash developer went approximately as follows:</p>

<ol>
    <li> The client/agency would supply a finished design of a flash site (with complex interactions specified)</li>
    <li>I&#8217;d question the interaction ideas, but my questions would be dismissed and I&#8217;d have to build the entire site to a full working version</li>
    <li>The client/agency would see the finished version, but be unhappy with the interactions (which <em>they</em> had designed)</li>
    <li>50+ rounds of changes that involved me rebuilding and refactoring huge chunks of code until the client was satisfied</li>
</ol>

<p>What caused this problem in most cases was the lack of allowance early on in a project for <em>prototype time</em>.</p>

<p>I love prototyping &#8211; it&#8217;s great to be able to get a working model of an idea up and running and iron out (or dismiss totally) any issues that arise well before you get in to production.</p>

<p>So&#8230; right now I&#8217;m working on a few different iPad concepts that involve the same general principles:</p>

<ul>
    <li>Adding items to a scrollable list from the a library of items</li>
    <li>rearranging said items</li>
    <li>dragging an item onto another area of the interface to update its properties</li>
</ul>

<p>While I&#8217;ve espoused the<a title="Absent Design: Lo Fi" href="http://blog.absentdesign.com/2010/08/lo-fi/"> advantages of paper prototypes</a> in the past &#8211; I&#8217;m finding it difficult to model complex interactions like multi-touch and drag+drop using lo-fi models. With complex interactions speed, responsiveness, and device limitations are extremely important things to test.</p>

<p>To get around this issue I&#8217;m trying a new prototype workflow: as I come up with an interaction that doesn&#8217;t suit a paper prototype, I&#8217;m building a small, standalone prototype that I can use to test the idea accurately without investing too much time building fully-functional parts of the interface:</p>

<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="592" height="358" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/heWCGsufP2c?fs=1&amp;hl=en_US&amp;rel=0" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="592" height="358" src="http://www.youtube.com/v/heWCGsufP2c?fs=1&amp;hl=en_US&amp;rel=0" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>

<p>The additional advantage of working this way is that while I&#8217;m in the design phase of these projects I&#8217;m still keeping up my coding practice (I&#8217;ve still got a lot to learn with Objective-C) &#8211; each little prototype is a discreet programming challenge that I can commit to without worrying or getting overwhelmed. Each prototype I make is also helping me build up a library of interaction code that I can use in the future if I decide that the idea doesn&#8217;t suit this particular project.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.absentdesign.com/2010/11/prototype-time/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Simple mxmlc compiling on a Mac</title>
		<link>http://blog.absentdesign.com/2009/03/simple-mxmlc-compiling-on-a-mac/</link>
		<comments>http://blog.absentdesign.com/2009/03/simple-mxmlc-compiling-on-a-mac/#comments</comments>
		<pubDate>Fri, 27 Mar 2009 21:33:38 +0000</pubDate>
		<dc:creator>Reuben</dc:creator>
				<category><![CDATA[flash]]></category>
		<category><![CDATA[tutorials]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://absentdesign.wordpress.com/?p=7</guid>
		<description><![CDATA[The problem with being a flash developer from a traditional graphic design background is that there are some things that just don&#8217;t come naturally. One of these is working in a command-line environment. I&#8217;ve been using the Flash IDE as my development environment on the Mac since Flash 4. Around the time of Flash 5 [...]]]></description>
			<content:encoded><![CDATA[<p>The problem with being a flash developer from a traditional graphic design background is that there are some things that just don&#8217;t come naturally. One of these is working in a command-line environment.</p>

<p>I&#8217;ve been using the Flash IDE as my development environment on the Mac since Flash 4. Around the time of Flash 5 I started using BBEdit to edit external .as files, around MX I switched to TextMate for AS2 development, and now use TextMate exclusively for AS3 projects. But I&#8217;ve always used the IDE as my compiler, and there was always my designer&#8217;s preference to use the IDE to draw and layout objects rather than generate everything programatically. In developing my WordPress library I&#8217;ve been forced to bite the bullet and move to MXMLC, for the simple reason that the built in RPC libraries and Ak33m&#8217;s XML-RPC are only available for the Flex SDK.</p>

<p>I&#8217;m basically a total unix-command-line newbie, and there is a real dearth of information for people like me on how to command line compile in the mac environment. There is <a href="http://www.senocular.com/flash/tutorials/as3withmxmlc/">this tutorial by Senocular</a> for the PC, and there are plenty of tutorials out there about using MXML, integrating shell commands to use ANT etc etc, but all of these assume you <em>know what you are doing already</em>.</p>

<p>I <em>don&#8217;t know what I&#8217;m doing</em> though. All I want is to be able to integrate the Flex SDK classes without having to purchase and learn Flex and MXML &#8211; I&#8217;ve discovered  that this is of course not only <em>possible</em>, but <em>easy -</em> not that you&#8217;d know it by looking online.</p>

<h3>Here&#8217;s a way to do it</h3>

<h4>1. Download the Flex2 SDK from <a href="http://labs.adobe.com/technologies/flex/sdk/flex2sdk.html">Adobe Labs</a></h4>

<p>The Flex2 SDK is free! It includes the flex libraries and and the mxmlc compiler you will need to use the command line.</p>

<h4>2. Put the Flex2 SDK somewhere sensible</h4>

<blockquote>I put mine in <code>~/Documents/Library/Flex/flex2_sdk_hf1/</code></blockquote>

<h4>3. Open a terminal window</h4>

<blockquote>Usually <code>~/Applications/Utilities/Terminal.app</code></blockquote>

<h4>4. Navigate to your project folder, eg:</h4>

<blockquote><code>cd Documents/Projects/my_flash_project/Development/</code></blockquote>

<h4>5. Run fcsh</h4>

<p>Fcsh is the <em>Flex Compiler SHell</em>, a wrapper for MXMLC that makes compiling fast and easy. The simplest way to run this command is <strong>use the Finder to navigate to where you put the Flex SDK</strong>, find fcsh (in <code><strong>bin/fcsh</strong></code>) and <strong>drag and drop this file into your terminal window</strong>.</p>

<p>You should now see the following:</p>

<blockquote><code>Adobe Flex Compiler SHell (fcsh)
Version 2.0.1 build 159086
Copyright (c) 2004-2006 Adobe Systems, Inc. All rights reserved.</code>

<code> </code>

<code>(fcsh)</code></blockquote>

<h4>6. Compile your flash app using mxmlc</h4>

<p>The syntax to use is:</p>

<blockquote><code>mxmlc <span style="color:#00ccff;">path/to/MainFileForYourApplication.as</span> -sp <span style="color:#00ccff;">path/to/source/folder</span> -o <span style="color:#00ccff;">relative/path/to/output/filename.swf</span></code></blockquote>

<p>eg:</p>

<blockquote><code>mxmlc <span style="color:#00ccff;">src/com/reubenstanton/Main.as</span> -sp <span style="color:#800080;"><span style="color:#00ccff;">src/</span> </span>-o <span style="color:#00ccff;">../Deployment/main.swf</span></code></blockquote>

<p>The output will be something like:</p>

<blockquote><code>fcsh: Assigned 1 as the compile target id
Loading configuration file /Users/absent/Documents/Library/Flex/flex2_sdk_hf1/frameworks/flex-config.xml
../Deployment/main.swf (82769 bytes)</code></blockquote>

<p>You see that last line <code>../Deployment/main.swf</code>? If you navigate to this folder, you should see your swf sitting there! That&#8217;s it.</p>

<p>As you see above, fcsh <em>Assigned 1 as the compile target id</em>. This is just a shortcut to the compile command you just wrote &#8211; it means next time you want to compile you can just enter<span style="color:#993366;"> </span><code><span style="color:#00ccff;">mxmlc 1</span></code> instead of typing the whole command again.</p>

<h4>Now you can use Flex libraries in your flash projects without learning Flex and MXML.</h4>

<p>This took me hours to figure out, so I hope it helps some of you out there.</p>

<h4>Here are a few resources to help along the way:</h4>

<ul>
    <li><a href="http://labs.adobe.com/technologies/flex/sdk/flex2sdk.html">The Flex2 SDK</a> from Adobe Labs</li>
    <li><a href="http://labs.adobe.com/wiki/index.php/Flex_Compiler_Shell">The Flex Compiler Shell</a> from Adobe Labs</li>
    <li><a href="http://www.osxfaq.com/Tutorials/LearningCenter/">Using the terminal</a> from OSX Faq</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.absentdesign.com/2009/03/simple-mxmlc-compiling-on-a-mac/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>WordPress and AS3 integration</title>
		<link>http://blog.absentdesign.com/2009/03/wordpress-and-as3-integration/</link>
		<comments>http://blog.absentdesign.com/2009/03/wordpress-and-as3-integration/#comments</comments>
		<pubDate>Fri, 27 Mar 2009 19:55:48 +0000</pubDate>
		<dc:creator>Reuben</dc:creator>
				<category><![CDATA[flash]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[xml]]></category>

		<guid isPermaLink="false">http://absentdesign.wordpress.com/?p=5</guid>
		<description><![CDATA[UPDATE: The AS3 Library for the WordPress API is now available. Recently I was searching around for an easy way to build a flash front-end for a WordPress managed website for a friend of mine. I was incredibly surprised to find that there doesn&#8217;t seem to be a properly integrated ActionScript library available for  WordPress XML-RPC, [...]]]></description>
			<content:encoded><![CDATA[<p>UPDATE: The <a href="http://blog.absentdesign.com/as3-library-for-the-wordpress-api/">AS3 Library for the WordPress API is now available</a>.</p>

<p>Recently I was searching around for an easy way to build a flash front-end for a WordPress managed website for a friend of mine. I was incredibly surprised to find that there doesn&#8217;t seem to be a properly integrated ActionScript library available for  <a href="http://codex.wordpress.org/XML-RPC_Support">WordPress XML-RPC</a>, or if one is available, Google and the Actionscript community don&#8217;t seem to know about it.</p>

<p><strong>So I&#8217;ve decided to build one.</strong></p>

<p>I&#8217;ve had a little experience building ActionScript API libraries before when I was testing the <a href="http://artbeatapi.absentdesign.com/">Artbeat API</a> with <a href="http://aqworks.com">AQ</a> &#8211; the Artbeat library has its flaws (not the least of which is no documentation of any kind), and I&#8217;ve learnt a lot from that experience.</p>

<p>My idea is single library that allows you to easily make all of the WordPress, MovableType, and Metaweblog API calls required to integrate flash with WordPress. I&#8217;m using <a href="http://ak33m.com/">Akeem Phillbert&#8217;s</a> <a href="http://code.google.com/p/as3-rpclib/">xml-rpc as3 library</a>, as a base for the XML-RPC calls.</p>

<p>I&#8217;ll be posting my progress here as the library develops.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.absentdesign.com/2009/03/wordpress-and-as3-integration/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

