<?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>Segmentation Fault! &#187; General</title>
	<atom:link href="http://www.segmentationfault.es/category/general/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.segmentationfault.es</link>
	<description>La formulación de un problema es más importante que su solución.</description>
	<lastBuildDate>Tue, 29 Jun 2010 19:45:33 +0000</lastBuildDate>
	<language>es</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Startup online tools: Google Analytics</title>
		<link>http://www.segmentationfault.es/2010/05/startup-online-tools-google-analytics/</link>
		<comments>http://www.segmentationfault.es/2010/05/startup-online-tools-google-analytics/#comments</comments>
		<pubDate>Mon, 10 May 2010 07:32:18 +0000</pubDate>
		<dc:creator>Christopher Vallés</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://www.segmentationfault.es/?p=1708</guid>
		<description><![CDATA[If you are thinking on a web based project and you want to receive and maintain as much traffic as possible Google Analytics will be your fellow traveler.
Google Analytics is a complete suite to analize and extract information about your traffic, your visitors and at the end the performance of your website and contents.]]></description>
			<content:encoded><![CDATA[<p>If you are thinking on a web based project and you want to receive and maintain as much traffic as possible Google Analytics will be your fellow traveler.<br />
<a href="http://analytics.google.com" target="_blank">Google Analytics</a> is a complete suite to analize and extract information about your traffic, your visitors and at the end the performance of your website and contents.</p>
<p>The basic information that GA gives to you is the number of visitors per day, week, month or custom ranges, also you can see the referrers of your page and the keywords they used to find you over google or another search engine.<br />
More complex tasks are for example the funnels, the objectives, etc. For example, imagine that we have a online service website and we want to know the conversion ratio between the traffic that arrives at our website and the people that finally buys our service. In GA we can setup a Goal, this goal at the end is a destination url, time on the site or pageviews per user. So, for our example we will setup a goal for a specific url, that can be our service payment confirmation page. With that goal in place we will have our usual information about how many traffic we have and then a specific information about how many traffic arrives to the confirmation page.</p>
<p>After that to see in a nice way all that information we can use other tool inside GA called funnels. The funnel is a graphic to display that kind of information, imagine that our checkout process have 2 steps plus the confirmation page, with that in mind we can create a funnel to see how many traffic passes for every stage of the checkout.</p>
<p>In the following picture we can see a funnel example, in this e-commerce shop we have 3481 total visits and only 241 do the login on the page, of this 241 users 146 places an order and 119 users complete the order, that means a conversion rate of 0.09%.</p>
<p><a href="http://www.segmentationfault.es/wp-content/2010/05/google_analytics_funnel_visualization_lg.gif"><img class="size-full wp-image-1709 alignnone" title="google_analytics_funnel_visualization_lg" src="http://www.segmentationfault.es/wp-content/2010/05/google_analytics_funnel_visualization_lg.gif" alt="" width="507" height="530" /></a></p>
<p>These are just some ideas and tools availables in GA, so don&#8217;t forget to use this kind of tools in your websites to extract as much information as possible to know how the market reacts upon your products and processes.</p>
<p>To continue reading and learning about this tool you can visit the <a href="http://services.google.com/analytics/tour/index_en-US.html" target="_blank">Google Analytics Tour Page</a> or just go to <a href="http://analytics.google.com" target="_blank">Google Analytics</a> and create an account!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.segmentationfault.es/2010/05/startup-online-tools-google-analytics/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Startup online tools: Google Apps</title>
		<link>http://www.segmentationfault.es/2010/04/startup-online-tools-google-apps/</link>
		<comments>http://www.segmentationfault.es/2010/04/startup-online-tools-google-apps/#comments</comments>
		<pubDate>Tue, 20 Apr 2010 08:43:40 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Startup]]></category>

		<guid isPermaLink="false">http://www.segmentationfault.es/?p=1633</guid>
		<description><![CDATA[One of the most useful apps for Startups is the suite Google Apps. This service provided by Google company allow using custom domain names with several Google products, including: GMail, Calendar, Talk, Docs and Google Sites.]]></description>
			<content:encoded><![CDATA[<p>One of the most useful apps for Startups is the suite Google Apps. This service provided by Google company allow using custom domain names with several Google products, including: GMail, Calendar, Talk, Docs and Google Sites.</p>
<p>Google Apps is a web-based solution, so it has all the advantatges of Cloud Computing applications. You can access to it anywhere and anytime (if you have an Internet connection).</p>
<p style="text-align: center;"><a href="http://www.segmentationfault.es/wp-content/2010/04/cloud_computing1.jpg"><img class="alignnone size-full wp-image-1638" title="Google App Cloud Computing" src="http://www.segmentationfault.es/wp-content/2010/04/cloud_computing1.jpg" alt="" width="469" height="435" /></a></p>
<p>This services provide you 50 times more storage than the industry average with 99.9% uptime reliability guarantee with synchronous replication. Also offer you Mobile email, calendar, IM access and helpful 24/7 customer support.</p>
<p>Standard edition is perfect to newly emerged Startups because it&#8217;s free! But it has some limitations: 50 users maximum, email attachments cannot be larger than 25 MB, limited to sendig email to 500 external recipients per day per email account and less uptime guaranteed. 24/7 support is also offered only for Premium accounts.</p>
<p>Finally, we let you a quick tour video of Google Apps to encourage you to test this amazing suite for your company.</p>
<p style="text-align: center;"><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="480" height="385" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/kJT3pagjd8s&amp;hl=es_ES&amp;fs=1&amp;color1=0x2b405b&amp;color2=0x6b8ab6" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="480" height="385" src="http://www.youtube.com/v/kJT3pagjd8s&amp;hl=es_ES&amp;fs=1&amp;color1=0x2b405b&amp;color2=0x6b8ab6" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.segmentationfault.es/2010/04/startup-online-tools-google-apps/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Message to our followers!</title>
		<link>http://www.segmentationfault.es/2010/04/message-to-followers/</link>
		<comments>http://www.segmentationfault.es/2010/04/message-to-followers/#comments</comments>
		<pubDate>Mon, 19 Apr 2010 17:26:58 +0000</pubDate>
		<dc:creator>Gabi García</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://www.segmentationfault.es/?p=1630</guid>
		<description><![CDATA[Hi to our followers! First of all, we apologies for the unexpected changes done in the SegmentationFault Blog. As you may notice, we have transform our old blog into a corporative website, with a new appearence, and we have decided to write exclusively in English from now on. One year ago we started this blog [...]]]></description>
			<content:encoded><![CDATA[<p>Hi to our followers!</p>
<p>First of all, we apologies for the unexpected changes done in the SegmentationFault Blog. As you may notice, we have transform our old blog into a corporative website, with a new appearence, and we have decided to write exclusively in English from now on.</p>
<p>One year ago we started this blog with the aim of shareing with others a bit of knowledge that we learn everyday. Now, SegmentationFault is becoming to be a more serious project, specially since we are participating in <a href="http://blog.tetuanvalley.com/" target="_blank">Tetuan Valley</a> Startup Spring School 2010.</p>
<p>We hope to continue having your support at this time, with your feedback on the blog or following us on Twitter (@sfteam).</p>
<p>Best regards for all of you,</p>
<p>Christopher, Noemí and Gabriel<br />
SegmentationFault team</p>
]]></content:encoded>
			<wfw:commentRss>http://www.segmentationfault.es/2010/04/message-to-followers/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Implement decisions based on truth tables</title>
		<link>http://www.segmentationfault.es/2010/03/decisions-based-on-truth-tables/</link>
		<comments>http://www.segmentationfault.es/2010/03/decisions-based-on-truth-tables/#comments</comments>
		<pubDate>Sat, 06 Mar 2010 14:56:41 +0000</pubDate>
		<dc:creator>Christopher Vallés</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Truth Tables]]></category>

		<guid isPermaLink="false">http://www.segmentationfault.es/?p=1432</guid>
		<description><![CDATA[The other day in my work I find myself in a situation that I had to implement some decisions based on a truth table. Thinking about how it's the best approach to solve the problem I found the following solutions. Which do you think it's the best approach?]]></description>
			<content:encoded><![CDATA[<p>The other day in my work I find myself in a situation that I had to implement some decisions based on a truth table. After simplify the table I finish with a 2&#215;4 table like the below:</p>
<pre style="text-align: center;">+----+----+--------+
| CS | LF | Locale |
+----+----+--------+
| 0  | 0  | DL_DC  |
| 0  | 1  | LF_DC  |
| 1  | 0  | DL_CS  |
| 1  | 1  | LF_CS  |
+----+----+--------+
</pre>
<p><strong>Lengend</strong></p>
<ul>
<li><strong>CS</strong> = Country Supported in the System</li>
<li><strong>LF</strong> = Language Forced in the URL</li>
<li><strong>DL_DC</strong> = Locale for the default country with the default language configured on the DB</li>
<li><strong>LF_DC</strong> = Locale for the default country but with the language forced in the URL</li>
<li><strong>DL_CS</strong> = Locale for the country detected with the default language configured on the DB</li>
<li><strong>LF_CS</strong> = Locale for the country detected with the language forced in the URL</li>
</ul>
<p>Thinking about how it&#8217;s the best approach to solve the problem I found the following solutions.</p>
<p><script src='http://pastie.org/857090.js'></script></p>
<p>Which do you think it&#8217;s the best approach?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.segmentationfault.es/2010/03/decisions-based-on-truth-tables/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mejorando la búsqueda usando la Web 2.0</title>
		<link>http://www.segmentationfault.es/2010/02/mejorando-busqueda-web/</link>
		<comments>http://www.segmentationfault.es/2010/02/mejorando-busqueda-web/#comments</comments>
		<pubDate>Sat, 06 Feb 2010 10:35:50 +0000</pubDate>
		<dc:creator>Gabi García</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[recuperación de información]]></category>
		<category><![CDATA[web 2.0]]></category>

		<guid isPermaLink="false">http://www.segmentationfault.es/?p=1352</guid>
		<description><![CDATA[Hace unos días asistí a una conferencia de Ricardo Baeza titulada "Mejorando la búsqueda usando la Web 2.0". A pesar de que en el Blog acostumbramos a postear entradas de carácter más práctico que divulgativo, he decidido postear un pequeño ensayo sobre dicha conferencia ya que me resultó interesante y motivo de alguna que otra reflexión.]]></description>
			<content:encoded><![CDATA[<p>En la actualidad, Internet nos ofrece una cantidad ingente de datos de todo tipo (texto, imágenes, vídeos…) y sobre cualquier temática posible. De hecho, el volumen de datos actual ha provocado que una de las grandes problemáticas de la Web sea la necesidad de buscar y filtrar toda esa información para que resulte útil.</p>
<p>Para ello, debemos discernir, en primera instancia, entre los datos que conforman el contenido propiamente dicho (normalmente documentos jerarquizados que siguen una estructura) y los llamados metadatos. ¿Y qué son los metadatos? Entendemos por metadatos, los datos que contienen información sobre los propios datos (etiquetas, enlaces, <em>reviews</em>, <em>pageviews</em>, etc.).</p>
<p>Otro aspecto muy a tener en cuenta en el proceso de clasificación de los datos es la privacidad de éstos. Los buscadores utilizan la información para devolver resultados cada vez más adecuados a los usuarios, y parte de ella (como las <em>querys</em> o los <em>clicks</em>) pueden revelar algunos datos personales.</p>
<p>Llegados a este punto se nos formulan algunas preguntas nada despreciables: ¿Cómo podemos utilizar estos datos? ¿Con qué criterio los organizamos? ¿Cuán fiables son los datos que poseemos?</p>
<p>En lo que respecta a la fiabilidad de los datos, podemos hacer una reflexión desde el punto de vista estadístico. Teniendo en cuenta que el conjunto de búsquedas/visitas es muy elevado, y curiosamente la mayoría de ellas son sobre un conjunto de temas comunes (la llamada “<em>long tale</em>” en la representación gráfica), la distribución tenderá a ser una distribución normal o <em>gaussiana</em>. La media de todos los datos será, por lo tanto, un resultado sorprendentemente bueno.</p>
<p>Así, podemos aprovechar que el conocimiento colectivo supera, en la mayor parte de los casos, al conocimiento individual. Toda esta teoría está detallada en profundidad en el libro <em>The Wisdom of Crowds: Why the Many Are Smarter Than the Few and How Collective Wisdom Shapes Business, Economies, Societies and Nations </em>de <em>James Surowiecki</em>.</p>
<p>Aún disponiendo de datos fiables, debemos establecer una organización y clasificación para que resulten realmente útiles al usuario final. Esto requiere determinar unos criterios sobre el conjunto de información (texto, enlaces, etiquetas, <em>queries</em>, etc.) para medir la calidad de cada recurso.</p>
<p>La clasificación por excelencia de la Web 1.0 (<em>PageRank</em>) basa la calidad de los documentos en función de los enlaces que “apuntan” a cada uno de ellos. Este ingenioso modelo funcionaba a la perfección cuando los únicos usuarios que realizaban los enlaces en la red de redes eran los administradores. Hoy por hoy cualquiera tiene la posibilidad de crear enlaces y este sistema para clasificar los contenidos está perdiendo fuerza en la Web 2.0.</p>
<p>Un modelo alternativo que tiene un buen desempeño en la actualidad es el etiquetado, en inglés <em>tagging</em>, de los documentos. El usuario que añade una información en Internet se encarga también de definir un conjunto de etiquetas o palabras claves que ayuden a clasificar dicha información.</p>
<p>El etiquetado tiene aplicaciones muy diversas e interesantes. Una de ellas consiste en la selección de contenido teniendo en cuenta la diversidad de términos (<em>topical diversity</em>). Un ejemplo claro es la consulta “Jaguar”, que puede hacer referencia al animal o a la marca de automóviles.</p>
<p>También son útiles los <em>tags</em> para segregar y descartar algunas imágenes en <em>querys</em> determinadas. Por ejemplo, si un usuario busca “Honda Civic” probablemente no querrá encontrar como resultado un conjunto de imágenes del coche con el mismo ángulo. Un resultado óptimo devolvería imágenes desde todos los ángulos posibles. Es lo que se designa con el término <em>visual diversity</em>.</p>
<p>El <em>tagging</em> en imágenes tiene más aplicaciones útiles, como la navegación a partir de las etiquetas (como en <em>Yahoo! TagExplorer</em>) o las anotaciones visuales (<em>use visual annotations</em>), en las que una etiqueta es representada mediante un rectángulo que encuadra un objeto particular. Sistemas de este tipo se utilizan actualmente en portales como <em>Flickr</em> o <em>Facebook</em>.</p>
<p>Pese a todo, el gran inconveniente de este sistema es la necesidad de que el usuario defina los <em>tags</em>, con lo que ello respecta (errores ortográficos, errores tipográficos, subjetividad, heterogeneidad…). Inmediatamente se nos ocurre la idea de implementar un sistema para sugerir etiquetas, pero la experiencia nos dice que el usuario es propenso a hacer uso de la “ley del mínimo esfuerzo”. Es decir, que en la mayoría de los casos el usuario se limitaría a introducir una única etiqueta y seleccionar el resto de ellas del conjunto propuesto por el algoritmo de sugerencia.</p>
<p>Otro modelo que cabe destacar es el basado en la correlación entre los recursos. El principio de funcionamiento de este método es buscar el conjunto de elementos relacionados con la consulta introducida por el usuario (otros nombres, lugares, eventos, imágenes, etc.). Estas interrelaciones entre las entidades se suelen representar como grafos, y se aplican los algoritmos y técnicas de teoría de grafos para su implementación.</p>
<p>Relacionado con lo anterior está el uso de las consultas como etiquetas implícitas (<em>querys as implicit tags</em>). Esta técnica aprovecha las decisiones que toma el usuario para detectar las relaciones entre las búsquedas y etiquetar los recursos. Un ejemplo podría ser dos usuarios que realizan las consultas “Roma” e “Imperio romano” respectivamente y, no obstante, hacen <em>click</em> en el mismo enlace de todos los presentes en los resultados. El sistema detectaría estos casos y haría patente esa relación mediante nuevas transiciones en el <em>click graph</em>.</p>
<p>Un sistema complementario para mejorar las búsquedas en la Web 2.0 es el uso del conocimiento implícito (<em>implicit knowledge</em>). La mejor manera de entender el funcionamiento de esta técnica es con un caso práctico. Supongamos que un usuario introduce la <em>query</em> “tfcu”. Usando el conocimiento implícito debe obtener todos los documentos relacionados con la <em>teachers federal credit union,</em> dado que tfcu es el acrónimo de ésta. Del mismo modo, el sistema debe guardar una relación entre CEE, UE, Comunidad Económica Europea y Unión Europea.</p>
<p>El objetivo principal de la recuperación de información (<em>information retrieval</em>) es devolver el conjunto óptimo de recursos relacionados con lo que el usuario está buscando, en el menor tiempo posible. Todos los modelos mencionados, y muchos otros que se han quedado en el tintero, sirven para acercarse más al objetivo, y el uso combinado de todos ellos produce mejores resultados.</p>
<p>La Web crece en volumen de información y evoluciona a la par que los usuarios requieren disponer de la información más relevante de la forma más rápida posible. ¿Pero, en qué dirección evoluciona la Web? La tendencia marca el progresivo adiós a las búsquedas, dando paso a portales que ofrecerán al usuario justo aquello que desean obtener sin necesidad de que éste lo pida. Dicho así puede sonar bastante utópico. Sin embargo, ¿quién imaginaba hace 20 años que se podría obtener todo tipo de información escribiendo algunas palabras en una caja de texto? ¿Llegará un día en el que abriendo nuestro navegar obtendremos la información que necesitamos sin hacer nada para llegar a ella? Sólo el futuro de la Web tiene la respuesta.</p>
<p><span style="text-decoration: underline;"><strong>Fuente</strong></span></p>
<p>Ricardo Baeza &#8211; http://www.dcc.uchile.cl/~rbaeza/spanish.html</p>
]]></content:encoded>
			<wfw:commentRss>http://www.segmentationfault.es/2010/02/mejorando-busqueda-web/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Debugging PHP en MacOS X</title>
		<link>http://www.segmentationfault.es/2010/01/debugging-php-macos/</link>
		<comments>http://www.segmentationfault.es/2010/01/debugging-php-macos/#comments</comments>
		<pubDate>Mon, 04 Jan 2010 12:21:21 +0000</pubDate>
		<dc:creator>Gabi García</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Programación]]></category>
		<category><![CDATA[debug]]></category>
		<category><![CDATA[MacGDBp]]></category>
		<category><![CDATA[MAMP]]></category>
		<category><![CDATA[XDebug]]></category>

		<guid isPermaLink="false">http://www.segmentationfault.es/?p=1334</guid>
		<description><![CDATA[En este breve post os explico los pasos que he seguido para configurar XDebug para PHP 5.2 usando MAMP Pro bajo MacOS X Snow Leopard. Espero que os resulte útil a todos los que utilizáis el lenguaje de programación PHP. ¡Se acabaron los quebraderos de cabeza por no poder debuggar vuestro código PHP! ]]></description>
			<content:encoded><![CDATA[<p>Hace unos días me decidí a poner a punto de nuevo mi MacBook y una de las cosas que he tenido que hacer es volver a configurar el debugger para PHP, concretamente XDebug. Me ha llevado mi tiempo y algunas búsquedas en Google así que he decidido compartir los pasos con todos vosotros. ¡Dispongámonos a ello!</p>
<p>Antes de nada debo decir que estos son los pasos que he seguido para instalar XDebug para PHP 5.2 usando MAMP Pro 1.8.4 bajo MacOS X Snow Leopard. Es posible que, si tenéis una configuración distinta, los pasos puedan variar un poco.</p>
<p>En primer lugar debemos descargarnos los binarios de XDebug en esta URL: <a href="http://aspn.activestate.com/ASPN/Downloads/Komodo/RemoteDebugging" target="_blank">http://aspn.activestate.com/ASPN/Downloads/Komodo/RemoteDebugging</a>.</p>
<p>Descomprimimos el archivo .tgz que nos acabamos de descargar y veremos que hay una estructura de directorios que representa las diferentes versiones de PHP. Yo actualmente estoy utilizando PHP 5.2 (la que en estos momentos incluye por defecto MAMP y MAMP Pro) así que copiaré el fichero <strong>xdebug.so</strong> que hay dentro de esta carpeta.</p>
<p>Este archivo<strong> xdebug.so</strong> deberemos copiarlo en el directorio de extensiones de PHP, en MAMP es <em>/Applications/MAMP/bin/php5/lib/php/extensions/no-debug-non-zts-20050922/</em>.</p>
<p>Ahora deberemos añadir algunas líneas a nuestro <em>php.ini</em> para activar y configurar la extensión. La localización habitual del fichero <em>php.ini </em>en MAMP es<em> /Applications/MAMP/conf/php5/php.ini</em> pero (<strong>¡OJO!</strong>) si utilizáis MAMP Pro las modificaciones en este fichero serán en vano. Esto es debido a que MAMP Pro carga su propia copia del php.ini que se localiza en <em>/Applications/MAMP PRO x.x.x/MAMP PRO.app/Contents/Resources/php5.ini</em> (accediendo haciendo clic con botón derecho sobre la app de MAMP Pro y &#8220;<em>Mostrar contenido del paquete</em>&#8220;).</p>
<p>Una vez localizado el php.ini adecuado, debemos añadir la siguiente línea:</p>
<pre class="brush: bash; toolbar: true;">
[xdebug]
zend_extension=&quot;/Applications/MAMP/bin/php5/lib/php/extensions/no-debug-non-zts-20060613/xdebug.so&quot;
</pre>
<p>Si utilizáis el editor TextMate para programar, añadid también esta línea a continuación para que el debugger muestre los errores como enlaces a TextMate en la línea correcta:</p>
<pre class="brush: bash; toolbar: true;">
xdebug.file_link_format = &quot;txmt://open?url=file://%f&amp;line=%l&quot;
</pre>
<p>Si además váis a utilizar <a href="http://www.bluestatic.org/software/macgdbp/" target="_blank">MacGDBp</a> para <em>debuggar</em> y queréis que se ejecute el <em>debugger</em> por defecto (si lo tenéis abierto) podéis añadir también (sino deberéis añadir <code>?XDEBUG_SESSION_START=macgdbp</code> a vuestra URL cada vez para iniciar el <em>debugger</em>):</p>
<pre class="brush: bash; toolbar: true;">
xdebug.remote_enable = On
xdebug.remote_autostart = 1
</pre>
<p>Para que funcione todo correctamente posiblemente deberemos desactivar el <em>Zend Optimizer</em>, que viene activado por defecto en MAMP.  Para ello, comentamos las siguientes líneas:</p>
<pre class="brush: bash; toolbar: true;">
;zend_optimizer.optimization_level=15
;zend_extension_manager.optimizer=/Applications/MAMP/bin/php5/zend/lib/Optimizer-3.3.3
;zend_optimizer.version=3.3.3
</pre>
<p>Ahora debéis reiniciar el servidor Apache y ya podréis comenzar a <em>debuggar</em> vuestras aplicaciones en PHP. Si ha funcionado ya os daréis cuenta de que los errores se muestran en una tabla muy colorida y hay una mejora muy sustancial a la hora de mostrar los resultados de var_dump.</p>
<p>Espero que os sea de utilidad y si tenéis problemas acudid a los comentarios para intentar resolverlos entre todos. ¡Salu2!</p>
<p><span style="text-decoration: underline;"><strong>Fuentes</strong></span></p>
<p>debuggable.com &#8211; <a href="http://debuggable.com/posts/setting-up-xdebug-on-mac-os-x-or-win32-linux:480f4dd6-0240-4a90-8fa1-4e41cbdd56cb" target="_blank">http://debuggable.com/posts/setting-up-xdebug-on-mac-os-x-or-win32-linux:480f4dd6-0240-4a90-8fa1-4e41cbdd56cb</a></p>
<p>Techno Sophos &#8211; <a href="http://technosophos.com/content/debugging-your-php-code-xdebug-mamp-textmate-and-macgdbp-support" target="_blank">http://technosophos.com/content/debugging-your-php-code-xdebug-mamp-textmate-and-macgdbp-support</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.segmentationfault.es/2010/01/debugging-php-macos/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>iPod nano: novedades</title>
		<link>http://www.segmentationfault.es/2009/09/ipod-nano-novedades/</link>
		<comments>http://www.segmentationfault.es/2009/09/ipod-nano-novedades/#comments</comments>
		<pubDate>Thu, 24 Sep 2009 21:33:25 +0000</pubDate>
		<dc:creator>Noemí Losada</dc:creator>
				<category><![CDATA[Curiosidades]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[iPod]]></category>

		<guid isPermaLink="false">http://www.segmentationfault.es/?p=1157</guid>
		<description><![CDATA[Ya está en el mercado el nuevo iPod nano. Este reproductor trae consigo muchas novedades que no pasarán desapercibidas entre sus seguidores.

La primera característica más notable es que puede grabar con una cámara integrada VGA de 640 por 480 píxeles además de 15 efectos en tiempo real como rayos X, seguridad ciborg o caleidoscopio entre otros. A todo esto, y no podía ser menos, incluye un microfono para grabar sonido a la vez que vídeo. ]]></description>
			<content:encoded><![CDATA[<p>Ya está en el mercado el nuevo iPod nano. Este reproductor trae consigo muchas novedades que no pasarán desapercibidas entre sus seguidores.</p>
<p>La primera característica más notable es que puede grabar con una cámara integrada VGA de 640 por 480 píxeles además de 15 efectos en tiempo real como rayos X, seguridad ciborg o caleidoscopio entre otros. A todo esto, y no podía ser menos, incluye un microfono para grabar sonido a la vez que vídeo. Con este micrófono también se incluye una aplicación para poder grabar notas de voz.</p>
<p>Estéticamente sus acabados son de aluminio anodizado que podemos obtener en nueve tonos eléctricos y una pantalla de 2,2 pulgadas.</p>
<p>Y lo que más nos interesa es su funcionamiento.</p>
<p>Radio! Algo que mucha gente habrá echado de menos en otros iPods y es que además de poder disfrutar de ella podremos parar su reproducción en directo evitándonos perder cualquier sintonía que estemos escuchando.</p>
<p><div id="attachment_1162" class="wp-caption aligncenter" style="width: 310px"><a title="iPod nano - Imagen extraída de © 2009 Apple Inc. Todos los derechos reservados. " href="http://www.segmentationfault.es/wp-content/2009/09/image2_20090909.jpg"><img class="size-medium wp-image-1162" title="iPod nano" src="http://www.segmentationfault.es/wp-content/2009/09/image2_20090909-300x142.jpg" alt="iPod nano" width="300" height="142" /></a><p class="wp-caption-text">Imagen extraída de © 2009 Apple Inc. Todos los derechos reservados. </p></div></p>
<p>Y para hacernos más amena la práctica de deporte, tanto si adquieres tu iPod nano junto a las zapatillas Nike+ o no, podrás disfrutar de un podómetro.</p>
<p>El podómetro funciona gracias al acelerómetro integrado que contabiliza tus pasos y calcula las calorías quemadas. También registra tu carrera dándote todos los datos de tu ritmo, tiempo o distancia recorrida.</p>
<p>Y la última novedad es la mezcla Genius que explora tu biblioteca y encuentra combinaciones de canciones similares, luego esta lista puedes guardarla o actualizarla. Además activando la función agitación puedes cambiar de canción aleatoriamente.</p>
<p>De momento podemos adquirirlo desde la web de <a href="http://www.apple.com/es/" target="_blank">Apple</a> donde nos ofrece la posibilidad de grabar el dorso de nuestro iPod gratuitamente con la inscripción que deseemos.</p>
<p>Parece que Apple viene pisando fuerte y aquí en Segmentation Fautl! seguiremos al tanto de todas sus novedades.</p>
<p style="text-align: left;">
]]></content:encoded>
			<wfw:commentRss>http://www.segmentationfault.es/2009/09/ipod-nano-novedades/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Crear listas ordenables con Prototype y Scriptaculous</title>
		<link>http://www.segmentationfault.es/2009/08/listas-ordenadas-scriptaculous/</link>
		<comments>http://www.segmentationfault.es/2009/08/listas-ordenadas-scriptaculous/#comments</comments>
		<pubDate>Wed, 19 Aug 2009 20:21:03 +0000</pubDate>
		<dc:creator>Noemí Losada</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Programación]]></category>
		<category><![CDATA[Prototype]]></category>
		<category><![CDATA[Trucos]]></category>
		<category><![CDATA[efectos visuales]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[lorem ipsum]]></category>
		<category><![CDATA[prototype]]></category>
		<category><![CDATA[script.aculo.us]]></category>

		<guid isPermaLink="false">http://www.segmentationfault.es/?p=1085</guid>
		<description><![CDATA[Scriptaculous es una librería que extiende a Prototype proporcionándonos la capacidad de crear efectos visuales e incluso animaciones a partir de unas funciones muy sencillas. Para poder implementar listas ordenadas necesitamos usar una de las funciones de Scriptaculous que convierte una lista convencional en una lista ordenable en tiempo real.]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.prototypejs.org/" target="_blank">Prototype</a> es un <a href="http://es.wikipedia.org/wiki/Framework" target="_blank">framework</a> de javascript que pretende facilitar el desarrollo de aplicaciones web dinámicas. Prototype extiende javascript y nos ofrece funcionalidades que serían complejas de desarrollar con el clásico javascript.</p>
<p><a href="http://script.aculo.us/" target="_blank">Scriptaculous</a> es una librería que extiende a Prototype proporcionándonos la capacidad de crear efectos visuales e incluso animaciones a partir de unas funciones muy sencillas. Para poder implementar listas ordenadas necesitamos usar una de las funciones de Scriptaculous que convierte una lista convencional en una lista ordenable en tiempo real.</p>
<p>Para crear la lista ordenada nos basaremos en  el ejemplo que podemos encontrar en la <a href="http://wiki.github.com/madrobby/scriptaculous/sortable-lists-demo" target="_blank">wiki de scriptaculous</a>.</p>
<p>En primer lugar crearemos un documento html en el que añadiremos nuestra lista:</p>
<pre class="brush: xml;">

&lt;ul id=&quot;lista&quot;&gt;
  &lt;li style=&quot;position:relative;&quot;&gt;Lorem&lt;/li&gt;
  &lt;li style=&quot;position:relative;&quot;&gt;ipsum&lt;/li&gt;
  &lt;li style=&quot;position:relative;&quot;&gt;dolor&lt;/li&gt;
  &lt;li style=&quot;position:relative;&quot;&gt;sit&lt;/li&gt;
  &lt;li style=&quot;position:relative;&quot;&gt;amet&lt;/li&gt;
  &lt;li style=&quot;position:relative;&quot;&gt;consectetur&lt;/li&gt;
  &lt;li style=&quot;position:relative;&quot;&gt;adipisci&lt;/li&gt;
  &lt;li style=&quot;position:relative;&quot;&gt;velit&lt;/li&gt;
&lt;/ul&gt;
</pre>
<p>Como veis hemos asignado una id al elemento <em>ul</em><strong> </strong>llamado &#8220;lista&#8221; que después utilizaremos para decirle a Scriptaculous que lista debe convertir en ordenable. Por otra parte también hemos añadido <em>position:relative;</em> como estilo de cada ítem de la lista para que al convertirse en ordenable se puedan mover.</p>
<p>Para poder hacer uso de Prototype y Scriptaculous tenemos dos maneras de incluir las librerías, la primera de ellas es descargárnoslas y llamarlas desde nuestro html y la segunda manera es incluirlas directamente desde la web oficial (cabe destacar que google tiene una versión cacheada de estas librerías y podemos acceder a ellas desde el apartado API&#8217;S).</p>
<p>En nuestro código optamos por incluírlas directamente, para ello escribiremos el siguiente fragmento html entre las etiquetas <em>head</em> (aunque recientemente ha aparecido una <em>Best Practice </em>que indica que para cargar la página más rápidamente hay que llamar a javascript al final de la página justo antes del cierre del <em>body</em>) :</p>
<pre class="brush: xml;">

&lt;script src=&quot;http://script.aculo.us/prototype.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
&lt;script src=&quot;http://script.aculo.us/scriptaculous.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
</pre>
<p>Por último debemos decirle a Scriptaculous que lista debe convertir, para ello utilizaremos la siguiente instrucción:</p>
<pre class="brush: xml;">

&lt;script language=&quot;javascript&quot;&gt;
  Sortable.create(&quot;lista&quot;);
&lt;/script&gt;
</pre>
<p>Con la línea &#8220;Sortable.create(&#8220;lista&#8221;);&#8221; convertimos nuestra lista convencional en una lista ordenable mediante <a href="http://es.wikipedia.org/wiki/Drag_%27n_drop" target="_blank">Drag&amp;Drop</a> que esta muy de moda en la web 2.0. Si os fijáis en la llamada a la función create pasamos como primer parámetro el id de la lista que queremos convertir, esta función tiene otro parámetros que podemos descubrir en la <a href="http://wiki.github.com/madrobby/scriptaculous/sortable-create" target="_blank">página de la wiki referente a esta función</a>, entre otras opciones podemos especificar que elementos son los que se van a mover por la lista (como por ejemplo <em>tr</em> en el caso de querer una tabla con sus filas ordenables) e incluso podemos especificar un <em>handler</em> (un elemento que va a actuar como el punto desde el que arrastrar el elemento).</p>
<p>Si os interesa saber más sobre los efectos que puede realizar esta librería sólo es cuestión de investigar en la <a href="http://wiki.github.com/madrobby/scriptaculous/sortable-lists-demo" target="_blank">wiki de scriptaculous</a> dónde tenéis otra manera de ordenar listas como por ejemplo escoger que parte del ítem es la que queréis mover.</p>
<p>Aquí os dejo una pequeña demo de nuestra lista:</p>
<ul id="lista">
<li style="position:relative;">Lorem</li>
<li style="position:relative;">ipsum</li>
<li style="position:relative;">dolor</li>
<li style="position:relative;">sit</li>
<li style="position:relative;">amet</li>
<li style="position:relative;">consectetur</li>
<li style="position:relative;">adipisci</li>
<li style="position:relative;">velit</li>
</ul>
<p><script>// < ![CDATA[
  Sortable.create("lista");
// ]]&gt;</script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.segmentationfault.es/2009/08/listas-ordenadas-scriptaculous/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>getCartoon(8,2009);</title>
		<link>http://www.segmentationfault.es/2009/08/getcartoon82009/</link>
		<comments>http://www.segmentationfault.es/2009/08/getcartoon82009/#comments</comments>
		<pubDate>Sat, 15 Aug 2009 19:26:57 +0000</pubDate>
		<dc:creator>shinigami</dc:creator>
				<category><![CDATA[Curiosidades]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Viñeta]]></category>
		<category><![CDATA[humor]]></category>

		<guid isPermaLink="false">http://www.segmentationfault.es/?p=1066</guid>
		<description><![CDATA[Aquí os dejo una nueva viñeta para amenizar este caluroso verano. Espero que os guste!]]></description>
			<content:encoded><![CDATA[<p>Aquí os dejo una nueva viñeta para amenizar este caluroso verano. Espero que os guste!</p>
<p style="text-align: center;">
<p><div id="attachment_1067" class="wp-caption aligncenter" style="width: 500px"><a href="http://www.segmentationfault.es/wp-content/2009/08/2009-07-23_231753.png"><img class="size-full wp-image-1067" title="2009-07-23_231753" src="http://www.segmentationfault.es/wp-content/2009/08/2009-07-23_231753.png" alt="Clica para ampliar" width="490" height="211" /></a><p class="wp-caption-text">Clica para ampliar</p></div></p>
]]></content:encoded>
			<wfw:commentRss>http://www.segmentationfault.es/2009/08/getcartoon82009/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Galerías de imágenes: vida en tu web</title>
		<link>http://www.segmentationfault.es/2009/05/galerias-imagenes/</link>
		<comments>http://www.segmentationfault.es/2009/05/galerias-imagenes/#comments</comments>
		<pubDate>Sat, 09 May 2009 08:00:37 +0000</pubDate>
		<dc:creator>Noemí Losada</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[complementos web]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[galerías]]></category>
		<category><![CDATA[imagen]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://www.segmentationfault.es/?p=757</guid>
		<description><![CDATA[En este post os mostramos unas cuantas galerías de imágenes que nos pueden ser de utilidad en un momento dado para incluirlas en nuestra web. Son sencillas de usar y en sus respectivas webs de origen vienen con una explicación paso a paso como ayuda para su implementación.]]></description>
			<content:encoded><![CDATA[<p>En este post os mostramos unas cuantas galerías de imágenes que nos pueden ser de utilidad en un momento dado para incluirlas en nuestra web. Son sencillas de usar y en sus respectivas webs de origen vienen con una explicación paso a paso como ayuda para su implementación.</p>
<p>En primer lugar comenzamos con la web de <a href="http://www.phatfusion.net/" target="_blank">Phatfusion</a>, dónde utilizan lenguajes como Flash y Javascript, en la que podemos destacar:</p>
<p><span style="text-decoration: underline;"><strong>Lightbox</strong></span></p>
<p>Crea una tenue oscuridad en todo el fondo excepto la imagen, que se abre a modo pop-up, para provocar un efecto de luminosidad en ella, después podemos pasar a la imagen siguiente o anterior con unos botones de control además de contener una pequeña descripción de la imagen.</p>
<p><div id="attachment_794" class="wp-caption aligncenter" style="width: 250px"><a rel="attachment wp-att-794" href="http://www.segmentationfault.es/wp-content/2009/05/ligthbox.png"><img class="size-full wp-image-794" style="margin-top: 10px; margin-bottom: 10px;" title="Ligthbox" src="http://www.segmentationfault.es/wp-content/2009/05/ligthbox.png" alt="Ligthbox" width="240" height="160" /></a><p class="wp-caption-text">Galería de imágen Lightbox</p></div></p>
<p>Descarga Lightbox desde este enlace <a href="http://www.phatfusion.net/lightbox/lightbox.zip" target="_blank">http://www.phatfusion.net/lightbox/lightbox.zip</a></p>
<p><span style="text-decoration: underline;"><strong>Multibox</strong></span></p>
<p>Manteniendo el mismo efecto que Lightbox pero añadiendo que además de imágenes también visualiza flash, vídeo y mp3.</p>
<p style="text-align: center;">
<p>Descarga Multibox desde este enlace <a href="http://www.phatfusion.net/multibox/multibox.zip" target="_blank">http://www.phatfusion.net/multibox/multibox.zip</a></p>
<p><span style="text-decoration: underline;"><strong>Slideshow</strong></span></p>
<p>Esta es más simple pero añade una transición con fade, que podemos parar, además de poder escoger la imagen que deseemos ver.</p>
<p style="text-align: center;">
<p><div id="attachment_816" class="wp-caption aligncenter" style="width: 320px"><a rel="attachment wp-att-816" href="http://www.segmentationfault.es/wp-content/2009/05/slideshow.png"><img class="size-full wp-image-816" title="Slideshow" src="http://www.segmentationfault.es/wp-content/2009/05/slideshow.png" alt="Galería de imágenes Slideshow" width="310" height="318" /></a><p class="wp-caption-text">Galería de imágenes Slideshow</p></div></p>
<p>Descarga Slideshow desde este enlace <a href="http://www.phatfusion.net/slideshow/slideshow.zip" target="_blank">http://www.phatfusion.net/slideshow/slideshow.zip</a></p>
<p>Otra web que nos ofrece más galerías es <a href="http://www.airtightinteractive.com/viewers/" target="_blank">AirtightInteractive</a> hechas con flash de la cual destacamos:</p>
<p><span style="text-decoration: underline;"><strong>Simpleviewer</strong></span></p>
<p>Es una galería sencilla pero con un toque muy elegante. Puedes ver una demo desde <a href="http://www.airtightinteractive.com/photos/" target="_blank">aquí</a>.</p>
<p>Descarga Simpleviewer desde este enlace <a href="http://www.airtightinteractive.com/simpleviewer/simpleviewer.zip" target="_blank">http://www.airtightinteractive.com/simpleviewer/simpleviewer.zip</a></p>
<p><span style="text-decoration: underline;"><strong>Autoviewer</strong></span></p>
<p>Podemos poner una descripción de cada foto y pasarlas mediante los botones de control o bien tocando la parte que sobresale de cada imagen de la derecha o de la izquierda. Podéis ver una demo desde <a href="http://www.airtightinteractive.com/projects/autoviewer/app/" target="_blank">aquí</a>.</p>
<p style="text-align: center;">
<p><div id="attachment_833" class="wp-caption aligncenter" style="width: 498px"><a rel="attachment wp-att-833" href="http://www.segmentationfault.es/wp-content/2009/05/autoviewer.png"><img class="size-full wp-image-833" title="Autoviewer" src="http://www.segmentationfault.es/wp-content/2009/05/autoviewer.png" alt="Galería de imágenes Autoviewer" width="488" height="243" /></a><p class="wp-caption-text">Galería de imágenes Autoviewer</p></div></p>
<p>Descarga Autoviewer desde este enlace <a href="http://www.airtightinteractive.com/projects/autoviewer/autoviewer.zip" target="_blank">http://www.airtightinteractive.com/projects/autoviewer/autoviewer.zip</a></p>
<p><span style="text-decoration: underline;"><strong>Postcardviewer</strong></span></p>
<p>Esta galeria muestra todas las imagenes en thumbnails sobre un fondo negro y al clicar permite ampliar la imagen escogida.</p>
<p>Probad la demo desde <a href="http://www.airtightinteractive.com/projects/postcardviewer/app/" target="_blank">aquí</a> y os dejo el enlace de descarga <a href="http://www.airtightinteractive.com/projects/postcardviewer/postcardviewer.zip" target="_blank">http://www.airtightinteractive.com/projects/postcardviewer/postcardviewer.zip</a></p>
<p><span style="text-decoration: underline;"><strong>Tiltviewer</strong></span></p>
<p>Algo diferente alresto de galerías es tiltviewer que muestra las imágenes sobre un fondo negro como postcardviewer pero estas con un efecto 3D por las cuales podemos navegar y hacer zoom al clicar.</p>
<p>Ved la demo por vosotr@s mism@s <a href="http://www.airtightinteractive.com/projects/tiltviewer/app/" target="_blank">aquí</a>. Este es el enlace de descarga <a href="http://www.airtightinteractive.com/projects/tiltviewer/tiltviewer.zip" target="_blank">http://www.airtightinteractive.com/projects/tiltviewer/tiltviewer.zip</a></p>
<p><span style="text-decoration: underline;"><strong>Polaroid</strong></span></p>
<p>Cambiando de estilo tenemos la web <a href="http://www.no3dfx.com/" target="_blank">no3dfx</a> dónde podemos encontrar la galería polaroid.</p>
<p>Realmente original nos permite mover las fotos de sitio hacer zoom-in y zoom-out y todas las imágenes con un diseño como las fotografías que podemos realizar con una cámara polaroid. Esta galería también utiliza flash.</p>
<p style="text-align: center;">
<p><div id="attachment_846" class="wp-caption aligncenter" style="width: 373px"><a rel="attachment wp-att-846" href="http://www.segmentationfault.es/wp-content/2009/05/polaroid.png"><img class="size-full wp-image-846" title="Polaroid" src="http://www.segmentationfault.es/wp-content/2009/05/polaroid.png" alt="Galería de imágenes Polaroid" width="363" height="360" /></a><p class="wp-caption-text">Galería de imágenes Polaroid</p></div></p>
<p><a href="http://www.no3dfx.com/polaroid/" target="_blank">Aquí</a> podéis probar la demo, no tiene desperdicio.</p>
<p>Enlace de descarga de esta galería<a href="http://www.no3dfx.com/polaroid/_files/polaroid_270716.zip" target="_blank"> http://www.no3dfx.com/polaroid/_files/polaroid_270716.zip</a></p>
<p><span style="text-decoration: underline;"><strong>Shadowbox</strong></span></p>
<p>Otra galería a destacar es<a href="http://www.shadowbox-js.com/" target="_blank"> Shadowbox</a> muy parecida a Lightbox. Sencilla y funcional era evidente nombrarla puesto que es la que nosotros utilizamos en Error: SegmentationFault! podéis ver su funcionamiento al clicar cualquier imagen de este post veréis como se funde el fondo en un tono más oscuro y la imagen queda centrada, podéis utilizar los botones de control para pasar a la siguiente o ver la anterior.</p>
<p>Si os gusta aquí tenéis el enlace de descarga <a href="http://www.shadowbox-js.com/download.html" target="_blank">http://www.shadowbox-js.com/download.html</a></p>
<p>Aquí os dejo otros enlaces dónde podréis encontrar más galerías por si todavía no os ha convencido ninguna de las anteriores:</p>
<p><a href="http://smoothgallery.jondesign.net/" target="_blank">http://smoothgallery.jondesign.net</a></p>
<p><a href="http://www.dezinerfolio.com/2007/06/07/dfgallery/" target="_blank">http://www.dezinerfolio.com</a></p>
<p><a href="http://www.flshow.net/index.php" target="_blank">http://www.flshow.net/index.php</a></p>
<p><a href="http://devkick.com/lab/galleria/" target="_blank">http://devkick.com/lab/galleria</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.segmentationfault.es/2009/05/galerias-imagenes/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
<!-- WP Super Cache is installed but broken. The path to wp-cache-phase1.php in wp-content/advanced-cache.php must be fixed! -->