<?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>Notes from Figure 53 &#187; Documentation</title>
	<atom:link href="http://figure53.com/blog/category/documentation/feed/" rel="self" type="application/rss+xml" />
	<link>http://figure53.com/blog</link>
	<description></description>
	<lastBuildDate>Mon, 24 Oct 2011 15:11:03 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>The Magic Bullet Part I: The Hardware</title>
		<link>http://figure53.com/blog/2010/11/18/the-magic-bullet-part-i-the-hardware/</link>
		<comments>http://figure53.com/blog/2010/11/18/the-magic-bullet-part-i-the-hardware/#comments</comments>
		<pubDate>Thu, 18 Nov 2010 23:24:16 +0000</pubDate>
		<dc:creator>luckydave</dc:creator>
				<category><![CDATA[Documentation]]></category>

		<guid isPermaLink="false">http://figure53.com/blog/?p=389</guid>
		<description><![CDATA[luckydave &#8212; projection designer, QLab support ace, and our local video guru &#8212; talks us through his optimization process for video playback. In this post I will discuss video design workflows and the strategies I’ve found that work well with QLab (and most other show control software). I’ll start with two very important axioms: There [...]]]></description>
			<content:encoded><![CDATA[<div style="padding: 10px; border: solid 1px #666; background-color: #ddd;">
<i>luckydave &mdash; projection designer, QLab support ace, and our local video guru &mdash; talks us through his optimization process for video playback.</i>
</div>
<p>
In this post I will discuss video design workflows and the strategies I’ve found that work well with QLab (and most other show control software).
</p>
<p>
I’ll start with two very important axioms:
</p>
<ol>
<li>There is no Magic Bullet;</li>
<li>There is no Easy Way.</li>
</ol>
<p>
Whenever we create our original artwork, or just throw together a quick edit of some stock footage, we&#8217;re always looking for a way to keep moving in tech rehearsal. We don&#8217;t want to slow down the director&#8217;s (and our own) creative flow. We want collaboration to move at the speed of ideas, and our stupid computers keep getting in the way of that. Yup.
</p>
<p>
In those moments, I like to remind myself that I&#8217;m not working with film; that when I think of a &#8220;layer,&#8221; I don&#8217;t mean literally stacking negatives on top of each other, and hoping it comes out right in the water wash. That is to say, sure, encoding time and the classic, &#8220;Give me a half hour while that clip renders,&#8221; are frustrating. But sometimes it helps to remember that we&#8217;re working in a field that&#8217;s still only gotten as far as its toddler first-steps. Even with the frustration of waiting for a render, it&#8217;s still better than saying, &#8220;I&#8217;ll work that out tonight, and we can look at it in the morning.&#8221; And losing a night&#8217;s sleep to dark room chemical fumes.
</p>
<p>
It&#8217;s in those moments, when all I have to hold onto is how much less frustrating it is now that how it was a few short years ago, that I wish there were an Easy Way. One trick, that when executed correctly would mean speedy, efficient collaboration with no one staring at my tech table, wishing I could catch up. I want the Magic Bullet &mdash; that one codec that works in every situation and solves all of my jerky playback problems, and means I can bundle one show and send a disk on tour, regardless of what computer the show will see at the next venue. It&#8217;s also in those moments that I remind myself of the two above-mentioned axioms. And I steel myself for the groans, and I ask for some time. &#8220;Maybe we can come back to this in an hour?&#8221; Again.
</p>
<p>
So, how do we work around those two rules? How do we find an easier way? A practical bullet? Therein can be found the scope of this discussion.
</p>
<p>
I&#8217;ll approach this from a couple of angles, and keep in mind that all of my information is based on research and experience &#8211; that is to say, your mileage may vary. And, to extend the driving metaphor, the first challenge I&#8217;d like to wrestle with is bottlenecks. I’ll get to codecs in another post.
</p>
<p><h3>The Bottlenecks</h3>
</p>
<p>
When working with video for live playback from a hard disk (narrowing the scope to QLab, as opposed to DVD&#8217;s, internet video, or other delivery methods), we need to think about our hardware, and what we can do with our files to cause as few traffic jams as possible. This starts with the Hard Disk.
</p>
<p>
How fast is your hard drive? What&#8217;s the disk&#8217;s connection&#8217;s bandwidth? What other traffic is holding back your video file&#8217;s data path? In a perfect world, every computer your show will see will have a Solid State drive, a SATA connection, and every video file will be accessed independently of any other data at the moment of playback. In a practical world, we often have to satisfy ourselves with a 7,200 rpm &#8220;platter&#8221; hard disk drive, FireWire 400, and a couple of files being called for simultaneously. Hopefully, we do our best to ensure that every system we use at least fits those minimum requirements. Because here’s the thing: video files are huge. Like, imposingly large files. And getting them moving efficiently is the key to good playback.
</p>
<p>
The key here is that hard disk drives have only one point of data access at a time. Most of the data gets stored in entirely different physical locations, from one file to another, and the drive needs to rotate to that point, let the reading head grab those ones and zeros, and rotate to another point to grab the next chunk of data. If the operating system, and the QLab program, and the video files are all stored on the same disk, then there are loads of reading and writing processes being asked for simultaneously, and one poor little hard disk just can’t keep up, no matter how fast it can spin. So, step one: move your media files to a separate physical drive from your system. Two data paths means less bottlenecking.
</p>
<p>
Here&#8217;s a weird concept: video files are so huge that it&#8217;s probably more efficient to run the system off of an external drive, and store the media files on an internal. I would never setup a system like that myself, because a bumped cable would mean catastrophic failure. But it’s an interesting idea. FireWire 400 transfers data at a nominal rate of 400 million bits per second, or 400 Mbps. An internal eSATA connection, like on your MacBook Pro, transfers at a nominal 1.5 Gbps, or more than 3 times faster. The system and QLab are doing some reading and writing, but not nearly as much reading as a single video file. So, prioritizing your data stream to video is a nice idea. In practice, this means storing your media files on an external FW 400 or 800 drive, which is usually sufficient. Of course, if you&#8217;re trying to access four videos at the same time, you&#8217;ll probably benefit from putting those files on more than one disk. Keep in mind, if your FW 400 and FW 800 connection are on the same internal buss, or if you&#8217;re daisy-chaining drives, you&#8217;re only gaining fluidity in access, not transfer. The files can be read independently, but they&#8217;ll still need to get that data through the same path, which means hitting the same bottleneck. In practice, the bottleneck of the buss is less important than the gain in access speed from having multiple sources.
</p>
<p>
OK, we&#8217;ve covered the hard drive, and its associated bottlenecks: speed, the access conundrum, and the data path. We&#8217;re ready to prioritize appropriately and manage our traffic accordingly. What&#8217;s next?
</p>
<p>
The other relevant hardware all comes in one big jumble, oddly enough. The CPU, GPU, RAM and vRAM all work with each other, in several confusing ways, to get your imagery from the hard drive to the display. The basic data path, after the hard drive, goes something like this: RAM > CPU > (v)RAM > GPU > Display. I’ll start with that questionable looking fellow there, the (v)RAM.
</p>
<p>
If you&#8217;ve created one cue in QLab, referencing one video file, and you&#8217;re sending it to one display patch, your video frames travel straight from the decoding process, to the vRAM, to the display. If your cue is told to show up on more than one display patch, that breaks the data flow a little bit, and the frames have to be written to the RAM, and then distributed to the appropriate vRAM &#8211; each graphics card has its own vRAM, so if a cue only needs one display, it only needs one card, so it can go straight to vRAM. If it needs multiple displays, it needs to hit the distribution center, which slows down the process. What’s the trick here? If you want to send one file to multiple displays, you’ll benefit from creating one cue per display. Simple enough.
</p>
<p>
Now, if you&#8217;re half the geek I am, you&#8217;re wondering why poor old GPU is stuck at the end of the data path. Why isn&#8217;t the GPU, which is made for such things, tasked with decoding video files? Well, Apple only allows H.264 files to be decoded on the GPU, and even that is limited to OSX 10.6, for our purposes. Similar constraints lend to QLab being stuck as a 32-bit application for the time being. Since QLab wants to be accessible to as many of you designers as possible, it has to embrace some somewhat outdated technologies, and wait for Apple to give us the tools we need to embrace the newer, more powerful stuff. One thing you can be sure of &mdash; when we have access, we&#8217;ll be embracing it! For now, there is no hardware-accelerated playback for movie files in QLab, and it&#8217;s relegated to sharing only 4GB of RAM with all of the other 32-bit applications on the system.
</p>
<p>
&#8220;Only 4GB of RAM? But my video files are much larger than 4GB!&#8221; Fortunately, there’s a point where QuickTime, OSX&#8217;s playback engine, has prepared a nice road for us. We&#8217;re not entirely sure of the specifics, since it&#8217;s proprietary information for Apple to keep locked in a bunker, but we are sure of a few things. When QLab calls for a file to be loaded into RAM, the whole video file doesn&#8217;t get dumped in one big chunk. It’s being accessed as necessary, and as RAM becomes available. QuickTime and the OS manage that for us, and they do a pretty good job of it. There&#8217;s one point where your bottlenecks are handled for you. Also, your files have to be stored somewhere while they&#8217;re being decoded, and that location is the RAM. If they don&#8217;t have to come back to the RAM (as described above), they&#8217;ll move from there to the display pretty smoothly.
</p>
<p>
So what&#8217;s left? CPU and GPU. The CPU&#8217;s role is to decode the files you&#8217;ve made. The GPU&#8217;s role is to make your adjustments, and send the frames to the display. So, here’s where your choice of codec can be incredibly important, and where your programming can create a challenge for your system.
</p>
<p>
We&#8217;ll get into codecs in a future post, but for now, keep in mind that the more you’ve compressed a video file, the more your CPU will have to work to decompress it, and that can create a bottleneck. The less you compress it, the lighter the load on the CPU, and the smoother it will flow through this part of our data path.
</p>
<p>
The GPU then gets frames from vRAM, after they&#8217;ve been decoded and put there for holding. At this point, if you’ve made scaling adjustments, rotated your image, changed its opacity, or moved it around, the GPU has to figure out how that affects the frame that it’s sending the display, and then send it out. It&#8217;s at this point that I often create an unnecessary bottleneck for myself. And I&#8217;m going to suggest a workflow that includes sufficient tech time here, because I think QLab is actually two different tools at this stage.
</p>
<p>
I try to create my artwork at a scale that will work in the space, but obviously, what I&#8217;m seeing in my imagination, before projecting material on a set (for instance), will not exactly match my needs once in the theater. So, I love Custom Geometry in QLab, because it lets me rescale and rotate and position my artwork to fit my needs. But if I&#8217;m scaling my artwork up by a factor of 1.15, that means that at playback, poor old GPU is having to make that calculation to every frame it sends to the display. And that’s a more difficult calculation than a factor of 2 (computers really like 2&#8242;s). In tech rehearsal, I tell the director that we may see some glitches in playback for this reason, and once I&#8217;ve corrected my artwork in QLab, I&#8217;ll re-render it overnight to match the scaling adjustments I&#8217;ve made, and tomorrow, we&#8217;ll see it play back smoothly. Basically, the strategy involves being prepared for imperfection in rehearsal, and pre-rendering the adjustments I&#8217;ve made, once I&#8217;m satisfied with what I have. QLab in rehearsal is another tool in the composition process. QLab at playback should have all of its media already optimized as much as possible. And then, the GPU only has to position and fade the artwork, which it&#8217;s very comfortable with doing in real-time.
</p>
<p>
All of these strategies and workflow adjustments mean we&#8217;re looking at the equipment we have to work with, and creating media files that are optimized for the system at hand, not for the ideal system. We&#8217;re also doing everything we can to optimize our system, with the understanding that our budget and time constraints will hamper perfection in the equipment we&#8217;re able to use. So, we&#8217;re preparing as much as possible off-site, and planning at every stage for the tools we&#8217;ll have to use once we walk away from the show and hand it off to the stage manager and operator.
</p>
<p>
Understanding the hardware perspective on all of this can certainly help to create a system that will bring us closer to playback perfection. Next, how to prepare the files with the same goal. Stay tuned for Magic Bullet Part II: The Codec.</p>
]]></content:encoded>
			<wfw:commentRss>http://figure53.com/blog/2010/11/18/the-magic-bullet-part-i-the-hardware/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Jason Knox rolls out the first QLab video tutorials</title>
		<link>http://figure53.com/blog/2009/04/16/jason-knox-rolls-out-the-first-qlab-video-tutorials/</link>
		<comments>http://figure53.com/blog/2009/04/16/jason-knox-rolls-out-the-first-qlab-video-tutorials/#comments</comments>
		<pubDate>Fri, 17 Apr 2009 00:07:25 +0000</pubDate>
		<dc:creator>Christopher</dc:creator>
				<category><![CDATA[Documentation]]></category>

		<guid isPermaLink="false">http://figure53.com/blog/?p=245</guid>
		<description><![CDATA[As noted here previously, Jason Knox is creating a series of video tutorials for QLab 2. The first four are now up! I think you&#8217;ll agree: he&#8217;s doing some amazing work on these.]]></description>
			<content:encoded><![CDATA[<p>
As <a href="http://figure53.com/blog/2009/02/11/coming-soon-video-tutorials-by-jason-knox/">noted here previously</a>, Jason Knox is creating a series of video tutorials for QLab 2.  <a href="http://figure53.com/qlab/tutorials/">The first four are now up!</a>
</p>
<p>
I think you&#8217;ll agree:  he&#8217;s doing some amazing work on these.
</p>
<p class="center">
<img src="http://figure53.com/blog/wp-content/uploads/2009/04/1-1-welcome-to-qlab-poster.jpg" alt="1-1-welcome-to-QLab-poster.jpg" border="0" width="640" height="480" /></p>
]]></content:encoded>
			<wfw:commentRss>http://figure53.com/blog/2009/04/16/jason-knox-rolls-out-the-first-qlab-video-tutorials/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Coming Soon: Video Tutorials by Jason Knox</title>
		<link>http://figure53.com/blog/2009/02/11/coming-soon-video-tutorials-by-jason-knox/</link>
		<comments>http://figure53.com/blog/2009/02/11/coming-soon-video-tutorials-by-jason-knox/#comments</comments>
		<pubDate>Wed, 11 Feb 2009 13:38:06 +0000</pubDate>
		<dc:creator>Christopher</dc:creator>
				<category><![CDATA[Cool]]></category>
		<category><![CDATA[Documentation]]></category>

		<guid isPermaLink="false">http://figure53.com/blog/?p=231</guid>
		<description><![CDATA[More news! Delivered in Coding Horror Style! Sound designer and composer Jason Knox is working on a series of video tutorials for QLab 2. (See our artist&#8217;s rendition below, simulating what experts believe to be a true-to-life simulation of a Jason Knox in his natural tutorial habitat.) Each tutorial video will have a corresponding example [...]]]></description>
			<content:encoded><![CDATA[<p>
More news!  Delivered in <b><a href="http://www.codinghorror.com">Coding Horror Style!</a></b>
</p>
<p>
<b>Sound designer and composer Jason Knox is working on a series of video tutorials for QLab 2.</b>  (See our artist&#8217;s rendition below, simulating what experts believe to be a true-to-life simulation of a Jason Knox in his natural tutorial habitat.)
</p>
<p class="center">
<img src="http://figure53.com/blog/wp-content/uploads/2009/02/jason-sez-im-n-ur-qlab.jpg" alt="jason-sez-im-n-ur-qlab.jpg" border="0" width="600" height="390" />
</p>
<p>
<b>Each tutorial video will have a corresponding example workspace,</b> so you&#8217;ll be able to watch and tinker at the same time.  I&#8217;m really excited about this.  <b>We&#8217;ll be rolling out the videos as they&#8217;re produced in the coming weeks.</b>
</p>
<p>
But wait!  There&#8217;s more!  <b>We want <i>your</i> ideas in the tutorials too.</b>  In particular, we&#8217;d like to create a whole series of &#8220;tips and tricks&#8221;.  So start brainstorming, and if you&#8217;ve got a video camera, start practicing your delivery.  We want to see <i>you</i> teaching the community what they can do with this thing.
</p>
<p>
To whet your appetite, <b>Jason has just finished an awesome QLab 2 teaser video</b>.  Go check it out over on the <a href="http://figure53.com/qlab/tour/">Tour page</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://figure53.com/blog/2009/02/11/coming-soon-video-tutorials-by-jason-knox/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Put Your Theater in the Wiki!</title>
		<link>http://figure53.com/blog/2007/02/05/put-your-theater-in-the-wiki/</link>
		<comments>http://figure53.com/blog/2007/02/05/put-your-theater-in-the-wiki/#comments</comments>
		<pubDate>Tue, 06 Feb 2007 02:16:57 +0000</pubDate>
		<dc:creator>Christopher</dc:creator>
				<category><![CDATA[Wiki]]></category>

		<guid isPermaLink="false">http://www.figure53.com/blog/2007/02/05/put-your-theater-in-the-wiki/</guid>
		<description><![CDATA[Have you used QLab? Add yourself to the list! We&#8217;re building a running list of places, people, and shows that have used QLab. Check it out here: QLab Wiki: QLab in Action]]></description>
			<content:encoded><![CDATA[<p>Have you used QLab?  Add yourself to the list!</p>
<p>We&#8217;re building a running list of places, people, and shows that have used QLab.  Check it out here:</p>
<p><a href="http://figure53.com/wiki/index.php?title=QLab_in_Action">QLab Wiki: QLab in Action</a></p>
]]></content:encoded>
			<wfw:commentRss>http://figure53.com/blog/2007/02/05/put-your-theater-in-the-wiki/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Dig them Updated Docs</title>
		<link>http://figure53.com/blog/2006/04/01/dig-them-updated-docs/</link>
		<comments>http://figure53.com/blog/2006/04/01/dig-them-updated-docs/#comments</comments>
		<pubDate>Sun, 02 Apr 2006 03:07:34 +0000</pubDate>
		<dc:creator>Christopher</dc:creator>
				<category><![CDATA[Bugs]]></category>
		<category><![CDATA[Documentation]]></category>
		<category><![CDATA[Wiki]]></category>

		<guid isPermaLink="false">http://www.figure53.com/blog/?p=29</guid>
		<description><![CDATA[I&#8217;ve updated many of the documentation pages to get them in line with the current state of the program. As development continues, these pages will of course become stale again, but for now they have been yanked back to the realm of the relevant. I&#8217;ve also dropped one or two seeds of information into the [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve updated many of the documentation pages to get them in line with the current state of the program.  As development continues, these pages will of course become stale again, but for now they have been yanked back to the realm of the relevant.  I&#8217;ve also dropped one or two seeds of information into the long-neglected wiki.</p>
<p>On the frustrating &#8220;QLab crashes on 10.3.9&#8243; front, the news is that I have narrowed in on what I think may be a problem with CoreAudio.  I have submitted sample code to the engineers at Apple to allow them to recreate the problem I&#8217;m seeing, and I am waiting to hear back.  Hopefully I&#8217;ll be able to resolve the issue one way or another within the next week.</p>
]]></content:encoded>
			<wfw:commentRss>http://figure53.com/blog/2006/04/01/dig-them-updated-docs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>0.9.4r3 Available</title>
		<link>http://figure53.com/blog/2006/01/08/094r3-available/</link>
		<comments>http://figure53.com/blog/2006/01/08/094r3-available/#comments</comments>
		<pubDate>Mon, 09 Jan 2006 02:06:20 +0000</pubDate>
		<dc:creator>Christopher</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Documentation]]></category>
		<category><![CDATA[Releases]]></category>

		<guid isPermaLink="false">http://www.figure53.com/blog/?p=8</guid>
		<description><![CDATA[Despite a weekend trip to my Grandmother-in-law&#8217;s home in Virginia for her 93rd birthday (!), I&#8217;ve managed to squeeze out a new release tonight. Major changes have been made to the Fade Cues, as well as some revisions to the interface. The changes to the Fade Cues require you to recreate fades in old workspaces. [...]]]></description>
			<content:encoded><![CDATA[<p>Despite a weekend trip to my Grandmother-in-law&#8217;s home in Virginia for her 93rd birthday (!), I&#8217;ve managed to squeeze out a new release tonight.</p>
<p>Major changes have been made to the Fade Cues, as well as some revisions to the interface.  The changes to the Fade Cues require you to recreate fades in old workspaces.  In the future I&#8217;ll make sure that new releases are backwards-compatible, but I don&#8217;t want a ton of cruft in the code to make special checks for developmental versions of workspace documents.</p>
<p>The documentation is now fairly out of date, but I&#8217;m not going to devote *too* many cycles to it until the interface is a bit more stable.  It&#8217;s of little use rewriting it with every release, methinks.</p>
]]></content:encoded>
			<wfw:commentRss>http://figure53.com/blog/2006/01/08/094r3-available/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Documentation, draft the first</title>
		<link>http://figure53.com/blog/2005/12/11/documentation-draft-the-first/</link>
		<comments>http://figure53.com/blog/2005/12/11/documentation-draft-the-first/#comments</comments>
		<pubDate>Mon, 12 Dec 2005 03:16:47 +0000</pubDate>
		<dc:creator>Christopher</dc:creator>
				<category><![CDATA[Documentation]]></category>

		<guid isPermaLink="false">http://www.figure53.com/blog/?p=3</guid>
		<description><![CDATA[The main body of documentation has been drafted, excepting the examples section and a more complete list of troubleshooting tips. The next release of QLab will include this documentation from the Help menu. To build these docs I&#8217;ve set up a handy makefile and a couple of shell scripts, so I only have to maintain [...]]]></description>
			<content:encoded><![CDATA[<p>The main body of documentation has been drafted, excepting the examples section and a more complete list of troubleshooting tips.  The next release of QLab will include this documentation from the Help menu.</p>
<p>To build these docs I&#8217;ve set up a handy makefile and a couple of shell scripts, so I only have to maintain one set of source files for both the web-based documentation and the application-based documentation.  The content just gets wrapped with the appropriate header and footer, and away it goes to its proper spot.  Saves a good bit of hassle.  </p>
<p>Now I believe it&#8217;s time to finally get back into the code and take care of some of those bugs.</p>
]]></content:encoded>
			<wfw:commentRss>http://figure53.com/blog/2005/12/11/documentation-draft-the-first/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>It&#8217;s all about the infrastructure</title>
		<link>http://figure53.com/blog/2005/12/03/its-all-about-the-infrastructure/</link>
		<comments>http://figure53.com/blog/2005/12/03/its-all-about-the-infrastructure/#comments</comments>
		<pubDate>Sat, 03 Dec 2005 21:02:45 +0000</pubDate>
		<dc:creator>Christopher</dc:creator>
				<category><![CDATA[Bugs]]></category>
		<category><![CDATA[Features]]></category>
		<category><![CDATA[Wiki]]></category>

		<guid isPermaLink="false">http://www.figure53.com/blog/?p=2</guid>
		<description><![CDATA[Hacking on the code, while the most fun, is not always the most urgent priority. In the last few weeks I&#8217;ve hardly even touched XCode at all. But now the diversion is nearly complete. Aside from the web site, both the QLab Tracker and the QLab Wiki are now up and running. You can use [...]]]></description>
			<content:encoded><![CDATA[<p>Hacking on the code, while the most fun, is not always the most urgent priority.  In the last few weeks I&#8217;ve hardly even touched XCode at all.  But now the diversion is nearly complete.  Aside from the web site, both the <a href="http://www.figure53.com/trac/">QLab Tracker</a> and the <a href="http://www.figure53.com/wiki/">QLab Wiki</a> are now up and running.  You can use the tracker to submit bug reports and feature requests.  The wiki will allow you to contribute your own tutorials and docs.  Think something could be explained better?  Fire up the wiki and help a brother out.  Next up: &#8220;official&#8221; documentation, tutorials, and, why yes, maybe even some code improvements.   Yeeee haw.</p>
]]></content:encoded>
			<wfw:commentRss>http://figure53.com/blog/2005/12/03/its-all-about-the-infrastructure/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

