Pelajaran awal bagi yang ingin belajar pemrograman secara otodidak

Saya lebih senang menyebut nya sebagai pelajaran wajib. Sebenarnya saya bukan orang yang bisa pemrograman awalnya, karena latarbelakang pendidikan dan pengalaman saya tidak ada di dunia IT sama sekali.

Namun ketika saya pertama sekali kerja di salah satu perusahaan BUMN terkemuka di negeri ini, saya masuk dibagian Portofolio atau bagian yang ditugaskan khusus untuk memantau realisasi bisnis perusahaan.

Tugas paling penting disini adalah menyajikan data seakurat mungkin, dan menyusun laporan kinerja sesuai data tersebut dengan cepat untuk memenuhi kebutuhan BOD (Board Of Directors) dalam memantau kinerja dan menyusun strategi perusahaan ke depan.

Yang pasti laporan yang kita hasilkan ada yang bersifat harian, mingguan, bulanan, tahunan, dan ada juga laporan yang sifat nya dadakan.

Photo by Andrew Neel on Unsplash
Namanya anak baru, jadi banyak tantangan yang harus saya hadapi, sama sekali saya belum pernah mengolah data yang banyak, dan menyusun nya menjadi sebuah laporan portofolio.

Tapi namanya kerja, mau gak mau saya harus belajar lebih keras dibandingkan dengan senior - senior saya yang sudah lebih berpengalaman di kantor. Saya mulai dengan mengerjakan apa yang diperintahkan atasan, dan setelah mengerjakan nya saya isi waktu saya mempelajari konsep dasar dari pekerjaan tersebut.
Pekerjaan demi pekerjaan saya kerjakan dan pemahaman saya pun ikut bertambah seiring dengan waktu.
Disela - sela waktu saya mencoba untuk mencuri ilmu dari atasan saya yang menurut saya dia sangat paham benar dengan pekerjaan nya. Sebenarnya saya tidak privat khusus dengan beliau, tapi saya mencoba mengekstrak ilmu beliau dengan berbagai pertanyaan - pertanyaan yang saya sisipkan ketika sedang bekerja.

Saya ingin sekali menguasai teknik pemrograman karena pekerjaan yang saya kerjakan akan lebih cepat selesai dengan menggunakan bantuan program atau software. Untuk itu saya harus belajar keras untuk memahami bagaimana sebuah program atau software bekerja.

Saya memulai dengan otodidak, bahasa pemrograman yang pertama saya pelajari adalah PHP, banyak tutorial yang tersedia tentang PHP di internet (web, blog dan youtube) dan saya mulai membaca dan mempraktikannya di komputer.

Beberapa kali ada yang bisa, dan beberapa ada juga yang tidak bisa saya ikuti dari berbagai tutorial yang sudah saya baca.

Pemahaman yang saya dapat terlalu gampang hilang di ingatan, karena saya belajar tutorial - tutorial tanpa pemahaman yang mendalam tentang dasar dari pemrograman itu sendiri.
Tidak ada pemahaman dasar yang saya miliki, sehingga kemampuan pemrograman saya tidak berkembang secara signifikan, dan saya mulai menyadari nya. 
Akhirnya solusi terpecahkan, suatu ketika saya berdiskusi dengan beberapa programmer di kantor bersama dengan atasan saya juga. Kami sedang mendiskusikan suatu pekerjaan yang harus diselesaikan hari itu juga.

Ketika itu permasalahan yang kami hadapi adalah data harus dideliver dengan cepat kepada GM (General Manager) dan data tersebut diminta untuk dikirimkan setiap hari melalui e-mail blast langsung ke e-mail beliau dan ke e-mail beberapa board of director terkait.

Atasan saya sedang mendiskusikan berbagai solusi yang bisa megakomodir kebutuhan tersebut, kita mencoba berbagai cara, kita mulai memformat laporan dengan struktur dan desain laporan yang standar dan baku (membuat format khusus).

Menyiapkan fungsi - fungsi khusus yang bisa menyajikan laporan sesuai dengan format tersebut, dan menambahkan fitur tersebut pada sebuah web (portal portfolio) yang sudah ada.

Di tengah - tengah diskusi, si bos melihat programmer ini sibuk mendesign fungsi (function) dan tampilan web yang cantik. Mereka sibuk membuat koding untuk tampilan dan estetika laporan (dan mereka lama berputar - putar disini).

Melihat kondisi ini si bos langsung meminta mereka untuk menghentikan pekerjaan itu, kemudian beliau mencoba menjelaskan konsep dasar atau basic dari pemrograman yang baik, dan inilah pelajaran pertaman bagi saya di dunia pemrograman.

Dengan nada santai dan rileks si bos mulai menceritakan bagaimana cara memahami sebuah program / software dapat bekerja dengan baik, dan bagaimana cara membuat program yang bisa menjawab kebutuhan user.

Beliau menjelaskan dan akhirnya saya pun menyadari inilah dasar dari sebuah pemrograman bekerja. Disampaikan bahwa programmer yang canggih dan handal adalah programmer yang memahami betul cara kerja dari sebuah program melalui pemahaman databasenya.

Pemahaman tentang database adalah kunci dasar dari semua pemrograman, ketika anda sudah memahami bagamana sebuah database bekerja, maka untuk membuat program / software apapun menjadi mudah dan gampang.

Database lah kunci dasar dari sebuah program, anda paham database maka anda paham membangun software kelas dunia. Database adalah bentuk dari software anda, database adalah pondasi dari software anda, database adalah hasil atau output dari software anda.

Begitu lah beliau menjelaskan sekilas tentang peranan dari Database dalam membangun sebuah software / program yang bagus. Hingga akhirnya kami diminta untuk memahami dengan benar database, hingga menyajikan laporan yang akurat, sementara tampilan laporan bukan lah prioritas utama, hal ini bisa dikerjakan nanti setelah data tersaji dengan cepat dan akurat sesuai kebutuhan manajemen.
Inilah pelajaran awal bagi saya, fundamental mindset untuk membangun sebuah program, yaitu Database (basis data).
Akhirnya saya memulai belajar pemrograman dengan mulai mempelajari database, langkah demi langkah tentang mengelola database saya coba pelajari.

Database yang saya pelajari pertama sekali adalah MySQL, dengan menggunakan software bernama HeidiSQL saya mulai membuat database khusus untuk saya pelajari.

Xampp terinstal dikomputer untuk membuat HeidiSQL bisa bekerja dengan baik. Database yang terdiri dari berbagai table (baris dan kolom) mulai saya kombinasikan.

Saya mulai menghubungkan antar database, saya mencoba memahami konsep CRUD dalam database. Create (C), Read (R), Update (U), Delete (D) merupakan fundamental yang wajib dipahami dalam membangun sebuah program atau software.

1. Create (C) adalah konsep yang harus kita pahami bagaimana membuat atau menciptakan sebuah database.

2. Read (R) adalah bagaimana membaca informasi yang ada di dalam database, mengambil sebagian informasi yang diperlukan sesuai kebutuhan user.

3. Update (U) adalah konsep bagaimana mengupdate sebuah database, melakukan update data sesuah dengan data yang diinginkan oleh user.

4. Delete (D) konsep ini adalah bagaimana menghapus sebuah database.

Yang saya pelajari setelah memahami konsep CRUD merupakan basic pemrograman yang baik, maka selebihnya saya hanya perlu memahami bagaimana menciptakan fungsi untuk menjalankan CRUD tersebut, setelah itu terciptalah program atau software.

Inilah pelajaran awal atau pelajaran pertama saya selama belajar pemrograman secara otodidak, pelajaran ini dapat anda terapkan juga, bagi kalian yang masih baru di dunia pemrograman, mulailah dengan mempelajari konsep Database ini, saya yakin langkah anda akan semakin cepat ketika anda menguasai konsep ini.

Sekedar informasi tambahan, ada banyak jenis - jenis database yang bisa anda pelajari, berikut ini jenis - jenis database yang saat ini paling populer dikalangan para programmer :

1. FireBird adalah disebut juga dengan FirebirdSQL adalah sistem manajemen basis data relasional yang menawarkan fitur-fitur dalam standar ANSI SQL-99 dan SQL-2003. Firebird diarahkan dan dikeluarkan oleh FirebirdSQL Foundation.

2. Postgre SQL adalah sebuah sistem basis data yang disebarluaskan secara bebas menurut Perjanjian lisensi BSD. Peranti lunak ini merupakan salah satu basis data yang paling banyak digunakan saat ini, selain MySQL dan Oracle. PostgreSQL menyediakan fitur yang berguna untuk replikasi basis data.

3. Microsoft Access adalah sebuah program aplikasi basis data komputer relasional yang ditujukan untuk kalangan rumahan dan perusahaan kecil hingga menengah. Aplikasi ini merupakan anggota dari beberapa aplikasi Microsoft Office, selain tentunya Microsoft Word, Microsoft Excel, dan Microsoft PowerPoint.

4. MySQL adalah sebuah perangkat lunak system manajemen basis data SQL (DBMS) yang multithread, dan multi-user. MySQL adalah implementasi dari system manajemen basisdata relasional (RDBMS). ... MySQL AB merupakan perusahaan komersial Swedia yang mensponsori dan yang memiliki MySQL.
5. Microsoft SQL Server adalah sebuah sistem manajemen basis data relasional produk Microsoft. Bahasa kueri utamanya adalah Transact-SQL yang merupakan implementasi dari SQL standar ANSI/ISO yang digunakan oleh Microsoft dan Sybase.

6. Oracle adalah basis data relasional yang terdiri dari kumpulan data dalam suatu sistem manajemen basis data RDBMS. Perusahaan perangkat lunak Oracle memasarkan jenis basis data ini untuk bermacam-macam aplikasi yang bisa berjalan pada banyak jenis dan merk perangkat keras komputer.

Anda bisa memilih platform database yang anda suka, secara konsep semua menyediakan fitur yang hampir sama. Sepanjang anda memahami konsep dasar dari sebuah database maka semua platform di atas bisa anda gunakan.

Oke, semoga tips singkat ini bisa mendorong semangat anda untuk mempelajari pemrograman secara otodidak ya guys, segeralah mulai action jangan ditunda - tunda.

Salam sukses, jangan lupa berikan komentarmu dan bagikan pengalaman mu di kolom komentar.

I write about productivity, habits, decision making, programming, writing and personal finance. What It Takes To Be Free.


EmoticonEmoticon