Code Completion Framework Laravel di NetBeans IDE

Code Completion sangat dibutuhkan programmer karena akan sangat merepotkan sekali jika harus menghapal class, method, parameter, properties dll dari sebuah framework, library. Bolak balik dokumentasi juga ribet. Salah satu solusi untuk mempercepat proses coding yaitu Code Completion, atau ada juga yang menyebutnya auto complete.

Bagi yang mau mengeluarkan uang untuk IDE bisa menggunakan Jetbrains PhpStrom atau Sublimetext. Bagi yang mau free tapi cukup powerfull bisa menggunakan NetBeans. Saya biasanya menggunakan NetBeans untuk web development (HTML, CSS, PHP, Javascript).

Laravel adalah framework yang sedang naik daun. Terkenal karena keindahan kodenya, codingan yang out of the box. The PHP Framework For Web Artisans.

Ada masalah saat koding menggunakan Framework Laravel di NetBeans, yaitu tidak support code completion. NetBeans cuma support framework Symfony, Nette, Zend dan Doctrine. Untungnya masalah ini sudah di selesaikan oleh barryvdh. sublime dan jetbrain juga mengalami masalah yang sama. solusinya ini juga bisa digunakan untuk sublime dan jetbrain.

Berikut cara enable code completion framework Laravel di NetBeans IDE.

Cara Gampang
  1. Download ide helper (_ide_helper.php). di github https://gist.github.com/barryvdh/5227822
  2. Pindahkan file _ide_helper.php ke root project laravel
ide helper file
_ide_helper.php
Cara yang lebih baik
  1. Tambahkan package barryvdh/laravel-ide-helper menggunakan composer
  2. composer require barryvdh/laravel-ide-helper
  3. buka file config/app.php
  4. cari array provider, tambahkan nilai berikut Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class,
  5. add service provider
    add service provider
  6. generate ide helper menggunakan perintah berikut
    php artisan ide-helper:generate
  7. ide helper secara otomatis digenerate. silahkan ditest apakah kode completionnya jalan atau tidak. contoh ide helper yang jalan seperti gambar dibawah ini.
code completion test
code completion test
Tambahan : generate ide helper model

ketika menggunakan eloquent, query builder, atau ketika menggunakan sql murni, sering kali kita bolak balik IDE Database untuk mengecek table ini punya field apa aja. thank to barryvdh yang telah membuat ide helper model. seperti ini contohnya.

structure table user di database
structure table user di database
structure table di IDE sebagai properties
structure table di IDE sebagai properties

jadi dengan ide helper model, kita tidak perlu lagi bolak bali IDE <-> database.

Cara Generate IDE Helper Models
  1. Tambahkan package doctrine/dbal menggunakan composer
    composer require doctrine/dbal
  2. Pastikan settingan aplikasi untuk connect ke database sudah benar dan databasenya sudah running.
  3. generate ide helper models menggunakan perintah berikut
    php artisan ide-helper:models
  4. Secara otomatis akan muncuk file _ide_helper_models.php di root project. test apakah ide helpernya jalan seperti contoh di atas.

catatan : generate ide helper model sempat bermasalah jika pada project laravel yang sama menggunakan package user management entrust. solusi : saya kurang tau apa yang terjadi. setelah restart jadi normal 😀

Versi yang digunakan
  • Laravel 5.2
  • NetBeans IDE 8.0.2

Semoga coretan ini bermanfaat. Mohon saran dan masukannya. Terima kasih 😀

Sumber

Selamat Hari Kemerdekaan Republik Indonesia ke 71

17 Agustus tahun 45
itulah hari kemerdekaan kita
hari merdeka
nusa dan bangsa
hari lahirnya bangsa Indonesia
Merdeka!!!
(cuplikan lagu Hari Merdeka karya H. Mutahar)

Doogle Indonesia Independence day
Doogle Indonesia Independence day

 

Buat apa sih peringatan hari kemerdekaan?

 

Hari kemerdekaan adalah hari yang selalu diperingati setiap negara yang pernah dijajah. Pada umumnya, negara yang dijajah itu menderita, diperlakukan tidak adil. Makanya pada memberontak berharap kehidupan bangsanya menjadi lebih baik. Namun apakah setelah merdeka kehidupan bangsanya menjadi lebih baik?

Point pentingnya adalah keadilan. Stop penjajahan, mari saling berkolaborasi untuk membuat kehidupan manusia yang lebih baik. tidak peduli antar benua, antar negara, antar provinsi, antar kabupaten/kota, antar kecamatan, antar kelurahan/desa, antar RW, antar RT, antar rumah, antar individu, antar suku, antar agama.

Mari berkolaborasi untuk membuat hidup yang lebih baik.
Mari berlaku adil walau berbeda.
Merdeka!!!
Merdeka!!!
Merdeka!!!

Catatan GDG Meetup Jakarta – Progressive Web Apps and The Future of Technology

gdg jakarta - machine learning
gdg jakarta – machine learning

Bertempat di Universitas Atma Jaya (samping plaza semanggi), ruang pertemuan Y 15 (gedung Y lantai 15), Pembicara malam ini keren abis. materi pertama mulai sekitar jam 7 (di jadwal jam 6), topiknya tentang The Future of Technology di bawakan oleh Ankur Kotwal. Sebagai pengantar hal yang dibahas adalah machine learning. Tahun 1997 dunia dibuat kagum sama blue deep buatan IBM. Komputer ini mampu mengalahkan juara catur dunia Garry Kasparov. Namun setelah itu perkembangan machine learning kurang banyak. Sampai akhirnya tahun 2015, google dengan AlphaGo berhasil mengalahkan juara go dunia, Lee Sedol. ini artinya google serius mengembangkan machine learning. salah satu bagian dari machine learning adalah image processing. image processing bisa digunakan untuk face detection, character recognition dll. Dulu waktu kuliah image processing cukuplah susah, namun google membuatnya menjadi mudah dengan mengeluarkan api vision (https://cloud.google.com/vision/). kalau mau image processing yang offline bisa menggunakan TensorFlow. wow harus di coba nih.

 

Next Teknologi yang dibahas berhubungan dengan Augmented Reality dan Virtual Reality yaitu Tango dan DayDream. Project Tango itu seperti pokemon go, menambah/augmented object ke dalam dunia kita/reality. tapi lebih keren. liat aja videonya.

Dari AR lanjut ke VR. Project DayDream lebih fokus ke mengembangkan platform untuk high quality mobile virtual reality. untuk virtual reality saya udah nyoba google cardboard dan itu keren banget. pasti project DayDream lebih keren lagi.

 

Materi selanjutnya sudah sering banget kita dengat, yaitu Progressive Web Apps. materinya secara umum sama dengan Google I/O Extended – viewing party yang di trisakti. Dengan tambahan hal-hal yang lebih detail (service worker) dan code example. thank Paul Kinlan atas sharingnya yang bikin puyeng, hehe..

Skills of Good Software Developers

Salah satu materi di acara Samsung Indonesia next apps 3.0 adalah skills of good (software) developers, dan yang menjadi speakernya adalah sidiq permana (Google Developer Expert). katanya, materi ini dia dapatkan dari temennya, orang rusia. thanks sidiq atas sharingnya, thanks atas inspirasinya.

 

 

how can i be a good programmer
sumber gambar : http://www.careerizm.com/step-by-step-path-to-becoming-a-great-software-developer/

 

Skill of Good Software Developers

  • Problem Solving.
    formulanya : identify, define, examine, act, look.
  • Communication.
    explain clearly and specific, collaboration, team member, writing, confidence, humility.
  • Continuous Learning.
    read books, blog, tweet code, go to conferences, watch videos, take cources, discuss, talk.
  • Curiosity,
    curiosity is the engine. makes your mind active, observant of new ideas, brind exciment into your life.
  • Know your tools.
    cara kerja build tools, dll.
  • No language or platform fanatik.
    kalau basicnya (algoritma, struktur data, dll) sudah kuat, perubahan bahasa bukan masalah.
  • Disiplin.
    disiplin untuk terus latihan.
  • Coding itself.
    clean code, have unit test, dll.

 

Berikut skill skill yang harus kita punya untuk menjadi good developers. mohon koreksinya jika ada yang saya salah catat atau salah ingat. Berat juga ya jadi developers yang good, apalagi yang great. Tapi itu harus jadi tujuan kita. lets keep training, lets be good developers, lets be great developers.

ID Android Developer Kumpul Kumpul di KUDO

Another good event, thanks to KUDO and Dicoding. Software Developer Indonesia pasti akan lebih cepat berkembang kalau sering ada meetup seperti ini. fyi, pak albert lucius (CEO KUDO) bilang auditorium kudo, gedung Kudoplex 1 bisa dipakai buat acara meetup, silahkan saja ajukan saja. Keren banget ni manajemen kudo, support banget untuk perkembangan software developer. thanks again to Kudo.

 

Buat yang belum tau apa itu Kudo, Kudo hadir untuk menjebatani toko online dengan masyarakat yang belum terbiasa jual/beli online sendiri. masyarakan Indonesia sendiri, secara statistik masih banyak yang belum biasa transaksi online karena faktor takut penipuan, tidak punya kartu kredit/debit, dll. Kudo menggunakan agen-agen untuk menghadirkan toko online menjadi toko offline ini (online to offline).

 

Kembali ke acara meetup. speaker pertama setelah pesan sponsor adalah qushay bagas (Android Developer Kudo). Materi yang dibawa adalah best practice development yang telah diterapkan di Kudo seperti software release menggunakan model train, git flownya bagaimana,  penerapan code review. best practice inilah yang menyelamatkan developer kudo dari lembur, code yang buruk, bug,  juga menyelamatkan manajemen kudo dari delivery software yang telat.  delivering high quality software through better release process.

 

Dari banyak hal menarik di atas, kayaknya saya harus segera nerapin code review ni. maklum selama ini seringnya koding sendirian. berdasarkan pengalamannya kudo, untuk code review ada beberapa rekomendasi yaitu sekali review bagusnya sekitar 400 Line of Code (LOC) (tergantung bahasa yang digunakan juga) dan sekali review jangan lebih dari 1 jam. hal ini untuk menghindari kejenuhan yang mengakibatkan jadi tidak teliti lagi.

 

Lanjut ke materi selanjutnya, deep understanding firebase realtime database by sidiq permana (google developer expert android). Sayangnya materinya tidak terlalu deep, lebih ke pengenalan firebase, apa aja hal keren dari firebase. untuk deep understanding kayaknya harus nyoba sendiri 🙂 .ada note khusus tentang firebase yaitu firebase cloud messaging (FCM) not work di background proses dan hal ini akan dikomunikasikan mas sidiq ke tim engineer google nya langsung.

 

ok, materi selesai. semoga kita semua bisa jadi software developer yang lebih baik lagi. aamiin.