Mengapa butuh waktu lama untuk menyelesaikan spesifikasi HTML 5? [Tutup]

25

Saya membaca ini dan satu kalimat menarik perhatian saya (penekanan saya):

Jadi Ian Hickson, kritikus terbesar XHTML, menjadi ayah dari HTML 5, sebuah spesifikasi balita yang berorientasi aksi yang tidak akan mencapai usia dewasa hingga 2022 , meskipun sebagian darinya dapat digunakan hari ini.

Benarkah? Apakah itu benar-benar siklus pengembangan HTML 5? Mengapa begitu lama? Apa yang membuatnya sangat sulit untuk diperbaiki sehingga tidak akan final sampai 11 tahun dari sekarang?

EpsilonVector
sumber
35
Pernahkah Anda mencoba membuat sekelompok orang untuk menyetujui sesuatu?
George Marian
2
@ George - Seharusnya membuat itu jawaban.
Ben L
Selain itu, sudahkah Anda melihat ukuran spek dan seberapa kompleksnya?
JB King
@ Ben Rupanya, saya seharusnya. Saya tidak berpikir itu cukup gemuk. :)
George Marian

Jawaban:

19

Tanggal yang disebutkan untuk proses finalisasi telah ditetapkan sejauh ini ke masa depan karena proses standar untuk spesifikasi HTML diatur sedemikian rupa sehingga menjamin penerimaan yang luas dari spesifikasi tersebut.

Beberapa latar belakang: ada dua badan standar yang mengerjakan draft terkait dengan apa yang biasa kita sebut sebagai "HTML5": World Wide Web Consortium (W3C), dan Kelompok Kerja Teknologi Aplikasi Web Hypertext Application (WHATWG). Sebelum Juli 2012, kedua kelompok bekerja (sebagian besar) bersama untuk mengembangkan HTML.

Proses utama adalah menjalankan serangkaian tonggak:

  • Working Draft:  spec dalam pengembangan dan diskusi aktif
  • Last Call Working Draft (LCWD): spec sebagian besar telah selesai, dan pelaksana memiliki kesempatan untuk mengajukan keberatan terakhir terhadap spec sebelum memasuki proses finalisasi
  • Rekomendasi Kandidat:  spec diselesaikan secara efektif dan aman untuk digunakan bagi implementator dan penulis konten
  • Rekomendasi: dua implementasi spesifikasi yang independen dan dapat dioperasikan penuh telah sepenuhnya selesai

Tonggak LCWD dimulai pada tahun 2011 dan fase Calon Rekomendasi diperkirakan akan datang segera pada tahun 2014. Itu adalah tonggak terakhir, Rekomendasi, yang membutuhkan dua implementasi penuh dari spesifikasi, yang akan memakan waktu beberapa tahun dan merupakan alasan untuk 2022 tanggal.

Dalam model ini, tonggak nyata pertama yang berkaitan dengan penulis konten (bukan pembuat agen pengguna, seperti browser) adalah LCWD, karena spesifikasi tersebut dimaksudkan untuk sebagian besar diselesaikan. Setelah LCWD selesai, HTML5 akan mencapai tonggak Rekomendasi Kandidat, dan itu akan menjadi spesifikasi final di semua kecuali nama: Anda akan dapat mengimplementasikannya dengan impunitas, seperti tonggak terakhir, Rekomendasi, akan tidak berpengaruh pada konten standar dan sebagian besar tidak menarik bagi penulis konten.

Namun, pada Juli 2012, W3C dan WHATWG meresmikan perpecahan dalam bagaimana konsep HTML5 akan dikembangkan. Perpecahan ini, yang telah berfungsi secara fungsional selama beberapa tahun sekarang, membuat dua "trek" HTML yang berbeda:

  • Standar hidup, dikembangkan oleh WHATWG dan hanya disebut "HTML", di mana spesifikasinya tidak pernah sepenuhnya lengkap. Konsensus yang masuk akal untuk standar ditetapkan tetapi tidak ada persyaratan untuk mengimplementasikan semuanya.

  • Snapshots berkala dan stabil dari standar yang dikembangkan oleh W3C sebagai spesifikasi HTML5. Pada September 2012, W3C mengusulkan untuk mencapai tonggak Rekomendasi pada "HTML 5.0" pada tahun 2014, dengan snapshot titik setiap dua tahun (misalnya, "HTML 5.1" pada 2016).

Karena yang pertama, HTML5, seperti yang kita pahami, dapat digunakan sekarang . Sayangnya, karena ini adalah standar hidup, menggunakannya sebagai pembuat konten membutuhkan pemahaman implementasi setiap agen pengguna.


sumber
Sementara Windows XP masih memegang 60-75% dari pasar dan Win7 (atau Vista) diperlukan untuk IE9 untuk bekerja, saya tidak berpikir adopsi pada 2012 akan lebih dari 20-30%. Maksud saya adopsi solusi yang hampir tidak berfungsi, daripada sesuatu yang siap produksi, seperti HTML4 atau flash.
Slawek
@Slawek, apa pun angka berbagi penggunaan yang ingin Anda percayai , lebih dari setengah agen pengguna pada saat Rekomendasi Kandidat memiliki dukungan yang masuk akal, jika tidak mendekati lengkap, untuk HTML5.
2
Yah saya lebih suka belajar dari sejarah daripada merujuk pada doa dari beberapa perwakilan Microsoft dan pemasaran FUD. DOM Level1 - spesifikasi dari tahun 1998, tidak ada dukungan yang layak di browser APAPUN versi microsoft APAPUN sampai sekarang (IE9 mungkin akan mendukungnya, saya belum memeriksa). Saya tidak mengatakan 75% browser tidak akan mendukung HTML5 karena WindowsXP, tetapi 75% pengguna IE tidak dapat membuat HTML5 berfungsi. Pembaruan IE sangat menyakitkan karena diperlukan untuk beralih sistem operasi sebelum Anda dapat mengubah browser :) Saya hanya bisa menertawakan ini karena itu gila. Lebih baik daripada berbicara, mereka akan membuat DOM sialan itu bekerja.
Slawek
2
Komentar untuk komentar baru-baru ini: ketika kita akan berurusan dengan browser microsoft, kita harus mati dengan kinerja lamban Mozilla. Saya orang yang sangat "berorientasi pada hasil". Saya tidak akan menyentuh HTML5 (seperti Canvas, SVG) dalam 3-4 tahun ke depan. Pada dasarnya itu memberi Anda tidak ada keuntungan dibandingkan dengan flash dan Anda harus kode hal yang sama di flash pula sehingga akan kompatibel dengan jumlah waras browser autdition Anda yang waras. Anda sudah harus berurusan dengan ketidakcocokan HUNDREDS di IE dengan hari ini, HTML4 yang lebih sederhana. Saya hanya peduli pada "hasil" dan kondisi saat ini, bukan FUD dan ideologi.
Slawek
1
+1 untuk paragraf kesimpulan: "menggunakannya sebagai pembuat konten membutuhkan pemahaman tentang implementasi setiap agen pengguna." Uhh ... MIMPI BURUK !!!
GlenPeterson
12

Jawaban mudah: Desain oleh Komite

Manfaat dari kerumunan orang yang memperhatikan desain adalah bahwa seluruh kelompok akan memunculkan berbagai aspek yang tidak dipikirkan oleh perancang asli. Itu nilai tambah.

Ketika perancang adalah kerumunan besar, mereka semua memiliki agenda dan hal-hal kesayangan yang berbeda yang ingin mereka masuki standar dengan alasan apa pun. Kadang-kadang fitur saling bertentangan, kadang-kadang ada politik di sekitar keputusan, dll. Butuh waktu lama bagi sekelompok besar orang untuk mencapai kesepakatan. Itu minus.

Baik atau buruk, W3C telah memilih untuk mengembangkan standar mereka dengan cara ini.

Berin Loritsch
sumber
19
Dan kemudian, pada saat komite akhirnya menyetujui sesuatu, industri telah mengambil rancangan spesifikasi mereka, mengimplementasikan bagian-bagiannya, dan memperpanjang sisanya dengan cara yang tidak sesuai dengan spesifikasi final.
Robert Harvey
Ya benar, apa yang terjadi ketika Anda melapisi DIV transparan di atas kanvas itu :) Terlihat sederhana, sangat rumit untuk dilakukan.
Slawek
9

Karena itu penting bahwa itu benar.

  • Dibutuhkan waktu untuk memperbaikinya - Standar HTML5, setelah ditetapkan, akan ada untuk waktu yang lama. Itu harus menjadi yang terbaik dan bisa benar. Itu membutuhkan perdebatan oleh para ahli, coba-coba, masukan dari pengguna dan pengembang, dan analisis statistik

  • Ketika standar berubah, aplikasi seseorang di suatu tempat akan rusak - Standar harus benar saat pertama kali. Dengan setiap perubahan pada standar, aplikasi seseorang di suatu tempat di dunia ini rusak dengan versi yang baru. Itu mengharuskan kami sebagai pengembang untuk memperbaikinya, menghabiskan waktu dan uang. Itu harus benar saat pertama kali.

  • Ketidakjelasan perlu dihapus - Mudah untuk mengatakan ini adalah apa yang dilakukan tag kanvas ketika hanya ada tag kanvas pada halaman, tetapi bagaimana dengan ketika itu di dalam tag lain? Bagaimana dengan kombinasi tag? Bagaimana seharusnya mereka membuat? Bagaimana seharusnya mereka membuat atribut gaya X yang diatur dalam kombinasi tertentu?

Bonus: Lihatlah spec HTML5 dalam bentuk saat ini dan Anda akan melihat apa yang masuk ke dalamnya.

Ryan Hayes
sumber
7

Panjang? Butuh hampir 8 tahun bagi microsoft untuk membuat CSS2 sederhana hampir tidak berfungsi di IE7, sementara dukungan DOM1 dalam javascript masih rusak di IE8. Itu spek dari tahun 1998.

Itu sebabnya Anda tidak akan melihat adopsi luas HTML5 dalam multimedia dalam 20 tahun ke depan. Ini sangat rumit, belum selesai, kinerja payah. Bahkan hal-hal sederhana seperti websockets dimatikan karena alasan keamanan.

Beberapa hal tidak akan berfungsi sebagai standar terbuka. Melakukan game atau MM dalam lingkungan yang seharusnya bekerja pada thin client dan mendukung penurunan kualitas? Itu gila.

Diedit: Ya, yang pertama adalah kerumitan berlebih. Anda memiliki satu plugin flash yang sama di setiap browser dan berfungsi dengan cara yang sama setiap waktu. Itu solusi sederhana dan efektif. Satu antarmuka, Anda membuat perubahan sekali, kompilasi ulang dan biola - Anda memiliki plugin untuk semua browser di pasar, dengan memanfaatkan beberapa lapisan perantara antara browser dan plugin.

Di sisi lain Anda memiliki 10 browser dan Anda ingin menambahkan misalnya. dukungan multimedia / film. Itu berarti setiap perusahaan harus mengimplementasikan media player dari awal, di samping semua orang menginginkan sesuatu yang berbeda. Apple menginginkan H.264 sehingga pemilik situs web akan membayar mereka royalti untuk codec untuk bermain film, Google dan Mozilla menginginkan VP8 sehingga mereka dapat memiliki bisnis mereka tidak terpengaruh oleh paten Apple, dll.

Jadi itu berakhir dalam mengimplementasikan hal-hal yang semua orang inginkan (sementara VP8 atau H.264 akan melakukan, untuk permulaan).

Jadi sebelum mereka dapat mengatasi perbedaan mereka, Adobe akan mengimplementasikan H.264 dalam flash, gunakan streaming dan DRM stack yang sudah tersedia dan ... sudah siap. 3-4 bulan dan Anda memiliki teknologi yang berfungsi dengan tingkat adopsi 98%.

Sederhana, satu perusahaan memutuskan, sehingga mereka dapat mendorong perubahan besar dengan cepat dan tidak perlu menambahkan "ide" dari 20 anggota "badan standarisasi" lainnya. Selain HTML5 mungkin 10-15 tahun di belakang flash, dalam multimedia. Kesenjangan hanya akan semakin besar. Dalam MAX avant baru-baru ini Anda dapat melihat dukungan pengontrol permainan dan aplikasi balap 3D layar penuh, berjalan pada flash dalam FPS penuh, dukungan akselerasi perangkat keras dan sebagainya. Sementara itu, mozilla sekarang dapat memutar video H.246 tanpa merusak browser, tetapi hanya memutar. Fungsi tambahan apa pun (seperti layar penuh, streaming, maju cepat) masih belum ada!

Selain itu saya pikir W3C hanya membuang-buang sumber daya dengan mencoba membuat HTML5 salinan flash setengah matang. Itu tidak akan berfungsi ... itu seperti mencoba membuat flash salinan HTML. Tidak akan bekerja

Slawek
sumber
+1 untuk penjelasan yang cukup jelas tentang politik yang terlibat.
Michael K
5

Pada dasarnya, membuat sekelompok orang untuk menyetujui sesuatu agak sulit. Belum lagi ada berbagai masalah untuk diselesaikan. Misalnya, ada banyak perdebatan tentang codec apa yang akan digunakan untuk video.

Baik atau buruk, sebagian besar spesifikasi memerlukan waktu untuk menuntaskannya.

George Marian
sumber
2

Mark Pilgrim membicarakan hal ini dalam bukunya "Dive Into HTML5" di sini: http://diveintohtml5.org/past.html Tampaknya banyak orang tidak menyukai versi buku karena tidak cukup teknis, tetapi di bagian ini editorial cukup terjamin.

(Sunting: Saya hanya ingin memberikan referensi untuk komentar saya tentang orang-orang yang tidak menyukai kualitas "cerewet" buku: periksa ulasan di amazon . Saya pribadi senang membacanya dan menemukan itu informatif, sehingga jarak tempuh dapat bervariasi. )

tcnolan
sumber
2

Bagian dari masalah adalah bahwa spesifikasi tidak akan diselesaikan hingga setidaknya ada dua implementasi utama dari spesifikasi - setidaknya dua browser terpisah mendukungnya secara penuh. Jadi spek harus cukup lengkap untuk implementasi penuh, maka harus benar-benar diimplementasikan, maka dapat diselesaikan.

Grant Palin
sumber
1
Masalah ayam / telur klasik muncul di sini;)
tcnolan
@olanolan Cukup!
Grant Palin
2

Bagian dari Masalah: Saya ingin ogg theora di browser. Apa kamu setuju? Tidak. Anda ingin H.264. Tapi apakah saya setuju? Tidak. Itulah masalah di antara Google, Mozilla, Microsoft, Apple, Adobe dan semua perusahaan yang bermain di belakang html 5. Mereka mencoba untuk memaksimalkan pendapatan dan menjadi perusahaan monopoli. Persaingan yang ketat. Jadi semakin panjang untuk diselesaikan.


sumber