<?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>Quinterox &#187; Blog</title>
	<atom:link href="http://www.quinterox.com/content/category/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.quinterox.com/content</link>
	<description>Cesar Quinteros</description>
	<lastBuildDate>Sun, 20 Jun 2010 04:51:28 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Limited Data Plans &#8211; Hindering The Internet</title>
		<link>http://www.quinterox.com/content/blog/limited-data-plans-hindering-the-internet/</link>
		<comments>http://www.quinterox.com/content/blog/limited-data-plans-hindering-the-internet/#comments</comments>
		<pubDate>Sat, 19 Jun 2010 16:04:01 +0000</pubDate>
		<dc:creator>Cesar Quinteros</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[blog internet data plans]]></category>

		<guid isPermaLink="false">http://www.quinterox.com/content/?p=843</guid>
		<description><![CDATA[Are the limited data plans recently introduced to consumers a bad thing or a good thing? I think they will hinder the internet! Check out why.]]></description>
			<content:encoded><![CDATA[<h1>The Past</h1>
<p>Over a decade ago internet providers made the bold move of taking internet access &#8220;off the clock&#8221; by eliminating time restrictions on their service. This along with the ever-evolving connections made the internet  the ideal canvas for creative development. Suddenly the average person was able to generate content that would reach a vast amount of people. This development paved the way for many entrepreneurs. Life on the internet was good, content was free-flowing, accessible, and very cheap to generate. </p>
<h1>Today</h1>
<p>As of June 7, 2010 AT&#038;T introduced two new data plans (and so did many other providers) they said would encourage many users to get a smartphone because they were &#8220;inexpensive&#8221;. While doing this however they discontinued their unlimited data plan forcing new users to pick between a 200 MB plan or a 2 GB plan. Those who wished to keep their unlimited plan could do so as long as they kept their plan (or AT&#038;T allows them to). Though a large percent of data users do not normally go over the 2 GB allowance, the limitation will start to make them think twice before watching a video on youtube, downloading a new app, or watching a streaming movie. And in today&#8217;s  ever-evolving world of mobile devices data transfer will play a larger, more important role as new applications and features are developed.</p>
<h1>Tomorrow</h1>
<p>In the long run the limitations set on users via data caps will hinder the development of the internet and of mobile devices. Users, as I said before will have to think twice about doing anything on their phone that will require a hefty amount of data usage. As time passes, the restriction will offset more and more users to using a wifi connection instead, if enough of this happens there is a possibility ISPs will raise their prices or cap users. And hey, they have already started! Just check out <a href="http://gizmodo.com/5043253/comcasts-250gb-data-caps-now-official-starting-in-october">Gizmodo&#8217;s article</a>. Agh! </p>
<p>So where do you stand? Do you think these new and &#8220;affordable&#8221; plans are good? How much data do you normally use? I seem to be using about 3-4 GB on monthly on my iPhone.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.quinterox.com/content/blog/limited-data-plans-hindering-the-internet/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Twitter: More Than Just Ham Sandwiches</title>
		<link>http://www.quinterox.com/content/blog/twitter-more-than-just-ham-sandwiches/</link>
		<comments>http://www.quinterox.com/content/blog/twitter-more-than-just-ham-sandwiches/#comments</comments>
		<pubDate>Fri, 23 Apr 2010 04:48:35 +0000</pubDate>
		<dc:creator>Cesar Quinteros</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[twitter uses]]></category>

		<guid isPermaLink="false">http://www.quinterox.com/content/?p=802</guid>
		<description><![CDATA[Twitter has been ridiculed by many because of the abundance of trivial tweets that flow through its veins. The truth is that Twitter is a lot more useful than what many of us have come to think or been led to believe by our friends. In this blog post I will explain how to use [...]]]></description>
			<content:encoded><![CDATA[<p>Twitter has been ridiculed by many because of the abundance of trivial tweets that flow through its veins. The truth is that Twitter is a lot more useful than what many of us have come to think or been led to believe by our friends. In this blog post I will explain how to use Twitter for everyday purposes and hopefully show that it is much more than posts like &#8220;eating a ham sandwich&#8221;. </p>
<p>Before you go on. I will advise you that in order to make the most use of Twitter it is my opinion that it is best to access it via a smartphone. Portability and accessability are key. You will make best of use of Twitter when you have quick access to it and not as much when you have to rush to a computer. Of course a few minutes a few times a day to read a couple of tweets will help too. I find that a lot of the people that use the website are new to the service and usually wind up dropping it because they don&#8217;t access it as often and therefore do not get the most they could out of if.    </p>
<h2>Breaking News</h2>
<p>While you indeed have those people that tweet their every move, Twitter can have an actual use in our everyday  lives. A real case scenario is, and has been seen used by all of us, the use of Twitter during catastrophes. We&#8217;ve all seen CNN, FOX, and the other networks start reading tweets during this important time. The reason is mainly because Twitter can resonate the voice of the people in the disposition in real-time. Way ahead of any news crew. And it is my opinion that the view of someone living it holds way more value than that of someone who&#8217;s job is to intrigue you with sensationalism to get good ratings. So while it is a good idea to follow your favorite local news network on Twitter for the latest headlines and links to stories, it is possibly a good idea, to save a search on your Twitter account for the words &#8220;earthquake in&#8221;, &#8220;tsunami in&#8221;, or &#8220;tsunami in&#8221;, as well as keeping an eye on the Twitter trends for anything intriguing. This way surely when you hear someone say something in the office about an earthquake somewhere you can tune to Twitter for info, reactions and links to the story often way faster than doing a Google search. </p>
<h2>Following Your Career</h2>
<p>Another great way to use Twitter is to follow people whom are important or iconic in your career. For example if you are a designer you might follow a designer you might consider inspiring or interesting or even follow a website that showcases a great artist&#8217;s work every day. There are so many possibilities. </p>
<p>So what if you aren&#8217;t sure of what person to follow? Well on Twitter there are also Lists of people to follow which are created by users. All it is is a group of people with something in common. It could be Artists, Bloggers, Activists etc. Like following a user you may follow one of these lists if you find one that suits your needs. So how do you find a list to follow? <a href="http://www.listorious.com" target="_blank">Listorious</a> is just one of a few which can help you find the right list. Also to learn more about lists visit <a href="http://mashable.com/2009/11/02/twitter-lists-guide/" target="_blank">this article on Mashable</a>.</p>
<p>Two more things to keep in mind to help you keep your sanity is that it is okay to not read all the new tweets from the people you follow. Also don&#8217;t feel forced to Tweet your every move, doing so might also make you lose interest. Keep yourself informed, keep yourself together.   </p>
]]></content:encoded>
			<wfw:commentRss>http://www.quinterox.com/content/blog/twitter-more-than-just-ham-sandwiches/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Island &#8211; Fiber short of Paradise?</title>
		<link>http://www.quinterox.com/content/blog/google-island-fiber-short-of-paradise/</link>
		<comments>http://www.quinterox.com/content/blog/google-island-fiber-short-of-paradise/#comments</comments>
		<pubDate>Sat, 27 Mar 2010 23:33:21 +0000</pubDate>
		<dc:creator>Cesar Quinteros</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[google island fiber sarasota]]></category>

		<guid isPermaLink="false">http://www.quinterox.com/content/?p=788</guid>
		<description><![CDATA[I went to check out Google Island this weekend to see what it was about. I brought back some pictures!]]></description>
			<content:encoded><![CDATA[<p>I am a Google fanboy. Regardless of the crazy stuff they seldomly pull I still think they are great. But you know what else I think is great? Sarasota. I live in Bradenton but I often travel to Sarasota with my wife and child to get some life&#8217;s stress out. The reason: simply because it&#8217;s paradise. And what is paradise without Google Fiber? Nothing. Exactly!</p>
<p>Today I went out to quench my curiosity by seeing exactly what Google Island a.k.a City Island looks like. It was beautiful! So take this post as my personal nomination to bring Google Fiber to Sarasota. And please keep in mind: I don&#8217;t even live there! I think it&#8217;d be the perfect complement. Also I would like to point out that this is a section of City Island. I am sure the sections I was not able to visit is just as great.     </p>
<p>So here are some pictures (pardon my shoddy image resizing) of what I saw so that you could experience it just a bit. I had a small video as well. Unfortunately I incurred an error during it&#8217;s upload from my phone and it was gone. Sad moment. Bad, bad technology!</p>
<p>
<img src="http://www.quinterox.com/content/wp-content/uploads/2010/03/1.jpeg" alt="Google Island Saratora" title="Google Island Sarasota"  width="480" height="360" class="aligncenter size-full wp-image-791" />
</p>
<p>
<img src="http://www.quinterox.com/content/wp-content/uploads/2010/03/2.jpeg" alt="Google Island Saratora" title="Google Island Sarasota" width="480" height="360" class="aligncenter size-full wp-image-792" />
</p>
<p>
<img src="http://www.quinterox.com/content/wp-content/uploads/2010/03/3.jpeg" alt="Google Island Saratora" title="Google Island Sarasota" width="480" height="360" class="aligncenter size-full wp-image-793" />
</p>
<p>
<img src="http://www.quinterox.com/content/wp-content/uploads/2010/03/4.jpeg" alt="Google Island Saratora" title="Google Island Sarasota" width="480" height="640" class="aligncenter size-full wp-image-794" />
</p>
<p>
<img src="http://www.quinterox.com/content/wp-content/uploads/2010/03/5.jpeg" alt="Google Island Saratora" title="Google Island Sarasota"  width="480" height="640" class="aligncenter size-full wp-image-795" />
</p>
<p>
<img src="http://www.quinterox.com/content/wp-content/uploads/2010/03/6.jpeg" alt="Google Island Saratora" title="Google Island Sarasota" width="480" height="360" class="aligncenter size-full wp-image-796" />
</p>
<p>
<img src="http://www.quinterox.com/content/wp-content/uploads/2010/03/7.jpeg" alt="Google Island Saratora" title="Google Island Sarasota" width="480" height="360" class="aligncenter size-full wp-image-797" />
</p>
<p>
<img src="http://www.quinterox.com/content/wp-content/uploads/2010/03/8.jpeg" alt="Google Island Saratora" title="Google Island Sarasota" width="480" height="360" class="aligncenter size-full wp-image-798" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.quinterox.com/content/blog/google-island-fiber-short-of-paradise/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Buzz- Great Social Medium or Great Stalker Tool</title>
		<link>http://www.quinterox.com/content/blog/google-buzz-great-social-medium-or-great-stalker-tool/</link>
		<comments>http://www.quinterox.com/content/blog/google-buzz-great-social-medium-or-great-stalker-tool/#comments</comments>
		<pubDate>Fri, 26 Feb 2010 06:27:15 +0000</pubDate>
		<dc:creator>Cesar Quinteros</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://www.quinterox.com/content/?p=771</guid>
		<description><![CDATA[Since Google Buzz's implementation there have been good and bad reviews. This is my view on the whole thing.]]></description>
			<content:encoded><![CDATA[<h3>Love/ Hate Relationship</h3>
<p>A couple of weeks ago Google launched one of its greatest products thus far: Google Buzz. People like myself praised Google for the introduction of this social medium while others criticized it. Those who criticized it had a very good reason to: the Gmail user&#8217;s contacts email addresses were being published on their Google public profiles. This was probably due to the fact that Google developers had tested Buzz between themselves during its development in a corporate environment and thus saw no need for privacy. Though kind of understandable it still does not let Google off the hook in my and many other people&#8217;s eyes. Privacy is something all of us hold dear, and though it is hard to be private on the internet we certainly want to separate what our friends can see versus what our co-workers, bosses and stalkers can see. This separation was  not considered upon Google&#8217;s implementation of Buzz. The lack of privacy controls made a lot of people unhappy and brought Google a few steps back in gaining the user&#8217;s trust. </p>
<p>About two days later Google made some changes to the Buzz application allowing user to have more control over their privacy. This quick response shows, or at least is interpreted by myself that Google cares about its users and I applaud that. </p>
<h3>Looking Forward>>></h3>
<p><b>So after Google tweaks, buffs, and polishes Buzz what will we have? What do you think? Will it fail? Will it replace Facebook, Twitter and friends? Or will it enable communication between all these websites?</b><br />
<br />
I go for the last one! I think this will push social websites to develop ways to &#8220;speak&#8221; between each other and will in the end prove to be a breakthrough. Google, you win! Please just try not to compromise your user&#8217;s privacy anymore or your users won&#8217;t trust you. Like Wallstreet you are also not too big to fail. : )</p>
]]></content:encoded>
			<wfw:commentRss>http://www.quinterox.com/content/blog/google-buzz-great-social-medium-or-great-stalker-tool/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rebirth!</title>
		<link>http://www.quinterox.com/content/blog/rebirth/</link>
		<comments>http://www.quinterox.com/content/blog/rebirth/#comments</comments>
		<pubDate>Mon, 15 Feb 2010 02:19:46 +0000</pubDate>
		<dc:creator>Cesar Quinteros</dc:creator>
				<category><![CDATA[Blog]]></category>

		<guid isPermaLink="false">http://www.quinterox.com/content/?p=765</guid>
		<description><![CDATA[Cesar Quinteros returns to blogging?!]]></description>
			<content:encoded><![CDATA[<h3>I&#8217;m Back!!!</h3>
<p>Woah that was a lonnggggg break from my attempt at blogging. Believe it or not it is tough! Coming up with decent ideas to write about. So many things to write about but then once you start you wonder if you know enough about this subject to not sound like an opinionated babbling idiot. Maybe I was in over my head? Anyway the main reason I made this site was to share some of the code I write for other&#8217;s learning purposes. It somehow got warped into this thing about cell phones. I apologize, but hey, it got some hits nonetheless.</p>
<h3>So What&#8217;s The Plan Now?</h3>
<p> Well I want to try to do the world some good. So I am going to create a website that hopefully enables others to so. I can&#8217;t talk about it too much right now because I want it to be a bit of a surprise (hopefully a good one). But what I will do is post any issues or cool things I run into on this blog. It will be created using Ruby Rails. It is my first attempt at a real application using the framework so wish me luck. So goodbye until then. See you next post!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.quinterox.com/content/blog/rebirth/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>AJAX In A Nutshell- Learning GET</title>
		<link>http://www.quinterox.com/content/blog/ajax-in-a-nutshell/</link>
		<comments>http://www.quinterox.com/content/blog/ajax-in-a-nutshell/#comments</comments>
		<pubDate>Fri, 07 Aug 2009 04:13:11 +0000</pubDate>
		<dc:creator>Cesar Quinteros</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[get]]></category>
		<category><![CDATA[simple ajax]]></category>

		<guid isPermaLink="false">http://www.quinterox.com/content/?p=685</guid>
		<description><![CDATA[A simple explanation and demo of how to execute the GET method using AJAX.]]></description>
			<content:encoded><![CDATA[<p>So I&#8217;ve been trying to drill the super simple concept of AJAX into my head for months (sadly) now. Anyways I think I finally got it down enough to explain it. I know there are libraries out there that can do it for you without any thinking at all. But it is my belief that a developer MUST understand how to build an application&#8217;s functionality from scratch if he/she has to. In this post I will explain how to use an XMLHttpRequest object in conjunction with the form&#8217;s &#8216;GET&#8217; method to retrieve data from the server. In our example application we will push a button passing the message &#8216;Marco&#8217; to the server which will then return the message &#8216;Polo&#8217; back to us. So let&#8217;s begin!</p>
<h2>1. Make XMLHttpRequest Object</h2>
<p>This is the most important thing. It is what AJAX is all about, it is the object that fetches stuff for you to display on your web pages. Without it (and well along with the user having JavaScript enabled) basic AJAX is not possible. I know there are &#8220;workarounds&#8221; that might give the impression of AJAX but I am just talking about straight-up AJAX. Anyways, the XMLHttpRequest object is important, so it is understandable it must work on every browser. I hope I didn&#8217;t lose you. This is how we do it.</p>
<pre>
var req = null; // XMLHttpRequest Object 

var init = function() {
   try { // firefox, safari, ie7
   req = new XMLHttpRequest(); }catch(e) {
   try { // later ie
   req = new ActiveXObject('MSXML2.XMLHTTP');}catch(e) {
   try { //early ie
   req = new ActiveXObject('Microsoft.XMLHTTP');} catch(e) {
   return false;}}}
   return req;
}
</pre>
<p>
So what did we do here? If you look past all the &#8216;try&#8217; you notice that we try to declare the &#8216;req&#8217; object as whatever form of XMLHttpRequest is available depending on your browser. In older versions of Internet Explorer AJAX occurs in the form of ActiveXObjects. This explains most of the clutter in the preceding code.</p>
<h2>2. Open The XMLHttpRequest</h2>
<p>
So you made the object now you need to tell it what to fetch. For this we use the open method of the XMLHttpRequest object which takes three parameters: method (get or post); url, and whether our request is asynchronous or not. What asynchronous means is allowing to happen at different times. </p>
<p>
Additionally you have to execute the &#8216;send&#8217; method of the request object  passing a null value. The &#8216;send&#8217; method ships our request to the server, the value it takes is used for POST requests which is why we pass null this time. This is what it looks like.</p>
<pre>
req.open('GET', 'index.php?call=Marco', true);
req.send(null);
</pre>
<p>
For simplicity&#8217;s sake in our example we are going to use the form&#8217;s &#8216;GET&#8217; method to request text from the server as opposed to XML. Using the form&#8217;s &#8216;POST&#8217; method is a little more difficult and requires additional code. I will later explain how that is done in another post.</p>
<p>
Another thing you might want to know is that some browsers might try to cache the response you received from the server. So no matter how different the response you are expecting is, it returns the same one always. To avoid this you might want to try append the time the request was made to your &#8216;URL&#8217; string as so.</p>
<pre>
var time = new Date();
req.open('GET', 'index.php?call=Marco&#038;time=' + time.getTime(), true);
req.send(null);
</pre>
<h4>Note</h4>
<p>
Also please note that AJAX will only work within the server that made the request so make sure the &#8216;url&#8217; value you pass is a local one. Cross server AJAX requests are not readily possible for security reasons but can be allowed through additional server configuration.</p>
<h2>3. Check For The Request&#8217;s State Change</h2>
<p>
Now the next few steps might get a tiny bit complicated. I will try extra hard to simplify them. <br />
First we want to try to monitor the &#8216;onreadystatechange&#8217; event of the XMLHttpRequest. The &#8216;onreadystatechange&#8217; event tells us when there is a change of state in our request as the name already suggests. So we are going to listen in by making an event handler for it.</p>
<pre>
req.onreadystatechange = function() {
     ...
}
</pre>
<p>
However the &#8216;onreadystatechange&#8217; event handler itself won&#8217;t really tell us anything. The reason being that there are four states the request can move around from which won&#8217;t necessarily hold the data we want.  They are listed below. For our purposes we only care about state #4 which means our data is ready for our viewing.</p>
<ul>
<li>Uninitialized (0)</li>
<li>Loading (1)</li>
<li>Loaded (2)</li>
<li>Interactive (3)</li>
<li>Completed (4)</li>
</ul>
<p>So in order to check when our state is at 4, we create a simple conditional statement within our event listener. </p>
<pre>
req.onreadystatechange = function() {
    if (req.readyState == 4) {
        ...
    }
}
</pre>
<p>
But again we need more since it is not enough for us to know when AJAX has something to show us. The reason is that it might have encountered an error and we wouldn&#8217;t want to show that to the users right? So now we must check to see if everything worked out right and that there were no server errors or anything of the sort. There are two ways to do this. One is to make sure our request&#8217;s status (req.status) is greater than or equal to 200 and that it is also less than or equal to 299. Together with the rest of our state change code it would look like this.
</p>
<pre>
req.onreadystatechange = function() {
    if (req.readyState == 4) {
        if (req.status >= 200 &#038;&#038; req.status <= 299) {
            ...
        }
    }
}
</pre>
<p>
A more simple alternative to the last step we did is to check if the 'statusText' property of our request simply returned 'OK'. For the sake of our Ajax In A Nutshell post name we will stick with the alternative. This is what that looks like.</p>
<pre>
req.onreadystatechange = function() {
    if (req.readyState == 4) {
        if(req.statusText == 'OK') {
            ...
        }
    }
}
</pre>
<p>Now wasn't that a lot easier?</p>
<h2>4. Retrieve Your Data</h2>
<p>Finally we grab our much awaited data which will be stored in our request's 'responseText' property. I suggest you structure your main function to accept a handler function for the data. This handler function would then either further process the data and or place it on the HTML document for viewing. In our example we are going to be passing our data to another function (our handler function) which will display it on a div in our HTML document. Below is what the passing of our data to the 'handler' function will look like along with our state change code from before.</p>
<pre>
req.onreadystatechange = function() {
    if (req.readyState == 4) {
        if(req.statusText == 'OK') {
            dataHandler(req.responseText);
        }
    }
}
</pre>
<p>
So there it is. Getting your data from the server wasn't that hard. Hopefully you are not like me and actually get it on the first few reads. </p>
<h2>Sample Please?</h2>
<p>
I have built a sample page and script that uses this code to submit a form to the server. The form will just submit the hidden value "Marco". The server will then respond "Polo" which will be displayed on a DIV below the button. </p>
<p>
You can see the sample demo here: <a href="http://www.quinterox.com/public/ajax_sample/">http://www.quinterox.com/public/ajax_sample/</a><br />
You can download the sample files here:  <a class="downloadlink" href="http://www.quinterox.com/content/wp-content/plugins/download-monitor/download.php?id=ajax_sample.zip" title="Version1.0 downloaded 25 times" >ajax_sample (25)</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.quinterox.com/content/blog/ajax-in-a-nutshell/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Search Engine Optimization (Organic)</title>
		<link>http://www.quinterox.com/content/blog/search-engine-optimization-organic/</link>
		<comments>http://www.quinterox.com/content/blog/search-engine-optimization-organic/#comments</comments>
		<pubDate>Sat, 06 Jun 2009 04:31:41 +0000</pubDate>
		<dc:creator>Cesar Quinteros</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[search engine optimization]]></category>
		<category><![CDATA[SEO]]></category>

		<guid isPermaLink="false">http://www.quinterox.com/content/?p=612</guid>
		<description><![CDATA[An article on some search engine optimization tips I wrote recently. In it I demonstrate how to make your site more visible on the web through a few simple changes to your pages.]]></description>
			<content:encoded><![CDATA[<p>
In the past a company’s exposure to customers depended heavily on a good ad. Content, as always, was important but had little possibility of getting to the user than through an ad or a friend’s recommendation. The exposure an ad would provide was often expensive, lasted a short amount of time, and could be limited to a specific geographical area. In today’s web-focused world we see an increase in the importance of content as a way to attract customers via search engine results. In other words content is becoming increasingly important because of the way it is interpreted by search engines and served to the user. The proper implementation of SEO (search engine optimization) methods could lead to a business’ success, personal popularity, or both. In the following sections I will describe a few methods that you could implement on your website to acquire exposure to your business or self.
</p>
<h3>What is SEO?</h3>
<p>
What is search engine optimization? Often referred to as SEO, it is the act of editing a website to achieve a higher visibility to internet users querying a search engine with keywords. As a result of applying SEO methods to your website the supposed relevance of your site on a search engine’s result page will increase. Some popular search engines people and companies out there try to make are Google, Yahoo, Window’s Live Search<br />
<a href="http://www.seoconsultants.com/search-engines/" target="_blank">(&#8220;Top 10 Search Engines &#8211; Top Ten SEs.&#8221;)</a>.
</p>
<h3>SEO Requirements</h3>
<p>
Now you might be asking so what expensive tools do I need to download to optimize my website for search engines. The answer is none, however there are programs out there that claim to be able to optimize your website but they actually work against it because some employ sneaky techniques that might raise a red flag for search engines. If there is one thing you need to have in order help a search engines rush users to your website it is content. Without fresh, useful, content that people want no matter how many methods of SEO you apply, it won’t help a bit. So much for this post sounding like an infomercial, there is no such thing as easy money.
</p>
<h3>Who Needs SEO</h3>
<p>
So now that you know what it is we are going to talk about some important uses of SEO. One entity to whom it is very important to is businesses. Businesses have a huge need to find people (or other businesses) who need what goods or services they are selling. This is why it is important to make sure they have a persistent easily-acquirable presence to consumers whether it is on television, the paper, or online <a href="http://www.gcchq.com/web/web_benefit.htm" target="_blank">(&#8220;Importance of Web presence.&#8221;)</a>.
</p>
<p>
Consumers also benefit from a business’ websites being search engine optimized. For example: a consumer might be seeking a review for a product online that they are willing to purchase but aren’t quite sure about. They could Google the name of their product followed by the word reviews to which they will be presented with an array of websites that have been search engine optimized in some way describing the content they are seeking. The end result, one company sells a product, another becomes a popular destination for the user, and if all goes well the user buys the phone he/she wanted.
</p>
<p>
Another type of person that benefits from the popularity SEO methods can bring to a website is bloggers. Bloggers blog for many different reasons some of which could be to gain relationships in on online community, it’s their job, the job they are trying to acquire, their diary, or because it’s a hobby. Whatever the reason their blogging is an attempt to make a web presence for themselves <a href="http://www.myinkblog.com/2009/04/14/5-reasons-to-contribute-to-a-blog/" target="_blank">(“5 Reasons To Contribute To A Blog”)</a>, which if properly applied SEO will boost their website and in effect their popularity.
</p>
<h3>How Do We SEO?</h3>
<p>
So far we have done nothing but talked about what search engine optimization is and who uses it and why but have not talked about how to actually apply these methods. One thing you should know is that there are many different methods the pros suggest you use but this paper will only demonstrate the basic and a couple of advanced methods of SEO. At the end of the paper there will be a list of additional online sources you can visit if you are interested in more.
</p>
<div>
<p><b>In the HTML Headers</b></p>
<div>
<p>Set the language of your target audience at the HTML start tag.</p>
<pre>&lt;HTML lang=&quot;fr&quot;&gt;</pre>
<p>Use relevant, useful key words in the page title.</p>
<pre>&lt;title&gt;Elk QA3 - messaging phone - Ottowola USA&lt;/title&gt;</pre>
<p>Use description meta tags. This is the text that displays below the links on a search.</p>
<pre>&lt;meta name=&quot;description&quot; content=&quot;Ottowola Elk QA3 helps you stay connected with your friends. Features a full keyboard, or turn it upright for your traditional phone capabilities..&quot;/&gt;</pre>
</p></div>
</div>
<div>
<p><b>In the HTML Body</b></p>
<div>
<p>Use adequate elements for important body content titles.</p>
<pre>&lt;h1 &gt;Elk QA3 – My Review&lt;/h1&gt;</pre>
<p>            Use adequate descriptions for links and media.</p>
<p><u>USE</u></p>
<pre>&lt;a href=”http://mywebsite.com/pictures/ElkQA3a_phone.jpg”&gt;Elk QA3 phone&lt;/a&gt;</pre>
<p></p>
<pre>&lt;img src=”http://mywebsite.com/pictures/ElkQA3a_phone.jpg” alt=”Elk QA3 phone“ title=”Elk QA3 phone“&gt;Elk QA3 phone &lt;/img&gt;</pre>
<p><u>DO NOT USE</u></p>
<pre>&lt;a href=”http://mywebsite.com/stuff/picture0001.jpg”&gt;Click Here&lt;/a&gt;</pre>
<p></p>
<pre>&lt;img src=”http://mywebsite.com/stuff/picture0001.jpg”&gt;&lt;/img&gt;</pre>
<p>Don’t share your website’s popularity by posting links without the attribute rel=”nofollow”. Without this the other website will gain some popularity off of yours. It could be problematic specifically if a spammer manages to post links on your site to their causing search engines to consider you to be part of a “bad neighborhood” <a href="http://www.google.com/support/webmasters/bin/answer.py?hl=en&#038;answer=35769" target="_blank">(“Webmaster guidelines &#8211; Webmasters/Site owners Help.”)</a>.</p>
<p><u>ALLOW</u></p>
<pre>&lt;a href=”http://johnswebsite.com/” rel=”nofollow”&gt;John’s Development Website&lt;/a&gt;</pre>
<p><u>DO NOT ALLOW</u></p>
<pre>&lt;a href=”http://johnswebsite.com/“&gt;John’s Development Website&lt;/a&gt;</pre>
<p>Similarly if you find a legit way to get a more important site (for example CNN.COM) to link to you, your page’s rank is more likely to increase since you will get little boost off its popularity.</p>
<p>If you have Javascript menus, make sure you have a sitemap or a page that contains all the links on your site. Some robots do not operate with Javascript therefore being blind to these links. Below is an example.<br />
            <div id="attachment_625" class="wp-caption alignnone" style="width: 370px"><img src="http://www.quinterox.com/content/wp-content/uploads/2009/06/js_dropdown.jpg" alt="JavaScript Dropdown" title="Javascript Dropdown" width="360" height="500" class="size-full wp-image-625" /><p class="wp-caption-text">JavaScript Dropdown</p></div>
</p>
<p>
            Another way around this problem is to include a &lt;noscript&gt; tag within your menu layout which will only be visible only to users without Javascript i.e. Robots. </p>
<p>Avoid html frames. Users can be sent to the incorrect frame and spiders might not be able to easily find the intended content. Also it makes a web page hard to bookmark.</p>
</p></div>
</div>
<div>
<p><b>In Other Places</b></p>
<div>
<p>Create a sitemap file. A sitemap file is either an HTML file on your site with links to all the pages on your site or an XML file that contains information about your website’s pages which you could submit to search engines or put on your site <a href="http://help.yahoo.com/l/us/yahoo/smallbusiness/store/promote/sitemap/sitemap-06.html" target="_blank">(“Submitting your Sitemap file to Search Engines”)</a>.</p>
<p>Create <b>robots.txt</b> file in your site’s main directory to guide robots to what they should and should not scan along with the location of your site’s sitemap file. You can also omit a specific type of bot from searching your website. McAnerin.com has a nice tool that will help you generate one <a href="http://www.mcanerin.com/en/search-engine/robots-txt.asp" target="_blank">(“Robots.txt Generator &#8211; McAnerin International Inc”)</a>. Below is an example of that file.</p>
<pre>
User-agent: *
Disallow:
Disallow: /cgi-bin/
Disallow: /private/
Sitemap: http://www.mywebsite.com/Sitemap.xml</pre>
<p>If possible make the addresses of your web pages able to be bookmarked. Some spiders can’t access dynamically generated web pages with query strings in their address. To do this you could either save every page as an html file or use server side code to rewrite the incoming page request’s address.</p>
<p>    		<u>USE</u></p>
<pre>http://johnswebsite.com/categories/programs/photo_editor/</pre>
<p><u>DO NOT USE</u></p>
<pre>http://johnswebsite.com/index.asp?cat=12&amp;subcat=5&amp;prog=25</pre>
</p></div>
</div>
<h3>My Conclusions</h3>
<p>There are many more techniques to optimize your website than the ones illustrated on this document. As stated earlier, it is important to keep new, fresh, useful content flowing into your website, as search engine index’s update every day. It is also beneficial to the blogger/website owners to socialize with others with similar websites and build a reputation so that links could be traded and popularity could be shared. Of course it is always important to make sure that the other sites do not participate in spamming which could hurt your page rank. To summarize, search engine optimization works best with the proper application of three different things: content, adequate page construction, and social exposure.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.quinterox.com/content/blog/search-engine-optimization-organic/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Sending a Newsletter Through Gmail</title>
		<link>http://www.quinterox.com/content/blog/sending-a-newsletter-through-gmail/</link>
		<comments>http://www.quinterox.com/content/blog/sending-a-newsletter-through-gmail/#comments</comments>
		<pubDate>Sun, 05 Apr 2009 07:23:05 +0000</pubDate>
		<dc:creator>Cesar Quinteros</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[gmail newsletter]]></category>

		<guid isPermaLink="false">http://www.quinterox.com/content/?p=554</guid>
		<description><![CDATA[How to send out a Newsletter using Gmail.]]></description>
			<content:encoded><![CDATA[<p>Recently a client asked me if I knew how to use 1shoppingcart.com to send out newsletters. I had no idea but the same time I couldn&#8217;t help thinking how simple it would be to send out a newsletter through regular email without paying a website to do it. I tried it, but not without a little kicking and screaming from Gmail. It appears that Gmail does not allow you to edit the HTML of your email but just allows you write in either plain text or rich text formatting. Though rich text formatting is synonymous to HTML with Gmail&#8217;s built in WYSIWYG editor you really don&#8217;t have much control over the layout of your newsletter. In this post I explain my experience with Gmail and a few alternatives.</p>
<h3>Gmail</h3>
<p>So though we all love Google and thank the internet gods it exists, some us of can&#8217;t help but to be annoyed by some of the minute details that bother some of us about its features.</p>
<p>During my testing while trying to insert some HTML into an email message I noticed the Gmail application did not allow you to dive into the message&#8217;s HTML to tweak the layout to your liking. Instead I found myself trying to reconstruct the layout I had made on my HTML editor with Gmail&#8217;s WYSIWYG editor. I huffed and puffed as I moved at a snail&#8217;s pace. After a few minutes I gave up. There had to be a better way!</p>
<h4>Copy &amp; Paste</h4>
<p>After a little research online I came across a website that had some comments that helped with my newsletter dilemma. About.com had a <a href="http://personalweb.about.com/b/2005/04/04/gmail-lets-you-send-html-email.htm" target="_blank">comment reply</a> left by Nostalgia which suggested the user opens the web page they are trying to email in the web browser, select all, copy, and paste it onto a new rich text Gmail message. This works but leaves CSS class definitions out due to the lack of  the HTML head tag (and CSS links). It does however seem to like any in-line CSS code.  Though this is not the ideal form of coding HTML, it does work making it a pretty basic way to create your newsletter. Just keep in mind <a href="http://mail.google.com/support/bin/answer.py?hl=en&amp;answer=22839" target="_blank">Gmail&#8217;s limitations</a> on how many people you could send an email to (currently 500 for the web interface and 100 for client software ) and its limits of how many emails can bounce back before they disable your email.</p>
<p>Another thing to consider is your need for subscriber management. If you have a small group you send your newsletters to Gmail is probably ideal, otherwise you might want to purchase software, or web services that allow you to more effectively manage and send out your newsletter.</p>
<h4>Email Programs</h4>
<p>Some email programs such as Mozilla Thunderbird allow you to edit the HTML of your email. However like the Gmail web interface the end product seems to ignore (or remove?) any CSS class definitions in the header and external CSS file links. So though this option eliminates the step of copying your newsletter from the browser onto the email it also requires in-line CSS but is also affected by Gmail&#8217;s 100 send via client software limitation.</p>
<h3>Other Software</h3>
<p>In my adventures in educating myself about newsletters I also tried out a free newsletter program called <a href="http://www.sendblaster.com/" target="_blank">SendBLaster</a>. The program seemed pretty useful and packed with useful features. It had a decent amount of emails  it allowed you to send for free (100 per day), a bounce-back test, a spam-check, an HTML editor, as well as the option to send a text version of your newsletter amongst others .  If you need to send more than one-hundred emails in one day you might want to invest in the Pro version or even a web service such as <a href="http://www.mailchimp.com/" target="_blank">Mailchimp</a> which has great features at different price levels. Keep in mind however that if you are using SendBlaster or any similar software your email host&#8217;s send-limit might still apply even with the program.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.quinterox.com/content/blog/sending-a-newsletter-through-gmail/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Mixing things up: Razr Verizon Phone On Metro PCS Wap Settings</title>
		<link>http://www.quinterox.com/content/blog/mixing-things-up-razr-verizon-phone-on-metro-pcs-wap-settings/</link>
		<comments>http://www.quinterox.com/content/blog/mixing-things-up-razr-verizon-phone-on-metro-pcs-wap-settings/#comments</comments>
		<pubDate>Sun, 18 Jan 2009 05:54:38 +0000</pubDate>
		<dc:creator>Cesar Quinteros</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[metro pcs]]></category>
		<category><![CDATA[razr]]></category>
		<category><![CDATA[verizon]]></category>
		<category><![CDATA[wap]]></category>

		<guid isPermaLink="false">http://www.quinterox.com/content/?p=501</guid>
		<description><![CDATA[Aside Post: How to set the wap settings for a mobile phone (Motorola Razr in this case) to work with Metro PCS. ]]></description>
			<content:encoded><![CDATA[<p>Okay, okay, so with this post I make my blog temporarily lean outside the scope of programming. It&#8217;s for a good reason: to do with what is yours what you please. The way it should be.</p>
<h3>What&#8217;s yours is yours</h3>
<p>What am I refering to? Well a lot of mobile devices nowadays are sold handicapped of their abilities in order for a mobile company to twist your arm into buying their &#8216;services&#8217;, essentially to&#8230;make them do what they were intended to. Evil huh? There are a lot of sites out there that teach you how to enable some services on your phones for free. Just google &#8216;cell phone hacks&#8217; for more info.</p>
<h3>My story</h3>
<p>I recently switched to Metro PCS from Verizon. The guys at Metro PCS told me I could keep my Verizon phone which was cool since they charged full retail for their not so apealing phones. The down side however, is that my internet and pix text messages wouldn&#8217;t work. The main reason I switched to them was because of the unlimited everything plans but the thought of me paying for internet (included in my plan) and not getting internet was going to leave a sour taste in my mouth. So I went online and was determined to find a hack for my Motorola RAZR V3m that would enable me to get the internet I was paying for (!). And I found it, which is the reason for this post: as a reminder to myself and to allow others to use their devices as intended. I have not found the fix for the pix messages yet but I will append that to this post once I do.</p>
<h4>Aside:</p>
<p>Though i&#8217;m talking a little smack about Metro PCS, i&#8217;m not mentioning my previous unhappiness with Verizon&#8217;s yearn to charge you for everything your phone can do as a &#8216;service&#8217;. I am disappointed with both in a way, one will happily charge me for something I am not getting, and the other wants to charge me for merely looking at my phone. Eh, I guess that&#8217;s business.</h4>
<h3>Metro PCS WAP Settings for RAZR V3m</h3>
<p>* By the way I have noticed this method only works on RAZRs where dial-up networking has been enabled. To know if it is enabled navigate to <strong>menu/setting and tools/system/security/data connection</strong>. If <strong>data connection</strong> is not available then dial-up networking is not enabled. To enable it you must then perform a seem edit on the Razr&#8217;s operating system, be VERY careful doing that, you could break your phone&#8217;s operating system rendering it useless. Do this at your own risk. To learn how to conduct a seem edit visit <a href="http://hacktherazr.com/">hacktherazr.com&#8217;s</a> guides section. Once you know how to do that, perform the edit on this page called <a href="http://hacktherazr.com/guides/verizon/seem-edit-list">&#8220;Enable Dial Up Networking&#8221;</a> which is the third one from the top.<br />
Once that is enabled go to <strong>menu/setting and tools/system/security/data connection</strong>, enter your security code which most likely is 000000, then go to <strong>1XRTT Data</strong> and type in the same user id and password I provide in step 2.</p>
<ol>
<li>Open your phone and dial #073887* (#SETUP*) and enter the security code which is normally 000000. Press OK.</li>
<li>Select &#8216;Web Sessions&#8217; then go down to &#8216;[New Entry]&#8216; and enter the settings provided below.
<pre>Name: Metro PCS (or whatever you'd like, it doesn't matter)
Homepage: (leave alone since it won't let you change it)
User ID: YOUR_10_DIGIT_PHONE_NUMBER@mymetropcs.com
Password: 00
Gateway IP 1: (leave as is, normally all zeros)
Gateway 1: wap.metropcs.com
Serive Type: http
Port 1: 3128
E2E Port 1: 443
LXL Port 1: 3128
Gateway IP 2: (leave as is, normally all zeros)
Gateway 2: (leave blank)
Service Type 2: http
Port 2: 0
E2E Port 2: 0
LXL Port 2: 0
Cache Start-Up: On(Store)</pre>
<p>Then click &#8216;Done&#8217;.</li>
<li>Once your new settings are saved you are taken back a screen. Here you will see the name of the setting you just created. Select it, then click &#8216;Options&#8217; and choose &#8216;Set Default&#8217;.</li>
<li>Once that is done hit &#8216;END&#8217; and restart your phone. When it turns on you should be able to go online.</li>
</ol>
<p>If it does not work or you want to go back to your old connection setting. Repeat step 1, then select &#8216;Web Sessions&#8217; and right click your old wap setting and set it as your default. You may need to restart your phone.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.quinterox.com/content/blog/mixing-things-up-razr-verizon-phone-on-metro-pcs-wap-settings/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Adding expire tags to your CSS and JavaScript files</title>
		<link>http://www.quinterox.com/content/blog/expire-tags-adding-them-to-your-css-javascript/</link>
		<comments>http://www.quinterox.com/content/blog/expire-tags-adding-them-to-your-css-javascript/#comments</comments>
		<pubDate>Thu, 01 Jan 2009 08:02:33 +0000</pubDate>
		<dc:creator>Cesar Quinteros</dc:creator>
				<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[Blog]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[set expire]]></category>

		<guid isPermaLink="false">http://www.quinterox.com/content/?p=451</guid>
		<description><![CDATA[Adding expiration headers to PHP/ASP files.]]></description>
			<content:encoded><![CDATA[<p>Though we live in an age where a lot of people have fast internet connections. The focus (at least for developers) has shifted to technologies that relieve the server of heavy workloads and increase processing speeds such as AJAX, using server-side and client-side caching, as well as gzipping. In this post I will lightly touch upon client-side caching of dynamically generated CSS and JavaScript files.</p>
<p>I recently installed YSlow, a handy web development tool for Firefox. In it there is an option that tells you whether your CSS or JavaScript files are cached on the client&#8217;s computer allowing for a quicker page load. I noticed my files were not cached so I looked a little into how to go about caching them so the browser won&#8217;t download the same file over and over when going from page to page. So I went about conducting my own tests to see how to make this happen. The only way of making it happen other than setting an expire date/time on the WHOLE page (or on the .htaccess file in Linux servers) was to create a server-side file that would output the expiration, content type headers as well as the actual styles/code in your web application. Below is a clearer picture of how I made it happen.</p>
<h3>PHP- Step 1.</h3>
<p>Make a dynamically generated CSS file that includes expiration and content headers (code below). Save it as &#8216;dynamic_css.php&#8217;. The actual CSS styling can be typed in the same way you would do in a regular stylesheet, we are only after getting those expiration and content type headers sent out.</p>
<pre>&lt;?php
header("Expires: Thu, 31 Dec 2020 20:00:00 GMT");
header('Content-type: text/css');
?&gt;
h1 { color: Red; }</pre>
<p><br class="clear" /></p>
<h3>PHP- Step 2.</h3>
<p>Add &#8216;dynamic_css.php&#8217; as the CSS href of you document. This should make YSlow happy and increase the speed at which the user navigates through pages that use the same CSS file. Use the same method to add expiration tags to JavaScript.</p>
<pre>&lt;link rel="stylesheet" type="text/css" <strong><span style="color: #ff0000;">href="dynamic_css.php"</span></strong>/&gt;</pre>
<p><br class="clear" /></p>
<h3>ASP- Step 1.</h3>
<p>The way I added expire tags to my CSS code in ASP is very similar to PHP&#8217;s. First you make a server-side CSS file and save it as &#8216;dynamic_css.aspx&#8217;. Since it is important the headers hit the server first we use server-side code  to send those out first. We type in the actual CSS code like we would in a regular CSS file after that. Besides would you really want to Response.Write() all of your CSS code? I think not.</p>
<pre>&lt;%
    Response.Expires = 3600
    Response.ContentType = "text/css"
%&gt;
    h1 { color: Blue; }</pre>
<p><br class="clear" /></p>
<h3>ASP- Step 2.</h3>
<p>Add &#8216;dynamic_css.aspx&#8217; as the CSS source of you document. This should make YSlow happy since the expiration headers are now being sent increasing the speed at which the user navigates through the pages that share the same CSS file. Use this same header method to add expiration tags to JavaScript files.</p>
<pre>&lt;link rel="stylesheet" type="text/css" <strong><span style="color: #ff0000;">href="dynamic_css.aspx"</span></strong>/&gt;</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.quinterox.com/content/blog/expire-tags-adding-them-to-your-css-javascript/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>
