Bagaimana memilih programming language yang tepat?

Saya ingin tanya hal-hal apa yang jadi penilainan dalam menentukan language mana yang kita butuhkan? Masalahnya saya gak tahu saya butuh apa, cuma tahu mau bikin apa.

Misal saya ingin membuat e-commerce serperti toko-pedia, buka-lapak, ali-baba, amazon.com versi website dan mobile website dulu. Apps nanti setelah berkembang.

Programming language apa yang saya butuhkan? Apa yang cepat loadingnya? Atau fleksibel bisa di convert mengikuti perkembangan jaman teknologi atau bagaimana? Saya baca tidak semua language bisa di convert, kalau salah pilih berarti bisa mubazir.

Terima kasih.

avatar Velo
@Velo

4 Kontribusi 1 Poin

Diperbarui 5 tahun yang lalu

8 Jawaban:

Menurut saya ngga ada belajar yang mubazir, kalo agan udah belajar satu bahasa, nanti lebih mudah untuk pindah ke bahasa lainnya.

Ada banyak pilihan bahasa program, seperti javascript, php, ruby dll. Resource belajar juga sekarang ada banyak, asal agan mau mulai belajar. Masalah kecepatan semua bahasa bisa diimprove nanti

Yang bisa jadi pertimbangan - sumber belajar - bantuan komunitas/forum kalo ada masalah mungkin yang lain ada pertimbangan tambahan

Toko online yang agan sebutkan di atas juga kemungkinan bahasa programnya beda-beda, jadi ngga ada satu bahasa program yg dipake buat semuanya.

Kalau sama sekali belum ada basic bisa mulai dari sekolahkoding.com/track nanti pelan-pelan belajar disana

avatar hilmanski
@hilmanski

2670 Kontribusi 2132 Poin

Dipost 6 tahun yang lalu

... kalau salah pilih berarti bisa mubazir.

justru supaya ga salah pilih itu makanya belajar.

analoginya begini, anggap website yang mau agan kerjakan itu soal matematika. agan perlu alat untuk membantu menyelesaikan soal2 tersebut, anggap aja agan perlu kalkulator. nah kalkulator juga banyak jenisnya, mulai dari kalkulator sederhana sampai kalkulator scientific. mana yang mau agan pilih? jelas ini tergantung soal yang agan kerjakan, kalau matematikanya cuma tambah kurang aja ya pakai kalkulator sederhana juga sudah cukup. tapi kalau soal metematikanya butuh sinus cosinus ya mesti pakai kalkulator scientific. disinilah agan belajar untuk mengenali jenis kalkulator yang 'pas' untuk menyelesaikan soal2 agan. beli kalkulator sederhana untuk soal sinus cosinus jelas mubazir karena ga bisa dipake. demikian juga beli kalkulator scientific untuk kerjakan soal tambah kurang, mubazir di ongkos yang mahal padahal ga terpakai semua.

kalau agan pikir tokopedia hadir dengan bentuk yang sekarang begitu saja tanpa proses agan salah. tokopedia juga dimulai dari website dengan server dan database sederhana bekapasitas kecil, yang memiliki bayak bugs ketika pengunjung membludak. tapi dari sinilah mereka berbenah, mencoba bahasa baru (dari Pearl ke GoLang), mencoba webserver baru (dari apache ke nginx), mencoba database baru (dari Oracle ke PostgreSQL), mengembangkan project sesuai dengan apa yang mereka butuhkan, proses panjang yang terjadi bertahun tahun hingga akhirnya mereka jadi sebesar ini.

jadi benar apa yang dibilang om hilman, ga ada yang mubazir.

avatar rachmatsasongko
@rachmatsasongko

410 Kontribusi 426 Poin

Dipost 6 tahun yang lalu

pertama sih tergantung agan mau bikin apa, kalo memang mau bikin website e-commerce dan basisnya web ada agan bisa belajar bahasa html css javascript dan php untuk dasarnya nanti bisa deh dikembangin ke bahasa yang lain seperti jquery,ruby, dan lain lain...

satuhal yang perlu agan tau, untuk membuild sebuah website (cth toko online tokopedia) gak dibuat dengan satu bahasa gan, jadi untuk kata mubazir itu bukan kata yang tepat, dan karena jaman itu berkembang dan ofcourse mempengaruhi perkembangan bahasa pemrograman, mungkin aja hari ini html belum terlalu diperlukan, tp seiring waktu mungkin suatu saat html bakal diperlukan banget

jadilah orang yang haus dan lapar, jadilah orang yng penasaran akan ilmu, buat kedepannya bisa bermanfaaat insyaallahh :)

avatar nagatap25
@nagatap25

113 Kontribusi 42 Poin

Dipost 6 tahun yang lalu

Thanks atas responnya Pak @hilmanrdn, Pak @rachmatsasongko, dan Pak @nagatap25.

Sepertinya ada bagian salah fokus membahas mubazirnya daripada pertanyaan saya.

Maaf panjang, mohon sabar bacanya :)

Pertanyaan saya adalah apa yang saya butuhkan untuk membuat suatu e-commerce seperti tokopedia? Atau bagaimana saya tahu apa yang saya butuhkan untuk membuat sebuah e-commerce?

Berhubung agan @rachmatsasongko sudah memberikan analogi. Mungkin saya respon seperti ini gan, kalau bahas jenis kalkulator sepertinya kejauhan gan, agan memposisikan saya sudah tau saya butuh kalkulator, sedangkan saat ini saya gak tau saya butuh kalkulator, jadi bagaimana saya tahu saya butuh kalkulator?

Mungkin kalau saya kasih analogi juga, seperti ini: Kalau agan saya kirim ke timur tengah daerah konflik, kemungkinan agan milih kendaraanya tank daripada sedan, mungkin programmer lain "languagenya beda", dia milih helikopter, dan mungkin gak ada yang milih sepatu roda. Untuk bajunya mungkin agan pilih rompi anti peluru daripada kemeja batik.

Kalau agan di kirim ke pantai, mungkin agan pilih celana renang + kacamata renang + surfing board.

Tapi kalau agan saya kirim ke planet X, agan mau bawa apa? Nah buat saya, E-commerce itu adalah planet X karena saya awam, saya gak tau saya butuh apa di planet X.

Apa iya karena gak ada yang namanya mubazir, saya bawa semua tank, helikopter, sepatu roda, baju batik, kaca mata renang ke planet X tersebut?

Lalu yang membuat saya bingung adalah, tiap programmer bisa memberikan rekomendasi yang berbeda padahal yang mau di bikin sama. Untuk front end, sepertinya semua sama, menyebut html, css, javascript. Tapi untuk backend, pada beda.

Untuk orang awam seperti saya, ini membingungkan, apa benar pakai language yang mana saja sama saja, hanya beda efisiensinya, atau memang ada yang lebih baik kalau projectnya sudah jelas.

Kita kan belajar gak harus dari kesalahan kita sendiri, bisa dari kesalahan orang lain.

Nah berhubung agan @rachmatsasongko memberikan contoh yang di pakai tokopedia, apakah saya boleh langsung belajar GoLang, webserver langsung pakai nginx, database belajar pakai postgreSQL, alias saya belajar dari kesalahan tokopedia.

Mungkin biar agan semua bisa melihat bingungnya saya, saya state saja rekomendasi yang saya dapatkan yang berbeda 1 sama lain.

Pertama: Gunakan yang sedang nge-trend karena berarti komunitasnya besar, sourcenya banyak. Mudah bertanya kalau ada code yang salah.

Kedua: Html + css + java script + C# + VB.net --> ASP.net

Ketiga: html + css + java script + JQuery + PHP + mySQL

Keempat: (kesimpulan yang saya tangkap dari Pak @hilmanrdn dan @nagatap25) html + css + java script + PHP karena nanti belajar ke bahasa lain lebih mudah.

Kelima: Specific membahas Go Lang untuk backend, karena yang besar2 lagi pada pindah ke Go Lang, apalagi di kembangin oleh google. Ditambah kalimat "yang lain akan jadi obsolete".

Keenam: Cari yang cross-platform. Mudah atau bisa di convert2.

Mungkin saat ini saya belum tahu bagaimana cara terbaik untuk pergi dari Jakarta ke Surabaya, apa dengan mobil atau dengan pesawat. Tapi tentu saya gak mau kalau saya harus belajar merakit mobil atau merakit pesawat dulu untuk ke Surabaya, padahal ada cara lebih mudah seperti beli tiket pesawatnya atau belajar nyetir atau naik kereta.

Sebagai contoh lagi, pertanyaan saya masih sama dengan yang diatas. Kalau Pak @hilmanrdn mendapat tawaran project untuk membuat tokopedia dari scratch alias dari 0, Bapak akan memakai language apa saja? Kalau Pak @rachmatsasongko memakai language apa? Dan kalau Pak @nagatap25 memakai language apa?

Kalau jawabannya sama semua berarti saya mulai dapat gambarannya. Tapi kalau jawaban Bapak bertiga beda, tentunya membuat saya bertanya2, kenapa yang dipilih itu. Apa pertimbangannya.

Terima kasih, Mohon pencerahannya.

avatar Velo
@Velo

4 Kontribusi 1 Poin

Dipost 6 tahun yang lalu

wow menarik ni bahasannya :D

Pertama saya mau bilang, saya sudah nangkep apa yang dimaksud agan.. jadi makasih atas penjelasan sedetil detilnya :)

kedua untuk pertanyaan

 kalau Pak @nagatap25 memakai language apa?

saya pernah coba buat toko online sederhana dan itu project sekolah saya dan waktu itu saya berperang (alias ngoding) cuma bersenjatakan bahasa: 1.PHP 2.Javascript 3.Css 4.html

cuma itu basicnya, lalu saya kembangin websitenya biar makin cantik, interaktif dan mantep, saya nambahin beberapa bahasa kembangan lainnya 1. Jquery (Framework kembangan dari bahasa javascript) 2. Materialize (Framework kembangan dari css) 3. Sweetalert.js (juga dari Javascript) 4. mysqli (untuk berinteraksi dengan database) 5. apache(ini virtual server sama seperti ngix gitu gak perlu belajar cuma perlu install)

dan itu aja, jadi kesimpulannya kalo misalnya ada yang suru buat tokopedia from scratch gitu untuk frontend saya lebih prefer javascript html dan css dan untuk backendnya saya bakal pakek PHP untuk kerangkanya, Mysqli untuk databasenya dan saya pakek apache untuk virtual machinenya, dan dengan semua bahasa yang diatas tadi, hasilnya akhirnya notbad lah :D

avatar nagatap25
@nagatap25

113 Kontribusi 42 Poin

Dipost 6 tahun yang lalu

Justru kalo menurut saya analogi agan yg kejauhan. Tapi okelah anggap aja pakai analogi agan. Kalau orang mau ke timur tengah daerah konflik tujuannya untuk apa? Perang kah? Ya jelas bawa tank dan baju anti peluru. Kalau ke pantai tujuannya mau apa? Tamasyakah? Atau snorkling? Bawa baju pantai atau baju selam.

Nah agan mau ke planet X mau apa? Kalo ga ngerti tujuannya mau ngapain ya jelas ga bisa prepare apa yg mau dibawa :)

Semua language ada kelebihan dan kekurangan masing2. Mana yg lebih baik itu relative, mending agan pakai mana yg enjoy buat agan. Nah supaya tahu mana yg enjoy ya harus dicoba.

Website yg bagus bukan tergantung dari language apa yg dipakai, tapi gimana kita menggunakannya. Sama seperti masakan, dengan bumbu yang sama 1 chef belum tentu bisa bikin masakan yg sama enaknya dengan chef lain.

Yg terakhir, daripada agan buang waktu untuk pilih bahasa apa yg dipakai mending langsung tentuin satu language dan action. Karena percaya atau ngga yg namanya web development itu ga pernah berhenti, karena teknologi terus berkembang.

avatar rachmatsasongko
@rachmatsasongko

410 Kontribusi 426 Poin

Dipost 6 tahun yang lalu

Terima kasih responnya Pak @rachmatsasongko,

Begini Pak, kalau tujuan saya tahu, saya mau bikin e-commerce seperti tokopedia. Tujuan ke planet X apa? Saya tahu, saya mau eksplorasi, mengumpulkan sample, dan meneliti. Saya tahu saya butuh tempat untuk menyimpan sample, saya bawa tabung dan kotak penyimpanan. Tapi menjawab tujuan belum menjawab kebutuhannya apa Pak, karena masih ada hal2 lain yang tidak tertulis.

Apakah di planet X ada alien berbahaya sehingga saya perlu bawa senjata? Atau suhunya sangat dingin sehingga saya perlu bawa jaket?

Hal2 tersebut hanya bisa dijawab oleh orang yang sudah berpengalaman di bidangnya, pemilik E-commerce atau/dan programmer yang membuat E-commerce. Alias orang2 yang sudah pernah ke planet X. Makanya saya tanya saya butuh apa.

Kalau Pak @rachmatsasongko menyarankan saya untuk coba semua language, terima kasih sarannya Pak, tapi apa itu gak makan waktu terlalu banyak Pak?

Cara blajar saya mungkin lebih kearah meminta pendapat programmer, bagusnya langsung dapat info butuh apa saja, servernya minimal kapasitas berapa, atau seperti Pak @nagatap25 yang sudah me-list, kalau beliau pakai apa saja. Dari cara seperti ini saya bisa dapat gambaran.

Saya setuju dari bumbu, tiap chef bisa bikin makanan berbeda. Alias dari 1 language, tiap programmer bisa bikin project berbeda atau project sama tapi tampilannya berbeda. Tapi pertanyaan saya bukan itu Pak, pertanyaannya adalah, saya tau saya mau bikin nasi goreng, bagaimana saya tau bumbu yang tepat yang mana? Atau bumbu apa yang saya butuhkan?

Karena kalau dari statement Bapak, saya tangkapnya seperti ini, semua project bisa dikerjakan dengan language apapun, yang berbeda adalah si programmernya itu sendiri. Alias kalau mau bikin nasi goreng, bikinnya bisa dari bakmi, lalu di cincang kecil2 seukuran nasi, toh sama2 karbohidrat, jadi lah nasi goreng dari bakmi (languagenya beda). Nah apakah ada language2 tertentu yang cocoknya atau ada limitasi terhadap E-Commerce?

Saya mencari info2 yang tidak tertulis Pak. Saat ini saya masih mengerjakan frontend. Apa yang saya tanyakan adalah untuk persiapan saya nanti di backend, saya tanyakan dari sekarang sehingga pada saatnya, mungkin saya sudah punya jawaban pilih backend yang mana. Jadi saya gak buang waktu. Saya berusaha bikin plan ahead.

Ada 2 link yang menurut saya singkat dan bagus. Mereka mengcompare/menunjukkan keunggulan tiap language. Tapi balik ke permasalahannya, saya gak tau saya butuh fitur/keunggulan itu atau enggak.

https://www.codementor.io/codementorteam/beginner-programming-language-job-salary-community-7s26wmbm6 https://dzone.com/articles/top-10-programming-languages-in-2017

Terima kasih.

avatar Velo
@Velo

4 Kontribusi 1 Poin

Dipost 6 tahun yang lalu

Saya jadi ingin tahu hasil dari pencarian mas bro @Velo, akhirnya bahasa yang digunakan apa ya?

avatar aang94
@aang94

16 Kontribusi 5 Poin

Dipost 5 tahun yang lalu

Login untuk ikut Jawaban