<?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>brownwebdesign.com</title>
	<atom:link href="http://www.brownwebdesign.com/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.brownwebdesign.com/blog</link>
	<description>Brown Web Design Blog</description>
	<lastBuildDate>Wed, 07 Dec 2011 14:56:56 +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>Debugging Magento Duplicate Entry Database Error</title>
		<link>http://www.brownwebdesign.com/blog/2011/12/debugging-magento-duplicate-entry-database-error-2/</link>
		<comments>http://www.brownwebdesign.com/blog/2011/12/debugging-magento-duplicate-entry-database-error-2/#comments</comments>
		<pubDate>Wed, 07 Dec 2011 14:56:56 +0000</pubDate>
		<dc:creator>jess</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://www.brownwebdesign.com/blog/?p=169</guid>
		<description><![CDATA[<div class="page"> 
              <p>I recently got a call from a client that has a Magento cart.  He was getting an error when saving a product:</p>

<pre><code>#1062 - Duplicate entry '59-0-1-229' for key 1
</code></pre>


              </div> <a href="http://www.brownwebdesign.com/blog/2011/12/debugging-magento-duplicate-entry-database-error-2/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<div class="page">
<p>I recently got a call from a client that has a Magento cart.  He was getting an error when saving a product:</p>
<pre><code>#1062 - Duplicate entry '59-0-1-229' for key 1
</code></pre>
<p>I wanted to do a quick writeup because it was a rather difficult one to debug and solve.  After duplicating the error, I first tried to reindex the database tables.  However, the “Product Prices” tabel was giving an error and couldn’t be saved.</p>
<p>I logged into the server and check the execption log.  It didn’t give me much more info:</p>
<pre><code>exception 'PDOException' with message 'SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '59-0-1-229' for key 1' in /home/print/public_html/shop/lib/Zend/Db/Statement/Pdo.php:228
Stack trace:
#0 /home/print/public_html/shop/lib/Zend/Db/Statement/Pdo.php(228): PDOStatement-&gt;execute(Array)
#1 /home/print/public_html/shop/lib/Zend/Db/Statement.php(300): Zend_Db_Statement_Pdo-&gt;_execute(Array)
#2 /home/print/public_html/shop/lib/Zend/Db/Adapter/Abstract.php(479): Zend_Db_Statement-&gt;execute(Array)
#3 /home/print/public_html/shop/lib/Zend/Db/Adapter/Pdo/Abstract.php(238): Zend_Db_Adapter_Abstract-&gt;query('INSERT INTO `ca...', Array)
#4 /home/print/public_html/shop/lib/Varien/Db/Adapter/Pdo/Mysql.php(333): Zend_Db_Adapter_Pdo_Abstract-&gt;query('INSERT INTO `ca...', Array)
#5 /home/print/public_html/shop/app/code/core/Mage/Catalog/Model/Resource/Eav/Mysql4/Product/Indexer/Price/Default.php(449): Varien_Db_Adapter_Pdo_Mysql-&gt;query('INSERT INTO `ca...')
#6 /home/print/public_html/shop/app/code/core/Mage/Catalog/Model/Resource/Eav/Mysql4/Product/Indexer/Price/Default.php(120): Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Indexer_Price_Default-&gt;_applyCustomOption()
#7 /home/print/public_html/shop/app/code/core/Mage/Catalog/Model/Resource/Eav/Mysql4/Product/Indexer/Price.php(377): Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Indexer_Price_Default-&gt;reindexAll()
#8 /home/print/public_html/shop/app/code/core/Mage/Index/Model/Indexer/Abstract.php(125): Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Indexer_Price-&gt;reindexAll(.....
</code></pre>
<p>Notice how the query error left out the actual query.  At this point I figure there’s something wrong with a table somewhere.  There are 250 tables in a Magento database, where to start?  It has to be something to do with products, but that doesn’t narrow it down much, there are many tables dealing with products.  </p>
<p>Then I tried a global search on the database from phpMyAdmin for the<br />
duplicate key <code>59-0-1-229</code>, but it turned up no results.</p>
<p>After much trial and error, a database dump and reimport, and more, I decided to focus on finding the query that was causing the error.  </p>
<p>I found this <a href="http://www.edmondscommerce.co.uk/magento/magento-more-detailed-exception-log/">article</a> on how to get more detailed exception logging.  Basically we’re modifiying the logException function rather than the “string” version of the error. The code I used from the article didn’t change anything for me, so here’s basically what I did:</p>
<pre><code> * Write exception to log
 *
 * @param Exception $e
 */
public static function logException(Exception $e)
{
    if (!self::getConfig()) {
        return;
    }

    $file = self::getStoreConfig('dev/log/exception_file');
    //comment out the below line
    //self::log("\n" . $e-&gt;__toString(), Zend_Log::ERR, $file);
    //add the below line
    self::log($e, Zend_Log::ERR, $file);
}
</code></pre>
<p>This will give you a huge dump of info into the<br />
app/var/log/exception.log file.  From there I was actually able to see<br />
the sql querry causing the problem.  </p>
<pre><code>INSERT INTO `catalog_product_index_price_opt_agr_idx` SELECT `i`.`entity_id`, `i`.`customer_group_id`, `i`.`website_id`, `o`.`option_id`, IF((@price:=IF(IF(ops.option_price_id&gt;0, ops.price_type, opd.price_type)='fixed', IF(ops.option_price_id&gt;0, ops.price, opd.price), ROUND(i.price * (IF(ops.option_price_id&gt;0, ops.price, opd.price) / 100), 4))) AND o.is_require, @price,0) AS `min_price`, @price AS `max_price`, IF(i.base_tier IS NOT NULL, IF((@tier_price:=IF(IF(ops.option_price_id&gt;0, ops.price_type, opd.price_type)='fixed', IF(ops.option_price_id&gt;0, ops.price, opd.price), ROUND(i.base_tier * (IF(ops.option_price_id&gt;0, ops.price, opd.price) / 100), 4))) AND o.is_require, @tier_price, 0), NULL) AS `tier_price` FROM `catalog_product_index_price_final_idx` AS `i`
INNER JOIN `core_website` AS `cw` ON cw.website_id = i.website_id
INNER JOIN `core_store_group` AS `csg` ON csg.group_id = cw.default_group_id
INNER JOIN `core_store` AS `cs` ON cs.store_id = csg.default_store_id
INNER JOIN `catalog_product_option` AS `o` ON o.product_id = i.entity_id
INNER JOIN `catalog_product_option_price` AS `opd` ON opd.option_id = o.option_id AND opd.store_id = 0
LEFT JOIN `catalog_product_option_price` AS `ops` ON ops.option_id = opd.option_id AND ops.store_id = cs.store_id
</code></pre>
<p>The first thing I did was copy and paste the query into mysql to make<br />
sure I was getting the same result, and sure enough I got the same<br />
Dtable I checked was the duplicate entry error: </p>
<pre><code>#1062 - Duplicate entry '59-0-1-229' for key 1
</code></pre>
<p>I tried deleteing the catalog_product_index_price_opt_agr_idx table<br />
first.  Magento rebuilt it back, but with the same error.  This is when<br />
I took a closer look at the keys on the table.  This is when I see there<br />
is a unique key on fields:</p>
<pre><code>entity_id, customer_group_id, website_id, option_id
</code></pre>
<p>That’s when it hits me that the 59-1-1-229, are those field values:</p>
<pre><code>entity_id           59
customer_group_id   0
website_id          1
option_id           229
</code></pre>
<p>Then I go and check product #59 for an option 229, but theere isn’t one.<br />
So I go into the catalog_product_option table and delete option 229.<br />
Then I save a product and get no error.  Also all tables will now index<br />
properly.</p>
<p>I can only figure that that option must have been deleted at some point,<br />
but never got completely deleted from the options table.  A new option<br />
took it’s place, but now was causing a duplicate.</p>
<p><strong>Moral:  logging and being able to read logs can help tremendously!</strong></p>
</p></div>
]]></content:encoded>
			<wfw:commentRss>http://www.brownwebdesign.com/blog/2011/12/debugging-magento-duplicate-entry-database-error-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Read The Code</title>
		<link>http://www.brownwebdesign.com/blog/2011/09/read-the-code-delayed-job-object-info/</link>
		<comments>http://www.brownwebdesign.com/blog/2011/09/read-the-code-delayed-job-object-info/#comments</comments>
		<pubDate>Tue, 06 Sep 2011 18:19:30 +0000</pubDate>
		<dc:creator>jess</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://www.brownwebdesign.com/blog/?p=159</guid>
		<description><![CDATA[Several monts ago, John Nunemaker bloged &#8220;Stop Googling&#8220;.  It was about reading the code in an open source project oppsed to Googling it.  He was a bit funstrated at someone who Googled, polled friends, and basically searched everywhere besides the source &#8230; <a href="http://www.brownwebdesign.com/blog/2011/09/read-the-code-delayed-job-object-info/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Several monts ago, John Nunemaker bloged &#8220;<a href="http://railstips.org/blog/archives/2010/10/14/stop-googling/">Stop Googling</a>&#8220;.  It was about reading the code in an open source project oppsed to Googling it.  He was a bit funstrated at someone who Googled, polled friends, and basically searched everywhere besides the source to look for an answer for their problem.</p>
<p>Today I found out the hard way how right he was.  I was trying to access the object info passed along to a delayed_job record.  I googled for 30 or 45 minutes trying to find an answer and couldn&#8217;t get any bites.  I knew the handler field had the info I needed, but it was a string.  I also knew that somehow that info had to be extracted when my job was processed.  Finally on a whim, I looked to the source code.  In the second file I opened, I found a method called payload_object.</p>
<pre>    def payload_object
      @payload_object ||= deserialize(self['handler'])
    end</pre>
<p>I saw object, deserialize, and handler.  That&#8217;s all I needed to know.  It was exactly what I wanted.  It took less than a minute. I tried it out and that was it.</p>
<p>That&#8217;s when I remembered John&#8217;s blog.  Note to self:  if a quick google search doesn&#8217;t display the obvious answer&#8230;<strong>LOOK AT THE CODE!</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.brownwebdesign.com/blog/2011/09/read-the-code-delayed-job-object-info/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ditch FTP For GIT</title>
		<link>http://www.brownwebdesign.com/blog/2011/08/ditch-ftp-for-git/</link>
		<comments>http://www.brownwebdesign.com/blog/2011/08/ditch-ftp-for-git/#comments</comments>
		<pubDate>Thu, 04 Aug 2011 03:24:18 +0000</pubDate>
		<dc:creator>jess</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Web Design]]></category>

		<guid isPermaLink="false">http://www.brownwebdesign.com/blog/?p=136</guid>
		<description><![CDATA[Ever since I started learning Ruby On Rails several years ago, I’ve been using git. Git is a cool tool you can use for version control, or in some cases, simple incremental backups. It basically keeps track of your code &#8230; <a href="http://www.brownwebdesign.com/blog/2011/08/ditch-ftp-for-git/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a rel="attachment wp-att-141" href="http://www.brownwebdesign.com/blog/2011/08/ditch-ftp-for-git/git-logo/"><img class="alignright size-full wp-image-141" style="float: right; margin-left: 10px; border: 5px solid #666;" title="git-logo" src="http://www.brownwebdesign.com/blog/wp-content/uploads/2011/06/git-logo.png" alt="Brown Webdesign Does Git" width="188" height="97" /></a>Ever since I started learning Ruby On Rails several years ago, I’ve been using git.  Git is a cool tool you can use for version control, or in some cases, simple incremental backups.  It basically keeps track of your code and file changes, you commit/save the changes and can revert back, review history and do all sorts of cool stuff.  It additionally will allow you to setup a remote repository to push changes to.  That’s where this article comes in.</p>
<p>Using git in rails is really a must, but in the static world, FTP mostly dominates.</p>
<p>I’m really tired of using FTP.  I probably hit Command + Shift + Upload 200 times a day.  Sometimes I edit files very quickly and hop from file to file, add images to a images directory and javascript files to the js directory.  How can I remember which files to FTP?  It can be as simple as “git push” and only my changes are updated.</p>
<p><strong>First off, requirements:</strong></p>
<ul>
<li>web server with shell access</li>
<li>web server with git installed</li>
<li>local machine with a terminal</li>
<li>local machine with git installed</li>
<li>local machine to test (if you can’t run your code on your local machine or local server, it doesn’t make much sense to setup git&#8230;it would be painful to add, commit, push every tiny change)</li>
</ul>
<h2>Get Started</h2>
<h3>Server Side</h3>
<p>Take care of the server side first.  ssh into your web server and find a place outside your public folder.  For example, a cpanel server is /home/account_name/public_html.  I’d store it in /home/account_name.</p>
<pre>mkdir account_name.git &amp;&amp; cd account_name.git
git init --bare</pre>
<p>Now we’ll tell git where to store the actual files:</p>
<pre>git config core.worktree /home/account_name/public_html
git config core.bare false
git config receive.denycurrentbranch ignore</pre>
<p>Now we have to tell git what to do after we push changes.  Create and open a new file:</p>
<pre>vim hooks/post-receive</pre>
<p>In this file place this code:</p>
<pre> #!/bin/sh
 #tell git to copy over the files
 git checkout -f
 #change ownership of files so your web server can serve them (I’m logging in as root so it may not be necessary if you logging in as account_name
 chown -R account_name:account_name /home/account_name/public_html/*</pre>
<p>Note:  This file (post-receive) needs to be executable.  To be sure:</p>
<pre>chmod 755 hooks/post-receive</pre>
<h3>Local Side</h3>
<p>Navigate to the directory where your website code lives.  If you haven’t already setup git:</p>
<pre>git init
git add .
git commit -m ‘initial commit’</pre>
<p>Now link up the remote repository:</p>
<pre>git remote add origin ssh://user@yourwebserver.com/home/account_name/account_name.git</pre>
<p>Now it’s time for the magic:</p>
<pre>git push origin master</pre>
<p>Your website should now be live.  You can now make changes locally, test and then push. Example:</p>
<pre>#...make some changes to your code
# test them (this could be a visual QA test or automated test)
git add .
git commit -m ‘my first changes’
git push #no need for the origin master now</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.brownwebdesign.com/blog/2011/08/ditch-ftp-for-git/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Highlights From LessMoney</title>
		<link>http://www.brownwebdesign.com/blog/2011/06/highlights-from-lessmoney/</link>
		<comments>http://www.brownwebdesign.com/blog/2011/06/highlights-from-lessmoney/#comments</comments>
		<pubDate>Mon, 20 Jun 2011 03:21:12 +0000</pubDate>
		<dc:creator>jess</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Web Design]]></category>

		<guid isPermaLink="false">http://www.brownwebdesign.com/blog/?p=112</guid>
		<description><![CDATA[The past weekend I attended a conference for web development/creative agencies.  The topic was how to make your business better and was taught by some of the best in the industry:  LessEverything. I’m sure everyone got a little something different &#8230; <a href="http://www.brownwebdesign.com/blog/2011/06/highlights-from-lessmoney/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<div class="wp-caption alignnone" style="width: 510px"><a href="http://turnandface.com/"><img class=" " title="LessMoney" style="border:5px solid #666" src="http://farm3.static.flickr.com/2742/5850867210_6e875028ef.jpg" alt="" width="500" height="375" /></a><p class="wp-caption-text">Photo: Adam Wiggall</p></div>
<p>The past weekend I attended a conference for web development/creative agencies.  The topic was how to make your business better and was taught by some of the best in the industry:  <a href="http://www.lesseverything.com">LessEverything</a>.</p>
<p>I’m sure everyone got a little something different out of <a href="http://lessmoney.lesseverything.com">LessMoney</a>, but I’m going to share the highlights of what I’ve learned.  Please feel free to comment or ask questions below.</p>
<h3>Marketing</h3>
<h4>Blogging</h4>
<p>First you’ll notice you’re reading this out of my blog which until now has been a boring bit of news about us.  I’ve always been hesitant about writing technical articles on my blog.  My clients don’t care about that stuff right?  Well, it’s almost impossible to market web design to actual clients.  Our clients come from all walks, small local businesses to large corporate businesses and from all different industries.  How can you possibly market to that wide a range&#8230;especially as a small firm?  What <a href="http://www.lesseverything.com">LessEverything</a> does is market to their peers and well&#8230;their competition basically.  Firstly, this establishes themselves as an authority in the industry (they’re well known, respected and liked).  And secondly, our industry is blessed enough to have clients abound that we have to refer out speciality work.  So a design firm may refer work to a development firm and vice verse.  Marketing to your competition still feels backwards to me, but I’m willing to give it a try.  So expect at the least, more insightful technical, award winning, can’t miss articles from this blog <img src='http://www.brownwebdesign.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<h4>Website</h4>
<p>Next is my website.  I’m going to make it better.  I’ve been so busy working on other people’s sites that I’ve neglected my own.  But, all that says is “hey I can afford this guy. (Steven Bristol)”   There were some amazing designers here, like <a href="http://turnandface.com/">http://turnandface.com/</a> , <a href="http://gauged2.com/">http://gauged2.com/</a>, <a href="http://www.16toads.com">http://www.16toads.com</a>/, just to name a few (I could actually put everyone’s site here).  They explain how much traction they’ve gotten from their sites.  I also want to design my site in a way that will qualify leads.  By making it great, it will naturally discourage away people looking for a cheap site.  But if done in a clever way, a different way, a less boring way, then then ideal clients will get that and others will fly under the radar.</p>
<h4>Open Source</h4>
<p>Another way to market myself is to create open source projects or design for open source projects.  This is perfect motivation for me to release a project into open source that I use to track my billable time in my company.  I wrote the rails app after needing a new solution for myself and it’s a nice simple tool many others could use, add to, and help me improve my code.  And maybe along the way, new relationships will be created that will lead to new business.</p>
<h4>Swagger</h4>
<p>I’m a quiet, soft spoken, easy going, humble type of guy.  I have opinions and preferences, but I keep them to myself.  This will need to change.  Clients want to pay for opinions.  They need guidance, ideas, experience and consulting.  Consulting means giving advice, and this is no different in the web industry.  From now on, we’ll display a little swagger!</p>
<h4>Success</h4>
<p>Our number one goal as consultants, designers, and developers is to help a client define success for a website or web app and provide them with the best path to success with the least risk and least headache. I think we generally do a pretty good job of this, but we could probably do a better job of reiterating it to the client.</p>
<h3>Business &amp; Contracts</h3>
<p>Use <a href="http://www.lessaccounting.com">LessAccounting</a>.  Period.  Just kidding.  The joke of the weekend was that LessMoney was really a rouse to get us all to use LessAccouting (LessEverything’s flagship product).</p>
<h4>Contracts</h4>
<p>Before, I only used contracts for larger projects or on gut feelings.  I’ll now be using a contract for every new project, large or small.  I’ve never had an unhappy client (that I’m aware of), but that day may come and and I want to make sure I’m protected by a contract for what was or wasn’t supposed to be delivered.  They gave us the contract they use and I’ll be using it against my own to modify it for my own needs.</p>
<h4>Insurance</h4>
<p>I’d never thought of this, but from now on we’ll carry <em>errors and omission insurance</em> to protect the company against the potential of frivolous lawsuits.  I don’t believe we’ll ever have a legitimate lawsuit against us because we’re Godly, honest folks that bend over backwards to please people, but in this country, anyone can sue anyone for anything and it’s expensive to defend yourself, even when there’s absolutely no case against you.</p>
<h4>Fees</h4>
<p>This is bad news for my clients, but I’m charging way too little for my services compared to others.  We will likely be raising our fees sometime in the near future.  Our quality of work and way too busy schedule is proof that the time has come.  We also haven’t raised our rates since we started over 3 years ago.</p>
<h4>Fixed Rate or Hourly?</h4>
<p>There was no cut and try answer to this, but one thing clear for me was that I need to move to hourly, or adjust my fixed estimates.  At times I go double over budgets in hours for a project.  Fortunately I can afford to do this because it’s my time instead of having to pay other devs to do it, but it’s not fun, and also adds unnecessary stress takes time away from my family.  If you’re having a hard time estimating, don’t feel alone, nearly everyone there struggles with this.</p>
<h4>No content no problem</h4>
<p>Myself included, many others cited a problem of getting clients to submit copy/content for the site, which leads to delayed launch, which leads to delayed payment (you get final payment when you launch the site right?).  This has to change.  Some people said they get content up front before starting a project.  Some said they get down payment first, then wait on content to start the project.  Others suggested putting language in the contract that all copy would need to be submitted x number of days (10-30) after the site was ready to launch or there would be a charge for it and they the client was still liable for final payment regardless.  Whether the client is too busy, or is using as a stall tactic, it isn’t fair and should be thought out by the agency ahead of time.</p>
<h3>Agency Success</h3>
<p>When we first kicked the workshop off, we all (only ~20 total allowed to attend) introduced ourselves, said why we were there and defined success for our business.  It really warmed my heart and inspired me to say that probably 90% + of us said something along the lines of this:  making more money wasn’t really an an objective, but spending more time with family, better quality of life, working on more interesting projects, having less stress, and just learning how to deal with problems was why they were there, and was their goal.  This was really so cool to hear.  As an industry, we all love designing, coding, building, and creating things.  We want to get paid for our hard work to support our families, many are not just in it for the money only.</p>
<p>These highlights were just the tip of the iceberg.  Some of the most value came from the group discussions and relationships established.  I met some super cool people and already have loose plans to meet up with some of them and also already have some leads on some new exciting projects.  I highly recommend contacting <a href="http://www.lesseverything.com">LessEverything</a> and asking when/if <strong>LessEverything Season #2</strong><em> is going to happen..  It’s well worth the time and money to go!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.brownwebdesign.com/blog/2011/06/highlights-from-lessmoney/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New Site Launch &#8211; EyeCare4Kidz.com</title>
		<link>http://www.brownwebdesign.com/blog/2011/01/new-site-launch-eyecare4kidz-com/</link>
		<comments>http://www.brownwebdesign.com/blog/2011/01/new-site-launch-eyecare4kidz-com/#comments</comments>
		<pubDate>Sun, 23 Jan 2011 04:14:02 +0000</pubDate>
		<dc:creator>jess</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Site Launches]]></category>
		<category><![CDATA[Graphics]]></category>
		<category><![CDATA[hosting]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[website design]]></category>

		<guid isPermaLink="false">http://www.brownwebdesign.com/blog/?p=85</guid>
		<description><![CDATA[We&#8217;re proud to launch a new website www.eyecare4kidz.com for Dr. Andre Lenior.  This is our 2nd website for Dr. Lenior and we hope he has as much success with this site as he did his first!]]></description>
			<content:encoded><![CDATA[<p>We&#8217;re proud to launch a new website <a href="http://www.eyecare4kidz.com">www.eyecare4kidz.com</a> for Dr. Andre Lenior.  This is our 2nd website for Dr. Lenior and we hope he has as much success with this site as he did his first!</p>
<p><a rel="attachment wp-att-86" href="http://www.brownwebdesign.com/blog/2011/01/new-site-launch-eyecare4kidz-com/ecfk/"><img class="alignnone size-full wp-image-86" title="ecfk" src="http://www.brownwebdesign.com/blog/wp-content/uploads/2011/01/ecfk.jpg" alt="" width="525" height="300" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.brownwebdesign.com/blog/2011/01/new-site-launch-eyecare4kidz-com/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New Site Launch &#8211; The Hour Glass</title>
		<link>http://www.brownwebdesign.com/blog/2010/02/new-site-launch/</link>
		<comments>http://www.brownwebdesign.com/blog/2010/02/new-site-launch/#comments</comments>
		<pubDate>Wed, 10 Feb 2010 21:47:14 +0000</pubDate>
		<dc:creator>jess</dc:creator>
				<category><![CDATA[Site Launches]]></category>
		<category><![CDATA[Graphics]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[website design]]></category>
		<category><![CDATA[xhtml]]></category>

		<guid isPermaLink="false">http://www.jbrownco.net/blog/?p=76</guid>
		<description><![CDATA[New site launch &#8211; thehourglasses.com]]></description>
			<content:encoded><![CDATA[<p>New site launch &#8211; <a href="http://www.thehourglasses.com" target="_blank">thehourglasses.com</a></p>
<p><a href="http://www.thehourglasses.com"><img class="alignnone size-full wp-image-77" title="thehourglass" src="http://www.jbrownco.net/blog/wp-content/uploads/2010/02/thehourglass.jpg" alt="thehourglass" width="525" height="404" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.brownwebdesign.com/blog/2010/02/new-site-launch/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Interesting to see&#8230;</title>
		<link>http://www.brownwebdesign.com/blog/2010/01/interesting-to-see/</link>
		<comments>http://www.brownwebdesign.com/blog/2010/01/interesting-to-see/#comments</comments>
		<pubDate>Wed, 20 Jan 2010 11:54:23 +0000</pubDate>
		<dc:creator>jess</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[hosting]]></category>
		<category><![CDATA[servers]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://www.jbrownco.net/blog/?p=69</guid>
		<description><![CDATA[No one has 100% up time do they?]]></description>
			<content:encoded><![CDATA[<p>No one has 100% up time do they?</p>
<div id="attachment_71" class="wp-caption alignnone" style="width: 490px"><img class="size-full wp-image-71 " title="twitter" src="http://www.jbrownco.net/blog/wp-content/uploads/2010/01/twitter.jpg" alt="twitter home page this morning" width="480" height="354" /><p class="wp-caption-text">twitter home page this morning</p></div>
]]></content:encoded>
			<wfw:commentRss>http://www.brownwebdesign.com/blog/2010/01/interesting-to-see/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Frazier Cycling Redesign Site Launch</title>
		<link>http://www.brownwebdesign.com/blog/2009/10/frazier-cycling-redesign-site-launch/</link>
		<comments>http://www.brownwebdesign.com/blog/2009/10/frazier-cycling-redesign-site-launch/#comments</comments>
		<pubDate>Wed, 28 Oct 2009 14:51:13 +0000</pubDate>
		<dc:creator>jess</dc:creator>
				<category><![CDATA[Site Launches]]></category>
		<category><![CDATA[AJAX]]></category>
		<category><![CDATA[Graphics]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[website design]]></category>
		<category><![CDATA[xhtml]]></category>

		<guid isPermaLink="false">http://www.jbrownco.net/blog/?p=54</guid>
		<description><![CDATA[New Site Launch – www.fraziercycling.com Tools/Technolgies: xhtml, php, Graphics, Facebook tools, AJAX]]></description>
			<content:encoded><![CDATA[<p>New Site Launch – <a title="Brown Web Design" href="http://www.fraziercycling.com" target="_blank">www.fraziercycling.com</a></p>
<p>Tools/Technolgies: xhtml, php, Graphics, Facebook tools, AJAX</p>
<p><a href="http://www.fraziercycling.com"><img class="alignnone size-full wp-image-58" title="Frazier525" src="http://www.jbrownco.net/blog/wp-content/uploads/2009/10/Frazier525.jpg" alt="Frazier525" width="525" height="428" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.brownwebdesign.com/blog/2009/10/frazier-cycling-redesign-site-launch/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Harmony Preschool Academy</title>
		<link>http://www.brownwebdesign.com/blog/2009/10/harmony-preschool-academy/</link>
		<comments>http://www.brownwebdesign.com/blog/2009/10/harmony-preschool-academy/#comments</comments>
		<pubDate>Tue, 20 Oct 2009 19:00:12 +0000</pubDate>
		<dc:creator>jess</dc:creator>
				<category><![CDATA[Site Launches]]></category>
		<category><![CDATA[AJAX]]></category>
		<category><![CDATA[Facebook tools]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Flash Video]]></category>
		<category><![CDATA[Graphics]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[website design]]></category>
		<category><![CDATA[xhtml]]></category>

		<guid isPermaLink="false">http://www.jbrownco.net/blog/?p=47</guid>
		<description><![CDATA[New Site Launch &#8211; http://www.harmonypreschoolacademy.com Tools/Technolgies:  Flash, Flash Video, xhtml, php, Graphics, Facebook tools, AJAX]]></description>
			<content:encoded><![CDATA[<p>New Site Launch &#8211; <a href="http://www.harmonypreschoolacademy.com" target="_blank">http://www.harmonypreschoolacademy.com</a></p>
<p>Tools/Technolgies:  Flash, Flash Video, xhtml, php, Graphics, Facebook tools, AJAX</p>
<p><a href="http://www.harmonypreschoolacademy.com"><img class="alignnone size-full wp-image-60" title="harmonypreschool525" src="http://www.jbrownco.net/blog/wp-content/uploads/2009/10/harmonypreschool525.jpg" alt="harmonypreschool525" width="525" height="503" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.brownwebdesign.com/blog/2009/10/harmony-preschool-academy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Face Book Mentions</title>
		<link>http://www.brownwebdesign.com/blog/2009/09/face-book-mentions/</link>
		<comments>http://www.brownwebdesign.com/blog/2009/09/face-book-mentions/#comments</comments>
		<pubDate>Tue, 15 Sep 2009 18:01:08 +0000</pubDate>
		<dc:creator>jess</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[social marketing]]></category>

		<guid isPermaLink="false">http://www.jbrownco.net/blog/?p=43</guid>
		<description><![CDATA[As you may know, Facebook rolled out its planned new feature that lets you “tag” other users in your status updates earlier today. It’s very similar functionality to @replies on Twitter, and most folks will be pretty familiar with how it works &#8230; <a href="http://www.brownwebdesign.com/blog/2009/09/face-book-mentions/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>As you may know, Facebook rolled out its planned new feature that lets you “tag” other users in your status updates earlier today.</p>
<p>It’s very similar functionality to @replies on Twitter, and most folks will be pretty familiar with how it works and why you’d want to use it. Still, there are some differences to note, and some may appreciate a basic walkthough of how the new feature works.</p>
<p>Facebook’s version of the feature, like Twitter, also uses the @ symbol to invoke. However instead of having to simply know or remember the person’s username you’d like to tag, Facebook will generate an auto-suggest dropdown based on what you’ve typed after the @ symbol.</p>
<p>This is a nice touch considering that the scope of Facebook’s status tagging feature goes beyond just being able to tag your friends. You can also tag pretty much anything you’re connected to in the Facebook universe: companies, brands, artists and shows — anything that has a Facebook Page. You can also tag events and groups you’re a part of.</p>
<p>Once the item you’re wanting to tag appears in the list, all you have to do is click on it to select it and include a linked version of that entity in your status update.</p>
<p>When your friends see your status update, they’ll be able to click on any of those links to find out more and possibly friend, fan, join or attend whatever you linked to.</p>
<p>Have fun and don&#8217;t forget to plug your friends and companies!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.brownwebdesign.com/blog/2009/09/face-book-mentions/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

