
Hello semuanya Bertemu lagi nih
bersama gw TeMix, Pada kesempatan kali ini gw akan membagikan HAL YANG WAJIB DI KUASAI OLEH PROGREMMER. Pasti
sebagian dari kita belom mengetahuinya bahwa Banyak sekali bahasa pemrogramman
dan tools yang free dan open source sehingga dapat membaut kita bimbang memilih
yang mana yang terbaik buat kita gunakan. banyak juga bahasa pemrogramman dan
tools yang berbayar yang memudahkan kita untuk menggunakannya.
Namun semua itu hanya penggolongan
saja, pada dasarnya investasi waktu kita harusnya diluangkan untuk sesuatu yang
mendasar dan bersifat global, sehingga bila kita pindah bahasa pemrogramman
atau tools pun tidak akan kaget dan panik karena harus belajar dari awal. Kita
pun tidak perlu merasa sulit bila harus perpindah versi dari versi yang lama ke
versi yang terbaru.
Apapun itu bahasa pemrogrammannya
ataupun toolsnya. Sebetulnya ada beberapa cara yang bisa dikuasai seorang
programmer dan bisa membuat diri kita menjadi dinamis terhadapt tools apapun
itu. Menurut anda apakah itu? Berikut ini adalah beberapa hal yang wajib di
ketahui seorang Programmer.
1.
Tentukan Bidang yang Digeluti
Untuk Jadi
seorang Programming kita harus terlebih dahulu bidang apa yang kita ingin
geluti apakah itu Desktop Application Programmer yang menggunakan VB.NET atau
Mobile Application Programmer yang menggunakan Android, masing-masing mempunyai
teknik yang berbeda dalam membuat sebuah aplikasi jadi kita harus memilih salah
satunya tidak bisa keduanya.
Belum lagi bila
kita membandingkan backend Mobile Application programmer dengan Frontend Mobile
Application Programmer keduanya memiliki fokus yang mirip namun berbeda. Dimana
Frontend Mobile Application Programmer dituntut untuk lebih mahir menggunakan
XML, drawable bahkan Pemasangan Compile (Tambahan pada file graddle) untuk
penambahan ektensi tambahan untuk membuat tampilan yang memukau. Sedangkan backend Mobile Application
Programmer dituntut untuk membuat proses menjadi aplikasi berupa service
ataupun non service yang dapat mengirimkan email, integrasi dengan sistem lain,
Mencetak lapotan dan menyimpan data ke database.
2.
Text Editor
Text Editor
adalah hal yang wajib di kuasai oleh programmer demi meningkatkan produktifitas
saat menulis source code. Pastikan kamu menguasai segala fitur dan shortcut
yang sudah ada di dalam text editor tersebut untuk mempermudah dalam menulis
code.
Banyak sekali
Text editor mulai dari yang berbayar sampai open source, salah satunya adalah
vim yang banyak sekali yang menguasai dan tidak sedikit juga yang menguasai
sublime text dan android studio. Hampir semua teks editor memiliki fitur-fitur
canggih seperti multiline editing, split view dan masih banyak lainnya.
3.
Bahasa Inggris
Salah Satu
Kelemahan Programmer adalah yang tidak bisa berbahasa inggris sebagai bahasa
yang wajib di pelajari di dunia programming adalah malas membaca artikel atau
solus lain dalam bahasa inggris. Padahal manual dan dokumentasi mayoritas
berbahasa inggris. Selain itu kontent-kontent belajar tingkat intermediate
sampai advance di tulis pun menggunakan bahasa inggris.
4.
Desain Aplikasi Dan Database
Walau sudah
mahir sekali dengan coding tapi tidak mengerti Desain Aplikasi dan Database apa
bedanya dengan Mempunyai Kunci Mobil Tapi tidak bisa mengendarainya? Itu hal
yang mustahil di lakukan bukannya?. Sama halnya dengan programmer harus juga
bisa menganalisis suatu sistem dan aplikasi sendiri. Bagaimana menerjemahkan
kebutuhan bisnis menjadi alur aplikasi mulai dari menerima input meneruskannya
ke proses dan menampilkan menjadi suatu output.
Data-data yang
lewat selama di dalam proses suatu sistem dan aplikasi, haruslah disimpan ke
dalam sebuah perangkat yang dinamakan database dan tentunya untuk mendesainnya
diperlukan keahlian khusus.
5.
Matematika
Tidak semua
programmer wajib menguasai matematika namun menguasai matematika dasar hukumnya
wajib apalagi seorang programmer yang terjun dalam dunia simulasi,bisnis,
machine learning atau yang lainnya.
Tidak bisa
seorang programmer lepas tangan untuk tidak menguasai matematika dasar dan
matematika yang terkait dengan kasus yang sedang dikerjakannya. Walaupun
beberapa rumus dan formula dikerjakan oleh orang lain. Namun seorang programmer
wajib tahu bagaimana cara merepresentasikan suatu formula kedalam kode aplikasi
yang dibuatnya.
6.
Jaringan Komputer
Sebelum beranjak
ke internet dan cloud computing tentu seorang programmer wajib menguasai dasar
- dasar jaringan komputer seperti ip address, subnetting, dan client server.
Mungkin banyak yang malas untuk menguasai TCP/IP atau OSI Layer secara
menyeluruh, namun wajib tahu beberapa hal mendasar agar programmer lebih cakap
dalam menguasai jaringan komputer.
Tidak semua aplikasi yang dikembangkan harus terhubung
ke internet. Tentu dengan bantuan network engineer, seorang programmer harus
tahu juga seluk beluk jaringan komputer untuk menghubungkan aplikasi yang
dikembangkannya kepada berbagai perangkat yang terhubung melalui jaringan
komputer baik lokal, antar gedung, ataupun antar wilayah.
Terlebih bila membangun aplikasi perkantoran, dimana
kita harus memaksimalkan arsitektur jaringan komputer yang dibangun network
engineer terhadap aplikasi kita.
7.
Internet
Programmer tidak
bisa mengirim e-mail? Masih ada kok yang seperti itu, di tengah era cloud yang
sedang booming tentu saja dasarnya harus kita kuasai dulu. Berbagai protokol
pun harus kita ketahui walaupun tidak kita kuasai. Seperti beberpaa protokol
berikut:
-
HTTP
-
HTTPS
-
WEBSOCKET
-
WEBSOCKET SECURE
-
SMTP
-
FTP
-
TELNET
-
Oauth
-
Dan lainnya
Dan Tidak lupa pula seorang programmer setidaknya menguasai
berbagai aplikasi yang berkaitan dengan internet dan mampu membangun salah satu
komponen infrastrukturnya sendiri. Misal web server dan mail server
8.
Source Management
Git, Svn,
Mercurial, ketiganya adalah tools yang dapat memudahkan kamu untuk melakukan
source code management. Masih suka menggabungkan source code dengan flashdisk?
Lupakan! Waktunya kamu menggunakan source code management.
Masalahnya bila
kamu harus mengerjakan suatu proyek bersama 10 orang tapi masih menggunakan
flashdisk apakah tidak akan repot? Tentu saja akan repot. Dengan source code
management, kamu dapat melihat kode yang konflik, dapat rollback ke kode
sebelumnya, dapat menambahkan komentar pada perubahan kode yang ditambahkan,
dan yang paling utama adalah penggabungan kode program yang ditulis dari
beberapa orang yang berbeda.
9.
Cloud Computing
Tidak harus semua programmer menguasai cloud computing,
namun bila menguasai sedikit saja, tentu akan membantu bila sewaktu-waktu
diperlukan. Rata-rata cloud computing sudah berupa managed service yang
ditawarkan suatu vendor. Ada juga yang on-premise dan harus dikelola sendiri.
Misalnya saja, kita dapat melakukan kerjasama dengan
vendor tertentu dengan tipe kerjasama berupa kampus dan mahasiswa. Atau juga
dengan kerjasama berupa akselerator bisnis. Kamu dapat memanfaatkan layanan
cloud mulai dari IaaS, SaaS, sampai PaaS. Selain itu kamu pun dapat dengan
mudah menangani masalah availibility dan reliabilitas aplikasi yang kamu
kembangkan.
10.
Unit Testing
Cukup banyak perusahaan yang menaruh perhatian besar
terhadap unit testing demi meningkatkan kualitas produk mereka. Ada juga yang
tidak peduli dengan unit testing karena memang lebih penting selesai sebelum
deadline dan deliver.
Unit testing sangat dibutuhkan oleh seorang programmer untuk
memastikan kode yang dibuatnya sesuai dengan bisnis proses dan yang terpenting
adalah mengurangi waktu pengujian yang terlalu lama dibanding harus
memeriksanya secara manual dan diulang lagi dari awal bila ada penambahan
fungsi baru.
Itulah beberapa hal yang wajib
diketahui oleh progremmer, jika anda ingin menjadi programmer yang expert jangan lah
malas-malasan terus selalu mencari ilmu
Share this Article

0 comments :