<?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>Geek Gumbo</title>
	<atom:link href="http://www.geekgumbo.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.geekgumbo.com</link>
	<description>A potpourri of Web Development, Linux, and Windows tips, tidbits, and observations</description>
	<lastBuildDate>Thu, 02 Feb 2012 20:31:28 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>The PHP Switch Statement</title>
		<link>http://www.geekgumbo.com/2012/02/02/the-php-switch-statement/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=the-php-switch-statement</link>
		<comments>http://www.geekgumbo.com/2012/02/02/the-php-switch-statement/#comments</comments>
		<pubDate>Thu, 02 Feb 2012 20:31:28 +0000</pubDate>
		<dc:creator>daleV</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.geekgumbo.com/?p=4271</guid>
		<description><![CDATA[The PHP switch statement is a good substitute for a lot of "if, "else", and "elseif" statements. The switch statement is much more efficient than the "if", "elseif" statements, however there are some quirks that you should be aware of &#8230; <a class="more-link" href="http://www.geekgumbo.com/2012/02/02/the-php-switch-statement/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>The PHP switch statement is a good substitute for a lot of "if, "else", and "elseif" statements.  The switch statement is much more efficient than the "if", "elseif" statements, however there are some quirks that you should be aware of in using switch.   This article came when I wanted to do an "or" condition in one of the case tags.  As usual, it took me awhile to find what I wanted.  I thought it would help if I put all the quirks in one article.  </p>
<p>First, lets look at the basic switch statement. </p>
<pre class="brush:php">
include "chk.php";
$var = 0;
new chk($var);
SwitchDemo($var);
function SwitchDemo($var)
{
  switch ($var)
  {
    case 0:
		echo "Hello";
		break;
    case 1:
	        echo " World!";
		break;
    case 2:
	        echo "The real McCoy";
	        break;
    case 3:
                echo "Went too far";
	        break;
    case 4 :
		if ($type == "string" ) {
                    $myarray = array_push($buildarr, $type);
                    break;
                }
		break;
    default:
	    echo "went way too far";
	    break;
	}
}
</pre>
<p>Here's the code we'll use initially to test things out.  A word of explanation.  Include "chk.php" is my free variable checking class that you can <a href="http://www.newchk.com/" title="NewChk.com">read about and download here</a>.  To use the class, I simply say "new chk($var);".  The output is in the picture below.  The output says $var is an integer set to "0" that was called in my test script file, "switch.php", on line 21.  The output of the switch statement is "Hello".</p>
<p><a href="http://www.geekgumbo.com/wp-content/uploads/2012/01/switch152.png"><img src="http://www.geekgumbo.com/wp-content/uploads/2012/01/switch152.png" alt="" title="switch15" width="600" height="99" class="aligncenter size-full wp-image-4279" /></a></p>
<p>This is a standard switch statement that we'll start with so you can quickly refer to the syntax when needed.  The switch statement executes a different section of code depending on which case is true.   The switch variable to be checked should be in parenthesis, and each case tag ends with a ":", a colon, although if you messed up and used a semicolon, I think you'll find that it still works.  I'll let you test that out on your own.  Note the brackets surrounding all the case and default tags.  Also, notice in Case 4, you can have a fairly complex series of commands in the case block, not just one or two lines.  We'll leave Case 4 out in the rest of this article just to keep things simple.  </p>
<p>The first thing to know is the switch statement does a "loose" comparison between the value in the switch parenthesis and the case value, as opposed to a strict comparison.  This would be like using a == in an if statement, instead of a ===.  Let's just say that switch does a pretty good job, and if there's any doubt, re-do the variable to make sure there's no ambiguity, that can mean, just making the comparison all integers.  If your using integers to compare, you do not need quotes around the integers as shown in our first example.  With strings, put quotes around the string.</p>
<p>OK, lets move on.  The default case is used, if none of the other case statements are true.  A little known fact is the case statements, and the default statement, don't need to be in any sort of order.  Let's move the default up, change the case statements around, and change our variable to 2 to better show this.  Here's the code scrambled.  I'll cut down the code to show just the switch statement.  The other code is still running.</p>
<pre class="brush:php">
	switch ($var)
	{
	    case 3:
              echo "Went too far";
	      break;
	    default:
	      echo "went way too far";
	      break;
            case 1:
	      echo "World!";
              break;
	case 0:
   	      echo "Hello";
	      break;
    case 2:
	    echo "The real McCoy";
	    break;
</pre>
<p>And here's the output:</p>
<p><a href="http://www.geekgumbo.com/wp-content/uploads/2012/01/switch25.png"><img src="http://www.geekgumbo.com/wp-content/uploads/2012/01/switch25.png" alt="" title="switch25" width="600" height="106" class="aligncenter size-full wp-image-4284" /></a></p>
<p>Next, we want to talk about "break" and "continue".  "break;" breaks you out of the switch statement all together.  You're done your filtering, and you're moving on. "continue;" means move to the next case block.  Let's show this, we'll put the switch back in order and use a continue.</p>
<pre class="brush:php">

switch ($var)
{
    case 0:
		echo "Hello";
		continue;
    case 1:
	    echo "World!";
		break;
    case 2:
	    echo "The real McCoy";
	    break;
    case 3:
        echo "Went too far";
	    break;
    default:
	    echo "went way too far";
	    break;
}
</pre>
<p>Here's the output:</p>
<p><a href="http://www.geekgumbo.com/wp-content/uploads/2012/01/switch35.png"><img src="http://www.geekgumbo.com/wp-content/uploads/2012/01/switch35.png" alt="" title="switch35" width="600" height="106" class="aligncenter size-full wp-image-4287" /></a></p>
<p>I know you were expecting "Hello World", lol.  No, even though we are "continuing" to match case blocks, we still have to match.  Which brings me to why I wrote the article: How can I output "Hello World!" ?</p>
<p>We'll use a not well known feature of the switch, the "fall through" in the switch statement.  If we take out the continue, and leave the break on case 1, we'll get close to our desired results.  Here's the code:</p>
<pre class="brush:php">
switch ($var)
{
    case 0:
	    echo "Hello";
    case 1:
	    echo " World!";
		break;
    case 2:
	    echo "The real McCoy";
	    break;
    case 3:
            echo "Went too far";
	    break;
    default:
	    echo "went way too far";
	    break;
}
</pre>
<p>Here's the output:</p>
<p><a href="http://www.geekgumbo.com/wp-content/uploads/2012/01/switch55.png"><img src="http://www.geekgumbo.com/wp-content/uploads/2012/01/switch55.png" alt="" title="switch55" width="600" height="109" class="aligncenter size-full wp-image-4289" /></a></p>
<p>In this case, there was no break for Case 0, so when the $var was 0, it outputs "Hello World!"  It fell through to Case 1.  What happens if we set the $var to 1.  Here's the output.</p>
<p><a href="http://www.geekgumbo.com/wp-content/uploads/2012/01/switch65.png"><img src="http://www.geekgumbo.com/wp-content/uploads/2012/01/switch65.png" alt="" title="switch65" width="600" height="107" class="aligncenter size-full wp-image-4290" /></a></p>
<p>Here we did not match the "0", so "Hello" did not output, and because the HTML tags were not correct the CSS styling did not load, and make "World!" bigger.  Let's fix this and make the switch statement really useful.  Here's the code:</p>
<pre class="brush:php">
switch ($var)
{
    case 7:
    case 8:
    case 0:
    case 1:
	    echo "Hello World!";
		break;
    case 2:
	    echo "The real McCoy";
	    break;
    case 3:
        echo "Went too far";
	    break;
    default:
	    echo "went way too far";
	    break;
	}
</pre>
<p>Here's the output:</p>
<p><a href="http://www.geekgumbo.com/wp-content/uploads/2012/01/switch85.png"><img src="http://www.geekgumbo.com/wp-content/uploads/2012/01/switch85.png" alt="" title="switch85" width="600" height="101" class="aligncenter size-full wp-image-4292" /></a></p>
<p>Woo horsey!   What's going on here?  We put in a variable of 8 and we get "Hello World!" What happen is the case block matched the 8 and fell through to case 1 and out came "Hello World!". We then broke out of the switch statement.  What this means to you is that you can use "OR" conditions with the switch statement.  </p>
<p>Instead of:<br />
<code></p>
<pre class="brush:php">

if( $var == 7 || $var == 8 || $var == 0 || $var == 1) {

}
</pre>
<p></code></p>
<p>We can use our switch statement above, which seems a lot easier to me, and more important less prone to syntax errors when we have "OR" statements.</p>
<p>One last thing, we can use calculations in our matches.  Let do a final example.  Here we'll go back to all the code, and use more than one variable.  Here's the code:</p>
<pre class="brush:php">

include "chk.php";
$var1 = 1;
$var4 = 4;
new chk($var1, $var4);

SwitchDemo($var1, $var4);
function SwitchDemo($var1, $var4)
{
switch ($var1 + $var4)
{
    case 7:
    case 8:
    case 0:
    case 1:
	    echo "Hello World!";
	    break;
    case (2 + 3):
	    echo "The real McCoy";
	    break;
    case 3:
            echo "Went too far";
	    break;
    default:
	    echo "went way too far";
	    break;
	}
}
</pre>
<p>Here's the output:</p>
<p><a href="http://www.geekgumbo.com/wp-content/uploads/2012/01/switch115.png"><img src="http://www.geekgumbo.com/wp-content/uploads/2012/01/switch115.png" alt="" title="switch115" width="600" height="132" class="aligncenter size-full wp-image-4294" /></a></p>
<p>Here we used calculations, a simple add, in both the switch parameter statement and the case parameter, and we get "The real McCoy." This is equivalent to:</p>
<pre class="brush:php">
if( $var1 && $var2)  {

}
</pre>
<p>We've used switch to add variables, and check for an "AND" condition.  You can use this to concatenate strings, if you like.  You can see the versatility of the switch statement.</p>
<p>In conclusion, the switch statement is more efficient than the "elseif" type of statement.  The interpreter makes a list of case comparisons, and then goes right to the case that matches instead of checking every comparison one at a time.  Hopefully, you won't shy away from using the switch statement in the future now that you know all the ins and outs. Chow, until next time.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.geekgumbo.com/2012/02/02/the-php-switch-statement/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A new site coming for PHP &#8211; a Preview</title>
		<link>http://www.geekgumbo.com/2012/01/27/a-new-site-coming-for-php-a-preview/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=a-new-site-coming-for-php-a-preview</link>
		<comments>http://www.geekgumbo.com/2012/01/27/a-new-site-coming-for-php-a-preview/#comments</comments>
		<pubDate>Fri, 27 Jan 2012 13:35:07 +0000</pubDate>
		<dc:creator>daleV</dc:creator>
				<category><![CDATA[Web Sites]]></category>

		<guid isPermaLink="false">http://www.geekgumbo.com/?p=4248</guid>
		<description><![CDATA[If you're a PHP Developer, you are familiar with the PHP web site, www.php.net.  This site has looked the same, for I don't know how long, but for at least, six or seven years, if not longer.  The old pastel &#8230; <a class="more-link" href="http://www.geekgumbo.com/2012/01/27/a-new-site-coming-for-php-a-preview/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>If you're a PHP Developer, you are familiar with the PHP web site, <a title="old PHP Web Site" href="http://www.php.net/">www.php.net</a>.  This site has looked the same, for I don't know how long, but for at least, six or seven years, if not longer.  The old pastel purple and gray colors were instantly recognized when you went to the web site.</p>
<div id="attachment_4250" class="wp-caption aligncenter" style="width: 610px"><a href="http://www.geekgumbo.com/wp-content/uploads/2012/01/phpsite45.png"><img class="size-full wp-image-4250" title="phpsite45" src="http://www.geekgumbo.com/wp-content/uploads/2012/01/phpsite45.png" alt="" width="600" height="256" /></a><p class="wp-caption-text">The old PHP site with the PHP 5.39 version annoucement</p></div>
<p>&nbsp;</p>
<p>A side note, notice in the image above that PHP 5.3.9 has been released.  This is just a subtle way for me to announce a new release of PHP.</p>
<p>Back to talking about the web site, I have visited the old site a multitude of times, and it's usually my first click when I want to do a quick check for the correct syntax.  The site was OK, but quite frankly, I never cared for it much, and found myself always looking for another site to round out my knowledge of a particular code snippet.</p>
<p>The reason why I didn't like it was I always thought the examples weren't good, and the explanations were worse.  I wanted to see the syntax used in a code snippet, and a simple use, and explanation of the code in question.  Somehow you always ended up paging down the page, and not finding what you were looking for,   It was frustrating.  I also didn't end up reading the comments on the page, because I was in a hurry, and it was just easier to go to another web site, and find a better tutorial.  A lot of my articles on PHP stem from my frustration with the PHP site, and the fact that I needed to go some where else to find what I needed.</p>
<p>Well, this may be changing.  Apparently, I'm not the only one who didn't like the site.  The PHP Group has decided to gradually retire the old site, and is in the process of building a new site, more modern looking, and I, for one, am highly optimistic that this will be a one-stop site for my PHP questions.</p>
<div id="attachment_4251" class="wp-caption aligncenter" style="width: 610px"><a href="http://www.geekgumbo.com/wp-content/uploads/2012/01/phpsite35.png"><img class="size-full wp-image-4251" title="phpsite35" src="http://www.geekgumbo.com/wp-content/uploads/2012/01/phpsite35.png" alt="" width="600" height="286" /></a><p class="wp-caption-text">The new sites main page</p></div>
<p>&nbsp;</p>
<p>You can view a preview of the new site as it is coming together here: <a title="The new sites main page" href="http://prototype.php.net/">http://prototype.php.net/</a></p>
<p>The really good news, is that The PHP Group is asking for contributions to their documentation, and are not just going to paste the old documentation into the new site.  I have viewed some of the pages in their new documentation, and it seems improved.</p>
<p>A comment on the new design, I think it is a much cleaner looking, an easier-to-read site. At first, I thought the font was too small, but you can re-size the site with your ctrl-mouse wheel to your preferred size font.  You could do that with the old site too.</p>
<p>The font and the white background, not surrounded by gray sidebars, like the old site, is much easier to read.  It makes the site more wide open and not as cluttered.  A big improvement over the old site.  The gray sidebars of the old site were a downer to me, and made me want to move on to another site to get to a brighter and cleaner environment.  The gray of the old site was like a rainy day, gray, and gloomy, and the content was like baby food, bland.  Good reasons to upgrade the site.</p>
<div id="attachment_4252" class="wp-caption aligncenter" style="width: 610px"><a href="http://www.geekgumbo.com/wp-content/uploads/2012/01/phpsite25.png"><img class="size-full wp-image-4252" title="phpsite25" src="http://www.geekgumbo.com/wp-content/uploads/2012/01/phpsite25.png" alt="" width="600" height="264" /></a><p class="wp-caption-text">Showing the Documentation sub-menu</p></div>
<p>&nbsp;</p>
<p>On the new site, if you click on the documentation, community, or help top menu, for example, the site mimics the CodeIgniter documentation layout in using a table of contents as the intro page to that section.  This is a nice touch, and makes you want to look around more than if the option were stuck in the sidebar, like in the old site.  I found myself clicking various topics that provoked my interest, a big plus for the new site.</p>
<p>For a while it looks like you may have to visit both the old and new to get your information, or go to one of those "other" sites.  A lot of the pages on the old site are not available from time to time.  While I was writing this article both sites showed up with white space instead of the documentation.  If you would like to speed the new site along The PHP Group is looking for contributors.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.geekgumbo.com/2012/01/27/a-new-site-coming-for-php-a-preview/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>NetBeans 7.1 Review</title>
		<link>http://www.geekgumbo.com/2012/01/21/netbeans-7-1-review/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=netbeans-7-1-review</link>
		<comments>http://www.geekgumbo.com/2012/01/21/netbeans-7-1-review/#comments</comments>
		<pubDate>Sat, 21 Jan 2012 18:08:25 +0000</pubDate>
		<dc:creator>daleV</dc:creator>
				<category><![CDATA[Development Tools]]></category>
		<category><![CDATA[Software Reviews]]></category>

		<guid isPermaLink="false">http://www.geekgumbo.com/?p=4225</guid>
		<description><![CDATA[One of outcomes of switching jobs is you lose some of your favorite tools.  For me that was Zend Studio.  Having done PHP development full time for many years, Zend Studio had become my IDE of choice. Since Zend Studio &#8230; <a class="more-link" href="http://www.geekgumbo.com/2012/01/21/netbeans-7-1-review/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.geekgumbo.com/wp-content/uploads/2012/01/netbaens7.png"><img class="alignleft size-full wp-image-4228" title="netbaens7" src="http://www.geekgumbo.com/wp-content/uploads/2012/01/netbaens7.png" alt="" width="200" height="126" /></a>One of outcomes of switching jobs is you lose some of your favorite tools.  For me that was Zend Studio.  Having done PHP development full time for many years, Zend Studio had become my IDE of choice.</p>
<p>Since Zend Studio costs money, as a newbie to my new company, I didn't see a lot of Zend Studio's installed.  In fact, I saw few IDE's.  Most of the edits were done on a Linux server running Vim. This seemed a little archaic to me.  I wanted to set up my beloved work environment, back to open-source.</p>
<p>Naturally, I downloaded Eclipse PDT based on the Helios release, on which Zend Studio is built.  I had used Eclipse before Zend Studio, and so this was pretty close to home.  All the menus and functionality, except for some of the Zend Studio features, are the same.</p>
<p>In the process of configuring Eclipse, I, of course, started messing with preferences.  Anyone who has used Eclipse understands what a nightmare the Eclipse preferences are.  It takes you quite a bit of time to initially configure preferences.  So you don't have to reconfigure then again, you export your preferences and import them to the new Eclipse environments.</p>
<p>I did an import of my Zend Studio preferences and then started changing some setting, and I had a hiccup.  The hiccup was Eclipse balked at some setting I set, and blew away my entire workspace.  I'm guessing Zend Studio preferences have problems with importing to Eclipse.  I had to reload everything including re-configuring my preferences.  What a nightmare.</p>
<p>When things like this happen, I get pissed, and go looking for new tools.  After a preliminary search showed that Netbeans had good reviews, I decided to give it a try.  I had tried Netbeans before, and found it wanting for PHP development, but that was four years ago.  It deserved another look.</p>
<div id="attachment_4229" class="wp-caption aligncenter" style="width: 610px"><a href="http://www.geekgumbo.com/wp-content/uploads/2012/01/netbeans_startup15.jpg"><img class="size-full wp-image-4229" title="netbeans_startup15" src="http://www.geekgumbo.com/wp-content/uploads/2012/01/netbeans_startup15.jpg" alt="" width="600" height="432" /></a><p class="wp-caption-text">NetBeans Initial Start Up Screen</p></div>
<p>&nbsp;</p>
<p>Netbeans is a Java application and requires Java to run, which is probably already loaded on your computer.  The Netbeans license is owned by Oracle from its acquisition of Sun, but it is a free and open source IDE.</p>
<p>Since PHP is now an object-oriented language, like Java, NetBeans has incorporated PHP into its editor.  You have a choice to install NetBeans with just the PHP bundle, which is what I did, since I do not do a lot of Java work.</p>
<p>The Netbeans 7.1 download and install was seamless. The installer downloads 46.6 Mb, which grows to 152.5 Mb on install.  By the way, my Eclipse Helios folder checks in at 390 Mb. The installation took about 5 minutes and NetBeans came up quickly and easily.</p>
<div id="attachment_4234" class="wp-caption aligncenter" style="width: 610px"><a href="http://www.geekgumbo.com/wp-content/uploads/2012/01/Netbeans_proj25.png"><img class="size-full wp-image-4234" title="Netbeans_proj25" src="http://www.geekgumbo.com/wp-content/uploads/2012/01/Netbeans_proj25.png" alt="" width="600" height="431" /></a><p class="wp-caption-text">NetBeans with various Windows open</p></div>
<p>&nbsp;</p>
<p>If you do a feature by feature analysis of Eclipse and Netbeans, you'll find that both IDE's pretty much have the same features and functionality.  You'll find several good articles on the web about this, so I won't go into individual features here.</p>
<div id="attachment_4235" class="wp-caption aligncenter" style="width: 610px"><a href="http://www.geekgumbo.com/wp-content/uploads/2012/01/netbeans85.png"><img class="size-full wp-image-4235" title="netbeans85" src="http://www.geekgumbo.com/wp-content/uploads/2012/01/netbeans85.png" alt="" width="600" height="432" /></a><p class="wp-caption-text">NetBeans main editor window with other windows closed</p></div>
<p>&nbsp;</p>
<p>If your doing Java development, Netbeans should be your IDE of choice, since it was built with Java development in mind.  What surprised me was how far Netbeans has come as a PHP development environment.  If your a PHP Developer, NetBeans has integrated support for Git, Debugging, PHPUnit testing, PHPDoc, Smarty templates, Symfony Framework, and the Zend framework. Need I say more.</p>
<div id="attachment_4231" class="wp-caption aligncenter" style="width: 610px"><a href="http://www.geekgumbo.com/wp-content/uploads/2012/01/netbeans-php45.png"><img class="size-full wp-image-4231" title="netbeans-php45" src="http://www.geekgumbo.com/wp-content/uploads/2012/01/netbeans-php45.png" alt="" width="600" height="517" /></a><p class="wp-caption-text">NetBeans PHP preference screen</p></div>
<p>&nbsp;</p>
<p>If both IDE's pretty much have the same functionality, what is the difference between the two?  Well, it comes down to the feel of the IDE as your using them.</p>
<p>I thought about good analogies and similes for the two editors.   Here's my take.  Eclipse is like an old car that you keep fixing up, it's serviceable and runs good, but every once in a while, you get irritated, because something doesn't work right.  Netbeans seems like a new BMW sports car.  If Eclipse is a house built with a series of additions, Netbeans is a house built from the ground up by an architect.  Eclipse feels bloated.  Netbeans feels integrated, not like your bringing up a separate application every time you go to a new area of the IDE.</p>
<p>One major weakness in Eclipse is setting preferences on how you want the editor to work.  Each plugin added to Eclipse has its own preferences, every section of Eclipse has it own preferences.  What that means is setting preferences is a nightmare.  Not only that, if you set a preference in one area, it might not be set in another, and may collide with another preference, sometime throwing errors, or shutting down the editor.  I've had all of this happen.</p>
<p>In contrast, NetBeans preferences are a pleasure.  Colors and fonts are configured in one tab, PHP in another tab.  You can set all colors and fonts for all languages at once, not like Eclipse.</p>
<div id="attachment_4232" class="wp-caption aligncenter" style="width: 610px"><a href="http://www.geekgumbo.com/wp-content/uploads/2012/01/netbeans_options35.png"><img class="size-full wp-image-4232" title="netbeans_options35" src="http://www.geekgumbo.com/wp-content/uploads/2012/01/netbeans_options35.png" alt="" width="600" height="513" /></a><p class="wp-caption-text">NetBeans Fonts and Colors Preference Screen</p></div>
<p>&nbsp;</p>
<p>In all fairness to Eclipse, I'm comparing this to Eclipse Helios PDT.  I downloaded the Eclipse Indigo 64bit and added the PDT plugin, and I find this version quicker,  and much more stable.  I would recommend Eclipse PDT users uninstall Helios, download Indigo, and add PDT.  I think you'll like it  better, if you stay with Eclipse.</p>
<p>In conclusion, because of problems I've had configuring colors with Eclipse, even using the <a title="Eclipse Color Theme Plugin" href="http://www.geekgumbo.com/2011/12/07/changing-eclipse-syntax-colors/">Eclipse Color Theme Plugin</a> I wrote about in another post, I find myself using NetBeans to write my code.</p>
<p>I highly recommend you download and try NetBeans.  You can have both IDE's running at the same time without conflicts.  If you don't like NetBeans, you can stay with Eclipse, but in the process of using both, I think you'll find yourself gradually moving to NetBeans as your IDE of choice.</p>
<div id="attachment_4236" class="wp-caption aligncenter" style="width: 189px"><a href="http://www.geekgumbo.com/wp-content/uploads/2012/01/netbeans3.0.jpeg"><img class="size-full wp-image-4236" title="netbeans3.0" src="http://www.geekgumbo.com/wp-content/uploads/2012/01/netbeans3.0.jpeg" alt="" width="179" height="179" /></a><p class="wp-caption-text">The NetBeans Icon</p></div>
]]></content:encoded>
			<wfw:commentRss>http://www.geekgumbo.com/2012/01/21/netbeans-7-1-review/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
		<item>
		<title>The Power of the Internet</title>
		<link>http://www.geekgumbo.com/2012/01/19/the-power-of-the-internet/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=the-power-of-the-internet</link>
		<comments>http://www.geekgumbo.com/2012/01/19/the-power-of-the-internet/#comments</comments>
		<pubDate>Thu, 19 Jan 2012 15:14:25 +0000</pubDate>
		<dc:creator>daleV</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.geekgumbo.com/?p=4217</guid>
		<description><![CDATA[Wow, I'm impressed. Yesterday, the Internet held its first protest. A passive resistance protest in the Gandhi tradition. There were no swear words, no violence, no harmful attacks, well maybe, if you count denial of service for overwhelming email submissions &#8230; <a class="more-link" href="http://www.geekgumbo.com/2012/01/19/the-power-of-the-internet/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.geekgumbo.com/wp-content/uploads/2012/01/internet15.jpg"><img class="alignleft size-full wp-image-4221" title="internet15" src="http://www.geekgumbo.com/wp-content/uploads/2012/01/internet15.jpg" alt="" width="250" height="167" /></a>Wow, I'm impressed. Yesterday, the Internet held its first protest. A passive resistance protest in the Gandhi tradition. There were no swear words, no violence, no harmful attacks, well maybe, if you count denial of service for overwhelming email submissions to Congress.  The Library of Congress reported a denial of service attack by people opposed to the legislation.</p>
<p>It was an Internet blackout.  Not all sites participated, but the fact that major sites, like Google, Reddit, Craigslist, and Wikipedia coordinated on one day to pull this blackout off, and make the public aware of the SOPA and PIPA legislation was a first, and amazing, considering the independent nature of web site owners. One estimate stated over 10,000 web sites participated in the protest. This is not confirmed, but given the Internet has over 100 Million active sites, the number does not seem that far off.</p>
<p>It is estimated that over 300,000 people sent emails, or called, their Congressman protesting SOPA and PIPA in the last 24 hour period, and over 4.5 Million people signed a Google petition protesting the Bills according to the protest organizers.</p>
<p>What is the aftermath of this one day shut-down-your-site protest, and send emails to Congress?</p>
<p>The Seatle Times reports that Florida Sen Marco Rubio, a bill sponsor, went on Facebook to renounce PIPA, and Texas Senator John Coryn used Facebook to urge colleagues to slow down and reconsider the Bills. South Carolina Senator and Tea Party member, Jim DiMint, used Twitter to announce his opposition.</p>
<p>Congressman are rapidly distancing themselves from the Bills as fast as they can. According to Ars Technica count and the Atlantic Wire 18 Senators, mostly Republican, have backed away from the PIPA and SOPA bills in the last 24 hours. Seven of them co-sponsored the Bill. The Seatle Times reports over 20 House members have reversed their positions. On Tuesday this group supported the Bill, on Wednesday they said that the SOPA and PIPA legislation was flawed and unsupportable.</p>
<p>Congress for the first time realized that the Internet is not just a bunch of web sites to be regulated like a bunch of unruly grade school kids, but that the Internet is a political force, and has considerable more power than the media and movie industry, a supporter of SOPA and PIPA. The end result was that Congress suddenly realized that the Internet can stand up and defend itself.</p>
<p>The Motion Picture industries, a sponsor of SOPA and PIPA, called the blackout "a gimmick" and "business interests are resorting to stunts to punish their users or turn them into corporate pawns."</p>
<p>Hollywood has a powerful lobby in Washington. They just found out that they have a very powerful opponent that they didn't know was there. Hollywood and Congress learned today that the Internet community has a say. Anyone who can get millions of people to take action is a political force that Congress will have to consider in the future.</p>
<p>The Internet and technical community have established that they have a say in the politics of our country. That was not quite as evident before yesterday. Let's hope Congress listens in the future, and that the big players in the Internet community realize, and take advantage, of their suddenly acquired power to push for legislation that helps, not hinders, the development of the Internet worldwide.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.geekgumbo.com/2012/01/19/the-power-of-the-internet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Say No to SOPA and PIPA</title>
		<link>http://www.geekgumbo.com/2012/01/18/say-no-to-sopa-and-pipa/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=say-no-to-sopa-and-pipa</link>
		<comments>http://www.geekgumbo.com/2012/01/18/say-no-to-sopa-and-pipa/#comments</comments>
		<pubDate>Wed, 18 Jan 2012 19:56:51 +0000</pubDate>
		<dc:creator>daleV</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.geekgumbo.com/?p=4208</guid>
		<description><![CDATA[Let's shut the Internet down, let's kill the jobs it creates, that way Robert Murdoch can sell more papers.  What am I talking about. Well, it could happen with this new SOPA and PIPA legislation that has been proposed in &#8230; <a class="more-link" href="http://www.geekgumbo.com/2012/01/18/say-no-to-sopa-and-pipa/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.geekgumbo.com/wp-content/uploads/2012/01/wikipedia-sopa-protest5.jpg"><img class="alignleft size-full wp-image-4210" title="wikipedia-sopa-protest5" src="http://www.geekgumbo.com/wp-content/uploads/2012/01/wikipedia-sopa-protest5.jpg" alt="" width="200" height="164" /></a>Let's shut the Internet down, let's kill the jobs it creates, that way Robert Murdoch can sell more papers.  What am I talking about. Well, it could happen with this new SOPA and PIPA legislation that has been proposed in Congress.  This legislation is wrong, and should be stopped.</p>
<p>Let me give you some examples of the power governments have over the Internet that they are just beginning to realize.  I'm a poker player, and yes, I use to play on-line. Admittedly, I don't consider myself that good a poker player, but I still enjoyed the online game.  Note the past tense there.  Back in 2006, on the last day before Congress adjourned, Congress passed the Unlawful Internet Gambling Enforcement Act (UIGEA).  The Bill was attached to a bill that had been passed, the SAFE Port Act(HR4954).  UIGEA was added in conference, and the reading of the bill was waived, in order for Congress to adjourn more quickly.  How the two relate, I don't know.  The bill does not ban online poker, it prohibits exchanging funds related to Internet gambling by banks.  Of course, the bill was so hastily written that Internet gambling is not defined.</p>
<p>The Justice Department decided to enforce this bill in April 2011, on a day known as "Black Friday" in the poker world.  They accused, not the banks, but three prominent poker sites, with bank fraud and illegal gambling.  By the way, no where does it say poker is gambling, and it is called a game of skill by poker aficionados.  The Justice Department effectively turned off the poker sites for US players only. And they've been shut down to US players ever since.</p>
<p>Let's take a look at government Internet censorship.  China is the most stringent Internet censor.  It does more than block sites like other countries.  It also bans a list of key words. If a site contains a banned word anywhere on the site, the site is banned.  China monitors all incoming searches against a list of keywords and sites.  China also crippled VPN's (Virtual Private Networks), the mobile Internet, and phone calls.  Since 2010 the word "freedom" has been banned.  In March 2011, Google complained that the Chinese government was censoring its Gmail service, and making it look like a technical problem at Google.  As a result, Google closed its China offices, and moved to Hong Kong.  Other countries, especially in the Middle East, ban certain type of sites in their countries.</p>
<p>From these past events, it has become increasingly clear to Congress that they can control the Internet.  That's power, and once power is realized, you have created a political football for special interest groups to push laws through that benefit their interests.</p>
<p>What do SOPA and PIPA mean to the use of the Internet?  SOPA and PIPA are two bills currently in Congress.  SOPA stands for "<a title="SOPA" href="http://www.govtrack.us/congress/bill.xpd?bill=h112-3261">Stop Online Piracy Act",Bill HR112-3261 IH</a>, and PIPA is "<a title="PIPA" href="http://www.govtrack.us/congress/bill.xpd?bill=s112-968">Protect IP (Intellectual Property) Act," Bill S112-968 RS</a>.  We're talking copyrighted material: software, pictures, and written articles.  The bills are attempting to stop foreign sites from stealing copyright material from US sites and the Internet.  Sounds like a good idea, but the problem is in the implementation, as in the UIGEA Poker bill.</p>
<p>SOPA pushes enforcement on web site owners.  The way the SOPA bill is set up every site Google, or Wikipedia, with links would need to be monitor those links to make sure no copyrighted material was on the linked to site, an impossible task.  The Bill calls for the site who is in violation, to be subject to seizure, and action can be brought against the owner.  The web site owners must police their site to make sure no copyright infringement takes place.</p>
<p>Anyone who believes that a site is using their copyrighted material, can shut down that site, and you would have to go to court to reopen the site.  A lot of small site owners would not be able to afford lawyer and court costs.  In addition, big sites like Google would be shut down as their is no way the can police their links to the entire Internet.  If one person filed to shut down the site, it would be shut down.  Can you imagine the Internet without Google, or Yahoo, or Wikipedia.</p>
<p>You can help.  As Wikipedia suggests on their site today. You can help by writing your congressman and letting them know that SOPA and PIPA are not good bills for the Internet.  They will kill creativity, jobs, and a lot of Internet sites.  Here's a page that will help you find <a title="Your congressman" href="http://www.congressmerge.com/onlinedb/">your congressman</a> .  Send them an email.  Doesn't have to be a long message.  Just say you don't support SOPA or PIPA.  If enough people do this, they'll get the message.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.geekgumbo.com/2012/01/18/say-no-to-sopa-and-pipa/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP array_push, and other array manipulators</title>
		<link>http://www.geekgumbo.com/2012/01/12/php-array_push-array_pop-array_shift-array_unshift/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=php-array_push-array_pop-array_shift-array_unshift</link>
		<comments>http://www.geekgumbo.com/2012/01/12/php-array_push-array_pop-array_shift-array_unshift/#comments</comments>
		<pubDate>Thu, 12 Jan 2012 20:35:45 +0000</pubDate>
		<dc:creator>daleV</dc:creator>
				<category><![CDATA[Sorting Arrays]]></category>

		<guid isPermaLink="false">http://www.geekgumbo.com/?p=4140</guid>
		<description><![CDATA[Every once and a while I like to take a closer look at a particular function that I use quite frequently. This let's me make sure I'm using that particular function to the best possible effect. I find it also &#8230; <a class="more-link" href="http://www.geekgumbo.com/2012/01/12/php-array_push-array_pop-array_shift-array_unshift/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.geekgumbo.com/wp-content/uploads/2012/01/antarray15.jpg"><img src="http://www.geekgumbo.com/wp-content/uploads/2012/01/antarray15.jpg" alt="" title="antarray15" width="150" height="113" class="alignleft size-full wp-image-4193" /></a>Every once and a while I like to take a closer look at a particular function that I use quite frequently.  This let's me make sure I'm using that particular function to the best possible effect.  I find it also shifts the center of attention from a task to how the function operates.  A different look so to speak.  Today, I want to cover the PHP array manipulator family functions that include: <span style="color:red;">array_push</span>, <span style="color:red;"> array_pop</span>, <span style="color:red;">array_shift</span> and <span style="color:red;">array_unshift</span>.  </p>
<p>All the examples below are visualized with my free, open-source, variable checker that you are welcome to download from my newchk site at <a href="http://www.newchk.com/" title="newchk">www.newchk.com</a>  Documentation on how to use it is on the site.  </p>
<p><span style="color:blue;"><strong>ARRAY_PUSH</strong></span></p>
<p>Array_push($new_array, $var1, $var2, ...) pushes one or more array elements on to the end of an array, in this case, we'll use $new_array as our array.  Seems simple enough.  I want to create a new array, and add some variables to it. Let's take a look.</p>
<p>Let's set up our new array.<br />
<code></p>
<pre class="brush:php">
$new_array = array();
$var1 = "buick";
$var2 = "ford";
$var3 = "toyota";
array_push($new_array, $var1, $var2, $var3);
</pre>
<p></code><br />
Let's take a look at $new_array;</p>
<p><a href="http://www.geekgumbo.com/wp-content/uploads/2012/01/array151.png"><img src="http://www.geekgumbo.com/wp-content/uploads/2012/01/array151.png" alt="" title="array15" width="600" height="75" class="aligncenter size-full wp-image-4167" /></a></p>
<p>If $new_array already exists with elements in it, then new variables are appended to the end of the already existing array.  Let's show that.<br />
<code></p>
<pre class="brush:php">
$var_food1 = "cheese";
$var_food2 = "meat";
$var_food3 = "potatoes";
array_push($new_array, $var_food1, $var_food2, $var_food3);
</pre>
<p></code><br />
Here's what the $new_array looks like now.  </p>
<p><a href="http://www.geekgumbo.com/wp-content/uploads/2012/01/array251.png"><img src="http://www.geekgumbo.com/wp-content/uploads/2012/01/array251.png" alt="" title="array25" width="600" height="128" class="aligncenter size-full wp-image-4171" /></a></p>
<p>Some things to note about the array_push() function.  It is a function, so there is no equal sign used with array_push.  The order the variables are pushed on to the end of the array are in the order their listed in array_push.  We can also use associative keys with array_push(), like so.</p>
<p><code></p>
<pre class="brush:php">
$var_ball1 = "football";
$var_ball2 = "the rock";
$var_ball3 = "hardball";
$ball_array = array("ball_football" => $var_ball1, "ball_basketball" =>$var_ball2, "ball_baseball" =>$var_ball3);
array_push($new_array, $ball_array );
</pre>
<p></code><br />
Here's what the $new_array looks like now.  </p>
<p><a href="http://www.geekgumbo.com/wp-content/uploads/2012/01/array_push351.png"><img src="http://www.geekgumbo.com/wp-content/uploads/2012/01/array_push351.png" alt="" title="array_push35" width="600" height="196" class="aligncenter size-full wp-image-4173" /></a></p>
<p>We've done a little more here than just assign associative keys to the array.  We've jumped to what is called a multi-dimensional array.  We now have an array within an array.  If you look at the code above you see when working with multi-dimensional arrays, you build the inner array first, in this case the $ball_array, and then do an array_push using $ball_array as the variable in the array_push.</p>
<p>What got me to write this article was I was trying to do an array_push in a foreach loop using a multi-dimensional array.  This is not well documented on the Internet.  I had to look for awhile to find the proper syntax.  When that happens I tend to write an article about it.  The trick is to make a separate array variable before doing the array_push, and then add that array as a variable to the array_push().</p>
<p>Where do you most often use the array_push() function?  Most of the time it's with a foreach loop, where your repetitively looping through an array, and creating a new subset of the array with array_push.  Let's see.<br />
<code></p>
<pre class="brush:php">
$for_array = array();
$i = 1;
foreach( $new_array as $row)
{
	if($i < 7 )
	{
		array_push($for_array, $row );
	}
	$i ++;
}
</pre>
<p></code></p>
<p>Here, with a foreach loop, we've removed the second array, and are back to a one dimensional array, called $for_array.</p>
<p><a href="http://www.geekgumbo.com/wp-content/uploads/2012/01/array_push451.png"><img src="http://www.geekgumbo.com/wp-content/uploads/2012/01/array_push451.png" alt="" title="array_push45" width="600" height="125" class="aligncenter size-full wp-image-4175" /></a></p>
<p><span style="color:blue;"><strong>ARRAY_POP</strong></span></p>
<p>Array_pop($array) pops an element off the end of an array.  Let's do it </p>
<p><code></p>
<pre class="brush:php">

$spuds = "";
$spuds = array_pop($for_array);
</pre>
<p></code><br />
Our $for_array now is minus the last element in the previous array. That element is now in a separate $variable called $spuds.  Array_pop() removes the last element in the array, which you can then put into a separate variable.</p>
<p><a href="http://www.geekgumbo.com/wp-content/uploads/2012/01/array551.png"><img src="http://www.geekgumbo.com/wp-content/uploads/2012/01/array551.png" alt="" title="array55" width="600" height="150" class="aligncenter size-full wp-image-4177" /></a></p>
<p><span style="color:blue;"><strong>ARRAY_SHIFT</strong></span></p>
<p>What if we wanted to remove the first element in the array, instead of the last, like we do with array_pop().  We'll we use array_shift to do this, like so.<br />
<code></p>
<pre class="brush:php">

$gm = "";
$gm = array_shift($for_array);
</pre>
<p></code><br />
The $for_array we started with is getting shorter as the first variable in the array is removed, and put, in this case, in the variable $gm.</p>
<p><a href="http://www.geekgumbo.com/wp-content/uploads/2012/01/array651.png"><img src="http://www.geekgumbo.com/wp-content/uploads/2012/01/array651.png" alt="" title="array65" width="600" height="132" class="aligncenter size-full wp-image-4179" /></a></p>
<p><span style="color:blue;"><strong>ARRAY_UNSHIFT</strong></span></p>
<p>Finally, since array_push added new variables to the end of the array, you probably have guessed that there is a function that adds variable to the front of the array, and you'd be right. I present to you, array_unshift().  Array_unshift() puts the new variable as the first element in your array.  Let's do it.<br />
<code></p>
<pre class="brush:php">

$gm2 = "cadillac";
array_unshift($for_array, $gm2);
</pre>
<p></code><br />
Our array now looks like this.</p>
<p><a href="http://www.geekgumbo.com/wp-content/uploads/2012/01/array751.png"><img src="http://www.geekgumbo.com/wp-content/uploads/2012/01/array751.png" alt="" title="array75" width="600" height="113" class="aligncenter size-full wp-image-4180" /></a></p>
<p>We've replaced the "buick" we've taken off the top of the array with array_shift, and upgraded to a "cadillac" with array_unshift.  Nice trade-up.</p>
<p>If your working with multi-dimensional arrays, the key is to treat the nested arrays as a single array variable, and then use the four functions we've covered: array_push, array_pop, array_shift and array_unshift with that single array variable.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.geekgumbo.com/2012/01/12/php-array_push-array_pop-array_shift-array_unshift/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Welcome, the Cinnamon 1.1.3 Desktop</title>
		<link>http://www.geekgumbo.com/2012/01/08/welcome-the-cinnamon-1-1-3-desktop/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=welcome-the-cinnamon-1-1-3-desktop</link>
		<comments>http://www.geekgumbo.com/2012/01/08/welcome-the-cinnamon-1-1-3-desktop/#comments</comments>
		<pubDate>Sun, 08 Jan 2012 04:30:15 +0000</pubDate>
		<dc:creator>daleV</dc:creator>
				<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://www.geekgumbo.com/?p=4116</guid>
		<description><![CDATA[Well, Ubuntu really messed up, yep, well actually Gnome messed up too, and we have definitely opened Pandora's box and let the evil's out.  Everyone wants an edge, and the perception is the edge is the desktop.  I guess, if &#8230; <a class="more-link" href="http://www.geekgumbo.com/2012/01/08/welcome-the-cinnamon-1-1-3-desktop/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.geekgumbo.com/wp-content/uploads/2012/01/cinnamon2.jpeg"><img class="alignleft size-full wp-image-4118" title="cinnamon2" src="http://www.geekgumbo.com/wp-content/uploads/2012/01/cinnamon2.jpeg" alt="" width="120" height="120" /></a>Well, Ubuntu really messed up, yep, well actually Gnome messed up too, and we have definitely opened Pandora's box and let the evil's out.  Everyone wants an edge, and the perception is the edge is the desktop.  I guess, if Microsoft can switch its desktop around, and make users eat it, why can't the Linux distros do the same.</p>
<p>Let's review.  In the beginning there was X Windows, and every one was happy, but then the software gurus got the brainy idea of doing something like Microsoft Windows for X Windows.  What followed was a series of initial desktop applications, like KDE, Gnome, Xfce, and LXDE.  There were a few others, along with a couple of bare window managers that sprang up.  With the wide array of choices, folks interested in Linux were confused as to which distro to use, eventually KDE and Gnome came to the forefront.</p>
<p>In the meantime, while Linux distros were competing for users, Microsoft took over the world.  The distro's started to stabilize around Gnome 2, and folks got used to that desktop. Linux started picking up some market share.  I personally feel Gnome 2 ended up being the desktop of choice, although no disrespect to KDE, a noble competitor, especially with their latest release.  The emphasis in Gnome 2 was on productivity, not on novice users.</p>
<p>If you follow <a title="DistroWatch" href="http://distrowatch.com/">DistroWatch</a>, which has been ranking the distros now since May, 2001, Ubuntu has been the top distro for five years.  It ran with Gnome 2, was stable, and had good support.  It was the Microsoft of Linux distros. Now Linux Mint has taken over.</p>
<div id="attachment_4125" class="wp-caption aligncenter" style="width: 610px"><a href="http://www.geekgumbo.com/wp-content/uploads/2012/01/cinnamon41.jpeg"><img class="size-full wp-image-4125" title="cinnamon4" src="http://www.geekgumbo.com/wp-content/uploads/2012/01/cinnamon41.jpeg" alt="" width="600" height="375" /></a><p class="wp-caption-text">Cinnamon Desktop</p></div>
<p>&nbsp;</p>
<p>What happened?  I like to think a bunch of egos got in each others way.  The Gnome team decided they had to match Microsoft's 3d graphics and transparent desktop and decided to build Gnome 3.  It was their design, and when Canonical, the maker of Ubuntu, saw it, they said, no way, we can do it better, and the world will follow us, because we're number one.  The Gnome team wouldn't give in to Canonical, and Canonical wouldn't give in to the Gnome team.  Canonical developed their own Unity desktop.  Both teams wanted to make the desktop more friendly to the dumb Window's users as they saw Microsoft stumble with Vista.</p>
<p>The result was both teams stumbled, where they might not have if they had worked together.  The losers were the already dedicated Linux users who just wanted to get their work done.  They didn't care about 3d or transparency, they wanted the productivity that was provided by Gnome 2.  So Ubuntu and Gnome both stumbled by taking Gnome 2 away from the user, and forcing the user to use their latest creations, Gnome 3 and Unity.  Each turned out to be not ready for prime time.  Heck, Microsoft can foist bugs on us why not buggy desktops, wrong.</p>
<p>Mint decided to take a different approach.  They couldn't stay with Gnome 2, because the Gnome team wouldn't support it.  They decided to make Gnome 3 as close to Gnome 2 as possible to ease their users problems with moving to the new desktop, and allow users to continue being productive as they were before.  The result was a flood away from the Ubuntu distro to the Mint distro.  Mint is now number one.</p>
<p>With the knowledge the Mint team gained developing their Gnome 2 version of Gnome 3, they used to create a new desktop offering, called Cinnamon.  Mint just released <a title="The Cinnamon Desktop" href="http://cinnamon.linuxmint.com/?p=99">Cinnamon 1.1.3</a>.  Whew, that was a long way to go to get here, but I thought the story was worth it.</p>
<p>Initially the Mint team with their program, called Mate, tried to mimic Gnome 2 using GTK+ and the Gnome shell, but that approach didn't provide what Mint needed in desktop functionality.</p>
<p>Cinnamon is a yet another new desktop, but it's different.  First, if you've loaded Mint, and like Mint, you'll like Cinnamon. Cinnamon's main focus is on productivity.  Unity and Gnome 3's focus is on making Linux easy to use for the new user.</p>
<p><a href="http://www.geekgumbo.com/wp-content/uploads/2012/01/Cinnamon-1.1.3.png"><img class="aligncenter size-full wp-image-4121" title="Cinnamon-1.1.3" src="http://www.geekgumbo.com/wp-content/uploads/2012/01/Cinnamon-1.1.3.png" alt="" width="600" height="345" /></a></p>
<p>Cinnamon offers a bottom panel you can configure and hide.  It has all the features of the current Mint desktop, including an advanced menu system with the same layout as the Mint menu.  It has a custom panel launcher, and an advanced sound control to manage your and control your music.</p>
<p>Cinnamon is still in the early stages of its life.  They are working on a graphical configuration tool, and extensions and themes.  The important thing is Cinnamon is stable.  Cinnamon can be loaded with, or replace, any of those other desktops.</p>
<p>Cinnamon bears watching. KDE's 4.7 release is nice, and if you're a Fedora fan, this is the way to go, but if you like the old productive Gnome 2 desktop, it looks to me like Cinnamon will be the desktop of choice down the road, not Unity.</p>
<p>There's something else important about Cinnamon.  Mint didn't come out and say, "Use us, it's your only choice, and tough luck if there's bugs", like Gnome 3 and Unity did.  You can use Mint, while Cinnamon is continuing development, and has the proper time to bake, and become very stable.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.geekgumbo.com/2012/01/08/welcome-the-cinnamon-1-1-3-desktop/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>PHP Tools</title>
		<link>http://www.geekgumbo.com/2011/12/31/php-tools/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=php-tools</link>
		<comments>http://www.geekgumbo.com/2011/12/31/php-tools/#comments</comments>
		<pubDate>Sat, 31 Dec 2011 15:15:37 +0000</pubDate>
		<dc:creator>daleV</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.geekgumbo.com/?p=4097</guid>
		<description><![CDATA[Happy New Year!  For the start of the new year, I thought I'd review some of the PHP tools you should be learning, and using, to up your game in the coming year. One of the challenges of a technical &#8230; <a class="more-link" href="http://www.geekgumbo.com/2011/12/31/php-tools/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.geekgumbo.com/wp-content/uploads/2011/12/images.jpeg"><img class="alignleft size-full wp-image-4106" title="images" src="http://www.geekgumbo.com/wp-content/uploads/2011/12/images.jpeg" alt="" width="267" height="189" /></a>Happy New Year!  For the start of the new year, I thought I'd review some of the PHP tools you should be learning, and using, to up your game in the coming year.</p>
<p>One of the challenges of a technical career is that your always wondering if you learn a new technology, if its going to be a waste of time.  You're constantly learning new things, and every time you're presented with the challenge of implementing something you've never done before you have to wonder if this technology will be around in another three years.  Technology moves that fast.</p>
<p>As you gain more experience in your chosen expertise, you get more selective in the tools your willing to spend time to learn.  Along those lines I thought it might be nice to do a light over view of where I see PHP tools at this moment in time.  These are the tools that I hear currently mentioned the most on the web, in workshops, and conferences.  In other words, the current tools of choice, and the tools you should seriously consider working with and learning.</p>
<p>First of all, we all should be using object-oriented coding.  <span style="color: #008080;"><a title="PHP 5.3" href="http://php.net/releases/5_3_0.php"><span style="color: #008080;">PHP 5.3</span></a></span> is the way to go for now. The old procedural coding, for the most part, is dead.  I believe colleges are all teaching object-oriented now, so this is not a big deal.</p>
<p>Although, it seems MySQL is still the database of choice, I've seen a lot of use of two other databases you should be considering.  A file based <span style="color: #008080;"><a title="SQLite" href="http://www.sqlite.org/"><span style="color: #008080;">SQLite</span></a></span>.  It works great, and is super quick, except when you start to get into heavy transactions.  It's used to replace configuration and XML files, works great for mobile devices, and for small and medium size web site databases.</p>
<p>You might think that MySQL kicks in about then, but if you want to consider an alternative, I've been seeing the <span style="color: #008080;"><a title="PostgreSQL" href="http://www.postgresql.org/"><span style="color: #008080;">PostgreSQL</span></a></span> database coming on strong.  For one thing, it's not Oracle controlled.  Oracle starts charging after you cross over a certain usage line.  It is the database of choice for raw speed doing complex tasks, like constantly displaying data for constantly updating weather monitors.</p>
<p>For JavaScript, hands down <span style="color: #008080;"><a title="jQuery" href="http://jquery.com/"><span style="color: #008080;">jQuery</span></a></span> has been adopted universally.  Other tools I hear mentioned are <span style="color: #008080;"><a title="Mootools" href="http://mootools.net/"><span style="color: #008080;">Mootools</span></a></span>, and <span style="color: #008080;"><a title="Dojo" href="http://dojotoolkit.org/"><span style="color: #008080;">Dojo</span></a></span>.   For Ajax applications, I again hear jQuery.  jQuery has become so popular that is incorporated into a lot of PHP frameworks.</p>
<p>Speaking of PHP frameworks, there is a lot of buzz surrounding <span style="color: #008080;"><a title="Zend Framework 2" href="http://framework.zend.com/wiki/pages/viewpage.action?pageId=42303506"><span style="color: #008080;">Zend Framework 2</span></a></span>. The developers have reworked this PHP Framework to improve overall performance and take advantage of all the new features in PHP 5.3.  There has been an open forum during the development to get the best ideas from other PHP developers and implement them.  Consideration has been given to improving performance every step of the way.  The framework is currently in Beta release.  The documentation on the web on how to use this new release is starting to swell.  There are a lot of other good frameworks out there, but you should still spend some time to get to know ZF2, as its called, because of the extensive libraries of code available to ease your coding tasks.</p>
<p>Second, PDO and ORM for the database to PHP object type mismatch are important technologies.  You use PDO, for example, if you started with a MySql database and wanted to switch to the PostgreSQL database.  PDO makes switching databases easier.  ORM translates SQL database output to PHP objects for use in your application.  It makes coding database applications faster and easier with less problem in getting SQL queries correct.</p>
<p>There are many ORM options out there, however, the new Zend Framework 2 has settled on using Doctrine 2.  This makes <span style="color: #008080;"><a title="Doctrine 2" href="http://www.doctrine-project.org/"><span style="color: #008080;">Doctrine 2</span></a></span> the de facto standard to learn for applying PDO and ORM to your application, and make no mistake, don't let those SQL bigots get to you.  It is a benefit to code with an ORM.  Take it from me that has done it both ways.</p>
<p>A lot of frameworks now include testing components in the framework.  The testing component that is fast becoming the de facto standard is <span style="color: #008080;"><a title="PHPUnit" href="http://www.phpunit.de/manual/3.6/en/automating-tests.html"><span style="color: #008080;">PHPUnit</span></a></span>.  One new technology you should gradually start applying is unit tests.  The best way to start is to set up the testing environment, and write a couple of tests for your project, then gradually write a couple of more, expanding your test suite. Pretty soon you'll get the hang of it and it will become second nature.</p>
<p>For version control the current hot software is <span style="color: #008080;"><a title="Git" href="http://git-scm.com/"><span style="color: #008080;">Git</span></a></span>.  You should be using version control for all your projects.  Because Git is so popular, <span style="color: #008080;"><a title="Github" href="https://github.com/"><span style="color: #008080;">GitHub</span></a></span> has become a mecca for releasing open source software, install Git, and join GitHub. Git runs on all platforms, if you haven't used version control software it's time to start.</p>
<p>For documenting your code you should be following the <span style="color: #008080;"><a title="phpDocumentor" href="http://www.phpdoc.org/"><span style="color: #008080;">phpDocumentor</span></a></span> syntax.  phpDocumentor has been the standard for a couple of years now.  My time spent learning how to document my code properly was well worth the time I spent looking over the phpDocumentor documentation.</p>
<p>Coding to a standard, so that all your code is written in the same format is good coding.  To help you check your code for syntax errors, and format your code for your custom style automatically, use <span style="color: #008080;"><a title="PHP Code Sniffer" href="http://pear.php.net/package/PHP_CodeSniffer/redirected"><span style="color: #008080;">PHP Code Sniffer</span></a></span>.  This will also check your  CSS, and JavaScript. PHP Code Sniffer is installed through the Pear library.</p>
<p>Incidentally, if you're wondering what good code formatting looks like, I can recommend two references that I've run across.  One is on the web, in the <span style="color: #008080;"><a title="Kohana styling" href="http://kohanaframework.org/3.0/guide/kohana/conventions"><span style="color: #008080;">Kohana</span></a></span> framework documentation, and the other is in a book, "<span style="color: #008080;"><a title="Advanced PHP Programming" href="http://www.amazon.com/Advanced-PHP-Programming-George-Schlossnagle/dp/0672325616/ref=sr_1_1?s=books&amp;ie=UTF8&amp;qid=1325341062&amp;sr=1-1"><span style="color: #008080;">Advanced PHP Programming</span></a></span>" by George Schlossnagle.  The important thing on code formatting is to choose a style and consistently use it in all your coding.</p>
<p>If you'd like a report on your code base, the number of lines of code, the complexity, the percentage of comments, number of classes, possible coding violations, bad practices with a bunch of other metrics.  The tool I hear mentioned is <span style="color: #008080;"><a title="Sonar" href="http://docs.codehaus.org/display/SONAR/Documentation"><span style="color: #008080;">Sonar</span></a></span>.</p>
<p>To build your application, run your test suite, and run every thing else with one command, like a "make" file, the application you want is <span style="color: #008080;"><a title="Phing" href="http://www.phing.info/trac/"><span style="color: #008080;">Phing</span></a></span>.</p>
<p>If you would like to automate several projects and run them on a schedule, "<span style="color: #008080;"><a title="CruiseControl" href="http://cruisecontrol.sourceforge.net/   "><span style="color: #008080;">CruiseControl</span></a></span>," will do that for you.  CruiseControl offers flexible scheduling, notifications, and integrates with Phing with a "<span style="color: #008080;"><a title="PHP Under Control" href="http://phpundercontrol.org/"><span style="color: #008080;">PHP Under Control</span></a></span>" plugin.</p>
<p>To solve your scaling problems for those web sites that start out small and get bigger really fast, and to get off of having to depend on your own hardware solution, or that of a commercial hosting company, there is a lot of good reasons to try out <span style="color: #008080;"><a title="Amazon Web Services" href="http://aws.amazon.com/"><span style="color: #008080;">Amazon Web Services</span></a></span>. There are other services out there, but Amazon stands way above all the others in features and pricing.</p>
<p>Don't get me wrong.  In each one of these categories other companies and developers have spent their time creating tools that do the same thing.  These other tools may be just as good, or even better.  I don't mean to put any of these other tools down.  All I'm suggesting is, at this moment in time, this is a tool you should consider spending your time learning, and that it probably would not waste your time.  If you prefer another tool, go for it, and let me know so I can take a look at it too.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.geekgumbo.com/2011/12/31/php-tools/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Thoughts for the Holidays</title>
		<link>http://www.geekgumbo.com/2011/12/23/thoughts-for-the-holidays/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=thoughts-for-the-holidays</link>
		<comments>http://www.geekgumbo.com/2011/12/23/thoughts-for-the-holidays/#comments</comments>
		<pubDate>Fri, 23 Dec 2011 15:54:59 +0000</pubDate>
		<dc:creator>daleV</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.geekgumbo.com/?p=4078</guid>
		<description><![CDATA[I was in the process of writing a technical article, and all of a sudden the Christmas spirit came upon me.  I had to stop.  My wife usually does the Christmas shopping for the family and kids.  I buy for &#8230; <a class="more-link" href="http://www.geekgumbo.com/2011/12/23/thoughts-for-the-holidays/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<div id="attachment_4081" class="wp-caption alignleft" style="width: 250px"><a href="http://www.geekgumbo.com/wp-content/uploads/2011/12/happyholiday.jpg"><img class="size-full wp-image-4081" title="happyholiday" src="http://www.geekgumbo.com/wp-content/uploads/2011/12/happyholiday.jpg" alt="" width="240" height="210" /></a><p class="wp-caption-text">Happy Holidays</p></div>
<p>I was in the process of writing a technical article, and all of a sudden the Christmas spirit came upon me.  I had to stop.  My wife usually does the Christmas shopping for the family and kids.  I buy for her.  I've been doing a lot of shopping at Amazon.  Times are changing.  Usually, I don't get the bug until a couple of weeks before the holidays. On-line shopping seems to delay catching the spirit.  It seems a little sterile.  But when I do get the spirit, I let it roll over me, and I sit back and take another look at my life.  I'm going to ramble a little, bear with me.</p>
<p>I'm thankful I am living, and relatively healthy.  There are many folks out there that have a much harder life, because of their health.  My son had a concert given at an assisted living home.  I took away from the concert that I am thankful that I don't need a wheelchair.  Although it made me conscious that I might, when I get older.  Those people who have lost limbs, because they were involved in political conflicts, or wars, surely have a harder life than I.  I am thankful for their sacrifice for the betterment of us all, and thankful that I have been blessed enough not to come in harms way myself.</p>
<div id="attachment_4082" class="wp-caption alignleft" style="width: 285px"><a href="http://www.geekgumbo.com/wp-content/uploads/2011/12/christmascat.jpg"><img class="size-full wp-image-4082" title="christmascat" src="http://www.geekgumbo.com/wp-content/uploads/2011/12/christmascat.jpg" alt="" width="275" height="183" /></a><p class="wp-caption-text">Christmas Cat</p></div>
<p>I am thankful I am living, because this truly is a marvelous planet we live on that has a multitude of wonders.  I marvel at the beautiful sunsets, the ocean, and the mountains.  I marvel at our animals.  I like watching them move and respond to their surroundings.  I love their defensive natures and wonder what has caused them to be that way their genes or their childhood.  I wonder about their lives.  From watching my pets, and the nature channel, I am aware that they too have feelings.  That they care for their family.   I wonder if God has truly abandoned them at death, or if they have a heaven of their own.</p>
<p>Yes, we have free will, and can decide whether we believe, or not, which supposedly means for those that make that choice, their spirit will go on beyond death, but what about all of God's creatures.  What a diversity of animals we have on this planet.  Beautiful animals, vicious animals looking for food to stay alive.  All the animals and plants on this earth live in the moment.  They live in the now.  We humans live in the past, present, and future, and what a mess that creates.  I strive to live in the now and take one day at a time, one moment at a time.  It makes life so much more pleasant.  "What if" doesn't worry me any longer, or at least, I like to believe that.  It's tough to maintain that Buddha nature.</p>
<p>Even though I strive to live in the moment, I am keenly aware that we only go through life once.  You're only in 6th grade once, only 15 once, only 21 once, only 35 once, and only 65 once.  Each year of my life seems like my surroundings, my reaction to those surroundings, my goals, and my desires of the moment will go on forever.  It's an illusion.  A dream we foist on ourselves.  The man at 65 has different priorities then the boy at 21.  We can't go back.  I can't go back and date my dream of my high school sweetheart, when I'm 55.  Our memories trick us.  What we forget is our high school sweetheart is 55 now also, and probably has a family, and an entirely different life, and different desires than she had when you were slobbering all over her.  Your memory pictures her at 16, not 55. You can take solace in that, hopefully, you're a memory for her too, and then lament you never did get it together.</p>
<p>What would our lives have been if we had married some one else?  Well, you didn't, and it best to acknowledge the pleasure in your fantasy, and at the same time come back to earth, and tell your wife, or husband, you appreciate and love her.  You married her, because you wanted her as your life partner, honor that, it's Christmas.</p>
<p>My own limitations come to mind.  I was a late bloomer, it made me feel not equal through out my life.  That I somehow wasn't equal to those that were blessed with their families love throughout their childhood.  That I wasn't equal to the kids that went out for high school football, or for you girls, the kids that were high school cheerleaders.  This is a cross that we bear from our childhood environment and upbringing.  We may never be released from these crosses during our lives, until our deaths.  It's a cross we carry, like baggage, through out our lives.  That makes it important for me to tell my kids that I love them every day, and I do.</p>
<div id="attachment_4083" class="wp-caption alignleft" style="width: 285px"><a href="http://www.geekgumbo.com/wp-content/uploads/2011/12/Christmasfamily5.jpg"><img class="size-full wp-image-4083 " title="Christmasfamily5" src="http://www.geekgumbo.com/wp-content/uploads/2011/12/Christmasfamily5.jpg" alt="" width="275" height="202" /></a><p class="wp-caption-text">Family</p></div>
<p>We believe we will be better parents than our parents, but we too find that having and raising kids is a first time experience for us all.  Each of us has to figure out how to raise kids without an instruction manual. Some are better, than others.  In the end, it isn't all your doing.  Every kid, like every pet is different.  They have different personalities and quirks.  For those, who have kids that you wish were different, that they were good, instead of bad, that they didn't do drugs, or get in trouble with the law.  Take a moment, and forgive yourself.  Its not all your doing.  You walked through life, and did your best, or not, when you were raising your kids.  Yes, you want it back, you want to do it all over, but you can't.  And so that's baggage you carry, I hope you can find a way to lighten your load.  Forgive yourself, and then forgive your kids.</p>
<p>Knowing that you only go through life once, I wish you well, and hope that you find your passion.  What do you like to do, what do you find yourself doing when your not working.  If you truly love doing something, you should go toward it.  Work in a job where you do something your passionate about.  I love computers, and I am blessed that I can make a living working with computers.  I've loved them since I was young.  It makes coming to work, not work.  I don't mind staying late at times, when I get interested in what I'm doing.  You can't do that if you don't follow your passion.</p>
<p>Don't just work to earn a living.  It will make life so much less enjoyable and harder for you.  Get the degrees you need to be a full fledged member of a select group of people that have the same passion that you do, and then strive to be the best you can be at your passion.  Making a living will come from that passion.  Don't settle, have the life you want, not the life that was determined by chance.  Care about how you spend your time on earth, you are only here once.</p>
<p>I wish you and your family a nice holiday of enjoying each other, enjoy the food, enjoy the spirit.  Realize that we all have dysfunctional families and dysfunctional family members.  Rather than condemn the wayward son, instead accept him and realize that he, or she, is also living their life, the way they want to live it.  Every one of us has chosen our lives.  We have made the choices that put us right where we are at this moment.  Honor each others life, and allow it to be OK.</p>
<p>In closing, I want to thank my readers.  Your coming back to the site time and time again is what keeps me writing and caring.  It's my small way of giving back to others what has made my life so enjoyable.  Thank you.  Come back often.  Enjoy your family.  Enjoy the holidays.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.geekgumbo.com/2011/12/23/thoughts-for-the-holidays/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Setting the Focus on the Google Home Page</title>
		<link>http://www.geekgumbo.com/2011/12/10/setting-the-focus-on-the-google-home-page/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=setting-the-focus-on-the-google-home-page</link>
		<comments>http://www.geekgumbo.com/2011/12/10/setting-the-focus-on-the-google-home-page/#comments</comments>
		<pubDate>Sat, 10 Dec 2011 15:43:48 +0000</pubDate>
		<dc:creator>daleV</dc:creator>
				<category><![CDATA[Browsers]]></category>

		<guid isPermaLink="false">http://www.geekgumbo.com/?p=4060</guid>
		<description><![CDATA[This is just a quick hitter for those folks that use Firefox as their main browser, and Google as their home page. &#160; I am getting tired of having to reconfigure my system every time we get automatic updates.  A &#8230; <a class="more-link" href="http://www.geekgumbo.com/2011/12/10/setting-the-focus-on-the-google-home-page/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>This is just a quick hitter for those folks that use Firefox as their main browser, and Google as their home page.</p>
<div id="attachment_4063" class="wp-caption aligncenter" style="width: 610px"><a href="http://www.geekgumbo.com/wp-content/uploads/2011/12/tabfirefox5.5.png"><img class="size-full wp-image-4063" title="tabfirefox5.5" src="http://www.geekgumbo.com/wp-content/uploads/2011/12/tabfirefox5.5.png" alt="" width="600" height="398" /></a><p class="wp-caption-text">The Problem: the Focus is in the upper URL bar not in the Google Search box in a new Tab window</p></div>
<p>&nbsp;</p>
<p>I am getting tired of having to reconfigure my system every time we get automatic updates.  A couple of months ago, it was Microsoft, in the guise of a security update, adding a browser toolbar that populated new tab windows with the Bing search bar.  That was sneaky, and a sign of things to come.  I wrote <a title="Swapping the Bing Search Bar" href="http://www.geekgumbo.com/2011/09/13/microsoft-swaps-bing-into-your-firefox-search/">an article</a> on how to fix this problem, if you find the Bing search engine popping up in your browsers new tab window.</p>
<p>The next gaff from Microsoft was when they "inadvertently" removed the Chrome browser from your computer in yet another security update. You can <a title="Microsoft removes Chrome" href="http://www.geekgumbo.com/2011/10/01/microsoft-removes-chrome/">read about that one here</a>.</p>
<p>I have VLC loaded to view videos in Firefox.  I recently discovered that Apple changed Firefox to use QuickTime instead of VLC. You can see this, and change it back in Firefox by going to Firefox options in the upper left Firefox icon, and selecting the Applications tab. Scroll down and you'll see Apple's QuickTime on all your video files. If you click the Action setting you can change it back.</p>
<div id="attachment_4065" class="wp-caption aligncenter" style="width: 610px"><a href="http://www.geekgumbo.com/wp-content/uploads/2011/12/tabfirefox4.5.png"><img class="size-full wp-image-4065" title="tabfirefox4.5" src="http://www.geekgumbo.com/wp-content/uploads/2011/12/tabfirefox4.5.png" alt="" width="600" height="550" /></a><p class="wp-caption-text">Changing back to VLC instead of Quicktime</p></div>
<p>&nbsp;</p>
<p>The latest annoyance comes from Firefox on their latest browser update.  For those, like me, who have been using Google as their home page for years, instead of those distracting portals, you'll find that when you open a new tab window in Firefox, Google home page will come up, but the focus of where you start typing is in the Firefox's upper URL window, instead of in the Google Home pages search box where it always use to be, see the first picture above.</p>
<p>The problem is when you immediately start typing your search query, it types in the upper URL bar and messes the URL up and doesn't search properly.  Before the focus was on the Google home page's search box when opening a new tab window, and you could start typing immediately.</p>
<p>What this means is when you open a new browser tab window in Firefox, and the Google home page opens, you also have to click in the search box before you start typing your search query.  An extra annoying step.  This is a consistent annoyance for those who are use to just typing their search query as soon as the tab window opens.</p>
<p>If you would like to change it back, in the Firefox top URL window, type "<span style="color: #339966;">about:config</span>" and hit return.  Ignore the warning, and say you'll "be careful" and Firefox config will open.</p>
<p>In the top filter bar, type "<span style="color: #339966;">focus</span>".  I think Firefox knew they may be making a mistake in changing the focus, because the setting you need to change, "<span style="color: #339966;">newtaburl.focus_urlbar</span>" is in bold, hmmm.  Double click anywhere on that line, and the "true" will change to "false" which is what you want. Close the browser and restart it.</p>
<div id="attachment_4067" class="wp-caption aligncenter" style="width: 610px"><a href="http://www.geekgumbo.com/wp-content/uploads/2011/12/tabfirefox1.5.png"><img class="size-full wp-image-4067" title="tabfirefox1.5" src="http://www.geekgumbo.com/wp-content/uploads/2011/12/tabfirefox1.5.png" alt="" width="600" height="416" /></a><p class="wp-caption-text">Changing back to the Google Search Bar Focus</p></div>
<p>&nbsp;</p>
<p>Now when you go to a new tab window in Firefox, and your Google home page loads, you'll find you can just start typing, like you use to do, and the search query your typing will be in the Google search bar, not on the top URL bar.  Enjoy.</p>
<div id="attachment_4068" class="wp-caption aligncenter" style="width: 610px"><a href="http://www.geekgumbo.com/wp-content/uploads/2011/12/tabfirefox3.5.png"><img class="size-full wp-image-4068" title="tabfirefox3.5" src="http://www.geekgumbo.com/wp-content/uploads/2011/12/tabfirefox3.5.png" alt="" width="600" height="393" /></a><p class="wp-caption-text">All Fixed Up with the focus back in the Google Search Bar</p></div>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.geekgumbo.com/2011/12/10/setting-the-focus-on-the-google-home-page/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
	</channel>
</rss>

