मुफ़्त ट्रायल शुरू करें
Searching...
SoBrief
हिन्दी
EnglishEnglish
EspañolSpanish
简体中文Chinese
繁體中文Chinese (Traditional)
FrançaisFrench
DeutschGerman
日本語Japanese
PortuguêsPortuguese
ItalianoItalian
한국어Korean
РусскийRussian
NederlandsDutch
العربيةArabic
PolskiPolish
हिन्दीHindi
Tiếng ViệtVietnamese
SvenskaSwedish
ΕλληνικάGreek
TürkçeTurkish
ไทยThai
ČeštinaCzech
RomânăRomanian
MagyarHungarian
УкраїнськаUkrainian
Bahasa IndonesiaIndonesian
DanskDanish
SuomiFinnish
БългарскиBulgarian
עבריתHebrew
NorskNorwegian
HrvatskiCroatian
CatalàCatalan
SlovenčinaSlovak
LietuviųLithuanian
SlovenščinaSlovenian
СрпскиSerbian
EestiEstonian
LatviešuLatvian
فارسیPersian
മലയാളംMalayalam
தமிழ்Tamil
اردوUrdu
मोर जोएल ऑन सॉफ्टवेयर

मोर जोएल ऑन सॉफ्टवेयर

विविध और कभी-कभी संबंधित विषयों पर और विचार जो सॉफ्टवेयर डेवलपर्स, डिज़ाइनरों और जो अच्छे या बुरे भाग्य से उनके साथ किसी क्षमता में काम करते हैं, उनके लिए रुचिकर होंगे
द्वारा जोएल स्पोल्स्की 2008 320 पृष्ठ
4.05
500+ रेटिंग्स
सुनें
3 दिन के लिए पूर्ण एक्सेस आज़माएँ
सुनना और बहुत कुछ अनलॉक करें!
जारी रखें

मुख्य बातें

1. बेहतरीन डेवलपर्स को ढूँढना और बनाए रखना सक्रिय भर्ती और विशिष्ट माहौल की मांग करता है।

बेहतरीन सॉफ्टवेयर डेवलपर्स, वास्तव में हर क्षेत्र के श्रेष्ठ लोग, आमतौर पर बाजार में उपलब्ध नहीं होते।

भर्ती सक्रिय होती है। चूंकि शीर्ष डेवलपर्स सार्वजनिक जॉब बोर्ड्स पर नौकरी की तलाश कम ही करते हैं, इसलिए कंपनियों को उन्हें सक्रिय रूप से खोजने की जरूरत होती है। इसके लिए संबंधित सम्मेलनों में जाना, इंटर्नशिप के माध्यम से प्रतिभा की पहचान करना और कंपनी या उसके उत्पादों के इर्द-गिर्द एक समुदाय बनाना आवश्यक है ताकि समान सोच वाले लोग आकर्षित हों। केवल बड़े, सामान्य जॉब साइट्स पर निर्भर रहना उचित नहीं क्योंकि वहां अयोग्य उम्मीदवारों की संख्या अधिक होती है।

कार्यस्थल का महत्व। वेतन के अलावा, बेहतरीन डेवलपर्स विशिष्ट परिस्थितियों की तलाश करते हैं। वे ध्यान केंद्रित करने के लिए निजी ऑफिस, उच्च गुणवत्ता वाले उपकरण (मॉनिटर, कुर्सियाँ), बुद्धिमान और सहयोगी सहकर्मियों के साथ सामाजिक माहौल, और अपने काम में स्वतंत्रता और स्वायत्तता को महत्व देते हैं। डेवलपर्स का सम्मान करना और उन्हें "सितारों" की तरह ट्रीट करना उनकी आकर्षण और स्थिरता के लिए बेहद जरूरी है।

पैसे बाद में आते हैं। प्रतिस्पर्धी वेतन उचित है, लेकिन शीर्ष प्रतिभा के लिए यह मुख्य प्रेरक नहीं होता। यदि डेवलपर्स वेतन की शिकायत करते हैं, तो यह अक्सर नौकरी के अन्य पहलुओं जैसे सम्मान की कमी, खराब कार्य परिस्थितियाँ या राजनीतिक असंतोष का संकेत होता है। केवल उच्च वेतन खराब माहौल की भरपाई नहीं कर सकता।

2. सॉफ्टवेयर प्रबंधन केवल आदेश या प्रोत्साहन से नहीं, बल्कि पहचान और साझा जानकारी से होता है।

यहाँ लक्ष्य यह है कि लोग उन लक्ष्यों के साथ पहचान बनाएं जिन्हें आप हासिल करना चाहते हैं।

आदेश और नियंत्रण विफल होता है। सैन्य शैली का प्रबंधन, जहाँ नेता आदेश देते हैं, उच्च तकनीकी टीमों में कारगर नहीं होता। प्रबंधकों के पास अक्सर व्यक्तिगत योगदानकर्ताओं के पास मौजूद तकनीकी जानकारी नहीं होती, जिससे निर्णय खराब होते हैं। यह तरीका बुद्धिमान, स्वायत्त डेवलपर्स को अलग कर देता है जो कार्य के पीछे 'क्यों' समझना पसंद करते हैं।

आर्थिक प्रोत्साहन उल्टा असर करता है। केवल वित्तीय प्रोत्साहन (विशिष्ट मेट्रिक्स के लिए बोनस) के माध्यम से प्रबंधन करना हानिकारक होता है। यह आंतरिक प्रेरणा को कमजोर बाहरी प्रेरणा से बदल देता है और लोगों को मेट्रिक के लिए सिस्टम को गेम करने के लिए प्रोत्साहित करता है, न कि वांछित परिणाम के लिए। यह प्रबंधन की जिम्मेदारी से मुंह मोड़ना है जो प्रभावी सिस्टम बनाने और लोगों को प्रशिक्षित करने की होती है।

पहचान और जानकारी सशक्त बनाती है। सबसे प्रभावी तरीका पहचान प्रबंधन है, जो टीम के भीतर साझा उद्देश्य और निष्ठा की भावना को बढ़ावा देता है (जैसे परिवार)। प्रबंधकों को आवश्यक जानकारी (जैसे वित्तीय लक्ष्य, बाजार संदर्भ) साझा करनी चाहिए ताकि व्यक्ति सूचित निर्णय ले सकें जो संगठन के उद्देश्यों के अनुरूप हों, भले ही परिस्थितियाँ बदल जाएं।

3. एक मजबूत तकनीकी आधार, जिसमें "कठिन" अवधारणाएँ शामिल हैं, वास्तव में सक्षम प्रोग्रामरों के लिए अनिवार्य है।

पॉइंटर्स और रेकर्शन के लिए तर्क करने की क्षमता, अमूर्त सोच और एक साथ कई स्तरों पर समस्या को देखने की योग्यता चाहिए।

जावा स्कूल्स कम पड़ते हैं। केवल जावा और ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग पर केंद्रित विश्वविद्यालय छात्रों को आवश्यक कौशल नहीं दे पाते। पॉइंटर्स (अक्सर C में सिखाए जाते हैं) और रेकर्शन (फंक्शनल प्रोग्रामिंग) जैसी अवधारणाएँ पारंपरिक रूप से "छंटनी" वाली होती हैं जो मानसिक चुस्ती विकसित करती हैं। इनके बिना ऑपरेटिंग सिस्टम जैसे निम्न-स्तरीय सिस्टम या पैरेलल प्रोसेसिंग जैसे उच्च-स्तरीय अमूर्तताओं को समझना मुश्किल होता है।

सिंटैक्स से परे। C या स्कीम जैसी भाषाएँ सीखने का मूल्य केवल उन भाषाओं को जानना नहीं, बल्कि वे मस्तिष्क को जिस तरह प्रशिक्षित करती हैं, उसमें है। ये प्रोग्रामरों को मेमोरी प्रबंधन, प्रदर्शन और विभिन्न अमूर्तता स्तरों के बारे में सोचने के लिए मजबूर करती हैं। यह मानसिक लचीलापन मजबूत सॉफ्टवेयर आर्किटेक्चर डिजाइन करने और जटिल समस्याओं से निपटने के लिए आवश्यक है।

नवाचार पर प्रभाव। इन मूल अवधारणाओं की कमी नवाचार में बाधा डाल सकती है। उदाहरण के लिए, Google के स्केलेबिलिटी के लिए मूलभूत MapReduce एल्गोरिदम सीधे फंक्शनल प्रोग्रामिंग अवधारणाओं (Map और Reduce) से प्रेरित है। जिन कंपनियों के डेवलपर्स के पास यह पृष्ठभूमि नहीं है, वे ऐसे पैरेडाइम्स को समझने या आविष्कार करने में संघर्ष कर सकते हैं।

4. सॉफ्टवेयर विकास कंप्यूटर विज्ञान से अलग एक कला है, जो व्यावहारिक कौशल और स्पष्ट संचार की मांग करती है।

तकनीकी विषयों पर स्पष्ट रूप से लिख पाने की क्षमता एक साधारण योगदानकर्ता प्रोग्रामर और एक नेता के बीच का अंतर है।

CS बनाम विकास। कंप्यूटर विज्ञान की डिग्री सैद्धांतिक आधार प्रदान करती है, लेकिन स्वचालित रूप से सॉफ्टवेयर विकास नहीं सिखाती। व्यावहारिक, प्रोग्रामिंग-केंद्रित पाठ्यक्रम वास्तविक कोडिंग अनुभव के लिए आवश्यक हैं। कई प्रतिष्ठित विश्वविद्यालय सिद्धांत को प्राथमिकता देते हैं, व्यावहारिक कौशल कहीं और सीखना पड़ता है।

लेखन का महत्व। स्पष्ट रूप से लिखने और संवाद करने की क्षमता प्रोग्रामरों के लिए अत्यंत महत्वपूर्ण है। यह प्रचार-प्रसार (जैसे लिनस टॉर्वाल्ड्स का लिनक्स के साथ), संगठन के भीतर प्रभावी संवाद, स्पष्ट विनिर्देश और दस्तावेज़ीकरण, और सहयोग को सक्षम बनाता है। जो प्रोग्रामर अच्छी तरह लिखते हैं, वे अधिक प्रभावशाली और व्यवसाय के लिए मूल्यवान होते हैं।

इन-हाउस जॉब्स की चुनौतियाँ। कई प्रोग्रामिंग नौकरियाँ गैर-सॉफ्टवेयर कंपनियों के लिए "इन-हाउस सॉफ्टवेयर" से जुड़ी होती हैं। ये भूमिकाएँ अक्सर संतोषजनक नहीं होतीं क्योंकि:

  • काम अक्सर त्वरित होता है, न कि सुरुचिपूर्ण।
  • परियोजनाएँ "पर्याप्त अच्छा" होने पर रुक जाती हैं, जिससे सुधार की गुंजाइश कम होती है।
  • प्रोग्रामरों की स्थिति मुख्य व्यवसाय कर्मचारियों की तुलना में कम होती है।
    जहाँ सॉफ्टवेयर ही व्यवसाय है, वहाँ उत्पाद कंपनियाँ डेवलपर्स को शिल्प कौशल में गर्व और करियर उन्नति के अधिक अवसर देती हैं।

5. सफल सॉफ्टवेयर डिज़ाइन उपयोगिता से परे सामाजिक गतिशीलता और भावनात्मक जुड़ाव को भी समेटता है।

एक ऐसा एप्लिकेशन जो वास्तव में कुछ बेहतरीन करता है जिसे लोग करना चाहते हैं, भले ही वह उपयोग में कठिन हो, फिर भी सफल हो सकता है।

उपयोगिता आवश्यक है, पर्याप्त नहीं। सॉफ्टवेयर को उपयोग में आसान बनाना महत्वपूर्ण है, लेकिन सफलता के लिए यह अकेला कारण नहीं है। ऐसे उत्पाद जो मजबूत जरूरत को पूरा करते हैं या आकर्षक फीचर्स देते हैं, खराब उपयोगिता के बावजूद सफल हो सकते हैं (जैसे प्रारंभिक नैपस्टर, टेक्स्ट मैसेजिंग)। इसके विपरीत, अत्यंत उपयोगी सॉफ्टवेयर जो समस्या हल नहीं करता, विफल होगा।

सामाजिक इंटरफ़ेस डिज़ाइन। मानव-मानव संवाद को मध्यस्थता करने वाले सॉफ्टवेयर (जैसे सोशल नेटवर्क, फोरम) के लिए "सामाजिक इंटरफ़ेस" महत्वपूर्ण है। यह इस बात का डिज़ाइन है कि सॉफ्टवेयर उपयोगकर्ता व्यवहार और समुदाय की गतिशीलता को कैसे प्रभावित करता है। यह समाज की सफलता में मदद करता है, भले ही इसका मतलब व्यक्तिगत उपयोगकर्ताओं पर कुछ प्रतिबंध लगाना हो (जैसे स्पैम स्वीकार्यता को नकली बनाना)।

भावनात्मक अपील मायने रखती है। बेहतरीन सॉफ्टवेयर अक्सर उपयोगकर्ताओं के साथ भावनात्मक रूप से जुड़ता है। इसमें शामिल हैं:

  • सौंदर्य और आकर्षण (जैसे iPod का डिज़ाइन)
  • हास्य और व्यक्तित्व (जैसे Winamp की वेबसाइट की कॉपी)
  • उपयोगकर्ताओं को नियंत्रण में महसूस कराना (जैसे iPod का स्क्रॉल व्हील फीडबैक)
    ये तत्व अक्सर शीर्ष प्रतिभा का परिणाम होते हैं और औसत टीमों के लिए दोहराना मुश्किल होते हैं, जिससे स्थायी प्रतिस्पर्धात्मक लाभ बनता है।

6. कठिन, "जटिल" समस्याओं को हल करना वास्तविक व्यावसायिक मूल्य और प्रतिस्पर्धात्मक लाभ का स्रोत है।

बाजार जटिल समस्याओं के समाधान के लिए भुगतान करता है, आसान समस्याओं के लिए नहीं।

मूल्य कठिनाई से आता है। हर काम में एक चुनौतीपूर्ण, अप्रिय मूल समस्या ("मक") होती है। इन कठिन समस्याओं को हल करने की क्षमता को बाजार पुरस्कृत करता है ("पैसा")। आसान समस्याओं पर आधारित व्यवसायों को प्रवेश बाधाओं का सामना करना पड़ता है और प्रतिस्पर्धा तीव्र होती है।

सरल हमेशा मूल्यवान नहीं। सरल, उपयोग में आसान एप्लिकेशन आकर्षक होते हैं, लेकिन यदि वे उपयोगकर्ता या व्यवसाय के लिए महत्वपूर्ण अंतर्निहित जटिलता को हल नहीं करते, तो उनका गहरा मूल्य नहीं होता। जो कंपनियाँ सभी "जटिल" पहलुओं से बचती हैं (जैसे विभिन्न वातावरणों में इंस्टॉल करने योग्य सॉफ्टवेयर का समर्थन), वे अपने बाजार और राजस्व की संभावनाओं को सीमित कर सकती हैं।

डिज़ाइन एक जटिल समस्या है। सुरुचिपूर्ण और अत्यंत उपयोगी सॉफ्टवेयर बनाना स्वयं एक कठिन चुनौती है। इसके लिए महत्वपूर्ण प्रतिभा और प्रयास की आवश्यकता होती है, जो एक स्थायी प्रतिस्पर्धात्मक लाभ का स्रोत बनता है जिसे प्रतियोगी आसानी से नकल नहीं कर सकते, भले ही सतह सरल दिखे। लगातार नई, कठिन समस्याओं को हल करना व्यवसाय को बढ़ने और बाजार का विस्तार करने देता है।

7. यथार्थवादी समय-सारिणी, डेटा से सूचित, स्कोप प्रबंधन और सफल उत्पाद वितरण के लिए आवश्यक है।

आप अपने समय को उन चीज़ों पर खर्च करना चाहते हैं जो सबसे अधिक मूल्य देती हैं। और यह जानना जरूरी है कि आपकी मेहनत की कीमत क्या होगी, इसके बिना आप सही योजना नहीं बना सकते।

डेवलपर्स समय-सारिणी से बचते हैं। प्रोग्रामर अक्सर समय-सारिणी बनाना पसंद नहीं करते, इसे अवास्तविक या बोझिल मानते हैं। हालांकि, समय-सारिणी फीचर प्राथमिकता और संसाधन आवंटन के लिए सूचित निर्णय लेने के लिए आवश्यक है। इनके बिना परियोजनाएँ अक्सर विलंबित हो जाती हैं।

साक्ष्य-आधारित समय-सारिणी (EBS)। एक विश्वसनीय तरीका है काम को छोटे कार्यों (16 घंटे से कम) में विभाजित करना, वास्तविक समय (विच्छेद सहित) ट्रैक करना ताकि व्यक्तिगत "गति" (अनुमान/वास्तविक) निकाली जा सके, और इस ऐतिहासिक डेटा का उपयोग मोंटे कार्लो सिमुलेशन में संभावित शिपिंग तिथियों की भविष्यवाणी के लिए करना। यह व्यक्तिगत अनुमान पूर्वाग्रह और अप्रत्याशित कारकों को ध्यान में रखता है।

समय-सारिणी कटौती को मजबूर करती है। यथार्थवादी समय-सारिणी का एक मुख्य लाभ यह है कि यह दिखाती है जब योजनाबद्ध फीचर्स उपलब्ध समय से अधिक हो जाते हैं। इससे आवश्यक फीचर कटौती होती है, जिससे सबसे मूल्यवान फीचर्स को प्राथमिकता मिलती है और उत्पाद जल्दी रिलीज़ होता है। समय दबाव के कारण कटे फीचर्स अक्सर कम महत्वपूर्ण होते हैं।

8. मौजूदा कोड को पुनर्गठित करना और सुधारना आमतौर पर नए सिरे से शुरू करने से बेहतर होता है।

एक कमज़ोर कंपनी, शायद एक्सप्रेस-पैकेज-डिलीवरी व्यवसाय से आई कोई, कोड को फेंक कर नया शुरू करने का फैसला कर सकती है।

कोड पुनर्लेखन जोखिम भरा है। जब मौजूदा कोड गड़बड़ या वर्तमान उद्देश्य के लिए उपयुक्त न हो, तो नया कोड बेस शुरू करना आकर्षक लगता है। लेकिन यह आमतौर पर गलत होता है क्योंकि यह संचित ज्ञान (बग फिक्स सहित) को खो देता है और अनुमान से कहीं अधिक समय लेता है, अक्सर शिप नहीं होता या नई समस्याएँ लाता है।

सफाई प्रभावी है। बेहतर तरीका है मौजूदा कोड बेस को "साफ़" या पुनर्गठित करना। इसका मतलब है छोटे, तार्किक परिवर्तन करना ताकि आंतरिक संरचना, पठनीयता और रखरखाव में सुधार हो, बिना नए फीचर्स जोड़े या मौजूदा कार्यक्षमता को तोड़े। यह प्रक्रिया क्रमिक और पूर्वानुमेय हो सकती है।

पुनर्गठन के लाभ। कोड की सफाई, यहां तक कि लाइन दर लाइन, नए फीचर्स जोड़ना आसान बनाती है, नए बग्स के आने की संभावना कम करती है (क्योंकि जटिल लॉजिक को फिर से नहीं लिखा जा रहा), और मौजूदा कोड में निहित मूल्यवान ज्ञान को संरक्षित करती है। यह स्वस्थ कोड बेस के लिए अधिक कुशल और कम जोखिम भरा रास्ता है।

9. सॉफ्टवेयर की कीमत निर्धारण में बाजार की गतिशीलता, ग्राहक मूल्य और दीर्घकालिक रणनीति को समझना आवश्यक है।

सबसे बड़ी गलती जो सॉफ्टवेयर कंपनियाँ करती हैं, वह है बहुत कम चार्ज करना, जिससे उन्हें पर्याप्त आय नहीं मिलती और वे बंद हो जाती हैं। उससे भी बड़ी गलती, हाँ, सबसे बड़ी गलती से भी बड़ी, है बहुत अधिक चार्ज करना, जिससे ग्राहक नहीं मिलते और वे बंद हो जाती हैं।

मांग वक्र नीचे की ओर झुका होता है। सामान्यतः, जितनी अधिक कीमत होगी, उतने कम ग्राहक खरीदेंगे। लक्ष्य मात्र इकाइयों की बिक्री अधिकतम करना नहीं, बल्कि...

[त्रुटि: उत्तर अधूरा है]

अंतिम अपडेट:

Report Issue

समीक्षा सारांश

4.05 में से 5
औसत 500+ Goodreads और Amazon से रेटिंग्स.

मोर जोएल ऑन सॉफ्टवेयर जोएल स्पोलस्की द्वारा लिखे गए ब्लॉग पोस्टों का संग्रह है, जो सॉफ्टवेयर विकास और व्यवसाय के विभिन्न पहलुओं को समेटे हुए है। पाठक स्पोलस्की की चतुराई, गहरी समझ और स्पष्ट लेखन शैली की खूब सराहना करते हैं। यह पुस्तक प्रोग्रामिंग, प्रबंधन और सॉफ्टवेयर उद्योग से जुड़ी महत्वपूर्ण सलाह प्रदान करती है। हालांकि कुछ सामग्री पुरानी हो सकती है, फिर भी कई सिद्धांत आज भी प्रासंगिक बने हुए हैं। समीक्षकों ने इस पुस्तक को आनंददायक और ज्ञानवर्धक पाया, खासकर उन लोगों के लिए जो सॉफ्टवेयर विकास या उद्यमिता में हैं। कुछ आलोचकों ने पिछली रचनाओं से दोहराव और पुरानी जानकारी की ओर इशारा किया है, लेकिन कुल मिलाकर, यह पुस्तक अपनी व्यावहारिक बुद्धिमत्ता और रोचक विषय-वस्तु के लिए अच्छी तरह स्वीकार की गई है।

Your rating:
4.47
114 रेटिंग्स
Want to read the full book?

अक्सर पूछे जाने वाले प्रश्न

1. What is More Joel on Software by Joel Spolsky about?

  • Collection of essays: The book is a sequel collection of essays, rants, and insights on software development, management, design, and business, aimed at software developers, designers, and managers.
  • Author’s expertise: Joel Spolsky, founder of Fog Creek Software and creator of the Joel on Software blog, draws on his extensive industry experience, including time at Microsoft.
  • Wide-ranging topics: It covers managing people, hiring, software design, project management, business strategies, and the realities of running software companies.
  • Blend of technical and managerial: The essays mix technical depth with practical management and business advice, making it relevant for a broad audience in tech.

2. Why should I read More Joel on Software by Joel Spolsky?

  • Practical, real-world wisdom: Joel shares actionable advice from his career, including managing teams, hiring, and running software businesses.
  • Engaging and accessible style: The book combines humor, candid storytelling, and deep insights, making complex topics easy to understand and enjoyable to read.
  • Timeless lessons: Despite being published in 2008, its lessons on software design, project management, and developer hiring remain highly relevant.
  • Broad appeal: Both technical and non-technical readers in the software industry will find valuable takeaways.

3. What are the key takeaways from More Joel on Software by Joel Spolsky?

  • Hiring and managing talent: Great developers are rare and crucial; effective management relies on intrinsic motivation and team alignment.
  • Design and usability matter: Small, incremental improvements in design lead to great user experiences and successful products.
  • Project management realities: Evidence-Based Scheduling and understanding legacy complexity are essential for realistic planning and delivery.
  • Customer service and business growth: Exceptional customer service and thoughtful feature prioritization drive long-term business success.

4. Who is Joel Spolsky, author of More Joel on Software, and why is his perspective valuable?

  • Industry veteran: Joel Spolsky is a recognized software development expert, founder of Fog Creek Software, and creator of the influential Joel on Software blog.
  • Microsoft and Yale background: He has a computer science degree from Yale and worked on Microsoft Excel, giving him deep technical and business insight.
  • Thought leader: Joel’s writing has shaped how many developers and managers think about software, hiring, and business.
  • Community builder: He has fostered a large community of software professionals through his writing and company initiatives.

5. What are Joel Spolsky’s key insights on hiring and managing great software developers in More Joel on Software?

  • Great developers are rare: The best programmers are often not actively seeking jobs and are found through internships, communities, or direct recruitment.
  • Effective hiring methods: Joel recommends building talent pipelines via internships and engaging with developer communities.
  • Management styles: He contrasts Command and Control, Econ 101 (incentives), and Identity Management, advocating for the latter to foster intrinsic motivation.
  • Team alignment: Creating a culture where employees identify with company goals leads to higher productivity and satisfaction.

6. How does More Joel on Software explain the impact of design on software usability and community building?

  • Design is incremental: Small, continuous improvements in design accumulate to create superior user experiences.
  • Philosophies in design: Joel uses examples like Apple vs. Microsoft font rendering to illustrate trade-offs in design decisions.
  • Social interface design: He emphasizes designing for human-human interaction, not just human-computer, to build strong communities and reduce abuse.
  • Attention to detail: Every minor fix or feature can help more users succeed with the software.

7. What is Evidence-Based Scheduling (EBS) as described by Joel Spolsky in More Joel on Software?

  • Data-driven project planning: EBS breaks projects into small tasks, tracks actual time spent, and uses historical data to predict completion dates.
  • Monte Carlo simulations: The method generates probability curves for shipping dates, offering realistic timelines.
  • Accounts for interruptions: EBS naturally includes time lost to meetings or distractions, improving schedule accuracy.
  • Active management tool: It helps identify bottlenecks, adjust workloads, and supports continuous refinement of project plans.

8. Why are Microsoft Office file formats so complicated, according to More Joel on Software, and what workarounds does Joel Spolsky suggest?

  • Legacy and feature complexity: Office formats must support every feature, including legacy ones, resulting in immense complexity.
  • Binary format challenges: Even with documentation, formats like Excel’s BIFF are hard to implement due to subtle behaviors and multiple systems.
  • Recommended workarounds: Joel suggests using Office automation (COM) for complex tasks or opting for simpler formats like CSV, HTML, or RTF when possible.
  • Pragmatic approach: Letting Office handle conversions or using simpler formats saves time and reduces errors.

9. What advice does Joel Spolsky give to aspiring programmers and computer science students in More Joel on Software?

  • Master hard concepts: He warns against “JavaSchools” that avoid teaching pointers and recursion, which are essential for mental flexibility.
  • Importance of writing: Strong writing skills are crucial for effective communication and leadership in programming roles.
  • Seek practical experience: Internships and hands-on, programming-intensive courses help students build real skills and stand out to employers.
  • Learn fundamentals: Exposure to C and functional languages like Scheme is vital for deep understanding.

10. How does Joel Spolsky recommend running successful beta tests in software development, as described in More Joel on Software?

  • Controlled beta over open beta: Use an application process to select committed testers, avoiding overwhelming or unhelpful feedback.
  • Long, structured beta cycles: Plan for 8–10 weeks with multiple releases, and avoid adding features mid-beta to ensure thorough testing.
  • Manage tester engagement: Only a fraction of testers provide useful feedback, so recruit accordingly and stagger releases to maintain interest.
  • Feedback quality over quantity: Focus on actionable feedback to improve the product before release.

11. What are Joel Spolsky’s key tips for providing remarkable customer service in a software business, as outlined in More Joel on Software?

  • Fix problems at the root: Address both the immediate issue and its underlying cause to prevent recurrence.
  • Take responsibility: Admitting fault and using empathetic communication defuses customer anger and builds goodwill.
  • Turn customers into fans: Exceptional service, such as hassle-free returns and quick resolutions, creates loyal advocates.
  • Long-term benefits: Great customer service reduces support costs and is more effective than traditional marketing.

12. What are the most memorable stories and quotes from More Joel on Software by Joel Spolsky, and what do they illustrate?

  • Bill Gates spec review: Joel recounts Bill Gates reading and annotating every page of a 500-page spec, highlighting the importance of thoroughness and attention to detail.
  • “Smart, and Gets Things Done, Not a Jerk”: This hiring mantra emphasizes the value of intelligence, productivity, and teamwork.
  • “To create a usable piece of software, you have to fight for every fix, every feature, every little accommodation that will get one more person up the curve.” This quote illustrates the painstaking effort required for software quality.
  • Stories as teaching tools: Joel’s anecdotes make abstract lessons concrete and memorable for readers.

लेखक के बारे में

जोएल स्पोल्स्की एक प्रसिद्ध सॉफ़्टवेयर डेवलपर, लेखक और उद्यमी हैं। उन्होंने फॉग क्रीक सॉफ़्टवेयर और स्टैक ओवरफ़्लो की स्थापना की, और अपने प्रभावशाली ब्लॉग "जोएल ऑन सॉफ़्टवेयर" के लिए जाने जाते हैं। स्पोल्स्की की लेखन शैली को उसकी स्पष्टता, हास्य और जटिल अवधारणाओं को सरल भाषा में समझाने की क्षमता के लिए सराहा जाता है। वे सॉफ़्टवेयर उद्योग में अपने व्यापक अनुभव, जिसमें माइक्रोसॉफ्ट में बिताया गया समय भी शामिल है, से प्रेरणा लेकर प्रोग्रामिंग, प्रबंधन और व्यावसायिक रणनीतियों पर गहन अंतर्दृष्टि प्रदान करते हैं। उनकी किताबें, जैसे "मोर जोएल ऑन सॉफ़्टवेयर," उनके लोकप्रिय ब्लॉग पोस्ट का संग्रह हैं, जो सॉफ़्टवेयर पेशेवरों और उद्यमियों दोनों के लिए व्यावहारिक सलाह और विचारोत्तेजक विचार प्रस्तुत करती हैं। उनके कार्य ने सॉफ़्टवेयर विकास समुदाय पर गहरा प्रभाव डाला है, जिससे वे इस क्षेत्र में एक सम्मानित व्यक्तित्व बन गए हैं।

Follow
सुनें
Now playing
मोर जोएल ऑन सॉफ्टवेयर
0:00
-0:00
Now playing
मोर जोएल ऑन सॉफ्टवेयर
0:00
-0:00
1x
Queue
Home
Swipe
Library
Get App
Try Full Access for 3 Days
Listen, bookmark, and more
Compare Features Free Pro
📖 Read Summaries
Read unlimited summaries. Free users get 3 per month
🎧 Listen to Summaries
Listen to unlimited summaries in 40 languages
❤️ Unlimited Bookmarks
Free users are limited to 4
📜 Unlimited History
Free users are limited to 4
📥 Unlimited Downloads
Free users are limited to 1
Risk-Free Timeline
आज: तुरंत एक्सेस पाएं
26,000+ किताबों का पूरा सारांश सुनें। यानी 12,000+ घंटे का ऑडियो!
दिन 2: ट्रायल रिमाइंडर
हम आपको सूचना भेजेंगे कि आपका ट्रायल जल्द समाप्त हो रहा है।
दिन 3: आपकी सदस्यता शुरू होगी
आपसे शुल्क लिया जाएगा Jun 13,
उससे पहले कभी भी रद्द करें।
Consume 2.8× More Books
2.8× more books Listening Reading
Our users love us
600,000+ readers
Trustpilot Rating
TrustPilot
4.6 Excellent
This site is a total game-changer. I've been flying through book summaries like never before. Highly, highly recommend.
— Dave G
Worth my money and time, and really well made. I've never seen this quality of summaries on other websites. Very helpful!
— Em
Highly recommended!! Fantastic service. Perfect for those that want a little more than a teaser but not all the intricate details of a full audio book.
— Greg M
Save 62%
Yearly
$119.88 $44.99/year/yr
$3.75/mo
Monthly
$9.99/mo
Start a 3-Day Free Trial
3 days free, then $44.99/year. Cancel anytime.
Unlock a world of fiction & nonfiction books
26,000+ books for the price of 2 books
Read any book in 10 minutes
Discover new books like Tinder
Request any book if it's not summarized
Read more books than anyone you know
#1 app for book lovers
Lifelike & immersive summaries
30-day money-back guarantee
Download summaries in EPUBs or PDFs
Cancel anytime in a few clicks
Scanner
Find a barcode to scan

We have a special gift for you
Open
38% OFF
DISCOUNT FOR YOU
$79.99
$49.99/year
only $4.16 per month
Continue
2 taps to start, super easy to cancel
Settings
General
Widget
Loading...
We have a special gift for you
Open
38% OFF
DISCOUNT FOR YOU
$79.99
$49.99/year
only $4.16 per month
Continue
2 taps to start, super easy to cancel