10 poin oleh xguru 2024-08-02 | Belum ada komentar. | Bagikan ke WhatsApp
  • Contoh memasukkan logika terkait lokasi ke dalam aplikasi
    • Jika ingin mengatur bahasa atau mata uang aplikasi berdasarkan wilayah
    • Jika ingin memberikan diskon kepada orang-orang di negara tertentu
    • Jika memiliki store locator yang harus menampilkan lokasi terdekat bagi pengguna
    • Jika aplikasi cuaca bergantung pada lokasi sebelum dapat menyediakan berbagai jenis data
    • Jika ingin menerapkan geofencing pada aplikasi karena alasan hukum (misalnya: banner cookie)
  • Ada beberapa tema umum
    • Tampilan/pengalaman pengguna: menggunakan informasi lokasi untuk meningkatkan atau menyederhanakan pengalaman pengguna
    • Fungsi/logika: logika bisnis aplikasi berubah berdasarkan lokasi
    • Kebijakan/kepatuhan: ada persyaratan hukum yang mewajibkan fitur tertentu disertakan atau dikecualikan
  • Batasannya tidak selalu jelas. Dalam beberapa kasus ada tumpang tindih, tetapi penting untuk mengingat pembedaan ini karena tingkat keparahan jika salah menentukannya berbeda-beda

Cara mendapatkan lokasi pengguna

  • Bertanya langsung kepada pengguna tentang lokasinya
    • Kelebihan: mudah diimplementasikan, dapat dipercaya jika pengguna memberikan informasi yang akurat, dapat mendukung berbagai lokasi
    • Kekurangan: pengguna bisa salah ketik atau mengosongkan informasi, pengguna bisa memberikan informasi palsu
  • Menggunakan heuristik perangkat
    • Perangkat modern dapat mengakses informasi lokasi melalui GPS, data Wi-Fi, menara seluler, dan alamat IP
    • Pengembang web dapat mengakses lokasi pengguna melalui Geolocation API di browser
    • Kekurangan: harus meminta izin pengguna untuk membagikan lokasi, dan pengguna bisa menolak
  • Menggunakan alamat IP
    • Alamat IP digunakan untuk mengidentifikasi perangkat secara unik di jaringan dan membantu menentukan lokasinya
    • Tiap bagian angka pada alamat IP merepresentasikan subnet dari cakupan yang luas hingga yang lebih sempit
    • Alamat IP saja tidak cukup untuk mengetahui lokasi pengguna, sehingga perlu dibandingkan dengan basis data lokasi subnet yang sudah diketahui
  • Menggunakan edge computing
    • Cara ini menjalankan permintaan pengguna di server terdekat
    • Dapat menyediakan informasi lokasi tanpa perlu meminta izin pengguna atau melakukan lookup alamat IP
    • Kekurangan: yang didapat adalah lokasi edge node, bukan lokasi pengguna yang sebenarnya

Mengapa lokasi pengguna tidak bisa dipercaya

  • Pengguna tidak bisa dipercaya
    • Tidak ada jaminan bahwa pengguna selalu akan memasukkan lokasi sebenarnya dengan jujur
    • Mereka juga bisa tidak sengaja memasukkan informasi yang salah
  • Perangkat tidak bisa dipercaya
    • Pengguna bisa menolak penggunaan Geolocation API
    • Informasi Geolocation API bisa diubah pengguna melalui pengaturan browser
  • Alamat IP tidak bisa dipercaya
    • Pengguna dapat merutekan permintaan melalui VPN
    • Yang terlihat hanya alamat IP VPN, dan alamat IP asli pengguna tidak diketahui
  • Edge computing tidak bisa dipercaya
    • Karena yang diperoleh adalah informasi lokasi edge node, hasilnya bisa berbeda dari lokasi pengguna yang sebenarnya
    • Saat memakai VPN, alamat IP asli tetap tidak dapat diakses

Jadi apa yang harus kita lakukan?

  • Ada berbagai cara untuk mendapatkan informasi lokasi, tetapi tidak satu pun yang sepenuhnya bisa dipercaya
  • Apakah itu berarti kita harus menyerah? Tidak! Kita tetap bisa mendapatkan informasi yang lebih baik dan bersiap menghadapinya

Contoh: terjemahan konten

  • Misalkan ada situs web yang ditulis dalam bahasa Inggris tetapi juga mendukung bahasa lain
  • Ingin memuat bahasa lokal pengguna untuk meningkatkan pengalaman pengguna
  • Bagaimana menangani pengguna di Belgia yang menggunakan bahasa Belanda (Flemish), Prancis, dan Jerman?
  1. Pengguna meminta situs web
  2. Melalui edge computing, diketahui bahwa permintaan berasal dari Belgia
  3. Cari preferensi bahasa di cookie HTTP
  4. Jika ada cookie, gunakan bahasa preferensi tersebut
  5. Jika tidak ada cookie, gunakan versi bahasa Inggris atau Belanda
  6. Sediakan daftar bahasa yang didukung di situs web
  7. Jika pengguna memilih preferensi bahasa, simpan ke cookie
  • Dalam skenario ini, informasi lokasi diperoleh dengan menggabungkan edge computing dan laporan pengguna untuk meningkatkan pengalaman pengguna
    • Sepertinya tidak perlu menggunakan Geolocation API
    • Ada risiko bahasa yang ditampilkan salah, tetapi biayanya rendah
    • Meski informasi lokasi salah atau tidak ada, situs web tetap berfungsi
  • Pembaruan: header Accept-Language, yang menunjukkan bahasa dan locale pilihan klien, juga dapat digunakan

Contoh: aplikasi cuaca

  • Ada aplikasi yang menampilkan informasi cuaca berdasarkan lokasi
    • Dalam kasus ini, aplikasi membutuhkan informasi lokasi agar bisa berfungsi. Jika tidak ada informasi itu, bagaimana cuaca bisa ditampilkan?
  • Dalam skenario ini, aman untuk mengasumsikan lokasi pengguna saat pemuatan pertama
    • Informasi tersebut bisa diambil dari edge computing atau alamat IP untuk menampilkan cuaca wilayah pengguna (menurut perkiraan kita)
    • Karena fokus utama situs web memang lokasi, bisa juga memakai Geolocation API untuk meminta data yang lebih akurat
    • Juga perlu menyediakan opsi laporan pengguna yang fleksibel jika pengguna ingin informasi untuk lokasi lain
    • Untuk itu, bisa disediakan kolom pencarian dengan autocomplete yang mengisi informasi lokasi sedetail mungkin
    • Cara menangani kunjungan berikutnya bisa bermacam-macam. Selalu jadikan cuaca "lokal" sebagai default, atau ingat lokasi dari kunjungan sebelumnya
  1. Pengguna meminta situs web
  2. Pada permintaan pertama, perkirakan informasi lokasi lewat edge computing atau alamat IP untuk memulai aplikasi
  3. Pada pemuatan klien pertama, jalankan Geolocation API untuk memperbarui informasi
  4. Untuk pemuatan berikutnya, informasi lokasi bisa disimpan di cookie
  5. Sediakan input fleksibel dengan autocomplete untuk mencari lokasi lain
  • Poin penting di sini adalah aplikasi sebenarnya tidak peduli di mana pengguna berada
    • Yang dibutuhkan hanyalah lokasi
    • Lokasi yang dilaporkan pengguna (pencarian) lebih diprioritaskan daripada lokasi yang ditemukan dari cookie, edge computing, atau alamat IP
  • Karena cuaca berubah setiap hari, strategi caching serta apakah aplikasi sebaiknya terutama dirender di server atau di klien juga layak dipertimbangkan

Contoh: pencari lokasi toko

  • Misalkan Anda mengoperasikan toko fisik di banyak lokasi
    • Anda bisa menampilkan katalog produk dan stok secara online, tetapi akan lebih baik jika juga menyediakan informasi stok toko yang terbaru
    • Untuk itu, Anda perlu tahu stok toko mana yang harus ditampilkan, dan demi pengalaman pengguna terbaik, toko tersebut sebaiknya yang paling dekat dengan pengguna
  • Sekali lagi, masuk akal untuk memprediksi lokasi pengguna menggunakan edge computing atau alamat IP
    • Lalu sediakan input yang fleksibel agar pengguna dapat memasukkan informasi lokasi, tetapi batasi autocomplete pada daftar toko yang diurutkan berdasarkan kedekatan
    • Menjalankan Geolocation API juga merupakan ide yang baik
  • Perbedaan antara contoh ini dan sebelumnya adalah tujuan utama situs tidak bergantung pada lokasi
    • Karena itu, sebaiknya tunggu sampai pengguna berinteraksi dengan fitur yang bergantung pada lokasi
    • Artinya, lokasi hanya diminta ketika pengguna memfokuskan field pencari lokasi toko

Contoh: diferensiasi harga berdasarkan wilayah

  • Ini topik yang agak rumit: bagaimana jika ingin mengenakan harga berbeda berdasarkan lokasi pengguna?
  • Misalnya, beberapa maskapai dan hotel dikenal menampilkan harga yang lebih tinggi kepada pengguna yang memesan dari wilayah tertentu dibanding wilayah lain
  • Terlepas dari persoalan etika, ini adalah pertanyaan tentang profitabilitas, jadi dampaknya bisa sangat besar
  • Karena itu, Anda mungkin tidak ingin membiarkan pengguna dengan mudah mengubah harga melalui informasi lokasi yang mereka laporkan sendiri
  • Dalam kasus ini, kemungkinan besar hanya akan menggunakan edge computing atau alamat IP
    • Pengguna tetap bisa mengakalinya dengan VPN, tetapi mungkin itu yang terbaik yang bisa dilakukan
    • Jika benar-benar khawatir menghindari penipu, Anda bisa mencoba memblokir permintaan dari pengguna VPN menggunakan kemampuan deteksi proxy tingkat lanjut milik Akamai
    • Namun jika melakukan itu, penjualan itu sendiri bisa batal terjadi alih-alih tetap terjadi dengan harga diskon. Pilihannya ada pada Anda

Contoh: banner cookie

  • Contoh terakhir ini lebih berfokus pada kepatuhan hukum, jadi saya akan mulai dengan disclaimer kecil: Saya bukan pengacara!!!
    • Ini hanya contoh hipotetis dan tidak boleh dianggap sebagai nasihat hukum
  • Pada tahun 2016, Uni Eropa meloloskan General Data Protection Regulation (GDPR)
    • Ini adalah undang-undang yang melindungi privasi pengguna internet di dalam UE, dan berlaku pada perusahaan yang menawarkan barang atau layanan kepada individu di UE meskipun perusahaan tersebut berada di luar UE
  • Ada banyak persyaratan bagi pemilik situs web, tetapi yang ingin saya soroti adalah keburukan banner cookie yang kini kita lihat di mana-mana di internet
    • Saya tidak akan membahas isu privasi, apakah banner cookie itu benar atau salah, efektif atau tidak efektif, atau apakah ada pendekatan yang lebih baik
    • Sebaliknya, saya akan mengatakan bahwa lebih baik hanya menampilkan banner cookie saat memang diwajibkan secara hukum, dan menghindarinya jika tidak
  • Sekali lagi, mengetahui lokasi pengguna menjadi sangat penting
    • Ini sangat mirip dengan kasus sebelumnya dan implementasinya juga serupa. Perbedaan utamanya adalah tingkat keparahan jika terjadi kesalahan, dan karena itu tingkat upaya untuk melakukannya dengan benar
  • Banner cookie mungkin merupakan contoh yang paling umum tentang bagaimana hukum dan lokasi pengguna dapat memengaruhi situs web, tetapi jika mencari contoh yang paling kuat, mungkin itu adalah firewall Tiongkok

Kesimpulan

  • Tidak ada jawaban tunggal yang benar untuk menentukan lokasi pengguna
    • Bergantung pada skenario, Anda perlu menggabungkan laporan pengguna, heuristik perangkat, edge computing, dan alamat IP
  • Hal-hal penting
    • Apakah Anda membutuhkan lokasi pengguna, atau hanya membutuhkan lokasi apa pun?
    • Seberapa akurat data tersebut harusnya?
    • Apakah tidak masalah jika lokasi pengguna dapat dipalsukan?
  • Selain itu, perlu juga mempertimbangkan kepatuhan hukum, regulasi, fungsionalitas, dan apakah tingkat keandalan 95% sudah cukup
  • Jika menggunakan logika lokasi karena alasan hukum, sebaiknya ambil langkah-langkah untuk melindungi diri
  • Patuhilah undang-undang privasi data seperti CCPA, GDPR, dan lainnya

Belum ada komentar.

Belum ada komentar.