<?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>The Knowledge Supply Chain &#187; Technology</title>
	<atom:link href="http://www.ipov.net/apps/blog/category/technology/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.ipov.net/apps/blog</link>
	<description></description>
	<lastBuildDate>Fri, 17 Jun 2011 21:52:57 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<item>
		<title>Eclipse Infocenter Help as Web App</title>
		<link>http://www.ipov.net/apps/blog/2011/01/eclipse-infocenter-help-as-web-app/</link>
		<comments>http://www.ipov.net/apps/blog/2011/01/eclipse-infocenter-help-as-web-app/#comments</comments>
		<pubDate>Fri, 21 Jan 2011 15:53:43 +0000</pubDate>
		<dc:creator>robert.sanders</dc:creator>
				<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.ipov.net/apps/blog/?p=633</guid>
		<description><![CDATA[For all the effort that appears to have gone into allowing the Eclipse Help &#8220;Infocenter&#8221; to run as a deployed web application, the documentation is not great, and more importantly &#8211; why isn&#8217;t there a download thats &#8220;ready to go&#8221;?  This is something that&#8217;s bothered me for sometime now. For the impatient, you can skip [...]]]></description>
			<content:encoded><![CDATA[<p>For all the effort that appears to have gone into allowing the Eclipse Help &#8220;Infocenter&#8221; to run as a deployed web application, the documentation is not great, and more importantly &#8211; why isn&#8217;t there a download thats &#8220;ready to go&#8221;?  This is something that&#8217;s bothered me for sometime now.</p>
<p>For the impatient, you can skip the rest of this, and just download a WAR from my Google Docs account at <a href="https://docs.google.com/a/ipov.net/leaf?id=0B1u9Agj_s0HLZWZhNWFjNzItNzI4Ny00NzAxLTlhMmMtYjhiZmIxYzdlOGQ5&amp;sort=name&amp;layout=list&amp;num=50">https://docs.google.com/a/ipov.net/leaf?id=0B1u9Agj_s0HLZWZhNWFjNzItNzI4Ny00NzAxLTlhMmMtYjhiZmIxYzdlOGQ5&amp;sort=name&amp;layout=list&amp;num=50</a> Just expand the WAR and add your help plugin(s) to the WEB-INF/plugins/ directory.  Make sure that your plugins to not depend on anything other than the Eclipse Help bundles and you should be fine.  I&#8217;ve noticed while preparing this, that a number of help plugins/bundles actually declare the same dependencies as the plugin they document, thus making running standalone impossible as the OGSi container will refuse to activate them.  Hopefully someone will take over hosting this WAR for me, it would be great if Eclipse.org made it available for download as part of their normal release schedule, but that&#8217;s asking for a lot.</p>
<p>Anyway, in case its useful to others, or I need to reference this in the future, here&#8217;s what I had to do to get this WAR file running.</p>
<p>First, I google&#8217;d the issue; I found a smallish number of blogs already out there, and the offical documentation (e.g. <a href="http://help.eclipse.org/helios/index.jsp?topic=/org.eclipse.platform.doc.isv/guide/ua_help_war.htm">http://help.eclipse.org/helios/index.jsp?topic=/org.eclipse.platform.doc.isv/guide/ua_help_war.htm</a>).  Warning: Many of the blogs are for an older version of the runtime, and will instruct you to place files under WEB-INF/eclipse, this is incorrect and will result in the web-app failing to start.  The instructions in the Eclipse help are correct.</p>
<p>From the instructions:</p>
<ol>
<li>This is correct enough, although you don&#8217;t really have to use a temporary directory, I just extracted the plugin JAR directly to my local development install of Tomcat to facilitate testing, e.g. to %TOMCAT_HOME%/webapps/help</li>
<li>Note that you&#8217;ll need Eclipse Plugin Development Kit for this.  I also ran into a problem with using my install as my target platform, some issue with the JUnit addon for PDE, so I had to define a platform and exclude the JUnit plugin, not a big deal, but an extra step.</li>
<li>Note that this step assumes you extracted the &#8220;temporary&#8221; directory referenced at the start as &#8220;webapps/help&#8221;</li>
<li>Again, not that if you copy help plugins which declare extra, usually unneeded, dependencies, the help system will start, but will exclude those help plugins.  You can edit the WEB-INF/web.xml to add the -console option so that you can access the OSGi console and get some diagnostic information on why the plugins aren&#8217;t started (it isn&#8217;t logged to the Tomcat log files).</li>
<li><a href="http://download.eclipse.org/eclipse/equinox/">Downloads of the ServletBridge</a>.  I haven&#8217;t experimented, but I placed both files into my webapps/help/WEB-INF/plugin, and then also copied the org.eclipse.equinox.servletbridge to my WEB-INF/lib directory.  This seemed to work fine.</li>
<li>Note that previous versions of the instructions tell you to &#8220;extact the servletbridge.jar&#8221; form the plugin jar, this is no longer correct.</li>
<li>No other variations/extra information should be needed.</li>
</ol>
<p>Comments and addition information are welcome.  I hope this helps others, and maybe someone can eventually get the Standalone Infocenter WAR added as a standard part of the Eclipse release builds.</p>
<div class="printfriendly alignleft"><a href="http://www.ipov.net/apps/blog/2011/01/eclipse-infocenter-help-as-web-app/?pfstyle=wp" rel="nofollow" ><img src="//cdn.printfriendly.com/pf-button.gif" alt="Print Friendly" /></a></div><p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.ipov.net%2Fapps%2Fblog%2F2011%2F01%2Feclipse-infocenter-help-as-web-app%2F&amp;title=Eclipse%20Infocenter%20Help%20as%20Web%20App" id="wpa2a_2"><img src="http://www.ipov.net/apps/blog/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.ipov.net/apps/blog/2011/01/eclipse-infocenter-help-as-web-app/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>DITA Table of Contents</title>
		<link>http://www.ipov.net/apps/blog/2010/09/dita-table-of-contents/</link>
		<comments>http://www.ipov.net/apps/blog/2010/09/dita-table-of-contents/#comments</comments>
		<pubDate>Thu, 30 Sep 2010 18:02:29 +0000</pubDate>
		<dc:creator>robert.sanders</dc:creator>
				<category><![CDATA[DITA]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.ipov.net/apps/blog/?p=599</guid>
		<description><![CDATA[Update: I still intend to publish the full code for this at some point soon, most likely via github, however I have gotten pulled away onto several other projects, and have not yet been able to get this into a version that I an satisfied with.  Additionally, I will need to move the code out [...]]]></description>
			<content:encoded><![CDATA[<p>Update: I still intend to publish the full code for this at some point soon, most likely via github, however I have gotten pulled away onto several other projects, and have not yet been able to get this into a version that I an satisfied with.  Additionally, I will need to move the code out of our SVN, were it is currently stored side-by-side with the documentation XML (which is stored in SVN because that&#8217;s what everyone here is familiar with).</p>
<p>I&#8217;ve been interested in doing some work with DITA, and currently the DITA-OT processing code seems like the main viable way to do so, at least without paying an arm and a leg.</p>
<p>One of the first things I noticed, other than the spotty documentation of the toolkit (talk about the cobbler&#8217;s family being the last to get new shoes!) was that the basic xhtml output is, well ugly.  So, the first thing I did was to open up some output using Firebug and take a look at the generated styles.  &#8220;Ok,&#8221; I said to myself, I can use a custom CSS file to fix the majority of the issues here&#8230; then I looked at the main table-of-contents.  The ToC file has no class attributes on any elements, and imports the same CSS file as the content pages.  The content pages have class attributes, so it should be possible to write some CSS to target both, but I really didn&#8217;t like the idea of leaving the CSS for my &#8216;menu&#8217; so generic, it would be just too easy to have it accidentally apply to some other elements or something.  So I started digging into how to customize the ToC output.  It turns out there isn&#8217;t any extension point to override the processing in the way there is for the main xhtml, or other main content types.</p>
<p>I looked at the tocjs plugin, which does some nice effects, using the YUI tree; but its pretty basic (the tree) and we tend to use either jquery or dojo, so I really don&#8217;t want to add another toolkit to the mix there.  What the tocjs plugin does is to make use of the intergrator step to insert some custom Ant targets into the main build files, defining a new transtype called &#8220;tocjs&#8221;.  The downside to this, is that you have to run the transform process twice -once to generate the topic html files, and a second time to generate the ToC file(s).  It also annoys me that you have to update the base build files &#8211; it just seems wrong that a plugin should change files in its &#8216;host&#8217;.</p>
<p>So, I started digging around in the XSL transform files and the Ant build files.  It took a while, as there is not much documentation on them, at least not much when compared to the number of files and targets defined.  Eventually I found that the dita-ot/build_dita2xhtml.xml file defines a target named &#8220;dita.map.xhtml.toc&#8221; which is what calls the XSL transform to create the ToC.  However, there are no extension points for this.</p>
<p>I looked at the *_template.xsl files; however I didn&#8217;t feel like digging through the DOST code to find out what it would take to define a new XSL extension point.  Maybe its really easy.  Even if it is, it would require changing core files, and possibly interfering with any upgrade path.  If it is really easy, someone let me know, I could probably create the template file and send it as a patch.  I did find one <strong>important</strong> bit of information which might help you even if you don&#8217;t ready past this point.  There is a <strong>args.xhtml.toc.class</strong> parameter that you can pass into the standard transform to assign a CSS Class to the body element of the ToC.  I have added this to the <a href="http://dita.xml.org/wiki/parameters-to-the-dita-ot-transform">DITA Wiki</a>, hopefully this helps out someone.</p>
<p>So, I am now thinking how to wire this all together.  The good news is it is possible, the bad is that altering the core build xml (and xsl) is simply the way the current integrator works.  The approach I took uses Ant import (not XSL import) to &#8220;override&#8221; the base &#8220;dita.map.xhtml.toc&#8221; with my own target, which is basically a copy of the base that points to a different XSL file.  Once I get the files in a little more advanced state I will probably release them as open source, although from what I can see if someone wanted to changed the main XSL file dita2htmlmap.xsl that wouldn&#8217;t be too difficult as well, and shouldn&#8217;t have any effect on existing code (other than adding a few extra @class declarations.</p>
<h3>Step 1 : Create a plugin</h3>
<p>Under dita-ot/plugins   (or demos if you prefer) create a new folder.  I named mine net.ipov.ditaot.toc.  In this folder add a plugin.xml file, you can copy an existing file and edit it too.  The plugin.xml should look like:</p>

<div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #ddbb00;">&amp;lt;</span>plugin id=&quot;net.ipov.ditaot.toc&quot;<span style="color: #ddbb00;">&amp;gt;</span>
&nbsp;
    <span style="color: #ddbb00;">&amp;lt;</span>!-- We want to dump the contents of the build_plugin.xml file into the main build.xml  --<span style="color: #ddbb00;">&amp;gt;</span>
    <span style="color: #ddbb00;">&amp;lt;</span>feature extension=&quot;dita.conductor.target.relative&quot; value=&quot;build_plugin.xml&quot; type=&quot;file&quot; /<span style="color: #ddbb00;">&amp;gt;</span>
&nbsp;
<span style="color: #ddbb00;">&amp;lt;</span>/plugin<span style="color: #ddbb00;">&amp;gt;</span></pre></div></div>

<p><!-- x --></p>
<h3>Step 2 : Create a copy of the XSL</h3>
<p>I won&#8217;t include the full source here, as it is getting a little long.  But the basics are:</p>

<div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #ddbb00;">&amp;lt;</span>xsl:stylesheet version=&quot;1.0&quot;
    xmlns:xsl=&quot;http://www.w3.org/1999/XSL/Transform&quot;
    xmlns:saxon=&quot;http://icl.com/saxon&quot;
    xmlns:xt=&quot;http://www.jclark.com/xt&quot;
    xmlns:java=&quot;org.dita.dost.util.StringUtils&quot;
    extension-element-prefixes=&quot;saxon xt&quot;
    exclude-result-prefixes=&quot;java&quot;<span style="color: #ddbb00;">&amp;gt;</span>
&nbsp;
    <span style="color: #ddbb00;">&amp;lt;</span>xsl:template match=&quot;/*[contains(@class, ' map/map ')]&quot;<span style="color: #ddbb00;">&amp;gt;</span>
        <span style="color: #ddbb00;">&amp;lt;</span>!-- change output of the top-level ul and add anything else you like. --<span style="color: #ddbb00;">&amp;gt;</span>
    <span style="color: #ddbb00;">&amp;lt;</span>/xsl:template<span style="color: #ddbb00;">&amp;gt;</span>
&nbsp;
    <span style="color: #ddbb00;">&amp;lt;</span>xsl:template
      match=&quot;*[contains(@class, ' map/topicref ')][not(@toc='no')][not(@processing-role='resource-only')]&quot;<span style="color: #ddbb00;">&amp;gt;</span>
        <span style="color: #ddbb00;">&amp;lt;</span>!-- change output of the li items in the ToC --<span style="color: #ddbb00;">&amp;gt;</span>
    <span style="color: #ddbb00;">&amp;lt;</span>/xsl:template<span style="color: #ddbb00;">&amp;gt;</span>
&nbsp;
<span style="color: #ddbb00;">&amp;lt;</span>/xsl:stylesheet<span style="color: #ddbb00;">&amp;gt;</span></pre></div></div>

<p><!-- x --></p>
<h3>Step 3 : Add the build_plugin.xml file to declare the build target.</h3>
<p>This is where you define the Ant target, which when pulled in by the integrator will override the built in target of the same name.  Note that this could possibly break in the future if the integrator changes the order of code to be before rather than after the imports (I think).  At first I couldn&#8217;t get both my override to work (it doesn&#8217;t work if the build_plugin.xml imports it) and get a file path that was relative to the plugin directory; however I stumbled on the answer in the dita-ot Yahoo Group while looking for some other information (on code highlighting).  A little further experimentation and I was able to get somethign that worked.</p>
<p>First create a build file, must match the name declared in the plugin.xml, so here it&#8217;s called build_plugin.xml</p>

<div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #ddbb00;">&amp;lt;</span>project<span style="color: #ddbb00;">&amp;gt;</span>
&nbsp;
  <span style="color: #ddbb00;">&amp;lt;</span>import file=&quot;build_toc.xml&quot;/<span style="color: #ddbb00;">&amp;gt;</span>
&nbsp;
  <span style="color: #ddbb00;">&amp;lt;</span>target name=&quot;dita.out.map.xhtml.toc&quot;
        unless=&quot;noMap&quot; if=&quot;inner.transform&quot;
        description=&quot;Build HTML TOC file,which will adjust the directory&quot;<span style="color: #ddbb00;">&amp;gt;</span>
&nbsp;
      <span style="color: #ddbb00;">&amp;lt;</span>!-- define your own xsl, note you have to specify the ./plugins/NAME_OF_PLUGIN/ path here --<span style="color: #ddbb00;">&amp;gt;</span>
      <span style="color: #ddbb00;">&amp;lt;</span>xslt
       style=&quot;${xtoc_plugin.dir}${file.separator}xsl${file.separator}xhtmtoc.xsl&quot;
       ... <span style="color: #ddbb00;">&amp;gt;</span>
          ...
      <span style="color: #ddbb00;">&amp;lt;</span>/xslt<span style="color: #ddbb00;">&amp;gt;</span>    
&nbsp;
  <span style="color: #ddbb00;">&amp;lt;</span>/target<span style="color: #ddbb00;">&amp;gt;</span>
&nbsp;
<span style="color: #ddbb00;">&amp;lt;</span>/project<span style="color: #ddbb00;">&amp;gt;</span></pre></div></div>

<p>Now we need a second build file, the build_toc.xml referenced in the first:</p>

<div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #ddbb00;">&amp;lt;</span>project name=&quot;xtoc_plugin&quot; basedir=&quot;.&quot;<span style="color: #ddbb00;">&amp;gt;</span>
	<span style="color: #ddbb00;">&amp;lt;</span>dirname property=&quot;xtoc_plugin.dir&quot; file=&quot;${ant.file.xtoc_plugin}&quot;/<span style="color: #ddbb00;">&amp;gt;</span>
<span style="color: #ddbb00;">&amp;lt;</span>/project<span style="color: #ddbb00;">&amp;gt;</span></pre></div></div>

<p>When the build_plugin.xml is merged into the core build files, the import is also copied in, with a corrected path.  Then the path the plugin is captured in the imported build_toc file, which can be used in the &#8216;included&#8217; target.  Kind of tricky, and it feels a little &#8220;hacky&#8221; to me, but it seems to be working.</p>
<div class="printfriendly alignleft"><a href="http://www.ipov.net/apps/blog/2010/09/dita-table-of-contents/?pfstyle=wp" rel="nofollow" ><img src="//cdn.printfriendly.com/pf-button.gif" alt="Print Friendly" /></a></div><p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.ipov.net%2Fapps%2Fblog%2F2010%2F09%2Fdita-table-of-contents%2F&amp;title=DITA%20Table%20of%20Contents" id="wpa2a_4"><img src="http://www.ipov.net/apps/blog/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.ipov.net/apps/blog/2010/09/dita-table-of-contents/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Milestone 27: CoSolvent Comunity Server</title>
		<link>http://www.ipov.net/apps/blog/2010/08/milestone-27-cosolvent-comunity-server/</link>
		<comments>http://www.ipov.net/apps/blog/2010/08/milestone-27-cosolvent-comunity-server/#comments</comments>
		<pubDate>Tue, 17 Aug 2010 16:32:50 +0000</pubDate>
		<dc:creator>robert.sanders</dc:creator>
				<category><![CDATA[CoSolvent]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.ipov.net/apps/blog/?p=562</guid>
		<description><![CDATA[The development team here at iPOV is pleased to announce the release of CoSolvent Community Server, Milestone 27. This release continues to improve stability and expand the feature set. The main changes in this release are: Improvements to Commenting, including the addition of &#8220;Sort by Video Timing&#8221; to sort the comments based on the time [...]]]></description>
			<content:encoded><![CDATA[<p>The development team here at iPOV is pleased to announce the release of CoSolvent Community Server, Milestone 27. This release continues to improve stability and expand the feature set.  The main changes in this release are:</p>
<ul>
<li>Improvements to Commenting, including the addition of &#8220;Sort by Video Timing&#8221; to sort the comments based on the time on a video that the comment is associated with (applies only to video files).</li>
<li>Visual formatting tweaks, including decreasing unneeded space between item previews in the &#8220;Grid&#8221; folder view mode, this greatly improves the layout for users with a 1024 x 768 screen.</li>
<li>Addition of item flags for &#8220;Has comments&#8221;, &#8220;New Item&#8221;, &#8220;Changed Item&#8221; to help visually scan a folder contents.</li>
<li>Further improvements to the upload control:
<ul>
<li>Addition of a &#8220;Keep Alive&#8221; using a Javascript timeout to keep the user&#8217;s session alive when on the upload page.  We&#8217;ve had issues with users going to the upload page, getting distracted and moving to some other application / task, then returning to the still loaded upload page and attempting to upload files, only to get an error when the (often large) file finishes uploading and the server fails to process it due to the user&#8217;s browser session being timed out due to inactivity.  This change will fix this.  The &#8220;keep alive&#8221; is also triggered immediately before running an upload which should cause most other errors to be detected before a user actually has to wait for a file upload.</li>
<li>Errors are now hidden by default, clicking on the &#8220;Errors&#8221; link in the upload status bar loads the list of upload errors; each error in this list is now cross linked to an online help page (<a href="http://www.ipov.net/apps/ccs-support/articles/cosolvent-upload-errors/" target="_blank">http://www.ipov.net/apps/ccs-support/articles/cosolvent-upload-errors/</a>) which explains the error in more details (and which can be updated faster than the application text).</li>
<li>Grid used to display files that are queued for upload has some visual improvements to make it more usable.</li>
</ul>
</li>
<li>Continued to work on updating the PHP code to run properly on PHP 5.3</li>
</ul>
<p>The complete list of issues addresses can be seen at <a href="https://www.assembla.com/spaces/cosolvent/milestones/240821-milestone-27" target="_blank">https://www.assembla.com/spaces/cosolvent/milestones/240821-milestone-27</a></p>
<p>Additionally, this release should mark the last development done in our SVN repository; we are transitioning to use of git to take advantage of its cheap branches and other distributed features.</p>
<div class="printfriendly alignleft"><a href="http://www.ipov.net/apps/blog/2010/08/milestone-27-cosolvent-comunity-server/?pfstyle=wp" rel="nofollow" ><img src="//cdn.printfriendly.com/pf-button.gif" alt="Print Friendly" /></a></div><p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.ipov.net%2Fapps%2Fblog%2F2010%2F08%2Fmilestone-27-cosolvent-comunity-server%2F&amp;title=Milestone%2027%3A%20CoSolvent%20Comunity%20Server" id="wpa2a_6"><img src="http://www.ipov.net/apps/blog/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.ipov.net/apps/blog/2010/08/milestone-27-cosolvent-comunity-server/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Options for Embedding Video IN a Document File</title>
		<link>http://www.ipov.net/apps/blog/2009/09/options-for-embedding-video-in-a-document-file/</link>
		<comments>http://www.ipov.net/apps/blog/2009/09/options-for-embedding-video-in-a-document-file/#comments</comments>
		<pubDate>Thu, 24 Sep 2009 05:01:12 +0000</pubDate>
		<dc:creator>vic.uzumeri</dc:creator>
				<category><![CDATA[Business Issues]]></category>
		<category><![CDATA[Flash / Flex]]></category>
		<category><![CDATA[Processing Methods]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[acrobat]]></category>
		<category><![CDATA[embedding]]></category>
		<category><![CDATA[pdf]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://www.ipov.net/blog/?p=440</guid>
		<description><![CDATA[With companies effectively using video on websites, why would anyone be interested in the fairly challenging task of embedding video directly in Word and PDF documents? In general, there is little need to embed video directly inside of office documents. However, there are situations where embedding may be the best (or only) way to ensure [...]]]></description>
			<content:encoded><![CDATA[<p>With companies effectively using video on websites, why would anyone be interested in the fairly challenging task of embedding video directly in Word and PDF documents? In general, there is little need to embed video directly inside of office documents. However, there are situations where embedding may be the best (or only) way to ensure that the documents and video can be viewed together reliably. Some of these situations are common enough that iPOV was motivated to develop special tools and processes to make the task easier.<span id="more-440"></span></p>
<p>The following scenarios illustrate situations where video-embedded documents might be handy and you can review the options in a<strong> lot</strong> more detail in this extended <a href="http://www.ipov.net/assets/EmbeddingVideoInDocuments.pdf">whitepaper</a>.</p>
<ul>
<li>Large company IT departments are pushing employees to store their      business documents in secure document management systems like SharePoint      or Lotus Notes. These systems enforce enhanced security and offer document      control safeguards that are difficult to replicate on standard web      servers. Documents with embedded video coexist very nicely with these      systems.</li>
<li>For security reasons, the same IT departments may resist the      proliferation of intranet or extranet web server applications. Even if a      document could be hosted on a web server, policy restrictions or resource      costs may make that difficult for people in business units and non-IT      departments. Those individuals can author video-enhanced PDF or DOC files      without requiring any special IT support.</li>
<li>Although this problem is diminishing, companies with highly mobile      workforces may still have people operating in places where web      connectivity is marginal or nonexistent. Field service crews, overseas      offices in developing economies and personnel co-located behind strict      client firewalls may not be able to reach key company websites. They can      carry a library of video-enabled documents on a hard disk, thumb drive, or      CD.</li>
<li>Most employees in large organizations use Microsoft Word and it      would be convenient if all forms of publishing could be done with that      tool. However, to work with other programs, Word documents often must be      exported to another format. If you add video into the mix, that gets very      complicated. One iPOV client found that, by converting Word originals to      PDFs and embedding video, the resulting documents became much more      universal. A given PDF document with embedded video can be stored in      SharePoint, loaded into the Learning Management System, linked and made      viewable online at a website, or emailed to parties outside the company.  One file, many uses.</li>
<li>A similar situation occurred in a global multinational. Divisions      around the world each had their own Learning Management System, some of      which were old and not standards-compliant. If they published eLearning in      the customary SCORM or AICC packaging it would have taken a lot of effort      to import it into all of the varied, regional servers. However, every LMS      (even the old and non-standard ones) could import and display a PDF. By      packaging the video inside the PDF, the courseware effectively became a      universal commodity.</li>
</ul>
<h2>Examples</h2>
<p style="text-align: left;">(click on the images and captions to view PDFs with embedded video at iPOV’s website)</p>
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="100" valign="top">
<p style="text-align: center;" align="center"><a href="http://demo.cosolvent.com/ccs/main.php?g2_itemId=4381&amp;g2_typeView=GridView"><img title="sshTunneling" src="http://www.ipov.net/blog/wp-content/uploads/2009/09/sshTunneling-150x150.png" alt="sshTunneling" width="150" height="150" /></a><a href="http://demo.cosolvent.com/ccs/main.php?g2_itemId=4381&amp;g2_typeView=GridView">memo</a></p>
</td>
<td width="180" valign="top">
<p style="text-align: center;"><a href="http://demo.cosolvent.com/ccs/main.php?g2_itemId=4378&amp;g2_typeView=GridViewo.cosolvent.com/ccs/main.php?g2_view=core.DownloadItem&amp;g2_itemId=4378&amp;g2_d1=1"><img title="corporatePolicy" src="http://www.ipov.net/blog/wp-content/uploads/2009/09/corporatePolicy-150x150.png" alt="corporatePolicy" width="150" height="150" /></a><a href="http://demo.cosolvent.com/ccs/main.php?g2_itemId=4378&amp;g2_typeView=GridViewo.cosolvent.com/ccs/main.php?g2_view=core.DownloadItem&amp;g2_itemId=4378&amp;g2_d1=1">policy</a></p>
</td>
<td width="102" valign="top">
<p style="text-align: center;"><a href="http://demo.cosolvent.com/ccs/main.php?g2_itemId=9926&amp;g2_typeView=GridView"><img title="economicDevelopment" src="http://www.ipov.net/blog/wp-content/uploads/2009/09/economicDevelopment-150x150.png" alt="economicDevelopment" width="150" height="150" /></a><br />
<a href="http://demo.cosolvent.com/ccs/main.php?g2_itemId=9926&amp;g2_typeView=GridView">PR</a></p>
</td>
</tr>
<tr>
<td width="100" valign="top">
<p style="text-align: center;"><a href="http://demo.cosolvent.com/ccs/main.php?g2_itemId=1015&amp;g2_typeView=GridView"><img title="realEstate" src="http://www.ipov.net/blog/wp-content/uploads/2009/09/realEstate-150x150.png" alt="realEstate" width="150" height="150" /></a><br />
<a href="http://demo.cosolvent.com/ccs/main.php?g2_itemId=1015&amp;g2_typeView=GridView">sales</a></p>
</td>
<td width="180" valign="top">
<p style="text-align: center;"><a href="http://demo.cosolvent.com/ccs/main.php?g2_itemId=4375&amp;g2_typeView=GridView"><img title="workProcedure" src="http://www.ipov.net/blog/wp-content/uploads/2009/09/workProcedure-150x150.png" alt="workProcedure" width="150" height="150" /></a><a href="http://demo.cosolvent.com/ccs/main.php?g2_itemId=4375&amp;g2_typeView=GridView"><br />
SOP</a></p>
</td>
<td width="102" valign="top">
<p style="text-align: center;"><a href="http://demo.cosolvent.com/ccs/main.php?g2_itemId=9923&amp;g2_typeView=GridView"><img title="xprocessScrum" src="http://www.ipov.net/blog/wp-content/uploads/2009/09/xprocessScrum-150x150.png" alt="xprocessScrum" width="150" height="150" /></a><a href="http://demo.cosolvent.com/ccs/main.php?g2_itemId=9923&amp;g2_typeView=GridView">eLearning</a></p>
</td>
</tr>
</tbody>
</table>
<p>You can view more examples at iPOV’s website: <a href="../../content/rich-media-pdf">http://www.ipov.net/content/rich-media-pdf</a></p>
<h2>Gotchas</h2>
<p>A fast-moving technology always generates surprises that initially baffle newcomers. These are the surprising limitations and gotchas that dictate what is actually possible. Accordingly, we begin this guide with a list of the key constraints that we have learned to work around:</p>
<ol>
<li><strong>Can I put a video into a Word Document and have it viewable and      playable on the Page?</strong><br />
No. You can create that impression if you insert a Windows Media ‘object’      into your document, but the video won’t actually be inside the Word file.      It will be an external file that the document is linked to, and you must      manage this linkage yourself. You <strong>can</strong> put a movie inside the Word file, but it will appear as a small icon that      you must click to open. It is theoretically possible that a skilled      programmer can write a macro or plugin to make this possible, but iPOV has      not seen any developer activity in this area.</li>
<li><strong>Can I put a video into a Word document and then save it as a PDF?</strong><br />
Not reliably or well. iPOV is not aware of any tool that will reliably      export a video-embedded Word document to PDF and have the video play      correctly. First, if the video is in a typical, common movie format (MP4, AVI,      WMV, MOV, etc.), it should first be converted into a Flash movie –      something PDF exporting software won’t do.<a href="#_ftn1">[1]</a> Second, if the movie embedded in the Word document is already a Flash      movie, the resulting embedded movie will have very limited play control      (see point #3).</li>
<li><strong>Can I add a Flash video to a PDF using Acrobat Pro?<br />
</strong>You can add a FLV or H.264 video or SWF animation easily enough, but the      Flash Player doesn’t supply any play controls (start, stop, pause, tracker      bar, volume, etc.). This is a big drawback in business situations where      the viewer may want to review a key point or adjust the sound volume. To      get good play controls, it is necessary to package the video and play      controls together into an SWF file (e.g., using an external editor such as      Adobe Flash) and insert the unified SWF file into the PDF.<a href="#_ftn2">[2]</a> <strong> </strong></li>
<li><strong>Why haven’t I seen more PDFs with embedded video – it looks really      cool?<br />
</strong>Acrobat has supported embedding videos since version 6. The problem      for business documents comes down to workflow – see answer #2 above.  In general if you want to edit the text      of a document you will do so in Word and then re-publish it to a PDF.  At this point someone must individually re-insert      all the videos from the old PDF into the new PDF. iPOV has developed a set      of processes and procedures to help us do this quickly and correctly and      we are working on tools to automate the process even more.<a href="#_ftn3">[3]</a><sup>,    <a href="#_ftn4">[4]</a></sup></li>
<li><strong>Why not put the videos on YouTube and link them to a document?</strong><br />
YouTube (and most sites like it) caters to people who want wide public distribution      for their files. It has a very basic security system and it may be often      blocked by corporate firewalls. Sites like these also tend to display ads      that may or may not fit with your corporate image.</li>
</ol>
<hr size="1" /><a href="#_ftnref1">[1]</a> Adobe now recommends embedding H.264 or FLV videos for pre-edited movies. You can use non-Flash video in PDFs, but Acrobat will try to find a suitable video player program on the user’s system. If it cannot find a player already installed, it will likely fail.</p>
<p><a href="#_ftnref2">[2]</a> The latest version of Acrobat Pro has an alternative way to import linked files, but it is finicky and prone to error. It is also more difficult to debug any broken links once the files have been imported.</p>
<p><a href="#_ftnref3">[3]</a> When documents are designed for large numbers of end users, it is often easier link to a video on a web server rather than distribute a packaged document.<ins datetime="2009-08-10T22:08" cite="mailto:vic%20uzumeri"></ins></p>
<p><a href="#_ftnref4">[4]</a> Note also that recent security changes have made some old documents no longer playable.</p>
<div class="printfriendly alignleft"><a href="http://www.ipov.net/apps/blog/2009/09/options-for-embedding-video-in-a-document-file/?pfstyle=wp" rel="nofollow" ><img src="//cdn.printfriendly.com/pf-button.gif" alt="Print Friendly" /></a></div><p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.ipov.net%2Fapps%2Fblog%2F2009%2F09%2Foptions-for-embedding-video-in-a-document-file%2F&amp;title=Options%20for%20Embedding%20Video%20IN%20a%20Document%20File" id="wpa2a_8"><img src="http://www.ipov.net/apps/blog/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.ipov.net/apps/blog/2009/09/options-for-embedding-video-in-a-document-file/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Why we need a &#8216;Work Networking&#8217; Metaphor</title>
		<link>http://www.ipov.net/apps/blog/2009/09/why-we-need-a-work-networking-metaphor/</link>
		<comments>http://www.ipov.net/apps/blog/2009/09/why-we-need-a-work-networking-metaphor/#comments</comments>
		<pubDate>Thu, 17 Sep 2009 15:52:53 +0000</pubDate>
		<dc:creator>vic.uzumeri</dc:creator>
				<category><![CDATA[Applications]]></category>
		<category><![CDATA[Business Issues]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[b2b]]></category>
		<category><![CDATA[eLearning]]></category>
		<category><![CDATA[grading]]></category>
		<category><![CDATA[quality]]></category>
		<category><![CDATA[reviewing]]></category>
		<category><![CDATA[social network]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://www.ipov.net/blog/?p=181</guid>
		<description><![CDATA[One of the profound joys of talking to experts is that they can ask that one question that bursts your bubble. I just had that experience with Tony Karrer &#8211; master of the eLearning Technology blog. I sent him some links to our CoSolvent Community Server, along with the blithe statement: &#8220;We are trying to [...]]]></description>
			<content:encoded><![CDATA[<p>One of the profound joys of talking to experts is that they can ask that one question that bursts your bubble. I just had that experience with <a href="http://elearningtech.blogspot.com/">Tony Karrer</a> &#8211; master of the <a href="http://elearningtech.blogspot.com/">eLearning Technology</a> blog. I sent him some links to our CoSolvent Community Server, along with the blithe statement:</p>
<blockquote><p>&#8220;We are trying to get traction for it as a service for what I believe to be a very badly underserved userspace: the no-man&#8217;s-land between people inside a corporate firewall and a closed community of stakeholders.&#8221;</p></blockquote>
<p>Tony&#8217;s response, quite rightly, was to question my sanity. Of course, he was very polite about it:</p>
<blockquote><p>&#8220;On the community side of things &#8211; I guess I&#8217;m surprised you say it&#8217;s underserved. My impression is there are lots of solutions, e.g., Ning.&#8221;</p></blockquote>
<p>Umm. Yes.  Tony&#8217;s right. There <strong>are</strong> lots of solutions. I&#8217;ve had active accounts on Ning for at least 18 months and I went through the feature checklist. Technically, Ning will do most of the things that our CoSolvent Community Server can do, plus quite a few more. Other social networking tools are similar.  Does that mean we&#8217;ve wasted two years on CoSolvent&#8217;s evolution? After a short recovery period, I realized that we developed CoSolvent around a set of assumptions and design concepts that we have not fully articulated &#8211; possibly even to ourselves. Now seems as good a time as any to set the record straight.</p>
<p><span id="more-181"></span></p>
<p>We designed CoSolvent Community Server (CCS) for business-oriented networking and video-sharing:</p>
<ul>
<li>We adopted a Windows folder operating metaphor that was as simple as possible so busy professionals could learn to use it.</li>
<li>We designed CCS to operate with minimal hardware and software support because business networks need to reach <strong>all</strong> of the relevant stakeholders.</li>
<li>We installed  a rich underpinning of access controls, permissions and utilities so CCS can be molded to make workflows fluid and easy.</li>
</ul>
<p>In many ways, CCS is like a box of Lego. The building blocks are individually simple, but they can be re-arranged to support a variety of practical business workflows.</p>
<h2>What sort of &#8216;work&#8217; network are we talking about?</h2>
<p>We developed CoSolvent because we couldn&#8217;t find a reliable way  move rich media (typically video) to and from the individual subject matter experts (SMEs) and managers among our various corporate training clients. Many of our corporate counterparts  are not high-skill IT managers or experienced media folks. They are department managers, plant engineers, technicians and HR managers in big, security-conscious companies. They don&#8217;t have super-duper IT administrator privileges. They sometimes can&#8217;t even view YouTube. Yet, they&#8217;re the subject matter experts that we needed to share stuff with.</p>
<p>Our network collaborators are not really friends or social acquaintances. They are buyers and we are the vendor. It&#8217;s not about being social, its about the work. The work is the center of our network universe.</p>
<p><em><strong>We needed a pragmatic tool for &#8216;work&#8217; networking, not an engaging site for a &#8216;social&#8217; networking.</strong></em></p>
<p>Of course, if an existing social networking tool could double as a reasonable &#8216;work networking&#8217; platform, we could avoid reinventing the wheel. If we could make Facebook or Ning, etc. do the job, that would be good enough. Unfortunately, there were a number of issues that gave us pause:</p>
<ul>
<li><strong>The companies that employ our target audience </strong><strong>strongly discourage employees from putting company assets on &#8216;public&#8217; sites</strong>. If we wanted to use a Ning,  we would have to convince their employer that it was safe. If we don&#8217;t control it and our client doesn&#8217;t control it, that&#8217;s a really tough sell to corporate IT.</li>
<li><strong>Workers often didn&#8217;t want their co-workers to see their materials until they had a chance to approve them</strong>. Can you put a video in Ning and ensure  that only chosen co-workers (out of the larger community) can see it? Probably. Can you teach an IT-challenged manager how to do it and be sure that they won&#8217;t make a mistake? Can you make them feel confident that they won&#8217;t make a mistake? Not so easy.</li>
<li><strong>People often work with collections of related, but dissimilar materials</strong>. Most projects involve some video, some supporting text documents, possibly some audio files, some spreadsheets, etc. How could we keep those together and manage them in an orderly fashion in Ning or Facebook? We might do OK with Google Docs, but what about commenting and video handling?</li>
<li><strong>We wanted to accommodate </strong><strong>all types of video as input</strong>. For example, there are scenarios where it is really convenient if our correspondents can upload and view SWF files. For security reasons, Ning, Facebook and Youtube will never let that happen because Flash animations  can contain actionscript.</li>
<li><strong>It is hard to guarantee 100% access to  a public social networking site &#8211; especially with IT-challenged users</strong>. The sponsors of Facebook or Ning don&#8217;t need 100% individual access for their sites to be successful. They engineer their software to make it as easy as possible, but ultimately they won&#8217;t care if a specific individual has an archaic browser or a vicious spam filter. However, if you want to network   real work, 100% access is critical. If an individual can&#8217;t use the system, you must still do business. You will have to set up costly workarounds that can wipe out all of the productivity gains that the networking tool might offer.</li>
</ul>
<p>If I try to frame our view of the contrasting demands  in a diagrammatic form, it would look something like this:</p>
<table border="0" align="center">
<tbody>
<tr>
<td><img class="aligncenter size-medium wp-image-200" title="screen034" src="http://www.ipov.net/blog/wp-content/uploads/2009/09/screen034-300x198.png" alt="screen034" width="300" height="198" /></td>
<td><img class="aligncenter size-medium wp-image-201" title="screen036" src="http://www.ipov.net/blog/wp-content/uploads/2009/09/screen036-300x209.png" alt="screen036" width="300" height="209" /></td>
</tr>
<tr>
<td valign="top">
<h4 style="text-align: center;">A Social Network</h4>
<p>User participation is <strong>voluntary</strong>. People join because they gain something on an individual level &#8211; possibly for their career, but ultimately for their personal benefit. If, for any reason, a given individual user cannot fully participate, the server&#8217;s Sponsor may care &#8211; but not too much.</td>
<td valign="top">
<h4 style="text-align: center;">A Work Network</h4>
<p>A commercial Sponsor wants  a safe, virtual space where <strong>all </strong>business stakeholders can participate &#8211; to do their  job. A  &#8216;stakeholder community&#8217; (e.g., a supply chain, an association, or a school) can span many individuals and organizations across the public Internet.</td>
</tr>
</tbody>
</table>
<p>But the biggest problem:</p>
<h3 style="text-align: center;"><strong><em>A lot of real-world business &#8216;workflow&#8217; isn&#8217;t person-centric</em>.</strong></h3>
<p>Social networking tools are designed around the individual user. A user typically logs into &#8216;My Page&#8217;. From there, the user can engage other individuals, join groups of other individuals and share media with other individuals. They can form new clubs and groups with other individuals. However, at the end of the day, the individual is still the center of the universe.</p>
<p>Business interactions are often not about the individual. They may be more naturally expressed as company-to-company, department-to-company, project-to-consultant, or buyer-to-seller interactions.  In fact, there can be any number of different central actors, some human and some organizational, in a working business network. Sure, you could start everything from the individual and build the structures for the other entities, but that is just the long way round. Why not establish a Lego-like structure that can be reconfigured to support the workflow directly?</p>
<p>There are lots of other issues and considerations, but we decided that we were looking at a problem that wasn&#8217;t really social. It was more pragmatic and utilitarian and commercial. We looked at a lot of possible solutions and finally decided to roll our own. We developed <a href="http://www.ipov.net/content/cosolvent-video-sharing-technologies"><strong>CoSolvent Community Server</strong></a>. There is a thorough technical description elsewhere <a href="http://www.ipov.net">on our website</a>. However, Tony&#8217;s question reveals that our market positioning explanations are still not clear or adequate. So, until we can remedy the main site, let me try to summarize and clarify the concept of CCS:</p>
<ul>
<li><strong>CCS is a web-based file sharing tool with a suite of extra features</strong>. Folders can be labeled anything the user wants. Any &#8216;social&#8217; tools are slaved to the folder metaphor. For example, groups are formed by giving them defined permissions and their own folder structure.</li>
<li><strong>The Windows folder metaphor is easily customized  to fit a wide variety of access schemes and workflows.</strong> The goal is flexibility and simplicity. We want to fully streamline the average worker&#8217;s collaborative experience &#8211; without adding extra navigation and structural complexity.<span style="color: #ff6600;"> </span></li>
<li><strong>It is designed to be maximally accessible by a wide range of users</strong>.  CCS works with minimal client-side requirements: low to modest bandwidth, web browser, and Flash. It has proven adept at reaching behind firewalls, to users  with Macs, to workers in other countries, etc. While CCS makes it easier, achieving 100% access will ultimately depend on the willingness of stakeholders, technical people, iPOV and community developers to work together.</li>
<li><strong>It is optimized for the exchange of video materials</strong>. The potential of video as a day-to-day business communication tool has barely been tapped. In the wild, video clips exist in a dizzying array of types and it is hard to share them without performing  conversions and extra processing steps that most people don&#8217;t want to learn. CCS directly supports a wide variety of  video types.</li>
<li><strong>It is designed to be quickly set up and hosted on a vanilla installations</strong>. Currently, all of our working installations are in Amazon&#8217;s EC2 electronic cloud. We can set up a new, totally dedicated, site in minutes, while piggy-backing on Amazon&#8217;s security infrastructure.</li>
</ul>
<p>Another way to  grasp the difference between CSS and a  typical social network is to look at some practical application scenarios.</p>
<h2>Target Applications &#8211; Camera Based</h2>
<p>Small, inexpensive, easy-to-use solid-state cameras burst on the scene 3 or 4 years ago. Examples include the <a href="http://www.theflip.com/">Flip camera</a>, the <a href="http://www.rcaaudiovideo.com/categories.aspx?product=315&amp;post=2">RCA SmallWonder</a>, the <a href="http://sanyo.com/xacti/english/products/index.html">Sanyo Xacti</a> series and the <a href="http://www.kodak.com/eknec/PageQuerier.jhtml?pq-path=9/13061&amp;pq-locale=en_GB">Kodak Zi series</a>, along with many, many, many others. That doesn&#8217;t even count the increasingly ubiquitous mobile phone camera.  Surely there ought to be a way to apply these new tools in day-to-day business operations.</p>
<h4><strong>Scenario 1 &#8211; Confidential Quality Review<br />
</strong></h4>
<p>A corporate quality manager (CQM) uses CCS to get video reports of defects and problems from far-flung plants. Security is crucial. The CQM doesn&#8217;t want anyone (not even his VP) to see the videos before he has a chance to review and assess them. At the plant level, only the plant quality manager (PQM) is allowed to record and upload this type of video. We  can set up a folder arrangement in CCS as shown in the following diagram:</p>
<p style="padding-left: 30px; text-align: center;"><img class="aligncenter size-full wp-image-216" title="CCSscreenShots013" src="http://www.ipov.net/blog/wp-content/uploads/2009/09/CCSscreenShots0131.png" alt="CCSscreenShots013" width="665" height="369" /></p>
<ol>
<li>The PQM for Plant #5  makes a video (or possibly a still photo) of the problem. The PQM places the media in a  special &#8216;defect report&#8217; folder  that is visible only to the PQM</li>
<li>The &#8216;defect report&#8217; folder is actually just a link to a real folder for Plant #5 that resides within the corporate quality area. That folder is visible only to the PQM and the CQM.</li>
<li>When the file arrives in the CQM&#8217;s  Plant #5 folder, the CQM receives an automatic email notification that a defect report has arrived from Plant #5.</li>
</ol>
<p>The CQM can take several actions. He/she can phone the Plant #5 PQM and discuss the problem. Having the video as a common talking point will likely speed discussion and resolution. The CQM can move the video file out of the hidden folder to the general area &#8211; possibly into a folder of known issues. If the CQM adds a comment with suggested remedies (or records and uploads a video), there is now a permanent record of the problem and the fix.</p>
<h4><strong>Scenario 2 &#8211; Getting Action from a Supplier<br />
</strong></h4>
<p>The receiving manager gets a shipment that is badly packaged. If he  spends the next few days on the phone, he <strong>might</strong> get the supplier&#8217;s attention. CCS may be able to elicit a better response &#8211; if we set up folders so he can easily send a video to the supplier. One possible structure is illustrated in the following diagram:</p>
<p><img class="aligncenter size-full wp-image-229" title="CCSscreenShots034" src="http://www.ipov.net/blog/wp-content/uploads/2009/09/CCSscreenShots0341.png" alt="CCSscreenShots034" width="668" height="336" /></p>
<ol>
<li>The receiving manager spots a problem with the way a shipment is packaged. He/she records a short video to demonstrate and document the problem and uploads it to Supplier A&#8217;s &#8216;public folder&#8217; on the CCS. The public folder is  a special type of folder (designated with a yellow icon) that doesn&#8217;t require a login for any of the items that it contains.</li>
<li>The supervisor at Supplier A receives an email with a link to the video in the public folder. The supervisor just clicks the link to view the video.</li>
<li>The receiving manager follows up with a phone call to discuss the problem. Since both parties have viewed the video of the problem shipment, the issue is resolved quickly and decisively.</li>
</ol>
<p>The &#8216;public&#8217; folder is the key to this scenario. It allows the receiving manager to send the video safely without requiring that the supplier be registered in the system. The CCS public folder system is smart enough to only allow the viewer to see a) the item at the link they were given, or b) if they were given a link to a folder, they can see any items and subfolders that the linked folder contains. By giving the folder a distinctive (yellow) label, CCS makes it easy for occasional users to know where  files are public and where they are private.</p>
<ul>
<li>You can view a &#8216;made-up&#8217; example in <a href="http://demo.cosolvent.com/ccs/main.php?g2_itemId=4294&amp;g2_typeView=GridView">this folder</a> on our demo CCS.</li>
</ul>
<p style="padding-left: 30px;"><strong> </strong></p>
<h2>Target  Applications &#8211; Screencasting Based</h2>
<p>CCS can be used with free software tools to rapidly generate document and media reviews. The tools we use most often are the following:</p>
<ul>
<li><a href="BB Flashback Express">BB Flashback Express</a> &#8211; a free screencast recording program</li>
<li><a href="http://tools.tortoisesvn.net/DemoHelperInfo">DemoHelper</a> &#8211;  a free program that draws on top of everything on the computer desktop (except that it automatically pauses  running movies when you try to draw or write)</li>
</ul>
<p>The basic idea behind the following examples is to make a screencast movie as you view and comment on documents or media in the CCS &#8211; then upload the movie of your commentary to CCS as a permanent record. With a little practice, this is <strong>much</strong> faster than trying to craft written comments &#8211; and typically much clearer.</p>
<h4>Scenario 3 &#8211; Near-painless Media Review</h4>
<p>We needed to get clients&#8217; reviews of our work-in-process eLearning media. Client staff are busy and too-often unavailable. Plus they reside in a different city, so meetings are a chore. We can set up a folder structure with &#8216;Drop off&#8217;, &#8216;Review&#8217;, and &#8216;PickUp&#8217; subfolders and show our clients how to use a free tool, <a href="http://www.bbsoftware.co.uk/BBFlashBack_FreePlayer.aspx">BB Flashback Express</a>, to record their comments. Now the review process goes like this:</p>
<p><img class="aligncenter size-full wp-image-225" title="CCSscreenShots038" src="http://www.ipov.net/blog/wp-content/uploads/2009/09/CCSscreenShots038.png" alt="CCSscreenShots038" width="578" height="377" /></p>
<blockquote>
<ol>
<li>We place the material for review in the client&#8217;s folder in the CCS.</li>
<li>We email the SME a link to the material that is up for review (or they get an automatic email notification if they have subscribed to the folder).</li>
<li>The SME starts BB Flashback Express to make a screencast of their review.
<ul>
<li>The reviewer opens the link to the viewable media and starts to watch.</li>
<li>Whenever they see something of note, they can pause the media, use their mouse to point out the feature and add a verbal commentary.</li>
<li>When they have finished their review, they can add any general comments, or cycle back through the media to add second thoughts.</li>
</ul>
</li>
<li>The SME saves their screencast as a Flash file and upload it to CCS beside the media that was reviewed. They don&#8217;t even have to export their comments as Flash. They can just upload the raw BB Flashback file and we will replay it on our end. If there are any written materials (e.g., supplementary documents or comments), they can upload them or write them in the same folder as the reviewed material.</li>
</ol>
</blockquote>
<p>That&#8217;s it. We are finding that our clients can often review a 20 minute eLearning lesson in about half an hour. It takes us a bit longer to listen to their review, but there is seldom any confusion about their request. That means that our overall time investment is reduced. Win-Win.</p>
<h4>Scenario 4 &#8211; Lightning Fast Essay Grading</h4>
<p>I and several of my staff are currently teaching or have recently taught university-level courses where we had to grade student papers. Oh boy is that fun. However, we are trying a new approach.<strong> </strong>CCS can be configured  so each registered user (aka student) gets their own private folder &#8211; just like any social networking tool:</p>
<p><img class="aligncenter size-full wp-image-226" title="CCSscreenShots037" src="http://www.ipov.net/blog/wp-content/uploads/2009/09/CCSscreenShots037.png" alt="CCSscreenShots037" width="571" height="374" /></p>
<blockquote>
<ol>
<li>We ask students to submit their papers as PDFs so we can view them directly online in CCS.</li>
<li>We automatically get an email when  each file arrives.</li>
<li>We use BB Flashback and Demohelper to mark up the paper and record our verbal comments.</li>
<li>When  we finish, we save the movie as an SWF and upload it into the student&#8217;s private folder beside their essay.</li>
</ol>
</blockquote>
<p>If the student followed our advice and &#8216;subscribed&#8217; to their folder, they will receive an automatic email as soon as our comment video file has finished uploading. We can even log in with  different browsers and upload a video in the background while we record the next video in the foreground. If we want to add text, say to suggest a rephrasing, we can cut, paste and edit text from the PDF to  the CCS commenting utility. Bottom line, we can read, comment and grade an essay in just slightly longer than it  would normally take to simply read the paper version. With 30, 50 or 60 students in a class, we like that idea. It gives a much better audit trail and, considering my atrocious chicken-scratch handwriting, the students probably learn more.</p>
<h4>Scenario 5 &#8211; Commissioning Graphics at a Distance</h4>
<p>We get our graphics done by a variety of designers. Some are local. Some work half a world away. However, iPOV often needs graphics done the same day or overnight. How can we do that with a designer in, say, Russia? An iPOV staff member typically records  a short video to explain what they need. The camera arrangement is simple and cheap (under $250):</p>
<p><img class="aligncenter size-full wp-image-228" title="CCSscreenShots036" src="http://www.ipov.net/blog/wp-content/uploads/2009/09/CCSscreenShots036.png" alt="CCSscreenShots036" width="682" height="383" /></p>
<p>With this crude rig, we can record a 5-7 minute video to  explain what we want. Even though we may be abysmal artists, we can make stick-figure drawings and explain our intent and requirements as we go. In a video, we can give far more context and rationale than we would ever have the patience  to put in a written specification. After the artist uploads a draft, we can comment in CCS. Sometimes we use <a href="http://www.bbsoftware.co.uk/BBFlashBack_FreePlayer.aspx">BB Flashback Express</a> and/or <a href="http://tools.tortoisesvn.net/DemoHelperInfo">Demohelper</a> to make a short screencast movie of our verbal  comments &#8211; using the mouse as a pointer. That way the artist knows exactly which feature we are talking about. We can go back and forth several times in a day, although usually one or two cycles with the video comments are sufficient.</p>
<ul>
<li>You can view the sequence of a typical design process laid out in<a href="http://demo.cosolvent.com:80/ccs/main.php?g2_itemId=8606"> this folder</a> on our CCS Demo site.</li>
</ul>
<h2>Summary</h2>
<p>We designed CoSolvent Community Server for business-oriented networking and video-sharing. We adopted a Windows folder operating metaphor to make it as familiar as possible to the busy professionals that must  learn to use it. We designed CCS to operate with minimal hardware and software support because business networks need to reach <strong>all</strong> of the relevant stakeholders. Finally, we added a rich underpinning of access controls, permissions and utilities so that we can mold CCS to make the workflows fluid and easy &#8211; especially for the tasks that make or save money for the sponsoring organization. In some ways, CCS is similar to a box of Lego. The building blocks  are individually simple, but they can be re-arranged to support  a variety of practical business workflows.</p>
<p>It&#8217;s possible that someone could customize Ning, or HiveLive, or SharePoint, or Google Docs, or &#8230; to work like CCS. However,  we don&#8217;t think these tools were conceived for that purpose and it seems like it would be a force fit. I&#8217;m sure that others will pick up on the CCS idea and address this application space. Until then, we believe that our target market is still a bit &#8216;underserved&#8217;.</p>
<p style="padding-left: 30px;">
<div id="_mcePaste" style="overflow: hidden; position: absolute; left: -10000px; top: 1467px; width: 1px; height: 1px;">I think what&#8217;s really important is the intent, and the willingness, in the case of CCS, of stakeholders, technical people, and community developers to work together to achieve 100% access.</div>
<div class="printfriendly alignleft"><a href="http://www.ipov.net/apps/blog/2009/09/why-we-need-a-work-networking-metaphor/?pfstyle=wp" rel="nofollow" ><img src="//cdn.printfriendly.com/pf-button.gif" alt="Print Friendly" /></a></div><p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.ipov.net%2Fapps%2Fblog%2F2009%2F09%2Fwhy-we-need-a-work-networking-metaphor%2F&amp;title=Why%20we%20need%20a%20%26%238216%3BWork%20Networking%26%238217%3B%20Metaphor" id="wpa2a_10"><img src="http://www.ipov.net/apps/blog/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.ipov.net/apps/blog/2009/09/why-we-need-a-work-networking-metaphor/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Drupal 6 Ajax Screenshot Gallery</title>
		<link>http://www.ipov.net/apps/blog/2009/09/drupal-6-ajax-screenshot-gallery/</link>
		<comments>http://www.ipov.net/apps/blog/2009/09/drupal-6-ajax-screenshot-gallery/#comments</comments>
		<pubDate>Wed, 16 Sep 2009 15:06:24 +0000</pubDate>
		<dc:creator>robert.sanders</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[Websites]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[drupal]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[open source]]></category>

		<guid isPermaLink="false">http://www.ipov.net/blog/?p=112</guid>
		<description><![CDATA[We recently wanted to put up a carousel-style image gallery of product screenshots in our Drupal based website. After a good bit of research, I wound up with several “solutions”, but none of them did quite what I wanted; luckily I hit upon a solution by a bit of good luck simply by noticing some [...]]]></description>
			<content:encoded><![CDATA[<p>We recently wanted to put up a carousel-style image gallery of product screenshots in our Drupal based website.  After a good bit of research, I wound up with several “solutions”, but none of them did quite what I wanted; luckily I hit upon a solution by a bit of good luck simply by noticing some settings that had been enabled in the course of trying out some of the existing plugins.<br />
<span id="more-112"></span></p>
<p>Before getting into my solution, I&#8217;ll mention the two modules that are closest to what I want to achieve:</p>
<ol>
<li><span><a href="http://drupal.org/project/galleria" target="_blank">Galleria </a>– this module produces 	a carousel-style listing of image thumbnails, when a thumbnail is 	clicked on the full-size image is shown.  However, this module has the following problems for my use case:</span>
<ol>
<li>The thumbnails are simply the 		original image file with an explicit width and height set; this 		means that if you have a lot of them, it can take quite a while for 		them all to load.</li>
<li>Loading is not actually 		asynchronous, but there is a significant delay while the javascript 		initializes during which the content is hidden.  There is no 		progress indicator during this time.</li>
<li>The admin panel for the module 		has very limited options – the worst is that it doesn&#8217;t let you 		set the size of the carousel (which can be overridden in CSS), but 		does ask you to specify how many images to display – the images 		are scaled (using CSS) to fit in the carousel&#8217;s default size (you 		can hack the JS code to fix this, but then have to reset a number 		of other CSS properties).</li>
</ol>
</li>
<li><a href="http://drupal.org/project/fancy_slide" target="_blank">Fancy Slide </a>- this module seems 	to  be very new and as such has pretty much no documentation.  If 	its development continues it could become a viable alternative to my 	needs. The biggest problem with this module currently is lack of 	control over the presentation.</li>
</ol>
<p>The following solution uses existing modules.  It seems logical that this technique is already out there, but as I can&#8217;t find it documented, I&#8217;m doing that here.  The main modules you&#8217;ll need:</p>
<ul>
<li><a href="http://drupal.org/project/imageapi">ImageAPI</a></li>
<li><a href="http://drupal.org/project/imagecache">ImageCache</a></li>
<li><a href="http://drupal.org/project/cck">CCK</a>, <a href="http://drupal.org/project/cck">CCK Filefield</a>, <a href="http://drupal.org/project/imagefield">CCK Imagefield</a></li>
<li><a href="http://drupal.org/project/views">Views</a></li>
<li><a href="http://drupal.org/project/thickbox">Thickbox </a>-   for some reason the 	latest version of the Lightbox2 module is creating JS errors when 	mixed with the lastest JQuery version.</li>
</ul>
<p>After installing the modules listed above here&#8217;s what you do:</p>
<div>
<h4>Admin &gt; Site Building &gt; ImageCache</h4>
<p style="padding-left: 30px;">Add a preset, in my case “medium_thumbnail” which is a simple Scale to 128&#215;128 pixels.</p>
</div>
<div>
<h4>Admin &gt; Content Management &gt; Content types</h4>
<div>
<p>Add a new node content type, I called mine “Screenshot.”  There is no need for the “Body.”  Once the basic node type is added go to “Manage Fields” and add the following:</p>
<p>An Image field for the screen shot.  When configuring it enable the “Title text settings” set its input type to textarea (no default value).  Disable the “Description field.”</p>
<ul>
<li>Label: Screenshot</li>
<li>Name:  field_screen  (doesn&#8217;t 	really mater)</li>
<li>Type: File</li>
<li>Form Element: Image</li>
</ul>
<p>The “Screen Gallery” field is my way of organizing multiple galleries.  It may be more correct to use Taxonomy, but this keeps the settings in one place which I like.  You need to add at least one entry in the list of acceptable values.  Please feel free to write me if you think using Taxonomy or another approach is better.</p>
<ul>
<li>Label:  Screen Gallery</li>
<li>Name:  field_gallery</li>
<li>Type: Text</li>
<li>Form Element Select</li>
</ul>
<p>Finally, the Sort Order.  If I have time I may experiment with the Nodequeue module in an attempt to replace this, but for now this provides a way to order the screenshots.  If we use a decimal , and then enter “Integers” (1.0, 2.0) this will leave us room to insert new screenshots between existing ones.</p>
<ul>
<li>Label:  Sort Order</li>
<li>Name:  field_order</li>
<li>Type:  Decimal,  precision = 12 ,  	scale = 2</li>
<li>Form Element:  Text</li>
</ul>
</div>
</div>
<p>At this point you probably want to create one or two Screenshot nodes so that you have something to look at while building the view.  Go to “Create content” &gt; Screenshot.  Enter the Node Title.  Scroll down to the “Screenshot” field and upload an image file; once it has uploaded you should get a “Title” field next to the file where you can enter a description (note that entering HTML here probably won&#8217;t work too well as the contents of this field are output as an attribute).</p>
<p>Now for the final part: creating a View.  Go to  <strong>Admin &gt; Site building &gt; Views</strong> and  “Add.”  Use the settings:</p>
<div style="padding-left: 30px;">
<ul>
<li><span>Type: Grid   &#8211; you could probably 	also use table, etc., but Grid works for me.  Size the width to 	whatever size is going to work for your content.   You may need to 	create a CSS entry to add some padding to the grid cells  e.g.</span>
<div style="font-family:Courier New;">
<div>.views-view-grid td {</div>
<div>padding: 0.8em;</div>
<div>}</div>
</div>
</li>
<li>Row Style:  Fields</li>
<li>Since I have a limited number of 	images, I set, Use Pager: No,  Items to display:  Unlimited.</li>
<li>Filters:
<ul>
<li>Node: Published = Yes</li>
<li>Node: Type = Screenshot</li>
<li>Content: Screen Gallery 		(field_gallery) and then set the “name” of the gallery from one 		of the allowed values you entered in the CCK list.</li>
</ul>
</li>
<li>Sort criteria:
<ul>
<li>Content: Sort Order asc</li>
</ul>
</li>
<li>Fields:
<ul>
<li>Content: Screenshot = Thickbox: 		medium_thumbnail image   &#8211; this option is only available if you&#8217;ve 		installed Thickbox and set at least one ImageCache setting.</li>
<li>Node: Title    &#8211; this will 		display the title of the Node (not the image title) directly under 		the thumbnail.</li>
</ul>
</li>
</ul>
<p>Now save the View.  Mine is called “ccs_screens”, so I can embed it into a Page Node using</p>
<div style="font-family:Courier New;">
<div>&lt;?php</div>
<div>$view = views_get_view(&#8216;ccs_screens&#8217;);</div>
<div>print $view-&gt;execute_display(&#8216;default&#8217;, $args);</div>
<div>?&gt;</div>
</div>
</div>
<p>That&#8217;s it.  You can see our screenshots page at <a href="../../content/cosolvent-screenshots-0">http://www.ipov.net/content/cosolvent-screenshots-0</a></p>
<p>If I have time I&#8217;ll also setup a quick screencast and update this post with a link to it.</p>
<div class="printfriendly alignleft"><a href="http://www.ipov.net/apps/blog/2009/09/drupal-6-ajax-screenshot-gallery/?pfstyle=wp" rel="nofollow" ><img src="//cdn.printfriendly.com/pf-button.gif" alt="Print Friendly" /></a></div><p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.ipov.net%2Fapps%2Fblog%2F2009%2F09%2Fdrupal-6-ajax-screenshot-gallery%2F&amp;title=Drupal%206%20Ajax%20Screenshot%20Gallery" id="wpa2a_12"><img src="http://www.ipov.net/apps/blog/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.ipov.net/apps/blog/2009/09/drupal-6-ajax-screenshot-gallery/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Flash development with open source tools</title>
		<link>http://www.ipov.net/apps/blog/2009/09/flash-dev-environment-with-open-source-tools/</link>
		<comments>http://www.ipov.net/apps/blog/2009/09/flash-dev-environment-with-open-source-tools/#comments</comments>
		<pubDate>Tue, 15 Sep 2009 03:33:30 +0000</pubDate>
		<dc:creator>joseph.gay</dc:creator>
				<category><![CDATA[Flash / Flex]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[adobe]]></category>
		<category><![CDATA[as3]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[flashdevelop]]></category>
		<category><![CDATA[flex]]></category>
		<category><![CDATA[open source]]></category>

		<guid isPermaLink="false">http://www.ipov.net/blog/?p=94</guid>
		<description><![CDATA[A start to finish guide for setting up an Actionscript 3 development environment using open source tools that will work within the context of an agile process on Linux, or Windows.]]></description>
			<content:encoded><![CDATA[<p><strong>Why?</strong></p>
<ul>
<li><span style="background-color: #ffffff;">You want to do Flash work that is mostly development oriented. The environment described here will be useful for a programmer or small team using supplements from a designer as opposed to a designer working in the Flash IDE with supplements from a programmer.</span></li>
<li><span style="background-color: #ffffff;">You want a command line interface and a tool chain that can work easily with existing continuous integration and web deployment tools.</span></li>
</ul>
<p><span id="more-94"></span></p>
<p>The following steps will take you through the required set up for a sample project. There is a link to the full source at the end.</p>
<p><strong>Step 1: Download the Flex SDK</strong></p>
<p>Adobe&#8217;s open source <a title="Flex SDK 3 Download" href="http://www.adobe.com/cfusion/entitlement/index.cfm?e=flex3sdk">Flex SDK</a> provides, among other things, an Actionscript compiler binary: mxmlc. It&#8217;s not just useful for compiling mxml based Flex applications however; it can also be used to compile lightweight, pure Actionscript 3 projects. The download will consist of a single zip file which you may extract to a directory of your choice. On windows, I choose c:\flex, and on linux I choose /usr/local/share/adobe-flex/sdk. You&#8217;ll just need to remember the path when you set up your build environment. Note that for the compiler to work, you&#8217;ll need to have Java 1.6+ installed.</p>
<p><strong>Step 2: Download the Flash debugger standalone player and plugins</strong></p>
<p>Ok, so this part isn&#8217;t open source, but you can&#8217;t have Flash these days without Adobe&#8217;s Flash player. The <a title="Adobe Flash Downloads" href="http://www.adobe.com/support/flashplayer/downloads.html">debug flash player</a> will conveniently display a stack trace whenever there&#8217;s an error. The trace will even include line numbers if you build your swfs with the debug flag, which you will see how to do below. The debug enabled browser plugins are installed in the same manner as the normal browser plugins. If you&#8217;re running Windows, installing the ActiveX control will result in having a debug enabled player in IE. On both Linux and Windows, installing the &#8216;Plugin content debugger&#8217; will give you a debug enabled player in browsers like Firefox and Chrome. The standalone player can be placed anywhere. On Linux I&#8217;ve copied the flashplayer executable to /usr/local/bin, which is on my PATH.</p>
<p><strong>Step 3: Install Ant and the Flex SDK Ant tasks</strong></p>
<p>Since the Flex SDK internals are predominately written in Java, Ant is used as the build tool of choice for most Flex and Actionscript 3 projects. Accordingly, Adobe provides a set of Ant tasks for invoking various SDK related commands from within Ant. First <a title="Apache Ant home page" href="http://ant.apache.org">install Ant</a> (if you&#8217;re on a Linux system, you&#8217;re better off using your distribution&#8217;s package manager rather than Apache&#8217;s packages). Copy the file flexTasks.jar from &lt;flex sdk path&gt;/ant/lib to your Ant installation&#8217;s lib folder. On my Ubuntu Jaunty system for example, it was /usr/share/ant/lib. You will also copy from the flex Ant folder the file flexTasks.tasks to your project folder once it is created.</p>
<p><strong>Step 4: Choosing an editor/IDE</strong></p>
<p>Now that you can compile Actionscript files and view the results, you&#8217;ll need to select an Actionscript aware editor or IDE. If you are using Vim, there are a number of syntax files around the web. I&#8217;ve had luck with the ones found on <a href="http://www.abdulqabiz.com/blog/archives/2007/10/12/vim-actionscript-and-mxml-syntax-files/">Adbul Qabiz&#8217;s blog</a> for example. On Emacs, you will find what you need on the <a href="http://www.emacswiki.org">Emacs Wiki</a>, including some <a href="http://www.emacswiki.org/emacs/FlymakeActionscriptThree">FlyMake</a> code (build as you type). If you are running Windows, there is a tailored open source solution available: <a href="http://www.flashdevelop.org/wikidocs/index.php?title=Main_Page">FlashDevelop</a>. FlashDevelop provides IDE functionality for Actionscript 2 and 3, Flex, Air, and haXe. If you&#8217;re accustomed to Eclipse, Visual Studio, NetBeans, etc., you should feel right at home with FlashDevelop.</p>
<p><strong>Step 5: Creating a project template</strong></p>
<p>The main aim here is to build your project by issuing one command from the command line. You&#8217;ll start by creating a project folder, and inside the project folder you will create a file called build.xml for use with Ant. If you intend to collaborate with others on the project, it&#8217;s also a good idea to separate system specific variables into another file. At iPOV, we use a separate file called build-user.properties. Here are samples of both files:</p>
<pre class="brush: xml">&lt;project name="miniplayer" default="build-all" basedir="."&gt;
    &lt;description&gt;
           Builds iPOV Hello World
        To use, :
          1. Copy %flex_sdk_3%/ant/lib/flexTasks.jar  to %ANT_HOME%/lib
          2. Copy build-user.properties.default to build-user.properties
            (so it doesn't get commited to SVN) and
            edit the paths for your install.
          3. Invoke the build "&gt;ant [build-target-name]" (either via commandline of GUI launcher)
    &lt;/description&gt;

    &lt;!-- Import the property definitions. --&gt;
    &lt;property file="build-user.properties" /&gt;
    &lt;property name="PROJECT_NAME" value="ipov_hello-world"/&gt;
    &lt;property name="PROJECT_VERSION" value="1.0.0"/&gt;
    &lt;property name="DEPLOY_DIR" value="bin"/&gt;
    &lt;property name="MAIN_CLASS" value="src/net/ipov/hello_world/Main.as"/&gt;

    &lt;taskdef resource="flexTasks.tasks" classpath="${TASK_HOME}/flexTasks.jar" /&gt;

    &lt;target name="build-all" depends="build-swf,build-debug-swf"/&gt;

    &lt;target name="build-swf" depends="init"&gt;
        &lt;mxmlc file="${MAIN_CLASS}"
            output="${DEPLOY_DIR}/${PROJECT_NAME}-${PROJECT_VERSION}.swf"
            debug="false" optimize="true" fork="true"
            default-background-color="0xffffff" &gt;
            &lt;source-path path-element="src/" /&gt;
        &lt;/mxmlc&gt;
    &lt;/target&gt;

    &lt;target name="build-debug-swf" depends="init"&gt;
        &lt;mxmlc file="${MAIN_CLASS}"
            output="${DEPLOY_DIR}/${PROJECT_NAME}-${PROJECT_VERSION}.swf"
            debug="true" optimize="false" fork="true"
            default-background-color="0xffffff" &gt;
            &lt;source-path path-element="src/" /&gt;
        &lt;/mxmlc&gt;
    &lt;/target&gt;

    &lt;target name="init"&gt;
        &lt;mkdir dir="${DEPLOY_DIR}"/&gt;
    &lt;/target&gt;

&lt;/project&gt;<span style="background-color: #ffffff; font-size: small; "> </span></pre>
<pre class="brush: plain">#
# Copy this file to .user.properties and then edit it to match your system
#
FLEX_HOME=c:/flex3/sdk
TASK_HOME=c:/bin/apache-ant-1.7.1/lib</pre>
<p>Replace ipov_hello-world above with your project name, and replace the net/ipov path with the namespace you will use for your main source files.</p>
<p>If you are using FlashDevelop, you will now create a new AS3 project using Project -&gt; New Project. For Location, browse to your project folder where you have placed the two files above. For Package, type your primary namespace (net.ipov.hello_world in this example). FlashDevelop will create the necessary files and folders for you. Outside of FlashDevelop, you can simply create a folder called src, and inside place folders corresponding to your primary namespace. Then create a file called Main.as inside your primary namespace folder to act as the entry point for your application. Here the content of Main.as in the Hello, World! sample:</p>
<pre class="brush: as3">package net.ipov.hello_world
{
    import flash.display.Sprite;
    import flash.events.Event;
    import flash.text.TextField;

    [SWF(height='300', width='400')]
    public class Main extends Sprite {

        private var _params:Object;

        public function Main():void {
            _params = root.loaderInfo.parameters ? root.loaderInfo.parameters : new Object();

            if (stage) init();
            else addEventListener(Event.ADDED_TO_STAGE, init);

        }

        private function init(e:Event = null):void {
            removeEventListener(Event.ADDED_TO_STAGE, init);
            // entry point
            var helloText:TextField = new TextField();
            helloText.text = "Hello, World!";
            stage.addChild(helloText);
        }

    }

}</pre>
<p>Once you have set up your project folder, invoke the following commands from the root of the project to build and launch the application:</p>
<pre class="brush: plain">~/projects/as3-hello-world $ ant
Buildfile: build.xml

init:

build-swf:
    [mxmlc] Loading configuration file /usr/local/share/adobe-flex/sdk/frameworks/flex-config.xml
    [mxmlc] /home/joseph/projects/as3-hello-world/build/ipov_hello-world-1.0.0.swf (833 bytes)

build-debug-swf:
    [mxmlc] Loading configuration file /usr/local/share/adobe-flex/sdk/frameworks/flex-config.xml
    [mxmlc] /home/joseph/projects/as3-hello-world/build/ipov_hello-world-1.0.0.swf (1021 bytes)

build-all:

BUILD SUCCESSFUL
Total time: 9 seconds
~/projects/as3-hello-world $ flashplayer build/ipov_hello-world-1.0.0.swf</pre>
<p>If you are using FlashDevelop, you can also use Project -&gt; Test Movie (F5 on the keyboard). When prompted to configure the compiler, set your Flex SDK location under AS3Context, and set the standalone Flash player location under FlashViewer.</p>
<p>That should be enough to get started developing AS3 applications. Future articles will include information about unit testing, continuous integration, deployment, and Adobe Captivate Widget development.</p>
<p><a href="http://www.ipov.net/blog/wp-content/uploads/2009/09/as3-hello-world.zip">as3-hello-world-source</a></p>
<div class="printfriendly alignleft"><a href="http://www.ipov.net/apps/blog/2009/09/flash-dev-environment-with-open-source-tools/?pfstyle=wp" rel="nofollow" ><img src="//cdn.printfriendly.com/pf-button.gif" alt="Print Friendly" /></a></div>]]></content:encoded>
			<wfw:commentRss>http://www.ipov.net/apps/blog/2009/09/flash-dev-environment-with-open-source-tools/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Zero Cost OJT for Software</title>
		<link>http://www.ipov.net/apps/blog/2009/09/zero-cost-software-ojt/</link>
		<comments>http://www.ipov.net/apps/blog/2009/09/zero-cost-software-ojt/#comments</comments>
		<pubDate>Sun, 13 Sep 2009 01:39:42 +0000</pubDate>
		<dc:creator>vic.uzumeri</dc:creator>
				<category><![CDATA[Processing Methods]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[aten]]></category>
		<category><![CDATA[kvm]]></category>
		<category><![CDATA[ojt]]></category>
		<category><![CDATA[training]]></category>

		<guid isPermaLink="false">http://www.ipov.net/blog/?p=61</guid>
		<description><![CDATA[Can you do OJT with virtually no downtime? Can you train while people are completing revenue tasks? Can you train with minimal time demands on your skilled employees? If not, check out the ATEN CS228. The ATEN CS228 is a KVM Matrix switch with the following properties: It can control up to 8 computers (or [...]]]></description>
			<content:encoded><![CDATA[<ul>
<li>Can you do OJT with virtually no downtime?</li>
<li>Can you train while people are completing revenue tasks?</li>
<li>Can you train with minimal time demands on your skilled employees?</li>
</ul>
<p>If not, check out the <a href="http://www.aten-usa.com/?product&amp;cat=621&amp;Item=CS228">ATEN CS228</a>.</p>
<p><span id="more-61"></span>The ATEN CS228 is a KVM  Matrix switch with the following properties:</p>
<ul>
<li>It can control up to 8 computers (or 64 computers if it is daisy-chained).</li>
<li>Two consoles can access shared computers simultaneously.</li>
<li>It has audio (speaker/microphone) support to/from both consoles.</li>
</ul>
<p>In plain English, this means that two operators can share up to 8 computers at a time and follow several collaboration modes:</p>
<ol>
<li>They can share a single computer &#8211; one operator has full control while the other is a passive observer.</li>
<li>They can switch computers in seconds &#8211; as long as they don&#8217;t try to use the same device (in which case, see scenario 1)</li>
<li>They can pass control of a given device back and forth between them with a few keystrokes.</li>
</ol>
<p>Consider the scenario where you need to train a new hire to use a complex software package (e.g., CAD, business intelligence, movie editor, etc.).</p>
<p>The idea is simple. Pair a newbie with an experienced professional and give the newbie some introductory tasks. Even the simple tasks will have a few tricky parts. That&#8217;s when the newbie calls across the cubicle and asks &#8220;How do I do this?&#8221; The mentoring professional hits a couple of keys to take control and demonstrate &#8211; while the newbie gets to watch and ask questions. A quick demonstration and it&#8217;s back to work for both of them. As the newbie gains confidence, the mentor can share more complex tasks &#8211; first by letting the newbie watch, then by letting the newbie drive under the mentor&#8217;s watchful eye. Eventually, the questions will subside and both will be working full time on value-added tasks.</p>
<p>The following figure shows how this compares with standard classroom and OJT. The intensity of blue in the diagram indicates the amount of revenue work that is being done. Dark blue is all productive work. Light blue is semi-useful. White is purely overhead devoted to teaching and learning.</p>
<div style="text-align: center"><img class="alignnone size-full wp-image-67" title="ATENojt" src="http://www.ipov.net/blog/wp-content/uploads/2009/09/ATENojt.png" alt="ATENojt" width="575" height="340" /></div>
<div style="text-align: left;">Not only will both parties spend less time on the OJT process, they can both get their tasks completed faster. Taken to the limit, this approach holds the promise of almost totally eliminating training time and almost totally eliminating errors due to lack of training. That&#8217;s a pretty promising outcome for a $600 black box.</div>
<div class="printfriendly alignleft"><a href="http://www.ipov.net/apps/blog/2009/09/zero-cost-software-ojt/?pfstyle=wp" rel="nofollow" ><img src="//cdn.printfriendly.com/pf-button.gif" alt="Print Friendly" /></a></div><p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.ipov.net%2Fapps%2Fblog%2F2009%2F09%2Fzero-cost-software-ojt%2F&amp;title=Zero%20Cost%20OJT%20for%20Software" id="wpa2a_14"><img src="http://www.ipov.net/apps/blog/wp-content/plugins/add-to-any/share_save_120_16.png" width="120" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.ipov.net/apps/blog/2009/09/zero-cost-software-ojt/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rich Media PDFs</title>
		<link>http://www.ipov.net/apps/blog/2009/09/rich-media-pdfs/</link>
		<comments>http://www.ipov.net/apps/blog/2009/09/rich-media-pdfs/#comments</comments>
		<pubDate>Sat, 12 Sep 2009 20:59:02 +0000</pubDate>
		<dc:creator>vic.uzumeri</dc:creator>
				<category><![CDATA[Applications]]></category>
		<category><![CDATA[Processing Methods]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.ipov.net/blog/?p=514</guid>
		<description><![CDATA[You've seen multimedia that you would love to use in corporate communication. Unfortunately, the corporate IT department is very security-conscious. They resist installing a new server or web application inside the firewall, and they forbid putting corporate information on outside hosts. They 'encourage' everyone use the company's secure document management system (.e.g., Lotus Notes or Microsoft Sharepoint) for all business communication. Is video out of the question? ]]></description>
			<content:encoded><![CDATA[<h3>Problem Statement</h3>
<p>You&#8217;ve seen multimedia that you would love to use in corporate communication. Unfortunately, the corporate IT department is very security-conscious. They resist installing a new server or web application inside the firewall, and they forbid putting corporate information on outside hosts. They &#8216;encourage&#8217; everyone use the company&#8217;s secure document management system (.e.g., Lotus Notes or Microsoft Sharepoint) for all business communication. Is video out of the question? </p>
<p><span id="more-514"></span></p>
<h3>iPOV&#8217;s Rich Media PDF </h3>
<p>iPOV has refined a way to embed sophisticated, animated Flash videos inside a standard Adobe PDF file. The result is an integrated, thoroughly standard PDF. If you give us a Word document and a video (in almost any format), we will return a polished &#8216;Rich Media PDF&#8217; like the following examples. <em><strong>Note: In keeping with their PDF format, these should be downloaded to a local disk and viewed from there. Download times will vary according to file size</strong></em>:</p>
<table align="center" border="1" cellpadding="5">
<tbody>
<tr valign="bottom">
<td style="width: 120px;" align="center">
<p><strong>Right Click on Thumbnail<br />and Save PDF to Disk in Order to View</strong></p>
</td>
<td style="width: 450px;" align="center"><strong>Example Application<br /></strong></td>
</tr>
<tr>
<td align="center"><a href="http://demos.ipov.net/portal/portal_content/product_guides/Memo.pdf" target="_blank"><img src="http://demos.ipov.net/portal/portal_content/product_guides/memo_tn.jpg" alt="Work Instruction" width="85" border="1" height="110"/></a></td>
<td valign="top"><strong>Software Instruction Memo</strong> <strong>(1.7MB, 1 video clip)</strong> &#8211; It&#8217;s pretty common that a minor software problem will get in the way of productivity. Wouldn&#8217;t it be nice to record a quick fix or procedure change and send a totally unambiguous memo to let everyone know what to do. </td>
</tr>
<tr>
<td align="center"><a href="http://demos.ipov.net/portal/portal_content/product_guides/Job%20Instruction%20Breakdown%20SheetA.pdf" target="_blank"><img src="http://demos.ipov.net/portal/portal_content/product_guides/teeshirtThumbnail.jpg" alt="Work Instruction" width="110" border="0" height="71"/></a></td>
<td valign="top"><strong>Video work instruction</strong> <strong>(2.2MB, 2 video clips)</strong>- This shows the correct method to perform the sort of factory or distribution task that is used throughout industry. The work instruction design contains two video clips. One shows the task being performed at full, expert speed. The second shows it being performed step-by-step to make the subtleties more evident. Click <a href="http://demos.ipov.net/portal/portal_content/product_guides/Job%20Instruction%20Breakdown%20Sheet.pdf" target="_blank">here</a> to view an in document version. </td>
</tr>
<tr>
<td align="center"><a href="http://demos.ipov.net/portal/portal_content/product_guides/Condo%20For%20Sale%20By%20Owner.pdf"><img src="http://demos.ipov.net/portal/portal_content/product_guides/CondoForSaleByOwner.jpg" alt="Condo For Sale By Owner" border="0"/></a></td>
<td valign="top"><strong>A video prospectus for a real estate property </strong><strong>(10MB, 1 video clip)</strong><strong> &#8211; </strong>Most of the information in this flyer is given in the embedded video clip. Even though the video has no commentary, it still gives a more accurate impression of the property than any text or still picture could ever achieve. </td>
</tr>
<tr>
<td align="center"><a href="http://demos.ipov.net/portal/portal_content/product_guides/InstallRAMDesktopComputer.pdf"><img src="http://demos.ipov.net/portal/portal_content/product_guides/DesktopComputer.jpg" alt="How To Change Your Car Oil" width="85" border="0" height="110"/></a> </td>
<td valign="top"><strong>Instruction sheet for a computer maintenance task </strong><strong>(1.9MB, 1 video clip)</strong>- This video-enhanced document combines a step-by-step written procedure with an illustrative video clip. The listing ensures that the viewer has a complete guide to the tasks. The video clip ensures that the viewer can put the list of instructions in their proper physical context. </td>
</tr>
<tr>
<td align="center"><a href="http://demos.ipov.net/portal/portal_content/product_guides/DesktopWINS_14_02.pdf"><img src="http://demos.ipov.net/portal/portal_content/product_guides/DesktopWINS_14_02.jpg" alt="How To Change Your Car Oil" width="85" border="0" height="110"/></a> </td>
<td valign="top"><strong>Procedure for using software </strong><strong>(14MB, 5 video clips)</strong><strong>- </strong>Video clips with screencast movies of a software application have been added to a detailed step-by-step procedure. The procedure provides the accurate details for the task, while the videos provide situational context and a sense of the flow of the transaction. A viewer can remember the transaction flow far more easily than they can memorize a list of steps. </td>
</tr>
<tr>
<td align="center"><a href="http://demos.ipov.net/portal/portal_content/product_guides/How%20To%20Change%20Your%20Car%20Oil.pdf"><img src="http://demos.ipov.net/portal/portal_content/product_guides/HowToChangeYourCarOil.jpg" alt="How To Change Your Car Oil" border="0"/></a></td>
<td valign="top"><strong>How to change the oil in your car </strong><strong>(3.7MB, 1 video clip)</strong><strong>- </strong>This is a simple procedure, but it illustrates how a synchronized script can be added to the video clip to make the speech clearer. The companion script could also be used to add extra description or even warnings that are synchronized with the action. </td>
</tr>
</tbody>
</table>
<h3>Who would need this?</h3>
<p>These PDFs will play on any computer where <a href="http://www.adobe.com/products/acrobat/readstep2_allversions.html">Adobe Acrobat Reader</a> and <a href="http://www.adobe.com/shockwave/download/alternates/">Adobe Flash Player</a> are installed. Presumably, anyone who wants to view a PDF will have Acrobat Reader installed and, according to Adobe&#8217;s statistics, Flash Player is installed on 98% of computer desktops. Companies can handle situations where a multimedia web page is not feasible:</p>
<ul>
<li>IT security policies make it difficult to put the video on a web site.</li>
<li>Bandwidth limitations make it difficult to stream video to the target audience.</li>
<li>The target computer is not connected to a high-speed network.</li>
<li>Users are carrying laptops into areas with low connectivity.</li>
<li>The company&#8217;s official documents must reside in a document management system like Sharepoint or Lotus Notes.</li>
<li>The company assembles collections of documents to distribute on CD or DVD to stakeholders beyond the firewall. </li>
<li>The company deals extensively with overseas offices that have slow connections.</li>
<li>etc.</li>
</ul>
<p>In each of these situations, a Rich Media PDF would offer an attractive alternative. This format will fit in many of those awkward places where a multimedia website cannot reach.</p>
<h3>Requirements, Time and Cost</h3>
<ul>
<li>The cost depends on the amount of processing that iPOV must apply to the video. To prepare a video (without additional editing) and place it in a PDF with customer-supplied text (e.g., with the formatted contents of a Word document) typically costs $75/page, or less in larger quantities.</li>
<li>If iPOV is asked to apply its <a href="http://www.ipov.net/content/applying-standard-transformations-video">standard video transformations</a> to the video clips, the cost will generally be determined by the transformations. Since the &#8216;flattened Flash movie&#8217; is an iPOV standard output, PDF page publication fees are typically waived.</li>
<li>Simple page constructions are returned in 1 to 2 days.</li>
</ul>
<h3>Bottom Line</h3>
<p>Rich Media PDFs are a useful compromise between static text and graphics documents on one hand and multimedia websites on the other. They offer rich multimedia, with a level of portability and flexibility that a website cannot match. Finally, they offer rich media in a package that is widely accepted by security-conscious IT departments. If you have text documents and videos that you would like to display together, consider giving us a call. </p>
<div class="printfriendly alignleft"><a href="http://www.ipov.net/apps/blog/2009/09/rich-media-pdfs/?pfstyle=wp" rel="nofollow" ><img src="//cdn.printfriendly.com/pf-button.gif" alt="Print Friendly" /></a></div>]]></content:encoded>
			<wfw:commentRss>http://www.ipov.net/apps/blog/2009/09/rich-media-pdfs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Modernizing the Knowledge Supply Chain</title>
		<link>http://www.ipov.net/apps/blog/2009/09/modernizing-the-knowledge-supply-chain/</link>
		<comments>http://www.ipov.net/apps/blog/2009/09/modernizing-the-knowledge-supply-chain/#comments</comments>
		<pubDate>Sat, 12 Sep 2009 20:57:18 +0000</pubDate>
		<dc:creator>vic.uzumeri</dc:creator>
				<category><![CDATA[Applications]]></category>
		<category><![CDATA[Business Issues]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.ipov.net/blog/?p=512</guid>
		<description><![CDATA[I wrote a blog article a little while ago entitled 'Video Speaks Every Language'. I thought it made a useful point about the difficulty of transmitting technical knowledge across cultural and linguistic borders. However, the more I thought about it, the more I realized that I had seen this problem before. Then it hit me. Its just another supply chain.]]></description>
			<content:encoded><![CDATA[<p>I wrote a blog article a little while ago entitled &#8216;<a href="/content/video-speaks-every-language">Video Speaks Every Language</a>&#8216;. I thought it made a useful point about the difficulty of transmitting technical knowledge across cultural and linguistic borders. However, the more I thought about it, the more I realized that I had seen this problem before. Then it hit me. Its just another supply chain.</p>
<p><span id="more-512"></span></p>
<h3>The Global Supply Chain Analogy</h3>
<p>The problems that individuals and companies have in communicating with other languages and other lands are virtually the same challenges that have afflicted the shippers of goods throughout history. If you look at images of previous transportation systems, you will see that nothing really changed over most of human existence. Every shipment was pretty much handled the same way. Stuff was loaded and unloaded and loaded and unloaded. The ships got bigger and faster, trains replaced barges and wagons gave way to trucks, but it was always a laborious, error-prone system as shown in the following images:</p>
<table align="center" border="0" cellpadding="5">
<tbody>
<tr>
<td align="center">
<p><img src="http://www.catskillarchive.com/rrextra/loadbox.jpg" width="200" border="0" height="150"/></p>
<p><a href="http://www.catskillarchive.com/rrextra/loadbox.Html">source: www.catskillarchive.com</a></p>
</td>
<td align="center">
<p><img src="http://www.fremantleports.com.au/About/PhotoGallery/C1935_Receival_and_Delivery_Operations_Victoria_Quay_rdax_1024x701.jpg" width="200" border="0" height="150"/></p>
<p><a href="http://www.fremantleports.com.au/About/PhotoGallery/19301939.asp">source: www.fremantleports.com.au</a></p>
</td>
<td align="center">
<p><img src="http://www.fremantleports.com.au/About/PhotoGallery/C1934_Cargo_Handling_rdax_1024x699.jpg" width="200" border="0" height="150"/></p>
<p><a href="http://www.fremantleports.com.au/About/PhotoGallery/19301939.asp">source: www.fremantleports.com.au</a></p>
</td>
</tr>
</tbody>
</table>
<p>Each individual box, bale and bag had to be handled separately, perhaps a dozen times between origin and destination. How many times did a package get lost? How many times was it misplaced? What if there was something valuable or time-sensitive in that package? Tough luck. Think airline bags &#8211; but this all changed with the advent of <strong>standard containers and specialized handling equipment</strong>:</p>
<table align="center" border="0" cellpadding="5">
<tbody>
<tr>
<td>
<p><span class="inline inline-none"><img src="http://www.ipov.net/assets/images/container20f_h_661kb_200.jpg" alt="" title="" class="image image-_original " width="200" height="150"/></span></p>
<p align="center"><a href="http://www.oocl.com/eng/pressandmedia/photogallery/containers/">source: www.oocl.com</a></p>
</td>
<td>
<p><span class="inline inline-none"><img src="http://www.ipov.net/assets/images/bkg_h_463kb_200.jpg" alt="" title="" class="image image-_original " width="200" height="150"/></span></p>
<p align="center"><a href="http://www.oocl.com/eng/pressandmedia/photogallery/customerservices/">source: www.oocl.com</a></p>
</td>
<td>
<p><span class="inline inline-none"><img src="http://www.ipov.net/assets/images/OOCL_Chicago_h_497kb_200.jpg" alt="" title="" class="image image-_original " width="200" height="150"/></span></p>
<p align="center"><a href="http://www.oocl.com/eng/pressandmedia/photogallery/vessels/">source: www.oocl.com</a></p>
</td>
</tr>
</tbody>
</table>
<p>Once pieces are loaded, locked and sealed in a container, they are never touched until they reach their destination. In between, the entire transportation system is optimized to move and store standard 10ft x10ft x 40ft boxes. To the transportation system, their contents are irrelevant. There are no bags to leak, no boxes to break and no bales to spill. Just a standard box that is handled the same efficient way in thousands of terminals and ports around the world.</p>
<p>How important is this innovation? Almost unmeasurable. If standard containers didn&#8217;t exist, it is doubtful that we would have anything like the current global economy. Walmart and Target could not exist in their current forms. Products in every part of the world would be more expensive and new innovations would arrive much later to the market. The immense choice that consumers enjoy would be greatly reduced. The quality of our goods would probably be lower. Things would not be the same.</p>
<h3>The Traditional Knowledge Supply Chain</h3>
<p>So how does the remaking of the global supply chain concern issues of knowledge, culture, language or eLearning? Consider the system by which we transmit technical knowledge across distance, culture and language:</p>
<div style="text-align: center;"><span class="inline inline-undefined"><img src="http://www.ipov.net/assets/images/ConventionalTranslationSupplyChain.png" alt="" title="" class="image image-_original " width="664" height="91"/></span></div>
<p>This is also a supply chain &#8211; with the same problems that have afflicted goods transportation for millenia. This diagram might have described how a Greek trader communicated with a Roman merchant. Each idea is written, interpreted or translated multiple times, often with a poor understanding of the original context or nuance. It&#8217;s the pre-container goods shipping system applied to technical knowledge. By the time it reaches its destination, the message can be lost, garbled, de-emphasized or distorted &#8211; and the shipper may never know. If my technical instructions are translated into Arabic for someone in Morocco to act on them, how can I know that they are correctly conveyed or understood?</p>
<p>But what if we could find a standard shipping container for our ideas and knowledge. What if we could take our technical information, seal it in a box with standard &#8216;dimensions&#8217; and send it through a communication system that is optimized to handle that package quickly and efficiently? What if we could track each shipment cheaply and easily? What if we could inspect the contents ourselves after it reaches the destination? Wouldn&#8217;t that be as revolutionary as global containerization?</p>
<h3>A Shipping Container for Ideas?</h3>
<p>As I described in this <a href="/content/video-speaks-every-language">earlier article</a>, iPOV believes that video offers special benefits to the communication of ideas across distance, culture and language. If we use video as part of the communication package, it can retain its integrity across the full communication sequence:</p>
<p align="center"><span class="inline inline-none"><img src="http://www.ipov.net/assets/images/RobustTranslation.png" alt="" title="" class="image image-_original " width="646" height="87"/></span></p>
<p>In other words, <strong>video is a standard shipping container for knowledge!</strong> Video can convey accurate information without words. You can see the power in this YouTube movie: <a href="http://www.youtube.com/watch?v=anZBo2FmaL8">Japanese instructions on how to peel a potato in 2 seconds</a>. Even if you don&#8217;t speak Japanese, you can probably figure out how to copy their method. There are enough visual cues to remove most of the uncertainty. The words, if anything, just distract and get in the way. In the following examples, a video &#8216;how-to&#8217; is delivered in three different language contexts. The video clip remains the same. Even though the accompanying text and commentary traverse the traditional translation process, the information contained in the video was packed and sealed when the video was made. The video portion will always convey the same message and will always act as a contextual check on the accompanying text and commentary. In fact, the text and commentary in this example represent little more than elaborate shipping labels. Try turning the sound off on your computer and watching the clips again.</p>
<table align="center" border="0" cellpadding="5">
<tbody>
<tr valign="top">
<td>
<div style="text-align: center;"><a href="http://demos.ipov.net/portal/portal_content/user_docs/Single_Page_Gallery/index.html?xid=saePrinterEnglish&amp;KeepThis=true&amp;TB_iframe=true&amp;height=304&amp;width=540&amp;modal=true" rel="gb_page[590, 350]"><img src="/assets/images/demo_printer_de.jpg" alt="Printer Maintenace English" border="0"/></a></div>
<div style="text-align: center;"><a href="http://demos.ipov.net/portal/portal_content/user_docs/Single_Page_Gallery/index.html?xid=saePrinterEnglish&amp;KeepThis=true&amp;TB_iframe=true&amp;height=304&amp;width=540&amp;modal=true" rel="gb_page[590, 350]">Printer Maintenance (English)</a></div>
</td>
<td>
<div style="text-align: center;"><a href="http://demos.ipov.net/portal/portal_content/user_docs/Single_Page_Gallery/index.html?xid=saePrinterChinese&amp;KeepThis=true&amp;TB_iframe=true&amp;height=304&amp;width=540&amp;modal=true" rel="gb_page[590, 350]"><img src="/assets/images/demo_printer_de.jpg" alt="Printer Maintenance Chinese" title="Printer Maintenance German" border="0"/></a></div>
<div style="text-align: center;"><a href="http://demos.ipov.net/portal/portal_content/user_docs/Single_Page_Gallery/index.html?xid=saePrinterChinese&amp;KeepThis=true&amp;TB_iframe=true&amp;height=304&amp;width=540&amp;modal=true" rel="gb_page[590, 350]">Printer Maintenance<br />(Chinese Subtitles)</a></div>
</td>
<td>
<div style="text-align: center;"><a href="http://demos.ipov.net/portal/portal_content/user_docs/Single_Page_Gallery/index.html?xid=saePrinterGerman&amp;KeepThis=true&amp;TB_iframe=true&amp;height=304&amp;width=540&amp;modal=true" rel="gb_page[590, 350]"><img src="/assets/images/demo_printer_de.jpg" alt="Printer Maintenance German" title="Printer Maintenance German" border="0"/></a></div>
<div style="text-align: center;"><a href="http://demos.ipov.net/portal/portal_content/user_docs/Single_Page_Gallery/index.html?xid=saePrinterGerman&amp;KeepThis=true&amp;TB_iframe=true&amp;height=304&amp;width=540&amp;modal=true" rel="gb_page[590, 350]">Printer Maintenance (German)</a></div>
</td>
</tr>
</tbody>
</table>
<p>This example makes a strong case for the &#8220;video as container&#8221; idea. There will be many other types of information that are not as easily packaged in an visual format as this physical procedure. Nonetheless, adding video to any communication will put some fraction of the total message into a package that will guaranteed the contents throughout the journey. Even if most of the message is more easily captured in text, an accompanying video clip will increase the odds that the recipient will put the message in context.</p>
<p>Most of the infrastructure and technology to efficiently handle video is already in place. Many tools exist on the public Internet (e.g., YouTube). Hosts of other tools are being developed by web companies, software vendors and in open source projects. For its part, iPOV has developed and assembled a uniquely comprehensive toolkit that is specifically tailored to speed and facilitate this process, including our <a href="/content/video-speaks-every-language-1">Video Translation Transformation</a> and our <a href="/content/cosolvent-video-sharing-technologies">CoSolvent Community Server</a>.<a href="http://demos.ipov.net/portal"><br /></a></p>
<h3>Bottom Line</h3>
<p>I believe that our global economy is on the verge of an information revolution that will be as profound as the one that transformed goods transportation in the past 30 years. It will take a while for the opportunity to sink in, but gradually people will discover how much it will pay to explain things in a visual form. Adding an informal video to a technical communication will make it more likely that the message will get through and iPOV is aggressively developing the &#8216;virtual&#8217; trucks, trains, ports and cranes to handle this new type of information cargo.</p>
<div class="printfriendly alignleft"><a href="http://www.ipov.net/apps/blog/2009/09/modernizing-the-knowledge-supply-chain/?pfstyle=wp" rel="nofollow" ><img src="//cdn.printfriendly.com/pf-button.gif" alt="Print Friendly" /></a></div>]]></content:encoded>
			<wfw:commentRss>http://www.ipov.net/apps/blog/2009/09/modernizing-the-knowledge-supply-chain/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

