<?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>Consultorio del Dr. Ogalinski&#187; concurso, noticias, ofuscación, widgets</title>
	<atom:link href="http://www.orlandoalonzo.com.mx/category/programacion/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.orlandoalonzo.com.mx</link>
	<description>Noticias, internet, redes sociales, gadgets, software y opinión</description>
	<lastBuildDate>Sat, 31 Jul 2010 03:34:18 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=abc</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>¿Eres bueno programando? participa en el concurso de Campus Party</title>
		<link>http://www.orlandoalonzo.com.mx/programacion/eres-bueno-programando-participa-en-el-concurso-de-campus-party/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=eres-bueno-programando-participa-en-el-concurso-de-campus-party</link>
		<comments>http://www.orlandoalonzo.com.mx/programacion/eres-bueno-programando-participa-en-el-concurso-de-campus-party/#comments</comments>
		<pubDate>Sun, 11 Oct 2009 01:24:03 +0000</pubDate>
		<dc:creator>Dr. Ogalinski</dc:creator>
				<category><![CDATA[Programación]]></category>
		<category><![CDATA[concurso]]></category>
		<category><![CDATA[noticias]]></category>
		<category><![CDATA[ofuscación]]></category>
		<category><![CDATA[widgets]]></category>

		<guid isPermaLink="false">http://www.orlandoalonzo.com.mx/?p=1885</guid>
		<description><![CDATA[
Si crees que tienes talento para la programación, entonces quizás te puedas ganar hasta 1,000 Euros, pues la empresa Campus Party a través de la plataforma CP Labs está organizando un concurso de desarrolladores, dividido en tres categorías: la primera es Ofuscación de Código, en el cual hay que desarrollar un motor de blogs con [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img class="aligncenter" title="Concurso de CP Labs" src="http://img.photobucket.com/albums/v474/ogalonzo/blog/concurso-cp.jpg" alt="" width="470" height="206" /></p>
<p>Si crees que tienes talento para la programación, entonces quizás te puedas ganar hasta 1,000 Euros, pues la empresa <a title="Visitar sitio" href="http://www.campus-party.com.mx/" target="_blank">Campus Party</a> a través de la plataforma CP Labs está organizando un <a title="Visitar sitio" href="http://mailing.campus-party.org/cplabs/email-elmundoes/" target="_blank">concurso de desarrolladores</a>, dividido en tres categorías: la primera es Ofuscación de Código, en el cual hay que desarrollar un motor de blogs con <strong>PHP 5</strong>, <strong>CSS</strong> y <strong>JavaScript</strong>, sin almacenamiento en base de datos y con la menor cantidad de líneas de código; la siguiente categoría es Programación de <strong>Widgets</strong>, en la que hay que desarrollar un widget para web, escritorio o bien para gadgets móviles con feeds OPML, y la última categoría es Administración de Noticias, en la que habrá que hacer un widget basado en <strong>Adobe AIR</strong> y <strong>Flex Framework</strong> cuya función principal es ser un cliente que simule ser un administrador de noticias para los periodistas del diario español Marca.</p>
<p>El premio a la categoría de Ofuscación de Código es un premio único de 1,000 Euros, para la categoría de Widgets también 1,000 Euros pero para los dos mejores trabajos, y la categoría de Administración de noticias tendrá un premio único de 1,000 euros. ¿Que esperas? si tienes talento como desarrollador anímate, podrías acabar con un buen billete en la bolsa.</p>
<p><a title="Visitar sitio" href="http://mailing.campus-party.org/cplabs/email-elmundoes/" target="_blank">Revisa los detalles del concurso en este enlace</a>, y no te olvides de revisar el <a title="Visitar sitio" href="http://www.campus-party.com.mx/" target="_blank">sitio de Campus Party en México</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.orlandoalonzo.com.mx/programacion/eres-bueno-programando-participa-en-el-concurso-de-campus-party/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Cheat sheet para WordPress</title>
		<link>http://www.orlandoalonzo.com.mx/programacion/cheat-sheet-para-wordpress/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=cheat-sheet-para-wordpress</link>
		<comments>http://www.orlandoalonzo.com.mx/programacion/cheat-sheet-para-wordpress/#comments</comments>
		<pubDate>Sun, 13 Sep 2009 16:45:25 +0000</pubDate>
		<dc:creator>Dr. Ogalinski</dc:creator>
				<category><![CDATA[Programación]]></category>
		<category><![CDATA[cheat sheet]]></category>
		<category><![CDATA[pdf]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.orlandoalonzo.com.mx/?p=1788</guid>
		<description><![CDATA[
Si te gusta desarollar para WordPress, entonces sabrás que debido al gran número de funciones a veces se complica recordar cual sirve para que y en que condiciones. Este resumen de funciones  (cheat sheet) te servirá en tus sesiones de desarrollo con una referencia a las muchas funciones de WordPress, debidamente categorizadas. A los que [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img class="aligncenter" title="Cheat sheet para WordPress" src="http://img.photobucket.com/albums/v474/ogalonzo/blog/wp-cheatsheet.jpg" alt="" width="470" height="288" /></p>
<p>Si te gusta desarollar para <strong>WordPress</strong>, entonces sabrás que debido al gran número de funciones a veces se complica recordar cual sirve para que y en que condiciones. Este resumen de funciones  (<strong>cheat sheet</strong>) te servirá en tus sesiones de desarrollo con una referencia a las muchas funciones de WordPress, debidamente categorizadas. A los que no saben que es una cheat sheet les diré que no es más que un resúmen por lo general categorizado de las funciones de &#8220;algo&#8221;, donde algo por lo general es una aplicación o lenguaje o software en general. Esta cheat sheet viene en formato <strong>PDF</strong>, a diferencia de otras que vienen como imagenes. ¡A desarrollar en WordPress se ha dicho!</p>
<p><a title="Descargar" href="http://www.orlandoalonzo.com.mx/wp-content/uploads/2009/09/wordpress-cheat-sheet.pdf">Descargar cheat sheet de WordPress</a></p>
<p>Fuente: <a title="Leer nota completa" href="http://net.tutsplus.com/freebies/cheat-sheets/wordpress-cheat-sheat/" target="_blank">NetTuts+</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.orlandoalonzo.com.mx/programacion/cheat-sheet-para-wordpress/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Cheat sheet para JQuery</title>
		<link>http://www.orlandoalonzo.com.mx/programacion/cheat-sheet-para-jquery/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=cheat-sheet-para-jquery</link>
		<comments>http://www.orlandoalonzo.com.mx/programacion/cheat-sheet-para-jquery/#comments</comments>
		<pubDate>Thu, 18 Dec 2008 18:40:55 +0000</pubDate>
		<dc:creator>Dr. Ogalinski</dc:creator>
				<category><![CDATA[Programación]]></category>
		<category><![CDATA[cheat sheet]]></category>
		<category><![CDATA[cheatsheet]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[recursos]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.orlandoalonzo.com.mx/?p=1412</guid>
		<description><![CDATA[En caso de que les haga falta, aquí tienen esta cheat sheet de JQuery API 1.2. JQuery es una librería de JavaScript que te permite recorrer documentos HTML, manejo de eventos, animaciones e interacciones AJAX de manera sencilla. Lo que es un poco complicado es recordar la sintaxis correcta para muchas de las funciones, y [...]]]></description>
			<content:encoded><![CDATA[<p>En caso de que les haga falta, aquí tienen esta cheat sheet de <a title="Visitar sitio" href="http://jquery.com/" target="_blank">JQuery</a> API 1.2. JQuery es una librería de <strong>JavaScript</strong> que te permite recorrer documentos <strong>HTML</strong>, manejo de eventos, animaciones e interacciones <strong>AJAX</strong> de manera sencilla. Lo que es un poco complicado es recordar la sintaxis correcta para muchas de las funciones, y para eso está esta cheat sheet, o como le decimos en México, &#8220;acordeón&#8221; (al hacer clic en la imagen te mostrará la imagen en tamaño real en una ventana nueva):</p>
<p style="text-align: center;"><a title="Ver imagen completa" href="http://img.photobucket.com/albums/v474/ogalonzo/blog/jquery12.png" target="_blank" rel="lightbox[1412]"><img class="aligncenter" src="http://img.photobucket.com/albums/v474/ogalonzo/blog/jquery12_tn.jpg" alt="Cheat sheet de JQuery 1.2" width="400" height="274" /></a></p>
<p>Fuente: <a title="Leer nota completa" href="http://nettuts.com/freebies/cheat-sheets/jquery-cheat-sheet/" target="_blank">NetTuts</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.orlandoalonzo.com.mx/programacion/cheat-sheet-para-jquery/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Poesía en C</title>
		<link>http://www.orlandoalonzo.com.mx/programacion/poesia-en-c/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=poesia-en-c</link>
		<comments>http://www.orlandoalonzo.com.mx/programacion/poesia-en-c/#comments</comments>
		<pubDate>Fri, 14 Nov 2008 07:14:22 +0000</pubDate>
		<dc:creator>Dr. Ogalinski</dc:creator>
				<category><![CDATA[Programación]]></category>
		<category><![CDATA[c]]></category>
		<category><![CDATA[concurso]]></category>
		<category><![CDATA[confuso]]></category>
		<category><![CDATA[ioccc]]></category>
		<category><![CDATA[lenguaje c]]></category>

		<guid isPermaLink="false">http://www.orlandoalonzo.com.mx/?p=1361</guid>
		<description><![CDATA[Esta es una de las entradas del concurso IOCCC o International Obfuscated C Code Contest, un concurso algo absurdo y que busca seleccionar al programa en C más revuelto que hayas visto; velo como una forma retorcida de recordarles a todos lo importante que son las buenas prácticas de programación. Muchos de los programas que [...]]]></description>
			<content:encoded><![CDATA[<p>Esta es una de las entradas del concurso <a title="Visitar sitio" href="http://www.ioccc.org/" target="_blank">IOCCC</a> o <a title="Visitar sitio" href="http://www.ioccc.org/" target="_blank">International Obfuscated C Code Contest</a>, un concurso algo absurdo y que busca seleccionar al programa en C más revuelto que hayas visto; velo como una forma retorcida de recordarles a todos lo importante que son las buenas prácticas de programación. Muchos de los programas que envían juegan con la identación del código, cambiando variables, abusan del preprocesador, y mil perversiones más. Este es un ejemplo de lo que envían al IOCCC:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
</pre></td><td class="code"><pre class="c" style="font-family:monospace;"><span style="color: #339933;">#include</span>
<span style="color: #993333;">int</span> O<span style="color: #339933;">,</span>o<span style="color: #339933;">,</span>i<span style="color: #339933;">;</span>char<span style="color: #339933;">*</span>I<span style="color: #339933;">=</span><span style="color: #ff0000;">&quot;&quot;</span><span style="color: #339933;">;</span>main<span style="color: #009900;">&#40;</span>l<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>O<span style="color: #339933;">&amp;</span>amp<span style="color: #339933;">;=</span>l<span style="color: #339933;">&amp;</span>amp<span style="color: #339933;">;</span><span style="color: #0000dd;">1</span><span style="color: #339933;">?*</span>I<span style="color: #339933;">:</span>~<span style="color: #339933;">*</span>I<span style="color: #339933;">,*</span>I<span style="color: #339933;">++||</span><span style="color: #009900;">&#40;</span>l<span style="color: #339933;">=</span><span style="color: #0000dd;">2</span><span style="color: #339933;">*</span>getchar<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span>i<span style="color: #339933;">+=</span>O<span style="color: #339933;">&amp;</span>gt<span style="color: #339933;">;</span><span style="color: #0000dd;">8</span>
<span style="color: #339933;">?</span>o<span style="color: #339933;">:</span>O<span style="color: #339933;">?</span><span style="color: #0000dd;">0</span><span style="color: #339933;">:</span>o<span style="color: #339933;">+</span><span style="color: #0000dd;">1</span><span style="color: #339933;">,</span>o<span style="color: #339933;">=</span>O<span style="color: #339933;">&amp;</span>gt<span style="color: #339933;">;</span><span style="color: #0000dd;">9</span><span style="color: #339933;">,</span>O<span style="color: #339933;">=-</span><span style="color: #0000dd;">1</span><span style="color: #339933;">,</span>I<span style="color: #339933;">=</span><span style="color: #ff0000;">&quot;t8B~pq`&quot;</span><span style="color: #339933;">,</span>l<span style="color: #339933;">&amp;</span>gt<span style="color: #339933;">;</span><span style="color: #0000dd;">0</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">?</span>main<span style="color: #009900;">&#40;</span>l<span style="color: #339933;">/</span><span style="color: #0000dd;">2</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span><span style="color: #000066;">printf</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;%d<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #339933;">,--</span>i<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span></pre></td></tr></table></div>

<p>Si, eso que ves arriba es un programa de C que funciona. Y por cierto, uno de los casi entendibles.</p>
<p><span id="more-1361"></span></p>
<p>Pero también hay algunos muy artísticos, como por ejemplo esta poesía escrita en C:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
</pre></td><td class="code"><pre class="c" style="font-family:monospace;"><span style="color: #993333;">char</span><span style="color: #339933;">*</span>lie<span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #993333;">double</span> time<span style="color: #339933;">,</span> me<span style="color: #339933;">=</span> <span style="color: #339933;">!</span><span style="color: #208080;">0XFACE</span><span style="color: #339933;">,</span>
&nbsp;
	not<span style="color: #339933;">;</span> <span style="color: #993333;">int</span> rested<span style="color: #339933;">,</span>   get<span style="color: #339933;">,</span> out<span style="color: #339933;">;</span>
&nbsp;
	main<span style="color: #009900;">&#40;</span>ly<span style="color: #339933;">,</span> die<span style="color: #009900;">&#41;</span> <span style="color: #993333;">char</span> ly<span style="color: #339933;">,</span> <span style="color: #339933;">**</span>die <span style="color: #339933;">;</span><span style="color: #009900;">&#123;</span>
&nbsp;
	    <span style="color: #993333;">signed</span> <span style="color: #993333;">char</span> lotte<span style="color: #339933;">,</span>
&nbsp;
dear<span style="color: #339933;">;</span> <span style="color: #009900;">&#40;</span><span style="color: #993333;">char</span><span style="color: #009900;">&#41;</span>lotte<span style="color: #339933;">--;</span>
&nbsp;
	<span style="color: #b1b100;">for</span><span style="color: #009900;">&#40;</span>get<span style="color: #339933;">=</span> <span style="color: #339933;">!</span>me<span style="color: #339933;">;;</span> not<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
&nbsp;
	<span style="color: #0000dd;">1</span> <span style="color: #339933;">-</span>  out <span style="color: #339933;">&amp;</span>amp<span style="color: #339933;">;</span> out <span style="color: #339933;">;</span>lie<span style="color: #339933;">;</span><span style="color: #009900;">&#123;</span>
&nbsp;
	<span style="color: #993333;">char</span> lotte<span style="color: #339933;">,</span> my<span style="color: #339933;">=</span> dear<span style="color: #339933;">,</span>
&nbsp;
	<span style="color: #339933;">**</span>let<span style="color: #339933;">=</span> <span style="color: #339933;">!!</span>me <span style="color: #339933;">*!</span>not<span style="color: #339933;">+</span> <span style="color: #339933;">++</span>die<span style="color: #339933;">;</span>
&nbsp;
	    <span style="color: #009900;">&#40;</span><span style="color: #993333;">char</span><span style="color: #339933;">*</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#40;</span>lie<span style="color: #339933;">=</span>
&nbsp;
<span style="color: #ff0000;">&quot;The gloves are OFF this time, I detest you, snot<span style="color: #000099; font-weight: bold;">\n</span><span style="color: #006699; font-weight: bold;">\0</span>sed GEEK!&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #b1b100;">do</span> <span style="color: #009900;">&#123;</span>not<span style="color: #339933;">=</span> <span style="color: #339933;">*</span>lie<span style="color: #339933;">++</span> <span style="color: #339933;">&amp;</span>amp<span style="color: #339933;">;</span> 0xF00L<span style="color: #339933;">*</span> <span style="color: #339933;">!</span>me<span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #339933;">#define love (char*)lie -</span>
&nbsp;
	love 1s <span style="color: #339933;">*!</span><span style="color: #009900;">&#40;</span>not<span style="color: #339933;">=</span> atoi<span style="color: #009900;">&#40;</span>let
&nbsp;
	<span style="color: #009900;">&#91;</span>get <span style="color: #339933;">-</span>me<span style="color: #339933;">?</span>
&nbsp;
	    <span style="color: #009900;">&#40;</span><span style="color: #993333;">char</span><span style="color: #009900;">&#41;</span>lotte<span style="color: #339933;">-</span>
&nbsp;
<span style="color: #009900;">&#40;</span><span style="color: #993333;">char</span><span style="color: #009900;">&#41;</span>lotte<span style="color: #339933;">:</span> my<span style="color: #339933;">-</span> <span style="color: #339933;">*</span>love <span style="color: #339933;">-</span>
&nbsp;
	<span style="color: #ff0000;">'I'</span>  <span style="color: #339933;">-</span>  <span style="color: #339933;">*</span>love <span style="color: #339933;">-</span>  <span style="color: #ff0000;">'U'</span> <span style="color: #339933;">-</span>
&nbsp;
	<span style="color: #ff0000;">'I'</span>  <span style="color: #339933;">-</span>  <span style="color: #009900;">&#40;</span><span style="color: #993333;">long</span><span style="color: #009900;">&#41;</span>  <span style="color: #339933;">-</span> <span style="color: #0000dd;">4</span> <span style="color: #339933;">-</span> <span style="color: #ff0000;">'U'</span> <span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">-</span> <span style="color: #339933;">!!</span>
&nbsp;
	<span style="color: #009900;">&#40;</span>time  <span style="color: #339933;">=</span>out<span style="color: #339933;">=</span>  <span style="color: #ff0000;">'a'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span> <span style="color: #b1b100;">while</span><span style="color: #009900;">&#40;</span> my <span style="color: #339933;">-</span> dear
&nbsp;
	<span style="color: #339933;">&amp;</span>amp<span style="color: #339933;">;&amp;</span>amp<span style="color: #339933;">;</span> <span style="color: #ff0000;">'I'</span><span style="color: #339933;">-</span><span style="color: #0000dd;">1l</span>  <span style="color: #339933;">-</span>get<span style="color: #339933;">-</span>  <span style="color: #ff0000;">'a'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">break</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span><span style="color: #009900;">&#125;</span>
&nbsp;
	    <span style="color: #009900;">&#40;</span><span style="color: #993333;">char</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">*</span>lie<span style="color: #339933;">++;</span>
&nbsp;
<span style="color: #009900;">&#40;</span><span style="color: #993333;">char</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">*</span>lie<span style="color: #339933;">++,</span> <span style="color: #009900;">&#40;</span><span style="color: #993333;">char</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">*</span>lie<span style="color: #339933;">++;</span> hell<span style="color: #339933;">:</span><span style="color: #0000dd;">0</span><span style="color: #339933;">,</span> <span style="color: #009900;">&#40;</span><span style="color: #993333;">char</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">*</span>lie<span style="color: #339933;">;</span>
&nbsp;
	get <span style="color: #339933;">*</span>out<span style="color: #339933;">*</span> <span style="color: #009900;">&#40;</span><span style="color: #993333;">short</span><span style="color: #009900;">&#41;</span>ly   <span style="color: #339933;">-</span><span style="color: #0000dd;">0</span><span style="color: #339933;">-</span><span style="color: #ff0000;">'R'</span><span style="color: #339933;">-</span>  get<span style="color: #339933;">-</span> <span style="color: #ff0000;">'a'</span><span style="color: #339933;">^</span>rested<span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #b1b100;">do</span> <span style="color: #009900;">&#123;</span><span style="color: #993333;">auto</span><span style="color: #339933;">*</span>eroticism<span style="color: #339933;">,</span>
&nbsp;
	that<span style="color: #339933;">;</span> puts<span style="color: #009900;">&#40;</span><span style="color: #339933;">*</span><span style="color: #009900;">&#40;</span> out
&nbsp;
	    <span style="color: #339933;">-</span> <span style="color: #ff0000;">'c'</span>
&nbsp;
<span style="color: #339933;">-</span><span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'P'</span><span style="color: #339933;">-</span><span style="color: #ff0000;">'S'</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span>die<span style="color: #339933;">+</span> <span style="color: #339933;">-</span><span style="color: #0000dd;">2</span> <span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span><span style="color: #b1b100;">while</span><span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span><span style="color: #ff0000;">&quot;you're at it&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #b1b100;">for</span> <span style="color: #009900;">&#40;</span><span style="color: #339933;">*</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span><span style="color: #993333;">char</span><span style="color: #339933;">*</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">&amp;</span>amp<span style="color: #339933;">;</span>lotte<span style="color: #009900;">&#41;</span><span style="color: #339933;">^=</span>
&nbsp;
	<span style="color: #009900;">&#40;</span><span style="color: #993333;">char</span><span style="color: #009900;">&#41;</span>lotte<span style="color: #339933;">;</span> <span style="color: #009900;">&#40;</span>love ly<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#91;</span><span style="color: #009900;">&#40;</span><span style="color: #993333;">char</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">++</span>lotte<span style="color: #339933;">+</span>
&nbsp;
	<span style="color: #339933;">!!</span><span style="color: #208080;">0xBABE</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span> <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'I'</span> <span style="color: #339933;">-</span>lie<span style="color: #009900;">&#91;</span> <span style="color: #0000dd;">2</span> <span style="color: #339933;">+</span><span style="color: #009900;">&#40;</span><span style="color: #993333;">char</span><span style="color: #009900;">&#41;</span>lotte<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span> <span style="color: #ff0000;">'I'</span><span style="color: #339933;">-</span><span style="color: #0000dd;">1l</span> <span style="color: #339933;">***</span>die<span style="color: #339933;">;</span> <span style="color: #009900;">&#125;</span>
&nbsp;
	<span style="color: #b1b100;">else</span><span style="color: #009900;">&#123;</span> <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'I'</span> <span style="color: #339933;">*</span> get <span style="color: #339933;">*</span>out<span style="color: #339933;">*</span> <span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'I'</span><span style="color: #339933;">-</span><span style="color: #0000dd;">1l</span> <span style="color: #339933;">**</span>die<span style="color: #009900;">&#91;</span> <span style="color: #0000dd;">2</span> <span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">*</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span><span style="color: #993333;">char</span><span style="color: #339933;">*</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">&amp;</span>amp<span style="color: #339933;">;</span>lotte<span style="color: #009900;">&#41;</span> <span style="color: #339933;">-=</span>
&nbsp;
	<span style="color: #ff0000;">'4'</span> <span style="color: #339933;">-</span> <span style="color: #009900;">&#40;</span><span style="color: #ff0000;">'I'</span><span style="color: #339933;">-</span><span style="color: #0000dd;">1l</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> not<span style="color: #339933;">;</span> <span style="color: #b1b100;">for</span><span style="color: #009900;">&#40;</span>get<span style="color: #339933;">=!</span>
&nbsp;
get<span style="color: #339933;">;</span> <span style="color: #339933;">!</span>out<span style="color: #339933;">;</span> <span style="color: #009900;">&#40;</span><span style="color: #993333;">char</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">*</span>lie  <span style="color: #339933;">&amp;</span>amp<span style="color: #339933;">;</span>  <span style="color: #208080;">0xD0</span><span style="color: #339933;">-</span> <span style="color: #339933;">!</span>not<span style="color: #009900;">&#41;</span> <span style="color: #b1b100;">return</span><span style="color: #339933;">!!</span>
&nbsp;
	<span style="color: #009900;">&#40;</span><span style="color: #993333;">char</span><span style="color: #009900;">&#41;</span>lotte<span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span>
&nbsp;
<span style="color: #009900;">&#40;</span><span style="color: #993333;">char</span><span style="color: #009900;">&#41;</span>lotte<span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #b1b100;">do</span><span style="color: #009900;">&#123;</span> not<span style="color: #339933;">*</span> putchar<span style="color: #009900;">&#40;</span>lie <span style="color: #009900;">&#91;</span>out
&nbsp;
	<span style="color: #339933;">*!</span>not<span style="color: #339933;">*</span> <span style="color: #339933;">!!</span>me <span style="color: #339933;">+</span><span style="color: #009900;">&#40;</span><span style="color: #993333;">char</span><span style="color: #009900;">&#41;</span>lotte<span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
	not<span style="color: #339933;">;</span> <span style="color: #b1b100;">for</span><span style="color: #009900;">&#40;</span><span style="color: #339933;">;!</span><span style="color: #ff0000;">'a'</span><span style="color: #339933;">;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span><span style="color: #b1b100;">while</span><span style="color: #009900;">&#40;</span>
&nbsp;
	    love <span style="color: #009900;">&#40;</span><span style="color: #993333;">char</span><span style="color: #339933;">*</span><span style="color: #009900;">&#41;</span>lie<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #009900;">&#123;</span>
&nbsp;
<span style="color: #993333;">register</span> this<span style="color: #339933;">;</span> <span style="color: #b1b100;">switch</span><span style="color: #009900;">&#40;</span> <span style="color: #009900;">&#40;</span><span style="color: #993333;">char</span><span style="color: #009900;">&#41;</span>lie
&nbsp;
	<span style="color: #009900;">&#91;</span><span style="color: #009900;">&#40;</span><span style="color: #993333;">char</span><span style="color: #009900;">&#41;</span>lotte<span style="color: #009900;">&#93;</span> <span style="color: #339933;">-</span>1s <span style="color: #339933;">*!</span>out<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
&nbsp;
	<span style="color: #993333;">char</span><span style="color: #339933;">*</span>les<span style="color: #339933;">,</span> get<span style="color: #339933;">=</span> <span style="color: #208080;">0xFF</span><span style="color: #339933;">,</span> my<span style="color: #339933;">;</span> <span style="color: #b1b100;">case</span><span style="color: #ff0000;">' '</span><span style="color: #339933;">:</span>
&nbsp;
	<span style="color: #339933;">*</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span><span style="color: #993333;">char</span><span style="color: #339933;">*</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">&amp;</span>amp<span style="color: #339933;">;</span>lotte<span style="color: #009900;">&#41;</span> <span style="color: #339933;">+=</span> <span style="color: #0000dd;">15</span><span style="color: #339933;">;</span> <span style="color: #339933;">!</span>not <span style="color: #339933;">+</span><span style="color: #009900;">&#40;</span><span style="color: #993333;">char</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">*</span>lie<span style="color: #339933;">*</span><span style="color: #ff0000;">'s'</span><span style="color: #339933;">;</span>
&nbsp;
	this <span style="color: #339933;">+</span>1s<span style="color: #339933;">+</span> not<span style="color: #339933;">;</span> <span style="color: #b1b100;">default</span><span style="color: #339933;">:</span> <span style="color: #208080;">0xF</span> <span style="color: #339933;">+</span><span style="color: #009900;">&#40;</span><span style="color: #993333;">char</span><span style="color: #339933;">*</span><span style="color: #009900;">&#41;</span>lie<span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span><span style="color: #009900;">&#125;</span><span style="color: #009900;">&#125;</span>
&nbsp;
	get <span style="color: #339933;">-</span> <span style="color: #339933;">!</span>out<span style="color: #339933;">;</span>
&nbsp;
	<span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span>not<span style="color: #339933;">--</span><span style="color: #009900;">&#41;</span>
&nbsp;
	<span style="color: #b1b100;">goto</span> hell<span style="color: #339933;">;</span>
&nbsp;
	    exit<span style="color: #009900;">&#40;</span> <span style="color: #009900;">&#40;</span><span style="color: #993333;">char</span><span style="color: #009900;">&#41;</span>lotte<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><span style="color: #009900;">&#125;</span></pre></td></tr></table></div>

<p>¿Quién dijo que el código no es arte? :P</p>
<p>Fuente: <a title="Visitar sitio" href="http://www.ioccc.org/1990/westley.c" target="_blank">westley.c (IOCCC 1999)</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.orlandoalonzo.com.mx/programacion/poesia-en-c/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>8 sitios para que encuentres el código que necesitas</title>
		<link>http://www.orlandoalonzo.com.mx/programacion/8-sitios-para-que-encuentres-el-codigo-que-necesitas/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=8-sitios-para-que-encuentres-el-codigo-que-necesitas</link>
		<comments>http://www.orlandoalonzo.com.mx/programacion/8-sitios-para-que-encuentres-el-codigo-que-necesitas/#comments</comments>
		<pubDate>Tue, 11 Nov 2008 04:48:43 +0000</pubDate>
		<dc:creator>Dr. Ogalinski</dc:creator>
				<category><![CDATA[Programación]]></category>
		<category><![CDATA[abierta]]></category>
		<category><![CDATA[búsqueda]]></category>
		<category><![CDATA[código]]></category>
		<category><![CDATA[fuente]]></category>
		<category><![CDATA[motor]]></category>

		<guid isPermaLink="false">http://www.orlandoalonzo.com.mx/?p=1353</guid>
		<description><![CDATA[
No es ningún pecado, ni es ningún secreto, que mirar el código fuente de otros es la mejor forma de aprender. Hasta hace unos años, hacer una búsqueda por código fuente sobre algo en particular no era fácil, pero hoy en día ya hay herramientas de búsqueda especializadas en esto. Estas son ocho herramientas que [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img class="aligncenter" src="http://img.photobucket.com/albums/v474/ogalonzo/blog/Html-source-code.jpg" alt="Código fuente" width="470" height="213" /></p>
<p>No es ningún pecado, ni es ningún secreto, que mirar el <strong>código fuente</strong> de otros es la mejor forma de aprender. Hasta hace unos años, hacer una <strong>búsqueda</strong> por código fuente sobre algo en particular no era fácil, pero hoy en día ya hay herramientas de búsqueda especializadas en esto. Estas son ocho herramientas que te ayudarán a buscar código:</p>
<ol>
<li><a title="Visitar sitio" href="http://github.com/codesearch" target="_blank">GitHub</a>: este es un almacén de <strong>código de fuente abierta</strong> y aparte es un servicio de control de versiones. A pesar de ser el &#8220;nuevo&#8221; en cuanto a lo que se refiere este tipo de servicios, se ha vuelto popular muy rápidamente.</li>
<li><a title="Visitar sitio" href="http://www.krugle.org/kse/files" target="_blank">Krugle</a>: <strong>Krugle</strong> dice tener la capacidad e poder buscar en 2.5 billones de líneas de código de fuente abierta, lo que lo convierte en uno de los motores de búsqueda de código fuente más grandes en la web. Sólo para que te des una idea, su producto de nivel empresarial le da batería a la búsqueda de <a title="Visitar sitio" href="http://aws.amazon.com/" target="_blank">Amazon Web Services</a>, <a title="Visitar sitio" href="http://www.ibm.com/developerworks/linux/library/l-linux-kernel/?S_TACT=105AGX59&amp;S_CMP=GR&amp;ca=dgr-btw01LKernalAnatomy" target="_blank">IBM developerWorks</a>, <a title="Visitar sitio" href="http://www.collab.net/" target="_blank">Collab.net</a>, <a title="Visitar sitio" href="http://SourceForge.net" target="_blank">SourceForge.net</a> y <a title="Visitar sitio" href="http://developer.yahoo.com/" target="_blank">Yahoo! Developer Network</a>.</li>
<li><a title="Visitar sitio" href="http://www.koders.com/" target="_blank">Koders</a>: dicen poder buscar en un billón de líneas de código, y es uno de los favoritos de programadores de Ruby.</li>
<li><a title="Visitar sitio" href="http://www.codase.com/" target="_blank">Codase</a>: con &#8220;apenas&#8221; 250 millones de líneas de código para buscar, este es el pequeño de esta lista; sin embargo, al parecer está enfocado en código de fuente abierta en <strong>C</strong>/<strong>C++</strong> orientado a <strong>Linux</strong>, así que no lo desprecies.</li>
</ol>
<p><span id="more-1353"></span></p>
<ol start="5">
<li><a title="Visitar sitio" href="http://snippets.dzone.com/" target="_blank">DZone Snippets</a>: este es un lugar para encontrar buenos ejemplos, con unos 13,000 usuarios que contribuyen unos 5,000 segmentos de código; no es muy fácil de navegar, pero puedes encontrar código muy bueno si te aplicas buscando.</li>
<li><a title="Visitar sitio" href="http://snipplr.com/" target="_blank">Snipplr</a>: este es al igual que Dzone un sitio de <strong>snippets</strong> (retazos o segmentos de código), sólo que con más cantidad que aquel, unos 8,000 aproximadamente. Y por si no te convence, también ofrecen plugins para TextMate, Gedit y WordPress.</li>
<li><a title="Visitar sitio" href="http://www.google.com/codesearch" target="_blank">Google Code Search</a>: que lista de búsqueda está completa si no incluyes a Google&#8230;no se sabe cuantas líneas de código tiene listas para buscar, pero cuando de búsquedas se trata la última palabra la tiene siempre Google: este indexa una tonelada de sitios de código, como GitHub, SourceForge, y otros más.</li>
<li><a title="Visitar sitio" href="http://labs.oreilly.com/code/" target="_blank">O&#8217;Reilly Code Search</a>: el editor de libros O&#8217;Reilly te permite buscar en los más de 123,000 ejemplos de sus libros (700 más o menos), que juntos suman unas 2.6 millones de líneas de código. Nada mal.</li>
</ol>
<p>Con todos estos enlaces seguramente necesitarás ese código que tanto necesitas. ¡A buscar se ha dicho!</p>
<p>Fuente: <a title="Leer nota completa" href="http://www.sitepoint.com/blogs/2008/11/04/7-places-to-find-the-code-you-need/" target="_blank">SitePoint</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.orlandoalonzo.com.mx/programacion/8-sitios-para-que-encuentres-el-codigo-que-necesitas/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>10 principios de los maestros de PHP</title>
		<link>http://www.orlandoalonzo.com.mx/programacion/10-principios-de-los-maestros-de-php/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=10-principios-de-los-maestros-de-php</link>
		<comments>http://www.orlandoalonzo.com.mx/programacion/10-principios-de-los-maestros-de-php/#comments</comments>
		<pubDate>Tue, 30 Sep 2008 16:18:27 +0000</pubDate>
		<dc:creator>Dr. Ogalinski</dc:creator>
				<category><![CDATA[Programación]]></category>
		<category><![CDATA[consejos]]></category>
		<category><![CDATA[maestros]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[Tips]]></category>

		<guid isPermaLink="false">http://www.orlandoalonzo.com.mx/?p=1285</guid>
		<description><![CDATA[
Actualmente PHP tiene una presencia casi total en la red: es el lenguaje de scripting más popular que hay, y eso a su vez es una ventaja, porque para todos los que están aprendiendo eso significa que tendrán una gran base de código para aprender y/o modificar, pero a la vez es una desventaja porque [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img class="aligncenter" src="http://img.photobucket.com/albums/v474/ogalonzo/blog/php-code.jpg" alt="Código en PHP" width="470" height="253" /></p>
<p>Actualmente <a title="Visitar sitio" href="http://www.php.net" target="_blank">PHP</a> tiene una presencia casi total en la red: es el <strong>lenguaje</strong> de <strong>scripting</strong> más popular que hay, y eso a su vez es una ventaja, porque para todos los que están aprendiendo eso significa que tendrán una gran base de <strong>código</strong> para aprender y/o modificar, pero a la vez es una desventaja porque muchos programadores simple y sencillamente no tienen buenas prácticas. Así que escuchemos consejos de los verdaderos maestros de PHP:</p>
<p><strong>1 &#8211; Usa PHP solo cuando lo necesites (Rasmus Lerdorf)</strong></p>
<p>Si hay alguien que puede darte un consejo sobre PHP, ese es <a title="Visitar sitio" href="http://en.wikipedia.org/wiki/Rasmus_Lerdorf" target="_blank">Rasmus Lerdorf</a>. El es el autor de PHP&#8230;eso debe de contar para algo. Aunque no lo creas Lerdorf no concibió a PHP como una solución a todos los problemas, sino como una herramienta más, la cual debería de usarse para resolver ciertos problemas. El mismo Lerdorf invita a usar la herramienta adecuada; en sus palabras: &#8220;<em>usa la herramienta adecuada para cada trabajo. Me he topado con empresas que están inmersas en PHP, usándolo absolutamente en todos lados, pero nunca fue pensado para ser un lenguaje de propósito general para todos los problemas. Su principal función es como el front-end de scripts para la web.</em>&#8221;</p>
<p><strong>2 &#8211; Usa muchas tablas con PHP y MySQL para escalabilidad (Matt Mullenweg)</strong></p>
<p>Matt Mullenweg es el autor original de <a title="Visitar sitio" href="http://www.wordpress.org" target="_blank">WordPress</a>, así que de nuevo, quizás tenga una o dos cosas interesantes que decir en cuanto a escalabilidad, sólo hay que pensar en <a title="Visitar sitio" href="http://www.wordpress.com" target="_blank">Wordpress.com</a>: 4 millones de blogs, 140,000 artículos al día. En el 2006 Matt dió algunos pormenores de como funciona la estructura de base de datos de WordPress.com y explicó que <strong>WordPress MU</strong> (multi-user, multiusuario) usa una tabla separada por cada blog, en vez de una sola tabla gigante para todos los blogs. El razonamiento detrás de esta lógica son los costos en hardware: el tener muchas tablas permite migrarlas fácilmente, mientras que una estructura monolítica no.</p>
<p><span id="more-1285"></span><strong>3 &#8211; Nunca confíes en tus usuarios (Dave Child)</strong></p>
<p>Dave Child es el autor del sitio <a title="Visitar sitio" href="http://www.addedbytes.com/" target="_blank">Added Bytes</a>, que contiene <strong>cheat sheets</strong> de muchos lenguajes. Dave ofrece este consejo en cuanto a seguridad: nunca confíes en tus usuarios: debes de suponer que toda información que recolectes desde tu sitio contiene código malicioso, incluido aquellos datos que pudieran ser verificado del lado del cliente, usando <strong>JavaScript</strong>, por ejemplo. Y no sólo eso, otro consejo de David es que seas completa y totalmente paranoico respecto a la seguridad de tu sitio; no pienses que tu sitio nunca será atacado, porque cuando eso suceda, entonces estarás en muchísimos problemas.</p>
<p><strong>4 &#8211; Invierte en una solución de caché para PHP (Ben Balbo)</strong></p>
<p>Ben Balbo es un escritor de <a title="Leer nota completa" href="http://www.sitepoint.com/" target="_blank">Site Point</a>, un sitio respetado  que contiene tutoriales para desarrolladores y diseñadores. El consejo de Balbo es que uses algún sistema de <strong>caché</strong> para PHP. No importa el sitio que tengas, ya sea estático, sea un blog de WordPress, o algún otro CMS que use PHP, te verás beneficiado con el uso de un sistema de cache, en algunos casos con mejoras bastante impresionantes.</p>
<p><strong>5 &#8211; Acelera el desarrollo usando un IDE, templates y retazos de código (Chad Kieffer)</strong></p>
<p>Chad Kieffer es el autor del blog <a title="Visitar sitio" href="http://2tbsp.com/" target="_blank">2 tablespoons</a>; el consejo de Kieffer es simple, y si lo vemos desde otro punto de vista, es un principio básico de ingeniería: no reinventes la rueda. Su consejo consiste en usar un ambiente de desarrollo integrado (IDE, por sus siglas en inglés), como por ejemplo Eclipse PDT; y también echar guante de templates (patrones) y trozos de código.</p>
<p><strong>6 &#8211; Haz un mejor uso de las funciones de filtro de PHP (Joey Sochacki)</strong></p>
<p>Joey es el autor del blog <a title="Visitar sitio" href="http://www.devolio.com" target="_blank">Devolio</a>, donde comparte tips para webmasters y freelancers. Joey se ha dado cuenta de que no muchos programadores usan las funciones de filtrado de PHP, las cuales sirven para filtrar y validar casi cualquier cosa que se te ocurra.</p>
<p><strong>7 &#8211; Usa un framework de PHP (Josh Sharp)</strong></p>
<p>Josh es un desarrollador web que se gana el pan creando sitios para sus clientes. El consejo de Josh es usar un framework de PHP; el razonamiento detrás de esto (que por cierto es algo con lo que estoy de acuerdo), es que es extremadamente fácil escribir mal código en PHP, por lo tanto, ¿porqué no usar un framework como <a title="Visitar sitio" href="http://cakephp.org/" target="_blank">CakePHP</a>, <a title="Visitar sitio" href="http://codeigniter.com/" target="_blank">Code Igniter</a> o alguno de los muchos que hay? las ganancias son buenas, pues estandarizarás tu código y usarás menos tiempo en el desarrollo.</p>
<p><strong>8 &#8211; No uses un framework de PHP (Rasmus Lerdorf)</strong></p>
<p>El padre de PHP contraataca, esta vez llevándole la contraria al consejo #7. ¿La razón? Lerdorf argumenta que los frameworks de PHP son lentos. Si PHP por si sólo no es un rayo que digamos, ciertamente los frameworks son un poco más lentos. Si aún así tienes que usar un framework, Lerdorf tiene cierta preferencia por Code Igniter.</p>
<p><strong>9 &#8211; Usa procesamiento por lotes (Jack D. Herrington)</strong></p>
<p>Herrington es un presigioso escritor (y programador claro), que ha escrito unos 30 artículos para el no menos prestigioso IBM developerWorks, y tiene algunos libros a su cuenta también. El consejo de Herrington es que uses procesamiento con lotes, usando cron para procesar tareas en segundo plano, pues a los usuarios no les gusta esperar. Herrington cree en la simplicidad, y en vez de usar hilos de ejecución en los servidores, el usa una sencilla combinación de cron, PHP y MySQL para procesar tareas en segundo plano.</p>
<p><strong>10 &#8211; Habilita los reportes de errores inmediatamente (David Cummings)</strong></p>
<p>Este es un buen consejo de David Cummings, propietario de una empresa de software especializada en sistemas de manejo de contenidos. El consejo de Cummings es habilitar el reporteo de errores a su máximo nivel; generalmente el nivel de reporteo de errores de PHP oculta muchos errores &#8220;tontos&#8221;, como por ejemplo referenciar una variable fuera del segmento actual de código, usar un define que no esté establecido, y otros así. El reporteo de errores a tope te indicará todos estos errores y otros más, que pueden parecer poca cosa, pero cuando quieres desarrollar a otro nivel te darán dolores de cabeza.</p>
<p>Ahí tienen amigos, a ponerlos en práctica para tratar de sufrir menos con PHP. <img src="http://www.orlandoalonzo.com.mx/wp-includes/images/smilies/yahoo3.gif" class="wp-smiley" /></p>
<p>Fuente: <a title="Leer nota completa" href="http://nettuts.com/articles/10-principles-of-the-php-masters/" target="_blank">NetTuts</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.orlandoalonzo.com.mx/programacion/10-principios-de-los-maestros-de-php/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Liberarán código fuente del juego SimCity original</title>
		<link>http://www.orlandoalonzo.com.mx/juegos/liberaran-codigo-fuente-del-juego-simcity-original/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=liberaran-codigo-fuente-del-juego-simcity-original</link>
		<comments>http://www.orlandoalonzo.com.mx/juegos/liberaran-codigo-fuente-del-juego-simcity-original/#comments</comments>
		<pubDate>Mon, 14 Jan 2008 00:08:37 +0000</pubDate>
		<dc:creator>Dr. Ogalinski</dc:creator>
				<category><![CDATA[Juegos]]></category>
		<category><![CDATA[Programación]]></category>
		<category><![CDATA[arts]]></category>
		<category><![CDATA[child]]></category>
		<category><![CDATA[city]]></category>
		<category><![CDATA[código]]></category>
		<category><![CDATA[electronic]]></category>
		<category><![CDATA[gnu]]></category>
		<category><![CDATA[gpl]]></category>
		<category><![CDATA[laptop]]></category>
		<category><![CDATA[micropolis]]></category>
		<category><![CDATA[olpc]]></category>
		<category><![CDATA[one]]></category>
		<category><![CDATA[sim]]></category>
		<category><![CDATA[simcity]]></category>

		<guid isPermaLink="false">http://www.orlandoalonzo.com.mx/juegos/liberaran-codigo-fuente-del-juego-simcity-original/</guid>
		<description><![CDATA[En noviembre del año pasado les informé de que Electronics Arts donaría la versión original del juego SimCity al proyecto One Laptop Per Child (OLPC), el cual tiene como misión llevar portátiles de bajo costo (por cierto ya no tan bajo) a niños de países en vías de desarrollo. Como muchos de ustedes ya sabrán, [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://img.photobucket.com/albums/v474/ogalonzo/blog/simcity.gif" alt="SimCity" align="left" height="80" hspace="10" width="80" />En noviembre del año pasado les informé de que <a href="http://www.orlandoalonzo.com.mx/juegos/ea-dona-simcity-al-proyecto-olpc/" title="Leer nota completa">Electronics Arts donaría la versión original del juego SimCity</a> al proyecto <strong>One Laptop Per Child</strong> (<strong>OLPC</strong>), el cual tiene como misión llevar portátiles de bajo costo (por cierto ya no tan bajo) a niños de países en vías de desarrollo. Como muchos de ustedes ya sabrán, <strong>SimCity</strong> es mucho más que un simple juego, pues fomenta en los más pequeños muchas habilidades, como por ejemplo la resolución de problemas y también el desarrollar el sentido de estrategia.</p>
<p>Ahora, <strong>Electronic Arts</strong> libera el código fuente de este juego bajo la licencia <strong>GNU GPL</strong>, que ahora se llamará <a href="http://www.donhopkins.com/home/micropolis/" title="Visitar sitio" target="_blank">Micrópolis</a> y no tendrá ninguna referencia al nombre <strong>SimCity</strong>, lo cual hacen para proteger su marca registrada. Esto es de interesante para todos los que desarollamos software, pues leyendo e investigando este código podemos aprender muchas técnicas que nos pueden servir. Vale la pena echarle un ojo.</p>
<p><a href="http://www.downloadsquad.com/2008/01/13/original-simcity-source-code-released-under-gpl/" title="Leer nota completa" target="_blank">Leer nota completa en Download Squad.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.orlandoalonzo.com.mx/juegos/liberaran-codigo-fuente-del-juego-simcity-original/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Nuevo lenguaje para Visual Studio: F#</title>
		<link>http://www.orlandoalonzo.com.mx/programacion/nuevo-lenguaje-para-visual-studio-f/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=nuevo-lenguaje-para-visual-studio-f</link>
		<comments>http://www.orlandoalonzo.com.mx/programacion/nuevo-lenguaje-para-visual-studio-f/#comments</comments>
		<pubDate>Tue, 23 Oct 2007 19:01:45 +0000</pubDate>
		<dc:creator>Dr. Ogalinski</dc:creator>
				<category><![CDATA[Programación]]></category>
		<category><![CDATA[.net]]></category>
		<category><![CDATA[f#]]></category>
		<category><![CDATA[lenguaje]]></category>
		<category><![CDATA[marco]]></category>
		<category><![CDATA[microsoft]]></category>
		<category><![CDATA[plataforma]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[scripting]]></category>

		<guid isPermaLink="false">http://www.orlandoalonzo.com.mx/programacion/nuevo-lenguaje-para-visual-studio-f/</guid>
		<description><![CDATA[Microsoft tiene planes de integrar F# (pronunciado &#8220;ef sharp&#8221;, un lenguaje de programación funcional desarrollado por el Grupo de Investigación de Microsoft, con su ambiente de desarrollo integrado Visual Studio. Este lenguaje se basa en los conceptos de programación funcional, en los cuales se trata a la computación como la evaluación de funciones matemáticas; se [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://img.photobucket.com/albums/v474/ogalonzo/blog/visual-studio.jpg" title="Logo de Visual Studio" alt="Logo de Visual Studio" align="left" height="80" width="80" /><strong>Microsoft</strong> tiene planes de integrar <strong>F#</strong> (pronunciado &#8220;ef sharp&#8221;, un lenguaje de programación funcional desarrollado por el Grupo de Investigación de Microsoft, con su ambiente de desarrollo integrado <strong>Visual Studio</strong>. Este lenguaje se basa en los conceptos de <a href="http://es.wikipedia.org/wiki/Programaci%C3%B3n_funcional" title="Leer nota completa" target="_blank">programación funcional</a>, en los cuales se trata a la computación como la evaluación de funciones matemáticas; se preguntarán quien se interesaría por esto: principalmente, profesionales con necesidad de resolver problemas que se encuentren en dominios que se describen mejor en notación matemática, como las finanzas, ciencias y computación técnica.</p>
<p>F# combina seguridad de tipos, desempeño y scripting. También soporta scripting interactivo como en <strong>Python</strong>, y F# también puede usar las librerías de <strong>.NET</strong> y sus herramientas de base de datos. Hasta ahora, la noticia ha tenido buena recepción entre algunos programadores. A pesar de que aún no hay fecha de lanzamiento, el producto ya está bastante avanzado y podría ser lanzado en breve.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.orlandoalonzo.com.mx/programacion/nuevo-lenguaje-para-visual-studio-f/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Una broma llevada demasiado lejos: el lenguaje LOLCODE</title>
		<link>http://www.orlandoalonzo.com.mx/weird-wide-web/una-broma-llevada-demasiado-lejos-el-lenguaje-lolcode/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=una-broma-llevada-demasiado-lejos-el-lenguaje-lolcode</link>
		<comments>http://www.orlandoalonzo.com.mx/weird-wide-web/una-broma-llevada-demasiado-lejos-el-lenguaje-lolcode/#comments</comments>
		<pubDate>Sat, 09 Jun 2007 17:49:37 +0000</pubDate>
		<dc:creator>Dr. Ogalinski</dc:creator>
				<category><![CDATA[Programación]]></category>
		<category><![CDATA[Weird Wide Web]]></category>
		<category><![CDATA[gatos]]></category>
		<category><![CDATA[lenguaje]]></category>
		<category><![CDATA[lolcats]]></category>
		<category><![CDATA[lolcode]]></category>
		<category><![CDATA[programación]]></category>

		<guid isPermaLink="false">http://www.orlandoalonzo.com.mx/?p=178</guid>
		<description><![CDATA[Supongo que muchos de ustedes conocen las imágenes de gatos con títulos graciosos en inglés deformado, o como son conocidas, lolcats. Si usan Twitter, SEGURO conocen al gato de Twitter, el que sale cada vez que el servidor falla (lo cual es bastante frecuente, pero esa es otra historia). Estas imágenes llevan años en Internet, [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://img.photobucket.com/albums/v474/ogalonzo/blog/lolcode-nutshellz.jpg" alt="LOLCODE in your nutshellz" title="LOLCODE in your nutshellz" align="left" height="120" width="80" />Supongo que muchos de ustedes conocen las imágenes de gatos con títulos graciosos en inglés deformado, o como son conocidas, <a href="http://en.wikipedia.org/wiki/Lolcat" target="_blank" title="Página de lolcats en Wikipedia">lolcats</a>. Si usan Twitter, SEGURO conocen al gato de Twitter, el que sale cada vez que el servidor falla (lo cual es bastante frecuente, pero esa es otra historia). Estas imágenes llevan años en Internet, y son bastante populares. Pues bien, alguien pensó que el lenguaje de los lolcats era demasiado bueno para dejarlo en el olvido, y se le ocurrió convertirlo en un lenguaje de programación, llamado LOLCODE. No, no es broma. Tan no lo es, que hay varias implementaciones de este código.</p>
<p>Veamos un poco de código en LOLCAT: ¿que tal el programa con el que se inicia todo novato en un lenguaje de programación? así es, un &#8220;Hola mundo!&#8221;:</p>
<p><span id="more-178"></span></p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
</pre></td><td class="code"><pre class="lolcode" style="font-family:monospace;"><span style="color: #008000;">HAI</span>
<span style="color: #008000;">VISIBLE</span> <span style="color: #ff0000;">&quot;HOLA MUNDO!&quot;</span>
<span style="color: #008000;">KTHXBYE</span></pre></td></tr></table></div>

<p>Si esto no es cómico no sé que lo es <img src="http://www.orlandoalonzo.com.mx/wp-includes/images/smilies/yahoo4.gif" class="wp-smiley" /> &#8230;por si no lo han notado, todo en LOL CODE está en mayúsculas. Analicemos el código línea a línea: iniciamos con una instrucción HAI, que es como inician todos los programas de LOLCAT. Posteriomente usamos la instrucción VISIBLE, que se usa para desplegar programas en pantalla, y por último terminamos el programa con la instrucción <code>KTHXBYE</code>. ¿Simple no?</p>
<p>Bien, eso fue sencillo. ¡Ahora veamos algo más complicado! veamos el siguiente listado:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
</pre></td><td class="code"><pre class="lolcode" style="font-family:monospace;"><span style="color: #008000;">HAI</span>
&nbsp;
<span style="color: #008000;">I HAS A</span> CHEEZBURGER <span style="color: #008000;">ITZ</span> <span style="">1</span>
&nbsp;
<span style="color: #000080;">IM</span> <span style="color: #000080;">IN</span> <span style="color: #800000;">YR</span> <span style="color: #000080;">LOOP</span>
  <span style="color: #008000;">VISIBLE</span> <span style="color: #ff0000;">&quot;Yo tengo tantas estas: &quot;</span> N CHEEZBURGER
  <span style="color: #000080;">IZ</span> CHEEZBURGER <span style="color: #800000;">BIGGER</span> <span style="color: #800000;">THAN</span> <span style="">11</span> <span style="color: #000080;">O RLY?</span>
    YA RLY
       <span style="color: #008000;">GTFO</span>
    NO WAI
       <span style="color: #800000;">UP</span> CHEEZBURGER<span style="color: #66cc66;">!!</span><span style="">1</span>
  <span style="color: #008000;">KTHX</span>
<span style="color: #008000;">KTHX</span> 
&nbsp;
<span style="color: #008000;">KTHXBYE</span></pre></td></tr></table></div>

<p>jajajaja no puedo dejar de reirme&#8230;bien, analicemos que pasa aquí: como mencioné antes, todo programa inicia con la instrucción HAI. LOLCODE declara variables con la instrucción <code>I HAS A (VARIABLE) [ITZ (valor)]</code>. Lo que esté entre signos de paréntesis tienes que ponerlo tu. La parte <code>ITZ (valor)</code> es opcional, y sirve para inicializar variables. En el caso del código, inicializa la variable <code>CHEEZBURGER </code>a uno (observen que no se pierden las buenas prácticas de programación). Después iniciamos un bucle con las instrucciones <code>IM IN YR LOOP</code>; para cada ciclo desplegamos el mensaje &#8220;Yo tengo tantas estas:&#8221; y el valor de la variable <code>CHEEZBURGER</code>. Posteriormente preguntamos si esta variable vale 11, pues el ciclo se lleva a cabo 10 veces; si se cumple la condición (<code>YA RLY</code>), entonces el ciclo se termina (<code>GTFO</code>), de lo contrario se incremente <code>CHEEZBURGER (UP CHEEZBURGER!!1)</code>. Los bloques de bucle y de comparación deben de cerrarse con <code>KTHX</code>.</p>
<p>Esto les debe de servir como una pequeña introducción a este lenguaje.</p>
<p>En fin, que más se puede decir&#8230;¡hay gente con demasiado tiempo libre! si quieren saber más, pueden <a href="http://lolcode.com/" target="_blank" title="Visitar sitio">visitar la página del languaje LOLCODE</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.orlandoalonzo.com.mx/weird-wide-web/una-broma-llevada-demasiado-lejos-el-lenguaje-lolcode/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Page Caching using disk (enhanced) (user agent is rejected)
Database Caching 28/38 queries in 0.025 seconds using disk

Served from: www.orlandoalonzo.com.mx @ 2010-07-31 12:47:12 -->