Jueves 25 de mayo de 2017

Usemos Linux: Cómo predecir tu ubicación con señales wifi

Miércoles 24 de mayo de 2017

Usemos Linux: Monitorix: Una ligera herramienta de monitorización de sistema
Linux Adictos: Slimbook Pro, un duro rival para macbook Air con espíritu libre
Linux Adictos: Total War: SHOGUN 2 ya disponible para Linux

Martes 23 de mayo de 2017

Linux Adictos: Continúa el desarrollo del Kernel 4.12 con su segunda versión RC
Usemos Linux: Mango, un sencillo y práctico Editor para Markdown

Viernes 19 de mayo de 2017

Obtener datos de eventos sismológicos de Funvisis con Python

Este artículo es gracias al código desarrollado por William Cabrera, donde en su blog menciona que creó un Canal en Telegram sobre los Sismos en Venezuela. El código fuente de sus scripts en php fueron la base para el código Python que se muestra en este artículo.

Gracias William por esta herramienta de información que es el Canal en Telegram.


Se usará mechanizeBeautifulSoup para obtener la información del sitio de funvisis por medio de WebScraping.  La información que se quiere obtener se muestra en un recuadro en la siguiente figura:





Para ver cual sección del código html se tiene que buscar, se le da boton derecho a inspeccionar elemento y la siguiente figura muestra el resultado:


Ahí se ve claramente  el tag html que es necesario buscar.

A continuación se muestra el código de la aplicación:



#!/usr/bin/env python





#Se importa mechanize y cookielib

import mechanize

import cookielib

#Se importa beautifulSoup

from BeautifulSoup import BeautifulSoup





def Sismo():

    br = mechanize.Browser()

    #Se crea una instancia para la Cookie

    cj = cookielib.LWPCookieJar()

    #Se asocia la instancia del cookie con el navegador.

    br.set_cookiejar(cj)

    #Se deshabilita el manejo de robots.txt

    br.set_handle_robots(False)

    #Se define el tiempo de refrescamiento

    br.set_handle_refresh(mechanize._http.HTTPRefreshProcessor(), max_time=1)

    #Se pasa el url del sitio timeanddate con la informacion

    url = "http://www.funvisis.gob.ve/"



    urlhome = url + "index.php"

    #de la salida y ocultamiento del sol en Venezuela.

    #Se define las cabeceras del navegador, en este caso se le esta diciendo

    # que el navegador es un firefox desde Linux Debian

    br.addheaders = [('SSL_VERIFYHOST', False),\

        ('FRESH_CONNECT',True),\

        ('RETURNTRANSFER',True),\

        ('SSL_VERIFYPEER', False),\

        ('Referer', 'http://www.cantv.com.ve'),\

        ('User-agent','Mozilla/5.0 (X11; U; Linux i686; es-VE; rv:1.9.0.1)Gecko/2008071615 Debian/6.0 Firefox/9')]

    #Se abre el url

    r = br.open(urlhome)

    #Se lee el htmml de la pagina

    html = br.response().read()

    #Se crea una instancia de BeautifulSoup pasando el html

    #a verificar

    soup = BeautifulSoup(html)

    sismo = {}



    #SE obtiene el primer  div que tengan class module

    for row in soup('div', {'class': 'module'})[0]:

        #Se obtiene el tag a para luego obtener el href y tener el url

        #del gif del sitio de funvisis que tiene la imagen del sitio donde

        #fue el sismo.

        trs = row.find('a')

        if trs == -1:

            continue

        sismo['urlref'] = url  + trs.get('href',None)



        trs = row.find('tr')

        if trs == -1:

            continue

        #Obtiene los datos del sismo del sitio de funvisis

        datos = trs.find('td').getText()

        sismo['fecha'] = datos.split(' ')[1][:-5]

        sismo['hora'] =  datos.split(' ')[2][-20:-14]

        sismo['magnitud'] = datos.split(' ')[3][-16:-12]

        sismo['profundidad'] = datos.split(' ')[4][-6:] + " " + datos.split(' ')[5][-11:-8]

        sismo['latitud'] = datos.split(' ')[6].split('º')[0][-9:] +datos.split(' ')[6][-10:-9]

        linea = datos.split(' ')[7].split('º')

        sismo['longitud'] = linea[0][-9:]+ linea[1][0]

        sismo['epicentro'] = datos.split(' ')[8]

        return sismo



def EventoSismoJSON():

    #Devuelve los datos del sismo en formato JSON

    import json

    return json.dumps(Sismo())



if __name__ == '__main__':

    print Sismo()

    print EventoSismoJSON()





A ejecutar el Script devuelve el diccionario con la información del evento sismológico.

python sismux_getdata.py 
{'hora': u'16:13 ', 'latitud': u'   11.73 N', 'epicentro': u'52 Km al sur de Curazao', 'profundidad': u'  40.6 km', 'fecha': u'19/05/2017', 'urlref': u'http://www.funvisis.gob.ve/images/reportes/2017/05/reporte_7415.gif', 'magnitud': u' 3.0', 'longitud': u'  -68.93 O'}
{"hora": "16:13 ", "latitud": "   11.73 N", "epicentro": "52 Km al sur de Curazao", "profundidad": "  40.6 km", "fecha": "19/05/2017", "urlref": "http://www.funvisis.gob.ve/images/reportes/2017/05/reporte_7415.gif", "magnitud": " 3.0", "longitud": "  -68.93 O"}


El código fuente del script lo pueden ver en el repositorio de gitlab.

El siguiente artículo será subir la información en una base de datos mongoDB en mongolab y consultar si el evento sismográfico ya no está registrado.


Martes 09 de mayo de 2017

PCTux: Probando el servicio de VPS Clouding.io

Cálculo de Pi por el método MonteCarlo usando Python.

El método MonteCarlo es un método estadístico numérico que se usa para aproximar expresiones matemáticas complejas y costosas de evaluar conexactitud. Para más información pueden revisar wikipedia.

La expresión matemática que se va a resolver es el cálculo de Pi.

En este artículo mostraré dos versiones del uso del Método MonteCarlo.

El primer ejemplo el algoritmo fue tomado de un código en Pascal y llevado a Python. A continuación el código:


#!/usr/bin/env python

#Se importa el modulo random

import random



#Se define la funcion

def Pi(limite=10000000):

    dentro = 0

    contador = 0

    #Se hace un ciclo hasta que contador sea igual al limite

    while contador < limite:

        #Se calcula  que los puntos esten dentro del radio del circulo

        #Si es asi se incrementa la variable dentro. y luego se incrementa

        #contador para pasar al siguiente ciclo.

        if ((random.random()**2 + random.random()**2) <= 1):

            dentro += 1

        contador += 1

    #Se retorna el resultado de la cantida de puntos dentro del circulo

    #entre el limite por 4.

    return 4.0*float(dentro)/limite



if __name__ == "__main__":

    n = (10000, 1000000,100000000)

    for i in n:

        print ("El valor de pi es: {0:2.8f} para n {1}".format(Pi(i),i))






Al ejecutar el código se tiene:

El valor de pi es: 3.14960000 para n 10000
El valor de pi es: 3.14308000 para n 1000000
El valor de pi es: 3.14141900 para n 100000000


Al aumentar el valor de n se logra tener un número más preciso del valor de PI, claro también se llevará más tiempo en calcular.

En el siguiente ejemplo se basa en un articulo en inglés publicado en Medium que se llama Day 9: Monte Carlo Pi y el código del mismo se encuentra en github.

El código se muestra a continuación:

#!/usr/bin/env python

#Se importa el modulo numpy

import numpy as np





def pi(n, batch=1000):

    t = 0

    for i in range(n // batch):

        p = np.random.rand(batch, 2)

        p = (p * p).sum(axis=1)

        t += (p <= 1).sum()

    return 4 * float(t) / n





if __name__ == "__main__":

    print ("El valor de pi es: {0:2.8f} para n {1}".format(pi(10**8),10**8))


Al ejecutarlo se obtiene:

El valor de pi es: 3.14146076 para n 100000000


Como ven la última versión es menos la cantidad de líneas de código y más rápida. 


Domingo 07 de mayo de 2017

Restructuración del blog.

Tengo varios días sin escribir algo en el blog, primero está la situación local, y lo otro es que ando pensando hacer una restructuración de los blogs que tengo.

Los blogs que tengo son:

  •  ernestocrespo.blogspot.com: Blog en inglés que lo tengo algo descuidado. Este blog lo pienso migrar de primero al url http://blog2.crespo.org.ve y usaré pelican para el contenido.
  • blog.crespo.org.ve: Versión en Español del blog, que tiene más de 300 posts. Como este blog es el que tiene más contenido, la migración será por etapas teniendo una versión beta con nombre blog3.crespo.org.ve, cuando esté lista la migración pasará a ser blog.crespo.org.ve
  • Medium: Este blog será para temas generales no técnicos o algunos técnicos (muy pocos). 
  • ernestocrespo13.wordpress.com: Este normalmente es un respaldo del blog en Español,  ahora manejará los posts de ambos blogs  en inglés y español como respaldo.


En un futuro dejaré de publicar en blogspot y wordpress dejando sólo los blogs  en  pelican.

Otro actividad que tengo es levantar www.crespo.org.ve, y que los dos blogs junto con el de Medium estén enlazaos allí.

El otro punto es que voy a empezar a utilizar acortadores de URL que permitan monetizar el blog, así como ya he colocado enlaces para recibir donaciones vía Billetera Bitcoin o paypal.

A continuación les dejo una imagen donde se encierra en un recuadro negro la billetera bitcoin y el formulario para donar por medio de paypal.




Billetera Bitcoin para donaciones:

197vyJ3KSCj287nLqhb7FSJpJUDayDoTMP

Donar vía Paypal:



Jueves 27 de abril de 2017

Javier Smaldone

Javier Smaldone
Blog de Javier Smaldone

Otra vez a votar como siempre

Se vienen las elecciones legislativas de 2017. Y otra vez los argentinos vamos a votar con el viejo sistema francés de boletas partidarias en un cuarto oscuro (que ya ni los franceses utilizan así). Lastimosamente, se perdió una nueva oportunidad de mejorar nuestro sistema electoral.

Cuarto oscuro

La cosa había empezado bien. Como nunca, se había propuesto una reforma en un año en que no había elecciones, y no tres meses antes —cuando ya no hay tiempo de hacerlo— como suele ocurrir. Pero lamentablemente la intención del Gobierno era impulsar un proyecto de ley “a libro cerrado” para implementar un sistema de voto electrónico. Es cierto que en el medio del debate en la Cámara de Diputados accedieron a agregar un par de artículos para imponer un “cupo igualitario” femenino, pero el oficialismo jamás aceptó cambiar una coma en lo referido al sistema de votación mediante computadoras.

Y no es que nadie les haya acercado ideas. Enrique Chaparro y yo tuvimos la oportunidad de decirle personalmente a Adrián Pérez las mismas cuatro palabras que muchos venimos repitiendo desde hace más de una década: “boleta única de papel”. Pero claro, cuando finalmente pudimos hacerlo, ya el proyecto estaba escrito en piedra (fuimos convocados sólo para poder declamar “escuchamos todas la voces”). Nos oyeron, pero nunca nos escucharon.

Luego el proyecto entró a Diputados. Y allí los críticos del voto electrónico también fuimos convocados. Aunque lo que dijimos tampoco sirvió de mucho, quizás porque los siete que no opinábamos que votar con computadoras es la mejor idea desde el pan cortado en rebanadas fuimos ubicados casi al final de una lista de más de treinta oradores. La mayoría expusimos ante la atenta mirada de cuatro o cinco legisladores. Del proyecto original sólo se modificaron las penas impuestas a tareas que son esenciales para realizar auditorías independientes del sistema propuesto. Sin un sólo informático que avalara el sistema de voto electrónico propuesto, media sanción y al Senado.

Debo decir que en el Senado los críticos fuimos muchos más y mucho mejor tratados, pero sólo porque allí tiene mayoría la oposición. Esta, como tal, se opone a cualquier cosa que impulse el oficialismo (no importa que algunos de sus integrantes hubieran apoyado el sistema de voto electrónico en distritos como Salta y la CABA hasta hacía unos minutos). Se convocó a varios más, se nos dio más tiempo y hasta se organizó una sesión extra para hacer demostraciones. Fue todo un espectáculo ver en el Senado cómo se podía hackear un sistema bancario, romper el secreto del voto usando boletas impresas por una inocua impresora y vulnerar el secreto de la “boleta única electrónica” usando una radio de onda corta (y mejorar este ataque usando una “minipimer”).

Y se acabó el tiempo. Llegó el fin de año y el proyecto de reforma electoral no logró el dictamen de comisión en el Senado. Fin del sueño de votar con computadoras en 2017 y avalancha de descalificaciones e imputaciones a quienes estuvimos en contra desde el primer día (menos diez años). Que nos paga Gildo Insfrán, que promovemos el fraude, que queremos que Aníbal Fernández sea gobernador.

Y este año, a votar. Otra vez con boletas partidarias en un cuarto oscuro, para lo cual previamente cada partido político debe imprimir toneladas de estas (con negociados de los partidos truchos y sufrimiento presupuestario de los partidos chicos). Y conforme se acerque la fecha de la elección ya sabemos lo que pasará: Massa propondrá alquilar máquinas de voto electrónico a Brasil, como si fueran colectivos, y Marcos Peña llorará “vergüenza nacional” por tener que usar algo tan antiguo como el papel para elegir a nuestros legisladores, como lo hacen los países más desarrollados del mundo. Y el día de la elección, periodistas militantes tuitearán una y otra vez cuatro o cinco actas con errores como evidencia concluyente del fraude en las más de 90.000 mesas de votación del país. “Estamos esperando a tener resultados homogéneos”, dirá un señor con chaleco de cazador de patos la noche del domingo, ante la ausencia total de resultados oficiales. Va a ser interesante ver cómo conduce el operativo eleccionario un Ministro del Interior que se empeña en demostrar que el sistema utilizado no sirve para nada y debe “modernizarse”.

Pasó más de un año. La obstinación del oficialismo no dio lugar a ningún cambio que no fuera votar usando computadoras. Y mientras tanto, nadie se preocupó por depurar los padrones electorales. Nada se sabe del sistema a utilizar para realizar el escrutinio provisorio y publicarlo. Los punteros se preparan nuevamente para hacer plegados raros en las boletas y ponerlas en el bolsillo de los votantes (los periodistas tendrán material para nuevos informes sobre bolsones de comida y remises trasladando gente). Las excusas y los chivos expiatorios ya están listos. Es que el proyecto de voto electrónico sigue en el Senado y habrá que revivirlo para 2019. Y a falta de argumentos reales para impulsarlo, la indignación de la gente es buen sucedáneo.

Sábado 22 de abril de 2017

Javier Smaldone

Javier Smaldone
Blog de Javier Smaldone

La ley de voto electrónico: debatir sin mentiras ni descalificaciones

(Publicado en Diario Puntal el 22 de abril de 2016)

En el día de hoy el diario Puntal de Río Cuarto publicó la respuesta del legislador Oscar F. González a una nota publicada el día anterior en donde se reproducían algunos de mis dichos sobre la penosa reforma electoral que la Legislatura de Córdoba (que dicho legislador preside) aprobara el 21 de diciembre próximo pasado. Esto es lo que tengo para decirle al respecto.

Legislador Oscar F. González

Hubiera deseado enfocarme en la discusión por la reforma electoral, pero lamentablemente debo empezar respondiendo a la argumentación ad hominem realizada por el legislador González.

Comienza González aludiendo a mi persona como “intitulado ‘experto en sistemas electorales'”. Aclarándole al legislador que “experto” no es un título sino un adjetivo que refiere a los conocimientos y la experiencia de alguien respecto de una materia, le digo que jamás me presento como experto en sistemas electorales, por la simple razón de que no creo serlo. Tal denominación, a mi entender exagerada, me fue asignada por el periodista que me entrevistó telefónicamente, quizás al ver mis antecedentes como autor de múltiples artículos a lo largo de 10 años y como expositor sobre la materia en las dos cámaras del Congreso de la Nación. Agradezco al legislador el tiempo dedicado a “googlear” mis datos personales, pero debo aclararle que no poseer ningún título en la materia no invalida la veracidad de mis afirmaciones. Creerlo así constituye un error lógico tan grosero como si yo descartara sus opiniones en materia electoral por no ser González abogado sino médico cirujano.

Luego del infructuoso intento del legislador de desacreditarme, continúa con un repaso de las actividades de la Comisión Especial de Reforma Política creada en la Legislatura de Córdoba. Cita entonces el listado de oradores que se presentaron ante la misma a partir del mes de abril, pero luego afirma que “en ningún caso, como lo afirma falsamente Smaldone, hubo conclusión alguna de los legisladores en el sentido de que ‘no se aconsejaba implementar este sistema en la provincia'”. Lo que omite González son las declaraciones públicas del legislador Carlos Gutiérrez, presidente del bloque oficialista, realizadas el día siguiente de finalizadas las exposiciones de los expertos. Según el diario La Voz del Interior del 17 de junio de 2016, Gutiérrez decía: “Nos vamos a quedar con la boleta única que tenemos hoy. Córdoba ha avanzado y creemos que tenemos una buena herramienta que ya ha dado muestras de que es eficiente y práctica para la gente. Sí buscaremos, a través de algún mecanismo digital, la manera de acelerar los tiempos para tener resultados confiables en mejores tiempos”. Efectivamente, anunciaba que en Córdoba se mantendría el sistema de boleta única de sufragio.

No fue hasta el 26 de noviembre de 2016 —casualmente, un par de días después de que se desistiera de usar la “boleta única electrónica” a nivel nacional para las elecciones de 2017— que el propio legislador González anunciaba que desde el oficialismo se impulsaría este método de voto electrónico para la Provincia de Córdoba. En declaraciones al diario Puntal del 27 de noviembre afirmó: “Habiendo fracasado las gestiones a nivel nacional, en Córdoba vamos a avanzar de inmediato en la sanción de una ley para implementar la Boleta Única Electrónica. Es una decisión tomada”. ¿Por qué habría sido noticia, si como dice en su respuesta la inciativa había sido enviada al resto de los partidos 3 meses antes?

La realidad es que el proyecto de reforma electoral apareció a fines de noviembre de 2016. Y fue tratado y aprobado velozmente en sesiones extraordinarias de la Legislatura, algo muy llamativo considerando que no hay elecciones provinciales hasta el año 2019. Y finalmente se aprobó desoyendo a la gran mayoría de los expertos en derecho electoral y sistemas informáticos que el legislador González cita en su respuesta. Entre ellos los doctores Daniel Penazzi y Daniel Zovatto, que también expusieron sus críticas en el Congreso de la Nación. Es más, en un intento desesperado por frenar la lamentable reforma, se organizó una conferencia de prensa en la Facultad de Matemática, Astronomía, Física y Computación de la Universidad Nacional de Córdoba, con la participación de reconocidos especialistas un día antes del tratamiento en el recinto de la Legislatura. No sirvió de nada, como tampoco el documento elaborado por los Departamentos de Computación de 5 de las principales universidades nacionales con carreras de informáticas (entre ellas, 2 de Córdoba) y varios institutos de investigación del CONICET diciendo “NO al Voto Electrónico”.

Efectivamente, como dice el legislador González, la reforma electoral fue tratada por la Comisión Especial de Reforma Política antes de mitad del 2016. Pero sólo para producir un proyecto contrario a las recomendaciones de los expertos —y a las declaraciones públicas del bloque oficialista—, casi sobre el fin del año, y aprobarlo sin mayor trámite el 21 de diciembre a las 21 horas. Y como dijo el poeta Antonio Machado: “la verdad es la verdad, dígala Agamenón o su porquero”.

Viernes 14 de abril de 2017

Javier Smaldone

Javier Smaldone
Blog de Javier Smaldone

Patricia Bullrich y el “ciberpatrullaje”

El 26 de enero de 2017 a la ministra de Seguridad Patricia Bullrich le “hackearon” su cuenta de Twitter. Horas después, apareció evidencia de que el problema era más grave e involucraba a varias cuentas de correo del Ministerio de Seguridad. Un mes después fueron detenidas dos personas acusadas del hecho.

Patricia Bullrich

Con gran sorpresa, ayer me encuentro con que aparezco nombrado en la causa penal. Y, peor aún, que he sido investigado. A continuación, el relato de lo que pasó.

El “hackeo”

Estos son los tweets que aparecieron en la cuenta de Patricia Bullrich:

Los tweets en la cuenta de Patricia Bullrich

Pasó más de una hora sin que nadie los borrara, mientras la ministra estaba en un acto oficial del Ejército. Afortunadamente, tomé el recaudo de guardarlos en archive.org.

Hasta ahí, parecía que el problema se reducía a que alguien había logrado tomar control de la cuenta de Twitter de Bullrich. Pero unas horas más tardes, empezaron a aparecer capturas de la “bandeja de entrada” de varias cuentas del Ministerio de Seguridad (incluyendo la de la ministra).

Como puede apreciarse, los tweets adjuntos a cada uno de los míos fueron eliminados. Afortunadamente, también tuve el recaudo de descargar las imágenes que incluían y volver a tuitearlas.

Desde la misma cuenta de Twitter que se habían publicado las capturas anteriores, se dieron más detalles sobre el “hackeo”:

(Aquí puede ver la captura del primer tweet y la captura del segundo tweet, por si son eliminados).

Luego, desde otras cuentas de Twitter empezaron publicarse capturas de pantalla y volcados de bases de datos, algunos de varios meses antes, que parecían provenir del Sistema Nacional de Información Criminal (SNIC). Finalmente, un usuario identificado como “Niño Orsino” (cuya cuenta de Twitter luego desapareció), comenzó a auto-adjudicarse la violación de las cuentas del Ministerio de Seguridad y del Twitter de Bullrich y luego hasta dio una nota a un medio periodístico. Esta persona resultaría ser más adelante una de las dos imputadas y detenidas, después la única procesada (hasta el momento).

Nota: Por lo que puede verse, y luego confirmaría el auto de procesamiento, Bullrich usaba su dirección de email oficial en el Ministerio de Seguridad para su cuenta personal de Twitter. Fue víctima de un “phishing”, mediante el cual el atacante logró obtener el usuario y la contraseña de su cuenta de email, y luego accediendo a esta pudo cambiar su contraseña en la red social.

La mentira de Bullrich

En un primer momento, Bullrich reconoció el “hackeo” de su Twitter. Luego, a pesar de que todos los indicios mostraban que el problema era bastante más grave de lo que parecía al principio, desde el Ministerio de Seguridad afirmaban que no había cuentas de email comprometidas. Claramente estaban mintiendo, y esto fue advertido por el periodista Julio López:

También, tímidamente, el diario La Nación se animaba a deslizar que había cuentas oficiales del Ministerio de Seguridad involucradas en el incidente (lo que ya para el 28 de enero estaba completamente confirmado). Finalmente, se comprobó: múltiples cuentas de email habían sido comprometidas (40, exageraba el diario Clarín).

Las detenciones

Así anunciaba el 16 de febrero Bullrich la detención de dos personas (dando por sentado que eran culpables, aún sin haber sido juzgadas):

Y así los mostraba la Policía Federal Argentina:

Nada se hacía referencia, desde las cuentas oficiales, a lo ocurrido con los emails del Ministerio de Seguridad. Todo se reducía, según ellos, al Twitter personal de la ministra. Seguían mintiendo, ocultando lo realmente ocurrido.

El procesamiento

El 7 de marzo, el Centro de Información Judicial publicó el auto de procesamiento de uno de los dos imputados dictado por el juez federal Sebastián Ramos. Con sorpresa encuentro que allí aparece mi nombre:

Procesamiento 1

¿”Ciberpatrullaje“? ¿Qué significará esa palabra? Recordemos que esto es un auto de procesamiento, no una charla informal entre amigos. ¿Y por qué el “cabo primero en especialidad computaciónLandajo habla de las 14:18 horas, si mi primer tweet sobre el tema (que reproduzco a continuación) fue a las 15:45 horas?

El párrafo siguiente del escrito es bastante esclarecedor:

Procesamiento 2

¿Qué llevó al cabo primero Landajo a dirigirse a mi cuenta y a incluir capturas de pantalla de mis tweets en su informe? ¿Por qué empezó su búsqueda a partir de mí, para luego llegar al usuario “Libero“? Mi asombro aumentó al leer lo siguiente:

Procesamiento 3

¿Por qué se investigaron mis salidas y entradas al país? ¿Por qué investigaron mis antecedentes y vínculos familiares en el sistema IDGE? ¿Todo esto por citar o retuitear tweets de otra persona (a quien no parecen haberse esforzado para identificar)? Pero mi sorpresa fue aún mayor cuando encontré en el escrito el nombre de Alfredo Ortega:

Procesamiento 4

Alfredo Ortega (doctor en informática del ITBA y especialista en seguridad informática reconocido internacionalmente) aparece mencionado… ¡por retuitear un tweet de otra persona! Sí, por dar un RT (una tarde donde Patricia Bullrich fue “trending topic“). Nuevamente: ¿por qué el cabo primero Landajo estaba viendo su perfil, y por qué decidieron incluirlo con nombre y apellido en la causa? Quizás, “ciberpatrullando” mis tweets de aquel día, se encontró con este:

Y la última pregunta: ¿por qué se publican nuestros nombres completos, cuando según las “reglas de Heredia” sólo deberían incluirse nuestras iniciales, ya que no estamos implicados directamente en la causa?

¿”Ciberpatrullaje” dirigido?

Tanto Alfredo Ortega como yo fuimos invitados a exponer el año pasado tanto en la Cámara de Diputados como en la Cámara de Senadores, y en ambas expusimos nuestra posición contraria al voto electrónico. Quizás sea esto lo que dirigió al “cabo primero en especialidad computación” en su extraño “ciberpatrullaje” directamente hacia nuestras cuentas de Twitter. Definitivamente, decir ciertas cosas molesta a muchos.

Es inquietante pensar hasta dónde llegará el “ciberpatrullaje” que realizan las fuerzas de seguridad comandadas por la ministra Patricia Bullrich y cuántas veces pasarán las “ciberpatrullas” por nuestros perfiles en redes sociales sin que nos enteremos. Claro, no están identificadas por ningún color, y no llevan balizas ni sirenas.

Miércoles 12 de abril de 2017

Ubuntips: Rubias sexys en Internet
Ubuntips: ¿Por qué Google sabe lo que quiero buscar?

Viernes 31 de marzo de 2017

Eduardo Federico

Eduardo Federico
Paraiso Linux

Como auto ejecutar aplicaciones en escritorios especificos en Gnome

Este mini tutorial les va a parecer complicado pero en realidad no lo es tanto. El objetivo es sencillo: auto ejecutar aplicaciones en Gnome, y que se inicien en los escritorios que deseemos.

Auto iniciar aplicaciones en Gnome

Resulta que los de Gnome han decidido quitar esa opción, por lo tanto para recuperarla tenemos que instalar gnome-session-properties. Estoy seguro que saben como instalar aplicaciones en Linux.

Luego iniciamos esta utilidad con Alt + F2.

Todavía no la vamos a usar, pero dejo una captura de ejemplo de como se podria auto iniciar Polly, un cliente de twitter para Linux.

Como mover aplicaciones a un escritorio predefinido

Para esto vamos a hacer uso de una aplicacion llamada wmctrl. Esta nos permite interactuar con el gestor de ventanas. Es una aplicacion que usa desde la consola o desde scripts.

Por ejemplo, para mover polly que abrimos recien al escritorio 2 escribiriamos en la consola algo asi:

wmctrl -r polly -t 1

Tambien podemos hacer otras cosas como:

  • -a para que el foco se ponga sobre el programa que le indiquemos, sin importar en cual escritorio este
  • -s para movernos a un escritorio predefinido

Como auto iniciar aplicaciones en un escritorio predefinido en Gnome

Ahora, uniendo las 2 partes anteriores del tutorial vamos a hacer lo que vinimos a hacer. Primero, abren gedit o cualquier editor de texto. Y escriben lo siguiente adentro:

 

#!/bin/bash

google-chrome-stable &
polly &
spotify &
spacefm &

sleep 5

wmctrl -r google-chrome-stable -t 0
wmctrl -r spacefm -t 0
wmctrl -r polly -t 1 
wmctrl -r spotify -t 2 

wmctrl -a google-chrome-stable

Este script tiene 3 partes.

  • Primero: Abrimos todas las aplicaciones que deseamos auto iniciar.
  • Segundo: Movemos cada aplicación al escritorio deseado. 0 es para el primer escritorio, 1 para el segundo, etc etc
  • Tercero: Ponemos el foco en la aplicación preferida.

Guardamos el archivo en nuestra carpeta home con un nombre descriptivo y que empiece con un '.'. Por ejemplo: .auto-iniciar

Ahora abrimos gnome-session-properties y añadimos una entrada que se llame 'Auto Iniciar' y que apunte al script que acabamos de guardar. Algo asi:

Si no funciona prueben cambiando el valor de sleep por uno mas grande, o agregando un sleep al inicio.

Eso deberia ser todo, espero que les funcione y que compartan la entrada.

La entrada Como auto ejecutar aplicaciones en escritorios especificos en Gnome pertenece a Paraiso Linux.

Domingo 12 de marzo de 2017

Ubuntips: ¿Ver porno mete virus en el ordenador?

Lunes 30 de enero de 2017

Eduardo Federico

Eduardo Federico
Paraiso Linux

Como agregar un certificado SSL gratuito desde Vesta Panel

Si están al tanto de las noticias sobre internet, webs, SEO y tecnologia en general, seguramente habrán leído los nuevos cambios que involucran a la seguridad de las webs y las transcacciones realizadas en distintas webs.

Lo voy a resumir muy facilmente:

  • Muchas webs estan implementando certificados SSL en sus webs. Esto les permite tener una url que empiece con https://
  • Esto es debido a que no tenerlo puede afectar al SEO de un sitio. Ver esta nota en el blog de webmasters de google.
  • Ademas Chrome y Mozilla muestran como inseguros los sitios que no cuenten con dicho certificado. Ver nota en ayudawp.

La cuestión es que hace unos años tener un certificado SSL significaba desenbolsar $50 dolares anuales por cada sitio. Pero gracias a los certificados de Let’s Encrypt podemos tener certificados 100% gratuitos y muy fáciles de instalar.

Y como se hicieron tan comunes, la ultima version del panel Vesta agrega una opcion para que agregar este tipo de certificados a tu web sea todavia mas facil. Vamos a ver como hacerlo.

En la seccion WEB de su panel Vesta, hagan click en EDIT del dominio en cuestion.

Veran que hay un check que dice SSL Support. Deben marcarlo y tambien marcar el que aparece debajo que dice Lets Encrypt Support.

Guardan los cambios.

Ahora en su navegador prueban escribir la url completa con https:// y el navegador deberia marcarles esa web como segura.

Redirigir http a https

Ahora lo que deben hacer es solución un pequeño problema muy grande, y es no tener 2 versiones del mismo sitio. Para ello vamos a editar el archivo .htaccess y agregamos esto:

RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://paraisolinux.com/$1 [R,L]

Obviamente poniendo tu url en lugar de la mia.

Para probar escriben en la navegador escriben la url sin el https y si se redirige esta bien.

Solucionar Error 403 forbidden

En la mayoría de los sitios con hacer lo anterior ya estaría todo solucionado. Pero si por ejemplo siguieron el tutorial de Laravel + Vesta veran que no funciona, lo que deberán hacer es:

sudo nano /home/admin/conf/web/sapache2.conf

Y editar las mismas lineas mencionadas en el tutorial mencionado.

 

La entrada Como agregar un certificado SSL gratuito desde Vesta Panel pertenece a Paraiso Linux.

Domingo 29 de enero de 2017

Eduardo Federico

Eduardo Federico
Paraiso Linux

Como añadir un subdominio en Vesta Panel

Ya hemos visto lo sencillo que es agregar un dominio a Vesta. Pero tambien vimos que es necesario tocar los RECORDS.

Para agregar un subdominio también tendremos que hacerlo. Pero sigue siendo una tarea super sencilla.

Primero nos dirigimos a la seccion WEB de Vesta. Alli vamos a agregar el subdominio haciendo click en 'ADD WEB DOMAIN'.

Al igual que cuando añadimos el dominio deberemos elegir correctamente la IP y crear un usuario FTP.

A continuación nos dirigimos a nuestra cuenta de Digital Ocean y en la seccion 'Networking' buscamos la opcion 'Manage Domain' del dominio que nos interesa.

En esta nueva pagina debemos agregar un nuevo Record del tipo A. Escribiendo en el primer campo el nombre del subdominio y en el segundo campo eligiendo el droplet a donde apuntara ese dominio.

Ahora si ingresan en ese subdominio deberían ver la pagina por defecto de Vesta.

Una cosa mas. Si por X casualidades de la vida, en ese subdominio desean tener un proyecto realizado con Laravel o Lumen, lo mejor seria seguir el tutorial para instalar Laravel en Vesta.

 

La entrada Como añadir un subdominio en Vesta Panel pertenece a Paraiso Linux.

Lunes 09 de enero de 2017

Mariano Mendez

Mariano Mendez
[A]NTRAX - [L]ABS

BING: El buscador olvidado


Posicionamiento WEB

Hoy día, quien tiene una un sitio Web de cualquier naturaleza, sea para ofrecer un servicio, producto, o incluso para compartir materiales o documentación digital, si quiere marcar presencia en la red de redes, necesariamente tendrá que considerar el posicionamiento WEB o SEO (Search Engine Optimization). 

Sabemos que el SEO comprende una serie de estrategias, técnicas, o incluso habilidades para lograr las primeras posiciones en los resultados de los buscadores clásicos: Google, Bing, Yahoo, etc.
Va de suyo que podemos pagar marketing publicitario para tales fines; sin embargo las destrezas del SEO nos permiten lograr estupendos posicionamientos en las búsquedas gratuitamente,  aunque impliquen laboriosidad.

En mi opinión, se leen muchísimos tips para el SEO de Google, pero me queda la sensación que tanto Bing como Yahoo, no siempre son tenidos en cuenta en este trabajo de posicionar nuestro sitio digital. 

Aclaro que no es mi idea en esta entrada enumerar estrategias o sugerencias para mejorar el SEO, sino apuntar a que se consideren otros buscadores diferentes de Google a la hora de posicionar un espacio cibernético.  Sino llamar a la reflexión para tener presente al  segundo motor de búsqueda más importante: BING.


Números en BING

La cuota de mercado de BING, según señalan  los expertos va en ascenso:

“...Bing actualmente cuenta con el 21,9% de la cuota de mercado en escritorio en Estados Unidos. Una información que ha llamado nuestra atención y que demuestra que el buscador de Microsoft no ha dejado de crecer. Un punto en el que podrían tener que ver las últimas novedades incorporadas por el gigante tecnológico. Pero vayamos con los datos.



 “En concreto, la cifra supone un incremento de un 0,1 porcentual respecto del mes de junio, cuando contaba con el 21,8%. Los datos ofrecidos por la citada compañía, asimismo, muestran una caída del 0,4 por parte de Google...”

Los números de la gráfica hablan por sí mismos.


Otros comentarios sobre Bing

Más allá de las cifras expuestas, es oportuno recordar que Facebook y Skype emplean a Bing como buscador por defecto y las redes sociales o la mensajería instantánea son puntos claves en el SEO, tanto  por su extendido uso como por su  notoriedad.

Si a esto le agregamos los aspectos técnicos que a Bing le preocupan como, por ejemplo: velocidad, link rotos del sitio, evitar contenidos flash, entre otros; se torna una sumatoria de elementos que no deberían estar olvidados para el SEO de nuestra Web.

Posicionar un espacio digital no es tarea sencilla, pero es la base para el éxito del mismo.
Como comenté antes, no dejaré un tutorial de sugerencias, pero quiero destacar en lo referente al SEO en bing una interesante guía para que al momento de poner manos a la obra la consideren.

Mariano Mendez

Mariano Mendez
[A]NTRAX - [L]ABS

Cómo comprar BITCOINS


En esta entrada hablaremos de las criptomonedas, en particular de los Bitcoin. Seguramente todos han oído hablar de este tipo de moneda digital, pero no está de más recordar qué es y para qué sirven los Bitcoins, sin perjuicio de algunas reflexiones personales sobre las ventajas de su uso.

Referencias previas del término Bitcoin

Si consultamos en Wikipedia el término Bitcoins:


“Bitcoin (signo: BitcoinSign.svg; abr.: BTC, XBT) es una criptodivisa concebida en 2009. El término se aplica también al protocolo y a la red P2P que lo sustenta y de forma común se denomina como una moneda digital. Generalmente se usa «Bitcoin» para referirse a la red o al protocolo y «bitcoin» (plural: «bitcoines») para referirse a las unidades monetarias.”


De la transcripción precedente puede inferirse que bajo la expresión “Bitcoin” se comprenden tres aspectos diferentes:

Como moneda digital o unidades  de pago en intercambios comerciales vía online.


Como protocolo estandarizado que da soporte a las transacciones electrónicas, sin la mediación de terceros.

Como red para donde se negocian las operaciones comerciales.
Desglosadas estas referencias, hay que destacar que la criptomoneda se sustenta en un sistema totalmente peer-to-peer(persona a persona) donde los intermediarios quedan excluidos. La no intervención de terceros y la ausencia de una Autoridad Central bancaria de país alguno,  es una de las ventajas de los Bitcoins, en la medida que inhibe la especulación y la participación en ganancias como lo hacen las entidades financieras. 

Apoyando estas líneas de pensamiento, en bitcoins.org se reseña: 


“De la misma manera que nadie controla la tecnología detrás del correo electrónico, Bitcoin tampoco tiene propietarios. Bitcoin lo controlan todos los usuarios de Bitcoin del mundo. Aunque los programadores mejoran el software, no pueden forzar un cambio en el protocolo de Bitcoin porque todos los demás usuarios son libres de elegir el software y la versión que quieran. Para que sigan siendo compatibles entre sí, todos los usuarios necesitan utilizar software que cumpla con las mismas reglas. Bitcoin sólo puede funcionar correctamente si hay consenso entre todos los usuarios. Por lo tanto, todos los usuarios y programadores tienen un gran aliciente en proteger dicho consenso.”


Se señala como creador del sistema a  Satoshi Nakamoto y el 12/01/2009 se anota como la primera transacción con esta moneda; y desde esa fecha no solo se ha disparado el uso de Bitcoins, sino el valor que los respalda. Razones evidentes por las que se hace recomendable su uso.  

¿Cómo comprar Bitcoins?

Adscribirse al sistema no es difícil y en lo particular recomiendo las orientaciones del siguiente enlace como comprar bitcoins en Argentina, donde se explica detalladamente los pasos a seguir para la adquisición y operaciones con la moneda criptográfica de la que hablamos. Además de contener un estupendo FAQ de preguntas frecuentes que solventan toda duda. 

A modo de cierre de la entrada y en forma sintética  se pueden destacar cuatro puntos a saber:

Seguridad del sistema: basado en un sistema criptográfico altamente seguro.


    Anonimicidad en las transacciones: la privacidad es un elemento fundamental al momento de adquirir, vender, enviar o recibir pagos. 

      Operaciones en tiempo real al instante:se puede enviar y recibir pagos a cualquier lugar del mundo en forma instantánea.
Expansión de la criptomoneda:actualmente casi todos los negocios online aceptan el Bitcoin como medio de pago. Se habla del Bitcoin como la moneda futurística.


Domingo 08 de enero de 2017

David Moreno

David Moreno
dm's blog

Thanks Debian

I sent this email to debian-private a few days ago, on the 10th anniversary of my Debian account creation:

Date: Fri, 14 Aug 2015 19:37:20 +0200
From: David Moreno 
To: debian-private@lists.debian.org
Subject: Retiring from Debian
User-Agent: Mutt/1.5.23 (2014-03-12)

[-- PGP output follows (current time: Sun 23 Aug 2015 06:18:36 PM CEST) --]
gpg: Signature made Fri 14 Aug 2015 07:37:20 PM CEST using RSA key ID 4DADEC2F
gpg: Good signature from "David Moreno "
gpg:                 aka "David Moreno "
gpg:                 aka "David Moreno (1984-08-08) "
[-- End of PGP output --]

[-- The following data is signed --]

Hi,

Ten years ago today (2005-08-14) my account was created:

https://nm.debian.org/public/person/damog

Today, I don't feel like Debian represents me and neither do I represent the
project anymore.

I had tried over the last couple of years to retake my involvement but lack of
motivation and time always got on the way, so the right thing to do for me is
to officially retire and gtfo.

I certainly learned a bunch from dozens of Debian people over these many years,
and I'm nothing but grateful with all of them; I will for sure carry the project
close to my heart — as I carry it with the Debian swirl I still have tattooed
on my back ;)

http://damog.net/blog/2005/06/29/debian-tattoo/

I have three packages left that have not been updated in forever and you can
consider orphaned now: gcolor2, libperl6-say-perl and libxml-treepp-perl.

With all best wishes,
David Moreno.
http://damog.net/


[-- End of signed data --]

I received a couple of questions about my decision here. I basically don’t feel like Debian represents my interests and neither do I represent the project – this doesn’t mean I don’t believe in free software, to the contrary. I think some of the best software advancements we’ve made as society are thanks to it. I don’t necessarily believe on how the project has evolved itself, whether that has been the right way, to regain relevancy and dominance, and if it’s remained primarily a way to feed dogmatism versus pragmatism. This is the perfect example of a tragic consequence. I was very happy to learn that the current Debian Conference being held in Germany got the highest attendance ever, hopefully that can be utilized in a significant and useful way.

Regardless, my contributions to Debian were never noteworthy so it’s also not that big of a deal. I just need to close cycles myself and move forward, and the ten year anniversary looked like a significant mark for that.

Poke me in case you wanna discuss some more. I’ll always be happy to. Specially over beer :)

Peace.

Jueves 15 de diciembre de 2016

Mariano Mendez

Mariano Mendez
[A]NTRAX - [L]ABS

XSS por POST


Hace unos días reportaron un XSS por POST en el formulario de contacto de Underc0de. Por suerte no era nada riesgoso, pero era una vulnerabilidad que debíamos arreglar.
En esta ocasión usaremos el código de ese formulario de contacto para reproducir la falla y para ver como probar si nuestras aplicaciones son vulnerables a los XSS por POST.

El código del formulario de contacto está acá: www.hospedando.com.mx/descargas/formulario.zip por si alguno desea realizar la prueba.

Además, necesitaremos alguna herramienta que modifique los parámetros que enviemos por POST. Yo usare Tamper Data que es un complemento de Firefox:

https://addons.mozilla.org/es/firefox/addon/tamper-data/

Una vez montado el formulario de contacto se vera algo así:



El primer paso será completar todos sus campos y abrie Tamper Data. Una vez hecho esto, damos en "Comenzar Modificación" (En el tamper data) y enviamos el formulario de contacto.
Seguido a esto, nos aparecerá una alerta en Tamper Data para modificar los datos que estamos enviados.


Damos en modificar, y revisamos los valores que está enviando del lado derecho, que son los que hemos cargado desde el formulario.


Ahora es momento de jugar con estos campos. Este formulario de contacto no filtra sus variables, asique colocaremos algún vector de XSS en sus parámetros.
En este caso, coloqué un simple alert en el campo correo.

<script>alert('XSS')</script>

Pero podemos buscar o usar cualquier otro. Al dar en Aceptar, el sitio seguirá cargando con la nueva información suministrada...


Y como podrán apreciar, apareció el Alert con nuestro mensaje.

Espero que les sirva!

Lunes 29 de agosto de 2016

David Moreno

David Moreno
dm's blog

Webhook Setup with Facebook::Messenger::Bot

The documentation for the Facebook Messenger API points out how to setup your initial bot webhook. I just committed a quick patch that would make it very easy to setup a quick script to get it done using the unreleased and still in progress Perl’s Facebook::Messenger::Bot:

use Facebook::Messenger::Bot;

use constant VERIFY_TOKEN => 'imsosecret';

my $bot = Facebook::Messenger::Bot->new(); # no config specified!
$bot->expect_verify_token( VERIFY_TOKEN );
$bot->spin();

This should get you sorted. What endpoint would that be, though? Well that depends on how you’re giving Facebook access to your Plack’s .psgi application.

Domingo 21 de agosto de 2016

David Moreno

David Moreno
dm's blog

WIP: Perl bindings for Facebook Messenger

A couple of weeks ago I started looking into wrapping the Facebook Messenger API into Perl. Since all the calls are extremely simple using a REST API, I thought it could be easier and simpler even, to provide a small framework to hook bots using PSGI/Plack.

So I started putting some things together and with a very simple interface you could do a lot:

use strict;
use warnings;
use Facebook::Messenger::Bot;

my $bot = Facebook::Messenger::Bot->new({
    access_token   => '...',
    app_secret     => '...',
    verify_token   => '...'
});

$bot->register_hook_for('message', sub {
    my $bot = shift;
    my $message = shift;

    my $res = $bot->deliver({
        recipient => $message->sender,
        message => { text => "You said: " . $message->text() }
    });
    ...
});

$bot->spin();

You can hook a script like that as a .psgi file and plug it in to whatever you want.

Once you have some more decent user flow and whatnot, you can build something like:



…using a simple script like this one.

The work is not finished and not yet CPAN-ready but I’m posting this in case someone wants to join me in this mini-project or have suggestions, the work in progress is here.

Thanks!

Miércoles 29 de junio de 2016

PCTux: El hashtag que pide a Messi que no se vaya

Lunes 13 de junio de 2016

Javier Ledesma

Javier Ledesma
Ubuntronics

Richard Stallman nos explica: ¿Por que no usar celulares?

Richard Matthew Stallman (nacido en Manhattan, Nueva York, 16 de marzo de 1953), con frecuencia abreviado como «rms» es un programador estadounidense.


Es principalmente conocido por el establecimiento de un marco de referencia moral, político y legal para el movimiento del software libre, como una alternativa al desarrollo y distribución del software no libre o privativo.

Continuar leyendo »

Domingo 12 de junio de 2016

Javier Ledesma

Javier Ledesma
Ubuntronics

¿Cómo crear una lista de los paquetes instalados con Pacman y Yaourt?

Hacer una lista de todos los paquetes instalados en nuestro sistema ─en mi caso Arch Linux─ por medio de los gestores: Pacman y Yaourt, ¡es muy fácil!


Con ejecutar un solo comando en un Terminal es posible conocer los paquetes que hemos instalados, a excepción de los paquetes "base" y "base-devel".

Continuar leyendo »

Lunes 06 de junio de 2016

Javier Ledesma

Javier Ledesma
Ubuntronics

Jugar a Game Boy Advance en Linux con mGBA

Game Boy Advance (abreviada como GBA) es una popular consola de videojuegos de la compañía Nintendo. Hubo juegos de todos los géneros para esta consola que también, es compatible con todos los juegos de Game Boy y todos los de Game Boy Color.


mGBA en un emulador de Game Boy Advance con el que podrás disfrutar de todos los juegos de la fantástica consola de Nintendo en tu ordenador.

Continuar leyendo »

Viernes 05 de febrero de 2016

PCTux: Cupones de descuento en Argentina

Domingo 08 de noviembre de 2015

Sergio A. Alonso

Sergio A. Alonso
Bunker Blog

Taller de Linux y Ruby on Rails

Hace tiempo que no posteo en el Blog
Sepan disculpar: no solo no me he retirado, sino que gracias a mis dos últimos empleos, Belatrix y Supercanal (donde sigo trabajando) he aprendido mucho y apenas me ha alcanzado el tiempo para transmitir conocimientos nuevos
Como para no dejar completamente de lado la docencia, lanzo la cuarta edición de este Taller, con muchas novedades.
Si bien el Taller es presencial, incluye un aula virtual propia con todo lo necesario para crear los primeros algoritmos en Ruby, diseñar aplicaciones web, hacer scripting, y armar ambientes reales de producción.
El taller es muy intenso: incluye varios meta conocimientos alrededor de esta tecnología adquiridas a lo largo de 20 años de experiencia: intercambio de llaves, GIT, seteo de Apache, balanceadores de carga, debug sobre el terreno, despliegue de nodos, deploy en clouds, y una larga lista de habilidades tanto del desarrollador web como de esa nueva profesión que se viene gestando llamada DevOp.


Ejemplo del aula, la cual gracias a Screen y al fantástico Codebox IDE me permite asistir rápidamente a los alumnos:

Para los impacientes, aquí les dejo un enlace a la descripción del Taller, clase por clase: https://goo.gl/ngQ2BE

Enlace hacia la nota completa: http://goo.gl/BLyqdy

Se agradece su difusión.

Martes 13 de octubre de 2015

¿Que es QRDA? #QRDA @QRDAve

QRDA nace bajo la idea de proveer soluciones tecnológicas a distintas organizaciones sin fines de lucro, a través del apoyo de twitter.com/delbosquetech y con el respaldo de la Comunidad del Software Libre en Venezuela.

Esta idea la propone Luis Ortiz, gran amigo y compañero de trabajo. Se desarrolla en una reunión social (agua, cerveza, jugos, refresco, pizza) por lo que es considerado un evento entre panas que buscamos un mismo fin: dar apoyo con nuestro conocimiento tecnológico para desarrollar proyectos determinados.

Luis en la Charla de Inicio de QRDA

Luego de establecer las bases que sustentarían este proyecto, se fueron creando diferentes tickets en github que permitieran establecer un orden a las actividades que se van desarrollando, para luego crear las diferentes listas de correo y comenzar a trabajar.

Al final de la actividad pudimos compartir con personas que se acercaron de diferentes parte de Venezuela y que integran la Comunidad del Software Libre, gente con la cual me identifico y que se ha ganado mi respeto.

La lista de agradecimiento es extensa, son muchos los involucrados en este maravilloso proyecto que, aún y cuando está comenzando, podría asegurar que ayudará a muchas personas y tendrá un crecimiento positivo. Muchas gracias a todos.

Les dejo las redes sociales de QRDA para que también puedan seguir este proyecto y, si lo desean, puedan unirse a nosotros:

https://twitter.com/QRDAve/
https://instagram.com/qrda.ve
https://www.facebook.com/QRDA.com.ve
http://qrda.com.ve

Nuevamente Gracias por venir.

Lunes 14 de septiembre de 2015

La accesibilidad web para personas con discapacidad visual

“La Accesibilidad” hoy en día es una de las palabras más utilizadas cuando nos referimos a las persona con alguna discapacidad, más específicamente la discapacidad visual. Ésta no solamente abarca los aspectos de software y hardware, sino que además se centra en la vida misma de estas personas, cómo puede hacerse más fácil la tarea de convivir con personas que no tienen este tipo de desventaja; debido a esto, las instituciones del Estado se han interesado y comprometido a realizar medios más accesibles para ellos, así por ejemplo tenemos los pasos peatonales, incluso hoy en día hablamos de la creación de páginas web o sistemas de información accesibles. Es importante resaltar que se debe hacer un buen uso de la tecnología para poder romper las barreras que se presentan.
La construcción de estos sistemas o páginas web son de gran ayuda para las personas que viven con esta discapacidad debido a que han sido de alguna forma discriminados, sin dejar a un lado que este grupo está ya formado por más de 30 mil personas en nuestro país, esto de acuerdo a las cifras arrojadas en el censo realizado por CONAPDIS (Consejo Nacional para las Personas con Discapacidad). Es por ello que en estos momentos se debe luchar por incluir a todas estas personas en las actividades cotidianas del hombre, más específicamente en el mundo de las tecnologías, permitiéndoles conocer, por medio de páginas web por ejemplo, todo el contenido que puede ser de su interés y así pueda salir adelante de una mejor manera. El objetivo principal es que estos sistemas estén disponibles para todas estas personas y que sean incluidas en el aparato productivo de nuestro país, además de que la misión es producir, transformar e implantar bienes y servicios lo suficientemente accesibles para ellos.
La tiflotecnología ha logrado grandes avances; a nivel mundial existen organizaciones dentro de las cuales podemos mencionar a La Once (Organización Nacional de Ciegos Españoles), la cual ha sido pionera en el uso de herramientas o dispositivos que ayudan a las personas con esta discapacidad, a ser independientes. También existen escuelas destinadas a la enseñanza completa de estas personas, como son la Lighthouse International en Estados Unidos, encargada de enseñar de manera completa con la finalidad de lograr el desenvolmiento de estos; les proporcionan ayuda en cuanto a la orientación, el uso del computador, el uso del bastón, además de otras actividades, todo con la finalidad de que cada uno de ellos no pase a ser una carga para sus familias, sino que sean personas independientes y capaces de desenvolverse tanto tecnológicamente como en las relaciones de su vida diaria.
La metodología aplicada en esta investigación es documental, ya que trata de ver lo que existe hoy en día, cómo se puede mejorar y cómo se pueden crear herramientas que verdaderamente sean útiles para el trabajo diario, ya que no tendría ningún sentido desarrollar aplicaciones sin tomar en cuenta a los usuarios interesados acerca de cómo se les puede ayudar.
Palabras Claves: Hardware, Software, Software Libre, Tiflotecnología, Discapacidad, Discapacidad Visual.

Este es uno de los tantos articulo arbitrado realizado en el proceso de postgrado, luego explicare las fases y las herramientas a usar.

Sábado 12 de septiembre de 2015

Instalar Samba en Debian

Primero que nada hacemos la instalación del paquete
root@orthanc:/home/julioh# aptitude install samba

En nuestro home creamos el nombre de una carpeta que vamos a usar para compartir
mkdir share
chmod 777 share

Luego modificamos el archivo de configuración de samba

root@orthanc:/home/julioh# nano /etc/samba/smb.conf


# Samba config file created using SWAT
# from UNKNOWN (192.168.42.219)
# Date: 2014/05/15 14:19:36
[global]
server string = %h server
map to guest = Bad User
obey pam restrictions = Yes
pam password change = Yes
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
unix password sync = Yes
syslog = 0
log file = /var/log/samba/log.%m
max log size = 1000
dns proxy = No
usershare allow guests = Yes
panic action = /usr/share/samba/panic-action %d
idmap config * : backend = tdb
hosts allow = 127.0.0.1, 192.168.41.0/24, 192.168.40.0/24
#hosts deny = 0.0.0.0/0
#Comentamos el HostDeny para que me acepte los rangos de ip #de nuestra red interna
#[homes]
# comment = Home Directories
# valid users = %S
# create mask = 0700
# directory mask = 0700
# browseable = No

#[printers]
# comment = All Printers
# path = /var/spool/samba
# create mask = 0777
# printable = Yes
# print ok = Yes
# browseable = No
[print$]
comment = Printer Drivers
path = /var/lib/samba/printers
[SALA]
comment = Archivos Compartidos
path = /home/julioh/share
#admin users = root, SalaP, sala01, sala02
#username = root
#hosts allow = 192.168.41.0
#read list = @users
#public = yes
#only guest = yes
#Le descomentamos para que puedan escribir
writable = yes
read only = yes
valid users = SalaP, root, sala01, sala02
write list = SalaP, root, sala01, sala02
# Lineas agregadas
# crear archivos con permisos rxw
create mask = 0700
# crear directorios con permisos rxw
directory mask = 0700

Luego Detenemos el demonio y lo volvemos a levantar
root@orthanc:/home/julioh# /etc/init.d/samba restart
[ ok ] Stopping NetBIOS name server: nmbd.
[ ok ] Starting NetBIOS name server: nmbd.
[ ok ] Stopping SMB/CIFS daemon: smbd.
[ ok ] Starting SMB/CIFS daemon: smbd.
[ ok ] Stopping Samba AD DC daemon: samba

Luego de esos podremos compartir archivos en un directorio seguro para una red interna.

Lunes 07 de septiembre de 2015

Sergio A. Alonso

Sergio A. Alonso
Bunker Blog

Shot of work's laptop




A typical work session with Arch, Mate Window Manager, Numix Theme + my own colors.

Vim Janus with Molokai theme, Oh-my-zsh with Agnoster theme, Terminator, Tig, and Fuck correct typos. 

Wallpaper is one of my favorites related to Owl's Moving Castle, downloadable from here: http://www.allmacwallpaper.com/get/iMac-21-inch-wallpapers/-Howl's-Moving-Castle-1920x1080/5226-9.jpg

Jueves 02 de julio de 2015

Che … ¿y los datos?

Hace mas de un año, en abril de 2014, hice una presentación sobre Gobierno Abierto / Datos Abiertos para Libres del Sur / FAP.

En dicha presentación me enteré que dentro de la Secretaría de Desarrollo Tecnológico se había iniciado un proceso de apertura de datos de la administración municipal.

Como con todo aquello que hace el Intendente Pulti, me pareció bien la iniciativa pero me reservé las opiniones para mas adelante, ya que su costumbre siempre es patear para adelante y esperar que los reclamantes se cansen.

Ah, y también hacer mucha parafernalia y ruido con poquitas nueces.

Así fue como apareció el “Portal de Datos Abiertos” de la MGP. Y se hizo un Hackaton. Y un Concurso de Aplicaciones.

Me voy a referir al primer punto, el portal de datos abiertos.

Se suponía que allí uno iba a poder encontrar la información que necesitara sobre la Municipalidad y la ciudad, en formatos libres y abiertos, y actualizada.

Lo que realmente se encuentra (con la excepción de los datos de llamadas al 147, que parecen ser extraídas directamente del sistema que usa el call center), es todo lo que publicaron hace un año y olvidaron ahí.

Asi se ve la parte sobre datos sobre seguridad:

datos_seguridad_20150701

Así los referidos a medio ambiente:

datos_medioambiente_20150701

datos_medioambiente_osse_20150701

Los de movilidad:

datos_movilidad_20150701

Los de economía y presupuesto:

datos_economía_20150701

datos_presupuesto_20150701

Adicionalmente, en la página de Información Presupuestaria, los archivos que hasta el 2014 se publicaban en formato de planilla de cálculo, ahora han pasado a estar publicados en pdf, dificultando así cualquier análisis que uno quiera hacer, u obligando a convertirlos, con los problemas que implica cuando se tratan de datos en esquemas de tablas.

Todo sigue igual. O peor. Pero manteniendo el relato.

Domingo 17 de mayo de 2015

25 años de Internet en Argentina

patchcord_keyboardHoy es el día en que se conmemora el “día de Internet”. En realidad, el Día Mundial de las Telecomunicaciones y de la Sociedad de la Información, pero a veces es bueno simplificar un poco 😉 .

Este festejo surge de una propuesta de la Cumbre Mundial sobre la Sociedad de la Información, que pidió a la Asamblea General de las Naciones Unidas instituir el 17 de mayo como Día Mundial de la Sociedad de la Información, lo cual resultó decidido en forma afirmativa. Luego, la ITU (International Telecommunication Union) decide unificarlo con su Día de las Telecomunicaciones, dado que en esta fecha, y de eso también hoy se festejan los 150 años, se fundaba dicha unión.

Pero, lo que es la casualidad, resultó que un día 17 de mayo de 1990, en la ciudad de Buenos Aires y de la mano de Jorge Amodio, Argentina ponía en marcha su primer enlace a Internet.

Como fue que esto sucedió pueden leerlo en el blog del propio Amodio, haciendo click aquí.

También destaco este documento histórico: el e-mail en el cual se informa al administrador en USA que el enlace estaba funcionando.

>From pete Thu May 17 19:55:20 1990
>Subject: Line up ….
>To: atina!umd5.umd.edu!rcoltun (Rob Coltun)
>Date: Thu, 17 May 90 19:55:20 GMT-3:00
>
> Hi Rob,
>
> glad to contact you again, and very glad now because I’m
>looking the Cisco console showing “line up” over our link.
>
> I sent to Glenn the formal Internet Number and Autonomus
>System registration.
>
> Can you help me with the configuration of the Cisco router,
>I believe that we are able to do real networking tests ( your words
>sometime ago ) …
>
> I’ll wait your response,
>
> Best regards,
> Jorge.

Por esto es que quiero enviar mi saludo y las felicitaciones a quienes fueron los pioneros de Internet en Argentina, los que tras 25 años nos han dejado un legado de posibilidades extrarordinarias.

Gracias colegas!!!

Domingo 05 de abril de 2015

A 10 años del ICANN Meeting en Mar del Plata

Hace 10 años, un día 4 de abril de 2005, se iniciaba en Mar del Plata el ICANN Meeting XXII, el primero en ser realizado en nuestro país.

No fue casualidad que se haya organizado en la ciudad donde vivo. Un año antes, un grupito de marplatenses propusimos que se hiciera en nuestra ciudad y tuvimos la suerte de que los costos de alojamiento y comida estuvieran, en ese momento, bastante mas bajos que en la Ciudad de Buenos Aires, lo que nos dio ventaja en la decisión final de donde se hacía.

Y así empezó esta aventura que hoy es uno de los mas gratos recuerdos de mi vida profesional.

El evento se llevó a cabo en el Hotel Sheraton de Mar del Plata, quien tuvo que acelerar la instalación de su red inalámbrica para poder brindar la conectividad a los que terminaron siendo 604 participantes de 80 países distintos, con 60 APs

La conectividad a Internet se contrató a Comsat, quien tuvo que poner dos parabólicas de 2.5 metros de diámetro para poder brindar los 10 mbps simétricos que nos solicitaron con un rango /23 para contar con 512 Ips.

6 servidores DHCP, DNS y SMTP, con una estación de monitoreo de red, 20 PCs de uso público, transmisión en vivo de las reuniones y hasta hacer de service de los equipos que se le iban rompiendo a los miembros de ICANN.

Todo el grupo estuvo compuesto por gente de primera.

En la organización, Oscar García, del Polo Informático Mar del Plata, Antonio Harris, de Cabase, OTI Internacional en los servicios turísticos y Congress Rental en servicios de audio, video en pantalla gigante, registración, traducción, etc.

En la técnica, Steve Conte, Alexander Kulik, Tim Cole y Mike Evans, de ICANN, Guillermo Pereira Irujo, Claudio Roulliet, Alexis Bertola, Martín Salinas y yo, de Comtron, Marcelo Valencia y Hector Blanche, de Comsat, Juan Gimeno Rossi y German Paak, del Hotel Sheraton.

Y, a continuación, la “medalla” que nos quedó de recuerdo, con la firma, nada mas y nada menos, que de Vinton Cerf.

Para el final, el agradecimiento a Ignacio Marcos, que pasó una tarde para conocernos personalmente y que terminó a un costado, tomando un mate y mirándonos ir de un lado para otro, ya que gracias a el y a esa visita este blog existe como tal.

Jueves 06 de noviembre de 2014

Martín Albisetti

Martín Albisetti
Martin Albisetti's blog

Click packages and how they’ll empower upstreams

As the pieces start to come together and we get closer to converging mobile and desktop in Ubuntu, Click packages running on the desktop start to feel like they will be a reality soon (Unity 8 brings us Click packages). I think it's actually very exciting, and I thought I'd talk a bit about why that is.

First off: security. The Ubuntu Security team have done some pretty mind-blowing work to ensure Click packages are confined in a safe, reliable but still flexible manner. Jamie has explained how and why in a very eloquent manner. This will only push further an OS that is already well known and respected for being a safe place to do computing for all levels of computer skills.
My second favorite thing: simplification for app developers. When we started sketching out how Clicks would work, there was a very sharp focus on enabling app developers to have more freedom to build and maintain their apps, while still making it very easy to build a package. Clicks, by design, can't express any external dependencies other than a base system (called a "framework"). That means that if your app depends on a fancy library that isn't shipped by default, you just bundle it into the Click package and you're set. You get to update it whenever it suits you as a developer, and have predictability over how it will run on a user's computer (or device!). That opens up the possibility of shipping newer versions of a library, or just sticking with one that works for you. We exchange that freedom for some minor theoretical memory usage increases and extra disk space (if 2 apps end up including the same library), but with today's computing power and disk space cost, it seems like a small price to pay to empower application developers.
Building on top of my first 2 favorite things comes the third: updating apps outside of the Ubuntu release cycle and gaining control as an app developer. Because Click packages are safer than traditional packaging systems, and dependencies are more self-contained, app developers can ship their apps directly to Ubuntu users via the software store without the need for specialized reviewers to review them first. It's also simpler to carry support for previous base systems (frameworks) in newer versions of Ubuntu, allowing app developers to ship the same version of their app to both Ubuntu users on the cutting edge of an Ubuntu development release, as well as the previous LTS from a year ago. There have been many cases over the years where this was an obvious problem, OwnCloud being the latest example of the tension that arises from the current approach where app developers don't have control over what gets shipped.
I have many more favorite things about Clicks, some more are:
- You can create "fat" packages where the same binary supports multiple architectures
- Updated between versions is transactional so you never end up with a botched app update. No more holding your breath while an update installs, hoping your power doesn't drop mid-way
- Multi-user environments can have different versions of the same app without any problems
- Because Clicks are so easy to introspect and verify their proper confinement, the process for verifying them has been easy to automate enabling the store to process new applications within minutes (if not seconds!) and make them available to users immediately

The future of Ubuntu is exciting and it has a scent of a new revolution.

Martes 30 de septiembre de 2014

Sergio A. Alonso

Sergio A. Alonso
Bunker Blog

El Mundo Según JuanCPovE: Día de la Tierra, ese pequeño punto azul pálido en...

El Mundo Según JuanCPovE: Día de la Tierra, ese pequeño punto azul pálido en...: Siempre en este día cito a Carl Sagan y su obra "Pale Blue Dot". Una buena razón para reflexionar y cambiar de una buena vez nue...

Jueves 31 de julio de 2014

Martín Albisetti

Martín Albisetti
Martin Albisetti's blog

Engineering management

I'm a few days away from hitting 6 years at Canonical and I've ended up doing a lot more management than anything else in that time. Before that I did a solid 8 years at my own company, doing anything from developing, project managing, product managing, engineering managing, sales and accounting.
This time of the year is performance review time at Canonical, so it's gotten me thinking a lot about my role and how my view on engineering management has evolved over the years.

A key insights I've had from a former boss, Elliot Murphy, was viewing it as a support role for others to do their job rather than a follow-the-leader approach. I had heard the phrase "As a manager, I work for you" a few times over the years, but it rarely seemed true and felt mostly like a good concept to make people happy but not really applied in practice in any meaningful way.

Of all the approaches I've taken or seen, a role where you're there to unblock developers more than anything else, I believe is the best one. And unless you're a bit power-hungry on some level, it's probably the most enjoyable way of being a manager.

It's not to be applied blindly, though, I think a few conditions have to be met:
1) The team has to be fairly experienced/senior/smart, I think if it isn't it breaks down to often
2) You need to understand very clearly what needs doing and why, and need to invest heavily and frequently in communicated it to the team, both the global context as well as how it applies to them individually
3) You need to build a relationship of trust with each person and need to trust them, because trust is always a 2-way street
4) You need to be enough of an engineer to understand problems in depth when explained, know when to defer to other's judgments (which should be the common case when the team generally smart and experienced) and be capable of tie-breaking in a technical-savvy way
5) Have anyone who's ego doesn't fit in a small, 100ml container, leave it at home

There are many more things to do, but I think if you don't have those five, everything else is hard to hold together. In general, if the team is smart and experienced, understands what needs doing and why, and like their job, almost everything else self-organizes.
If it isn't self-organizing well enough, walk over those 5 points, one or several must be mis-aligned. More often than not, it's 2). Communication is hard, expensive and more of an art than a science. Most of the times things have seemed to stumble a bit, it's been a failure of how I understood what we should be doing as a team, or a failure on how I communicated it to everyone else as it evolved over time.
Second most frequent I think is 1), but that may vary more depending on your team, company and project.

Oh, and actually caring about people and what you do helps a lot, but that helps a lot in life in general, so do that anyway regardless of you role  🙂

Jueves 15 de mayo de 2014

Martín Albisetti

Martín Albisetti
Martin Albisetti's blog

A story on finding an elusive security bug and managing it responsibly

Now that all the responsible disclosure processes have been followed through, I’d like to tell everyone a story of my very bad week last week. Don’t worry, it has a happy ending.

 

Part 1: Exposition

On May 5th we got a support request from a user who observed confusing behaviour in one of our systems. Our support staff immediately escalated it to me and my team sprung into action for what ended up being a 48-hour rollercoaster ride that ended with us reporting upstream to Django a security bug.

The bug, in a nutshell, is that when the following conditions lines up, a system could end up serving a request to one user that was meant for another:

- You are authenticating requests with cookies, OAuth or other authentication mechanisms
- The user is using any version of Internet Explorer or Chromeframe (to be more precise, anything with “MSIE” in the request user agent)
- You (or an ISP in the middle) are caching requests between Django and the internet (except Varnish’s default configuration, for reasons we’ll get to)
- You are serving the same URL with different content to different users

We rarely saw this combination of conditions because users of services provided by Canonical generally have a bias towards not using Internet Explorer, as you’d expect from a company who develops the world’s most used Linux distribution.

 

Part 2: Rising Action

Now, one may think that the bug is obvious, and wonder how it went unnoticed since 2008, but this really was one was one of those elusive “ninja-bugs” you hear about on the Internet and it took us quite a bit of effort to track it down.

In debugging situations such as this, the first step is generally to figure out how to reproduce the bug. In fact, figuring out how to reproduce it is often the lion’s share of the effort of fixing it.  However, no matter how much we tried we could not reproduce it. No matter what we changed, we always got back the right request. This was good, because it ruled out a widespread problem in our systems, but did not get us closer to figuring out the problem.

Putting aside reproducing it for a while, we then moved on to combing very carefully through our code, trying to find any hints of what could be causing this. Several of us looked at it with fresh eyes so we wouldn’t be tainted by having developed or reviewed the code, but we all still came up empty each and every time. Our code seemed perfectly correct.

We then went on to a close examination of all related requests to get new clues to where the problem was hiding. But we had a big challenge with this. As developers we don’t get access to any production information that could identify people. This is good for user privacy, of course, but made it hard to produce useful logs. We invested some effort to work around this while maintaining user privacy by creating a way to anonymise the logs in a way that would still let us find patterns in them. This effort turned up the first real clue.

We use Squid to cache data for each user, so that when they re-request the same data, it’s queued up right in memory and can be quickly served to them without having to recreate the data from the databases and other services. In those anonymized  Squid logs, we saw cookie-authenticated requests that didn’t contain an HTTP Vary header at all, where we expected it to have at the very least “Vary: Cookie” to ensure Squid would only serve the correct content all the time. So we then knew what was happening, but not why. We immediately pulled Squid out of the middle to stop this from happening.

Why was Squid not logging Vary headers? There were many possible culprits for this, so we got a *lot* of people were involved searching for the problem. We combed through everything in our frontend stack (Apache, Haproxy and Squid) that could sometimes remove Vary headers.

This was made all the harder because we had not yet fully Juju charmed every service, so could not easily access all configurations and test theories locally. Sometimes technical debt really gets expensive!

After this exhaustive search, we determined that nothing our code removed headers. So we started following the code up to Django middlewares, and went as far as logging the exact headers Django was sending out at the last middleware layer. Still nothing.

 

Part 3: The Climax

Until we got a break. Logs were still being generated, and eventually a pattern emerged. All the initial requests that had no Vary headers seemed for the most part to be from Internet Explorer. It didn’t make sense that a browser could remove headers that were returned from a server, but knowing this took us to the right place in the Django code, and because Django is open source, there was no friction in inspecting it deeply.  That’s when we saw it.

In a function called fix_IE_for_vary, we saw the offending line of code.

del response['Vary']

We finally found the cause.

It turns out IE 6 and 7 didn’t have the HTTP Vary header implemented fully, so there’s a workaround in Django to remove it for any content that isn’t html or plain text. In hindsight, if Django would of implemented this instead as a middleware, even if default, it would have been more likely that this would have been revised earlier. Hindsight is always 20/20 though, and it easy to sit back and theorise on how things should have been done.

So if you’ve been serving any data that wasn’t html or plain text with a caching layer in the middle that implements Vary header management to-spec (Varnish doesn’t trust it by default, and checks the cookie in the request anyway), you may have improperly returned a request.

Newer versions if Internet Explorer have since fixed this, but who knew in 2008 IE 9 would come 3 years later?

 

Part 4: Falling Action

We immediately applied a temporary fix to all our running Django instances in Canonical and involved our security team to follow standard responsible disclosure processes. The Canonical security team was now in the driving seat and worked to assign a CVE number and email the Django security contact with details on the bug, how to reproduce it and links to the specific code in the Django tree.

The Django team immediately and professionally acknowledged the bug and began researching possible solutions as well as any other parts of the code where this scenario could occur. There was continuous communication among our teams for the next few days while we agreed on lead times for distributions to receive and prepare the security fix,

 

Part 5: Resolution

I can’t highlight enough how important it is to follow these well-established processes to make sure we keep the Internet at large a generally safe place.
To summarise, if you’re running Django, please update to the latest security release as quickly as possible, and disable any internal caching until then to minimise the chances of hitting this bug.

If you're running squid and want to check if you could be affected, here's a small python script to run against your logs we put together you can use as a base, you may need to tweak it based on your log format. Be sure to run it only against cookie-authenticated URLs, otherwise you will hit a lot of false positives.

Jueves 04 de octubre de 2012

LugSaJu: La tecla que te salva del DESASTRE

Jueves 09 de agosto de 2012

Dear Martínez

Dear Martínez
La vida Linux

Software de mensajería instantánea Jitsi 1.0

La competencia entre los programas de mensajería instantánea a través de VoIP, video conferencia y más, es grande y todas satisfacen nuestras necesidades. Competidores somo Skype, Ekiga, lideran el poderío de uso, pero existen otras alternativas menos utilizadas por no ser famosas, pero de mejor dicción y predisposición de servicio al usuario, tal como Jitsi, antes conocido como SIP Communicator y que desde hace tan solo días, ha lanzado su nueva versión estable.

Jitsi 1.0 Software de mensajería instantánea Jitsi 1.0

El renovado Jitsi 1.0 reúne todas las funciones que se pueden encontrar en diversos programas con las herramientas VoIP, video conferencia, mensajería instantánea tanto para Windows como para Mac y GNU/Linux. Esta interfaz es sumamente cómoda y amigable, siendo intuitiva y fácil de utilizar. Es compatible con los protocolos más populares de mensajería instantánea y telefonía, pero también se le puede dar uso con las cuentas habituales de correo tales como Hotmail, Gmail o Yahoo, o bien otros como AIM, XMPP, Jabber, SIP y la posibilidad de emparejar la cuenta de la red social Facebook.

Entre sus características más destacadas se encuentra la de transferencia de llamadas atendidas o ciegas, el cambio de estado automático cuando el usuario no se encuentre utilizando el ordenador, la autoconexión, además de permitir grabar las llamadas para seguridad del usuario y el cifrado de protocolos SRTP Y ZRTP. No obstante, también permite establecimiento de conexión de medios directa mediante protocolo ICE, streaming de escritorio, almacenamiento de contraseñas cifradas, transferencia de archivos, soporte IPv6 para SIP y XMPP, etc.

 

Jueves 02 de agosto de 2012

Dear Martínez

Dear Martínez
La vida Linux

Aprende a tocar la guitarra con TuxGuitar

Un nuevo software para los amantes de la guitarra y la música, además de para aquellos aficionados que siempre quisieron aprender, existe una herramienta llamada TuxGuitar, siendo un editor visual de tablaturas y partituras de código abierto. Esta aplicación ha de ser ideal para llevarla consigo a cualquier parte. Desarrollada hace tiempo, es una idea que surgió para crear una herramienta que le haga competencia al popular Guitar Pro, pero que esta pueda ser utilizada por todo el mundo de forma gratuita.

Tux Guitar Aprende a tocar la guitarra con TuxGuitar

La herramienta de Tux Guitar es muy útil para el aprendizaje de la música y el arte de utilizar cualquier guitarra, aunque también cuenta con bajo, teclado y batería con el cual el usuario podrá aprender lo que no, o poner en práctica lo conocido en la materia. Desarrollado por la compañía Java, se puede abrir y exportar ficheros GP3, GP4 y GP5, además de ser compatible con los archivos del Guitar Pro, permitiendo que se pueda utilizar las partituras creadas para ese programa.

No solamente el Tux Guitar es un simple editor visual de partituras con el que se puede componer la música, sino también ofrece una gran variedad de efectos de sonido, soporte multipista, tempo, posibilidad de tercetos, scroll automático en la reproducción y muchas otras herramientas que lo ayudarán a formar su música tal como la disponga.

Lunes 16 de julio de 2012

Dear Martínez

Dear Martínez
La vida Linux

Nueva versión de MythTV 0.25 con soporte para Windows

El conocido reproductor de TV se ha escondido en la sombra de las noticias tecnológicas respecto a Linux durante un año y medio, sin tener novedades de ellas y varios retrasos en el desarrollo de la última versión del reproductor, por lo que MythTV anunció que ha sido liberado y trae 5200 cambios como si fuera poco. Muchos saben en qué consiste este software reproductor de TV y multimedia, por lo que les interesará saber sobre las novedades de cambios.

MythTV Nueva versión de MythTV 0.25 con soporte para Windows

En la versión 0.25 de MythTV se incluyen nuevas características que destacan el interés en los usuarios, como nuevas capacidades de aceleración de video, tales como VAAPI y video de DirectX2, mejoras de audio, incluyendo soporte para E-AC3, TrueHD y DTS-HD, mejoras de los metadatos que integra gestión de grabaciones y videos, una API para aplicaciones de terceros, para aprovechar la interacción con el frontend y backend, control del televisor y otros componentes AV a través del consumer electronics control, o la inclusión de un HTTP Live Streaming, para compartir el contenido de video en tiempo eral a través de la API integrada.

También se destaca en el nuevo reproductor MythTV, el MythMusic que ha sido completamente reescrito y MythVideo que ahora se ha integrado completamente, en lugar de ser distribuido como un plug-in por separado. Además, a través de MythThemes, todos los temas, incluyendo los de terceros, se pueden descargar directamente desde el selector de temas de la interfaz.

 

Jueves 05 de abril de 2012

Soft-Libre: GNOME 3.4 disponible con interesantes novedades
Soft-Libre: Wallpapers para Ubuntu 12.04 LTS
Soft-Libre: LibreOffice adquiere capacidad colaborativa en la nube + LibreOffice 3.5.2

Domingo 26 de febrero de 2012

Luciano Bello

Luciano Bello
Luciano's webpage

Lessons Learned: Fettisdagen y Semla

Fettisdagen, (martes de carnaval). Fet es grasa, mientras tisdag es martes. El sufijo en es el artículo determinado. Por lo tanto, el martes graso

Semla, Comida. Etimológicamente, viene de semilla. También llamado fastlagsbulle, es una berlinesa (bola de fraile, que le dicen) con crema y pasta de almendras en su interior.

SemlaFlickr
En el post sobre Lucía ya hemos hablado sobre lo sorprendentemente apegado que son los suecos a ciertas fiestas de origen religioso, incluso cuando solo el 23% de ellos dice cree en algo llamado dios (ya no decir "ser cristiano"). Este parece ser un nuevo caso de lo mismo.

En Argentina, así como en muchos (por no decir todos) países de América existe el carnaval. En otras palabras, festejar y comer antes de los 40 día de ayuno y penitencia por la Cuaresma que comienza el día siguiente, es decir, el Miércoles de Ceniza.

Acá, y en otros países nórdicos, no parece haber carnaval. Lo que sí hay es Fettisdagen. Éste podría ser un martes de lo más común, si no fuese porque se consumen enormes cantidades de semla.

Casualmente, ese martes me tocó ser el anfitrión del PhD fika (cuando los estudiantes de doctorado nos juntamos a tomar café y conversar), por lo me subí a la tradición y los invité con semla de distintos sabores. El sabor está dado por la crema, que puede ser común, de vainilla, con canela y otras variantes.

Los semlor (plural de semla) es algo tan popular en la cultura sueca que un detective de cuentos para chicos llamado Ture Sventon es adicto a estos (y también vuela en una alfombra mágica, pero no viene al caso).

Y este podría no ser único caso sueco de adición a semla. En el siglo XVII, rey Adolfo Federico habría muerto (literalmente) de un atracón después de clavarse 14 porciones de semla (tradicionalmente servidos con un tazón de leche caliente) como postre.

La receta, aquí.

Domingo 15 de enero de 2012

Luciano Bello

Luciano Bello
Luciano's webpage

Corriendo Debian en un server fanless

Debido a una reciente mudanza, he bajado unos servers que tenía corriendo en casa de mis padres. Sin embargo, en mi nuevo hogar estoy en proceso de generar una nueva DMZ, esta vez, sin ventiladores.

El primer paso de este proceso ocurrió en forma de weekend project y consiste en hacerme de un "servidor". Las comillas hacen referencia a que no se trata de un gran server sino un procesador ARM de 200Mhz y 32MB de RAM, lo que es suficiente para que corra Debian y algunos otros servicios que pueden ser interesantes.

Los ingredientes

  • Un all-in-one LAN server que es la forma en que DealExtreme llama a unos dispositivos con chips de la familia str8132. Dado que vamos a instalar snake-os en ellos (en este caso se trata de la versión 1.3.2-20111019), es importante chequear la lista de compatibilidad. En particular me hice de un NS-K330 por 40 dólares.
  • Storage USB, puede ser en la forma de stick o como disco portable.
  • Un RS232 to TTL level converter, también conocido como cable para Nokia N1200/1208/1650/2630/2670. Es para conectarse por serie a la consola. No lo necesitamos ahora mismo, pero está bueno tenerlo a mano en caso de brickearlo, aunque es un procedimiento que no explicaré esta vez.

Instalación de Snake-OS

Es realmente sencillo. Lo primero es bajar snake-os, desde la sección de downloads de la web. Es importante que el archivo sea de la forma snakeos-<versión>-from-original.zip Instalar el que dice from-snake lleva definitivamente al brickearlo y recuperarlo puede ser complejo.
Desde la página de administración del dispositivo hay que subir el archivo snakeos-<versión>-from-original.bin contenido en el zip bajado. Confirmar el md5sum no está de más.

Acceso inicial

Los datos para acceder a la nueva interfaz con el browser:

http://192.168.0.240 (si es que no hay un DHCP en la red)
usuario: admin
contraseña: snake

Por SSH la contraseña de root la misma y, al cambiarla por la página de administración, se cambia en todos los accesos.

Post instalación

Incluso cuando Max opine que el uso de memoria virtual está rumbo a la extinción (lo cierto es que tal vez no es la mejor idea cuando el storage es de estado sólido como en los pendrives), activé el uso de SWAP desde el menú Service-Swapfile.

Si se quieren las mismas prestaciones que se tenían con el firmware original, hay que instalar unos paquetes adicionales. El sistema de paquetes que utiliza snake-os es opkg y tiene que ser primero activado desde Service-Opkg. Los paquetes pueden bajarse desde la página de download de snake-os y se instalan desde System-Packages. En particular, pueden ser interesantes (siempre pensando en los features originales):
Transmission: Es un cliente de BitTorrent, para dejar tus descargas corriendo. Es bastante mejor que el original.
miniDLNA: Es el server de streaming compatible con DLNA/UPnP-AV. Está un poco verde, pero se está trabajando en su mejora.

Corriendo Debian dentro

Las instrucciones están acá. Aunque esto es lo más obvio y necesario:

wget http://snake-os.googlecode.com/files/debian_chroot.tgz
tar -xvf debian_chroot.tgz
mount -o bind /proc /usb/sda1/debian/proc
mount -o bind /dev /usb/sda1/debian/dev
chroot /usb/sda1/debian/

Esta instalación base requiere unos 200MB. Tiene todo el potencial de un Debian (¡porque lo es!).
Claro que falta ajustar varios detalles, pero será la piedra inicial para el resto.

Lunes 12 de diciembre de 2011

Luciano Bello

Luciano Bello
Luciano's webpage

Lessons Learned: Lucia

Lucia, fiesta (13 de diciembre). Tradicional fiesta sueca asociada a Santa Lucía de Siracusa, el solsticio y las velas.

Según el santoral católico, el 13 de Diciembre (o sea, en un par de horas) es el día dedicado a Santa Lucía. Dato que seguramente pasa totalmente desapercibido para la gran mayoría de la personas del mundo. A menos claro, que se sea habitante de Suecia (o de Sicilia, pero no viene al caso).

El día de Santa Lucía, o simplemente Lucia como prefieren llamarlo acá, es de la fiestas más importantes de la cultura sueca. Y, como extranjero, me es sumamente difícil de entender como en un país tan poco religioso algo así tiene cabida. Así que analicemos los hechos.

La santa en cuestión: Durante el siglo III y principios del IV vivió en Siracusa (una ciudad de Sicilia, Italia) una joven católica de familia potentada llamada Lucía, quien tenía intensiones de consagrarse a Dios. Pero un despechado pretendiente la denunció a la autoridades (eran tiempos de persecución a los católicos) y fue enjuiciada y sentenciada a muerte. La tradición cuenta que se ordenó torturarla arrancándole los ojos y que aún así siguió viendo por milagro divino (sí, lo que tiene en la bandeja de la estampita son un par de ojos). Más datos sobre su vida en la Wikipedia y referencias.
Es, obviamente, patrona de los ciegos. También, aunque bastante menos evidentemente, de los electricistas, choferes, afiladores y cristaleros. Tal vez en este último caso exista alguna relación con el tradicional arte de soplar vidrio que existe en Suecia.

Su asociación con la luz: El nombre Lucía, hace clara referencia al latín, Lux. La leyenda de los ojos también parecen referir a la luz (o a la falta de ésta). Aunque no pude encontrar referencias, algunas personas me comentan que Santa Lucía fue condenada a la hoguera y que el fuego no la consumía. Y que por esto hay velas durante la celebración. Aún más simpático es que parece ser que, por errores acumulados durante la Edad Media en el calendario Juliano, la festividad de Lucía coincidía con el día más corto del año, el solsticio de invierno.

Conociendo lo odioso que puede ser la oscuridad en estos lares y lo fanático de las velitas y de los artefactos lumínicos que son lo locales, no parece ser tan loco que quieran festejar que los días empiezan a alargarse (aunque esto no ocurrirá hasta dentro de poco más de una semana).

Las velas también pueden hacer referencia a una leyenda pre-cristina en que la noche más larga del año lo animales nocturnos adquirían poderes sobrenaturales (incluso podían hablar) y había que mantenerlos alejados con fuego.

Luciatåg: Significa procesión de Lucia. Es el acto por excelencia y se celebra totalmente independiente de la fiesta religiosa. Se realiza en escuelas (especialmente en las guarderías) y en ámbitos públicos en donde una mujer representa a Lucia llevado "la luz" con una corona de velas (electrónicas en muchos casos, matando cierta divertida tensión macabra). La vestimenta es una túnica blanca ceñida por una faja roja, representando el martirio. Las tärnor (literalmente, golondrinas, aunque también puede ser las damas de honor o doncellas) acompañan a Lucia llevando velas en las manos y cantando canciones tradicionales. Hay más personajes, pero quedarán para otro post.

Entre las muchas tradiciones gastronómicas asociadas a esta época del año, hay una que hace referencia directa a Lucia: los lussekatter. Son como unas facturas dulces de azafrán y que representan ojos. La palabra lussekatt se traduce como gatos de Lucia y se suele acompañar con Glögg, una especie de glühwein local.

Para terminar, durante esta fecha se elige en Estocolmo la Sveriges Lucia. Es una especie de concurso por representar a Lucia a nivel nacional en donde cada ciudad propone su candidata. Las participantes representan a una entidad de beneficencia y tengo entendido que se valoran las cualidades para canto y la personalidad con entrevistas que son televisadas. Se puede votar por tu Lucia favorita a través de SMS, aunque creo que la votación para este año ya está cerrada. ¿Que qué se lleva la ganadora? No tengo idea...

Pero acá les dejo las candidatas finalistas de este año:

Lunes 07 de noviembre de 2011

Punto Libre: サイトマップ

Viernes 01 de abril de 2011

Tecnoscopio: Clon de Counter-Strike Gratis en tu navegador

Miércoles 30 de marzo de 2011

Tecnoscopio: Gestor de Descargas para Megaupload Depositefiles y otros

Lunes 28 de marzo de 2011

Tecnoscopio: Generación de electricidad con peatones y tránsito de autos

Miércoles 09 de marzo de 2011

Punto Libre: デートを成功させる

Martes 09 de noviembre de 2010

Fabián Flores Vadell

Fabián Flores Vadell
Speed Books Argentina

Proyectos

Inicia una nueva etapa que implica materializar la idea, que originalmente tomó forma con este pequeño proyecto, de producir documentación en español sobre tecnologías libres que pudieran tener un nicho de interés en la comunidad y que particularmente interesen a los participantes de este proyecto. Los primeros proyectos que verán la luz estarán relacionados con: La programación con Smalltalk.
Fabián Flores Vadell

Fabián Flores Vadell
Speed Books Argentina

¿Libertad o propiedad? Antorchas en la Biblioteca

A continuación el video y la transcripción de la conferencia de Carlos Sánchez Almeida En este ocaso somos aún antorchas, luz que sobresale en el horizonte. Y, mientras esta muralla resista, seremos custodios de la Palabra divina. - Así sea –dijo Guillermo con tono devoto–. Pero, ¿qué tiene que ver eso con la prohibición de visitar la biblioteca? - Mirad, fray Guillermo –dijo el Abad–,

Domingo 31 de octubre de 2010

Fabián Flores Vadell

Fabián Flores Vadell
Speed Books Argentina

PHP 5 Power Programming

In this book, PHP 5's co-creator and two leading PHP developers show you how to make the most of PHP 5's industrial-strength enhancements in any project—no matter how large or complex. Their unique insights and realistic examples illuminate PHP 5's new object model, powerful design patterns, improved XML Web services support, and much more. Whether you're creating web applications, extensions,