<?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>WebJamAds</title>
	<atom:link href="http://www.webjamads.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.webjamads.com</link>
	<description>As easy as toast &#38; jam, get delicious web results.</description>
	<lastBuildDate>Mon, 05 Dec 2011 09:39:53 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.4</generator>
		<item>
		<title>Drupal 7 Taxonomy</title>
		<link>http://www.webjamads.com/2011/01/drupal-7-taxonomy/</link>
		<comments>http://www.webjamads.com/2011/01/drupal-7-taxonomy/#comments</comments>
		<pubDate>Mon, 17 Jan 2011 19:08:00 +0000</pubDate>
		<dc:creator>Kevin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://webjamads.com/tech/?p=156</guid>
		<description><![CDATA[Drupal 7 Taxonomy definitions are simpler. Taxonomy is now attached to content as fields. Navigate the menu structure as follows: Home » Administration » Structure » Content types » Article » Manage fields Add a new field.  You should see &#8230; <a href="http://www.webjamads.com/2011/01/drupal-7-taxonomy/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Drupal 7 Taxonomy definitions are simpler. Taxonomy is now attached to content as fields. Navigate the menu structure as follows:</p>
<p>Home » Administration » Structure » Content types » Article » Manage fields</p>
<p>Add a new field.  You should see something like the following:</p>
<p><a href="http://webjamads.com/tech/wp-content/uploads/2011/01/AddArticleFieldTerm1.jpg"><img class="alignnone size-full wp-image-161" title="AddArticleFieldTerm" src="http://webjamads.com/tech/wp-content/uploads/2011/01/AddArticleFieldTerm1.jpg" alt="" width="837" height="79" /></a></p>
<p>In the above example, you would select &#8220;Term reference&#8221; for &#8220;Type of data to store&#8221;.  After you click &#8220;Save&#8221;, you should see a dialog box like the following:</p>
<p><a href="http://webjamads.com/tech/wp-content/uploads/2011/01/FieldSettings.jpg"><img class="alignnone size-full wp-image-164" title="FieldSettings" src="http://webjamads.com/tech/wp-content/uploads/2011/01/FieldSettings.jpg" alt="" width="952" height="369" /></a><a href="http://webjamads.com/tech/wp-content/uploads/2011/01/AddArticleFieldTerm.jpg"></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.webjamads.com/2011/01/drupal-7-taxonomy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP Install: Apache Module Versus CGI</title>
		<link>http://www.webjamads.com/2011/01/php-install-apache-module-versus-cgi/</link>
		<comments>http://www.webjamads.com/2011/01/php-install-apache-module-versus-cgi/#comments</comments>
		<pubDate>Tue, 11 Jan 2011 20:36:23 +0000</pubDate>
		<dc:creator>Kevin</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://webjamads.com/tech/?p=142</guid>
		<description><![CDATA[There is a good thread on differences between Apache Module versus CGI PHP installations on the cpanel.net site. Here are a couple of scripts for setting permissions under SuPHP: find /home/*/public_html/ -type d -print0 &#124; xargs -0 chmod 0755 # &#8230; <a href="http://www.webjamads.com/2011/01/php-install-apache-module-versus-cgi/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>There is a good <a title="Apache v CGI PHP Installation Thread" href="http://forums.cpanel.net/f189/how-change-php-install-being-cgi-apache-module-147665.html" target="_blank">thread </a>on differences between Apache Module versus CGI PHP installations on the <a title="CPanel Site" href="http://www.cpanel.net" target="_blank">cpanel.net</a> site.</p>
<p>Here are a couple of scripts for setting permissions under SuPHP:</p>
<p style="padding-left: 30px;">find /home/*/public_html/ -type d -print0 | xargs -0 chmod 0755 # For directories<br />
find /home/*/public_html/ -type f -print0 | xargs -0 chmod 0644 # For files</p>
]]></content:encoded>
			<wfw:commentRss>http://www.webjamads.com/2011/01/php-install-apache-module-versus-cgi/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Standardize Field Names and Structure to Improve Affilate Offers</title>
		<link>http://www.webjamads.com/2011/01/standardize-field-names-and-structure-to-improve-affilate-offers/</link>
		<comments>http://www.webjamads.com/2011/01/standardize-field-names-and-structure-to-improve-affilate-offers/#comments</comments>
		<pubDate>Fri, 07 Jan 2011 23:38:36 +0000</pubDate>
		<dc:creator>Kevin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[xml]]></category>

		<guid isPermaLink="false">http://webjamads.com/tech/?p=112</guid>
		<description><![CDATA[Since 2007 I have written PHP code to submit information nearly every type of affliate offer imaginable. After four years, I have concluded that they key to improving profits, quality, and efficiency is standardization. To understand this better, think in &#8230; <a href="http://www.webjamads.com/2011/01/standardize-field-names-and-structure-to-improve-affilate-offers/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Since 2007 I have written PHP code to submit information nearly every type of affliate offer imaginable.</p>
<p>After four years, I have concluded that they key to improving profits, quality, and efficiency is standardization.</p>
<p>To understand this better, think in terms of two companies that produce affiliate offers, Sea Side Affiliate Leads and Double Click Media.  Both of the companies are going to launch an educational offer.  Both companies have hired PHP programmers to code up their offers.  User data is to be posted to the offers in XML format.  But the two programmers have chosen two different XML formats, as shown below:</p>
<p><strong><span style="color: #606060;"><span style="text-decoration: underline;">The Sea Side XML Format</span></span></strong></p>
<div class="codecolorer-container xml default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br /></div></td><td><div class="xml codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;submission<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp;<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;first_name<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Fred<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/first_name<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp;<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;last_name<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Johnson<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/last_name<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp;.<br />
&nbsp; &nbsp;.<br />
&nbsp; &nbsp;.<br />
&nbsp; &nbsp;<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;home_address<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>112 Breezeway Court<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/home_address<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp;<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;home_city<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Elicott<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/home_city<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp;<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;home_state<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Utah<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/home_state<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp;.<br />
&nbsp; &nbsp;.<br />
&nbsp; &nbsp;.<br />
&nbsp; &nbsp;<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;work_address<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>21 Archer Drive<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/work_address<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp;<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;work_city<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Salt Lake City<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/work_city<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;work_state<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Utah<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/work_state<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp;.<br />
&nbsp; &nbsp;.<br />
&nbsp; &nbsp;.<br />
<br />
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;submission<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></div></td></tr></tbody></table></div>
<p>&nbsp;</p>
<p><strong><span style="color: #606060;"><span style="text-decoration: underline;">The Double Click XML Format</span></span></strong></p>
<div class="codecolorer-container xml default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;height:300px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br /></div></td><td><div class="xml codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;submission<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp;<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;name<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;first<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Fred<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/first<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;last<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Johnson<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/last<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp;<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/name<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp;.<br />
&nbsp; &nbsp;.<br />
&nbsp; &nbsp;.<br />
&nbsp; &nbsp;<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;home<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;address<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>112 Breezeway Court<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/address<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;city<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Elicott<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/city<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;state<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Utah<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/state<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp;<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/home<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp;.<br />
&nbsp; &nbsp;.<br />
&nbsp; &nbsp;.<br />
&nbsp; &nbsp;<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;work<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;address<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>21 Archer Drive<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/address<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;city<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Salt Lake City<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/city<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;state<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Utah<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/state<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp;<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/work<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp;.<br />
&nbsp; &nbsp;.<br />
&nbsp; &nbsp;.<br />
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;submission<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></div></td></tr></tbody></table></div>
<p>As you can see above the xml formats above convey exactly the same information, but the XML formats are completely different.  What&#8217;s wrong with that, you may ask?  Well suppose a third company creates an offer that front ends for a number of different educational offers; meaning that it collects user information and submits it to both the Sea Side and the Double Click offers.</p>
<p>Now that third company has a problem.  They collect user information and they submit it to Sea Side and Double Click, but they have to format it differently for both companies.  And the situation can get a lot worse.  Let&#8217;s say, for instance, that both Sea Side and Double Click want to know how long an applicant has been at their current job.  There are a number of possible options for accomplishing this. Two are shown below.</p>
<p><strong><span style="color: #606060;"><span style="text-decoration: underline;">The Sea Side Job Start Date Format</span></span></strong></p>
<div class="codecolorer-container xml default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br /></div></td><td><div class="xml codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;submission<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp;.<br />
&nbsp; &nbsp;.<br />
&nbsp; &nbsp;.<br />
&nbsp; &nbsp;<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;months_at_job<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>6<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/months_at_job<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp;<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;years_at_job<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>3<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/years_at_job<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp;.<br />
&nbsp; &nbsp;.<br />
&nbsp; &nbsp;.<br />
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;submission<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></div></td></tr></tbody></table></div>
<p>&nbsp;</p>
<p><strong><span style="color: #606060;"><span style="text-decoration: underline;">The Double Click Job Start Date Format</span></span></strong></p>
<div class="codecolorer-container xml default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br /></div></td><td><div class="xml codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;submission<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp;.<br />
&nbsp; &nbsp;.<br />
&nbsp; &nbsp;.<br />
&nbsp; &nbsp;<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;job<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;year_started<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>2005<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/year_started<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;month_started<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>06<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/month_started<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp;<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/job<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp;.<br />
&nbsp; &nbsp;.<br />
&nbsp; &nbsp;.<br />
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;submission<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></div></td></tr></tbody></table></div>
<p>In the real world, the architects of affiliate offers have create a number of other methods of determining the length of time at the job.  There is no need to discuss all of them.  In my opinion it is best to collect the job start date, rather than the time at the job, because time at job becomes inaccurate as the submission ages.  The same is true of &#8220;time at current residence&#8221; and similar data.</p>
<p>My point here is simply to demonstrate that there are many methods of representing data and it cost software design time and programming time (and therefore <span style="font-weight: bold; color:#060">$$$</span>) to represent all of them.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.webjamads.com/2011/01/standardize-field-names-and-structure-to-improve-affilate-offers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Managers Primer on Configuration Management</title>
		<link>http://www.webjamads.com/2011/01/managers-primer-on-configuration-management/</link>
		<comments>http://www.webjamads.com/2011/01/managers-primer-on-configuration-management/#comments</comments>
		<pubDate>Sun, 02 Jan 2011 02:53:04 +0000</pubDate>
		<dc:creator>Kevin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://webjamads.com/tech/?p=100</guid>
		<description><![CDATA[What Every Manager Should Know If you are a non-technical person managing software developers, there is one very important fact you should know software configuration management (scm): If you don&#8217;t have software configuration management (scm), at some time in the &#8230; <a href="http://www.webjamads.com/2011/01/managers-primer-on-configuration-management/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><em>What Every Manager Should Know</em></p>
<p>If you are a non-technical person managing software developers, there is one very important fact you should know software configuration management (scm):</p>
<p style="padding-left: 30px; padding-right: 30px;"><em><strong>If you don&#8217;t have software configuration management (scm), at some time in the future you are going to be very sorry.</strong></em></p>
<p>Software version control could save your job or your entire business.   It&#8217;s that important.  Without exception, major software companies (Microsoft, Google, IBM, etc.)  all use some form of version control. </p>
<p><strong><span style="text-decoration: underline;">What Is Software Configuration Management (SCM)?</span></strong></p>
<p>SCM allows your technical staff to easily and precisely archive older versions of software modules for use at a later time.  In addition, where a collection of older modules functions together as a system, SCM labels the precise versions of those modules that were in use at any point in the lifetime of the system.</p>
<p>Why is that important?</p>
<p>As a manager you are aware that programmers are constantly changing software.</p>
<p>You may manage a product such as an online Payday Loan Broker, or a Web page with multiple affiliate offers on the backend.  Suppose you make improvements on your page to increase your revenues but a year later you decide that the old page worked better and you want it back.</p>
<p>In many companies it would be impossible or prohibitively expensive to revert back to the old software system, but with SCM it is a trivial job.</p>
<p><strong><span style="text-decoration: underline;">Is SCM a Form of Backup?</span></strong></p>
<p>SCM is definitely not a form of backup. </p>
<p>SCM files need to be backed up just like any other files.  If your technical staff tells you that your software files are backed up because they are stored in SCM, ask them what will happen if the machine on which the SCM files are stored is destroyed?</p>
<p>Backup is beyond the scope of this article, but I will say that is important that your staff be able to demonstrate that your software is backed up off-site.</p>
<p><strong><span style="text-decoration: underline;">What to Expect from SCM</span></strong></p>
<p>Every company uses SCM to meet its own requirements.  As a manager, you should not have to worry about the technical details of SCM; but you should know what versions of your system you want to be able to retrieve from SCM.   In the world of affiliate marketing many companies operate a test server site in addition to a live site.  Your technical staff should be able to load older versions of your system onto the test site without a lot of bother and fuss.  If they cannot, then they are probably not set up to use SCM properly.</p>
<p><strong><span style="text-decoration: underline;">How It Works</span></strong></p>
<p>Most software systems consist of many files, often (but not always) referred to as modules.</p>
<p>When a programmer makes a change to a file, the programmer uses the SCM system to check out the file, makes the changes, and then checks it back in.  Thanks to the magic of SCM, when the new file is check in, the old file is still available.  In fact, every version of the file ever checked into SCM, starting with the very first version is available.  So basically, your technical staff should be able to go back and find any version of any file they ever worked on.</p>
<p>But SCM goes a step further by creating labels; essentially allowing tech staff to easily make lists of all the different versions of all files that was included in any system release at any significant time in the life of the system.</p>
<p>In a nutshell, that is how SCM works.</p>
<p><strong><span style="text-decoration: underline;">Subversion and CVS</span></strong></p>
<p>This article would not be complete without mentioning the two preeminent competing open source SCM products &#8212; Subversion and CVS.</p>
<p>There are many articles that compare the two products.  I prefer Subversion for a couple of reasons, such at the fact it is more Dreamweaver friendly, but either product will get the job done.</p>
<p><strong><span style="text-decoration: underline;">Conclusion</span></strong></p>
<p>Configuration Management is essential to the financial viability of most software companies.  You should expect your technical staff to use it as a routine part of their jobs.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.webjamads.com/2011/01/managers-primer-on-configuration-management/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to Get the Most Out of Your Programmers</title>
		<link>http://www.webjamads.com/2010/12/how-to-get-the-most-out-of-your-programmers-2/</link>
		<comments>http://www.webjamads.com/2010/12/how-to-get-the-most-out-of-your-programmers-2/#comments</comments>
		<pubDate>Sat, 18 Dec 2010 20:19:28 +0000</pubDate>
		<dc:creator>Kevin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://webjamads.com/tech/?p=79</guid>
		<description><![CDATA[And Create Successful Affiliate Offers Some of the most profitable affiliate offers require programming and database work to collect applicant information; but that programming will kill your profits if you don&#8217;t organize the work systematically and create a library reusable &#8230; <a href="http://www.webjamads.com/2010/12/how-to-get-the-most-out-of-your-programmers-2/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><em>And Create Successful Affiliate Offers</em></p>
<p>Some of the most profitable affiliate offers require programming and database work to collect applicant information; but that programming will kill your profits if you don&#8217;t organize the work systematically and create a library reusable software modules.</p>
<p>So how can you create profitable high quality offers on a budget and keep your affiliates begging for more?</p>
<p>This article addresses that question for the middle tier of a typical 3-Tier affiliate advertising offer.</p>
<p><strong><span style="text-decoration: underline;">What&#8217;s In an Offer?</span></strong></p>
<p>In a typical 3-Tier offer, the purpose of the middle tier is to collect information and validate that information to the greatest extent possible before sending it to the back-end Tier of the offer.</p>
<p>As an example, an auto loan offer would collect basic personal information such as name and date of birth, as well as contact information, and finally financial information &#8212; but what&#8217;s really needed?</p>
<p><strong>Data Validation.</strong> Data such as zip codes and phone numbers must be validated to ensure it is in the correct format.   For example, phone numbers should be 10 digits with no alpha-numeric characters and zip codes should be</p>
<p><strong>Data Verification.</strong> Data verification is different from data validation.  Data verification is not concerned with the format of data, but rather with the truth or the correctness of data.  For example, does a person with a particular social security number actually live at the address they submitted to the offer, or is their E-mail address real?</p>
<p><strong>Reporting.</strong> Reporting is essential to managing an offer.  Reporting can be as simple or complicated as necessary.   In general, reporting should provide the ability to view leads based on the following criteria:</p>
<ul>
<li>Time</li>
<li>Lead Accept/Lead Reject</li>
<li>Affiliate ID</li>
</ul>
<p>Reporting should also have the capability to produce summaries, for example total of payouts in a particular time period or for a particular affiliate.</p>
<p><strong>Diagnostics.</strong> In a well managed offer, the details of the interactions with the offer back end are recorded and available for review.</p>
<p><strong>Data Management.</strong> Typically the information from an offer is added to a database.  The information is valuable and can be continually monetized, but as it ages, it should be stored separately from the main</p>
<p><strong><span style="text-decoration: underline;">Don&#8217;t Reinvent the Wheel</span></strong></p>
<p>Your company must manage the process of how offers are constructed otherwise you will wind up with a configuration and a maintenance nightmare.</p>
<p>To become a successful player, your company should maintain software libraries of basic offer functions such as data format validation and database interface.  Your offers should all be built around a core set of software modules; if they are not, then your company will be constantly reinventing the wheel and you will never produce any valuable intellectual property.</p>
<p>You may rely on in-house talent or outside contractors to build your offer, but you should insist on consistency from offer to offer and you should insist that your designers use a common set of core modules.</p>
<p><strong><span style="text-decoration: underline;">Create Standards</span></strong></p>
<p>Standards are a part of how you define your corporate identity.</p>
<p>What do your offers generally look like?  Your standards documents should answer that question.</p>
<p>What happens when someone puts incorrect or bogus information into your offer?  Your standards documents should answer that question.</p>
<p>How are your offers tested?  Your standards documents should answer that question.</p>
<p>How is your code organized, documented, identified, and backed up?  Your standards documents should answer that question.</p>
<p>Many designers resist standards and they may use phrases like, &#8220;nobody is going to dictate to me how I do my work,&#8221; but keep in mind that your primary responsibility is to your investors and the owners of your company, not to your designers.</p>
<p><strong><span style="text-decoration: underline;">Test, Test, Test</span></strong></p>
<p>Inadequate test is the biggest reason that software based offers fail; yet many software designers are not well trained in methods of software test.</p>
<p>A good software designer will test his work at the module level first, then integrate it into the offer and test it at the offer level, and finally test it at the user level.</p>
<p>Since nearly all offers operate out of a database, a test version of the database is essential for non intrusive testing.</p>
<p>Module level tests require software, and the software should be well identified and easy to locate.  This goes back to the issue of standards.  Your company must define naming standards, documentation standards, and format standards for your module tests.  This is every bit as important as coding standards for your actual offer software, because every time a module is changed it must be retested.</p>
<p>Finally, every offer should have a test plan and a designated tester.   The designated tester is responsible to the company to ensure that the test plan and the test plan completions should be tracked at the highest levels of the company.  No offer should go live until the test plan is completed.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.webjamads.com/2010/12/how-to-get-the-most-out-of-your-programmers-2/feed/</wfw:commentRss>
		<slash:comments>24</slash:comments>
		</item>
		<item>
		<title>Tips On Installing SSL Certificates</title>
		<link>http://www.webjamads.com/2010/12/tips-on-installing-ssl-certificates/</link>
		<comments>http://www.webjamads.com/2010/12/tips-on-installing-ssl-certificates/#comments</comments>
		<pubDate>Wed, 15 Dec 2010 23:14:10 +0000</pubDate>
		<dc:creator>Kevin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://webjamads.com/tech/?p=37</guid>
		<description><![CDATA[An SSL certificate is used to verify the identity of a site and to support private encryption between a browser and a server on the Web.  Installing an SSL certificate is conceptually simple but there are a lot of real &#8230; <a href="http://www.webjamads.com/2010/12/tips-on-installing-ssl-certificates/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>An SSL certificate is used to verify the identity of a site and to support private encryption between a browser and a server on the Web.  Installing an SSL certificate is conceptually simple but there are a lot of real world details to attend to.  This article provides some tips to smooth the installation process.</p>
<h4><span style="text-decoration: underline;"><strong>The Players in the SSL Process</strong></span></h4>
<p>There are three players in the SSL Process:</p>
<ol>
<li><strong>Client.</strong>The Web browser client requests a certificate from a site and has the ability to verify the certificate by checking with the Certificate Authority.</li>
<li><strong>Server/Web Host.</strong>The server keeps the certificate and presents it to browsers when they initiate the SSL handshake process. The server also maintains the secret decryption keys for the public key encryption process.</li>
<li><strong>Certification Authority.</strong>The Certification Authority sells the Certificate and verifies its authenticity to web browsers. Examples of Certification Authorities are companies like DigiCert and Go Daddy.</li>
</ol>
<p>The <strong>Certificate Signing Request</strong> (CSR) is created by on the server where the certificate is to be used.</p>
<h4><span style="text-decoration: underline;"><strong>Understand the Certificate Signing Request</strong></span></h4>
<p>The <strong>Certificate Signing Request</strong> (CSR) is created on the server where the Certificate is to to be used.  It is basically an application to a Certification Authority (CA) for a Certificate.</p>
<h4><span style="text-decoration: underline;"><strong>Dedicated IP Address</strong></span></h4>
<p>Before you can install a standard signed Certificate, your domain account must be set up on a dedicated IP.  If you are running on WHM, go to Main &gt;&gt; Account Functions &gt;&gt; Change Site&#8217;s IP Address, and change the IP address.  If WHM  doesn&#8217;t have any spare IP addresses, then you will need to purchase the use of additonal IP Addresses.</p>
<h4><span style="text-decoration: underline;"><strong>Contact Information on Your Domain</strong></span></h4>
<p>As part of the Certificate vetting process, your Certification Authority will likely send emails to to the contacts available from the Whois records on your domain.  The Certification Authority will expect a response of they will deny your request for a Certificate, so be sure the contact information on your domain is up to date. </p>
<h4><span style="text-decoration: underline;"><strong>Browser Warnings</strong></span></h4>
<p>Once your secure site is set up, you may get warnings from your browser similar to, &#8220;Do you want to view only the content that was delivered securely? The webpage contains content that will not be delivered using a secure HTTPS connection, which could compromise the security of the entire webpage.&#8221;</p>
<p>In general this means webpage content (for example graphics) is referenced from the your webpage using an http prefix instead of an https prefix.  You can correct this by using relative URLs to access the graphics, or by using an https prefix on all references to graphics.  For example http://yourdomain.com/graphics/house.jpg should be replaced with https://yourdomain.com/graphics/house.jpg</p>
]]></content:encoded>
			<wfw:commentRss>http://www.webjamads.com/2010/12/tips-on-installing-ssl-certificates/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Go Daddy Articles on SSL Certificates</title>
		<link>http://www.webjamads.com/2010/12/godaddy-articles-on-ssl/</link>
		<comments>http://www.webjamads.com/2010/12/godaddy-articles-on-ssl/#comments</comments>
		<pubDate>Wed, 15 Dec 2010 19:25:45 +0000</pubDate>
		<dc:creator>Kevin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://webjamads.com/tech/?p=31</guid>
		<description><![CDATA[If you are interested in purchasing and setting up SSL Certificates with Go Daddy, you will probably find these articles to be useful. Requesting an SSL certificate &#8212; http://help.godaddy.com/article/562? Generating a Certificate Signing Request (CSR) from CPanel/WebHost Manager &#8212; http://help.godaddy.com/topic/746/article/5282 Adding or &#8230; <a href="http://www.webjamads.com/2010/12/godaddy-articles-on-ssl/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>If you are interested in purchasing and setting up SSL Certificates with Go Daddy, you will probably find these articles to be useful.</p>
<ul>
<li>Requesting an SSL certificate &#8212; <a href="http://help.godaddy.com/article/562">http://help.godaddy.com/article/562</a>?</li>
<li>Generating a Certificate Signing Request (CSR) from CPanel/WebHost Manager &#8212; <a href="http://help.godaddy.com/topic/746/article/5282">http://help.godaddy.com/topic/746/article/5282</a></li>
<li>Adding or Dropping Subject Alternative Names from UCC Certificates &#8212; <a href="http://help.godaddy.com/article/4649">http://help.godaddy.com/article/4649</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.webjamads.com/2010/12/godaddy-articles-on-ssl/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Add Headers and Comments to Your Files</title>
		<link>http://www.webjamads.com/2010/12/test-code-colorer/</link>
		<comments>http://www.webjamads.com/2010/12/test-code-colorer/#comments</comments>
		<pubDate>Sun, 12 Dec 2010 03:55:09 +0000</pubDate>
		<dc:creator>Kevin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://webjamads.com/tech/?p=16</guid>
		<description><![CDATA[Headers and Comments should be added to PHP code files for several reasons: Software Maintenance. Eighty percent of the cost of software is in maintenance; and typically software maintenance is not performed by the programmer who originally wrote the code. &#8230; <a href="http://www.webjamads.com/2010/12/test-code-colorer/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Headers and Comments should be added to PHP code files for several reasons:</p>
<ol>
<li><strong>Software Maintenance.</strong> Eighty percent of the cost of software is in maintenance; and typically software maintenance is not performed by the programmer who originally wrote the code.</li>
<li><strong>Value of Intellectual Property.</strong> If you plan to sell your company or software written by your company, your intellectual property will be subject to review.  Well written headers and comments give your software a professional look and will give the buyer confidence he/she is purchasing a quality product.</li>
</ol>
<p>A PHP file header is shown in the code listing below, but it is just an example.  Your company&#8217;s software team can create any type of header that suits them.  Be sure to include an appropriate copyright notice in your header.</p>
<div class="codecolorer-container php default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br /></div></td><td><div class="php codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #666666; font-style: italic;">// *************************************************************************************</span><br />
<span style="color: #666666; font-style: italic;">// *************************************************************************************</span><br />
<span style="color: #666666; font-style: italic;">// copyright 2010 WebJamAds, all rights reserved</span><br />
<span style="color: #666666; font-style: italic;">//</span><br />
<span style="color: #666666; font-style: italic;">// File: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;software_configuration.php</span><br />
<span style="color: #666666; font-style: italic;">// Date: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; &nbsp; 12 November 2010</span><br />
<span style="color: #666666; font-style: italic;">// Description: &nbsp; &nbsp; &nbsp; &nbsp; Define paths and other constants</span><br />
<span style="color: #666666; font-style: italic;">// *************************************************************************************</span><br />
<span style="color: #666666; font-style: italic;">// *************************************************************************************</span></div></td></tr></tbody></table></div>
<p>Your software team should also agree on a reasonable standard for commenting functions and classes. An example of a commented function is shown below:</p>
<div class="codecolorer-container php default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br /></div></td><td><div class="php codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #666666; font-style: italic;">// *************************************************************************</span><br />
<span style="color: #666666; font-style: italic;">// Build authorization</span><br />
<span style="color: #666666; font-style: italic;">//</span><br />
<span style="color: #666666; font-style: italic;">// INPUT:</span><br />
<span style="color: #666666; font-style: italic;">// &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $authorized &nbsp;- true if offer is authorized</span><br />
<span style="color: #666666; font-style: italic;">// &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $bonus_index - number of bonus</span><br />
<span style="color: #666666; font-style: italic;">//</span><br />
<span style="color: #666666; font-style: italic;">// RETURN: &nbsp; &nbsp; Text of authorization HTML</span><br />
<span style="color: #666666; font-style: italic;">// *************************************************************************</span><br />
<span style="color: #000000; font-weight: bold;">function</span> build_authorization<span style="color: #009900;">&#40;</span><span style="color: #000088;">$authorized</span><span style="color: #339933;">,</span><span style="color: #000088;">$bonus_index</span><span style="color: #009900;">&#41;</span><br />
<span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #000088;">$checked</span>&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$authorized</span> &nbsp;? <span style="color: #0000ff;">&quot;CHECKED&quot;</span> <span style="color: #339933;">:</span> <span style="color: #0000ff;">&quot;&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #000088;">$authorization</span>&nbsp; <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot; &nbsp; &nbsp;&lt;input TYPE=<span style="color: #000099; font-weight: bold;">\&quot;</span>CHECKBOX<span style="color: #000099; font-weight: bold;">\&quot;</span> NAME=<span style="color: #000099; font-weight: bold;">\&quot;</span>bonus_offer_authorized_<span style="color: #006699; font-weight: bold;">$bonus_index</span><span style="color: #000099; font-weight: bold;">\&quot;</span> VALUE=<span style="color: #000099; font-weight: bold;">\&quot;</span>yes<span style="color: #000099; font-weight: bold;">\&quot;</span> <span style="color: #006699; font-weight: bold;">$checked</span>&gt;&quot;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #b1b100;">return</span> <span style="color: #000088;">$authorization</span><span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
]]></content:encoded>
			<wfw:commentRss>http://www.webjamads.com/2010/12/test-code-colorer/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Just started a new WebJamAds Technical Blog</title>
		<link>http://www.webjamads.com/2010/12/a-webjamads-technical-blog-why/</link>
		<comments>http://www.webjamads.com/2010/12/a-webjamads-technical-blog-why/#comments</comments>
		<pubDate>Fri, 10 Dec 2010 03:20:50 +0000</pubDate>
		<dc:creator>Kevin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://webjamads.com/tech/?p=9</guid>
		<description><![CDATA[Why a blog? Right now it just covers some of the simple things that require more attention and detail than you would expect… those simple things that can make or break your site. Covering these “simple” steps, documenting the process &#8230; <a href="http://www.webjamads.com/2010/12/a-webjamads-technical-blog-why/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Why a blog?</p>
<p>Right now it just covers some of the simple things that require more attention and detail than you would expect… those simple things that can make or break your site. Covering these “simple” steps, documenting the process and then implementing them are critical. Trust us…we know too well. </p>
<p>We want to share what we have learned though out the past 5 years at WebJamAds with others in our space. As programmers, publishers, advertisers and consumers we are all connected which is why the effects are so devastating when online marketing goes wrong.  (Which is something you can read more about with the release of The Zuhzz.</p>
<p>There are multiple formulas for success in our industry and we work with 1000’s of people each day making it almost impossible to have a seamless process or a permanent function for success that will always =True.  We can however through sharing our experiences try to instill a common set of procedures and provide a more detailed set of instructions that can serve as a sealant to help fill the gaps that are unavoidable when it comes to marketing on the web.  We hope that through sharing this information and with your involvement that the rippling effects will yield a positive and replenish. Please share this link with your affiliates…your team….your friends and your family.  Let’s make it common practice to make this blog a first stop before you start blogging for traffic. It just might make sense.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.webjamads.com/2010/12/a-webjamads-technical-blog-why/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

