Noviembre 20, 2007

Más consideraciones sobre Visual Studio.NET + Parallels, ahora en OS X Leopard (10.5.1)

En la entrada sobre Visual Studio, .NET y Parallels que publiqué hace cosa de un mes, estaba utilizando Mac OS X 10.4.10 (Tiger). Resulta que pocos días después salió el Mac oS X 10.5.0 (Leopard); recientemente ha pasado a ser 10.5.1 porque salió la primera actualización.

Apple siempre ha lanzado el primer “.1″ de sus sistemas operativos, menos de veinte días después de su lanzamiento, de modo que ¿por qué iba Leopard a ser la excepción?

Esta entrada es mas bien simple, dado que no hay mucho que decir (no voy a hacer una review del sistema operativo, para eso está ArsTecnica) -en inglés-. Lo que sí voy a hacer es asegurarles que el Parallels (ahora lo escribo bien) 3.0 build 5160 funciona en Leopard.

Instalé Leopard, como siempre, backup, clone, erase, install, reinstall apps. Así se hace y así anda.

Hay una beta del Parallels dando vueltas, no la he probado aún, que supuestamente mejora la compatibilidad con Leopard. En algunos días tendremos algo más probado y podremos posiblemente tener un Parallels “mejor”.

Cualquier problema que tengo con Parallels, también lo he tenido con otras cosas. Cuelgues raros, un Kernel Trap, y tener que reiniciar alguna que otra vez porque algo se queda colgado. Yo le doy caña al ordenador, está claro, pero hay una ligera inestabilidad en Leopard; valen la pena el Time Machine y esas cosas (ya lo usé una vez con éxito). QuickLook es cómodo y el nuevo Spotlight (que no reemplaza Quicksilver ni loco), es mucho más útil y cómodo para trabajar. Mail me gusta más, el Photoboot es muy gracioso y salvo las Aqua scroll bars, el look and feel del sistema operativo es mucho más bonito o, al menos, mucho mas coherente entre sí.

En fin, recomiendo usar Leopard, a menos que tengan algo que no funcione aún (y hay muchas cosas por ahí).

Sigue siendo cierto que es a veces más fácil apagar el windows en la VM antes que suspenderlo. Para ver si cambio esto, he comprado un disco duro externo de 500GB LaCie que trae FireWire 800, voy a comprar una tarjeta EtherCard con puertos FW800 (que mi MacBook Pro no trajo, sigh) y les contaré como va. Otra cosa importante (respecto del disco anterior) es que este nuevo, tiene un buffer de 16MB, en lugar de los 8MB que tenía el anterior. Aunque no parezca, eso debería hacer un poco de diferencia.

A ver si la velocidad de disco hace que realmente suspender una VM sea más cómodo que tener que reiniciarla.

¿Y alguien ha probado el VMWare nuevo?

Noviembre 12, 2007

Cuidado con las Transparencias

No soy como esos que se quejan de cada cosa. Gruber está un tanto nervioso con la barra superior de Mac OS X Leopard semi-transparente. Yo no. A mi me gusta porque se ve “menos” y molesta menos. Lo que si es verdad es que en ciertos casos (aún con los WallPapers que trae el sistema operativo por defecto), se ve medio descontrolada. Pero no me molesta.

Sin embargo hay otra curiosidad. Mi disco duro de Time Machine era externo, viejo y feo; hace una semana se cayó al suelo por enésima vez, sólo que esta vez ya no funcionó más. Hice lo correcto, lo tiré. Pero no tengo otro aún. De modo que simplemente apagué Time Machine. Sin embargo hoy estaba mirando mi Dock y me sorprendí al ver que el Time Machine estaba “siendo ejecutado”… What The Fuck?
Uso un fondo de escritorio que trae OS X en su carpeta de imágenes, no lo descargué yo, no lo inventé, nada. Sólo arrastré el Dock a la izquierda.

Adjunto la imagen del dock. Nótese la “estrella” detrás del Time Machine, CASI igual a el “puntito” de Running Programs.

Juro que no es Photoshop y que me confundió por varios segundos…

StarDock.png

Octubre 31, 2007

Sobre el hombre anti-yeta

Introducción

La “Yeta” (Gafe en España) es la mala suerte. Dice la Real Academia Española sobre la palabra “gafe”:

gafe.(De or. desc.).1. adj. Dicho de una persona: Aguafiestas o de mala sombra. U. t. c. s.

En cambio, la palabra “yeta” no está. Quizás con un poco más de esfuerzo podría encontrarla en el diccionario de modismos y esas cosas, pero no viene al caso. Se entiende la idea.Para nosotros, los mortales, es natural que hayan cosas que traigan mala suerte; las consideramos peligrosas y hasta los más acérrimos enemigos de la superstición, andan con cuidado en la vida. Uno no se puede fiar. Sin embargo, conozco una persona que es todo lo contrario. No sólo ríe de las malas suertes comunes y corrientes, sino que se alimenta de ellas. Semejante comportamiento, de todos modos, le trae otras complicaciones. Y es que este hombre -porque así parece que es-, sufre de mala suerte con las cosas que a nosotros nos traen buena suerte. ¿Es curioso, no?Me he puesto a investigar el por qué de su situación y decidí preguntarle directamente al personaje en cuestión:“Me río de la yeta, porque tengo todas las películas de Superman.” Es sabido que Christopher Reeve (Q.E.P.D.) podría traer mala suerte, porque -seamos sinceros- ¡no se puede tener tanta mala suerte en la vida! El pobre Christopher, con toda la vida por delante, se viene a caer de un caballo.Pero con esto sólo no me convencía mi amigo, necesitaba más pruebas, yo también tengo las películas de Superman. Entonces me comentó que tiene 2 hermanas, y que ambas son pelirrojas. Eso ya me preocupó un poco más. Los/as pelirrojos son yeta. Todo el mundo lo sabe. Cruzarse con un/a pelirrojo/a implica -en el caso de los hombres- tener que tocarse el testículo izquierdo con la mano derecha instantáneamente; las mujeres harán lo mismo con su pecho (a falta de huevos digo…). Cruzarse con 2 ó más monjas, también trae mala suerte. Se debe aplicar la técnica del huevo/pecho según corresponda. Nota: en los hombres no funciona tocarse la teta izquierda.Pero mi amigo ya me estaba convenciendo con eso de tener dos hermanas pelirrojas. ¿Cómo vive uno así? No se puede, es una maldita paradoja. Supongo que los pelirrojos y las pelirrojas estarán de algún modo inmunizados. Pero mi amigo no es pelirrojo, tiene dos malditas hermanas con el pelo rojo.Soy persistente, así que necesité más pruebas. Y creo que, al igual que Víctor Sueiro, ví la luz cuando me dijo, ya con total confianza: aparte cumplo años un día trece. Y ahí me convenció.Este hombre no puede estar afectado por los normales “males” que nos afectan a los demás. Esto lo convierte en un super héroe mundano, porque puede andar por la vía pública y por la vida sin temor a tener que dar pasos hacia atrás cuando se le cruza un gato negro, o andar esquivando escaleras para no pasar por debajo y esas cosas. Inclusive no teme si se le rompe un espejo. ¿No es fantástico? Yo creo que sí. Él no. Y me lo expresaba así:

Lo que pasa es que si bien la yeta no funciona conmigo, también es cierto que tenemos otros “códigos”que respetar. Si veo una estrella fugaz, estoy en problemas, no puedo pedir deseos cuando soplo velas en un cumpleaños, porque ocurriría cualquier cosa indeseable. Al mismo tiempo he tenido que matar muchísimas vaquitas de san antonio (lady bugs), que regularmente traen suerte. Ni hablar de grillos, casi extermino una colonia entera el día que -mientras paseaba por el campo- vi una estrella fugaz. Eso me trae mala suerte, por lo que debí salir a matar grillos.

Es sabido que matar un grillo trae mala suerte. Pues a mi amigo no. En definitiva, lo que podría ser la característica de un super héroe, al final termina siendo un problema grave. Le pregunté cómo hacía para sobrellevar esta situación y se limitó a comentarme que utiliza tres ingeniosos -y no tan- mecanismos casi automáticos.

En primer lugar, llevo un llavero que tiene un enano cojo (rengo), con esto me aseguro tener protección las 24 horas. Es lo contrario a llevar una pata de conejo. Es mi “antipata”.En segunda instancia, tuve que modificar la entrada de mi casa, y agregué un par de escaleras de modo que para entrar, tengo que -si o si- pasar por debajo de ellas. Esto me brinda el karma necesario para limpiarme y santificar la mala suerte obtenida a lo largo del día.Finalmente, para mantenerme tranquilo y dormir en paz, he hecho embalsamar un gato negro y lo he montado sobre ruedas como un carrito de supermercado; construí rieles alrededor de mi cama y por toda mi casa, de modo que el gato viaja, cual maqueta de trenes, por todos lados. Funciona a 220v, pero le puse baterías por si falla la luz. De ese modo, cada no más de 3 minutos, tengo un gato negro que se me cruza. Realmente ha sido fantástico.

Así pues, como pueden ver, lo que yo pensaba que era bueno (estar protegido contra la mala suerte), al final resulta contraproducente. Cuando en Argentina teníamos problemas de electricidad, me comentó que tuvo que buscarse una alternativa al gato:

(…)salí desesperadamente a la calle en busca de espejos, viejos, nuevos, usados, me daba igual, y me los lleve a casa. Los corté apropiadamente en rectángulos de 5 x 5 (centímetros) con la ayuda de un corta vidrios que me prestó un vecino, y los guardaba en pilas distribuídos por toda la casa. Cada cierto tiempo, rompía uno con un pequeño martillo que tomé prestado de un bus (esos que sirven para romper las ventanillas en caso de emergencias). Cuando volvió la electricidad al pais y mi gato pudo seguir funcionando, lo devolví. El problema de este método fueron los residuos, me llené de espejos rotos. La ventaja es que cuando se me acabron los meticulósamente cortados cuadrados, aproveché los restos para romperlos en partes más pequeñas. Consideraba que como romper un espejo traía siete años de mala suerte en los humanos que padecen “yeta”, a mi me traería siete años de buena suerte. Esto no es tan así, los “anti-yeta” tenemos que juntar más puntos. Cuando me estaba quedando con poco espejo, por surte volvió la electricidad al pais y ya no tuve problemas con el gato. Ahora guardo dos (con baterías) por las dudas (…)

Una cosa de locos. Inclusive me ha comentado que está pensando en implementar un tablero de control como los de los trencitos eléctricos, para jugar con los gatos embalsamados negros y cambiarles de carril y esas cosas. Yo lo entiendo, al fin y al cabo, que sólo de vueltas no resulta tan divertido.Algunas cosas más que mi amigo hace es pasar la sal de mano en mano constantemente; algo que le ha valido la mirada extraña de otros comensales que -sin comerla ni beberla- reciben el salero constantemente. Y es que hay que ser un “anti-yeta”, realmente, es más complejo de lo que creíamos. Creo que -de momento- prefiero quedarme en mi estado, tener cuidado con las escaleras y los gatos negros y si veo monjas o pelirrojos, huir mientras -siempre disimuladamente- me toco el huevo izquierdo.Con las pelirrojas ya me gustaría pensármelo mejor, porque la primera impresión es lo que vale y -seamos sinceros- que una tía te vea tocándote un huevo, no resulta muy fino que digamos…

Octubre 24, 2007

Sobre Escribir un Libro, Plantar un Árbol y Tener un Hijo

Hoy conversaba con un amigo, quien ha tenido un hijo y se galardonaba de haber plantado también un árbol. Yo no hice ninguna de las dos cosas; pero me pareció interesante también recalcar el motivo. Hijos no tengo porque no tengo con quién, pero lo interesante vino cuando conversábamos sobre el árbol.

Un Árbol

Le preguntaba si arrojar semillas de césped sobre tierra contaba. Me dijo que no. Le tengo que creer porque al fin y al cabo parece ser que -obviamente- el césped no califica como árbol. ¿Qué es un árbol?El ÁRBOL es una planta leñosa que se caracteriza por poseer un tallo principal erguido llamado tronco -o fuste - que crece ascendentemente y se ramifica en altura.“Está claro que un árbol entonces dista de parecerse al césped. De hecho el césped “se puede decir que se trata de toda aquella superficie de terreno que posee una cobertura herbácea, que a su vez es la base de la mayoría de los jardines. De todas formas, el césped no deja de ser el cultivo de hierba“. Y entonces, ¿qué es la hierba? Muy bien, el árbol tiene tallo, tronco, etcétera y la hierba “es una planta que no presenta ni tallos ni raíces leñosos“.Problema solucionado, nunca planté un árbol.Pero luego me encontré con el tema del Libro. Textualmente escribir un libro parece ser más fácil de lo que parece; y en esto si coincidimos mi amigo y yo. Si se toma cualquier libro -al azar- y se escribe algo en cualquiera de sus páginas, efectivamente se está escribiendo un libro. Eso si lo hice. Él también. Parece ser que entonces él está realizado como humano. Porque los tres actos, Hijo (labor), árbol (trabajo) y libro (acción) son las tres cosas que hay que hacer en la vida para ser humanos. O eso dicen.Me faltan el hijo y el árbol. El segundo es más fácil creo yo. Escucho ofertas para ambos.Mientras tanto, en mi condición de no-humano, seguiré trabajando; y esto explica el por qué del trabajo in-humano. Posiblemente los que trabajamos in-humanamente (léase: 16> horas/día), no tuvimos tiempo de boludear por un jardín en busca de un hueco para plantar un árbol, tampoco nos sobra mucho tiempo para escribir un libro, que dicen que demanda mucho tiempo y esfuerzo, y ni hablar de salir a buscar una pareja para tener un hijo. Al final, todo está clarísimo.

Octubre 18, 2007

Ensayo sobre Pausar, Suspender o Detener - ¿¡Paralells VM!?

La barra de tareas del Paralells es muy simple; estoy en total desacuerdo sobre la capacidad de estos dibujos de explicar exactamente qué significan. Una imagen vale más que mil palabras.

¿Cómo se arranca una Virtual Machine? El botón “rojo” de encender ¿o es que ese es apagar? Y el negro de la noche, ¿es suspender? ¿Y dónde está el botón de “pausa”? ¿Y la bandera verde? En fin. Ni yo se qué significan y por eso los tengo apagados. Hay otros “dos estilos” pero sinceramente, no los entiendo tampoco. Prefiero utilizar el menú:

Es mucho más simple.

A pesar de esto, existe una curiosidad. Teóricamente, suspender una Virtual Machine, es el acto de volcar todo el contenido de su memoria al disco duro, para su posterior restauración. De este modo, cuando se enciende esa VM, todo está como lo dejamos. Es muy bonito el concepto, pero Paralells (y me imagino que VMWare Fussion también) deben leer la memoria desde el disco duro y volcarla a la memoria real. Esta operación tarda. No es ningún misterio; ¿cuánto es mucho y cuánto es poco? La realidad es que tarda más de lo deseado a veces, 30-60 segundos. Pero eso sería lo de menos si se pudiese utilizar el ordenador mientras esto ocurre; pero durante esta operación, el ordenador está “tan ocupado” que realmente se pone lentísimo y hasta no responde a nuestros mandos durante unos cuantos segundos, a veces son más de 30.

Luego se puede pausar la VM. Es decir, -entiendo- decirle al Paralells, no gastes mas CPU en esto y libera la memoria si la necesita otra aplicación, pero quédate listo para volver a la vida en cuanto saque la pausa. Eso entiendo yo. Eso dice la documentación. Ahora bien, en la vida real, la pausa entra y sale rápidamente sólo cuando no se deja pasar mucho tiempo. ¿Y esto por qué? Entiendo que -al igual que suspender- si pongo pausa, y ocupo toda la memoria con otra cosa, entonces cuando quite la pausa, todo el gigabyte de memoria que usaba la VM, debe ser recolocado en memoria. En definitiva, otra vez unos cuantos segundos de espera y ordenador “duro”.

Al final, he descubierto que a pesar de lo que tarda el Visual Studio en cargar mi proyecto (que es enorme), muchas veces es más eficiente simplemente apagar la VM, hacer lo que uno tiene que hacer, y encenderla de nuevo. Al fin y al cabo, el Windows XP arranca notablemente más rápido dentro de una VM que en el Boot Camp o una PC.

Luego está -si les incomoda- el tema del espacio en disco. La Virtual Machine, al ser suspendida, debe indefectiblemente, guardar toda su memoria tal cual está, en algún sitio no volátil -esto es, que no se borre cuando se quede sin electricidad-. El candidato número uno es, como habrán adivinado, el Disco Duro. So much for a fast suspend…

En fin, este es un dato más para mi libro “The Road to Virtualization”, que es un invento ficticio y nunca será escrito como tal.

Octubre 11, 2007

Consideraciones sobre Visual Studio, .NET, Parallels y Mac OS X

Leyendo Applesfera, me he dado cuenta que muchos programadores, que también son usuarios, se preguntan si es factible la solución que circula desde que existe el Parallels para Macintosh. Esta misma pregunta me he hecho yo hace más de un año, cuando todo esto estaba muy verde aún. Sin embargo, di ese salto y me arriesgué. En esta entrada (la primera sobre Mac en este nuevo espacio), les voy a comentar mi experiencia luego de un año de trabajar de ese modo.

El Parallels para Mac ha evolucionado bastante, en sus primeras versiones tenía muchos inconvenientes (menores si se piensa que para programar con Visual Studio sólo hacía falta que arranque el Windows™). Pero el soporte USB era sólo 1.1, cada tanto se colgaba misteriosamente, algunos dispositivos no funcionaban, etcétera. Sin embargo, hoy, en la versión 3.x de Parallels, debo decir que estas cosas son parte del pasado. Ha sido un camino plagado de pequeñas piedras y sobresaltos (actualizaciones misteriosas que rompían en lugar de reparar, betas que no eran betas, final releases que parecían betas, foros llenos de quejas y preguntas y demás “cuestiones” que parecían embarrar el terreno).

Intentaré ser lo más escueto posible e ir directo al grano. Este es el hardware con el cual trabajo desde hace un año:

  • Macbook Pro 2.0Ghz
  • 2GB Ram (inicialmente tenía 1.5Gb)
  • Disco duro Interno de 80 GB (20GB los tengo con BootCamp para jugar al Flight Simulator X), de modo que son 60 Gb de Mac OS X
  • Disco duro externo Firewire iomega de 250GB.
  • Monitor GTX 19” WideScreen (malísimo, pero grande y económico)
  • Teclado Apple USB (el nuevo). Originalmente tenía el Bluetooth anterior, pero es deplorable (por sus múltiples problemas de suciedad, teclas duras y que se traban, etc.) y tenía un Mighty Mouse Bluetooth también, pero no acabé de acostumbrarme y siempre terminaba haciendo el clic equivocado y volví a mi viejo, feo y querido Genius USB que anda perfecto y tiene unos 4 botones adicionales que uso para Exposé y Subir y Bajar Volúmen.
  • Mac OS X 10.4.10 (el ordenador vino con 10.4.2 o algo así).
  • Parallels 3.0, 79€ (inicialmente 1.x y luego sucesivas actualizaciones, una de ellas, la última, costó 49€ de “actualización”).
  • No tengo Office For Mac, pero uso iWork 8.0 (79€).

Adjunto una imagen reciente de mi entorno de trabajo.

Free Image Hosting at www.ImageShack.us

El teclado de la imagen es el anterior, ahora ya estoy trabajando con el nuevo y me parece mucho más cómodo.
Bien, presentado el entorno del Mac, permítanme comentarles qué hago exactamente con Windows™, Visual Studio y un poco de historia.
Desde hace muchos años he trabajado con Visual Studio. La vida me llevó del C++ al Visual Basic (menudo salto) y Visual Studio 3, 4, 5 y 6. Cuando apareció .NET, me pasé automáticamente al C#, porque me sentía mucho más cómodo en la sintaxis de C/C++ que con Visual Basic. Probé un poco de Java y me parecía “OK” pero nunca me pareció que Java pudiese siquiera acercarse a la sencillez y nivel de integración que tiene o tenía una aplicación Visual Basic a nivel Interfaz de Usuario. Swing o AWT me parecen horripilantes. De modo que permanecí al lado de Microsoft® todo este tiempo.
Hace más de tres años me compré un Powerbook, para “ver que tal funcionaba Macintosh”. Siendo un usuario de Linux en el lado de los servidores, siempre supe usar “la herramienta correcta” para lo que necesitaba. “Use the right tool for the job”. ;) Linux en el escritorio, sucks. ;) Ahora debo confesar que esto no es tan así, pero hace tres años si. Aparte tampoco existía Visual Studio for Linux (ni creo que vaya a existir nunca), de modo que usar Linux en mi ordenador era literalmente innecesario. No ganaba “nada” realmente y si posibles dolores de cabeza con incompatibilidades, drivers, etcétera. En fin, lo mismo que hoy, en menor medida, nos puede pasar si decidimos pasarnos a Linux. Pero Macintosh, me atraía como plataforma. Así que mi powerbook vino. Y ahí aprendí a usar Mac OS X. Entendí la filosofía del “It Just Works™” y quedé enganchado al sistema operativo.
Cuando al año apareció “Intel Inside” dentro de un Mac, fue casi un sueño hecho realidad. Todo parecía encajar perfectamente. Podía usar Apple Mail, Safari, Aplicaciones de Mac, tenía una terminal Unix disponible, en fin, la magia de OS X (por la cual tanto nos gusta usarlo) y Visual Studio a mi lado. Todo en un mismo ordenador. Maravilloso, ¿no?. No.

Lo cierto es que -como voy a relatar a continuación- no todo es color de rosas en esta solución. Hay algunas cosas que -aquellos que estén indecisos- es bueno que sepan antes de dar el salto. Lo que voy a relatar es obra mía y surge de mi experiencia como programador .NET 1.1 y luego .NET 2.0 de una aplicación “bastante compleja y grande” de WInforms, con una base de datos SQL 2000 (ahora migrada a SQL 2005).

¿Qué aplicaciones uso en Windows?

Utilizo Windows XP Profesional con Service Pack 2. Todo un estándard. (He probado Vista™, luego comentaré al final sobre esto).
Visual Studio, hasta hace poco 2003, ahora ya desde hace más de 5 meses, Visual Studio 2005.
No tengo SQL 2005 (ni ninguna otra versión) instalado en mi Windows, porque tengo un servidor SQL 2005 en otro PC “dedicado” para todos los programadores, de modo que no cargo con ese “peso”, pero lo he usado en otra máquina virtual y realmente no es “notoria” su presencia. Pero no puedo precisar demasiado porque repito que no lo tengo. Mi Windows XP se conecta al SQL vía ethernet.
Aparte de eso, instalo siempre en mis Windows, el EditPlus y el Total Commander. Y naturalmente las herramientas cliente de SQL (2005) en este caso, para tener el Query Analizer y los Books Online.
No instalo los Books Online de MSDN porque prefiero consultarlos en línea.
Tengo el RealVNC y el Tortoise SVN para el control de versiones del código. Y nada más.
Por motivos “laborales” tengo el Crystal Reports Xi Release 2 y el Tablet PC SDK. Hace poco instalé una licencia de Office XP en el Windows porque necesitaba las librerías de programación. Gajes del oficio.

No utilizo el Windows para nada más que .NET, creo que abrí el Internet Explorer 7, unas cinco veces en mi vida.

Parallels for Mac 3.0

No voy a contarles la historia de versiones anteriores porque no tiene sentido. Quien quiera usar Parallels (o VMWare Fusion) deberá usar la última versión disponible, de modo que voy a contarles el estado actual de este escenario. No tengo experiencia con el VMWare Fusion, así que no puedo comentar sobre eso, pero me imagino que la experiencia será similar. Estas son mis dos pantallas durante un típico día de trabajo.
A la izquierda la pantalla de 15” del MacBook Pro y a la derecha, la pantalla de 19” que también es 1440×900 (eso es muy bueno). Ambas pantallas tienen la misma resolución :)
El Visual Studio en pantalla completa, con el proyecto abierto. El Parallels normalmente lo utilizo así, en pantalla completa. Sobre la izquierda, mi espacio Macintosh. El Dock lo tengo sobre la izquierda pero nunca acabo de decidirme y a veces lo oculto (cmd-alt-d), pero luego me doy cuenta que es “molesto” tener que ir con el ratón a verlo y bueno, al final, queda ahí sobre la izquierda o a veces abajo, alineado sobre la derecha.

Una imagen vale más que mil palabras, dos, mucho más:
Free Image Hosting at www.ImageShack.us Free Image Hosting at www.ImageShack.us

No está permitido opinar sobre el WallPaper (fondo de escritorio), dado que cambia según la época.
Si utilizo el Windows con Visual Studio y poco más, ¿qué hago con el Macintosh?
Todo lo demás. Leo el correo, noticias, almaceno fotos (iPhoto), mi colección de 59GB de música está en iTunes, Instant Messenger (AdiumX), World of Warcraft, anotaciones, etcétera. Esencialmente todo lo demás lo hago en Macintosh. Me parece mucho más cómodo, simple, y realmente siento que “It Just Works™”, al menos en el 98% de los casos.

¿Cómo funciona todo esto en el día a día?

Muy bien. Pero no es perfecto. Y esto es lo que deben saber a la hora de pensar en esta solución. Trabajo casi doce horas por día en Windows, sin embargo no tengo más que el Parallels realmente. De modo que no estoy de acuerdo con el post de Applesfera que recomienda Windows Nativo para esos casos. Se puede perfectamente. Yo lo hago, pero hay detalles que quien aún no haya hecho el switch, debe saber de antemano; yo los aprendí por la fuerza.

  1. Hace falta memoria, mucha memoria. 2GB (el máximo en mi portátil) no es suficiente. Se puede utilizar, con proyectos medianos no hay problema, inclusive Visual Studio 2003 era más rápido y liviano que el 2005. Pero con un proyecto grande como en el que yo trabajo, se nota. Parallels tiene asignado 1GB de RAM para el Windows y programar con 1GB de RAM es “poco” hoy en día. Utilizar Reshaper es indeseable porque Reshaper es lento de por sí. Con 1GB de RAM y un proyecto grande es insoportable. De modo que hay que “conformarse” con las herramientas que trae Visual Studio 2005 Profesional -que no son malas, pero no se aproximan al Reshaper ni de coña-.
  2. Disco. La imagen virtual de mi Windows, pesa casi 20GB y se incrementa con el paso del tiempo. Se puede comprimir (y se debe) cada tanto, pero ocupa espacio. En un disco “lento” (5400RPM) como el del portátil esto se nota. He movido la imagen al disco externo (Firewire) y “anda bien”, amén que me libera el espacio -limitadísimo- del disco del portátil; pero el inconveniente es que el disco Firewire a veces se me desconecta porque el cable es una basura y los discos externos son muy molestos para transportar. Sin embargo, es perfectamente factible utilizarlo así. Hay un BUG en Mac OS X con los permisos de los discos externos, que por más que uno intente decirle que IGNORE los mismos, se empeña en -cada tanto- volver a tenerlos en cuenta. Nada que un cmd-i (info) -> Ignore Ownership no solucione, pero bueno, cada tanto hay que hacerlo. Todo esto porque Parallels tiene OTRO BUG, que hace que no siempre funcione la Máquina Virtual si no le gustan los permisos. En fin, nada grave, pero una vez cada dos o tres meses, tengo que recordar tildar eso en Mac OS X cuando se “va” misteriosamente.
  3. Velocidad. Cuando arranca el Parallels, mi procesador Core Duo se transforma literalmente en un procesador de un solo Core. Porque Parallels le asigna uno a la máquina virtual y otro para OS X. De modo que a veces se nota bastante que el Visual Studio está haciendo sus “cosas” y la máquina se pone más lenta. Tarda en responder unos segundos, enviar un Email a veces son 3 ó 4 segundos de GRRRRRRRR (actividad de disco). El iTunes rara vez, salta un poco cuando está reproduciendo un mp3 o similar. Digo Rara vez porque realmente no ocurre a menudo, pero depende del momento, si dos ó más aplicaciones deciden hacer algo en simultáneo, se notará. Ejemplos claros son cuando el Quicksilver se pone a actualizar el catálogo, el NetNewsWire se pone a sincronizar los RSS feeds, está entrando email, iTunes reproduciendo algo, el Safari con algún sitio “pesado” y el Visual Studio compilando. Está claro que no son tareas que hace un usuario todos los días, pero después de todo, los programadores, no hacemos lo mismo que un usuario. :)
  4. Estabilidad. Es muy difícil definir esto. Hay cuelgues. El Parallels a veces hace cosas raras. Muy pocas veces. Pero las hace. Alguna vez se ha “cerrado” (creo que menos de 10 veces desde que lo uso, pero las recuerdo…). Alguna vez no puede resumir una máquina virtual que fue suspendida (y hay que “reiniciarla” perdiendo la sesión) y cosas de ese tipo. Ocurren. Decir que no sería una mentira horripilante. Pero se puede usar perfectamente, no es algo de lo que uno esté pendiente todo el día. Cuando ocurre, se dicen dos o tres palabrotas, y se sigue. Después de todo, ¿hacemos backups, no? Si. Podría decir que es un 95% estable y fiable. Quizás hasta 98%, pero me reservo un 2% de inestabilidad. Tampoco es que yo le doy mucho uso al Windows. Después de todo sólo uso el Visual Studio allí dentro.

Estas son las 4 cosas más importantes a tener en cuenta. Se resumen en: Memoria, Disco, Velocidad y Estabilidad. No es nada sorprendente que sea así, y hasta suena “obvio” dicho de esta manera; pero es que a pesar de todo, es perfectamente utilizable aún para proyectos medianamente grandes. Ni hablar si los requerimientos son menores, yo creo que soy un ejemplo un poco extremo, porque mi solución de Visual Studio es grande. Pero si fuese algo más pequeño, esto cambiaría bastante (para mejor).

¿Qué se puede mejorar?

Creo que si mi portátil soportase 3GB de RAM, no lo dudaría. Prefiero seguir manteniendo esta configuración, gastar el dinero en más memoria (porque es caro) antes que tener otro ordenador. La conveniencia de poder arrastrar ficheros entre Mac OS X y Parallels, la ventaja de poder hacer Snapshots, backups de la máquina virtual fácilmente (se copia todo el .HDD y listo), de que Mac OS X es mas placentero (para mi) para el resto de las tareas informáticas que se me ocurran, y ese tipo de detalles, es que hacen que siga prefiriendo invertir en esta solución. Si el día de mañana dejo de trabajar en .NET, sólo me quedará el Boot Camp para usar el Flight Simulator y poco más.
Si mi portátil soportase Firewire 800 (y los nuevos lo hacen) quizás pondría un disco externo más rápido y más grande. La velocidad de disco es importante también cuando falta memoria RAM, el Swap es inevitable y mientras más rápido el disco, mejor.
CPU, supongo que los nuevos Core 2 Duo (recordar que el mío es Core Duo) quizás ayuden también a que ambos sistemas operativos tengan un poco mas de poder. Mi ordenador tiene un año de vida ya. Y todos sabemos lo que eso significa hoy en día.

He tenido el Parallels y el World of Warcraft abiertos en simultáneo y es increíble, pero ambos responden bastante bien; entiéndase por “bastante” como: Se nota que están ambos, hay más swap, el framerate del WoW cae un poco, pero andan y se pueden usar. No me imagino un Mac Pro con 4GB RAM, eso si que sería mejor aún. :)
Conclusión
Si están indecisos, espero que con este pequeño ensayo, tengan en claro que es un salto que se puede dar con bastante tranquilidad. Eso está probado que anda (no soy el único que lo dice). Nada es perfecto y esta solución tiene sus inconvenientes, pero realmente es un precio que cada uno debe evaluar si está decidido a pagar o no. En cualquier caso, todo apunta a que cada vez será mejor, porque los procesadores mejoran, la memoria baja de precio, los discos aumentan sus capacidades, y así la lista sigue eternamente. La velocidad del Visual Studio dentro de Parallels es muy buena y puesto en Pantalla Completa sin una pantalla externa, es difícil distinguir que se está trabajando en una máquina virtual. Nada que ver con lo que era el Microsoft Virtual PC (o como se llame). Es un mundo aparte.

Consideraciones Adicionales sobre Windows Vista™ y Parallels
Respuesta corta: No.
Respuesta larga: No y No. He probado Windows Vista™ en varios ordenadores reales (TabletPCs, ordenadores de escritorio y portátiles “normales”). Todos ellos nuevos, con Vista preinstalado. Sigo insistiendo: No. No me gusta Vista™. No voy a hacer una revisión entera, pero tiene muchos fallos que son exasperantes. Y tiene cosas buenas que me gustan. La búsqueda y el nuevo menú inicio son ampliamente mejores a lo que hay en Windows XP, punto. Pero no se justifica. Sumada a esta mala experiencia, vine a instalar Windows Vista™ en Parallels “para probar”. Como Partners de Microsoft, tenemos licencias de WIndows Vista™ Business. Anda MUCHO más lento que el XP Profesional (era de esperarse) Al punto que trabajar con Visual Studio en Vista + Parallels ya no es una experiencia grata. Al menos con mis escasos 2 GB de RAM.
De modo que si pensáis utilizar Vista™, de momento yo no consideraría esta opción como algo bueno. Claro que si estuviésemos hablando de un Mac Pro con 8 Cores y 8 GB de RAM, quizás la historia cambie. La realidad es que creo que el problema no es puramente de Parallels, sino del Vista en si. Hay que darle tiempo a un Service Pack 1 ó inclusive 2. En un futuro será perfectamente utilizable, estoy seguro de ello.
Dicho esto, igual cabe recalcar que se puede usar. Es más lento, tarda más en arrancar, tarda más en todo (inclusive tarda más en calcular el tiempo que va a demorar una copia de un fichero que la copia en sí) ;). Pero si necesitan Vista™ para probar una aplicación, naturalmente que se puede usar y muy bien. Al fin y al cabo, es para probar, ¿no?

Nota final sobre las copias de seguridad.

Todos sabemos que todo falla cuando menos lo esperamos; por ello yo realizo las siguientes copias de seguridad:

  1. Mi disco duro interno (El de Mac OS X) se clona diariamente con SuperDuper! (nunca voy a entender el “!” que le han puesto al nombre del software). El Clone es al disco iomega firewire, que tiene dos particiones. Una de 60 GB que es idéntica a mi disco interno y el resto para todo lo demás. O sea, las máquinas virtuales de Parallels, mi biblioteca de iTunes e iPhoto, etc. Todo lo tengo en ese otro disco. La copia de SuperDuper! es booteable y si fallase (como ya me ocurrió con el Powerbook) mi disco interno, podría arrancar perfectamente desde allí “como si nada”. Recomiendo esta solución a todos los usuarios de Macintosh. No tener una copia de seguridad es idiota. No tener una copia de seguridad tan buena y booteable que te permite seguir trabajando en menos de 2 minutos (malas palabras de por medio por haber perdido el disco), pudiendo hacerlo tan fácilmente, ya es de doble idiota. De verdad.
  2. La partición del disco duro externo, donde está todo lo demás (iTunes, iPhoto, Máquinas Virtuales, etc.) se copia una vez por semana a un disco externo USB2 que tengo “tirado” por ahí. Esto es porque si falla el disco Firewire, me quedo en pelotas y sin documentos. :) SuperDuper! al rescate.

Seriamente hablando, usar cualquier programa, pero hacer copias de seguridad. Todo puede fallar.

En fin, si han leído hasta aquí, debo felicitarlos, yo no se si lo hubiese hecho…
Si a pesar de todo deciden hacer el Switch, buena suerte y coraje, que -en mi humilde opinión- el balance es positivo.
;)
Update:Si, se llama Parallels, con dos L. He corregido el error (gracias al que me lo hizo ver). Y eso que veo el icono en el Dock TODO el día, en Quicksilver, en todos los sitios decía Parallels y yo no lo quería ver. En fin. Corrección de Paralells a Parallels. :O

Update2: He escrito una segunda parte, que cubre Leopard.

Octubre 4, 2007

De vuelta a la escritura

Hace mucho tiempo que todo el mundo comenzó a escribir en este tipo de páginas, auto denominadas “blogs”; y también es cierto que hace mucho tiempo que todo el mundo comenzó a escribir mensajes como estos en sus “blogs”. Sembrando la esperanza de los lectores que -impávidos- se paseaban de uno en uno como un picaflor que va de flor en flor. Al final, hubo un tiempo durante el cual todos los “blogs” no eran más que lindas plantillas con un mensaje que decía algo similar a todo esto.
Es cierto que los tiempos han cambiando y que la gente ahora escribe más. Hay “bloggers” famosos también. Algunos hasta viven de ello.
Pero yo, yo nunca lo hice. Nunca comencé. Y creía que nunca lo haría. Pero ante la insistencia (poca debo decir) de algunas personas que afirman que escribo mejor de lo que hablo -y no sé si esto es bueno o malo-, es que intentaré comenzar lentamente con la escritura. Hay muchas cosas que decir, poco tiempo y pocas ganas de ponerme a escribir. Admiro esa gente capaz de hacerlo con tanta facilidad.

En fin, para ustedes -que no saben quienes son- va dedicado este espacio; quizás, quien sabe, algún día yo también pueda leer esto y reír. De momento, no.

Octubre 5, 2006

Leds are cheap, use them wisely.

I hate when a product is annoying because the manufacturer didn’t bother to think before building it; I have two external Hard Drives (on Firewire and one USB2). One is a Seagate the other is iomega. Both have pros/cons, mostly regarding size, speed, noise, etc., however, the iomega has a major flaw. The in-use led.
Why on earth would you asume that providing one strong blue led is enough to give feedback about what the disk is doing? And if you do that -that is, provide only one led- why on earth is always on? You may say to “indicate that the drive is powered on”; cool, now how about when the drive is actually reading or writting (something I really care to know).
The clever iomega team decided to use the same led and indicate disk activity by briefly turning the led off
On the other hand, Seagate did something much more complex and difficult. it provided two leds, one for power, one for activity. Silly them.

SeagateDrive

Febrero 3, 2006

Bah

Pronto… pronto.