<?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>Xavi Esteve &#187; Tutorials</title>
	<atom:link href="http://xaviesteve.com/category/tutorials/feed/" rel="self" type="application/rss+xml" />
	<link>http://xaviesteve.com</link>
	<description>I&#039;m a front end web developer and graphic designer from Barcelona based in London. I am passionate in JavaScript, jQuery, CSS, PHP, Wordpress, usability and SEO.</description>
	<lastBuildDate>Wed, 08 Feb 2012 16:22:24 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<item>
		<title>Test de usabilidad web económico</title>
		<link>http://xaviesteve.com/2913/test-de-usabilidad-web-economico/</link>
		<comments>http://xaviesteve.com/2913/test-de-usabilidad-web-economico/#comments</comments>
		<pubDate>Sun, 05 Feb 2012 19:47:49 +0000</pubDate>
		<dc:creator>Xavi</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[Español]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[UX]]></category>
		<category><![CDATA[Work]]></category>

		<guid isPermaLink="false">http://xaviesteve.com/?p=2913</guid>
		<description><![CDATA[Si nos falta el tiempo y el dinero para poder ejecutar un estudio de usabilidad de nuestra página web siempre podemos recurrir a sistemas caseros que son rápidos y económicos. Escoger la lista de perfiles Muchos usuarios visitarán nuestra web en el futuro. Entre éstos tenemos que identificar los diferentes perfiles de usuario (llamados &#8220;personas&#8221; [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-2917" title="" src="http://xaviesteve.com/wp-content/uploads/2012/02/11.jpeg" alt="" width="600" height="250" /></p>
<p>Si nos falta el tiempo y el dinero para poder ejecutar un estudio de usabilidad de nuestra página web siempre podemos recurrir a sistemas caseros que son rápidos y económicos.</p>
<h2>Escoger la lista de perfiles</h2>
<p>Muchos usuarios visitarán nuestra web en el futuro. Entre éstos tenemos que identificar los diferentes perfiles de usuario (llamados &#8220;personas&#8221; en inglés) y de estos perfiles escoger los <strong>dos o tres principales</strong>, si hay algo que está claro es que la página web nunca será del agrado de todos nuestros usuarios ya que es <strong>imposible que agrade a todo el mundo</strong> aunque sí que podemos adaptarla a la mayoría que nos interese. Un perfil de usuario sería algo así:</p>
<blockquote><p>Persona de entre 25 y 35 años con poder adquisitivo medio-alto, educación universitaria, que vive en una ciudad, no tiene hijos, con conocimientos medios de informática, que navega entre 30 minutos y 2 horas al día por Internet vía un ordenador portátil o de escritorio. Realiza actividades de ocio entre 4 y 8 veces al mes.</p></blockquote>
<p>Una vez tengamos los perfiles principales deberemos encontrar gente que se adapte a ellos. Si nuestro presupuesto es bajo podemos recurrir a favores de amigos, familiares y conocidos. Lo importante es que puedan estar presencialmente con nosotros.</p>
<h2>Test de usabilidad</h2>
<p>Una vez tengamos una lista de los diferentes perfiles de usuario, situaremos al primero delante del ordenador y dejaremos unos minutos para que el usuario se acomode y familiarice con él, encuentre el icono del navegador web y lo abra. Si puedes realizar el test desde el ordenador del usuario muchísimo mejor.</p>
<h3>Misión</h3>
<p>El siguiente paso es el más importante y es que sólo le encomendamos <strong>una misión no más larga que una oración</strong> y cuya tarea debe durar <strong>menos de 15-30 minutos</strong> (podemos encomendarle varias misiones, una a una, pero una sola a la vez). Por ejemplo:</p>
<blockquote><p>Visita la página xaviesteve.com y compra el aparato de música de entre 100 y 200 euros que más te guste.</p></blockquote>
<p>En esa frase queda implícito que el usuario deberá: buscar el producto, registrarse para poder comprar, confirmar un enlace de activación de la cuenta en su correo, hacer click en Comprar, introducir sus datos de la tarjeta de crédito (una vez saque su tarjeta de crédito le proporcionaremos una nuestra de prueba) y finalmente confirmar. Otro ejemplo sería:</p>
<blockquote><p>Mañana quieres ir a cenar a un restaurante japonés, haz una reserva para 2 en la web helloplan.com y encuentra donde está ubicado.</p></blockquote>
<h3>Nuestro papel</h3>
<p>Lo importante es que <strong>el usuario lo deduzca todo por él mismo</strong> sin que tengamos que explicarle nada. Si nos hace preguntas le diremos que no se preocupe, que intente descubrirlo él mismo. Si vemos que duda demasiado o empieza a frustrarse le ayudaremos.</p>
<h3>Pensando en voz alta</h3>
<p>Al usuario le pediremos que piense en voz alta durante el proceso, es decir, que <strong>vaya contando todo lo que piensa, hace y por qué</strong>, por ejemplo:</p>
<blockquote><p>Espero a que la página se cargue, a ver&#8230; ¡Ahá! Aquí pone Electrónica, los aparatos de música estarán dentro, ah no, hay otro que se llama Música, debe ser este mejor, hago clic&#8230; Ok este es, bien, a ver, aquí centrado hay las mejore ofertas&#8230; aquí a la izquierda me sale una lista con subcategorías&#8230; voy a clicar aquí&#8230;</p></blockquote>
<h3>Analizar con detalle</h3>
<p>Si disponemos de una cámara de vídeo o programa de screencasts, nos ayudará muchísimo para poder analizar mas tarde cualquier duda que el usuario haya podido tener y descurir las dudas y micro-gestos que ha tenido y que ocurren en milisegundos (estas son las que cuestan más de detectar y las que tenemos que solucionar) o aquellas donde el usuario duda de entre varias opciones.</p>
<h2>Objetivo del test</h2>
<p>Nuestro objetivo final del test de usabilidad es detectar qué podemos cambiar o mejorar para que nuestros usuarios reales tengan que pensar o dudar lo mínimo. Cuanto menos hagamos pensar a nuestro usuario <strong>menor será su nivel de frustración y mayor el de autorealización</strong>. Una web usable es aquella donde <strong>el usuario cumple su objetivo por intuición</strong> sin tener que pensar demasiado. Para acabar, una cita de uno de los genios en usabilidad web, os recomiendo su libro.</p>
<blockquote><p>Una web poco usable no es aquella web que no se usará pero sí aquella que se usará menos.<br />
&#8211;Steve Krug en &#8216;Don&#8217;t make me Think&#8217;</p></blockquote>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://xaviesteve.com/2913/test-de-usabilidad-web-economico/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Generate a custom/fake/virtual page on the fly &#8211; WordPress Plugin Development</title>
		<link>http://xaviesteve.com/2851/generate-a-custom-fakevirtual-page-on-the-fly-wordpress-plugin-development/</link>
		<comments>http://xaviesteve.com/2851/generate-a-custom-fakevirtual-page-on-the-fly-wordpress-plugin-development/#comments</comments>
		<pubDate>Tue, 17 Jan 2012 21:01:10 +0000</pubDate>
		<dc:creator>Xavi</dc:creator>
				<category><![CDATA[English]]></category>
		<category><![CDATA[Front-End]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://xaviesteve.com/?p=2851</guid>
		<description><![CDATA[I&#8217;m currently developing a WordPress plugin that needs to show a virtual page generated by my plugin (such as a form or a message) and I wanted to avoid adding a new Page and modifying the current WordPress installation, so every plugin form, message or page had to be generated on the fly without touching the database. Some WordPress plugins [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://xaviesteve.com/wp-content/uploads/2011/09/wordpress-performance-speed-tips1.jpg" alt="Wordpress ultimate performance" /></p>
<p>I&#8217;m currently developing a <strong>WordPress plugin</strong> that needs to <strong>show a virtual page generated by my plugin</strong> (such as a form or a message) and I wanted to <strong>avoid adding a new Page</strong> and modifying the current WordPress installation, so every plugin form, message or page had to be <strong>generated on the fly</strong> without touching the database.</p>
<p>Some WordPress plugins or themes create new pages in the website&#8217;s installation to add advanced functionalities. As an example, WooCommerce adds new pages to the <code>wp_posts</code> database that help set up the website to work with it. In my opinion this is a mess, if you already have a WordPress website running, installing this theme/plugin will mess with your current page structures and whenever you want to uninstall it or deactivate it you will need to manually remove those pages created previously by the plugin. I once wanted to test an advanced WordPress theme that deleted all the current pages I had&#8230; that was the most annoying thing ever, since I already had written the content for the website and lost it (yes, I should have backed up but, who would expect a theme to delete and install pages without even a warning?).</p>
<p>A few weeks ago I posted <a href="http://wordpress.stackexchange.com/questions/37954/display-custom-content-using-page-php-from-theme" rel="nofollow">a question</a> in WordPress StackExchange but couldn&#8217;t really get the answer I was looking for, there was <a href="http://www.blogseye.com/2010/05/creating-fake-wordpress-posts-on-the-fly/" rel="nofollow">this</a> solution to <strong>create fake posts</strong> but I wanted generate <strong>unlimited pages</strong> with <strong>simple code</strong> as possible and using friendly URLs like: <em>http://example.com/?<strong>plugin_page=myfakepage</strong></em> (I could then easily use <code>mod_rewrite</code> to make them look even better). Today I kept investigating and finally came with the solution.</p>
<h2>Step by step guide</h2>
<p>We will load the page at http://example.com/ but modify its title, content and select a blank theme template so it looks like a complete new page.</p>
<h3>Custom page content</h3>
<p>First of all we create a function that will overwrite the content:</p>
<pre>function plugin_myown_content() {
  $return = '
&lt;p&gt;Fill in this form:&lt;/p&gt;
&lt;form action="?" method="post"&gt;
  &lt;input type="text" name="foo" value="bar" /&gt;
  &lt;input type="submit" value="Connect" /&gt;
&lt;/form&gt;
';
  return $return;
}</pre>
<h3>Custom page title</h3>
<p>Now we overwrite the title of the page with this function:</p>
<pre>function plugin_myown_title() {
  return "On the fly foobar form";
}</pre>
<h3>Default page template</h3>
<p>With this function we force WordPress to load the default page template of the current active theme:</p>
<pre>function plugin_myown_template() {
  include(TEMPLATEPATH."/page.php");
  exit;
}</pre>
<h3>Hook actions and filters</h3>
<p>Finally, we add a simple <code>if</code>to check if the user is requesting the plugin&#8217;s fake page and run WordPress hooks to load the 3 functions mentioned before and force WordPress into displaying the virtual page we have just generated.</p>
<pre>if ($_GET['plugin_page'] == "myfakepage") {
  add_filter('the_title','plugin_myown_title');
  add_filter('the_content','plugin_myown_content');
  add_action('template_redirect', 'plugin_myown_template');
}</pre>
<p>The code is pretty basic, from here you can add your desired PHP code to make it do whatever you want. You can also add more hooks to customize the page even further. I hope you get the idea. This code has been tested with the latest version of WordPress (3.3.1).</p>
]]></content:encoded>
			<wfw:commentRss>http://xaviesteve.com/2851/generate-a-custom-fakevirtual-page-on-the-fly-wordpress-plugin-development/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Monopoly Advanced Tricks and Tips</title>
		<link>http://xaviesteve.com/2735/monopoly-advanced-tricks-and-tips/</link>
		<comments>http://xaviesteve.com/2735/monopoly-advanced-tricks-and-tips/#comments</comments>
		<pubDate>Thu, 22 Dec 2011 01:40:25 +0000</pubDate>
		<dc:creator>Xavi</dc:creator>
				<category><![CDATA[English]]></category>
		<category><![CDATA[Entertainment]]></category>
		<category><![CDATA[Games]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[board games]]></category>
		<category><![CDATA[Mathematics]]></category>
		<category><![CDATA[Monopoly]]></category>
		<category><![CDATA[probability]]></category>

		<guid isPermaLink="false">http://xaviesteve.com/?p=2735</guid>
		<description><![CDATA[After several Monopoly games with my flatmates I wondered about the &#8220;mathematical luck&#8221; that was involved in the game so I created a Monopoly simulator and emulated up to 1,000,000 turns in a 4 players game which shows that the game has a big luck factor for every player although there are very interesting facts [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://xaviesteve.com/2735/monopoly-advanced-tricks-and-tips/monopoly-game-with-friends/" rel="attachment wp-att-2773"><img class="alignnone size-full wp-image-2773" title="Monopoly game with friends" src="http://xaviesteve.com/wp-content/uploads/2011/12/monopoly-game-with-friends.jpg" alt="Monopoly game with friends" width="600" height="368" /></a></p>
<p>After several Monopoly games with my flatmates I wondered about the &#8220;mathematical luck&#8221; that was involved in the game so I created a Monopoly simulator and emulated up to 1,000,000 turns in a 4 players game which shows that the game has a big luck factor for every player although there are very interesting facts that can help you in having a higher chance of winning the game. I am assuming that you already know the rules and have a solid strategy playing the game.</p>
<p>Street names are based in the London (United Kingdom, with Mayfair) board edition although the colours and positions of the lands are the same for all Monopoly versions so you should have no problem reading the report. Here&#8217;s how it looks for your reference:</p>
<p><a href="http://xaviesteve.com/2735/monopoly-advanced-tricks-and-tips/monopolu-uk/" rel="attachment wp-att-2770"><img class="alignnone size-full wp-image-2770" title="Monopoly London Board" src="http://xaviesteve.com/wp-content/uploads/2011/12/monopolu-uk.gif" alt="Monopoly London Board" width="559" height="462" /></a></p>
<h2>General Tips and Facts</h2>
<h4>Trading</h4>
<p>- Trading is a human to human interaction and a good people strategy is highly flexible. Do not criticise anyone and keep quiet during the game, you do not want to appear as an asshole or be hated. Focus on your partner&#8217;s benefits when selling and be positive and polite.</p>
<p>- When trading, consider a mortgaged property to be MortgageValue+(TotalValue/1.5).</p>
<p>- Make low trading offers to players (bad for them), they will usually decline. Then wait until they need the money and tell them again, they will not see it as bad as before.</p>
<p>- Never trade if you benefit a potential opponent the same or more, he is nothing more than your enemy in the game and will eventually try to destroy you with it.</p>
<h4>Money</h4>
<p>- Save money to pay for the highest rent you may need to pay in the next 3 moves.</p>
<p>- Spend money the latest you possibly can to avoid surprises and nasty debts.</p>
<p>- Mortgage (only 10% economical loss) before selling any properties (100% economical loss) or lands (highly unrecoverable).- It is better to spend your money in upgrading unmortgaged lands (building houses and hotels) than unmortgaging other lands.</p>
<h4>Lands</h4>
<p>- It is wise to mortgage at the beginning of the game (for buying more land, houses or paying debts) but keeping at least 20% of them unmortgaged (for houses and emergencies).</p>
<p>- Stations and Utilities are a great asset at the beginning of the game until people start building 3 houses.</p>
<h4>Houses and hotels</h4>
<p>- Get to 3 houses as soon as possible, rent increases substantially from 2 to 3.</p>
<p>- It is better to separate your buildings and higher rents along the board as much as possible instead of focusing on a &#8220;death passage&#8221;.</p>
<h4>Random facts</h4>
<p>- It takes from 6 to 10 rounds for a player to go through the board and get through GO.</p>
<p>- The rents go higher as you go to the end of the board (scroll down for charts).</p>
<h4>Game rules</h4>
<p>- Our brain is limited so the less you need to guess, the more accurate and precise your moves will be.</p>
<p>- Agree to play the official rules every time you can, the more you play to the same exact game, the better your brain is at predicting the best strategy and predicting old mistakes.</p>
<p>- Learn and set all the house rules before playing, this will not only avoid future confusion but help you in decide your strategy better.</p>
<p>- The official rules do not require you to pay rent if the owner doesn&#8217;t claim it.</p>
<p>- The official rules say you can buy and sell buildings before and after each turn, not only yours. Wait until people are close to your lands (see The dice probabilities below) to invest in buildings.</p>
<h2>The dices</h2>
<p>Since we are playing with two dices the probability is not even at all. The following graph shows the results obtained after throwing 2 dices 1,000,000 times:</p>
<p><a href="http://xaviesteve.com/2735/monopoly-advanced-tricks-and-tips/screen-shot-2011-12-22-at-01-48-20/" rel="attachment wp-att-2765"><img class="alignnone size-full wp-image-2765" title="Probability of throwing 2 dices 1,000,000 times" src="http://xaviesteve.com/wp-content/uploads/2011/12/Screen-shot-2011-12-22-at-01.48.20.png" alt="Probability of throwing 2 dices 1,000,000 times" width="443" height="271" /></a></p>
<p>Not a lot can be done with the dices but it is interesting to know that 6, 7 and 8 are the most probable results when throwing two dices, good for estimating future strategies and focusing your brain power in the most probable situations.</p>
<h2>Best places to build</h2>
<p>This chart shows you the chances of players landing in each land/position in the board (4 players played 100,000 rounds each). Turns skipped when in Jail have been calculated (including the chance of getting out too):<br />
<img class="alignleft size-large wp-image-2737" title="Territory in Monopoly" src="http://xaviesteve.com/wp-content/uploads/2011/11/Screen-shot-2011-11-27-at-04.48.31-600x445.png" alt="" width="600" height="445" /><br />
As you can see, lands after Jail are visited more frequently so you should really focus to acquire these lands.</p>
<h2>Buildings profitability</h2>
<p>When buying land and building, this is the profitability of the rent (ignoring utilities and stations).</p>
<h3>Built 0 houses and 1 player paid rent</h3>
<p><img class="alignleft size-full wp-image-2738" title="0 houses, 1 rent" src="http://xaviesteve.com/wp-content/uploads/2011/11/Screen-shot-2011-11-27-at-05.18.10.png" alt="" width="591" height="215" /></p>
<h3>Built 1 hotel and 5 players paid rent</h3>
<p><img class="alignleft size-full wp-image-2739" title="1 hotel, 5 rents" src="http://xaviesteve.com/wp-content/uploads/2011/11/Screen-shot-2011-11-27-at-05.22.09.png" alt="" width="593" height="307" /></p>
<h2>Profitability VS Probability</h2>
<p>These charts compare the profitability of earning rent based on the times players land on them (100 rounds):</p>
<h3>4 players, all lands with 0 houses (1,000 rounds)</h3>
<p><img class="alignleft size-large wp-image-2742" title="" src="http://xaviesteve.com/wp-content/uploads/2011/11/Screen-shot-2011-11-27-at-05.54.00-600x327.png" alt="" width="600" height="327" /></p>
<h3>4 players, all lands with hotels (1,000 rounds)</h3>
<p><img class="alignleft size-large wp-image-2743" title="" src="http://xaviesteve.com/wp-content/uploads/2011/11/Screen-shot-2011-11-27-at-05.56.25-600x327.png" alt="" width="600" height="327" /></p>
<h2>Further observations</h2>
<p>I keep adding interesting charts and tips to this report every now and then so you may want to bookmark it or share it for future reference. Feel free to comment or add your own tips in the comments.</p>
<h2>Script code available to download for free</h2>
<div class="notice">Coming soon&#8230;</div>
<p>The full code for the Monopoly algorithm is available at GitHub as a PHP script, if you know PHP programming feel free to extend the investigation with your own calculations so we can discover the most advanced tricks in this game and post them in the comments or send me an email to add your contribution and credits to this page.</p>
<p><small>Original post image by <a href="http://www.flickr.com/photos/compujeramey/" rel="nofollow">compujeramey</a>.</small></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://xaviesteve.com/2735/monopoly-advanced-tricks-and-tips/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Quick website prototyping</title>
		<link>http://xaviesteve.com/2556/quick-website-prototyping/</link>
		<comments>http://xaviesteve.com/2556/quick-website-prototyping/#comments</comments>
		<pubDate>Mon, 12 Dec 2011 17:35:58 +0000</pubDate>
		<dc:creator>Xavi</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[CSS3]]></category>
		<category><![CDATA[English]]></category>
		<category><![CDATA[Front-End]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[Web design]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[XHTML]]></category>

		<guid isPermaLink="false">http://xaviesteve.com/?p=2556</guid>
		<description><![CDATA[This is a little compilation I&#8217;ve made of my most used code snippets every time I build a prototype, website or theme. By following these steps you can save 80% of coding time for any HTML/CSS website or WordPress theme. For some of my projects I use the Zen Coding plugin to develop the HTML. [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-large wp-image-2616" title="" src="http://xaviesteve.com/wp-content/uploads/2011/10/prototype-600x400.jpg" alt="" width="600" height="400" /></p>
<p>This is a little compilation I&#8217;ve made of my most used code snippets every time I build a prototype, website or theme. By following these steps you can save 80% of coding time for any HTML/CSS website or WordPress theme. For some of my projects I use the Zen Coding plugin to develop the HTML. Most of the CSS itself is optimized already using short names and what some people call OOCSS (Object Oriented CSS).</p>
<h2>1. CSS Reset and Minimal Grid</h2>
<h3>Yahoo CSS Reset</h3>
<pre>/* Copyright (c) 2011, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:

http://developer.yahoo.com/yui/license.html

version: 2.9.0 */
html{color:#000;background:#FFF}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,button,textarea,select,p,blockquote,th,td{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset,img{border:0}address,button,caption,cite,code,dfn,em,input,optgroup,option,select,strong,textarea,th,var{font:inherit}del,ins{text-decoration:none}li{list-style:none}caption,th{text-align:left}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}q:before,q:after{content:''}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:baseline}sub{vertical-align:baseline}legend{color:#000}</pre>
<h3>960px Grid (12 cols, 60px width, 20px gutter)</h3>
<pre>/* Minimal Grid */
.g1{width:60px;}.g2{width:140px;}.g3{width:220px;}.g4{width:300px;}.g5{width:380px;}.g6{width:460px;}.g7{width:540px;}.g8{width:620px;}.g9{width:700px;}.g10{width:780px;}.g11{width:860px;}.g12{width:940px;}.g1,.g2,.g3,.g4,.g5,.g6,.g7,.g8,.g9,.g10,.g11,.g12{overflow:hidden;float:left;display:inline;margin:0 10px;}.r{width:960px;overflow:hidden;margin:0 auto;}.r .r{width:auto;display:inline-block;margin:0 -10px;}</pre>
<h3>Common CSS</h3>
<pre>/* Common CSS */
html {}body {font-family:Arial,sans-serif;font-size:14px;}
a{color:#0085d5;text-decoration:none}a:hover{}
li{display:inline}
h1,h2,h3,h4,h5,h6 {}
strong,.strong {font-weight:900}em,.em {font-style:italic}
.right{text-align:right}.center {text-align:center}
.fright{float:right}.fleft{float:left}
.hide{display:none}</pre>
<h3>Sprite map</h3>
<pre>/* Sprite */
#logo,.button,
.sprite{background:transparent url('images/sprite.jpg') no-repeat;}
.ico {display:inline-block;height:16px;width:16px}
.ico.aa {background-position:-px -px}</pre>
<h3>Forms and buttons</h3>
<pre>.button{background:#eee;border:1px solid #ccc;cursor:pointer;font-weight:900;padding:5px 10px;text-decoration:none}</pre>
<h3>CSS for the coming HTML template</h3>
<pre>/* Main structure */
#wrap {}
#header {}
 #logo {}
  #logo span {display:none}
 #s {}
#topnav {}
 #nav {}
  #nav li {display:inline}
#container {}
 #container a {text-decoration:underline}
 #container li {display:list-item}
 .main {}
 .main h1 {}
 .main h2 {}
 .main p {}

 .side {}
  .side h4 {}
  .side h5 {}
  .side p {}

#footer {}
 #footer p {}
 #footer p a {}</pre>
<h3>Overlap design watermark for pixel perfect CSS</h3>
<pre>    &lt;style&gt;
        #watermark {position:fixed;top:0;left:0;width:100%;background:url(images/watermark.jpg) top center;height:5px;opacity:0.2}
        #watermark:hover {height:1000px;opacity:0.5}
    &lt;/style&gt;
    &lt;div id="watermark"&gt;&lt;/div&gt;</pre>
<h2>2. HTML Zen Coding shortcuts</h2>
<h4>Typical HTML website structure</h4>
<p>With the power of Zen Coding, I can code a full HTML website in one line of code, then press the shortcut (Ctrl+, in Dreamweaver) and voila, there you have all the HTML ready:</p>
<pre>html:xt&gt;(div#wrap&gt;(div#header.r&gt;(div.g6&gt;p#logo&gt;span)+(div.g6&gt;form#search&gt;input[type=text]#s+input[type=submit].hide))+(div#topnav.r&gt;div.g12&gt;ul.nav&gt;li*5&gt;a)+(div#container.r&gt;(div.main.g8&gt;div.post&gt;h1+p+img[src=http://dummyimage.com/150x150])+(div.side.g4&gt;h4+p&gt;ul&gt;li*5&gt;a))+(div#footer.r&gt;(div.g6&gt;p&gt;a*1)+(div.g6&gt;p&gt;a*4)))</pre>
<p>Here&#8217;s the fragmented HTML:</p>
<pre>html:xt
div#wrap
div#header.r&gt;div.g6*2
div#header.r&gt;(div.g6&gt;p#logo&gt;span)+(div.g6&gt;form#search&gt;input[type=text]#s+input[type=submit].hide)
div#topnav.r&gt;div.g12&gt;ul.nav&gt;li*5&gt;a
div#container.r&gt;(div.main.g8&gt;div.post&gt;h1+p+img[src=http://dummyimage.com/150x150])+(div.side.g4&gt;h4+p&gt;ul&gt;li*5&gt;a)
div#footer.r&gt;(div.g6&gt;p&gt;a*1)+(div.g6&gt;p&gt;a*4)</pre>
<h4>Forms and tables</h4>
<pre>form&gt;label+input:text+input:submit
select#items&gt;option[value=item-$]*3
table&gt;(tr&gt;th*2)+(tr&gt;td*2)</pre>
<h4>Listings</h4>
<pre>div.list-vert&gt;(img[src=http://dummyimage.com/100x100]+h3+p.brand+span.rating-5+p.price+(p&gt;a.button-m))</pre>
<h2>3. WordPress theme</h2>
<ol>
<li>Download the <a href="http://wpcandy.com/made/the-wordpress-starter-theme-project">Starter Theme</a></li>
<li>Add <a href="http://timthumb.googlecode.com/svn/trunk/timthumb.php">TimThumb</a></li>
<li>Then grab snippets from <a href="http://wp-snippets.com/">WP Snippets</a></li>
<li>Start coding and customizing</li>
</ol>
<h2>4. WordPress customization</h2>
<h3>In the functions.php</h3>
<pre>date_default_timezone_set('Europe/Madrid');
date_default_timezone_set('Europe/London');</pre>
<h4>TimThumb shortcut</h4>
<pre>function timthumb($src, $w, $h, $q=90, $zc=1) {
    return get_bloginfo('template_url').'/thumb.php?src='.$src.'&amp;amp;w='.$w.'&amp;amp;h='.$h.'&amp;amp;q='.$q.'&amp;amp;zc='.$zc;
}</pre>
<h4>Custom field shortcut</h4>
<pre>function customfield($name, $id="") {
    $value = get_post_custom_values($name, $id);
    return $value[0];
}</pre>
<h4>Extract images of a post</h4>
<pre>function catch_that_image() {
    global $post, $posts;
    $first_img = '';
    ob_start();
    ob_end_clean();
    $output = preg_match_all('/&lt;img.+src=[\'"]([^\'"]+)[\'"].*&gt;/i', $post-&gt;post_content, $matches);
    $first_img = $matches [1] [0];

    if(empty($first_img)){ $first_img = "/images/default.jpg"; }
    return $first_img;
}</pre>
<h4>Nice excerpts</h4>
<pre>/* This function will trim text without
cutting it in the middle of the word and
adding … if longer
*/
function trimtext($text, $length) {
    $words = explode(" ", strip_tags($text));
    $newtext = "";
    $addhellip = "";
    foreach ($words as $word) {
        if (strlen($newtext." ".$word) &lt; $length) {
            $newtext .= " ".$word;
        }else{
            $addhellip = 1;
            break;
        }
    }
    if ($addhellip) {$newtext .= "…";}
    return $newtext;
}</pre>
<h4>Get exact current page URL</h4>
<pre>function curPageURL() {
 $pageURL = 'http';
 if ($_SERVER["HTTPS"] == "on") {$pageURL .= "s";}
 $pageURL .= "://";
 if ($_SERVER["SERVER_PORT"] != "80") {
  $pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
 } else {
  $pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
 }
 return $pageURL;
}</pre>
<h4>Optimize WYSIWYG editor for SEO</h4>
<pre>if (isset($wp_version)) {
    add_filter("mce_buttons", "extended_editor_mce_buttons", 0);
    add_filter("mce_buttons_2", "extended_editor_mce_buttons_2", 0);
    add_filter('tiny_mce_before_init', 'extended_editor_change_mce_buttons', 0);
}

function extended_editor_mce_buttons($buttons) {
    return array(
        "formatselect", "separator",
        "bold", "italic", "separator",
        "bullist", "numlist", "blockquote", "separator",
        "link", "unlink", "separator",
        "charmap", "separator",
        "pasteword", "separator",
        "fullscreen", "separator",
    );
}

function extended_editor_mce_buttons_2($buttons) {
// the second toolbar line
return array();
}

function extended_editor_change_mce_buttons( $initArray ) {
    $initArray['theme_advanced_blockformats'] = 'p,h2,h3,h4,h5,h6,pre';
    return $initArray;
}</pre>
<h4>In the wp-config.php</h4>
<p>Disable/limit revisions</p>
<pre># Maximum 5 revisions
define('WP_POST_REVISIONS', 5);
# Disable revisions
define('WP_POST_REVISIONS', false);</pre>
<h2> 5. WordPress must-have plugins</h2>
<ul>
<li><a href="http://xaviesteve.com/2498/admin-helper-wordpress-plugin-essential-tool-for-theme-developers/">Admin Helper</a></li>
<li><a href="http://wordpress.org/extend/plugins/all-in-one-seo-pack/">All-in-one SEO</a></li>
<li><a href="http://wordpress.org/extend/plugins/google-sitemap-generator/">Google XML Sitemap</a></li>
<li><a href="http://www.dagondesign.com/articles/sitemap-generator-plugin-for-wordpress/">HTML Sitemap</a></li>
</ul>
<p><small>Photo by <a href="http://www.flickr.com/photos/coffeegeek/" rel="nofollow">CoffeGeek</a></small></p>
]]></content:encoded>
			<wfw:commentRss>http://xaviesteve.com/2556/quick-website-prototyping/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Send and Receive emails from your company&#8217;s account directly in Gmail</title>
		<link>http://xaviesteve.com/2701/send-and-receive-emails-from-your-companys-account-directly-in-gmail/</link>
		<comments>http://xaviesteve.com/2701/send-and-receive-emails-from-your-companys-account-directly-in-gmail/#comments</comments>
		<pubDate>Wed, 16 Nov 2011 16:31:27 +0000</pubDate>
		<dc:creator>Xavi</dc:creator>
				<category><![CDATA[English]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Life]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[business]]></category>
		<category><![CDATA[email]]></category>
		<category><![CDATA[gmail]]></category>
		<category><![CDATA[startups]]></category>

		<guid isPermaLink="false">http://xaviesteve.com/?p=2701</guid>
		<description><![CDATA[If you have set up a new website or a company and want to send and receive emails with your company&#8217;s email address but don&#8217;t want to have multiple inboxes (specially when you manage more than 5 different email accounts) the best way to do it is to redirect all your emails to the same [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-2712" title="" src="http://xaviesteve.com/wp-content/uploads/2011/11/gmail-company-email-address.jpg" alt="" width="600" height="300" /></p>
<p>If you have set up a new website or a company and want to <strong>send</strong> and <strong>receive</strong> emails with your <strong>company&#8217;s email address</strong> but don&#8217;t want to have multiple inboxes (specially when you manage more than 5 different email accounts) the best way to do it is to redirect all your emails to the same email account. And thanks to the power of Google Mail or Gmail you can manage unlimited accounts effortlessly and send and receive emails from different accounts easily into one inbox. Follow these two step-by-step guides to set up receiving and sending:</p>
<h2>Receiving emails from your website to your email</h2>
<p>Go to your website&#8217;s <strong>cPanel</strong> (if you don&#8217;t know what cPanel is then send this website to your web developer to do this for you) and click on <em>Forwarding</em>:</p>
<p><img class="alignnone size-full wp-image-2702" title="" src="http://xaviesteve.com/wp-content/uploads/2011/11/step1.gif" alt="" width="521" height="275" /></p>
<p>Then click on <em>Add Forwarder</em>:</p>
<p><img class="alignnone size-full wp-image-2703" title="" src="http://xaviesteve.com/wp-content/uploads/2011/11/step2.gif" alt="" width="600" height="291" /></p>
<p>Now fill in your email account name (what goes before the @ symbol) and select the domain you want to use, then forward it to your Gmail account like in the image:</p>
<p><img class="alignnone size-full wp-image-2704" title="" src="http://xaviesteve.com/wp-content/uploads/2011/11/step3.jpg" alt="" width="600" height="352" /></p>
<p>Click on Add Forwarder and a success message will appear. You can now close cPanel. You must wait for a few minutes or even a few hours for the mail server to update and spread your new email account before it forwards emails correctly and you start receiving them.</p>
<h2>Sending emails from your company&#8217;s email address</h2>
<p>First of all make sure that emails sent to your company&#8217;s email address are successfully forwarded to your Gmail account, try sending a test email now and look in your Gmail account for the message to arrive. Once you open the message you should see your company&#8217;s email address in the To: field as in this screenshot:</p>
<p><img class="alignnone size-full wp-image-2710" title="" src="http://xaviesteve.com/wp-content/uploads/2011/11/check.gif" alt="" width="600" height="319" /></p>
<p>If you are not receiving them then wait a few hours and try again later or check the Spam folder in case it went there.</p>
<p>Once you are receiving the emails you can set Gmail up to start sending emails with your company&#8217;s email address:</p>
<p>Go to the top right corner of Gmail and click <em>Options</em> &gt; <em>Mail settings</em>:</p>
<p><img class="alignnone size-full wp-image-2705" title="" src="http://xaviesteve.com/wp-content/uploads/2011/11/stepb1.gif" alt="" width="491" height="324" /></p>
<p>The Settings page will open, click on <em>Accounts and Import</em>:</p>
<p><img class="alignnone size-full wp-image-2706" title="" src="http://xaviesteve.com/wp-content/uploads/2011/11/stepb2.gif" alt="" width="487" height="226" /></p>
<p>Now keep scrolling down until you see a <em>Send email as</em> section and a link to <em>Add another email address you own</em>, click that:</p>
<p><img class="alignnone size-full wp-image-2707" title="" src="http://xaviesteve.com/wp-content/uploads/2011/11/stepb3.gif" alt="" width="467" height="101" /></p>
<p>A popup window will open, on this step you need to fill in the name that will show when people receive an email from your company&#8217;s address and your company&#8217;s email address, then click on <em>Next Step</em>:</p>
<p><img class="alignnone size-full wp-image-2708" title="" src="http://xaviesteve.com/wp-content/uploads/2011/11/stepb4.gif" alt="" width="432" height="282" /></p>
<p>The easy and quick way now is to select <em>Send through Gmail</em> and click <em>Next Step</em>. If you want to send it through the SMTP servers of your company you will need to find them out asking your web developer or IT company. For HostGator accounts have a look at the <a href="http://support.hostgator.com/articles/specialized-help/email/outlook-eudora-thunderbird-mac-ipad-phone-client-settings" rel="nofollow">Email client settings</a>.</p>
<p><img class="alignnone size-full wp-image-2709" title="" src="http://xaviesteve.com/wp-content/uploads/2011/11/stepb5.gif" alt="" width="453" height="305" /></p>
<p>The next steps are pretty straight forward, a confirmation email will be sent to the company email address (which will be forwarded to your Gmail account), open it and click on the activation link to authorize Gmail to send emails as the company&#8217;s address.</p>
<p>Now, when writing a new email or replying to one, there will be a <em>From:</em> dropdown from which you will be able to choose the account to use:</p>
<p><img class="alignnone size-full wp-image-2711" title="" src="http://xaviesteve.com/wp-content/uploads/2011/11/from.gif" alt="" width="600" height="171" /></p>
<h2>Organizing your inbox</h2>
<p>Once you start using multiple email accounts in the same inbox things may start to get unorganised. To solve this you can create tags. Go to your Gmail and go to <em>Mail settings</em> again (at the top right), then select the <em>Filters</em> tab and click <em><strong>Create a new filter</strong></em> and type in your company&#8217;s email address there and click <em>Create filter with this search</em>:</p>
<p><img class="alignnone size-full wp-image-2713" title="" src="http://xaviesteve.com/wp-content/uploads/2011/11/labels1.jpg" alt="" width="350" height="353" /></p>
<p>In this step select Apply label and create a new label:</p>
<p><img class="alignnone size-full wp-image-2714" title="" src="http://xaviesteve.com/wp-content/uploads/2011/11/labels2.jpg" alt="" width="350" height="353" /></p>
<p>You are done! Now, every time you receive an email to the company&#8217;s email address a label will appear next to the subject, you can customize the colour of the label and rename it to whatever you want.</p>
<p>In your inbox sidebar you will be able to filter messages sent only to that email address. Find below my own inbox, I have more than 10 email accounts configured and all of them have a different Label so that I keep everything organised:</p>
<p><img class="alignnone size-full wp-image-2715" title="" src="http://xaviesteve.com/wp-content/uploads/2011/11/labels3.jpg" alt="" width="600" height="290" /></p>
<p>If you have any questions or anything is unclear let me know in the comments section below and I will do my best to help you.</p>
]]></content:encoded>
			<wfw:commentRss>http://xaviesteve.com/2701/send-and-receive-emails-from-your-companys-account-directly-in-gmail/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>10 essential WordPress SEO tips for content writers (one page PDF download)</title>
		<link>http://xaviesteve.com/2483/10-essential-wordpress-seo-tips-for-content-writers-one-page-pdf-download/</link>
		<comments>http://xaviesteve.com/2483/10-essential-wordpress-seo-tips-for-content-writers-one-page-pdf-download/#comments</comments>
		<pubDate>Tue, 11 Oct 2011 07:22:16 +0000</pubDate>
		<dc:creator>Xavi</dc:creator>
				<category><![CDATA[English]]></category>
		<category><![CDATA[SEO]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[Web design]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[XHTML]]></category>
		<category><![CDATA[content writing]]></category>
		<category><![CDATA[pdf]]></category>
		<category><![CDATA[resource]]></category>
		<category><![CDATA[tips]]></category>
		<category><![CDATA[tricks]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://xaviesteve.com/?p=2483</guid>
		<description><![CDATA[About a year ago I created a one-page document for content writers in my team to write better online articles. I am now releasing it so you can print it and have it close to you while writing. These are the most basic and important SEO tips you need to know if you want your [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://xaviesteve.com/wp-content/uploads/2011/10/seo-content-writing-wordpress.jpg"><img class="alignnone size-full wp-image-2545" title="SEO content writing wordpress" src="http://xaviesteve.com/wp-content/uploads/2011/10/seo-content-writing-wordpress.jpg" alt="" width="600" height="272" /></a></p>
<p>About a year ago I created a one-page document for content writers in my team to write better online articles. I am now releasing it so you can print it and have it close to you while writing. These are the most basic and important SEO tips you need to know if you want your posts to succeed. You will find a link to download the one-page PDF at the bottom of the article.</p>
<h3><strong>1. The most important tip is to create quality content</strong></h3>
<p>Posts that are <em>bookmarked</em>, <em>shared</em>, <em>linked</em>, <em>commented</em> or <em>thanked</em>. That should be the purpose of every post and should either be:</p>
<ol>
<li><strong>Useful</strong> (people reference to them)</li>
<li><strong>Interesting</strong> (people bookmark them)</li>
<li><strong>Funny</strong> or entertaining (people share them)</li>
</ol>
<p>Here&#8217;s a good article extending this concept on <a title="Effective SEO – Purposes and Actions in Content Writing" href="http://xaviesteve.com/1912/effective-seo-purposes-and-actions-in-content-writing/">writing with a purpose</a>.</p>
<h3><strong>2. User goes always first</strong></h3>
<p>Keep the post readable and attractive to humans. Google is secondary. Ensuring you write for your users will have <a title="Future-proof SEO – Avoiding Google penalization" href="http://xaviesteve.com/1985/future-proof-seo-avoiding-google-penalization/">long-term SEO benefits</a>.</p>
<h3><strong>3. Use Headings to split the content</strong></h3>
<p>Heading 1 is always the page title and it is the most important title. Headings to use in the content <strong>must start from Heading 2</strong> to a max depth of H6. Use headings instead of bolding or formatting the text yourself.</p>
<h3><strong>4. Use eye-catching titles but keep them short</strong></h3>
<p>Don&#8217;t be just informative, get the user&#8217;s attention.</p>
<ol>
<li><span style="text-decoration: line-through;">Windows tricks</span> -&gt; Top 10 coolest tricks for Windows!</li>
<li><span style="text-decoration: line-through;">London party places</span> -&gt; Best secret places to party in London</li>
</ol>
<h3><strong>5. First paragraphs are the most important ones</strong></h3>
<p>Search Engines give more importance to the first part of the posts. In fact, really large posts are usually not indexed completely.</p>
<h3><strong>6. Be descriptive by adding keywords whenever possible</strong></h3>
<p>All headings should have <strong>keywords</strong> in them:</p>
<ol>
<li><span style="text-decoration: line-through;">What I like</span> -&gt; What I like about the HP Pavilion laptop</li>
<li><span style="text-decoration: line-through;">My trip</span> -&gt; My awesome trip to Barcelona this summer</li>
</ol>
<h3><strong>7. Use synonyms</strong></h3>
<p>Don’t repeat keywords you are not targeting for, <strong>use a lot of synonyms</strong> instead.</p>
<ol>
<li>What I like about Acer -&gt; Review about Acer computers / My opinion on Acer laptops</li>
</ol>
<p>This way, users searching for &#8220;acer review&#8221;, &#8220;acer opinion&#8221; or &#8220;acer laptop&#8221; will find our page.</p>
<h3><strong>8. Rich formatting increases SEO</strong></h3>
<p>Eases Search Engines to identify the content.</p>
<ul>
<li>Using <strong>lists</strong> (and differentiating between ordered and unordered lists),</li>
<li><strong>bold</strong> and <strong>italic</strong> words or sentences,</li>
<li><strong>blockquote</strong> paragraphs when quoting or pasting literal text</li>
</ul>
<h3><strong>9. Add both inbound and outbound links</strong></h3>
<p>Links to authority webs like Flickr, Wikipedia or YouTube can be frequent (you don&#8217;t lose any PageRank juice). But don’t link too much to other websites (one or two per paragraph). Always <strong>describe the links</strong>:</p>
<ol>
<li><span style="text-decoration: line-through;">Download the Flash player by <span style="text-decoration: underline;">clicking here</span>.</span> -&gt; <span style="text-decoration: underline;">Download the Flash player</span>.</li>
</ol>
<h3><strong>10. Format posts inside WordPress</strong></h3>
<p>Text editors like Microsoft Word may add irrelevant or invalid code into posts. If the text is in Word, paste it in Notepad so it looses all formatting, then copy and paste into WordPress and <strong>format it there</strong> using Headings, lists, bold, italic, etc.</p>
<h2>Download the 10 SEO tips for WordPress PDF file</h2>
<p><a class="button blue" href="http://xaviesteve.com/wp-content/uploads/2011/09/Wordpress-SEO-writer-tips.pdf">10 SEO tips for WordPress PDF file</a><br />
If you have any doubts feel free to ask them in the comments. Also, share this article with your team, friends and colleagues for increased results and better blogging.</p>
]]></content:encoded>
			<wfw:commentRss>http://xaviesteve.com/2483/10-essential-wordpress-seo-tips-for-content-writers-one-page-pdf-download/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Cheapest iPhone/iPod stand ever</title>
		<link>http://xaviesteve.com/2591/cheapest-iphone-ipod-stand-ever/</link>
		<comments>http://xaviesteve.com/2591/cheapest-iphone-ipod-stand-ever/#comments</comments>
		<pubDate>Wed, 05 Oct 2011 17:18:42 +0000</pubDate>
		<dc:creator>Xavi</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[English]]></category>
		<category><![CDATA[Entertainment]]></category>
		<category><![CDATA[Humor]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[ipod]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[diy]]></category>
		<category><![CDATA[phone]]></category>
		<category><![CDATA[stand]]></category>
		<category><![CDATA[tool]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://xaviesteve.com/?p=2591</guid>
		<description><![CDATA[So you don&#8217;t want to waste any money in iPhone stands nor care about looks. You are looking for a stand where you can have your iPhone in portrait mode to read, listen to music and use most apps and also in landscape mode to watch movies too. You are lucky because thanks to one [...]]]></description>
			<content:encoded><![CDATA[<p><img title="iPhone cheapest stand to watch movies" src="http://xaviesteve.com/wp-content/uploads/2011/10/iphone-cheapest-stand-watch-movies.jpg" alt="iPhone cheapest stand to watch movies" width="600" height="308" /></p>
<p>So you don&#8217;t want to waste any money in <strong>iPhone stands</strong> nor care about looks. You are looking for a stand where you can have your iPhone in portrait mode to read, listen to music and use most apps and also in landscape mode to watch movies too. You are lucky because thanks to one of the best inventions in the world&#8230; Yes! you got it right, the toilet paper roll! With just a single roll we can create a highly customized iPhone stand without too much effort or complex professional tools. It will just take you 60 seconds to create (without counting step 1). Keep reading for step-by-step instructions.</p>
<p><img title="Cheapest iPhone stand front view" src="http://xaviesteve.com/wp-content/uploads/2011/10/iphone-cheapest-stand-front-view.jpg" alt="Cheapest iPhone stand front view" width="600" height="450" /></p>
<h2>Instructions</h2>
<p>1. First of all, finish a toilet paper roll as you would normally do (no image will be provided for this step).</p>
<p>2. Now get the roll and some scissors and cut it along the dashed line like in the following image:</p>
<p><img class="alignleft size-full wp-image-2600" title="iPhone cheapest stand how to DYI instructions" src="http://xaviesteve.com/wp-content/uploads/2011/10/iphone-cheapest-stand-how-to-instructions1.jpg" alt="iPhone cheapest stand how to DYI instructions" width="600" height="450" /></p>
<p>3. You are done!</p>
<p>If you would like your <strong>cheapest iPhone stand</strong> to also be able to charge the iPhone&#8230; What?! Srsly? Yea! the cheapest iPhone stand can also charge your iPhone while it&#8217;s on it. Just cut an extra whole in the back like in the following image and put your cable in:</p>
<p><img title="iPhone cheapest stand back charging" src="http://xaviesteve.com/wp-content/uploads/2011/10/iphone-cheapest-stand-back-charging.jpg" alt="iPhone cheapest stand back charging" width="600" height="450" /></p>
<p>So that&#8217;s how you get a <strong>free iPhone stand</strong>. In fact, this stand will work for any phone so Androids are also welcome. Furthermore, I guess you could use a kitchen paper roll to create the <strong>cheapest iPad stand</strong> too.</p>
<p><img class="alignleft size-full wp-image-2606" title="Fuck-yeah-meme" src="http://xaviesteve.com/wp-content/uploads/2011/10/Fuck-yeah-meme.jpg" alt="" width="273" height="235" /></p>
<p>Did you like this DIY tutorial? Share and tweet it to your friends and Apple fans!</p>
]]></content:encoded>
			<wfw:commentRss>http://xaviesteve.com/2591/cheapest-iphone-ipod-stand-ever/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Ultimate WordPress Performance Tip List to speed up and save up to 80% of space</title>
		<link>http://xaviesteve.com/2433/clean-your-wordpress-website-to-speed-up-and-save-up-to-80-percent-of-space/</link>
		<comments>http://xaviesteve.com/2433/clean-your-wordpress-website-to-speed-up-and-save-up-to-80-percent-of-space/#comments</comments>
		<pubDate>Tue, 13 Sep 2011 14:54:26 +0000</pubDate>
		<dc:creator>Xavi</dc:creator>
				<category><![CDATA[English]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[Web design]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[optimize]]></category>
		<category><![CDATA[server]]></category>
		<category><![CDATA[tips]]></category>
		<category><![CDATA[tricks]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://xaviesteve.com/?p=2433</guid>
		<description><![CDATA[This is a list of actions and tips to take in order to make your WordPress website faster and improve its performance. You should follow these steps at least once every 3-6 months depending on your website&#8217;s activity in order to keep it clean and to increase its performance to a top level. If you [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-2478" title="Wordpress Ultimate Performance Tips" src="http://xaviesteve.com/wp-content/uploads/2011/09/wordpress-performance-speed-tips.jpg" alt="Wordpress Ultimate Performance Tips" width="600" height="333" /></p>
<p>This is a list of actions and tips to take in order to make your WordPress website faster and improve its performance. You should follow these steps at least once every 3-6 months depending on your website&#8217;s activity in order to keep it clean and to increase its performance to a top level. If you have been using WordPress for a while and have never cleaned it you may be surprised at how much database space you can save up, the last cleaning I did to a client saved 82% of space going from 132MB to 23MB.</p>
<p>Before running any queries in the database take backups of everything and make sure no one is editing any post or page while cleaning WordPress.</p>
<h2>The database</h2>
<h3>1. Delete post revisions</h3>
<p>Create a backup of the revisions first by selecting and exporting them:</p>
<pre>SELECT * FROM wp_posts WHERE post_type = 'revision'</pre>
<p>Then delete them and be amazed at the big space savings:</p>
<pre>DELETE FROM wp_posts WHERE post_type = 'revision'</pre>
<h3>2. Limit post revision</h3>
<p>By default, WordPress saves every revision of a post. This can make your <code>wp_posts</code> table 2 to 10 times bigger than necessary. In your <code>wp-config.php</code> file, add this:</p>
<pre>define('WP_POST_REVISIONS', no_of_revisions);</pre>
<p>Leaving number of revisions to 10 is more than enough, if your blog is used by 1 or 2 people then 5 may be even better.</p>
<h4>3. Disabling post revision</h4>
<p>You can disable post revision completely (although I would personally leave it just in case). To do that:</p>
<pre>define('WP_POST_REVISIONS', false);</pre>
<h3>4. Deleting spam comments</h3>
<p>If you don’t use Akismet or any other effective spam control service, spam messages can bloat your database waiting to be approved or deleted. You can either go to the WordPress <em>Administration Panel</em> &gt; <em>Comments</em> and delete them or just head to MySQL and execute this:</p>
<pre>DELETE FROM `wp_comments` WHERE `comment_approved` NOT LIKE '1'</pre>
<p>This query will delete both <strong>spam, pending and trashed</strong> comments.</p>
<h4>5. Disable comments in all your WordPress blog posts</h4>
<p>Some WordPress sites get loads of real comments every day but some don’t. If your website just receives spammy comments and you guess one in a million will be real, I may suggest you to consider disabling them, not only will this save you time and loads of database space but will also increase the performance and loading speed of your pages. You can install Disqus which allows people to post comments through several ways (Twitter, Facebook, manually, etc.) and has very effective spam protection. If you don&#8217;t get many comments and performance/SEO is a must then add a link to a Contact Us page next to the post and encourage people to contact you that way.<br />
To disable comments go to <em>Settings</em> &gt; <em>Discussion</em> and disable these two checkboxes:</p>
<ul>
<li>Allow link notifications from other blogs (pingbacks and trackbacks.)</li>
<li>Allow people to post comments on new articles</li>
</ul>
<p>This will disable comments only in the new posts you create from now on. To disable comments (and pings) in your existing blog posts execute this query in your MySQL:</p>
<pre>UPDATE `wp_posts` SET `comment_status` = 'closed', `ping_status` = 'closed';</pre>
<h3>6. Delete plugin log tables</h3>
<p>Some plugins store log files in your database but these can sometimes get way too big if the plugin developer hasn’t set a limit. Check your database tables and look for big tables or tables containing <code>log</code> in their name.</p>
<h3>7. Delete old plugin tables</h3>
<p>Some WordPress plugins create tables in your database and when you delete them, the tables are still there to keep your configuration if you ever install the plugin again. If you do not intend to install them anymore, have a quick look at your database tables and see if you find any remains of those plugins.</p>
<h3>8. Delete old plugin option parameters</h3>
<p>Some WordPress plugins also store information in the <code>wp_options</code> table.</p>
<h3>9. Optimize, analyze, check and repair your tables</h3>
<p>After deleting so many records, it is good to optimize your tables again to remove any over-heading data.</p>
<h3>10. Check your WordPress table&#8217;s Primary and Index Keys</h3>
<p><a href="http://xaviesteve.com/wp-content/uploads/2011/09/advanced-tips-optimize-wordpress-database.jpg"><img class="alignnone size-full wp-image-2509" title="" src="http://xaviesteve.com/wp-content/uploads/2011/09/advanced-tips-optimize-wordpress-database.jpg" alt="advanced tips to optimize wordpress database" width="334" height="273" /></a></p>
<p>It’s not just about size what makes a database run slower but the way it is indexed. Once you have cleaned your database, it is time to check that MySQL is indexing everything properly. phpMyAdmin is a very powerful tool and may also warn you about it or suggest better ways. I suggest you read more about MySQL and how it works to understand how queries are made, how to index properly and how a database works on the background.</p>
<h2>The server</h2>
<h3>11. Remove old plugins completely</h3>
<p>Connect with your FTP and remove any old plugins you are not using anymore. Don&#8217;t bother to remove Hello Dolly as it will get installed again in the next update.</p>
<h3>12. Search for the upgrade folder</h3>
<p>Sometimes (usually on failed WordPress automatic upgrades) an <code>upgrade</code> folder is created which contains some temporary files that you can remove.</p>
<h3>13. Search for old backups</h3>
<p>Delete old backups from the web server and store them locally, also search inside your plugins in case any of them stores backups there.</p>
<h3>14. Search for cache files</h3>
<p>If you use TimThumb or any other file caching system it is a good idea to, once in a while, clean the complete cache folder to remove items not used in a long time.</p>
<h2>WordPress settings</h2>
<p>You&#8217;ve now cleaned the database and the server files and probably made the server much quicker. You can now tweak your WordPress installation to make it work even faster.</p>
<h3>15. Upgrade to the latest version</h3>
<p>Seems quite obvious but it really makes a difference and protects you from any bugs.</p>
<h3>16. Empty the posts/pages trash</h3>
<p>The trash is emptied every 30 days by default. You can change that time by adding this function to your <code>functions.php</code> file:</p>
<pre>//empty WordPress trash once a week
define('EMPTY_TRASH_DAYS', 7);</pre>
<p>Or change the number to <code>0</code> to disable automatically emptying the trash at all.</p>
<h3>17. WordPress permalinks</h3>
<p>One of the biggest neglected performance hits by advanced users is the way you set up your permalinks. There has been <a href="http://www.google.com/?q=wordpress+permalink+performance">much discussion</a> and it has been <a href="http://musique.jeuxactu.com/news-mort-subite-de-dj-mehdi-a-34-ans-8869.htm">demonstrated</a> that you should not just use <code>/%postname%/</code> as your Permalink structure. I personally use <code>/%post_id%/%postname%/</code> as it&#8217;s the fastest query (the Post ID is a primary key in MySQL).</p>
<h3>18. Remove non-changing dynamic code</h3>
<p>PHP functions such as <code>&lt;?php bloginfo('title'); ?&gt;</code> or <code>&lt;?php if ( function_exists('my_plugin') ) ?&gt;</code> nearly always output the same value so it doesn&#8217;t make sense to request it all the time increasing server load. Replacing those with its static content will decrease avoidable queries. To see how many queries a page load does you can use this code: <code>&lt;?php echo get_num_queries();?&gt;</code> .</p>
<h3>19. Enable the default WordPress Object Cache</h3>
<p>If you are using a cache plugin such as WP Super Cache, W3 Total Cache or WP-Cache you should ignore this step.</p>
<p>Since WordPress 2.0 there is a feature called <em>Object Cache</em> which is not enabled by default. To enable it follow these steps:</p>
<ul>
<li>Open <code>wp-config.php</code> in your WordPress root folder</li>
<li>Add the following code:
<pre>define('ENABLE_CACHE', TRUE);</pre>
</li>
<li>Create a new folder called <code>cache</code> to store all the cached files in <code>wp-content</code></li>
<li>Change the <code>cache</code> folder permission to <code>755</code> or <code>777</code></li>
</ul>
<p>You can set an expiration time to keep it clean, to do this add this line too (time is in seconds):</p>
<pre>define('CACHE_EXPIRATION_TIME', 3600); // 1 hour</pre>
<h3>20. Move your WordPress installation to a subdirectory</h3>
<p>It will help keep the web server root folder cleaner. To do this you will need to do some tweaks in your website&#8217;s administration panel or in Apache so that the destination of your domain points to the <code>/wordpress/</code> folder.</p>
<h3>21. Fix PHP notices and warnings</h3>
<p>The plugins and theme you are using work fine, if not you would disable them. But occasionally some of them are not coded a 100% correctly. One of the most common issues is not defining variables in PHP, this is not just a bad coding practice but it also makes the PHP engine go a bit crazy and take extra time to process the code. It is very easy to fix and any beginner programmer should be able to manage this. Once you are done, notify the plugin/theme authors of these so they fix the warnings and notices on the next release. Enable <code>WP_DEBUG</code> in your <code>wp-config.php</code> file and read this article on <a title="PHP error suppression performance" href="http://seanmonstar.com/post/909029460/php-error-suppression-performance">PHP error suppression performance</a>.</p>
<h2>Further tips</h2>
<h3>22. Change your hosting provider</h3>
<p>One of the main reasons why websites load slowly and sluggish is because of the hosting provider. Some hostings such as GoDaddy have really bad reputation and you should move to somewhere else like HostGator, you may spend £2-10 more per month but both your users and Google will compensate you.</p>
<h2>Final notes</h2>
<p>Here we&#8217;ve just covered optimizing a WordPress installation although you can keep optimizing the PHP code, MySQL queries, use less HTML, optimize the CSS selectors and use a sprite map, tailor Apache to your needs, enable Gzip compression to your files or use a Content Delivery Network amongst many others.</p>
]]></content:encoded>
			<wfw:commentRss>http://xaviesteve.com/2433/clean-your-wordpress-website-to-speed-up-and-save-up-to-80-percent-of-space/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Cómo repartir las acciones de una empresa equitativamente entre fundadores, inversores y trabajadores</title>
		<link>http://xaviesteve.com/2341/como-repartir-las-acciones-de-una-empresa-equitativamente-entre-fundadores-inversores-y-trabajadores/</link>
		<comments>http://xaviesteve.com/2341/como-repartir-las-acciones-de-una-empresa-equitativamente-entre-fundadores-inversores-y-trabajadores/#comments</comments>
		<pubDate>Mon, 20 Jun 2011 06:21:33 +0000</pubDate>
		<dc:creator>Xavi</dc:creator>
				<category><![CDATA[Español]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Project management]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[business]]></category>
		<category><![CDATA[company]]></category>
		<category><![CDATA[investment]]></category>
		<category><![CDATA[startups]]></category>

		<guid isPermaLink="false">http://xaviesteve.com/?p=2341</guid>
		<description><![CDATA[Esta es una pregunta muy común que toda nueva empresa se plantea y que debe resolverse lo antes posible. Es recomendable dejarlo todo firmado y por escrito y consultar un abogado o notario cuando sea necesario. El principio más importante a la hora de decidir como repartir una empresa entre sus fundadores es el de [...]]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-2354" title="repartir acciones empresa justamente" src="http://xaviesteve.com/wp-content/uploads/2011/06/repartir-acciones-empresa-justamente.jpg" alt="" width="600" height="328" />Esta es una pregunta muy común que toda nueva empresa se plantea y que debe resolverse lo antes posible. Es recomendable dejarlo todo firmado y por escrito y consultar un abogado o notario cuando sea necesario.</p>
<p>El principio más importante a la hora de decidir como repartir una empresa entre sus fundadores es el de <strong>Equidad, y la percepción de justicia, éstos son mucho más valiosos que la cantidad de acciones que se poseen</strong>. Tenemos que partir de la realidad de que casi todo lo que puede ir mal en una nueva empresa saldrá mal, y una de las cosas más importantes que pueden salir mal son trascendentales y airadas discusiones entre los cofundadores sobre quién trabajo más duro, quién posee más parte de la empresa, de quién fue la idea, etc. Es por eso que siempre repartiría una empresa al 50-50 con un amigo en vez de insistir en un 60% porque &#8220;fue idea mía&#8221;, o porque &#8220;yo tengo más experiencia&#8221; o cualquier otro motivo. ¿Por qué? Porque si se reparte la empresa 60-40 la empresa fracasará cuando se discutan las cosas entre cofundadores. Y si se decide &#8220;que le den, nunca averiguaremos como dividir la empresa correctamente así que seamos amigos y vayamos todos al 50-50&#8243; permaneceréis amigos y la empresa sobrevivirá.</p>
<p>Así es como os presento con el Sistema Joel para repartir una empresa de manera justa.</p>
<h2>Sistema Joel para repartir una empresa de manera justa</h2>
<p>Por razones de simplicidad, asumiremos que no se va a recurrir a capital de riesgo y que no se tendrán inversores externos. Más tarde explicaré como tratar con el capital de riesgo pero por ahora asumamos que no hay inversores.</p>
<p>También por razones de simplicidad, vamos a asumir temporalmente que todos los fundadores han renunciado a sus puestos de trabajo y empiezan a trabajar en la compañía a tiempo completo, al mismo tiempo. Más tarde, explicaré como tratar con fundadores que no se inician al mismo tiempo.</p>
<p>Esto es el principio. A medida que la empresa crece, se tiende a ir agregando personas en diferentes &#8220;capas&#8221;.</p>
<ol>
<li>La capa superior es el primer fundador o cofundadores. Podéis ser uno, dos, tres o más fundadores, pero todos empezáis a trabajar casi al mismo tiempo, y todos tomáis el mismo riesgo, dejamos nuestros trabajos para ir a trabajar para una empresa nueva sin idea de sus resultados.</li>
<li>La segunda capa es la primera que empieza a tener empleados. En el momento de contratar este nivel, la empresa ya tiene dinero en efectivo que proviene de alguna parte (ya sean inversores o clientes). Estas personas no toman tanto riesgo, ya que tienen un salario desde el primer día y, honestamente, no han creado la empresa, se unieron a ella como a cualquier otro empleo.</li>
<li>El tercer nivel son más empleados. En el momento en que se unen a la compañía ésta ya funciona bastante bien y avanza.</li>
</ol>
<p>Para muchas empresas, cada capa se irá añadiendo anualmente. En el momento en que la empresa es lo suficientemente grande como para ser vendida a Google o salir a Bolsa o lo que sea, es probable que tenga alrededor de 6 capas: los fundadores y 5 capas de trabajadores. Cada capa sucesiva es más grande. Puede haber dos fundadores iniciales, cinco empleados en la capa 2, 25 empleados en la capa 3 y 200 empleados en la capa 4. <strong>Las capas más recientes tuvieron un menor riesgo.</strong></p>
<p>Bien, ahora explico como se utiliza esta información:</p>
<p>Los fundadores deben terminar con un 50% de la compañía, en total. Cada una de las próximas cinco capas debe terminar con un 10% de la empresa, dividida en partes iguales entre todos los miembros de la capa.</p>
<p>Ejemplo:</p>
<ul>
<li>Dos fundadores inician la empresa. Cada uno toma 2,500 acciones de las 5,000 que hay en circulación por lo que cada fundador es propietario de la mitad.</li>
<li>En el año 1 contratan a 4 empleados. Cada uno obtendrá 250 acciones de las 6,000 que habrá en circulación.</li>
<li>Se contratan 20 empleados el segundo año. Cada uno obtendrá 50 acciones. Éstos reciben menos acciones ya que tuvieron menor riesgo que las otras capas, y se dan 50 acciones porque estamos dando a cada capa 1,000 acciones a repartir.</li>
<li>Cuando la compañía tenga 6 capas, se habrán dado 10,000 acciones en total. Cada fundador termina siendo el dueño del 25%. Cada capa de empleados posee el 10% del total de la empresa. Los primeros empleados que tomaron la mayor parte del riesgo tienen la mayoría de acciones.</li>
</ul>
<p>¿Tiene sentido? No tenéis por que seguir esta formula exacta, pero la idea básica es que se configuren capas de antigüedad, donde la franja superior fue la que más riesgo tuvo que asumir y la franja inferior la que menos. Cada capa comparte el mismo número de acciones con lo cual los empleados de capas superiores tendrán más acciones que los de capas inferiores.</p>
<p>Un sistema un poco diferente al uso de capas es basándose en la antigüedad. La capa superior es la de los fundadores, a continuación se reserva una franja entera para los directores que controlan el 10%, por debajo de esta capa está la de los primeros empleados y/o managers, etc. La forma que se escoja para organizar las capas tiene que ser simple, clara, fácil de entender y no susceptible a crear discusiones.</p>
<p>Ahora que tenemos un sistema justo establecido, hay un principio muy importante. <strong>Se debe tener compromiso</strong>. Preferentemente 4 o 5 años. Nadie gana sus acciones hasta que se ha quedado en la empresa durante al menos un año. Un buen programa de compromiso es obtener el 25% de las acciones que tocan el primer año e ir sumando un 2% cada mes. Si no, un cofundador podría irse a las tres semanas y volver 7 años más tarde reclamando que es propietario del 25% de la empresa. Nunca tiene sentido dar equidad sin compromiso. Este es un error muy común y es terrible cuando pasa. Imaginemos esa compañía con 3 cofundadores que han estado trabajando día y noche durante 5 años y de repente descubren que hay un gilipollas que lo dejó al cabo de dos semanas y aún posee un 25% de la empresa por sus dos semanas que estuvo trabajando.</p>
<p>Ahora pasemos a los detalles que complican la situación.</p>
<h3>¿Qué ocurre si se obtiene inversión externa?</h3>
<p>La inversión externa puede llegar de cualquier forma: un business angel, Venture Capital o incluso el padre de alguien. La respuesta es simple: la inversión se divide entre todos.</p>
<p>Usando el mismo ejemplo que el de arriba, dos cofundadores tienen 2,500 acciones cada uno (donde cada uno tiene el 50% de la empresa) y llega un VC y ofrece 1 millón de euros a cambio de 1/3 de la empresa.</p>
<p>1/3 de la empresa son 2,500 acciones. Así que se crean 2,500 acciones y se le dan al VC. Este es propietario de 1/3 de la empresa y cada uno de los cofundadores tiene otro 1/3. Así de simple.</p>
<h3>¿Qué pasa si no todos los cofundadores necesitan tener un salario?</h3>
<p>Con frecuencia, hay algún cofundador que tiene algo de dinero ahorrado y decide no cobrar salario durante un tiempo, mientras otros cofundadores, que necesitan el dinero, deciden obtener un salario. Es tentador darle más acciones al fundador que decidió no tener salario al principio para equilibrar las cosas. El problema es que nunca se podrá resolver cuanta cantidad de acciones se tienen que dar de más. Esto sólo causara conflictos. No resolváis este tipo de problemas con acciones. En cambio, mantened una contabilidad de cuánto se pagó a cada uno de los fundadores y si alguien no está cobrando salario se le da un pagaré. Mas tarde, cuando la empresa tenga dinero, se le paga en efectivo la diferencia. En unos años cuando el dinero empieza a llegar, o incluso después de la primera inversión de capital, se puede pagar lo debido a cada fundador para que todos los cofundadores hayan cobrado lo mismo en la empresa.</p>
<h3>¿Debería tener más acciones ya que la idea fue mía?</h3>
<p>No. Las ideas no tienen prácticamente valor. No son rentables las discusiones que podría causar pagar más acciones a alguien por haber tenido la idea. Si uno de vosotros tuvo la idea pero todos dejáis vuestros trabajos y empezáis a trabajar al mismo tiempo, deberíais tener todos la misma cantidad de acciones. Trabajar para la compañía es lo que da valor, no el hecho de tener una invención loca un día bajo la ducha.</p>
<h3>¿Qué pasa si uno de los fundadores no trabaja a tiempo completo para la empresa?</h3>
<p>Entonces no es un fundador. En mi libro nadie quien no trabaja a tiempo completo no es un fundador. Cualquiera que mantiene su otro trabajo gana un salario o pagarés, pero no acciones. Si trabaja en otra compañía y cuando llega la inversión de VC empieza a trabajar para la empresa a tiempo completo entonces no corrió tanto riesgo y tiene que recibir una cantidad de acciones acorde a la primera capa de empleados.</p>
<h3>¿Qué pasa si alguien trae equipamiento (ordenadores, teléfonos móviles, etc.) o valores (patentes, nombres de dominio, licencias de software, etc.) a la empresa?</h3>
<p>Perfecto. Se le paga en efectivo o pagarés, no en acciones. Calculad el precio justo para ese ordenador que trajo con él o su patente y darle pagarés a hacerse efectivos cuando la empresa vaya bien. Tratar de pagar cosas con acciones en esta primera etapa solo lleva a desequilibrio, discusiones e injusticia.</p>
<h3>¿Cuánto deberían tener los inversores frente a los fundadores y empleados?</h3>
<p>Eso depende de las condiciones del mercado. Siendo realistas, si los inversores acaban teniendo más del 50% de la compania, los fundadores van a sentirse unos mandados y perderán motivación. Recuerda que los buenos inversores no son avariciosos. Si la empresa puede arrancar sin inversores, los cofundadores y empleados acabaran teniendo el 100% de la compañía. Es interesante saber que hay mucha presión en cómo mantener las cosas equilibradas entre inversores y fundadores/trabajadores; una vieja regla de oro es que cuando se sale a Bolsa (cuando se tienen todos los empleados contratados y el dinero que se planeaba) los inversores tendrán el 50% y los fundadores/empleados el otro 50%, pero con las startups de Internet en 2011 los inversores acaban teniendo mucho menos del 50%.</p>
<h2>Conclusión</h2>
<p>No hay una única solución para todas las situaciones, pero cualquier cosa que se pueda hacer para que todo sea simple, transparente, al grano, y ante todo justo, hará que la compañía tenga más números de tirar adelante.</p>
<p><small>Este texto es una traducción al castellano de <a href="http://answers.onstartups.com/questions/6949/forming-a-new-software-startup-how-do-i-allocate-ownership-fairly">Forming a new software startup, how do I allocate ownership fairly?</a> de <a href="http://www.joelonsoftware.com/">Joel Spolsky</a> por <a href="http://xaviesteve.com/">Xavi Esteve</a> bajo licencia <a href="http://creativecommons.org/licenses/by-sa/3.0/deed.es_PE">Creative Commons Reconocimiento Compartir-Igual 3.0</a>. Fotografía por Xavi Esteve bajo la misma licencia.</small></p>
]]></content:encoded>
			<wfw:commentRss>http://xaviesteve.com/2341/como-repartir-las-acciones-de-una-empresa-equitativamente-entre-fundadores-inversores-y-trabajadores/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Improve your WiFi signal in 10 easy steps</title>
		<link>http://xaviesteve.com/2247/improve-wifi-signal/</link>
		<comments>http://xaviesteve.com/2247/improve-wifi-signal/#comments</comments>
		<pubDate>Tue, 31 May 2011 07:56:37 +0000</pubDate>
		<dc:creator>Xavi</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Computers]]></category>
		<category><![CDATA[English]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[connection]]></category>
		<category><![CDATA[list]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[wifi]]></category>
		<category><![CDATA[wireless]]></category>

		<guid isPermaLink="false">http://xaviesteve.com/?p=2247</guid>
		<description><![CDATA[There are so many reasons why a WiFi Internet connection doesn&#8217;t work as expected that it is usually very difficult to fix it and it can be very frustrating. By following these 10 steps you will fix your wireless Internet connection at home with your laptop pr desktop computer. Some of them are obvious things [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-2252" src="http://xaviesteve.com/wp-content/uploads/2011/05/improve-wifi-signal.jpg" alt="" width="600" height="279" /></p>
<p>There are so many reasons why a WiFi Internet connection doesn&#8217;t work as expected that it is usually very difficult to fix it and it can be very frustrating. By following these 10 steps you will fix your wireless Internet connection at home with your laptop pr desktop computer. Some of them are obvious things to check and some of them are pretty effective tricks you may have not heard about, read them all and check the list from top to bottom.</p>
<h3>1. Reset the router</h3>
<p>Reset your router. Then  <strong>full hard reset </strong>your router.</p>
<h3>2. Change the channel</h3>
<p>Choose a network <strong>channel</strong> that is free or at least not too busy. Use <a href="http://www.apple.com/downloads/macosx/networking_security/wifiscanner.html" target="_blank">WiFi Scanner</a> (free, OSX) or <a href="http://www.netstumbler.com/downloads/" target="_blank">NetStumbler</a> (free, Windows) to see which ones are used near your home or around you.</p>
<h2>3. Change the interface</h2>
<p>Change your router&#8217;s Interface Type to <strong>802.11n</strong>. This ensures you have the fastest rate and signal plus avoids many external interferences. Before doing so check that all your devices are compatible (if they are less than 3 years old they&#8217;re good to go). While you are in the router&#8217;s configuration, set it up as agressive, increasing the signal strength and focus on performance rather than savings. If your router can&#8217;t support 802.11n then buy a better router, they are not expensive and it will definitely make the difference.</p>
<h2>4. Clear the path</h2>
<p>Clear the <strong>path</strong> between your computer and the router. Avoiding as many objects as possible. Look carefully for metals, wall corners and mirrors. Remember that moving the router up or down (i.e. from a table to the floor) may be easier than moving a heavy drawer.</p>
<h3>5. Change the password</h3>
<p>Change the <strong>password</strong> of your WiFi network every 3 months and make it <strong>stronger</strong> (password and encryption) to avoid anyone from getting in and sucking your broadband.</p>
<h2>6. Avoid interferences</h2>
<p>A microwave may be causing <strong>interferences</strong> so try moving things around the room. It can also be your neighbour&#8217;s electrical devices so keep moving stuff until it works.</p>
<h3>7. Check the bandwidth usage</h3>
<p>If you are in a shared flat, check that your flatmates don&#8217;t have any P2P programs, online games, video streaming or VoIP software like Skype. If they are using them, ask them to <strong>limit</strong> it to something proportional so everyone has the same share. If it can&#8217;t be limited, ask them to do one thing at a time.</p>
<h3>8. Look for viruses</h3>
<p>Make sure all the computers and devices connected to the network are <strong>100% virus free</strong>. If any device has a virus it may be constantly sending tons of data to the Internet and collapsing your network, even some mobile phones can be stressing it.</p>
<h2>9. Check the cables</h2>
<p>Check that the broadband <strong>cable</strong> from the router to the plug is straight and away from pipes or other electrical wires. If you can&#8217;t avoid these then try not to twist the cable and place it as straight as possible.</p>
<h3>10. Improve your equipment</h3>
<p>Consider one of these small <strong>investments</strong>: getting a better Internet connection, buying a better router or even buying a better antenna for it. Also check out a <a href="http://www.amazon.co.uk/gp/redirect.html?ie=UTF8&amp;location=http%3A%2F%2Fwww.amazon.co.uk%2Fs%3Fie%3DUTF8%26redirect%3Dtrue%26ref_%3Dsr_nr_i_0%26keywords%3Dpowerline%2520ethernet%26qid%3D1306940173%26rh%3Dk%253Apowerline%2520ethernet%252Ci%253Acomputers%23&amp;tag=xavest-21&amp;linkCode=ur2&amp;camp=1634&amp;creative=19450" target="_blank">powerline ethernet adapter</a> which is a cheap system that uses the electric network as an Ethernet cable and works very well. You can get them for £20-$£60, if you want to play online multiplayer games make sure you get at least 200Mbps.</p>
<p>Before doing anything make sure that you know what you are doing. If you don&#8217;t know what something means then search on the Internet for it and learn. If none of the above work then call your Internet provider and explain all the steps you have made so far.</p>
<p><small>Photo by Jerome</small></p>
]]></content:encoded>
			<wfw:commentRss>http://xaviesteve.com/2247/improve-wifi-signal/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

