Saltar al contenido

Etiqueta: javascript

Documental de la creación de TypeScript

TypeScript Origins: The Documentary es un documental creado por Keyboard Stories que explora el proceso de creación de TypeScript. Lo más me gustó de ese documental, es que cuenta con comentarios de sus creadores y de las personas involucradas en su desarrollo, presentación y difusión, ofreciendo una visión completa de la historia detrás de este lenguaje. Este documental de TypeScript es algo que no se deben perder si están involucrados de alguna forma con el mundo de la programación.

¿Qué tiene de importante TypeScript?

Si te parece extraño que hayan hecho un documental de TypeScript de este calibre, es porque actualmente es uno de los lenguajes mas populares. JavaScript probablemente es el lenguaje mas popular actualmente, pero tiene muchas carencias como la falta de tipado/tipos (para mí es una de las cosas por las cuales opino que no es un buen lenguaje) que permite entre muchas cosas, crear código mas complejo, ayudar a los programadores escribir mejores programas limitando el tipo de datos que se pueden guardar o pasar en funciones, optimizar la velocidad de ejecución de los programas, entre otros.

TypeScript nace como solución a este problema, expandiendo su uso rápidamente e inclusive siendo sustituto de JS en muchas compañías. Ademas de ser el lenguaje que hizo posible en su día a tecnologías como Angular y Visual Studio Code.

Mi opinión del documental de TypeScript

El documental comienza con los principales creadores narrando cuáles fueron las causas para desarrollar este lenguaje dentro de Microsoft. Luego, muestra un poco el proceso de desarrollo y, posteriormente, el lanzamiento al público. En estas partes, podemos recordar las conferencias en las que fue anunciado.

Me llamó la atención, cómo comentan que querían liberarlo bajo una licencia abierta pero Microsoft no estaba acostumbrado a eso. Pero con la nueva gerencia les tocó evolucionar y lo consiguieron.

En el proceso de creación de TS, vemos como el lenguaje fue usado para construir Visual Studio Code; posteriormente el equipo de Angular (del rival Google), se unió para hacer que TypeScript soportara decoradores gracias al proyecto AtScript.

Pero en vez de contarte mas, te recomiendo que lo veas a continuación:

TypeScript Origins: The Documentary

Me pareció muy inspirador ver este documental de TypeScript. Ver la historia contada por los mismos creadores, observar como creció desde una idea para poder terminar otro proyecto, hasta ser uno de los principales lenguajes de programación, es muy placentero.

Ojalá hagan mas documentales de este tipo, tal vez uno de Visual Studio Code. Pues luego de ver este documental me dio curiosidad de cómo desarrollaron este editor.

Finalmente, te recomiendo aprender este lenguaje y hacer tu experiencia con JS mas placentera.

Deja un comentario

Mi experiencia en el BrazilJS Conf de 2019

Este año tuve la oportunidad de participar en el BrazilJS Conf del 2019. Para quienes no la conocen es la conferencia de JavaScript mas grande del mundo. Había enviado ponencia en las últimas 3 ediciones pero finalmente este año fui aceptado. Mis expectativas era que el evento iba a estar genial pero no sabía como era.

Cuando fui al escenario a realizar la prueba de sonido. Me sorprendí porque no sabía la magnitud del evento. El lugar contaba con puestos para 2000 asistentes y con 4 pantallas gigantes para mostrar la conferencia. Ademas que contaba con excelente organización para entretener a la audiencia y contar con 2 tarimas para no perder tiempo entre ponentes.

El formato de BrazilJS Conf 2019

El evento constaba de 3 días: el primero era de puros talleres y para los ponentes era el día de realizar pruebas. aquí tuve la oportunidad de ver un taller de Matías Johanson sobre el uso de redes neuronales en JavaScript, unas charlas de NIC Brazil y W3C sobre la des-centralización de la web. Pude entrar a una charla de marketing usando datos éticos, es decir, no obtenidos sin permisos de los usuarios o comprados a redes sociales. Me llamó la atención esta última porque no había pensado en que ahora el marketing se hace con datos robados de los usuarios.

El segundo día era el inicio real del evento. Me encantó que habían 2 tarimas, así cuando un ponente estaba por terminar el otro se preparaba y el cambio se hacía sin perder tiempo. También entre cada ponencia un grupo acústico tocaba la canción favorita del ponente entreteniendo la gente. El evento comenzó con un video introductorio de los organizadores, muy emotivo. Luego unas palabras de Jaydson Gomes sobre el trabajo realizado y lo que se esperaba allí. Pude entrar a varias charlas, todas muy buenas y algunas en inglés. Luego de finalizar el evento, varias asistentes organizaron una salida para compartir y conocernos mejor.

El último día seguía el mismo formato del anterior. Llegué un poco tarde por estar practicando mi charla y tenia que hacer una visita. Pero luego de dar mi charla pude disfrutar de todo el evento. En la sala de patrocinantes había un puesto para comprar camisetas donde aproveche y adquirí de VueJS y del evento. También habían unas barajitas con fotos de los ponentes del evento y podías pegarlos en un albúm. En los stands de patrocinios podías conversar con la gente de proyectos y ofertas laborales.

Mi ponencia sobre WebAssemby

Siempre que doy esta charla debo agregar contenido nuevo. Para este evento había agregado cosas nuevas como un demo de Doom 3, Google Keep, entre otros. Por eso no estaba preocupado por la calidad del contenido sino porque debía darla en inglés y no estoy acostumbrado a ello.

Traducí las láminas a portugués usando un traductor en línea. Posteriormente me ayudaron a acomodar algunos detalles. Me gustó ver a las personas emocionadas porque disfrutar el contenido escrito de mi conferencia en portugués. Recibí buenos comentarios en redes sociales sobre ello.

Miguel Useche hablando de Webassembly en el BrazilJS Conf del 2019
Mi auto-retrato antes de comenzar la ponencia. Noten la cantidad de gente, es la mitad porque del otro lado había más.

Creo que me fue bien. Estaba un poco nervioso por tener que hablar en inglés, ver las notas en español pero las láminas en portugués. Respecto a la cantidad de gente, era tanta que no era posible enfocarse en todos, así que no era un problema.

Miguel Useche hablando de Webassembly en el BrazilJS Conf del 2019
Miguel Useche hablando de Webassembly en el BrazilJS Conf del 2019

Palabras finales

BrazilJS Conf fue uno de los mejores evento que he estado. Una organización increíble, excelentes temas y conferencistas. El lugar estaba equipado con todo. La ciudad de Porto Alegre es muy bonita, la gente es demasiado amigable. La comida es excelente, sobre todo las carnes. Buenos dulces y chévere para conocer.

Si alguna vez les llama la atención ir a un BrazilJS Conf, no duden e ir.

Deja un comentario

Mi experiencia en el JSConf Colombia 2017 (Día 1/2)

El pasado 3 y 4 de noviembre se realizó en la ciudad de Medellín, Colombia. La conferencia mas grande de JavaScript de sudamerica: El JSConf Colombia 2017. En el 2015 quise asistir al evento por su gran calidad y por los ponentes, lamentablemente debido a que el individuo que se hace llamar presidente de mi país (Venezuela) cerró la frontera con Colombia no pude asistir. Pero 2 años después, tuve la grandiosa oportunidad de participar como ponente representando a Mozilla TechSpeakers.

El evento estuvo tuvo una duración de 2 días: uno para talleres y otro para las ponencias. En esta entrada os comentaré sobre el primer día del evento.

Inicio del evento

Una vez llegué al sitio se sentía la emoción de la gente, había como 400 personas en fila para retirar su camiseta y artículos del evento. Allí me conseguí a Leonard y Giovanni (mozilleros) y otras chicas de Venezuela. Pasamos luego al auditorio principal para llegar a la inauguración del evento.

El evento comenzó con una danza con música electrónica y con efectos visuales en el fondo. Me pareció interesante el contraste del baile con el tipo de música, nunca había visto ese tipo de combinación y era como un contraste de algo tradicional con algo moderno. Al finalizar, nos dijeron que los efectos visuales no eran pre-grabados sino se generaban dependiendo del ritmo/tono de la música, sorprendiendo a los asistentes.

Al finalizar Juan Pablo Buriticá dio unas palabras de bienvenida, experiencias en ediciones pasadas, la presentación del evento e hizo una dinámica para conocer de donde provenían los asistentes. De ahí cada quien pasaba a otras salas donde se dictaban los distintos talleres.

Los talleres

Para participar en los talleres del JsConf Colombia se debía hacer una inscripción previa. En mi caso pude asistir a todas las que quería. La primera fue la de Felipe Torres sobre WebVR, una tecnología para desarrollar sitios web para dispositivos de realidad virtual. A pesar de que muchos TechSpeakers hablan sobre ello, nunca había estudiado esa tecnología, por lo que el taller me pareció muy bueno. Consistió en una pagina con elementos básicos de realidad virtual, pero abarcando temas de geometría, perspectiva, HTML.

Luego del almuerzo, entré a la charla de Steve Kinney sobre PWA. Su estilo es muy gracioso y logra explicar las cosas de manera sencilla. Este taller se enfocó en dar una introducción a las Progressive Web Apps y como evitar los errores mas comunes que se suelen cometer al iniciarse con esta tecnología. A continuación fue a la de depuración en NodeJS, fue uno de los talleres mas técnicos y se explicó como mejorar la depuración del código al momento de desarrollar aplicaciones en el backend. Mi último taller del día fue el de Nathan White sobre contenedores. Me gustó mucho porque no fue sólo sobre Docker, sino que explicó como montar tu propia nube. Este taller prácticamente mostró como montar tu propio AWS EC2 con Kubernetes para desplegar instancias de aplicaciones en segundos.

Los talleres me parecieron muy buenos porque te dan una introducción a los temas pero despiertan curiosidad para investigar mas sobre ello. La variedad de temas fue alta, así que había contenido para todo público.

El ambiente en el lugar

No todo el evento fue estar dentro de los auditorios, en las afueras también podías ver personas conversando sobre desarrollo web. Habían unos puestos de las empresas patrocinantes para hablar de sus servicios, reclutamiento de personal (me parece genial porque mucha gente en esos eventos busca mejorar sus conocimientos y situación profesional). Obviamente había mucho material como calcomanías, folletos, juegos o artículos, que siempre buscamos como recuerdo. En estos momentos pude conocer en persona a Juan Herrera y Jorge Vergara. Quienes conocía solo por redes sociales, lo chévere es que fue por accidente y no algo planificado.

La salida con los ponentes

Luego de finalizar el primer día del JsConf Colombia, los organizadores nos llevaron a una salida social. Era un compartir para deleitarse de la comida paisa y jugar tejo. Como vivo cerca de la frontera con Colombia ya conocía el deporte gracias a los extranjeros que lo practican, pero fue muy divertido ver a influyentes del mundo de Javascript jugarlo. De hecho, jamas pensé ver a Myles Borins jugar trejo y lograr explotar la mecha, jeje. La salida me sirvió de oportunidad para conocer a Myles Borins, Steve Kinney y Suz Hinton. Personas cuyas carrera he seguido por Internet, jamás pensé que podía conocerlas y menos tener conversaciones con ellos.

Los ponentes del evento cenando
Los ponentes del evento cenando

Con esto concluye el primer día del evento, de verdad fue genial toda la organización, atención, ambiente, detalles, calidad de los talleres, el personal de protocolo, entre otros. Así que en la próxima entrada os contaré sobre el día final del evento donde se hicieron las ponencias principales.

Deja un comentario

Cómo instalar paquetes de bower y npm en Yii2

Actualmente cuando trabajas en el frontend (la parte visual) de una página web utilizas código JavaScript para realizar ciertas acciones tales como: animaciones, validaciones, interacciones, etc. Y con el auge de popularidad de este lenguaje, existen muchas librerías y complementos que facilitan el desarrollo. Por eso, hoy en día es normal que si realizas una aplicación en Yii2, utilizarás componentes visuales para manejar calendarios, validaciones de correo, manejo de modales, etc.

A pesar de existir una cantidad notable de extensiones de Yii2 para instalar complementos adicionales, no se puede comparar a la calidad y cantidad de librerías y frameworks disponible en npm y bower. Además, si eres un programador de Javascript, estarás acostumbrado(a) estas herramientas y te sentirás limitado en Yii2. Sin embargo, existe una forma de instalar software de npm/bower en tu aplicación utilizando composer, de esta manera puedes gestionar tus dependencias de Javascript y PHP en una sola herramienta.

Instalación del plugin de composer

Asumiendo que ya tienes instalado composer, solo debes instalar el complemento composer-asset-plugin mediante el siguiente comando:

php composer.phar global require "fxp/composer-asset-plugin:~1.1.1"

Agregando dependencias en tu aplicación de Yii2

Una vez instalado el complemento, para instalar los paquetes debes agregar al nombre del paquete original el prefijo npm-asset/ o bower-asset/ dependiendo del caso. De esta forma, si quieres instalar combodate debes colocar como nombre bower-asset/combodate. Luego con hacer php composer.phar update instalarás las dependencias requeridas en la carpeta /vendors.

Ejemplo para instalar un paquete de npm:

 {
   "require": {     
        "npm-asset/el-paquete-npm": "dev-master"
    }
}

Para instalar un paquete de Bower:

{   
  "require": {     
      "bower-asset/el-paquete-de-bower": "dev-master" 
  } 
}

¡Y listo! una vez que tienes las dependencias, puedes incluirlas en tu plantilla de vista o crear un Assets, la opción recomendada de Yii2 para el manejo de archivos/librerías externas, pues te permite definir dependencias y en que momento cargarlas, para optimizar la carga de tu sitio web.

Espero que te sirva esta guía y puedas disfrutar de todo el poder de Javascript para aplicarla en las vistas de tu aplicación realizada en Yii2, un gran framework de PHP.

Deja un comentario