Image for post
Image for post

Cuando tenemos que comparar dos soluciones software solemos empezar por hacer dos listas de features. Luego las combinamos en una sola y ponemos en la segunda columna el software A y en la tercera el software B con ✅ verdes y ❌ rojas.

También cuando leemos un pliego vemos una larga lista de features deseadas, a veces poco relacionadas entre sí, y a veces incluso difíciles de implementar en la misma solución.

Voy a intentar convenceros de que las listas de features por sí solas son inútiles tanto para elegir entre varias soluciones como para especificar un programa.

Y empezaremos con algunos ejemplos de productos que salieron con una lista de features que era un subconjunto de sus competidores y aún así vencieron claramente. …


Durante esta pandemia he observado algunas decisiones en materia educativa que han limitado la educación de algunos estudiantes en pro de la igualdad.

Por ejemplo, cuando se cerraron las escuelas y se propuso continuar con la docencia online, muchos docentes señalaron que esta educación debía limitarse a repasar y no impartir materia nueva porque haría que se descolgasen aquellos que no tenían acceso a los medios para seguirla.

Creo que la idea de frenar el aprendizaje de unos para mantener a toda la clase en el mismo nivel se da de normal en la escuela y es muy injusto con muchos estudiantes, un atentado contra el futuro del país y además (y en contra de lo que se cree comúnmente) crea una enorme desigualdad. …


Image for post
Image for post
Photo by James Pond on Unsplash

You wrote some code, and it’s useful. Of course, you want to use it in different projects or you may even want to publish it for more people to use it. You can upload the source somewhere and write instructions about how to use it. But there is a more standard and simple way: publish it as a library.

When you publish your library, you or other people can get it very easily by typing:

npm install your-super-library

And use it with:

import { somethingUseful } from “your-super-library”;

This enables efficient code reuse and creation of projects based on smaller, reusable pieces. …


Image for post
Image for post
Photo by Rick Mason on Unsplash

A JavaScript module may be seen as a lego piece, it has some tubes on the bottom and some studs at the top and this simple contract makes it easy to connect some modules together. Inside the module there may be anything, and the internals of the module don’t affect the internals of other modules.

This contract that makes modules connectable to others, is called the module definition. Currently we have lots of different module definitions (IIFE, commonJS, ESM, AMD, UMD, esnext…) so we need to understand them specially if we want to publish our code.

Prehistory

When JavaScript appeared on browsers it was added with <script> tags and every function or variable was global. That was easy for smaller projects but made it difficult to reuse code created by different teams because some functions or variables could be unintentionally shared or overridden between different libraries. …

About

Javi Carrasco

Frontend team lead at edorasware

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store