Gran pregunta! Como dijo whatsisname en su respuesta, "a la familiaridad no se le da suficiente crédito". Una herramienta diferente, un marco diferente, un lenguaje diferente podría ser un mucho mejor de lo que está acostumbrado a usar, y aún sería mucho menos productivo con él la primera vez que aprendió las cuerdas.
He estado trabajando durante algunos años como desarrollador de ASP.NET en agencias digitales donde tenemos una combinación de grandes proyectos, pequeños proyectos, proyectos ajustados, proyectos bien acolchados, etc. Lo que intentamos hacer para expandir nuestras habilidades, es buscar "objetivos blandos", proyectos más pequeños que no tengan plazos estrictamente ajustados y difíciles, y utilizarlos como una oportunidad para utilizar nuevas tecnologías que podrían ser superiores. .NET 2.0, 3.5, 4.0, ASP.NET MVC, Linq to SQL, Entity Framework, todos los he usado por primera vez en un proyecto de este tipo.
Si puede aprovechar sus oportunidades así, entonces, con suerte, estará listo con un conjunto más grande de opciones para elegir la herramienta adecuada sin sufrir una falta de familiaridad. Al igual que en el ejemplo de Julio: encontraron un objetivo donde podrían agregar Ruby a su repertorio, y ahora pueden elegir entre Java y Ruby.
Pero si la fecha límite es corta y sólida y el proyecto es importante, te recomiendo que te quedes con las herramientas familiares. Algo diferente podría ser más adecuado, pero en proyectos como ese, todo se trata de riesgo .