Apakah dokumentasi yang ditulis dengan baik merupakan alasan yang cukup baik untuk belajar bahasa pemrograman? [Tutup]

14

Saya belajar Python saat ini yang bukan bagian dari kurikulum kuliah saya. Saya ditanya dalam sebuah wawancara mengapa saya memilih Python dan saya menjawab bahwa itu mudah dipelajari dan dokumentasinya ditulis dengan sangat baik. Pewawancara tidak menjawab apakah itu alasan yang cukup baik. Dia terlihat yakin tetapi saya tidak yakin.

Apakah dokumentasi yang ditulis dengan baik bersama dengan kemudahan belajar merupakan alasan yang cukup baik untuk memilih bahasa scripting? Atau haruskah saya menjelaskan lebih lanjut tentang ketersediaan pustaka Python dan basis pengguna yang lebih besar dari Python?

Hanya sebuah catatan. Python tidak diperlukan untuk pekerjaan itu. Perusahaan ini bekerja pada Ruby-on-rails. Python berada di resume saya dan saya pikir pewawancara hanya ingin tahu pertimbangan apa yang saya buat sebagai lebih segar saat memilih bahasa pemrograman.

Aseem Bansal
sumber
12
mungkin tidak dalam wawancara, tetapi saya akan mempertanyakan apakah Anda perlu alasan untuk belajar sesuatu selain yang Anda inginkan.
jk.
2
@ jk saya baru tahu C sejauh ini. Saya bukan ahli besar tapi saya tahu sintaksnya, bisa mengimplementasikan struktur data dan semacamnya. Saya membutuhkan bahasa di mana saya dapat mengimplementasikan ide lebih cepat. Itulah alasan saya memilih bahasa scripting. Dokumentasi, kemudahan penggunaan dan basis pengguna adalah keuntungan utama ketika saya membandingkannya dengan Perl dan Tcl. Tidak semua tiga diterapkan pada kedua bahasa tetapi sejauh yang saya temukan menggunakan google Python lebih baik daripada ini di salah satu dari ini. Jadi saya memilih Python. Belajar karena yang saya inginkan adalah alasan yang cukup baik tetapi saya tidak tertarik dengan Python. Ide-ide adalah hal utama.
Aseem Bansal
1
[Melakukan sesuatu karena mudah] tidak hampir sama mengesankannya dengan [melakukan sesuatu karena sulit]. Kecuali itu sebenarnya sulit dan Anda hanya pamer. ;)
TimG
5
Karena Anda baru mengenal Python, saya sarankan Anda mempertimbangkan berhenti merujuknya dan menganggapnya sebagai "bahasa scripting". Itu bahasa . Orang-orang menulis situs web, aplikasi desktop, skrip kecil, perpustakaan besar, pengontrol tertanam, dll. Menyebutnya "bahasa scripting" tampaknya tidak pantas bagi saya.
Chelonian
@Chelonian Point mencatat. Terima kasih telah menunjukkannya.
Aseem Bansal

Jawaban:

20

Tidak, dokumentasi yang ditulis dengan baik bukan alasan yang cukup baik untuk belajar bahasa.

Dokumentasi yang ditulis dengan buruk adalah alasan yang bagus untuk tidak mempelajarinya.


Ada empat alasan untuk belajar bahasa:

  1. Karena itu mungkin menjadi alat yang berguna dalam karier Anda

    Bahasa adalah alat. Satu menggunakan bahasa daripada yang lain karena manfaatnya dalam konteks yang diberikan. Fakta bahwa suatu bahasa memiliki dokumentasi berkualitas tinggi tidak menjadikannya alat yang lebih baik, atau hanya secara marginal¹.

    Pilihan bahasa lebih didasarkan pada pengalaman sebelumnya, paradigma (contoh: pemrograman fungsional untuk Haskell), pendekatan (contoh: mode asinkron penuh untuk JavaScript sebagai bahasa pemrograman sisi-server dengan Node.js), interoperabilitas ( contoh: kompatibilitas dengan hampir setiap sistem operasi untuk Java), dll.

    Mampu menggunakan alat dalam kehidupan sehari-hari Anda adalah salah satu alasan untuk belajar bahasa.

  2. Karena itu memperluas budaya dan pengetahuan Anda

    Alasan lain untuk belajar bahasa adalah untuk mempelajari konsep baru, paradigma dan cara menulis kode yang elegan (contoh: Haskell). Di sini sekali lagi, dokumentasi membantu, tetapi bukan satu-satunya alasan untuk belajar bahasa.

  3. Karena itu diperlukan upaya minimal untuk mempelajarinya

    Alasan lain untuk belajar bahasa adalah karena itu mudah dipelajari (contoh: PHP). Sekali lagi, dokumentasi banyak berkontribusi, tetapi bahasa itu sendiri masih lebih penting. Selain itu, saya akan menghindari memberi tahu selama wawancara bahwa saya belajar bahasa hanya karena itu mudah dipelajari.

  4. Karena itu menyenangkan.

    Alasan terakhir untuk belajar bahasa adalah karena itu menarik untuk belajar bahasa yang dirancang dengan baik (contoh: Haskell, Ruby) atau bahasa untuk Geeks (contoh: Brainfuck).

Dalam kasus Python, yang dapat Anda jawab adalah:

  1. Itu adalah bahasa yang dinamis. Bahasa yang dinamis memudahkan pembuatan prototipe dan berkembang lebih cepat ketika keadaan membuat tipe yang kuat tidak penting.

  2. Elegan. Mungkin tidak seanggun, katakanlah, Haskell, tetapi masih perbandingan dengan bahasa berorientasi web arus utama seperti PHP mudah dilakukan.

  3. Penggunaan indentasi yang bermakna menarik, mengingat bahwa banyak bahasa umum menjadikan indentasi hanya sebagai beban yang seharusnya dikelola oleh IDE sejak awal. Kompiler dan juru bahasa Haskell juga bergantung pada indentasi.

  4. Python memiliki cara yang elegan untuk bekerja dengan daftar. Pemahaman daftar dan ekspresi generator adalah konsep yang menarik bagi seseorang yang belum pernah menggunakan pemrograman fungsional sebelumnya.

  5. Django membuatnya sangat mudah untuk membuat aplikasi web dengan cepat sambil menjaga kode tetap bersih. Ini adalah manfaat besar dibandingkan banyak bahasa pemrograman lainnya.

  6. Ini cukup cepat dan cukup kuat untuk aplikasi web skala besar. Misalnya, Dropbox ditulis dengan Python. YouTube sangat bergantung pada Python. Reddit, jika saya ingat dengan baik, juga bergantung pada Python.


Documentation Dokumentasi yang ditulis dengan baik masih membantu melakukan berbagai hal dengan cara yang benar dan cepat.

Arseni Mourzenko
sumber
Saya hanya tahu C. Saya belajar Python karena saya ingin mengimplementasikan ide lebih cepat. Itu mengesampingkan poin pertama. Saya jadi tahu paradigma fungsional hanya melalui Python sehingga poin ke-2 juga keluar. Kemudian dalam situasi ini saya dibiarkan dengan poin ke-3 saja. Apa yang seharusnya menjadi penekanan jawaban saya? Info lebih lanjut dalam komentar ini untuk pertanyaan
Aseem Bansal
@AseemBansal: Saya mengedit pertanyaan saya untuk menunjukkan apa yang bisa Anda jawab. Juga, fakta bahwa Anda "mengetahui paradigma fungsional hanya melalui Python" adalah persis apa yang saya bicarakan: Anda belajar Python, dan itu membantu Anda menemukan FP, yang sebenarnya merupakan tujuan belajar bahasa.
Arseni Mourzenko
1
Anda dapat menggunakan Dropbox sebagai contoh alih-alih youtube dan Reddit. Itu dibuat dengan Python sepenuhnya. Jika saya ingat benar Guido membantu Dropbox membangun produk mereka dan dia baru saja bergabung dengan mereka lagi.
Aseem Bansal
Ada alasan keempat yang saya pikir Anda lewatkan: Karena bahasanya terlihat menyenangkan!
martiert
Agak di garis martiert, tapi bagaimana dengan kesenangan? Jika Anda ingin mempelajari bahasa tertentu, itu lebih dari alasan yang cukup baik. Semuanya tidak harus dimotivasi oleh kemajuan karier dan strategi untuk memaksimalkan keterampilan Anda.
Gilles
7

Jika Anda seperti saya, Anda tidak menggunakan palu hanya karena memiliki pegangan yang nyaman. Anda menggunakan palu karena Anda perlu untuk mendapatkan sesuatu dilakukan dipalu.

Jadi, tidak ada, sementara dokumentasi yang baik tentu membantu, itu bukan alasan sendiri untuk belajar bahasa pemrograman.

stakx
sumber
1
Saya menambahkan hal-hal yang ingin saya lakukan dan lakukan menggunakan Python tapi saya kira saya harus lebih menekankan pada menyelesaikan sesuatu daripada dokumentasi.
Aseem Bansal
3
Anda menggunakan palu karena Anda perlu mendapatkan sesuatu yang dipalu ... terlalu banyak orang menggunakan palu ketika obeng akan lebih cocok.
gbjbaanb
@ gbjbaanb: Tepat! Terima kasih telah lebih akurat.
stakx
1

Berikut adalah alasan utama saya mengapa belajar bahasa baru:

  1. sisa tim yang Anda gunakan menggunakannya, dan Anda adalah orang baru yang akan menjadi bagian dari tim.

  2. Anda ingin menyelesaikan masalah, dan bahasa X, atau perpustakaan / kerangka kerja untuk bahasa X tampaknya memberikan dukungan terbaik yang tersedia untuk tugas itu

  3. Anda melakukannya hanya untuk tujuan pendidikan Anda sendiri.

Seringkali untuk situasi 2 ada lebih dari satu bahasa atau kerangka kerja yang cocok untuk menyelesaikan masalah. Kemudian dokumentasi yang ditulis dengan baik dapat menjadi salah satu faktor yang perlu dipertimbangkan (tetapi faktor lain juga). Untuk poin 3, dokumentasi yang baik mungkin lebih penting, tetapi jujur, jika Anda ingin belajar bahasa baru hanya untuk mempelajarinya, pertama-tama temukan masalah yang ingin Anda selesaikan, jika tidak, Anda akan segera kehilangan motivasi, baik- dokumentasi tertulis tersedia atau tidak.

Doc Brown
sumber
1

Ya kenapa tidak Semakin banyak bahasa yang Anda pelajari, semakin mudah untuk belajar bahasa berikutnya. Banyak konsep pemrograman dapat dipelajari dalam berbagai bahasa. Jadi, sebaiknya Anda mulai dengan yang memiliki bahan terbaik yang tersedia untuk belajar.

Juga sebagian besar tugas dapat diselesaikan dalam berbagai bahasa. Biasanya, setelah beberapa saat, Anda akan menguasai konsep dan alat bahasa inti, tetapi Anda akan mempelajari kebanyakan perpustakaan sesuai kebutuhan. Ini adalah argumen yang mendukung bahasa jika perpustakaan didokumentasikan dengan baik sehingga Anda dapat dengan cepat mendapatkan kecepatan pada domain aplikasi tertentu.

Gilles 'SANGAT berhenti menjadi jahat'
sumber
0
  • Tidak, dokumentasi yang ditulis dengan baik bukan alasan yang cukup baik untuk belajar bahasa.

  • Pewawancara menanyakan pertanyaan ini untuk Anda katakan padanya kebaikan python. Anda harus membandingkan python dan ruby.

Edward Shen
sumber