21 de agosto de 2019

Recursos de mi taller "Cómo desarrollar aplicaciones descentralizadas en la Blockchain de Ethereum" en el CommitConf



En mi último post podéis ver los recursos de la charla de "Cómo desarrollar aplicaciones descentralizadas en la Blockchain de Ethereum" que dí en el Codemotion. En realidad esa charla era un resumen del taller que dí con anterioridad en el CommitConf.

En este taller hago una breve introducción teórica sobre Bitcoin, Blockchain y Minado y sobre Ethereum, Smart Contracts y ÐApps, y a continuación desarrollo una pequeña aplicación descentralizada con un pequeño contrato inteligente en la Blockchain de Ethereum.

En el taller muestro un poco de Solidity, un lenguaje para programar contratos inteligentes. Muestro también Truffle, un framework para desarrollar y testear aplicaciones descentralizadas. Muestro como usar web3js para llamar desde nuestra web a la Blockchain. Muestro también como usar MetaMask para interactuar con la aplicación. Y muestro además como minar nuestras transacciones de prueba levantando una instancia de Ganache.

Recursos:

Comparte:    Facebook Twitter
Leer más

20 de agosto de 2019

Recursos de mi charla "Cómo desarrollar aplicaciones descentralizadas en la Blockchain de Ethereum" en el Codemotion



En esta charla que di en el Codemotion de 2018 después de una breve introducción teórica sobre Bitcoin, Blockchain y Minado y sobre Ethereum, Smart Contracts y ÐApps, muestro el código necesario para desarrollar una pequeña aplicación descentralizada con un pequeño contrato inteligente en la Blockchain de Ethereum.

En la charla muestro un poco de Solidity, un lenguaje para programar contratos inteligentes. Muestro también Truffle, un framework para desarrollar y testear aplicaciones descentralizadas. Muestro como usar web3js para llamar desde nuestra web a la Blockchain. Muestro también como usar MetaMask para interactuar con la aplicación. Y muestro además como minar nuestras transacciones de prueba levantando una instancia de Ganache.

Recursos:

Comparte:    Facebook Twitter
Leer más

12 de agosto de 2019

Charlas técnicas que más me han gustado



Hace poco publiqué un post con las últimas charlas técnicas que he visto y que me han gustado. Ahora he hecho una recopilación de las que más me han gustado, y además he puesto un * en las charlas que más me han gustado de todas.

Agile & Managment

Agile - ¿Quién ha visto tu código? (Alex Fernández) *
Managment - 10 things you can stop doing. (Pia Fåk Sunnanbo)
Managment - Engineering Manager vs Tech Lead. (Félix López) *
Managment - Estrategia de Innovación y Prospección Estratégica. (César Astudillo)
Managment - First Steps as a Lead. (Dan Persa) *
Managment - Innovacion corporativa. (Nacho Herranz)
Managment - The Good Place. (Irene M. Morgado) *

Back & desarrollo

Back - Conoce Micronaut, un framework para microservicios JVM. (Álvaro Sánchez Mariscal) *
Back - Curso de Java 8 - Time to join the future (Ignacio Molina & Héctor Pardo) *
Back - De 0 a 100 con Bash Shell Scripting y AWK. (Adolfo Sanz de Diego)
Back - Dockeriza tu entorno de desarrollo. (Marco Bellido)
Back - Micronaut in Action! (Iván López)
Desarrollo - Automatiza ideas locas mezclando nodejs, bash y otros CLI's del motón. (Jorge Barrachina) *
Desarrollo - Clean code en la práctica. (Israel Saeta) *
Desarrollo - Cuando los tests conocieron a Puppeteer. (José Manuel García)
Desarrollo - El arte del patadón pa'lante. (Luis Artola & Eduardo Ferro) *
Desarrollo - Introduccion a la programacion cuantica. (Juan Lupion) *
Desarrollo - Javascript Kata - aplicando clean code y buenas prácticas en vivo. (Leonardo Micheloni) *
Desarrollo - Twelve Factor App. (F. José Fernández)
Desarrollo - Vim from a begginer, junior, hypster, dummy web developer. (Carlos P. Jimeno)

Front & UX

Front - Juguemos con la web abierta. (Jesús M. González Barahona) *
UX - ¿Por qué mi abuela sabe usar WhatsApp y no la aplicación del banco? (María Fernández)
UX - Bad UX. (Almudena Martín Castro)
UX - El feismo está de moda. (Lambiris)
UX - UX de guerrilla. Manual de supervivencia para devs. (María Fernández) *
UX - UX/UI para desarrolladores. (Javier Abadía) *

Blockchain & IoT

Blockchain - Cómo desarrollar aplicaciones descentralizadas. (Adolfo Sanz de Diego)
Blockchain - Hyperledger, un marco blockchain para el negocio. (María Teresa Nieto) *
Blockchain - Iniciando con Hyperledger Fabric y Composer. (Jose Diaz)
IoT - Las claves de una nueva revolución. (Alicia Asín) *

AI & Arte

AI - Computación Evolutiva. The Next Big Thing. (Rafael Bermúdez Míguez) *
AI - The bad guys in AI. Atacando sistemas de Machine Learning. (Alicia Pérez y Beatriz Gómez)
Arte - ¿Sueñan los androides con obras de Banksy Creatividad, arte e IA? (Francisco Javier Ordóñez Morales) *
Arte - Creative Coding. (Joan León) *
Arte - Creatividad. El Transmedia contraataca. (Cristina Carrascal y Desiree Bressend)
Arte - Making art with CSS. (Cassidy Williams)
Arte - Programación idiota. (Juan Alonso Moreno) *

Gamificación & Inspiracional

Gamificación - Gamificación y Juegos Serios: ¿qué son y por qué funcionan? (Belén Gomez) *
Gamificación - Videojuegos que cambian el mundo. (Belen Gomez)
Inspiracional - Cómo un tweet puede cambiar una democracia. (Mesa redonda)
Inspiracional - CRISPR molecular recording, DNA machines and other tiny tales from the test tube. (Miguel Foronda Alvaro) *
Inspiracional - Entrevistas al borde de un ataque de nervios. (Katia Aresti)
Inspiracional - Habits of Efficient Developers. (Daniel Lebrero) *
Inspiracional - Verificación contra las fake news. El caso Newtral. (Ana Pastor, Inés Calderón, Marilín Gonzalo)

Seguridad

¡Ataca tus aplicaciones antes que los malos! (Simon Roses Femerling)
Código seguro o inseguro, esa es la cuestión. (Antonio Calero)
Cryptography 101 for Java developers. (Michel Schudel)
Desarrollo seguro en NodeJS OWASP top ten y buenas prácticas en JWT. (Raul Requero)
Los ataques web más comúnes en acción. (Luis Ruiz) *
Seguridad en aplicaciones web con Spring Security 4. (Luis Ramón Álvarez) *
You want your apps to be safe Hack yourself! (Isabelle Mauny)
Comparte:    Facebook Twitter
Leer más

10 de julio de 2019

Recursos de mi "Taller de 0 a 100 de Bash Shell Scripting y AWK" en el T3chFest


Ahora que tengo un poco más de tiempo, estoy recopilando los recursos de cursos, charlas y talleres que he impartido en los últimos meses.

En este taller que impartí en el T3chFest de 2018, intenté enseñar a programar scripts de Bash desde cero subiendo la complejidad para terminar con AWK. Me basé en un curso de Bash Shell Script Avanzado que impartí hace tiempo.

Los recusos:

Comparte:    Facebook Twitter
Leer más

2 de julio de 2019

Charlas técnicas que me han gustado



Últimamente, me estoy aficionando a ver charlas técnicas. Aquí os dejo las últimas que he visto y que me han gustado. He puesto un * en las charlas que más me han gustado.

Agile & Managment

Agile - ¿Quién ha visto tu código? (Alex Fernández) *
Agile - Agilizando un departamento IT en la Administración Pública. (Iván Samuel Tejera)
Agile - De 0 a 100. Mitos y Leyendas. (Adolfo Menéndez)
Agile - Y de lo mío, ¿qué? (Yair Segura y Borja Lázaro)
Managment - 10 things you can stop doing. (Pia Fåk Sunnanbo) *
Managment - Direccion de proyectos. (Martin Vega)
Managment - Engineering Manager vs Tech Lead. (Félix López) *
Managment - Estrategia de Innovación y Prospección Estratégica. (César Astudillo) *
Managment - First Steps as a Lead. (Dan Persa) *
Managment - Innovacion corporativa. (Nacho Herranz) *
Managment - The Good Place. (Irene M. Morgado) *

Back & desarrollo

Back - Conoce Micronaut, un framework para microservicios JVM. (Álvaro Sánchez Mariscal) *
Back - Curso de Java 8 - Time to join the future (Ignacio Molina & Héctor Pardo) *
Back - De 0 a 100 con Bash Shell Scripting y AWK. (Adolfo Sanz de Diego) *
Back - Dockeriza tu entorno de desarrollo. (Marco Bellido) *
Back - Hasta dónde partir mis microservicios y por qué. (Santiago García-Bonacho Rico)
Back - Introducción a Docker y Kubernetes. (Pablo Chico de Guzman)
Back - Micronaut in Action! (Iván López) *
Back - Operational Serverless. (Vicenç García Altés)
Desarrollo - Automatiza ideas locas mezclando nodejs, bash y otros CLI's del motón. (Jorge Barrachina) *
Desarrollo - Clean code en la práctica. (Israel Saeta) *
Desarrollo - Cuando los tests conocieron a Puppeteer. (José Manuel García) *
Desarrollo - Dame tus tipos Pegaso. (Jorge J. Barroso)
Desarrollo - El arte del patadón pa'lante. (Luis Artola & Eduardo Ferro) *
Desarrollo - Fullstack Kotlin - Aplicaciones web modernas cliente y servidor. (César Alberca y Javier Sánchez)
Desarrollo - Introduccion a la programacion cuantica. (Juan Lupion) *
Desarrollo - Javascript Kata - aplicando clean code y buenas prácticas en vivo. (Leonardo Micheloni) *
Desarrollo - JSON Schema - dotando a tus datos de un formato y a tus APIs de un contrato (David Bonilla Fuertes)
Desarrollo - Mi Quantum Computer y yo - una Qiskitoria apasionante. (Paco Martin Fernandez)
Desarrollo - Twelve Factor App. (F. José Fernández) *
Desarrollo - Vim from a begginer, junior, hypster, dummy web developer. (Carlos P. Jimeno) *

Front & UX

Front - An Introduction to WebAssembly. (Guy Royse)
Front - Juguemos con la web abierta. (Jesús M. González Barahona) *
Front - Optimización de imágenes para la web. (Joan León)
UX - ¿Por qué mi abuela sabe usar WhatsApp y no la aplicación del banco? (María Fernández) *
UX - Bad UX. (Almudena Martín Castro) *
UX - El feismo está de moda. (Lambiris) *
UX - UX de guerrilla. Manual de supervivencia para devs. (María Fernández) *
UX - UX/UI para desarrolladores. (Javier Abadía) *

Blockchain & IoT

Blockchain - A journey to Build a Distributed Blockchain Application. (Romeo Kienzler)
Blockchain - Architecting with blockchain for dummies. (Pim Otte)
Blockchain - Bitcoin y más allá. (Luca Nizzardo)
Blockchain - Blockchain o no blockchain... esa es la cuestión. (Yaiza Vinuela)
Blockchain - Blockchain scaling. Lightning Network. (Tomasz Konieczny)
Blockchain - Cómo desarrollar aplicaciones descentralizadas. (Adolfo Sanz de Diego) *
Blockchain - Hacking the blockchain for fun and profit. (Oscar Delgado)
Blockchain - Hyperledger, un marco blockchain para el negocio. (María Teresa Nieto) *
Blockchain - Iniciando con Hyperledger Fabric y Composer. (Jose Diaz) *
Blockchain - IPFS and how to distribute the web. (Fredrik Rubensson)
Blockchain - Lets kill the hype, Blockchain gets real. (David Chavarri y Rubén Chavarri)
Hyperledger Fabric - Build first network - 01 - Downloading necessary images and sample code. (Иван Ванков)
Hyperledger Fabric - Build first network - 02 - Run first hyperledger network. (Иван Ванков)
Hyperledger Fabric - Build first network - 03 - Crypto config. (Иван Ванков)
Hyperledger Fabric - Build first network - 04 - Crypto config. (Иван Ванков)
Hyperledger Fabric - Build first network - 05 - Genesis block configuration. (Иван Ванков)
Hyperledger Fabric - Build first network - 06 - Genesis block generation. (Иван Ванков)
Hyperledger Fabric - Build first network - 07 - Docker compose. (Иван Ванков)
Hyperledger Fabric - Build first network - 08 - Chaincode 1. (Иван Ванков)
Hyperledger Fabric - Build first network - 09 - Chaincode 2. (Иван Ванков)
Hyperledger Fabric - Build first network - 10 - Chaincode 3. (Иван Ванков)
Hyperledger Fabric - Build first network - 11 - Chaincode event. (Иван Ванков)
IoT - Las claves de una nueva revolución. (Alicia Asín) *
IoT - Visions of the Future Digital Education. Arduino. (David Cuartielles)

AI & Arte

AI - Bots with AI will take your job... (Andres Pulgarin)
AI - Computación Evolutiva. The Next Big Thing. (Rafael Bermúdez Míguez) *
AI - The bad guys in AI. Atacando sistemas de Machine Learning. (Alicia Pérez y Beatriz Gómez) *
Arte - ¿Sueñan los androides con obras de Banksy Creatividad, arte e IA? (Francisco Javier Ordóñez Morales) *
Arte - Creative Coding. (Joan León) *
Arte - Creatividad. El Transmedia contraataca. (Cristina Carrascal y Desiree Bressend) *
Arte - Making art with CSS. (Cassidy Williams) *
Arte - Programación idiota. (Juan Alonso Moreno) *

Gamificación & Inspiracional

Gamificación - Gamificación y Juegos Serios: ¿qué son y por qué funcionan? (Belén Gomez) *
Gamificación - Videojuegos que cambian el mundo. (Belen Gomez) *
Inspiracional - Cómo un tweet puede cambiar una democracia. (Mesa redonda) *
Inspiracional - CRISPR molecular recording, DNA machines and other tiny tales from the test tube. (Miguel Foronda Alvaro) *
Inspiracional - Enseñando a programar con 10 años. (Girls To Program)
Inspiracional - Entrevistas al borde de un ataque de nervios. (Katia Aresti) *
Inspiracional - Habits of Efficient Developers. (Daniel Lebrero) *
Inspiracional - Verificación contra las fake news. El caso Newtral. (Ana Pastor, Inés Calderón, Marilín Gonzalo) *

Seguridad

10 Mistakes Hackers Want You to Make. (Joe Kutner)
¡Ataca tus aplicaciones antes que los malos! (Simon Roses Femerling) *
Código seguro o inseguro, esa es la cuestión. (Antonio Calero) *
Cryptography 101 for Java developers. (Michel Schudel) *
Desarrollo seguro. (Alberto Barrios)
Desarrollo seguro en NodeJS OWASP top ten y buenas prácticas en JWT. (Raul Requero) *
Hacking de aplicaciones con node.js for fun and profit. (Daniel Echeverri Montoya)
Los ataques web más comúnes en acción. (Luis Ruiz) *
Seguridad en aplicaciones web con Spring Security 4. (Luis Ramón Álvarez) *
Start writing security tests now! (Nanne Baars)
You want your apps to be safe Hack yourself! (Isabelle Mauny) *
Comparte:    Facebook Twitter
Leer más

13 de junio de 2019

Hackathones 101: Tips para montar un buen hackathon

De la mano de HackathonLovers, he organizado ya más de 20 hackathones y he ayudado con la organización y difusión de otros tantos.

Cada poco tiempo me contacta gente pidiéndome consejos de cómo montar un hackathon, así que los he aglutinado todos aquí para su uso y disfrute :-)

Indice

  • ¿Qué es un hackathon?
  • ¿Cómo sería el hackathon ideal?
  • Principios básicos
  • Preguntas importantes
  • Antes del hackathon
  • Durante el hackathon
  • Después del hackathon
  • No puede faltar en el hackathon

¿Qué es un hackathon?

Un hackathon puede definirse como un encuentro de personas relacionadas con el mundo de la tecnología (desarrolladores de software, diseñadores, etc) que se juntan con la finalidad de crear un producto tecnológico en un plazo de tiempo limitado.

El producto tecnológico se suele crear con fines educativos o sociales, aunque el objetivo final es que sea utilizable, simplemente. La palabra surge de la unión de los términos maratón y hacker, porque es habitual plantear el evento en forma de concurso o competición, y porque en él participan personas que quieren encontrar la solución a un problema utilizando la creatividad y la tecnología. Es decir, personas que podríamos calificar como hackers.

¿Cómo sería el hackathon ideal?

En HackathonLovers hicimos una encuesta de cómo sería el hackathon ideal y los resultados fueron los siguientes:

  • A los encuestados les gusta los hackathones porque fundamentalmente aprende, conoce gente y se divierte. Además de forma secundaria porque resuelve retos y porque hay premios.
  • Aunque el premio no es lo que más motiva a los encuestados a participar en un hackathon, si que parece que es un gran aliciente.
  • Los encuestados prefieren los premios físicos antes que los premios en metálico.
  • Los encuestados opinan que al menos los 3 primeros equipos deberían llevarse algún premio.
  • Los encuestados piensan que con un premio de 100€ o 200€ por participante no está mal.
  • Los encuestados creen que lo más importante a la hora de elegir al ganador de un hackathon debe ser es la originalidad de la idea, aunque también es importante la viabilidad del proyecto, la dificultad técnica, el grado de finalización, y el diseño y la usabilidad de la aplicación.
  • Los encuestados prefieren claramente hackathones con equipos multidisciplinares.
  • A los encuestados les gusta que haya charlas solo si son cortas y son al principio del hackathon.
  • Los encuestados prefieren comer catering variado en un hacakthon.
  • Los encuestados opinan que la duración ideal de un hackathon está comprendida entre uno y dos días.
  • Los encuestados prefieren que los hackathones se organicen en fin de semana.
  • Los encuestados estarían dispuestos a pagar al menos 10€ por participar en un hackathon.

Principios básicos

HackathonLovers tiene unos principios básicos que todos los hackathones deberían cumplir:

  • Los desarrolladores/as tienen que tener la libertad y el derecho de elegir con qué licencia de uso liberan lo que crean.
  • Un hackathon no puede ser considerado una vía de obtener un software a medida por parte de patrocinadores o terceras personas.
  • Así mismo, aunque un hackathon es un evento en donde se puede hacer networking, y este puede finalizar con algún acuerdo entre varias partes, no debería ser usado única y exclusivamente con fines de recruiting.

Preguntas importantes

A continuación una serie de preguntas que hay que responder antes de ni siguiera planificar el hackathon:

  • ¿Objetivo del hackathon?
  • ¿Nombre del hackathon? (Buscar nombre con gancho que no tenga #hashtag en twitter)
  • ¿Retos del hackathon?
  • ¿Duración del hackathon? ¿Sábado, Viernes-Sábado, Viernes-Sábado-Domingo? (Los viernes empezar por la tarde, y los domingos terminar antes de comer)
  • ¿Agenda del hackathon?
  • ¿Fecha del hackathon? (minimo con 2 meses de antelación)
  • ¿Se solapa la fecha con otros hackathones y/o eventos tecnológicos?
  • ¿Lugar del hackathon? (mesas sillas, regletas, wifi, videoproyector y audio)
  • ¿Charlas y/o workshops antes del hackathon?
  • ¿Número de participantes del hackathon?
  • ¿Número de equipos del hackathon?
  • ¿Número de personas por equipos del hackathon?
  • ¿Restricciones en los equipos del hackathon?
  • ¿Web del hackathon?
  • ¿Inscripciones del hackathon?
  • ¿Precio entradas del hackathon? (Mejor cobrar algo, aunque sea simbólico, para asegurarse la asistencia)
  • ¿Catering del hackathon? (Pensar en los veganos/celíacos)
  • ¿Premios del hackathon? (Mínimo un premio para el primer equipo ganador, ideal 3 premios para los mejores equipos)
  • ¿Camisetas y o regalos del hackathon?
  • ¿Fotos, vídeos del hackathon?
  • ¿Publicidad del hackathon? (Hay que empezar un mes antes, y HackathonLovers siempre da publicidad gratis con la condición de que cumpla los principios básicos)

Antes del hackathon

A continuación una serie de tips a chequear antes del hackathon:

  • Cerrar todas las preguntas anteriores.
  • Si el hakathon cumple con los principios básicos podéis pedir a HackathonLovers que os deje poner su logo en su web como señal de que los cumple.
  • En la web poner:
    • ¿Qué? ¿Por qué? ¿Cómo? ¿Cuando? ¿Dónde? ¿Quien?
    • Retos. Premios. Inscripción. Bases. Agenda. Mapa. Jurado. Patrocinadores.
    • Bien claro lo más importante de las bases (y un enlace a las bases)
      • Lo más importante de las bases es:
        • que el derecho de lo desarrollado pertenece a los hackers
        • indicar cómo se van a evaluar los proyectos.
    • Web de ejemplo: http://hackathonlovers.com/psd2hackathon/
  • Plantilla bases legales.
  • Hacer una escaleta entre el grupo organizador y tener claro quien hace qué y quien habla en cada momento.
  • Tener un grupo de Telegram para el grupo organizador. 
  • Crear una plantilla de puntos donde se indique que se van a tener en cuenta a la hora de puntuar.
  • Opcional:
    • "Banda sonora del #hackathon" = crear una lista colaborativa de spotify y que la gente suba la música que le gusta
    • Grupo de Telegram para los participantes.

Durante el hackathon

A continuación una serie de tips a tener en cuenta durante el hackathon:

  • Fotos de todo.
  • Compartir en las redes sociales con el hashtag del evento.
  • Video de todo.
  • Timelapse de todo.
  • Apertura dando las gracias a patrocinadores y a los asistentes.
  • Charla motivacional tipo “Hackaeando Hackathones” o “¿Qué es un hackathon y por qué deberías asistir?
  • Charla técnica explicando los retos.
  • Dinámicas de grupo.
  • Tormenta de ideas.
  • Hacer entrevistas en vídeo a los participantes y al jurado antes de las demos.
  • Pasar a los grupos una plantilla de presentación como base:
    • Problema que resuelve
    • Solución adoptada
    • Implementación técnica
    • Miembros del equipo
  • Pasar la plantilla de puntos donde se indique que se van a tener en cuenta a la hora de puntuar a los grupos y a los miembros del jurado.
  • Con las fotos/videos del día hacer un minivideo antes de las demos.
  • Una hora antes de las demos pasar un formulario para la inscripción de equipos en donde pondrán nombre del equipo, descripción y URL a un repositorio público con el código, el vídeo de la aplicación funcionando y la presentación en PDF.
  • Subir todo en un mismo ordenador para no tener que andar cambiando de ordenador.
  • Dejar claro a los asistentes que las demos duran 5 minutos + 5 de preguntas y que habrá crono para que no se pasen del tiempo.
  • Después de las demos y antes del fallo del jurado:
    • Hacer una foto conjunta.
    • Pasar un formulario con una encuesta de satisfacción.
    • Pasar un formulario con una entrevista escrita.
  • Entrega de premios.
  • Cierre dando las gracias a patrocinadores y a los asistentes.
  • Entrevista en vídeo a los equipos ganadores.
  • Fin de fiesta.

Después del hackathon

A continuación una serie de tips a chequear después del hackathon:

No puede faltar en el hackathon

A continuación una serie de elementos que no pueden faltar en un hackathon:

  • Mesas con sillas para al menos 5 personas.
  • Regletas, al menos una por cada mesa con al menos 5 conexiones.
  • WiFi para al menos el doble de participantes (la gente conecta el móvil y el ordenador).
  • Vídeo proyector y pantalla y al ser posible sistema de audio.
  • Agua, zumos y refrescos.
  • Bollería y fruta.
  • Máquina de café.
  • Comida/cena variada (incluir para veganos/celíacos)
  • Premios para los ganadores.
  • Cosas menos importantes:
    • Grupo de Telegram donde los que se registren puedan ponerse en contacto con anterioridad al hackathon, para poder compartir coche, hablar de ideas, etc.
    • Preguntar si el participante es vegano/celíaco en el registro.
    • Post-its y pegatinas para los equipos.
    • Camisetas y regalos para todos si hay presupuesto.
Comparte:    Facebook Twitter
Leer más

30 de mayo de 2019

Convertir un fichero Asciidoctor a Markdown


He hecho un pequeño script para convertir un fichero Asciidoctor a Markdown:

echo "convert $1.adoc to $1.xml as docbook"
asciidoctor -b docbook $1.adoc

echo "convert $1.xml as docbook to $1.md"
pandoc -f docbook -t markdown --wrap=preserve --atx-headers $1.xml -o $1.md

echo "replace some characters in $1.md"
sed -i "s/ {#.*}//g" $1.md
sed -i "s/\~\\\~\~/\~\~\~/g" $1.md
sed -i "s/\]\(view-source\:/\]\(/g" $1.md
Y para usarlo es así:

./asciidoctor-to-markdown.sh fichero-asciidoctor-sin-extension
Nota: tendrás que tener instalado asciidoctor y pandoc :-)
Comparte:    Facebook Twitter
Leer más

6 de mayo de 2019

Plugins de Visual Studio @Code para desarrollar con #Angular y #SpringBoot


Java Extension Pack: Es un pack con una serie de plugins para desarrollar con Java en Visual Studio Code.

Spring Boot Extension Pack: Es un pack con una serie de plugins para desarrollar con Spring Boot en Visual Studio Code.

Checkstyle for Java: Es un plugin que muestra ciertos errores en nuestros archivos Java.

Java Code Generators: Es un plugin para generación boilerplate de Java.

Debugger for Firefox: Es un plugin que nos permite debuguear TypeScript en Firefox.

TSLint: Es un plugin que muestra ciertos errores en nuestros archivos TypeScript.

Angular Language Service: Es un plugin que ayuda con el autocompletado en los templates de Angular en nuestros HTML.

HTMLHint: Es un plugin que muestra ciertos errores en nuestros archivos HTML.

GitLens: Es un plugin de Git que me gusta bastante.

Bracket Pair Colorizer 2: Es un plugin que colorea los (), los [] y los {}.

Auto Rename Tag: Es un plugin que renombra automaticamente los tags de HTML.
Comparte:    Facebook Twitter
Leer más

5 de mayo de 2019

Instalar Oracle Java 11 en Ubuntu 18.04


En los repositorios de Ubuntu tienes OpenJDK, pero a veces es necesario instalar el JDK de Oracle. A continuación vamos a ver como instalar Oracle Java 11 en Ubuntu 18.04.

Primero tienes que añadir el repositorio de linuxuprising:

sudo add-apt-repository ppa:linuxuprising/java
Luego actualizamos:

sudo apt update
Y luego instalamos el paquete oracle-java11-installer:

sudo apt install oracle-java11-installer
Para que Oracle Java 11 se ejecute por defecto tenemos que instalar el paquete oracle-java11-set-default:

sudo apt install oracle-java11-set-default
Si queremos tener Oracle Java 11 instalado pero que no se ejecute por defecto tenemos que eliminar el paquete oracle-java11-set-default:

sudo apt remove oracle-java11-set-default
Para comprobar la versión de Java que se ejecuta por defecto lo hacemos con el comando java -version:

java -version
Comparte:    Facebook Twitter
Leer más