Windows XP Mode y VirtualPC no se minimizan a veces

Posted by Gabriel on October 3rd, 2011

Microsoft VirtualPC

Últimamente he trabajado con Virtual Machines en el trabajo, en lugar de instalar todos los programas requeridos para desarrollar directamente en mi instalacion de Windows 7  en la laptop del trabajo.

Como casi todo el mundo, trabajamos con la Virtual Machine (Windows Virtual PC) maximizada, y en ocasiones cambiando la vista al sistema operativo principal (Windows 7)  para checar el Outlook o algun otro programa. El problema es que muchas veces, al hacer click en el boton para minimizar la ventana de VirtualPC, la ventana se minimizaba pero inmediatamente se volvia a maximizar, sin permitirnos salir de la ventana maximizada.

Despues de un rato de investigación, nos dimos cuenta que solo pasaba cuando la aplicacion activa en el sistema operativo original era Excel. Es decir, si teniamos Excel abierto en Windows 7, cambiabamos el foco a la ventana (maximizada) de VirtualPC, y luego queriamos minimizar VirtualPC, automaticamente la ventana de VirtualPC se volvia a maximizar.

Encontramos este post de Technet de Microsoft – XP Mode Full Screen does not minimize -, en el que otras  personas tambien dicen tener el mismo problema, y también coincidieron que el problema solo se presenta con Excel, y que pasa tanto con el Windows XP Mode de Windows 7, o con instalaciones regulares de Windows VirtualPC también.

Incluso alguien detalla una posible solución que implica cambiar los settings de Visual Performance de la Virtual Machine, cosa que no probamos, solo queria detallar el workaround simple que es evitar que Excel sea la aplicación activa al momento de regresar a la ventana de VirtualPC.

Espero les sirva.

Tip de Mudanza a Estados Unidos – Usar una tarjeta American Express

Posted by Gabriel on July 29th, 2011

USA Flag

Esta es una de las cosas que mas me hubiera gustado saber.

Por el titulo del post, no me refiero solamente a utilizar una tarjeta de credito American Express cuando te mudes a Estados Unidos. Me refiero a que, si en este momento vives en Mexico y no tienes una tarjeta American Express, aunque no estes considerando cambiarte a vivir a otro pais, aun asi consigue una AmEx.

Personalmente, nunca habia considerado usar una tarjeta AmEx porque tenia la idea que su CAT era muy alto, y ademas estaba muy contento con las tarjetas de credito de Banorte. El problema es que, hasta donde tengo entendido, con la mayoria de los bancos simplemente no es posible transferir tu historial crediticio a Estados Unidos. Y digo la mayoria de los bancos, porque aunque algunos bancos mexicanos son dueños de, o tienen acuerdos con bancos de Estados Unidos, no necesariamente tendran sucursales en el pais o ciudad al que te vayas a vivir, y tampoco es seguro que el mismo banco te permita hacer la transferencia de historial. American Express si te permite transferir tu cuenta (e historial crediticio) siempre y cuando ellos tienen operaciones en el pais al que te mudes, y tu cuenta tenga mas de un año de antiguedad.

Ahora, ¿por que es bueno  (y practicamente necesario) tener un historial crediticio en Estados Unidos? Porque en Estados Unidos, si no cuentas con historial crediticio, casi todas las empresas de servicios post-pago (como las de telefonia, energia, bancos, etc) obligan a dejar una cantidad de efectivo relativamente alta como deposito para darte sus servicios. Puede que eso no sea un problema para uno o dos servicios, pero cuando te cambias a un pais nuevo, generalmente tienes que contratar varios servicios, y eso puede resultar en perder temporalmente mucho efectivo en un concepto innecesario como depositos.

Es por esto que menciono que conviene conseguir una AmEx desde ahora, incluso si no estas considerando irte a vivir a otro pais. Si la obtienes en este momento, aunque solo la uses para compras menores, el tener un buen historial crediticio con esa institucion te permitira que si eventualmente te mudas a otro pais, podras transferir tu historial crediticio y seguramente no tendras casi ningun problema en cuestion de tramites relacionados con credito. Ademas te permitira aplicar a las tarjetas de credito promocionales de varias tiendas que las ofrecen (como Best Buy, Macys, etc), que sin un historial crediticio, no te las otorgarian.

Como comentario adicional, al momento de sacar mi American Express, me di cuenta que tienen muy buenos programas de recompensas, principalmente el asegurar tus compras o reservaciones pagadas con la tarjeta.

Aclaracion Importante: las empresas que revisan el historial crediticio a la hora de hacer un contrato no se basan en una tarjeta de credito. Lo hacen a traves de tu numero de seguro social en Estados Unidos (Social Security Number o SSN). Incluso despues de transferir tu historial crediticio a Estados Unidos con American Express, todavia necesitas tramitar tu SSN y relacionarlo con tu nueva AmEx en Estados Unidos.

Espero les sirva.

Tip para cargar los tabs de Firefox 4 uno a la vez

Posted by Gabriel on April 10th, 2011

Firefox

Para la gente que es como yo, y que tiene mas de 30 tabs en Firefox abiertos al mismo tiempo, ya se habrán topado con el problema de que si cierran Firefox y usan la opción de volver a abrir todos los tabs la siguiente vez que lo usen, esto puede causar que el tiempo de carga de Firefox la siguiente vez sea lento.

Hay un buen add-on para Firefox 3.6 llamado BarTab, y que soluciona este problema implementando las siguientes funcionalidades:

  • “Descargar” de memoria los tabs que no hayan sido visitados en un determinado periodo de tiempo (2 hrs, por ejemplo) para evitar consumo de red y memoria por parte de esos tabs.
  • Cargar el contenido de un tab solamente cuando se visite (para evitar consumo red innecesario)

BarTab funciona muy bien, pero no funciona correctamente en Firefox 4. Aquí hay un artículo con instrucciones sobre como editar el archivo .xpi para hacer BarTab parcialmente compatible con Firefox 4 (para permitir la instalación) aunque es poco probable que realmente funcione.

Sin embargo, los desarrolladores de Firefox incluyeron una funcionalidad/configuración que provee la funcionalidad más básica que BarTab ofrece (y la más útil en mi opinión) que es cargar el contenido de un tab (el # de tabs es configurable) a la vez. Es decir, si dejé 30 tabs abiertos de mi sesión anterior, la próxima vez que inicie Firefox, éste solo va a cargar el contenido del último tab activo. Esto también ayuda a que Firefox no se “congele” al abrir threads y conexiones para cargar información de 30+ lugares diferentes al inicio.

En Firefox 4, el setting de configuración viene asignado a 3 tabs, por default, y si quisieran cambiarlo a que solo cargue un tab a la vez, lo que tienen que hacer es:

  1. Ir a la configuración avanzada de Firefox (tecleando about:config en la barra de direcciones)
  2. Buscar el setting: browser.sessionstore.max_concurrent_tabs y dar 2 clicks sobre el.
  3. Para cargar un solo tab a la vez, usar un valor de cero.

Firefox configuracion - cargar un solo tab a la vez

Espero les sirva.

http://www.robertdowney.com

Opiniones sobre contratacion de Desarrolladores de Software en Mexico

Posted by Gabriel on February 5th, 2011

Developer in whiteboard

Disclaimer: Esta es mi opinión personal y no refleja de ninguna manera la opinión o ideas de la empresa para la cual trabajo. Los casos, opiniones o consejos aquí descritos no se basan en mi experiencia en una sola empresa, sino a lo largo de mi carrera.

Los últimos 3 blog posts que leí trataron sobre las opiniones de 3 desarrolladores sobre el proceso de contratación de desarrolladores de software, y especialmente sobre sus aptitudes y actitud. Good to know I’m not alone.

Mi opinión y experiencia personal sobre todo esto es:

En casi cualquier país y tipos de empleo, hay demasiada gente que se termina sintiendo cómoda en su trabajo actual y dejan de aprender. Cuando tengan que buscar otro trabajo, puede que su experiencia les sirva, pero el no haber continuado aprendiendo cosas nuevas sobre su profesión les va a hacer más complicado competir contra gente nueva. Nunca dejes de leer y aprender sobre tu trabajo.

En México, en mi experiencia en personal, mucha gente va a una entrevista sin prepararse, solamente “a ver que sale”. Cuando alguien te pregunta sobre tu experiencia previa y no puedes dar un resumen conciso, eso dice mucho. Siempre hay que estar preparado para hablar sobre tu trabajo y tu experiencia laboral.

A pesar de que me ha tocado trabajar con mucha gente buena, he notado que la mayoría de los desarrolladores en las empresas en las que he trabajado, difícilmente hacen algo relacionado con su profesión en su tiempo libre. Estoy de acuerdo sobre los límites de la vida personal y el trabajo, pero creo que el 100% de la gente que es excelente en su trabajo (sea cual sea el puesto o nivel) es porque les gusta lo que hacen y no se limitan a aprender solamente en sus 8 horas de trabajo. Un programador que llega a su casa, y en cualquier momento, dedica 1 hora de su tiempo libre a aprender algo nuevo sobre programación (Sea leer un blog post, un libro, una certificación) tiene demasiada ventaja sobre cualquier otro desarrollador (del mismo skill-set), tanto para habilidad, como para promociones de puesto, aumentos, etc.

La actitud es importante, de ambas partes. Lo peor que puede pasar en una entrevista es que el entrevistador no sea consciente de la importancia del proceso. La empresa está confiando en él para que haga una recomendación sobre si emplear o no al entrevistado, y eso es crítico para ambos lados. La empresa se hace mejor cada vez que un buen candidato entra a la empresa. Y el entrevistado puede realmente merecer y necesitar el trabajo. Pocas cosas me desagradan como que un entrevistador no le de la importancia debida al proceso o sea arrogante al respecto. Por el otro lado, la actitud del entrevistado jamás debe ser de arrogancia. Nadie quiere contratar a alguien que no va a ser un buen team-player.

Algunas veces, muy pocas, he puesto a candidatos a escribir en una hoja de papel o un pizarrón una hoja de papel, un problema exageradamente sencillo de programación. No importa que tan nervioso estés durante la entrevista, si acaso lo estás, pero programar una función sencilla debería ser parte de la habilidad de cualquier desarrollador. No recuerdo alguien que lo haya contestado decentemente, o siquiera lo haya contestado bien.

A cualquier desarrollador que lea esto:

Evalúate. Si eres el weakest-link en tu equipo o empresa, haz algo por mejorar. Lee y/o solicita ayuda a los demás desarrolladores de tu equipo, consigue un mentor. Si no eres el weakest-link, aún así es seguro que hay alguien en tu equipo o empresa de quien puedes aprender. Hazlo, y además, hazte mentor de alguien que sepa menos que tú.

Ahora…algunas acciones que personalmente creo que mejorarían demasiado la calidad de desarrolladores y haría más fácil el proceso de entrevistar:

  1. Las escuelas deberían contratar expertos en el campo de sus diversas ofertas de carreras profesionales, y siempre actualizar y alinear los materiales de enseñanza en la carrera profesional con los temas y conocimientos requeridos en las empresas.
  2. Cada empresa debería de dar algo de retroalimentación a todos sus candidatos. A pesar de que puede consumir tiempo, por algún lado se tiene que empezar.
  3. Ejercicios y preguntas de desarrollo (coding) deberían ser parte de cualquier entrevista técnica.
  4. Las escuelas, en los últimos semestres antes de que el estudiante se gradúe, deberían proveer talleres para preparar a los estudiantes para entrevistas laborales, y como parte de esos talleres, deberían invitar a personal de las empresas del campo.

Les dejo las frases que se me hacen más notables de los 3 artículos…

  • “…But I have always felt that it was my duty as a professional to also learn things outside of my job. I want to know if a candidate is willing to invest in themselves before I invest three months to train them.”
  • “Hiring the right people is hard. Searching for the right job is hard. Having the right attitude and expectations can make it easier, but nothing can make it easy”
  • “So, if you want to have a career in programming I suggest you spend less time worrying about the fairness of the market or getting what you deserve and more time learning your craft.  Even better, learn what you really want and go after it no matter what
  • “But it never changed what I was going to do or how I was going to do it.  I’ve been programming professionally for over 16 years and I don’t believe I’ll ever stop.  I’ve been learning how to be a better programmer for over 16 years and I hope I’ll never stop.  Every year I find new challenges and ways to grow my skills – most of them outside of work“.
  • “I don’t do this to get a better job and I don’t believe I deserve anything for all of my work.  I’ve done it for me and that is enough.
  • “Sadly developers of low quality are far more common than the ones of decent or high quality.”
  • “Even more sad is the fact that developers having a (very) limited skill set are most often not aware of this fact and consider themselves to be “seniors”.” *shrugs* *sighs*
  • “Am I expecting too much? I don’t think so. Developers have I high responsibility. They produce software to automate business or mission critical processes. One should expect this software to be of high quality. To write high quality software we need good developers!”
  • “I understand that most people are capable of learning anything given the opportunity, but padding their skills makes them look dishonest.”


Ligas a los posts:

Ranting about the quality of developers – Gabriel Schenker

Thoughts on Hiring Developers – Ray Houston

To Thine Own Self Be True – That Other Guy


Copyright © 2007 Gabriel Rodriguez Plancarte. All rights reserved.