<?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>Radio Levhita &#187; Web Development</title>
	<atom:link href="http://blog.levhita.net/category/web-development/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.levhita.net</link>
	<description>La radio que sólo se lee pero aún así se escucha...</description>
	<lastBuildDate>Mon, 16 Jan 2012 18:51:52 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Microsoft BizSpark</title>
		<link>http://blog.levhita.net/2011/11/15/microsoft-bizspark/</link>
		<comments>http://blog.levhita.net/2011/11/15/microsoft-bizspark/#comments</comments>
		<pubDate>Tue, 15 Nov 2011 06:00:14 +0000</pubDate>
		<dc:creator>Argel Arias</dc:creator>
				<category><![CDATA[HackerGarage]]></category>
		<category><![CDATA[PlanetaLinux]]></category>
		<category><![CDATA[Radio Levhita]]></category>
		<category><![CDATA[Startups]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://blog.levhita.net/?p=475</guid>
		<description><![CDATA[&#160; La gente de Microsfot tiene un nuevo proyecto, se llama Bizspark y busca &#8220;Acelerar el éxito de tu startup a través de software, soporte,  visibilidad&#8221;. Sin duda es una propuesta interesante que en Guadalajara se está materializando con un ciclo de conferencias, cursos en varias tecnologías de Microsoft y 50 fabulosas becas. Tan fabulosa oferta está [...]]]></description>
			<content:encoded><![CDATA[<p>&nbsp;</p>
<p><a href="http://blog.levhita.net/wp-content/uploads/2011/11/postermicrosoft2.jpg"><img class="alignright size-medium wp-image-476" title="postermicrosoft2" src="http://blog.levhita.net/wp-content/uploads/2011/11/postermicrosoft2-200x300.jpg" alt="" width="200" height="300" /></a>La gente de Microsfot tiene un nuevo proyecto, se llama <a title="Microsoft Bizspark" href="http://www.microsoft.com/bizspark/" target="_blank">Bizspark</a> y busca &#8220;Acelerar el éxito de tu startup a través de software, soporte,  visibilidad&#8221;. Sin duda es una propuesta interesante que en Guadalajara se está materializando con un ciclo de conferencias, cursos en varias tecnologías de Microsoft y 50 fabulosas becas.</p>
<p>Tan fabulosa oferta está siendo llevada, traída y promovida en incubadoras, universidades, centros dedicados a tecnología y cualquier otro lugar que se deje (sin duda Microsoft sabe lo que hace en cuanto marketing, no por nada su plantilla de licenciados en Marketing supera 3 a 1 la de ingenieros).</p>
<p>No me ha pasado desapercibido que al menos en 3 ocasiones me han tratado de pasar por buena esta oportunidad y que se espera que HackerGarage como conjunto la promueva de la misma forma que lo haría cualquier otra institución interesada en crear masa crítica de startups en Jalisco.</p>
<p>Pero no, al menos en mi muy personal opinión(Lo que otros miembros del HG hagan es su muy personal problema) el programa de Microsoft BizSpark, no se merece más merito que aquellos programas de ayuda a los centros educativos donde por medio de licencias gratuitas y capacitación, buscan crear más usuarios amarrados a sus productos. (De entrada el que la portada de presentación del programa tenga sólo el nombre del programa y una leyenda legal te da una idea de que sin importar que tan cool lo hagan sonar los de marketing, no deja de ser Microsoft).</p>
<p>Microsoft en este caso está poniendo un gran énfasis en interoperatibilidad,  aceptando el hecho de que su tecnología no es la única y que en ningún caso puede proveer el stack completo que permita a una startup tener éxito, bien ya es un avance, aún así la elección de tecnologías para tu startup es demasiado importante como para tener que tomarla por estar amarrado a algún apoyo de una institución de 3ros.</p>
<p>Recuerda ante todo que la compañía que produce el software sobre el que estás basando tu emprendimiento, es al final de cuentas tu socio tecnológico, y como bien dice Jhon Maddog, yo no conozco a nadie que haya recibido una resolución de un reporte de bug por parte de Microsoft.</p>
<p>Tomemos por ejemplo la metodología de Lean Startup, basada en años de investigación sobre startups de éxito, en su libro y en su blog Erick Ries menciona que <a title="The lean startup" href="http://www.startuplessonslearned.com/2008/09/lean-startup.html" target="_blank">el elemento común es el uso de software libre en el stack de aplicación</a>, a quien carajos se le ocurre entonces que el apoyo de Microsoft con un par de licencias de software y algo de capacitación es suficiente para arriesgarse con tu startup (Como si de por sí la estadística de que 1/10 startups fracasan no fuera suficiente riesgo).</p>
<p>El software libre te permite iniciar sin costos, con una gran comunidad detras y lo más importante, <strong>rápido</strong>. ¿Quiéres una nueva red de blogs para ganar dinero con publicidad por ejemplo?, te instalas un vil WordPressMU y estás funcionando en 1 mes, en lugar de gastar 6 meses desarrollando en C# un prodigio tecnológico para al final darte cuenta de que a nadie le importa una red de blogs más y que sólo google y facebook pueden hacer dinero con publicidad.</p>
<p>Por supuesto no está de más conocer las herramientas de Microsoft, y si les interesa saber programar en esas herramientas, adelante, vayan y concursen por las becas, aprendan un poco de lo que Microsoft piensa que significa HTML5, y saquenle todo el provecho que puedan.</p>
<p>Sólo recuerden que su tiempo también es valioso, y aprender una herramienta que sólo podrán usar gratis bajo las condiciones que Microsoft diga al final podría terminar mordiéndoles el trasero.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.levhita.net/2011/11/15/microsoft-bizspark/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>PDT: ohh la gloria!!</title>
		<link>http://blog.levhita.net/2008/03/16/pdt-ohh-la-gloria/</link>
		<comments>http://blog.levhita.net/2008/03/16/pdt-ohh-la-gloria/#comments</comments>
		<pubDate>Sun, 16 Mar 2008 22:16:09 +0000</pubDate>
		<dc:creator>Argel Arias</dc:creator>
				<category><![CDATA[PlanetaLinux]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[PDT]]></category>
		<category><![CDATA[Zend debugger]]></category>

		<guid isPermaLink="false">http://blog.levhita.net/2008/03/16/pdt-ohh-la-gloria/</guid>
		<description><![CDATA[Este fin de semana por fin me instale el Eclipse PDT con el Zend Debugger y es la neta del planeta, algo complicado de entenderlo comparado con soluciones mas simples como jEdit (mi editor de planta durante 3 años). Más que nada por al contrario de JEdit que comienzas con nada y añades los plugins [...]]]></description>
			<content:encoded><![CDATA[<p>Este fin de semana por fin me instale el <a href="http://www.eclipse.org/pdt/">Eclipse PDT</a> con el <a href="http://www.zend.com/en/community/pdt#ws_debugger">Zend Debugger</a> y es la neta del planeta, algo complicado de entenderlo comparado con soluciones mas simples como jEdit (mi editor de planta durante 3 años).</p>
<p>Más que nada por al contrario de JEdit que comienzas con nada y añades los plugins que quieres(haciendo escalada la transición de newbie a experto), Eclipse  o mejor dicho PDT, ya viene de planta con mil cosas encima y son pocas las cosas que restan por añadir (en mi caso Subversion y el Zend WebServer Debugger), haciendo que la interfaz sea algo recargada y complicada para alguien con no haya usado antes el ZendStudio o alguna herramienta similar.</p>
<p>Unos consejos de lo poco que ví hoy:
<ul>
<li>Yo instale el All-In-One package de PDT desde la página de Zend: <a href="http://www.zend.com/en/community/pdt">http://www.zend.com/en/community/pdt</a></li>
</ul>
<p>Para ahorrarme pasos, también pueden instalarlo desde eclipse e instalar el Zend Debugger desde el sistema de paquetes.
<ul>
<li>También hay que instalar el Web Server Debugger, para que puedas debuggear en tu localhost o donde sea que necesites, las instrucciones son bastante sencillas.</li>
</ul>
<p>Funciona como un WebService, de forma que tienes que tener un Cliente(eclipse) y un Servidor(Apache configurado con el Zend Debugger) para poder debuggear.
<ul>
<li>Si vas a hacer un proyecto controlado desde svn, primero instala el paquete de Subversion <a href="http://subclipse.tigris.org/">SubEclipse</a>, y haz tu &#8220;nuevo proyecto desde SVN&#8221;, una vez descargado el Wizard te ayudara a crear tu &#8220;nuevo proyecto PHP&#8221;.</li>
</ul>
<p>Ahora con esta herramienta no me pasara lo que paso aquel día pasado:</p>
<p>El Jueves de la semana pasada estuve programando una pequeña modificación a un sistema que hice hace un buen rato en <a href="http://ld.com.mx/">Logística Dynamica</a>, la modificación era tan simple como añadir a una tabla la hora y fecha del acceso de los usuarios, así como el cliente el proyecto con el que iniciaron sesión.</p>
<p>Sólo fue cosa de crear una tabla nueva, escribir 4 lineas de código y hacer un <span style="font-style: italic;">commit</span> al repositorio.</p>
<p>En el servidor sólo fue necesario correrla consulta de modificación y hacer un <span style="font-style: italic;">update</span>.</p>
<p>Después de todo esta es una modificación extremadamente sencilla.</p>
<p>Pues bien&#8230; en servidor el código tronó como palomita y para acabarla el código tronaba antes de poder ejecutar el subsistema de <span style="font-style: italic;">debug</span> que me escribe los errores en una tabla de la base de datos.</p>
<p>Me tuve que dar una segunda vuelta a Logística para reparar el sistema, pelearme con mi Laptop que aun tiene Ubuntu 5.10(la tengo muy abandonada a la pobre) y pasarme media hora depurando capa tras capa de abstracción(Esto del módelo MVC es la onda hasta que te encuentras con un error en lo profundo del código).</p>
<p>El maldito error estaba en la ultima de todas la capas que puede tocar un desarrollador web sin meterse al código de la base de datos&#8230; en la base de datos, resulta que el usuario de la base de datos, no tenia permiso para escritura.</p>
<p>En un sistema normal, esto hubiera provocado solamente un error a pantalla, pero en mi código&#8230; al no poder insertar la fila, llama al sistema de debug, para escribir en la tabla que no puede escribir&#8230; pero al escribir también fallaba y llamaba al sistema de debug, para escribir en la tabla que no puede escribir&#8230; pero al escribir también fallaba y llamaba al sistema de debug, para escribir en la tabla que no puede escribir&#8230; pero al escribir también fallaba y llamaba al sistema de debug, para escribir en la tabla que no puede escribir&#8230; pero al escribir también fallaba y llamaba al sistema de debug, para escribir en la tabla que no puede escribir&#8230; pero al escribir también fallaba y llamaba al sistema de debug, para escribir en la tabla que no puede escribir&#8230; pero al escribir también fallaba y llamaba al sistema de debug, para escribir en la tabla que no puede escribir&#8230; pero al escribir también fallaba y llamaba al sistema de debug, para escribir en la tabla que no puede escribir&#8230; pero al escribir también fallaba y llamaba al sistema&#8230;..</p>
<p>Hasta que se llega al límite de recursión de PHP y el servidor truena el hilo&#8230; como resultado yo no veo al maldito error por ningún lado&#8230; demonios!!!</p>
<p>Al final tuve que volver a dejar todo el código modificado para debuggear el error justo como al inicio de todo el show y cambiar los permisos.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.levhita.net/2008/03/16/pdt-ohh-la-gloria/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Send email using Gmail and PHPMailer</title>
		<link>http://blog.levhita.net/2008/03/13/send-email-using-gmail-and-phpmailer/</link>
		<comments>http://blog.levhita.net/2008/03/13/send-email-using-gmail-and-phpmailer/#comments</comments>
		<pubDate>Thu, 13 Mar 2008 16:59:20 +0000</pubDate>
		<dc:creator>Argel Arias</dc:creator>
				<category><![CDATA[PlanetaLinux]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[gmail]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[phpmailer]]></category>
		<category><![CDATA[pop]]></category>
		<category><![CDATA[smtp]]></category>

		<guid isPermaLink="false">http://blog.levhita.net/2008/03/13/send-email-using-gmail-and-phpmailer/</guid>
		<description><![CDATA[The new automatic update generator is ready, it has been a long time since OCRALight has been finished and little bit of this and that has been polished on the update generation. The process is fairly complex, it involves reverse-engineering, data-mining, packaging, distribution and a lot o fighting with our crappy Windows server that is [...]]]></description>
			<content:encoded><![CDATA[<p>The new automatic update generator is ready, it has been a long time since OCRALight has been finished and little bit of this and that has been polished on the update generation.</p>
<p>The process is fairly complex, it involves reverse-engineering, data-mining, packaging, distribution and a lot o fighting with our crappy Windows server that is between me and the final Linux liberation.</p>
<p>Every step in the road has been automatized, one by one, every problem has been solved and polished, now the final piece is in his place, the automatic email generation. Now the updates will be made and send everyday, even weekends and vacations.</p>
<p>If you are interested in the technical aspect keep reading:<br />
<span id="more-307"></span></p>
<p>How it has been done:</p>
<p>First of all, you need to have PHP with OpenSSL support, for Windows you&#8217;ll need to Install PHP and carefully select OpenSSL in the components list, if you already have PHP installed, don&#8217;t worry a re-install will keep your configuration, and you&#8217;ll be able to select OpenSSL.</p>
<p>Then download <a href="http://phpmailer.codeworxtech.com/">PHPMailer</a>,&amp;amp;nbsp; and extract it near your main php file.</p>
<p>You will need to have a Gmail account(obviously) I recommend you to make a new one just for this, mainly because the configuration need to be very precise, and you wouldn&#8217;t be able to use it freely without loosing functionality or risking to break the configuration.</p>
<p>Configure your Gmail account to use POP mail, but not IMAP, ONLY POP, just POP.</p>
<p>And now the code:</p>
<div class="blockcode" style="font-family: monospace; line-height:1.3em; width: 90%; height: 200px; border: 1px solid black; padding: 10px; white-space:nowrap; overflow:auto;"><span style="color: #000000; font-weight: bold;">&lt;?php</span><br />
<span style="color: #b1b100;">require</span><span style="color: #66cc66;">&#40;</span>”PHPMailer/<span style="color: #000000; font-weight: bold;">class</span>.phpmailer.php”<span style="color: #66cc66;">&#41;</span>;</p>
<p><span style="color: #0000ff;">$update_emails</span> = <a href="http://www.php.net/array"><span style="color: #000066;">array</span></a><span style="color: #66cc66;">&#40;</span><br />
&nbsp; &nbsp; ‘Juan Perez’ =&gt; ‘Juan_Perez@jalisco.gob.mx’,<br />
&nbsp; &nbsp; ‘Francisco Garcia’ =&gt; ‘fgarcia@hotmail.com’,<br />
&nbsp; &nbsp; ‘Diana la del Tunel’ =&gt; ‘diana@gmail.com’<br />
&nbsp; <span style="color: #66cc66;">&#41;</span>;</p>
<p><a href="http://www.php.net/echo"><span style="color: #000066;">echo</span></a> “\nSending Update Email\n”;</p>
<p><span style="color: #0000ff;">$mail</span> = <span style="color: #000000; font-weight: bold;">new</span> PHPMailer<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;&nbsp; <span style="color: #808080; font-style: italic;">// Instantiate your new class</span><br />
<span style="color: #0000ff;">$mail</span>-&gt;<span style="color: #006600;">IsSMTP</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #808080; font-style: italic;">// set mailer to use SMTP</span><br />
<span style="color: #0000ff;">$mail</span>-&gt;<span style="color: #006600;">SMTPAuth</span> = <span style="color: #000000; font-weight: bold;">true</span>;&nbsp; &nbsp;<span style="color: #808080; font-style: italic;">// turn on SMTP authentication</span><br />
<span style="color: #0000ff;">$mail</span>-&gt;<span style="color: #006600;">Host</span> = “smtp.gmail.com”; <span style="color: #808080; font-style: italic;">// specify main and backup server</span><br />
<span style="color: #0000ff;">$mail</span>-&gt;<span style="color: #006600;">SMTPSecure</span>= ’ssl’; <span style="color: #808080; font-style: italic;">//&nbsp; Used instead of TLS when only POP mail is selected</span><br />
<span style="color: #0000ff;">$mail</span>-&gt;<span style="color: #006600;">Port</span> = <span style="color: #cc66cc;">465</span>;&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #808080; font-style: italic;">//&nbsp; Used instead of 587 when only POP mail is selected</span></p>
<p><span style="color: #0000ff;">$mail</span>-&gt;<span style="color: #006600;">Username</span> = “youremail@gmail.com”;&nbsp; <span style="color: #808080; font-style: italic;">// SMTP username, you could use your google apps address too.</span><br />
<span style="color: #0000ff;">$mail</span>-&gt;<span style="color: #006600;">Password</span> = “yaourextremelynotlamepassword”; <span style="color: #808080; font-style: italic;">// SMTP password</span></p>
<p><span style="color: #0000ff;">$mail</span>-&gt;<span style="color: #006600;">From</span> = “youremail@gmail.com”; <span style="color: #808080; font-style: italic;">//Aparently must be the same as the UserName</span><br />
<span style="color: #0000ff;">$mail</span>-&gt;<span style="color: #006600;">FromName</span> = “Your name”;<br />
<span style="color: #0000ff;">$mail</span>-&gt;<span style="color: #006600;">Subject</span> = ‘The subject’;<br />
<span style="color: #0000ff;">$mail</span>-&gt;<span style="color: #006600;">Body</span> = “The body of your message”;</p>
<p><span style="color: #b1b100;">foreach</span> <span style="color: #66cc66;">&#40;</span><span style="color: #0000ff;">$update_emails</span> <span style="color: #b1b100;">as</span> <span style="color: #0000ff;">$name</span> =&gt; <span style="color: #0000ff;">$email</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span><br />
&nbsp; <span style="color: #0000ff;">$mail</span>-&gt;<span style="color: #006600;">AddBcc</span><span style="color: #66cc66;">&#40;</span><span style="color: #0000ff;">$email</span>, <span style="color: #0000ff;">$name</span><span style="color: #66cc66;">&#41;</span>;<br />
<span style="color: #66cc66;">&#125;</span></p>
<p><span style="color: #b1b100;">if</span><span style="color: #66cc66;">&#40;</span>!<span style="color: #0000ff;">$mail</span>-&gt;<span style="color: #006600;">Send</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><br />
<span style="color: #66cc66;">&#123;</span><br />
&nbsp; <a href="http://www.php.net/echo"><span style="color: #000066;">echo</span></a> “There was an error sending the message:” . <span style="color: #0000ff;">$mail</span>-&gt;<span style="color: #006600;">ErrorInfo</span>;<br />
&nbsp; <a href="http://www.php.net/exit"><span style="color: #000066;">exit</span></a>;<br />
<span style="color: #66cc66;">&#125;</span><br />
<a href="http://www.php.net/echo"><span style="color: #000066;">echo</span></a> “Done…\n”;<br />
<span style="color: #000000; font-weight: bold;">?&gt;</span><br />
&nbsp;</div>
<p><br style="font-family: sans-serif;" /><span style="font-family: sans-serif;">In this code I send the email to a group of people, thus I use the &#8220;Bcc:&#8221; field instead of the &#8220;To:&#8221; one, to add a &#8220;To:&#8221; you would use <span style="font-family: Courier New;">AddAddress($email, $name)</span>.</p>
<p>A possible upgrade would be to use a MySQL database to store the addresses,&amp;amp;nbsp; and provide a web interface to add and remove them. for the moment, this is enough.</p>
<p>Soo remember:</p>
<p></span></span>
<ol>
<li>PHP with OpenSSL<br />
<span style="font-family: Courier New;"><span style="font-family: sans-serif;"></span></span></li>
<li><span style="font-family: Courier New;"><span style="font-family: sans-serif;">PHPMailer</span></span></li>
<li><span style="font-family: Courier New;"><span style="font-family: sans-serif;">Create a Gmail Account<br />
</span></span></li>
<li><span style="font-family: Courier New;"><span style="font-family: sans-serif;">Activate POP</span></span></li>
<li><span style="font-family: Courier New;"><span style="font-family: sans-serif;">Host: smtp.gmail.com</span></span></li>
<li><span style="font-family: Courier New;"><span style="font-family: sans-serif;">SMTPAuth=true</span></span></li>
<li><span style="font-family: Courier New;"><span style="font-family: sans-serif;">SMTPSEcure=ssl</span></span></li>
<li><span style="font-family: Courier New;"><span style="font-family: sans-serif;">Port: 465</span></span></li>
<li><span style="font-family: Courier New;"><span style="font-family: sans-serif;">User with Domain<br />
</span></span></li>
<li><span style="font-family: Courier New;"><span style="font-family: sans-serif;">Password</span></span></li>
<li><span style="font-family: Courier New;"><span style="font-family: sans-serif;">$Mail-&amp;amp;gt;send()</span></span></li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://blog.levhita.net/2008/03/13/send-email-using-gmail-and-phpmailer/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
	</channel>
</rss>

