martes, febrero 26, 2013

Todo mundo debería aprender a programar... [DOCUMENTAL]

Hay un par de sitios de los que quiero hablarles que están relacionados con el aprendizaje online y en especial en "aprender a programar". Y uno de los primeros lugares en los que creo que tengo que comenzar es code.org.

Code.org esta impulsando una interesante campaña para promover que las escuelas en Estados Unidos impartan a sus jóvenes clases de programación, sinceramente la idea me parece genial. Leer y escribir código es una habilidad que con el tiempo adquiere mas y más importancia, y no por el hecho de que se necesitan programadores o te quieras convertir en uno. Es porque aunque no te dediques a la informática de manera formal, si hay una computadora involucrada con tu trabajo, probablemente saber algo de programación te va a servir.

Bueno, sin dar tanta vuelta, mejor les comparto el pequeño documental que code.org ha publicado respecto al tema, con la participación de algunos personajes de la industria como: Bill Gates, Mark Zuckerberg, will.i.am, Chris Bosh, Jack Dorsey, Tony Hsieh, Drew Houston, Gabe Newell, Ruchi Sanghvi, Elena Silenok, Vanessa Hurst y Hadi Partovi (no se queden sin ver esto).


Pueden visitar el sitio de code.org dando clic acá:
 http://www.code.org/
La mayoría de lectores de este blog son de: México  España, Venezuela, Colombia y El Salvador. ¿Cómo ven ustedes este tema de enseñar a programar a niños y jóvenes en sus países?

lunes, febrero 25, 2013

Indenta archivos XML con Foxe [HERRAMIENTA]

Antes de que me ahorquen por usar: "Indentar", se que la palabra correcta es "Sangría", pero por ser informático estoy mas acostumbrado a usar el anglicismo pecador que ven en el titulo :)

Si estas buscando una forma sencilla de indentar o revisar archivos XML, Foxe puede ser la herramienta justa para ese "sucio" trabajo. En Foxe (First object XML editor) puedes cargar los archivos XML/HTML (o que tengan algún tipo de markup), para luego darles indentación, hacerles validación DTD con MSXML, explorar el "XML Path" o simplemente editar el contenido del archivo directamente.

"Editando archivos xml con Foxe"
En especial, lo que más me gusta de Foxe, son dos cosas:
  1. Maneja Unicode, UTF-8 con o sin BOM de forma impecable
  2. Y es portable, ya que es un solo archivo .exe de menos de 700 kb
Les dejo un video del autor que demuestra la funcionalidad de esta sencilla pero útil herramienta:


Pueden descargar Foxe en su sitio oficial:
http://www.firstobject.com/dn_editor.htm
Espero que les sirva mucho, ¡saludos!

domingo, febrero 24, 2013

Regex One [TUTORIAL]

Siempre que menciono expresiones regulares a algún colega (ojo, que escribí "algún"), siempre me sorprende la ligera de reacción de desconcierto, duda o temor, que inclusive yo he vivido mas de alguna vez con este tema. En algún momento pensé en hacer un articulo dedicado enteramente a las diferentes expresiones regulares, aprovechando para aprender mas sobre el tema y compartir el conocimiento, pero encontré primero el sitio de "Regex One", que consiste en un tutorial interactivo, y como siempre la practica es mejor que la teoría  pues mejor compartir este invaluable recurso para tener en su "developer toolbox" ;)

Regex One bastante bueno, en menos de una hora estoy seguro que sentirán que han comprendido mucho mas el mundillo de las expresiones regulares, y también se que le encontraran mucha mas utilidad al constructor de expresiones regulares del que ya hemos hablando con anterioridad.

Creo firmemente en que todo programador debe saber un poco de regex, si eres un novato o no has practicado últimamente (en lo personal, yo soy un novato que no practica), pues deberías darte una pasada por el sitio y desempolvar tus conocimientos sobre el tema. Ciertamente el conocimiento de las expresiones regulares siempre es útil y en mas de alguna ocasión  pues te pudiera salvar la vida al revisar logs de 4 o 5 GB, o simplemente para salvar el mundo:

"Fuente: http://xkcd.com/208/"

Comics aparte, pueden visitar el sitio de Regex One aquí:
http://regexone.com/
Espero que este sitio les sea de utilidad, a mi me ha servido y me recordó un par de trucos que había olvidado, ¡Saludos!

domingo, febrero 17, 2013

TPB AFK [DOCUMENTAL]

TPB AFK o The Pirate Bay Away From Keyboard, es un interesante documental que trata sobre los fundadores de "The Pirate Bay", el popular sitio de trackers de archivos .torrent de magnet links para distribuir archivos usando Bittorrent.
No crean que el documental esta relacionado a la infraestructura, programación o retos técnicos de mantener el tracker más grande del mundo (o por lo menos ser el tracker el más visitado con un global rank de 74), para nada, más bien trata de las dificultades que enfrentaron sus fundadores, especialmente con las compañías que se ven afectadas por que su contenido se encuentre "ahí" y con su interminable lucha en la "guerra de derechos de autor".

El documental no tiene fines lucrativos aparentemente, porque se puede ver completo en YouTube, pero para aquellas personas que sienten el imperioso deseo de apoyar el proyecto (el documental y TPB) lo pueden hacer pagando $10.00 por una copia digital (DRM Free) y $23 por una copia física.

Muy interesante el documental, por veces sofocante (en lo personal, el juicio así me parece), pero en general muy bueno: no dejen de verlo. Los dejo con la sinopsis, el vídeo en YouTube y el sitio oficial.

Sinopsis:
"It’s the day before the trial starts. Fredrik packs a computer into a rusty old Volvo. Along with his Pirate Bay co-founders, he faces $13 million in damage claims to Hollywood in a copyright infringement case. Fredrik is on his way to install a new computer in the secret server hall.
This is where the world’s largest file sharing site is hidden. When the hacker prodigy Gottfrid, the internet activist Peter and the network nerd Fredrik are found guilty, they are confronted with the reality of life offline – away from keyboard. But deep down in dark data centres, clandestine computers quietly continue to duplicate files."
Video:


Sitio oficial:
http://watch.tpbafk.tv/

Espero que les guste, ¡saludos!

martes, febrero 12, 2013

Obten 50 GB en Box de por vida [OFERTA]

¿Conocen que es Box?, básicamente es la competencia de Dropbox, y gracias a una oferta, pueden obtener 50 GB de forma gratuita y de por vida para su uso.

"La promoción"

Basta con usar la siguiente URL para registrar tu cuenta y se obtiene el espacio de inmediato:
https://www.box.com/signup/o/dell_50gb_give_get
Aquí les comparto la evidencia de mi cuenta, recién salida del horno ;)

"Como lo prometen: 50.0 GB de almacenamiento"
Más adelante, creo que sería conveniente comparar ambos servicios (Dropbox vs Box), pero por el momento los convido a que hagan el sign-up ¡ya!.
Espero que aprovechen el tip y les sea de utilidad. Saludos!





miércoles, febrero 06, 2013

Depura el envió de correos con "smtp4dev" [HERRAMIENTA]

Casi siempre que se hacen aplicaciones web, surge la necesidad de notificar al usuario por correo sobre algún suceso, ya sea registro, suscripción u otro. Así que como developer, siempre nos vemos en la necesitad de probar código para enviar correo. La practica nos enseña que no hay que esperar hasta último momento (ya en producción) para probar el envió de correos, pero usualmente probar estas funcionalidades es un dolor de cabeza, especialmente en Windows (¿quien ya ha configurado un servidor smtp en Windows?).

Pues para aliviar esta carga, les quiero compartir esta sencilla herramienta, que francamente me salvo la vida muchísimas veces para probar envíos de correo, se llama "smtp4dev".
Realmente no hay mucho que ver o explicar, smtp4dev es un sencillo programa que se aloja en el taskbar y escucha el puerto 25, por cualquier correo entrante.

"Bandeja de entrada de smtp4dev"

Entonces si usas Java Mail o la funcion mail() de PHP para enviar un correo, smtp4dev lo recibe y te despliega una notificación de recibido, el correo "recibido" lo pueden abrir con Thunderbird o Outlook sin mayor problema.

"Notificación de correo entrante"

Simple, funcional y open source ¿qué más se puede pedir?, pueden descargar smtp4dev acá:
http://smtp4dev.codeplex.com/
Espero que les sirva, tanto como me ha servido (y lo sigue haciendo!)
Saludos!

martes, febrero 05, 2013

Comprendiendo archivos .dmp de Windows [GUIA]

Con la promoción que les menciona hace unos días, logre comprar mi licencia de Windows 8, y en medio de todo ha sido una buena experiencia, no me puedo quejar. Sin embargo, Windows... es Windows y siempre da uno que otro problema, especialmente con hardware" no muy estándar  (entiéndase chino), y con problema me refiero a la usual BSOD, solo que ahora es un poco más amena:

Si, esta es la nueva BSOD, cómica ¿verdad?.
Bien, el punto es que la BSOD era muy temida usualmente por la falta de información que esta muestra (o al menos la información comprensible), sin embargo un BSOD siempre esta acompañado por un "dump" (un archivo .dmp que esta en el %systemroot%), que suele ser el volcado de la memoria RAM en ese momento en el que ocurrió el error.
Este curioso archivo .dmp, con las herramientas adecuadas, puede después de unos cuantos simples pasos, ayudar a diagnosticar el problema que genero la BSOD en primer lugar. Sin mayor preámbulo, les comparto la guía practica para diagnosticar un .dmp generado en una BSOD:

Paso 1: Descargar los "debugging tools":
http://msdn.microsoft.com/en-us/windows/hardware/gg463009.aspx
Este vinculo es valido para las versiones de Windows Server 2012 y Windows 8 Consumer debugger tools, Windows 7, Vista, XP y Windows Server 2003. Como mencione lo único que necesitan para comenzar es descargar es el "Debugging Tools for Windows", los demás paquetes salen del alcance de este artículo.

Paso 2: Después de instalar el "Debugging Tools", abra una consola como administrador (CMD) y vaya a la ruta donde se aloja el programa recién instalado, en mi caso: "C:\Program Files (x86)\Windows Kits\8.0\Debuggers\x86>".

Sea bueno y siga instrucciones.

Paso 3: Una vez ubicado en la ruta mencionada, digita el siguiente comando:

kd.exe –z C:\Windows\MEMORY.dmp (o la ruta a tu archivo .dmp)

Paso 4: Aparecerá un "prompt", donde los comandos empiezan con un punto (vaya, ¡la creatividad!), y en este prompt ahora introduzca:
.logopen c:\debuglog.txt
Paso 5: Otra instrucción más:
 .sympath srv*c:\symbols*http://msdl.microsoft.com/download/symbols
Paso 6: Otra instrucción totalmente comprensible:
.reload;!analyze -v;r;kv;lmnt;.logclose;q
¡Y listo! Después de estas instrucciones donde queda absolutamente claro que es lo que esta sucediendo, podemos tranquilamente ir a revisar el archivo "c:\debuglog.txt" con nuestro editor de texto favorito (Notepad++) y buscar "PROCESS_NAME". Usualmente, a la par de esta cadena de texto, aparece el driver (.sys) o programa (.exe) que causo el incidente:

Maldita sea... WTF?
Si bien el proceso es un poco ... eh... esotérico, ayuda mucho a ubicar el problema raíz que afecte a nuestra PC. Espero que a más de algún alma le sirvan estos pasos, yo ya resolví un problema de driver de sonido con esto, de primera mano les aseguro que funciona ;) cualquier duda estamos a la orden.
¡Saludos!

Sunsetting Sr. Byte.

El Sr. Byte ha estado más de 5 años inactivo. Digamos que estaba en " code freeze ". Pero ahora es el último release. Quizas no...