Alpha's Manifesto

A black and white figure's thought-hive

Lo que no se sabe que no se sabe

Manejo del conocimiento, parte 2

Temo por cualquiera atrapado entre lo que sabe y lo que todavía no sabe que no sabe.

— Cecil, Pilot (Welcome to Night Vale)

Tiempo atrás hice un post sobre consejos que yo tenía para iniciarse en la práctica de la programación, pero sobre aspectos que no tenían que ver con la tecnología. (“Consejos para un no-programador“). Hoy, uno de esos conceptos volvió a mi recargado, y quisiera elaborar sobre él: no saber que no se sabe.

(Read more →)

Las puertas de la percepción

¿Qué mundo nos ocultan nuestros sentidos?

Eye: Doors of perception

Un zorrinitoUn zorrinitoUn zorrinitoMedio zorrinitoReview-NoSkunk

Hace un tiempo leí Las Puertas de la Percepción, de Aldous Huxley. Además de ser un libro poco común en sí, me llamó la atención la temática: un ensayo de un experimento personal de Huxley sobre la mezcalina.

Lo que me sorprendió fue la precisión con la que pudo manifestar las sensaciones que experimentó. No indagó tanto en los sentimientos físicos como en los psicológicos y cómo su percepción del mundo variaba, incluso teniendo en cuenta que se encontraba bajo un estado de conciencia alterado.

Ahora, hay un poco más que una experiencia con drogas.

(Read more →)

La visualización y el espiritismo

¿Por qué es tan importante visualizar?

Perception (small)

(“Perception”, imagen cortesía de Katarsium)

Aparentemente, visualizar no es para todos. No me refiero a imaginar cosas, sino a literalmente poder visualizarlas, como si estuvieran frente a los ojos. Esta es una habilidad/fenómeno llamada Closed-eye hallucination, o closed-eye visualization. Aparentemente, cuando llegan a ser lo suficientemente vívidos como para parecer objetos reales, reciben el nombre de Remote Viewing, bajo la premisa que uno está en el plano espiritual interactuando con objetos que no están físicamente delante de uno.

Para un poquito más de background, hay muchos niveles a los que esto puede ocurrir, y no es común que ocurra en la gente. Los primeros niveles son visualización de colores y un poco de ruido o variación en los tonos del color que realmente se ve. Estos no deben ser confundidos con las pequeñas manchitas que corresponden al líquido de la córnea o a suciedad en el ojo. Estos son totalmente normales y ocurren muy frecuentemente, pero los siguientes niveles, en donde ya se involucran objetos de cierta complejidad, o incluso superposición de dichos objetos con objetos del mundo real solo puede ser alcanzada por la mayoría de la gente con el uso de psicotrópicos. Para una minoría de la gente, esta habilidad puede desencadenarse de forma natural y hasta voluntaria.

(Read more →)

Git, Parte 1

Un fauvista con cubiertos de gala

No hace mucho que, gracias a un proyecto paralelo a mi trabajo, estoy aprendiendo a usar Git. Encontré que es una herramienta sumamente compleja y flexible, distribuida y rápida.

Un poquito de historia

Git, para quién no lo sabe, es un sistema de control de versiones, distribuído, enfocado en la velocidad, y que fue desarrollado por Linus Torvalds exclusivamente para el desarrollo de Linux, luego dejándolo libre para su uso indiscriminado. La historia es algo humorística, ya que, en pocas palabras, Linus decía que todos los sistemas de control apestaban de una forma u otra, y quiso hacer algo que fuera bueno de verdad. Quizá no estén de acuerdo con que sea tan superior, pero tienen que aceptar que es realmente radical. Si no saben por qué, sigan leyendo.

Con su primer release en el 2005 y ganando más popularidad en la actualidad, Git ha probado ser eficiente y un buen recurso para el control de versiones. Mejor aún, para el programador.

De qué va a tratar esto

Soy un novato todavía, pero quiero compartir mis pequeños avances con Git como para que los demás puedan aprender conmigo. Suelo trabajar mucho en Windows y si bien mis primeras experiencias fueron con Git Extensions,  al final el uso de la consola terminó siendo mucho más efectivo. Git Extensions mismo viene con una consola y si están en Linux, hay versiones de Git de sobra que pueden utilizar.

Nuevamente, decía que soy solo un novato por ahora, y si bien creo tener razón en lo que voy a afirmar, entiendo que puedo estar totalmente equivocado. Sientansé libres de contactarme y corregirme. Estoy dispuesto a hacer crecer esto todo lo que sea necesario, o de hacer muchas entregas como para aportar información interesante. No sé en qué terminará esto, pero mientras más informativo, mejor.

La filosofía de Git

Git, a diferencia del resto de los sistemas de control de versiones, funciona de una forma tan granular que nos permite generar nuestro propio proceso en lugar de adaptarnos a un proceso estándar. Hay quienes prefieren trabajar de alguna forma y quienes prefieren trabajar de otra, pero una vez que se entiende bien la filosofía de Git, es todo , en el fondo, lo mismo. Comencemos.

La filosofía de Git, en pocas palabras, es de apartarse del trabajo diario del programador (o diseñador, o lo que sea que hagamos) y dejarnos hacer nuestro trabajo. Git se encargará, cuando se lo indiquemos, de identificar las diferencias, y de convertirlas en cambios graduales que querremos versionar de forma conjunta o de forma separada. Cambiar un archivo dos veces no implica un único cambio. Cambiar varios archivos no implica cambios separados. Todo queda a nuestra discresión.

Y eso es parte de lo importante: Git nos permite hacer nuestros cambios de una forma “ordenada” y hasta semántica. (Me gusta mucho últimamente esa palabra.) Podemos dar determinado significado al progreso de nuestros cambios, de forma que tengamos controlado cuando podemos volver atrás y cuándo podemos seguir adelante. Cabe destacar que ambos son posibles en cualquier punto de nuestro trabajo. Más adelante se darán cuenta de por qué digo esto.

Para aquellos que estábamos acostumbrados a VSS, TFS o SVN, nos daremos cuenta de que es algo distinto. Quizá los que usaban SVN desde la consola lo encuentren, en algo, similar, pero la filosofía en la que se manejan los cambios es totalmente distinta. Se darán cuentas que cosas que por lo general son imposibles de hacer, son totalmente naturales, y de hecho, se hacen todo el tiempo. Esa es, en pocas palabras, la filosofía de Git: No ponerse en el camino del programdor. Ser una herramienta, no un obstáculo.

Un sistema distribuído

Distribuído, cloud computing y todo lo demás es un término exageradamente abusado hoy en día. Todos sabemos las ventajas que esto tiene y en general por qué convienen (o por qué no). En el caso de Git, es realmente una ventaja, y no tenemos por qué sufrirla si un sistema distribuído no nos conviene.

Que Git sea distribuído significa que no hay ningún repositorio central, ninguno vale realmente más que otro. Por supuesto, muchas veces nuestra organización hace que hagamos de uno de ellos el repositorio central, pero cualquiera de ellos podría hacerlo, y esto significa que los repositorios centrales también pueden invertir su rol de a ratos. Supongamos que Alice y Bob se copian un repositorio central de Carlos (esto se llama clonar). Ambos trabajan sobre A y B, pero Carlos también sigue trabajando en C. Si Bob quiere obtener la última versión de todos ellos (así convirtiéndose en un repositorio central por un momento), sólo tiene que “jalar” los datos (pull) desde los repositorios A y B. Cualquiera de ellos puede hacer lo mismo.

Mejor aún, con los permisos necesarios, cualquiera de ellos puede “empujar” cambios (push) a los otros repositorios. Claro, que si no hubiera reglas, todo sería un descontrol, pero Git nos permite acomodar la organización como mejor queramos. Los repositorios son gratis, ocupan poco espacio y pueden clonarse infinidad de veces.

Se imaginan que con una característica tal, cada repositorio copia es, en cierta forma, un backup del repositorio central (o del que designemos como repositorio central). Cada cambio puede pasar por un proceso separado y por una cantidad de repositorios distinta hasta llegar a estar presente en todos lados. “Qué desastre!”, pensarán. Y eso les comienza a dar la idea más importante: Git es una herramienta muy avanzada, podemos realmente hacer desastres catastróficos con ella, pero también podemos hacer procesos elegantes y simples, sin comprometer las necesidades.

Un ejemplo real: en un proyecto en el que actualmente estamos trabajando, A, B y yo (yo seré C), tenemos un repositorio central en GitHub, online. Cada uno de nosotros tiene su fork (copia) del mismo repositorio también en GitHub, y a la vez, cada uno de nosotros tiene una copia local. Todos trabajamos en la copia local, hacemos nuestros branches, commits, etc. Cuando es necesario, empujamos nuestras cosas a nuestro repositorio de GitHub, de forma que ambos están sincronizados. Cuando el momento es el apropiado, enviamos pushes al repositorio central. Cada uno de nosotros tiene acceso al repositorio central de la misma forma que al suyo, lo cual permite muchas veces arreglar errores del pasado (sí, Git permite eso) pero en general, esta estrategia ayuda a sincronizarnos. A veces trabajamos trayendo y llevando cosas entre nuestros repositorios, sin uso del central, hasta que una característica esté lo suficientemente madura.

Dejo esto por ahora. Prefiero hacer los posts cortos y que sean muchos, a que sean grandes, largos y nadie los lea.

Soy un zorrinito distribuído.

Link del día: Algo desde la nada

Justo ayer me encontré discutiendo este tema con LG, así que me pareció apropiado publicarlo.

Resulta que, entre las cosas curiosas que la ciencia moderna nos trae, MicroSiervos publicó un link a un artículo llamado Existence: Why is there a universe?. El artículo, no demasiado técnico pero sí informativo, nos cuenta sobre las implicancias “filosóficas” y poco intuitivas del vacío cuántico y el principio de incertidumbre. Básicamente, que es más posible que todo haya aparecido de la nada que el no haberlo hecho. Al mismo tiempo, también divagan sobre la idea de cómo es físicamente imposible que exista la nada absoluta, bajo la concepción de la mecánica cuántica que, hoy por hoy, parece ser la que está más acorde con nuestro universo.

Por supuesto, esto es el resultado de mucho trabajo teórico, y luego con experimentos se estarán comprobando o desmintiendo. El tiempo dirá (si es que la respuesta se encuentra dentro del tiempo).

Soy un zorrinito filosófico.

Link del día: Zen en el Arte del Tiro con Arco

Le debo este link al señor SM, quién me ha provisto de dicho texto para leer, partiendo desde una afinidad propia suya para este arte (el del tiro con arco), y rozando los conceptos del Zen para un muy buen ejemplar y testimonio.

El libro puede encontrarse para leer directamente aquí, en versión PDF: Zen en el Arte del Tiro con Arco, y, por supuesto, debo atribuir el archivo a la gente de Textos Monásticos, un blog dedicado a “lecturas útiles para monjes y eremitas“. Pueden ver una versión en inglés aquí

El texto en sí me parece una historia muy interesante, y que de alguna forma devela mucho de aquello que no es fácil develar para nosotros – gente de pensamiento lógico occidental – cuando de unión con la espiritualidad se trata. Cuidado, no estoy hablando de espiritualidad como la del concepto religioso que muchos tenemos, sino de una forma mucho más práctica y participativa, más artística realmente, y aquello que hemos visto en tantos clichés, bromas, parodias, historias y leyendas, es algo que realmente existe, y que no conocemos realmente más allá de los ojos de occidente.

Este libro relata la historia personal de Eugen Herrigel, un filósofo y profesor alemán que decidió experimentar de primera mano la experiencia del Zen, comenzando en japón con el arte de la arquería, acompañado por su esposa en el arte del arreglo floral. Sus fracasos explicativos y sus avances lentos, más sus nuevas ideas sobre todo el proceso y cómo puede extrapolarse eso a toda una forma de vida nos dejan ver un poco cómo es la entrada a este mundo, que es justamente lo que él se proponía hacer en el libro, algo que difícilmente lograríamos a través de las enseñanzas mismas del Zen.

No digo más y les dejo la lectura a ustedes, está de por más interesante y muy clara, es una lectura corta de 36 páginas, y creo que realmente han valido la pena.

Soy un zorrinito zen.