Apakah kita harus menguasai semua bahasa pemrograman untuk menjadi programmer

Ada banyak bahasa pemrograman yang ada tetapi kita tidak tahu apakah kita harus menguasai semua atau bagaimana ?

Untuk menjawab pertanyaan apakah kita harus menguasai semua bahasa pemrograman kita harus tahu terlebih dahulu apa itu bahasa pemrograman. Bahasa pemrograman adalah kumpulan listing kode yang merupakan sebuah intruksi / perintah-perintah yang hanya bisa dimengerti oleh komputer dimana instruksi tersebut ditulis oleh programmer.

Jadi untuk menjadi seorang programmer menurut saya perlu mengusai beberapa bahasa pemrogram tetapi tidak semua.

Memilih satu bahasa pemrograman saja untuk di pelajari tetapi beberapa hal yang harus diperhatikan sebelum mempelajari bahasa pemrograman tersebut yaitu :

  1. Cari tahu tentang kemajuan bahasa pemrograman yang ingin kamu kuasai. Maksudnya bahasa pemrograman apa sekarang yang sangat diminati atau dibilang paling populer digunakan.

  2. Pilih dan pelajari mulai dari satu bahasa pemrograman dulu, kalau bisa dua atau lebih boleh. Semua tergantung pada pola kamu berpikir dalam mengetahui dan menguasai aturan sintaks, instruksi yang tersedia, dan cara pengoperasian kompilator banyak bahasa pemrograman kamu pelajari dalam sekejap mata.

  3. Kemudian kenali kelebihan dan kelemahan dalam bahasa pemrograman yang akan dikuasai. Dengan mengenal hal tersebut, kamu akan memahami tingkat kemudahan dan kesulitan dalam menggunakan bahasa pemrograman.

  4. Dengan sudah memutuskan memilih satu bahasa pemrograman, mantapkan dirimu dengan bahasa program pilihan kamu. Pelajari dan kembangkan dirimu dengan membuat suatu aplikasi sendiri. Dan jadikan bahasa pemrograman tersebut akan digunakan dalam menyelesaikan skripsi kamu, bahkan bahasa pemrograman ini akan membuka peluang bagi kamu dalam dunia kerja

Setelah mendapatkan satu bahasa pemrograman atau lebih untuk kamu pelajari sebaiknya kamu fokus agar jika diberi satu permasalahan kamu dengan cepat menyelesaikan algoritma dari permasalahan tersebut.

Berikut ini adalah diagram sederhana yang dapat menunjukkan kenapa kita harus fokus pada bahasa pemrograman tertentu

  1. Anda tetap dalam kondisi labil hingga banyak sekali bahasa pemrograman yang Anda coba tapi tidak menguasai sampai hal dasar

  2. Anda mulai mencoba fokus pada beberapa bahasa pemrograman saja sampai akhirnya Anda membuat sebuah karya dan produk

  3. Anda menguasai satu saja tapi akhirnya ketika lulus sudah dapat dianggap sebagai orang yang piawai dalam bahasa pemrograman tersebut

Jadi dapat saya simpulkan bahwa untuk menjadi seorang programmer tidak harus mengetahui semua jenis bahasa pemrograman tetapi hanya menguasai beberapa jeni bahasa pemrograman saja sudah cukup karena ketika seseorang sudah mengerti dan bisa menggunakan suatu bahasa pemrograman tertentu hal ini bisanya membuat orang tersebut semakin meningkatkan kemampuannya dalam mempelajari bahasa pemrograman tersebut dan bisanya orang yang telah memahami juga bisa lebih mengerti mengenai kakateristik dari suatu bahasa pemrograman

Sumber

https://www.codepolitan.com/mencoba-banyak-bahasa-pemrograman-atau-menguasai-beberapa-saja
https://pdsitompul.wordpress.com/2015/12/31/bingung-harus-kuasai-bahasa-program-apa/

Dunia IT (information technology) merupakan sebuah ranah ilmu yang terlihat semacam satu kesatuan bagi orang awam namun kenyataannya terdapat banyak sekali cabang ilmu yang tidak bisa kita ambil semuanya dalam waktu yang sebentar. Sebagai contoh kecil, di dunia IT sendiri terdapat fokus ilmu pada bidang teori komputasi, jaringan komputer, algoritma dan pemrograman, sistem informasi, kecerdasan buatan, dan masih banyak lagi bidang ilmu di dunia IT yang bahkan dalam kuliah pun hanya dibahas kulitnya saja. Bagi seseorang yang baru mengenal dunia IT tentu punya ambisi untuk ingin menguasai segalanya.

Sebagai contoh kasus dalam konteks seseorang ingin menguasai bahasa pemrograman. Tentu bahasa pemrograman merupakan salah satu hal yang menarik bagi seseorang yang ingin menguasai dunia IT. Kenapa? ada banyak sekali bahasa pemrograman yang cukup membuat seseorang ingin menguasainya. Dari segi sistem operasi ada yang hanya tersedia untuk Windows (C#, Visual Basic), ada yang hanya tersedia untuk OSX (Swift, Objective-C), ada yang hanya tersedia untuk Linux (BASH), dan ada juga yang tersedia untuk semuanya (Python, PHP, Javascript, C, C++). Dari segi perangkat ada yang hanya disediakan untuk komputer desktop, perangkat mobile, perangkat IoT, dan embedded machine. Dari sedikit aspek yang telah disebutkan, waktu yang dibutuhkan untuk semuanya tidak akan pernah cukup.

Berkut beberapa hal yang bisa anda simak untuk menjadi programmer:

  1. Kuasai saja beberapa dan fokus
    Di kehidupan nyata mungkin ada seorang mahasiswa IT yang mencoba 10 bahasa pemrograman, ada yang mencoba menguasai 3 bahasa pemrograman untuk digunakan mengerjakan tugas kuliah yang diberikan dosennya, ada yang ingin memperdalam 1 bahasa pemrograman untuk hobi dan proyeknya.
    Seorang mahasiswa yang fokus pada 3 bahasa pemrograman misalnya. Dia menggunakan 2 bahasa pemrograman untuk kuliah dan proyek pribadinya, satu lagi mungkin untuk hobinya. Jadi waktu yang diinvestasikan seorang penguasa 3 bahasa pemrograman tercurahkan untuk fokus pada pengembangan produk yang dibuatnya. Belum lagi timeframe yang dimiliki seorang mahasiswa hanya 4 ~ 7 tahun.

    Ketika lulus apakah perusahaan akan mencari seseorang yang menguasai banyak bahasa pemrograman namun tidak mendalam? atau seorang fresh graduate yang menguasai sedikit bahasa pemrograman namun lebih fokus dan menguasai satu saja bahasa pemrograman sampai topik spesifik? Akan semakin lebih baik apabila memiliki sebuah karya dalam bentuk aplikasi dengan menggunakan bahasa pemrograman yang dipilihnya.

    Jadi sekarang Anda dapat memilih apakah ingin menguasai 10 bahasa pemrograman hanya kulitnya saja? atau menguasai sedikit atau satu bahasa pemrograman namun punya kompetensi dan kemampuan yang mendalam hingga ke bagian inti dari bahasa pemrograman tersebut**. Pilihan tersebut akan selalu ada di tangan Anda.

  2. Pelajari hal lain diwaktu yang tepat
    Misal Anda hanya ingin fokus pada PHP dan Javascript namun harus menguasai Visual Basic untuk memenuhi tugas kuliah desktop programming? atau harus menggunakan Matlab hanya untuk membuat skrip perhitungan matriks dan aljabar linier? tidak masalah, pelajari saja Visual Basic dan Matlab tersebut sampai tugas Anda benar - benar terpenuhi untuk mata kuliah tersebut. Setelah beres perkuliahan Anda dapat meninggalkan kedua bahasa pemrograman tersebut apabila memang tidak benar - benar dibutuhkan dan bukan menjadi fokus utama untuk kemampuan programming yang akan Anda kuasai.

    Jadi menguasai hal baru diluar fokus yang Anda kejar, dapat Anda lakukan hanya di waktu yang tepat. Terlebih waktu yang Anda miliki pasti terbatas bila harus semua Anda coba dalam satu waktu.

  3. Jangan Merasa Malu Karena Tidak Bisa Menguasai yang Orang Lain Kuasai
    Ketika Anda melihat seorang teman yang piawai membuat game dengan menggunakan ActionScript 3.0, tentu Anda akan terpukau melihatnya bahkan sedikit tergiur untuk mencoba membuat game tersebut. Bila Anda memang ingin fokus di dunia game development, hal tersebut bisa menjadi sebuah jalan bagi karir Anda. Tapi bila hanya untuk hobi? itu juga tidak masalah, namun Anda tidak perlu merasa malu bila teman Anda dapat menguasai suatu hal yang tidak dapat Anda kuasai.

    Kadang ketertarikan untuk mengikuti seseorang tersebut terjadi karena kurangnya kepercayaan diri yang kita miliki**. Ada kalanya apa yang kita pelajari terasa kurang menarik untuk saat ini ataupun di masa depan. Misal bila Anda adalah seorang web programmer bila hanya mencoba Javascript selama satu tahun, mungkin yang Anda kuasai baru dasarnya saja. Tapi bila Anda sudah terlibat dengan proyek dan konsisten mencoba Javascript selama lebih dari 1 ~ 2 tahun, bukan hal asing bila Anda akan sudah menguasai Ajax, Validasi Form, membuat komponen web sendiri, dan mungkin Anda membuat library Javascript untuk Anda sendiri.

    Jadi ketika Anda sedikit merasa malu bahwa Anda hanya bisa menguasai satu bahasa pemrograman, atau hanya beberapa saja. Tidak perlu ragu. Kuasailah bahasa pemrograman tersebut sampai ke akar - akarnya dan bidang khususnya. Sehingga setelah waktu yang Anda lalui cukup lama, Anda dapat menjadi ahli untuk bahasa pemrograman tersebut beserta bidang yang Anda geluti.


Bahasa Pemrograman yang Banyak di Pakai

Meskipun bahasa pemrograman yang digunakan bisa berbebeda-beda, saya mencoba merangkum daftar bahasa pemrograman yang umumnya dipelajari. Berikut daftarnya:

  • Pascal, C atau C++ untuk belajar dasar-dasar pemrograman (algoritma).
  • Java untuk belajar bahasa pemrograman berbasis object.
  • HTML, CSS, PHP, dan JavaScript untuk pemrograman web.
  • SQL untuk pemrograman database (MySQL/MariaDB).
  • Visual Basic atau Delphi untuk pemrograman desktop.

Seluruh bahasa pemrograman ini cukup populer dan bisa digunakan untuk membuat aplikasi komersial (yang bisa dijual). Selain itu, untuk mata kuliah khusus ada beberapa bahasa pemrograman yang cukup jarang terdengar, tapi dibutuhkan selama kuliah:

  • Prolog untuk belajar Kecerdasan Buatan (Artificial Intelegent).
  • Matlab untuk belajar Grafika Komputer / Komputasi Numerik.

Kenapa Harus Menguasai Banyak Bahasa Pemrograman?

Sebenarnya kita tidak perlu menguasai bahasa pemrograman yang banyak. Karena sangat susah untuk “benar benar menguasai” bahasa pemrograman.

Lebih baik kuasai 2 atau 3 bahasa pemrogaman tetapi bisa mengerti tuntas sampai ke akar-akarnya, jangan hanya kulitnya saja karena jika kulitnya saja, orang yang baru belajar bahasa pemrograman pun bisa melakukan hal itu. Hampir semua perusahaan mencari seorang programmer yang mampu menguasai bahasa pemrograman hingga se detail mungkin walaupun dia hanya menguasai 2 atau 3 bahasa pemrograman.

Namun, bahasa pemrograman yang kita gunakan berpengaruh dalam cara kita menyelesaikan masalah. Kalau kita hanya mengerti orientasi objek, maka segala permasalahan (termasuk yang cocok diselesaikan dengan imparatif) akan kita selesaikan dengan paradigma OO. Tidak ideal pastinya.

Tapi menguasai banyak bahasa pemrograman juga terlalu makan banyak waktu dan tidak praktikal. Perlu bertahun-tahun hanya untuk benar-benar mengetahui sebuah bahasa pemrograman. Karena hal ini juga saya tidak setuju dengan orang yang berkata bahwa kita harus menguasai banyak bahasa pemrograman atau satu bahasa pemrograman saja sudah cukup. Jelas kita perlu tahu banyak bahasa, minimal satu bahasa untuk setiap paradigma, tetapi akan sangat tidak praktis (atau bahkan tidak mungkin sama sekali) untuk menguasai banyak bahasa pemrograman.

Yang kita perlukan dari mempelajari berbagai paradigma adalah sudut pandang baru untuk menyelesaikan masalah. Ingat, pada dasarnya programmer itu dibayar untuk menyelesaikan masalah. Dan sebuah solusi yang baik adalah solusi yang mempertimbangkan berbagai sudut pandang untuk menyelesaikan sebuah masalah. Sebagai ilustrasi, apakah kamu berani berobat ke seorang dokter yang melakukan operasi untuk mengobati semua penyakit (termasuk masuk angin)? Apakah kamu mau menjadi seorang dokter (atau programmer) yang seperti itu? I don’t, obviously.

source:

Semua bergantung pada kebutuhan Anda.
Depositphotos_27031037_m-2015

Berikut ada 9 alasan mengapa Anda setidaknya mengetahui bahasa pemrograman lainnya.

  1. Anda memiliki banyak cara untuk mengatasi masalah yang sama. Mengetahui bahasa yang berbeda memberi Anda lebih banyak pilihan.
  2. Anda menjadi lebih dibutuhkan, sehingga Anda memiliki lebih banyak kesempatan kerja. Belajar bahasa kedua terkadang bisa melipatgandakan jumlah posisi yang bisa Anda isi. Itu tergantung bahasa mana yang Anda pelajari. Disisi lain, Anda menjadi lebih berkualitas untuk lebih banyak kesempatan, yang meningkatkan pencarian pekerjaan Anda.
  3. Ini menunjukkan bahwa Anda dapat mempelajari bahasa baru. Atasan Anda akan mengerti bahwa Anda tidak kaku atau tradisional.
  4. Ini bisa menyenangkan. Belajar sesuatu yang baru membuat otak Anda bekerja. Ini akan membantu Anda tumbuh dan berkembang di area baru.
  5. Anda tetap mengikuti tren teknologi. Anda mendapatkan ide dari mana industri ini dipimpin, dan dapat memanfaatkan tren yang ada. Keterampilan Anda tidak menjadi ketinggalan jaman.
  6. Ini mengingatkan Anda mengapa Anda menyukai bahasa “utama” Anda, atau bagaimana keadaan bisa menjadi lebih baik. Terkadang Anda tidak tahu seberapa baik Anda menguasainya dalam bahasa utama sampai Anda mencoba sesuatu yang baru. Anda akan menghargai konsep bahasa favorit Anda. Pada saat yang sama, bahasa baru mungkin memiliki beberapa fitur yang mengejutkan Anda.
  7. Anda menjadi programmer komputer yang lebih baik. Mempelajari bahasa baru membantu Anda meningkatkan keterampilan yang dapat ditransfer antara semua bahasa, misalnya, merancang dan membangun algoritme atau menangani struktur data yang berbeda.
  8. Anda bisa menggunakan alat terbaik untuk pekerjaan lain. Tidak ada bahasa yang sempurna; beberapa bahasa lebih baik daripada yang lain pada hal-hal tertentu. Mengetahui lebih dari satu bahasa memberi Anda pilihan untuk memilih alat terbaik untuk pekerjaan itu.
  9. Ini menunjukkan bahwa Anda dapat belajar dengan cepat. Tidak ada yang dapat menunjukkan bahwa Anda dapat belajar dengan cepat seperti mengetahui bahasa kedua.

Belajar lebih dari satu bahasa pemrograman bergantung dengan tujuan Anda.

Apakah Anda ingin memulai proyek sampingan atau bisnis baru? Anda mungkin hanya perlu tahu satu bahasa.

Apakah Anda ingin mengubah industri atau mengikuti tren teknologi? Anda mungkin perlu tahu lebih dari satu bahasa.

Apakah Anda ingin bekerja dalam lingkungan perusahaan? Anda mungkin hanya perlu tahu satu bahasa.

Apakah Anda ingin mengerjakan proyek-proyek mutakhir? Anda mungkin perlu tahu lebih dari satu bahasa karena tren selalu berubah.

source : https://simpleprogrammer.com

Jadi orang sering berbicara tentang “Mengetahui Bahasa Komputer” saat berhubungan dengan pemrograman.

Tapi sering ketika mereka mengatakan bahwa mereka tahu “Ruby”, yang sebenarnya mereka maksud adalah menulis Ruby on Rails. Itu karena ketika sampai pada pemrograman komputer kita cenderung mencampuradukkan hal yang berbeda bersama-sama:

  1. Bahasa Komputer
  2. API dan Kerangka Aplikasi
  3. Algoritma dan Struktur Data.

Mengetahui Bahasa Komputer, secara teknis berarti memahami semantik dan sintaks dasar yang digunakan bahasa tersebut. Beberapa Bahasa Komputer menggunakan paradigma yang berbeda untuk mengatur logika (misalnya bahasa Berorientasi Objek vs Fungsional vs. bahasa imperatif) dll. Dan ada beberapa kebenaran bahwa kebanyakan bahasa komputer saling meminjam begitu berat sehingga tidak memerlukan pemrogram yang paling terampil untuk "beralih "bahasa dengan cepat.

Beberapa bahasa mempermudah penerapan algoritme tertentu dengan mudah. Setiap bahasa telah membuat desain yang mungkin membuat bahasa menjadi lebih sederhana dan mudah dimengerti, namun dengan biaya berjalan lebih lambat.
Lebih mudah, karena kebanyakan bahasa komputer memiliki seperangkat konsep yang umum.

Namun kebanyakan bahasa tidak ada sendiri. Agar efektif dalam bahasa apa pun yang Anda gunakan, Anda biasanya ingin menggunakan banyak EXISTING CODE yang bagus. Kode yang bekerja dengan baik, dan sudah teruji dan dapat diandalkan dan Anda hanya fokus pada masalah yang sedang Anda kerjakan. Jadi, kebanyakan bahasa komputer paling modern hadir dengan beberapa panggilan “standar API”, dan programmer suka menciptakan APIS dan Framework baru untuk memecahkan masalah baru. Jadi ketika kita berbicara tentang “bahasa”, kita sering mengaburkan batas antara bahasa dan Kerangka umum dan APIS populer yang biasanya digunakan orang, saat menulis dalam bahasa-bahasa ini.

Ex:

  1. Ruby adalah bahasa. RubyOnRails sering menjadi kerangka pilihan aplikasi Ruby.
  2. C ++ adalah bahasa, “Standard C ++ Library” adalah API.
  3. Objective-C / Swift adalah bahasa pemrograman, UIKit adalah Kerangka iOS.

Dan daftarnya terus berlanjut. Tapi kita orang malas dan kebanyakan orang secara implisit berasumsi bahwa jika Anda menulis dalam bahasa itu, Anda mungkin juga menggunakan kerangka kerja khusus bahasa tersebut. Dan seringkali kerangka aplikasi tersebut mengenalkan cara yang sangat spesifik untuk menyelesaikan sesuatu. Yang bagus untuk beberapa masalah, tapi tidak begitu bagus untuk orang lain.

Tapi apa yang sering menjadi “landasan bersama” nyata untuk semua bahasa, memiliki landasan mendasar dalam Algoritma dan Struktur Data. Ada seperangkat solusi komputer klasik yang telah terbukti bisa berjalan dengan sangat baik untuk serangkaian masalah komputer “klasik”. Dan apa programer REAL JOB memastikan bahwa mereka telah memilih algoritma terbaik dan paling optimal yang dapat memecahkan masalah. Memilih struktur data atau algoritma yang salah untuk masalah komputer Anda biasanya jauh lebih buruk daripada menggunakan satu bahasa ke bahasa lainnya.
Algoritma komputer terbaik dan tercerdas untuk memecahkan masalah yang tidak kita ketahui bisa kita lakukan (misalnya Speech Recognition, Image Recognition, dll.). Seorang insinyur perangkat lunak yang baik memiliki seperangkat algoritma ini dengan sangat baik, dan secara intuitif akan tahu bagaimana menggunakannya.

Ada banyak coders “otodidak” di luar sana, dan belajar menulis aplikasi yang cukup bagus untuk serangkaian masalah kecil. Anda bisa membangun banyak hal keren melalui imitasi, mashup, trial and error, dan intuisi ini. Ada banyak Pengembang Web dan Aplikasi yang sangat sukses yang ada dalam kategori ini. (Dan saya bekerja dengan beberapa yang bagus).

Tapi pemahaman yang kuat dan mendalam tentang Algoritma dan Struktur Data akan memberi Anda kemampuan untuk menerapkan kerangka kerja dan API dengan cepat dan mudah. Bahasa dan Kerangka hanyalah alatnya. Algoritma dan struktur data adalah musik itu sendiri.

Misalnya: Anda bisa belajar bermain gitar. Anda bisa mendengarkan dan bekerja keras dan berlatih. Dan setelah beberapa lama Anda bisa meniru bintang rock favorit Anda dan bahkan menulis beberapa lagu dan mengembangkan gaya dan bakat Anda sendiri. Dan jadilah sangat bagus. Dan berhasil.

Atau Anda bisa mempelajari dasar-dasar Musik yang dalam. Rhythm and Pitch and Harmony. Dan Anda melatih telinga dan pikiran Anda untuk menguasai suaranya sendiri. Begitu Anda memiliki keterampilan itu, Anda bisa mengambil instrumen apa pun
Anda inginkan, dan tidak akan lama sebelum Anda bisa menciptakan musik hebat dengannya.

Sumber : https://www.quora.com/Why-does-a-programmer-have-to-learn-multiple-languages-Can-the-programmer-learn-one-language-thoroughly-and-just-understand-the-syntax-of-the-other-languages-to-start-coding/

Bahasa pemrograman tidak hanya ada satu macam akan tetapi beberapa macam dan pada masing-masing bahasa memiliki kegunaannya sendiri. Pada saat anda bekerja di sebuah perusahaan mungkin hanya menggunakan satu atau dua bahasa pemrograman saja, namun bukan berarti anda harus acuh dengan bahasa pemrograman yang lainnya. Anda harus mengetahui bahasa pemrograman selain bahasa pemrograman yang anda kuasai atau anda butuhkan, bahkan kalau memahaminya itu sangat lebih baik. Jadi, apabila sewaktu-waktu anda disuruh membuat project yang baru namun project tersebut hanya bisa menggunakan bahasa pemrograman yang lain maka anda tidak akan kaget dan takut.

Apabila anda ingin mengusai bahasa pemrograman, anda tidak akan langsung mengusai dalam sekejap tetapi bisa sampai hitungan tahun. Anda bisa mempelajari bahasa pemrograman saat waktu anda senggang dan anda bisa datang ke perpustakaan atau membeli buku atau membaca online yang berisi tentang bahasa pemrograman yang ingin anda kuasai, dan ubahlah mindset anda bahwa mengusai semua bahasa pemrograman itu sangat menyenangkan dan seperti sebuah tantangan tersendiri. Namun jangan hanya membacanya saja tetapi sambil mengaplikasikannya juga agar anda sangat paham dengan bahasa yang anda pelajari.

Sebenarnya untuk menguasai bahasa pemrograman, anda hanya perlu menjalankan logika anda untuk membuat algoritmanya. Jika anda tidak menjalankan logika anda, anda akan sulit untuk membuat algoritma pada setiap bahasa pemrograman maka anda akan sulit untuk menguasainya. Sebaiknya asah lah logika anda juga.