<?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>david mccuskey.com &#187; Technology</title>
	<atom:link href="http://davidmccuskey.com/category/technology/feed/" rel="self" type="application/rss+xml" />
	<link>http://davidmccuskey.com</link>
	<description>my slice of the Internet</description>
	<lastBuildDate>Thu, 22 Jul 2010 16:58:13 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>LightCharts – Lightweight charts for Flex</title>
		<link>http://davidmccuskey.com/2010/07/lightcharts-lightweight-charts-for-flex/</link>
		<comments>http://davidmccuskey.com/2010/07/lightcharts-lightweight-charts-for-flex/#comments</comments>
		<pubDate>Mon, 12 Jul 2010 16:47:58 +0000</pubDate>
		<dc:creator>david</dc:creator>
				<category><![CDATA[Code Sample]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://davidmccuskey.com/?p=652</guid>
		<description><![CDATA[LightCharts A lightweight line-chart library for Flex. Background I created LightCharts for a project of mine that involves tracking many stock market symbols. Originally I was using the Adobe Flex Charting library, but found that performance suffered greatly given the number of charts I was using (around 60+), the amount of data displayed, and the [...]]]></description>
			<content:encoded><![CDATA[<p><img style="margin-left:auto;margin-right:auto" src="http://davidmccuskey.com/wp-content/uploads/2010/07/lightcharts-single-screenshot.png" alt="lightcharts-single-screenshot.png" border="0" width="440" height="135" /></p>


<h3>LightCharts</h3>

<p>A lightweight line-chart library for Flex.</p>

<h3>Background</h3>

<p>I created LightCharts for a project of mine that involves tracking many stock market symbols. Originally I was using the Adobe Flex Charting library, but found that performance suffered greatly given the number of charts I was using (around 60+), the amount of data displayed, and the constant real-time updates. Of course this isn&#8217;t necessarily due to poor coding on Adobe&#8217;s part, it&#8217;s just that their library contains an amazing amount of features to handle a variety of needs, consequently it&#8217;s very heavy. I didn&#8217;t need a lot of features, just a nimble way to display data.</p>

<p>I searched the Internet for other charting libraries which I could use and stumbled across a fantastic set of components created by Keith Peters called <a href="http://www.minimalcomps.com/">Minimal Comps</a>. Keith&#8217;s library is extremely lightweight and it would have been a good fit, but MinimalComps is geared towards the pure Flash environment and not Flex &#8211; a major issue being the disparity in the component lifecycle.</p>

<p>Nonetheless, I was inspired by his code so I decided to use it as a starting point, adding and changing what I needed along the way.</p>

<h3>Features</h3>

<p>The result is a charting library that has many new features and several new object classes, some for visual enhancements and others for displaying and interacting with data. For instance, the data series class gives the ability to display multiple lines on a graph. The Toolset architecture is useful for creating mini plug-ins which can annotate or interact with data, all without needing to change any of the charting base classes.</p>

<p>Also, the line-chart class can be subclassed to create new line-chart types which have different visual characteristics or behavior. Included are a couple of examples for charts which I used in my project &#8211; these include the <span class="caps">MACD </span>and Stochastic. <em>Note: These examples show how to make visual and behavioral changes to the base class, not how to calculate the values for the <span class="caps">MACD </span>or Stochastic charts. Those formulas can be easily found online.</em></p>

<h3>Screenshot</h3>

<p><img style="display:block; margin-left:auto; margin-right:auto;" src="http://davidmccuskey.com/wp-content/uploads/2010/07/lightcharts-screenshot.png" alt="lightcharts-screenshot.png" border="0" width="440" height="371" /> </p>

<p>In the screenshot above you can see many of the features:</p>


<ul>
<li>Three different charts (standard, <span class="caps">MACD, </span>and Stochastic), displaying different backgrounds including gradients and alphas, line colors, value ranges, etc.</li>
<li>On the first chart, the display of crosshairs and coordinate value on mouseover; all charts have this functionality.</li>
<li>On the first and second charts, a custom plug-in called <em>DotDisplayTool</em> which displays a dot over the last data point in the series. <em>DotDisplayTool</em> is an example of a non-interactive plug-in.</li>
<li>On the second and third charts, a custom plug-in called <em>LinearDrawTool</em> which allows you to draw on top of the data; it displays a line and the chart values which correspond to the beginning and ending points. <em>LinearDrawTool</em> is an example of an interactive plug-in.</li>
</ul>



<h3>Live Demo &amp; Source</h3>

<p>If you want to see the library in action, click on the following link: <a href="http://davidmccuskey.com/demos/lightcharts/" target="_lightcharts_demo"> LightCharts live demo</a>.</p>

<p>The source is covered under the <span class="caps">MIT </span>license and it&#8217;s currently available from the live demo &#8220;View Source&#8230;&#8221;.</p>]]></content:encoded>
			<wfw:commentRss>http://davidmccuskey.com/2010/07/lightcharts-lightweight-charts-for-flex/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>How to build and install the Metakit DB for Python on MacOSX</title>
		<link>http://davidmccuskey.com/2009/02/how-to-build-and-install-the-metakit-db-for-python-on-macosx/</link>
		<comments>http://davidmccuskey.com/2009/02/how-to-build-and-install-the-metakit-db-for-python-on-macosx/#comments</comments>
		<pubDate>Wed, 11 Feb 2009 02:39:38 +0000</pubDate>
		<dc:creator>david</dc:creator>
				<category><![CDATA[Code Sample]]></category>
		<category><![CDATA[Geek]]></category>
		<category><![CDATA[How-To]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[macosx]]></category>
		<category><![CDATA[metakit]]></category>
		<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://www.davidmccuskey.com/?p=237</guid>
		<description><![CDATA[Ever since I used it years ago on a geek-project for my Zaurus, the Metakit DB has always been a favorite of mine. I had the chance to use it again on another personal project and this time on MacOSX. Unfortunately, the prebuilt binaries on the Metakit site are for older versions of MacOSX, so [...]]]></description>
			<content:encoded><![CDATA[<p>Ever since I used it years ago on a geek-project for my Zaurus, the Metakit DB has always been a favorite of mine. I had the chance to use it again on another personal project and this time on MacOSX. Unfortunately, the prebuilt binaries on the Metakit site are for older versions of MacOSX, so I had to build it myself.</p>

<p>Normally one would simply follow the <a href="http://www.equi4.com/pub/mk/">Metakit installation instructions</a>, but they are old and didn&#8217;t work correctly with 10.5 Leopard. I scraped enough information together from the Internet to get it working, but I had to do a lot of research. To save others the same hassle, I have put together all of the changes and put them here in their entirety:</p>

<p><strong>Building Metakit</strong></p>

<p>Make sure you have Xcode installed on your system before starting.</p>

<p>Get the latest source from the <a href="http://www.equi4.com/pub/mk/">Metakit downloads page</a>. At this time the latest version is <code>metakit-2.4.9.7.tar.gz</code>.</p>

<p>Uncompress the archive in a work directory and run the following commands:</p>



<pre>
&amp;gt; cd builds
&amp;gt; ../unix/configure --with-python=/System/Library/Frameworks/Python.framework/Versions/2.5
</pre>



<p>Note: Your Python install might be in a different location. If so, give the  <code>--with-python</code> arg the proper value.</p>

<p><em>&#8220;Fat&#8221; binary setup</em></p>

<p>If you need this to run on the <span class="caps">PPC </span>architecture you will need to make a couple of modifications to <code>./builds/Makefile</code> <em>after</em> running <code>configure</code>, otherwise you can skip this step and build the binaries with <code>make</code>.</p>

<p>Find <code>CXXFLAGS = $(CXX_FLAGS)</code> and change to the following:</p>



<pre>
CXXFLAGS = $(CXX_FLAGS) -arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.5.sdk
</pre>



<p>Find <code>SHLIB_LD = g++ -dynamiclib -flat_namespace -undefined suppress</code> and change to the following:</p>



<pre>
SHLIB_LD = g++ -dynamiclib -flat_namespace -undefined suppress -arch ppc -arch i386
</pre>



<p><em>Build the binaries</em></p>

<p>Run your typical <code>Makefile</code> commands:</p>



<pre>
&amp;gt; make
&amp;gt; make test
</pre>



<p><strong>Installing Metakit</strong></p>

<p>Rename the shared library which is now in the <code>./builds</code> directory:</p>



<pre>
&amp;gt; mv Mk4py.dylib Mk4py.so
</pre>



<p>And copy the following files to <code>/System/Library/Frameworks/Python.framework/Versions/2.5/Extras/lib/python</code> (be sure to adjust the path name for your version of Python):</p>



<pre>
../python/metakit.py
./Mk4py.so
</pre>



<p><strong>Testing Metakit</strong></p>

<p>At this point you should have a working system and ought to be able to run the following command in a Python shell without issue:</p>



<pre>
&amp;gt;&amp;gt;&amp;gt;from metakit import *
</pre>



<p>Enjoy !</p>

<h3>Resources</h3>


<ul>
<li><a href="http://www.equi4.com/metakit/python.html">Metakit for Python website</a></li>
</ul>




<ul>
<li><a href="http://www.ospace.net/wiki/index.php/ServerHowTo">helpful instructions from www.ospace.net</a></li>
</ul>

]]></content:encoded>
			<wfw:commentRss>http://davidmccuskey.com/2009/02/how-to-build-and-install-the-metakit-db-for-python-on-macosx/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>My First Document Scanner</title>
		<link>http://davidmccuskey.com/2008/11/my-first-document-scanner/</link>
		<comments>http://davidmccuskey.com/2008/11/my-first-document-scanner/#comments</comments>
		<pubDate>Thu, 27 Nov 2008 22:54:50 +0000</pubDate>
		<dc:creator>david</dc:creator>
				<category><![CDATA[Productivity]]></category>
		<category><![CDATA[Reviews]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[document scanner]]></category>

		<guid isPermaLink="false">http://blog.davidmccuskey.com/?p=96</guid>
		<description><![CDATA[Today I ordered a NeatScan document / receipt scanner made by NeatCo! I&#8217;m pretty excited because I&#8217;ve always wanted one ever since the days of the Visioneer Paperport. The idea of a paperless office really appealed to me mostly due to my infatuation to keep around receipts and documents that I receive, be it electronically [...]]]></description>
			<content:encoded><![CDATA[<p>Today I ordered a NeatScan document / receipt scanner made by NeatCo!</p>

<p>I&#8217;m pretty excited because I&#8217;ve <em>always</em> wanted one ever since the days of the Visioneer Paperport. The idea of a paperless office really appealed to me mostly due to my infatuation to keep around receipts and documents that I receive, be it electronically or on paper. Unfortunately, I&#8217;ve never figured out a method to process &amp; save any of the paperwork on an ongoing basis &#8211; it usually falls apart when I start to get too busy with life.</p>

<p>I had done a little research several months ago to see if there were any changes in the document-scanner market since the last time I checked. From that I made my <em>rough</em> list for my ultimate document-scanning setup:</p>


<ul>
<li>Small, desktop scanner</li>
<li>Ability to create <em>searchable</em> <span class="caps">PDF</span>s</li>
<li>Software to help me organize everything</li>
</ul>



<p>I started looking again because I came across two Black-Friday deals related to document scanners: <em>NeatScan to Office</em> by <span class="caps">NEAT </span>and the <em>SnapScan <span class="caps">S300M</span></em> by Fujitsu. (The deal from <span class="caps">NEAT </span>was for the PC version of the scanner, but I read on their website that they were offering the Mac software for free as long as you provided the serial number of the scanner.)</p>

<p>I found that Fujitsu&#8217;s SnapScan always had great reviews so it probably wouldn&#8217;t be a bad choice no matter what. One of the cool features it has is the ability to feed and scan multiple documents while scanning <em>both sides</em> at the same time! Very nice.</p>

<p><span class="caps">NEAT </span>released a Mac version of their software last January at MacWorld. From what I could tell from the <span class="caps">NEAT </span>website and forums, they are committed to creating a great Macintosh experience and their goal is to match the functionality of their Windows software. One of the cool features of the <span class="caps">NEAT </span>software enables you to print directly to the software (eg, print an email receipt from Amazon to the software, which will then process it with <span class="caps">OCR</span>/PDF). This could definitely be handy for me since I get a lot of electronic receipts from the things I order online.</p>

<p>Here are some of the reasons I decided on the <span class="caps">NEAT </span>scanner:</p>


<ul>
<li>It was a little cheaper than the SnapScan<br />
I wasn&#8217;t sure if I was going to appreciate a document scanner</li>
<li>The <em>included</em> software did <span class="caps">OCR </span>(important for making searchable <span class="caps">PDF</span>s)<br />
(Though during this quarter [2008Q4], Fujisu is offering a rebate to get a free copy of Readiris Pro <span class="caps">OCR </span>sofware.)</li>
<li>The included software will organize receipts and documents<br />
(I was considering purchasing Yep as my tool for organizing <span class="caps">PDF</span>s; I always have the choice if I find the <span class="caps">NEAT </span>software lacking.)</li>
</ul>



<h3>Resources</h3>


<ul>
<li><a href="http://forums.macnn.com/57/consumer-hardware-and-components/367014/neatreceipts-or-fujitsu/">MacNN Forum: NeatReceipts or Fujitsu?</a></li>
</ul>




<ul>
<li><a href="http://www.tuaw.com/2008/06/06/tuaw-review-neat-receipts-for-mac-advance-release/"><span class="caps">TUAW</span> Review: <span class="caps">NEAT</span> Receipts for Mac</a></li>
</ul>




<ul>
<li><a href="http://macmost.com/macmost-now-89-neatreceipts-review.html">MacMost Video: NeatReceipts Review</a></li>
</ul>




<ul>
<li><a href="http://www.macworld.com/article/133962/2008/06/scansnaps300m.html">Macworld Review: Fujitsu SnapScan <span class="caps">S300M</span></a></li>
</ul>




<ul>
<li><a href="http://www.fujitsu.com/us/services/computing/peripherals/scanners/scansnap/s300m.html">Fujitsu.com: SnapScan <span class="caps">S300M</span></a></li>
</ul>




<ul>
<li><a href="http://www.irislink.com/c2-532-189/OCR-Software---Product-list.aspx">Readiris Pro Website</a></li>
</ul>




<ul>
<li><a href="http://reviews.pricegrabber.com/data-fax/m/19848156/">Pricegrabber Review: Readiris Pro 11</a></li>
</ul>

]]></content:encoded>
			<wfw:commentRss>http://davidmccuskey.com/2008/11/my-first-document-scanner/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>My predictions about the success of Apple&#8217;s iPhone</title>
		<link>http://davidmccuskey.com/2007/06/my-predictions-about-the-success-of-apples-iphone/</link>
		<comments>http://davidmccuskey.com/2007/06/my-predictions-about-the-success-of-apples-iphone/#comments</comments>
		<pubDate>Fri, 29 Jun 2007 06:22:34 +0000</pubDate>
		<dc:creator>david</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Business]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.davidmccuskey.com/files/my-predictions-about-the-success-of-the-iphone.html#unique-entry-id-25</guid>
		<description><![CDATA[After digesting all of the stories, videos, blogs and comments on the &#8216;Net, I make my predictions about the success of the iPhone. Here we are on the eve of what is arguably the hottest product launch in the history of computing &#8211; the Apple iPhone. Over the past few weeks the amount of buzz [...]]]></description>
			<content:encoded><![CDATA[<p>After digesting all of the stories, videos, blogs and comments on the &#8216;Net, I make my predictions about the success of the iPhone.</p>

<p>Here we are on the eve of what is arguably the hottest product launch in the history of computing &#8211; the Apple iPhone. Over the past few weeks the amount of buzz surrounding it has reached frenzied proportions! As usual, I read the same reports on the &#8216;Net typical of an Apple product launch &#8211; &#8220;Apple is great!&#8221; &#8220;Apple is going to fail!&#8221; &#8220;Apple did it all wrong!&#8221; &#8220;It&#8217;s too expensive&#8221; &#8220;I want one!&#8221; &#8220;No one is going to want one!&#8221; &#8220;The iPhone doesn&#8217;t do &lt;insert favorite technology or feature here&gt;&#8221;. So, I&#8217;m here to add to the insanity and give my take on the success of the iPhone, but through a different perspective. In short,</p>

<p><strong>Apple is going to sell millions of iPhones &#8230; and this is just the beginning.</strong></p>

<p>Why will it be so successful? Apple expertly markets and sells technology catered to the largest section of consumers who are, based on their technology needs and knowledge, simply the average person. Most companies (try) do this, too, but always fail to excite consumers in the way Apple does. Their secret sauce is one thing &#8211; the user experience &#8211; and it permeates the <em>entire experience</em>, from marketing to packaging to purchasing to product use, etc. It is this user experience which fully resonates with the majority on so many different levels.</p>

<p><a href="http://davidmccuskey.com/wp-content/uploads/2008/12/chasm-graffle.png"><img src="http://davidmccuskey.com/wp-content/uploads/2008/12/chasm-400w.jpg" alt="The Graph of Moolah" height="267" width="400" /></a></p>

<p><em>click on the image for a larger view</em></p>

<p>The market and the majority of which I speak are best described in the book &#8220;Crossing the Chasm&#8221; by Geoffrey Moore. Graphically, his view of the market is a typical bell-shaped curve that is split into five different segments of consumers, each with their own technical needs, motivations and comfort levels. The names of these groups are the Innovators, Early Adopters, Early Majority, Late Majority, and the Laggards. By far the two largest of these consumer groups, and the ones to target to be extremely successful, are the Early Majority and the Late Majority. And, it&#8217;s interesting to note, it&#8217;s not necessary to target these consumers with the best technology<sup class="footnote"><a href="#fn1">1</a></sup>!</p>

<p>No, Apple doesn&#8217;t always compete using the latest technology, though whatever technology they choose they make it easier to use and more beautiful than any existing product. With the iPhone they have once again upped-the-ante by bringing to market the world&#8217;s first consumer multi-touch display which uses hand gestures to navigate the phone&#8217;s menus and tools. The screen is gorgeous, the graphics are adorable, and people will have fun using this phone.</p>

<p>It&#8217;s apparent that Apple put a lot of research and development into the interface and they will need to recoup their costs. Thus paying a premium for this device shouldn&#8217;t be unexpected (though it is actually not that expensive when compared to other smart phones on the market today<sup class="footnote"><a href="#fn2">2</a></sup>).<br />
Initially price won&#8217;t be an issue because the first purchases will be made from those in the market groups called the Innovators and Early Adopters. These people are willing to spend extra money for something cutting edge, but to be fully entrenched in the latter groups the price must fall to within their budget (as did the prices of the iPod). I expect the first price drop to happen in 6-12 months with the second revision.</p>


<p>Of course there are things which might hamper the iPhone&#8217;s success:</p>


<ul>
<li>Manufacturing defects<br />
I think Apple is poised and ready to deal with any issues which come up.</li>
</ul>




<ul>
<li>Usability<br />
Notably the keyboard and battery life, though I&#8217;m sure Apple has done a lot of testing. Initial reports are positive.</li>
</ul>




<ul>
<li><span class="caps">AT&amp;T </span>service<br />
This isn&#8217;t really under Apple&#8217;s control, but they have taken over part of the process, notably activation of the phone which will be done through iTunes!</li>
</ul>




<p>It&#8217;s obvious that Apple has worked extremely hard getting the iPhone to market. From outside appearances, the iPhone execution has been superb, especially considering all of the components Apple has brought together within a few short years.<br />
The early summer release will give Apple time to work out the initial bugs and give the market opportunity to see how cool the iPhone really is. Fast forward six months and Apple will once again be selling the most desired technical gadgets during the Christmas season.</p>

<p>Given the new touch interface, the iPhone is the most revolutionary mobile phone / Internet device / music player the world has ever seen. Apple will sell millions, make billions, and fully deserves to do so!</p>


<p class="footnote" id="fn1"><sup>1</sup> Two notable examples are the Apple iPod music player and the Nintendo Wii game console. Neither product incorporates the best technology on the market, but they are both one of the most desired items in their respective categories. The popularity derives from their user experience.</p>

<p class="footnote" id="fn2"><sup>2</sup> Check ebay for the Nokia <span class="caps">N95. </span>(At the time of this writing, the Nokia 95 was selling for ~650$US)</p>]]></content:encoded>
			<wfw:commentRss>http://davidmccuskey.com/2007/06/my-predictions-about-the-success-of-apples-iphone/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ditching Zope and Plone for simplicity and creativity!</title>
		<link>http://davidmccuskey.com/2007/06/ditching-zope-and-plone-for-simplicity-and-creativity/</link>
		<comments>http://davidmccuskey.com/2007/06/ditching-zope-and-plone-for-simplicity-and-creativity/#comments</comments>
		<pubDate>Sun, 24 Jun 2007 05:26:41 +0000</pubDate>
		<dc:creator>david</dc:creator>
				<category><![CDATA[Misc]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.davidmccuskey.com/files/ditching-zope-and-plone-for-simplicity-and-creativity.html#unique-entry-id-21</guid>
		<description><![CDATA[To be fair, I had found a theme plug-in that was a template which could be used to create your own theme. I knew that I could do it, but also knew that it was going to take time. For the photo gallery, I couldn&#8217;t find exactly what I wanted, but knew that it was [...]]]></description>
			<content:encoded><![CDATA[<p>To be fair, I had found a theme plug-in that was a template which could be used to create your own theme. I knew that I could do it, but also knew that it was going to take time. For the photo gallery, I couldn&#8217;t find exactly what I wanted, but knew that it was a combination of my old photo gallery (which didn&#8217;t run on the current Plone) and two other gallery plug-ins I had found.</p>

<p>I was dishearted because I knew that to find a solution to the data issue was going to take even more time; time I didn&#8217;t really want to spend. The theme was going to take time, the photo gallery was going to take a lot more, but this data problem could be the grand-daddy of all timesinks. I weighed a lot of factors in my decision: from the cost of hosting, to the flexibility in changing user interface, available themes, etc.</p>

<p>The decision to switch to an application running on my desktop means that I can no longer edit my site anywhere in the world using a web browser, but I really never did anyway. And, because the sites created by RapidWeaver are static and not dynamic, I can put them just about anywhere, including a server residing at home.</p>

<p>I think that Zope and Plone are amazing pieces of software, but together they comprise a full content management system and they were overkill to run my small web site.</p>]]></content:encoded>
			<wfw:commentRss>http://davidmccuskey.com/2007/06/ditching-zope-and-plone-for-simplicity-and-creativity/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Eeny, meeny, miny, moe, which DVCS should I let go?</title>
		<link>http://davidmccuskey.com/2006/07/eeny-meeny-miny-moe-which-dvcs-should-i-let-go/</link>
		<comments>http://davidmccuskey.com/2006/07/eeny-meeny-miny-moe-which-dvcs-should-i-let-go/#comments</comments>
		<pubDate>Wed, 19 Jul 2006 05:23:10 +0000</pubDate>
		<dc:creator>david</dc:creator>
				<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.davidmccuskey.com/files/eeny-meeny-miny-moe-which-dvcs-should-i-let-go.html#unique-entry-id-17</guid>
		<description><![CDATA[A critical tool in a programmer&#8217;s chest includes a version control system (VCS) to keep track of software changes. I was initially going to install the Subversion VCS for my new projects, but decided to look around for other alternatives. Over the past couple of days I have found out that there is a lot [...]]]></description>
			<content:encoded><![CDATA[<p>A critical tool in a programmer&#8217;s chest includes a version control system (VCS) to keep track of software changes. I was initially going to install the Subversion <span class="caps">VCS </span>for my new projects, but decided to look around for other alternatives. Over the past couple of days I have found out that there is a lot of activity going on in this historically stagnant part of computing.</p>

<p>My search for alternative <em>version control systems</em> (VCS) started after I had successfully hacked my <span class="caps">NSLU2 </span>network appliance so that I could install on it a very popular open-source <span class="caps">VCS </span>called Subversion. I managed to get everything installed, however, during configuration I began to have doubts about using it. There were more setup options for Subversion than I wanted to mess with and, with every one, I had to go a little deeper to fully understand how the system worked so that I knew how I wanted it to work. I had been hoping for something more plug-n-play because I&#8217;m probably going to be the only person using it. Thus began the hunt for other alternatives.</p>

<p>While poking around the &#8216;Net, I had run across several different open-source projects focusing on version control, but didn&#8217;t really think much of them. Of the names I did see, none stuck out like <span class="caps">CVS </span>and Subversion; after all, they were the only <em>real</em> version control systems, right?</p>

<p>Guess again! As I dug deeper I was surprised to find that there is a lot of activity going on in the world of version control. I found over ten different projects all involved in developing what you might call a &#8220;modern&#8221; version control system! Some of them are Bazaar-NG, <span class="caps">DARCS,</span> Monotone, Arch, Git/Cogito, Codeville, Mercurial, and <span class="caps">SVK.</span></p>

<p>The main idea behind many of these new systems is to change the repository model from having a central repository and server to a distributed one where every &#8220;checkout&#8221; of the source code can be its own repository and server, thus imparting the name of <em>distributed version control systems</em> (DVCS). One of the interesting aspects of these new systems is that they give software developers more flexibility in how they can share code amongst themselves.</p>

<p>Of the projects which I found, I&#8217;ve narrowed my options to three: <span class="caps">DARCS,</span> Mercurial, and Bazaar-NG. I&#8217;ll tell you more about what I decide later, but I will leave you with some of the important pages that I read.</p>


<h3>Resources</h3>

<p><strong>Project sites</strong><br />
&#8226; <a href="http://bazaar-vcs.org/">http://bazaar-vcs.org/</a><br />
&#8226; <a href="http://darcs.net/">http://darcs.net/</a><br />
&#8226; <a href="http://www.selenic.com/mercurial/">http://www.selenic.com/mercurial/</a></p>

<p><strong>Thoughts from others</strong><br />
&#8226; <a href="http://jaortega.wordpress.com/tag/version-control/">http://jaortega.wordpress.com/tag/version-control/</a><br />
&#8226; <a href="http://blog.ianbicking.org/dvcs-mini-roundup.html">http://blog.ianbicking.org/dvcs-mini-roundup.html</a> (don&#8217;t miss the comments)<br />
&#8226; <a href="http://mark.stosberg.com/Tech/darcs/cvs_switch/index.html">http://mark.stosberg.com/Tech/darcs/cvs_switch/index.html</a></p>

<p><strong>Comparisons</strong><br />
&#8226; <a href="http://better-scm.berlios.de/comparison/comparison.html">http://better-scm.berlios.de/comparison/comparison.html</a><br />
&#8226; <a href="http://zooko.com/revision_control_quick_ref.html">http://zooko.com/revision_control_quick_ref.html</a><br />
&#8226; <a href="http://bazaar-vcs.org/RcsComparisons">http://bazaar-vcs.org/RcsComparisons</a></p>]]></content:encoded>
			<wfw:commentRss>http://davidmccuskey.com/2006/07/eeny-meeny-miny-moe-which-dvcs-should-i-let-go/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A report card of AJAX/DHTML platform compatibility.</title>
		<link>http://davidmccuskey.com/2006/03/a-report-card-of-ajaxdhtml-platform-compatibility/</link>
		<comments>http://davidmccuskey.com/2006/03/a-report-card-of-ajaxdhtml-platform-compatibility/#comments</comments>
		<pubDate>Mon, 20 Mar 2006 03:08:18 +0000</pubDate>
		<dc:creator>david</dc:creator>
				<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.davidmccuskey.com/files/a-report-card-of-ajax-dhtml-platform-compatibility.html#unique-entry-id-9</guid>
		<description><![CDATA[I&#8217;ve been checking out more of the AJAX/DHTML libraries which have been released lately. In the back of my head I have a nagging question about their cross-platform compatibility. I certainly don&#8217;t want to use anything which isn&#8217;t cross-platform, because that smacks of the browser wars from long, long ago. Luckily I&#8217;ve found someone who [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been checking out more of the <span class="caps">AJAX</span>/DHTML libraries which have been released lately. In the back of my head I have a nagging question about their cross-platform compatibility. I certainly don&#8217;t want to use anything which isn&#8217;t cross-platform, because that smacks of the browser wars from long, long ago.</p>

<p>Luckily I&#8217;ve found someone who has already worried about this and put the effort into finding out. The article also talks about the history of dynamic <span class="caps">HTML </span>on the Web and the battle between Microsoft and Netscape.</p>

<p>A big thanks to <strong>musings from mars</strong> for creating the <a title="AJAX/DTML Report Card" rel="external" href="http://www.musingsfrommars.org/2006/03/ajax-dhtml-library-scorecard.html"><span class="caps">AJAX</span>/DTML Report Card</a></p>]]></content:encoded>
			<wfw:commentRss>http://davidmccuskey.com/2006/03/a-report-card-of-ajaxdhtml-platform-compatibility/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>When did Linux become mainstream?</title>
		<link>http://davidmccuskey.com/2006/02/when-did-linux-become-mainstream/</link>
		<comments>http://davidmccuskey.com/2006/02/when-did-linux-become-mainstream/#comments</comments>
		<pubDate>Tue, 28 Feb 2006 02:51:45 +0000</pubDate>
		<dc:creator>david</dc:creator>
				<category><![CDATA[Misc]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.davidmccuskey.com/files/when-did-linux-become-mainstream.html#unique-entry-id-4</guid>
		<description><![CDATA[I read an article on lxer.com which talks about perceived changes in the culture of LinuxToday.com. It blames the widespread adoption of Linux as the culprit which shooed away the hard-core geeks from the site. Of course Linux adoption was a slow, gradual process brought out by a series of events in the computer world. [...]]]></description>
			<content:encoded><![CDATA[<p>I read an <a href="http://lxer.com/module/newswire/view/54858/index.html">article on lxer.com</a> which talks about perceived changes in the culture of LinuxToday.com. It blames the widespread adoption of Linux as the culprit which shooed away the hard-core geeks from the site. Of course Linux adoption was a slow, gradual process brought out by a series of events in the computer world. The article gives several examples including <span class="caps">IBM </span>embracing Linux at the LinuxWorld Conference &amp; Expo in 2001 and a congressman from Venezuela telling Microsoft to drag its underhanded business practices elsewhere because he was going to adopt Linux for use in his country.</p>

<p>I personally think the shift started back during the United States vs. Microsoft case. I can&#8217;t remember, but I think it was Ballmer who stated, &#8220;We&#8217;re not a monopoly, because there&#8217;s that Linux thing.&#8221; Well, that statement unleashed the curiosity of the American media, gave Linux plenty of free press on national television, and launched it into the mainstream.</p>

<p>Why? Linux had been around for almost a decade, existing only as source code passed around the Internet between only the most hard-core of geeks. But now Aunt Helen, located in a little town somewhere in the Corn Belt of America, found out about Linux by watching Fox News even before she was able to get broadband.</p>

<p>This is one of the few times I will say, &#8220;Thank you, Microsoft&#8221;.</p>]]></content:encoded>
			<wfw:commentRss>http://davidmccuskey.com/2006/02/when-did-linux-become-mainstream/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Setup MarsEdit with Quills 0.9 Final</title>
		<link>http://davidmccuskey.com/2006/02/setup-marsedit-with-quills-09-final/</link>
		<comments>http://davidmccuskey.com/2006/02/setup-marsedit-with-quills-09-final/#comments</comments>
		<pubDate>Sun, 26 Feb 2006 02:30:08 +0000</pubDate>
		<dc:creator>david</dc:creator>
				<category><![CDATA[Geek]]></category>
		<category><![CDATA[How-To]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[plone]]></category>
		<category><![CDATA[zope]]></category>

		<guid isPermaLink="false">http://www.davidmccuskey.com/files/setup-marsedit-with-quills-0.9-final.html#unique-entry-id-3</guid>
		<description><![CDATA[I have been wanting to find a better way to write blogs rather than using the Plone interface. I was happy to find that MarsEdit and Quills both implement several blog APIs. Though it would appear that the implementation for both the BloggerAPI and the MetaWeblogAPI are not complete, MarsEdit can still be used to [...]]]></description>
			<content:encoded><![CDATA[<p>I have been wanting to find a better way to write blogs rather than using the Plone interface. I was happy to find that MarsEdit and Quills both implement several blog <span class="caps">API</span>s. Though it would appear that the implementation for both the BloggerAPI and the MetaWeblogAPI are not complete, MarsEdit can still be used to post articles using the BloggerAPI.</p>

<p>Here are examples of necessary configuration:</p>



<pre><code>Name: MyBlog
Home URL: http://www.davidmccuskey.com/weblog
Software: Other Blogger-compatible
RPC URL: http://www.davidmccuskey.com/weblog
Blog ID: weblog.2006-01-10.2395214781</code></pre>



<p>The tricky part is obtaining the Blog <span class="caps">ID.</span> Plone uses an immutable identifier for all objects so that they can be found even after renaming them. Quills in turn uses this ID to get at your weblog object.</p>

<p>In order get this ID you&#8217;ll need to login to your Zope Management Interface (ZMI) and go digging through the <strong>uid_catalog</strong> in Plone. When you have clicked on the catalog object, click on the <em>tab</em> labeled Catalog. Find your blog object in the list of results and click on its link.</p>

<p>Search on the resulting popup page for the key named <strong><span class="caps">UID</span></strong>. The value of this key is what you will need to use for the Blog <span class="caps">ID.</span></p>

<p>Note: Because of errors in the implementation of the MetaWeblog <span class="caps">API, </span>you will see a Zope error after posting, however the post will be correctly saved.</p>]]></content:encoded>
			<wfw:commentRss>http://davidmccuskey.com/2006/02/setup-marsedit-with-quills-09-final/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Added AdSense by Google</title>
		<link>http://davidmccuskey.com/2006/02/added-adsense-by-google/</link>
		<comments>http://davidmccuskey.com/2006/02/added-adsense-by-google/#comments</comments>
		<pubDate>Tue, 14 Feb 2006 16:20:58 +0000</pubDate>
		<dc:creator>david</dc:creator>
				<category><![CDATA[How-To]]></category>
		<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.davidmccuskey.com/files/added-adsense-by-google.html#unique-entry-id-1</guid>
		<description><![CDATA[One thing that I like about Google is that they make things easy. One thing that I like about Plone and Zope is that they make things easy. In about an hour or two, I managed to put AdSense ads on my web site. Go to Google.com/adsense and sign up for your account. Click on [...]]]></description>
			<content:encoded><![CDATA[<p>One thing that I like about Google is that they make things easy.</p>

<p>One thing that I like about Plone and Zope is that they make things easy.</p>

<p>In about an hour or two, I managed to put AdSense ads on my web site.</p>


<ol>
<li>Go to Google.com/adsense and sign up for your account. Click on all of the emails to activate your account. Log in and grab your AdSense code.</li>
<li>Add a portlet to your custom area in Plone. Paste Google&#8217;s AdSense code in the body of your portlet.</li>
<li>Add portlet to your root Plone <code>right_slots</code> property. Refresh your browser to see your Google ads.</li>
</ol>



<h3>Resources</h3>


<ul>
<li><a href="http://www.agmweb.ca/plone/book/scripts.html">Plone book errata</a><br />
This webpage has an Google AdSense portlet example in <span class="caps">ZPT.</span> Search for <em>&#8220;Page Template: google_ad_portlet&#8221;</em></li>
<li><a href="http://plone.org/documentation/how-to/create-static-slot">Plone.org : A webpage with an example Page Template used to create a portlet</a></li>
<li><a href="http://plone.org/documentation/how-to/control-portlets">Plone.org &#8211; how to control portlets</a><br />
A website which has instructions on properties which control portlet activation.</li>
</ul>

]]></content:encoded>
			<wfw:commentRss>http://davidmccuskey.com/2006/02/added-adsense-by-google/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

