domingo, 23 de febrero de 2014

Nada como una buena conversación, pero una de verdad.

Los teléfonos se inventaron para acortar distancias, no para alargarlas
Mis padres
Tardé muchos años en comprender el verdadero significado del aforismo con el cual doy inicio a esta entrada. Quizá por mi terquedad o porque cada generación trae sus propios caprichos, no veía nada de malo en extender mis conversaciones por teléfono más de lo necesario. Aquella súplica con la cual se me llamó la atención años atrás cobró sentido cuando fui consciente de lo supeditadas que están nuestras interacciones con los demás a los medios que disponemos para comunicarnos. Y es que actualmente la situación no es muy distinta y con las tecnologías emergentes se está virtualizando todo. Las conversaciones se están reemplazando por mensajes de texto cada ves más inexpresivos: Se omiten acentos, comas, y tildes, quizá por el afán de "comunicarse" lo más pronto posible o por la pereza de tomarse el tiempo para puntuar y acentuar --otra perspectiva más desalentadora apunta a la ignorancia de la ortografía. Con los afanes de "estar conectados" estamos creando una sociedad cada vez más dispersa e inconexa, los espacios de intercambio personal están siendo usurpados por espacios virtuales.

Sin duda, el abanico de posibilidades de comunicación con el cual disponemos hoy es enorme, y no puede negarse que en muchos ámbitos es deseable disponer de un medio impersonal para comunicarse rápida y eficientemente, pero no sé como la gente cambia el placer de una conversación "de tu a tu" por servicios de mensajería instantánea. El vibrar de otras personas, sus gestos, sus acentos, sus risas --las de verdad, esas que la onomatopeya del "ja ja ja" apenas puede representar-- y todas esas pequeñas cosas que como sinergia hacen que conversar sea algo placentero.
Para mi el problema radica, como todo, en abusar: basar las relaciones en medios tan volátiles como las redes sociales o los servicios de IM, pueden dar lugar vínculos igualmente volátiles. La sociedad y el mundo necesitan más de personas que conversen personalmente, que compartan, que cultiven su empatía --una dimensión humana que se desarrolla teniendo un intercambio personal con los demás-- que permita conexiones más profundas.


No se puede enseñar nada a un hombre; sólo se le puede ayudar a descubrirlo en su interior.
Galileo Galilei
A mis Padres gracias por el empujón para descubrir esto en mi interior: Que no hay nada como una buena conversación, pero una de verdad.

On the unexpected

There will be times in life when unexpected things will happen. Some people can't cope with the fact that every little detail can't be controlled, the fact that life brings his own surprises, unexpected events, unexpected situations, unexpected choices... the unexpected makes this life as dynamical as it is, and I strongly believe that unexpected things make this life worth living.
The good of the unexpected is that always represents challenges, and every challenge brings is own lesson, even if you can't endure the challenge.
The next time you confront unexpected situations, be thankful of having a dynamical life, be thankful for the opportunity of learning, when learning means growing, and growing means evolving to a better version of yourself.

domingo, 16 de febrero de 2014

Editores de texto y programación - mi perspectiva desde el uso, el abuso y la desazón

Todo estudiante de ciencias* pasa por aquella época de la vida donde debe programar (o por lo menos, intentarlo). Dejando de lado todas las peripecias asociadas con esta empresa, quiero concentrar esta entrada en mi experiencia personal con los editores de texto y los entornos integrados de programación (IDE).
* se habla de lo que se conoce.

Emacs

Emacs forma parte de la comunidad GNU. Si bien, es un editor de texto útil, la necesidad recurrente de atajos de teclado que no podía memorizar fácilmente me hacían perderle un poco el respeto.
Se comporta muy bien al trabajar desde consola, pero también ofrece una interfaz gráfica.
Una de las características más llamativas es la gran cantidad de plug-ins disponibles. Por ejemplo, hay un plugin para integrar emacs sistemas de control de versiones (como git), hay un plugin de WYSIWYG para la edición de textos en latex. La lista sigue, incluso hay plugins que ofrecen juegos de arcade.
No recomendaría este editor para los neófitos en la programación, suelo bromear diciendo que emacs es el editor de texto preferido de Davy Jones

Así se sienten los atajos de teclado demasiado largos

KDevelop

Fui usuario asiduo del entorno de escritorio KDE. Un día por recomendación de un amigo me enteré de la existencia de KDevelop, un entorno de desarrollo muy poderoso. Igual que emacs posee reconocimiento de sintaxis en varios lenguajes, y permite configurar control de versiones con git. Otra característica importante es el autocompletado de palabras, lo cual acelera el proceso de escritura. Toda una maravilla si se tiene suficiente RAM a disposición.
Pero como todo en la vida, no hay nada perfecto: los requisitos de memoria del KDevelop, así como una reciente racha de crashes hicieron que retomase mis intentos por utilizar un editor que había probado tiempo atrás: Vim

VIM (VI Improved)

Vim pareciera ser un editor de texto bastante simple, sin embargo, no hay que dejarse engañar. Puedo resumir diciendo que vim es uno de los editores de texto más potentes que he podido utilizar. Posee gran versatilidad en su sistema de comandos, además de reconocer la sintaxis de más de 200 lenguajes de programación (incluyendo TeX y Latex), permite una personalización muy amplia al punto de permitir cosas como definir sistemas de resaltado de sintaxis propios, esquemas de color y comandos personalizados. Comparándolo con emacs, vim utiliza instrucciones más simples y fáciles de recordar, tan sencillas que es posible programar usando una mano (obviamente son escasas las situaciones donde esto será necesario). Además de su versatilidad, la curva de aprendizaje es suave y basta con usarlo por algunas horas para acoplarse a esta "power tool" como lo llama su creador. Sin lugar a dudas, uno de los mejores editores que he utilizado.
Me llamó mucho la atención enterarme que vim forma parte de una campaña para apoyar niños en Uganda a través de donaciones. Buen trabajo equipo vim!!!

Vim: The power tool for everyone!
El proceso de personalización el editor vim toma tiempo, hay un sitio en particular donde se puede aprender como. Un amigo mío dispone de un repositorio en github donde publica un conjunto de configuraciones muy útiles para quienes programamos en C++, los invito a que se den una pasada por https://github.com/muzgash/vim


Y a que viene todo esto?

El proceso de programación y escritura debe ser una experiencia reconfortante, por lo tanto es importante disponer de un buen editor de texto. Para programar puede usarse cualquier editor de texto y cada cual elije el editor que más le convenga en función de sus necesidades particulares. Opté por mencionar los editores de texto más significativos entre los que he usado durante mis proyectos de programación (que consisten básicamente en aprendizaje de lenguajes). Dentro de los editores que he probado están UltraEdit(Windows), Geany (Un IDE escrito en GTK), Kate, y la lista se extiende.
Pese a todo, lo que importan son las habilidades de programación que se tienen, y no el editor se use para programar.

Enlaces de interés

  1. Página del proyecto GNU Emacs http://www.gnu.org/software/emacs/
  2. Página del proyecto KDevelop http://kdevelop.org/
  3. Página del proyecto VIM http://www.vim.org/about.php
  4. Repositorio de configuraciones de VIM https://github.com/muzgash/vim
  5. IDE Geany http://www.geany.org/
  6. Para aprender a usar vim http://code.tutsplus.com/articles/25-vim-tutorials-screencasts-and-resources--net-14631
  7. Para aprender más de otros editores