viernes, 15 de septiembre de 2017

Programación Funcional con #Python

La Programación Funcional es un paradigma de programación basado en el uso de funciones matemáticas, en contraste a la programación imperativa. La programación funcional tiene sus raíces en el cálculo lambda, un sistema formal desarrollado en los años 1930 para investigar la definición de función, la aplicación de las funciones y la recursión. Muchos lenguajes de programación funcionales pueden ser vistos como elaboraciones del cálculo lambda. Wikipedia.

Figura 1: Programación Funcional

Hace un tiempo atrás, he tenido la suerte de participar en un evento de Software Libre, de mi gran amigo Luis Tomás Wayar @lwayar conversó sobre Programación Funcional con Python.

Aquí les dejo el enlace para aquellos desarrolladores que están interesados en iniciar con este paradigma junto a un lenguaje tan práctico como es Python.


Saludos!

lunes, 21 de agosto de 2017

Grandes temas de las #matemáticas

Este último fin de semana me dediqué a ver un muy interesante programa llamado "Grandes temas de las Matemáticas" emitido por TECtv La señal de la ciencia y bajo la conducción de Adrián Paenza.

Figura 1: Grandes temas de las matemáticas

El reconocido divulgador Adrián Paenza nos acerca interrogantes que tienen a la matemática como protagonista: ¿Es posible anticipar si un fenómeno se va a producir o no? ¿Cuál es la importancia de la noción de límite? ¿Cuántos problemas abiertos existen? ¿Qué son los números primos? Con su habitual sentido del humor, didáctica y la colaboración de especialistas invitados, el conductor nos demostrará que no sólo es posible responder estos cuestionamientos sino también descubrir que la matemática nos acompaña en nuestra vida cotidiana y no es para nada aburrida.

A lo largo de los siguientes 13 capítulos vas a encontrar temas tales como el número PI, la importancia de los números Primos, Los problemas abiertos, Fibonacci, el número e, teoría de juegos, noción de límites y otros grandes temas más.


Si realmente estas interesado en la programación o en las ciencias de la tecnologías es tecnicamente imposible que no estén vinculados los temas de matemáticas y gracias al entusiasmo de mi gran amigo Luis Wayar @lwayar por las matemáticas es un terreno que no deja de sorprenderme nunca.

Saludos!

sábado, 24 de junio de 2017

Las 4 libertades del #SoftwareLibre

Luego de la visita de Richard M. Stallman a #jujuy donde tuve la suerte de estar presente en su conferencia, conseguí su libre llamado "Software Libre para una Sociedad Libre".

Figura 1: Software Libre para una Sociedad Libre

Este libro, resume alguno de sus ensayos, pensamientos y posturas en cuanto a su filosofía de Software Libre y su visión por llevar la voz a más lugares.

En esta oportunidad quería aprovechar para describir las 4 libertades para que un software sea considerado libre:

La libertad de ejecutar el programa sea cuál sea el propósito.

La libertad de modificar el programa para ajustarlo a tus necesidades. (Para que se trate de una libertad efectiva en la práctica, deberás tener acceso al código fuente, dado que sin él la tarea de incorporar cambios en un programa es una tarea extremadamente difícil).

La libertad de redistribuir copias, ya sea de forma gratuita, ya sea a cambio del pago de un precio.

La libertad de distribuir versiones modificadas del programa, de tal forma que la comunidad pueda aprovechas las mejoras introducidas.

A partir de este punto se abre una abanico de oportunidades de crecimiento y modelos de negocios que es posible llevar adelante.

En lo personal, creo que lo mejor que podemos hacer como informáticos es contribuir y generar comunidades, basadas en estas libertades, dando la posibilidad no solo de integrar ideas y desarrollar programas, sino también con la idea de compartir el conocimiento y contribuir para generar proyectos aún más grandes.

De todas maneras, me parecería muy interesante tener la posibilidad de leer sus comentarios!

Saludos!

Fuente | Software Libre para una Sociedad Libre

lunes, 19 de junio de 2017

Limitar el ancho de banda para el comando wget

Ya probaron el comando wget? Sabían que desde la línea de comandos es posible descargar archivos? los invito a ejecutar en su terminar el siguiente comando:

$ apropos download

Figura 1: Limitar el ancho de banda en wget

Uno de los resultados es wget, que es una excelente tool para poder descarga archivos especificando una URL.

Por otro lado, todos queremos cuidar nuestro ancho de banda, no se ustedes, pero en latinoamerica nuestras conexiones a Internet no son las mejores y tristemente creo que estamos muy lejos de mejorarlas a corto plazo.

Sea cual fuese la situación, hoy hacemos todo en la Internet, mientras descargamos por ejemplo una ISO o nos preparamos para descargar la nueva versión de Debian 9 dentro de poco, es posible que estemos conectados a YouTube, o viendo contenido en Netflix y desde el smarphone revisando el TL de Twitter.

Por eso vamos a cuidar nuestro ancho de banda, y haciendo uso de wget también podemos limitar la velocidad a lo que va a descargar algún archivo.

En este momento, estoy descargando Android Studio y el comando que ejecuté es el siguiente:

$ wget https://dl.google.com/dl/android/studio/ide-zips/2.3.3.0/android-studio-ide-162.4069837-linux.zip

No faltó un par de minutos para que deje de responderme muchos servicios, pues este recurso estaba consumiendo el ancho de banda, por esa razón detube la descarga pulsando las teclas:

Ctrl + c

La descarga de Android Studio me lleva 462MB, si quisieramos dar un otro ejemplo podría ser un wallpaper o una imagen de una archivo ISO, etc.

Lo cierto es que necesito ahora dos cosas, la primera es limitar el ancho de banda de la descarga y la segunda, ya que detuve o interrunpí mi descarga quiero continuar desde donde me quedé.

Afortunadamente con wget todo es posible y los invito a ver como:

$ wget -c https://dl.google.com/dl/android/studio/ide-zips/2.3.3.0/android-studio-ide-162.4069837-linux.zip --limit-rate=40k

Dentro del comando wget, utilicé el argumento -c ó --continue para continuar desde donde quedó interrumpido el download, y con --limit-rate limitar la descarga a 40KB/s.

Simple y efectivo. Ahora bien, si están interesados en ver que más pueden hacer con wget, los invito a ejecutar:

$ man wget

Y sin más para aportar, me encantaría seguir leyendo sus comentario o recomendando más opciones para tenerlas como referencia.



Saludos!

sábado, 17 de junio de 2017

Los secretos de la línea de comandos

Aquellas personas que se animaron a dar un paso más, notaron que hablar de sistemas #GNU con #Linux es sinónimo de hablar de la línea de comandos, también conocida como terminal o consola.

Figura 1: Los secretos de la línea de comandos

Pero claro, si estamos acostumbrado a trabajar con herramientas visuales, GUI o la ayuda del mouse, dar el siguiente paso puede que nos lleve un poco más de tiempo.

El poder que tiene la línea de comando es increible, ya que desde este input es posible realizar técnicamente todas las tareas, desde instalar programas, escribir documentos o conectarnos remotamente  a otros servidores.

Pero antes de intentar ejecutar cosas grandes, lo mejor siempre es empezar por el principio, suena lógico y de hecho lo es, lo menciono por que siempre conocemos a personas que creen que por que uno aprende a utilizar un comando cat ello ya se encuentran en niveles superiores y nos invitan a saltearnos un montón de aprendizaje.

Yo los invito a usar el sentido común, y el desafío personal, a creen con una base sólida sobre los primeros pasos en la línea de comandos, que más se puede hacer allí y cuantas alternativas existen para esa misma tareas. Yo los desafío a utilizar navegadores webs basados en la terminal como es el caso de lynx.

Para todo esto les propongo una muy buena biografía que de esto si hay un montón, pero en este caso escogí un bonito libro para comenzar de cero.

El libro se llama "The Linux Command Line" y desde aquí van a aprender un montón de trucos, ejercicio y las primeras funciones que pueden hacer desde una terminal y con un sistema tipo GNU con Linux.

Figura 2: The Linux Command Line

Es una aventura genial, donde van a aprender como se hacen diferentes operaciones, utilizando herramientas primitivas GNU para la administración de estos sistemas

Están todos invitados a pasar al siguiente nivel, entender como es que las operaciones se realizan en tus sistemas y cuáles son las diferentes formas y posibilidades de mejorarla.

Saludos!

Enlace | Descarga "The Linux Command Line"

jueves, 15 de junio de 2017

Administra tus libros digitales con #Calibre

Se pusieron a pensar cuantos libros digitales descargaron o tienen en su ordenador? Administrarlos es todo un desafío, a pesar que en mi opinión personal los libros de papel tienen una mejor presentación y un sabor distintos, si que es verdad que lo digital trasciende todo tipo de frontera.

Con mis bibliografías favoritas y notas dentro de libros digitales, como les mencionaba al principio de este post, es todo un desafío administrar una biblioteca digital de todo aquello que nos gusta leer.

Para dar solución a este tema en la organización, les quiero presentar a Calibre, un software de gestión de una biblioteca personal que mantiene toda una organización.

Figura 1: Administra tus libros digitales con Calibre

Calibre es un gestor y organizador de libros electrónicos libre, que permite la conversión de numerosos formatos de archivos para libros electrónicos.1 Su creador, Kovid Goyal, junto con el equipo de desarrolladores de Calibre promueven la difusión de formatos compatibles junto con numerosos fabricantes de lectores de libros electrónicos. Calibre está programado en los lenguajes Python y C, usa la biblioteca Qt de Nokia y es multiplataforma, siendo compatible con los tres principales sistemas operativos: GNU/Linux, Mac OS X y Microsoft Windows

Es interesante ver como Calibre se puede sincronizar con grandes librerías como Google o Amazon para sincronizar todos los metadatos del libro, reseñas, recomendaciones, publicación, autor, fecha de publicación, editorial, etc.

Figura 2: Frontend de Calibre

Si lo que están buscando es organizar todos sus libros digitales y aquellos e-books en diferentes formatos, ya saben que Calibre es una excelente opción.-

Saludos

Enlace | Web oficial de Calibre

lunes, 12 de junio de 2017

La mejor forma de aprender #GNU #Linux es ...

Me dió mucha alegría saber que hay personas que continúan asociadas a este blog, y de la manera que pueda, voy a estar publicando algunos post, ahora bien, si quieren aprender sobre Seguridad Informática, que otro de los temas que también me apasiona, los invito a que se den una vuelta por Cacería de Spammers.

Figura 1: La mejor forma de aprender #GNU #Linux

En este último año he tenido la suerte de ser invitado a muchos eventos, muchos de ellos relacionados con Seguridad Informática y otra gran parte a Software Libre.

En muchas oportunidades, me realizan la misma pregunta una y otra vez, ¿Cómo comenzar con el mundo de Linux? ¿Cuál es la mejor forma de migrar a Linux? ¿Cuál es la mejor forma de iniciar y no morir en el intento?

La verdad que hace más de 10 años que utilizo GNU/Linux, siempre gracias al esfuerzo y la pasión que mi gran amigo +Luis Tomás Wayar me dió, y a partir de ello pude avanzar aprendiendo mucho más.

Cuando me realizan este tipo de consultas, mi respuesta siempre es la misma, la mejor forma de aprender a usar #GNU con #Linux es simplemente animarse y usar, #GNU con #Linux pues no existe ningún secreto.

Yo podría contarle una y otra vez, las maravillas que tiene Linux con sus usuarios, pero una cosa que escuchar lo que te cuentan y otra muy diferente es vivir la experiencia. Hay que estar dispuesto a entender que estos sistemas son muy diferentes a sistemas populares como Windows, donde las opciones de aprender son realmente infinitas.

Figura 2: Aprender todo el potencial de la línea de Comando en GNU/Linux

Lo mejor es avanzar lento, pero a paso firme y nunca quedarse con la primera opción. Por otro lado, si deciden transitar este aprendizaje, sería genial que consigan compañeros y amigos con esos mismos intereses y expectativas, para avanzar con distintos puntos de vista sobre lo que se aprende.

Teniendo en cuenta la cantidad de versiones y distribuciones del sistema GNU/Linux, lo mejor siempre es comenzar con un sistema que su enfoque sea el usuario final, un usuario de PC que busca realizar sus tareas diarias.

Ubuntu desde hace mucho tiempo viene haciendo las tareas muy bien con sus usuarios, y es sin duda la mejor opción, ya que además la gran comunidad de personas detrás de ello y toda la documentación que existe va a ayudar y mucho para entender este nuevo universo.

Hoy por hoy existe una gran cantidad de recursos no solo para aprender sino también para contribuir en el aprendizaje, desde tecnologías LiveCD, Virtualización, lectura de documentación, Papers, Videos, Conferencias, etc, etc, etc ...

Es natural e incluso es de esperar, que no entiendas todo al principio, pero ánimo que GNU/Linux es para personas curiosas, para auténticos hackers con grandes motivaciones y sueños.

Lo he comentado en varias oportunidades, mi sistema favorito es #Kubuntu para mis escritorios y #Debian para aquellos servidores que toca administrar, pese a que he tenido la suerte de probar otros sabores como FreeBSD, RedHat, CentOS, entre otros.

Una vez que ya estén en confianza con el sistema, no existe límite posible, ya que la única limitación posiblemente este dado por el tiempo que tengan disponible para seguir aprendiendo más sobre redes, programación, diseño, Bases de Datos y todas esas cosas que los informáticos solemos aprender.

Ojalá que realmente el camino que quieran tomar ahora que se encuentran con el entusiasmo de aprender GNU/Linux les sea muy gratificante.

Los invito a compartir este post y dejarme en los comentarios cuáles son sus recomendaciones y recursos para aprender GNU/Linux. Se animas?

Saludos!

jueves, 8 de junio de 2017

Nuevo #WordPress 4.8 "Evans"

El equipo de Desarrollo de #WordPress hace un par de horas publicó la versión final para la actualización tan esperada de #WordPress 4.8 "Evans".

Figura 1: Nuevo WordPress 4.8 "Evans"

8 de Junio fue la fecha que escogieron publicar esta nueva actualización, que desde hace algunas semanas comenzaron a publicas las correspondientes RC para que los usuarios vallan probando nuevas características.

En lo personal, probé la RC1 de v4.8 que andaba muy bien, y ahora me encuentro probando en sandbox la versión final y la verdad es que va muy bien, ya compatible con mucho de lo desarrollado y desplegado por clientes, por lo cuál ya estoy activando los procesos de actualización para todos.

Esta actualización es el resultado de cerrar más de 350 Tickets dentro de su Mileston 4.8 y lo posiciona nuevamente en el inicio de una nueva versión.

La primera mejora con la que se van a encontrar son los Widget nativos de Video, Imágen, Audio y Texto enriquecido, para incorporarlos en cada unos de los proyectos, siempre haciendo alusión a las facilidades que WordPress siempre enfoca a sus usuarios finales.

Por otro lado, mejoraron mucho en la edición de enlaces y vínculos sobre el texto que uno va editando en los Post y Páginas.

Dentro del Dashboard de Administración, WordPress incorporó un Widget para informar sobre todos los eventos relacionados al mundo de WordPress :D

Se elimina el soporte a los archivos WMV y WMA ya que cada vez menos navegadores le están dando soporte a Silverlight.

Por otro lado hay muchas mejoras muy granulares en la administración de Redes en WordPress o Multisitio, mejoras en API REST, nuevos proveedores para oEmbed y algunos detalles que puedes leerlo desde aqui.

No dejen de actualizar a esta nueva versión de WordPress! me gustaría que me dejaran sus comentarios y primeras impresiones!

Saludos!

Enlace | WordPress 4.8 "Evans"

miércoles, 7 de junio de 2017

3 ... 2 ... 1

Hola que tal!!!! como están todos!!?? Les cuento un poco, yo la estoy pasando genial, con bastante trabajo y proyectos de investigación en curso.


Hace mucho tiempo que no escribo por aquí, la verdad que a este blog lo tenía bastante abandonado, me dejan un comentario, +1, RT, Like, etc y seguimos publicando cosas.

Vamos quién se anima a ser el primero!!!!

Saludos!

Entradas populares