Ngobrolin Video Player - Ngobrolin WEB
Yuk mari kita diskusi dan ngobrol ngalor-ngidul tentang dunia web. Agar tetap up-to-date dengan teknologi web terkini. Topik, tautan dan pertanyaan menarik bisa dilayangkan ke https://ksana.in/ngobrolinweb Kunjungi https://ngobrol.in untuk catatan, tautan dan informasi topik lainnya.
Ringkasan Episode
Bantu KoreksiEpisode ini membahas perjalanan Imbre Nagi, seorang Cloud Engineer yang berbagi pengalamannya dalam mempelajari front-end development dan membangun platform course online menggunakan Astro. Imbre menceritakan awal mula karirnya sebagai iOS engineer, transisi ke cloud infrastructure, dan tantangan yang dihadapi ketika belajar front-end framework seperti React dan Next.js. Diskusi juga mencakup filosofi Astro sebagai framework yang mengutamakan server-side rendering dengan JavaScript minimal, serta insight tentang teknologi yang digunakan dalam platform course-nya seperti TypeScript, Ansible untuk deployment, dan integrasi dengan Firebase untuk autentikasi.
Poin-poin Utama
- •Imbre Nagi berbagi perjalanan karir dari iOS engineer hingga menjadi Cloud Engineer yang fokus pada database infrastructure (Postgres, Redis, Kafka)
- •Pengalaman belajar front-end yang cukup menantang karena harus beradaptasi dengan perubahan paradigma dari server-side rendering ke client-side rendering (SPA)
- •Pilihan menggunakan Astro untuk membangun courses.imbranagi.com karena filosofi server-side rendering dan JavaScript minimal yang sesuai dengan background back-end
- •Platform course menggunakan Astro dengan TypeScript, pure CSS (tanpa Tailwind), dan Ansible untuk deployment ke VM di Singapura
- •Diskusi tentang pentingnya memahami dasar-dasar web development dan tidak terjebak dalam abstraksi framework yang terlalu kompleks
- •Imbre menciptakan platform course sebagai bagian dari 'nazar pemilu' dan sekarang menjual materi course baik dalam format markdown maupun video
- •Pendekatan pragmatis dalam belajar teknologi: fokus pada pemrograman fundamentals daripada terpaku pada bahasa tertentu, sesuai dengan kebutuhan karir atau minat membangun produk
0:15Halo, hai hai selamat malam, malam ini kita berdua ya tapi tenang aja nanti akan
0:23ada narasumber udah ketahuan kan ya, udah ada namanya juga di poster iya
0:29gimana kabarnya mengundang-undangin temen-temen siar-siar, oh enggak, iya selama
0:36kita menjalani ngobrolin web tiap selasa malam baru menyadari kalau selasa
0:41malam itu adalah malam yang krusial sering bentrok ya, kenapa? bentrok sama
0:47Dua Timnas gitu kan, bentrok sama meetingnya GDG waktu itu sama Mas Danang
0:53tuh sempat berapa kali bentrok sama meeting GDG, terus Ivan juga malam ini dia
0:58ada meeting sama komunitas WordPress kalau nggak salah ya, jadi absen dulu
1:03makanya kita cari-cari narasumber yang bisa diundang kebetulan akhir tahun
1:08lalu tuh ada yang menawarkan diri untuk bahas tentang video, video di sini bukan
1:14kayak yang kita bahas sama Mas Johan sebelumnya, kalau itu kan video streaming
1:20ya, video conference, kayak Google Meet dan lain-lain, kalau ini
1:27video kayak YouTube lah yang temen-temen nonton kan, ya cara menampilkan
1:36kan semua nontonnya kalau nggak di app pasti di web kan ya, banyak kan juga di web ya
1:41kalau misalkan nggak punya appnya juga bisa buka di handphone, buka youtube.com atau
1:45em.youtube.com tuh kan ada playernya, terus bisa di play, bisa di pause, bisa di
1:51ya kalau mungkin live streaming nggak bisa di pause ya, eh bisa nggak ya, bisa-bisa
1:55bisa di pause tetap, nggak bisa di ini kalau yang nonton live, yang klik tombol
2:01live itu nggak bisa di, speednya dicepetin, karena kan nggak mungkin kedua
2:06karena live gitu kan, ya ada speednya bisa dilambatin, bisa dicepetin
2:14terus ada subtitle dan lain-lain, teknologinya tuh banyak banget
2:18jadi kebetulan banget malam ini kita bisa mengundang narasumber ini yang
2:24pas karena bekerja, pekerjaan sehari-harinya yang ngurusin video
2:29jadi langsung saja kita undang, Mas Yudi, halo Mas Yudi
2:35-halo -tupu tangan lu, tupu tangan
2:38-kabar gimana kabar? -alhamdulillah, baik
2:44baik ya, buat mungkin buat temen-temen yang belum kenal, boleh dong kenalan dulu singkat
2:50oke, saya Yudi, nama panjangnya, bukan nama panjang ya, nama lengkap
2:57-nama lengkapnya Yudi Satu -nama panjangnya Yudi
3:01-Yudi, bukan, nama lengkapnya Yudi Satu -sedap
Lihat transkrip lengkap
3:10biasa kerjaan sehari-hari sih sebenarnya yang ngurusin, ngurusin, ngurusin
3:17apa ya ngomongnya, video, website, terus webnya, webnya klien yang mau embed video kita gitu
3:25-oke -gitu-gitu, dan kebetulan juga ya paling banyak di sana sih
3:31karena teknologinya web, ya jadi pasti berurusan sama yang punya HTML, CSS dan JS itu sih
3:39-oke, sekarang kerjanya di Daily Motion -Daily Motion, ya udah 5 tahun lebih ini
3:47wow, mantap, itu boleh di ceritakan sekilas nggak, itu perusahaan seperti apa sih?
3:55ya, Daily Motion itu perusahaan sebenarnya kalau orang banyak tahu YouTube ya sebenarnya
4:04-udah duluan ya -posisinya seperti itu, walaupun sebenarnya
4:10-Daly Motion lahir lebih dulu ketimbang YouTube -ya, sudah duluan sebenarnya
4:18-cuma kalah kamor ya -ya, cuma kalah kamor aja, mungkin juga kalah
4:24-jadi video platform ya -yes, video platform
4:33by the way kalau lihat yang disini kan ini yang seperti YouTube-nya, sebenarnya kalau saya
4:41saya bukan yang ada kerja untuk yang di bagian ini, tapi saya di bagian yang lain yang harus
4:48apa ya ngomongnya, harus mikir gimana caranya embed di websitenya klien dengan baik dan benar gitu sih
4:54-oh, jadi ada service untuk B2B juga ya? -ya, saya B2B
5:04bagian B2B nya untuk serving video, jadi bisa jadi kayak hosting video gitu ya modelnya
5:13ya, ini nggak tau nih, nanti pikirnya lagi ngiklan nih kalau saya terus ini
5:20-gapapa, nggak masalah kan berbagi pengalaman -ya ya ya
5:28intinya itu sih B2B, terus kita juga ada semacam yang monetize videonya
5:35terus kita juga lagi kebetulan sejak 2 tahun terakhir kita juga lebih menjual infra nya untuk B2B
5:43jadi bisa di white label gitu, misalnya apa ada news apa ada media gitu
5:53yang pengen kayak daily motion cuma buat mereka sendiri gitu
5:57ya, beberapa bahkan di Indonesia juga sudah ada beberapa yang embed playernya daily motion di website mereka
6:05hmm, iya sih, kalau yang pakai infra nya itu namanya dia nggak, harus pakai playernya
6:15itu juga bisa pakai playernya, atau mungkin kalau mereka punya player sendiri
6:22-oh, iya iya iya, jadi misalkan kita mau, iya kan kalau infra untuk video kan lumayan mahal ya?
6:33dan urusannya banyak sekali, udah storage, terus ada DRM, ada macam-macam gitu ya
6:39-mendingan pakai service yang udah ada jadi lebih simpel gitu ya -ya
6:43-berarti masih di bagian yang buat B2B nya gitu ya -ya
6:50hmm, menarik, nah, jadi malam hari ini kita akan bahas tentang bagaimana berbagai hal
6:59berbagai aspek bagaimana menampilkan video di web ya, di web
7:04jadi ada banyak faktor sebenarnya, karena mungkin sebelum kesana kita bahas tentang sejarahnya dulu ya
7:11kan sebelumnya kan kalau HTML awalnya kan dokumen ya
7:15video itu mungkin awal banget kayaknya dari gif dulu ya, dari gif ya kan
7:22animasi sebelah sana, iya awalnya, iya, tapi gak tau ya bisa itu bisa dibilang video atau engga
7:31-cuman... -belum-belum video ya
7:34-sebetulnya HTML element video itu mulai ada tahun berapa sih? -HTML5 bukannya?
7:41ya, sejak HTML5 dipublish tapi mungkin belum cover semuanya ya, mungkin waktu itu karena videonya masih
7:49masih, oh deck nya terutama ya, encoder nya ya, encoder nya masih terbatas ya
7:56ya, dan waktu itu kalau masalah, yang pertama formatnya FLV
8:01ya dari Flash, ya dulu inget banget kalau misalkan menampilin video di web itu harus menggunakan
8:10Macromedia Flash, ada plug-in nya, jadi kalau browser baru, apa menampilin video ada ini ya
8:22ada tombol bawah, download, download dulu ya
8:32udah gitu kita mau bikin videonya, mau bikin file videonya itu
8:38kita bisa menggunakan formatnya juga Macromedia Flash ya, jadi kita harus punya software nya
8:46untuk mungkin konversi dari format video kayak, jaman dulu apa ya, MPG, AVI, 3GP, 3GP kan
8:59itu dia, coba buka wiki page yang di private, itu juga ada inform narik tentang format formatnya terutama
9:10history of video element, coba 2006
9:15begitu ada element video, berarti kayak diakuin bahwa platform web ini, platform yang solid buat nampilin video kan
9:25justru dipropos oleh Oprah ya, luar biasa ya Oprah
9:30ya betul, apalagi ya mobile, semua itu Oprah mobile
9:38makin ke bawah ini makin ribet soal format nih, kalau soal konsep, ok lah platform web bisa buat nampilin video
9:45pasti awal konsepnya tuh simpel kan, ada kontrolnya, ada semua fitur-fitur umum
9:51ke bawah tuh bahas format, pusing, formatnya macam-macam, pusing, ada MP4, WebM, OGV
9:59ini yang bagian front-end aja udah ribet
10:04apalagi yang back-end, kebayang sih, kalau yang back-end itu kalau gak salah, begitu kita upload satu file
10:12misalkan kayak di YouTube lah contohnya ya, kita upload satu file, itu dia convert satu-satu ke format-format yang ini
10:18yang dibutuhkan
10:21dan itu dipecah-pecah kan, gak mungkin satu file belondongan gitu kan
10:25terus nanti juga belum urusan apa namanya resolusi juga ya
10:29resolusinya 480, 720, 1080, terus nanti bisa adaptif kan, kalau misalkan lagi lambat dia turun gitu kan
10:38ya, jadi setiap sekian detik ke depan tes, selalu apa, ngecek kan, kalau misalnya lambat bisa tiba-tiba nge-drop
10:45iya, jadi memang banyak sekali yang diurus ya oleh si...
10:53- Nah ini nih, itu menarik tuh kelimat yang di atas tuh yang ada kursornya
10:59"polarization of HTML video" antara yang industri standard, kayak udah HDF isunya, yang kayak udah...
11:07itulah, cuma dapatinnya versus open format, kayaknya dapat yang... maksudnya apa? - Tidak akan berakhir ya
11:16saling tarik menarik yang tribut, sebenernya soal image, soal format gambar juga mirip-mirip kan
11:22- Sama sih, iya iya iya
11:25- Kalau sekarang lebih prefer format apa kalau dari Mas Yudi?
11:31- Pakai WebM atau masih MP4 atau? - Sekarang sih paling universal menurut diriku sih
11:40ini sih MP4 sih, karena MP4 juga nggak cuma video juga, MP4 juga untuk audio kan
11:49- Audio, betul, oh oke - Bisa memuat dua itu
11:53- Iya iya iya iya, kalau WebM itu hanya video ya?
12:00- Ya kan, karena formatnya WebM kayak semacam apa ya, nggak semua player bisa muter videonya
12:09- Karena masih baru juga, tersitung baru lah ya dibandingkan MP4 yang udah lama ya
12:14- Ini kalau misalnya diterusin kenapa saya lebih condon ke MP4, ini ada urusan yang sama
12:22"player native di masing-masing OS"
12:26- Nah itu di Wikipedia juga ada tuh, scroll terus ke bawah
12:30- Google punya sendiri, Cisco juga ada, Apple juga ada sendiri
12:38- Ya itu, challenging banget - Linux, kalau Linux apa? OGG yang paling ini ya?
12:46- OGG ya - OGG, kalau Linux OGG
12:49- Kalau Apple - Apple itu apa dia ya?
12:54- Formatnya QuickTime ya kalau nggak salah ya?
12:56- QuickTime itu MP4 juga kalau nggak salah - MP4 ya
13:00- Ada sendiri kayaknya yang... - Ada yang beda ya?
13:05- Yang dia bawaannya dia lah - Ini masih di ranah digital ya
13:11- Kalau misalnya udah ada TV yang minta untuk formatnya mereka bisa masuk itu juga lebih ribet lagi
13:18- Hmm, ya ya, QuickTime Component, oh nggak ada tulis, nggak ada di sini
13:27- Tidak disebutkan, tapi MP4 sih - Ya saya ingat itu cuma MP4 mereka juga
13:35- Oh yang sekarang agak beda itu format image ya, justru ya
13:44- Mereka lagi ngeluarin image baru ya, image baru buat foto
13:49- Apa sih, lupa namanya? - H-A-E-C
13:59- Kata deh bacanya gimana deh
14:04- Tapi di handphone Android juga udah pake H-A-E-C sekarang
14:09- Oh belum tahu sih kalau yang itu
14:12- Iya soalnya beberapa kali mau download lu H-A-E-C tergantung distro nya
14:20- Tergantung distro nya - Distro
14:24- Tapi kan Android sudah kan - Iya sih, maksudnya distro dalam arti
14:31- Ada Android Vanilla, ada Android yang Samsung punya, ada yang tergantung merek
14:39- Ada Android yang namanya jadi Harmony OS kan
14:43- Oh iya bener, ada yang di Forking ya, jadi Harmony OS, ada yang jalan di Kindle juga
14:50- Jadi udah kayak Linux juga ya
14:54- Nah ini format-format baru ya, kayak FFP8, FFP9, H-A-E-C ini yang baru juga kayaknya
15:04- Yang sama image? - Iya
15:09- Tapi belum terlalu populer di dorakannya
15:12- Served in mp4 container, berarti itu kayak cross compatible sama mp4
15:20- Kalau denger container kayak mkv bukan, mkv itu biasanya isinya ada audio, video, sama subtitle
15:29- Oke
15:35- Iya, kalau misalkan kita punya format mkv itu biasanya ada, kadang-kadang ada yang ada subtitlenya langsung
15:41- Jadi dia kayak di-zip gitu modelnya
15:46- Before HTML5 era, the only way to playback, yang tadi kita sebutkan ya, yang melalui Adobe Flash Player
15:54- Nggak panjang umur juga sih, udah pernah
15:59- Ingat banget waktu itu Youtube lagi migrasi dari Adobe Flash
16:03- Iya bener, Flash itu dibunuh oleh Apple
16:10- Salah satu alasannya karena baterai katanya ya
16:16- Eh nggak tau deh kalau yang itu, nggak ngikutin
16:24- Iya, nah ini kan kita juga tadi sebutin, ini banyak banget, ada DRM ya, Digital Res Management
16:30- Jadi kalau misalkan temen-temen sekarang nih, misalkan nonton video apa gitu yang berbayar
16:35- Misalkan kayak Netflix lah, atau di Netflix, atau video.com gitu ya
16:40- Gak bisa di screenshot kan ya, pertama kali nyoba pushing
16:46- Oke, kita nyapa-nyapa dulu ya, ada Mas Ahmad Muwafak
16:53- Halo, ada Mas Sinar Hadiwijaya, selalu Mas Yudi, ada Claudius
17:01- Ivan lagi meeting ya, dia udah nggak ikutan meeting selama beberapa minggu akhirnya
17:08- Wordpress ya, apa persiapan acara apa ya itu?
17:14- Wordcam dimana gitu pokoknya
17:17- Ini kenapa Pak Dika nggak ikutan nih?
17:21- Kenapa ya?
17:22- Loh biar pada nonton channelnya Pak Dika dong
17:24- Sekarang udah jadi gym bro
17:28- Iya, Pak Dika kan kalau nggak salah, Pak Dika tuh punya program yang hampir sama ya
17:42- Kayak ada update-update juga, jadi kita undang bisa sesekali, tapi kalau misalkan seterusnya
17:47- Kayaknya masing-masing channel ngeserv sendiri-sendirilah
17:51- Kita nanti kadang-kadang kita nampil disana, kadang-kadang Pak Dika disini
17:55- Jadi biar semakin beragam juga
17:58- Oke, selanjutnya kita bahas apa, ini sudah, ini kan apa namanya, history
18:05- Sedikit historinya udah diawali dari usage
18:10- Apa tuh?
18:11- Ya tadi yang baru sam banget kita bahas
18:15- Ya ada Dailymotion tuh, HTML video was not widespread as flash video, though there were rollouts of experimental HTML based video players from Dailymotion
18:29- Video player berbasis saten L, pioneer ya
18:33- Ya pioneer juga
18:35- Format awalnya OGG itu salah satu format awal berarti ya
18:40- Open, soalnya open format dia
18:43- Mungkin yang lebih aman license-nya kali ya
18:47- Ya betul, kalau Youtube dia lebih ke MP4 atau WebM, kalau Vimeo MP4 juga, A264, ini MP4 kan ya
18:58- Iya, itu kayak apa namanya ya?
19:02- Codec ya atau encoder ya
19:04- Codec, codec, codec, codecnya itu kalau formatnya beda lagi
19:08- Hmm, oke, setelah itu baru munculah kayak Netflix dan seterusnya dan seterusnya
19:17- Jadi Januari 2015 ya, Youtube baru switch ya dari HTML ke, dari flash ke HTML ya
19:25- Waktu itu aku ngikutin kalau gak salah, sejak 2011 mereka sudah mulai setengah-setengah kalau mau eksperimen pakai yang HTML
19:36- Oh iya pakai flag something gitu ya
19:39- Kalau gak disuruh balik gitu gak gitu kan
19:42- Benar, benar
19:45- Sampai 2016 by default desktop, browser desktop masih ada flash-nya itu
19:52- Sampai 2016
19:55- Di HP, generally gak ada flash-nya
19:59- Iya
20:01- Nah, kalau pengalamannya Mas Yudi nih dengan menampilkan video di web gitu, tantangannya apa aja sih?
20:17- Justru kalau di webnya itu teknisnya bukan teknis ngonding sebenernya, tapi teknis lebih, kita itu harus tahu segala jenis apa namanya ya
20:34- Aturan yang memperbolehkan kita untuk memutar sebuah video
20:41- Oh, ribet ya
20:44- Ribet, itu ribet, bahkan sempat yang hampir 1 atau 2 bulan gitu ya
20:50- Saya berkutat banget sama yang namanya behavior itu
20:56- Jadi by default kan memang video itu ada dalam sebuah webpage atau alaman gitu kan
21:06- Kalau dia memang, si user ini memang kehalaman itu untuk ngeliat video itu masih aman untuk bisa dilakukan auto play
21:19- Tapi kalau misalnya video itu bukan bagian dari titlenya apa, videonya apa gitu kan
21:28- Atau yang suka kayak pop up gitu ya? - Yang menjual sesuatu gitu kan atau ads dan sebagainya
21:36- Itu banyak sekali yang harus dipenuhi untuk behavior itu, dan disitu yang susahnya
21:44- Dan itu waktu itu saya bisa makan sampe 2 bulanan hanya untuk itu, karena begitu sudah rilis, ternyata ini udah bener nih di Chrome, ke air force, ke safari gagal
22:01- Jadi memang harus banyak ini juga, harus klik juga dan harus punya pengetahuan soal apa yang boleh dan apa yang gak
22:11- Terus mengakalinya itu gimana? Harus testing di banyak browser, ada otomasi testing yang dipakai atau apa?
22:19- Itu berarti kan IP, IP address, connection, yang gitu-gitu mesti di cek semua gitu ya?
22:26- Itu sebenernya kalau yang sudah di behavior ini sudah lepas, saya sudah lepas tanggung jawab soal yang itu ya
22:33- Ada department lain ya? - Ada tim sendiri kali ya? - Maksudnya ada di tempat yang lain, kebetulan saya juga yang kerjain
22:43- Tapi untuk yang behavior ini, ngering-ngering sedap juga sih
22:48- Terus kadang misalnya gini ya, ada video yang diperbolehkan untuk memutar terus, kita masuk ke satu alaman untuk melihat video itu ya
22:59- Kalau ada website lain yang video itu terutama kalau videonya bukan main videonya, itu kita harus browse kalau misalnya kita scroll
23:11- Oke iya iya iya benar benar
23:15- Dan itu harus viewable, kalau gak viewable itu muter videonya itu dianggap ilegal
23:25- Oh gitu, kalau kita punya isilahnya element video, terus diputar, terus display-nya none itu ilegal?
23:40- Ilegal - Oh oke
23:44- Karena maksudnya itu kali ya, advertiser sudah bayar, dia sudah bayar duit, kalau misalnya ternyata gak dilihat, bisa dimanai
23:55- Ada hubungannya sama itu juga, tapi pointnya adalah kalau sebuah alaman website itu untuk menunjukkan memang main videonya itu
24:05- Alah di website itu, itu gak apa-apa misalnya youtube kan, kita satu video kan kita scroll-scroll, dia masih nyala itu videonya
24:15- Video utamanya - Video itu bukan video utama dan bahkan mungkin juga jauh dari artikel mungkin misalnya ya
24:24- Terus kita mainin gini terus dia masih muter, itu kayak abuse of, apa namanya?
24:30- Oke, wah - Nah itu, ini ngerempet ke monetize
24:40- Monetize ads - Yes
24:43- Nah ads ini juga menarik ya, maksudnya belum kebayang misalkan kita lagi nonton video, terus di menit ke lima tiba-tiba ada ads kan
24:54- Video nya kan itu kan formatnya kayak, antara itu dia pasti streaming kan, chunking gitu kan, terus tiba-tiba ada diselipin iklan
25:03- Berapa detik gitu, lima detik, itu - Dan iklannya juga kan lain-lain kan, tiap user
25:09- Iklannya di query kan tergantung sama usernya, itu gimana cara kerjanya?
25:15- Itu sebenarnya kerjaannya si Google juga sih, jadi ada Google apa namanya ya, saya lupa namanya, tepat package, package nya itu namanya apa
25:26- Cuman nanti dia itu ada, kita nyelipin di player kita, kalau dia, jadi tugasnya dia adalah mencari query di belakang
25:36- Kalau misalnya dia menemukan ads untuk digambil kan, dan panang package nya nih, ads manager, tapi itu part of Google ads manager
25:48- Oh part of Google ads manager, jadi udah ada package nya tinggal dipake ya
25:56- Iya - Tapi di player nya sendiri kan udah ada fitur itu kan, jadi gak perlu ngatur manual ya
26:06- Gak - Terus ada iklan yang bisa diskip, ada yang tidak bisa diskip, ada yang tiba-tiba muncul tombol skip atau engga gitu kan
26:20- Itu juga tugasnya si package, lupa lagi disana, lagi cari namanya nih - Iya ngomongin tombol yang diskip berarti
26:30- Ada selain laptop atau PC, terus ada handphone, ada juga smart TV kan ya sekarang ya, itu termasuk di handle juga?
26:44- Itu juga sama Delimotion itu handle gak sih? - Delimotion ini sebenarnya sempat punya itu, dan punya divisi nya juga
26:54- Terus beberapa tahun terakhir kalau gak salah 2 atau 3 tahun lalu ditinggalkan, terus jadi ada lagi, terus akhirnya tapi
27:02- Jadi gue suka apa sih namanya, explore juga soal itu karena ada kebetulan ada klien juga yang base nya PC, menurut Delimotion untuk bisa memang support
27:16- Support ya - The problem sama TV adalah device nya lama
27:22- Device nya lambat? - Bukan, tapi device nya lama, orang kan gak mungkin di TV tiap tahun tuh
27:30- Oh iya rolling nya ya - Terus mereka masih menginginkan layarnya mereka bisa diputar di TV tersebut
27:42- Dan itu ribet ya, karena TV itu punya OS sendiri-sendiri kan, punya OS sama kayak ada semacam gak tau dibalik itu apa, tapi kayak ada native app nya kan, kayak misalnya Samsung TV gitu, ada semacam play store lah, bisa buka dari situ
28:00- Ajamnya ada browser nya juga, gak tau browser engine nya apa, tapi browser nya kacau banget lah, tapi bisa dipakai buat buka, bisa dipakai buat video, ada edge nya sendiri juga tapi
28:12- Bisa cerita dikit misal yang isi TV OS nih, jadi sebenernya TV OS TV tuh juga engine nya adalah Chromium - Oh, oke, aman lah ya harusnya ya, sedikit aman lah ya - Tim teori aman - Nggak juga
28:32- Jadi ada beberapa player, jadi player ini limosan itu sudah gak support untuk Chromium versi itu - Versi sekian, oke - Ya versi sekian itu udah gak support, tapi masih ada kemungkinan bisa muter video
28:52- Tapi dengan menggunakan terpati player di luar dalemun, ya ini player paling terkenal sih, dan paling banyak digunakan namanya video.js, ini pun gak bukan versi-versi yang baru, versi-versi yang sudah agak lama gitu kan
29:10- Iya, iya - Dan waktu itu sempat bergulat dengan ini sekitar 2 bulanan karena, kenapa 2 bulan karena saya susah cari TV nya
29:21- Susah cari TV nya, oh iya gak bisa di-automasi juga ya - Gak bisa - Sulit ya - Kliennya kudungan CTV - Iya kudungan CTV, bener juga, susah itu ya
29:35- Dan ini, dan penggunanya masih yang liat, yang nonton video mereka di TV itu, masih sekitar 30 persenan - 30 persen gede dong - Iya - Banyak
29:49- Banyak, tapi bukan di Indonesia ya, di negara Amerika Latin ngelupakan namanya, di Indonesia itu masalah - Oke, oh wow
30:01- Lumayan, berarti lumayan signifikan juga ya untuk - Akhirnya, jadi ada tekanan juga sih karena memang harus itu dan sales juga harus jualan, ikutan ceritanya
30:16- Jadi ya, gak mau support mereka juga - Kalo kita cari versi browser nya yang sama aja, gitu masih belum cukup mumpuni untuk dicoba?
30:27- Sudah melakukan seperti itu, jadi by development saya coba pakai di browser dengan versi yang sama dan versi yang itu - Versi yang sama
30:36- Yang terakhir sih katanya sih sudah bisa - Sudah aman gitu ya? - Sudah aman, cuman ya itu tadi, petualangannya nyari TV nya ke tempat service TV berapa?
30:55- Niat banget - Niat banget, udah sempet nyari ya berarti ya? - Udah sempet nyari, sudah sempet nyari
31:02- Oke, dan versi TV nya juga masih yang lama jadi gak ada yang baru, jadi cari di bengkel - Iya
31:11- Akhirnya gak ketemu? - TV nya pada akhirnya gak ketemu cuman mencoba matching versi chromium sama versi teks - Versi chromium nya aja, untungnya masih ini ya, masih chromium untungnya ya bukan browser yang lain
31:32- Oke, siap, siap, siap, nah ini ada pertanyaan yang menarik nih tentang performance, sering kali video membuat loading cukup lama berpengaruh ke core web vital
31:46apalagi kalau di above default, ada tips dan trik nya gak buat supaya lebih cepat loading nya?
31:55- Agak susah sih kalau dia above default, kalau dia below default itu lebih mudah - Lebih mudah ya
32:03- Kalau yang above default sih sebenernya, apalagi dengan kondisi yang internet nya juga gak rata ya, sebenernya pakai streaming, kalau gak tau sih karena teknologinya agak gimana ya, agak ribet juga jadi kalau misalnya kita streaming, kita gak streaming langsung ke spesifik, resolusi tertentu gitu
32:30misalnya 480 pixel atau 720 pixel, gak begitu kan, kalau kita sudah dipelajari seperti kaya youtube itu sebenernya mereka juga pakai teknologi, bukan pakai cara yang sama saya yakin
32:44kita nge-load nya bukan nge-load mp4 nya tapi .sls atau biasanya kalau ada .m3u, itu kaya playlist yang buat chunking stream ya, dia akan adaptive secara otomatis
33:04- Nah berarti biasanya kalau main video kan gak kalinya pakai placeholder image kan, selama masih loading, kaya masih loading video benerannya, itu pasti ya kaya youtube atau semacamnya yang ditampilkan kaya thumbnail image nya kan
33:20- Thumbnail nya, oh iya beneran, ini jadi promo lagi nih, kalau di daily motion, daily motion itu kita semacam ada bukan image status ya, tapi kaya semacam gambar tapi jalan ya, bukan gif juga
33:36- Gambar tapi jalan - Iya, saya lupa formatnya, betul kan bukan saya kerjain cv itu, cuman di daily motion kaya semacam ada potongan-potongan video tapi benerannya berbagai gambar
33:50- Oh cuplikan-cuplikan gitu ya kaya, apa istilahnya kalau di efek di foto itu kalau kita foto liburan gitu kan, foto efek gitu yang kaya muncul pop up atau muncul fade in fade out gitu ya
34:09- Semacam itu kalau di daily motion aja, kita bisa akalin dengan itu, jadi seolah-olah videonya sudah muter gitu
34:16- Hmm oke, ya salah satu tipsnya mungkin itu ya, kalau videonya belum keload secara full atau setengahnya atau seperempatnya, tampilin thumbnail nya dulu atau api solder lah ya api solder
34:31- Kaya beli waktu buat thumbnail itu, tapi secara core web vital kan itu gak apa-apa kan, maksudnya karena gak CLS juga kan, aspek rasio nya udah segitu
34:41- Dan kalau pakai, ya gimana Mas Gidi lanjut-lanjut
34:46- Kalau tadi membahas CLS nih, biar dia gak lompat-lompat, kita juga harus sudah di placeholder juga sih, jadi kan
34:53- Placeholder nya ya, dengan aspek rasio yang pas ya, jadi dia gak shift nya minimal height nya sama gitu ya
35:03- Kalau kita pakai teknik seperti preload gitu, ngaruh gak sih untuk performance
35:12- Sejauh ini, masalahnya gini sih, karena daily motion ya, jadi load videonya juga gak
35:21- Kalau video semua
35:23- Video semua ya, bener juga
35:25- Karena kalo kita mau preload kan, kita harus tau url nya dimana gitu kan, kita gak tau url nya kemana
35:36- Tapi kalau misalnya itu di luarnya mongol, agak susah juga, sempat kita mau bikin seperti itu agak susah karena, ya tadi apa
35:56- Susah ya
35:58- Apalagi kalau embed, gimana deteknya, kalau misalnya di website nya sendiri, yang tadi apa, kaya feed gitu kan, ya masih agak mendingan ya
36:07- Kalau user berhenti atau mulai mouseover, berarti preload aja halaman itu
36:12- Ya, preload yang dimaksud ini ya, jadi kita menggunakan link rail preload as video gitu ya
36:18- Ya
36:20- Ini salah satu cara untuk, kalau ada halaman terus ada videonya, kita bisa minta browser untuk preload dulu walaupun belum di play gitu ya
36:33- Ya
36:34- Sehingga ketika di play lebih lancar gitu
36:36- Tapi kalau yang seperti ini, harus punya macam punya infra nya sendiri gitu, dan player nya mereka sendiri
36:43- Tapi kalau misalnya pakai player seperti Delhi motion, youtube dan teman-teman famil, gak bisa
36:51- Gak bisa ya
36:53- Oke
36:55- Iya bener juga ya, filenya harus udah jelas lokasinya dimana ya
37:01- Itu proteksnya halaman kita sendiri
37:04- Halaman sendiri, betul
37:06- Dan videonya juga gak kayak m3u8 dan lain-lain kan, padahal ya mp4 gitu kan, satuan lah ya
37:13- Iya
37:14- Kalau m3u8 kan kayak playlist
37:16- Oke
37:18- Ada apa namanya, kalau selama ngerjain projek-projek yang berhubungan dengan video, seringnya pakai web API apa aja ya?
37:34- Web API
37:36- Apa tadi yang kayak apa, tadi above the pole, terus picture-in-picture, pakai dong
37:47- Pertanyaan menarik dan sering juga ditanyakan
37:53- Oke
37:54- Maksudnya ditanyakan sama klien ya
37:56- Oke
37:58- Yang sebenernya ini sih, picture-in-picture itu fitur default dari browser dan OS-nya
38:10- Kalau di dalam browser dan OS-nya gak ada, atau tidak aflame
38:15- Gak bisa dipaksa
38:16- Gak bisa dipaksa
38:18- Oke
38:20- Ini bisa dimunculin terus gak? Gak bisa, atau mungkin
38:28- Susah, kliennya kan bukan lu, Deff, gak tau prinsip apa-apa, apa yang browser, apa yang OS, klien gak mau tau
38:36- Kadang-kadang gitu, jadi susah, akhirnya menjelaskan terus kasih link, ini kenapa kalau gak bisa gitu
38:42- Hmm
38:44- Tapi ini, kita punya, tadi kan karena juga bisa dimunitasi ya, player juga harus flow
38:54- Kalau sering lihat, apa namanya, player floating di kanan atau di kiri, terus tiba-tiba nyentai iklan
39:00- Pada akhirnya, kita ngakalinya seperti itu, biar iklan tetap bisa dilihat
39:06- Hmm
39:10- Yang gak bisa itu kan keluar dari, gak bisa keluar dari window-nya
39:14- Gak, iya itu
39:16- Yang kuda edukasi klien kan
39:18- Ya, jadi kita punya semacam PIP, artificial PIP
39:24- Artificial
39:26- PIP di halaman itu masih bisa
39:30- Oh iya, ngerti-ngerti, oke, nah terus kalau fitur-fitur lain misalkan kayak playback speed dan lain-lain itu udah di handle sama komponen videonya kah, atau ada algoritma sendiri
39:48- Itu sebenarnya sih jadinya kayak sudah handle by si komponen, kalau misalnya
39:56bare-hand mau bikin player sendiri pakai HTML5, perjalanannya masih jauh
40:04- Jauh ya
40:06- Kalau baru mulai ya, sekarang kan sudah ada banyak open source video komponen ya, kayak video.js ada, random macam-macam
40:16- Yes
40:18- Kebanyakan sih sebenarnya, turunan-turunan apa, sorry, open source-open source yang lain itu sebenarnya turunan dari video.js
40:24sering liat, sering liatnya seperti ini
40:28- Video.js ya
40:30- Video.js berarti yang paling, yang paling lengkap gitu ya
40:38- Ya paling lengkap dan paling top dan paling mature
40:40- Paling mature, tapi kenapa mereka forknya dari video.js, karena video.js ini lumayan low level kah, atau gimana
40:50- Apa yang ngomongnya, bisa jadi dibilang antara fitur yang lengkap dan pelaginnya juga banyak
40:58- Oke, jadi kadang-kadang terlalu banyak pelagin juga membingungkan ya
41:04- Sama kayak lama-lama udah jadi standar kali ya, karena orang udah yang terbiasa pakai sinteksnya, apalah pakai API-nya video.js ya udah
41:14- Setipada pakai atau bikin library baru lagi, ya harus bikin kayak konsensi baru lagi kan
41:22- Iya
41:24- Oke
41:26- Tapi ada beberapa lagi sih kalau yang ada, satu-satunya yang memang lepas dari video.js
41:34- Jwplayer, jwplayer ini gak?
41:38- Jwplayer itu sebenarnya dia berbayar sih
41:42- Berbayar, freemium bukan, ada yang gratis yang gak ada ya
41:48- Seingat saya sih, semacam gini sih jwplayer itu kayak sudah di owned by some type of open source
41:58- Tapi ini ada open source nya, mungkin ada, tapi ada watermark nya atau gimana gitu ya
42:04- Mungkin gak selengkap yang berbayar pasti
42:10- Iya, oke oke
42:12- Oh itu udah keterananya, it does not contain the same, kayak mungkin fitur setnya lain, scroll ke atas sedikit
42:18- This is non-commercial version of jwplayer
42:24- Oh fiturnya lain
42:26- Ya, ya seperti itu lah, kalau sudah advanced itu biasanya dia udah demonetized lah
42:32- Ya, udah ada key nya di sini ya, udah di nambahin key
42:36- Kalau pengen pake penggunaan yang simple, ya udah pake yang free, kalo banyak maunya
42:42- Berarti kan orang yang butuh use case sedih complex, kemungkinan kan itu buat sesuatu yang profitable
42:49- Ya, kalau tau video.com itu sebenarnya dulu ya, sekarang gak tau ya, dulu itu masih pake video.js
42:59- Wah, you have been blocked, enabled to access kinsta.cloud
43:09- Sorry, tadi video.com menggunakan jwplayer ya?
43:15- Video.js
43:17- Oh video.js
43:19- Dulu ya, sekarang gak tau
43:21- Dulu, ya mungkin sekarang udah bikin sendiri kali ya
43:23- Mungkin ya
43:25- Siapa tau ada kebutuhan khusus kan, maksudnya yang berhubungan, terutama berhubungan dengan DRM dan lain-lain ya
43:34- Iklan
43:35- Iklan ya, termasuk iklan
43:37- Iklan, biasanya kalau yang apa namanya, kayak semacam user generated content itu pasti jatuhnya ke iklan sih
43:45- Saya tuh beberapa kali ngalamin ya, terutama untuk website-website video yang tidak begitu populer
43:57kalau youtube, youtube juga pernah ngalamin beberapa kali pas tiba-tiba videonya macet, ternyata gara-gara ads yang macet
44:08- Gara-gara ad blocker, enggak? - Enggak, enggak, jadi kayak apa ya, kayak oh ternyata server-nya ads itu lagi sibuk, jadi dia gak bisa ngeserve, akhirnya videonya yang ke pause gitu
44:22- Iya
44:23- Karena kan pada cara menampilin ads kan, video ke pause dulu kan gitu
44:26- Iya, iya
44:28- Dan itu gak ada time out-nya ya, gak ada auto time out gitu, berarti kalau misalnya ads-nya macet di ads, ya udah videonya macet
44:35- Itu kayak semacam ada algoritma di belakang yang kalau misalnya harus ngasih tahu nih, kalau macet atau gak ada atau apa, langsung balik ke video, harusnya ya
44:47- Iya, mungkin belum tertangani dengan baik gitu, jadi menyebabkan begitulah
44:55- Oh, jadi untuk ads itu udah ada platform dari Google-nya, sebagian besar menggunakan itu gitu ya, enggak bikin sendiri role center
45:05- Ini namanya, saya baru dapetin, Google IMA SDK
45:10- Google?
45:12- Google IMA SDK, kita bisa masukin XML dari Google Ads Manager gitu ke situ nanti
45:26- Google apa tadi? Google?
45:34- IMA, IMA
45:36- IMA Manager?
45:37- SDK
45:38- SDK, itu kayak semacam plug and play, tapi tetap moding juga sih
45:45- Interactive Media Ads ya
45:46- Iya, SDK kan berarti kayak udah ada rapper-nya, kayak tinggal panggil-panggil aja kan
45:51- Iya
45:52- Yang ini ya
45:53- Iya
45:54- Oh, oke, ini pilihannya hanya ada satu atau ada alternatif yang lain?
45:59- Sejauh ini pakai ini dan dia enggak, maksudnya memang kayak semacam seperti terafiliasi sama Google doang ya, tapi sebenarnya enggak
46:08- Kebetulan aja yang punya Google gitu ya
46:13- Bisa pakai ad service manapun
46:15- Oke
46:19- Karena yang terpenting si fast tech-nya itu sih
46:23- Fast compliance ini?
46:26- Iya
46:27- Oh
46:30- Terus kita masukin video ads-nya itu ada di, ada back-end-nya, ada back-office-nya berarti?
46:42- Iya itu tadi, di gam-nya, di mananya gitu, apa bukan?
46:46- Ada kayak Facebook, Google
46:49- Google Ads Manager-nya gitu lah
46:51- Oh, Google Ads Manager-nya, iya iya, ngerti, ngerti
46:54- Nah ngomongin tadi analytics, kalau video itu gimana tuh analytics-nya?
47:01- Macam-macam, ada view, ada semacam misalnya, berapa persen video itu dilihat
47:14- Sampai menit berapa atau berapa persen dari total gitu ya?
47:18- Berapa persen
47:20- Terus?
47:21- Apa lagi ya, sebentar, sebentar
47:24- Replace tiap nonton ulang, saya satu orang nonton satu video sepuluh kali gitu
47:30- Iya, itu ditung tetap satu view atau?
47:34- Kalau yang gitu kurang tahu teknisnya ya, misalnya secara teknis, karena kan nanti
47:39- Unique ya
47:40- Ya, secara ini sih sebenarnya manfaatin Google Analytics juga
47:44- Oh, kalau Google Analytics kan ada views, ada unique views kan ya
47:49- Jadi mungkin itu, kayak gitu juga kali ya
47:52- Jadi kayak kita, apa namanya, listen event, kalau misalnya orang nge-click atau seek
47:59- Atau pause, atau play, berapa lama kita nonton, gitu-gitulah
48:04- Oh berarti itu service yang terpisah kali ya?
48:10- Iya
48:12- Berdasarkan event si user nge-click, atau seek, atau pause, atau close gitu ya?
48:19- Iya, gitu
48:21- Pokoknya interaksi user
48:24- Interaksi user, apalagi yang unik ya kalau di video ya?
48:28- Di video itu apa ya?
48:31- Kebanyakan itu sih, kayak cuma lock-up
48:36- Kalau misalnya, ini nggak tahu sih termasuk analisa atau bukan, misalnya
48:42nonton video setelah setengah, ditinggal, terus nanti balik lagi, masih setengah, gitu
48:46- Hmm
48:48- Kayak kissing ya
48:50- Iya, kissing tentu ya
48:52- Dan itu disimpen kan pasti di store kan, jadi kita nonton video setengah
48:55- Ya
48:56- Lepas kita tutup, kita buka lagi di page lain
48:59- Kalau misalnya emang login, pasti kan udah ada indikator
49:02- Udah ada historinya ya
49:04- Iya
49:06- Betul-betul
49:08- Nah, terus ngomongin ini, sedikit deh, kita nyerempet sedikit ke accessibility
49:17Gimana tuh kalau video accessible?
49:20- Ya, accessibilitynya video pasti nggak jauh-jauh dari bisa dinikmati sama semua orang ya
49:29- Kalau misalnya dia teman tulis, dia paling nggak video juga setinggal sepatu
49:35- Sepatu, iya
49:37- Sepatu, terus keyboard navigasi nya si video itu memang harus bisa
49:42- Berarti semua tab navigasi tappable bisa dioperasikan tanpa mouse, atau sebaliknya tanpa keyboard
49:52ya pokoknya nggak terpatok ke satu mode throsing
49:59- Ya, macam itu sih, terus apalagi ya
50:02Yang pasti kalau dia, apa ya dibutinya, Tuna Netra, juga Screen Reader Support juga
50:12- Screen Reader Support
50:14- Jadi, ya itu tadi sih, apa namanya?
50:17Apa istilahnya ya, bukannya bisa dinavigasikan dengan baik lah sama si Screen Reader
50:24- Sama semua kalangan, gitu ya
50:26- Sama semua jenis device, misalnya, apa ya?
50:29Kan ada tuh orang yang tifabilitasnya bukan penglihatan atau pendengaran
50:34bisa lihat, bisa dengar, tapi nggak bisa bergerak
50:37Nah, terus mereka tuh pakai, maksudnya nggak bisa gerakin tangan gitu
50:42Buat kita nggak sih yang pakai ponnya kayak headband gitu
50:46- Mata itu?
50:48- Mata atas itu, geleng atau ngangguk, itu tuh mensimulate sama kayak tab event di keyboard
50:54ya tab arrow atau apalah, jadi kalau misalnya, misalnya buat, apa?
51:00Kita mau ngegeser keberapa, kalau itu puduh pakai mouse, ya udah telar
51:06maksudnya orang yang pakai device kayak gitu kan berarti nggak bisa
51:10melakukan itu, jadi kayaknya semua harus di-mapping segala jenis input
51:16- Ya kurang lebih kalau yang penting itu sih, yang focusable komponen harus di-access gitu aja
51:27- Apakah player-player open source seperti Video.js sudah mendukung aksesibility sebegitunya?
51:36Atau masih harus kita custom?
51:38- Sebenarnya sih by default sudah ya
51:42- Sudah ya
51:44- Mungkin itu salah satu alusannya juga ya, karena ya udah misalnya contoh tadi Video.js
51:50ya udah pakai Video.js saja lah, ya udah
51:52- Karena udah mendukung banyak hal ya
51:55- Yang pakai udah banyak mungkin kemungkinan besar di negara-negara
52:00yang udah punya apa sih kayak tukung undang-undang soal aksesibility
52:05jadi apa kemungkinan itu kan udah di-improve lah soal
52:09- Di Indonesia belum ya
52:15- Seberapa ribetnya ngurusin aksesibility kalau di Dailymotion?
52:22- Kebetulan diriku bukan yang ada di sana, bukan yang main developer
52:31yang untuk bikin playernya, jadi kurang tahu untuk yang soal yang itu
52:36cuma kalau misalnya nyerempet sedikit ke hal lain ya
52:39GDPR
52:41- GDPR
52:43- Terutama ini aja sebenarnya lagi ada project
52:49cuman sudah awal tahun yang tadi saya bilang
52:54itu masih di sisi GDPR dan CPK-nya belum selesai
53:02- Oke, iya sih
53:05kita buka website kayak buka aplikasi web atau website gitu
53:09kayak ada pop-upnya dulu mau accept atau deny
53:14terus bisa di-manage juga
53:17- Itu ada 2 komponen, satu ke division legal
53:24pasti lawa ya, hukum juga, terus yang kedua
53:27yang tadi itu ya, allowing beberapa consent gitu kan
53:34itu CMP dan legal yang tadinya diriku kira cuman
53:41ya mungkin kita bisa bikin sendiri, ternyata tidak se muda itu
53:45- Dan karena masing-masing tempat kan sekarang ada aturannya
53:49jadi nggak cuma sekedar kotak, accept atau reject
53:52kan karena orang awam pengen jemput pasti accept
53:55nah sekarang ya tergantung negaranya kayak harus ngasih link
53:59user itu kayak harus dapet project, bukan project knowledge
54:03kayak untuk bisa consent, kan kita harus memahami dulu
54:08nah suka ada aturannya, kata-kata apa, wording apa
54:11maksudnya jadi kayak, jadi udah pop-up, dibuka, pop-up lagi
54:16isinya text panjang, kalau misalnya Anda setujui
54:21ini misalnya akan membuka ke 10 atau 25 atau berapa data Anda
54:27akan di-share dengan 25 pihak eksternal yang fungsinya
54:31nah jadi kayak masing-masing tempat tuh
54:34kayak apa yang harus di-info-in tuh, lain-lain
54:37- Nah itu musing banget - Musing banget
54:42yang musing bukan riba lepernya sih
54:45kalau in this case kalau yang ngalaman ku sendiri
54:47tapi kayak harus ya back and forthnya agak banyak
54:50dan kayak harus proaktif memperjelas
54:53jadi maksudnya apa aja sih yang harus di...
54:56jadi maksudnya biar nggak bermasalah
54:59kayak kita harus dapet input apa dari user
55:02dan input itu terjadi saat apa
55:04nah itunya tuh yang lama
55:07pada akhirnya yang tadinya mau bikin sendiri
55:12akhirnya kita pakai vendor
55:14- Oh iya itu business ya, business yang... - Ya
55:20- Sudah ada vendor-nya ya - Memperbarui gitu
55:23Jadi daripada ribet ngurusin ya satu-satu
55:28mendingan pakai vendor lebih cepat ya
55:30- Ya keliatannya simpel dan cuma konsen - Gampang
55:32dan cuma konsen, oke gitu kan
55:34tapi sebenarnya itu di belakangnya aduh
55:37- Iya, cuma dari sisi ya nggak tahu ya
55:41mungkin bukan ranahnya developer juga
55:44tapi dari segi UI atau UX juga harus diperhatikan kan
55:47kebanyakan pop-up juga bikin user jadi males kan
55:51- Iya, benar - Apalagi yang berkaitan dengan video
55:56atau kita dituntut, kan itu ada kita cari middle ground
56:00kita orang produk pengen jualan
56:02user pengen jualan
56:04developer pengen punya seideal performa
56:08terus punya rapi yang kodingannya bagus, indah
56:12kita di antara segitiga itu harus cari titik tengahnya
56:16- Ngomong sekaligus ini kan
56:19beberapa tahun belakangnya menampilkan konten
56:26yang bukan domain, yang berada di domain yang sama itu kan
56:29sudah tidak sebebas dulu ya
56:31kalau dulu kan tinggal iframe dan lain-lain
56:33kalau sekarang kan harus ada QoRS lah, course, dan lain-lain gitu
56:37kalau nampilin embed video di, apa namanya
56:41mungkin di website pribadika atau di website client itu
56:46ada kendala seperti itu nggak sih?
56:48ngalamin kendala seperti itu nggak sih?
56:50- Ini sebenarnya jadi agak nge-eject sih
56:54skill issue jatuhnya
56:59- Sebenarnya untuk video yang seperti itu
57:06mau nggak mau, kita juga untuk embed ke tiga client
57:13kita embed mereka juga tetap dengan cara yang sama seperti youtube iframe
57:20- Karena di apa sih namanya, semacam di-package
57:27biar styling dan segala macemnya itu nggak bertrok sama root website
57:35- Isi halaman itu
57:36- Oh, ok
57:40kalau boleh tahu si Dalian Mohsin steknya, teknologinya menggunakan apa?
57:46- Kalau di player-nya setau pake React dan teman-temannya
57:55- Oh, standar lah ya
57:58- Iya, standar lah ya
57:59- Dulu, sebenarnya ini baru sih, baru pindah ke sana sih
58:03- Baru ke TS, baru mau migrasi ke TS gitu ya?
58:07- Sudah, sudah
58:08- Oh, sudah, sudah selesai
58:09- Temasuk yang sudah tadi sebelumnya pake framework yang dibuat sama orang-orang twitter
58:18apa namanya, flag apa-apa gitu loh
58:20tapi karena flag-nya nggak continue, akhirnya diganti ke dia
58:23- Oh, kok kirain pake webcomponent, nggak ya?
58:27- Enggak, nggak
58:28- Enggak ya, karena kan ini share, apa namanya, player-nya kan di-share ke client juga
58:34oh, nggak ya, nggak open juga ya
58:36- Gak open juga, script-nya inject itenya
58:40- Oke
58:44- Biar isolated loh, apa namanya si player-nya gitu
58:47- Hmm, iya, iya, iya
58:50Jadi tinggal kasih script, udah bisa ini ya
58:53Oke, oke
58:55Nah, ini ada yang nanya tentang iklan, tapi ini nggak tahu nih
58:59- Yang masih mengikan bidang-bidang kita
59:02- Yang bayar iklan siapa?
59:04- Yang bayar
59:05- Bayar, bayar
59:06- Ini rananya siapa nih?
59:08- Gak, ini sebenernya kalau pengiklan gini
59:11kalau udah ke, seperti Dailymotion dan YouTube sebenernya
59:15- Iya
59:16- Kita ya
59:17- Yang tadi ya
59:19- Tapi deal antara sales dengan si pengiklan gitu
59:23- Hmm
59:25Oke, kalau ngomongin iklan lagi nih
59:29kan kalau misalkan di web gitu kan
59:32iklannya tuh ada yang mungkin di atas, ada yang di tengah
59:35ada yang di kanan, kiri, atau di belakang gitu
59:38jadi in background macem-macem
59:40terus banyak permintaan-permintaan
59:42iya, pengalaman pribadi sih, pernah ngurusin portal berita
59:46kadang-kadang ada iklan yang bikin website-nya jadi lambat
59:51kalau di video, ada nggak sih yang kayak gitu?
59:54Gak ada kan sama video semua
59:56- Nggak, nggak, kebetulan nggak
59:58- Hmm, lebih, justru lebih aman ya dibandingkan web ya
1:00:02- Nah, tapi ini sekarang
1:00:04kalau konvensional kan video, eh sorry, iklan kan
1:00:10waktu video terus cari
1:00:14sekarang ada yang namanya SSIE
1:00:17dia, apa namanya SSIE? Apa sih namanya?
1:00:21kepanjangannya lupa, pokoknya intinya si iklan ini sudah ada
1:00:25diambil dari sana
1:00:28jadi bukan request by the client
1:00:31- Hmm, oh gitu, oke
1:00:35- Dan beberapa klien sudah request soal ini sih
1:00:42- Hmm, menarik, menarik
1:00:46Nah, ini apa nih?
1:00:51Undang-undang perlindungan data pribadi di Indonesia jadi visitor
1:00:54ketika masuk ke website harus memahami datanya
1:00:58- Ada Indonesia kayaknya
1:01:00- Ada ya undang-undangnya ya
1:01:01- Ada, ada, ada
1:01:03- Ada ya undang-undangnya
1:01:05- Enforce-nya yang belum ya mungkin ya
1:01:07- Belum, ya belum
1:01:09- Kita aja, berarti sosialisasinya belum ya
1:01:11kita aja belum tahu ini
1:01:13- Nah, kita kan itu apa yang diminta klien
1:01:16berarti misalnya klien yang di Indonesia
1:01:18orang-orang yang bikin, misalnya pihak-pihak yang punya pentingan
1:01:21di web site di Indonesia belum ada yang kita bikinin dia
1:01:25- Tapi setauku juga ada beberapa negara di Asia Tenggara
1:01:31juga punya seperti GDPR
1:01:33bahkan kayak cloning cuman di depan namanya
1:01:38- Diubah-ubah sedikit
1:01:40- Diubah-ubah sedikit untuk karyanya
1:01:43- Oke
1:01:50- Apa lagi ya
1:01:52- Bahasa apa lagi
1:01:54- Kalau cookies, itu kan iframe ya
1:01:56berarti itu nggak nge-set cookies apapun dari sisi videonya kan ya
1:02:00- Nggak, kalau misalnya memang ada kebutuhan seperti itu
1:02:05ya itu tadi, diri kula yang bergerak untuk bikin custom script
1:02:09biar cookiesnya ada
1:02:11- Karena kan beda origin kan
1:02:14kecuali interaction videonya sendiri ya
1:02:17di click mirim atau di cepetin atau di text atau apapun
1:02:21ya kan itu interaksi
1:02:23tapi kalau nge-set cookies, tracking cookies, gimana-gimana
1:02:27- Nggak, ada yang menarik soal interaction
1:02:31kadang ada beberapa kasus yang apa namanya ya
1:02:36macam klien minta kalau "Aku nggak mau videonya jalan dulu"
1:02:41- Nggak bisa di pause
1:02:43- Nggak boleh di pause
1:02:47- Ada kasus seperti itu yang kadang-kadang memang memerlukan beberapa device
1:02:54memerlukan user interaction dulu entah tab, entah apa, pokoknya
1:02:59dan itu ada beberapa klien yang nge-yel untuk
1:03:02"Loh, kok videonya seperti ini sih, kok nggak seperti itu"
1:03:06"Ya, ini perlu interaction, user interaction dulu"
1:03:08"kalau nggak, nggak bisa jalan"
1:03:10- Oke
1:03:11- Nah, itu harus mengedukasi, nggak bisa melawan OS
1:03:14- Iya, nggak bisa
1:03:16- Nggak bisa melawan browser
1:03:18- Nggak bisa melawan aturan browser, pokoknya nggak bisa melawan
1:03:20- Browser, iya
1:03:22- Ya, berarti mereka belum dapat konsepnya itu ya
1:03:25mereka kira itu sebagai player yang terpisah gitu ya
1:03:29atau aplikasi terpisah ya
1:03:31- Ya, ya
1:03:33- Kecu juga ya
1:03:35Oh, berarti menangani klien-klien yang seperti itu juga ya
1:03:40pokoknya saya mau ini tombol play-nya di atas gitu
1:03:45kalau yang itu masih bisa
1:03:47- Masih bisa lah ya
1:03:49- Tapi kan nggak bisa overwrite behavior browser
1:03:53ataupun OS, tapi kan kalau klien yang bukan programmer ya
1:03:56kalau lebih terlihat
1:03:58- Nggak peduli kan
1:03:59- Nggak peduli
1:04:00- Akhirnya edukasi dulu
1:04:02- Oh, tetap ada proses edukasi lah ya
1:04:05- Iya
1:04:07- Mau ini video player-nya terbang-terbang gitu
1:04:10jalan-jalan, buat apa?
1:04:13- Tep-nya ditutup, videonya tetap nempel ke luar
1:04:18- Ya itu dari pikir-in-pikir ya
1:04:21- PIP
1:04:23- PIP
1:04:25- Ini juga sebentar ini, nggak tahu ya
1:04:33nggak atau nggak, cuman misalnya di...
1:04:36terutama untuk di device Android dan iOS
1:04:40itu mereka kalau player yang kita gunakan untuk muntah video
1:04:44itu sebenarnya player native yang ada di device itu
1:04:47- Di OS-nya
1:04:49- Jadi tampilannya bisa berubah-ubah ya, bisa beda-beda
1:04:52- Bisa berbeda
1:04:53- Kadang-kadang yang kelihatan banget kalau tampilannya berubah itu
1:04:57kalau misalnya kita fullscreen
1:05:00- Oh, fullscreen
1:05:01- Fullscreen itu button-button itu kayak button-button native-nya si player-nya
1:05:06- OS-nya ya
1:05:07- OS-nya itu jadi muncul lagi
1:05:10- Kalau di produk Apple, jadi estetik
1:05:14kalau di Android atau iOS, jadi agak harus
1:05:20- Oke
1:05:24Ada lagi challenging-challenging yang pernah ditemui pada saat develop
1:05:34atau pada saat nama klien?
1:05:37- Kalau sekarang sih ngerasa sudah punya banyak library
1:05:41jadi nggak terlalu challenging sebenarnya
1:05:44- Nggak terlalu, iya
1:05:45- Cuman kalau misalnya bicara pengalaman ya
1:05:47paling parah itu ya sebenarnya kalau udah kemasalah si behavior sih
1:05:53kayak browser A itu boleh diperbolehkan untuk muntah video dengan audio
1:06:01di-browsering, A, 50/50, jadi semacam harus ada sesuatu dulu
1:06:09biar bisa kelihatan semacam itu
1:06:11- Kalau untuk nampilin video, browser mana yang paling sulit?
1:06:19- Permisif
1:06:20- Gimana? Bisa dibilang?
1:06:23- Browser untuk nampilin video, browser mana yang
1:06:28paling permisif, kirain malah paling yang paling gampang
1:06:32- Paling sulit dan paling gampang lah ya
1:06:35- Yang paling sulit untuk, yang terutama behavior ya
1:06:40jatuh kepada safari
1:06:44- Safari
1:06:46Kenapa? Yang paling sulit ya? Apple-nya ya
1:06:56karena nanti klien-nya kan punggungnya si OS
1:07:00jadi kalau misalnya kita pakai video.js, kalau misalnya kita pakai video.js
1:07:08video.js-nya kadang-kadang juga belum 100% menguasai
1:07:13jadi ya itu tadi, sempat ada isu, jadi semua browser aman
1:07:20tiba-tiba ada report, kalau di safari nggak jalan
1:07:24- Aduh
1:07:26- Oke
1:07:28- Oh iya iya iya bener bener bener, pernah halamin
1:07:32- Sekarang kalau mau misalnya mau beli laptop baru atau minta device baru
1:07:40aku selalu minta apa namanya?
1:07:43- Karena ada safarinya
1:07:46- Bukan karena gaya-gaya, cuma karena yang ada safarinya cuma dia yang bukan
1:07:53terus di tes ya iya iya iya
1:07:56bukannya safari ada di Windows ya?
1:07:58- Sudah nggak
1:07:59- iTunes ya, iTunes yang ada di Windows, safarinya nggak ada ya
1:08:03- Safarinya sudah nggak dulu, dulu sempat pasti
1:08:05- Udah nggak, dulu sempat ada kan ya?
1:08:07- Iya, ada ya, pernah
1:08:09- Iya, pernah ada ya, hmm
1:08:12itu mungkin behavior-nya beda lagi ya
1:08:17- Ini kalau di iOS safarin begitu, kalau di Chrome sebenernya
1:08:23Android sebenernya player-nya adalah yang dipunya sama Chrome
1:08:27jadi apapun apa namanya ya, browser misalnya
1:08:31- Kayak stop browser yang browser bawaan HP itu juga pakai Chrome-nya
1:08:37- Iya, jadi player-nya kalau mau nggak mau juga pasti akan mengikut si Chrome juga
1:08:43- Mengikuti
1:08:45- Untungnya sih gini, untungnya si Chrome ini menurutku ya itu lebih friendly ketimbang yang lain
1:08:54- Safari, oh jadi si iOS kan kalau iOS semua browser itu adalah safari-based kan ya
1:09:04sampai saat ini ya - Iya
1:09:06- Iya sampai saat ini, katanya bakal berubah tapi nggak tahu
1:09:09kalau di Android kebalikannya, Chrome semua gitu
1:09:14- Chrome semua, apapun merepnya
1:09:16- Meskipun Firefox itu juga sebenernya Chrome
1:09:19- Video player-nya kan, kalau renderer-nya, kali oi renderer-nya
1:09:24- Kira-kira lebih open si Android, enggak ya?
1:09:30- Enggak juga
1:09:32- Oke, baru tahu nih, kirain si Android lebih demokratis
1:09:39terlihat nggak juga ya, berpikirnya gitu
1:09:43tapi ternyata setelah ada masalah dan segala macemnya, ternyata Chrome lagi
1:09:49- Chrome juga ya, istinya Chrome-Chrome juga ternyata ya
1:09:52oh oke, oke
1:09:55iya, iya, iya, iya, wah menarik ya, baru tahu ini infonya
1:10:03dari teman-teman ada yang mau ditanyakan lagi, kita sudah kehabisan bahan
1:10:10- Oh, ada lagi testing, jadi kayak selain testing device
1:10:15kayak misalnya unit test atau end-to-end testing-nya
1:10:18itu kayak testing React App biasa atau malah nggak ada sama sekali?
1:10:22- Ada yang berbeda
1:10:24- Kalau di, aku sejak sebelum, bahkan sebelum di Dailymotion itu sebenarnya saya kerja di kompetitor
1:10:32itu kita beneran kalau testing, testing di manual ya
1:10:38tapi kita ada semacam test case banyak banget, kita harus terperlu di semua
1:10:43karena sempat kita pakai automated test, kayak semacam ada kelopasan
1:10:51akhirnya test-nya manual, bahkan kalau misalnya test di device
1:10:56kita tancapin device-nya itu ke laptop, terus kita dibug di situ
1:11:06- Oh, untuk device yang sifatnya kayak TV yang stick gitu, atau gimana?
1:11:16- TV atau HP?
1:11:18- Oh, HP
1:11:20- Banyaknya kalau Chrome dan Firefox bisa dikonekin ke HP gitu
1:11:32- Oh, ya ngerti, buat dibugging ya
1:11:36- Tapi biasanya kalau yang sampai dibugging ke device beneran itu
1:11:40kalau case khusus itu mungkin kalau normal itu nggak sampai ke test
1:11:48- Kalau misalnya sifatnya eksternal nih, bukan folding-nya sendiri
1:11:53cuman kayak misalnya apalah ke lokasi gitu kan, lokasi yang berbeda
1:11:58ada konten yang berbeda, itu kayak di spoofing pake VPS atau gimana?
1:12:04- Iya itu ada, kita disupport juga VPS, terus kita juga browser testing itu
1:12:13- Oh, browser testing
1:12:16- Kita juga pakai itu juga
1:12:19- Jadi testing-nya itu yang otomatis ada, yang manual juga ada
1:12:25tapi yang otomatis nggak terlalu, bukan yang behavior ya
1:12:29- Tetap manual, itu yang ngerjain developer atau ada tim QA?
1:12:36- Kalau yang itu, yang bagian si playernya ya, saya kurang tahu
1:12:41cuman kalau yang di division yang di SC Pacific ini, ya developer sendiri jatuhnya
1:12:48- Oh, developer sendiri yang melakukan manual testing tadi
1:12:52tapi test case-nya udah ada ya, udah disiapin ya?
1:12:54- Disiapin
1:12:56- Kalau implementasi PIP gitu ribet nggak sih? Tadi udah sempat dibahas sedikit ya
1:13:05dari OIS-nya udah ada
1:13:08- Mohon nggak perlu diapa-apain
1:13:10- Ada keputingannya tapi dikit
1:13:12- Bisa di-custom makanya
1:13:16- Semua elemen video bisa PIP
1:13:20kayak YouTube pun sebenarnya bisa, tapi harus diklik kanan dua kali
1:13:25karena di heightened sama dia
1:13:27kalau diklik kanan sekali itu dia menu-nya YouTube kan
1:13:30bukan menu OS atau menu browser-nya
1:13:34- By default bisa, terus kita bisa tambahin button sendiri apalah buat minimize
1:13:40atau trigger IP-nya
1:13:43kalau emang di-support
1:13:45- Ada API-nya ya?
1:13:47- Kayak kadang-kadang ada kalanya kalau browser error nggak muncul juga
1:13:54- Oh iya, kalau ada browser error jadi nggak muncul ya, jadi hilang ya
1:13:59- Karena kalau ada error dia berhenti, nggak lanjut
1:14:04ya kalau ada error kan udah nggak lanjut ke bawah kan
1:14:08proses coding
1:14:10- Oke, Eka ada lagi yang mau ditanya kan?
1:14:14- Nggak ada, oke, kalau nggak ada, terima kasih Mas Yudi
1:14:18ada yang mau disampaikan lagi terakhir?
1:14:20- Terakhir mungkin ini ya, apa namanya, teknologi
1:14:24ini aja sih, mungkin kayak apa namanya, conclusion lah ya
1:14:27teknologi HTML
1:14:30itu sekarang sudah by default sudah bisa support media
1:14:34video, audio, dan segala macemnya
1:14:36cuman kalau memang ada kebutuhan khusus
1:14:41memang, apa sih namanya, kebutuhan khusus yang banget
1:14:46yang custom sekali ya, kalau bikin native-nya
1:14:50apa namanya, momentnya HTML
1:14:53ya akan perlu banyak kerjaan
1:14:56jadi kalau bisa menggunakan yang
1:15:00yang stereo atau video JS atau
1:15:03dan turunannya itu akan sedikit memudahkan hidup kita
1:15:07- Dan itu berlaku untuk segala bidang sih ya
1:15:11mirip-mirip kayak UI pompong, CSS
1:15:13kita harus paham fundamental ya
1:15:17cuman kalau butuh yang common use case ya
1:15:20pake yang DND lah
1:15:22- Bahkan elemen videonya sendiri
1:15:26yang vanilla HTML, bawaan dari HTML-nya pun
1:15:30kalau kita mau customize
1:15:32misalkan button-nya di gedein kah
1:15:34atau di warnanya agak diubah
1:15:37itu juga tidak sesulit
1:15:39mungkin tidak sesulit dulu ya
1:15:41kalau sekarang lebih gampang lah
1:15:43kalau nggak mau pakai library ya
1:15:45- Oke, mungkin untuk malam ini segitu dulu
1:15:50Mas Yudi, terima kasih banyak
1:15:52kalau ada teman-teman yang mau kontak
1:15:54biasanya aktifnya dimana nih?
1:15:56- Kalau saya di Twitter
1:15:59@isa_trio
1:16:05suka sitposting sebenernya sih
1:16:07dan kritikum merintah
1:16:09- Kritikum merintah
1:16:11Oke, gas!
1:16:15- Oke, gas!
1:16:17- Ini kapan-kapan seru nih kayaknya
1:16:19menjelurin sama Imre
1:16:22- Wah, bahaya ini
1:16:25- Terus channel Youtube gue dihidupkan
1:16:30Ya, kita udah mau udahan Mas Yudi
1:16:38eh, Mas Yuda baru join
1:16:40nanti di-replay aja nonton
1:16:42kalau ada yang mau ditanyakan
1:16:44boleh di-komen aja nanti
1:16:46kalau emang pertanyaan yang berhubungan
1:16:48dengan Mas Yudi nanti saya akan sampaikan
1:16:50Oke, untuk malam ini segitu aja
1:16:52terima kasih banyak buat semuanya
1:16:54terima kasih banyak buat Mas Yudi yang udah mampir
1:16:56lain waktu nanti kita undang lagi
1:16:58untuk membicarakan
1:17:00mungkin lanjutan atau
1:17:02bukan pemerintah
1:17:04topik yang lain ya
1:17:06sampai jumpa
1:17:10di minggu depan
1:17:12selamat malam, bye bye
Suka episode ini?
Langganan untuk update episode terbaru setiap Selasa malam!
Episode Terkait
29 Okt 2024
Ngborolin Svelte feat. @lihautan - Ngobrolin WEB
Yuk mari kita diskusi dan ngobrol ngalor-ngidul tentang dunia web. Agar tetap up-to-date dengan teknologi web terkini. ...
17 Des 2024
Ngobrolin Desktop App - Ngobrolin WEB
Yuk mari kita diskusi dan ngobrol ngalor-ngidul tentang dunia web. Agar tetap up-to-date dengan teknologi web terkini. ...
6 Mei 2025
Ngobrolin TanStack - Ngobrolin WEB
Yuk mari kita diskusi dan ngobrol ngalor-ngidul tentang dunia web. Agar tetap up-to-date dengan teknologi web terkini. ...