1 poin oleh GN⁺ 2024-01-08 | 1 komentar | Bagikan ke WhatsApp
  • Seorang pengguna yang sedang merapikan naskah lama setelah pensiun mencoba memulihkan dokumen lawas, dan ditemukan kasus bahwa LibreOffice berhasil membuka file yang lebih tua daripada Word
  • Word tidak dapat membaca file sebelum 1994, tetapi LibreOffice terbaru untuk Mac umumnya bisa membuka file dari 1992, 1989, bahkan dokumen dari 1986
  • Kualitas konversinya tidak sempurna: huruf kecil a pada file 1989 berubah menjadi karakter circumflex, dan beberapa karakter kotak muncul di dokumen 1986
  • Setelah mencadangkan naskah ke cloud dan Time Machine, pengguna tersebut memastikan ada 9 novel lama, 2 novel yang belum selesai, dan sekitar 15 cerita pendek
  • Karena biaya menjaga kompatibilitas mundur untuk format file lama yang proprieter sangat besar, alat eksternal seperti LibreOffice dapat menjadi jaring pengaman untuk pemulihan dokumen

Pekerjaan pemulihan yang bermula dari merapikan naskah lama

  • Setelah pensiun dan punya lebih banyak waktu untuk menulis, pengguna mulai membuat daftar novel panjang yang belum terjual yang perlu direvisi dan ditulis ulang
  • Setelah Mac dipisahkan dari VPN kantor, tautan folder menjadi kacau sehingga saat mengeklik Documents di Finder, sistem mencoba mencari lokasi jaringan lalu gagal
    • Setelah reboot, folder Documents tetap bisa diakses dengan masuk langsung dari direktori pengguna
    • Semua folder penulisan disalin ke desktop untuk memastikan novel lama dan naskah cerita pendek tidak hilang
  • Awalnya ia mengira hanya ada 7 buku yang selesai, tetapi ternyata ada 9 naskah lengkap
    • Tiga di antaranya membentuk sebuah trilogi, dan satu novel berisi campuran dengan sekuelnya
    • Ada 2 novel yang belum selesai
  • Cerita pendek tampak berjumlah sekitar 15, dan dari catatan pengiriman di beberapa folder, banyak di antaranya dinilai sudah selesai

Titik saat Pages dan Word gagal membukanya

  • Sebuah novel yang ditulis pada 1996 ditolak untuk dibuka oleh Pages
    • Pengguna menganggap karya ini sebagai space opera yang menyenangkan dengan potensi jual awal yang tinggi
  • Ia sempat berencana memasang Word dan mencari program yang bisa membuka file lama, tetapi kemudian mengetahui bahwa Word tidak dapat membaca file sebelum 1994
  • Ia juga masih menyimpan naskah bab asli dari era Apple ][, tetapi file-file itu sudah pernah diperbarui pada era PowerPC menggunakan Mac dan Word versi milenium baru

File-file yang benar-benar berhasil dibuka oleh LibreOffice

  • Pengguna lain menyarankan bahwa “LibreOffice bisa membaca file Word lama lebih baik daripada Word”, lalu ia memasang LibreOffice terbaru untuk Mac
  • File tahun 1992 terbuka tanpa masalah
  • File tahun 1989 juga terbuka, tetapi semua huruf kecil a berubah menjadi karakter circumflex
    • Menurut pengguna, masalah sebesar itu masih bisa diterima
  • Setelah menemukan cara mencari berdasarkan tanggal di Mac, ia menemukan story treatment bernama The Revenger tanpa ekstensi
    • Tanggalnya 25 Maret 1986
    • Ada beberapa karakter kotak, tetapi secara keseluruhan masih bisa dibaca
    • Pengguna menganggap dokumen ini sebagai upaya space opera fiksi ilmiah ala Andre Norton
  • LibreOffice juga berhasil membuka Tree Castle
    • Dokumen ini mungkin merupakan dokumen Mac Draw, atau semacam itu
    • Tanggalnya 1 Januari 1986, dan itu adalah dokumen tertua yang ia miliki
  • Pengguna sangat menghargai LibreOffice untuk keperluan konversi dokumen, dan menyimpulkan bahwa walaupun sebagian isi dokumen lama terasa belum matang, tidak ada kekayaan intelektual yang hilang

Biaya nyata menjaga kompatibilitas mundur

  • Seorang pengguna lain membagikan bahwa ia juga memakai LibreOffice sebagai alat utama di tempat kerja, dan sudah beberapa kali mengalami pemulihan file Word lama yang lebih baik daripada Word
  • Penulis asli menilai bahwa ketidakmampuan Microsoft menyediakan kompatibilitas mundur 100% untuk format proprieternya sendiri bukan semata-mata karena tidak peduli
  • Menjaga kompatibilitas mundur terus memerlukan biaya pengembang serta biaya pengujian dan debugging
    • Disebutkan bahwa programmer di perusahaan besar bisa menelan biaya lebih dari 150 ribu dolar bahkan tanpa bonus
    • Setiap perubahan pada cara pengelolaan, paradigma pemrograman, kebutuhan bahasa, akses repositori, standar privasi, dan kemungkinan audit menambah beban pemeliharaan kode
    • Bisa saja dibutuhkan programmer khusus untuk seluruh lini produk yang didukung, atau ketika kode berubah perlu keterlibatan tim musiman dan waktu manajemen
  • Kebanyakan pengguna tidak memiliki file yang lebih tua dari beberapa tahun, dan dalam pekerjaan, retensi maksimal 7 tahun disebut sebagai praktik yang baik
    • File lama sering diperbarui atau disimpan sebagai PDF
  • Bagi LibreOffice, kemampuan membuka file lama bisa membantu memperluas basis instalasi, dan karena juga menerima donasi, hal ini tidak sepenuhnya bisa dilihat sebagai kerja gratis
  • Jika alat eksternal gagal, Microsoft dapat membiarkan beban dukungan teknis, gugatan, boikot, atau reputasi buruk tetap berada di pihak alat eksternal tersebut

Laporan bug open source dan pengalaman dalam ekosistem alat

  • Muncul pendapat bahwa perubahan huruf kecil a menjadi circumflex pada file 1989 layak dilaporkan sebagai bug
    • Jika file tersebut bisa dilampirkan ke laporan bug, kemungkinan ada seseorang yang akan memeriksanya
    • Ada juga contoh seseorang yang pernah melaporkan masalah pengalaman pengguna pada dialog pemisahan paragraf LibreOffice Writer, lalu setelah diskusi masalah itu diperbaiki
  • Penulis asli mengenang bahwa ia pernah melaporkan bug di beberapa proyek open source yang pernah dipakainya, tetapi setelah beberapa tahun hanya satu yang benar-benar diperbaiki
    • Ia sering mendapat jawaban semacam “perbaiki sendiri”, dan merasa memperbaiki masalah orang lain cenderung bukan prioritas tinggi
    • Ia menambahkan bahwa sikap serupa juga pernah ditemuinya di Microsoft, sementara Apple sedikit lebih baik tetapi tidak jauh berbeda
  • Prosedur kontribusi open source seperti Git dan pull request bisa menjadi hambatan bagi pengguna umum maupun sebagian pengembang
    • Penulis asli harus menulis ulang panduan .md dalam pekerjaan open source terkait Zowe dan proyek kepatuhan wajib Open Mainframe Project, lalu terhambat oleh keharusan mengirim pull request di GitHub
    • Pengembang mainframe, JavaScript, C, maupun Windows juga bisa terbebani bila belum terbiasa dengan cara kerja GitHub dan harus mempelajarinya dari awal
  • Pengguna lain merasa beradaptasi dengan Git itu sulit, sementara Mercurial punya model terdistribusi yang mirip tetapi jauh lebih mudah dipahami
  • Dalam diskusi tentang WordPerfect, ada pendapat bahwa strategi menjadikan banyak driver printer sebagai hambatan masuk justru berubah menjadi kelemahan
    • Saat Windows terus menambah dukungan printer, WordPerfect dibagikan pernah memerlukan lebih dari 10 menit hanya untuk memuat driver printer yang sebenarnya sudah tidak diperlukan lagi

1 komentar

 
GN⁺ 2024-01-08
Komentar Hacker News
  • Meski file doc/docx yang sudah berkali-kali diedit dan diberi komentar disimpan setiap 5 menit di LibreOffice, jangan percaya file itu pasti bisa dibuka lagi nanti
    Jika mengedit file Word secara langsung, LibreOffice pada akhirnya bisa merusak dokumen. Lebih aman bekerja dalam format LibreOffice lalu mengonversinya ke doc/docx saat akan dikirim
    Masalahnya cukup licik: LibreOffice menampilkan hasil editan dan tetap memungkinkan penyuntingan, tetapi file yang benar-benar tersimpan bisa rusak. Baru ketahuan saat dibuka lagi; kadang masih bisa diperbaiki, misalnya karena ketidakcocokan tag di XML internal, tetapi kadang sebagian besar dokumen hilang dan tidak bisa dipulihkan

    • Sebaiknya jangan bekerja langsung dalam docx. Jika perlu, impor saja, tetapi pengerjaan sebaiknya dilakukan dalam format OASIS OpenDocument
      Jika harus mengirim ke pengguna MS Office, kirim saja OpenDocument. Office juga bisa membukanya, dan jika ada masalah, kemungkinan besar itu bug di Office, bukan di LibreOffice
      Pengguna MS Office juga perlu membiasakan diri dengan OpenDocument sebagai format dokumen standar
    • Sulit membayangkan masih mengerjakan dokumen besar dalam format buram WYSIWYG. Menurut saya, hanya kombinasi format file teks biasa dan version control yang merupakan alat yang skalabel agar hasil kerja tidak hilang
    • Hal serupa juga bisa terjadi ke arah sebaliknya, dan justru saya lebih sering melihat yang itu. Hanya saja, kebanyakan terjadi 10 tahun lalu
      Pernah ada kasus membuat DOCX dengan track changes aktif di Word, lalu mengedit dan menyimpannya beberapa kali di LibreOffice, kemudian membukanya lagi di Word untuk diedit dan disimpan, dan setelah itu Word tidak bisa membuka file tersebut. Dibuka dan disimpan ulang di LibreOffice malah memperbaikinya
      Semua kasus ini terkait track changes, dan representasi internal track changes di DOCX begitu berantakan hingga tidak mengejutkan bahwa format itu terasa seperti “RTF dan berbagai hal acak yang dibuang ke XML”
    • Memang benar LibreOffice kadang bisa memakan file Word, tetapi Word sendiri meski tidak benar-benar memakannya, pada akhirnya tetap mencabik-cabik dokumen sehingga secara praktis tidak banyak bedanya
      Sebaiknya hindari format Word itu sendiri
    • Di aplikasi apa pun, masalah serupa akan muncul pada format non-native yang cukup kompleks
      Vendor A mengembangkan, menguji, dan memperbaiki format A bersama aplikasinya sendiri, serta memiliki semua data pengguna dan data bug. Vendor B harus mengembangkan aplikasinya sendiri dan dukungan format itu juga, tanpa pengetahuan organisasi maupun data milik A
      Karena itu, sulit bagi aplikasi B untuk menangani data kompleks dalam format A seandal aplikasi A sendiri, dan A pun tetap punya bug. Dalam kasus ini, tim Microsoft Office kemungkinan juga punya sumber daya yang jauh lebih besar daripada LibreOffice
  • Saya ingat pernah membaca tulisan Joel Spolsky tentang desain format XLS; isinya kurang lebih bahwa struktur memori internal Excel dibuang begitu saja ke disk, lalu ditambah optimasi agar simpan/muat tetap cepat di media penyimpanan yang lambat pada masa itu
    Ia tampaknya cukup puas dengan performanya, tetapi yang terpikir oleh saya hanya, “program lain yang harus menangani file ini tamat sudah.” Dan “program lain” itu termasuk versi Excel berikutnya
    Untuk tujuan arsip, akan bagus jika ada dokumentasi internal untuk file DOC dan XLS lama agar pemulihan file lama lebih mudah, tetapi rasanya kecil kemungkinan Microsoft mendokumentasikannya dengan baik, bahkan secara internal

    • DOC juga begitu. Format itu adalah dump langsung dari representasi internal Word
      Itulah sebabnya ketika muncul tuntutan standar terbuka, mereka harus merombaknya total menjadi DOCX/XLSX. Microsoft memang tidak punya cara yang baik untuk mendokumentasikannya
      Sayangnya, DOCX/XLSX juga punya tag “dump biner internal Word/Excel”, jadi jebakan yang sama masih ada
    • Ya, itu memang tulisan yang sangat bagus
      https://www.joelonsoftware.com/2008/02/19/why-are-the-micros...
    • Microsoft memang akhirnya mendokumentasikan format-format lama itu. Mereka dipaksa melakukannya karena gugatan antimonopoli
      Seperti kata Spolsky, isinya benar-benar kacau, tetapi secara teknis memang terdokumentasi
    • Mungkin sebenarnya cukup membuka header file saja
      Pada akhirnya semua format file hanyalah struktur memori yang ditulis dalam bentuk biner
  • Saat masa upgrade Windows 7, kami menemukan bahwa perangkat lunak absensi lama yang dipakai perusahaan tidak lagi berfungsi
    Untungnya departemen TI menemukan solusi: seluruh perusahaan diberi Ubuntu VM dan diminta menjalankan perangkat lunak itu lewat Wine. Akhirnya sistem itu dipakai selama beberapa tahun sampai diganti dengan solusi berbasis web

    • Ini memang sudah lama, tetapi Microsoft sangat serius soal kompatibilitas, dan bahkan menyediakan alat untuk membuat patch kompatibilitas sendiri
      https://techcommunity.microsoft.com/t5/ask-the-performance-t...
    • Pacar saya suka game Nancy Drew point-and-click lama. Hampir semuanya dijual di Steam dan beberapa berjalan cukup baik, tetapi ada juga yang bahkan tidak mau jalan atau langsung crash
      Ternyata game-game itu justru berjalan lebih baik di Steam Proton pada Linux daripada di Windows terbaru. Tentu saja, itu belum cukup baik untuk benar-benar dimainkan dengan nyaman
    • Saya pernah membelikan lisensi Parallels untuk 3 pengguna marketing yang meminta Mac
      Alasan utamanya adalah agar mereka bisa memakai perangkat lunak absensi itu. Sebenarnya mereka bisa saja diberi kartu RFID seharga 2 dolar seperti karyawan pabrik, tetapi itu berarti mereka harus berjalan ke mesin absensi untuk check-in
      Sepertinya pada akhirnya mereka juga memakai Outlook versi Windows karena ada fitur yang tidak tersedia di versi Mac
    • Perangkat lunak di salah satu perusahaan tempat saya dulu bekerja dibuat menyesuaikan ukuran tertentu dari monitor besar yang umum pada masa itu, dan hanya bekerja pada ukuran tersebut
      Karena itu, setiap pelanggan yang membeli perangkat lunaknya akan mendapat monitor dengan ukuran yang tepat secara gratis. Ini kisah nyata
  • Ada kejadian serupa: game dari era Windows XP bisa dijalankan di Ubuntu, tetapi tidak bisa dijalankan di Windows 11
    Game itu menggunakan versi Direct3D tertentu, yang tidak lagi berfungsi sejak Windows 10. Saya tidak ingin memasang Windows XP/7/8 di perangkat, dan mesin virtual juga kurang mendukung akselerasi grafis.
    Namun, di lingkungan Ubuntu yang terpasang langsung, setelah memakai Wine dan mencari lalu menaruh beberapa file yang tepat, game itu bisa jalan. Yang lebih lucu lagi, ketika saya memasang Wine di Ubuntu yang berjalan di WSL pada Windows 11, game itu juga berjalan di sana. Saya tidak menyangka bisa menjalankan game lama dengan cara serumit ini

    • WSL tidak diperlukan
      https://fdossena.com/?p=wined3d/index.frag
      Ada DLL wined3d yang sudah dikompilasi dan berjalan di Windows
      https://github.com/doitsujin/dxvk
      Ini juga berjalan di Windows
      Cukup letakkan di folder game, maka game akan memuat DLL tersebut alih-alih DirectX yang asli. Ada juga implementasi API lama lain untuk terus menjalankan game lama, dan sebagian juga dipakai oleh pengguna Linux yang memakai Wine. Contohnya ada dgVoodoo
      http://dege.freeweb.hu/dgVoodoo2/ mendukung Glide, yaitu API eksklusif untuk kartu era 3dfx, serta DirectX 1~7, 8.1, dan 9
      https://github.com/FunkyFr3sh/cnc-ddraw memperbaiki masalah terkait DirectDraw, API 2D lama, dan bisa berguna baik bagi pengguna Windows maupun pengguna Wine di Linux
      https://github.com/otya128/winevdm menjalankan aplikasi 16-bit di Windows 64-bit
      Jika ditambah dengan penyesuaian mode kompatibilitas bawaan Windows, seharusnya hampir semua game yang dirilis untuk Windows bisa dijalankan tanpa overhead berat dari VM. Setahu saya, WSL juga tidak tahu cara melepaskan memori yang sudah sekali dialokasikan
    • Sama sekali tidak mengejutkan. Di Linux, jika memakai WINE bersama Yabridge, plugin audio yang sangat tua dari era Win98/XP tetapi masih luar biasa itu berjalan dengan sempurna. Hal-hal seperti itu bermasalah di Windows modern, atau bahkan tidak berjalan sama sekali
      Game juga mendapat manfaat dari lapisan kompatibilitas yang sangat setia ini, dan sekarang banyak game Windows, termasuk judul-judul terbaru, bisa dipasang secara mulus di Linux melalui WINE
      https://www.youtube.com/watch?v=Bg1NiXtrJ6g
      https://www.youtube.com/watch?v=3b50Stm8gu4
    • Saya ingin mencoba menjalankan Photoshop lama dengan cara seperti ini
      Penasaran apakah prosesnya sederhana
  • Ironisnya, salah satu format file lama yang ingin saya buka di LibreOffice adalah file StarOffice 5, tetapi tidak bisa dibuka
    LibreOffice bercabang dari OpenOffice, dan OpenOffice sendiri berasal dari StarOffice yang dibuka sumbernya. Konverternya dihapus demi penyederhanaan codebase

    • Kalau soal konverter, saya penasaran seberapa sulit membuatnya sebagai utilitas mandiri yang hanya melakukan konversi format, dengan asumsi tidak perlu campur tangan manual
      Pasti ada kompleksitasnya, tetapi StarOffice sekarang adalah format tetap, dan rasanya OpenDocument juga mungkin punya versi lama yang tetap sebagai target
      Tidak ada yang seharusnya berharap sebaliknya, tetapi Apple juga tidak mempertahankan kompatibilitas mundur untuk format iWork, dan ada beberapa dokumen lama yang mengharuskan mencari versi lama untuk membukanya
    • Coba buka dengan LibreOffice 3.x. Banyak dukungan StarOffice dihapus di LO 4
      https://wiki.documentfoundation.org/ReleaseNotes/4.0#Feature...
    • Saat ini LO punya libstaroffice, jadi seharusnya bisa dibaca. Penasaran bagaimana hasilnya di LO terbaru
  • Bahkan di tahun 2024, Excel masih tidak bisa membuka file CSV tanpa merusaknya, jadi saya membuka semua file CSV dengan LibreOffice
    Saya tahu ada wizard impor, tetapi itu pun kadang masih merusaknya

    • Pratinjau di LibreOffice benar-benar bagus. Kita bisa memilih pemisah dan encoding karakter yang akan dipakai, dari baris ke berapa mulai dibaca, dan sebagainya, jadi sangat ramah pengguna dan enak dipakai
    • Untuk kebutuhan ini, lebih baik pakai Power Query. Impor saja lewat alur seperti Get Data, From File
  • Saya pernah bekerja di sebuah perusahaan pembuat perangkat lunak antivirus pada pertengahan hingga akhir 1990-an, dan kami perlu memeriksa virus makro di file Word
    Namun, kami tidak bisa membuka file Word 1.0, jadi karyawan Microsoft datang langsung dari Amerika Serikat untuk membantu. Saat itu perusahaan kami adalah perusahaan Inggris yang relatif kecil, jadi itu peristiwa yang cukup besar, dan setahu saya hanya terjadi sekali itu saja
    Prosesnya agak dirahasiakan, tetapi cerita yang saya dengar adalah Microsoft kehilangan kode sumber asli untuk membaca dan menulis file format Word 1.0, dan yang tersisa hanya biner terkompilasi, sehingga mereka harus merekayasa ulang kode baru dari hasil reverse engineering

  • LibreOffice menargetkan kompatibilitas, tetapi MS ingin pelanggan melakukan upgrade ke versi yang lebih baru dan lebih menguntungkan, jadi hasil seperti ini tidak mengejutkan

    • Dulu Microsoft benar-benar menganggap kompatibilitas mundur dengan sangat serius, dan selain mainframe, mungkin lebih dari siapa pun
      Sampai-sampai mereka menambahkan penanganan khusus agar aplikasi tetap berjalan meskipun bergantung pada bug atau fitur yang tidak terdokumentasi
    • Kalau mau, gunakan format terbuka yang standar. Tapi di kolom komentar selalu ada troll MS
      Saya pernah mengonversi 100GB file xls/doc untuk diunggah ke SharePoint, dan hanya dengan menyimpannya ulang dalam format terbuka, ruang yang dipakai berkurang kira-kira 5 kali lipat
      Sama sekali tidak mengejutkan bahwa LibreOffice membuka file lama dengan lebih baik. Ada juga file yang diblokir Microsoft sehingga tidak bisa dibuka kecuali Anda masuk ke pengaturan keamanan dan mengizinkannya. Saya sedang mengonversi pustaka yang usianya hampir 30 tahun dan banyak file yang usianya lebih dari 20 tahun; untuk apa masih terus membawa kompatibilitas sampah seperti ini di zaman sekarang
  • Pernah ada kasus serupa ketika aplikasi DOS kustom yang dipakai jaringan kecil bengkel ganti oli cepat tidak bisa dijalankan di Windows 7 ke atas, bagaimana pun pengaturan kompatibilitasnya, tetapi berjalan baik di Wine pada Linux
    Itu dipakai sebagai solusi sementara sampai aplikasinya dikembangkan ulang. Karena pengalaman memakai aplikasi konsol, aplikasi penggantinya juga dipertahankan sebagai aplikasi konsol, lalu ditulis ulang secara modern agar bisa berjalan di shell Linux. Semua biaya lisensi juga berhasil dihemat, dan pada akhirnya mereka tampaknya cukup puas
    Sepertinya lebih dari 10 tahun lalu Microsoft sebagai perusahaan sudah meninggalkan prinsip inti menjaga kompatibilitas mundur apa pun risikonya

    • Saya sungguh penasaran, apakah prinsip inti itu makin sulit dipadukan dengan pertahanan terhadap malware? Apakah permukaan serangannya menjadi terlalu besar karena terus mendukung hal-hal lama?
    • Tetap kompatibel dengan semua yang dirilis sejak 1980-an itu tidak realistis dan tidak bisa dipelihara
      Aplikasi DOS dan Windows 16-bit tidak berjalan di Windows 64-bit
  • File Word bahasa Jepang lama sama sekali jangan dibuka dengan LibreOffice. Itu akan merusak filenya
    File Word bahasa Jepang lama disimpan dalam Shift JIS, tetapi LibreOffice membukanya sebagai UTF-8

    • Saya penasaran apakah ada issue untuk masalah spesifik itu di Bugzilla[1]
      Kalau belum ada, saya ingin tahu apakah Anda pernah membuka issue baru, dan apakah Anda bisa membagikan sampel untuk reproduksi. Saya mencoba mencari “Shift JIS” di Bugzilla, tetapi tidak menemukan apa pun
      [1] https://bugs.documentfoundation.org/