Ayer Blackhand -el amigo monocromático- me paso este comic de xkcd, no pude evitar reirme, si son geeks compartiran mi reacción.

Ayer Blackhand -el amigo monocromático- me paso este comic de xkcd, no pude evitar reirme, si son geeks compartiran mi reacción.

Tengo el agrado de anunciar que este miércoles 2 de Julio daré una charla titulada Django, desarrollo web veloz y de calidad en la UNMSM por la semana de Computación Científica.
Para los interesados:
Lugar: Campus Universitario de la UNMSM - Facultad de Ciencias Matemáticas
Dirección: Av. Venezuela Puerta Nro 1- Pabellon Nuevo 3er piso
Fecha y Hora: Miércoles 2 de Julio a las 7pm.
No he encontrado un enlace al horario del evento, si alguien lo conoce comuniquelo para publicarlo.
Están invitados.
Update:
Ya tengo el horario de las conferencias, descargenlo con gusto.
Instructions on how to read this on the sidebar
.
Me siento tan extraño, estuve trabajando todo el día y recién a las 9pm me entero de la noticia, entro a ver el stock YHOO y encuentro un aumenot de 47%.
Por suerte es sólo una propuesta, en verdad no me gustaría que Yahoo acepte y se venda… en realidad 44,6 billones, es una cantidad de dinero que no me imagino, si son Billones, Miles de millones, Billions, ya no se comparar números de esas magnitudes. Sólo se que no quiero que se realice la compra
¿ Alguna vez de niños no soñaron con volar ?, si su respuesta es negativa fueron unos infantes muy raros dejenme decirles.
Yo si. A una personalidad algo soñadora agreguenle gran cantidad de ciencia ficción y entenderán lo interesado que estuve apenas leí sobre un jet personal en discovery magazine.
Pensado con fines militares ha sido desarrollado en Alemania por ESG Elektroniksystem and Drager Aerospace (si, el alemán es un idioma para entrenar perros).
Hola a todos
Los próximos Viernes 07 y Sábado 08 de Marzo, tendremos un evento fuera de lo
común en Lima, gracias al apoyo de la Fundación GNOME tendremos con
nosotros a algunos colaboradores y desarrolladores latinoamericanos
del proyecto.
Nos visitan:
- Germán Poó-Caamaño (GNOME, Universidad del Bio-Bio - Chile)
- Fernando San Martín Woerner (GNOME, Universidad Autónoma de Chile - Chile)
- Pedro Villavicencio (GNOME, Canonical Ltd - Chile)
- Manuel Cerón (MonoUML - Colombia)
¿Dónde? en la sede de la Facultad de Ingenieria de Sistemas, Computo y
Telecomunicaciones de la Universidad Inca Garcilaso de la Vega (Lima).
El ingreso es libre aunque necesitarán inscribirse. Eso y conocer más
detalles del evento lo puedes hacer desde la web:
http://www.involucrate.org/2008/3/
Para registrase http://www.involucrate.org/2008/3/registro/
Si no eres de Lima o Perú y planeas venir a participar, puedes
contactarte con nosotros vía la lista de DebianPerú[0] o el foro[1] y
con gusto te daremos orientación sobre la mejor manera de llegar y
donde alojarte.
No olvides que puedes comenzar a involucrarte en el evento desde ya;
¡reenvía este correo a todos tus conocidos, dile a tus amigos sobre el
evento, ponlo en tu blog, linkea la web!.
¡Falta poco para Marzo!
El equipo de Involucrate.org
0 - http://listas.apesol.org/listinfo.cgi/debian-apesol.org/
1 - http://www.debianperu.org/forum/37/
Difunde en donde puedas este mensaje, contamos contigo ![]()
Involucrate Lima Charlas Software+Libre Gnome
Ya salió el segundo programa que grabamos junto con Arturo en Impagable.
Desmintiendo eso de segundas partes nunca fueron buenas, nos toco departir sobre lo que se nos viene este 2008 en el campo de la tecnología, tal y como expresa el resumen.
Cada año es un cumulo de promesas en el siempre imprevisible campo de la tecnología. Este 2008 viene con su cuota de promesas bajo el brazo. Nuevas tecnologías, nuevos productos, nuevos formatos, alguna probable revolución, todos los cambios que se vienen prometen un año movido.
Una experiencia muy agradable, sobre todos los comentarios al video
El ya famoso artículo, cuyo título en castellano lo es de este post, ha suscitado comentarios y reacciones varias pese a las relativamente pocas lineas que contiene.
La premisa del artículo es simple: la calidad de los graduados en Ciencias de la Computación esta cayendo debido al uso de Java como lenguaje introductorio a la programación, lo cual acarrea problemas de origen que se arrastran a través de toda la carrera.
Ya la introducción deja en claro esta posición de los autores.
Desde nuestro punto de vista la educación en Ciencias de la Computación esta fallando en habilidades básicas, en particular en las áreas de programación y métodos formales. consideramos que la adopción general de Java como primer lenguaje de programación es en parte, responsable de esta decadencia. Examinaremos brevemente el conjunto de habilidades en programación que deben ser parte del repertorio de todo profesional del software.
It is our view that Computer Science (CS) education is neglecting basic skills, in particular in the áreas of programming and formal methods. We consider that the general adoption of Java as a first programming language is in part responsible for this decline. We examine briefly the set of programming skills that should be part of every software professional’s repertoire.
La decadencia a la que hace mención la resumen en los siguientes tres puntos:
1. Los requerimientos de matemáticas en los programas de CS disminuyen.
2. El desarrollo de habilidades en varios lenguajes esta dando paso a aproximaciones “receta de cocina” usando librerias y paquetes a medida.
3. Las capacidades resultantes son insuficientes para la industria del software actual (en particular para propositos de seguridad) e infortunadamente, encaja bien con lo que la industria de outsorcing ofrece. Estamos formando profesionales fácilmente reemplazables.
1. Matemáticas requirements in CS programs are shrinking.
2. The development of programming skills in several languages is giving way to cookbook approaches using large libraries and special-purpose packages.
3. The resulting set of skills is insufficient for today’s software industry (in particular for safety and security purposes) and, unfortunately, matches well what the outsourcing industry can offer. We are training easily replaceable professionals.
Algo preocupante para Estados Unidos, teniendo en cuenta la enorme cantidad de profesionales en la materia formados tanto en China como India. Y para todo occidente y en especial América, considerando que USA marca la pauta en la alta tecnología por estos lares.
Y no es algo teórico el tener profesionales menos capacitados, la competitividad de un país se mide por la de sus habitantes, y que competencia puede tener una nación donde la calidad de su educación baja. La empresas se ven en problemas al reclutar personal, deben tercerizar en otros países con la consecuente perdida de capitales y empleos.
Métodos Formales y Construcción de Software
La decadencia se hace sentir en todas la áreas, la falta de formación en matemáticas y métodos formales conlleva a problemas como el nopoder contratar empleados con las necesarias competencias en matemáticas para determinadas tareas.
SPARK es un subconjunto de Ada con añadidos que permiten al diseñador probar importantes propiedades de un programa:fin, ausencia de excepciones en tiempo de ejecución, uso de memoria, etc. Es obvio que este tipo de metodología de análisis y diseño (apodada Corrección por Construcción) va a añadir fiabilidad al diseño de un sistema cuyo diseño a envuelto SPARK desde el principio. No obstante, PRAXIS, la compañía desarrolladora de SPARK y que diseña iFACTS, encuentra difícil contratar personas con las necesarias competencias en matemáticas (y esto en el Reino Unido, donde los métodos formales son mas enseñados y usados que en USA).
SPARK is a subset of Ada augmented with assertions that allow the designer to prove important properties of a program: termination, absence of run-time exceptions, finite memory usage, etc. [2]. It is obvious that this kind of design and analysis methodology (dubbed Correctness by Construction) will add substantially to the reliability of a system whose design has involved SPARK from the beginning. However, PRAXIS, the company that developed SPARK and which is designing iFACTS, finds it hard to recruit people with the required mathematical competence (and this is present even in the United Kingdom, where formal methods are more widely taught and used than in the United States).
Dejando de lado la propaganda a Ada, nada sorprendente viniendo del presidente y vicepresidente de la compañía desarrolladora. Es preocupante el hecho de que las competencias en habilidades básicas como las matemáticas sean dejadas de lado en función del inmediatismo. Widgets en lugar de vectores, fonts en vez de derivadas, canvas por métodos numéricos.
Los problemas de Java como primer lenguaje de programación
Es innegable, Java es popular, y aunque no sea aficionado a este debo reconocer que es útil. Usado tanto para aplicaciones Web como para escritorio, la facilidad con que genera programas gráficos lo han vuelto un lenguaje enormemente difundido tanto en las empresas como universidades.
Pero esto trae un problema que ya he visto con otros lenguajes. Si uno aprende a programar usando un lenguaje gráfico como Java o peor aun VB, se ha acostumbrado a una respuesta vistosa al código escrito, una retroalimentación po demás defectuosa que en vez de incentivar el gusto por la lógica y la resolución de problemas, se queda en el aspecto estético, superficial, aficionado al novel programador a resolver rápidamente sus problemas, ensamblando componentes pre-hechos sin meditar mucho en lo que esta haciendo.
Dejennos proponer el siguiente principio: La irresistible belleza de la programación consiste en la reducción de complejos problemas formales a un pequeño conjunto de operaciones básicas. Java, en vez de exponer la belleza, anima al programador a adoptar un enfoque de plomero: rebuscar entre una multitud de cajas (¿ paquetes ?) donde terminará encontrando algún objeto (¿ una clase ?) que mal que bien hará lo que se desea. ¡Como lo hace no es interesante! El resultado es un estudiante que sabe como ensamblar un simple programa, pero que no sabe programar. Otro obstáculo del temprano uso de librerias y el framework de Java es que es imposible para el estudiante desarrollar un sentido del costo de ejecución de lo que ha escrito, ya que es muy difícil saber que método ejecuta que cosa.
Let us propose the following principle: The irresistible beauty of programming consists in the reduction of complex formal processes to a very small set of primitive operations. Java, instead of exposing this beauty, encourages the programmer to approach problem-solving like a plumber in a hardware store: by rummaging through a multitude of drawers (i.e. packages) we will end up finding some gadget (i.e. class) that does roughly what we want. How it does it is not interesting! The result is a student who knows how to puta simple program together, but does not know how to program. Otro pitfall of the early use of Java libraries and frameworks is that it is impossible for the student to develop a sense of the run-time cost of what is written because it is extremely hard to know what any method call will eventually execute.
Estoy de acuerdo en la crítica a Java y su uso indiscriminado de paquetes y librerias con finalidades educativas. Nada tan poco pedagógico como aprender a programar utilizando clases y paquetes a montones, miles de funciones listas para ser usadas, donde el trabajo no es la lógica sino la memoria para bucear entre montones de software ya escrito.
Pero no estoy de acuerdo con aplicar ese criterio al mundo comercial. En este muchas veces no se justifica sacrificar velocidad de desarrollo por ahorrar tiempo de ejecución, el tiempo del desarrollador vale más que el coste de hardware potente.
Un verdadero programador puede desarrollar en cualquier Lenguaje (C, Java, Lisp, Ada)
El lenguaje en que se forma un programador lo influencia en toda su vida profesional, pero eso no debe ser óbice para que adquiera competencias en otros lenguajes importantes. Un programador de C/C++ a su vez debería poder escribir código en Lisp de manera fluida, es el planteamiento de los autores. Lo comparto en parte pero debo discrepar. No dedicaría tiempo a lenguajes con tan poco uso (al menos en nuestro medio) como a C/C++ que son fundamentales para aprender a desarrollar de “en el mundo real”, por así decirlo.
A continuación hacen comentarios sobre los lenguajes mencionados.
C
Es un lenguaje de bajo nivel portable, que todos deberían conocer. Obliga al estudiante a conocer la máquina sobre la que programa forzándolo a conocer la relación entre el hardware y el software. Una excelente herramienta de aprendizaje usada a su vez en el mundo empresarial
C++
Descendiente de C, C++ le agrega conceptos fundamentales como clases, encapsulación, información protegida a través de datos privados y públicos entre otros, así como un manejo de memoria más simple pero no por eso más hipertrofiado.
Lisp
Este un lenguaje del cual he seguido un par de cursos en la universidad, y aunque en un principio me extraño por lo diferente que es a todo aquello que había visto antes le tome cierto interés por la forma tan fuera de lo común en que se resolvían problemas.
La programación funcional, sin estar tan extendida como la imperativa es un interesante ejercicio, abre horizontes y nuevas maneras de pensar además de ser muy usada en el procesamiento de lenguaje e inteligencia artificial.
Java
Luego de darle con palo a Java como lenguaje de formación, le reconocen dos virtudes que lo hacen importante.
1. Entendimiento de la concurrencia, donde sus hilos dan un bajo nivel básico.
2. Reflexión, un programa puede ser programado para examinar us propio estado y determinar su compartamiento en un entorno dinámico y cambiante
1. An understanding of concurrent programming (for which threads provide a basic low-level model).
2. Reflection, namely the understanding that a program can be instrumented to examine its own state and to determine its own behavior in a dynamically changing environment.
Ada
Este lenguaje nunca lo he usado, pero como mencioné no extraña que lo alaben si ellos son los desarrolladores del mismo.
Los lenguajes de programación no son toda la historia
No solo de lenguajes vive el hombre. Los estudiantes necesitan aprender otras materias como métodos de prueba del software, software que corra en tiempo real, métodos numéricos entre otras habilidades que se hacen indispensable para formar no monos, sino profesionales que sean capaces de afrontar problemas basados en un adecuado bagaje de conocimientos.
Días atrás recibí la amable invitación de Carlos para participar en Impagable, el nuevo vblog temático de Inventarte, los responsables de telúrica entre otros.
Acepté con gusto y el día señalado me dirigí al local de Inventarte, conversamos un rato con Carlos, llegó Arturo y procedimos a empezar el programa.
Un gusto participar
I was just trying to downloadTwyt and noticed, I’m getting tomorrow’s release!!
Now, that is bleeding edge
PD: Notice the dates on the download link and my statusbar.
We were talking in downtown Toronto over the weekend and saw this ![]()

OpenDNS is a company that provides free and high quality DNS services. I found this through a friend who recommended them because I had noticed that my own ISP's (TW's Road Runner) DNS resolution was very slow and inconsistent.
I replaced the Road Runner's DNS with OpenDNS (208.67.222.222 and 208.67.220.220). The difference was noticeable. You can also sign up and get extra services but you don't have to if you just want basic DNS functionality.

Anoche quise entrar a moderar algunos comentarios de spam que han caido por acá, y me encuentro que al entrar a wp-admin, Wordpress me indica que la base de datos esta outdated y necesita actualizarse.
Muy extraño debido a que no he hecho ninguna actualización, tengo la misma versión de Wordpress y la bd se mantiene intacta desde mi última actividad, salvo que mis amigos en Aureal hayan estado moviendo versiones de PHP, dbms o algo por el estilo.
Bueno, dado el mensaje procedí con la actualización y me encuentro con un error de BD, que decía:
WordPress WordPress database error: [Unknown column 'user_nickname' in 'field list'] SELECT ID, user_nickname, user_nicename FROM wp_users
Fuí a ver la tabla wp_users y efectivamente no tiene la columna “user_nickname” lo que me pareció extrañísimo… esperaría que si tenga tal campo, así que con un ALTER TABLE lo parché y quise volver a intentar el upgrade.
Ahora ya no me mostraba el error, pero tampoco mostraba nada, nada de nada, así que tampoco fué esa la solución, borré la columna que acababa de crear para volver a como estaba.
Claro, también actualicé mi blog a la última versión de Wordpress estable disponible, pero tampoco fué el problema.
Luego de quedarme sin mayores ideas de qué pudo estar pasando, fuí a Google a buscar la solución, puse el query que Wordpress intentaba hacer a la tabla wp_users comoc riterio de búsqueda y caí en unos foros en portugues de un chico con mi mismo problema.
Ahí encontré un vínculo a una página donde estaba la solución a mi problema :D, contenía el siguiente comando SQL para solucionar
UPDATE `wp_options` SET `option_value` = '5183' WHERE `wp_options`.`option_id` =73 AND `wp_options`.`blog_id` =0 AND CONVERT( `wp_options`.`option_name` USING utf8 ) = 'db_version' LIMIT 1 ;
Al ejecutar tal cual en mi db no encontraba ningún registro… con un poco de SQL encontré que en mi caso el parámetro “option_id” debía estar en “89″
mysql> select option_name,option_value,blog_id,option_id from wp_options WHERE wp_options.option_name > +-------------+--------------+---------+-----------+ | option_name | option_value | blog_id | option_id | +-------------+--------------+---------+-----------+ | db_version | 1 | 0 | 89 | +-------------+--------------+---------+-----------+ 1 row in set (0.00 sec)
Así que modifiqué el parámetro y listo
< .`blog_id` =0 AND CONVERT( `wp_options`.`option_name` USING utf8 ) = 'db_version' LIMIT 1 ; Query OK, 1 row affected (0.00 sec) Rows matched: 1 Changed: 1 Warnings: 0
Regresé a la actualización de Wordpress y luego de proceder todo terminó adecuadamente y pude volver a entrar a mi Dashboard.
Nuevamente, llegaron los Ubuntus
Esta vez pedí un paquete personalizado dado que ninguna de las opciones del site me permitía obtener una versión 64 bits y una 32, me pareción extraño. En fín… ahora tengo mas discos ed Ubuntu
Este sábado diez de Noviembre asistí a la Universidad Inca Garcilaso de la Vega para dar una charla titulada Django: Desarrollo web en un Triz.
En primer lugar debo agradecer a Tabo ya que mis diapositivas estuvieron inspiradas en las suyas, una forma elegante de decir que las resumí e hice algo más coloridas.
Salí de casa a eso de las 8pm, pase por la casa del gnomo y de ahí nos dirigimos al local de la facultad de sistemas de la UIGV en la av. Bolívar. En la puerta nos identificamos como expositores, entramos y fuimos amablemente recibidos por miembros de COSOLIG quienes nos orientaron. Dí mi charla ante un público que me sorprendió gratamente por su número, por la hora (9am) pensé que iba a exponer frente a cuatro gatos pero no fue así.
En el ambiente destinado para servir de descanso a los expositores teníamos bocadillos, gaseosa y café a nuestra disposición mientras charlaba entre otros con Necudecu y RICHARD, miembros de APESOL a los cuales no conocía.
Continuó el día, las charlas magistrales, una de ellas dada por Breno el cual aprovecho para anunciar el próximo lanzamiento de un nuevo e interesante proyecto. La mesa redonda (¡¡APESOL DEBE!!), cierre del evento y las palabras de rigor.
Luego de esta somera descripción me quedan algunas impresiones que comunicar.
En primer lugar estoy gratamente sorprendido por el apoyo que la UIGV proporciona a COSOLIG, incluso altas autoridades de la universidad estuvieron presentes en el evento y prometieron su apoyo públicamente, algo que nunca he visto en ninguna otra comunidad del país.
La organización muy buena, se cumplió el horario planeado, miembros del lug apoyando en cada aula y proporcionando todo lo necesario para hacer muy agradable nuestra participación en el evento.
Otro punto a resaltar es la gran cantidad de chicas en la comunidad, fenomeno inédito en el software libre, me gustaría saber cual fue su secreto.
Para terminar, estoy gratamente sorprendido por todo lo que vi y estoy seguro que va a ser una comunidad que dará mucho que hablar.
Las fotos del FESOLI ya fueron publicadas, al igual que las fotos de RICHARD.
Veo en el blog de Mike Basinger un video del siglo pasado que tuvo que ser hecho por la carencia de software libre en esa época
When I first signed up with Road Runner some months ago, the download was about 600KB/s so I was surprised to see that I was able to download a video from apple.com at 1200KB/s, almost 10Mbps. All for the great price of $24.95. Not bad.
Now everyone who has posted a blog entry or had a daily article on Mises.org gets a special URL. Here's mine.