बड़ा अच्छा सवाल! जैसा कि whatsisname ने अपने जवाब में कहा है, "परिचित को पर्याप्त क्रेडिट नहीं दिया जाता है।" एक अलग टूल, अलग फ्रेमवर्क, अलग-अलग भाषा जो आप उपयोग करने के आदी हैं, उससे बहुत बेहतर हो सकता है , और जब आप रस्सियों को सीखते हैं तब भी आप इसके साथ बहुत कम उत्पादक होंगे।
मैं डिजिटल एजेंसियों में ASP.NET डेवलपर के रूप में कुछ वर्षों से काम कर रहा हूँ जहाँ हमारे पास बड़ी परियोजनाओं, छोटी परियोजनाओं, तंग परियोजनाओं, अच्छी तरह से गद्देदार परियोजनाओं आदि का मिश्रण है, हम अपने कौशल का विस्तार करने के लिए क्या करने की कोशिश करते हैं, "सॉफ्ट टारगेट" की तलाश करें, छोटी परियोजनाएं, जिनमें दर्दनाक रूप से तंग और कठिन समय सीमाएं नहीं हैं, और उन्हें नए तकनीक का उपयोग करने के अवसर के रूप में उपयोग करें जो बेहतर हो सकता है। .NET 2.0, 3.5, 4.0, ASP.NET MVC, Linq to SQL, Entity Framework - इन सभी में, मैंने पहली बार इस तरह की परियोजना में उपयोग किया है।
यदि आप अपने अवसरों को इस तरह ले सकते हैं, तो उम्मीद है, आप परिचितता की कमी के बिना सही उपकरण चुनने के लिए बड़े विकल्पों के साथ तैयार होंगे। जूलियो के उदाहरण की तरह: उन्हें एक लक्ष्य मिला जहां वे रूबी को अपने प्रदर्शनों की सूची में शामिल कर सकते हैं, और अब आगे जा कर वे जावा और रूबी के बीच चयन कर सकते हैं।
लेकिन अगर समय सीमा कम और ठोस है और परियोजना महत्वपूर्ण है, तो मैं आपको परिचित उपकरणों के साथ रहने की सलाह दूंगा। कुछ अलग हो सकता है बेहतर अनुकूल हो, लेकिन इस तरह की परियोजनाओं में, यह सब जोखिम के बारे में है ।