<?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>Monkey Business &#187; Development</title>
	<atom:link href="http://blog.supadupa.co.za/index.php/category/development/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.supadupa.co.za</link>
	<description>Confessions of a webaholic</description>
	<lastBuildDate>Thu, 02 Sep 2010 15:38:10 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.2</generator>
		<item>
		<title>Drupal 6 &#8211; migrating multisites to a new server</title>
		<link>http://blog.supadupa.co.za/index.php/2010/08/drupal-6-migrating-multisites-to-a-new-server/</link>
		<comments>http://blog.supadupa.co.za/index.php/2010/08/drupal-6-migrating-multisites-to-a-new-server/#comments</comments>
		<pubDate>Thu, 26 Aug 2010 15:32:13 +0000</pubDate>
		<dc:creator>murraybiscuit</dc:creator>
				<category><![CDATA[Drupal]]></category>
		<category><![CDATA[drupal]]></category>
		<category><![CDATA[migrate]]></category>
		<category><![CDATA[multisite]]></category>

		<guid isPermaLink="false">http://blog.supadupa.co.za/?p=136</guid>
		<description><![CDATA[You&#8217;re probably at this page because you tried migrating your multi-site setup from your localhost or dev server, put it live and it&#8217;s broken. Maybe this guide can help a little. Obviously modules and templates are different from site to site, so allow for some variances with your setup. One of the main issues is [...]]]></description>
			<content:encoded><![CDATA[<p>You&#8217;re probably at this page because you tried migrating your multi-site setup from your localhost or dev server, put it live and it&#8217;s broken. Maybe this guide can help a little. Obviously modules and templates are different from site to site, so allow for some variances with your setup.</p>
<p>One of the main issues is that cli access via Drush isn&#8217;t an option in a shared server hosting environment. And a lot of issues happen because you may need to flush caches without logging in. So here&#8217;s the plan of action:</p>
<ol>
<li>Login to site admin.</li>
<li>Clear your caches.</li>
<li>Use the backup and restore module to create a compressed sql dump of your db. Make sure that tables with the name &#8220;cache&#8221; aren&#8217;t selected for backup.</li>
<li>Open the sql backup file and use a text editor to replace all instances of &lt;dev sitename&gt; with &lt;new sitename&gt; and save.</li>
<li>Move all your files to the new server (tarball and extract if possible). Ensure that all hidden .htacess files are also moved across.</li>
<li>Fix permissions issues: core files should be chmod 644, all writable directories should be set to 777 and their content set to 755.  If any files in these directories are created by the web user and are subject to change via the CMS, ensure these files are chmod 777.</li>
<li>Ensure that the temp directory and files directory are writable.</li>
<li>Check that your new setup has the correct sitename for it&#8217;s multisite folder and that the database details in the settings file is correct for the new host.</li>
<li>Restore the database via phpmyadmin / remote sql client etc.</li>
<li>Surf to your new domain &#8211; it should show the offline page if you set it to offline and your database settings are correct.</li>
<li>Go to the admin page (/admin). If that fails, go to /user to login. If you can&#8217;t login, there&#8217;s probably an issue with your server setup or site config above.</li>
<li>Once you&#8217;ve logged in as admin, go to /admin/settings/file-system to check if your file and temp upload directories are setup correctly.</li>
<li>Check to see if your site is now loading properly.</li>
<li>If your images are broken, it could be imagecache &#8211; go to your imagecache setup in the admin section and flush all imagecache items.</li>
<li>Flush all site caches.</li>
<li>I had some issues with css and js_injector modules as well and ended up having to delete the files it generated in the &lt;files&gt; directory and had to recreate all the rules.</li>
</ol>
<p>That&#8217;s all I can think of for now. Hopefully Drupal 7 can sort out some of this somewhat.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.supadupa.co.za/index.php/2010/08/drupal-6-migrating-multisites-to-a-new-server/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Drupal drush for Windows</title>
		<link>http://blog.supadupa.co.za/index.php/2010/07/drupal-drush-for-windows/</link>
		<comments>http://blog.supadupa.co.za/index.php/2010/07/drupal-drush-for-windows/#comments</comments>
		<pubDate>Sun, 25 Jul 2010 16:46:43 +0000</pubDate>
		<dc:creator>murraybiscuit</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Drupal]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://blog.supadupa.co.za/?p=132</guid>
		<description><![CDATA[There&#8217;s a couple of blog posts out there telling you how to do this. I thought I&#8217;d just summarise it to make it easier: Download the Drupal drush package and put it somewhere in your system. Place it utside of the Drupal installation so that there&#8217;s no risk of it being executed from the browser. [...]]]></description>
			<content:encoded><![CDATA[<p>There&#8217;s a couple of blog posts out there telling you how to do this.</p>
<p>I thought I&#8217;d just summarise it to make it easier:</p>
<ol>
<li>Download the <a  href="http://drupal.org/project/drush" target="_blank">Drupal drush package</a> and put it somewhere in your system. Place it utside of the Drupal installation so that there&#8217;s no risk of it being executed from the browser.</li>
<li>Download the following packages from the sourceforge GnuWin32 project:
<ol>
<li>Get the latest wget installer <a  href="http://sourceforge.net/projects/gnuwin32/files/wget/">here</a>.</li>
<li>Get the latest bzip2 installer <a  href="http://sourceforge.net/projects/gnuwin32/files/bzip2/">here</a>.</li>
<li>Get the latest tar installer <a  href="http://sourceforge.net/projects/gnuwin32/files/tar/">here</a>.</li>
</ol>
</li>
<li>Install all of the above gnu packages.</li>
<li>Set your environment variables to detect all of the necessary binaries:
<ol>
<li>Go to Start&gt;Run and type sysdm.cpl to bring up the system properties dialog.</li>
<li>Click on the Environment Variables button.</li>
<li>In the System Variables panel, edit the Path variable value:
<ol>
<li>&lt;existing path&gt;;&lt;path to php&gt;;&lt;path to gnuwin&gt;;&lt;path to drush&gt;;</li>
<li>If you&#8217;re on a 64-bit system, gnuwin be in your Program Files (x86) directory.</li>
<li>You can check that each of the above paths are resolving by typing php/tar/gzip/wget/drush in a dos prompt.</li>
</ol>
</li>
</ol>
</li>
<li>Start&gt;run&gt;cmd and navigate to your Drupal installation</li>
<li>Type drush for a list of commands. Append your commands with -d for debugging if the commands aren&#8217;t working.</li>
</ol>
<p>Hope that helps somebody.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.supadupa.co.za/index.php/2010/07/drupal-drush-for-windows/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Kaltura &#8211; add video upload to your blog</title>
		<link>http://blog.supadupa.co.za/index.php/2010/01/kaltura-add-video-upload-to-your-blog/</link>
		<comments>http://blog.supadupa.co.za/index.php/2010/01/kaltura-add-video-upload-to-your-blog/#comments</comments>
		<pubDate>Mon, 11 Jan 2010 09:07:28 +0000</pubDate>
		<dc:creator>murraybiscuit</dc:creator>
				<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://blog.supadupa.co.za/?p=103</guid>
		<description><![CDATA[Kaltura is a company based in New York, which produces various video products. These include online video hosting. Why use Kaltura rather than youtube? No youtube advertisements No youtube referral links Open source code What this means is that you can effectively add video upload and comment functionality to your blog without the youtube branding. [...]]]></description>
			<content:encoded><![CDATA[<p>Kaltura is a company based in New York, which produces various video products. These include online video hosting. Why use Kaltura rather than youtube?</p>
<ol>
<li>No youtube advertisements</li>
<li>No youtube referral links</li>
<li>Open source code</li>
</ol>
<p>What this means is that you can effectively add video upload and comment functionality to your blog without the youtube branding. You can also set permissions for uploading and commenting.</p>
<p>It comes with API&#8217;s for Flash, Flex, PHP, C#, Java etc.</p>
<p>Here&#8217;s an example:</p>
<p></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.supadupa.co.za/index.php/2010/01/kaltura-add-video-upload-to-your-blog/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Validation: lookup against international dialling codes</title>
		<link>http://blog.supadupa.co.za/index.php/2009/10/validation-lookup-against-international-dialling-codes/</link>
		<comments>http://blog.supadupa.co.za/index.php/2009/10/validation-lookup-against-international-dialling-codes/#comments</comments>
		<pubDate>Fri, 30 Oct 2009 21:00:34 +0000</pubDate>
		<dc:creator>murraybiscuit</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[calling]]></category>
		<category><![CDATA[codes]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[validation]]></category>

		<guid isPermaLink="false">http://blog.supadupa.co.za/?p=97</guid>
		<description><![CDATA[I don&#8217;t normally post code samples, but this one might come in handy for somebody building a calling app. Given the following scenario, you&#8217;d do the following: 1. Get the number the user wants to call 2. Run it against a table with available dialling codes 3. Return a single matching record You&#8217;d normally do [...]]]></description>
			<content:encoded><![CDATA[<p>I don&#8217;t normally post code samples, but this one might come in handy for somebody building a calling app. Given the following scenario, you&#8217;d do the following:</p>
<p>1. Get the number the user wants to call<br />
2. Run it against a table with available dialling codes<br />
3. Return a single matching record</p>
<p>You&#8217;d normally do this by forward / backward recursing through each character of the test number until you found the longest match and then return that. This would require a server-side loop with a db call on each iteration.</p>
<p>I found a much quicker way of doing this with the following sql query:</p>
<p><code>select *<br />
from `{table_name}`<br />
where {test_number} like(concat(`{codes_column}`,'%'))<br />
order by `{codes_column}` desc<br />
limit 1</code></p>
<p>It&#8217;s really quick to execute on a large table. Hopefully it comes in handy for someone looking for it.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.supadupa.co.za/index.php/2009/10/validation-lookup-against-international-dialling-codes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>VML browser effects</title>
		<link>http://blog.supadupa.co.za/index.php/2009/06/vml-browser-effects/</link>
		<comments>http://blog.supadupa.co.za/index.php/2009/06/vml-browser-effects/#comments</comments>
		<pubDate>Tue, 09 Jun 2009 12:18:17 +0000</pubDate>
		<dc:creator>murraybiscuit</dc:creator>
				<category><![CDATA[Client side]]></category>

		<guid isPermaLink="false">http://blog.supadupa.co.za/?p=39</guid>
		<description><![CDATA[I&#8217;m currently working on a project where I have a map / image and I want to allow a user to pan and zoom in order to explore. I could always put it in a PDF, but then they would need Acrobat, would have to open in a new page and wait while the plugin [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m currently working on a project where I have a map / image and I want to allow a user to pan and zoom in order to explore. I could always put it in a PDF, but then they would need Acrobat, would have to open in a new page and wait while the plugin spluttered into action. Or I could do it in Flash. Not SEO friendly and a bit of a mission. As much as I love Flash, I always look first to see if the same thing can be done using standard web technology. I figured somebody else must have done this before, so went in search of the elusive lazy grail. And came across this crazy (no disrespect intended) German guy&#8217;s VML page.</p>
<p><a  href="http://www.netzgesta.de/lab/" target="_blank">http://www.netzgesta.de/lab/</a></p>
<p>Somehow I know about the web, but I don&#8217;t know about VML. It seems that Microsoft and Mozilla decided to develop concurrent solutions to vector graphics in browsers. Microsoft went VML (XML based) and Mozilla went SVG (CSS based). Do these people ever agree on anything? The great thing is that both technologies are natively supported. So no additional plugin needed. It seems that Apple got sick of the gridlock and started developing their own markup language known as &#8220;Canvas&#8221; for WebKit (HTML 5 spec). So now that we have these really cool imcompatible technologies, how do you code cross platform? Well, it seems that this guy has been using a Javascript library which fills the gap. And Google uses if fairly extensively in their Maps. How it all works is a bit too much for my feeble mind, but the point is that there&#8217;s a lot of things you can do, from manipulating bimaps, generating vector graphics and applying effects. And the link above wonderfully displays some great examples. So now I have my zoomy map script. I&#8217;ve just gotta figure out how to use it. (I&#8217;ll keep you posted).</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.supadupa.co.za/index.php/2009/06/vml-browser-effects/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Inclusion and placement of your website name in the title tag</title>
		<link>http://blog.supadupa.co.za/index.php/2009/05/inclusion-and-placement-of-your-website-name-in-the-title-tag/</link>
		<comments>http://blog.supadupa.co.za/index.php/2009/05/inclusion-and-placement-of-your-website-name-in-the-title-tag/#comments</comments>
		<pubDate>Tue, 12 May 2009 09:53:11 +0000</pubDate>
		<dc:creator>murraybiscuit</dc:creator>
				<category><![CDATA[SEO]]></category>
		<category><![CDATA[domain name]]></category>
		<category><![CDATA[first]]></category>
		<category><![CDATA[placement]]></category>
		<category><![CDATA[title]]></category>

		<guid isPermaLink="false">http://blog.supadupa.co.za/?p=33</guid>
		<description><![CDATA[When do you put a website name in the title tag? If so, where should it go? Reading a blog earlier today, there seem to be a lot of varying opinions on this. The argument against is that it’s overkill and that it’s not valid for the title of a page: the title should contain [...]]]></description>
			<content:encoded><![CDATA[<p>When do you put a website name in the title tag? If so, where should it go? Reading a blog earlier today, there seem to be a lot of varying opinions on this. The argument against is that it’s overkill and that it’s not valid for the title of a page: the title should contain a summary of the content and that’s it. But there’s a few compelling arguments in favour of including it.</p>
<h2>It’s not just in search results…</h2>
<p>The title is also used in bookmarks – if I have a hundred bookmarks with the name “latest news” or “login”, it’s not particularly helpful. Favicons are important in this regard too.</p>
<h2>Reputation is king</h2>
<p>A title with a site name can carry your reputation. If you’re a small site, this probably isn’t too important. In fact, I don’t care about your site name if I don’t regard your site as important – it may even irritate me and inhibit clickthru’s. </p>
<p>Take an example of searching for a newsworthy story. There are a lot of sites that recycle content. I’m not really interested in them and would rather go straight to the New York Times or BBC, because I know their content is original and credible(ish). In this example, I scan down the left hand side of the search results to find a site I am familiar with, then look at the link title and content description to see if they fit the search.</p>
<p>I may also scan search results for sites I don’t want. For example, I hate opening links from experts-exchange, because I don’t have a subscription and therefore don’t want to follow their links. Once again, I can use the title up front to further filter my results.</p>
<p>Knowing who the site is, also helps me to understand what kind of information I am going to be receiving. If I am searching for a person’s name, I can either click on the facebook link if they are a personal friend, or the Wikipedia link if they are a public figure.</p>
<h2>No reputation? Work harder</h2>
<p>If you haven’t established you site as a credible content provider, users are more likely to click on your link if you are listed above a credible provider; provide a unique description and have an accurate title with your site name at the end.</p>
<h2>In summary</h2>
<p>I believe that site names should be on titles. If you are famous, put it in front. If you aren’t, put it at the end. When will you be famous? I can’t answer that, I really can’t answer that.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.supadupa.co.za/index.php/2009/05/inclusion-and-placement-of-your-website-name-in-the-title-tag/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>When to use single or double quotes</title>
		<link>http://blog.supadupa.co.za/index.php/2009/03/when-to-use-single-quotes-and-double-quotes/</link>
		<comments>http://blog.supadupa.co.za/index.php/2009/03/when-to-use-single-quotes-and-double-quotes/#comments</comments>
		<pubDate>Tue, 24 Mar 2009 19:27:00 +0000</pubDate>
		<dc:creator>murraybiscuit</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://murraybiscuit.wordpress.com/2009/03/24/when-to-use-single-quotes-and-double-quotes-in-php/</guid>
		<description><![CDATA[I read an interesting little code tidbit the other day on www.zenperfect.com about when you should use which quotes where in php. Nobody has ever explained this to me an it all makes sense now. Basically, because php is an interpreted language, any variables that need to be calculated at runtime takes time. Using single [...]]]></description>
			<content:encoded><![CDATA[<p>I read an interesting little code tidbit the other day on <a  href="http://www.zenperfect.com">www.zenperfect.com</a> about when you should use which quotes where in php. Nobody has ever explained this to me an it all makes sense now.</p>
<p>Basically, because php is an interpreted language, any variables that need to be calculated at runtime takes time. Using single quotes implies that the statement doesn&#8217;t need further processing. Using double quotes infers that there&#8217;s a variable that needs to be parsed within the quotes. For example:<br />
<code><br />
$var1 = 'hello'; // string requires no processing<br />
$var2 = "$var1 world"; // string requires processing, evaluates variable<br />
$var3 = "String within double quotes"; // needlessly processed - no variable in string<br />
</code></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.supadupa.co.za/index.php/2009/03/when-to-use-single-quotes-and-double-quotes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Web server and domain diagnosis</title>
		<link>http://blog.supadupa.co.za/index.php/2009/03/web-server-and-domain-diagnosis/</link>
		<comments>http://blog.supadupa.co.za/index.php/2009/03/web-server-and-domain-diagnosis/#comments</comments>
		<pubDate>Tue, 17 Mar 2009 08:34:00 +0000</pubDate>
		<dc:creator>murraybiscuit</dc:creator>
				<category><![CDATA[Server]]></category>

		<guid isPermaLink="false">http://murraybiscuit.wordpress.com/2009/03/17/web-server-and-domain-diagnosis/</guid>
		<description><![CDATA[I don&#8217;t know how many times I&#8217;ve been asked to quote on doing web development when a client has no idea of who is hosting the current site or what kind of technology is on the server. So this may come in handy for those situations where you don&#8217;t have the time to wait for [...]]]></description>
			<content:encoded><![CDATA[<p>I don&#8217;t know how many times I&#8217;ve been asked to quote on doing web development when a client has no idea of who is hosting the current site or what kind of technology is on the server. So this may come in handy for those situations where you don&#8217;t have the time to wait for your client&#8217;s IT department to call you back&#8230;</p>
<p>To find out where the site is hosted:</p>
<ol>
<li>Query the TLD whois. For co.za sites it&#8217;s <a  href="http://whois.co.za/">http://whois.co.za</a>. For .com it&#8217;s <a  href="http://www.internic.net/whois.html">http://www.internic.net/whois.html</a>. This will get you the nameserver and person who registered the site, not necessarily the host.
</li>
<li>To get the host, go to a command prompt / shell and type <code>ping www.domainname.com</code>. You will get an IP address. You can use the nslookup command to get the name of the server, which will invariably give you the host name: <code>nslookup &lt;ipaddress&gt;</code>.
</li>
</ol>
<p>Checking whether DNS records have been updated:</p>
<p>I&#8217;ve also been in the situation where client has requested a domain be moved to a different server or has signed up for a new hosting account and the domain hasn&#8217;t propagated. Hosts generally say that domain transfer and propagation can take a couple of days for the cache to clear. The problem is that if they have messed up the DNS or haven&#8217;t bothered to update zone files, you can site there for a week and hope that the propagation is still happening without knowing. Enter dig. There&#8217;s a online version at mice and men which helps you look at the DNS records directly to see if they have been updated yet.</p>
<ol>
<li>Go to the online dig tool at: <a  href="http://dig.menandmice.com/knowledgehub/tools/dig">http://dig.menandmice.com/knowledgehub/tools/dig</a>. You can use the bash dig command in linux &#8211; I just find this easier.</li>
<li>Type in the nameserver from the whois records above and the name of the domain.</li>
<li>The answer section in the returned dig results will give you the ip address from the authoritative name server which the rest of the world is talking to.</li>
<li>This is more reliable than ping as it queries the nameserver directly, whereas ping will return an IP address which could come from a DNS cache.</li>
<li>It is more than likely that the domain should be transferred within two days of the changes to the DNS records.</li>
<li>The dig tool also allows you to view other records e.g. mail server and subdomains.
</li>
</ol>
<p>Checking server software and platform</p>
<ol>
<li>You&#8217;ll need to view response headers from a http request &#8211; the server will return &#8220;Server&#8221; response header. Some servers will give you more information, some will give you less.</li>
<li>You can use the Firefox developer tools plugin to view the headers: webdeveloper toolbar &gt; Information &gt; View response headers (at the bottom)
</li>
<li>The response will tell you what operating system, server software, software version and software plugins the server is running.</li>
<li>There are online tools which can do this (notably <a  href="http://www.dotcomunderground.com/web-tools/">http://www.dotcomunderground.com/web-tools/</a> ), but I have had some issues with headers returned as arrays.
</li>
</ol>
<p></p>
<div class="flockcredit" style="color:#cccccc;font-size:x-small;text-align:right;">Blogged with the <a  href="http://www.flock.com/blogged-with-flock" target="_new" title="Flock Browser">Flock Browser</a></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.supadupa.co.za/index.php/2009/03/web-server-and-domain-diagnosis/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Papervision 3d &#8211; getting started</title>
		<link>http://blog.supadupa.co.za/index.php/2009/01/papervision-3d-getting-started/</link>
		<comments>http://blog.supadupa.co.za/index.php/2009/01/papervision-3d-getting-started/#comments</comments>
		<pubDate>Fri, 16 Jan 2009 07:23:00 +0000</pubDate>
		<dc:creator>murraybiscuit</dc:creator>
				<category><![CDATA[Flash & Flex]]></category>

		<guid isPermaLink="false">http://murraybiscuit.wordpress.com/2009/01/16/papervision-3d-getting-started/</guid>
		<description><![CDATA[Intro I&#8217;ve been blogtrawling over the last few days, trying to get set up in papervision. There are a million ways to go about doing this, and a lot of it seems to come down to what system you&#8217;re running&#8230; and how much you&#8217;re willing to pay. The good news however is that you can [...]]]></description>
			<content:encoded><![CDATA[<p><span style="font-weight:bold;">Intro</span></p>
<div></p>
<div>I&#8217;ve been blogtrawling over the last few days, trying to get set up in papervision. There are a million ways to go about doing this, and a lot of it seems to come down to what system you&#8217;re running&#8230; and how much you&#8217;re willing to pay. The good news however is that you can do pretty much everything for free.&nbsp;Maybe this post can help some of you out there a lot of time.</p>
<div></div>
<div>Seeing as a lot of the code and software is still in alpha or beta, here&#8217;s my system setup and what I&#8217;d recommend in order to get going.&nbsp;</div>
<div></div>
<div><span style="font-weight:bold;">Assumptions</span></div>
<div>
<ol>
<li>I&#8217;m going to assume everybody is going to work in AS3.
</li>
<li>I&#8217;m running on Windows Vista Business with 2GB RAM and a Core 2 Duo 1.8GB processor. I know this is all possible on a mac &#8211; you may be able to pic up some hints from the comments in the blog links that I&#8217;ve includeded.</li>
</ol>
<p><span style="font-weight:bold;">Set up your development environment</span></p>
<ol>
<li>Download an IDE. <a  href="http://www.flashdevelop.org/downloads/releases/FlashDevelop-3.0.0-Beta9.exe">FlashDevelop 3 beta 9</a> is free (3 RC 1 is not backwards compatible and earlier release versions conflict with the debugger).&nbsp;</li>
<li>For some help with setting up FlashDevelop,&nbsp;<a  href="http://papervision2.com/tutorial-list/">here&#8217;s some great tutorials</a>.</li>
<li>Get FDB, the debugger for FlashDevelop. You may need to install the Java Runtime Engine if your system doesn&#8217;t have it. <a  href="http://www.multigesture.net/articles/as3-getting-started-with-adobe-flash-using-the-free-flash-develop-ide/">Here&#8217;s some instructions</a> on setting it up.</li>
<li>Download the Adobe Flex <a  href="http://opensource.adobe.com/wiki/display/flexsdk/download?build=3.2.0.3958&#038;pkgtype=2">Open Source SDK</a> for free. The latest one should do&#8230; we&#8217;re only really going to be using the compiler anyway.</li>
<li>Download the latest standalone swf players (<a  href="http://www.adobe.com/support/flashplayer/downloads.html">debugger version</a>) from Adobe. Drop them in the Flex SDK folder.</li>
<li>Download <a  href="http://papervision3d.googlecode.com/files/Papervision3D_rev859.zip">papervision source code</a>. Version 2.0 &#8220;Great White&#8221; (rev859) works for me.&nbsp;If you want, you can keep it up to date with subversion. That&#8217;s if you have subversion and know how to use it. Drop the source in your classpath for AS3 or in the same directory as your main .as file that you&#8217;re compiling in FlashDevelop.</li>
<li>Get a <a  href="http://papervision2.com/3-creating-a-papervision-base-template/">base papervision template</a> and drop it in your root classpath.</li>
<li>Download and install&nbsp;<a  href="http://ftp.nluug.nl/pub/graphics/blender/release/Blender2.48a/blender-2.48a-windows.exe">Blender 2.48a</a>&nbsp;(you can use <a  href="http://sketchup.google.com/download/gsu.html">Google Sketchup</a> if you want&#8230; I prefer Blender).</li>
<li>Download <a  href="http://www.python.org/download/">Python 2.5</a> and <a  href="http://blenderartists.org/forum/showthread.php?t=7412">set up pythonpath</a> in your settings.</li>
<li>Download the Collada format import and export python scripts for <a  href="http://colladablender.illusoft.com/cms/content/blogcategory/25/29/">Blender</a>. Drop them in your blender scripts directory: %PROGRAMFILES%/blender foundation/blender/.blender/scripts</li>
</ol>
<div><span style="font-weight:bold;">Resources:</span></div>
<div>
<ol>
<li>Papervision 2 &#8211; <a  href="http://papervision2.com/tutorial-list/">step by step setup, with examples</a></li>
<li>Altered egg &#8211; <a  href="http://www.alteredegg.com/cms/index.php?option=com_content&#038;task=view&#038;id=42&#038;Itemid=18">modelling in Blender and exporting to Collada&nbsp;</a></li>
<li>Dennis Ippel / Michael Lively &#8211; <a  href="http://www.nabble.com/New-Blender-XML-Exporter-PV3D-XML-Primitive-td20920114.html">AS export class for blender</a> &#8211; couldn&#8217;t get this to work&#8230;</li>
<li>Mike Lively&#8217;s blog &#8211; <a  href="http://professionalpapervision.wordpress.com/3d-modeling/">video tutorials and other great resources</a> from his book.</li>
<li>Andy Zupko&#8217;s blog &#8211; latest dev stuff from a PV3D developer. Check out the <a  href="http://blog.zupko.info/?p=146">lighting</a> / <a  href="http://lab.zupko.info/RayCasting/">casting shadows</a> and <a  href="http://blog.zupko.info/?p=156">reflections</a> stuff.</li>
<li>Bright Hub <a  href="http://www.brighthub.com/internet/web-development/articles/13775.aspx">tutorials by Matthew Casperson</a> &#8211; in depth AS3 knowledge required, comprehensive coverage of PV3D offerings.</li>
</ol>
<div><span style="font-weight:bold;">And finally&#8230;</span></div>
<div><span style="font-weight:bold;"><br />
</span></div>
<div>The masters of 3d flash&#8230; have their own proprietary engine. Take a look at the amazing stuff the Russians are doing on the <a  href="http://blog.alternativaplatform.com/en/">Alternativa Platform</a>. Mind blowing. See how proper shadows work <a  href="http://blog.alternativaplatform.com/ru/files/2007/09/dynamicshadows.swf">here</a>.</div>
</div>
</div>
</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://blog.supadupa.co.za/index.php/2009/01/papervision-3d-getting-started/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

