VERSION ACTUAL :

Inicio de sesión

Raulito el Friki

Raulito El Friki

COMENTARIOS

EN LINEA

Hay actualmente 0 usuarios conectados.

NUEVOS

  • Pelydas
  • rugamu
  • erickalvarez73
  • fedegonzaga
  • lobo357

Planeta Fedora-ES

Mañana es la cita de emprendedores en Jornada #IdeayDebateEmprendedor

E-ais - Mar, 02/04/2014 - 12:41


Para las 8 : 00 AM esta prevista la Jornada sobre prendimiento dirigida a estudiantes y profesionales emprendedores o con deseos de emprender la referida actividad tendrá lugar en  el auditorio de investigación y extensión  de la UNERG 

Mayor información: aquí
Inscripción en directo aquí

Gaussianos participa en los Premios 20Blogs 2013

Gaussianos - Mar, 02/04/2014 - 07:00

Bueno, pues como suele ocurrir en estas fechas llegan los Premios 20Blogs, organizados por el diario 20Minutos. Y, cómo no, Gaussianos participa en ellos en la categoría Ciencia, Tecnología e Internet.

Las votaciones ya han comenzando (lo hicieron el pasado viernes 31 de enero), y concluirán el 3 de marzo de 2014. Si queréis dar vuestro voto a Gaussianos debéis estar registrados en 20Minutos (si no lo estáis el proceso de registro es sencillo y no os llevará más de unos minutos) y acceder a la ficha de Gaussianos en La Blogoteca y votar

En la pasada edición Gaussianos llegó a ser finalista en su categoría. A ver si este año conseguimos, al menos, volver a llegar a ello. Muchísimas gracias de antemano.

Entra en Gaussianos si quieres hacer algún comentario sobre este artículo, consultar entradas anteriores o enviarnos un mensaje.

Construye tú también el poliedro de Császár.

Ni divisor ni múltiplo

Gaussianos - Mar, 02/04/2014 - 04:15

Os dejo hoy martes el problema de esta semana. Ahí va:

¿Cuál es la mayor cantidad de elementos que se pueden tomar del conjunto de números enteros

\lbrace 1,2, \ldots ,2012,2013 \rbrace

de tal manera que entre ellos no haya tres distintos, digamos a,b,c, tales que a sea divisor o múltiplo de b-c?

A por él.

Entra en Gaussianos si quieres hacer algún comentario sobre este artículo, consultar entradas anteriores o enviarnos un mensaje.

Construye tú también el poliedro de Császár.

Crear un demonio de Linux con Python

Ernesto-ecrespo - Dom, 02/02/2014 - 16:53
Este artículo se basa en el siguiente artículo en inglés.
La idea es crear un proceso demonio de Linux con Python.
Para ello se requerirá los 2 siguientes librerías de python:

  • Python-daemon
  • Python-lockfile
A lo debian se usa el comando apt-get:
#apt-get install python-daemon python-lockfile

A lo python se ejecuta el comando pip:
#pip install python-daemon lockfile

A continuación se muestra el archivo demonioprueba.py que se colocará en el directorio /usr/share/demonioprueba/ .


#!/usr/bin/env python


# -*- coding: utf-8 -*-





#libreria estándar loggin y time


import logging


import time





#de python-daemon import runner


from daemon import runner





class App():


    def __init__(self):


        #Se define unos path estándar en linux.


        self.stdin_path = '/dev/null'


        self.stdout_path = '/dev/tty'


        self.stderr_path = '/dev/tty'


        #Se define la ruta del archivo pid del demonio.


        self.pidfile_path = '/var/run/demonioprueba/demonioprueba.pid'


        self.pidfile_timeout = 5





    def run(self):


        i = 0


        while True:


            #El código principal va acá


            i += 1


            #Diferentes niveles de registro de bitacora


            logger.debug("Debug message %s" %i)


            logger.info("Info message %s" %i)


            logger.warn("Warning message %s" %i)


            logger.error("Error message %s" %i)


            time.sleep(1)





#Se crea la instancia de la clase


app = App()


#define la instancia de la clase logging para generar la bitacora


logger = logging.getLogger("demonioprueba log")


logger.setLevel(logging.INFO)


#Se define el forma del log


formatter = logging.Formatter("%(asctime)s - %(name)s - %(levelname)s - %(message)s")


handler = logging.FileHandler("/var/log/demonioprueba/demoniopruebas.log")


handler.setFormatter(formatter)


logger.addHandler(handler)





#Se ejecuta el demonio llamando al objeto app


daemon_runner = runner.DaemonRunner(app)


#Esto evita que el archivo log no se cierre durante la ejecución del demonio


daemon_runner.daemon_context.files_preserve=[handler.stream]


#Ejecuta el método run del objeto app


daemon_runner.do_action()



El archivo se salva en la ruta /usr/share/demonioprueba/demonioprueba.py .
Se crean los directorios /var/log/demonioprueba y /var/run/demonioprueba/ :
#mkdir -p /var/log/demonioprueba
#mkdir -p /var/run/demonioprueba

Se puede probar el demonio al ejecutar el siguiente comando:
python /usr/share/demonioprueba/demonioprueba.py start
root@heimdal:~# started with pid 5915

Se muestra que el demonio se inicio con el pid 5915.
Al ejecutar ps aux  | grep demonioprueba.py se verá el proceso en ejecución:
root@heimdal:~# ps aux | grep demonioprueba.py
root      5915  0.0  0.1  38088  6656 ?        S    17:00   0:00 python /usr/share/demonioprueba/demonioprueba.py start

Como se ve el proceso se inicio con el pid 5915. 

Se puede ver la bitacora al ejecutar:
tail -f /var/log/demonioprueba/demonioprueba.log

A continuación se muestra una parte del log:
2014-02-02 17:01:25,516 - demonioprueba log - WARNING - Warning message 80
2014-02-02 17:01:25,516 - demonioprueba log - ERROR - Error message 80
2014-02-02 17:01:26,517 - demonioprueba log - INFO - Info message 81
2014-02-02 17:01:26,517 - demonioprueba log - WARNING - Warning message 81
2014-02-02 17:01:26,518 - demonioprueba log - ERROR - Error message 81
2014-02-02 17:01:27,519 - demonioprueba log - INFO - Info message 82
2014-02-02 17:01:27,519 - demonioprueba log - WARNING - Warning message 82
2014-02-02 17:01:27,519 - demonioprueba log - ERROR - Error message 82
2014-02-02 17:01:28,520 - demonioprueba log - INFO - Info message 83
2014-02-02 17:01:28,521 - demonioprueba log - WARNING - Warning message 83
2014-02-02 17:01:28,521 - demonioprueba log - ERROR - Error message 83
2014-02-02 17:01:29,522 - demonioprueba log - INFO - Info message 84
2014-02-02 17:01:29,523 - demonioprueba log - WARNING - Warning message 84
2014-02-02 17:01:29,523 - demonioprueba log - ERROR - Error message 84
2014-02-02 17:01:30,523 - demonioprueba log - INFO - Info message 85
2014-02-02 17:01:30,524 - demonioprueba log - WARNING - Warning message 85
2014-02-02 17:01:30,524 - demonioprueba log - ERROR - Error message 85

Se puede detener el demonio ejecutando:
root@heimdal:~# python /usr/share/demonioprueba/demonioprueba.py stop
Terminating on signal 15



Ahora se creará el archivo init de demonio prueba ( salvar el archivo en /etc/init.d/demonioprueba ):

A continuación se muestra el script bash que se usa de plantilla como demonio init:
#!/bin/bash

# Copyright (c) 1996-2012 My Company.

# All rights reserved.

#

# Author: Bob Bobson, 2012

#

# Please send feedback to bob@bob.com

#

# /etc/init.d/demonioprueba

#

### BEGIN INIT INFO

# Provides: demonioprueba

# Required-Start:

# Should-Start:

# Required-Stop:

# Should-Stop:

# Default-Start:  3 5

# Default-Stop:   0 1 2 6

# Short-Description: Test daemon process

# Description:    Runs up the test daemon process

### END INIT INFO



# Activate the python virtual environment

#    . /path_to_virtualenv/activate



case "$1" in

  start)

    echo "Starting server"

    # Start the daemon

    python /usr/share/demonioprueba/demonioprueba.py start

    ;;

  stop)

    echo "Stopping server"

    # Stop the daemon

    python /usr/share/demonioprueba/demonioprueba.py stop

    ;;

  restart)

    echo "Restarting server"

    python /usr/share/demonioprueba/demonioprueba.py restart

    ;;

  *)



    # Refuse to do other stuff


    echo "Usage: /etc/init.d/demonioprueba.sh {start|stop|restart}"


    exit 1


    ;;


esac





exit 0




Se le cambia el permiso al script:
chmod u+x demonioprueba.sh

Se habilita el script para la ejecución automática:
root@heimdal:/etc/init.d# insserv demonioprueba.sh

Acá les dejo un ejemplo parecido.


Mi nombre aparece en el monumento de Mozilla

Skatox - Dom, 02/02/2014 - 11:25

Hace unas semanas, Mozilla elaboró un monumento con el nombre de las personas que han colaborado con el proyecto de alguna manera y lo colocó en las afueras de sus oficinas en San Francisco. Revisando el buscador de nombres de colaboradores en el Monumento de Mozilla,  encontré mi nombre y me emocionó verlo junto a los nombres de muchos voluntarios de todas partes del mundo, quienes creemos en una Web neutral, con estándares abiertos, en la libertad de la información, respeto a la privacidad de los usuarios y accesible a todas personas del mundo. Esto me motiva a seguir siendo parte de este movimiento y lograr grandes objetivos para la web.

MiguelUseche en el Monumento de Mozilla

Mi nombre en el Monumento de Mozilla

 

Esta semana, en el canal de Firefox en youtube se publicó un vídeo del proceso de fabricación de este monumento, por si lo deseas ver:

Finalmente, si estas interesado en participar en Mozilla puedes hacerlo desde la comunidad de Mozilla en Venezuela, la Hispanoamericana, o directamente en el proyecto global. Es una buena experiencia participar porque aprendes mucho sobre la Web, haces nuevos amigos, ayudas con el futuro de la WEB y lo mejor es que cualquiera puede participar sin importar su nivel conocimientos.

AskFedora ahora con soporte multi-idiomas y entre ellos español

Fedora Nicaragua - Sáb, 02/01/2014 - 11:21
El foro oficial de preguntas y respuestas de la comunidad de Fedora ahora cuenta con soporte para multiples idiomas, entre ellos el español, pueden acceder a : https://ask.fedoraproject.org/es/questions/ para hacer sus consultas en su idioma local.




Tesla Motor

WayraTV - Vie, 01/31/2014 - 13:05
Su navegador no soporta el plugin
Descripción: 
Realmente la innovación y el sueño que me ha perseguido de niño .. hecho realidad

Recomendación Enero - Marianela's

Kioscofriki - Vie, 01/31/2014 - 12:05
El año pasado (2013) estuvimos haciendo algunas Recomendaciones, sobre páginas que seguimos constantemente y que sirven como inspiración para nuestras ideas y proyectos, con algunas hemos hechos cursos, con otras hemos aprendido estrategias y manualidades, y con otras simplemente nos encanta distraernos y leer la variedad de informaciones, ideas y productos que brindan al público. Este año decidimos continuar con estas recomendaciones porque además consideramos que deben ser conocidas y promocionadas.

En esta ocasión les traemos una Recomendación muy especial, porque se trata de la persona detrás de varios de Nuestros Productos (todos los que tienen costura en alguno de sus procesos), nos referimos a la Modista Venezolana Marianela Silverio, con una trayectoria de mas de 40 años en el campo de la Moda y que en este momento se está estrenando en el mundo web con su nueva página en facebook: Marianela's Design.

Para la inauguración de la página estarán colocando la primera de las Líneas "Ropa para Bebes", con unos modelos especiales para los más pequeños de la casa. Luego, se seguirán colocando líneas de ropa para todas las edades y para cualquier género, realizadas por esta artista de la costura. Adicionalmente, se tendrán otros productos como disfraces, accesorios, lencería, entre muchos más. No hay límites, lo que se pueda elaborar con tela e hilos, es posible de fabricar.

Para cualquier información adicional o pedidos pueden escribir a su correo
msilverio@kioscofriki.com.ve
y recuerda visitar su página en facebook y hacer clic en ❣Me Gusta❣

La batalla por las etiquetas en Fedora

Fedora Nicaragua - Jue, 01/30/2014 - 23:36
Recientemente descubrí gracias a +Fernando Espinoza Onassis  que si una preciona la tecla "B" en la aplicación Fedora Tagger uno puede ver el ranking de etiquetadores, se imaginaran mi sorpresa al ver a cinco miembros de la comunidad de Nicaragua en el TOP.

Así que tenemos una pequeña competencia entre +Eduardo Mayorga Téllez , +Fernando Espinoza Onassis  y yo :)

De momento yo voy ganando :)


Distribuciones de Linux mas liviana

E-ais - Jue, 01/30/2014 - 23:17
Xubuntu: Es una distribución que deriva de Ubuntu, pero utiliza un escritorio XFCE el cual se caracteriza por su sencillez y ligereza. Esencial para tener una base de Ubuntu en equipos con poca tarjeta gráfica aunque pide bastante de espacio en HDD, memoria y procesador. http://xubuntu.org/
distribuciones-linux-mas-ligeras-1
Vector linux: Basada en Slackware, sus requisitos son 166Mhz, 64Mb de RAM y 1GB de disco duro (en su versión Light Edition). Entorno gráfico XFCE y KDe a elegir. Existe una versión livecd que no requiere instalación para probarla en el equipo. http://www.vectorlinux.com/
distribuciones-linux-mas-ligeras-3
Damn Small Linux: Es una de las distribuciones para equipos ligeros más utilizada y conocida. puede funcionar prácticamente en cualquier equipo con un procesador 486DX y 16Mb de RAM. Una de sus características principales es la cantidad de aplicaciones que ofrece para adaptarse prácticamente a cualquier usuario. http://www.damnsmalllinux.org/
distribuciones-linux-mas-ligeras-4
Puppy Linux: Apenas necesita 166Mhz para funcionar, aunque es un poco exigente en RAM, puesto que pide 128Mb. Es una distribución para equipos antiguos bastante extendida. Ofrece gran variedad de software lo que le hace una excelente alternativa. http://www.puppylinux.com/
Lubuntu (AFI: [luːˈbuːntuː]) es una distribución oficial del proyecto Ubuntu que tiene por lema "menos recursos y más eficiencia energética", usando el gestor de escritorio LXDE

¿Estás a favor del pirateo? Este vídeo te va a encantar

eliasbrasa - Jue, 01/30/2014 - 11:36

Si estás a favor del pirateo este vídeo te va a encantar:

Pero recuerda que piratear no es una solución, la igualdad viene de compartir como dice el vídeo, la solución es el software/hardware libre.


Colabora con Fedora sin ser colaborador sin ser desarrollador, y gana medallas en el proceso

Fedora Nicaragua - Mié, 01/29/2014 - 22:10
A continuación algunas formas de colaborar con el proyecto Fedora sin ser desarrollador y a travez de las cuales puedes ganar medallas en el sistema de medallas de Fedora.

1- Ayuda a etiquetar paquetes desde Fedora Tagger: las etiquetas son bastantes útiles a la hora de realizar búsquedas de aplicaciones, crear grupos de paquetes entre muchas otras cosas mas, para botar por un etiqueta de un paquete no necesitas mas que un navegador, un ratón y una conexión a internet. Si tienes una cuentas FAS puedes añadir nuevas etiquetas. Al etiquetar paquetes puedes ganar medallas de Fedora:



  

2- Ayuda editando páginas de la wiki de Fedora: Hay muchas páginas en la wiki de Fedora que necesitan ser actualizadas o traducidas, para colaborar en la edición de la wiki de Fedora solo necesitas una cuenta FAS. Al editar páginas en la wiki de Fedora puede ganas medallas:




3-  Pregunta o responde en Ask Fedora: Ask Fedora es el foro oficial de preguntas y respuestas de la comunidad de Fedora,. al colaborar en el foro puedes ganar medallas:






Fedora incentiva el consumismo?

Fedora Nicaragua - Mié, 01/29/2014 - 12:43

Esto viene de una serie de emails donde se pregunta sobre Como hacer funcional versiones antiguas de fedora?. De hecho el tema es porque Fedora no corre en equipos con mínimos recursos. En el cuerpo del correo se apunta a Fedora como incentivar el consumismo. Iba a hacer un email largo, pero como es un tema recurrente pense que era mejor hacer un post al que podría recurrir con solo un link.

Un grupo de personas se une por un interés común, este interés define que es lo que hace el grupo. Los Fundamentos de fedora son Libertad, Amigos, Rasgos y Primeros (Freedom, Friends, Features, First). Fedora es libre desde el software hasta la documentacion. Fedora es abierto a recibir personas y tratarlas con respeto. Fedora tiene una gran cantidad de software que permite resolver los problemas de un gran número de personas. Fedora es primero, lo más nuevo de software libre está en fedora. Esto define lo que hace fedora.

Fedora toma riesgos de presentar software que es estable pero no está terminado. Mucha gente dice simplemente que es basura. Pero algunos dicen… deberían agregar esto, funcionaría mejor si agregaran esto … y luego que se implementan esas ideas, se liman los bordes y esta nítido y brillante, eso se vuelve el estandard para muchas distros. Eso es ser primeros. Lo que hace fedora esta disponible para todas las distros quienes deciden si esas piezas le son útiles o no.

Dar soporte de largo plazo no es parte de lo que define Fedora. Por ejemplo eso es interés de CentOS. Dar soporte a equipos con pocos recursos es interés de otras distros como Pupy. Hay gente en Costa Rica que hace edición de video en alta resolución en equipos con menos recursos de lo que describis usando pupy. Esto es lo genial del software libre, en el ecosistema del software libre hay muchos grupos enfocados en distintas cosas.

Fedora no apoya el consumismo, no hay un propósito en esa dirección. Fedora Fedora trabaja en computadoras con recursos modestos. Mi computadora de la oficina tiene mas o menos 6 años y funciona con Fedora 20. El Proyecto Fedora da soporte de 13 meses. Dar soporte significa que cada unidad de software que recibe un parche debe actualizarse para todas y cada una de las versiones que dan soporte. Eso significa trabajo y tiempo que Fedora sencillamente no considera parte de su razón de existencia. Fedora depende principalmente de voluntarios, y esos voluntarios se unieron al Proyecto Fedora por el reto de innovar. Así, por ejemplo, los voluntarios de Pupy se unieron a pupy por el reto de trabajar con hardware mínimo.

Esperar que Fedora haga algo que no está en su razón de existencia, que está fuera de las contribuciones al ecosistema del software libre que se han propuesto como meta, está fuera de lugar.

Paralelogramo obtuso

Gaussianos - Mié, 01/29/2014 - 04:30

Hoy miércoles os dejo el problema de esta semana:

Sea ABCD un paralelogramo con ángulo obtuso en A. Sea P un punto sobre el segmento BD de manera que la circunferencia con centro en P y que pasa por A corte a la recta AD en A y en Y, y corte a la recta AB en A y en X. La recta AP interseca a BC en Q y a CD en R, respectivamente. Muestra que

\angle XPY=\angle XQY+\angle XRY

A por él.

Entra en Gaussianos si quieres hacer algún comentario sobre este artículo, consultar entradas anteriores o enviarnos un mensaje.

Construye tú también el poliedro de Császár.

Problema con el wifi

Fedora Nicaragua - Mar, 01/28/2014 - 18:55

Hace unos años compre mi humilde computadora , el camino por la compatibilidad de algunas aplicaciones de software me encentre con algunos inconvenientes con la tarjeta de red.Entre los quebraderos de cabeza que llevo sufriendo desde su compra es la dichosa tarjeta wifi basada en el chip Broadcom 4312. Durante años he utilizado el módulo generado por los chicos de rpmfusion con el driver híbrido de Broadcom (llamado híbrido supuestamente por ser parte libre y parte propietaria, aunque yo en algunos momentos he llegado a pensar que es porque es mitad boñiga de vaca y mitad mierda de camello) a través del meta-paquete kmod-wl.

La vida más o menos era llevadera, si bien no fueron pocas las veces que me quedaba sin tarjeta wifi porque se actualizaba el kernel pero no el paquete kmod-wl. Entonces llegó el paquete akmod-wl que generaba el módulo si no encontraba el paquete kmod correspondiente, y todo fue aún más fácil.

Pero no todo era felicidad, se me salieron las canas cuando comenzaron los rumores sobre una posible desaparición del paquete kmod-wl en rpmfusion para Fedora 18 por abandono de su mantenedor, aunque este extremo no se produjo y todos los usuarios de tarjetas Broadcom respiramos tranquilos.

Y esas andaba yo hasta que con la actualización del kernel 3.7.2-201 dejaron de aparecer redes wifi en el sistema y no podía conectar tampoco a las que tenía registradas anteriormente. La tarjeta seguía presente en el sistema, podía activarla y desactivarla (cosa que, por otro lado, hice como un energúmeno durante los primeros minutos tras la aparición del problema), pero ni una mísera red en mi applet de NetworkManager.

rebusqué en los logs posibles errores y me decidí a googlearlos a full time, a tope con la maquinaria, a quemar las pestañas tanto mías como del Firefox hasta solucionar el problema.

Con un dmesg el error saltó rápidamente a la vista:

?
1
@wl_notify_scan_status : Scan_results error (-22)

Busco en Google y la decepción es instantánea, ningún resultado parace relacionado y/o concluyente.

En una de esos arranques de coraje absurdo que le dan a uno, y sólo por el mero hecho de joder a Broadcom (que ya ves tú el problema que tendrán ellos), me decidí a darle otra oportunidad al driver abierto, driver que, todo sea dicho, en su día fui incapaz de echar a andar.

Preparado para lo peor, resulta que me encontré con un proceso sencillísimo y sin pérdida que paso a detallar. Lo primero es conseguir el driver propietario de Broadcom para extraer el dichoso firmware:

?
$ wget http://mirror2.openwrt.org/sources/broadcom-wl-5.100.138.tar.bz2
$ tar xjf broadcom-wl-5.100.138.tar.bz2

Con el driver descargado y descomprimido, tendremos que asegurarnos de tener todos los paquetes necesarios, tras lo cual no quedará más que extraer el firmware en el directorio /lib/firmware (si utilizas otra distribución puede que tengas que cambiar el directorio):

?
# yum install b43-openfwwf b43-fwcutter
# export FIRMWARE_INSTALL_DIR=”/lib/firmware”
# b43-fwcutter -w “$FIRMWARE_INSTALL_DIR” broadcom-wl-5.100.138/linux/wl_apsta.o

Los resultados del cambio son más que positivos, no sólo porque vuelvo a tener redes wifi a la vista, sino porque parece que ha mejorado el rendimiento del driver propietario, al menos parece que ha aumentado el nivel de señal recibido desde mi router. Y además me despreocupo ante posibles actualizaciones del kernel!

HAY OTRA SOLUCIÓN QUE PUEDO SUGERIR Y ES UN POCO MAS SENCILLA Y MUCHAS SOLUCIONES PARA COSAS COMO ESTA
Broadcom

Si se desean usar kmod, primeramente debemos obtener la lista de módulos disponibles, de acuerdo a la versión del kernel que se posea:

#yum list kmod-wl-\*

Los módulos poseen en medio de su nombre la versión del kernel a la que corresponden. Si por ejemplo se desea el kmod para el kernel 3.2.9, entonces se debe proceder a instalar el paquete kmod-wl-3.2.9-1.fc16.i686.i686, así:

# yum install kmod-wl-3.2.9-1.fc16.i686.i686

Si, por otra parte, se desea instalar un akmod, procedemos a instalar la versión más reciente, de la siguiente forma:

# yum install akmod-wl

Finalmente (independientemente de si elegió usar kmod o akmod), procedemos a instalar el controlador correspondiente a la tarjeta de red, en su versión más reciente:

# yum install broadcom-wl

Luego reiniciamos la computadora, para que el módulo respectivo sea cargado en el kernel en ejecución, luego de lo cual ya debería funcionar adecuadamente nuestra tarjeta de red Broadcom, detectando las redes disponibles en la zona.


Calyphrox Webproxy: Tu puerta directa hacia el anonimato y la deep web

Xenode - Mar, 01/28/2014 - 17:15

Calyphrox.net es el nuevo hogar de nuestro proxy oficial, Calyphrox. Para aquellos que sean nuevos lectores de este blog o bien, seguidores de Xenode Systems, déjenme hacerles una breve introducción:

Calyphrox fue la primera aplicación web oficial de nuestra empresa. La monté yo unos días después de formalizar Xenode Systems como tal. Al principio la empresa fue diseñada para ofrecer un hardware específico, pero con el paso del tiempo fuimos expandiendo nuestros horizontes hasta lo que se ofrece hoy en día (y lo que está por venir). Calyphrox Webproxy fue uno de esos primeros pasos que uno da para "tantear el terreno" antes de hacer algo (de manera que te puedas dar una idea) y nació por la necesidad que tenía yo en aquel entonces del poder desbloquear algunas páginas web en la escuela mientras estudiaba la preparatoria.

Con el paso del tiempo el proxy fue adquiriendo actualizaciones menores, (más que nada de presentación) y alguna que otra utilidad extra; Eso era hasta que hace poco me hice el planteamiento de que quizá era una tecnología "ya muerta" pues no tenía mucha utilidad para mi, pero entonces me di cuenta de que sí la tenía para Xenode Systems y fui haciéndole algunos cambios importantes a nivel core, usándolo discretamente en otros proyectos. Después, cuando tuve mi primera experiencia con la deep web me di cuenta de que este tipo de tecnologías sí tienen un nicho dentro de la vida de los usuarios finales (aunque es un tanto diferente a lo que era al principio cuando lo lancé) y es por eso que hoy existe la versión 6, cosa que vengo a presentar aquí precisamente. Sin más preámbulo vamos a ello:

Novedades de Calyphrox 6:


  • Core Updates (Python 2.7, threadsafe, High Replication Database etc)
  • Nuevo diseño responsivo para todo tipo de pantallas
  • Compatibilidad con sitios de Redes Sociales
  • Mejor soporte de contenidos dinámicos (Javascripts)
  • Capacidades de renderizado mejoradas
  • Mejor encriptación
  • Soporte para dominios ".onion" (Deep Web)
  • Alta disponibilidad (Espejeado inteligente)
  • Donativos Aceptados: Bitcoin, Litecoin y Paypal
  • Espacio publicitario para patrocinadores
  • IP Widget oficial


entre otras...

Y a todo esto, ¿Qué es un proxy?

Un proxy es un servidor/entidad que parsea contenido de la web por ti. Podríamos decir que los hay por software, por hardware y en la web (que no es del todo correcto decirlo así, pero para efectos explicativos funciona). En el caso de Calyphrox por ejemplo, se trata de una aplicación web donde introduces una URL e inmediatamente eres llevado a ella, pero el contenido que se te muestra jamás es requerido realmente por tu máquina, sino por uno de los servidores de calyphrox y este te lo enseña. Este comportamiento hace que puedas navegar anónimo al proveerte de otra IP (En este caso una de Google) para usar en lugar de la tuya, al mismo tiempo que te permite evitar dejar huellas en tu paso por la web. De esta manera que nadie puede rastrear lo que visitas hasta ti; En caso de un rastreo, el último endpoint al que las partes interesadas llegan es al servidor de Calyphrox que hizo de espejo para tu contenido (asumiendo aún en este caso que lleguen a tiempo, pues las requests se vacían cada cierto tiempo) Y lo mismo aplica para el caso de la deep web, Calyphrox es la manera más segura de entrar debido a que tu computadora nunca está comprometida en el proceso de la request del contenido realmente, sólo el servidor de Calyphrox que a su vez indaga en la red TOR y devuelve un resultado, no hay método más anónimo y seguro de consultar información. Este enfoque difiere de, (por ejemplo) El TOR Browser Bundle y similares en el hecho de que en ese caso tu computadora siempre (sin importar cuántas protecciones tengas) hace de endpoint origen para la request, ésta "se anonimiza" por medio de TOR y otros filtros pero al final del día tu computadora siempre está involucrada, usando Calyphrox no, pues realmente es como si estuvieras usando "la computadora de alguien más" para requerir el contenido en lugar de la tuya.

Si quieres conocer (y probar) el nuevo Calyphrox sólo tienes que dirigirte a:


Demostrando “directamente” la no numerabilidad de los números trascendentes

Gaussianos - Mar, 01/28/2014 - 13:30

Que el conjunto de los números trascendentes es un conjunto no numerable es un hecho bastante conocido, y hasta diría que sencillo de demostrar. De hecho, en este mismo blog ya hemos publicado alguna demostración del mismo, aunque dicha prueba es, por decirlo de alguna manera, “indirecta” (en realidad se demuestra que el conjunto de los números algebraicos sí es numerable, por lo que el de los trascendentes no puede serlo). Hoy vamos a ver una prueba “directa” de la no numerabilidad de los trascendentes.

Pero comencemos por el principio. Aunque podría apostar a que la mayoría de los lectores de este blog saben qué es un número algebraico y un número trascendente, creo que no está de más recordarlo. A saber:

- Un número real \alpha es un número algebraico si existe algún polinomio de grado finito cuyos coeficientes sean todos números enteros

p(n)=a_nx^n+ \ldots+ a_1x+a_0

que tenga a \alpha como raíz (es decir, tal que p(\alpha)=0).

- Un número real \beta es un número trascendente si no es algebraico (es decir, si no existe ningún polinomio con las características descritas antes que lo tenga como raíz).

Todo número real puede clasificarse como algebraico (si existe tal polinomio) o trascendente (si no existe dicho polinomio). Por tanto, el conjunto \mathbb{R} de los números reales puede expresarse como la unión del conjunto \mathbb{A} de los números algebraicos y el conjunto \mathbb{T}=\mathbb{R} \backslash \mathbb{A} de los números trascendentes.

La demostración habitual de la no numerabilidad de los números trascendentes parte del conocido hecho de que los números reales forma un conjunto no numerable. Teniendo en cuenta esto, se demuestra que el conjunto de los números algebraicos sí es numerable y de ahí se deduce que el de los trascendentes (el resto de número reales) no puede serlo, con lo que la demostración está terminada.

Pero, como decíamos al principio, esto no es una demostración “directa”, no demostramos directamente que los trascendentes son no numerables, sino que los algebraicos sí lo son, y nuestro objetivo se obtiene como consecuencia de esto.

Pero el caso es que dicha prueba “directa” existe, y hoy la vamos a ver aquí. Comencemos definiendo la siguiente función del intervalo [0, + \infty) en los números trascendentes

[0,+ \infty) \longrightarrow \mathbb{R} \backslash \mathbb{A}

de la siguiente forma:

f(x) =     \begin{cases}        \pi+x              & \mbox{, si } \pi+x \not\in \mathbb{A}   \\        \pi-x              & \mbox{, si } \pi+x \in \mathbb{A}     \end{cases}

Veamos para comenzar que nuestra función f(x) está bien definida (es decir, que para todo valor de x obtenemos un número trascendente). Si x es un número mayor o igual que cero tal que \pi+x no es algebraico entonces no hay problema, ya que el valor de la función es el propio \pi+x, que como hemos dicho antes no es algebraico (y por tanto es trascendente). Ahora, si x es un número mayor o igual que cero tal que \pi+x sí que es algebraico, entonces \pi-x debe ser obligatoriamente trascendente. ¿Por qué? Muy sencillo. Si \pi-x también fuera algebraico en este caso, y usando que

  • Si sumamos dos algebraicos obtenemos un algebraico.
  • Si dividimos un algebraico entre un número entero obtenemos un algebraico.

tendríamos que

\pi=\cfrac{(\pi+x)+(\pi-x)}{2}

sería algebraico, pero ya sabemos que en realidad \pi es un número trascendente. Por tanto, si \pi+x es algebraico entonces \pi-x no lo es, y en consecuencia la función f(x) está bien definida.

Nos falta el toque final, pero para ello necesitamos comentar algo antes. El intervalo [0,+ \infty) es un conjunto no numerable, por lo que si encontramos otro conjunto que contenga como subconjunto algo tan grande como dicho intervalo entonces ese otro conjunto también será no numerable. Pues eso mismo es lo que vamos a hacer: demostrar que dentro del conjunto \mathbb{R} \backslash \mathbb{A} de los números trascendentes hay un conjunto tan grande como el intervalo [0,+ \infty). Y eso lo vamos a ver comprobando que nuestra función f(x) es inyectiva, pero antes de nada vamos a definir dicha propiedad de ciertas funciones:

Una función A \longrightarrow B es inyectiva si dados x,y \in A, el hecho de que f(x)=f(y) implica que x=y.

En otras palabras, si x \ne y, entonces f(x) \ne f(y). Es decir, el conjunto B tiene un elemento por cada uno de los elementos de A, por lo que, dicho informalmente, B tiene al menos tantos elementos como tiene A.

Veamos que nuestra función es inyectiva:

Sean x,y \in [0,+ \infty) y supongamos que f(x)=f(y). Hay tres casos:

  1. Tanto \pi+x como \pi+y son algebraicos

    Entonces f(x)=\pi-x y f(y)=\pi-y, por lo que de f(x)=f(y) tenemos que \pi-x=\pi-y. De aquí, restando \pi a ambos lados y multiplicando después la expresión completa por -1 llegamos a donde queríamos, x=y.

  2. Tanto \pi+x como \pi+y son trascendentes

    Entonces f(x)=\pi+x y f(y)=\pi+y, por lo que de f(x)=f(y) tenemos que \pi+x=\pi+y. De aquí, restando \pi a ambos lados llegamos también a que x=y.

  3. Uno de ellos, por ejemplo \pi+x, es algebraico y el otro, \pi+y, es trascendente

    Entonces f(x)=\pi-x y f(y)=\pi+y. De f(x)=f(y) tenemos que \pi-x=\pi+y, y restando \pi a ambos lados obtenemos que -x=y. Pero tanto x como y son mayores o iguales que cero, por lo que la única posibilidad real de que esto ocurra es que ambos sean cero, por lo que también llegamos a que x=y.

Es decir, sean cuales sean x,y \in [0,+ \infty) se tiene que partiendo de f(x)=f(y) obtenemos que x=y. Por tanto f(x) es inyectiva, y esto en nuestro caso significa que el conjunto \mathbb{R} \backslash \mathbb{A} de los números trascendentes contiene un conjunto no numerable, por lo que él mismo es también no numerable.

Espero que la demostración que os traigo hoy os haya parecido interesante, y también espero que si conocéis alguna otra demostración que siga esta línea la compartáis con nosotros en los comentarios.

Fuente: la página de Facebook de The American Mathematical Monthly. Yo lo vi en la página de Facebook de Matgazine.

Esta entrada es la primera aportación de Gaussianos a la edición 4.12310562561 del Carnaval de Matemáticas, que en esta ocasión organiza nuestro amigo Cuentos Cuánticos.

Entra en Gaussianos si quieres hacer algún comentario sobre este artículo, consultar entradas anteriores o enviarnos un mensaje.

Construye tú también el poliedro de Császár.

Firefox OS 1.2

eliasbrasa - Mar, 01/28/2014 - 12:05

Bueno, como vais viendo he hecho mi propia incursión en el mundillo de Firefox OS de la mano de un Geeksphone Peak, ya os hable de las sensaciones que me trajo Firefox OS 1.1, y esta vez os voy a hablar de la siguiente versión de Firefox OS que he probado, la 1.2

FirefoxOS_Logo

La verdad es que hay cambios entre una versión y otra, como por ejemplo:

  • La pantalla de bloqueo tiene otra presentación que hace que funcione con más fluidez, es más, la pantalla de bloqueo es sensible al cinamómetro y gira con el teléfono.
  • Mejora en el navegador web, que ahora es más rápido y tiene un zoom mejorado, la verdad es que se agradece, además, el icono del navegador se ha cambiado y es ya el logo de Firefox.
  • El cliente de Twitter a veces no carga todos los tweets que debiera si no lo dejas residente en memoria, de tal modo que deja lapsos de tiempo sin tweets y no te da opción a recuperarlos, tienes la opción de usar el navegador, pero alguna vez también me ha ocurrido a lo mismo ya que tengo la manía de no dejarlo residente en memoria.
  • Se activa el modo avión a veces tras desactivarlo (si lo has activado) o tras arrancar el dispositivo y no hay manera de quitarlo, normalmente basta con reiniciarlo y ya está.
  • Reiniciar el teléfono te lleva como 3 minutos como mucho.
  • Los accesos de la Wifi, Bluetooth, etc, los que salen al arrastrar hacia abajo desde la parte superior de la ventana, tienen la manía de no dejarse conectar o desconectar en algunas ocasiones, es como si perdiera sensibilidad…
  • El reproductor de música está a partir de ahora disponible en la pantalla de bloqueo (No lo he llegado a probar)
  • Los SMS no suenan mientras realizan otras tareas. Esto es una gozada si estás hablando por teléfono porque evitas sustos en modo de masaje de oreja ;) ;) Eso sí, sigue sin poderse poner los tonos que quieras ni en las llamadas ni en los mensajes.
  • La medición de la batería va como a tirones, no es que sea muy escandaloso, pero no van igual de fluido que en la versión 1.1
  • Inclusión de la posibilidad de enviar contactos vía Bluetooth y desde la tarjeta de memoria, aquí hay algo curioso, porque me permitió exportar los contactos que tenía y volverlos a recuperar, pero no me permite recuperarlos desde el archivo que, en tiempos, creé con Android…
  • La duración de la batería creo que ha sido optimizada, porque esta primera carga, sin hacer grandes cosas, me ha durado 4 días completos.

También he de decir que actualizar desde la versión 1.1 a la 1.2 ha sido cosa de 5-10 minutos, me pareció hasta increíble. Ya publicaré un tutorial de como actualizar el Geeksphone Peak, que es algo muy sencillo.

De momento puedo asegurar que, aunque tiene sus defectos, me gusta más la versión 1.2 que la 1.1 aunque esta última sea perfectamente funcional. Quizá son las ganas de aventura ;) ;) ;)

Fuente: ADSLZone.


Del 20 al 27 de Enero, 2014

Fedora Venezuela - Mar, 01/28/2014 - 05:49

Mi reporte de actividad reciente.

Feliz inicio de semana y espero que les sea de utilidad.

- Gomix -

Leer un archivo csv desde python y ruby.

Fedora Venezuela - Mar, 01/28/2014 - 00:13

Si tienes que leer un archivo .csv desde alguno de estos lenguajes les presento unos trozos de código que pueden ser útiles a la hora de hacerlo.

En python

import csv with open('items-cantv-new.csv', 'rb') as csv_file: ... reader = csv.reader(csv_file, delimiter=',') ... for row in reader: ... print ', '.join(row) ... nombre, apellidos, direccion, estado, ciudad guillermo, gomez, altamira, distrito capital, caracas desiree, falcon, guacara, carabobo, valencia eduardo, echeverria, guacara, carabobo, valencia guillermo, gonzales, altamira, distrito capital, caracas eduardo, perez, guacara, carabobo, valencia

Desde Ruby

require 'csv' csv_file = CSV.table("items-cantv-new.csv") csv_file = CSV.table("items-cantv-new.csv") sorted = csv_file[:estado].uniq.reverse res= [] sorted.each { |nombre| csv_file.each { |csv_row| res << csv_row if csv_row[:estado].to_s.eql?(nombre) } } p res.to_csv "\"desiree,falcon,guacara,carabobo,valencia\n\",\"eduardo,echeverria,guacara,carabobo,valencia\n\",\"eduardo,perez,guacara,carabobo,valencia\n\",\"guillermo,gomez,altamira,distrito capital,caracas\n\",\"guillermo,gonzales,altamira,distrito capital,caracas\n\"\n"

Páginas

Subscribe to Fedora-es agregador