• Skip to main content

zoiaorg

Tech, Strategy, and other interesting things by Roberto Zoiaby Roberto Zoia

  • Articles
  • What I’m Reading
  • Book Reviews
  • Archive
  • About

Roberto Zoia

PC Perú

2005-08-12 by Roberto Zoia

Hace unas semanas el Ministerio de la Producción (por sus siglas, PRODUCE) presentó el programa PC Perú II etapa (PC Perú I etapa y PC Perú II etapa. Se trata de una alianza con Intel para poder ofrecer a los peruanos, de modo masivo, computadoras a precios accesibles. La primera etapa consiste en vender 140 000 computadoras, en un periodo de dos años y medio, y con sistema operativo Linux. Pero a los pocos meses han lanzado la II etapa, en la que anuncian que Microsoft se ha sumado y las PC Perú saldrán con Windows. Como se hace en estos casos, diversos periódicos y websites han hecho eco de la noticia.

En la lista del PLUG (uno de los grupos de usuarios de Linux en el Perú) ha habido una discusión bastante larga al respecto. Como se podía esperar, uno de los puntos álgidos de la discusión es por qué el cambio de Linux a Windows. Si la idea es ofrecer una PC a bajo precio, ¿por qué añadirle el sobrecosto de la licencia de Windows? Se podría instalar Linux y bajar más aún el precio, además de que la distribución de Linux típica suele traer muchas aplicaciones útiles. La opinión más lúcida en toda la discusión, en mi opinión, es la de Antonio Ognio, que puede leerse en este link.

Hay varios asuntos sobre los que vale la pena comentar. Por ejemplo, los precios de estas PC Perú no son especialmente baratos, y los accesorios no son tampoco de muy buena calidad; la memoria RAM que traen estas PC queda bien justa para correr WindowsXP… 128 MB y 256 MB, según el modelo; el chipset i845 el mainboard tampoco es el precisamente el último grito tecnológico de Intel (¿están quemando su stock en Perú?).

Hay un aspecto que ha pasado desapercibido en la discusión, y es la tendencia nacional del usuario doméstico a usar software pirata. ¿Cómo le digo a una persona de escasos recursos que tiene que gastar $200 adicionales en una licencia de Office XP-Small, o $400 en el Office XP Professional, cuando la copia pirata la ofrecen a $3? (el precio lo he sacado de la página de Compupartes, es la licencia OEM). Tampoco creo que vayan a pagar $40 por un juego original…

No estoy a favor de la piratería de software ni mucho menos (no es porque esté preocupado por el bolsillo de Microsoft… ellos ya saben cuidarse el bolsillo, eso está claro). La mayoría de las veces, detrás de los vendedores de software pirata hay toda una mafia de verdaderos delincuentes, que alquilan duplicadoras de CDs, traen equipos y suministros de contrabando… y muchas veces también están en el negocio de piratería de CDs de música o DVDs de video… y distribución de pornografía. Pero sí creo que el precio del software, por lo menos el del software aplicativo de uso común, no corresponde a la realidad económica del país, y a las empresas comercializadoras no parece importarles mucho. Por eso, pienso que lo que harán muchos es salir de la tienda con la PC Perú con Linux al hombro, para llegar a su casa e instalar Windows y Office piratas. Así no vamos a progresar mucho, realmente.

Investigando un poco en Internet, hay otros proyectos de PCs a bajo precio:

  • Por ejemplo, en India, hay un proyecto en que las PCs cuestan la mitad que aquí, y viven con Linux (ver este link, y están bastante más baratas. Claro, hay un pequeño detalle, y es que en India esperan tener 75 millones de usuarios de PC pronto.
  • Está el proyecto “$100 laptop” del MIT Media Lab:
    The MIT Media Lab has launched a new research initiative to develop a $100 laptop—a technology that could revolutionize how we educate the world’s children. One Laptop Per Child (OLPC) was announced by Nicholas Negroponte, Lab chairman and co-founder, at the World Economic Forum at Davos, Switzerland in January 2005..
  • Tenemos la iniciativa 50×15 de AMD.
    The computer is about the size of a tissue box and runs on a 366 MHz AMD Geode GX 500 processor that uses 1 watt of power. The device also comes with 128MB of RAM, a 3 1/2 internal disk drive with 10GB capacity, four USB ports, a monitor and a keyboard. AMD said its PIC operates using Microsoft’s Windows CE kernel with XP extender so that users can access XP-based applications.
    Initially, the PIC will only be available through Internet service providers (ISP) and only in India, Mexico, China, Russia and Brazil for a suggested price of $249 with the 15″ VGA monitor and $185 without. The ISPs would also be responsible for service and support. AMD said the offer could eventually be extended to North American and European markets.
    (cita de Internetnews.com).
  • También está la Mac Mini. OK, OK, no es un producto enfocado a público de escasos recursos. La más cómoda está $499, se “come” a la PC Perú en hardware (aunque hay que comprar un monitor, teclado y mouse aparte). Y conociendo cómo están hechas las Mac (hace poco he visto algunas Classic II que todavía se pueden usar… y con la humedad que hay en Lima), dentro de 5 años estarían funcionando sin problemas.

“Soy un convencido de que las Tecnologías de la Información y Comunicación son herramientas que generan competitividad y desde mi despacho el trabajo será constante para llevar a las empresas del sector producción hacia la era digital, procurando convertirlas en empresas que tengan como base el uso intensivo de la información y el conocimiento”, afirmó el ministro de la Producción, Ing. David Lemor Bezdin.

Filed Under: Uncategorized Tagged With: pc peru

OpenZaurus 3.5.3 unstable

2005-06-18 by Roberto Zoia

De todos modos detallo lo que he hecho, porque parece que la sincronización del OZ con Outlook es un problema de muchos y porque cuando tenga un poco más de tiempo intentaré solucionarlo.
Hay que tener en cuenta que esta versión de Openzaurus es “unstable” y no sorprenderse de que hayan cosas que no funcionan todavía. La mayor parte de estos “tips” los he encontrado en Internet (ZarusUserGroup.com, etc.), no son elaboración mía.

Equipo

SL-5600 con OZ 3.5.3, WinXP y Outlook.
La copia la hice con el explorer en Windows y Samba en la Zaurus (así viene por defecto la SL-5600). Windows, por defecto, cambia el zImage.bin a zimage.bin, de modo que en la zaurus, desde la consola, hay que volver a cambiar el nombre a zImage.bin.

  • Borrar el directorio /home/root si existe (por ejemplo, de un intento anterior de instalar OZ) escibiendo rm -rf /home/root en la consola de la Zaurus.
  • Antes de “flashear” (no encuentro otra palabra, con perdón) la imagen de OZ al ROM, borrar toda la memoria (hacer un “full reset”, encender la Zaurus presionando OK y Cancel a la vez, seleccionar “Format”).

Una vez instalado OpenZaurus, hay que hacer unos “ajustes” para que la Z no se cuelgue (hay un bug sumamente molesto que hace que una vez que se apaga la Z, no haya forma de volverla a encender si no es con un hard-reset). Para esto, abrir la consola (el terminal) en la Zaurus y detener el daemon apmd:

# /etc/init.d/apmd stop

Esto tiene sus inconvenientes, claro, porque para algo existe apmd (por ejemplo, las alarmas no suenan cuando la Z está apagada), pero por lo menos la máquina no se congela. En algunos foros dan otras alternativas, ninguna me ha funcionado.

Cada vez que se apaga la Zaurus o se saca del craddle, se pierde la configuración de red, y cuando se vuelve a enchufar la agenda Windows ya no reconoce el dispositivo. Es necesario crear un script que vuelva a cargar los módulos correspondientes en la Zaurus:

#!/bin/sh
# relusb.sh
/sbin/rmmod pxa_bi
/sbin/rmmod net_fd
/sbin/rmmod usbdcore
/sbin/insmod /lib/modules/2.4.18-rmk7-pxa3-embedix/kernel/drivers/usb/device/usbdcore.o
/sbin/insmod /lib/modules/2.4.18-rmk7-pxa3-embedix/kernel/drivers/usb/device/net_fd/net_fd.o
/sbin/insmod /lib/modules/2.4.18-rmk7-pxa3-embedix/kernel/drivers/usb/device/bi/pxa_bi.o

Como la interface (“interfaz”, en español) de red se desconfigura cada vez que desaparece el dispositivo usb en la Zaurus, y el applet gráfico para configurar la red no funciona, este script también es util:

#!/bin/sh
# usbd0-up.sh

ifconfig usbd0 192.168.129.201 netmask 255.255.255.0 up
route add -host 192.168.129.1 usbd0
route delete -net 192.168.129.0/24 usbd0
route add default gw 192.168.129.1

Se supone que se puede configurar hotplug para que ejecute estos scripts automáticamente cada vez que se enchufa la Zaurus al cradle.

Sincronización con Outlook

La Zaurus SL-5600 que tengo viene con la versión 3.1E de Intellisync para Windows, y no se lleva bien con OZ. Parece ser que en uno de los cambios de versión de Intellisync Sharp cambió el puerto de sincronización, pero OZ sigue manteniendo el puerto antiguo. (O por lo menos eso dicen en algunos foros, pero no convence mucho el argumento. El ROM de Sharp usa como entorno gráfico Qtopia 1.5.4 y accesorios, que es de agosto de 2003, y sincroniza perfecto con Intellisync 3.1E. Openzaurus 3.5.3 es de abril de 2005).

Antes de instalar la versión 1.43E de Intellisync, hay que desinstalar la versión 3.1E. Es importante que el resto del software instalado en Windows sea el de la SL-5600, en particular los drivers para que Windows reconozca a la Zaurus como dispositivo USB y configure la interface (mejor dicho, interfaz) de red. En el panel de control de Windows, Agregar y Quitar programas, seleccionar Sharp Zaurus, modificar instalación y desinstalar sólo el Intellisync. Reiniciar la máquina, instalar el intellisync 1.43E, reiniciar nuevamente.

OZ espera la versión 2.0 de Intellisync. Pero acabamos de instalar la versión 1.43E… de modo que si presionamos el botón de sincronizar, aunque tanto Windows como la Zaurus empezarán a hacer ruidos, finalmente OZ nos dirá que la versión de Intellisync es incorrecta. Esto se arregla escribiendo en la consola de la Zaurus:

# echo "1.43E" > /home/root/systeminfo/linkver

(Nota para mí: ¿quizá esto tiene que ver con el desfase horario?)

En la Zaurus, en la pestaña de “Settings”, en el applet “Security”, seleccionar sincronizar con Qtopia 1.7 (ya sé que queremos sincronizar con Intellisync. Pero si se escoge Intellisync, OZ no reconoce la configuración de seguridad y cada sincronización pregunta unas 30 veces si debe permitir acceso de Intellisync al a la Zaurus). He probado con Intellisync y Qtopia en la Zaurus, e Intellisync en Windows y el resultado, a efectos de transferencia de datos, es el mismo.

Con lo que hemos hecho hasta este momento, se puede sincronizar la agenda, pero terminada cada sincronización Intellisync nos dice que cambiemos el IP de la Zaurus. Para evitar esto, sacamos una copia del archivo de configuración de Intellisync y después de cada sincronización restauramos los datos originales:

  • En el directorio C:\Archivos de Programa\Sharp\Intellisync for SL\QtDBTemp copiar de Intellisync en Windows, copiar el archivo NetStat.dat a OZ_NetStat.dat.
  • Con un editor de texto, abrir OZ_NetStat.net y cambiar el IP a 192.168.129.201 (o el IP que esté configurado en la Zaurus).
  • Cuando queramos sincronizar la Zaurus, ejecutamos SLNetDlg.Exe y luego copiamos OZ_NetStat.dat a NetStat.dat.

OK, listo. Con esto puedo sincronizar sin problemas la libreta de direcciones (el addressbook), y la agenda (el calendario, datebook) pero con el desfase horario famoso.

Filed Under: Legacy Tagged With: Zaurus

Python, Boa y wxPython

2005-06-18 by Roberto Zoia

Python

Desde hace algún tiempo estoy programando en Python. Definitivamente es un lenguaje que se acomoda a mis circunstancias (el mundo en cuanto mundo de alguien, según la DRAE). Quiero decir que aunque me las pasaría todo el día delante de la pantalla desarrollando software, mi día a día tiene poco que ver con desarrollar software. Buscaba por eso un lenguaje en el que pudiera pasar del concepto al programa rápido, y que tuviera librerías suficientemente completas. Además, un lenguaje en el que los programas corrieran sin o con poca modificación tanto en Linux como en Windows, y si era posible, también en MacOS, una plataforma cada vez más tentadora.

Python es un lenguaje excelente. No voy a abundar en esto, ya hay todo una guerra al respecto (un artículo interesante es Python is not Java). Estoy bastante cómodo programando en Python y ya tengo suficientes horas de recorrido como para que una expresión como l = [ “%s” % row['Name'] for row in rows ] me salga más natural que escribir

l = []
for row in rows:
    l.append( “%s” % row['Name'] )

Además, por si en algún momento el lado oscuro nos comienza a parecer más atractivo, hay muchos artículos sobre Python que despejan toda nube de sombra y además ensalzan en ego. (Por ejemplo, Great Hackers, de Paul Graham)

He dedicado no poco tiempo a escoger una buena librería para la interfase del usuario (… para el user interface, UI, etc.). Hay gran variedad disponible, algunas muy completas, otras son proyectos incipientes. Para casi todas hay bindings para Python. He optado por wxPython (que son los bindings para Python a wxWidgets (An open source C++ GUI framework to make cross-platform programming child’s play, según los desarrolladores de la libería). La estructura de este framework es bastante ordenada. Hay versiones de wxPython para Linux, Windows, MacOs, etc., de modo que el programa funciona sin cambios en cualquiera de las plataformas en las que está disponible Python y wxPython. Una buena prueba de esto es el demo que viene con wxPython.

Eventos y entornos de desarrollo

Como en la mayoría de librerías para interfaces gráficas, los controles (widgets) de wxPython interactúan entre sí generando o reaccionado a eventos. Si quiero que el programa muestre ayuda cuando el usuario hace click sobre el botón de ayuda, tengo que escribir una función que muestre la información de ayuda, y decirle a wxPython que esa función es el handler para el evento que genera el botón cuando lo presionan.

También se agradece poder diseñar la interfaz del usuario (user interface) gráficamente. Hay varios diseñadores para wxPython, aunque casi todos los que he probado tienen un vacío, y es que no permiten vincular los eventos que generan los objetos de la librería a los respectivos handlers. Después de diseñar gráficamente la interfaz, hay que buscar los controles en el código y empezar a vincular manualmente los handlers respectivos . El generador de código, por su parte, suele reescribir parte del código cuando se modifica el diseño de la interfaz gráfica, borrando todo lo que esté en medio. Por eso, el código para vincular los handlers al control hay que escribirlo más abajo, o más arriba, o en un método aparte, pero no junto al control al que hacen referencia. Estas limitaciones son molestas, sobre todo teniendo en cuenta que la documentación de wxPython es bien parca (eso sí hay, viene con un demo omnicomprensivo, que es realmente excelente) y no es fácil tener en la cabeza todos los eventos que genera cada control.

WingIDE también es muy buen producto. He usado unas semanas la versión de evaluación (es un producto comercial) y si más adelante veo que lo de vincular los eventos no es tan indispensable, probablemente me anime a invertir en este programa, que tiene un precio razonable.

Filed Under: Legacy Tagged With: Python, wxPython

The Comedy of the Commons

2005-03-08 by Roberto Zoia

Una excelente conferencia de Lawrence Lessig sobre los “Commons” , que dió en SDForum. El audio está publicado en ITConversations.

Filed Under: Uncategorized Tagged With: creative commons, lessig, tragedy of the commons

  • « Go to Previous Page
  • Go to page 1
  • Interim pages omitted …
  • Go to page 71
  • Go to page 72
  • Go to page 73
  • What I’m Focused on Now
  • Español
  • Privacy Policy

Copyright © 2019 Roberto Zoia
zoia.org runs on WordPress using a customized version of the Parallax Pro Theme for the Genesis Framework.

This website uses cookies to improve your experience.Accept
Privacy & Cookies Policy

Necessary Always Enabled