"Jual" mengkodekan proyek saya berikutnya dalam bahasa yang tidak dikenal

8

Saya ingin memberi kode proyek kerja saya berikutnya dalam bahasa yang tidak saya kenal (python). Saya bisa memikirkan banyak alasan dari sudut pandang saya mengapa itu ide yang bagus (tidak sedikit karena kedengarannya menyenangkan). Namun manajer saya mungkin akan bertanya mengapa. Saya sedikit bingung tentang kelebihan dari sudut pandangnya.

EDIT : Saya biasanya kode dalam C #

EDIT2 Alasan saya ingin kode dalam bahasa lain;

  1. Ini akan membuat proyek yang mudah menjadi jauh lebih sulit sehingga saya akan belajar lebih banyak dan itu akan lebih menarik
  2. Saya baru saja membaca buku tentang python. Saya ingin kesempatan untuk menerapkannya dalam aplikasi bisnis jadi saya memahaminya dengan benar
  3. Ini akan meningkatkan keahlian saya dan membuat saya lebih mudah dipekerjakan
  4. Python terlihat menyenangkan
Tom Squires
sumber
1
Bahasa apa yang biasanya Anda gunakan untuk menulis?
RYFN
1
"Aku bisa memikirkan banyak alasan" Apa itu? Bagaimana ini diterjemahkan menjadi keuntungan dan kerugian bisnis (biaya, usaha)?
P.Brian.Mackey
5
Mengapa tidak melihat apakah Anda dapat menggunakan IronPython . Dengan begitu Anda setidaknya masih bisa menggunakan .NET
Jetti
Selain kedengarannya menyenangkan apa alasan Anda ingin menggunakan python?
SoylentGray
1
Mengkode proyek untuk bekerja menggunakan bahasa asing dll adalah risiko. Ini juga memperkenalkan masalah pemeliharaan jangka panjang (berapa banyak bahasa yang perlu diketahui karyawan masa depan?). Perlu ada keunggulan spesifik proyek yang kuat untuk lebih besar daripada kerugiannya - bahasa tersebut harus sesuai dengan proyek. Dan jika Anda tidak memiliki pengalaman bahasa, Anda tidak berada di tempat yang baik untuk menilai itu.
Steve314

Jawaban:

8

Saya lebih suka memilih bahasa yang lebih baik untuk tugas yang harus saya selesaikan. Yang jenis proyek ? Ini tidak hanya bermanfaat bagi perusahaan Anda tetapi juga bagi Anda (memilih alat yang salah dapat menyebabkan masalah di kemudian hari).

Jika Python adalah sesuatu yang bisa masuk dalam strategi perusahaan / grup Anda dan Anda ingin mempelajarinya, saya akan jujur ​​dengan manajer Anda dan mengatakan bahwa Anda ingin melakukannya dengan Python untuk mempelajari Python. Dia kemudian dapat memilih apakah rasio biaya / manfaatnya OK.

BTW apa alternatifnya? (yaitu, bahasa 'default')?

Matteo
sumber
15

Tidakkah sebaiknya Anda mendekatinya dari titik "apa yang harus saya lakukan yang terbaik untuk perusahaan" daripada "apa yang ingin saya lakukan dan bagaimana saya bisa meyakinkan mereka tentang nilainya."?

Eoin Carroll
sumber
10

Anda seharusnya tidak mengambil risiko dengan waktu / uang atasan Anda untuk keuntungan Anda sendiri ... hanya sebuah pemikiran.

Pelajari Python di waktu Anda sendiri - kemudian membuat argumen untuk menggunakannya akan terjadi secara alami jika sesuai.

jheriko
sumber
5

Sepertinya Anda hanya ingin "bersenang-senang" di waktu perusahaan.

Memilih bahasa tanpa keuntungan menarik untuk menyelesaikan masalah yang ada, membutuhkan waktu lebih lama untuk mengirim dan meninggalkan mimpi buruk yang mendukung Anda. Apa yang disukai manajer Anda?

Anda tidak memiliki pembenaran untuk melakukan ini. Jika Anda ingin bermain dengan bahasa baru, baiklah, tetapi lakukan dengan waktu Anda sendiri sebelum Anda mencoba meyakinkan bos Anda untuk membiarkan Anda menggunakannya dan memilih kombinasi proyek / bahasa yang benar-benar menambah nilai.

Untuk memberikan contoh tandingan: -

Saya pernah menggunakan PERL untuk secara otomatis melakukan konversi dari basis kode Delphi yang besar. Saya sudah menghabiskan beberapa waktu bermain dengan PERL di rumah, kode tidak didukung di luar akhir proyek dan fungsionalitas RegExp yang tertanam dalam PERL membuat saya beberapa kali lebih efektif daripada menulis fungsi yang sama di Delphi meskipun pengetahuan PERL saya cukup terbatas.

mcottle
sumber
+1 untuk contoh-contoh. Beberapa hal dapat dilakukan lebih cepat dalam bahasa seperti Python daripada di C #.
Siput mekanik
4

Apakah ada petunjuk di perusahaan Anda bahwa Anda akan meninggalkan tumpukan Microsoft atau keinginan untuk tidak terkunci sepenuhnya? Memiliki pengembang dengan pengetahuan di bidang lain akan membuat ini lebih mudah.

Ada saran untuk hanya menggunakan bahasa tertentu jika ada manfaat khusus untuk proyek tersebut. Ini sepertinya selalu sulit dilakukan ketika Anda belum belajar bahasa. Bagaimana Anda tahu apa yang tidak Anda ketahui? Tentu Anda dapat melakukan riset atau bertanya di SO dan mendapatkan pertanyaan Anda ditutup atau paling banter, terima balasan 'tergantung'.

Ini dapat membantu Anda mengembangkan teknik baru untuk menangani masalah saat ini.

Mungkin ada keuntungan menjadi toko dwi-bahasa dalam hal merekrut bakat. Programmer Anda berikutnya mungkin memiliki preferensi Python, tetapi bersedia melakukan beberapa pekerjaan C # juga.

Begitu banyak tempat mengeluh bahwa pengembang mereka mengatur cara mereka dan tidak ingin mempelajari hal-hal baru. Mulailah proyek kecil dan tunjukkan bahwa Anda ingin belajar, tetapi bersedia bekerja dalam parameter yang membantu perusahaan Anda.

JeffO
sumber
3

Beberapa keuntungan (tergantung pada jenis proyek apa yang ingin Anda capai dan apa bahasa alternatifnya;)

  • bersihkan OOP dengan pengetikan dinamis (secara inheren generik)
  • bagus untuk prototyping cepat
  • Dapat dicampur dengan bahasa lain
  • open source dan populer
  • portabel
  • Konstruksi dan toolkit / pustaka bahasa yang kuat
  • bagus untuk skrip internet
  • manajemen memori otomatis
  • Menyenangkan dan cepat untuk dipelajari dan digunakan

Selain itu, pikirkan mengapa Anda ingin belajar Python, dan Anda mungkin akan menemukan beberapa manfaat untuk perusahaan Anda juga. Jika tidak, Python tidak cocok, dan Anda tidak harus mengambilnya.

DaveFar
sumber
Jawaban yang bagus - tetapi "bagus untuk prototyping cepat" - Saya selalu merasa ngeri akan hal ini, ada banyak hal berbeda yang mungkin ingin Anda prototipe ... Saya tidak mengatakan Python tidak cocok untuk beberapa orang, tetapi saya bisa memikirkan situasi di mana bahkan C akan lebih baik hanya karena keterbatasan kinerja (ya ini dapat berlaku untuk prototipe juga - misalnya Anda ingin mengedit video secara real-time dan bagian waktu nyata adalah kunci dari fitur).
jheriko
3

Di mana nilai untuk perusahaan Anda?

Alasan saya ingin kode dalam bahasa lain; 1) Ini akan membuat proyek yang mudah menjadi lebih sulit sehingga saya akan belajar lebih banyak dan itu akan lebih menarik

Dan dalam prosesnya, membuat proyek memakan waktu lebih lama dan meningkatkan risiko kegagalan total. Tidak ada manfaat yang jelas bagi perusahaan di sini, hanya biaya / risiko.

2) Saya baru saja membaca buku tentang python. Saya ingin kesempatan untuk menerapkannya dalam aplikasi bisnis jadi saya memahaminya dengan benar

Tidak ada manfaatnya bagi perusahaan di sini, kecuali Python adalah teknologi yang ingin mereka rangkul.

3) Ini akan meningkatkan keahlian saya dan membuat saya lebih mudah dipekerjakan

... dan lebih mungkin mendapatkan pekerjaan di tempat lain?

4) Python terlihat menyenangkan

Begitu juga ski air. Keduanya tidak relevan dengan perusahaan.

OK, ada manfaatnya membuat staf menikmati pekerjaan mereka, tetapi tidak ada manajer yang setuju dengan gagasan bahwa bersenang-senang lebih penting daripada benar-benar melakukan pekerjaan yang diperlukan secara efisien dan dengan risiko minimum.


Pelajari Python di waktu Anda sendiri di proyek Anda sendiri. Ketika Anda ahli dalam hal itu, dan ketika Anda telah mengumpulkan banyak bukti untuk mendukung kasus Anda, bicarakan dengan manajer Anda tentang apakah itu kepentingan perusahaan untuk mengadopsinya. (Dan bersiaplah untuk respons pragmatis "Tidak" atau "Belum".)

Stephen C
sumber