1 पॉइंट द्वारा GN⁺ 2024-06-29 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • यह सवाल पूछता है कि आपको उसे सबसे बेहतरीन codebase क्यों लगा
  • साथ ही यह भी पूछता है कि क्या अच्छी practices को ऊपर से लागू कराने वाला कोई व्यक्ति था, क्या यह बेहतरीन engineers के साथ काम करने की वजह से था, या इसके पीछे कोई और कारण था

1 टिप्पणियां

 
GN⁺ 2024-06-29
Hacker News टिप्पणी
  • Google का monorepo tooling के लिहाज़ से बेहद उत्कृष्ट है

    • पूरे codebase का snapshot कुछ ही सेकंड में बनाया जा सकता है
    • builds पूरी तरह reproducible हैं और build cluster पर चलती हैं
    • build configuration language बहुत सरल और संक्षिप्त है
    • code search तुरंत उपलब्ध है
    • file history तुरंत लोड हो जाती है
    • line-by-line blame कुछ ही सेकंड में लोड हो जाता है
    • लगभग हर file में symbol lookup तुरंत संभव है
    • साझा culture, auto-linter, और presubmit के ज़रिए consistent style लागू की जाती है
    • file/version/line पर deep-link करने वाले shortcuts हैं, जिससे code share करना आसान होता है
    • कई presubmit checks code/test quality सुनिश्चित करते हैं
    • code review और code change के समय test pairing अनिवार्य है
  • AOL का server code बहुत उत्कृष्ट था

    • इसे उन लोगों ने लिखा था जिन्हें Unix programming और event loop के इस्तेमाल की गहरी समझ थी
    • यह C language में लिखा गया था, और उम्मीद की जाती थी कि यह महीनों तक crash हुए बिना चलेगा
    • असामान्य shutdown होने पर owner को email से core backtrace भेजा जाता था
    • memory leak होने पर operations team तुरंत प्रतिक्रिया देती थी
    • हर चीज़ को restart के बिना चल रहे server पर फिर से reload किया जा सकता था
    • TCP control port और TCL interpreter का इस्तेमाल करके server को manage किया जाता था
    • "No Threads Kernel" के साथ यह दर्जनों से लेकर सैकड़ों physical machines तक scale हुआ
    • 200 Unix developers के बीच एक साझा समझ थी
    • technical writers developers का interview लेकर ऐसी किताबें लिखते थे जिन्हें बाहरी developers तक पहुंचाया जा सके
    • disk पर लिखे बिना network messages भेजने और प्राप्त करने के सिद्धांत का पालन किया जाता था
  • पिछली नौकरी का codebase बहुत उत्कृष्ट था

    • engineers के पास शानदार skills थीं और उनमें ego नहीं था
    • टीम में 4 senior और 3 principal engineers थे
    • हर नई requirement आने पर उस पर सभ्य तरीके से चर्चा होती थी
    • junior members भी मौजूदा code को आसानी से follow कर सकते थे
  • Postgres codebase बहुत अच्छी तरह संगठित है

    • memory safety की चिंता करने की ज़रूरत नहीं पड़ती
    • macros का सावधानी से इस्तेमाल करके इंसानों का सम्मान किया गया है
    • Postgres codebase को development का gold standard माना जाता है
    • pgrx टीम को धन्यवाद
  • बड़े Python service का integration test framework बहुत उत्कृष्ट था

    • यह मौजूदा integration test framework के ऊपर बनाया गया था
    • test components के लिए स्पष्ट semantics परिभाषित किए गए थे
    • test components को शुरुआती set के रूप में बनाया गया था
    • code review के ज़रिए यह सुनिश्चित किया जाता था कि नए components उन semantics का पालन करें
    • लंबे समय में यह अच्छी तरह काम नहीं कर पाया
  • Google3 codebase बहुत विशाल है और अच्छी तरह काम करता है

    • हर बदलाव पर dependencies फिर से चलाई जाती हैं
    • commits efficient immutable snapshots हैं
    • यह GitHub से कहीं बेहतर है
  • मैंने खुद जो codebase लिखा, वही सबसे उत्कृष्ट था

  • Cocotron codebase बहुत प्रभावशाली था

    • मैं यह खोज रहा था कि Mac Cocoa app को Windows पर कैसे port किया जाए
    • एक ही व्यक्ति ने सभी ज़रूरी APIs implement कीं
    • इसे जटिल custom GUI app में सफलतापूर्वक इस्तेमाल किया गया
    • focus महत्वपूर्ण है
  • Facebook का codebase लगातार code upgrades संभव बनाता है

    • language design और tools पर बहुत मेहनत की गई
    • पुराने code को लगातार upgrade किया जाता है
    • दूसरी कंपनियों के codebases में बड़े rewrite के बाद transition मुश्किल था
  • CouchDB का HTTP API एक ही file में समाहित था

    • database और web programming सीखने के लिए यह एक अच्छा शुरुआती बिंदु था
    • बाद में इसे टीम ने refactor किया
    • inspiration से वास्तविक उपयोग तक के बदलाव को देखना दिलचस्प था