Crisol!!

Este sábado fui al Crisol, el encuentro estratégico de Software Libre. Se hizo en la facultad de Filosofía, en Capital.

Estuvo bastante bueno, conocí en persona a un montón de co-listeros, compañeros de MiSol, otros que hace años no veo. Casualmente un par de dias atrás estaba pensando en la idea del Ouroboros, tanto en su simbología como formas de representarlo. Mi primer acercamiento ‘fuerte’ a la Comunidad fue en el Crisol del 2006 que se realizó en La Plata, es mas, aún conservo en la billetera la tarjeta de asistente.

Ediliciamente la facultad me gustó, tiene muchas escaleras, cuartos abandonados, el acceso al techo es algo dificultoso pero se compensa con una imprenta que no pude visitar por ser sábado a la tarde cuando me enteré de su existencia. Los baños son muy, pero muy grandes y en comparación a los de Humanidades bastante limpios. Alguna que otra pintada pero como punto sobresaliente en los baños de hombres hay espejos, la grifería está completa y no hay olor a ‘baño de hombres’. Definitivamente es un lugar al que tengo que volver un día de semana para explorar tranquilo, además el barrio tiene calles pintorescas y pispié unas vias de tren, o algo asi.

Improvisado

En unas horas me voy para el Demoliendo Teles V, el encuentro nacional de Estudiantes de Comunicación para participar en el panel sobre Software Libre. Recién recién acabo de preparar TC2 para rendir el jueves que viene, aún me falta terminar Medidas. Cero ganas de ponerme a leer algo del tema a esta hora de la madrugada como para no ir tan en el aire, después de salir a escena con poquísimo (o ningún!) ensayo parece todo cada vez mas sencillo.

A pelo.

while true; do
  apt-get --download-only upgrade
  apt-get --download-only dist-upgrade
  apt-get --yes --force-yes upgrade
  yes | dpkg --configure -a
  apt-get --yes --force-yes dist-upgrade
  yes | dpkg --configure -a
  sleep 10s
done

Cementerio de Computadoras

El viernes estuve en la escuela 40 de los Altos de San Lorenzo con una compañera de la Radio que dicta un taller de periodismo para los chicos de quinto grado.

No bien llego uno de los nenes se me pone en medio del paso y me pregunta, ¿sos policía?. Está bien que no es una zona muy copada que digamos pero me chocó bastante
esa bienvenida. Dejando eso de lado me hizo muy bien el “olor a escuela”, aserrín con kerosén… Por un rato me dejé viajar y estaba nuevamente en la 65, con mis amigos de toda la vida.

Me dejan en la sala de computación; el problema original era “hay una máquina en corto”. El problema real es “el modem interno de una de las pcs hace saltar el diferencial”. Ehh qué entretenido.

El resto de la sala se parece a la de otras escuelas en cuanto a equipos, con la salvedad de una compaq viejísima y el hecho de que les hicieron un downgrade a windows 98. Al igual que el resto de otros planes de la dirección les mandaron un netfinity 5000, que casi nunca usan. Este estaba tirado en un rincón, con signos de haber pasado por varias inundaciones, caídas y pateadas; en un costadito se detallaban las instrucciones para encenderlo usando un palillo o lapicera.

Después de eso los chicos me hicieron una entrevista, me llamó la atención que insistían bastante en si hacía / había hecho trabajos de albañilería. También me preguntaron qué es esto del software libre, fue interesante bajar los temas a su forma mas simple y sencilla de explicar, manteniendo la esencia.

Demoliendo Teles V

Qué rara que es la gente, me invitaron a formar parte del panel “Software libre y Propiedad intelectual”.

Jornadas Nacionales de Estudiantes de Comunicación
“Comunicación, Política, Subjetividad y poder”

14, 15 y 16 de octubre 2010
Facultad de Periodismo y Comunicación Social. Universidad Nacional de La Plata. La Plata, Buenos Aires

El Demoliendo Teles se estará realizando por quinto año consecutivo en la Facultad de Periodismo y Comunicación Social de la Universidad Nacional de La Pata. El encuentro es impulsado y sostenido por agrupaciones estudiantiles independientes de la Universidad de Quilmes, La Plata, Buenos Aires y Comahue.

La propuesta fue y sigue siendo la socialización de experiencias y producciones colectivas de conocimiento alrededor de diversos temas que creemos necesario debatir: muchos de los cuales no inocentemente son evitados por los distintos diseños curriculares en comunicación.

Proponemos ser una voz crítica sobre las problemáticas de nuestro campo profesional, sobre nuestra experiencia académica, y sin dejar de lado los grandes problemas nacionales, ya que renegamos de la posición académica que se encierra en la institución y se abstrae, sin intervenir en la realidad social.

Fundamentalmente en esta coyuntura específica en la que se están debatiendo los ejes “quiebre” en torno a los medios de comunicación: Ley de Medios, Papel Prensa, Televisión Digital. Estos debates empiezan a generar preguntas que nosotrxs como futurxs comunicadorxs debemos empezar a dar respuestas, desde nuestro lugar como estudiantes y sujetos activxs.

En este sentido, entendemos nuestro objeto de estudio como una parte fundamental del tejido de las relaciones sociales y por eso creemos que hay que ir más allá de los medios. Debemos estudiar los modos de producción de la comunicación, junto con sus relaciones de producción sin olvidar sus condicionantes históricos, económicos y de clase.

Criticamos la concepción mercantilista, donde la comunicación se toma como un producto de consumo más. Se utiliza la teoría y la práctica no para resolver los grandes problemas de nuestra sociedad, sino para generar mano de obra funcional a las empresas mediáticas. Las “ciencias de la comunicación”, cuyo rigor suele ser cuestionado, se producen, se venden y se compran como una mercancía más. El sujeto comunicador/a queda completamente alienado y excluido de ese sistema de producción de comunicación.

Desde hace cuatro años pusimos nuestros cuerpos y mentes a disposición de estas jornadas; y desde allí delineamos nuestras perspectivas teóricas e ideológicas. Pusimos en la mesa nuestra línea comunicacional para debatirla en conjunto con lxs estudiantes, las organizaciones sociales y los medios alternativos, dando la batalla contra el individualismo, la fragmentación y la pasividad que arremete en nuestras Universidades.

Reemplazando GRUB por el bootloader de Windows

Hace cinco minutos me dan una notebook para que le haga desaparecer todo rastro de linux así la pueden llevar al service oficial. Borré las particiones y la fusioné en una sola grandota usando un live-cd. Reinicio y el grub me tira el famoso error 22. Entre todos los cds viejos hay uno de windows ME, y es el único.

Como no estoy con ganas de bajarme un cd solo por algo tan trivial se me ocurrió copiar el bootloader usando dd. Estuve a punto de arruinar todo mal copiando 512 bytes (y sobreescribiendo la tabla de particiones), de casualidad vi en otro sitio que para no hacer eso hay que copiar sólo 446.

dd if=/dev/sda1 of=/dev/sda bs=446 count=1

Y listo el pollo…

pd.: estoy escribiendo este post desde vim, en una reposera tomando mate y viendo el cielo. Qué buena forma de terminar un domingo!

Nethack

Hablando de cambios tuve una vuelta a mi adolescencia tardía, me volví a instalar el Nethack. Ehh ya veo las noches en vela buscando el amuleto de Yendor.

|.!….
|.!i+..
+.).)..

If I were a NetHack monster, I would be a tengu. I’m always in the right place at the right time, and am quick to avoid people that I’d rather not be with.

Squeezing code

clickety clickety…

:!make clean ; make
rm -f main.hex main.lst main.obj main.cof main.list main.map main.eep.hex main.bin *.o usbdrv/*.o main.s usbdrv/oddebug.s usbdrv/usbdrv.s
avr-gcc -Wall -Os -Iusbdrv -I. -mmcu=attiny2313  -c usbdrv/usbdrv.c -o usbdrv/usbdrv.o
avr-gcc -Wall -Os -Iusbdrv -I. -mmcu=attiny2313  -x assembler-with-cpp -c usbdrv/usbdrvasm.S -o usbdrv/usbdrvasm.o
avr-gcc -Wall -Os -Iusbdrv -I. -mmcu=attiny2313  -c usbdrv/oddebug.c -o usbdrv/oddebug.o
avr-gcc -Wall -Os -Iusbdrv -I. -mmcu=attiny2313  -c main.c -o main.o
avr-gcc -Wall -Os -Iusbdrv -I. -mmcu=attiny2313  -o main.bin usbdrv/usbdrv.o usbdrv/usbdrvasm.o usbdrv/oddebug.o main.o
rm -f main.hex main.eep.hex
avr-objcopy -j .text -j .data -O ihex main.bin main.hex
./checksize main.bin
ROM: 1992 bytes (data=4)
RAM: 61 bytes

…hack hack clickety clickety hack…

:!make clean ; make
[snip]
*** code size 2051 exceeds limit of 2048
RAM: 61 bytes
make: *** [main.hex] Error 1

argh… por tres f*ing bytes.

Terminando algo…

Ayer fue el día del Amigo, tenía pensado desde hace una semana mas o menos ir a ver a la Flower pero me levanté bajón y sintiéndome como para resfriarme así que me quedé en casa. Estaba en ese estado que me agarra seguido, me siento mal, bajón, desganado, y lo peor de todo es que casi nunca tengo un motivo real para estar así. Hice lo de siempre en esas situaciones, ordeno un poco, cocino y después me siento a tomar mate y leer. Leer de todo, como para distraerme y volar,  soñar, creer que otras vidas, otros logros son los míos (ni en pedo un apunte de la facultad…).

Por una de esas cosas volví a caer en el sitio de Paul Graham; cada vez  que lo visito leo y releo sus ensayos, encontrando algo nuevo, o resignificando las cosas que ya recordaba. Hay uno muy bueno sobre una charla de Hamming (el de los laboratorios Bell). Eso me hizo pensar en un par de cosas puntuales, sobre todo la forma en que estoy encarando mi vida académica y profesional. Así como algunas personas pueden caracterizarse, reconocerse, por sus logros, otras pueden definirse por las cosas inconclusas.

No hay necesidad de nombrar nombres pero últimamente estoy tendiendo a parecerme mucho mas de lo que quisiera (solo en ese aspecto) a cierta persona allegada, bien sea que mire mis repositorios o la estantería encuentro proyectos a medio terminar, otros ni siquiera empezados.

Entonces, aprovechando que no iba a salir decidí terminar algo, por más simple que sea. Terminé dos cosas a falta de una. O una y media siendo un poco mas crítico.

Una, preparé de una vez el repositorio git de alsa para hackear tranqui el driver del cm6206 y volví a mandar los parches (no me dieron bola, así que en un par de días pongo a medio mundo en cc a ver si logro un poquitín de atención).

Dos, retomé el flash anular (o ring flash) que había empezado a hacer con papel maché para sacar mejores fotos con el macro. Monté ocho de los dieciséis leds blancos, incluso con cuatro la iluminación es bastante pareja aunque la intensidad no es muy adecuada. Ahora estoy con fiaca, luego subo fotos del proceso, que lleva casi mes y medio de iniciado. Antes no lo había notado pero mientras hacía los agujeros para pasar los led me dí cuenta de lo resistente que se hizo la estructura en base a papel secante y adhesivo vinílico, es increíble lo robusto que quedó el reflector.

Nerdddd….

(suena la voz de Fercha cargándome, podría haber salido el sábado a despejarme un poquito pero me quedé hackeando un driver)

And now for something completely the same… A couple of weeks ago I bought a cheap 8-channel usb audio card based on the CM6206 because the one in my notebook was roast (ar$ 190, including shipping to my home). As expected it worked right out of the box, there were some rough edges, like missing control names and the headphone jack was silent,  but as I was running a somewhat old kernel (2.6.29) I didn’t care.

On another box with a newer kernel, 2.6.32-something, it worked better; the headphone jack mirrored the front channel and also spdif was enabled. Even so, it was managed as a generic usb device (wich is great, it means no specialized drivers) but some useful features described in the datasheet were missing.

I decided to implement the easier ones first, mainly because even I hacked the kernel before this was my first time with alsa. With the datasheet in hand I coded a quick app with libusb to poke registers. After a couple of hours I had a userspace app to select the headphone source (it lets you choose wich channel the headphone jack mirrors). Then I got the latest stable kernel, 2.6.34 at that time, and jumped into the code. A week passed and I had it implemented as another control from alsa.

You are doing it wrong.

Feeling great I made a series of shiny patches to send upstream. Lurking thru alsa-dev I glanced other patches that affect the usb-audio portion and they looked… different. Cloned the main git repo and really, it was different. Back to square one, or two.

Spent yesterday’s night merging the old changes at the new tree and got a working driver again. A couple of hours ago sent the patch to alsa-dev. This time I avoided the gmail interface because it really likes to mangle inline patches and used kmail; the bastard trimmed also everything to 80 columns. Still nobody complained but lets see how it is teared down this monday.

Sources and documentation:

http://tangopardo.com.ar/pub/src/cm6206_utils-0.0.0.tar.bz2

CM6206 datasheet: http://tangopardo.com.ar/pub/docs/CM6206+datasheet+1.7.pdf

Para qué hacerlo fácil…

huawei_e1756

huawei_e1756

Este es otro de los modem de Personal / Claro / Movistar; un Huawei E1756 en este caso. Normalmente estos bichitos aparecen como una unidad de almacenamiento con los drivers adentro para no llegar al dilema en Windows de necesitar conectarte a internet para bajar los drivers necesarios para conectarte a internet (obvio que si hubieran implementado bien las clases acm en primer lugar todo esto no sería necesario).

Con el que tenía antes no tuve que hacer ninguna magia loca, lo enchufé y el NetworkManager solito solito configuró todo; aparecía tanto como un modem comun y como un disco. Este aparece solo como un disco, o sea que hay que usar el usb_modeswitch para que cambie de funcionalidad. La última versión aún no lo tiene incorporado así que tuve que buscar un poco mas. En http://www.otubo.net/2009/12/vivo-3g-using-huawei-e1756-on-ubuntu.html ya lo resolvieron pero debo tener otra revisión del modem porque sigue sin cambiar de modo.

No pude hacer andar el usb en qemu (tampoco traté mucho) asi que ahora estoy atado a que me presten una compu con windows para sniffear como hace el driver para cambiarlo.

Primer artículo en Wikipedia

Hace un tiempo que vengo editando artículos en wikipedia, correcciones menores, algún enlace relevante. Al principio era en forma pseudo anónima, después me hice un usuario.

Aprovechando un transformador al que le rehice el secundario con varios taps para probar válvulas tomé unas fotos de la 866 y las subí a Commons. Después vi que no había aún un artículo sobre esta válvula, así que inicié uno.

Faltan datos históricos, un par de referencias y retocar un poco mas las fotos pero es un comienzo. Fué una experiencia bastante integral, aprendí a moverme en Commons, editar templates e infoboxes sin romper el resto de los artículos…

http://en.wikipedia.org/wiki/866A