2 poin oleh GN⁺ 2024-12-17 | 1 komentar | Bagikan ke WhatsApp
  • Pada 1843, Ada Lovelace mempublikasikan prosedur untuk menghitung bilangan Bernoulli bagi Analytical Engine yang saat itu belum selesai dibuat, dan karena itu ia berada di pusat perdebatan tentang “program komputer pertama”
  • Tabel yang dipublikasikan menunjukkan satu langkah dari cara menangani seluruh deret bilangan Bernoulli, dan nilai yang disebut Lovelace sebagai B7 sesuai dengan bilangan Bernoulli kedelapan dalam notasi modern
  • Program di Note G mencakup 25 operasi, loop bersarang, serta notasi untuk melacak nilai variabel, sehingga jauh lebih canggih daripada contoh Menabrea dengan 11 operasi tanpa pengulangan
  • Dalam proses penerjemahan ke C, terungkap bahwa operasi keempat pada tabel asli v5 / v4 seharusnya v4 / v5; ini kemungkinan salah cetak, tetapi bisa dianggap sebagai bug tertua dalam sejarah komputasi
  • Keistimewaan Lovelace bukan sekadar gelar “programmer pertama”, melainkan bahwa ia memahami pembuatan kartu bukan sebagai terjemahan aljabar semata, melainkan sebagai pekerjaan pemrograman yang bisa dilakukan dengan baik atau buruk

Program 1843 yang Tak Pernah Dijalankan

  • Berbeda dengan kisah pendirian Microsoft, program Ada Lovelace tidak pernah mendapat kesempatan dijalankan pada mesin sungguhan
    • Paul Allen dan Bill Gates menguji interpreter BASIC dengan emulator berbasis spesifikasi Intel 8080 saat Altair belum ada, lalu menjalankannya juga pada Altair yang sebenarnya
    • Lovelace juga menulis program untuk komputer yang saat itu hanya ada dalam bentuk penjelasan, tetapi tidak dapat menjalankannya karena Analytical Engine tidak pernah dibangun
  • Program Lovelace sering disebut sebagai program komputer pertama di dunia, tetapi status itu masih diperdebatkan
    • Perdebatan soal cakupan dan nilai kontribusi Lovelace terus berlangsung sampai Walter Isaacson menyebutnya sebagai “minor academic specialty”
    • Pertanyaan penting di sini, alih-alih penilaian tokoh, adalah bagaimana program yang ditulis pada 1843 itu dirancang untuk bekerja
  • Program itu melampaui sekadar daftar rumus
    • Ia menyusun kelompok operasi yang dapat diulang, memakai struktur yang setara dengan loop
    • Ia memperkenalkan notasi untuk melacak perubahan keadaan variabel
    • Ada bagian-bagian yang mirip dengan pengalaman menulis perangkat lunak masa kini

Bilangan Bernoulli dan Masalah Jumlah Pangkat

  • Program Lovelace dirancang untuk menghitung bilangan Bernoulli
  • Di balik bilangan Bernoulli ada persoalan matematika lama, yaitu menghitung jumlah pangkat
    • Kaum Pythagoras mencari cara menghitung 1 + 2 + 3 + ... + n tanpa menjumlahkannya satu per satu, dan memperoleh rumus n(n+1)/2 dengan menyusun dua segitiga menjadi sebuah persegi panjang
    • Archimedes tertarik pada jumlah berbentuk 1² + 2² + 3² + ... + n², dan meninggalkan solusi yang dapat ditafsirkan secara geometris
    • Aryabhata menerbitkan Aryabhatiya pada tahun 499, termasuk rumus jumlah kubus
  • Masalah yang lebih umum adalah bagaimana mencari jumlah berbentuk 1^k + 2^k + ... + n^k
    • Johann Faulhaber pada 1631 menghitung dan menerbitkan rumus hingga pangkat 17, tetapi tidak memberikan solusi umum
    • Blaise Pascal pada 1665 membuat metode umum, tetapi tetap perlu mengetahui terlebih dahulu cara menghitung semua jumlah pangkat yang lebih rendah
  • Jakob Bernoulli meninggalkan solusi umum yang lebih praktis
    • Ia menggunakan segitiga Pascal untuk memahami pola koefisien polinomial
    • Sebagian koefisien diturunkan dari segitiga Pascal, sedangkan sisanya diperoleh dari sifat bahwa jumlah koefisien selalu 1
    • Faktor koefisien kedua inilah yang kemudian dikenal sebagai deret bilangan Bernoulli
  • Penemuan Bernoulli tidak serta-merta menjadikan perhitungan jumlah pangkat sembarang sebagai soal yang mudah
    • Untuk menghitung jumlah pangkat ke-k, perlu diketahui bilangan Bernoulli hingga urutan ke-k
    • Setiap bilangan Bernoulli dihitung berdasarkan bilangan Bernoulli sebelumnya
    • Meski demikian, menghitung deret Bernoulli yang panjang tetap jauh lebih mudah daripada menurunkan setiap rumus jumlah pangkat satu per satu

Dua Mesin Hitung Babbage

  • Charles Babbage merancang dua jenis kalkulator mekanis
    • Yang pertama adalah Difference Engine
    • Yang kedua adalah Analytical Engine, yang kini dikenal sebagai komputer mekanis
  • Difference Engine bukan komputer, melainkan mesin yang hanya melakukan penjumlahan dan pengurangan
    • Babbage tidak puas dengan banyaknya kesalahan pada tabel logaritma saat itu, dan ingin membuat tabel logaritma secara mekanis
    • Metode beda hingga dari Gaspard de Prony memecah proses pembuatan tabel logaritma menjadi langkah-langkah kecil yang hanya memerlukan penjumlahan dan pengurangan
    • Polinomial dapat digunakan untuk mendekati fungsi logaritma dan fungsi trigonometri
  • Difference Engine memetakan setiap kolom pada tabel beda ke kolom roda gigi fisik
    • Setiap roda gigi mewakili satu digit desimal, dan satu kolom penuh mewakili satu bilangan desimal
    • Mesin itu memiliki 8 kolom sehingga dapat membuat tabel hingga polinomial derajat 7
    • Orang cukup menetapkan nilai awal lalu memutar engkol agar beda konstan merambat ke kolom berikutnya
  • Babbage memang membuat dan mendemonstrasikan sebagian Difference Engine, tetapi tidak pernah menyelesaikan mesin utuhnya
    • Ia tidak dapat menemukan pembuat yang mampu memproduksi jumlah roda gigi yang diperlukan dengan presisi memadai
    • Difference Engine yang berfungsi baru berhasil dibuat pada 1990-an, setelah pemesinan presisi memungkinkan
  • Analytical Engine dibayangkan sebagai mesin yang jauh lebih kuat dan fleksibel
    • Mesin ini menggunakan kolom roda gigi seperti Difference Engine, tetapi direncanakan memiliki ratusan kolom atau lebih
    • Ia bisa diprogram dengan kartu berlubang seperti Jacquard Loom
    • Ia dapat melakukan bukan hanya penjumlahan dan pengurangan, tetapi juga perkalian dan pembagian
    • Bagian yang disebut “mill” akan disusun ulang sesuai operasi, membaca operan dari kolom penyimpanan, lalu menuliskan hasil ke kolom lain

Makalah Menabrea dan Catatan Lovelace

  • Babbage bertemu Luigi Menabrea di Turin, seorang insinyur Italia yang kelak menjadi perdana menteri, dan Menabrea menerbitkan makalah berbahasa Prancis pada 1842 yang menjelaskan kemungkinan-kemungkinan Analytical Engine
  • Pada 1843, Lovelace menerjemahkan makalah Menabrea ke dalam bahasa Inggris
    • Lovelace pertama kali bertemu Babbage pada 1833 saat berusia 17 tahun, dan terpikat oleh Difference Engine miliknya
    • Sejak kecil ia mendapat banyak pendidikan matematika, dan setelah menikah serta melahirkan tiga anak pun tetap belajar matematika kepada Augustus de Morgan
  • Makalah Menabrea secara singkat membahas cara kerja Difference Engine dan keunggulan Analytical Engine
    • Analytical Engine diperkenalkan sebagai mesin yang dapat menghitung hasil kali dua bilangan 20 digit dalam waktu 3 menit
    • Makalah itu memakai sistem persamaan linear sederhana dan perluasan hasil kali dua binomial sebagai contoh, dengan menggunakan “diagrams of development”
    • Tabel-tabel ini juga merupakan program dalam arti yang sama seperti program Lovelace, tetapi hanya contoh sederhana tanpa percabangan atau pengulangan
  • Terjemahan Lovelace disertai catatan-catatan yang lebih panjang daripada teks aslinya, dan di situlah kontribusi utamanya tampak
    • Note A membahas panjang lebar kemungkinan Analytical Engine sebagai mesin yang dapat menjalankan operasi matematika apa pun
    • Ia memandang mesin itu dapat bekerja bukan hanya pada angka, tetapi juga pada objek yang relasi dasarnya dapat dinyatakan sebagai ilmu abstrak operasi
    • Misalnya, ia menyebut bahwa suatu hari mesin itu mungkin dapat menggubah musik
  • Note G terkenal karena dua alasan
    • Gagasan Lovelace bahwa Analytical Engine tidak bisa dikatakan “berpikir” kemudian oleh Alan Turing disebut “Lady Lovelace’s Objection”
    • Pada saat yang sama, catatan itu juga memuat program untuk menghitung bilangan Bernoulli guna menunjukkan bahwa mesin tersebut dapat menangani masalah yang sangat kompleks

Struktur Nyata Program di Note G

  • Seluruh tabel Lovelace adalah bentuk “diagram of development” yang diperluas, dan gambar aslinya dapat dilihat di sini
  • Program itu lebih dekat ke daftar operasi yang dinyatakan dengan notasi matematika umum
    • Tampaknya Babbage maupun Lovelace belum sampai pada tahap membuat sesuatu seperti himpunan opcode untuk Analytical Engine
  • Lovelace menjelaskan cara menghitung seluruh deret bilangan Bernoulli sampai batas tertentu, tetapi program yang disajikan dalam tabel hanyalah satu langkah contoh dari proses itu
    • Nilai yang dihitung adalah yang disebut Lovelace sebagai B7
    • Dalam notasi matematika modern, itu adalah bilangan Bernoulli kedelapan
    • Persamaannya berbentuk B7 = -1(A0 + B1A1 + B3A3 + B5A5)
  • Setiap suku dalam persamaan ini mewakili koefisien dari polinomial jumlah pangkat tertentu
    • Pangkat yang dimaksud adalah 8, dan bilangan Bernoulli kedelapan pertama kali muncul dalam rumus jumlah bilangan berpangkat 8 untuk bilangan bulat positif
    • B1 sampai B7 adalah bilangan Bernoulli yang berbeda menurut pengindeksan Lovelace
    • A0 sampai A5 adalah faktor koefisien yang dapat dihitung Bernoulli menggunakan segitiga Pascal
    • Program Lovelace menggunakan n = 4
  • Terjemahan ke C tersedia sebagai gist
    • Mula-mula dihitung A0 dan B1A1
    • Setelah itu program masuk ke loop yang dijalankan dua kali untuk menghitung B3A3 dan B5A5
    • Setelah setiap hasil kali dihitung, nilainya dijumlahkan dengan hasil kali sebelumnya, dan pada akhirnya diperoleh jumlah keseluruhan

Loop, Keadaan Variabel, dan Bug Kuno

  • Terjemahan ke C menunjukkan dengan baik betapa visionernya program Lovelace
    • Program aslinya memang tidak memiliki while loop secara literal, tetapi Lovelace membentuk kelompok operasi dan menetapkan lewat catatan kapan kelompok itu harus diulang
    • Dalam terjemahan C ada dua while loop, dan salah satunya bersarang di dalam yang lain
    • v10 dalam versi asli maupun terjemahan C berfungsi seperti variabel penghitung yang berkurang pada setiap iterasi
  • Tabel Lovelace lebih mudah dipakai untuk mengikuti perubahan keadaan dibanding tabel Menabrea
    • Ada kolom bernama “Indication of change in the value on any Variable”
    • Setiap variabel diberi indeks superskrip untuk menunjukkan urutan nilai yang dimilikinya selama program berjalan
    • Superskrip 2 berarti nilai kedua yang diberikan sejak program dimulai
  • Saat dipindahkan ke C dan dijalankan, hasil awalnya ternyata salah, dan penyebabnya bukan pada kode terjemahan melainkan pada tabel asli
    • “Diagram of development” milik Lovelace menuliskan operasi keempat sebagai v5 / v4
    • Urutan yang benar adalah v4 / v5
    • Ini kemungkinan bukan kesalahan dalam program yang dibuat Lovelace, melainkan salah cetak
  • Jim Randall juga menerjemahkan program Lovelace ke Python dan menunjukkan bug pembagian yang sama serta dua masalah lain
  • Bug kecil pada program asli mendukung penafsiran bahwa Lovelace sedang berusaha menulis sesuatu yang mendekati program nyata, bukan sekadar materi demonstrasi

Batasan Gelar Programmer Pertama

  • Mengatakan bahwa Lovelace menulis atau menerbitkan “program pertama” tidak sepenuhnya akurat
    • Menabrea menerbitkan “diagrams of development” setahun sebelum terjemahan Lovelace
    • Babbage juga menulis lebih dari 20 program yang tidak dipublikasikan
    • Tergantung definisi tentang apa yang dianggap sebagai program, perdebatan tetap terbuka
  • Program Lovelace yang dipublikasikan jauh melampaui yang pernah dipublikasikan sebelumnya
    • Program terpanjang yang ditunjukkan Menabrea terdiri dari 11 operasi
    • Contoh Menabrea tidak memiliki loop maupun percabangan
    • Program Lovelace mencakup 25 operasi dan loop bersarang, sehingga juga memuat struktur percabangan
  • Menabrea berpendapat bahwa setelah mesin selesai, kesulitannya akan menyusut menjadi pembuatan kartu; kartu-kartu itu hanyalah terjemahan dari rumus aljabar sehingga mudah menyerahkan pelaksanaannya kepada pekerja dengan notasi sederhana
  • Babbage dan Menabrea terutama berfokus menerapkan Analytical Engine pada masalah perhitungan matematika yang mereka minati
  • Lovelace melihat bahwa Analytical Engine dapat melakukan jauh lebih banyak daripada yang dibayangkan Babbage atau Menabrea, dan memahami bahwa “pembuatan kartu” bukan tugas sampingan yang sederhana, melainkan pekerjaan pemrograman yang bisa dilakukan dengan baik atau buruk

1 komentar

 
GN⁺ 2024-12-17
Opini Hacker News
  • Tanda sejati dari program yang tidak sepele adalah tidak berjalan pada percobaan pertama
    Menakjubkan bahwa setelah Babbage frustrasi karena teknologi pemesinan presisi massal untuk membuat mesin sederhana belum ada, ia malah merancang sistem baru yang satu digit lebih rumit dan pergi sampai ke Italia untuk mencari kemampuan manufaktur yang lebih maju

    • Saya pernah punya karyawan seperti itu
      Kalau menemui jalan buntu saat mencoba sesuatu, ia mulai dengan membuat alatnya sendiri, dan suatu kali bahkan membuat font-nya sendiri karena tidak puas dengan font bawaan pada ukuran poin yang sangat kecil
      Ia insinyur terbaik yang saya kenal, tetapi harus terus diawasi agar tidak masuk terlalu jauh ke lubang kelinci
    • +1 untuk sejarah Babbage/Lovelace, tetapi meski kedua fakta itu masing-masing benar, sulit mengatakan bahwa Babbage memilih sistem yang lebih kompleks dan perjalanan ke Italia sebagai “jalan terbaik” karena tidak adanya pemesinan presisi
      Tim Robinson juga mengatakan, “Jika Meccano tahun 1920-an sudah ada 100 tahun sebelumnya, Babbage akan sepenuhnya berhasil,” dan menurut saya ia lebih mirip orang software yang terlempar ke hardware karena idenya melampaui tingkat yang secara realistis mungkin saat itu
      Selain kurangnya naluri bisnis dan perencanaan proyek sehingga ia tidak mampu memperkecil cakupan atau menyerah pada presisi 10 digit, ia terus memunculkan ide yang lebih baik dan mengikutinya hingga masuk lubang kelinci; karena pada usia muda ia menerima berbagai penghargaan hanya dari proposal Difference Engine, tampaknya puluhan tahun kemudian pun sulit baginya untuk menyerah
      Keterlibatannya dengan pemerintah juga menjadi salah satu poros besar tragedinya. Kaum aristokrat meremehkan dan tidak mempercayai pemerintah serta politik, sementara kelas bawah tidak mempercayai pemerintah karena pemerintah hampir tidak pernah membantu mereka, tetapi Babbage berasal dari kelas menengah yang tepat untuk memiliki pandangan patriotik tentang pemerintah, sehingga tampaknya ia menganggap penemuannya dipersembahkan kepada “negara” dan pemerintah seharusnya memberi kompensasi
      Ia tidak berhasil menyelesaikan Difference Engine, tetapi bertanya kepada pemerintah apakah dengan dana tambahan ia dapat mewujudkan Analytical Engine yang lebih baik, dan pemerintah bersikap bimbang selama 20 tahun. Bahkan ketika pemerintah menawarkan untuk mengembalikan penemuannya, ia menolak
      Mungkin karena pengaruh berbagai penghargaan, ia juga tampaknya terpaku pada identitas dirinya sebagai “orang pintar”; ada anekdot bahwa ia menolak tawaran untuk menjadi juri penghargaan bersama Faraday karena merasa harus menjadi satu-satunya juri. Sikap seperti ini juga sangat mungkin membuatnya lebih condong ke ide-ide jenius yang muluk daripada eksekusi praktis
      The Thrilling Adventures of Lovelace and Babbage karya Sydney Padua tampak seperti buku yang diteliti dengan sangat baik; saya belum banyak membaca bagian utamanya, tetapi membaca lampirannya dengan saksama dan layak direkomendasikan
    • Pernyataan “program yang tidak sepele tidak berjalan pada percobaan pertama” itu tidak benar
  • Tulisan yang benar-benar keren. Di bagian pembuka, mengesankan bahwa Lovelace memikirkan secara mendalam cara mengorganisasi operasi ke dalam kelompok yang dapat diulang, sehingga menemukan loop, dan menyadari pentingnya melacak status saat variabel berubah lalu membuat notasi untuk menandai perubahan itu
    Dari sudut pandang programmer, menakjubkan betapa miripnya pekerjaan Lovelace dengan pengalaman menulis software masa kini, dan penjelasan bahwa ia merancangnya untuk menghitung bilangan Bernoulli juga cukup terperinci untuk memahami apa yang ia lakukan
    Kalau ia hidup sekarang, rasanya ia akan berada di ujung koridor sedang bergulat dengan suatu masalah memakai Rust, dan sepertinya akan sangat menyukai bahasa dengan static typing

    • Terlepas dari seberapa besar Ada harus diakui atas teknik pemrogramannya, yang selalu paling menonjol adalah kemampuannya melihat gambaran besar komputasi
      Intinya adalah ia melihat bahwa Analytical Engine dapat bekerja bukan hanya pada angka, tetapi juga pada objek lain yang dapat diekspresikan sebagai relasi dalam ilmu operasi abstrak; misalnya, jika relasi dasar harmoni dan komposisi dapat diekspresikan dengan cara seperti itu, maka mesin dapat membuat musik yang rumit dengan kompleksitas dan panjang berapa pun
      Pada tahun 1842, satu abad sebelum komputer yang benar-benar dapat diprogram muncul, memikirkan hal seperti ini hanya dari penjelasan tentang prototipe komputer mekanis adalah sebuah hack yang luar biasa
    • Notasi untuk melacak status saat variabel berubah tampak sangat mirip dengan static single-assignment form, sehingga terutama menarik perhatian saya
      https://en.wikipedia.org/wiki/Static_single-assignment_form#Benefits
      Bahkan hari ini pun itu masih dekat dengan teknik mutakhir, dan ia sudah memilikinya 180 tahun lalu
  • Menarik bahwa Paul Allen dan Bill Gates menguji interpreter BASIC untuk Altair tanpa Altair sungguhan, menggunakan emulator yang mereka buat di komputer Harvard hanya berdasarkan spesifikasi Intel 8080, dan ketika pertama kali dijalankan di depan Altair sungguhan, program itu berjalan dengan benar
    Kalau begitu, menurut saya pahlawan tersembunyi sebenarnya di sini adalah para insinyur Intel yang menulis spesifikasi yang begitu akurat sehingga software yang berjalan di emulator yang dibuat hanya dari spesifikasi itu juga berjalan mulus di hardware nyata

    • Pada tahun 1976, untuk pekerjaan pemrograman komersial pertama saya, saya mengubah emulator 8008 yang ditulis dalam Fortran agar berjalan sebagai emulator 8080 di minikomputer Data General
      Pekerjaan itu dimaksudkan agar programmer lain yang menulis firmware 8080 untuk plotter bisa men-debug kodenya, dan seingat saya sumber emulator itu berasal dari sesuatu milik Intel bernama INTERP/8 8008. Dari tulisan-tulisan online, sepertinya Allen dan Gates juga memakainya
  • Menurut saya bagian paling keren adalah pekerjaan nyata yang terkandung dalam “notes” yang ia lampirkan pada terjemahannya
    Referensi: https://upload.wikimedia.org/wikipedia/commons/c/cf/Diagram_for_the_computation_of_Bernoulli_numbers.jpg
    Dan https://en.wikipedia.org/wiki/Note_G
    Tulisan itu juga merujuk materi ini yang memindahkan pekerjaannya ke Python: https://enigmaticcode.wordpress.com/tag/bernoulli-numbers/

    • Setengah dari tulisan itu membahas Note A dan Note G
  • Melihat bagian yang mengatakan bahwa program Lovelace yang dipindahkan ke C tidak terasa begitu asing, kecuali dipenuhi variabel dengan nama yang tidak membantu, penulisnya jelas belum pernah bertemu rekan-rekan kerja saya

    • Saya jadi teringat saat kelas pemrograman di SMA, pasangan proyek saya memberi nama variabel dengan kata-kata paling kasar dan cabul yang terpikir olehnya
      Saya sendiri tidak terlalu konservatif, tetapi tentu saja ia setiap kali tidak ingat variabel “butts” itu untuk apa, dan sampai akhir tidak memahami mengapa ia terus bingung gara-gara kodenya sendiri
    • Atau tampaknya belum pernah bekerja dengan matematikawan, fisikawan, atau insinyur yang memprogram. Begitu membaca kalimat itu, saya langsung berpikir, “quant banget”
      Ayah saya, seorang insinyur kimia, belajar pemrograman dengan FORTRAN; saat itu nama variabel harus berupa 1 huruf dan paling banyak 2 angka. Ia kemudian belajar Basic, tetapi kodenya secara mental masih FORTRAN, jadi kebiasaan itu tetap terbawa
      Awalnya saya kira hanya ayah saya yang seperti itu, tetapi jauh kemudian saat bekerja di Wall St dan berkolaborasi dengan para quant yang menyalin kode Numerical Recipes, di C pun tampilannya persis sama
  • Menarik melihat bahwa Menabrea memandang Analytical Engine terutama sebagai alat untuk mengotomatiskan “perhitungan yang panjang dan kering”, sehingga kapasitas intelektual ilmuwan-ilmuwan hebat bisa dipakai untuk pemikiran yang lebih tinggi; ini menunjukkan betapa awetnya wacana otomatisasi
    Sekarang pun orang mengatakan hal yang sama tentang LLM

    • Pada akhirnya, menurut saya inti yang membedakan komputer sebagai alat dari perangkat konsumsi adalah otomatisasi “perhitungan yang panjang dan kering”
  • Saya penasaran apakah ada yang pernah membuat mesin virtual untuk set instruksi Babbage dan menjalankan program Ada di atasnya

  • Ini juga pernah didiskusikan saat tulisan tersebut diposting dulu
    What Did Ada Lovelace’s Program Actually Do? - https://news.ycombinator.com/item?id=17797003 - Agu 2018, 52 komentar

  • Sedikit menyimpang, tetapi saya jadi penasaran orang-orang pada masa itu memanggilnya apa
    Namanya Augusta Ada King dan ia adalah Countess of Lovelace; saya penasaran apakah saat itu lazim menyingkat gelar kebangsawanan dan memakainya seperti nama keluarga, atau apakah itu kebiasaan yang baru muncul belakangan

    • Untuk Earl of Lovelace, pemegang gelar itu, ada cara penyebutan yang biasanya hanya memakai nama tempatnya
      Setelah William King-Noel menjadi Earl of Lovelace, ia dipanggil “Lovelace”, dan di kalangan sosial Ada mungkin dipanggil “Lady Lovelace”, sedangkan dalam konteks resmi “Countess of Lovelace”
  • Tulisan yang bagus. Ini penjelasan paling jelas yang pernah saya baca sejauh ini tentang dalam arti apa Ada itu inovatif dan mengapa ia layak mendapat pengakuan