- रिटायरमेंट के बाद पुराने मसौदों को व्यवस्थित कर रहे एक उपयोगकर्ता ने पुराने दस्तावेज़ रिकवरी की कोशिश की, और पाया कि LibreOffice ने Word से भी पुराने फ़ाइलें खोल दीं
- Word 1994 से पहले की फ़ाइलें नहीं पढ़ सका, लेकिन Mac के लिए नवीनतम LibreOffice ने 1992, 1989, और यहाँ तक कि 1986 के दस्तावेज़ भी अधिकांशतः खोल दिए
- कन्वर्ज़न की गुणवत्ता पूरी तरह परफ़ेक्ट नहीं थी: 1989 की फ़ाइल में छोटे अक्षर
acircumflex character में बदल गए, और 1986 के दस्तावेज़ में कुछ box characters दिखाई दिए - उपयोगकर्ता ने अपने मसौदों का cloud और Time Machine पर बैकअप लेने के बाद 9 पुराने उपन्यास, 2 अधूरे उपन्यास, और लगभग 15 लघुकथाएँ होने की पुष्टि की
- पुराने proprietary फ़ाइल फ़ॉर्मैट्स की backward compatibility बनाए रखना महंगा पड़ता है, इसलिए LibreOffice जैसे बाहरी टूल दस्तावेज़ रिकवरी के लिए safety net बन सकते हैं
पुराने मसौदों की सफ़ाई से शुरू हुई रिकवरी प्रक्रिया
- रिटायरमेंट के बाद लेखन पर समय दे रहे उपयोगकर्ता ने संशोधन और पुनर्लेखन की ज़रूरत वाले न बिके लंबी-फ़ॉर्म के उपन्यासों की सूची बनानी शुरू की
- Mac को काम के VPN से अलग करने के बाद फ़ोल्डर लिंक गड़बड़ा गए, और Finder में Documents पर क्लिक करने पर नेटवर्क लोकेशन खोजने की असफल कोशिश होने लगी
- रीबूट के बाद user directory से सीधे Documents में जाने पर पहुँच संभव हुई
- सभी लेखन फ़ोल्डर डेस्कटॉप पर कॉपी करके यह पुष्टि की गई कि पुराने उपन्यास और लघुकथा मसौदे खोए नहीं थे
- शुरुआत में उपयोगकर्ता को लगा कि 7 पूरी किताबें हैं, लेकिन वास्तव में 9 पूर्ण पांडुलिपियाँ मिलीं
- इनमें से 3 एक trilogy का हिस्सा थीं, और एक उपन्यास में sequel भी मिला हुआ था
- 2 उपन्यास अधूरे थे
- लघुकथाएँ लगभग 15 दिखीं, और कई फ़ोल्डरों में submission records होने के कारण उनमें से काफ़ी को पूर्ण रचनाएँ माना गया
जहाँ Pages और Word नहीं खोल पाए
- 1996 में लिखे गए एक उपन्यास को Pages ने खोलने से मना कर दिया
- उपयोगकर्ता इसे शुरुआती बिक्री की संभावना वाला एक मज़ेदार space opera मानता है
- Word इंस्टॉल करने और पुराने फ़ाइलें खोल सकने वाले प्रोग्राम खोजने की योजना बनी, लेकिन बाद में पता चला कि Word 1994 से पहले की फ़ाइलें नहीं पढ़ सकता
- Apple ][ दौर की चैप्टर मूल प्रतियाँ भी सुरक्षित थीं, लेकिन उन्हें PowerPC युग में Mac और नए सहस्राब्दी के Word संस्करणों के साथ अपडेट किया जा चुका था
वे फ़ाइलें जिन्हें LibreOffice ने सच में खोल दिया
- एक अन्य उपयोगकर्ता ने सलाह दी कि “LibreOffice पुराने Word फ़ाइलों को Word से बेहतर पढ़ सकता है”, जिसके बाद उपयोगकर्ता ने Mac के लिए नवीनतम LibreOffice इंस्टॉल किया
- 1992 की फ़ाइल बिना किसी समस्या के खुल गई
- 1989 की फ़ाइल भी खुली, लेकिन सभी छोटे अक्षर
acircumflex character में बदल गए- उपयोगकर्ता के अनुसार यह समस्या स्वीकार्य थी
- Mac पर तारीख़ के आधार पर खोजने का तरीका मिलने के बाद,
The Revengerनाम का एक extension-रहित story treatment मिला- तारीख़ 25 मार्च 1986 थी
- कुछ box characters थे, लेकिन कुल मिलाकर दस्तावेज़ पढ़ने लायक था
- उपयोगकर्ता ने इसे Andre Norton शैली की SF space opera कोशिश के रूप में देखा
- LibreOffice ने
Tree Castleभी खोल लिया- संभव है कि यह Mac Draw दस्तावेज़ रहा हो, या कुछ वैसा हो
- तारीख़ 1 जनवरी 1986 थी, और यह उपयोगकर्ता के पास मौजूद सबसे पुराना दस्तावेज़ था
- उपयोगकर्ता ने दस्तावेज़ कन्वर्ज़न के लिए LibreOffice की काफ़ी सराहना की, और निष्कर्ष निकाला कि पुरानी फ़ाइलों में सामग्री भले अपरिपक्व रही हो, लेकिन कोई खोई हुई intellectual property नहीं थी
backward compatibility बनाए रखने की वास्तविक लागत
- एक उपयोगकर्ता ने साझा किया कि वह काम में भी LibreOffice को मुख्य टूल की तरह इस्तेमाल करता है, और कई बार उसने पुराने Word फ़ाइलों को Word से बेहतर रिकवर किया है
- मूल लेखक का मानना है कि Microsoft का अपने proprietary फ़ॉर्मैट्स के लिए 100% backward compatibility न दे पाना सिर्फ़ लापरवाही नहीं है
- backward compatibility बनाए रखने में लगातार developer cost और testing/debugging लागत लगती है
- ज़िक्र किया गया कि बड़ी कंपनियों के प्रोग्रामरों पर bonus को छोड़कर भी सालाना 150,000 डॉलर से ज़्यादा खर्च हो सकता है
- management methods, programming paradigms, language requirements, repository access, privacy standards, और auditability बदलने पर कोड मेंटेनेंस का बोझ बढ़ता है
- पूरे सपोर्टेड प्रोडक्ट सेट के लिए dedicated programmers चाहिए हो सकते हैं, या code changes के समय seasonal teams और management time लग सकता है
- अधिकांश उपयोगकर्ताओं के पास कुछ वर्षों से पुराने फ़ाइलें नहीं होतीं, और कामकाजी माहौल में अधिकतम 7 साल तक सुरक्षित रखना best practice बताया गया
- पुरानी फ़ाइलें अक्सर अपडेट की जाती हैं या PDF बनाकर रखी जाती हैं
- यह भी कहा गया कि LibreOffice के लिए पुरानी फ़ाइलें खोल पाना installation base बढ़ाने वाला फ़ीचर हो सकता है, और उसे donations भी मिलती हैं, इसलिए इसे पूरी तरह मुफ़्त श्रम कहना सही नहीं होगा
- यदि बाहरी टूल असफल हों, तो Microsoft तकनीकी सहायता, मुक़दमे, बहिष्कार, या खराब प्रतिष्ठा का बोझ उन्हीं बाहरी टूल्स पर छोड़ सकता है
ओपन सोर्स bug reports और टूल ecosystem का अनुभव
- 1989 की फ़ाइल में छोटे अक्षर
aका circumflex में बदलना bug के रूप में रिपोर्ट करने लायक बताया गया- अगर फ़ाइल को bug report में attach किया जा सके, तो संभव है कोई इसे देखे
- LibreOffice Writer के paragraph split dialog के user experience issue की रिपोर्ट कर उसे चर्चा के बाद ठीक किए जाने का उदाहरण भी साझा किया गया
- मूल लेखक ने याद किया कि उसने जिन कुछ open source projects में bugs रिपोर्ट किए, उनमें कई साल बाद वास्तव में सिर्फ़ एक ही ठीक हुआ
- अक्सर जवाब मिला, “खुद ठीक करिए”, और दूसरों की समस्या ठीक करना आम तौर पर कम प्राथमिकता वाला लगा
- Microsoft में भी ऐसा ही रवैया दिखा, जबकि Apple थोड़ा बेहतर लगा, हालांकि बहुत बड़ा अंतर नहीं था
- Git और pull request जैसी open source contribution प्रक्रियाएँ आम उपयोगकर्ताओं और कुछ developers के लिए भी बाधा बन सकती हैं
- लेखक को Zowe से जुड़े open source काम और Open Mainframe Project की अनिवार्य compliance project में
.mdनिर्देश दोबारा लिखने पड़े, और GitHub pull request की मांग पर अटकना पड़ा - mainframe, JavaScript, C, और Windows developers के लिए भी, यदि वे GitHub workflow के अभ्यस्त न हों, तो इसे अलग से सीखना पड़ता है
- लेखक को Zowe से जुड़े open source काम और Open Mainframe Project की अनिवार्य compliance project में
- एक अन्य उपयोगकर्ता ने कहा कि Git के साथ सहज होना मुश्किल लगा, जबकि Mercurial समान distributed model होने के बावजूद कहीं अधिक आसानी से समझ आता है
- WordPerfect पर हुई चर्चा में यह राय भी सामने आई कि बहुत सारे printer drivers को प्रवेश-रणनीति बनाना बाद में उसकी कमजोरी बन गया
- अनुभव साझा किया गया कि जब Windows लगातार printer support बढ़ा रहा था, तब WordPerfect बेकार हो चुके printer drivers लोड करने में 10 मिनट से ज़्यादा लेता था
1 टिप्पणियां
Hacker News की राय
कई बार संशोधित और comments वाले doc/docx files को LibreOffice में हर 5 मिनट में save करने पर भी यह भरोसा नहीं करना चाहिए कि वे अगली बार फिर खुलेंगे
Word files को सीधे edit करने पर LibreOffice किसी न किसी समय document को खराब कर सकता है। बेहतर है कि LibreOffice format में काम करें और फिर doc/docx में convert करके भेजें
समस्या चालाकी भरी है: LibreOffice edits दिखाता है और बदलाव करने भी देता है, लेकिन असल saved file corrupt हो सकती है। इसका पता अगली बार खोलने पर ही चलता है; कभी-कभी internal XML में tag mismatch जैसी चीज़ें ठीक की जा सकती हैं, और कभी document के बड़े हिस्से गायब हो जाते हैं जिन्हें recover करना असंभव होता है
अगर MS Office users को भेजना हो तो बस OpenDocument भेज दें। Office भी इसे खोल सकता है, और अगर कोई समस्या आए तो LibreOffice की बजाय Office-side bug होने की संभावना ज़्यादा है
MS Office users को भी standard document format OpenDocument की आदत डालने की ज़रूरत है
Word में change tracking enabled वाला DOCX बनाया, LibreOffice में कई बार edit/save किया, फिर Word में दोबारा खोलकर edit और save किया तो Word उस file को खोल नहीं पाता था। LibreOffice में खोलकर फिर save करने पर वह ठीक हो जाती थी
ये सभी cases change tracking से जुड़े थे, और यह हैरानी की बात नहीं कि DOCX में change tracking की internal representation बाकी format से भी ज़्यादा गड़बड़ है, जैसे “RTF और इधर-उधर की चीज़ों को XML में dump कर दिया” हो
Word format से ही बचना बेहतर है
Vendor A format A और अपनी application को साथ-साथ develop, test और fix करता है, और उसके पास user data और bug data दोनों होते हैं। Vendor B को अपनी app और format भी develop करने होते हैं, और उसके पास A की organizational knowledge और data नहीं होता
इसलिए B की app के लिए A format के complex data को A जितनी reliably handle करना मुश्किल है, और A में भी bugs होते ही हैं। इस case में Microsoft Office team के पास LibreOffice से कहीं ज़्यादा resources होने की संभावना है
मैंने पहले Joel Spolsky का लिखा हुआ, ऐसा याद है, XLS format design पर एक लेख पढ़ा था; वह basically Excel की internal memory structure को disk पर dump करने और उस समय के slow disks पर save/load तेज़ करने के लिए optimizations जोड़ने जैसा था
लगता है वह performance से काफ़ी संतुष्ट थे, लेकिन मेरे मन में सिर्फ़ यही आया कि “इस file को handle करने वाले दूसरे programs तो गए।” और “दूसरे programs” में Excel के बाद के versions भी शामिल हैं
archival purpose से पुराने files recover करने हों तो पुराने DOC और XLS की internal documentation होना अच्छा होगा, लेकिन Microsoft ने internal तौर पर भी इसे ठीक से document किया होगा, ऐसा संभव नहीं लगता
इसलिए जब open standard की मांग आई तो उन्हें DOCX/XLSX के साथ पूरी तरह overhaul करना पड़ा। क्योंकि Microsoft के पास इसे document करने का तरीका ही नहीं था
हालांकि DOCX/XLSX में भी “Word/Excel का internal binary dump” tags हैं, जिससे वही trap फिर आ जाता है, यह मददगार नहीं है
https://www.joelonsoftware.com/2008/02/19/why-are-the-micros...
Spolsky के कहे अनुसार यह पूरी तरह mess है, लेकिन technically documented है
आखिर सभी file formats binary में लिखी memory structures ही तो हैं
Windows 7 upgrade के समय पता चला कि कंपनी का इस्तेमाल किया जाने वाला पुराना attendance management software अब काम नहीं कर रहा था
खुशकिस्मती से IT department ने solution निकाला: कंपनी के सभी लोगों को Ubuntu VM दिया और Wine के जरिए वह software चलवाया। आखिरकार web-based solution पर switch होने तक कुछ सालों तक ऐसे ही चला
https://techcommunity.microsoft.com/t5/ask-the-performance-t...
फिर पता चला कि वे latest Windows की तुलना में Linux पर Steam Proton में बेहतर चलते हैं। हालांकि वास्तव में खेलने लायक पर्याप्त अच्छे भी नहीं थे
मुख्य वजह उन्हें attendance management software इस्तेमाल कराना था। production workers की तरह उन्हें 2 dollar का RFID card दिया जा सकता था, लेकिन तब उन्हें time clock तक जाकर punch in करना पड़ता
आखिरकार शायद उन्होंने Windows वाला Outlook भी इस्तेमाल किया, क्योंकि Mac version में कुछ features नहीं थे
इसलिए customer जब software खरीदता था, तो उसे सही size का monitor मुफ्त मिलता था। यह सच कहानी है
Windows XP के दौर का एक गेम Ubuntu पर तो चल गया, लेकिन Windows 11 पर नहीं चला—ऐसा ही एक मामला था।
गेम किसी तरह का Direct3D इस्तेमाल करता था, जो Windows 10 के बाद काम नहीं करता था। मैं मशीन पर Windows XP/7/8 इंस्टॉल नहीं करना चाहता था, और virtual machine में graphics acceleration support भी खास नहीं था।
लेकिन असली Ubuntu install में Wine इस्तेमाल करके और सही files थोड़ी खोजकर डालने पर वह चल गया। और मजेदार बात यह कि Windows 11 के WSL पर चल रहे Ubuntu में Wine इंस्टॉल किया, तो उस environment में भी गेम चल गया। मैंने नहीं सोचा था कि पुराने गेम को चलाने के लिए इतना पेचीदा तरीका अपनाना पड़ेगा।
https://fdossena.com/?p=wined3d/index.frag
Windows पर चलने वाले compiled wined3d DLL मौजूद हैं।
https://github.com/doitsujin/dxvk
यह भी Windows पर चलता है।
बस इसे game folder में डाल दें, तो वह असली DirectX के बजाय उस DLL को load करेगा। पुराने गेम चलाते रहने के लिए पुराने API के और भी implementations हैं, और कुछ का इस्तेमाल Linux पर Wine users भी करते हैं। उदाहरण के लिए dgVoodoo है।
http://dege.freeweb.hu/dgVoodoo2/ 3dfx युग के cards की proprietary API Glide और DirectX 1~7, 8.1, 9 को support करता है।
https://github.com/FunkyFr3sh/cnc-ddraw पुराने 2D API DirectDraw से जुड़ी समस्याएं ठीक करता है, और Windows users तथा Linux पर Wine इस्तेमाल करने वालों—दोनों के लिए उपयोगी हो सकता है।
https://github.com/otya128/winevdm 64-bit Windows पर 16-bit apps चलाता है।
इसमें Windows के अपने compatibility mode tweaks भी जोड़ दें, तो शायद VM के भारी overhead के बिना Windows के लिए रिलीज़ हुए लगभग हर गेम को चला सकते हैं। मेरी जानकारी में WSL को एक बार ली हुई memory छोड़ने का तरीका भी नहीं पता।
गेम भी इस हैरतअंगेज़ रूप से faithful compatibility layer का फायदा उठा रहे हैं, और आजकल कई Windows games—नए titles समेत—WINE के जरिए Linux पर transparent तरीके से install किए जा सकते हैं।
https://www.youtube.com/watch?v=Bg1NiXtrJ6g
https://www.youtube.com/watch?v=3b50Stm8gu4
जानना चाहूंगा कि process आसान था या नहीं।
विडंबना यह है कि LibreOffice में खोलने की कोशिश किया गया एक पुराना file format StarOffice 5 file था, लेकिन वह खुला नहीं।
LibreOffice, OpenOffice से fork हुआ था, और OpenOffice असल में StarOffice को open source के तौर पर जारी करने से बना था। Codebase को सरल बनाने के लिए converter हटा दिए गए थे।
Complexity तो होगी, लेकिन StarOffice अब एक fixed format है, और OpenDocument का भी शायद कोई पुराना fixed version होगा जिसे target बनाया जा सकता है।
किसी को अलग उम्मीद नहीं रखनी चाहिए, लेकिन Apple ने भी iWork formats की backward compatibility बचाकर नहीं रखी, और मेरे पास कुछ legacy documents हैं जिन्हें खोलने के लिए पुराने versions खोजने पड़ते हैं।
https://wiki.documentfoundation.org/ReleaseNotes/4.0#Feature...
2024 में भी Excel CSV को बिगाड़े बिना खोल नहीं पाता, इसलिए सभी CSV files मैं LibreOffice से खोलता हूं।
मुझे पता है कि import wizard है, लेकिन वह भी अब भी कभी-कभी गड़बड़ कर देता है।
1990s के मध्य से उत्तरार्ध में मैं antivirus software बनाने वाली कंपनी में काम करता था, और Word files में macro viruses scan करने की जरूरत थी।
लेकिन हम Word 1.0 files नहीं खोल पा रहे थे, इसलिए Microsoft के कर्मचारी अमेरिका से खुद आकर मदद करने आए। उस समय हम UK की अपेक्षाकृत छोटी कंपनी थे, इसलिए यह काफी बड़ी बात थी, और जहां तक मुझे पता है, ऐसा सिर्फ उसी बार हुआ था।
यह सब कुछ थोड़ा गुप्त तरीके से हुआ, लेकिन मैंने जो कहानी सुनी वह यह थी कि Microsoft ने Word 1.0 format वाली files पढ़ने-लिखने का original source code खो दिया था और सिर्फ compiled binary बची थी, इसलिए नए code को reverse-engineer करना पड़ा था।
LibreOffice का लक्ष्य compatibility है, जबकि MS चाहता है कि ग्राहक नए और ज़्यादा मुनाफ़े वाले versions पर upgrade करें, इसलिए यह नतीजा हैरान करने वाला नहीं है
कोई app किसी bug या undocumented feature पर निर्भर हो, तब भी वह चलता रहे—इसके लिए वे special handling तक जोड़ देते थे
SharePoint पर डालने के लिए 100GB xls/doc files convert की थीं, और सिर्फ़ उन्हें open format में फिर से save करने से ही space लगभग 5 गुना बच गया
LibreOffice पुराने files को बेहतर तरीके से खोलता है, इसमें बिल्कुल हैरानी नहीं है। Microsoft ने कुछ files ऐसी भी block कर रखी हैं जिन्हें security settings में जाकर allow किए बिना खोला नहीं जा सकता। मैं लगभग 30 साल पुरानी library convert कर रहा था और उसमें 20 साल से ज़्यादा पुराने files भी बहुत थे; आज इस तरह की घटिया compatibility को ढोते रहने की आखिर क्या ज़रूरत है
एक छोटे quick oil change chain में इस्तेमाल होने वाला custom DOS app Windows 7 या उससे ऊपर compatibility settings चाहे जैसे कर लें, चलता नहीं था, लेकिन Linux के Wine में ठीक चलता था—ऐसा ही एक मामला हुआ था
app को फिर से develop करने तक हमने इसे अस्थायी workaround के तौर पर इस्तेमाल किया। console app इस्तेमाल करने के अनुभव की वजह से replacement app को भी console app ही रखा, और उसे modernize करके Linux shell में चलने लायक दोबारा लिखा। licensing cost भी पूरी बच गई, और अंत में वे काफ़ी संतुष्ट लग रहे थे
लगता है Microsoft ने 10 साल से भी पहले company-wide तौर पर किसी भी कीमत पर backward compatibility बनाए रखने वाले core principle से दूरी बना ली थी
16-bit DOS और Windows applications 64-bit Windows पर नहीं चलते
पुराने Japanese Word files को LibreOffice में बिल्कुल नहीं खोलना चाहिए। यह file खराब कर देता है
पुराने Japanese Word files Shift JIS में save होते हैं, लेकिन LibreOffice उन्हें UTF-8 के रूप में खोलता है
अगर नहीं है, तो क्या कभी नया issue खोला गया है, और क्या reproduction के लिए sample share किया जा सकता है। Bugzilla में “Shift JIS” search किया, लेकिन कुछ नहीं मिला
[1] https://bugs.documentfoundation.org/