Grande question! Comme l'a dit whatsisname dans sa réponse, "la familiarité n'est pas suffisamment valorisée". Un outil différent, un cadre différent, un langage différent pourraient être bien meilleurs que ce que vous avez l'habitude d'utiliser, et vous seriez toujours beaucoup moins productif avec lui la première fois que vous apprendrez les cordes.
Je travaille depuis quelques années en tant que développeur ASP.NET dans des agences numériques où nous avons un mélange de gros projets, de petits projets, de projets serrés, de projets bien rembourrés, etc. Ce que nous essayons de faire, d'élargir nos compétences, est de rechercher des "cibles souples", des projets plus petits qui n'ont pas de délais douloureusement serrés et durs, et de les utiliser comme une opportunité d'utiliser de nouvelles technologies qui pourraient être supérieures. .NET 2.0, 3.5, 4.0, ASP.NET MVC, Linq to SQL, Entity Framework - tous, je les ai utilisés pour la première fois dans un tel projet.
Si vous pouvez saisir vos opportunités comme ça, alors j'espère que vous serez prêt avec une plus grande suite d'options pour choisir le bon outil sans souffrir d'un manque de familiarité. Tout comme dans l'exemple de Julio: ils ont trouvé une cible où ils pourraient ajouter Ruby à leur répertoire, et maintenant, ils peuvent choisir entre Java et Ruby.
Mais si le délai est court et solide et que le projet est important, je vous recommande de vous en tenir aux outils familiers. Quelque chose de différent pourrait être mieux adapté, mais dans des projets comme celui-ci, tout est question de risque .