Entradas

Selecciones - Octubre 2017

Imagen
Meisekimu: Apreciando las diferencias
Ignorar las diferencias puede privarnos de algo escencial. Apreciar las diferencias puede permitirnos construir un mundo mejor.


Egaku: ¿Quién escribe en limpio?
Hay una imagen que nos venden las peliculas, de un escritor sentado frente a una maquina, mecanografiando su novela pagina por pagina, hasta llegar al final. Las cosas no suceden de ese modo, si preguntas por ahi.


Youtube: En la Noche
Una video historia para Halloween

Egaku: En la Noche
El texto de la historia

Lo que aprendí hoy: Links 2017-10
Enlaces diversos que te puede interesar seguir.

Problemas vs Tareas

Resolvemos problemas cada día. Pero a veces no sabemos qué lo estamos haciendo, ni cómo. Y otras, nadie parece valorarlo.

¿Qué es un problema? Algo cuya solución no es evidente.

Si la solución fuera evidente ya no sería un problema, sino una tarea.

Por ejemplo, si fuera un pintor, tengo los utensilios y la habilidad para pintar tanta area de pared cada hora, ¿cuánto me demoraré en pintar cierta pared?, pues tanto tiempo. El camino es conocido y está libre. Es una tarea.

En cambio, sería un problema si alcanzar alguna parte de la pared no fuera evidente.

O, si en lugar de ser un pintor de brocha gorda tuviera que pintar un retrato. ¿Qué espera mi cliente?, ¿cuál será la pose adecuada para esta persona?, son preguntas cuya respuesta no es evidente. Es un problema.

Lo evidente ¿Qué es evidente? Depende de tus conocimientos y habilidades. Algo evidente para una persona puede no serlo para otra.

Cuando pagas con un billete algo que cuesta menos, es evidente para un adulto que le tienen que…

La paradoja del elegir

Imagen
La libertad de elegir es importante, pero el bienestar no se logra maximizando el número de opciones (conduce a parálisis, arrepentimiento, insatisfacción).
Hay un número, que debemos encontrar, de opciones saludables, que forman un límite necesario, la pecera donde podemos nadar sintiéndonos plenos.
Más allá de ese número, como hoy, esa pecera se formará espontáneamente con sufrimiento y desastre (y no nos sentiremos nada plenos a pesar de las infinitas opciones).
Parece inteligente generar infinitas opciones pero resulta que lo más sabio de elegir es elegir tus propios límites.

Simplificando el desarrollo

Webpack, Babel, TypeScript, Gulp, Sass, Stylus, Pug, son algunas de las cosas que se ven en el desarrollo frontend hoy en día.

Pug (Jade) permite escribir una especie de html sin brackets, que se ve más limpio y legible, y luego es traducido a html.

Sass y Stylus hacen algo parecido con el css.

CoffeeScript lo hacía con el javascript. Pero parece que va cayendo en deshuso, frente a TypeScript y ES6.

Pug te permite escribir html de manera más clara y sencilla y está bien.

Styles te permite escribir css de manera más clara y sencilla y está bien.

CofeeScript te permite escribir javascript de manera más clara y sencilla y también está bien.

Está bien que produzcas html, css o javascript de la manera que te resulte más cómoda y fácil de mantener.

Sospecho que muchos programadores provenientes de otras canteras, resintieron tanto las incomodidades de los brackets, y puntos y comas, que usaron sus potentes habilidades para construir herramientas que les recordaran sus lenguajes preferidos.

Emponderar a los usuarios

Cuando estaba en la universidad, retomé el contacto con las computadoras después de un largo tiempo y conocí el DOS de Microsoft.

Estaba frente a una pantalla negra con el prompt C:\> esperando a que ingresara algo. Cuando lo hacía, me respondía.

Me sentía fascinado.

Aprendí a usar casi todos los comandos de la consola, y a programar nuevos comandos.

En la consola command, se pueden ejecutar comandos cuyas salidas pueden ser entradas de otros comandos.Se pueden crear fácilmente nuevos comandos batch ejecutables desde la consola. Ya que los batch son archivos de texto simple y la consola tiene algunos comandos para generarlos.Un comando podría generar nuevos comandos dinámicamente. Es decir, un batch se podría generar dentro de la rutina de un comando y ser ejecutado luego dentro del mismo comando.Los programas de pantalla completa, aunque impresionantes, rompen el esquema de reutilización de comandos al apropiarse de toda la interfaz. Más tardee, conocí Linux y la consola de comando…

Tan simple como se requiera

Esta es la primera anotación en este blog.
En los lenguajes de programación que he aprendido, como Pascal, Java, Javascript, o PHP, las funciones y objetos permiten reutilizar ciertas soluciones.

También los patrones de programación son formas de reutilizar soluciones.

Las librerias, o bibliotecas, son colecciones de funciones y objetos. Los frameworks, son colecciones de patrones, que suelen usar a ciertas librerias.

Uno puede hacer más funciones y objetos y patrones para expresar la solución de manera más comprensible.

Sin embargo, lo que he observado en los proyectos donde he participado, es que simplemente usar funciones, objetos y patrones no es una garantía de menos complejidad, aunque sea esa la intención inicial.

Pienso que no es todavía muy claro cómo se deben usar las cosas para lograr más simplicidad.

No se trata de hacer simplemente menos código. Nombres de variables largos pero descriptivos son preferibles a nombres cortos y crípticos, o que requierean consultar un diccio…