<rss version="2.0" 
	    xmlns:dc="http://purl.org/dc/elements/1.1/"
	    xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	    xmlns:admin="http://webns.net/mvcb/"
	    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
	    xmlns:content="http://purl.org/rss/1.0/modules/content/">
	
	  <channel>
	    <title>The Alagad Technical Blog Rss Feed</title>
	    <link>http://www.alagad.com/xml/export.xml</link>
	    <description>The Alagad Technical Blog</description>
	    <dc:language>en-us</dc:language>
	    <dc:creator>Alagad Inc.</dc:creator>
	    <dc:rights>Copyright Alagad</dc:rights>
	    <dc:date>2008-01-15T07:04:31-04:00</dc:date>
		<admin:generatorAgent rdf:resource="Alagad.com"/>
	    <admin:errorReportsTo rdf:resource="mailto:alagad@alagad.com"/>
	    <sy:updatePeriod>hourly</sy:updatePeriod>
	    <sy:updateFrequency>0.25</sy:updateFrequency>
	    <sy:updateBase>2000-01-01T12:00+00:00</sy:updateBase>
		
				<item>
					<title>Why setting the right concurrent thread count is important</title>
					<link>http://www.alagad.com/go/blog-entry/why-setting-the-right-concurrent-thread-count-is-important</link>
					<description> I&apos;m sure that most of you have seen the &apos;Request Tuning&apos; page on the Coldfusion Administrator. If not, take a quick peek here.
		  
		   
		  This seemingly innocuous page can make or break your web server performance under load.  Lets think about a typical page request.</description>
					<guid isPermaLink="false">35E6D7CC-3048-55C9-43E7086883046ED3</guid>
					
					<dc:date>2009-07-01T06:40:42-04:00</dc:date>
					<author>cpeterson@alagad.com (Chris Peterson)</author>
				</item>
				
				<item>
					<title>Where Oh Where Did My Bottleneck Come From?</title>
					<link>http://www.alagad.com/go/blog-entry/where-oh-where-did-my-bottleneck-come-from</link>
					<description> At one point in my career I thought I knew what performance tuning was... 	I would have described it as &amp;ldquo;writing tight code.&amp;rdquo; (Remember that phrase? &amp;ldquo;Tight code&amp;rdquo;?) And if I were to be tasked with fixing performance issues, I would have jumped on my computer, gotten a local copy of the app going, and started hitting pages to find the slow ones, then look at the code for ways to fix the issue. That, however, was before I knew what performance engineering really is.</description>
					<guid isPermaLink="false">086BA394-3048-55C9-43DB6C51D9B82B7F</guid>
					
					<dc:date>2009-06-22T10:49:14-04:00</dc:date>
					<author>jrypkahauer@alagad.com (Jared Rypka-Hauer)</author>
				</item>
				
				<item>
					<title>The G1 garbage collector</title>
					<link>http://www.alagad.com/go/blog-entry/the-g1-garbage-collector</link>
					<description> The G1 garbage collector has been made available in the 1.6_14 release of Sun&apos;s JDK. There was some controversy initially when this was released due to some wording in the license, but the wording has since been updated. Sun was trying to indicate that no support would be provided for the G1 garbage collector, yet it initially came across that you could not even use it unless you had a paid support contract (you can read more about the licensing changes here). </description>
					<guid isPermaLink="false">F640C170-3048-55C9-432F12B254BD8329</guid>
					
					<dc:date>2009-06-18T10:06:56-04:00</dc:date>
					<author>cpeterson@alagad.com (Chris Peterson)</author>
				</item>
				
				<item>
					<title>SearchMark Firefox Plugin Enters Wider Release</title>
					<link>http://www.alagad.com/go/blog-entry/searchmark-firefox-plugin-enters-wider-release</link>
					<description> A while back I announced SearchMark, a Firefox plugin which automatically creates a Google Custom search engines for you based on your browser history and bookmarks.  At the time I was only distributing the plugin through searchmark.org.  However, yesterday I published it to addons.mozilla.com.   I personally think this plugin is really cool.  (But I would, I wrote it..)  The idea is this: I often visit a website I think has good information, but I either forget to bookmark it, or I bookmark it can can&apos;t find it in my bookmark list later.  I always wished there was someway to search the text of sites you&apos;ve visited or the text of sites you&apos;ve bookmarked to find these old pages.  For example, I recently bought an iPhone adaptor for my car from a company called Grom.  However, I needed some support on the installation and couldn&apos;t find their website again.  So, I searched through my history and found it again rather quickly.  (It seems I was accidently searching on Gorm, which is something else entirely.)  </description>
					<guid isPermaLink="false">EFA95F44-3048-55C9-43B0DD78467537D6</guid>
					
					<dc:date>2009-06-17T03:20:04-04:00</dc:date>
					<author>dhughes@alagad.com (Doug Hughes)</author>
				</item>
				
				<item>
					<title>It&apos;s Probably Not The Code: Server Performance vs Application Performance</title>
					<link>http://www.alagad.com/go/blog-entry/it-s-probably-not-the-code-server-performance-vs-application-performance</link>
					<description> I was recently confronted with an application that suffered from abysmal performance... and by &amp;quot;abysmal&amp;quot; I mean &amp;quot;really really bad&amp;quot;. My task was simple: Make the website go fast! It was an interesting challenge, really, and it got me thinking about the difference between server performance and application performance. All tools and best practices aside, the thing that really hit home for me was the sheer number of places I found that needed fixing. Yes, the code was an issue, but before I even started looking at the code (and thru the judicious application of appropriate tools), I found at least 3 places that affected the server itself.So the difference between server performance and application performance can be summarized pretty much like this:</description>
					<guid isPermaLink="false">EE16D806-3048-55C9-43E85C7840560CD8</guid>
					
					<dc:date>2009-06-17T08:05:23-04:00</dc:date>
					<author>jrypkahauer@alagad.com (Jared Rypka-Hauer)</author>
				</item>
				
				<item>
					<title>Apache&apos;s Jmeter Part II - recording a test script with the proxy component</title>
					<link>http://www.alagad.com/go/blog-entry/apache-s-jmeter-part-ii-recording-a-test-script-with-the-proxy-component</link>
					<description> As a follow up to my previous post about Apache&apos;s Jmeter, today I will go over using the Jmeter proxy component to record your activities in Firefox and make a test plan. First thing we need to keep in mind as we build this plan, is our goal of actually simulating users. Sure, we could spin up a simple http sampler, setup a 40 thread group, and tell it to loop 100 times, but would this really simulate  user load?  Real users have pauses between their actions, they may use your site search with a variety of keywords, or they may just wander aimlessly.  You also may notice trends in your log files, where you have 2 or more different general types of users. Lets setup a scenario today to simulate 2 of your theoretical user groups defined as follows: 		Your site has an average of 100 concurrent users			65% of your users follow scenario A			35% of your users follow scenario B	</description>
					<guid isPermaLink="false">EC508F36-3048-55C9-43FB725C9421A72B</guid>
					
					<dc:date>2009-06-17T07:34:00-04:00</dc:date>
					<author>cpeterson@alagad.com (Chris Peterson)</author>
				</item>
				
				<item>
					<title>No Object Oriented Cookbooks Here</title>
					<link>http://www.alagad.com/go/blog-entry/no-object-oriented-cookbooks-here</link>
					<description> With all of the recent talk regarding object oriented development in ColdFusion, a common theme appears with developers attempting to make the jump that I have seen many times in the past.  You see comments like &quot;where are the OO tutorials&quot; or &quot;where can I find an OO book&quot;.  The problem that people don&apos;t seem to grasp here is that object oriented development is not something that you can just follow a check list for and be an expert at.  There is no step A, step B, now you have a world class object oriented application.  Imagine a carpenter who only has a hammer in his toolbox.  This carpenter can get quite a bit done with just that one tool, but to him, everything looks like a nail.  This is where procedural development is very useful and practical for getting things done.  For this carpenter, the hammer can take care of quite a few tasks - &quot;hammering&quot; them out quickly - just maybe not in the best way possible.</description>
					<guid isPermaLink="false">A69DB0AD-3048-55C9-4302D428819B5F0B</guid>
					
					<dc:date>2009-06-03T10:55:02-04:00</dc:date>
					<author>jchastain@alagad.com (Jeff Chastain)</author>
				</item>
				
				<item>
					<title>Adobe Flash Builder 4 &apos;Gumbo&apos; and Flash Catalyst In the Wild</title>
					<link>http://www.alagad.com/go/blog-entry/adobe-flash-builder-4-gumbo-and-flash-catalyst-in-the-wild</link>
					<description> Adobe just release Adobe Flash Builder 4 code name &apos;Gumbo&apos; and Flash
	    Catalyst on their labs website.  What are doing here?  Go grab it at:
		   http://labs.adobe.com/ 
		  You need more persuasion?  Here is some semi-accurate information on
	    all the new features:
		  Flash Builder 4 (formally Flex Builder)
		  While the layout of the application built on the Eclipse platform will
		    largely go unchanged.
		    There are a few new trinkets worth checking out. 
		    The new Flash Builder 4 has a new service inspector panel.  The tool 
		    should largely replace the need for a third party web debugging 
		    proxies like Charles.
		    Flash Builder 4 has a new unit testing panel.  Gumbo has engulfed the 
		    popular opensource Fluint unit testing framework and supports 
	    additional popuplar unit testing frameworks.</description>
					<guid isPermaLink="false">9C936B9A-3048-55C9-43276B5A6EBA4EC5</guid>
					
					<dc:date>2009-06-01T12:07:43-04:00</dc:date>
					<author> (Matt LeGrand)</author>
				</item>
				
				<item>
					<title>Cf.Objective() - Musings From a First Timer</title>
					<link>http://www.alagad.com/go/blog-entry/cf-objective--musings-from-a-first-timer</link>
					<description> Last week I found myself at the annual cf.Objective() conference in Minneapolis, MN. Being that this was my first time to attend a conference like this, I was unsure what to expect or what the experience would mean to me in the end.   Upon arriving at the Hyatt Regency (lovely hotel by the way), I immediately noticed there were several developer types sitting around in the lobby. At this point it also occurred to me that some of my Alagad compatriots might be two feet from me and I wouldn&apos;t know it. I had never met any of them in person except for my long time friend Jeff Chastain. As it turned out, one of them was an Alagad guy. How was I to know Jared is a big, burly, biker type? Let&apos;s just say his Facebook picture must be old. Very old. This same process continued in a nice &amp;quot;for.each&amp;quot; loop until I had met each of the guys with one notable exception. I think I would have recognized Doug Hughes without any help at all. I&apos;m not sure why, I just would have.</description>
					<guid isPermaLink="false">828A1520-3048-55C9-43349897CEB06C77</guid>
					
					<dc:date>2009-05-27T11:20:54-04:00</dc:date>
					<author>lvincent@alagad.com (Layne Vincent)</author>
				</item>
				
				<item>
					<title>Throwing Down the Guantlet</title>
					<link>http://www.alagad.com/go/blog-entry/throwing-down-the-guantlet</link>
					<description> 
Unless you live in a cave, you know that in the last few days another Object Oriented (OO) vs. procedural debate has flared up.  I thought this would be a great opportunity to discuss an attitude I have seen from some developers that mirrors the attitude I saw in quite a few people in my previous career.


For those who do not know, before becoming a developer, I spent 14 years as a paramedic.  One similarity I have noticed between my former and current careers is that you can never know enough.  There is always something new you can learn to make you better at your job.  Another similarity is that if you ever stop learning, well, then the job has passed you by.


I found that the best medics are the ones who would critique a call when it was done and try to find where they could have performed better and work on improving those skills.  I would like to think I was one of those medics.  Regardless of the outcome of the call, I always found at least one area where I did not preform as well as I may have wanted. Its easy to look at the patient outcome as the sole indicator of how the call went, but rarely was that a true portrayal of how the call went.
</description>
					<guid isPermaLink="false">8209A8B8-3048-55C9-439C079D07368430</guid>
					
					<dc:date>2009-05-27T08:44:06-04:00</dc:date>
					<author>sstroz@alagad.com (Scott Stroz)</author>
				</item>
				
				<item>
					<title>360 Flex Wrap Up</title>
					<link>http://www.alagad.com/go/blog-entry/360-flex-wrap-up</link>
					<description> 
		  I was really excited to have the opportunity to attend the 360 Flex conference in Indianapolis this past week.  For those that don&apos;t know 360 Flex is a medium size conference that focuses on the developer community and generally fosters a great deal of social communication.
              At 360 Flex adobe announced that their Flex Builder product would undergo a name change. (Read more here) The new name, &apos;Flash Builder&apos;, is intended to reduce confusion about what the product does and the platform it runs on.  The underlying Flex sdk will still maintain the &apos;Flex&apos; naming convention. </description>
					<guid isPermaLink="false">7E195B99-3048-55C9-43970EE0038029EF</guid>
					
					<dc:date>2009-05-26T02:05:50-04:00</dc:date>
					<author> (Matt LeGrand)</author>
				</item>
				
				<item>
					<title>cf.Objective 2009 - Web Application Project Management</title>
					<link>http://www.alagad.com/go/blog-entry/cf-objective-2009-web-application-project-management</link>
					<description> As promised, attached is the presentation I just finished up at cf.Objective this year.  This presentation was on using open source tools for web application project management.

This is my first time for this presentation, so I appreciate any feedback.  If there is enough interest, I would be glad to do this presentation againfor the online CFUG or some other venue.

This has been posted to SlideSix now .... http://slidesix.com/view/Web-Application-Project-Management-zPQda

Thanks again for the opportunity.</description>
					<guid isPermaLink="false">49D4DED0-3048-55C9-4382C2B003C76E43</guid>
					
					<dc:date>2009-05-16T11:20:34-04:00</dc:date>
					<author>jchastain@alagad.com (Jeff Chastain)</author>
				</item>
				
				<item>
					<title>cf.Objective 2009 - Taking Code Reuse to a Higher Level</title>
					<link>http://www.alagad.com/go/blog-entry/cf-objective-2009-taking-code-reuse-to-a-higher-level</link>
					<description> 
As promised, attached is the presentation I just finished up at cf.Objective this year.  This presentation was on using object oriented techniques and design patterns to take code reuse to the next level.  The premise here was to go beyond custom tags and user defined functions which are the norm for many ColdFusion developers and start to think about creating reusable systems.


This is my first time for this presentation, so I appreciate any feedback.  If there is enough interest, I would be glad to do this presentation againfor the online CFUG or some other venue. 


Thanks again for the opportunity. 


UPDATE: This has been posted to SlideSix now .... http://slidesix.com/view/Taking-Code-Reuse-to-a-Higher-Level 
</description>
					<guid isPermaLink="false">3F63B875-3048-55C9-430B90453D8944F2</guid>
					
					<dc:date>2009-05-16T10:17:39-04:00</dc:date>
					<author>jchastain@alagad.com (Jeff Chastain)</author>
				</item>
				
				<item>
					<title>Site Testing with Apache&apos;s Jakarta JMeter</title>
					<link>http://www.alagad.com/go/blog-entry/site-testing-with-apache-s-jakarta-jmeter</link>
					<description> Everyone test&apos;s their web sites before going live (right??), even if it just means that you click on the site after pushing it to production, but how do you simulate the large user count your production environment may see?  Apache&apos;s Jakarta Project has a product called JMeter that fits this bill nicely, though getting it working can be intimidating.  This post will walk you through setting up a basic web site test and where to configure the important bits with the latest JMeter release.
		 First, of course, you need to go download the latest JMeter binary release:
		http://jakarta.apache.org/site/downloads/downloads_jmeter.cgi
		On OS X you will need the binary file that ends in .tgz, on Windows grab the binary that ends in .zip. You will also need a JRE setup on your system (to test if you do, drop to a command / terminal prompt, and enter &apos;java -version&apos;.  If you get &apos;bad command or file name&apos;, go hit Sun&apos;s site and download the appropriate JVM / JRE)</description>
					<guid isPermaLink="false">364EA150-3048-55C9-4340F27CE7918410</guid>
					
					<dc:date>2009-05-12T03:45:17-04:00</dc:date>
					<author>cpeterson@alagad.com (Chris Peterson)</author>
				</item>
				
				<item>
					<title>SimTouch Multi-touch Simulator</title>
					<link>http://www.alagad.com/go/blog-entry/simtouch-multi-touch-simulator</link>
					<description> A while back I wrote an Adobe Air Application that simulates multi-touch events.  The goal of the application is to assist developers in their own development of multi-touch applications knowing that they might not have access to multi-touch hardware or that they might find a simulator more efficiant for testing during development.   The core benefit to using SimTouch is the transparent background allowing the application developer to have a better grasp of what he/she is &apos;touching&apos;. 
	    SimTouch works by simulating touch events and passing that information to other flash applications via a protocal called TUIO.   SimTouch uses the same xml format that FlOSC might use to translate OSC message to a TUIO object. SimTouch needs a simple socket server to relay the XML Socket message between applications. Typically on port 3000.
	    </description>
					<guid isPermaLink="false">3642AF35-3048-55C9-436E81DF250EC2B7</guid>
					
					<dc:date>2009-05-12T03:18:15-04:00</dc:date>
					<author> (Matt LeGrand)</author>
				</item>
				
				<item>
					<title>Using SQL Server &amp;quot;INSTEAD OF&amp;quot; Triggers</title>
					<link>http://www.alagad.com/go/blog-entry/using-sql-server-andquot-instead-ofandquot-triggers</link>
					<description> Recently on a project we found ourselves in a situation where we needed a way eliminate updates to tables when those updates were acting upon records that had not been altered. I know, your first thought is &amp;quot;just don&apos;t do the update if the records haven&apos;t changed&amp;quot;. That was our first thought as well. Unfortunately, that would have required significant refactoring of the application code and, in this case, that solution was just not appropriate. So a different approach was needed and we found it in the use of &amp;quot;INSTEAD OF&amp;quot; triggers.  Before I get into the use of &amp;quot;INSTEAD OF&amp;quot; triggers, let me do a little &amp;quot;Trigger 101&amp;quot; for you. In simplest possible terms, triggers wait for an action to be requested of the database and then act upon that action in a specified manner. Once an action is requested, SQL Server looks to see if a trigger exists and if so, it performs whatever code has been written into that trigger. Pretty straight-forward, huh?    So lets take a look at a simple trigger.  </description>
					<guid isPermaLink="false">11693BD4-3048-55C9-4375EE3C8831647F</guid>
					
					<dc:date>2009-05-05T02:43:26-04:00</dc:date>
					<author>lvincent@alagad.com (Layne Vincent)</author>
				</item>
				
				<item>
					<title>Getting Started With Enterprise Java is One Huge Pain</title>
					<link>http://www.alagad.com/go/blog-entry/getting-started-with-enterprise-java-is-one-huge-pain</link>
					<description> Over the last few months I&apos;ve been reading several books about Groovy, Spring, Maven, Hibernate and more.  I&apos;ve stated before on this blog that I&apos;m moving towards implementing my application&apos;s model in Groovy and using ColdFusion for the presentation tier for HTML applications or Spring&apos;s BlazeDS integration for Flex applications.  And now, with those few months of experience under my belt I can authoritatively say that Enterprise Java is a royal pain.   You see, I actually understand Java just fine.  I can read the language and, to me, it&apos;s fairly clear.  But, as with my German, I&apos;m much better at reading it than speaking it.  The reason isn&apos;t that I can&apos;t write the syntax, but that the supporting technologies are so amorphous and decentralized that they can simply be very difficult to learn.  Beyond that, they&apos;re often created with extreme flexibility in mind and that means more complexity.</description>
					<guid isPermaLink="false">11502AC6-3048-55C9-431E3A7FB1F787F8</guid>
					
					<dc:date>2009-05-05T11:06:56-04:00</dc:date>
					<author>dhughes@alagad.com (Doug Hughes)</author>
				</item>
				
				<item>
					<title>ArrayCollection or XML list of States and Countries</title>
					<link>http://www.alagad.com/go/blog-entry/arraycollection-or-xml-list-of-states-and-countries</link>
					<description> 
	    Seems like I&apos;m always trying to put my hands on an XML list of states or list of countries for some Flex project or another.  I&apos;m posting these here in hopes that I&apos;m not the only one looking for this information.  I used to have this xml posted on a server somewhere and I&apos;d just point a service at it, but now I have no idea where I posted it. 
	    
	      I&apos;m also posting both of these lists as ArrayCollections.  I&apos;ve found this method the easiest and most reusable.  I just instantiate the class and bind the view to it, for example:
	    
	      The StatesArrayCollection looks like this:
	    </description>
					<guid isPermaLink="false">04A1AC7B-3048-55C9-43624FF609A9E9A1</guid>
					
					<dc:date>2009-05-03T12:01:06-04:00</dc:date>
					<author> (Matt LeGrand)</author>
				</item>
				
				<item>
					<title>Find Alagad, Win Big!</title>
					<link>http://www.alagad.com/go/blog-entry/find-alagad-win-big</link>
					<description> Every year Alagad tries to do something to garner some interest during the conferences.  This year is no different.  We may have actually gone off the deep end a bit.  If you want to win an Amazon gift card, a Nintendo Wii, an iPod Touch, or a Mac Mini, you&apos;ll want to track down Alagad employees at CF.Objective() or CFUnited.  We&apos;ll have you answer a short survey and give you a raffle ticket.  The raffle drawing will be held on the third day of each conference.    Click here for more information.</description>
					<guid isPermaLink="false">EE0A3131-3048-55C9-43ACD68C6217AA79</guid>
					
					<dc:date>2009-04-28T02:43:47-04:00</dc:date>
					<author>dhughes@alagad.com (Doug Hughes)</author>
				</item>
				
		</channel>
	</rss>
	