- Compiler Explorer ने 2012 से स्टोरेज का तरीका बदलते हुए साझा लिंक को लंबे समय तक जीवित रखने की कोशिश की, लेकिन goo.gl के बंद होने से पुराने
godbolt.org/g/abc123लिंक को सुरक्षित रखना अब ज़रूरी हो गया है - शुरुआत में पूरा compiler state URL में रखा जाता था, 2014 में Google URL shortener जोड़ा गया, और 2016 में Stack Overflow द्वारा short URL पर रोक के बाद
godbolt.org/g/abc123जैसे workaround लिंक बनाए गए - 2018 से, जब URL लंबाई की सीमा बड़ी समस्या बन गई, state को S3 में JSON document के रूप में स्टोर करने और छोटे hash व पूरे path की mapping को DynamoDB से मैनेज करने वाली अपनी व्यवस्था अपनाई गई
- जब Google अगस्त 2025 में goo.gl लिंक बंद करेगा, तब पुराने goo.gl-आधारित लिंक को resolve करना मुश्किल हो जाएगा, इसलिए सार्वजनिक वेब और logs से मिले लगभग 12,000
gलिंक और उनके redirect targets को अपने database में इकट्ठा किया जा रहा है - जिन उपयोगकर्ताओं के पास पुराने Compiler Explorer लिंक हैं, अगर वे अभी उन लिंक पर जाएँ तो वे preservation list में शामिल हो सकते हैं; लंबे समय तक टिकने वाला साझा ज्ञान तब अधिक सुरक्षित होता है जब मुख्य infrastructure पर अपना सीधा नियंत्रण हो
Compiler Explorer लिंक स्टोरेज तरीके में बदलाव
- 2012 में Compiler Explorer की पूरी state को URL के अंदर स्टोर किया जाता था
- पूरी compiler state को URL में encode करने का तरीका बहुत लंबा हो जाता था और संभालना मुश्किल था, इसलिए मार्च 2014 में Google की goo.gl short URL सेवा का समर्थन जोड़ा गया
- उस समय short link
goo.gl/abc123के रूप में होता था, और उस पर क्लिक करने से पहले Compiler Explorer साइट के पूरे URL पर redirect होता था, फिर URL के अंदर की state decode की जाती थी
Stack Overflow की रोक के बाद workaround लिंक
- 2016 में Stack Overflow ने इस कारण link shortening services पर रोक लगा दी कि वे असली destination को छिपा सकती हैं
- इस कदम का असर Compiler Explorer लिंक पर भी पड़ा, और उस समय user data को सीधे स्टोर करने का इरादा नहीं था
- workaround यह था कि अंदर से goo.gl का उपयोग जारी रहे, लेकिन उपयोगकर्ताओं को
godbolt.org/g/abc123जैसे लिंक दिए जाएँabc123goo.gl का unique ID था/g/abc123पर जाने सेgoo.gl/abc123पर redirect होता था- फिर goo.gl state वाले पूरे godbolt.org URL पर redirect करता था
- बाद में Google API का उपयोग करके कई चरणों वाली redirect chain से बचा गया
2018 में अपने स्टोरेज पर बदलाव
- 2018 तक URL लंबाई की सीमा और बड़ी समस्या बन गई थी, और URL के अंदर मौजूद data को पहले से compress भी किया जा रहा था
- Compiler Explorer ने state को सीधे स्टोर करने वाली संरचना अपनाई
- short link hash में आपत्तिजनक शब्द तो नहीं आ रहे, इसकी भी जाँच की जाती थी
- अगर आपत्तिजनक शब्द मिलते, तो document में जानबूझकर अतिरिक्त जानकारी जोड़कर अलग hash बनाया जाता था
- इस व्यवहार से bug #1297 पैदा हुआ
goo.gl बंद होने से बना preservation संकट
- Compiler Explorer अभी भी
godbolt.org/g/abc123लिंक को support करता है - Google ने कहा था कि पुराने लिंक अपने intended destination पर redirect होते रहेंगे, लेकिन goo.gl कुछ साल पहले read-only हो गया था और अगस्त 2025 में पूरी तरह बंद होने वाला है
- बंद होने के बाद goo.gl-आधारित लिंक को आगे resolve नहीं किया जा सकेगा
- असली
goo.glलिंक को Compiler Explorer अपनी तरफ़ से ठीक नहीं कर सकता, लेकिनgodbolt.org/g/abc123लिंक को अपने database के ज़रिए सुरक्षित रखा जा सकता है
पुराने लिंक जुटाना और अपना database
- पिछले कुछ दिनों से कई सार्वजनिक स्रोतों से पुराने लिंक और उनके redirect target URL इकट्ठा किए जा रहे हैं
- अब तक लगभग 12,000 लिंक मिले हैं
- Google web search API
- GitHub API
- अपने web logs
- archive.org का Stack Overflow data dump
- Archive.org द्वारा सहेजी गई web pages की सूची
- अंदरूनी तौर पर बदलाव किया गया है ताकि goo.gl की जगह अपने database को प्राथमिकता दी जाए
- database में अभी तक न मौजूद नए
gलिंक पर भी नज़र रखी जा रही है - लोकल में sqlite database है, और production में Dynamo का उपयोग होता है
उपयोगकर्ता कैसे मदद कर सकते हैं
- अगर आपने पुराने
godbolt.org/g/abc123लिंक अलग से संभालकर रखे हैं, तो अभी उन लिंक पर जाना मददगार होगा - लिंक पर जाने से वह web logs में दर्ज होगा और बाद में database में जोड़ा जा सकता है
- नहीं तो अगस्त 2025 के बाद वह लिंक काम नहीं भी कर सकता
- यह मामला दिखाता है कि अहम infrastructure के लिए third-party services पर निर्भर रहना कितना जोखिमभरा है
- “हमेशा बने रहने वाले URL” के वादे को निभाने के लिए पूरे stack पर अपना सीधा स्वामित्व होना चाहिए
1 टिप्पणियां
Hacker News की राय
2010 से पहले यह मान लेना स्वाभाविक लगता था कि लिंक हमेशा बने रहेंगे, और ब्राउज़र bookmarks का खूब इस्तेमाल किया जाता था
बाद में पता चला कि मेरे काफी bookmarks link rot की वजह से व्यावहारिक रूप से बेकार हो गए थे, और उसके बाद मैंने webpages को PDF के रूप में print करके save करना शुरू किया
reader view फीचर काफी भरोसेमंद तरीके से फैल जाने के बाद, तरीका बदलकर reader view की सामग्री copy करके RTF file में save करने वाला हो गया
मैं हर visit किए गए page को archive करने के लिए SingleFile extension इस्तेमाल करता/करती हूँ
setup आसान है, लेकिन ध्यान रहे कि यह disk space काफी खाता है
$ du -h ~/archive/webpages1.1T /home/andrew/archive/webpageshttps://github.com/gildas-lormeau/SingleFile
official Web Archive browser extension install करें तो इसे हर visit किए गए page को automatically archive करने के लिए configure किया जा सकता है
मेरा solution यह था कि महत्वपूर्ण content को ही याद रखूँ, या कम से कम यह याद रखूँ कि उसे कहाँ ढूँढ़ सकता/सकती हूँ
अभी तक मरा/मरी नहीं हूँ, तो कह सकते हैं कि यह काम कर रहा है
सोचता/सोचती हूँ कि क्या कोई ऐसा browser extension है जो link timeout होने पर automatically web.archive.org पर चला जाए
यह सचमुच समझ से बाहर है कि browsers ने अब तक इस एहसास को ध्यान में रखते हुए bookmark feature को ठीक नहीं किया
हर bookmark को सिर्फ link नहीं, बल्कि rendered page की पूरी copy भी save करनी चाहिए। सिर्फ original source save नहीं करना चाहिए, जो ऐसे dynamic content पर निर्भर हो सकता है जो आगे मौजूद ही न रहे
खुले हुए tabs के साथ भी यही होना चाहिए। internet connection न होने पर जब मैं किसी tab पर वापस जाऊँ, तो सिर्फ इसलिए network error नहीं देखना चाहता/चाहती कि browser ने मेहरबानी करके उस tab को memory से निकाल दिया था
ऐसे मामले में, जब तक मैं manually refresh न करूँ, state को network से नहीं बल्कि disk से reload करना चाहिए
Goo.gl के लिए ArchiveTeam project[1] के साथ collaborate करना ठीक रहेगा
“URL shortening सचमुच एक बेहद खराब idea था”[2]
[1] https://wiki.archiveteam.org/index.php/Goo.gl
[2] https://wiki.archiveteam.org/index.php/URLTeam
इसलिए संभावना है कि उनके पास Compiler Explorer URLs में से काफी सारे या सारे ही हों, और उनसे संपर्क करना अच्छा लगेगा
URL हमेशा बने रहेंगे, यह एक खूबसूरत सपना था, लेकिन असलियत में 99% URLs स्थायी नहीं लगते
लगातार हारती लड़ाई लड़ने के बजाय, शायद हमें तकनीक इस assumption पर बनानी चाहिए कि infrastructure permanent नहीं है
सही। और URL shortening services को infrastructure के तौर पर इस्तेमाल न करना भी जरूरी है
URN इसी समस्या को solve करने की कोशिश थी—किसी चीज़ की identity और location को अलग करके
लेकिन इसका व्यापक इस्तेमाल नहीं हुआ, और बाद में link shortening services ने उस idea को बहुत खराब तरीके से फिर से implement किया
https://en.m.wikipedia.org/wiki/Uniform_Resource_Name
domain names के मालिक अक्सर बदलते रहते हैं, और जो URL हमेशा रहना चाहिए था वह भी समय के साथ malicious phishing link में बदल सकता है
URL network पर resource की location identify करता है, resource को खुद नहीं; इसलिए उसका permanent या unique होना जरूरी नहीं
इसी वजह से नाम भी “uniform resource locator” है
यह समस्या 1997 में ही पहचान ली गई थी, और इसी कारण Digital Object Identifier बनाया गया था
link shortening service को database की तरह misuse करने के बाद, बाद में original reference खो देना और internet के अलग-अलग कोनों से valuable links recover करने पड़ना—इसमें कुछ poetic-सा है
असल misuse करने वाले वे लोग हैं जो shortening service से scams, spam और illegal websites को common domain के पीछे छिपाकर हर जगह फैलाते हैं
database के रूप में इस्तेमाल short URL को नहीं, बल्कि अपने URL को किया गया लगता है—यानी वह हिस्सा जिसमें compiler state थी
https://killedbygoogle.com/
“Google Go Links (2010–2021)”
“लगभग 4 साल पहले बंद हुआ। इसे Google Short Links के नाम से भी जाना जाता था, और यह एक URL shortening service थी। Google Workspace customers के लिए custom domains भी support करता था। यह लगभग 11 साल पुरानी service थी”
लेकिन existing links तक तोड़ देना कहीं ज्यादा खराब कदम है। खासकर अगर Google अपने apps के internal use के लिए अभी भी इसे किसी न किसी रूप में बनाए हुए है
थोड़ा आश्चर्य है कि Google को read-only version तक बंद करना इतनी मेहनत के लायक लगा
जब तक कि वे online बचे हुए private link redirects की वजह से legal risk को लेकर चिंतित न हों
सच कहूँ तो, cost छोटी भी हो तो भी वह net cost ही है, इसलिए goodwill या पुराने promises को अलग रखकर बस इसे काट देने की संभावना भी उतनी ही लगती है
“यह लेख इंसान ने लिखा है, लेकिन link suggestions और grammar checks LLM ने किए हैं”
आज ऐसा LLM usage disclosure देखने का यह मेरा दूसरा मौका है। लगता है जैसे कोई नया trend शुरू होते देख रहा/रही हूँ
अगर content अपने दम पर खड़ा हो सकता है, तो वही काफी है। अगर content कचरा है, तो इससे क्या फर्क पड़ता है कि वह AI-generated कचरा है या इंसान-generated कचरा?
किसी को नोटिस चाहिए या वह यह जानना चाहता है, इसकी एकमात्र वजह यह है कि वह खुद सामग्री की गुणवत्ता नहीं परख सकता और AI से बनी है या नहीं को कम गुणवत्ता का proxy indicator मानता है
कहना अच्छा नहीं लग रहा, लेकिन जब तक कोई बहुत मजबूत funding वाला foundation शामिल नहीं होता, Compiler Explorer और godbolt.org भी हमेशा के लिए नहीं रहेंगे
उस समय तक शायद सारी जानकारी 487 क्विंटिलियन parameters वाले किसी universal model में distilled हो चुकी होगी
अब तक तो हमने काफी अच्छा किया है। इस हफ्ते 13 साल पूरे हो रहे हैं
अगर growth जारी रहती है और मौजूदा सारे sponsors हट भी जाते हैं, तो हमारे पास एक साल से थोड़ा ज़्यादा टिके रहने का पैसा है
हालांकि foundation जैसी चीज़ के बारे में सोच रहा हूँ। single point of failure पैसा नहीं, “मैं” हूँ
बात सही है, लेकिन कम से कम अब Compiler Explorer links Compiler Explorer के गायब होने पर टूटेंगे, उससे पहले नहीं
मेरे हिसाब से लंबे समय तक बचे रहने लायक Compiler Explorer links वे हैं जो bug reports में होते हैं
सुविधा के लिए bug report में Compiler Explorer को link कर देते हैं, लेकिन report में ही code भी डालते हैं और bug reproduce करने के लिए इस्तेमाल compiler और version भी बताते हैं
मुझे उम्मीद नहीं कि Compiler Explorer जल्द गायब होगा, लेकिन bug reports को self-contained बनाने से उस स्थिति में भी सुरक्षा रहती है
No-hiding theorem की वजह से जानकारी हमेशा बनी रहेगी ;)
शायद Google के अंदर किसी से database query करवाकर godbolt.org की ओर जाने वाले सारे short links ढूंढने का कोई तरीका नहीं होगा
domain name बनाए रखने में पैसे लगते हैं, इसलिए समझ नहीं आता कि URL हमेशा कैसे टिक सकते हैं
सोचता हूँ कि क्या URL की मौत अच्छी चीज़ भी हो सकती है। मानवता अच्छी चीज़ों को बचाए रखने की खास कोशिश करती है, और बाकी इतिहास के garbage collection में चला जाता है
इतिहासकार तो शायद चाहेंगे कि इतिहास में कचरा और ज़्यादा हो
क्योंकि इससे सिर्फ उन हिस्सों तक नहीं, जिन्हें बचाने लायक माना गया, बल्कि “असली” जीवन के बारे में भी ज्यादा insight मिलती है
अगर time travel कर पाता, तो यह देखना दिलचस्प होता कि आज से हजार साल बाद के इतिहासकार हमारे दौर को कैसे देखेंगे, जब digital media सड़ने से बहुत-सी जानकारी बिना निशान के गायब हो चुकी होगी
सहमत हूँ। पहले इसी से जुड़े विचार यहाँ लिखे थे: https://boehs.org/node/internet-evanescence