"मैं Fabrice Bellard का सम्मान करता हूँ" - John Carmack
(twitter.com/ID_AA_Carmack)- Doom/Quake बनाने वाले John Carmack ने कहा कि वे Fabrice Bellard का सम्मान करते हैं
"लगभग निश्चित रूप से वह समग्र प्रोग्रामिंग क्षमता में मुझसे कहीं बेहतर होंगे"
- यह टिप्पणी उन्होंने किसी द्वारा Fabrice Bellard का wiki page साझा किए जाने पर लिखे गए पोस्ट को उद्धृत करते हुए छोड़ी
पेरिस में शांत जीवन जीने वाले एक फ़्रांसीसी इंजीनियर ने 30 वर्षों तक बिना नाम कमाए वह सॉफ़्टवेयर लिखा है, जिस पर आज पूरा इंटरनेट निर्भर है
- दुनिया भर की video streaming और cloud virtualization को संभालने वाले काफ़ी महत्वपूर्ण code, Silicon Valley के बाहर, पेरिस के एक इंजीनियर द्वारा अकेले बनाए गए open source पर आधारित हैं
- video·audio formats को प्रोसेस करने वाला FFmpeg, YouTube, Netflix, VLC आदि में चलने वाले इंटरनेट के अदृश्य इंजन की तरह काम करता है
- machine emulator QEMU, आधुनिक virtualization की नींव है, जिसके ऊपर Linux hypervisor KVM चलता है और प्रमुख cloud की VM infrastructure बनाई गई है
- इसके अलावा उन्होंने TCC, JSLinux, QuickJS, NNCP समेत कई projects अकेले विकसित किए, और उस समय के मानक के अनुसार pi के सबसे अधिक digits भी स्वयं निकाले गए formula से गणना किए
- marketing या SNS के बिना, telecom कंपनी Amarisoft में CTO रहते हुए भी वे आज तक अपने personal projects जारी कर रहे हैं
व्यक्ति परिचय
- नाम Fabrice Bellard, जन्म 1972, Grenoble, France
- फ्रांस के शीर्ष engineering school École Polytechnique में अध्ययन
- उन्होंने कभी Silicon Valley का रुख नहीं किया, न ही कोई startup empire खड़ा किया; बस code लिखने पर ध्यान दिया
- Twitter, Instagram नहीं; interviews भी लगभग नहीं देते
- उनकी personal site, style·font·marketing copy के बिना project titles और links की एक साधारण सूची के रूप में है
FFmpeg — इंटरनेट का अदृश्य इंजन
- 2000 में 28 वर्ष की उम्र में शुरू किया गया encoding·decoding·streaming के लिए open source multimedia framework
- मौजूद लगभग हर video·audio format को, एक library में, हर operating system पर प्रोसेस करना—यह सब उन्होंने अकेले implement किया
- कई वर्षों तक उन्होंने स्वयं इस project का नेतृत्व किया
- आज YouTube, Netflix, VLC इसका उपयोग करते हैं, और Chrome·Firefox भी इसके कुछ हिस्से इस्तेमाल करते हैं
- हर Android phone, iPhone, smart TV, और video editing tools के भीतर FFmpeg चलता है
- पिछले 20 वर्षों में आपने स्क्रीन पर कोई video देखा है, तो संभव है कि उसी code ने उसे प्रोसेस किया हो
QEMU — आधुनिक virtualization की नींव
- 2003 में शुरू किया गया machine emulator और virtualization tool, जिसे 2005 के version 0.7.1 तक उन्होंने अकेले लिखा
- यह किसी भी operating system को दूसरे operating system के ऊपर चलाने में सक्षम बनाता है
- Linux kernel hypervisor KVM, QEMU के ऊपर चलता है
- AWS, Google Cloud, Microsoft Azure, IBM Cloud सहित सभी प्रमुख cloud providers, इसी पर आधारित infrastructure में VM चलाते हैं
- इसे पृथ्वी पर सबसे अधिक उद्धृत cloud infrastructure code में से एक माना जाता है
अन्य प्रमुख solo projects
- 2001 के International Obfuscated C Code Contest के विजेता छोटे C compiler ने आगे चलकर TCC(Tiny C Compiler) का रूप लिया
- TCC, Linux kernel को source से 15 सेकंड के भीतर compile और boot करा सकता है
- 2004 में अपने personal desktop computer और स्वयं निकाले गए Bellard's formula algorithm से, उस समय के हिसाब से pi के सबसे अधिक digits की गणना की
- 2011 में pure JavaScript में लिखा गया, browser में Linux चलाने वाला PC emulator JSLinux जारी किया
- 2019 में ऐसे environments जहाँ V8 फिट नहीं बैठता के लिए उपयुक्त, छोटा और पूर्ण JavaScript engine QuickJS जारी किया
- 2021 में neural network आधारित lossless data compressor NNCP जारी किया, और Large Text Compression Benchmark में तुरंत शीर्ष स्थान ले लिया
LLM से जुड़े projects
- LLM को local में चलाने वाला REST API web server TextSynth Server बनाया
- language model का उपयोग कर, मौजूदा algorithms से बेहतर compression ratio पर text·short messages को compress करने वाले ts_zip, ts_sms जारी किए
- बहुत low bitrate वाला audio compression system TSAC जारी किया
- दिसंबर 2025 में, लगभग बिना memory वाले environments को ध्यान में रखकर, QuickJS से अलग बनाया गया microcontroller-उपयुक्त JavaScript engine Micro QuickJS जारी किया
Amarisoft और काम करने का तरीका
- 2012 में telecom कंपनी Amarisoft की सह-स्थापना की और CTO के रूप में कार्यरत हैं
- Amarisoft, दुनिया भर के telecom operators और research labs द्वारा उपयोग किए जाने वाले 4G·5G base station software विकसित करती है
- 10 साल से अधिक समय तक कंपनी चलाते हुए भी, वे अपनी personal homepage(bellard.org) के माध्यम से personal projects जारी करते रहे हैं
- Silicon Valley गए बिना, वे आज भी इंटरनेट को चुपचाप संभालने वाला code जारी करते जा रहे हैं
1 टिप्पणियां
Hacker News की टिप्पणियाँ
Bellard के योगदानों की सूची देखें तो उनकी शुद्ध क्षमता भी अद्भुत है, लेकिन उससे भी ज़्यादा ध्यान खींचने वाली बात है क्या चुनना है, इसका बोध
उन्होंने बार-बार ऐसे काम चुने हैं जो बहुत बड़ी संख्या में लोगों के लिए उपयोगी बनते हैं, और यह बात उनकी तकनीकी क्षमता से भी अधिक आश्चर्यजनक लगती है
शायद जीवन का सबसे महत्वपूर्ण प्रश्न यही है कि क्या करना है, यह तय करना
modern computing में developer experience की दलदल बहुत ज़्यादा है, और भले ही हर कोई इसे झेलता है, सच में उसे ठीक करने निकलने वाले लोग बहुत कम हैं
संक्षेप में, यह दर्शन है: “जो चीज़ें अच्छी होनी चाहिए, वे उतनी अच्छी नहीं हैं, और मैं सीखकर उन्हें बेहतर बना सकता हूँ”, और व्यापक अर्थ में यह “बस कर सकते हो” के काफ़ी करीब है
चयन और execution दोनों महत्वपूर्ण होंगे, लेकिन कई industries इसलिए खुलीं क्योंकि किसी ने पहले मुश्किल रहे काम को आसान बना दिया
खासकर अगर आप प्रभाव पैदा करना चाहते हैं, तो जीवन भर किस पर समय लगाना है यह चुनना महत्वपूर्ण है, और कई बार सही समस्या चुनना उचित solution सोचने से भी कठिन होता है
Bellard के मामले में यह 100x से भी ज़्यादा हो सकता है
बात 19 घंटे काम करने, code lines बढ़ाने या PR की संख्या बढ़ाने की नहीं है, बल्कि ऐसे elegant solutions देने की है जिनका व्यापक प्रभाव हो और जिनके बारे में किसी और ने सोचा भी न हो
हर क्षेत्र की कठिन समस्याएँ कोई रहस्य नहीं होतीं; आख़िरकार सवाल यह है कि क्या आपके पास उन पर कई साल झोंकने की क्षमता, हिम्मत और इच्छाशक्ति है
दिलचस्प बात यह है कि Bellard का ज़्यादातर काम देखने में specifications को C में उतारने जैसा लगता है
प्रमुख projects में ffmpeg(codec specs), qEmu(instruction set specs), QuickJS(EcmaScript spec), tinyC(C spec), telecoms(LTE spec) शामिल हैं, और π calculation व neural network का काम अपवाद के क़रीब है
इसका यह मतलब नहीं कि वह कम प्रभावशाली है; high-performance codec और emulator implementations कभी आसान नहीं होते, लेकिन यह देखना रोचक है कि बहुत सा काम तुलनात्मक रूप से संकरे domain में केंद्रित है
standards तकनीकी प्रगति और implementation competition के लिए decoder को जानबूझकर खुला छोड़ते हैं, और decoder को channel के noise व effects को संभालना पड़ता है, इसलिए वह आम तौर पर अधिक जटिल होता है
इसलिए प्रतिस्पर्धी standards-compliant decoder implementation तयशुदा रास्ते पर चलने जैसा नहीं, बल्कि research and development के क़रीब होता है, और Bellard एक शुद्ध programmer से ज़्यादा programming करने वाले engineer लगते हैं
codecs अक्सर reverse engineering से implement किए जाते हैं, और कई मामलों में specification होती ही नहीं; documented codecs भी efficient encoding/decoding के तरीके नहीं बताते
Bellard जैसे लोग वही efficient algorithms विकसित करते हैं
आजकल लोग इन तीनों को मिलाकर काम करते हैं, और मुझे लगता है कि नतीजा ठीक है
बस आजकल बहुत से लोग इनमें से सिर्फ implementation ही करते दिखाई देते हैं
अब ऐसा लगता है कि code पर बहुत समय लगाने के लिए specifications को outsource किया जाता है
codecs में बुनियादी concepts से ही कई विचलन और अपवाद होते हैं, audio·subtitle·video की दुनिया में “frame” का मतलब भी अलग-अलग होता है, और software व hardware coders के बीच frame पास करने के तरीके भी पूरी तरह अलग हैं
इतने अलग-अलग संसारों की processing को लगभग मनचाहे ढंग से मिलाना एक बड़ी उपलब्धि है, और libav इसके लिए पर्याप्त रूप से काफ़ी अच्छी तरह डिज़ाइन किया गया लगता है
Bellard अब 20 साल से अधिक समय से FFmpeg में शामिल नहीं हैं, और वास्तव में यह 23 साल के क़रीब है
उस समय FFmpeg में components और codecs के बीच code sharing framework नहीं था, इसलिए उनका code अच्छा नहीं था और उसमें spaghetti code जैसी गंध थी; अब उनका code लगभग बचा ही नहीं है
आज का FFmpeg दूसरे developers की वजह से बना है, फिर भी उनके साथ ऐसा व्यवहार होता है मानो वही एकमात्र आजीवन benevolent dictator हों और बाकी developers ने बस उनके बुद्धिमान ढाँचे पर निर्माण किया हो
अब वह जो करते हैं, वह बस trademark संभालना है और तय करना है कि कौन-सा project या leader FFmpeg नाम का उपयोग कर सकता है; वह पहले एक बार libav developers को बाहर कर किसी दूसरे dictator का साथ भी दे चुके हैं
FFmpeg और Videolan की शुरुआत dorm room से हुई थी, और students उनका उपयोग dorm में TV stream करने और फ़िल्में साझा करने के लिए करते थे
Polytechnique और École Centrale campuses एक-दूसरे से बस कुछ km दूर हैं, और दोनों projects लगभग 1997~1998 के आसपास शुरू हुए थे
अगर मैं student होता, तो शायद साफ़ code लिखने से ज़्यादा beer पीने में व्यस्त रहता
copyright code लिखने वालों या उनके employers आदि के पास रहता है, क्योंकि copyright assignment की माँग नहीं की जाती
यह कुछ वैसा ही है जैसे Linus Torvalds कुछ jurisdictions में “Linux” trademark रखते हैं, लेकिन अधिकतर copyright दूसरे contributors के पास है
मैं ffmpeg को बहुत अच्छी तरह नहीं जानता, लेकिन यह दूसरी open source projects में जो मैंने देखा है उससे मेल खाता है
मुझे वह समय भी याद है जब AviDemux के पास ffmpeg से कहीं तेज़ और बेहतर H.264 encoder implementation थी
open source की प्रकृति के अनुसार ffmpeg ने AviDemux का code आत्मसात कर लिया, और अंततः AviDemux ने भी प्रतिस्पर्धा करने के बजाय ffmpeg को backend के रूप में इस्तेमाल करने का व्यावहारिक विकल्प चुना
इसे मैं open source भावना को अपनाने का अच्छा उदाहरण मानता हूँ
शुरुआती दिनों में spaghetti code था या नहीं, यह बहुत महत्वपूर्ण नहीं है
जब project का scope और future अभी स्पष्ट न हो, तब संभावित भविष्य की समस्याओं के चक्कर में पड़ने के बजाय spaghetti जैसी स्थिति से शुरू करना सही हो सकता है, और requirements को बेहतर समझने के बाद refactor किया जा सकता है
समुदाय ने यही किया, और यह क़ाबिले-तारीफ़ है
Fabrice की वेबसाइट यहाँ देखी जा सकती है: https://bellard.org/
वहाँ प्रोजेक्ट्स की पूरी सूची है
सब कुछ बहुत स्पष्ट है और अनावश्यक दोहराव बिल्कुल नहीं है
Bellard का
ts_zipनाम का एक बहुत दिलचस्प प्रोजेक्ट है, जो एक LLM-आधारित compression algorithm हैयह सिर्फ़ एक “experiment” है और इसे production environment में इस्तेमाल नहीं करना चाहिए, लेकिन यह बहुत चतुर है
वेबसाइट का विवरण भी मज़ेदार है: “The ts_zip utility can compress (and hopefully decompress) text files using a Large Language Model”
https://bellard.org/ts_zip/
मेरे दिमाग़ में इसका model, और बच्चों को समझाने के लिए मेरी analogy, यह है कि “पूरे इंटरनेट को zip जैसे archive में compress कर दिया गया है, और उसके भीतर data ढूँढने का एक बहुत चतुर और efficient तरीका है”
मैं इतना पुराना हूँ कि वह समय याद है जब Wikipedia को CD पर मंगाया जाता था, और उस समय और आज LLM download करने के बीच मुझे बहुत बड़ा फ़र्क महसूस नहीं होता
कुछ लोगों ने ऐसे compressors बनाए हैं जिन्हें test corpus को compress करने में कई घंटे, शायद कई दिन लगते हैं
इस क्षेत्र में एक पुराना मज़ाकिया upper bound यह है कि compression “AI-complete” है; जैसे Shakespeare के संपूर्ण कार्यों के text को compress करने के बजाय सिर्फ़ “The Complete Works of Shakespeare” encode कर दिया जाए और एक AI decompressor उस prompt से output को फिर से generate कर दे
LLM के आने से Bellard ने मानो उस मज़ाक को सच कर दिया है
“Fabrice Bellard” by Andy Gocke and Nick Pizzolato
https://www.ipaidia.gr/wp-content/uploads/2020/12/117-2020-f...
मैं सोचता था कि अगर किसी जानकार व्यक्ति से पूछा जाए, “जीवित लोगों में सबसे बुद्धिमान व्यक्ति कौन है?”, फिर उस व्यक्ति द्वारा बताए गए व्यक्ति से भी वही सवाल पूछा जाए, और यह सिलसिला चलता रहे, तो क्या आखिरकार हम उसी छोटे प्रतिभाशाली समूह तक पहुँचेंगे
अगर बात जीवित सबसे अच्छे coder की हो, तो शायद Carmack से शुरुआत की जा सकती है, और फिर अगला नाम Bellard का होना चाहिए
बस उम्मीद है कि Bellard का जवाब फिर से Carmack न हो
मैंने पहली बार उसकी तस्वीर देखी, और थोड़ा ऐसा लगा जैसे privacy बचाकर और ध्यान से दूर रहकर जीने वाले Satoshi Nakamoto की पहचान उजागर हो गई हो
उससे यह impression मिलता है कि बड़े इंटरनेट पर घुलने-मिलने की बजाय उसके पास हमेशा गहराई से सोचने और कठिन समस्याएँ सुलझाने का बेहतर काम रहा है
उसका काम अपने आप में सम्मानजनक है, लेकिन उसकी work ethic और भी ज़्यादा प्रशंसनीय है
अगर आपके पास मज़बूत vision हो, तो इंटरनेट पर अजनबियों से दिन भर बहस करने और अपने choices defend करने की बजाय ivory-tower style development की ज़रूरत होती है
ढूँढने पर उसकी तस्वीर मिल सकती थी
उसकी तुलना Satoshi से नहीं करनी चाहिए
मेरे पास Bitcoin नहीं है और न ही उसमें दिलचस्पी है, लेकिन वह नाम मूल दस्तावेज़ में छपा हुआ एक दंतकथा जैसा अस्तित्व है
Fabrice Bellard code जारी करने वाला एक वास्तविक व्यक्ति है, कोई internet-anonymous identity नहीं
दोनों महान हैं, लेकिन जैसे ही उनके नाम आते हैं, लोग उनके वास्तविक काम से ज़्यादा यह कहने लगते हैं कि “वे क्या सोचते” जैसी अजीब अपेक्षाएँ क्या होंगी
ऐसी myth-making उल्टा उनकी उपलब्धियों को छोटा करके दिखाती है
तस्वीर ने वह कल्पना तोड़ दी, और अब मैं अपनी कल्पना वापस चाहता हूँ
“आज FFmpeg इंटरनेट का invisible engine है” जैसी अभिव्यक्ति का मतलब समझ आता है, लेकिन मुझे यह अतिशयोक्ति बहुत नापसंद है
अगर FFmpeg अचानक गायब हो जाए, तो इंटरनेट बिल्कुल ठीक रहेगा
जिन कंपनियों की products उसके core में उस पर निर्भर हैं, उन्हें मुश्किल हो सकती है, लेकिन इंटरनेट ख़ुद और ज़्यादातर websites तथा internet services फिर भी ठीक चलती रहेंगी
वह tweet/post LLM ने लिखा था, और वह इसी तरह लिखता है
कल का इंटरनेट अलग हो सकता है
यह थोड़ा tangent है, और downvote का जोखिम लेकर कह रहा हूँ, लेकिन हाल का X-article trend बेहद परेशान करने वाला है
mobile पर देखने के लिए actual लेख तक पहुँचने में 3-4 steps लगते हैं, और वे लेख हमेशा LinkedIn posts की तरह कम attention span वाले पाठकों की engagement के लिए ज़रूरत से ज़्यादा optimized लगते हैं
ऊपर से, इस X post और Bellard की अपनी वेबसाइट के बीच का तीखा contrast अपने आप में विडंबनापूर्ण है
उसी net worth वाले दूसरे industries के celebrities के लिए यह आम बात हो सकती है, लेकिन मुझे यह अजीब लगता है