Saltar al contenido

El blog de Skatox Entradas

Breve resumen del Keep Coding Java 2023 en Cúcuta

El 10 de agosto pasado, el Hotel Holiday Inn de Cúcuta fue el escenario del evento «Keep Código Java», organizado por la empresa Pragma. El cual resultó ser una buena forma de entrar al mundo de Amazon Web Services (AWS) a través de sus dos presentaciones que no incluyeron ningún tipo de publicidad. Además, los ponentes compartieron sus experiencias laborales, enriqueciendo aún más el conocimiento adquirido durante esa jornada.

El inicio de Keep Coding Java

El evento comenzó con la presentación de Jefferson Jaramillo, el Director de crecimiento de Pragma para los departamentos de Santander y Norte de Santander. Nos habló un poco sobre la empresa, de que iba a hacer el evento y de las vacantes disponibles en la empresa.

Presentación de Jefferson Jaramillo
Presentación de Jefferson Jaramillo

Posteriormente dio inicio a la primera de dos charlas del Keep Coding Java 2023.

Servicios de AWS para Desarrolladores

Esta presentación fue ofrecida por Carlos, quien nos brindó una excelente explicación sobre los diversos servicios de AWS disponibles para diferentes tipos de desarrolladores, tales como aquellos que se enfocan en el Frontend, Backend, la administración de bases de datos, desarrollo móvil, DevOps, entre otros.

Lo que realmente me encantó de su presentación fue cómo simplificó la comprensión de estos servicios al clasificarlos por roles, haciendo que la información resultara mucho menos abrumadora. Además, proporcionó alternativas a los servicios, detallando las diferencias tanto en términos de costos como de funcionalidad, y brindando valiosos consejos sobre cuándo y en qué casos debería implementarse cada uno de ellos.

Arquitectura de microservicios en AWS

La última charla del día fue presentada por Carlos Suárez, quien ofreció una excelente introducción a una arquitectura que, aunque se denomina «básica», incluye todos los componentes esenciales que un servicio en la nube debe tener. En ella se pudo ver como algunos de los componentes de la charla anterior se interconectan entre si para ofrecer soluciones a problemas mayores.

Carlos mostró varias arquitecturas de ejemplo, de las cuales algunas eran partes de implementaciones reales y permitiendo conocer como son las aplicaciones actuales que se hospedan en la nube.

Premiación

Al final de ambas charlas del Keep Coding Java se realizó una rifa de material a varios de ls asistentes. Permitiendo dar un cierre ameno y divertido al evento. Lamentablemente no gané nada esta vez pero será para la próxima 😉

Rifa de premios a los asistentes
Rifa de premios a los asistentes

Eventos presenciales

Me alegra que se haga ese tipo de eventos en la ciudad. Luego de la época de la pandemia de COVID-19 se han reducido considerablemente y siento que se ha perdido la costumbre de hacer eventos presencialmente. Esperemos que salgan mas eventos de este tipo que beneficien a la comunidad local.

Recuerden apoyar este tipo de eventos asistiendo en persona.

Deja un comentario

Kevin Mitnick ha muerto

Lamentablemente el pasado 16 de julio del 2023 ha fallecido Kevin Mitnick. El hacker mas famoso de todos los tiempos, tal vez porque fue el primero en lograr vulnerar muchas empresas famosas y ser juzgado con muchos cargos en una época donde la tecnología digital era algo desconocido para la mayoría.

Quienes me conocen, saben que me dediqué a la informática luego de ver la película Hackers de 1995. Cuando empecé a indagar sobre el tema, en todos lados aparecía el nombre de Kevin Mitnick y la frase «Free Kevin» porque estaba preso. Desde allí se convirtió en uno de mis héroes y persona influyente en mi carrera.

Kevin Mitnick hackeando desde su laptop

Mi seguimiento a Kevin inicialmente estuvo influenciado por la película biográfica conocida como Operation Takedown. Donde se muestra la operación que se realizó por parte del FBI y el famoso hacker Tsutomu Shinomura. A pesar de estar basada en el libro escrito por Tsutomu, es entretenida y permite ver varios de los ataques que realizó Kevin, como el acceso a Motorola usando ingeniería social, como rastreaba a los policías que lo perseguían, entre otros.

Es entretenida, no 100% real y la puedes ver a continuación en inglés:

Hackers 2 Takedown 2000

Luego de eso, pues Kevin volvió a aparecer en los medios como en el 2003 luego de haber salido de la cárcel. En esa época ya estaba estudiando un poco de seguridad informática y empecé de nuevo a ver su actividad. Kevin ya se había dedicado a un lado mas profesional y ético. Posteriormente fundó su empresa de seguridad, escribió libros y asistía a conferencias mostrando las últimas técnicas de como puedes atacar personas.

Nunca dejó de renovarse y de hecho, una de sus últimas conferencias me encantó muchísimo porque puedes ver como cualquier persona con forma inocente puede robarte información de tus tarjetas con solo pasar cerca de ti:

World's Most Famous Hacker Kevin Mitnick & KnowBe4's Stu Sjouwerman Opening Keynote

Ghost in the wires

Ghost in the wires es uno de los mejores libros escritos por Kevin Mitnick, si te apasiona el mundo de la seguridad informática no puedes perdértelo. En el narra todas sus historias desde que empezó con teléfonos (phreaking) hasta sus ultimas técnicas para hackear empresas y vulnerarlas. Hace tiempo hice un análisis de su libro que puedes leer a continuación:

Si deseas entrar a este mundo de hackers o conocer historias reales, te recomiendo este libro, es imperdible y escrito por uno de los mejores en el campo.

Palabras finales

Bueno, nos deja una de las leyendas de la seguridad informática. Odiado por muchos pero admirado por otros. Gracias sus labores hoy en día tenemos una mejor seguridad de la información y telecomunicaciones, permitiendo vivir una vida digital mas protegida y confiable, ocasionando que avance mas nuestra sociedad y en mi opinión: mejorándola.mis

Gracias por tu labor Kevin y descansa en paz.

Deja un comentario

Mi opinión de Tetris (2023)

Como fanático de los video-juegos, quería ver esta película principalmente porque en el trailer de Tetris vi que se enfocaba en el programador, conocía un poco la historia y quería ver mas detalles. Pero luego de verla me encantó mucho porque resultó una buena película tanto por la forma en como narran la historia sin aburrir (seamos sinceros, las historias de informática son medio aburridas en la vida real) y sobre como muestran lo que es vivir en comunismo sin entrar temas políticos.

¿Cual es el argumento principal Tetris?

No voy a dar muchos detalles para evitar revelar información interesante. Pero la trama consiste en el proceso de poder licenciar Tetris al resto del mundo. ¿Es sólo eso? Pues resulta que este proceso no fue tan fácil porque el videojuego fue creado por Alekséi Pázhitnov en 1984 en plena Unión Soviética. Así que te puedes imaginar todo el problema para obtener derechos de autor en un territorio comunista.

¿Vale la pena verla? ¿En qué medio?

Realmente se la recomiendo si les gusta los videojuegos, las películas con problemas legales en la trama, conocer como es la vida en un sistema comunista y para pasar un buen rato con una excelente historia. Puedes saber mas de esta película viendo el trailer a continuación:

Tetris (2023) - Tráiler Subtitulado en Español

Actualmente solo está disponible en la plataforma de Apple+, pero sabemos que existen alternativas no legales que puedes usar para verlas.

¡Así que mírala y luego a jugar Tetris!

Deja un comentario

React vs Vue: ¿Cuál usar?

Este es un artículo que quería publicar hace un par de años. Quería escribir una comparación breve de React vs Vue para que cualquier persona con deseos de empezar con un nuevo proyecto o aprender front-end tenga una base de cual elegir. Pero siempre quedaba en borrador porque sentía que necesitaba mas experiencia con React (Vue lo uso diariamente en mi trabajo). Pero con la actualización de mis plugins de WordPress he logrado trabajar mas con React y poder hacer una comparación.

Comparación inicial entre React vs Vue

Algo que tienes que tener claro es que ambas tecnologías son librerias. No incluyen todos los componentes para hacer SPA. Pero si permiten crearlas y son la base para crear buenas interfaces dinámicas y ligeras.

Ambas tienen una funcionalidad similar pero con una sintaxis y forma de resolverlo diferente. Por ello, cuando quieres saber de React vs Vue debes enfocarte en cual se te hace mas fácil o te beneficia para tu próximo proyecto.

Ninguna es mejor que la otra, y todo se reduce a facilidad de conseguir programadores, documentación y cual se adapta a tu manera de pensar. Por eso lee los siguentes puntos que me parecen importante para que puedas elegir tu próxima librería de frontend.

Curva de aprendizaje y sintaxis

En mi opinión Vue es el mas fácil de aprender. La sintaxis es HTML con unos atributos especiales como v-if, v-if, v-model que permiten controlar el flujo de ejecución o generación del HTML, de resto es HTML estándar usando {{ }} (doble llaves) para mostrar las variables.

Actualmente posee dos formas de crear los componentes: usando Composition API y Options API. La diferencia entre ellas, es que la primera es parecida a la de React y esta enfocada en la facilidad de importar y reutilizar código. El otro, es la versión clasica donde creamos un objeto del componente con llamadas a los metodos, propiedades, datos, entre otras cosas.

También Vue tiene conceptos como variables computadas y asignación de modelos, que abstraen procesos que se harían manuales en otras librerias pero aqui se hacen de forma automática y podemos, por ejemplo, tener una variable que se compute automaticamente ante cambios, sin preocuparnos por desarrollar el proceso de actualización de la misma.

Aquí puedes ver un ejemplo de un componente sencillo que usa Composition API:

import { ref } from 'vue';

export default {
  setup() {
    const mostrarMensaje = ref(false);
    const nombre = 'María';

    const toggleMostrarMensaje = () => {
      mostrarMensaje.value = !mostrarMensaje.value;
    };

    return {
      mostrarMensaje,
      nombre,
      toggleMostrarMensaje
    };
  },
  render() {
    return (
      <div> 
        <h1>¡Bienvenido/a, {nombre}!</h1>
        <button onClick={toggleMostrarMensaje}>
          <span v-if="mostrarMensaje">Mostrar mensaje</span>
          <span v-else>Ocultar mensaje</span>
        </button>
        <p v-if="mostrarMensaje">Este es un ejemplo de sintaxis de renderización en Vue.</p>
      </div>
    );
  }
};

En cambio React usa JSX para renderizar los componentes. Es una sintaxis que mezcla XML con JS. Utiliza JS para controlar la lógica de renderizado y luego etiquetas HTML para definir los componentes y elementos de la página. Pero no es 100% igual, hay atributos como las clases que se llaman className, en vez de class y otros detalles que debes aprender.

Respecto a la parte de datos, utiliza algo llamado hooks que nos permite reutilizar el código mas facilmente. Aqui la data se maneja con estados. En mi opinión en React como no se abstraen tantas cosas, puedes tener mayor control de tu componente pero requiere que comprendas mejor el ciclo de video de ellos para obtener mejores resultados.

Aquí puedes ver un ejemplo de un componente sencillo que usa hooks:

import React, { useState } from 'react';

const Saludo = () => {
  const [mostrarMensaje, setMostrarMensaje] = useState(false);
  const nombre = 'María';

  const toggleMostrarMensaje = () => {
    setMostrarMensaje(!mostrarMensaje);
  };

  return (
      <div>
        <h1>¡Bienvenido/a, {nombre}!</h1>
        <button onClick={toggleMostrarMensaje}>
              { mostrarMensaje ? 'Ocultar mensaje' : 'Mostrar mensaje'}
        </button>
        { mostrarMensaje && <p>Este es un ejemplo de React JSX.</p> }
      </div>
  );
};

export default Saludo;

Aunque si observan ambos casos la sintaxis es muy similar, con saber buen HTML, no importa si es React vs Vue. Respecto a la sintaxis general

Documentación y comunidad

React debido a su popularidad posee una comunidad mas grande que provee mayor información y contenido. La documentación oficial es muy buena y enseña su uso sin importar que no tengas experiencia en la librería. Está dirigida a todo publico y me parece que nunca tuve dificultad para conseguir información para resolver problemas con React.

Vue también tiene una documentación muy buena, pero no es tan detallada. La comunidad es mas pequeña y en algunos casos debido a esto, no encontrarás mucha información o tutorial como los que existen en React.

En realidad ambos tienen documentación que te permiten aprender a usar estas tecnologías, solo que la de React tiene mas forma de tutorial y por el tamaño de su comunidad, te será mas fácil de encontrar solución a tus problemas.

Developer tools

Ambas librerías poseen herramientas para los navegadores a través de una extensión. En mi opinión las de Vue son mas cómodas, soporta gran variedad de tecnologías, permite ver mejora la información y son mas sencillas.

En cambio las de React, me pareció menos potente. A pesar de que puedes ver todos los componentes, no puedes editarlo o hacer operaciones avanzadas sobre los componentes. Y hay limitaciones como no poder usarlas dentro de un iframe que le quitan puntos.

Herramientas de desarrollo de React en Firefox

Pero ambas funcionan correctamente, permiten interactuar con los componentes y cumplen con el objetivo principal de ayudar al programador ver como se renderizan los componentes y ver las variables internas.

Mis recomendaciones

Si estás comenzando en el desarrollo front-end, considero que Vue es la opción ideal debido a su curva de aprendizaje suave y el uso de HTML simple para la creación de componentes visuales. No obstante, si tu objetivo es adquirir habilidades que te ayuden a conseguir trabajo, React es la elección más acertada debido a su mayor popularidad en el mercado laboral. Además, es posible encontrar una mayor cantidad de recursos e ejemplos para aprender, aunque es importante tener en cuenta que se requerirá un dominio previo de JavaScript y mayor esfuerzo inicial para dominarlo por completo.

¡Elige el que te parezca mas cómodo y se ajuste a tus necesidades! Comenta cual usas tú y por qué.

Deja un comentario