Kita bisa mengejek Ballmer karena gangguan saraf yang setengah gila ini, tetapi pesannya tepat sasaran. Jika Anda tidak memberi pengembang alat dan pengetahuan yang mereka butuhkan untuk bekerja dengan sistem Anda, mereka tidak hanya akan mengalami kesulitan, tetapi mereka juga tidak akan dapat mengembangkan apa yang Anda kerjakan!
Sayangnya, dalam praktiknya, kami melihat bahwa dalam hal ini, para pengembang itu sendiri bisa menjadi musuh terbesar mereka. Mereka memilih "kerangka kerja" yang buruk yang membuat mereka bekerja lebih keras daripada lebih pintar, atau mereka dengan sengaja memamerkan ketidaktahuan mereka tentang dasar-dasar dan menyalin kode orang lain dengan harapan kode itu akan melakukan tugas yang diminta.
Tidak ada area lain yang lebih jelas dari pada sikap arogan, acuh tak acuh, jika tidak benar-benar menghina HTML. Tidak ada batasan untuk pernyataan yang tidak masuk akal dan keliru tanpa akhir dari mereka yang tidak dapat menulis satu baris pun dalam bahasa ini.
Singkatnya, pengembang tidak menganggap HTML cukup serius, tetapi apa yang terjadi jika Anda menunjukkan kelemahan mereka? Sebagai tanggapan, kami hanya akan menunggu aliran tanpa akhir dari alasan tidak berarti mengapa mereka tidak boleh terganggu oleh implementasi yang benar!
Daftar alasan lemah
"HTML bukanlah bahasa pemrograman yang sebenarnya"
Ini adalah urutan perintah yang diikuti komputer untuk menyelesaikan tugas. Jika ada definisi lain dari bahasa pemrograman, maka dalam empat dekade menulis perangkat lunak, saya belum pernah mendengarnya. Apakah dari Turing sudah lengkap? Tidak ... namun demikian, ini memberi tahu komputer cara menyampaikan makna gramatikal dan struktural dari konten dengan cara yang tidak bergantung pada mesin. Ada aturan untuk menggunakan tag, urutan, dan sintaksnya.
"Tidak ada yang peduli dengan kode jika terlihat benar bagi pengguna."
Tepat sampai saat Anda bertemu dengan pengguna tunanetra. HTML tidak hanya seperti tampilan halaman ... Tidak! Saya akan memperbaikinya - HTML sama sekali bukan tentang bagaimana sesuatu terlihat. HTML diperlukan untuk mengkomunikasikan elemen apa yang harus ada dalam hal tata bahasa dan struktur sehingga agen pengguna dapat menyampaikan nilai ini kepada pengguna. Jadi kami memiliki CSS untuk mendeskripsikan bagaimana elemen harus terlihat . Jika salah satu tag, id, atau kelas Anda mengomunikasikan tampilan elemen, Anda telah memilih kode yang salah berdasarkan asumsi yang salah.
Pembaca layar (perangkat lunak untuk membaca halaman dengan suara keras), e-book Braille, TTYsโฆ ini semua adalah target non-visual; dan jangan lupa bahwa mesin telusur juga tidak memiliki mata. Mereka bahkan tidak peduli bagaimana "tampilan" halaman Anda.
Selain itu, penting bagi orang-orang bahwa laman Anda lebih lambat atau lebih mahal untuk dihosting, atau melanggar pedoman aksesibilitas bagi penyandang disabilitas, atau menyumbat seluruh saluran yang tersedia. Markup non-semantik , DIV tanpa akhir dan tidak berarti yang tidak melakukan apa-apa, kelas presentasi - semuanya bertambah dan memengaruhi hasilnya!
Anda akan mendengar alasan yang sama untuk banyak aspek lain dari pengembangan web, dan itu hampir selalu bohong. Baik itu semantik yang buruk / rusak, masalah aksesibilitas bagi penyandang disabilitas, JS opsional yang membengkak, menggunakan teknologi "aplikasi web" untuk hal-hal yang seharusnya bukan aplikasi, dll., Dll.
Sangat sering, ketika menggunakan semua ini, pengguna menyadari bahwa ada sesuatu yang salah, tetapi tidak dapat menjelaskannya. Pengguna bukan programmer, mereka tidak tahu apa kesalahannya dan siapa yang harus disalahkan, tetapi mereka merasa ada sesuatu yang salah, semuanya acak.
Bagaimana dengan pecundang malang berikutnya yang harus mendukung hasil pekerjaan Anda, yang berisi semua kesalahan dari daftar, bagaimana TIDAK menggunakan HTML? Orang-orang selalu mengobrol tentang bagaimana "kerangka" mereka yang rusak itu seharusnya "membantu kita bekerja sama." Bagaimana dua atau sepuluh kali jumlah kode yang tidak sesuai dengan aturan dasar HTML dan melanggar tujuan bahasa, dapat "meningkatkan kolaborasi"?
"Tapi contoh dalam kerangka bekerja persis seperti ini, dan ditulis oleh para ahli"
Mereka bukan spesialis pengembangan web. Sebaliknya, mereka adalah spesialis dalam pemasaran, propaganda, dan penipuan. Markup dalam contoh sistem seperti Bootstrap dan Tailwind adalah praktik HTML mimpi buruk. Mereka berbau campuran yang mengerikan dari "Saya tidak ingin belajar HTML dan CSS" dan "Saya melewatkan peningkatan tahun 1990-an," meninggalkan kemajuan lebih dari dua puluh tahun. Hanya karena mereka digunakan oleh jutaan situs ("mayoritas tidak mungkin salah"), dan para ahli yang mengangkat dirinya sendiri memuji mereka (menarik otoritas), tidak membuat mereka atau praktik serupa menjadi baik.
"Kode vanilla lebih sulit untuk dikerjakan."
Anda membuatnya sulit. Inilah masalahnya: Dengan mengabaikan aturan semantik penataan dan keseluruhan tujuan HTML, Anda membuatnya lebih sulit untuk dikerjakan. Berkontribusi untuk ini adalah fakta bahwa umpan noob seperti W3Schools (alias W3fools) dipenuhi dengan informasi yang tidak akurat, penyederhanaan vulgar, dan tidak adanya sebagian besar konsep dasar HTML.
Konten harus menentukan markup, konten + markup + lingkungan target / kemampuan agen pengguna harus menentukan struktur. Dengan mengikuti semantik dasar, dan dengan secara bertahap meningkatkan dan menggunakan pemisahan fungsionalitas yang benar, Anda akan mendapatkan sekumpulan instruksi yang membuatnya mudah untuk membuat halaman yang mudah dirawat. Jika Anda mengalami masalah dengan ini dan berpikir bahwa "kerangka kerja HTML / CSS" ini membuat hidup Anda lebih mudah, maka Anda tidak cukup mengetahui HTML atau CSS untuk melakukan tugas apa pun.
Secara umum, Tailwind lebih sederhana daripada vanilla HTML / CSS, Anda hanya perlu mempelajari lebih dari 500 kelas, 90% di antaranya sudah ada sebagai properti CSS, dan kemudian mengabaikan hampir semua aturan tentang bagaimana HTML harus digunakan!
Jika Anda tidak mengerti, itu adalah sarkasme.
"Anda terlalu mementingkan HTML"
Saya mendengar omong kosong ini sepanjang waktu, dan saya kesal dengan kepicikannya!
Ini seperti mengatakan bahwa saya terlalu memperhatikan tanah di bawah lokasi konstruksi atau bahan yang digunakan untuk membuat fondasi. Jika Anda mengabaikan detail seperti itu, maka jangan kaget bahwa semuanya akan runtuh dengan "cara yang tidak bisa dipahami" atau tersedot ke dalam lubang pembuangan karst!
HTML adalah fondasi dan landasan. Jika Anda mengabaikannya, maka tidak heran hasilnya akan menjadi bencana total.
Memang, banyak kesalahpahaman yang digunakan pengembang web untuk meyakinkan diri mereka sendiri agar tidak khawatir tentang masa depan tidak berbeda dengan kesalahpahaman yang menyebabkan semua bencana rekayasa. Menghemat kualitas, mengabaikan spesifikasi atau pengguna akhir, memicu ego Anda sendiri; selain itu, banyak yang membuat kesalahan fatal - mereka mengacaukan seni dengan desain.
Kesalahan terakhir mengarah pada bangunan yang mempesona orang dengan sinar matahari yang dipantulkan dari jendelanya: seseorang yang membayangkan dirinya sebagai seniman meyakinkan orang dengan kostum untuk menghabiskan miliaran pada proyek di mana bentuk lebih penting daripada fungsi.
"Tapi HTML tidak memberi kami alat yang kami butuhkan untuk mengirimkan UX."
Ada banyak versi berbeda dari alasan ini, tetapi secara umum mereka menyiratkan yang di atas. Mereka yang mengatakan ini hampir selalu merujuk pada penggemar "aplikasi web" atau "aplikasi satu halaman", mereka mencoba menggunakan JavaScript di mana saja, mereka tidak peduli dengan aksesibilitas bagi penyandang disabilitas dan bersikeras bahwa "pengguna" entah bagaimana "membutuhkan" semua barang mewah mereka untuk meningkatkan "pengalaman pengguna".
Tapi sejujurnya, para badut ini tahu banyak tentang UX seperti para seniman yang telah jatuh ke dalam ilusi menjadi "desainer web" tahu tentang desain.
Dan Anda dapat melihat hasil pekerjaan mereka SEKARANG di seluruh industri kami: solusi rapuh, bengkak, dan lambat yang "dapat meningkatkan skrip" sangat memperlambat sistem keranjang belanja toko online sehingga banyak dari mereka bahkan tidak dapat mempertahankan waktu aktif (halo Zotac) ; pada saat yang sama, pengguna dengan keras menekan F5, berharap mereka masih dapat membeli kartu video. Karena memuat ulang seluruh halaman dan menjalankan kembali skrip, semua fungsi "aplikasi" hanya mengarah pada PENGURANGAN kecepatan memuat halaman. Dan ini bahkan lebih terasa jika Anda meludahi markup menggunakan kelas presentasi.
Dan karena skrip dapat dimatikan, dan konten yang dihasilkan skrip lebih sulit bagi pembaca layar, e-book Braille, dan sebagainya, aplikasi satu halaman (SPA) melanggar pedoman aksesibilitas bagi penyandang disabilitas.
Saya tidak mengatakan bahwa SPA dan sejenisnya tidak memiliki kegunaan yang masuk akal, tetapi jika Anda tidak dapat membuat keranjang belanja sederhana atau portal perbankan yang memuat cepat yang kehilangan sedikit dari menonaktifkan skrip, maka Anda mungkin tidak boleh melakukan pekerjaan apa pun. Juga tidak itu bisnis. Aplikasi web JANGAN digunakan untuk sesuatu yang sangat sederhana seperti keranjang belanja di situs web!
Dan jika Anda berpikir bahwa menggunakan skrip untuk melakukan ini benar-benar meningkatkan pengalaman pengguna, maka Anda jelas belum menguji sistem dengan pengguna nyata dan lalu lintas nyata! Paling tidak, mereka tidak melakukan perbandingan nyata dari pembagian tugas menggunakan cache pada pemuatan halaman normal dan pada halaman dengan skrip bermodel baru.
Jadi pengembang web yang harus disalahkan atas semuanya?
Tidak mungkin . Mari kita kembali ke awal artikel dan teriakan Ballmer tentang "pengembang, pengembang, pengembang".
Ketika dia memainkan sketsa kecilnya, itu dirancang untuk memecahkan masalah yang pada akhir 90-an Windows sama sekali tidak ada, karena pengembang sering tidak menggunakan alat yang disediakan oleh Microsoft. Borland telah menerbitkan dokumentasi terbaik untuk Windows API. Orang-orang menggunakan alat non-Microsoft karena bahasa "visual" dianggap mainan. Mereka sangat jauh di belakang teknologi pengembangan web, kami dapat mengatakan bahwa mereka masih berusaha mengejar ketinggalan!
W3C dan WhatWG memiliki masalah serupa dengan yang disebut"Spesifikasi" tidak ditulis untuk orang yang menulis situs web. Izinkan saya ulangi: spesifikasi bahasa yang digunakan untuk menulis situs web bukanlah untuk orang-orang yang benar-benar menulis situs web . Ini ditulis untuk orang-orang yang menulis agen pengguna! Browser adalah agen pengguna, tetapi UA tidak selalu merupakan browser.
Faktanya, sangat tidak masuk akal bahwa versi idiot dari "dokumen dinamis" WhatWG mengacu pada MDN untuk dipahami "manusia biasa".
: , ยซ ยป (living document), HTML- . HTML 5, , HTML 5, HTML 5 ? !
Fakta sederhana: untuk mendapatkan deskripsi arti tag dalam bahasa Inggris yang sederhana, Anda harus beralih ke sumber pihak ketiga, banyak di antaranya bahkan tidak setuju satu sama lain. Terlebih lagi, W3C telah menjadi benar-benar ompong, secara membabi buta menyetujui semua yang dikatakan WhatWG, meskipun WhatWG telah berulang kali membuktikan bahwa ia tidak memenuhi syarat untuk membuat turunan dari HTML 4 Strict. Penerimaan EMBED sebagai tag yang valid, membuat dan / atau memelihara tag yang berlebihan relatif terhadap OBJECT, tidak lagi mendukung (untungnya) tag HGROUP, yang menunjukkan bahwa mereka bahkan tidak memahami untuk apa header bernomor itu dan bagaimana menggunakannya. .. yang mengerjakannya, tantangan untuk HTML 5 bukanlah membuat spesifikasi atau standar yang memberi tahu kita cara membangun situs web yang bermanfaat!Ini tentang mendokumentasikan apakah orang melakukan benar atau salah hari ini dan browser itu dapat mendukung, tetapi bukan apa yang harus mereka dukung! Mengingat bahwa selama pengembangan HTML 5, sebagian besar pengembang masih menggunakan HTML 3.2 dan mencoret-coret doctype HTML 4 yang menyimpang di atasnya, mengapa terkejut bahwa semuanya ternyata merupakan kumpulan praktik yang buruk, ketinggalan zaman, dan kuno?
Jika pengembang tidak menganggap HTML cukup serius, maka mereka yang mengembangkannya sebagai "spesifikasi" yang harus disalahkan; bahkan menyebutnya HTML 5 adalah kejahatan serius terhadap pengembangan web ... Sama seperti kejahatan terhadap musik yang memberikan Grammy kepada Billie Eilish untuk kreasi yang biasa-biasa saja.
W3C dan WhatWG bahkan tidak dianggap serius oleh organisasi standar lainnya, dan untuk alasan yang baik.
Apa solusinya?
Sebaiknya mulai dengan membuat pengembang tidak menganggap HTML sebagai anak yang kurang berkembang dari dunia bahasa pemrograman. Secara khusus, membuat mereka mempraktikkan markup semantik, memisahkan presentasi dari konten, yang akan sangat meningkatkan kegunaan, aksesibilitas, dan efisiensi.
Selain itu, kami sendiri, sebagai pengembang, memiliki suara dan membingungkan W3C atas kegagalan yang menghancurkan dari pekerjaannya sebagai badan sertifikasi . Kami perlu meminta dokumentasi bahasa yang lebih sederhana dan lebih bersih dari sumber resmi. Tidak dapat dibenarkan bahwa dokumen yang mendeskripsikan sesuatu yang sederhana seperti HTML lima sampai sepuluh kali lebih lama daripada konstitusi kebanyakan negara maju.Fakta bahwa spesifikasi bahasa yang digunakan untuk membangun situs web tidak ditulis untuk orang-orang yang menggunakan bahasa tersebut untuk membangun situs web adalah mosi tidak percaya.
Tapi kami membutuhkan lebih dari sekedar dokumentasi resmi yang lebih baik, kami perlu mengurangi bahasanya, membuatnya lebih berorientasi pada tugas. Hidupkan kembali banyak ide yang terdapat dalam HTML 5 sebelum W3C membuangnya ke sampah dan mengadopsi versi WhatWG. Fakta bahwa Microsoft telah menghabiskan beberapa dekade membuat IE mencegah kita menggunakan OBJECT bukan alasan tidak hanya untuk menyimpan tag IMG, tetapi untuk menambahkan banyak tag baru secara tidak perlu (VIDEO, AUDIO). Hanya karena "seniman" dan penjahat pemasaran suka membuka jendela baru untuk pengguna, suka atau tidak, belum menjadi alasan spesifikasi untuk menyertakan
TARGET="_BLANK"
...
Selain itu, penggunaan EXPLICIT dan arti dari tag harus ditempatkan di tengah spesifikasi , dan bahkan mungkin dalam panduan penggunaan terpisah untuk mereka yang masih hidup di tahun 1997.
Membuat versi HTML yang lebih sederhana, lebih bersih, dan lebih berguna yang akan memandu kita semua bukanlah masalah besar.
Selain itu, akan bermanfaat bagi kita jika para pengembang browser kurang berbobot saat membuatnya. Microsoft, Mozilla, Apple, dan Google memiliki pengaruh besar pada W3C dan WhatWG, dan ini sama sekali tidak etis. Bobot mereka dalam pengambilan keputusan bertentangan dengan konsep web yang bebas dan terbuka.
Periklanan
Server epik adalah VDS untuk menghosting situs dari toko online kecil di Opencart hingga proyek serius dengan audiens yang besar. Buat konfigurasi server Anda sendiri dengan beberapa klik!
Bergabunglah dengan obrolan Telegram kami .