frontenderos icon

Podcast

Newsletter

#192 Introducción a la Web de monetización

¿Sabías que puedes escribir tu propio React router en 500 lineas?

Introducción a la Web de monetización

Antes de la Web3 y las crypto currencies, hubo un momento en el que parecía que íbamos a tener pagos en la Web a nivel nativo a través de APIs, pero todo cambió cuando llegaron los crypto bros. Ahora, pasado el hype, esta regresando el interés por parte de la comunidad, y si quieres conocer más al respecto, te dejamos esta introducción a la monetización en la Web.

¿Sabías que puedes escribir tu propio React router en 500 lineas?

Usar herramientas como React Router, esta bien, pero si quieres aprender cómo funciona un router en React, te dejamos este artículo que te guiará a que puedas escribir tu propio Router en 500 lineas.

El toolkit para recomendar la accesibilidad web

Cuando trabajamos con Accesibilidad Web, trabajamos en dos frentes, por una parte esta la educación y concientización, y por otra parte, trabajar a nivel diseño y programación web. Usualmente lo primero es lo mas difícil, y para que puedas hacer buen trabajo en este apartado, toma en cuenta estas recomendaciones.

GUÍA 📖 
14 cosas a revisar antes de desplegar un sitio web

¿Estas a punto de sacar un sitio web a producción, y no sabes si estás listo? Prueba revisar estas 14 cosas básicas antes de hacer el deploy.

Vue Suspense, todo lo que necesitas saber

¿Quieres aprender a utilizar Suspense en Vue? Con esta guía vas a aprender todo lo que necesitas para tus proyectos.

HERRAMIENTA 🛠️ 
AstroDB

El negocio de los meta-frameworks JavaScript está en el hosting y en las bases de datos. Esto lo entendió Vercel y ahora también lo esta entendiendo Astro al lanzar su propio servicio de base de datos SQL llamado Astro DB. Con una capa gratuita para que puedes probar ya, tiene todas las features que puedes esperar de un servicio de este estilo.

LANZAMIENTO 🚀 
8 características nuevas en V8

V8l sigue mejorando, y en los últimos meses ha habido muchas actualizaciones para soportar las ultimas características de ECMAScript, solucionar bugs y mejorar el desempeño del motor. De las nuevas características más destacadas, esta el nuevo compilador Maglev, mejoras en WASM y mejoras en el desempeño general.

UN DÍA COMO HOY 🗓️ 

El 21 de marzo de 2006, a las 9:50am, Jack Dorsey envía el primer mensaje que luego será conocida como "tweet" o "tuit" con el texto: “just setting up my twttr” en español (sólo la creación de mi twttr).
Twitter es un servicio de microblogging con sede en San Francisco, California.
Twitter desarrollado por Jack Dorsey, Evan Williams y Biz Stone también colaboraron en el proyecto Evan Henshaw-Plath y Noah Glass.
Aunque Dorsey fue su diseñador principal de lo que entonces era conocido como "twttr".
Al principio sólo la compañía lo usó en forma interna hasta que lo lanzó oficialmente al público en octubre de 2006.
En marzo de 2007, ganó el premio South by Southwest Web Award en la categoría de blog.
Desde su lanzamiento Twitter ha ganado popularidad mundialmente y se estima que tiene más de 200 millones de usuarios activos en el mes.
Twitter es apodado como el "SMS de Internet”.
Twitter permite enviar mensajes de texto plano de corta longitud, con un máximo de 140 caracteres llamados tuits, que se muestran en la página principal del usuario.
Los usuarios pueden suscribirse a los tuits de otros usuarios, a esto se le llama "seguir" y a los usuarios abonados se les llama "seguidores".
Por defecto, los mensajes son públicos, pudiendo difundirse privadamente mostrándose únicamente a unos seguidores determinados.
Los usuarios pueden tuitear desde su servicio web, con aplicaciones oficiales externas (para smartphone), o mediante el Servicio de Mensajes Cortos (sms) disponible en ciertos países.

VACANTE 💼 
Sr. Front End Engineer

Ubicación: Área Metropolitana de Ciudad de México (Remoto)
Empresa: Aha!
Requisitos: Más de dos años de experiencia trabajando en React; Producir páginas React escalables y con uso intensivo de datos; Experiencia en la creación de funciones (idealmente en una empresa SaaS de alto crecimiento); Colaborador activo con equipos de producto.
Beneficios: El rango de salario base para este puesto en los EE. UU. está entre $ 110 000 y $ 190 000. La compensación en efectivo también incluye participación en las ganancias y contribuimos con un porcentaje de su salario total cada mes para su jubilación. Planes médicos, dentales y de la vista (para muchos compañeros de equipo, cubrimos el 100% de las primas) Hasta 200 horas de tiempo libre remunerado al año para gastar como quieras 30 a 90 días de licencia parental remunerada y de cinco a 10 días de licencia remunerada para cuidados y duelo Hasta $1,000 al año para educación de terceros, junto con tiempo libre remunerado para sumergirse en el aprendizaje Oportunidades de voluntariado durante todo el año.

Para conocer más de esta vacante, entra aquí. 🤞 

RESULTADO DEL CHALLENGE DE AYER 🧐 
¡Gracias a los que contestaron el challenge de ayer! Aquí te dejamos nuestra respuesta:

Para encontrar el máximo producto de dos números en un array, una forma eficiente es primero ordenar el array y luego considerar los posibles candidatos para el máximo producto. Los candidatos son el producto de los dos números más grandes (los últimos dos números en un array ordenado) y el producto de los dos números más pequeños (los primeros dos números en un array ordenado), ya que dos números negativos pueden dar un producto positivo grande. Aquí está cómo se podría implementar:

function maxProducto(array) {
    // Ordenar el array en orden ascendente
    array.sort((a, b) => a - b);

    // Calcular el producto de los dos números más grandes
    const productoFinal = array[array.length - 1] * array[array.length - 2];

    // Calcular el producto de los dos números más pequeños
    const productoInicio = array[0] * array[1];

    // El máximo producto será el mayor de estos dos productos
    return Math.max(productoFinal, productoInicio);
}

// Ejemplo de uso
console.log(maxProducto([2, 3, 5, 7, -7, 5, 8, -5])); // Debería retornar 56 (-7 * -8 = 56)
console.log(maxProducto([-10, -20, 0, 3])); // Debería retornar 200 (-10 * -20 = 200)
  • La función maxProducto acepta un array de números enteros como argumento.

  • Primero, se ordena el array en orden ascendente utilizando el método sort con una función de comparación que ordena los números de menor a mayor.

  • Luego, se calcula productoFinal como el producto de los dos últimos números en el array ordenado, que son los dos números más grandes.

  • También se calcula productoInicio como el producto de los dos primeros números en el array, que podrían ser los dos números negativos más grandes (en términos de valor absoluto), resultando en un gran producto positivo.

  • Finalmente, se retorna el mayor de estos dos productos utilizando Math.max.

CHALLENGE DE HOY ⚔️ 
Agrupar Anagramas

Dado un array de strings, debes agrupar los anagramas juntos. Recuerda, los anagramas son palabras o frases formadas al reorganizar las letras de otra palabra o frase, utilizando todas las letras originales exactamente una vez. Por ejemplo, las palabras "amor" y "roma" son anagramas.

Tareas a realizar:

  1. Implementa una función agruparAnagramas que acepte un array de strings como argumento.

  2. La función debe retornar un array de arrays, donde cada sub-array contiene palabras que son anagramas entre sí.

  3. Las palabras dentro de cada grupo de anagramas no necesitan estar en un orden específico, pero los grupos deben estar ordenados por tamaño de grupo, del más grande al más pequeño.

Ejemplo de uso:

console.log(agruparAnagramas(["amor", "roma", "luz", "ser", "res", "zul"]));
// Debería retornar [["amor", "roma"], ["ser", "res"], ["luz", "zul"]]
  • Considera una forma de normalizar las palabras para que los anagramas tengan la misma representación, como ordenar las letras de cada palabra alfabéticamente.

  • Puedes utilizar un objeto para mapear estas representaciones normalizadas a los grupos de anagramas.

  • Finalmente, convierte los valores de este objeto en el formato de salida deseado y organiza los grupos por tamaño.

Comparte tu respuesta en redes sociales y etiquétanos (@frontenderos), compartiremos nuestra respuesta en el issue de mañana. 😎 

Tu feedback nos ayuda a mejorar

Por favor elige una opción y dinos lo que te gustó y lo que no. Leemos todas las respuestas 👀

¿Qué te pareció el email de hoy?

Iniciar Sesión o Suscríbete para participar en las encuestas.

¡Hasta mañana! 🤟