Berbagai Tipe Programmer Berdasarkan Framework

Ridwan Fajar 7 Juli 2015

Berbagai Tipe Programmer Berdasarkan Framework

Programmer, bukan program manager sebuah acara reality show di televisi swasta ataupun sebuah acara joged joged gak jelas, melainkan seseorang yang mempunyai keterampilan dan keahlian dalam menuangkan algoritma dan bisnis proses ke sebuah kode program yang ditulis kedalam bahasa pemrograman tertentu untuk menjadi sebuah aplikasi yang dapat menyelesaikan kebutuhan penggunanya. Tentu saja programmer membutuhkan bahasa pemrograman untuk membangun aplikasi yang akan mereka kembangkan, namun beberapa dari mereka ada juga yang menggunakan framework open source untuk membantu pengembangan aplikasi mereka dibanding membangun aplikasi dari awal.

Salah satu hal yang paling mencolok kenapa programmer menggunakan framework adalah agar tercipta standard pengembangan aplikasi yang dapat diadaptasi oleh programmer lain dalam satu tim. Selain itu biasanya framework sudah dilengkap berbagai library siap pakai yang tak perlu kita buat lagi dari awal. Misalnya library untuk membuat form, memvalidasi form, akses dan manipulasi ke database, dan lainnya.

Dengan hadirnya framework open source penggunanya pun sangat banyak dan beragam dari berbagai latar belakang. Ada yang cuma hobi sampai seorang profesional. Ada yang masih sekolah sampai sudah berpendidikan tinggi. Keberagaman tersebut memunculkan berbagai tipe orang alias programmer sesuai keseharian mereka terhadap framework tersebut. Tak jarang tipe - tipe programmer yang akan diceritakan di tulisan ini, pasti sering kita temui di forum atau group Facebook terkait.

Saling membantu, berbagi, dan mengejek pun bukan barang aneh ketika seseorang bertanya di suatu forum. Namun itulah indahnya kehidupan. Dengan berbagai tingkah unik mereka, dunia pemrograman pun semakin menjadi seru dan greget yang menciptakan suasana menjadi lebih dinamis. Berikut ini adalah beberapa programmer berdasarkan tingkah mereka terhadap suatu framework open source.

1. Programmer yang Hanya Menggunakan

Tentu saja programmer yang satu ini merupakan paling umum. Programmer yang satu ini sudah mencoba daripada hanya sekedar membicarakan saja suatu framework atau hanya menyebar sentimen negatif suatu framework. Framework yang dipilihnya digunakan untuk mulai dari proyek pribadi, hobi, hingga proyek resminya. Selalu mempertimbangkan pembaharuan framework jika ada update dan tidak terlalu mengikuti isu pengembangan hingga tingkat source code. Baginya yang penting framework tersebut membantunya dalam mempermudah proyeknya. Biasanya programmer yang satu ini akan menanyakan pertanyaan yang memang sudah dihadapi terlebih dahulu, ketimbang menanyakan pertanyaan yang kasusnya belum pernah dihadapi. Sesekali ikut mempromosikan framework yang dia gunakan walaupun hanya person to person.

2. Programmer yang Rajin Membaca Dokumentasi Framework

Tipe programmer ini merupakan tipe lanjutan dari tipe pertama. Mereka yang rajin membaca dokumentasi akan sangat jarang bertanya hal - hal yang sudah dijelaskan di dokumentasi. Tanpa mendahulukan bertanya, dokumentasi framework yang dipilihnya akan selalu menjadi sumber jawaban utama yang dia baca. Biasanya jika membaca dokumentasi framework dengan teliti, maka dia akan menemukan jawaban. Atau bila kurang lengkap, programmer tersebut akan mencari tambahan jawaban dengan searching terlebih dahulu menggunakan mesin pencari dan terdampar di blog atau website yang menjelaskan framework yang dipilihnya.

Sekalipun dia bertanya, pasti akan bertanya hal yang tidak terdapat di dokumentasi ataupun belum ada yang membahasnya. Sehingga diskusi pun akan menjadi seru karena bisa jadi pertanyaannya tersebut menjadi issue baru bagi pengembangan framework. Tipe ini biasanya sangat mudah untuk menggunakan framework lain dari biasanya, jika harus menghadapi proyek yang membutuhkan framework diluar pilihannya. Selama ada dokumentasi, pengembangan pun akan tetap berjalan.

3. Programmer yang Malas Membaca Dokumentasi Framework

Tipe programmer ini merupakan tipe lanjutan dari tipe pertama namun kontradiksi dari tipe kedua. Biasanya kebiasaan malas membaca ini terdapat di newbie yang baru belajar framework yang dipilihnya. Tak jarang bila kita sering melihat pertanyaan remeh yang sebenarnya jawabannya sudah sering didapat dan terpampang jelas di dokumentasi. Biasanya programmer ini akan diarahkan untuk membiasakan membaca dokumentasi sebelum bertanya selain mendapatkan jawaban langsung dari para master yang sudah lebih dulu menguasai framework yang kebetulan sama dengan pilihannya.

Jika sering bertanya tanpa membaca dokumentasi, biasanya akan ada master yang malah akan memberikan sedikit "ketegasan" agar selalu membaca dokumentasi. Memang masalah ini terkendala oleh bahasa Inggris yang menjadi bahasa utama dalam penulisan dokumentasi framework. Jadi tipe programmer ini pun harus diberikan bimbingan dalam mempelajari bahasa Inggris. Namun sekalipun newbie, apabila memiliki kebiasaan membaca seperti tipe kedua, untuk berpindah - pindah framework pun bukan masalah besar yang memakan waktu lama.

4. Programmer yang Suka Ngeluh dengan Fitur dari Sebuah Framework

Suka ngeluh kalau framework yang dipilihnya atau dipilih orang lain mempunyai banyak kekurangan. Padahal bikin karya pakai framework itu pun belum pernah. Ada juga yang sudah menggunakan framework yang dipilihnya tapi ada bagian yang gak suka dengan framework tersebut. Itulah tugasnya programmer ketika menggunakan framework lebih baik ikut berkontribusi untuk mengembangkan framework yang dipilihnya menjadi lebih baik. Karena dengan ngeluh saja, apa yang diinginkan tidak akan muncul begitu saja. Di forum bukan hal aneh kalau suka bikin posting "Kenapa sih masih banyak yang menggunakan framework ini?", "Kenapa sih ga pada move on ke framework yang lagi mainstream?". Dan pada akhirnya bila sudah berpengalaman tentu akan sangat jarang mengeluh di forum dan ikut berkontribusi.

5. Programmer yang Suka Ngebanding - Bandingin Framework

Bisa dibilang programmer yang satu ini merupakan lanjutan dari tipe pertama. Dengan modal nekat, biasanya ada programmer yang akan posting, "mana sih yang lebih bagus, framework A atau B?", "ternyata framework C lebih bagus lho dari A dan B". Programmer seperti ini biasanya belum pernah mencoba sama sekali atau baru mencoba hanya permukaannya saja. Programmer yang berpengalaman dengan framework yang dipilihnya biasanya akan memaksimalkan penggunaannya, atau kalaupun menggunakan framework lain tentu dia akan lebih memilih diam dan tetap berkarya ketimbang membanding - bandingkan framework. Alhasil, ngebanding - bandingin framework sebenarnya tidak lebih bermanfaat dibandingkan membuat suatu karya. Ayo kita membuat karya :D.

6. Programmer yang Kepo dengan Perkembangan Framework

Bisa jadi programmer yang satu ini adalah seorang jurnalis yang ditugaskan oleh kantornya untuk menulis artikel tentang framework yang dikepoinnya. Atau seorang fans berat dari framework tersebut. Dia kepoin itu framework mulai dari perubahan yang terdapat di changelog, ngintip - ngintip versi alpha dan beta, mencari informasi seputar pembuat framework-nya, sampai - sampai lihat perkembangannya dengan melihat issue yang ada di layanan Git yang digunakan pengembang framework. Tipe programmer ini akan selalu up to date dengan perkembangan framework yang dikepoinnya. Ibarat wota yang selalu kepo dengan oshimen-nya, programmer yang satu ini biasanya follow akun Twitter para developer dan akun - akun yang memiliki informasi terkait framework tersebut.

7. Programmer yang Memahami dan Menguasai Seluk Beluk Framework

Tipe ketujuh ini merupakan turunan dari tipe pertama, kedua, dan keenam. Dia tidak hanya menguasai di permukaan atas saja, sampai unit terdalam pun dia tahu cara kerjanya. Selain memahami dokumentasi, bagian dalam yang dikuasainya suka dimodifikasi juga untuk keperluan tingkat lanjut. Mulai dari sekadar mengubah informasi kesalahan validasi, hingga mengubah core dari framework tersebut dapat dilakukannya. Dia sangat jarang menjawab pertanyaan yang sudah sering ditanyakan atau yang dapat dijawab dengan dokumentasi, pertanyaan yang menggigitlah yang biasanya akan dijawab. Sedikit lagi tipe ketujuh dapat menjadi tipe kedelapan ataupun kesembilan.

8. Programmer yang Ikut Berkontribusi Mengembangkan Framework

Tipe kedelapan ini mungkin merupakan gabungan dari tipe pertama, kedua, keenam, dan ketujuh. Bagaimana tidak, dengan mengetahui setiap seluk beluk bagian framework, dia akan lebih mengerti ada kekurangan apa sajakah yang terdapat di framework pilihannya. Jika ada yang kurang, dia tidak akan mem-posting-nya di forum terbuka, tapi mengirimkan pesan langsung kepada pengembang framework untuk izin ikut kontribusi ataupun sekadar memberitahu. Bila ia belum siap menyumbang kode, meningkatkan dokumentasi pun bisa jadi salah satu pilihan yang dapat ditempunya untuk mengembangkan framework pilihannya. Tipe ini patut dicontoh oleh programmer lain demi kemajuan framework pilihannya.

9. Programmer yang Membuat Sebuah Karya dengan Framework

Tipe kesembilan ini, tipe yang talk less do more. Ketika orang lain memperdebatkan berbagai kekurangan framework pilihannya. Dia berusaha membuat karya yang tidak dibuat oleh orang lain yang berdebat. Dia juga berusaha membuat terobosan baru untuk memajukan komunitas dan negaranya. Ada yang membuat layanan cloud api, ada yang membuat website untuk menguji kemampuan pemrograman seseorang, ada yang membuat content management system, ada yang membuat perangkat pendukung IoT, ada yang membuat portal kelas online, dan masih banyak lagi.

Tidak hanya membuat sebuah produk skala besar, ada juga diantara mereka yang membuat library, plugin, atau generator untuk CRUD, Form, Model, dan tampilan. Umumnya mereka adalah orang yang sudah lama malang melintang, tapi orang yang baru terjun pun tidak sedikit ikut berkarya dengan framework pilihannya. Tipe ini bisa jadi referensi bagi orang - orang yang masih galau mau ngapain dengan framework pilihannya.

10. Programmer yang Membuat Framework

Yah ketika orang masih ribut - ribut soal framework mana yang lebih bagus dan ngejelek - jelekin framework lain. Ada beberapa programmer yang justru membuat framework-nya sendiri. Peruntukkannya pun bermacam - macam, ada untuk pengembangan aplikasi web, desktop, dan lainnya. Memang tipe kesepuluh ini biasanya adalah tipe yang sudah pernah menggunakan framework tertentu dan sudah pasti menguasainya. Kemudian mencoba fokus untuk mengembangkan framework-nya sendiri dalam memenuhi kebutuhan konsumen. Ada juga yang sebagian membuat framework-nya sendiri karena merasa tidak puas dengan framework yang sudah ada atau malah mengembangnkan dari yang sudah ada. Mereka yang berbicara seperti itu bukan anak kemarin sore, tapi sudah makan asam garam dengan dilengkapi berbagai pengetahuan, misalnya design pattern, object oriented analysis, dan harus juga menguasai bahasa pemrograman serta teknologi terkait yang dia pilih.

Sebagai contoh saja, Di Indonesia sendiri sudah ada beberapa framework yang dikembangkan oleh programmer Indonesia. Mereka adalah para profesional yang sudah cukup lama malang melintang di dunia pemrograman Indonesia.

  • FastPlaz, web framework untuk Pascal ini dikembangkan oleh Luri Darmawan
  • Dee Framework, web framework untuk PHP ini dikembangkan oleh Misbahul D. Munir
  • EmeraldBox, web framework untuk Python yang dikembangkan diatas Flask dan Werkzeug ini digagas oleh Fauzan Emmerling
  • KokoroPy, web framework untuk Python yang dikembangkan diatas Bottle ini digagas oleh Go Fendi Asgard
  • IGNSDK, application framework untuk pengembangan aplikasi desktop Linux berbasis teknologi web ini dikembangkan oleh Ibnu Yahya dari IGOS Nusantara
  • Kecik, web framework untuk PHP berupa single file ini dikembangkan oleh Elsprananda Klan
  • Panada, web framework untuk PHP ini dikembangkan oleh Iskandar Soesman
  • Senthot, web framework untuk PHP ini dikembangkan oleh Senthot
Memang perlu waktu dan tenaga untuk menjadi tipe kesepuluh ini. Tapi Anda yang membaca tulisan ini pasti suatu saat ingin juga mengembangkan framework Anda sendiri untuk skala dunia :D. Ayo terus belajar dan berjuang.

(rfs)