- Posted on
- • umum
HTML
- Author
-
-
- User
- Parmi
- Posts by this author
- Posts by this author
-
Sejarah Singkat HTML:
HTML (HyperText Markup Language) diciptakan oleh Sir Tim Berners-Lee pada akhir tahun 1991, namun baru dipublikasikan secara resmi pada tahun 1993 sebagai HTML 1.0. Tujuannya adalah untuk menciptakan bahasa standar untuk membuat dan memformat dokumen yang dapat dibaca dan diakses melalui web browser, memungkinkan pertukaran informasi di World Wide Web.
Evolusi Versi HTML dan Fitur Utama:
- HTML 1.0 (1993): Versi pertama yang memperkenalkan elemen-elemen dasar seperti heading (
<h1>hingga<h6>), paragraf (<p>), list (<ul>,<ol>,<li>), dan hyperlink (<a>). Tujuannya sederhana, yaitu berbagi informasi yang dapat dibaca dan diakses melalui browser web. - HTML 2.0 (1995): Versi ini memperkenalkan fitur yang sangat penting: form (
<form>) yang memungkinkan pengguna untuk berinteraksi dengan halaman web, mengisi data, dan mengirimkannya ke server. Selain itu, dukungan untuk elemen dan atribut yang lebih banyak juga ditambahkan. - HTML 3.2 (1997): Meningkatkan kemampuan desain web dengan menambahkan dukungan untuk tabel (
<table>) yang lebih kompleks, applet, dan kemampuan scripting. Versi ini juga memperkenalkan CSS (Cascading Style Sheets), meskipun dalam tahap awal, yang memungkinkan pemisahan antara konten dan desain. - HTML 4.0 (1997): Menyempurnakan fitur dari versi sebelumnya dan memperkenalkan frame (
<frame>,<frameset>), dukungan yang lebih baik untuk JavaScript, dan fokus yang lebih kuat pada aksesibilitas. CSS juga semakin mendapatkan perhatian sebagai cara utama untuk mengatur tampilan halaman web. - HTML 4.01 (1999): Merupakan revisi kecil dari HTML 4.0 yang bertujuan untuk memperbaiki bug dan ketidaksesuaian. Versi ini menjadi standar yang paling banyak digunakan pada awal tahun 2000-an.
- XHTML (eXtensible HyperText Markup Language) (2000-2004): Ini bukanlah versi HTML baru, melainkan formulasi ulang HTML sebagai bahasa XML yang lebih ketat. Tujuannya adalah untuk memastikan halaman web memiliki struktur yang baik dan sintaks yang valid, sehingga lebih mudah diproses oleh berbagai jenis perangkat lunak. Namun, karena kekakuan sintaksnya, adopsi penuh XHTML tidak pernah terjadi secara luas.
- HTML5 (2014): Merupakan lompatan besar dalam evolusi HTML. HTML5 bertujuan untuk tidak hanya menyediakan struktur dokumen tetapi juga untuk mendukung aplikasi web yang lebih kaya dan interaktif tanpa memerlukan plugin eksternal (seperti Flash). Fitur-fitur utamanya meliputi:
- Elemen Semantik Baru:
<article>,<aside>,<footer>,<header>,<nav>,<section>untuk memberikan makna yang lebih jelas pada struktur konten. - Dukungan Multimedia Asli: Elemen
<video>dan<audio>untuk memutar video dan audio tanpa plugin. - Elemen
<canvas>: Memungkinkan pembuatan grafik, animasi, dan visualisasi yang kompleks langsung di halaman web menggunakan JavaScript. - Penyimpanan Lokal (Local Storage dan Session Storage): Memungkinkan aplikasi web untuk menyimpan data secara lokal di browser pengguna.
- Geolocation API: Memungkinkan aplikasi web untuk mengakses lokasi geografis pengguna (dengan izin).
- Formulir yang Disempurnakan: Tipe input baru (
email,date,time,url,number,range,color, dll.) dan atribut baru (placeholder,required,pattern,autocomplete,autofocus) untuk meningkatkan pengalaman pengguna dan validasi data. - API Drag and Drop: Memungkinkan interaksi drag-and-drop yang interaktif.
- Web Workers: Memungkinkan JavaScript berjalan di latar belakang tanpa memblokir thread utama, meningkatkan responsivitas aplikasi.
- Elemen Semantik Baru:
- HTML 5.1, 5.2, 5.3 (dan Living Standard): Setelah HTML5, pengembangan HTML beralih ke model "Living Standard" di bawah WHATWG (Web Hypertext Application Technology Working Group). Ini berarti HTML terus diperbarui dengan fitur-fitur baru dan perbaikan secara berkelanjutan, tanpa menunggu rilis versi mayor berikutnya. HTML 5.1, 5.2, dan 5.3 adalah snapshot spesifikasi pada waktu tertentu yang menambahkan fitur-fitur seperti elemen
<picture>untuk gambar responsif, elemen<dialog>untuk dialog modal, atributinertuntuk menonaktifkan interaksi UI, dan peningkatan aksesibilitas lainnya.
Yang Terkait dalam Penggunaan HTML:
Menggunakan HTML untuk membangun halaman web melibatkan beberapa aspek penting:
- Struktur Dokumen: Setiap dokumen HTML memiliki struktur dasar yang terdiri dari elemen
<html>sebagai root, di dalamnya terdapat bagian<head>yang berisi informasi meta tentang dokumen (seperti judul, link ke CSS, dll.), dan bagian<body>yang berisi konten sebenarnya dari halaman web yang akan ditampilkan kepada pengguna. - Tag dan Elemen: HTML menggunakan tag yang ditulis di dalam tanda kurung siku (
< >). Sebagian besar tag berpasangan, memiliki tag pembuka dan tag penutup (misalnya,<p>dan</p>). Tag-tag ini menentukan elemen HTML, yang merupakan blok bangunan dasar halaman web. Elemen dapat berisi teks, gambar, video, atau elemen lain. - Atribut: Tag HTML dapat memiliki atribut yang memberikan informasi tambahan tentang elemen. Atribut ditulis di dalam tag pembuka dan terdiri dari nama dan nilai (misalnya,
<img src="gambar.jpg" alt="Deskripsi gambar">). Atributclassdanidsangat umum digunakan untuk memberikan gaya dengan CSS atau untuk memanipulasi elemen dengan JavaScript. - Konten: Ini adalah informasi aktual yang ingin Anda tampilkan di halaman web, seperti teks, gambar, video, dan lain-lain. Konten ini ditempatkan di antara tag-tag HTML.
- Semantic HTML: Menggunakan elemen HTML sesuai dengan makna dan tujuannya. Misalnya, menggunakan
<article>untuk konten artikel,<nav>untuk navigasi, dan<footer>untuk bagian footer. Ini meningkatkan aksesibilitas, SEO (Search Engine Optimization), dan keterbacaan kode. - Aksesibilitas (Accessibility): Membuat halaman web yang dapat diakses oleh semua orang, termasuk mereka yang memiliki disabilitas. Ini melibatkan penggunaan tag dan atribut yang tepat (seperti atribut
altpada gambar), struktur yang logis, dan memastikan konten dapat dinavigasi dengan keyboard. - Hubungan dengan CSS: HTML bertanggung jawab atas struktur dan konten halaman web, sedangkan CSS (Cascading Style Sheets) digunakan untuk mengatur tampilan visual halaman, seperti warna, font, tata letak, dan responsivitas. HTML dan CSS bekerja bersama untuk menciptakan halaman web yang menarik dan fungsional.
- Hubungan dengan JavaScript: HTML menyediakan struktur dan konten, CSS mengatur tampilan, dan JavaScript digunakan untuk menambahkan interaktivitas dan fungsionalitas dinamis ke halaman web. JavaScript dapat memanipulasi HTML (DOM - Document Object Model) dan CSS untuk mengubah perilaku dan tampilan halaman sebagai respons terhadap tindakan pengguna atau peristiwa lainnya.
Secara keseluruhan, HTML adalah fondasi dari setiap halaman web. Memahami seluk-beluknya, dari struktur dasar hingga fitur-fitur canggih HTML5 dan bagaimana ia berinteraksi dengan CSS dan JavaScript, adalah kunci untuk menjadi seorang pengembang web yang kompeten.
Untuk Pemula hingga Tingkat Lanjut:
- MDN Web Docs (Mozilla Developer Network): MDN Web Docs HTML - Ini adalah sumber dokumentasi HTML yang sangat komprehensif dan terpercaya, dikelola oleh Mozilla. Cocok untuk pemula yang ingin memahami dasar-dasar hingga pengembang berpengalaman yang mencari referensi mendalam. Mereka memiliki tutorial untuk berbagai tingkatan.
- W3Schools: W3Schools HTML Tutorial - Situs ini sangat populer dan menyediakan tutorial HTML yang mudah diikuti dengan banyak contoh praktis yang bisa Anda coba langsung di browser. Sangat baik untuk pemula.
- freeCodeCamp: freeCodeCamp Responsive Web Design - Platform ini menawarkan kursus gratis yang berfokus pada desain web responsif, yang mencakup HTML dan CSS. Pembelajaran dilakukan melalui tantangan coding interaktif dan proyek-proyek.
- HTML.com: HTML For Beginners - Situs ini menyediakan tutorial dan panduan referensi tentang tag, atribut, dan semua yang perlu Anda kuasai dalam HTML.
- web.dev - Learn HTML: Learn HTML - web.dev - Dibuat oleh tim Google Chrome, situs ini menawarkan kursus HTML yang solid untuk pengembang dari berbagai tingkat keahlian, dengan fokus pada praktik terbaik untuk membangun situs web yang cepat, aman, dan dapat diakses.
Sumber Interaktif:
- Codecademy: Codecademy HTML & CSS Courses - Menawarkan kursus interaktif di mana Anda bisa belajar HTML dan CSS secara langsung melalui latihan coding.
- Learn HTML: Learn HTML - Free Interactive HTML Tutorial - Menyediakan tutorial interaktif yang menjelaskan langkah demi langkah cara membangun website dengan HTML dan CSS.
Sumber Tambahan:
- Tutorialspoint - HTML Tutorial: HTML History and Evolution - Tutorialspoint - Menyediakan tutorial HTML yang terstruktur dengan baik, mulai dari dasar hingga konsep yang lebih lanjut.
- GeeksforGeeks - HTML5: HTML5 | Introduction - GeeksforGeeks - Menawarkan artikel dan tutorial tentang berbagai aspek HTML5 dan fitur-fiturnya.
Tips untuk Belajar HTML:
- Mulai dari Dasar: Pahami struktur dasar dokumen HTML, tag-tag penting, dan atribut-atribut umum.
- Praktik Langsung: Cobalah menulis kode HTML sendiri dan lihat hasilnya di browser. Gunakan fitur "Inspect Element" pada browser untuk melihat struktur HTML dari website yang sudah ada.
- Bangun Proyek Kecil: Setelah memahami dasar-dasar, coba bangun proyek website sederhana untuk mengaplikasikan pengetahuan Anda.
- Referensi yang Konsisten: Gunakan salah satu sumber dokumentasi (seperti MDN Web Docs) sebagai referensi utama Anda.
- Cari Komunitas: Bergabunglah dengan forum atau komunitas online untuk bertanya jika Anda mengalami kesulitan dan berbagi pengetahuan dengan orang lain.
Dengan banyaknya sumber daya yang tersedia secara online, Anda memiliki banyak pilihan untuk belajar dan menguasai HTML. Pilih sumber yang paling sesuai dengan gaya belajar Anda dan mulailah perjalanan Anda dalam dunia pengembangan web!
Perlu di ingat bahwa HTML bukanlah satu-satunya bahasa yang digunakan untuk membuat laman web, meskipun merupakan bahasa utama dan fondasi dari setiap halaman web.
Berikut adalah tiga bahasa inti yang hampir selalu digunakan bersamaan untuk membangun laman web modern:
HTML (HyperText Markup Language): Seperti yang sudah kita bahas, HTML bertanggung jawab untuk struktur dan konten dari halaman web. Ini memberikan kerangka dasar dan elemen-elemen yang membentuk halaman.
CSS (Cascading Style Sheets): CSS digunakan untuk mengatur tampilan visual dari halaman web. Ini mencakup warna, font, tata letak, ukuran, dan aspek visual lainnya. CSS memisahkan desain dari struktur HTML, sehingga memudahkan pengelolaan dan pemeliharaan tampilan website.
JavaScript: JavaScript adalah bahasa pemrograman yang memungkinkan Anda menambahkan interaktivitas dan fungsionalitas dinamis ke halaman web. Dengan JavaScript, Anda dapat membuat animasi, menangani tindakan pengguna (seperti klik atau pengisian formulir), memuat data dari server tanpa memuat ulang seluruh halaman, dan banyak lagi.
Jadi, alih-alih hanya HTML, pengembangan web modern biasanya melibatkan kombinasi ketiga bahasa ini:
- HTML untuk membangun struktur dan konten.
- CSS untuk memberikan gaya visual.
- JavaScript untuk menambahkan interaktivitas dan fungsionalitas.
Selain tiga bahasa inti ini, ada juga bahasa dan teknologi lain yang digunakan dalam pengembangan web, terutama di sisi server (back-end) untuk menangani logika aplikasi, database, dan lain-lain. Contoh bahasa back-end termasuk Python, Java, PHP, Ruby, C#, dan Node.js (yang menggunakan JavaScript di sisi server).
Namun, untuk apa yang Anda lihat dan interaksi langsung di browser (front-end), HTML, CSS, dan JavaScript adalah tiga pilar utama. HTML adalah bahasa dasar yang tidak bisa dihindari dalam pembuatan laman web.
Microsoft pertama kali memperkenalkan HTML pada awal tahun 1990-an sejalan dengan perkembangan World Wide Web. Namun, HTML pada dasarnya adalah bahasa markup statis yang digunakan untuk menyusun konten. Seiring dengan pertumbuhan internet, kebutuhan untuk membuat halaman web yang lebih interaktif dan dinamis meningkat.
Microsoft menciptakan Active Server Pages (ASP) yang pertama kali dirilis pada Desember 1996 sebagai bagian dari Internet Information Services (IIS) 3.0. Ini adalah teknologi server-side scripting pertama dari Microsoft.
Dasar Pemikiran Microsoft Membuat ASP:
Beberapa dasar pemikiran Microsoft dalam menciptakan ASP adalah:
Memenuhi Kebutuhan Web Dinamis: Pada pertengahan hingga akhir tahun 1990-an, permintaan untuk situs web yang lebih dari sekadar menampilkan informasi statis mulai meningkat. Pengembang membutuhkan cara untuk membuat halaman web yang dapat berinteraksi dengan pengguna, menampilkan konten yang berbeda berdasarkan input pengguna, dan terhubung ke database. ASP memungkinkan pengembang untuk menyematkan kode (awalnya VBScript dan kemudian JScript) di dalam halaman HTML. Kode ini dieksekusi di server sebelum halaman dikirim ke browser pengguna, sehingga memungkinkan pembuatan konten HTML yang dinamis.
Integrasi dengan Ekosistem Microsoft: Microsoft memiliki pangsa pasar yang signifikan dalam sistem operasi server (Windows NT Server) dan desktop. Dengan menciptakan ASP yang terintegrasi dengan IIS, mereka menawarkan solusi yang mulus bagi pengembang yang sudah menggunakan teknologi Microsoft lainnya. Ini memudahkan penggunaan alat dan teknologi Microsoft lainnya seperti database Microsoft Access atau SQL Server dalam pengembangan web.
Bersaing dengan Teknologi Lain: Pada saat ASP muncul, sudah ada teknologi server-side scripting lain seperti CGI (Common Gateway Interface) dan PHP (Personal Home Page, yang kemudian menjadi Hypertext Preprocessor). Microsoft ingin menawarkan alternatif yang kompetitif yang dikembangkan dan didukung oleh mereka sendiri.
Memudahkan Pengembangan: ASP dirancang untuk relatif mudah dipelajari dan digunakan, terutama bagi pengembang yang sudah familiar dengan bahasa scripting seperti VBScript. Ini memungkinkan para pengembang untuk dengan cepat membangun aplikasi web dinamis.
Hubungan ASP dengan HTML:
Penting untuk dipahami bahwa ASP bukanlah pengganti HTML. Sebaliknya, ASP bekerja bersama-sama dengan HTML. Ketika browser meminta halaman ASP, server IIS akan memproses kode ASP yang tertanam di dalam file .asp. Kode ini dapat menghasilkan konten HTML, yang kemudian dikirimkan kembali ke browser pengguna untuk ditampilkan. Jadi, output akhir dari halaman ASP yang dilihat oleh pengguna di browser tetaplah HTML (dan seringkali juga CSS dan JavaScript).
Singkatnya, Microsoft menciptakan ASP untuk memungkinkan pembuatan halaman web yang dinamis dan interaktif, untuk menawarkan solusi yang terintegrasi dengan platform Microsoft, dan untuk bersaing dengan teknologi server-side scripting lainnya yang sedang berkembang pada masa itu. ASP memungkinkan pengembang untuk menghasilkan HTML secara dinamis berdasarkan logika server. ASP kemudian digantikan oleh ASP.NET yang lebih canggih pada tahun 2002.
Apa yang kita lihat secara front-end adalah hasil dari platform aplikasi server, perlu di ingat bahwa Apache bukanlah satu-satunya server yang dapat digunakan untuk menjalankan HTML. Sebenarnya, ada banyak pilihan platform server web lain yang populer dan sering digunakan. Berikut adalah beberapa di antaranya yang menyerupai Apache Web Server dan bahkan mungkin lebih populer dalam beberapa kasus:
- Nginx: Ini adalah salah satu web server paling populer di dunia, dikenal karena kinerjanya yang tinggi, stabilitas, fitur yang kaya, konfigurasi yang sederhana, dan penggunaan sumber daya yang rendah. Nginx sering digunakan untuk situs web dengan lalu lintas tinggi dan juga sebagai reverse proxy, load balancer, dan HTTP cache.
- Microsoft IIS (Internet Information Services): Ini adalah web server yang dikembangkan oleh Microsoft untuk digunakan dengan sistem operasi Windows Server. IIS terintegrasi dengan baik dengan ekosistem Microsoft .NET dan merupakan pilihan populer untuk perusahaan yang menggunakan teknologi Microsoft.
- LiteSpeed: Web server komersial yang dikenal karena kinerja tinggi dan fiturnya yang kaya, termasuk dukungan untuk HTTP/3 dan QUIC. LiteSpeed sering diklaim lebih cepat daripada Apache dan Nginx dalam beberapa benchmark. Terdapat juga versi open-source dari LiteSpeed yang disebut OpenLiteSpeed.
- Node.js (dengan framework seperti Express): Meskipun sering dianggap sebagai lingkungan runtime JavaScript, Node.js juga dapat digunakan untuk membuat web server. Framework seperti Express.js memudahkan pembangunan aplikasi web dan serving konten HTML. Ini sangat populer untuk aplikasi web real-time dan aplikasi berbasis JavaScript.
- Caddy: Web server open-source yang otomatis mengelola sertifikat SSL/TLS menggunakan Let's Encrypt secara default, sehingga memudahkan konfigurasi HTTPS. Caddy dikenal karena kesederhanaan dan kemudahannya dalam penggunaan.
- HAProxy: Meskipun terutama dikenal sebagai load balancer, HAProxy juga dapat berfungsi sebagai web server yang sangat cepat dan andal, terutama untuk serving konten statis.
- Lighttpd: Web server open-source lain yang berfokus pada kecepatan dan penggunaan sumber daya yang rendah. Ini populer untuk serving konten statis dan aplikasi web dengan banyak koneksi bersamaan.
Perlu diingat:
- Sebagian besar web server ini mendukung serving file HTML statis secara langsung.
- Untuk aplikasi web yang lebih kompleks yang melibatkan logika server-side, seringkali digunakan bahasa pemrograman dan framework di sisi server (seperti Python dengan Django/Flask, Java dengan Spring, PHP dengan Laravel/Symfony, dll.) yang bekerja bersama web server untuk menghasilkan dan mengirimkan halaman HTML ke browser pengguna.
Jadi, meskipun Apache adalah salah satu web server yang paling lama ada dan masih sangat banyak digunakan, ada banyak alternatif lain yang masing-masing memiliki kelebihan dan kekurangannya sendiri, dan pilihan server sering kali tergantung pada kebutuhan spesifik proyek, infrastruktur yang digunakan, dan preferensi pengembang.
Sejarah & Perkembangan HTML: Dari Versi Pertama hingga HTML5
HTML (HyperText Markup Language) adalah bahasa markup yang menjadi fondasi web. Berikut evolusinya dari masa ke masa, fitur penting, dan perbandingan versi.
1. Era Awal: HTML 1.0 hingga HTML 4.01
1991: HTML 1.0 (Tim Berners-Lee)
- Penemu: Tim Berners-Lee (CERN) untuk berbagi dokumen ilmiah.
- Fitur Dasar:
html <title>, <p>, <a href>, <h1> to <h6>- Hanya mendukung teks dan hyperlink.
- Tidak ada CSS atau JavaScript.
1995: HTML 2.0
- Standar pertama yang diresmikan oleh IETF.
- Fitur Baru:
html <form>, <input>, <table>, <img>- Mulai mendukung form dan tabel.
- Digunakan di era Netscape Navigator.
1997: HTML 3.2 (W3C)
- Perubahan Besar:
- Dukungan CSS level 1 (styling dasar).
- Tag baru:
```html ,,
<
style>
```
- Masalah: Banyak tag presentasional (seperti <font>) yang membuat kode berantakan.
1999: HTML 4.01
- Revolusi Struktural:
- Memisahkan konten (HTML) dan tampilan (CSS).
- Fitur Penting:
```html
<
div>, ,
<
iframe>
```
- Mode Rendering:
- <!DOCTYPE HTML> menentukan mode standards vs quirks.
2. Era Modern: XHTML dan HTML5
2000: XHTML 1.0 (Strict)
- HTML + XML: Sintaks lebih ketat (tag harus ditutup, lowercase).
- Contoh:
html <br /> (bukan <br>) - Masalah: Terlalu rigid, kurang fleksibel untuk web dinamis.
2014: HTML5 (W3C Recommendation)
- Revolusi Web Modern:
- Fitur Baru:
```html
- Fitur Baru:
<
header>,
<
footer>,
<
nav>,
<
article>,
<
section>
```
- API Kuat:
- Canvas (<canvas> untuk game/grafik).
- Video/Audio (<video>, <audio> tanpa Flash).
- Local Storage (penyimpanan offline).
- Geolocation (akses lokasi pengguna).
- Web Workers (multithreading di JavaScript).
- Contoh Struktur HTML5:
html <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Contoh HTML5</title> </head> <body> <header> <h1>Judul Website</h1> <nav> <a href="/">Home</a> </nav> </header> <main> <article> <p>Ini konten utama.</p> </article> </main> <footer> <p>© 2024</p> </footer> </body> </html>
3. Perbandingan Versi HTML
| Aspek | HTML4 | XHTML | HTML5 |
|---|---|---|---|
| Sintaks | Lebih longgar | Harus valid XML | Fleksibel (HTML-style) |
| Struktur | Banyak <div> |
Sama seperti HTML4 | Semantic (<section>) |
| Multimedia | Butuh Flash/Plugin | Butuh Flash | Native (<video>) |
| API | Terbatas | Sama seperti HTML4 | Kaya (Local Storage, Canvas) |
| Mobile Support | Tidak optimal | Masalah kompatibilitas | Responsif (Flexbox, Grid) |
4. Fitur Terbaru HTML5 (2024)
Web Components
- Membuat custom tag (
<my-element>). - Contoh:
html <template id="card-template"> <div class="card"> <slot name="title"></slot> </div> </template>
- Membuat custom tag (
Progressive Web Apps (PWA)
- Bekerja offline seperti aplikasi native.
WebAssembly (Wasm)
- Eksekusi kode C++/Rust di browser.
Responsive Images
<picture> <source media="(min-width: 800px)" srcset="large.jpg"> <img src="small.jpg" alt="Contoh"> </picture>
5. Masa Depan HTML
- HTML6?
- Tidak ada rencana resmi, tetapi fitur baru terus ditambahkan ke HTML Living Standard.
- Integrasi AI:
- AI-generated HTML (seperti GitHub Copilot).
- 3D & AR/VR:
<model-viewer>untuk 3D di web.
6. Kesimpulan
- HTML 1.0 → HTML5 berevolusi dari dokumen statis ke platform aplikasi web.
- HTML5 adalah standar modern yang mendukung multimedia, penyimpanan, dan performa tinggi.
- Masa depan: Web Components, PWA, dan integrasi AI/3D.
"HTML adalah tulang, CSS adalah kulit, dan JavaScript adalah otak dari web modern."
Mulai Belajar HTML5 Hari Ini!
- MDN HTML Docs
- W3Schools HTML Tutorial
Salam HTML!!🚀