sábado, 29 de octubre de 2016

Voto electrónico, no


No estoy en contra del voto electrónico por los negociados...


...que puedan haber. Bien puede haberlos, aunque sin duda de mayor magnitud que con boleta de papel. No hace mucha diferencia.

No estoy en contra del voto electrónico por las vulnerabilidades...


...que se detectan y se intentan reportar desde ya hace un año. Respeto, aprecio y respaldo el esfuerzo de tantos por mostrarlas frente al olímpico desprecio de los actores involucrados...

...ni por motivos técnicos o del proceso de desarrollo...


...pues existe la posibilidad teórica de implementar un sistema suficientemente robusto, abierto, auditado y corregido por gente muy capaz.


No estoy en contra del voto electrónico por el fraude...


...que pueda impedir o facilitar. En última instancia, si un sector importante decide hacer fraude, lo va a lograr independientemente de la tecnología usada. Cuando no habían computadoras, había fraude contable, ahora que hay computadoras, hay fraude contable. No hace mucha diferencia.

No estoy en contra del voto electrónico por que no lo audite yo...


...pues no tengo el conocimiento necesario.

No estoy en contra del voto electrónico por el secreto de voto...


...pues es parte de la resolución técnica del problema.

...entonces, ¿por qué no?


Aunque esté correcta y transparentemente implementado, eso es sólo ante nuestros ojos, la gente técnica, los que con mayor o menor medida contamos con el conocimiento y los medios para poder comprender los mecanismos involucrados.

El 99.99% de la población en condiciones de votar puede comprender que si lleva una boleta en el bolsillo desde su casa, la pone en el sobre en el cuarto oscuro y se queda un rato para comprobar que nadie abra la urna, puede estar bastante seguro de que su voto fué secreto.


Yo estoy dentro del 1% que a grandes rasgos podría comprender como se lograría un efecto similar con computadoras.

Estoy fuera del 0.1% que realmente comprende.

Y mi conocimiento e instinto me dicta que no existe la manera de lograr el voto secreto electrónico fuera de un laboratorio.

PD: me olvidé que...


...no estoy a favor de enunciar los requerimientos como hizo SADIO [1] pues ¿qué hacemos si se cumplen?

...y que digo "voto electrónico" pero vale para "boleta electrónica".


[1] http://www.sadio.org.ar/inicio/aportes-al-debate-sobre-voto-electronico/


domingo, 16 de octubre de 2016

CIAA + Erlang

Este es más o menos el material presentado en [1] para proponer el uso de Erlang en el proyecto CIAA [2]

La introducción al proyecto CIAA corresponde a lo mismo expuesto en CAFELUG, asi que no voy a copiar y pegar, sólo agregar acá lo de Erlang

Hubo un streaming de todo el evento en [3], que estuve revisando para volcar algunos datos acá y es aburridísimo, al menos la parte mía. Sirve verlo para quien quiera hacer una presentación de la CIAA no cometa los mismos errores. La parte de CIAA+Erlang comienza cerca de 1 hora 40.


CIAA + Erlang



La propuesta me nace de tener muchos pies puestos en muchos lugares, siendo dos de ellos el proyecto CIAA y erlang. En este último más que pisar acaricio con el pié, pues aunque he tenido alguna experiencia[4], no he llegado a superar la barrera de entrada, la que te permite retomar en cualquier momento sin tener que mirar ningún manual. En este momento soy incapaz de escribir un hello world, como para ser claro.

La presentación agrega estas preguntas/reflexiones a la presentación de CIAA:


  • plc y micropython están orientados a facilitar la programación de cara al humano.
  • esta iniciativa está orientada a la alta disponibilidad de erlang, no la facilidad.
  • aportaría el hot upgrade soportado por erlang (*)
  • ¿para que querríamos el microErlang si podemos ejectuarlo en la ciaa-full con linux?
  • A nivel industrial no tendría sentido con ciaa-nxp
  • Pero si con una nueva placa industrial reducida, como picociaa
  • Y fundamentalmente para estudiantes con la edu-ciaa
  • Como lidiar con el garbage collector, java (HVM) lo ha hecho
  • Asi como web fue de servidor con aplicación a servidor con cliente rico con javascript y luego javascript ha ido al servidor,
    pensamos en erlang como el servidor de IoT, pero los dispositivos son cada vez más power. Si es suficientemente power y tiene linux, le ponemos cualquier cosa, pero si no es tan power, eh?
  • Podemos al menos enviar los mensajes en formato nativo de Erlang, distribuir la carga de procesamiento y reducir la latencia del servidor.
(*) En la siguiente charla el "hot upgrade" fue correctamente contextualizado, quizás no cuente.

A lo cual agrego de conversaciones posteriores:
  • Erlang originalmente corrió en un switch telefónico, probablemente baremetal, quizas el alcance sea portar R2


Revisando el video, extraigo estos aportes de la concurrencia:

En la algunas conferencias hubieron presentaciónes con estos interesantes títulos

Orlando 2016 [5]
Berín 2016 [6]


En el paquete de OTP existe Inteface, mencionó El Brujo, que permite que un programa en C o java se haga pasar por un nodo erlang, según entendí. Por ejemplo existe una implementación para java [7] de Inaka.

No me comprometo, pero quizás avance algo por ese lado. El problema es que supongo debe necesitar TCPIP y eso no está en baremetal o sAPI, al menos a mi alcance. Y aún no he llegado al RTOS, aviso cualquier novedad.

Muero por tener algo listo para presentar en la conferencia que mencionó El Brujo a realizar en marzo/abril del 2016 en BsAs. Es más, probablemente muera por ser incapaz de no intentarlo.

¿Qué me olvidé o decidí no mencionar?


Olvidé contar que en el proyecto CIAA hay gente muy capaz, docentes universitarios, personas que han colaborado en la construcción de los satélites argentinos, hay personas que trabajan con FPGA, arman la sAPI o diseñan las placas, que para mí son como Dumbledores o Gandalfs, según sea tu tara.

No tenía los links apropiados para los Cursos Abiertos de Programación de Sistemas Embebidos (CAPSE)[8].

Me dió como aversión al autobombo contar que mi colaboración con el proyecto también pasa por haber dado un curso de linux en el SASE 2016 y que en dos semanas probablemente dicte un curso de seguridad orientado a IoT [9].

¿Qué puedo aportar yo?


  • Estar hoy acá:
    O sea, invitar a comenzar.
  • Comenzar el año que viene:
    Mi vida es muy complicada ahora y tengo otras prioridades técnicas, que incluso son base para esta iniciativa, como estudiar RTOS.
  • Ahora puedo colaborar iniciando los contactos y traduciendo.
  • No participar:
    No tengo ningún orgullo ni territorio que defender, bien puede ocurrir que haya gente capacitada e interesada, yo no quiero ningún mérito si puedo ser un estorbo. Me encantaría poder decir "Charli hizo el trabajo de ...", pero me alcanza y sobra "Alguien hizo que Erlang quedara integrado a CIAA mediante ...".



[1] http://seguridad-agile.blogspot.com/2016/09/ciaa-cafelug.html
[2] http://www.proyecto-ciaa.com.ar/devwiki/doku.php?id=start
[3] https://www.youtube.com/watch?v=I7DAssZI_XM
[4] http://seguridad-agile.blogspot.com/2013/07/mutation-testing-framework.html
[5] http://www.elixirconf.com/#elx-speakers
[6] http://www.elixirconf.eu/
[7] https://github.com/inaka/jinterface_stdlib
[8] http://www.proyecto-ciaa.com.ar/devwiki/doku.php?id=educacion:cursos:cursos_programacion_ciaa
[9] https://groups.google.com/forum/?hl=en#!topic/embebidos32/6ohgy4E1D0E