4 poin oleh GN⁺ 2024-05-16 | 1 komentar | Bagikan ke WhatsApp

Kode sumber Adobe Photoshop

Permata perangkat lunak: seri kode sumber bersejarah dari Computer History Museum

  • Photoshop: berarti mengubah gambar digital dengan perangkat lunak Photoshop atau perangkat lunak penyunting gambar lainnya, terutama dengan cara yang mendistorsi kenyataan (sumber: kamus daring Merriam-Webster, 2012)

Kelahiran Photoshop

  • Pada akhir 1980-an, kakak beradik Thomas Knoll dan John Knoll mulai merancang dan menulis program penyuntingan gambar
  • Thomas Knoll, mahasiswa doktoral computer vision di University of Michigan, menulis program untuk menampilkan dan memodifikasi gambar digital pada 1987
  • John Knoll bekerja di perusahaan efek visual film Industrial Light & Magic dan memanfaatkan program ini secara berguna untuk penyuntingan foto

Perkembangan Photoshop

  • Program ini terus berkembang dan kemudian dikenal dengan nama "Display"
  • Pada musim panas 1988, mereka menyadari bahwa program ini memiliki potensi komersial dan mengganti namanya menjadi "Photoshop"
  • Produsen slide scanner Barneyscan membundel sekitar 200 salinan versi 0.87 dengan nama "Barneyscan XP"

Kontrak dengan Adobe

  • Atas dorongan Russell Brown, art director Adobe, Adobe memutuskan membeli lisensi distribusi Photoshop
  • Kontrak ditandatangani pada April 1989, dan versi 1.0 dirilis pada awal 1990
  • Setelah itu, lebih dari 3 juta kopi Photoshop terjual dalam kurun 10 tahun

Detail teknis Photoshop awal

  • Photoshop awal terutama ditulis dalam Pascal untuk Apple Macintosh, dengan sebagian ditulis dalam bahasa mesin untuk mikroprosesor Motorola 68000
  • Pada versi 1, Thomas bekerja sendirian sebagai insinyur, dan pada versi 2 dua insinyur ikut bergabung
  • Thomas mengerjakan program aplikasi dasar, sementara John menulis banyak plugin pemrosesan gambar

Rilis kode sumber

  • Dengan izin Adobe Systems, Computer History Museum merilis kode sumber Photoshop versi 1.0.1 dari tahun 1990 untuk penggunaan nonkomersial
  • Kode sumber terdiri dari 179 file dan sekitar 128.000 baris kode yang terstruktur rapi dengan komentar yang hampir tidak ada
  • Sekitar 75% kode ditulis dalam Pascal, dan sekitar 15% ditulis dalam assembly 68000

Penjelasan tentang kode sumber

  • Pendapat Grady Booch, ilmuwan utama software engineering di IBM Research Almaden sekaligus direktur Computer History Museum:
    • Membuka kode sumber Photoshop 1.0 terasa seperti membuka makam artefak kuno
    • Pemisahan yang konsisten antara antarmuka dan abstraksi, serta keputusan desain abstraksi yang terkomponen, dilakukan dengan sangat baik
    • Struktur dasarnya tetap dipertahankan bahkan dalam implementasi modern
    • Meski hampir tanpa komentar, kodenya sangat mudah dibaca

Tangkapan layar Photoshop awal

  • Layar utama: menampilkan alat-alat yang tersedia
  • Dapat memilih warna, ukuran, dan tekstur kuas
  • Menyediakan berbagai alat seleksi dan filter gambar
  • Fitur layer gambar yang ditambahkan pada versi 3 belum ada di versi awal
  • Halaman preferensi yang menyediakan fitur kustomisasi
  • Pilihan font, ukuran font, dan gaya yang tersedia masih terbatas

Daftar rilis kode sumber bersejarah

  • Kode sumber MacPaint dan QuickDraw, 18 Juli 2010
  • Kode sumber bahasa pemrograman APL, 10 Oktober 2012
  • Kode sumber Adobe Photoshop, 13 Februari 2013
  • Kode sumber Apple II DOS, 12 November 2013
  • Kode sumber awal Microsoft MS-DOS, 25 Maret 2014
  • Kode sumber Microsoft Word for Windows versi 1.1a, 25 Maret 2014
  • Kode sumber awal Digital Research CP/M, 1 Oktober 2014
  • Kode sumber Xerox Alto, 21 Oktober 2014
  • Kode sumber awal Electronic Arts DeluxePaint, 22 Juli 2015

Tentang penulis

  • Len Shustek adalah chairman emeritus pendiri Computer History Museum

Artikel terkait

  • Blog CHM: Komputer untuk kita semua, 15 Desember 2023
  • Blog CHM: Berapa umur Furby Anda?, 13 Desember 2023
  • Blog CHM: Kura-kura, blok, dan kenangan, 5 Desember 2023

Opini GN⁺

  • Nilai historis Photoshop: Photoshop memicu revolusi dalam penyuntingan gambar digital, dan melalui kode sumbernya kita dapat memahami konteks historis pengembangan perangkat lunak awal.
  • Nilai edukatif kode: Meski hampir tanpa komentar, kode yang tersusun rapi ini dapat menjadi materi yang berguna untuk pendidikan software engineering.
  • Kemajuan teknis: Dengan membandingkan struktur Photoshop awal dan struktur versi modern, kita dapat memahami evolusi arsitektur perangkat lunak.
  • Sudut pandang kritis: Rilis kode sumber awal ini memiliki nilai historis, tetapi karena penggunaan komersial dibatasi, pemanfaatan praktisnya tetap terbatas.
  • Proyek terkait: Perangkat lunak penyunting gambar open source seperti GIMP juga menawarkan fungsi serupa dan dapat dipertimbangkan sebagai alternatif Photoshop.

1 komentar

 
GN⁺ 2024-05-16
Opini Hacker News

Ringkasan komentar Hacker News

  • Pengalaman mengarsipkan kode sumber Adobe

    • Berbagi pengalaman mengarsipkan kode sumber Photoshop, Illustrator, PostScript, dan lainnya di Adobe.
    • Menggunakan cadangan disket Mac asli milik Thomas Knoll untuk mentransfer file dengan Mac Plus dan kabel serial.
    • Berbagai file dalam format arsip kompresi kuno, termasuk file versi 0.54 bertanggal 6 Juli 1988.
    • Semua kode diarsipkan ke server Perforce, tetapi cadangan Illustrator awal berada di disk eksternal yang rusak.
  • Pengalaman bertukar kode sumber dengan Adobe

    • Pengalaman mengunjungi Adobe pada pertengahan 90-an dan bertukar kode sumber.
    • PhotoShop berbasis MacApp dan ada layer yang berjalan di Windows.
    • Mengambil sebagian kode PhotoShop dan bagian perhitungan ruang warna, tetapi sebagian besar diabaikan.
    • Ingin memeriksa apakah jejak MacApp masih tersisa di kode sumber saat ini.
  • Konsistensi UX

    • Terkejut karena UX secara umum masih tetap sama.
    • Pada awal peluncuran MacBook Pro M1, versi beta Silicon Adobe Photoshop adalah salah satu yang berjalan paling cepat.
    • Sekarang kembali melambat.
  • Sulit memahami keindahan kode sumber

    • Sudah melihat kode sumbernya, tetapi sulit memahami keindahannya.
    • Saat belajar Rust dan memikirkan struktur kode, muncul rasa ingin tahu bagaimana UI seperti Photoshop atau 3D Studio Max dibangun.
    • Ingin tahu sumber belajar yang bagus untuk mempelajari struktur kode.
  • Artikel tentang Adobe Photoshop versi 1.x

    • Artikel tahun 2013 tentang Adobe Photoshop versi 1.x dari tahun 1990.
  • Pencegahan generikisasi merek dagang

    • Adobe sedang berupaya mencegah mereknya menjadi istilah umum.
    • Memberikan contoh penggunaan yang benar seperti "gambar disempurnakan dengan perangkat lunak Adobe® Photoshop® Elements" alih-alih "photoshopped".
  • Pujian atas pembukaan kode sumber lama

    • Memuji perusahaan-perusahaan yang membuka kode sumber perangkat lunak lama.
    • Banyak kode sumber kemungkinan hilang seiring waktu dan akibat beberapa kali akuisisi.
    • Karena kontrol versi baru menjadi hal yang umum belakangan ini, banyak kode sumber mungkin hanya ada dalam cadangan tape acak, disket, atau tercetak di binder.
  • Pengalaman dengan versi awal Photoshop

    • Pernah melihat Photoshop sebelum diakuisisi Adobe di sebuah rumah sakit.
    • Kemungkinan versi MacApp saat itu masih berstatus beta.
    • Menggunakan algoritme B-spline milik Tom Knoll sebagai dasar editor kurva.
  • Karier John Knoll

    • John Knoll adalah pemimpin FX untuk prekuel Star Wars dan menyutradarai Rogue One.
    • Dokumenter behind-the-scenes untuk trilogi prekuel terjaga dengan baik.