Mis cachivaches para trabajar
Siempre hay un cierto interés por conocer el equipo y programas que otros desarrolladores usan para trabajar. Ya que uso ciertas cosas “raras” (al menos poco frecuentes) y tras escuchar el último podcast de “El amuleto de Yendor”, que comentaban algunos de estos temas (especialmente teclados).
Como introducción, me dedico principalmente a programar en Python, así que el entorno está adaptado a eso. Como este post está quedado muy largo, empiezo con el hardware (ordenador, trackball, configuración de teclado y teclados) y continuaremos en otro post con el software.
Ordenador
Desde hace un par de años uso, tanto en el trabajo como en casa, ordenadores Mac.
Tengo un iMac de 27” que funciona muy bien. Me encanta la pantalla, tiene una resolución fantástica y, la primera vez que lo utilicé, me impresionaba lo grande que era.
Antes de eso utilizaba Ubuntu. Desde hace tres años no utilizo Windows y no tengo ganas de volver, la verdad. Tuve una muy mala experiencia (instalando un Service Pack me borró TODO el disco duro) y, para el tipo de cosas que lo uso, no lo echo de menos. NO, no echo de menos los juegos. No tengo consola y soy de jugar juegos tipo Flash o en el iPad. A pesar de trabajar en la industria del videojuego, no soy un gran “jugón”.
Me gusta el hecho de que sean máquinas Unix, de manera que puedo programar con relativa facilidad software que luego correrá en servidores Linux y poder utilizar software libre del entorno. Utilizo Mac Ports para instalar muchas herramientas de código abierto, aunque tiene sus problemas. En mi caso utilizo mucho la línea de comandos para programar, pero el interfaz es muy bonito para las tareas fuera de eso.
Tengo instalado el máximo de memoria posible (16GB), ya que se nota mucho a la hora de utilizar programas. Tiendo a usar varios navegadores a la vez, y los navegadores son unas bestias hambrientas de RAM (especialmente si tienes abiertas muchas pestañas a la vez y si se carga el plugin de Flash, cosa difícil de evitar). A la hora de utilizar máquinas virtuales, también se nota mucho. La memoria Apple es prohibitiva, así que es mucho más barata comprarla por otros caminos. Esto es perfectamente posible (es lo único que se puede instalar en los Mac fuera de comprarlo de serie), y es bastante sencillo de instalar (aunque, como todo, hay que poner cuidado, así que no os metáis si no estáis cómodos trasteando)
Para ciertas cosas uso alguna máquina virtual con VirtualBox, pero mi tendencia es a hacerlo lo menos posible, ya que es más cómodo utilizar tu propia máquina. En eso el sistema de entornos virtuales de Python (virtenv) es fantástico. Me siento más cómodo con ordenadores de sobremesa que con portátiles para el trabajo del día a día.
Uso además una pantalla extra, puesta en posición vertical. Con tiempo, es posible que intente usar una pantalla más (uno nunca tiene suficiente espacio en pantalla), pero en casa no tengo mucho espacio. Tendría que hacer malabarismos. El tener dos pantallas, y en particular una grande y otra más pequeña, me ayuda mucho a dividir mentalmente funciones. He tenido dos pantallas iguales y me resulta más difícil, ya que no tienes una pantalla “principal” y otra “secundaria”. La diferencia de resolución es apreciable (uso una pantalla Dell), pero puedo vivir con ella.
Trackball
Desde que tuve mi primer PC, hace ya casi 20 años,
he usado trackballs. Este extraño aparato sustituye el ratón, pero en lugar de mover todo el ratón, se mueve con un dedo una bola. De esta manera, la mano permanece estática.
Las ventajas son que ocupa mucho menos espacio (esa fue la razón por la que empecé con él, mi primera mesa de ordenador era pequeñísima) y que siempre está en el mismo espacio, con lo que el movimiento de mover el brazo y usar el ratón es más instintivo y rápido, no hace falta mirar/tantear. Por otro lado, algunos movimientos son más precisos y rápidos con la muñeca que con el pulgar (en mi caso, hay también trackballs que se manejan con el índice), por lo que no suelen ser de mucha ayuda en juegos o aplicaciones donde ese control fino sea necesario. El ejemplo típico, un juego en primera persona en el que hay que apuntar con precisión rápidamente.
Me siento mucho más cómodo con un trackball que con un ratón. Tengo que mover mucho menos el brazo. Del tipo de trackball que prefiero (controlado con el pulgar) sólo existe en la actualidad un modelo, Logitech M570, así que no tengo mucho donde elegir. A pesar de eso, y que no me es estrictamente necesario que sea inalámbrico, es un modelo estupendo. Tiene todas las cosas que me hacen falta, como rueda de scroll y tercer botón (en la propia rueda). Intento hacer acopio y reemplazar los trackballs que he usado antes de que deje de funcionar para tener “de repuesto” en el caso de que dejasen de producirlos, aunque no parece que vaya a ser el caso a corto plazo.
Configuración de teclado (layout)
Desde hace no demasiado,
estoy probando a utilizar Colemak en lugar de QWERTY (la configuración de teclas por defecto). Por supuesto, desde que vine a Irlanda he estado utilizando los teclados de aquí (prácticamente iguales a los de Reino Unido), lo que cambia algunas teclas de sitio, sobre todo los signos de puntuación. Una vez lo usas, ves que tiene mucho más sentido para programar, ya que la mayoría de símbolos se encuentran mucho más a mano y no hace falta echar mano de Alt Gr como estamos acostumbrados en España para cosas como los corchetes o las llaves, que se utilizan con bastante frecuencia. El teclado americano se parece bastante al UK, pero con un detalle que no soporto. El teclado americano tiene la tecla de Enter pequeña (una especie de mayúsculas). En el caso de Apple, el teclado UK que utilizan está “americanizado” por decirlo de alguna manera, con lo que alguna tecla también cambia de sitio. Aunque todo esto se vea y parezca confuso (y lo es), el periodo de adaptación es bastante rápido.
Desde hace unos meses he estado practicando mi mecanografía, ya que quiero mejorar, no tanto en cuanto a la velocidad, sino en cuanto a reducir los errores que se cometen escribiendo. Resulta relativamente frustrante y “te saca” de la concentración, además de evitar el típico movimiento “arriba abajo” de la cabeza mirando a la pantalla y al teclado que a veces carga el cuello. En este tiempo he mejorado bastante tanto en velocidad como en reducir el número de errores, lo que da más confíanza.
Como he dicho antes, he cambiado a Colemak. Un compañero de trabajo hizo una presentación sobre este tipo de teclado, lleva usándolo durante varios años y decidí darle una prueba.
Colemak es un teclado que está pensado como alternativa al QWERTY, pero que, a diferencia de otras como Dvorak, intenta mantener una base de teclas comunes, específicamente los signos de puntuación (sólo cambia de sitio el punto y coma) y las combinaciones de teclas habituales (Z, X, C y V están en el mismo sitio, por ejemplo). El teclado está reorganizado de tal forma que las letras más comunes (en inglés, pero muchas se comparten con el castellano) están en la hilera central, de manera que se reduce mucho el movimiento de las manos. Por ejemplo, todas las vocales excepto la U. No es necesariamente más rápido, ya que en eso influye mucho la velocidad de la cabeza y la memoria muscular, y se puede llegar a ser MUY rápido en QWERTY, pero es más relajado ya que los dedos y las manos se desplazan menos.
Una recomendación es utilizar la tecla de BLOQ MAYS como DELETE. En mi caso, la tengo reasignada como CTRL, que es común en nuestro ramo, así que no lo he cambiado, ya que estoy muy acostumbrado a utilizarla así.
El mayor problema de utilizar una configuración alternativa son las abreviaturas de teclado, especialmente si, como se debe, se hace un uso frecuente. En mi caso, utilizo Vim, y muchas cosas cambian de sitio (posiblemente lo más molesto sean los cursores de movimiento). Esta tabla resume los cambios (tengo una copia plastificada en mi mesa), y aunque parezca terrible a primera vista, no ha sido tan difícil como habría esperado, aunque es fácil tener problemas entre l (mover derecha) y u (deshacer). Suelo pensar en términos de “acción – letra” en lugar de usar memoria muscular en Vim, así que pienso en la letra y adapto, pero puede no ser el caso de todo el mundo. Especialmente si se lleva usando vi desde hace tiempo.
Por supuesto, hay que entrenar y practicar, y hay que invertir tiempo, pero estoy satisfecho. Al final, “tiene sentido” y, otro detalle interesante, evita que mires al teclado (que no tiene las marcas adecuadas), de manera que mejoras tu mecanografía de forma natural. Tras algo más de mes y medio, mi velocidad es de aproximadamente 45-50 wpm (palabras por minuto). Es decir, adecuada y confortable. En QUERTY lo mejor que he llegado es a unas 65-70 wpm, tras haber practicado activamente durante unos meses. Ya digo que mi interés no es tanto el ir muy rápido como el reducir el número de errores, aunque, obviamente, están relacionados.
Al menos en Mac OS X y Ubuntu, cambiar de una configuración de teclado a otra en tan sencillo como hacer dos clicks, de manera que siempre se puede utilizar QWERTY para cuando haga falta, por ejemplo si alguien quiere utilizar tu ordenador, o si quieres jugar a un juego que utilice WASD u otras combinaciones de teclas que sólo tengan sentido en QWERTY. Soy capaz de escribir en QWERTY de manera fluida, pero tengo que mirar de vez en cuando al teclado.
Otro detalle importante es el de tomarlo con calma. En la primera semana me lo tomé muy a pecho y practiqué mucho, así que la semana siguiente tenía algunas molestias (llamarlo dolor sería exagerarlo mucho) en mi mano izquierda que tardaron unos largos días en desaparecer y me dieron un buen susto. Claro, no podía estar mucho tiempo sin utilizar un teclado y descansar del todo. Una de las razones de cambiar a Colemak es intentar evitar problemas a largo plazo, precisamente. Afortunadamente estoy recuperado, aunque me hizo comprarme un teclado nuevo (Kinesis, hablo de él más abajo) por si acaso…
Teclado
He pasado por varios teclados en los últimos años, y en cierta manera me considero tiquismiquis/friki de los teclados. Después de todo, la combinación teclado/ratón es la forma de comunicarse con el ordenador y son la herramienta básica de trabajo si te dedicas a usar un ordenador todos los días. Hay muchos detalles que pueden ser interesantes a la hora de escoger un teclado, y depende mucho del gusto. Por ejemplo, en mi caso no juego mucho con el ordenador, así que detalles como el rollover (ser capaz de detectar todas las teclas pulsadas sin límite) no son importantes.
Comento los últimos teclados que he usado habitualmente, y que son los más interesantes.
Microsoft Natural Ergonomic Keyboard 4000
A partir de un teclado Dell normal, pasé a usar un Microsoft Natural Ergonomic Keyboard 4000. Es un teclado fácil de encontrar y es cómodo de utilizar.
Mantiene la configuración habitual de un teclado normal, eso sí, partido; añadiendo sólo un par de detalles que son relativamente interesantes, como una tecla para la calculadora y algunas teclas multimedia. Yo no le saco demasiado jugo a este tipo de botones, pero hay gente que les da mucho uso. Al principio es fácil intentar apretar la tecla B con la mano derecha y dar al hueco de en medio. El reposamuñecas es agradable y es mucho más cómodo si se utiliza de forma elevada, utilizando una pieza de plástico que trae, de manera que las muñecas no se tuercen hacia arriba.
Los detalles que menos me convencen son que las teclas no son de una gran calidad y el tacto, sin ser malo, no es comparable al de otros teclados “de verdad”. Claro, me gustan los teclados mecánicos y la sensación al utilizar otro tipo no es tan buena. El teclado se siente más “plasticoso”. Especialmente la barra espaciadora tiene un tacto distinto.
Otro detalle es que no utilizo el teclado numérico, de manera que es espacio muerto a la derecha, que me hace alargar la mano para llegar al trackball. La impresión de las letras tampoco es demasiado buena, de manera que pasa a tener un aspecto “usado”, con algunas teclas medio borradas relativamente rápido.
Sin embargo, sigo considerando que es un teclado bueno, es relativamente barato y fácil de conseguir y supone una gran diferencia respecto a un teclado “normalucho” si trabajas aporreándolo durante todo el día.
Apple Wireless Keyboard
A raiz de que pasé a usar un Mac, incluso intentando usar el teclado Microsoft durante un par de días, terminé cambiándome al teclado Apple inalámbrico. En primer lugar, tiene sentido al utilizar mucho la tecla Command (⌘) que en el caso del teclado Microsoft era bastante más incómoda. Y, además, algunas teclas, como he comentado antes, están cambiadas de sitio, de manera que es un lío.
El teclado Apple me encanta por varias cosas. El tacto es fantástico. A pesar de no ser mecánico, la sensación es de mucha calidad. Al tener un recorrido muy cortito, no hace falta apenas apretar los dedos, con lo que la escritura es muy agradable. La construcción es muy similar a la de los portátiles. El detalle del aluminio resulta también agradable al tacto y da sensación de solidez y calidad. Al ser muy delgadito, la posición de las manos es bastante recta, sin las típicas muñecas torcidas hacia arriba. Sé que me repito mucho, pero es algo muy común en teclados normales.
Me gusta más el teclado pequeño, inalámbrico, en lugar de la versión con cable, ya que supone tener todo más a mano. Los cursores, por ejemplo, están directamente debajo de las MAYS de la derecha, y borrar “hacia delante” (tecla Supr.) se consigue con Fn + DEL, que es un movimiento rápido que no descoloca los dedos. Una vez pasado el periodo de adaptación, resulta muy natural de utilizar y cómodo.
Obviamente, tiene además la ventaja de la integración con Mac OS X, con detalles como teclas para Dashboard, Exposé, etc, que resultan convenientes. Todo esto se puede configurar en otros teclados, claro está, pero en el Apple ya te viene hecho.
Como inconveniente para su uso para programación, la tecla CTRL es muy pequeña. Es “usable”, pero no del todo cómoda. En Mac OS X prácticamente no se utiliza, pero desde la línea de comandos es muy común. Como ya he dicho, en mi caso, cambiaba el BLOQ MAYS a CTRL, ya que no uso el BLOQ MAYS
Das Keyboard Model S Ultimate
A pesar de que los teclados Apple me gustan mucho y son muy bonitos, tenía desde hacía tiempo (desde antes de tener el Microsoft) ganas de tener un Das Keyboard, así que me terminé pillando uno.
Una de las razones es porque me gustan los teclados mecánicos. Y otra porque me gustaba la idea de tener un teclado en blanco para mejorar mi mecanografía. Y ya, para terminar de rematarlo, el modelo más ruidoso. La diferencia entre ruidoso/silencioso es el tipo de teclas. El modelo “silencioso” utiliza teclas Cherry marrones y el ruidoso Cherry azules. En esta página podéis encontrar más información, junto con más detalles acerca de teclados mecánicos. La diferencia de volumen es grande, y el teclado es bastante ruidoso. Para mí, ese sonido es agradable, ya que proporciona una buena sensación y te permite saber cuando has pulsado la tecla o no. Pero puede no serlo para los demás. El sonido, además, es claramente “click-click”. En mi caso, lo uso en casa, así que no molesto demasiado, pero para una oficina o piso compartido puede ser molesto para los compañeros.
Además de las teclas, un estupendo detalle es el de tener dos puertos USB 2.0 en el lateral que son muy cómodos, ya que el iMac tiene los puertos USB en la parte de detrás y no son cómodos para conectar/desconectar.
Como desventajas, el teclado es alto y requiere, bien un reposamuñecas, o elevar bien el brazo cual mecanografista para mantener la muñeca recta, lo que es cansado (aunque se supone que es lo correcto, y con el tiempo uno se acostumbra). Como ya he dicho antes, el teclado numérico de la derecha no lo utilizo, así que es espacio muerto que me hace tener el trackball más lejos de lo que me gustaría. El acabado del teclado, exceptuando las teclas, es brillante, y la suciedad se tiende a ver mucho, con lo que hay que limpiarlo a menudo. Si te importan estas cosas, claro.
Kinesis Contoured Advantage Pro
Ya mi última adquisición, utilizo en el trabajo un Kinesis Contoured Advantage Pro. Lo llevo utilizando desde hace cosa de un mes. El teclado es muy radical en su configuración y tiene algunos detalles curiosos. Las teclas son unas Cherry marrones que son “relativamente” silenciosas y con un tacto muy bueno. La configuración de las teclas es americana, con algunas diferencias.
Para empezar, está dividido en dos áreas, de manera que cada mano es responsable de ciertas teclas, como el Microsoft Natural Ergonomic. Además, están muy separadas, así que la posición se cambia totalmente a un teclado normal, o incluso a uno ergonómico “normal” donde los codos tienden a separarse y las manos a acercarse. En este caso, las manos apuntan directamente hacia delante, sin tener que juntar las manos.
El teclado es alto y el reposamuñecas (que incluye unas almohadillas que se pueden reponer) deja las manos con las teclas en una posición inferior, así que la muñeca queda totalmente recta de forma natural. La forma de cuenco hace que las manos apenas tengan que moverse para llegar a casi cualquier tecla. A pesar de ser voluminoso, no es muy largo, así que el ratón queda cerca de la mano derecha. Eso sí, más abajo de lo normal.
Las teclas centrales (A S D F y J K L 😉 son distintas, tanto en color (azul) como en el tacto, más rugoso y con la parte de arriba redondeada. Esto ayuda a colocar propiamente la posición “de reposo”, pero a veces no sé si sería mejor la típica pestañita en la F y la H.
Las teclas están colocadas en matriz. Es decir, en un teclado normal, las teclas en filas distintas no están totalmente alineadas. La C está debajo y entre la D y la F. Esto es herencia de las máquinas de escribir. En el Kinesis la C está justamente debajo de la D, que a su vez está justamente debajo de la E. De esta manera, un mismo dedo no tiene que desplazarse a los lados para dar a las teclas.
Los pulgares tienen teclas asignadas, no sólo espacio y Command (en Mac). Y no pocas. Espacio (como en un teclado normal), pero también Enter, la mano derecha, y Delete (adelante y atrás) en la izquierda. No es raro que, utilizando un teclado normal, tienda a poner un espacio en lugar de borrar, aunque me va pasando cada vez menos. Las teclas de modificación (Command, Control, Alt, etc) también están en los pulgares, así como Home, End, Page Up y Page Down (que no uso casi nunca). Algunas combinaciones pueden resultar raras al principio, como CTRL + C, que suele hacerse con una mano, es más cómoda con dos, etc…
Algunas teclas están en posiciones diferentes. Por ejemplo, + está en la mano izquierda. Los cursores están repartidos arriba/abajo en la mano derecha y izqda/drcha en la izquierda, en la fila más abajo. Los corchetes están debajo del punto y la barra.
Viene con ¡un pedal! (se pueden añadir más pedales, de hecho). Por defecto viene configurado para usarse como activar el teclado numérico en la mano derecha. En mi caso, ya que no uso el teclado numérico, lo uso como mayúsculas. De manera que, si quiero escribir algo TODO EN MAYÚSCULAS, aprieto el pedal y escribo normal hasta que termino y levanto el pie. Ideal para trollear en Internet. Si sólo tengo que escribir una letra en mayúsculas, utilizo los MAYS normal.
Las teclas de función son sin duda lo más mejorable del teclado. Son pequeñas y de goma. No las suelo utilizar mucho, a excepción de Esc. así que no las sufro demasiado, pero puede ser un problema si las usas mucho. Tampoco son fáciles de diferenciar al tacto, hay 9 en un lado y 9 en el otro, sin separaciones de ningún tipo. Otro detalle que creo mejoraría mucho el aspecto final sería el usar aluminio para la parte de arriba en lugar de simplemente pintarlo de metálico.
El teclado es totalmente configurable, sin necesidad de software, simplemente con combinaciones de teclas. Así que puedes adaptarlo a tu gusto todo lo que quieras. Por ejemplo, en mi caso uso tanto Esc como F1 como Esc, ya que a veces le daba a F1 queriendo dar Esc. También BLOQ MAYS a CTRL. Además, puedes configurar macros a nivel de teclado, sin tocar el Sistema Operativo, haciendo que una tecla o combinación de teclas inserte un texto o cosas parecidas. Si repites mucho las mismas cosas, puede ser una gran ayuda. ¿Harto de teclear “Integer”? Le puedes asignar una tecla. El teclado tiene un modo Dvorak, fácil de activar.
Tiene también dos puertos USB en la parte posterior (de donde sale el cable), pero son difíciles de acceder y creo que no son 2.0.
Un detalle importante es que es es un teclado pensado para ser usado con dos manos y “en posición”. Eso hace difícil o raro combinaciones como usar el ratón y hacer Command + C (o CTRL + C). Eso puede tener su lado bueno de forzarte a utilizar el teclado lo máximo posible y depender menos del ratón, pero a veces resulta extraño. En mi caso, al usar Vim, procuro dejar el ratón de lado, pero sigue habiendo momentos en los que echar mano al ratón es lo más natural. O si, por ejemplo tienes una mano ocupada bebiendo agua y quieres avanzar una página, ese tipo de situaciones.
El teclado al principio resulta raro de utilizar y de localizar las teclas al tacto. Sin embargo, al cabo de poco tiempo todo cobra sentido. Algunas teclas tardan algo más en automatizarse (por ejemplo los cursores). En mi caso, cambio sin dificultad de el Kinesis a cualquier otro teclado “convencional”
Otro problema es que es caro. Muy caro. Por supuesto, el precio es relativo, ya que un teclado mecánico puede durar muchos muchos años y es algo que se le saca partido todos los días. Pero entiendo que puede resultar demasiado para muchos y echar para atrás, sobretodo si no hay posibilidad de probarlo antes de decidirse a comprarlo.
Como última reflexión, decir que estoy muy contento con él y resulta muy relajado de usar durante todo el día, una vez pasado el periodo de adaptación. Espero usarlo por mucho tiempo.
Continuará
Como este post está saliendo muy largo, escribiré un segundo post sobre el software que utilizo, con cosas como Vim, iTerm, ack y alguna cosa más…
EDITADO: He publicado la segunda parte aquí
Pingback: Mis softwarevaches para trabajar (y II) « Wrong Side of Memphis