Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Menjadi Pemrogram JavaScript

Menjadi Pemrogram JavaScript

Kiat-kiat menjadi pemrogram JavaScript bagi para pemula

Irfan Maulana

July 20, 2020
Tweet

More Decks by Irfan Maulana

Other Decks in Programming

Transcript

  1. Menjadi Pemrogram
    JavaScript
    Kiat-kiat menjadi pemrogram JavaScript bagi para pemula
    Irfan Maulana
    Principal Eng @ Web Platform

    View Slide

  2. Kenalan...
    Irfan Maulana, bekerja sebagai Principal Engineer untuk tim Web
    Platform di Tokopedia.
    Pernah bekerja juga di Bizzy, Blibli.com, SML Tech sebagai
    pemrogram.
    Kalian bisa temukan saya di dunia maya:

    View Slide

  3. Saya dan Komputer
    Sekolah di kampung (pemalang) sampai tingkat SMK.
    Kuliah Teknik Informatika di UMJ pada 2009-2013.
    Pertama memiliki komputer (netbook) sendiri pada 2011-an.
    Sampai saat ini cuma sanggup mengetik dengan 4 jari.
    Baca lebih lanjut di https://mazipan.space/cerita-anak-kampung-menjadi-programmer/

    View Slide

  4. Saya, pemrograman dan JavaScript
    Di awal, saya menjadi pemrogram Java (tanpa Script).
    Mulai mengenal JavaScript sekitar tahun 2014-an lewat ExtJS.
    Menghadiri banyak kopi darat komunitas pemrogram JavaScript
    sejak 2015-an.
    Baca lebih lanjut di https://mazipan.space/saya-dan-komunitas-programming/

    View Slide

  5. Membahas
    JavaScript

    View Slide

  6. Ketahui sejarahnya yuk
    Dibuat oleh Brendan Eich pada 1995.
    Namanya berubah dari Mocha (versi development) ➡ LiveScript ➡
    JavaScript.
    Pada 1997 di ECMA menetapkan standar yang menjadi acuan
    pengembangan JavaScript yakni EcmaScript, saat ini sudah
    mencapai ES11 atau lebih dikenal ES2020
    Baca mengenai Brendan Eich lebih lanjut di
    https://en.wikipedia.org/wiki/Brendan_Eich

    View Slide

  7. Jadi apa sih JavaScript?
    Bahasa pemrograman dinamis dengan first-class-function.
    Terkenal menjadi bahasa scripting untuk web browser.
    Namun beberapa lingkungan non-web juga menggunakan JS,
    seperti Node.js, CouchDB, Adobe Acrobat.
    JavaScript menggunakan prototype-based, single-thread,
    multi-paradigm.

    View Slide

  8. Bisa bikin apa dengan JS
    Mobile
    Apps
    Backend
    Web FE
    Desktop
    Apps
    IoT and/or
    Hardware
    CLI
    Many
    more
    AR/VR

    View Slide

  9. Apa JS cocok untuk pemula?
    Yes No
    Gampang
    mulainya
    Artikel &
    kursus
    banyak
    Bisa bikin
    berbagai
    macam
    Komunitas
    aktif
    Banyak alat
    pendukung
    Terlalu
    banyak
    pilihan
    Banyak standard
    baru dari komunitas
    Tidak dapat
    terhindarkan
    Lowongan
    kerja
    cukup
    Tergolong
    cepat
    dipelajari
    Terlalu
    rapid
    dipelajari
    Terlalu pesat
    perkembang-
    annya
    1 bahasa untuk
    rule all of them,
    membingungkan
    Fondasi
    bahasa
    kurang baik
    Utopia
    menjadi
    full-stack
    Tidak
    diajarkan
    di kampus

    View Slide

  10. Memulai JavaScript Itu Mudah
    Developer Tools
    Online Editor

    View Slide

  11. Module System

    View Slide

  12. Use next-gen JS, today!

    View Slide

  13. Belajar dasar: JS sebagai browser script
    ● Bisa langsung mulai dari DevTools
    ● Memahami bagaimana cara memanipulasi DOM
    ● Meminta data ke server kemudian mengolahnya, butuh pengetahuan struktur
    data yang baik
    ● Mesti belajar soal browser API, contoh: fetch data, copy ke clipboard, sharing
    ke sosial media, simpan data ke browser cache, dll

    View Slide

  14. Belajar dasar: JS sebagai backend
    ● Perlu tau mengenai File system API
    ● Hampir selalu berhubungan dengan Rest API, jadi harus belajar HTTP
    ● Database Management
    ● Caching System
    ● Otentikasi dan Otorisasi
    ● Monitoring server: belajar linux command

    View Slide

  15. Baca dokumentasi dulu? Apa praktek?
    Cara
    Belajar
    Cari yang
    nyaman
    Cobain saja
    keduanya
    Baca dokumentasi
    dulu, baru praktek
    Langsung aja praktek,
    kalau kena error, baca
    dokumentasi
    Langsung aja praktek,
    kalau kena error,
    langsung pusing

    View Slide

  16. Sempatkan baca ya
    https://eloquentjavascript.net/
    https://javascript.info/
    https://developer.mozilla.org/id/docs/Web/JavaScript
    https://addyosmani.com/resources/essentialjsdesignpatterns/book/

    View Slide

  17. Saya sudah bisa JS, lalu apa?
    JS itu keren, bisa bikin banyak hal. Tetapi koding kan cuma bagian kecil dari
    keseluruhan pengembangan aplikasi.
    Ada banyak hal lain yang tidak kalah penting, mulai dari bagaimana menulis
    dokumentasi, mengirimkan software, keamanan software, pengetesan software,
    memasarkan software dan lainnya.

    View Slide

  18. Yang baiknya FE Dev juga tahu
    ● Tooling: build tool, transpiler, docker, web server
    ● Design Pattern & Anti Pattern
    ● Monitoring tools
    ● Basic Security: OWASP Top 10 Security Risks, The Twelve-Factor App

    View Slide

  19. Seni memperbaiki error
    ● Pelajari cara trace-back untuk mencari sumber error
    ● Pelajari cara mencari error di Google atau StackOverflow
    ● Bertanya dengan detail permasalahan, langkah untuk mendapatkan error
    tersebut, apa yang sudah dikerjakan, lingkungan yang digunakan, hasil yang
    didapat dan ekspektasi hasilnya.

    View Slide

  20. Tips belajar JS dari saya
    ● Fokus saja, tidak perlu mendengarkan ocehan orang lain.
    ● Sebaiknya atur jadwal belajar secara teratur dan konsisten ikuti jadwalnya.
    ● Cari teman belajar, kalau bisa punya mentor yang mendampingi.
    ● Bikin sesuatu!
    ● Jangan plek menyalin kode orang lain, pahami alurnya, ambil bagian yang
    perlu saja, modifikasi agar lebih sesuai.
    ● Jangan terpaku pada sintaksis, coba lihat esensi dasarnya.
    ● Jangan nyerah pas ketemu error, jangan gampang nanya membabi buta pas
    kena error, pelajari cara trace back.
    ● Ajarkan atau bagikan ulang ke orang lain baik pengalaman belajarnya maupun
    hasil dari pembelajaran.

    View Slide

  21. Tips melamar kerja sebagai pemrogram
    ● Bangun portofolio kamu sendiri
    ● Buat kode-kode yang open-source sehingga mudah dilihat gaya koding kita
    ● Perkuat kemampuan memecahkan persoalan logika
    ● Bangun relasi dengan rekan pemrogram
    ● Jangan tergiur hanya dengan gaji, pastikan kamu bisa belajar banyak juga
    ● Kenali perusahaan yang akan dilamar
    ● Kenal orang dalam

    View Slide

  22. Tips tetap update
    ● Jangan terpaku pada kode-kode yang ada di kantor
    ● Luangkan waktu untuk sedikit mencoba teknologi baru yang populer
    ● Coba eksplorasi ke hal-hal belum bisa diterapkan di kantor
    ● Ikuti perkembangan terbaru baik langsung dari para world class engineer
    ● Ikuti kursus yang deep dive
    ● Baca buku
    ● Gabung komunitas

    View Slide

  23. Terima kasih.

    View Slide