<?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>CentreSource Interactive Agency Blog &#187; Web Development</title>
	<atom:link href="http://blog.centresource.com/category/development/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.centresource.com</link>
	<description>Web Development &#124; Nashville, TN</description>
	<lastBuildDate>Tue, 09 Mar 2010 16:39:00 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Have a seat: CentreSource launches NashvilleOfficeFurniture.com</title>
		<link>http://blog.centresource.com/2010/03/03/have-a-seat-centresource-launches-nashvilleofficefurniture-com/</link>
		<comments>http://blog.centresource.com/2010/03/03/have-a-seat-centresource-launches-nashvilleofficefurniture-com/#comments</comments>
		<pubDate>Wed, 03 Mar 2010 16:48:16 +0000</pubDate>
		<dc:creator>Morgan Zuehlke</dc:creator>
				<category><![CDATA[Interactive Strategy]]></category>
		<category><![CDATA[Marketing]]></category>
		<category><![CDATA[SEM]]></category>
		<category><![CDATA[Symfony]]></category>
		<category><![CDATA[client spotlight]]></category>
		<category><![CDATA[sitemason]]></category>

		<guid isPermaLink="false">http://blog.centresource.com/?p=1515</guid>
		<description><![CDATA[We recently launched NashvilleOfficeFurniture.com, the Web site for Office Furniture &#038; Related Services (OFRS). ]]></description>
			<content:encoded><![CDATA[<p><a  href="http://www.nashvilleofficefurniture.com/"><img src="http://blog.centresource.com/wordpress/../wp-content/uploads/2010/02/OFRS-300x212.png" alt="OFRS" title="OFRS" width="300" height="212" class="alignright size-medium wp-image-1517" /></a>We recently launched the Web site for  <a  href="http://www.nashvilleofficefurniture.com"> Office Furniture &amp; Related Services</a> (OFRS). As a merchant of new, used and refurbished office furnishings, we built the site so that it would allow visitors to drill down to exactly the product that fits their needs. For OFRS, the site serves as a 24-hour, 7-days a week salesperson. As part of our line of Management services, we will also be working with OFRS to create a powerful SEM campaign to drive highly-targeted leads to their Web site.</p>
<p>The site connects to a proprietary inventory management platform, but most of the heavy lifting for the catalog and content pages are built on the <a  href="http://symfony-project.org">Symfony PHP framework</a>. It also integrates with the content management system provided by Nashville-based <a  href="http://www.sitemason.com">SiteMason</a>.</p>
<p>Check out the site at <a  href="http://www.nashvilleofficefurniture.com">NashvilleOfficeFurniture.com</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.centresource.com/2010/03/03/have-a-seat-centresource-launches-nashvilleofficefurniture-com/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hope for Haiti: CentreSource launches new site for Trinity/HOPE</title>
		<link>http://blog.centresource.com/2010/02/09/hope-for-haiti-centresource-launches-new-site-for-trinityhope/</link>
		<comments>http://blog.centresource.com/2010/02/09/hope-for-haiti-centresource-launches-new-site-for-trinityhope/#comments</comments>
		<pubDate>Tue, 09 Feb 2010 18:30:58 +0000</pubDate>
		<dc:creator>Stephen Yeargin</dc:creator>
				<category><![CDATA[Company News]]></category>
		<category><![CDATA[Interactive Strategy]]></category>
		<category><![CDATA[Web Design]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[client spotlight]]></category>
		<category><![CDATA[non-profit]]></category>
		<category><![CDATA[Web design]]></category>

		<guid isPermaLink="false">http://blog.centresource.com/?p=1485</guid>
		<description><![CDATA[Devastation. Tragedy. Hopeless. Those were the words used to describe the recent earthquakes that struck the island of Haiti on January 12 near Port-au-Prince. ]]></description>
			<content:encoded><![CDATA[<div class="alignright"><a  href="http://trinityhope.org/"><img src="http://blog.centresource.com/wp-content/uploads/2010/02/HOPE-300x210.png" alt="Trinity/HOPE" title="Trinity/HOPE" width="300" height="210" class="size-medium wp-image-1489" /></a></div>
<p>Devastation. Tragedy. Hopeless. Those were the words used to describe the recent earthquakes that <a  href="http://trinityhope.org/news/updates/news-trinityhope">struck the island of Haiti on January 12 near Port-au-Prince</a>. To a nation that that was already struggling with poverty and trying to meet the basic needs of its people, the earthquake magnified the crisis for the world to see. Like many companies in Nashville, CentreSource matched its employees&#8217; donations to give $500 to the <a  href="http://www.unicefusa.org/">UNICEF</a> organization to help with relief efforts.</p>
<p>Late last year, we were approached by <a  href="http://trinityhope.org/">Trinity/HOPE</a>, a feeding program aimed at providing meals for school children and teachers so that they may be agents of positive change in their communities and help lift up a nation. Their existing Web site did not effectively tell of the mission trips, year-round campaigns and coordinated efforts of partnering organizations to sponsor schools across the island. The new site builds upon Trinity/HOPE&#8217;s reputation as a spirit-lead organization that makes a difference in the lives of Haiti&#8217;s children, one bowl of rice and beans at a time.</p>
<p>Visit their site at <a  href="http://trinityhope.org/">trinityhope.org</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.centresource.com/2010/02/09/hope-for-haiti-centresource-launches-new-site-for-trinityhope/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>More than a Facelift: Nashville Centre for Laser and Facial Surgery</title>
		<link>http://blog.centresource.com/2010/01/21/more-than-a-facelift-nashville-centre-for-laser-and-facial-surgery/</link>
		<comments>http://blog.centresource.com/2010/01/21/more-than-a-facelift-nashville-centre-for-laser-and-facial-surgery/#comments</comments>
		<pubDate>Thu, 21 Jan 2010 14:51:11 +0000</pubDate>
		<dc:creator>Morgan Zuehlke</dc:creator>
				<category><![CDATA[Company News]]></category>
		<category><![CDATA[Content]]></category>
		<category><![CDATA[Planning]]></category>
		<category><![CDATA[Symfony]]></category>
		<category><![CDATA[Web Design]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[cosmetic surgery]]></category>
		<category><![CDATA[hyperwords]]></category>
		<category><![CDATA[Nashville]]></category>

		<guid isPermaLink="false">http://blog.centresource.com/?p=1243</guid>
		<description><![CDATA[We recently launched a new site for Nashville Center for Laser and Facial Surgery, and developed a few content tagging tools along the way.]]></description>
			<content:encoded><![CDATA[<p><a  href="http://www.drbiesman.com"><img src="http://blog.centresource.com/wordpress/../wp-content/uploads/2009/12/Nashville-Centre-for-Laser-and-Facial-Surgery-300x199.png" alt="Nashville Centre for Laser and Facial Surgery" title="Nashville Centre for Laser and Facial Surgery" width="300" height="199" class="alignright size-medium wp-image-1294" /></a>We recently launched a new site for <a  href="http://www.drbiesman.com">Nashville Center for Laser and Facial Surgery</a>. The practice is lead by Dr. Brian S. Biesman, a world-renowned authority on cosmetic, reconstructive, and laser surgery. For the site, the goal was not only to tell about Dr. Biesman&#8217;s practice, but to serve as a repository for helpful resources on a wide range of industry topics, including his own &#8220;Face Facts&#8221; resources. It was a lot of content &#8212; nearly 150 articles on research, services and treatments &#8212; and our goal was to make it user-friendly and easy to navigate. Think <a  href="http://wikipedia.org/">Wikipedia</a>.</p>
<p>With all of that information, managing the taxonomy terms and categories could easily get out of hand. Working with his staff, we created a <a  href="http://symfony-project.org">Symfony</a> module dubbed &#8220;HyperWords&#8221; (the name is a work in progress) that scans the page content and recommends the appropriate taxonomy. Now, when a new page is created, it suggests to the author relevant categories and tags.</p>
<p>The new site is easy for prospective clients to navigate thanks to a clear strategy and professional design. The site is also easy for Dr. Biesman&#8217;s staff to manage thanks to innovations like HyperWords. We call that more than just a facelift.</p>
<p>Visit the site at <a  href="http://www.drbiesman.com">http://www.drbiesman.com</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.centresource.com/2010/01/21/more-than-a-facelift-nashville-centre-for-laser-and-facial-surgery/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Code That Saves The Day: Symfony Admin Generator</title>
		<link>http://blog.centresource.com/2010/01/13/code-that-saves-the-day-symfony-admin-generator/</link>
		<comments>http://blog.centresource.com/2010/01/13/code-that-saves-the-day-symfony-admin-generator/#comments</comments>
		<pubDate>Wed, 13 Jan 2010 19:07:27 +0000</pubDate>
		<dc:creator>Brent Shaffer</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Symfony]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[Code that Saves the Day]]></category>

		<guid isPermaLink="false">http://blog.centresource.com/?p=1392</guid>
		<description><![CDATA[Every day at CentreSource brings with it a new challenge. With every challenge comes the opportunity to try a unique approach.]]></description>
			<content:encoded><![CDATA[<p>Every day at CentreSource brings with it a new challenge. With every challenge comes the opportunity to try a unique approach. We all know sailing the interweb can be stormy at best. But if you keep your eyes open, you will find code that can be a lighthouse to your sinking ship. Today&#8217;s Code that Saves the Day™:<strong> The Symfony Admin Generator!</strong></p>
<p>For those who don&#8217;t know, <a  href="http://www.symfony-project.org">Symfony</a> is an MVC web framework built on PHP. Symfony is a great tool to use for custom development, and is very similar to the als0-opensource MVC framework Ruby on Rails. The <a  href="http://www.symfony-project.org/screencast/admin-generator">Symfony Admin Generator</a> is a tool connected to a command-line task that allows you to easily spin up editable interfaces for your website&#8217;s administrators. Do you have a table for contacts in your database? Type a single command into your terminal&#8230;</p>
<blockquote><p><tt>$: php symfony doctrine:generate-admin backend Contacts</tt></p></blockquote>
<p>&#8230;and presto! Your users can filter, sort, view, edit, and create new contacts! Yes, it really is that simple. There are a variety of customizations available (some of which could use healthier documentation, which extends beyond the scope of this post), and you can read about those <a  href="http://www.symfony-project.org/book/1_2/14-Generators">here</a>.</p>
<h3>Problem: Client demands additional functionality for administrative purposes.</h3>
<p><em>example:</em> &#8220;We want to easily export data from the tables in our database. We want to customize exported fields per export, change column labels, and make other fields unable to be exported&#8221;.</p>
<h3>Mediocre Solution: Override the generated admin module with code to export.</h3>
<p><em>explanation: </em>While not a terrible alternative, this is certainly not the best one. The admin generator places most of the generated code in cache, so a good way to customize it is to override the generated files. This is great for small customizations, but <u>not optimal for potentially reusable code!</u> Allowing for any table in your application to be exported is a pretty tempting solution, yes? Think about it. What if you could do this?</p>
<blockquote><p><tt>$: php symfony doctrine:generate-admin backend Contacts --theme=export</tt></p></blockquote>
<p>And have a fully generated export interface at your disposal? Pretty slick, I&#8217;d say. Which brings us to the:</p>
<h3>Better Solution: Customize the admin generator itself (as opposed to the generated code).</h3>
<p>That&#8217;s right! We get to write code that writes code! Nervous? Scared? Envisioning tiny software bugs slowly infecting every part of your application? Don&#8217;t be! It&#8217;s easy. Now I know you&#8217;re salivating. </p>
<p>The admin generator is contained in Symfony core. I used the doctrine version, because we&#8217;re pulling directly from the database. In the <tt>sfDoctrinePlugin</tt>, copy the files in <tt>data/generator/sfDoctrineModule/admin</tt> into your own data directory (I used the path <tt><a  class="thickbox" href="http://blog.centresource.com/wp-content/uploads/2010/01/Screen-shot-2010-01-11-at-9.35.40-AM.png" target="_blank" title="The proper path for your custom admin generator theme in your Symfony project">data/generator/sfDoctrineModule/export</a></tt> in my project&#8217;s root directory. The directory after <tt>sfDoctrineModule</tt> is the name of your theme). There are three directories: parts, skeleton, and templates. <em>Skeleton </em>is what gets generated outside of cache into the project itself. <em>Template </em>is what is generated INTO cache. <em>Parts </em>contains all your files you do NOT want to copy over into cache or the project, but you need for organizational purposes.</p>
<p>I chose to override the <tt>sfModelGeneratorConfiguration</tt> class to give myself more flexibility when customizing. The <tt>sfModelGeneratorConfiguration</tt> class parses the <tt>generator.yml</tt> file, which is what allows the developers to tweak the generated code to their specifications without having to copy over/write new code. In my admin generator, a user can<a  class="thickbox" href="http://blog.centresource.com/wp-content/uploads/2010/01/Screen-shot-2010-01-11-at-9.46.08-AM.png" target="_blank" title="generator.yml configuration for export admin generator"> customize their export fields</a> via the generator.yml file.</p>
<p>We now have a flexible admin generator on demand that not only exports the fields of a database table, but allows our user to customize which fields are appropriate to show to the end user. On top of this, the system allows the user to declare fields to export that <em>don&#8217;t even exist on the object!</em> Lets say we want to have a field exported called &#8220;timespan&#8221;, which symbolizes the duration the user has been in the system. This is going to be a calculation of the current date minus the date the user was added to the system. All we need to do is add &#8220;timespan&#8221; to the <em>fields</em> option in <tt>generator.yml</tt>, and add a method to our Contact model called <tt>getTimespan()</tt> that returns the appropriate string. If you still haven&#8217;t salivated, then maybe this will help: The export interface feeds off the sorting/filtering applied by the user in the main view, <em>and </em>allows the users to rename columns and deselect unwanted columns appropriately for their export.</p>
<p>We now have an out-of-the-box exporting solution for the following deliverables for our end-user:</p>
<ul>
<li>Filtering for Export result set</li>
<li>Sorting for Export result set</li>
<li>Exported column naming</li>
<li>Exported column selection</li>
</ul>
<p>And the following deliverables for our developers:</p>
<ul>
<li>Customization of available fields for exporting</li>
<li>Customizing of filters/sorting capability (pulls from existing admin-generator functionality)</li>
<li>Addition of non-real export fields</li>
<li>Easy extension of the admin generator
	</li>
<li><em>all of this functionality is object-oriented, normalized, and easily overridden or extended.</em></li>
<li>Extended admin generator functionality<br />
<em>The export admin generator adds several helpful methods such as <tt>hasExport</tt> and <tt>isFiltered</tt> to the classic admin generator. It also adds a flash message &#8220;Your results are currently filtered, click HERE to unfilter them&#8221; to any list view.</em></li>
</ul>
<p>You can find all of this code <a  href="http://github.com/bshaffer/Symfony-Snippets/tree/master/AdminGeneratorExport">here</a>. Now go forth, and <a  href="http://www.strangebuzz.com/index.php/2008/04/03/31-symfony-10-tutorial-extending-the-admin-generator">EXTEND THY ADMIN GENERATOR</a>!!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.centresource.com/2010/01/13/code-that-saves-the-day-symfony-admin-generator/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>&#8220;I feel the need&#8230; the need for speed!&#8221; Part I</title>
		<link>http://blog.centresource.com/2010/01/06/i-feel-the-need-the-need-for-speed-part-i/</link>
		<comments>http://blog.centresource.com/2010/01/06/i-feel-the-need-the-need-for-speed-part-i/#comments</comments>
		<pubDate>Wed, 06 Jan 2010 14:30:58 +0000</pubDate>
		<dc:creator>Chip Hayner</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Usability]]></category>
		<category><![CDATA[Web Design]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[chrome]]></category>
		<category><![CDATA[chrome os]]></category>
		<category><![CDATA[dns]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[speed]]></category>
		<category><![CDATA[webmaster-tools]]></category>

		<guid isPermaLink="false">http://blog.centresource.com/?p=1346</guid>
		<description><![CDATA[Speed Obsession: Google has been busy releasing various tools to help with user's experiences on the web.]]></description>
			<content:encoded><![CDATA[<p>For anyone (like myself) who has been religiously following Google and the amazing things that they have done to improve people&#8217;s experience on the web, you would have noticed a pattern in December 2009 of &#8220;<a  title="Google Speed" href="http://bit.ly/GmmL4" target="_blank">speed</a>.&#8221;  The reasons for their speed obsession are clearly justified; a user&#8217;s experience on the web is made or broken by the speed at which they are able to browse, including the initial page load, the responsiveness of the interactive components, and the number of clicks to get to retrieve their desired information.</p>
<p>As such, Google has been busy releasing various tools to help with user&#8217;s experiences on the web:</p>
<p><strong><a  title="Google Chrome" href="http://bit.ly/2qpIEK" target="_blank">Google Chrome</a></strong></p>
<blockquote><p><a  title="Google Chrome" href="http://bit.ly/2qpIEK" target="_blank"></a>Ok, so this technically came out for Windows in 2008, but was released fully cross-platform in 2009.  Chrome (and its subsequent big brother &#8220;Chrome OS&#8221;) is an open-source browser that borrows components from Apple&#8217;s WebKit and Mozilla&#8217;s Firefox (both open-source projects) and aims to &#8220;add value for users and, at the same time, help drive innovation on the web.&#8221; As of January 4, 2010, Chrome had <a href="http://bit.ly/91JWty" target="_blank">officially passed Apple&#8217;s Safari browser</a> to become the 3rd most popular browser behind Internet Explorer and Firefox.</p></blockquote>
<p><strong><a  title="Real-time Search" href="http://bit.ly/8FntjZ" target="_blank">Real-Time Search</a></strong></p>
<blockquote><p><a  title="Real-time Search" href="http://bit.ly/8FntjZ" target="_blank"></a>As Twitter has grown in popularity, it has quickly become the first source for breaking news, mostly due to the ease and speed with which you can post information.  In Q4 2009, Google signed a deal with Twitter, Facebook, MySpace, and FriendFeed (among others) to allow search results from each of their sites to be propagated into the Google search result page.  The benefit of this is that one can get to-the-second results of what they&#8217;re looking for &#8212; all in one place.</p></blockquote>
<p><strong><a title="Google Speed" href="http://code.google.com/speed/" target="_blank">Webmaster Tools</a></strong></p>
<blockquote><p><a  title="Google Speed" href="http://code.google.com/speed/" target="_blank"></a>While improving the end-users&#8217; tools can greatly improve usability and performance, Google acknowledged that individual site optimization is key to a successful user experience by releasing a variety of webmaster tools to help web developers identify slow parts of their site, and provide tips on how to improve those areas. One group of tools was added to Google Analytics under the new &#8220;<a title="Google Site Performance" href="http://bit.ly/8G9zMI" target="_blank">Site Performance</a>&#8221; section, that gives an analysis of your site&#8217;s performance relative to the rest of the web, as well as particular suggestions on improving page speed. This is particularly helpful in identifying over-arching tips and tricks that can improve the loading speed of your site as a whole.</p>
<p>The second tool is a Firefox extension called &#8220;<a  title="Google Page Speed" href="http://bit.ly/MjqPU" target="_blank">Page Speed</a>&#8221; that takes the analysis provided in the &#8220;Site Performance&#8221; section, and moves it to the browser, allowing you to view specific recommendations on a page-by-page basis. This is particularly helpful in identifying very specific ways to improve the speed of a particular page that might be loading slower than others on your site.</p>
<p>The third tool is a Chrome extension called &#8220;<a  title="Google Speed Tracer" href="http://bit.ly/7T8ZHp" target="_blank">Speed Tracer</a>.&#8221; This tool is more geared towards the performance of web applications, focusing less on the initial load time, and more on the strain that using the website itself puts on the user&#8217;s browser. Using Speed Tracer, you can pinpoint exactly what scripts, actions, or files are causing your website to appear to slow down.</p></blockquote>
<p><strong><a  title="Google Public DNS" href="http://bit.ly/4ovCFI" target="_blank">Public DNS</a></strong></p>
<blockquote><p><a title="Google Public DNS" href="http://bit.ly/4ovCFI" target="_blank"></a>The <s>nerdiest</s> most technical tool that Google announced was their hosting of a Public DNS server. DNS, or Domain Name System, is an essential part of the web that helps translate domain names (&#8221;blog.centresource.com&#8221;) into the unique Internet Protocol (IP) addresses of the computers where the website files live.  By providing a Public DNS, Google plans to not only optimize the hundreds of DNS requests that the average user makes every day, but also to gather data about user&#8217;s browsing patterns &#8220;to improve the browsing experience for Internet users globally.&#8221;</p></blockquote>
<p><em>[ To be continued ... Part II will include our findings on particular areas prone to slow down your website and what you can do to improve your website's performance from small sites to enterprise applications ]</em></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.centresource.com/2010/01/06/i-feel-the-need-the-need-for-speed-part-i/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tools That Make My Job Easier</title>
		<link>http://blog.centresource.com/2010/01/04/tools-that-make-my-job-easier/</link>
		<comments>http://blog.centresource.com/2010/01/04/tools-that-make-my-job-easier/#comments</comments>
		<pubDate>Mon, 04 Jan 2010 14:00:53 +0000</pubDate>
		<dc:creator>Travis Roberts</dc:creator>
				<category><![CDATA[Doctrine]]></category>
		<category><![CDATA[Drupal]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Symfony]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[orm]]></category>
		<category><![CDATA[vim]]></category>
		<category><![CDATA[vmware]]></category>

		<guid isPermaLink="false">http://blog.centresource.com/?p=1255</guid>
		<description><![CDATA[There are a number of tools and tricks that I use to make my job easier. Here are a few of them.]]></description>
			<content:encoded><![CDATA[<h3>Bash Aliases</h3>
<p>Working on a Mac, I spend a lot of my time in Terminal (the command-line utility). This is where I do all of my interaction with my local databases, the central Subversion repository, and issue various system commands. Some of these commands can get quite long and are time consuming to type out. That&#8217;s where aliases come to the rescue!</p>
<p>On a Mac, you can simply edit a file in your home directory called either <tt>.bash_profile</tt> or <tt>.bash_login</tt> (this is a hidden file, so you&#8217;ll have to edit it from the command line). Adding an alias is simple. Let&#8217;s say you have a long command like <tt>php symfony doctrine:build --all --and-load=data/fixtures/</tt> (this is the command to build/rebuild the ORM components of a symfony site). That&#8217;s a long command, and one I don&#8217;t want to type out every time I have to run it. The solution, add the following alias:</p>
<p><tt>alias dbal="php symfony doctrine:build --all --and-load=data/fixtures/"</tt></p>
<p>Now, instead of typing out that long statement, you only have to type <tt>dbal</tt> as it is now aliased to the command. </p>
<h3>Textmate Snippets</h3>
<p>I do all of my coding in Textmate, which is the absolute best text editor if you are on a Mac (apologies to the <tt>vim</tt> fanboys). Textmate snippets work much in the same way as the aliases I mentioned above. They are shortcuts for pasting in a block of code or performing some function, and there are a LOT of them. I&#8217;m constantly finding new shortcuts that I didn&#8217;t know about. </p>
<p>All snippets are kept in what Textmate refers to as &#8220;bundles&#8221;. You can get an HTML bundle, a Subversion bundle, even a Haskell bundle. The textmate Subversion repository houses all of these bundles, which you can peruse and download at your leisure at <a  href="http://svn.textmate.org/trunk/Bundles/">http://svn.textmate.org/trunk/Bundles/</a></p>
<h3>VMware Fusion</h3>
<p>Fusion is a Mac application that lets you run Microsoft Windows (or Linux) on your Mac. It&#8217;s great for cross-browser testing, because I can have multiple Windows instances. I have an instance for Internet Explorer 6 testing, and a separate instance for testing with Internet Explorer 7 and 8. This is a big time-saver over having to use a completely different computer or several computers to do cross-browser testing of Web sites. </p>
<h3>Apple Spaces</h3>
<p>Apple added the Spaces application for creating virtual desktops to the Leopard version of their Mac OS X operating system. It was one of the changes that I most looked forward to. Basically, this allows you to group application windows onto different virtual &#8220;desktops&#8221;. I have five desktops: one for chat windows (Adium, IRC, Yammer), one for browsing, one for coding, one for email, and one for Photoshop or VMware Fusion. Having only one or two windows on each desktop drastically cuts down on the clutter and helps me navigate between applications much easier. </p>
<h3>Google and Stack Overflow</h3>
<p>You may think Google is a no-brainer but I mentioned it because, while it is helpful for finding information, you really need to know HOW to search to get what you want. That might be a topic for a whole separate blog post, but it makes a big difference in the information that is returned. While keywords are important for the search. Also try searching for your entire question (like &#8220;how to add symfony form validation&#8221;). Chances are, someone has already asked that exact same question, and you can find the post where it was answered. </p>
<p>Stack Overflow (<a  href="http://stackoverflow.com">stackoverflow.com</a>) is another great resource for programming questions. It&#8217;s a forum for asking technical questions and getting answers from other members. If you can&#8217;t find an existing answer to you question, you can ask the masses and usually receive at least one answer within a few hours. I&#8217;ve used this site several times, and the quality of the answers I&#8217;ve received have always been very high.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.centresource.com/2010/01/04/tools-that-make-my-job-easier/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New Year&#8217;s Resolution: Update Your Browser</title>
		<link>http://blog.centresource.com/2009/12/29/new-years-resolution-update-your-browser/</link>
		<comments>http://blog.centresource.com/2009/12/29/new-years-resolution-update-your-browser/#comments</comments>
		<pubDate>Tue, 29 Dec 2009 13:32:31 +0000</pubDate>
		<dc:creator>Stephen Yeargin</dc:creator>
				<category><![CDATA[Usability]]></category>
		<category><![CDATA[Web Design]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[browser]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[internet explorer]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[safari]]></category>

		<guid isPermaLink="false">http://blog.centresource.com/?p=1241</guid>
		<description><![CDATA[Google interviews a number of people in Times Square to see if they can answer the basic question: What is a Browser? When it comes to the Internet, one of the single most integral pieces of the experience often gets overlooked.]]></description>
			<content:encoded><![CDATA[<p>You have likely already seen <a  href="http://www.youtube.com/watch?v=o4MwTvtyrUQ">this video</a>. Google interviews a number of people in Times Square to see if they can answer the basic question: What is a Browser? Less than eight percent guessed correctly, and you can be reasonably sure that figure translates well into the general public. When it comes to the Internet, one of the single most integral pieces of the experience often gets overlooked.</p>
<p>I say that because of what other numbers tell us. Outside of our wonderful tech-filled bubble, <a  href="http://en.wikipedia.org/wiki/Usage_share_of_web_browsers">only a small percentage of Internet users keep their browsers up to date</a> with the latest releases. A significant number of them still use Internet Explorer 6, a browser released on August 27th of 2001. Let me repeat that for emphasis &#8212; there are Internet users with an <em>eight years old</em> browser. We as a society typically do not keep our cars (or spouses; see &#8216;divorce rates&#8217;) around for that long, why on earth would we hang onto something that can be updated <em>for free</em>?</p>
<p>There are two reasons for keeping &#8220;old&#8221; browsers around. The first is &#8220;because we have to.&#8221; Some institutions bought in so whole-heartedly into the nifty-yet-proprietary features that IE6 brought with it that it is cost prohibitive to test and fix their systems to work with any other browser, even Microsoft&#8217;s latest offerings. The much maligned &#8220;box model&#8221; that IE6 uses in its rendering engine can turn normal Web sites into useless piles of text and images. Web designers by and large <em>despise</em><a  href="#footnote-1">*</a> fixing IE6 issues. The outlook for this group is a bit bleak: until money is invested in freeing systems from the IE6 shackles, an eight year-old browser will continue to be one that we have to contend with and work around.</p>
<p>The second reason for keeping older browsers around is simply not knowing an alternative. As I said earlier, an Internet browser by its very nature is supposed to sit quietly in the background while you interact with the Web sites that it retrieves for you. The only time you are reminded that there is a browser there at all is when something goofs up. Keeping the browser updated is a lot like organizing the garage or taking down the Christmas lights &#8212; sure, it needs to happen, but what is it hurting right now?</p>
<p>The answer: it can be hurting a lot. Older browsers are no longer supported by the companies that made them, and are often the target of malicious attacks on the Web. It follows a simple pattern that shows that the longer a browser has been available, the more susceptible it is to thieves exploiting security holes to steal your personal information or otherwise use your connection as a cover for other attacks. You will see a lot of debate over who has the fastest or most secure browser. We will save that for another time. More importantly than whose browser you use is whether you have updated to the latest version.</p>
<p>Add it to your list of New Year&#8217;s resolutions. It will probably be a lot easier to do than some of the other things you have put on it.</p>
<h3>Popular browsers:</h3>
<ul>
<li><a  href="http://www.microsoft.com/windows/Internet-explorer/">Microsoft Internet Explorer</a> (Windows)</li>
<li><a  href="http://www.apple.com/safari/">Apple Safari</a> (Mac, Windows)</li>
<li><a  href="http://www.mozilla.com/firefox/">Mozilla Firefox</a> (Mac, Windows, Linux)</li>
<li><a  href="http://www.google.com/chrome">Google Chrome</a> (Mac, Windows, Linux)</li>
</ul>
<p><small><em><span id="footnote-1">*</span> Editor: The decorum of this blog does not allow us to run the first string verbs and adjectives that came to mind.</em></small></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.centresource.com/2009/12/29/new-years-resolution-update-your-browser/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Delivered: OHL launches three new Web properties</title>
		<link>http://blog.centresource.com/2009/12/21/delivered-ohl-launches-three-new-web-properties/</link>
		<comments>http://blog.centresource.com/2009/12/21/delivered-ohl-launches-three-new-web-properties/#comments</comments>
		<pubDate>Mon, 21 Dec 2009 19:40:20 +0000</pubDate>
		<dc:creator>Shaun Jackson</dc:creator>
				<category><![CDATA[Company News]]></category>
		<category><![CDATA[Interactive Strategy]]></category>
		<category><![CDATA[Marketing]]></category>
		<category><![CDATA[Planning]]></category>
		<category><![CDATA[Web Design]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[client spotlight]]></category>
		<category><![CDATA[launch]]></category>
		<category><![CDATA[logistics]]></category>

		<guid isPermaLink="false">http://blog.centresource.com/?p=1306</guid>
		<description><![CDATA[When a leader in global supply chain solutions contacted us about overhauling their Web site, our top priority was to make sure that we delivered on their expectations.]]></description>
			<content:encoded><![CDATA[<p><a  href="http://www.ohl.com"><img class="alignright size-medium wp-image-1308" title="OHL" src="http://blog.centresource.com/wordpress/../wp-content/uploads/2009/12/OHL-300x199.png" alt="OHL" width="300" height="199" /></a>When a leader in global supply chain solutions contacted us about overhauling their Web site, our top priority was to make sure that we delivered on their expectations. That is why we are proud to announce the launch of the new <a  href="http://www.ohl.com">OHL.com</a>,  <a  href="http://www.excellence.ohl.com/">OHL Excellence</a> and the <a  href="http://media.ohl.com/">OHL Media Center</a>.</p>
<p><a  href="http://www.ohl.com/">Ozburn-Hessey Logistics (OHL)</a> specializes in third party logistics (3PL) services, meaning that they partner with other businesses to meet their supply chain demands on a rapidly scalable platform. Our goal for the site was to communicate nearly 60 years of experience in a way that appeals to logistics decision makers. One of the ways that we achieved this is by producing a video that you can view right on their home page. The video features two people representing very different businesses, but one shared need &#8212; a partner for their global distribution network.</p>
<p>The OHL Excellence and Media Center sites were created to cater to the specific needs of different segments of visitors to the site. <a  href="http://www.excellence.ohl.com/">Excellence</a> highlights OHL&#8217;s mission and values, corporate culture and awards with which they have been honored for being a global leader in their marketplace. The <a  href="http://media.ohl.com/">Media Center</a> serves as a central location to find out about news and events for the company.</p>
<p>Visit the site at <a  href="http://www.ohl.com">http://www.ohl.com</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.centresource.com/2009/12/21/delivered-ohl-launches-three-new-web-properties/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dive In! New Ocean Futures Society site launches</title>
		<link>http://blog.centresource.com/2009/12/17/dive-in-new-ocean-futures-society-site-launches/</link>
		<comments>http://blog.centresource.com/2009/12/17/dive-in-new-ocean-futures-society-site-launches/#comments</comments>
		<pubDate>Thu, 17 Dec 2009 13:00:21 +0000</pubDate>
		<dc:creator>Aaron Briggs</dc:creator>
				<category><![CDATA[Content]]></category>
		<category><![CDATA[Interactive Strategy]]></category>
		<category><![CDATA[Marketing]]></category>
		<category><![CDATA[Miscellaneous]]></category>
		<category><![CDATA[Planning]]></category>
		<category><![CDATA[Web Design]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[client spotlight]]></category>
		<category><![CDATA[launch]]></category>
		<category><![CDATA[non-profit]]></category>

		<guid isPermaLink="false">http://blog.centresource.com/?p=1246</guid>
		<description><![CDATA[We just wrapped up work on a site that we did for Ocean Futures Society, a non-profit marine conservation and...]]></description>
			<content:encoded><![CDATA[<p><a  href="http://www.oceanfutures.org"><img src="http://blog.centresource.com/wordpress/../wp-content/uploads/2009/12/Ocean-Futures-Society-300x208.png" alt="Ocean Futures Society" title="Ocean Futures Society" width="300" height="208" class="alignright size-medium wp-image-1274" /></a>We just wrapped up work on a site that we did for <a  href="http://www.oceanfutures.org">Ocean Futures Society</a>, a non-profit marine conservation and education organization. The group&#8217;s chairman and spokesman is Jean-Michel Cousteau, son of the legendary  ocean explorer Jacques Cousteau. OFS serves as a “Voice for the Ocean” by communicating in all media the critical bond between people and the sea and the importance of wise environmental policy.</p>
<p>What makes this site different? We had the pleasure of working with photographer Carrie Vonderhaar to really bring the nautical look and feel to the Web. Our strategy from the beginning was to let her photography shine throughout the site to help create a unique user experience. The older site lacked a CMS and was spread out over several domains. Now, updates to the latest environmental news and information comes at the click of a mouse from anywhere in the world.</p>
<p>The site also tracks the OFS team on their <a  href="http://oceanfutures.org/exploration/expeditions">expeditions</a> around the globe, and a new Live Events section will bring the experience right to you through an integration with <a  href="http://www.ustream.tv/">Ustream</a>. Registered members can also download ringtones and wallpapers for their mobile phones. Users that register on the site are simultaneously added and updated through the <a  href="http://www.salsacommons.org/">Democracy In Action&#8217;s Salsa</a> supporter management platform.</p>
<p>Visit the site at <a  href="http://www.oceanfutures.org">http://www.oceanfutures.org</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.centresource.com/2009/12/17/dive-in-new-ocean-futures-society-site-launches/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Web Round-up: Cool Tools Edition</title>
		<link>http://blog.centresource.com/2009/12/15/web-round-up-cool-tools-edition/</link>
		<comments>http://blog.centresource.com/2009/12/15/web-round-up-cool-tools-edition/#comments</comments>
		<pubDate>Tue, 15 Dec 2009 14:30:32 +0000</pubDate>
		<dc:creator>Morgan Zuehlke</dc:creator>
				<category><![CDATA[Interactive Strategy]]></category>
		<category><![CDATA[Web Design]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[helpful-websites]]></category>

		<guid isPermaLink="false">http://blog.centresource.com/?p=1259</guid>
		<description><![CDATA[From time to time, we like to share what we have found interesting on the Web. Take a look at these and let us know what you think.]]></description>
			<content:encoded><![CDATA[<p><em>From time to time, we like to share what we have found interesting on the Web. Take a look at these and let us know what you think &#8212; Good? Bad? Useful? Found something better? Let us know in the comments section!</em></p>
<p><strong>fontcapture</strong><br />
<a  href="http://www.fontcapture.com/">http://www.fontcapture.com/</a><br />
Create a font from your own handwriting. No software required. All you need is a printer and a scanner &#8211; and it&#8217;s free!</p>
<p><strong>Gliffy</strong><br />
<a  href="http://www.gliffy.com">http://www.gliffy.com</a><br />
With Gliffy online diagram software, you can easily create professional-quality flowcharts, diagrams, floor plans, technical drawings, wireframes, and more.</p>
<p><strong>HTML to PDF</strong><br />
<a  href="http://www.htm2pdf.co.uk/">http://www.htm2pdf.co.uk/</a><br />
Free online tool that allows you to convert HTML to PDF. Also includes a free &#8220;save as PDF&#8221; option for websites.</p>
<p><strong>Thinkature</strong><br />
<a  href="http://thinkature.com/">http://thinkature.com/</a><br />
Real-time collaboration/virtual team workspace for the web.</p>
<p><strong>MyStickies</strong><br />
<a  href="http://www.mystickies.com/">http://www.mystickies.com/</a><br />
Sticky notes for the web. They let you save the web for later &#8211; like bookmarks on steroids.</p>
<p><strong>feedly</strong><br />
<a  href="http://www.feedly.com/">http://www.feedly.com/</a><br />
feedly organizes your favorite sites into a fun, magazine-like start page.</p>
<p><strong>Adobe Browserlab</strong><br />
<a  href="https://browserlab.adobe.com">https://browserlab.adobe.com</a><br />
An easier, faster solution for cross-browser testing.<br />
Preview and test your web pages on leading browsers and operating systems &#8211; on demand.</p>
<p><strong>Fliggo</strong><br />
<a  href="http://www.fliggo.com/">http://www.fliggo.com/</a><br />
Build a video blog, the next YouTube, or just a private place to share videos &#8230; in seconds.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.centresource.com/2009/12/15/web-round-up-cool-tools-edition/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
