<?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>Glenn on the Web &#187; Uncategorized</title>
	<atom:link href="http://www.glenncrocker.com/category/uncategorized/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.glenncrocker.com</link>
	<description></description>
	<lastBuildDate>Wed, 27 Jan 2010 21:32:17 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>SVG to PNG on the fly with ColdFusion</title>
		<link>http://www.glenncrocker.com/2009/10/svg-to-png-on-the-fly-with-coldfusion/</link>
		<comments>http://www.glenncrocker.com/2009/10/svg-to-png-on-the-fly-with-coldfusion/#comments</comments>
		<pubDate>Thu, 08 Oct 2009 14:47:58 +0000</pubDate>
		<dc:creator>Glenn Crocker</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.glenncrocker.com/?p=180</guid>
		<description><![CDATA[I&#8217;ve got a client with a large number of SVG images of products.  The format works really well in a lot of ways, because the images are scalable and look great at any resolution. As usual, Internet Explorer is a thorn in our sides.  Today, it&#8217;s because IE doesn&#8217;t support PNG. Sheesh.
So I found a [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve got a client with a large number of SVG images of products.  The format works really well in a lot of ways, because the images are scalable and look great at any resolution. As usual, Internet Explorer is a thorn in our sides.  Today, it&#8217;s because IE doesn&#8217;t support PNG. Sheesh.</p>
<p><span id="more-180"></span>So I found a great article about <a href="http://www.barneyb.com/barneyblog/2005/10/06/coldfusion-and-batik/" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.barneyb.com');">converting SVG to PNG with ColdFusion</a> using the <a href="http://xml.apache.org/batik" onclick="javascript:pageTracker._trackPageview('/outbound/article/xml.apache.org');">Batik</a> Java library. It took a lot of wrangling to finally get it working on the client&#8217;s aging ColdFusion 6 server. Here&#8217;s a little snippet that essentially caches the converted file and outputs and &lt;img&gt; tag. Works like a champ:</p>
<blockquote><p>&lt;!&#8212; Invoke as &lt;cfmodule template=&#8221;/Products/showSVG.cfm&#8221; svgFile=&#8221;/Assets/SubcategoryGroups/20600.svg&#8221; width=&#8221;600&#8243;&gt; &#8212;&gt;<br />
&lt;cfparam name=&#8221;attributes.svgFile&#8221; type=&#8221;string&#8221; default=&#8221;"&gt;<br />
&lt;cfparam name=&#8221;attributes.width&#8221; type=&#8221;string&#8221; default=&#8221;"&gt; &lt;!&#8212; You can specify both width &amp; height, just one, or none. &#8212;&gt;<br />
&lt;cfparam name=&#8221;attributes.height&#8221; type=&#8221;string&#8221; default=&#8221;"&gt;<br />
&lt;cfparam name=&#8221;attributes.alt&#8221; type=&#8221;string&#8221; default=&#8221;"&gt;</p>
<p>&lt;cftry&gt;<br />
&lt;cfif attributes.svgFile EQ &#8220;&#8221;&gt;<br />
&lt;!&#8212; Do nothing &#8212;&gt;<br />
&lt;cfoutput&gt;No SVG file specified&lt;/cfoutput&gt;<br />
&lt;cfelse&gt;<br />
&lt;!&#8212; Make sure the source SVG exists: &#8212;&gt;<br />
&lt;cfset svgPath = &#8220;#attributes.svgFile#&#8221; /&gt;<br />
&lt;cfset pngPath = replace(&#8221;#svgPath#&#8221;, &#8220;.svg&#8221;, &#8220;.png&#8221;) /&gt;<br />
&lt;cfset svgFile = expandPath(svgPath) /&gt;<br />
&lt;cfset pngFile = expandPath(pngPath) /&gt;</p>
<p>&lt;cfif FileExists(svgFile)&gt;<br />
&lt;!&#8212; Figure out the best way to display this svg. &#8212;&gt;</p>
<p>&lt;!&#8212; For Firefox and friends, we could output the SVG directly. &#8212;&gt;</p>
<p>&lt;!&#8212; For IE and many other browsers, we convert to a PNG: &#8212;&gt;<br />
&lt;cfif NOT FileExists(pngFile)&gt;<br />
&lt;!&#8212; PNG doesn&#8217;t exist yet.  Generate it: &#8212;&gt;<br />
&lt;cfset t = createObject(&#8221;java&#8221;, &#8220;org.apache.batik.transcoder.image.PNGTranscoder&#8221;).init() /&gt;<br />
&lt;cfset svgURI = createObject(&#8221;java&#8221;, &#8220;java.io.File&#8221;).init(svgFile).toURL().toString() /&gt;<br />
&lt;cfset input = createObject(&#8221;java&#8221;, &#8220;org.apache.batik.transcoder.TranscoderInput&#8221;).init(svgURI) /&gt;<br />
&lt;cfset ostream = createObject(&#8221;java&#8221;, &#8220;java.io.FileOutputStream&#8221;).init(pngFile) /&gt;<br />
&lt;cfset output = createObject(&#8221;java&#8221;, &#8220;org.apache.batik.transcoder.TranscoderOutput&#8221;).init(ostream) /&gt;<br />
&lt;cfset t.transcode(input, output) /&gt;<br />
&lt;cfset ostream.flush() /&gt;<br />
&lt;cfset ostream.close() /&gt;<br />
&lt;/cfif&gt;</p>
<p>&lt;cfoutput&gt;<br />
&lt;!&#8212; &lt;embed src=&#8221;#svgPath#&#8221; width=&#8221;613&#8243; height=&#8221;343&#8243; type=&#8221;image/svg+xml&#8221; /&gt; &#8212;&gt;<br />
&lt;img src=&#8221;#pngPath#&#8221; width=&#8221;#attributes.width#&#8221; height=&#8221;#attributes.height#&#8221; alt=&#8221;#attributes.alt#&#8221; /&gt;<br />
&lt;/cfoutput&gt;<br />
&lt;cfelse&gt;<br />
&lt;!&#8212; SVG doesn&#8217;t exist. &#8212;&gt;<br />
&lt;cfoutput&gt;File #svgPath# not found.&lt;/cfoutput&gt;<br />
&lt;/cfif&gt;<br />
&lt;/cfif&gt;<br />
&lt;cfcatch type=&#8221;any&#8221;&gt;<br />
&lt;cfoutput&gt;Error outputting SVG #attributes.svgFile#&lt;/cfoutput&gt;<br />
&lt;/cfcatch&gt;<br />
&lt;/cftry&gt;</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.glenncrocker.com/2009/10/svg-to-png-on-the-fly-with-coldfusion/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Getting Started with Search Based Keyword Tool</title>
		<link>http://www.glenncrocker.com/2009/07/getting-started-with-search-based-keyword-tool/</link>
		<comments>http://www.glenncrocker.com/2009/07/getting-started-with-search-based-keyword-tool/#comments</comments>
		<pubDate>Mon, 13 Jul 2009 22:39:11 +0000</pubDate>
		<dc:creator>Glenn Crocker</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.glenncrocker.com/?p=164</guid>
		<description><![CDATA[Google has added a series of 6 videos on using the Search Based Keyword Tool (SbKT or SKTool) to their YouTube account.  Here&#8217;s the first:

Great stuff, though they have to jump through some hoops at the end that my Missing Link tool (part of AdWords Evolved) makes much faster and more powerful.
]]></description>
			<content:encoded><![CDATA[<p>Google has added a series of 6 videos on using the Search Based Keyword Tool (SbKT or SKTool) to their YouTube account.  Here&#8217;s the first:</p>
<p><object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/m8z2J3-OaNg&#038;hl=en&#038;fs=1&#038;"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/m8z2J3-OaNg&#038;hl=en&#038;fs=1&#038;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object></p>
<p>Great stuff, though they have to jump through some hoops at the end that my Missing Link tool (part of <a href="http://adwordsevolved.com/r.php" onclick="javascript:pageTracker._trackPageview('/outbound/article/adwordsevolved.com');">AdWords Evolved</a>) makes much faster and more powerful.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.glenncrocker.com/2009/07/getting-started-with-search-based-keyword-tool/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Automate your Analytics Reporting</title>
		<link>http://www.glenncrocker.com/2009/06/automate-your-analytics-reporting/</link>
		<comments>http://www.glenncrocker.com/2009/06/automate-your-analytics-reporting/#comments</comments>
		<pubDate>Mon, 01 Jun 2009 16:42:33 +0000</pubDate>
		<dc:creator>Glenn Crocker</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.glenncrocker.com/?p=151</guid>
		<description><![CDATA[Google Analytics is a great tool for measuring site performance, but all too many sites install it and then never look at the info.  We&#8217;ve found that automating the reporting and delivering stats via email helps clients stay on top of their site performance.  Here&#8217;s a section from the book AdWords Evolved about how to [...]]]></description>
			<content:encoded><![CDATA[<p>Google Analytics is a great tool for measuring site performance, but all too many sites install it and then never look at the info.  We&#8217;ve found that automating the reporting and delivering stats via email helps clients stay on top of their site performance.  Here&#8217;s a section from the book <a href="http://www.adwordsevolved.com/r.php" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.adwordsevolved.com');">AdWords Evolved</a> about how to do it:</p>
<p><span id="more-151"></span></p>
<h3><a id="Keeping_Your_Finger_on_the_Pul" name="Keeping_Your_Finger_on_the_Pul"></a>Keeping Your Finger on the Pulse with Analytics</h3>
<p>Once you have Analytics set up, go ahead and configure it to email you weekly with stats about site performance. Here&#8217;s the easiest way to get started:</p>
<ol>
<li>Log in to Analytics</li>
<li>Go to the &#8220;Dashboard&#8221; view</li>
<li>Click the date range at the top right</li>
<li>Find <strong>last</strong> week on the calendar</li>
<li>Click the grey half-circle to the left of last week</li>
<li>Click the checkbox next to <strong>Compare to past</strong></li>
<li>Click <strong>Apply</strong>.</li>
</ol>
<p><img class="aligncenter size-full wp-image-158" title="2009-06-01_1453" src="http://www.glenncrocker.com/wp-content/uploads/2009/06/2009-06-01_1453.png" alt="2009-06-01_1453" width="633" height="213" /></p>
<p>Now what you see is last week&#8217;s data (probably empty if you just set up Analytics), compared with the previous week. This is a great start for watching your site. Now, let&#8217;s automate Analytics so it will email you this report every Monday:</p>
<ol>
<li>Click the <strong>Email</strong> link at the top of the report</li>
<li>Click the <strong>Schedule </strong>tab</li>
<li>If you want to send it to anyone else, enter their email address in the top box</li>
<li>Leave <strong>Send to me</strong> checked</li>
<li>Enter a subject and description, like:
<ul>
<li>Subject: Last week&#8217;s traffic for www.mysite.com</li>
<li>Description: Here&#8217;s last week as compared with the previous week.</li>
</ul>
</li>
<li>Select whatever format you like. PDF is a good place to start.</li>
<li>For <strong>Date Range/Schedule</strong>, select weekly</li>
<li>Be sure to leave <strong>Include date comparison</strong> checked, so each email will include the right comparison data</li>
<li>Click <strong>Schedule</strong></li>
</ol>
<p><img class="aligncenter size-full wp-image-157" title="2009-06-01_1450" src="http://www.glenncrocker.com/wp-content/uploads/2009/06/2009-06-01_1450.png" alt="2009-06-01_1450" width="577" height="476" /></p>
<p><img src="file:///Users/glenn/Library/Caches/TemporaryItems/moz-screenshot.jpg" alt="" /></p>
<p>That&#8217;s it! Now every week, Analytics will email you a PDF showing how last week compared with the one before that. This is a great reminder to check into what&#8217;s going on with your site. We set this up for every site we work on.  If weekly is too much, set it up monthly instead.</p>
<p>(This is a section from <a href="http://www.adwordsevolved.com/r.php" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.adwordsevolved.com');">AdWords Evolved</a>.  Most of the book is about AdWords, but setting up Analytics correctly is critical to AdWords success, so it&#8217;s covered as well.)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.glenncrocker.com/2009/06/automate-your-analytics-reporting/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Elections and Large Hadron Colliders</title>
		<link>http://www.glenncrocker.com/2008/09/elections-and-large-hadron-colliders/</link>
		<comments>http://www.glenncrocker.com/2008/09/elections-and-large-hadron-colliders/#comments</comments>
		<pubDate>Wed, 10 Sep 2008 09:50:35 +0000</pubDate>
		<dc:creator>Glenn Crocker</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.glenncrocker.com/?p=24</guid>
		<description><![CDATA[I saw this on Twitter this morning:
Hey, best case, we harness the power of God. Worst case? We all die in an artificial black hole.
and at first I thought it was about McCain/Palin vs. Obama/Biden.  Then I remembered LHC.  Yay, we&#8217;re all still here!
]]></description>
			<content:encoded><![CDATA[<p>I saw this on Twitter this morning:</p>
<div style="margin-left: 40px;"><span class="entry-content">Hey, best case, we harness the power of God. Worst case? We all die in an artificial black hole.</span></div>
<p>and at first I thought it was about McCain/Palin vs. Obama/Biden.  Then I remembered LHC.  Yay, we&#8217;re all still here!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.glenncrocker.com/2008/09/elections-and-large-hadron-colliders/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Foot Update</title>
		<link>http://www.glenncrocker.com/2008/07/foot-update/</link>
		<comments>http://www.glenncrocker.com/2008/07/foot-update/#comments</comments>
		<pubDate>Tue, 08 Jul 2008 13:46:39 +0000</pubDate>
		<dc:creator>Glenn Crocker</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.glenncrocker.com/?p=15</guid>
		<description><![CDATA[I broke my foot a while back, and finally went to the doctor mumble-16-mumble months later, who confirmed that a tiny little cesamoid bone is broken.  They&#8217;re apparently a nightmare to heal, so I got a bone stimulator, which seems to have helped.  Tried 4 weeks on an air cast walking boot thingie, but it [...]]]></description>
			<content:encoded><![CDATA[<p>I broke my foot a while back, and finally went to the doctor mumble-16-mumble months later, who confirmed that a tiny little cesamoid bone is broken.  They&#8217;re apparently a nightmare to heal, so I got a <a href="http://www.djoglobal.com/bonestim/products/default.asp" onclick="javascript:pageTracker._trackPageview('/outbound/article/www.djoglobal.com');">bone stimulator</a>, which seems to have helped.  Tried 4 weeks on an air cast walking boot thingie, but it didn&#8217;t help, so I&#8217;ve been on crutches for the past 3 weeks.</p>
<p>Anyhow, it seems to finally be healing, so I&#8217;m thrilled about that.  Hoping it&#8217;ll be in good shape for Estes Park, CO in August, and maybe D.C. before that.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.glenncrocker.com/2008/07/foot-update/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Hello world!</title>
		<link>http://www.glenncrocker.com/2008/06/hello-world/</link>
		<comments>http://www.glenncrocker.com/2008/06/hello-world/#comments</comments>
		<pubDate>Fri, 13 Jun 2008 17:13:18 +0000</pubDate>
		<dc:creator>Glenn Crocker</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.glenncrocker.com/?p=1</guid>
		<description><![CDATA[Hey there.  I&#8217;m not really sure what this blog will end up covering.  Probably a smattering of things I&#8217;m interested in, including Search Engine Optimization, running a small business, music, raising kids, World of Warcraft, and maybe some crazy synergy of all of the above.
But I&#8217;ll start with a brief intro, so folks know who [...]]]></description>
			<content:encoded><![CDATA[<p>Hey there.  I&#8217;m not really sure what this blog will end up covering.  Probably a smattering of things I&#8217;m interested in, including Search Engine Optimization, running a small business, music, raising kids, World of Warcraft, and maybe some crazy synergy of all of the above.</p>
<p>But I&#8217;ll start with a brief intro, so folks know who I am.  I&#8217;m Glenn Crocker, a web developer in Overland Park, Kansas.  I&#8217;ve got a great wife, 2 great kids, and a bunch of great clients.  I do web technology integration work, which usually means I make weird databases talk to other weird databases, with a web interface in the middle.</p>
<p>But these days, I&#8217;m doing more and more &#8220;search engine optimization&#8221;, trying to get clients&#8217; web sites to rank higher on Google for their target phrases.  It&#8217;s fun, and appeals to the puzzle-solving part of my brain.</p>
<p>Hopefully, this blog will include the occasional interesting tid-bit for folks involved with any of the above!</p>
<p>-glenn</p>
]]></content:encoded>
			<wfw:commentRss>http://www.glenncrocker.com/2008/06/hello-world/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
