March 20, 2019


Rodolfo Pilas

whois para nuevos TLDs

Los nuevos TLDs como guru, americanfamily, showtime y muchos otros son un desafío para el comando whois con cierta antigüedad, ya que no los pueden resolver y muestra el error:

No whois server is known for this kind of object.

La solución es configurar un archivo /etc/whois.conf con las referencias a los nuevos TLDs y los servidores whois que los resuelven.

Este gist es un archivo /etc/whois.conf pronto para pegar y tener resuelto el problema para la siguiente consulta whois que se haga con los nuevos TLDs.

by pilasguru at March 20, 2019 03:08 PM

March 14, 2019


Fernando Briano

Cómics Marvel – Leyendo a los Inhumanos: Black Bolt

Escrito por Saladin Ahmed y con arte de Christian Ward, Black Bolt fue la primera serie mensual del rey de los Inhumanos de Marvel Cómics. Se publicó originalmente en Mayo de 2017, y terminó en el #12 en Abril de 2018. Fue compilada en dos tomos: Hard Time y Home Free. A continuación les cuento de uno de mis cómics preferidos de Inhumans y que recomiendo ampliamente:

Tomo 1: Hard Time

Black BoltEsta historia se desarrolla entre Inhumans Vs X-Men y Royals. Pero puede ser leída sin tener contexto de lo que pasó antes (o lo que pasa después). Lo que tenemos que saber es que Black Bolt despierta en una prisión, todo lo demás nos iremos enterando más adelante. La narrativa se inclina hacia la ciencia ficción, donde el escritor Saladin Ahmed tiene bastante experiencia.

En un principio resulta de esos cómics que se apartan un poco de la continuidad, pudiendo tener más soltura a la hora de contar cosas. Pero eventualmente empiezan a aparecer referencias y conexiones de las que no se puede escapar del todo en un universo compartido. Por ese lado disfruté mucho que la historia fuera bastante independiente más allá del contexto, pero que lentamente empezara a conectarse con el universo Marvel con el que uno está familiarizado. Como dije antes, no se necesita de haber leído historias de Black Bolt que vinieron antes para disfrutarlo.

Esto no quiere decir que esté completamente despegado de la mitología Inhumana. Pero me da la impresión que no conocer mucho los personajes antes de leer este título no le quita disfrute. Aunque si son seguidores de Inhumans, seguro van a disfrutarlo más todavía.

Black BoltSi bien Black Bolt es el protagonista y centro de la trama, van apareciendo personajes de la prisión que generan dinámicas muy interesantes y entretenidas. Esto aporta mucho, algunos son viejos conocidos y otros nuevos, pero se ganan la empatía del lector más allá de las razones por las cuales se encuentran en la prisión.

La alianza de Black Bolt con sus compañeros cae en el recurso narrativo de la “banda de inadaptados que se une con un fin común”. Pero el libro tiene un muy buen balance entre “una historia sobre Black Bolt” y “una aventura de Black Bolt en un grupo”, más a lo Inhumans clásico. A través del desarrollo de los personajes, entre otras cosas se analiza el tema del bien y del mal y la redención. Algo que corre peligro de caer en clichés o historias simplistas. Pero cuando está bien escrito como en este caso, es un éxito.

Viendo la tapa del primer número y ojeando las primeras hojas, podemos notar que el arte es otro punto alto de la serie. Las primeras páginas del primer número son un deleite visual con poco texto que de a poco nos lleva de paseo a este mundo donde se desenvuelve la trama. Christian Ward se encarga de todo el arte, y lo hace de manera espectacular. La prisión juega un poco con la mente de sus prisioneros, y el estilo del artista es ideal para representar ciencia ficción medio psicodélica que en lo personal disfruto mucho.

Hace un buen uso dinámico de las viñetas y “splash pages” (las viñetas que ocupan todo un par de páginas abiertas, pero no sé la traducción). Es así que la historia y el arte se complementan perfectamente. Vale la pena tener en cuenta otros trabajos de Christian Ward, y si quieren tener una idea de qué va la cosa, visiten su sitio web.

Hard Time colecciona los números 1 al 6 de Black Bolt y pueden encontrarlo en Amazon. Es un excelente cómic y lo recomiendo mucho, más allá que conozcan a Black Bolt o los Inhumans.

Próximamente les cuento sobre el desenlace y segundo tomo: Home Free.

by Fernando at March 14, 2019 02:00 PM

March 13, 2019


Fernando Briano

Crystal: Lenguaje de programación inspirado en Ruby

Lenguaje de programación Crystal

Crystal es un lenguaje de programación de propósito general orientado a objetos. Su sintaxis está inspirada en Ruby pero no busca ser compatible. Surgió del amor a la eficiencia para escribir código de Ruby, y el amor a la eficiencia para ejecutar código C. Busca ser lo mejor de ambos mundos.

Entre las diferencias fundamentales con Ruby se encuentran:

El siguiente código nos muestra la inferencia de tipos en acción:

puts typeof("Fernando") #=> String
puts typeof(12) #=> Int32
puts typeof(42.0) #=> Float64

También podemos definir el tipo con anotaciones:

@nombre : String
@edad : Int32

Todo es un objeto: Al igual que en Ruby, en Crystal todo es un objeto (tiene un tipo, responde a algunos métodos).

Recién va por la versión 0.27.2, así que está creciendo y cambiando rápidamente todavía. De todas formas hay algunos valientes que se han animado a usarlo en producción. El proyecto cuenta con un Roadmap que define las cosas que quieren tener en el lenguaje, así como preguntas frecuentes y una excelente documentación.

Otras cosas interesantes de Crystal sobre las que me gustaría escribir más adelante: union types (tipos de datos especiales que pueden poseer varias representaciones), Macros (sistema para meta programación), Modelo de concurrencia e integración con librerías C (tiene una sintaxis dedicada para llamar a bibliotecas nativas de forma sencilla).

Instalar Crystal

Crystal puede ser instalado en Debian, Ubuntu, RedHat, CentOS, Arch Linux, Gentoo, Alpine, FreeBSD, y demás sistemas, desde un tar.gz o compilado desde el código fuente. Si usan el gestor de versiones asdf, hay un plugin para eso. Podemos ver las distintas instrucciones de instalación en la documentación.

El comando crystal

Una vez instalado, deberíamos tener el comando crystal disponible en nuestra terminal. Los archivos de código fuente Crystal tienen la extensión .cr. Para ejecutar un archivo de código fuente Crystal, escribimos:

$ crystal run archivo.cr

El comando `run` compila el código a un binario ejecutable en una ubicación temporal y lo ejecuta. Con el comando crystal build, podemos crear un binario ejecutable:

Crystal build

También existe crystal eval para pasarle código Crystal a crystal run desde la línea de comando o a través de un pipe por la entrada estándar. La lista completa de opciones está en la documentación usando el compilador.

Creando proyectos Crystal

El comando crystal también incluye el parámetro init, que inicializa un directorio con un proyecto. El primer parámetro de init es el tipo de proyecto. Las dos opciones son lib, una biblioteca reutilizable y app, una aplicación sin el objetivo de ser usada como dependencia:


$ crystal init app prueba
create prueba/.gitignore
create prueba/.editorconfig
create prueba/LICENSE
create prueba/README.md
create prueba/.travis.yml
create prueba/shard.yml
create prueba/src/prueba.cr
create prueba/spec/spec_helper.cr
create prueba/spec/prueba_spec.cr
Initialised empty Git repository in /home/fernando/workspace/crystal/prueba/.git/

Shards: Manejo de dependencias

Shards es a Crystal lo que las gemas son a Ruby. Las aplicaciones y bibliotecas Crystal cuentan con un archivo shard.yml que declara las dependencias del proyecto. Shards se distribuye con Crystal, así que lo tenemos disponible en nuestra terminal. Con shard init, creamos un archivo shard.yml de ejemplo, seguido de shard install para instalar las dependencias y especificarlas en un archivo shard.lock.

Por ejemplo en el proyecto recién creado, agrego las siguientes líneas al archivo shard.yml:

dependencies:
  cossack:
    github: crystal-community/cossack
    version: ~> 0.1
  

Cossack es un cliente HTTP bastante simple para Crystal. Se instala al ejecutar shards install y ya lo puedo usar en el código fuente. Dentro del archivo src/prueba.cr del mismo proyecto escribo:

require "cossack"

module Prueba
  VERSION = "0.1.0"

  def self.hola
    response = Cossack.get("https://picandocodigo.net/api")
    puts response.body
  end
end

Prueba.hola

Y podemos ejecutarlo con crystal run para ver los resultados:
crystal run src/prueba.cr

Testeando Código Crystal

Crystal viene equipado con una biblioteca de testing en el módulo Spec. Incluye un DSL (lenguaje de dominio específico) inspirado en RSpec, por lo que resulta súper familiar para programadores Ruby. Cuando inicié mi proyecto más arriba,ya se creó un directorio /spec con un archivo de ejemplo. Modificando un poco el archivo prueba.cr para que retorne el valor de lo que obtiene Cossack en vez de imprimirlo en pantalla con puts, podemos escribir un test bastante sencillo:

describe Prueba do
  it "calls Picando Código's API" do
    Prueba.hola.should eq "¡Chau!"
  end
end

Y si corremos los tests, tenemos una falla! (TDDeando, por supuesto):

$ crystal spec
F

Failures:

1) Prueba calls Picando Código's API
Failure/Error: Prueba.hola.should eq "¡Chau!"

Expected: "¡Chau!"
got: "¡Hola!"

# spec/prueba_spec.cr:5

Finished in 744.67 milliseconds
1 examples, 1 failures, 0 errors, 0 pending

Failed examples:

crystal spec spec/prueba_spec.cr:4 # Prueba calls Picando Código's API

Cambiando la expectativa del test a “¡Hola!” hacemos que pase:

describe Prueba do
  it "calls Picando Código's API" do
    Prueba.hola.should eq "¡Hola!"
  end
end
$ crystal spec
.

Finished in 861.99 milliseconds
1 examples, 0 failures, 0 errors, 0 pending

Como ven, es bastante sencillo empezar a usar Crystal. Espero con este post lograr despertar el interés por el lenguaje, y con suerte tener algún intercambio al respecto. Los comentarios están abiertos si quieren dejar su opinión, ¿conocían Crystal? ¿Le ven futuro?

Por mi parte voy a seguir investigando el lenguaje e intentar escribir algunos proyectitos, así como analizar las herramientas ya disponibles, e iré compartiéndolo por acá.

Más información sobre Crystal:

by Fernando at March 13, 2019 11:00 AM

Nuevo servicio gratuito para compartir archivos online de forma segura – Firefox Send

Este nuevo servicio de Mozilla se llama Firefox Send. Mediante cualquier navegador web, nos permite subir archivos de manera gratuita y compartirlos con otros usuarios. Tenemos bastante control de seguridad sobre los archivos que compartimos. Podemos limitar la cantidad de veces que puede ser descargado, y cuánto tiempo va a durar (para un máximo de 7 días). El archivo no va a quedar guardado indefinidamente en algún servidor en la nube. También podemos asignarle un password, para asegurarnos que solamente quienes sepan el password puedan descargarlo.

Firefox Send

La interfaz es bastante simple, podemos arrastrar archivos hacia la página o elegirlos desde un navegador de archivos, elegimos las opciones y lo(s) subimos. El servicio cuenta con encriptado de punta a punta, y podemos compartir archivos de hasta 1GB. Si queremos enviar hasta 2.5GB, podemos crear una cuenta gratuita Firefox.

Una vez subido, podemos enviar un enlace de descarga a otro usuario. Para la descarga no es necesario loguearse ni tener ningún tipo de cuenta. Tan simple y rápido como enviar un mail. Próximamente estará disponible como aplicación Android también.

Send fue diseñado por Mozilla con la privacidad como principio fundamental. Los archivos están protegidos y nuestra información es manejada de manera privada y segura. Mozilla es una fundación sin fines de lucro cuyo objetivo es que internet sea abierta y accesible para todos. No lucran con nuestros datos, así que de mi parte, son de las pocas marcas en las que confío por ahora.

El servicio empezó como un experimento de Test Pilot, y fue mejorando hasta que Mozilla decidió que era tiempo de promoverlo a un proyecto independiente. El código fuente está disponible en GitHub bajo la licencia libre Mozilla Public License Version 2.0.

Visita Firefox Send

 

by Fernando at March 13, 2019 10:00 AM

March 12, 2019


Fernando Briano

Awesome Rubies – Una colección de Rubies increíbles

Ruby

Awesome Rubies es una lista de “Rubys” (¿”Rubíes”?), o distintas implementaciones del lenguaje e información al respecto. La más conocida es MRI (Matz’s Ruby Interpreter), la implementación “de referencia” y probablemente la más usada. Actualmente se llama CRuby porque es un esfuerzo colaborativo y no “de Matz”, y existen además otras implementaciones como Rubinius, JRuby: Implementación de Ruby en la JVM y unas cuantas más.

Si has estado siguiendo Ruby, o has ido a conferencias recientemente, probablemente ya sepas de Ruby 3×3. Mi primer encuentro con el concepto “Ruby 3×3” fue en Euruko 2017. donde Matz abrió la conferencia con un Keynote sobre el futuro de Ruby. La idea es que la versión 3 de Ruby (esperada para el año que viene) va a ser 3 veces más rápida que la versión 2.0. Y con el trabajo que se viene haciendo para lograrlo, se vienen varias cosas interesantes en el lenguaje.

Siguiendo con Awesome Rubies, en la lista podemos ver las versiones principales (CRuby, JRuby, TruffleRuby), así como menores o próximas a salir (Topaz – Ruby en Python, GoRuby – Ruby en Go 🤦, etc) y versiones discontinuadas como IronRuby (.NET), MacRuby (Objective-C), y más. Desde ahí podemos acceder a más información sobre el recurso en particular. También encontraremos enlaces a investigaciones, papers, libros, benchmarks y otros recursos.

Algo que me resultó particularmente interesante fue ver en la lista dos lenguajes de programación que vengo siguiendo con interés desde hace un tiempo: Elixir y Crystal. No son exactamente versiones de Ruby, pero le veo sentido que estén listados como parte de la familia. Crystal tiene una sintaxis como Ruby, pero es estáticamente tipado y compila a código máquina (tengo un post sobre Crystal en borradores…). Elixir es un lenguaje de programación funcional que corre sobre la máquina virtual de Erlang, y su sintaxis está inspirada en la de Ruby.

También interesante ver en la lista Mirah, un lenguaje de programación que Charles Nutter presentó en Ruby Conf Uruguay 2010. Creo que la idea es algo así como una reimplementación de Java pero con la sintaxis de Ruby. Debería leer más…

Volviendo a Crystal y Elixir, obviamente no es coincidencia que venga estudiándolos y estén en la lista. Elixir es el más distinto de los dos, porque cambia el paradigma de programación mucho más radicalmente. Pero surgió de un miembro importante de la comunidad Ruby: José Valim. José parece seguir la filosofía de Ruby “Matz is nice and so we are nice”. Si bien Elixir todavía no ha agarrado mucha tracción como otros lenguajes o tecnologías que deben su éxito mayormente al apoyo de grandes corporaciones, es una buen lenguaje para aprender programación funcional. Y aunque sea lentamente, sigue creciendo, y Erlang no se va a ir a ningún lado por unos cuantos años. Por eso tiene sentido que varios rubistas “se hayan mudado” a Elixir o complementen su trabajo en Ruby con él.

Crystal es todavía bastante joven, pero también promete y mucho. Más adelante comentaré más al respecto.

Habiendo usado otros lenguajes, me sigue pareciendo importante la parte de la comunidad, abierta e inclusiva, además de “amable” como Matz. También que los lenguajes más allá de sus ventajas y decisiones técnicas, parecen seguir el paradigma -como Ruby- de ser diseñados para el programador y no para la computadora. O por lo menos así lo siento con Ruby, Elixir y eventualmente supongo que Crystal. Son lenguajes con ese “no sé qué” que por lo menos a mí me motiva aprender y disfruto usándolos. Así que no me parece una mala decisión de carrera especializarme en “Rubies”, e incluir Elixir y Crystal ahí.

Visiten Awesome Rubies para adentrarse más en este mundillo de rubíes.

by Fernando at March 12, 2019 02:00 PM

Humble Book Bundle: Libros de Linux por Wiley

Humble Bundle tiene un nuevo paquete de e-books sobre Linux, programación y varias certificaciones. Los ebooks están disponibles en PDF, ePUB y MOBI, por lo que pueden ser leídos en casi cualquier dispositivo. Como se acostumbra en los paquetes Humble Bundle, además de elegir el precio, podemos elegir dónde destinamos el dinero que pagamos, incluyendo una organización de beneficencia.

Humble Book Bundle: Linux by Wiley

Pagando USD 1 o más, el paquete incluye:
Linux Essentials, Ubuntu Linux Toolbox: 1000+ Commands for Power Users, Linux All-In-One For Dummies, Beginning Linux Programming.

Pagando USD 8, todos los anteriores más:
Linux Bible, Shell Scripting: Expert Recipes for Linux, Bash, and more, Linux Server Security: Hack and Defend,
CompTIA Linux+ and LPIC Practice Tests: Exams LX0-103/LPIC-1 101-400, LX0-104/LPIC-1 102-400, LPIC-2 201, and LPIC-2 202, Professional Linux Kernel Architecture

Finalmente, pagando USD 15 obtenemos el paquete completo con todos los anteriores y:
Linux Command Line and Shell Scripting Bible, CompTIA Linux+ Powered by Linux Professional Institute Study Guide: Exams LX0-103 and LX0-104, LPIC-1: Linux Professional Institute Certification Study Guide: Exams 101 and 102, LPIC-2: Linux Professional Institute Certification Study Guide: Exams 201 and 202, Red Hat Enterprise Linux 6 Administration: Real World Skills for Red Hat Administrators, Assembly Language Step-by-Step: Programming with Linux

Al momento de pagar, elegimos cómo repartir el dinero, con la opción de donar a la charidad “Freedom to Read”:
La Fundación Freedom to Read (FTRF) es una organización legal y educativa sin fines de lucro afiliada a la Asociación de Bibliotecas Americana. FTRF protege y defiende la Primera Enmienda de la Constitución y apoya el derecho de las bibliotecas de recolectara – y el acceso individual a – información.

La promoción termina el 25 de marzo, visita el Humble Book Bundle: Linux by Wiley

by Fernando at March 12, 2019 10:00 AM

March 08, 2019


Rodolfo Pilas

Sobre escribir variables al invocar el shell script

Todos utilizamos variables de tipo constantes en nuestros shell scripts, que en principio no son modificables pues están en el código, un ejemplo simple:

#!/bin/bash
HOLA="Hola, soy el script"
echo $HOLA

así en cada ejecución de este script se mostrará el contenido de la variable HOLA:

$ ./hola
hola soy el script
$

Pero al definir/crear la variable podemos hacerlo con un contenido por defecto, que se usa en caso que la variable no tenga otro valor, mediante esta sintaxis de definición:

HOLA=${HOLA:-"Hola, soy el script"}

de esta forma HOLA tomará el valor que ya traiga o, en caso de ser nula, asignará el string indicado luego del :-

Esta sintaxis para la definición de las variables en nuestros script permite que se le pueda cambiar el valor al invocar el script, así:

$ HOLA="Hola, soy el shell" ./hola
Hola, soy el shell
$

También esta sintaxis de valor por defecto de las variables puede ser asignado directamente al invocarlas, utilizando una sintaxis equivalente:

#!/bin/bash
echo ${HOLA:-"Hola, soy el script"}

lo que simplifica el script, aunque puede distribuir los valores de las variables a lo largo y ancho del código así que a usarlo con cuidado.

Obviamente es algo muy documentado y explicado, aquí unos ejemplos:

by pilasguru at March 08, 2019 07:08 PM

Fernando Briano

Se viene Rust Latam Montevideo 2019 – Conferencia latinoamericana de Rust

Los días 29 y 30 de marzo de 2019 en Montevideo, Uruguay, se realiza la primera conferencia latinoamericana del lenguaje de programación Rust: Rust Latam.

¿Qué es Rust?

Si tenés curiosidad por aprender sobre Rust, ¡éste es el lugar correcto!

Rust es un lenguaje de programación de sistemas que corre increíblemente rápido, previene segfaults, y garantiza seguridad en programación multihilos. La promesa es permitir construir software confiable y eficiente aprovechando potentes chequeos del compilador y un set de herramientas maduro que ayudará y asistirá durante todo el proceso.

Sobre la conferencia:

Rust Latam Montevideo

La Conferencia Rust Latam es el evento líder en América Latina por y para el movimiento Rust, y una de las oportunidades anuales más grandes de networking en la comunidad local de Rust. Esta conferencia de un fin de semana con sesiones interactivas, actividades prácticas, y charlas junta a más de 200 defensores, desarrolladores y entusiastas del lenguaje de programación Rust de todo el mundo. En marzo, la gente e ideas de la comunidad latinoamericana de Rust saltará de la pantalla para aprender, discutir, debatir y enfrentar Rust en persona. Nuestra primera conferencia Rust Latam anual empieza en Montevideo.

En marzo, tendremos ese mismo espíritu vehemente de las reuniones locales. También tendremos a la gente y recursos para hacer un gran impacto. Una conferncia de dos días – series de talleres y oradores – con decenas de expertos y principiantes significa que podemos avanzar el pensamiento en cómo tú y tu equipo pueden usar características de Rust para crear una amplia gama de nuevas aplicaicones de software, como motores de juegos, sistemas operativos, sistemas de archivos, componentes de navegadores web y motores de simulación para realidad virtual. Podemos forjar nuevas sociedades, podemos entrenar a los programadores del mañana y podemos alimentar a la construcción comunitaria a través de los países de América Latina.

Oradores

Docenas de expertos y principantes, lo que significa que podemos progresar mucho pensando en cómo tú y tu equipo pueden usar Rust.

Comunidad

Una meta compartida es conectar a la gente haciendo de Rust el mejor lenguaje de programación y la mejor comunidad.

Compromiso

Rust Latam Conf es sólo el comienzo. Para este primer año, esperamos dejar a Montevideo sintiéndose inspirado y comprometido.

Estimulando

Nos movemos hacia una comunidad más abierta e inclusiva para alimentar nuestra misión, el mejor Lenguaje de Programación Rust para todos.

La conferencia cuenta con un Código de Conducta, buscando ser un evento inclusivo, acogedor para todos y en contra de cualquier tipo de acoso u hostigamiento.

Charlas y Talleres

Va a haber dos keynotes, y charlas sobre Rust, Python, WebAssembly, Serverless, Macros y más. También un día entero de talleres incluyendo uno de Introducción a Rust:

El workshop introductorio está orientado a personas que desean conocer Rust y que tienen experiencia en otro lenguaje de programación. Este servirá de introducción a los conceptos fundamentales que hacen a Rust un lenguaje de progrmación diferente como; pertenencia, tiempos de vida y el sistema de tipos.

Al mismo tiempo los asistentes se podrán familiarizar con la sintaxis del lenguaje.

El workshop será una mezcla de conceptos teoricos y ejercicios cortos que apliquen a dichos conceptos.

Entradas y ubicación

La conferencia se realizará en el clásico Auditorio Torre de las Telecomunicaciones ANTEL, Calle Guatemala, 1075, Montevideo, Uruguay.

Hay dos tipos de entrada a la venta: Supporter por USD 100 (entrada con acceso total + aportar para que se haga la conferencia) y Regular USD 50 (entrada con acceso total a la conferencia). Las entradas se pueden comprar en este enlace.

La organización también está ofreciendo entradas gratis mediante un programa especial de becas. La idea es atraer nuevos entusiastas de Rust y darles la posibilidad que puedan descubrir más sobre este maravilloso lenguaje de programación:

Si eres un estudiante o profesor en latinoamérica, en áreas relacionadas con la ciencia y la ingeniería y te gustaría participar activamente en comunidades Open-Source y/o estás interesado en aprender sobre Rust, esta es una gran oportunidad para descubrir más acerca de este seguro, eficiente y rápido lenguaje de programación. Para ser seleccionado como beneficiario de este programa, hay que llenar este cuestionario antes del viernes 20 de marzo. El programa cubre el ingreso de manera gratuita al evento completo. Esto incluye workshops (29 de marzo) y la conferencia (30 de marzo, incluye almuerzo).

Más información

¡No se la pierdan! Ojalá pudiera ir…

by Fernando at March 08, 2019 02:30 PM

March 07, 2019


Fernando Briano

6ta edición de Rails Girls en Argentina – 22 y 23 de marzo en Buenos Aires

El 22 y 23 de Marzo se realiza una nueva edición de Rails Girls Argentina en el coworking AreaTres en Buenos Aires. El evento consta de un taller gratuito de fin de semana donde aprenderás sobre aplicaciones Web y programación con Ruby on Rails. ¡No es necesario tener conocimientos previos en programación!

Rails Girls Argentina 2019

Más sobre Rails Girls:

Rails Girls propone herramientas para que chicas y mujeres construyan sus sueños e ideas con código.

Aprenderás sobre diseño, prototipado y programación con la ayuda de nuestros coaches.

Podés aplicar para participar en este formulario.

También te podés sumar como Rails Coach:

Como Rails Coach, acompañarás a un equipo de 4/5 principiantes en aprender cómo se construye una aplicación Web, harás mentoring, compartirás tu experiencia como Web developer y nos ayudarás a transmitir la pasión por programar! Las participantes son principalmente mujeres, porque queremos sumar más programadoras al mundo tecnológico! No importa si sos mujer u hombre para ser coach, ni tener conocimientos muy avanzados de Ruby on Rails, ya que el taller es de introducción.

Nos juntaremos una tarde (o mediante Hangouts) antes del evento para terminar de organizar la jornada.

Anotate acá.

Más información en el sitio de Rails Girls Argentina, también pueden seguir su cuenta de Twitter y ver cómo se pasó en eventos anteriores para motivarte a participar!

by Fernando at March 07, 2019 01:00 PM

March 06, 2019


Fernando Briano

Basingstoke: Juego gratis de Puppy Games para Linux

Basingstoke

El estudio independiente de videojuegos Puppy Games es responsable de excelentes títulos como Droid Assault, Ultratron, Titan Attacks! y Revenge of the Titans. Su título más reciente es Basingstoke:

Basingstoke ha sido destruida y las ruinas se encuentran llenas de muertos reanimados y feroces monstruos extraterrestres. ¿Eres el único superviviente? ¡Explora la ciudad para descubrirlo! Escabúllete por las humeantes calles y edificios de Basingstoke, rebúscate sobre la marcha, y crea tu propio equipamiento para ayudarte en tu misión… Basingstoke es el único juego donde kebabs pueden ser usados como armas, y puedes saquear rollos de salchica de policías muertos. El juego es una mezcla entre sigilio furtivo y acción arcade, con un estilo distintivo que mezcla tiernos gráficos 3D con tensión espantosa.

Los desarrolladores han decidido publicar Basingstoke GRATIS en Linux:

Hemos decidido hacer GRATIS a Basingstoke para Linux, y en los próximos meses cuando tenga un poco de tiempo, voy a subir todos nuestros otros juegos a itch.io también, y van a ser GRATIS para usuarios de Linux también. Todas las donaciones se aceptan con agradecimiento por supuesto.

Y no se olviden de darle una mirada a nuestro Patreon. ¡Los juegos no se escriben solos! Estamos pasando la gorra, esperando juntar suficiente dinero para hacer Battledroid.

Pueden descargar Basingstoke en este enlace, eligiendo el precio que quieren pagar por él (incluyendo 0).

by Fernando at March 06, 2019 09:02 PM

March 05, 2019


Fernando Briano

Películas para ver en 2019

Ya estamos en Marzo y no había publicado nada en el blog en 2019. Una buena manera de empezar es la tradición de listar las películas que quiero ver este año, ¡aunque algunas ya se hayan estrenado! Más vale tarde que nunca… 😬

Al igual que años anteriores, 2019 promete ser un excelente año para películas de super héroes, ciencia ficción, animación y demás temas que tanto disfrutamos. En lo personal hay varias que vengo esperando con mucha anticipación desde hace mucho tiempo. Ordenadas más o menos por género, acá van las películas que quiero ver en 2019:

Shazam!

Shazam es el superhéroe antes conocido como Capitán Marvel (pueden leer más acá), y uno de mis personajes favoritos de los cómics. Primer tráiler de la lista porque junto con Captain Marvel, tengo muchísimas expectativas y estoy muy contento de poder verlos en el cine. El tono del tráiler parece coincidir con lo que quiero ver en una película de Shazam, así que espero no decepcione. En mi lista creo que ya está en el primer puesto de películas del universo DC y espero una de las mejores películas de super héroes. Pero midamos las exceptativas…

Estreno: 5 de abril.

Captain Marvel

Otra entrega del Universo Cinematográfico de Marvel (UCM), con Carol Danvers como protagonista. Tiene la particularidad de contar los hechos ocurridos en los 90’s, pero que tendrán repercusión en el presente como vimos en Infinity Wars. Además de ser la primera película del UCM con una mujer como protagonista (se supone que también vendría una película de Black Widow), introduce a los Skrulls -una raza de extraterrestres capaces de transformarse en otros seres vivos- que según tenía entendido eran propiedad de Fox. Con ellos y los Kree, está el potencial de ver adaptaciones de historias de los cómics como la Guerra Kree/Skrull o Secret Invasion, de la cual parecen haber sacado alguna idea por lo que muestran los tráilers. ¡Se estrena esta semana!

Estreno: 8 de marzo

Avengers: End Game

El UCM me ha dado mucho entretenimiento y alegría en sus más de 10 años, y los Avengers han sido una parte importante de eso. Esta película promete ser el cierre de este primer ciclo, y ni necesito ver más tráilers para saber qué pasa. Cada película fue más grande que la anterior e Infinity Wars fue gigante. Así que las expectativas están muy altas.

Estreno: 26 de abril

Spider-Man: Far From Home

Otro de mis superhéroes favoritos y cuya representación en el cine fue de horrible en las películas de Tobey Maguire, a bien en las películas con Andrew Garfield y excelentes y reivindicadas con Tom Holland. La alianza Sony/MCU logró el mejor Spider-Man cinematográfico live-action hasta ahora.

Estreno: 5 de julio

Glass

La última parte de la trilogía “Unbreakable” de M. Night Shyamalan. un thriller superheróico. Se estrenó en enero y aparentemente no tuvo muy buenas críticas. De todas formas tendría que mirar Unbreakable de nuevo y Split por primera vez antes de mirarla.

Ya estrenada

Brightburn

Una película de super héroes pero con toques de terror producida por James Gunn. Algo así como una versión alternativa de Superman, donde el personaje con super poderes es malo. No puedo evitar creer que está aunque sea un poco inspirado en Irredeemable, un excelente cómic por Mark Waid con la misma premisa.

Estreno: 24 de mayo

Dark Phoenix

Por alguna razón no logro conectar con los X-Men. Si bien he leído cómics que me han gustado, ninguna de las películas me han atrapado hasta ahora. Creo que voy a pasar de ver ésta en el cine, pero de todas formas merece estar en la lista.

Estrena: 7 de junio

New Mutants

Lo mismo que la anterior, más películas sobre los mutantes. Aunque ésta tiene un toque más de terror, lo que por lo menos asegura una fórmula distinta. Potencialmente puede ser muy buena. Al igual que Dark Phoenix, se iba a estrenar el año pasado pero se atrasó.

Estreno: 2 de Agosto

Hellboy

¿Necesitaba un reboot ya? No sé, nunca leí los cómics de Mignola. Sólo miré las dos películas anteriores, si recuerdo bien la segunda me gustó bastante. Por el tráiler parece prometedora, sin vergüenza de ser una película de acción y fantasía.

Estreno: 12 de abril

Star Wars Episode IX

The Force Awakens y The Last Jedi me encantaron, no puedo esperar a ver Episodio 9. La trilogía de trilogías que prometió George Lucas hace tantos años… Se cierra la historia Skywalker, además de ser la última película en la que compondrá John Williams. Vuelven Rey, Finn, Poe, BB-8, C-3PO y R2-D2. Seguro tengamos también a Luke en su forma “fantasma de la Fuerza” y la despedida de la Princesa Leia con las últimas escenas grabadas por Carrie Fisher 😢

Star Wars: Episode IX

Estreno: 20 de diciembre

Men In Black: International

Me gustó mucho la primera película de MiB. Tenía el VHS original y la debo haber mirado cientos de veces. No puedo decir lo mismo de la segunda, y si bien miré la tercera, no recuerdo mucho. Voy a intentar ver ésta en el cine, el concepto de comedia ciencia ficción puede ser muy efectivo para mí, y la tecnología en efectos especiales ha avanzado mucho desde la primera entrega. MiB 1 salió hace más de 20 años 👴

Estreno: 14 de junio

Iron Sky: The coming race

La secuela de Iron Sky, que cuenta con la participación de una de mis personas preferidas y con quien tuve el gusto de tomarme una cerveza una vez: Tom Green. En la primera película descubrimos que tras su derrota en 1945, los Nazis se estaban escondiendo en la Luna. Ahí construyeron una base y una flota espacial para volver a atacar la Tierra. Ahora, una colonia de humanos vive en la base en la Luna, con un gobierno fascista y religiones incluyendo una de las tantas que afectan nuestra actualidad: los “Jobistas”, un culto a Steve Jobs. Al volver a la Tierra se encuentran con dinosaurios y reptilianos liderados por Hitler. Todo dicho…

Estreno: Se estrenó en Finlandia en enero y se estrena en otros países en Marzo. Pueden ayudar a su distribución demandando que se estrene en su país en el siguiente enlace.

Terminator 6

Terminator 6

Sexta película de la saga Terminator. Aparentemente sería una secuela directa de Terminator y Terminator 2: Judgement Day, ignorando el resto de las películas como líneas de tiempo alternativas. También vuelve Arnold Schwarzenegger, Linda Hamilton y el John Connor original, pero todos pasados por CGI para hacerlos parecer jóvenes. Hollywood explotando al máximo la nostalgia y el miedo al cambio del público…

Alita: Battle Angel

Estuvo originalmente en la lista de películas para ver en 2018, pero se estrenó finalmente este año. Es una adaptación de un manga cyberpunk y se ve muy interesante. Las críticas han sido mezcladas, voy a tener que ir al cine a verla antes que salga de cartelera para formar mi propia opinión…

Estreno: Ya estrenada

Godzilla: King of the Monsters

Me gustó la primera película del nuevo “MonsterVerse” de Legendary. Aunque no tenía tanta acción o Godzilla como esperaba, siempre estoy a favor de películas con monstruos gigantes en la pantalla. Otra muy buena que recomiendo es Shin Godzilla, que me gustó más. En esta segunda entrega veremos muchos más monstruos, y con suerte sea todavía más entretenida que la primera. Y el año que viene cierra la trilogía con el encuentro de Godzilla Vs. Kong.

Estreno: 31 de mayo.

How to Train your Dragon: The Hidden World

Siguiendo con la temática monstruos y dragones, se estrenó en febrero la tercera entrega de “How to Train your Dragon”. Me encantan las primeras dos películas de esta saga. La animación es excelente, la historia y música son muy buenas y los dragones súper simpáticos. Todavía la están dando en el cine por acá, así que en una de esas esta semana me pego una vuelta.

Estreno: Ya estrenada

POKÉMON: Detective Pikachu

La premisa es tan ridícula que no sabía qué esperar de Detective Pikachu: Ryan Reynolds es la voz de Pikachu en una película live action con Pokemones realistas. Sus apariencias generaron reacciones encontradas entre el público, pero después de ver los trailers que han salido hasta ahora, compro. Se ve muy divertida y seguramente esté llena de guiños a los pokemaníacos.

Estreno: 10 de mayo

Mewtwo Strikes Back Evolution

Una remake CGi de la primera película de Pokémon. La animación se ve muy bien, tanto los Pokémon como los entrenadores. Lo hace a uno querer un juego de Pokémon así para Switch… Se estrena en Japón en julio, con suerte se estrene en más países.

Estreno: 12 de julio en Japón

Astérix: El secreto de la poción mágica

Estamos en el año 50 antes de Jesucristo. Toda la Galia está ocupada por los romanos… ¿Toda? ¡No! Una aldea poblada por irreductibles galos resiste, todavía y como siempre, al invasor. ¡Otra película animada de Astérix! Segunda película con animación en computadora, que se ve bastante bien. Se estrenó en Francia y otros países en diciembre del año pasado, España y México en enero, y llegará al Reino Unido en Agosto. Asumo que ya se habrá estrenado en otros países de América Latina también.

Estreno: Distintas fechas según la región.

Toy Story 4

Película de Pixar, tiene que estar en la lista. Y se trata de nada más y nada menos que la saga que empezó todo: Toy Story. La tercera parte me pareció un cierre correcto a la historia de los personajes, aunque debe ser la película que más me ha hecho llorar en un cine hasta ahora. De todas formas no tengo problema en volver a ver a Woody, Buzz, Jessie, Rex y los demás nombres clave de Debian en el cine. También me da una excusa para volver a ver las tres primeras 🤔

Estreno: 21 de junio

Frozen 2

La secuela de la excelente película animada de Disney que además de tremenda canción (Let it go! ¿No les queda la canción sonando en la cabeza?), dejó el mensaje que no todas las películas de princesas de Disney tienen que ser iguales. Elsa, Anna, Kristoff, Olaf y los renos viajan por ahí en una secuela que parece tener un toque más de aventura que la anterior. Ya me enteraré en el cine…

Estreno: 22 de noviembre

Lego Movie 2

Secuela de Lego Movie donde aparentemente “Everything is not awesome”. La original me entretuvo mucho así que la voy a mirar. Por cierto, si les gusta el humor en Lego Movie, les recomiendo la película de Ninjago, me resultó muy divertida también.

Estreno: Ya estrenada

Playmobil: The Movie

En mi infancia los Playmobil eran los juguetes “que no estaban tan buenos como los Lego”. Pero ahora que soy adulto, no mantengo esos conceptos infantiles. Excepto cuando peleo a un amigo fanático de Playmobil intentando hacerle entender lo superiores que son los Lego, algo que todos sabemos. Al igual que Lego, que no es competencia porque Lego es un juguete de armar cosas, que fomenta la creatividad y el desarrollo intelectual y Playmobil no, saltan a la pantalla grande con su propia película:

Estreno: 16 de agosto

Otras

Hay varias películas más que potencialmente podrían estar interesantes pero todavía falta ver más. La mascota de Sega, Sonic, tendrá su película pero todavía no está muy claro de qué va la cosa. En principio se publicó una imagen con la silueta de Sonic que no voy a compartir por acá para evitarle las pesadillas a quienes no la hayan visto. Y estos días se vió un supuesto “leak” de más imágenes. Me imagino que fue aprobada por un ejecutivo de Hollywood bajo los efectos de drogas fuertas. Es el tipo de película que -por ahora-, sólo me hace preguntarme “¿por qué?”.

He-Man volvería a tener una película de la mano de Sony. Pero entre que Mattel quiere empezar a hacer películas, licencias, y que hay poco y nada de información al respecto, no sé si veremos algo este año.

El reboot de Jumanji tendría una secuela, todavía no vi la primera, así que ni sé si merece estar en esta lista.

Los Locos Adams volverían en película animada, a estrenarse el 11 de octubre. Actualizaré este post ni bien aparezca algún trailer.

El villano más quemado del universo DC, el Joker (o Guasón), contará con su propia película este año protagonizada por Joaquin Phoenix, que me cae bien porque es vegano y hace campaña en defensa de los animales. Otra que ni bien haya tráiler la agrego a la lista, se estrena el 4 de octubre.

by Fernando at March 05, 2019 10:00 PM

December 27, 2018


Rodolfo Pilas

Rocket Chat super rápido con Vagrant

Rocket Chat es un excelente sistema corporativo de chat completamente software libre (clientes y servidores), con todo el glamour de un sistema de chat moderno (canales, integración, componentes embebitos, chatbots, etc. etc.)

En este Vagrantfile es posible levantarlo de forma tan simple como escribir vagrant up

# -*- mode: ruby -*-
# vi: set ft=ruby :

# https://rocket.chat/docs/installation/updating/#snap-installation
#
# Access Rocket.Chat:  http://localhost:3000

Vagrant.configure("2") do |config|
  config.vm.box = "ubuntu/xenial64"

  config.vm.network "forwarded_port", guest: 3000, host: 3000

  config.vm.provision "shell", inline: <<-SHELL
    snap install rocketchat-server
  SHELL
end

by pilasguru at December 27, 2018 01:51 AM

December 05, 2018


Fernando Briano

Nuevo evento de la comunidad de Datos Abiertos uruguaya: Datos y cogollos

El martes 11 de diciembre a partir de las 19:00, sumate a la comunidad de Datos Abiertos uruguaya en DATOS Y COGOLLOS. Se trata de un evento organizado por la comunidad de Datos Abiertos local, así que no le pertenece a ninguna organización en particular, y está más que abierto a su sigan sumando nuevas personas y organizaciones.

Datos y Cogollos

¿Qué es?

Es un evento para juntar a toda la comunidad trabajando alrededor (o cerca, o con interés) del tema Datos Abiertos, conocer los proyectos que hay en la vuelta, pero sobretodo conocer a las personas que estamos en eso y compartir una charla acompañada por alguna bebida para hacerlo más informal.

Es un formato que empezó en México en 2013, impulsado por SocialTIC bajo el nombre de “Datos y Mezcales” y que hace bastante rato que teníamos ganas de traer a Uruguay.

Está organizado por la comunidad de Datos Abiertos local, así que no le pertenece a ninguna organización en particular y está más que abierto a que se sigan sumando nuevas personas y organizaciones.

¿Qué va a pasar?

Ésta es la agenda que vamos a intentar seguir:

¿Cómo me anoto para presentar mi proyecto?

Comentá en este Meetup y decinos el nombre de persona que presentaría, un correo de contacto y el nombre del proyecto/organización/presentación que quieren compartir. Vamos a ir anotando la lista de oradores/as acá, donde también podés anotarte directamente si así lo preferís: http://bit.ly/DYCpresentaciones

Las presentaciones pueden ser con diapositivas/video/apoyo audiovisual y solicitamos que cada persona que presente la suba a la web (ej. Google Slides) y pegue el enlace a su presentación en el documento anterior.

Buscamos presentaciones y presentadores/as lo más diversas posibles, empezando por apuntar a la paridad de género, así que por favor no se ofendan si preguntamos si es posible que presenten otras personas llegado el caso. ☺

¿Porqué “cogollos”?

Básicamente porque podemos… El evento adapta su nombre a alguna bebida típica del país y así pasó por México (Datos y Mezcales), El Salvador (Datos y Cervezas), Bolivia (Datos y Singanis), Ecuador (Datos y Bielas), Colombia (Datos y Guaros), Costa Rica (Datos y Chiliguaros), Guatemala (Datos y Tragos) y España (Datos y Cañas).
Cuando le toca a Uruguay, optamos por algo que ninguna de las organizaciones amigas de todos esos países podría poner legalmente (o sea, es un poco un chiste interno).

¿Es obligatorio presentar/saber de datos abiertos/tomar/fumar porro?

No, para nada. Cada uno viene y hace lo que quiere 🤗

Visitá el evento en Meetup

by Fernando at December 05, 2018 01:15 PM

December 03, 2018


Fernando Briano

Montevideo: Conferencia Internet y Derechos Humanos

DATYSOC nos invita al siguiente evento:

Conferencia Internet y Derechos Humanos

El miércoles 13 de diciembre les invitamos a participar de una conferencia sobre Internet y Derechos Humanos.
A partir de las 17:30 horas y hasta las 19:30 les esperamos en el Espacio Interdisciplinario de la Universidad de la República en José Enrique Rodó 1843.

Se presentan Veridiana Alimonti, Analista Senior de Políticas en América Latina de la EFF. y Beatriz Busaniche, Presidenta de Fundación Vía Libre, Argentina.

Entrada libre y gratuita, y los esperamos con un brindis luego de la conferencia.

 

by Fernando at December 03, 2018 07:00 PM

November 28, 2018


Rodolfo Pilas

Publicar la llave pública SSH

Los principales repositorios (Gitlab y Github) exponen las llaves públicas SSH de sus usuarios de forma que están accesibles para descarga:

https://(gitlab|github).com/<usuario>.keys

Es la URL de donde se obtienen, y aquí las mías:

La ventaja es tener un sitio disponible donde está nuestra clave (y la de nuestros colegas) para usar en automatismos como esta task de Ansible:

- name: Enable pilasguru root access
  authorized_key:
    user: root
    state: present
    key: https://gitlab.com/pilasguru.keys
    validate_certs: False

by pilasguru at November 28, 2018 07:33 PM

November 21, 2018


Rodolfo Pilas

Fundamentos y doctrinas de la Guerra Fría

Tuve el gusto de presentar ante dos sextos años de la Escuela Elbio Fernandez un análisis de los fundamentos y las doctrinas de la Guerra Fría, con la idea de complementar el estudio que previamente ellos habían hecho sobre ese período histórico, pero acercando una visión desde la “academia”, gracias a Von Neumann, claro.

Me divertí muchísimo contándoles cómo explota una bomba nuclear y explicando cómo la Teoría de Juegos de John Von Neumann y Oskar Morgenstern podía responder por qué la Guerra Fría fue, precisamente, fría.

Hasta nos hicimos tiempo para representar el dilema del prisionero y el equilibrio de Nash.

Agradezco a las maestras Irene y Annie que me permitieron estar frente a sus alumnos.

by pilasguru at November 21, 2018 08:28 PM

Fernando Briano

Lanzado ATuServicio Bogotá 🏥

El viernes 16 de noviembre de 2018 se lanzó ATuServicio Bogotá. Se trata de una replicación independiente e innovadora del proyecto que originalmente desarrolláramos con DATA y el Ministerio de Salud de Uruguay.

ATuServicio Bogotá

Si ya conocen ATuServicio, verán que la estética es bastante similar, pero no deja de tener un toque personalizado. El sitio cuenta con un mapa de servicios, donde los usuarios pueden explorar los 300 centros de salud principales de Bogotá, reportar su experiencia y ayudar a mejorar la calidad de los servicios en la ciudad. Y por supuesto, los datos están disponibles como Datos Abiertos.

Es genial ver que los proyectos de DATA sigan creciendo. Hemos hablado muchas ideas para ATuServicio, y con suerte para el año que viene podamos implementar varias y colaborar con más lugares. De la página:

A tu Servicio Bogotá es una iniciativa de innovación cívica que se fundamenta en alianzas público-privadas duraderas y de sociedad civil que permitan superar las barreras institucionales y de confianza que disminuyen la efectividad de la interacción entre ciudadanos y el gobierno.

La plataforma permite a los ciudadanos conocer y calificar la calidad, oportunidad y atención de los servicios que reciben en las Instituciones Prestadoras de Salud (IPS), públicas y privadas, que están habilitadas para funcionar en Bogotá.

Los aportes ciudadanos se convierten en insumos directos con los cuales la Secretaría Distrital de Salud generará cambios en las políticas, programas y/o medidas con el fin de mejorar la atención en el servicio de salud.

Esta plataforma surge de A Tu Servicio Uruguay, una buena práctica desarrollada en 2015 por Data Uruguay y Fundación Avina en alianza con el Ministerio de Salud de ese país. Anualmente los usuarios tienen la posibilidad de cambiar de asegurador, por esta razón, la plataforma cualifica la percepción ciudadana sobre el sistema para que su decisión esté intermediada por información de calidad.

A Tu Servicio Bogotá incorpora los aprendizajes de Uruguay y los adapta a las necesidades del contexto colombiano partiendo de los avances que tiene el Observatorio de la Secretaría Distrital de Salud en datos abiertos e incorporando la experiencia del programa Así Vamos en Salud, Fundación Corona, la Plataforma de Innovación con Sentido, Fundación AVINA, CAF y Wingu en el desarrollo de tecnologías cívicas para involucrar a la ciudadanía en la toma de decisiones públicas y de veeduría ciudadana.

La plataforma cuenta con las siguientes funcionalidades:

Visita ATuServicio Bogotá

by Fernando at November 21, 2018 01:30 PM

November 20, 2018


Fernando Briano

Rust Latam Montevideo 2019 – Conferencia latinoamericana de Rust

Santiago Pastorino anunció en el foro de Rust información sobre la conferencia Rust Latam 2019.

Rust Latam Montevideo

La primera edición de Rust Latam se va a realizar los días 29 y 30 de marzo de 2019 en Montevideo, Uruguay. Del sitio (traducción mía):

La Conferencia Rust Latam es el evento líder en América Latina por y para el movimiento Rust, y una de las oportunidades anuales más grandes de networking en la comunidad local de Rust. Esta conferencia de un fin de semana con sesiones interactivas, actividades prácticas, y charlas junta a más de 200 defensores, desarrolladores y entusiastas del lenguaje de programación Rust de todo el mundo. En marzo, la gente e ideas de la comunidad latinoamericana de Rust saltará de la pantalla para aprender, discutir, debatir y enfrentar Rust en persona. Nuestra primera conferencia Rust Latam anual empieza en Montevideo.

En marzo, tendremos ese mismo espíritu vehemente de las reuniones locales. También tendremos a la gente y recursos para hacer un gran impacto. Una conferncia de dos días – series de talleres y oradores – con decenas de expertos y principiantes significa que podemos avanzar el pensamiento en cómo tú y tu equipo pueden usar características de Rust para crear una amplia gama de nuevas aplicaicones de software, como motores de juegos, sistemas operativos, sistemas de archivos, componentes de navegadores web y motores de simulación para realidad virtual. Podemos forjar nuevas sociedades, podemos entrenar a los programadores del mañana y podemos alimentar a la construcción comunitaria a través de los países de América Latina.

Ya se confirmaron dos oradores: Niko Matsakis del Rust Core Team y Boats de Rust Language Team para las charlas keynote. Pero está abierto el llamado a charlas. Hay 7 espacios disponibles para charlas de hasta 35 minutos. La organización de la conferencia cubre gastos de viaje (vuelos + hotel) por hasta USD 1.300, pero también aceptan que una compañía cubra los costos como espónsor bronce, y hay más opciones según cada caso.

Las entradas “supporter” cuestan USD 100, un tipo de entrada para ayudar a que la conferencia se lleve a cabo de la mejor manera posible. Pero también van a haber entradas regulares a USD 50.

Pueden visitar el sitio web por más información, comprar su entrada, o seguir a la conferencia en Twitter para enterarse de las novedades.

 

by Fernando at November 20, 2018 09:32 PM

Rodolfo Pilas

Enviar correo SMTP por telnet

Nada nuevo, esto está por todo internet explicado en muchas formas, tamaños y colores. Pero sucede que lo utilizo mucho y lo que siempre hago es entrar a mi blog y hacer una búsqueda por el término “telnet” y ahi me doy cuenta que tengo todas las formas de telnet para correo, menos la común y corriente. Eso motiva este artículo.

Como enviar un correo electrónico al puerto 25 por telnet:

# telnet localhost 25
Trying ::1...
Connected to localhost.
Escape character is '^]'.
220 mail.mydomain.com ESMTP

HELO yourdomain.com
250 mail.mydomain.com

MAIL FROM: you@server.com
250 2.1.0 Ok

RCPT TO: rpilas@mydomain.com
250 2.1.5 Ok

DATA
354 End data with <CR><LF>.<CR><LF>
From: "Some One" <you@server.com>
To: "Rodolfo Pilas" <rpilas@mydomain.com>
Subject: Testing
MIME-Version: 1.0
Content-Type: multipart/alternative;
        boundary="boundary-type-1234567892-alt"
--boundary-type-1234567890
--boundary-type-1234567892-alt
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable


Testing the text to see if it works!

--boundary-type-1234567892-alt
Content-Type: text/html; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable


<html>Does this actually work?</html>

--boundary-type-1234567892-alt--
--boundary-type-1234567890
Content-Transfer-Encoding: base64
Content-Type: text/plain;name="Here2.txt"
Content-Disposition: attachment;filename="Here2.txt"

KiAxMyBGRVRDSCAoQk9EWVtURVhUXSB7NjU5fQ0KLS1fZjZiM2I1ZWUtMjA3YS00ZDdiLTg0NTgtNDY5YmVlNDkxOGRhXw0KQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PSJpc28tODg1OS0xIg0KQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogcXVvdGVkLXByaW50YWJsZQ0KDQoNCkp1c3Qgc2VlaW5nIHdoYXQgdGhpcyBhY3R1
YWxseSBjb250YWlucyEgCQkgCSAgIAkJICA9DQoNCi0tX2Y2YjNiNWVlLTIwN2EtNGQ3Yi04NDU4LTQ2OWJlZTQ5MThkYV8NCkNvbnRlbnQtVHlwZTogdGV4dC9odG1sOyBjaGFyc2V0PSJpc28tODg1OS0xIg0KQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogcXVvdGVkLXByaW50YWJsZQ0KDQo8aHRtbD4NCjxoZWFkPg0KPHN0eWxlPjwhLS0N
Ci5obW1lc3NhZ2UgUA0Kew0KbWFyZ2luOjBweD0zQg0KcGFkZGluZzowcHgNCn0NCmJvZHkuaG1tZXNzYWdlDQp7DQpmb250LXNpemU6IDEwcHQ9M0INCmZvbnQtZmFtaWx5OlRhaG9tYQ0KfQ0KLS0+PC9zdHlsZT48L2hlYWQ+DQo8Ym9keSBjbGFzcz0zRCdobW1lc3NhZ2UnPjxkaXYgZGlyPTNEJ2x0cic+DQpKdXN0IHNlZWluZyB3aGF0IHRo
aXMgYWN0dWFsbHkgY29udGFpbnMhIAkJIAkgICAJCSAgPC9kaXY+PC9ib2R5Pg0KPC9odG1sPj0NCg0KLS1fZjZiM2I1ZWUtMjA3YS00ZDdiLTg0NTgtNDY5YmVlNDkxOGRhXy0tDQopDQpmbHlubmNvbXB1dGVyIE9LIEZFVENIIGNvbXBsZXRlZA


--boundary-type-1234567890--


.
QUIT
250 2.0.0 Ok: queued as 1EDE71400DE

221 2.0.0 Bye
Connection closed by foreign host.

(esto lo he extraido de internet)

by pilasguru at November 20, 2018 03:34 PM

November 17, 2018


Fernando Briano

R-Ladies Madrid y NoLegalTech: Legal Analytics para democratizar el acceso a las leyes

Les dejo la información del próximo evento de R-Ladies Madrid y NoLegalTech en Madrid, a realizarse el martes 20 de noviembre. Todo lo que ayude a democratizar el acceso a información del estado y le de poder a la gente sobre sus gobernantes es bueno:

 R-Ladies Madrid y NoLegalTech: Legal Analytics para democratizar el acceso a las leyes

A la democracia le ha llegado la hora tecnológica

El Boletín Oficial del Estado (BOE) es el diario oficial para la publicación de las normas y las leyes en el territorio español. Recogida en el artículo 9 de la Constitución, la publicidad de las normas es un principio básico de seguridad jurídica de los ciudadanos. Solo, pues, si los ciudadanos conocen las normas pueden ejercer sus derechos y deberes dentro de la sociedad.

Si bien este principio nace como esencial en una sociedad democrática, hoy en día la cantidad de normas aplicables en tiempo y lugar se ha multiplicado hasta tal punto que ni la profesión del abogado puede llegar a alcanzarlas en su plenitud. Desde las directivas y reglamentos que dicta la Unión Europea, hasta las diversas normas que pueden dictar tanto las Cortes Generales como el propio Gobierno (Leyes Orgánicas, Leyes Ordinarias, Reales Decretos…) el puzzle del sistema legal español llega a ser incomprensible bajo los sistemas tradicionales de ejercer la profesión.

En los últimos años el Estado de Derecho, empleando una estructura burocrática alejada del ciudadano y un lenguaje ininteligible e incluso enigmático, se ha ido alejando cada vez más del objetivo principal de la sociedad: la convivencia normativa y la sujeción de los poderes públicos a la norma.

Sin embargo, con la irrupción de la tecnología en nuestras vidas y la generación de datos a lo largo y ancho del globo, el estudio y el aterrizaje de las normas al ciudadano ya es posible.

Habiéndose generado en los dos últimos años más datos que en toda la historia de la humanidad, a través del machine learning y el entrenamiento de textos jurídicos masivos (leyes, normas, disposiciones…), se puede crear lo que por primera vez en España puede traer poder legislativo: conocimiento real de las leyes a través de la ciencia y al margen de los intereses políticos. Hoy en día podemos alcanzar a conocer la normativa vigente española (tan solo conocer qué normas y qué preceptos están en vigor en todas las ramas del Derecho ya es un paso adelante), detectar incompatibilidades normativas… e incluso comprobar, con un análisis social, si una ley es efectiva en el tiempo y lugar en que se ha aplicado.

El próximo 20 de noviembre, bajo el paraguas de la comunidad R-Ladies Madrid y NoLegalTech, celebramos el primer evento Legal Analytics, donde tendrán cabida todas estas cuestiones.

Programa

18:00 Presentación
18.30 Bárbara Román (Nolegaltech): charla “Panorama legal y datos”
19.30 Mesa redonda moderada por Bárbara Román: Gloria Sánchez (Banco Santander), Sara Molina (Marketingnize) y Elen Irazábal (R-Law Geeks)
20.30 Presentación del grupo R-Law Geeks. Será una presentación tanto jurídica como técnica, como un ejemplo de legal analytics.
21.15 Preguntas
21.30 Despedida

Más información e inscripciones

by Fernando at November 17, 2018 08:10 AM

November 13, 2018


Fernando Briano

Cerveza de DATA – Donde Pinta 2.0

¡ATENCIÓN, CAMBIO DE LUGAR POR RAZONES DE CERVEZA MAYOR!

Dado que el BeerFest 4 se corrió para el mismo día que nuestro evento, nos vimos obligados a cambiar de lugar por problemas logísticos.

Nos vemos en Mercado Ferrando (Chaná 2120) a la misma hora (17:00) y después que terminemos, salimos todos juntos para el Beerfest 😉🍻

¿Se acuerdan de “Dónde Pinta” Aplicación sobre cerveza artesanal basada en datos abiertos? ¡Volvió! En forma de Cerveza de DATA.

Los “Café de DATA” (o en este caso “cerveza”) son una excusa para acercarse a la comunidad de DATA, y la más amplia comunidad de Datos Abiertos de Uruguay y América Latina. La oportunidad para conocer gente y limpiar un poco el karma negativo obtenido del trabajo que hacemos a diario alimentando este sucio sistema capitalista con trabajo voluntario para hacer del mundo un lugar mejor. Porque de entre todas las cosas que aprendimos gracias a Stan Lee, una fue que el super poder no hace al héroe, sino cómo lo usa. Así que si tenés ganas de aportar a un proyecto con un fin tan solemne y honrado como Dónde Pinta de forma voluntaria (o de hecho cualquiera de los proyectos de DATA), el primer paso es acercarte.

Si -como yo- sos de esas personas a las que les cuesta esa interacción inicial con desconocidos, una buena cerveza Índica, Davok, o tantas de las nuevas marcas que vienen surgiendo en el mundillo uruguayo de la cerveza artesanal pueden servir como catalizador social. Y si no tomás alcohol (o la cerveza no es lo tuyo), no hay problema. Mandate igual, DATA es un excelente grupo humano que te va a recibir de Brazos Abiertos™. Dejo la invitación:

Cerveza de Data - Dónde Pinta 2.0

DondePinta.uy Es una aplicación web que permite encontrar productores, bares, restaurantes y tiendas donde se pueda conseguir cerveza artesanal uruguaya.

El proyecto fue gestado junto a Underground Beer Club y Mirá Mamá y fue llevado adelante por la comunidad de los Café de DATA. Es un proyecto 100% voluntario y comunitario y su intención es que sea adoptado por los cerveceros como una forma de dar a conocer su oferta y compartir la información como Datos Abiertos.

La plataforma ya tiene un par de años, por eso creemos que ya es hora de volver a revisarlo ¡y hacerle algunas mejoras!
Para eso nos vamos a juntar en Shelter Patio Cervecero (Andresito Guacarí 1806) a las 17:00 a empezar el trabajo y discutir ideas. No dejes de sumar tus ideas en Meetup, o de llevarlas al evento.

Algunas ideas para discutir:

Se busca:

Este proyecto necesita gente con ganas de sumarse y destinar algo de su tiempo libre durante el sábado 1º y algunos ratos extra en las semanas siguientes, que seguramente seguiremos puliendo detalles vía web.
Todo por la excelente causa de facilitarnos a todos encontrar más y mejor cerveza artesanal, allí donde se encuentre en Uruguay 😁🍻

Precisamos gente con muchos talentos, como:

¿Qué va a pasar el sábado?

Vamos obviamente a trabajar en la app, aunque es probable que no terminemos el mismo sábado. El objetivo es acordar el plan, dar los primeros pasos y marcar cómo avanzamos de ahí en adelante. Quienes quieran y puedan comprometerse para seguir, seguiremos en contacto mediante Slack para terminar el proyecto y lanzarlo.

La pregunta que todos se están haciendo:

¡Claro que va a haber cerveza! Shelter nos va a invitar la primera ronda 👏 y DATA la segunda 😎

¿Te divierte?

Ya podés empezar a participar entrando a dondepinta.uy, probándola, pensando qué más te gustaría que tuviera y proponiendo ideas en los comentarios 😉

Inscribite Ya

by Fernando at November 13, 2018 10:00 PM

October 31, 2018


Fernando Briano

Hack2Progress – Hackathon en la Universidad de Cantabria, Santander

Los días 16 y 17 de noviembre se celebra en Santander la IV Edición de Hack2Progress. La cita en es la Casa del Estudiante – Torre A – Universidad de Cantabria.

Hack2Progress IV

¿Qué es Hack2Progress?

Se trata de un Hackathon social que te permite impulsar tu carrera profesional, conocer tus límites, compartir conocimientos y desarrollar una idea. En esta edición la idea debe estar relacionada con el sector energía (eficiencia, consumo, ….) y cómo ámbito tecnológico conductor el uso del servicio cloud de Azure (cuentas gratuitas disponibles) o si dispone de una cuenta de otro proveedor (AWS, Google Cloud, …). Todo en un ambiente muy creativo y amigable.

Hace mucho que no voy a una hackathon, pero son muy divertidas y enriquecedoras. En esta ocasión la asistencia es gratuita, y se ofrece comida, bebida, snacks, material de oficina y lo necesario para desarrollar la idea. El jurado estará para enseñar, aconsejar y valorar a los participantes y habrá gente de la organización disponible para que todos se sientan cómodos. Serán 24 horas de hackathon, con 3 premios que suman 4.800 €. Es un hackathon colaborativo y no competitivo, de mis preferidos. ¡Suena muy interesante!

Edición pasada

La III Edición de Hack2Progress congregó a 80 personas repartidas en 21 equipos de 2 a 5 personas, con diferentes perfiles: estudiantes universitarios y de FP, trabajadores en activo y en paro.

Pueden visitar el sitio web para ver más información o directamente registrarse.

by Fernando at October 31, 2018 11:00 AM

October 22, 2018


Fernando Briano

Game Dev Meetup Montevideo: Mujeres en Videojuegos

Gamedev Meetup Uruguay: Mujeres en Videojuegos

Llega la segunda edición de Gamedev Meetup Uruguay: Mujeres en Videojuegos organizado por CAVI con el apoyo de Girls in Tech – Uruguay, INAE Uruguay – Instituto Nacional de Artes Escénicas y MEC Uruguay.

Adriana Pignolo (Game Designer en Trojan Chicken) nos trae Diseñando una tercera entrega: Mejorar la experiencia de usuario sin cambiar “nada” .

Victoria De Lima (Senior Community Manager de Travian Games GmbH) y Lucía Gómez (Community Manager de Ironhide Game Studio) se unen en un panel para contarnos cómo crear y gestionar una comunidad para tu juego.

María Virginia Ambrosoni (Lead Artist de Arf Games) nos trae métodos de desorganización para artistas.

Fecha: jueves 25 de octubre desde las 18:30 hs , entrada sin costo.
Lugar: INAE Uruguay – Instituto Nacional de Artes Escénicas – Zabala 1480, 11000, Montevideo, Uruguay

GameDev Meetup en Twitter

by Fernando at October 22, 2018 02:00 PM

October 20, 2018


Fernando Briano

Kingdom Rush Origins

Kingdom Rush Origins

El estudio uruguayo Ironhide vuelve a la carga con Kingdom Rush Origins: La más reciente entrega de la saga Kingdom Rush está disponible en Steam para Linux, Mac y Windows y GOG (Mac y Windows).

Kingdom Rush es una saga de juegos que combina tower defense y estrategia en un universo fantástico con caballeros, héroes, magos, dragones y otras criaturas místicas. La mecánica es relativamente sencilla, tenemos que proteger nuestra base de olas de enemigos, pero a medida que avanzamos la estrategia es clave para poder seguir adelante.

Contamos con distintos tipos de torres que son más o menos efectivas según el enemigo que enfrentemos, y la combinación de torres que elijamos. Arqueros, magos, druidas de piedra e infantería élfica son la base de nuestro ejército y hay más de 18 habilidades para nuestras torres: tiradores elfos, osos, magos y hasta árboles gigantes.

Los niveles son bastante coloridos con una estética caricaturesca y los distintos personajes y enemigos son muy particulares. Arañas gigantes, gnomos, magos, vampiros y más. El juego mantiene la tradición de incluir homenajes a distintas series y juegos que parecen venir del cariño que de los desarrolladores a dichas series. Son pequeños huevos de pascua que divierten mucho al ser descubiertos, hay que estar atentos para encontra estos detalles. Entre los escenarios esta vez contamos con bosques élficos, reinos de hadas mágicos y ruinas aéreas de una antigua metrópolis.

La historia se cuenta con mini cómics entre algunos de los niveles, y este título es una precuela de los que vinieron antes. Pero no necesitan haber jugado los Kingdom Rush anteriores para divertirse jugando éste.

Como en instancias anteriores, contamos con héroes que van subiendo de nivel y ganando poder a medida que generan experiencia en el campo de batalla. Por ahora mi héroe preferido es Faustus, el dragón. Pero no los he probado todos. Cada héroe tiene su estrategia también, y según el nivel o nuestra forma de jugar algunos héroes son mejor que otros.

Nuevamente tuve el privilegio de poder probar la versión beta de Kingdom Rush Origins en Steam. Llegué a terminar la aventura principal sin encontrar ningún error y nuevamente volví a jugarlo entero con mi Steam Controller como hice con Kingdom Rush Frontiers. Al terminar la historia principal, me puse a jugar en el modo heróico, un poco más difícil con ciertas limitaciones en lo que podemos usar. Le sigue el modo Iron, todavía más limitado en las torres y habilidades, que pone a prueba nuestra capacidad como estrategas. Cuenta también con varios achievements de Steam que son bastante divertidos de ir encontrando.

[See image gallery at picandocodigo.net]

Como si todo esto fuera poco, faltan algunas actualizaciones gratuitas con más contenido. Al terminar la aventura principal podemos ver que el mapa tiene varias partes sin explorar y quedan héroes por descubrir:

Última semana de Diciembre – Actualización 1.1

¡Cuidado! ¡Un poderoso ejército de ogros está preparando una estrategia para invadir y destruir todo!

Esta actualización incluye:

Última semana de Enero – Actualización 1.2

El último y más leal teniente de Malicia se ha vuelto loco y está tramando venganza.
¡Lidera las fuerzas élficas y detén los planes de Baj’Nimen el Odioso antes que destruya todo en su camino!

Esta actualización incluye:

Última semana de Febrero – Actualización 1.3

Como nuestro Reino vuelve a sus antiguos tiempos de paz, el mensaje que mandamos pidiendo ayuda a los enanos nunca volvió, si hay algo más molesto que un enano ruidoso, ¡es uno callado!
Necesitas viajar a su tierra y buscar respuestas.

Esta actualización incluye:

No tengo mucho más que decir que si les resulta interesante el género o la ambientación del juego, probablemente les resulte divertido. Cuenta con mucho contenido, y más contenido en camino todavía. En lo personal la saga es de lo que más he jugado en computadora, y siempre estoy atento a nuevas entregas. Así que recomiendo ampliamente que jueguen y disfruten de Kingdom Rush:

Otras reseñas de la saga en el blog:

¡Muchas gracias Ironhide por volver a darme la oportunidad de jugar la versión beta!

Concurso Kingdom Rush

Manteniendo algo así como una tradición iniciada en 2014: Para cerrar el post, por haber leído hasta acá, para repartir la alegría, y celebrar la salida del juego, voy a estar regalando claves de Kingdom Rush para Steam. El juego está disponible en GNU/Linux, Mac OS y Windows. Como en otros sorteos, hay varias formas de participar:

En breve anunciaré los ganadores. ¡Suerte y a jugar Kingdom Rush!

Actualización: Concurso cerrado, y los ganadores son martin olivera, Arlequin y nicomanso.

by Fernando at October 20, 2018 01:00 PM

La Programación…

Fernando Briano

A veces la programación es 1% escribir código y 99% cuestionar todas las decisiones que tomaste en tu vida que te llevaron a estar sentado frente a una pantalla sin tener la más remota idea de lo que está pasando.

— Fernando Briano (@picandocodigo) 19 de octubre, 2018

by Fernando at October 20, 2018 11:50 AM

October 18, 2018


Fernando Briano

Nintendo en Madrid Games Week

Si están en Madrid este fin de semana, no se pierdan Madrid Games Week, la feria del videojuego referente a nivel nacional. Se realiza a partir de hoy 18 de octubre hasta el 21 de octubre en el pabellón 12 de IFEMA.

Nintendo va a tener una gran presencia, con 850 metros cuadrados de espacio dedicado a Nintendo Switch y más de 90 puestos de juego. Van a haber más de 30 juegos a disposición de los asistentes, incluyendo Super Smash Bros. Ultimate y Pokémon Let’s Go Pikachu y Pokémon Let’s Go Eevee.

Nintendo en Madrid Games Week

El “¡Todos están aquí!” es la expresión perfecta para hablar de Super Smash Bros. Ultimate, el crossover de personajes que no solo enfrenta en divertidos y frenéticos combates a Mario, Link, Pikachu, y otros personajes de toda la historia de Nintendo, sino que engloba a grandes estrellas invitadas y todos los personajes que han estado alguna vez en la saga Smash, como los míticos Sonic y Pac-Man. El juego más completo de la saga, con más de 70 personajes y más de 100 escenarios, llegará a las tiendas el 7 de diciembre, pero todos los asistentes a Madrid Games Week podrán probarlo meses antes de su lanzamiento.

Estarán también todos los Pokémon de la primera generación por primera vez en Nintendo Switch, y por primera vez en España, gracias a Pokémon: Let’s Go, Pikachu! y Pokémon: Let’s Go, Eevee!. Madrid Games Week será la primera oportunidad que tendrán los fans de todo el país para probar esta nueva aventura que combina elementos de la saga clásica con elementos de Pokémon GO, el fenómeno de masas que a día de hoy sigue superando récords de actividad gracias a su entregada comunidad. Pokémon: Let’s Go, Pikachu! y Pokémon: Let’s Go, Eevee! se pondrán a la venta el próximo 16 de noviembre, y los asistentes a la feria podrán probar varias de sus novedades, como el modo cooperativo para explorar, capturar y combatir en compañía, y el control con el nuevo accesorio Poké Ball Plus.

En la Zona Mario los asistentes se podrán montar fiestas sobre la marcha con sus acompañantes y disfrutar con los minijuegos de Super Mario Party, o demostrarán quién es el rey de la pista con Mario Tennis Aces y quién domina mejor el volante y los caparazones con Mario Kart 8 Deluxe.

Las aventuras de mayor calibre están en la Zona RPG, como The Legend of Zelda: Breath of the Wild, el considerado por la crítica (y el autor de este blog) como el mejor juego del año 2017 y uno de los mejores de la historia.

En la Zona de Acción y deportes no sólo están títulos exclusivos de Nintendo Switch como Splatoon 2. El apoyo third party está patente en EA SPORTS FIFA 19, Dragon Ball FighterZ y el gran fenómeno de Fortnite en un formato que permite jugar en cualquier lugar. Ubisoft tendrá un gran peso en esta zona con Starlink: Battle for Atlas, el título de acción y exploración espacial que el mismísimo Shigeru Miyamoto presentó en el pasado E3.

Nintendo Switch, la consola de los indies

Nintendo Switch es la consola en la que todos los desarrolladores independientes quieren estar. Así, la Zona Nindies crece con un gran número de experiencias diferentes, con títulos
ya considerados por muchos como inolvidables como Celeste, Hollow Knight, Dead Cells, y apuestas con la originalidad por bandera como Toki, Flipping Death, The Gardens Between.

Todos los asistentes al stand de Nintendo en Madrid Games Week tendrán la posibilidad de llevarse una de las dos Nintendo Switch que se sortearán cada día (de viernes a
domingo) entre todos aquellos que hayan conseguido un número de sellos por jugar en cada una de las diferentes zonas. A través de Twitter también se sortearán tres Nintendo Switch
entre todos aquellos que tuiteen una foto desde cualquier lugar del stand utilizando el hashtag #NintendoEnMGW.

Quien busque la diversión en la emoción de la competición, también tendrá su lugar en el stand de Nintendo en Madrid Games Week. Los asistentes podrán inscribirse en los torneos de Mario Tennis Aces y Mario Kart 8 Deluxe, y para quienes disfruten de ver una competición de alto nivel tanto como de jugar, se celebrará un Torneo Invitacional de Super Smash Bros. Ultimate, en el que los mejores jugadores del país se enfrentarán en frenéticos combates.

La guinda al pastel de la competición la pone la clasificación nacional del Splatoon 2 European Championship 2019, en el que los mejores equipos de inklings y octolings se llenarán las caras de tinta para demostrar quién merece representar a España en el campeonato europeo que se celebrará en primavera de 2019.

Están los juegos más esperados meses antes de su lanzamiento, están los juegos third party en las mejores versiones para jugar en cualquier lugar, están los Nindies, están los mejores
juegos para la diversión en familia, están las aventuras más sorprendentes, están las competiciones de alto nivel, están los regalos y sorteos… Todos están aquí, ¡solo faltas tú!

Más información:
http://www.nintendo.es
https://www.nintendo.es/nintendoswitch
https://twitter.com/nintendoes
https://www.facebook.com/NintendoES
https://www.facebook.com/NintendoSwitchES
http://www.youtube.com/NintendoES
https://instagram.com/nintendoes/
https://www.instagram.com/NintendoSwitchES

Sobre Nintendo
Pionera en la creación de entretenimiento interactivo, Nintendo Co., Ltd., con sede en Kioto (Japón), fabrica y distribuye hardware y software para su consola de sobremesa Nintendo Switch, y para las familias de consolas portátiles. Desde 1983, cuando lanzó la Nintendo Entertainment System (NES), Nintendo ha vendido más de 4.600 millones de videojuegos y más de 725 millones de unidades de hardware en todo el mundo, incluyendo las actuales consolas Nintendo Switch, New Nintendo 3DS y New Nintendo 3DS XL, Nintendo 3DS, Nintendo 3DS XL y Nintendo 2DS, así como Game Boy™, Game Boy Advance, Super NES™, Nintendo 64™, Nintendo GameCube™, Wii, Nintendo DS, Nintendo DSi, Nintendo DSi XL y Wii U. También ha creado personajes tan conocidos como Mario™, Donkey Kong™, Metroid™, Zelda™ y Pokémon™. Como empresa subsidiaria, Nintendo Ibérica, S.A., con sede en Madrid, actúa como sede central de operaciones de Nintendo en España y Portugal.

by Fernando at October 18, 2018 09:15 AM

September 21, 2018


Rodolfo Pilas

fingerprint de certificados ssh

Con el tiempo uno va coleccionando muchos certificados, algunos dedicados a un determinado proyecto, otros dedicados a algun cliente y, por supuesto los propios. En ese repositorio de certificados que suele ser la carpeta ~/.ssh/ hay que agregar los certificados que por algun motivo distribuimos en algunos servidores… en fin, llegará el día que necesitemos identificar algun certificado privado.

Así que estos son los comandos para obtener el fingerprint (huella dactilar) de certificados privados.

Certificado ssh

$ openssl rsa -in id_rsa -pubout -outform DER | openssl md5 -c
Enter pass phrase for .ssh/id_rsa:
writing RSA key
a2:d7:19:27:fa:89:43:aa:59:fd:ac:eb:71:3f:fb:a8

Como ven, mi certificado privado tiene passphrase y, para leerlo se require que la escriba.

Certificado pem (AWS)

openssl pkcs8 -in .ssh/proyectoX  -inform PEM -outform DER -topk8 -nocrypt | openssl sha1 -c
d3:ff:c0:cf:6f:25:a1:88:b5:c7:9e:9b:ba:b9:57:a4:bb:45:62:68

Los certificados que creamos en AWS se suelen guardar sin passphrase y el fingerprint se muestra inmediatamente.

by pilasguru at September 21, 2018 01:11 PM

September 17, 2018


Rodolfo Pilas

FIX AWS cli “An error occurred (AuthFailure)”

Uno de los deployments que estoy automatizando con aws-cli funcionaba perfectamente cuando utilizaba recursos RDS, por ejemplo:

$ aws rds describe-db-snapshots --db-instance-identifier production
{
    "DBSnapshots": []
}

lo que significa que estaban correctamente configuradas las credenciales y los permisos dentro de IAM.

Pero al ejecutar comandos sobre EC2 obtenía un error, en algo tan sencillo como listar las instancias

$ aws ec2 describe-instances

An error occurred (AuthFailure) when calling the DescribeInstances operation: 
AWS was not able to validate the provided access credentials

y es un poco desconcertante, porque algunos comandos/servicios funcionan y otros no.

Una prueba que hice fue dar de alta las variables

export AWS_ACCESS_KEY_ID="AKIAIW......A"
export AWS_SECRET_ACCESS_KEY="GOvDvOPvjBW0n.........."

pero el error continúaba.

El problema es que la máquina local necesita tener una hora correctamente configurada:

$ date
Sat Sep 15 16:12:01 UTC 2018

$ sudo apt install -y ntp

$ date
Sat Sep 15 16:23:57 UTC 2018

Esos 9 minutos de retraso que tenía mi máquina local evitaba el uso de EC2.

Hay muchas formas de ajustar la hora, el servicio NTP no es la única solución y puede no ser la mejor. Tal vez un simple

$ sudo date 091516232018

hubiera sido una solución más adecuada; pero la idea es la misma, poner el host local en hora

by pilasguru at September 17, 2018 01:45 PM

September 12, 2018


Rodolfo Pilas

Deepin

Ya hace tiempo que vengo utilizando Deepin como mi distribución de escritorio de Linux. Es algo que podemos cambiar, pero hace tiempo que Deepin es mi distribución preferida a la hora de montar un desktop.

Se trata de una distribución para desktop que busca ser elegante y fácil de utilizar para el usuario promedio.

No solo viene out-of-the-box con el software que uno espera (navegador Chrome, Correo Thunderbird, etc.) sino que trae algunas aplicaciones propias que buscan seguir la misma idea de sencillez y elegancia como un centro de aplicaciones (Deepin Store), Deepin ScreenShot y multimedia con Deepin Music y Deepin Movie.

Para ofimática viene ya pre-instalado todo el WPS Office que busca seguir la estética de los ciéntos de íconos y sub-menúes del MS-Office.

La base es GNU/Debian Linux, por lo que esta todo, todo lo demás que quieras instalar para personalizar tu deepin.

Hay una barra de aplciaciones preferidas donde puedes anclar tus aplicaciones más usadas y un launcher para buscar y lanzar tus aplciaciones.

El Centro de Control es un panel que se despliegua a la derecha y permite hacer tus configuraciones.

Es lindo, me gusta y lo uso y recomiendo y aquí está el enlace al sitio en español.

by pilasguru at September 12, 2018 07:44 PM

September 10, 2018


Rodolfo Pilas

Vagrant cheat sheet

Hace ya un tiempo que hice y vengo manteniendo un

Vagrant cheat sheet

con la lista ordenada de los comandos vagrant.

Si te interesa Vagrant, este resúmen puede ayudarte.

by pilasguru at September 10, 2018 01:11 PM

September 06, 2018


Rodolfo Pilas

Tabla periódica del DevOps

La empresa XebiaLabs mantiene una tabla periódica de las herramientas para DevOps que es una forma muy interesante de tener tanto nombre y herramientas ordenados en una forma visual y comprensible.

Las herramientas listadas tiene cada una un enlace que lleva a información adicional.

Fuente: PERIODIC TABLE OF DEVOPS TOOLS

by pilasguru at September 06, 2018 07:05 PM

¿cómo evitar subirse al tren de la desinformación en las redes sociales?

No compartas sin antes filtrar la información por estos cinco puntos

by pilasguru at September 06, 2018 05:10 PM

September 03, 2018


Rodolfo Pilas

Instalar Docker con Ansible

Instalar en Ubuntu 16.04 con Ansible docker engine y docker-compose.

- hosts: all
  become: true

  tasks:
    - name: ensure repository key is installed
      apt_key:
        id: "58118E89F3A912897C070ADBF76221572C52609D"
        keyserver: "hkp://p80.pool.sks-keyservers.net:80"
        state: present

    - name: ensure docker registry is available
      # Ubuntu 16.04 LTS
      apt_repository: repo='deb https://apt.dockerproject.org/repo ubuntu-xenial main' state=present

    - name: ensure docker and dependencies are installed
      apt: name={{ item }} update_cache=yes
      with_items:
        - docker-engine
        - docker-compose

    # To enable insecure registries with Docker
    #- name: ensure docker can use insecure registries in 10.1.0.0/16
    #  lineinfile: "dest=/etc/default/docker regexp=^DOCKER_OPTS line=DOCKER_OPTS='--insecure-registry 10.1.0.0/16'"

    # Optional if you are provisioning vagrant
    #- name: add vagrant to docker group
    #  user: name=vagrant groups=docker append=yes

    - service: name=docker state=restarted

Configuración de provision con Vagrant:

  config.vm.provision "ansible_local" do |ansible|
    ansible.playbook = "playbook.yml"
    ansible.compatibility_mode = "2.0"
  end

by pilasguru at September 03, 2018 01:32 PM

August 31, 2018


Rodolfo Pilas

Detener la ejecución de Ansible

Ansible (version >2.2) provee el módulo meta para configurar sus acciones y con una task como esta:

- name: stop processing task
   meta: end_play

se puede detener la ejecución de un playbook e ignorar todo las tareas siguientes.

Referencias

by pilasguru at August 31, 2018 02:46 PM

July 29, 2018


Rodolfo Pilas

246 días y renace

Si, fueron 246 días off-line. Más concretamente 5907 horas, 51 minutos y 5 segundos en que este blog ha estado off-line, según mi sistema de monitoreo.

La baja del blog se debió al cierre de la capa gratuita del servicio RedHat OpenShift en octubre, cuando procesaron un cambio de versión (tengo entendido que la capa gratuita se ha restaurado, pero no estoy seguro).

Aprovechando este “apagón” decidí migrar toda la plataforma a una infraestructura de docker y entre los tiempos que puede dedicar, las pruebas, los armados, que ahora dedico tiempo al podcast deployando.me y si …. pasó mucho tiempo.

Primero levanté el wiki pi.lastr.us, luego el sistema de certificados Let’s Encrypt y por último este blog. Pero lo que más pruebas me llevó fue armar un sistema de respaldos coherente para todo lo que voy levantando.

La estructura armada es de la siguiente forma:

En el host se levantan un conjunto de contenedores docker:

Las dos aplicaciones

que están detrás de un proxy reverso que atiende las conexiones de los navegantes

que recibe los certificados y configuración SSL gestionada por

el blog que guarda datos en un volumen definido en una carpeta del host y en una base de datos

que se respalda a un espacio de disco diariamente mediante un contenedor

que es invocado desde una tarea diaria en el crontab.

Estoy muy conforme con el resultado, pues es un sistema coherente para mantener y respaldar y escalable para agregar eventualmente más aplicaciones.

Volver a ver mi blog online fue la culminación de un proyecto personal bastante lindo para mi.

by pilasguru at July 29, 2018 07:52 PM

January 16, 2018


Andres Tarallo

Adios, Hemingway - Leonardo Padura

Es verano en esta parte del mundo. El año recién comenzó, todo transcurre con un ritmo más tranquilo. Algunos están de vacaciones, otros ya retornamos al trabajo. Época para leer alguna novela, cuando no se puede estar bajo el sol. 

Ordenando los libros que se apilan en mi mesa de luz, encontré una novela de Leonardo Padura, que lei el pasado verano. Padura es un escritor cubano, de su imaginación nace el Teniente Mario Conde de la Policía de Investigación de Cuba. Un Detective/Investigador con aspiraciones de escritor, con un variopinto grupo de amigos. Adiós Hemingway integra la serie de "Mario Conde", es la quinta novela de la serie. Las cuatro primeras fueron llevadas a televisión en una miniserie llamada "Cuatro estaciones en la Habana". La miniserie esta disponible en NETFLIX, me despertó la curiosidad y salí a recorrer librerías donde encontré a la novela que motivó este post. 

Tapa de la edicion de Tusquets Editores (foto del autor)
Esta quinta novela encuentra a Mario Conde retirado de la Policía, intentando escribir una novela. Recibe una llamada de quien fuera su compañero de tareas. Luego de una tormenta apareció un cadáver en Finca Vigia, la que fuera residencia de Ernest Hemingway. El cadaver fué enterrado a fines de los 50, cuando Hemingway residía allí.Conde no puede resistir a ese misterio.

by Andres Tarallo (noreply@blogger.com) at January 16, 2018 11:00 PM

November 26, 2017


Andres Tarallo

2 articulos: History of Linux - Getting Started with FreeBSD

Hace un rato Federico nos compartía (a algunos amigos y colegas) dos articulos de DigitalOcean. Los acabo de terminar y quiero dejarlos en una entrada del blog. Estan especialmente interesantes para quien esta dando sus primeros pasos en Linux o FreeBSD, así como para docentes y alumnos de cursos de Sistemas Operativos o Linux.

El primero, History of Linux, nos presenta un relato desde la previa a  la creacion de Linux. Linux existe por que existe el proyecto GNU. Pero antes existió Minix, que debe sus raíces a BSD y a UNIX. Y no olvidarse de MULTICS. Pero no se queda en la sumatoria de hechos históricos, va a los datos técnicos, a las innovaciones que hicieron que UNIX desde un origen tuviera la relevancia que tiene. Y como eso repercutió en los sistemas operativos inspirados o desarrollados a partir de el.

El otro articulo, es un listado de una serie de artículos para facilitar el primer contacto con FreeSBD a quien tiene experiencia con Linux.  En Getting Started with FreeBSD van a encontrar una introduccion amena y actual varios de las primeras tareas que van a tener que enfrentar en nuevo sistema: crear usuarios y claves de SSH, instalar paquetes o tareas de mantenimiento de rutina.

¡Disfruten la lectura! Espero pronto subir algún articulo más largo.


by Andres Tarallo (noreply@blogger.com) at November 26, 2017 02:23 PM

November 06, 2017


Santiago Ferreira

SysAdmin

El mundo de la desolación, el control, el alma y el espíritu, la tecnología , los valores y el clon-az-epam.
Mientras funcione, los usuarios no se tienen que dar cuenta de los cambios en el sistema.
OK.
Wearables, horas de sueño, el tiempo es oro,demasiado ego, la máquina de ser feliz.
SED-AWK -Vi -uptime #uname -a

by Sanux at November 06, 2017 05:13 AM

October 10, 2017


Andres Tarallo

C elements of Style

Programar es análogo a escribir. De pequeños aprendemos poner letra tras letra para formar palabras y estas forman frases.  Análogamente quien aprende a programar escribe programas cortos, aprendiendo a manejar archivos o familiarizarse con las estructuras de control. 

Cuando pasamos la etapa de programas cortos, de unos cientos del lineas, a programas más complejos, bibliotecas o sistemas completos es necesario aprender a estructurar estos programas.A lo largo del ciclo de vida un programa este va a sufrir modificaciones. Para poder modificar un programa es necesario entender su funcionamiento, hablamos allí de "código legible". Hay quien compara el código difícil de leer con un plato de tallarines, hablamos de "spaghetti code".

En producción escrita se habla de "estilo" para redactar bien y con propiedad. Si hablamos de programar también se habla de estilo. Y pasa por cosas que escuchamos hasta el hartazgo: comentar el código, nombres de variables y  funciones claros, acordes al contexto y tarea. 

El Kernel de Linux tiene un documento con pautas para sus desarrolladores: Linux Kernel coding Style. Las pautas están inspiradas fundamentalmente en El lenguaje de programación C, de  Kernighan y Ritchie. Un viejo libro, escrito por Kernighan y Plunger, sobre el tema es The Elements of Programming Style. Un libro viejo, con muchos ejemplos en Fortran, pero con una serie de lecciones aun validas y aplicables en lenguajes mas modernos como Python o Go. Lo menciono ademas por haber influido Libros y Papers sobre el tema. Uno de esos Papers es Recommended C Style and Coding Standards

Hace algunas semanas buscando otra cosa llegué a la página de Steve Oualline, autor con varios libros publicados sobre C, C++ y PERL. Tengo (y lei) Practical C Programming y Practical C++ Programming. Me impresionó muy bien cuando los leí por el énfasis en escribir programas claros, bien documentados y mantenibles. En el sitio del autor me encontré una copia de C Elementos of Style, de rápida lectura y muy recomendable.

http://www.oualline.com/books.free/style/index.html

by Andres Tarallo (noreply@blogger.com) at October 10, 2017 02:48 PM

October 06, 2017


Andres Tarallo

Pan de Banana

El pan de Banana es de los llamados Panes rápidos, utilizan polvo de hornear en vez de levadura biológica. Este pan tiene origen en USA, en la década de los años 30 del pasado siglo. Una de las explicaciones de su origen afirma que lo inventaron amas de casa, como una forma de aprovechar bananas demasiado maduras para su consumo.

En una tarde lluviosa, buscando hacer algo distinto y rápido, encaré una receta de pan de banana, que saqué del Libro del Crandon. A la que hice algunos cambios: sustituí parte de la harina por harina integral y la manteca la cambié por aceite vegetal; este ultimo usé aceite de Girasol, lo que tenia en casa en ese momento; puede ser interesante hacerlo con aceite de oliva.

Tamizar y Mezclar:
 Mezclar en otro Bowl:
Mezclamos los ingredientes líquidos con los secos y vertemos en un molde enmantecado. Luego llevamos a horno caliente  (180 grados) por unos 50 minutos.

Pan de Banana recien desmoldado  (Foto del autor)

Conclusiones

El pan es agradable de gusto, apto para untarlo o utilizarlo en Sándwiches. Se puede tostar, si bien no es usual esto último. Envuelto en film se conserva varios días.  Hay variantes de esta receta, vi en un envase de salvado una receta interesante y otra en el blog de Silvia Pirez, concursante de la primera edición de MasterChef Uruguay. Esta última receta utiliza levadura biológica, lo que la hace interesante para probarla.

by Andres Tarallo (noreply@blogger.com) at October 06, 2017 08:52 PM