qrencode -o wifi_bbc2.png

Usando QR para mostrar contraseñas largas para nuestro WiFi

Download PDF
1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Cargando…

Hace ya tiempo hablamos de los códigos QR pero sinceramente habíamos olvidado darle un uso práctico al software. Ahora con los ataques a la encriptación WPA2 basados en la esperanza que usemos contraseñas cortas (y usando tablas rainbow) ha tomado auge una nueva solución, veamos cómo.

Seguir leyendo
Download PDF

Expresiones regulares («Regular Expression» o «Regex»)

Download PDF

Ya antes hablamos brevemente (o más bien utilizamos para nuestros propósitos) la expresiones regulares. En este artículo explicaremos de la manera más sencilla posible este quebradero de cabeza para muchos de nosotros.

Actualizado el sábado 26 de febrero de 2022.

Publicado el martes 13 de agosto de 2019.

Seguir leyendo

Download PDF
Python logo sin texto

Python: cómo obtener la dirección IP pública

Download PDF

Este asunto tenía tiempo en nuestras mentes hasta que este vuestro sitio web estuvo «caído» durante varias horas debido a que nuestro propio proveedor de alojamiento web decidió instalar los certificados necesarios para poder establecer comunicaciones seguras y encriptadas entre los navegantes y nuestro servidor web (TLS o https, como quieran verlo). Por cierto que lo recibimos, dicho servicio, con mucho gusto y justificamos el tiempo fuera de línea debido a este evento (todo esto lo especulamos porque aún no hemos recibido un comunicado explícito al respecto).

Python logo original
Python logo original

En todo caso el tema va, y debió haber ido (publicado) hace muchísimo tiempo por estos lares, mejor tarde que nunca, aquí vamos.

Seguir leyendo

Download PDF

Meltdown y Spectre: el azote para los procesadores Intel

Download PDF

Chipocalypse lo ha bautizado el reportero Russel Brandom de la revista neoyorquina The Vergey no es para menos-.

El asunto es que desde al menos hace 10 años los procedores Intel (exceptuando los Atom hechos antes del 2012) presentan una fuga de información en su estrategia predictiva. En realidad esta técnica data de los años 90: los procesadores, según las órdenes que reciben, comienzan a guardar en una «memoria» aparte los que son más utilizados y así «predicen» que es lo que quiere hacer el usuario. Esto en la última década se ha hecho más intenso debido al gran poder de procesamiento de los modernos CPU los cuales literalmente se sientan a esperar que nosotros les ordenemos realizar cualquier tarea. El problema estriba en que luego estos datos no son protegidos: un usuario puede tener acceso a ellos y de allí obtener algunos datos valiosos como contraseñas, entre otras cosas.

Seguir leyendo

Download PDF
Feliz Día del Programador

Feliz Día del Programador 2017

Download PDF

«Feliz Día del Programador» desde el 2015 tenemos conocimiento que celebramos este día, sin distingo del lenguaje que usemos, tengamos que usar o que desarrollemos (los más avezados en la materia). Sin duda que los ordenadores es uno de los más grandes inventos de la humanidad, con la labor destacada de Alan Turing (con quien en vida se cometió una gran injusticia en su vida personal).

Feliz Día del Programador
Feliz Día del Programador

Modestía aparte: sobre nosotros recae un gran poder que conlleva una gran responsabilidad y aprovechamos el día para recordarnos nuestra dosis diaria de humildad, paciencia y empeño no solo en este día sino en todo el año para que los usuarios a quienes nos debemos (y nos dan el sustento económico en este, por ahora, sistema capitalista) sean los máximos beneficiados de nuestros frutos mentales ¡Y SI PROGRAMAMOS EN SOFTWARE LIBRE CONTRIBUIMOS AL PATRIMONIO TECNOLÓGICO DE LA HUMANIDAD! Seguir leyendo

Download PDF
Language programming books, photo by Helder da Rocha

Clases, Objetos e Instancias

Download PDF

Abrimos el mes de julio con mucho trabajo y hemos estado lentos en la publicación por este vuestro humilde «web log» pero hicimos un paréntesis con la simple traducción de un artículo duro y contundente a propósito de un trabajo de investigación que venimos desarrollando. Estos conceptos -expuestos de una manera muy práctica y orientados sobre lenguaje Java- los consideramos fundamentales (a pesar que algunos programadores han anunciado este modelo como en decadencia) por ello los traducimos tal cual y además les agregamos unos enlaces para que veaís cuán profundo es el tema y como de maravilloso lo simplificaron en el artículo que citamos en idioma castellano a continuación.

Language programming books, photo by Helder da Rocha
Language programming books, photo by Helder da Rocha /147570929

Clase versus Objeto versus Instancia

En la Programación Orientada a Objeto frecuentemente escuchamos términos como «Clase», «Objeto» e «Instancia» pero ¿qué es una Clase / Objeto / Instancia en realidad?

En resumen, un objeto es un paquete de software de estado y comportamiento relacionados. Una Clase es un modelo o prototipo del que se crean los Objetos. Una Instancia es una sencilla y singular unidad de una clase.

Por ejemplo, tenemos un proyecto (Clase) que representa al «Estudiante» (Objeto) con campos como nombre, edad, curso (miembro de la Clase). Y tenemos dos estudiantes aquí, José y María. Así, José y María son dos Instancias diferentes de la clase «Estudiante» que representan el Objeto (personas Estudiantes). Veamos mayores detalles.

Objeto.

Los objetos del mundo real comparten 2 características principales, estado y comportamiento. Los humanos tienen estado (nombre, edad) y comportamiento (correr, dormir). Los objetos de software son conceptualmente similares a los objetos del mundo real: ellos también consisten en el estado y el comportamiento relacionado. Un Objeto almacena su estado en campos y expone su comportamiento a través de métodos.

Clase.

La clase es una «plantilla» o «modelo» que se utiliza para crear objetos. Básicamente, una clase consistirá en campo, campo estático, método, método estático y constructor. Campo se utiliza para mantener el estado de la clase (por ejemplo: nombre del objeto Estudiante). El método se utiliza para representar el comportamiento de la clase (por ejemplo: cómo un objeto Estudiante va a ponerse de pie). Constructor se utiliza para crear una nueva instancia de la clase.

Instancia.

Una Instancia es una copia única de una clase que representa un Objeto. Cuando se crea una nueva Instancia de una Clase, el ordenador asignará un espacio de memoria para esa Instancia de Clase (en nuestro ejemplo, José y María tendrán su espacio aparte e independientes en memoria).

Nota: aunque no está en el artículo original, quisieramos agregar algo adicional con respecto a las Instancias, y es que pudiera darse el caso que se pudieran compartir los valores de campo fácilmente entre dos o más Instancias y precisamente eso es lo que facilita la programación. Si la Clase Estudiante tiene un campo llamado «residencia» (la cual tiene subcampos que contienen la dirección de habitación – estado, ciudad, barrio, calle, casa, etc.- de José y María) y ellos son parejas y viven en la misma casa pues con solo rellenar los campos de María al finalizar los «igualamos» -copiamos- en un solo paso a la Instancia Pedro ¡fácil!.

Fuentes consultadas.

En idioma castellano.

En idioma inglés.

Download PDF