Langsung ke konten utama

Cara Efektif Belajar Pemrograman

Jika anda memilih untuk menjadi seorang programmer hal yang perlu anda pelajari terlebih dahulu adalah bagaimana programmer itu bekerja apakah dia sendirian ? dan seperti apa pola fikir programmer yang harus terapkan? ini akan saya bahas menurut percobaan saya selama ini jika ada teman-teman yang mau menambahkan silahkan tambah di kolom komentar.

Cara Belajar Programming Efektif


Programmer Adalah 
Adalah seorang yang membuat suatu program untuk mempermudah suatu pekerjaan dengan bahasa yang di kuasainya, programnya bisa berbentuk aplikasi andorid, aplikasi desktop, dan aplikasi web, programmer bisa mengatasi masalah yang ada seperti masalah pada suatu toko,   jika pada awalnya penjual barang menggunakan metode yang lama dalam pencatatan pengeluaran uang, pemanasukan, dan data lainnya tentang pelanggan, maka programmer bisa membuat program untuk memecahkan masalah ini.

Gaji Programmer 
Jika teman-teman yang masih mikir untuk menjadi seorang programmer maka anda perlu membaca seberapa besarnya gaji seorang programmer di Indonesia melalui koran, majalah, atau situs survey, hampir semuanya mencantumkan jumlah yang ‘wah’. Sebagai contoh, anda bisa telusuri sendiri.

Jika anda bekerja sebagai programmer hanya karena Gaji yang besar (bukan karena hoby atau kecintaan menjadi seorang programmer) maka bisa dibilang anda tidak akan betah dengan pekerjaan ini.  Mengapa? karena untuk menjadi seorang programmer ada banyak hal yang harus anda kuasai, yaitu mulai dari bagaimana merancang, menganalisa program anda dan masih banyak aspek yang harus anda ketahui, tentu saja jika karena kecintaan ingin menjadi seorang programmer tentu langkah anda akan mudah terhenti dan tujuna dari tulisan saya kali ini adalah untuk memberi sedikit tentang hal apa saja yang semestinya anda perhatikan dalam menggeluti dunia coder.

  1.  Peran Programmer
             Dalam Pembuatan sebuah sistem yang besar pasti programmer membutuhkan team yang solid dalam perancangannya, untuk merancang sebuah sistem programmer harus memilih perannya dalam team, seperti jika kita membuat mobil maka akan ada perannya masing-masing yaitu tukang desain, tukang analisa, dan buildernya. di dalam dunia programming juga begitu yaitu peran masing-masing di berbeda-beda, peran-peran yang saya maksud antara lain sebagai berikut :
    • Back End Programmer
               Sesuai dengan namanya “Back End Programmer” yaitu progammer yang bekerja di belakang(server side), jadi tugasnya seperti mengatur proses data, mengolah data yang ada, dengan logikanya, semua perumusan algoritmatik berada di tangan Back End. Jadi Masalah keamanan data berada pada backend, Bahasa pemrograman yang bekerja di server side (back end) ialah seperti Python, Java, PHP dll
    • Front End Programmer
             Jika back end programmer hanya bekerja di server side maka front end(depan) bekerja di client side yaitu progammer yang bertugas untuk mengatur semua layout, mengatur sedemikian rupa untuk bisa di bilang menarik, dan harus berfikir bagaimana user agar betah menggunakan progam yang di buatnya, selain itu juga front end harus bisa mengambil data dari back end dengan sangat kreatif untuk menjaga server agar tidak mudah down.
              Minimal yang harus kamu fahami untuk bekerja di bagian Client Side (Front End) ialah seperti HTML, CSS, Memahami UI / UX design,  Mempelajari bahasa pemrograman Javascript, dll.
    • Full Stack Programmer
              Jika Front end fokus pada tampilan dan pengambilan data dari back end dan Back End fokus pada perancangan logika, berbeda dengan full stack programmer.
      Full Stack programmer merupakan programmer yang harus memikirkan keduanya yaitu meliputi yang di kuasai oleh front end dan back end yang telah saya jelaskan sebelumnya, full stack programmer membuat logika program kemudian dia juga harus mengatur layout suatu program.
      Namun kebanyakan dari programmer Full Stack bekerja sendiri, namun kebanyakan dalam pembuatan program yang membutuhkan keahlian di bagian server dan client (Back end dan Front end) biasanya di butuhkan dalam pembuatan aplikasi yang berskala besar seperti google, facebook, instagram dll.

  2. Pahami Sistem
            Hal yang harus dipahami sebelum memilih bahasa pemrograman yaitu memahami sistem, sistem yang saya maksud disini hanya beberapa saran dari saya agar mempermantap dalam memilih langkah untuk kedepannya dalam mempelajari bahasa pemrograman, berikut adalah hal yang saya maksud :
    • Memahami cara kerja komputer
    • Memahami Compiller dan Interperter
    Hal yang sangat saya sarankan yaitu "pelajari bahasa pemrograman yang memiliki paradigma yang berbeda untuk tahap awal" seperti pemrograman java(OOP), C(Struktural), dll.
  3. Alasan Memilih suatu bahasa pemrograman
          Untuk menjadi seorang programmer yang PRO dengan cepat (menurut saya sih) anda harus fokus pada satu bagian (Front/Back) namun sebagai pemula anda harus coba semuanya untuk memperbanyak wawasan anda, kenapa? agar mempermudah pertimbangan anda dalam memilih bahasa pemrograman nantinya, pilihlah sesuai yang anda sukai bukan yang hanya ingin anda bisa kuasai. Mungkin anda bisa kuasai apapun yang anda inginkan namun apakah kalian suka dengan hal itu? kita harus memilih sesuatu yang bisa membuat kita bahagia walaupun itu membuat kita begadang tiap malam (seperti bermain game lah).
           Jadi kesimpulannya pilihlah bahasa pemrograman menurut bagian yang anda senangi karena  jika anda bekerja dengan team anda perlu memiliki sisi yang tidak dimilik oleh anggota lain dalam team anda.

  4. Sintag ? Ingin faham bukan di hafal.
           Dalam prosses pembelajaran menjadi seorang programmer anda tidak perlu khawatir dengan sintag-sintag yang begitu banyak di dalam bahasa pemrograman tersebut, kamu tidak perlu mengingat sedetail-detailnya sintag tersebut karena itu bisa membuat kamu stress dan membuat kamu cepat berhenti untuk mempelajarinya, dan jangan heran kebanyakan dari programmer juga tidak begitu banyak sintag yang dia hafal, namun mereka bisa? ya, coba kamu fikirkan bagaimana mereka bisa? karena mereka FAHAM hahaha.
          Jadi bagaimana gaya belajar untuk programmer pemula? cobalah materi awal dengan mempelajari sejarahnya kemudian mulailah coba buat program sederhana dari materi yang kamu pelajari, saran dari saya : 

    “kamu tidak perlu ingat yang penting kamu faham, jika sintag yang kamu hafal tidak kamu ingat itu tidak apa-apa dari pada kamu lupa terhadap pemahaman yang kamu pelajari itu”. 

    jadi intinya faham itu yang harus kamu utamakan. Fikirkan “ada banyak yang bisa menghafal suatu pidato namun mereka tidak begitu faham dengan yang mereka ucapkan” berbeda dengan “mereka yang faham dengan suatu pidato namun di saat mereka tampil, mereka lupa dengan suatu kalimat di dalam pidato tersebut namun mereka bisa merancangnya dengan kata-kata mereka sendiri”.

  5. Siapakan Target pengetahuan
             Dalam mempelajari suatu materi yang begitu banyak anda harus membuat perencanaan dalam hari-hari anda karena bukan itu saja yang harus kamu pelajari dalam hidup ini, jika kamu seorang mahasiswa terutama pada semester awal kamu akan di hidangkan dengan beberapa mata kuliah yang bisa di bilang agak berbeda jalan dengan kompetensi yang kamu ambil, dengan pelajaran yang begitu banyak kamu harus membuat perencanaan hari ini kamu harus bisa apa? minggu ini kamu harus bisa apa? bulan ini? tahun ini? dan jangan sampai kamu berhenti untuk belajar. karena menjadi yang terbaik itu susah.
     Saya pernah berfikir seperti ini :

    “Ternyata buat sistem itu mudah jika aku mau buat sistem pasti aku bisa, mending aku berhenti untuk belajarlah nanti klo ada yang mesan aplikasi pasti bisa aku buat”

               Jangan pernah ditiru gaya pemikiran seperti itu guys karena itu adalah salah satu gaya berfikirku yang sangat aku sesali, jadi waktu itu (saat awal) aku belajar bahasa pemrograman dan lumayan bisa dan faham karena hal tersebut aku menganggap semuanya mudah dan berfikir untuk berhenti belajar selama setahun. Dan pada suatu hari aku punya kenalan baru yang gila dengan dunia programming dan dia sudah banyak contoh program yang dia buat, karena saya melihat dia keren saya jadi terpacu untuk ngoding lagi. setelah kembali kedunia programming lagi saya lumayan bingung dalam belajar saya. dari sini saya sadari bahwa saya harus banyak belajar dan harus mempunya target pembelajaran, contohnya : “ saya harus bisa dasar vue.js bulan ini, kemudian bulan berikutnya akan aku coba yang lebih extreme lagi” dan begitu seterusnya.

  6. Trial & Error
              Prosses belajar yang menurut saya paling efektif dalam memahami sesuatau adalah dengan pengalaman sendiri yaitu dengan mencoba dan gagal sendiri tanpa bantuan orang lain selain teknologi yang anda miliki karena segala sesuatu yang anda cari 99% sudah di sediakan di internet anda tinggal mencobanya sendiri, jika anda telah buntuh untuk mengetahui sesuatu barulah anda menanyakan senior anda untuk hal yang sulit anda fahami.
             Anda bukan seorang pejuang jika tidak melakukan trial and error. karena di dalam tahap ini anda bisa menyimpulkan suatu kesimpulan dari masalah yang anda hadapi tanpa harus menanyakan orang lain dan anda akan yakin dengan pendapat anda karena anda yang melakukannya bukan oran lain.

  7. Mempelajari Model-Model Pengembangan Suatu sistem
             
    Dalam pembangunan suatu sistem tentu tidak semudah yang difikirkan oleh orang-orang awam, dalam pengembangan suatu sistem anda harus bisa mempertimbangkan model apa yang cocok untuk di gunakan, karena hal ini akan berpengaruh pada sistem yang anda buat seperti kelayakan penggunaan, lama program anda akan di launching, kerja sama team, kebetahan worker dan masih banyak lainnya yang bisa di kontrol oleh model yang anda gunakan. Dan tentu ini penentu keberhasilan dalam proyek anda. adapun model-modelnya yang bisa anda explore sendiri di internet seperti : Linier atau Waterfall, Prototype, Rapid Application Development (RAD), Evolutionary Developmen, Spiral / Model Boehm , dll.

  8. Harus Update dan banyak wawasan
            
    Dalam dunia persaingan anda harus tau tentang teknologi sekarang seperti Developer Bahasa Mana yang banyak di butuhkan pada tahun ini, bahasa pemrograman mana saja yang memiliki kedudukan lebih waw di antara developer dunia, teknologi apa yang terbaru.

  9. Wajib Bahasa Inggris
            Kenapa? jawabannya simple yaitu "pembahasan yang sifatnya advanced kebanyakan dari luar" dan bukan hanya itu dengan ini anda juga bisa mendapatkan proyek dari luar yang pastinya anda akan bermain dengan mata uang dollar.

  10. Memahami Jam Kerja Tubuh

Komentar

  1. orang yg bekerja di balik layar itulah programer

    BalasHapus
  2. Programmer, mudah seru tapi memang punya jalan panjang...

    BalasHapus

Posting Komentar

Postingan populer dari blog ini

Apa itu API | 1 Belajar REST API Dengan Python Flask

Dalam sesi ini kita akan belajar cara membuat API menggunakan Flask, di perlukan sedikit dasar bahasa pemrograman python untuk mempermudah dalam mempelajari ini, dan jangan kawatir jika anda belum pernah  Belajar Flask  sebelumnya, karena pada tutorial kita akan membahas dari dasar. Flask ini framework yang sangat cocok digunakan untuk membuat suatu service yang kecil, dan ini telah banyak di gunakan oleh perusahaan-perusahaan besar, anda bisa lihat  disini . Di saat saya menulis tutorial ini, pengembangan Flask sudah mencapai seperti berikut: Contributors :503 Commits : 3,5037 Ok, saya akan mulai dengan membahas apa itu API ? API (Application programming interface) - Mudahnya bisa di sebut sebuah service yang berfungsi untuk menghubungkan service antar service, contohnya frontend dan backend agar bisa bertukar data kita butuh yang namanya API Service, jadi kalau istilah lainnya ini bisa di sebut sebuah gerbang penghubung. Secara "garis besar" pekerjaan pr

Flutter Tutorial Indonesia | 1 Pendahuluan

Setelah rilisnya bahasa pemrograman Dart yang di kembangkan oleh google pada tahun 2011 kini bahasa tersebut sudah memiliki framework yang bisa digunakan untuk membuat aplikasi moile yaitu untuk android dan ios sekaligus dalam satu waktu. Flutter juga digunakan sebagai framework utama dalam pengembangan aplikasi untuk OS Google Fuchsia. Tentang Flutter : Menggunakan Library Grafik Google Skia untuk mesin rendernya, alias tidak menggunakan bawan dari android atau iOS, dan ini yang membuat tampilan di android, iOS, atau desktop tetap sama. Semua UI adalah Widget Rendering Lebih Cepat Tidak hanya untuk membuat UI Flutter juga untuk menangani aliran data dan status data yang rumit dengan cara yang elegan dengan model Reactive. Dalam acara Google I/O 2018 menyatakan bahwa sekarang sudah menyediakan dokumentasi yang lengkap di flutter.dev dan anda bisa langsung belajar framework ini dari dokumentasi tersebut atau bisa mengambil courses di udacity atau tempat courses lainnya sep

Routing | 5 Belajar REST API Dengan Python Flask

Secara umum situs menyediakan beberapa link untuk bisa mengunjungi halaman pada websitenya, contoh pada situs facebook untuk melihat halaman profil linknya bisa  facebook.com/rhyanz46 , untuk melihat daftar yang kita simpan linknya  facebook.com/saved ,   proses pembuatan link ini bisa di sebut routing, tutorial kali ini kita akan belajar routing di flask. Sebenarnya pada tutorial sebelum-nya kita sudah menggunakan route, namun disini saya akan menjelaskan beberapa hal lagi seputar routing. URL secara umum di bagi menjadi dua sifat yaitu dinamis dan statis URL Statis  adalah url yang berfungsi untuk menampilkan suatu halaman dengan jenis data yang berbeda dengan halaman yang lainnya, seperti di suatu website kita ketahui ada halaman about, home, privacy and policy, dll. Contoh, sebut saja situs anda adalah ariansaputra.com  dan anda ingin membuat halaman 'about' dengan url  ariansaputra.com/about  , seperti tutorial sebelumnya kita bisa membuatnya dengan cara: URL d