Apa konsep yang paling penting untuk dipahami untuk “kelancaran berbahasa Inggris pengembang”? [Tutup]

10

Pada bulan April, saya akan memberikan ceramah yang disebut ** Bahasa Inggris 2.0 - Memahami Bahasa Pengembang "kepada sekelompok guru Bahasa Inggris. Tujuannya adalah dalam dua jam untuk memberi mereka latar belakang cepat dalam konsep-konsep kunci sehingga mereka dapat lebih memahami blog dan podcast pengembang dan dapat mengajukan pertanyaan yang lebih baik saat berbicara dengan pengembang.

Menurut Anda, apa konsep yang paling penting untuk dipahami, konsep yang diterima begitu saja oleh pengembang tetapi masyarakat umum tidak terbiasa? Berikut ini beberapa ide:

  • kontrol versi
  • abstraksi
  • pub / sub
  • dorong vs tarikan
  • debugging
  • modularitas
  • arsitektur tiga tingkat
  • kelas / objek
  • "kode spageti" vs. OOP
  • pengecualian melempar
  • sumber kerumunan
  • refactoring
  • awan
  • KERING - jangan ulangi diri Anda sendiri
  • server klien
  • pengujian unit
  • desainer / pengembang
Edward Tanguay
sumber
2
Saya bertanya-tanya apakah mungkin membawa mereka melalui beberapa situs web (proyek open source dll) dan kemudian membuat mereka memilih kata / terminologi yang tidak mereka mengerti?
Martijn Verburg
2
@ Martijn: halaman ini akan sempurna untuk itu ;-)
Syg
9
Kode spageti vs. OOP? Anda dapat memiliki kode OOP Spaghetti dan kode non-OOP yang terstruktur dengan baik dan dapat dibaca.
Jon Hopkins
4
Mengapa guru Bahasa Inggris terutama ingin berbicara dengan pengembang perangkat lunak yang bertentangan dengan, katakanlah, dokter atau fisikawan?
kevin cline
2
Dapatkah saya bertanya mengapa seorang guru bahasa Inggris perlu mengetahui istilah-istilah ini? Sebagian besar dari ini adalah informasi tingkat implementasi di mana jika guru bahasa Inggris adalah pemangku kepentingan mereka akan lebih peduli tentang beberapa istilah yang sangat berbeda.
Rig

Jawaban:

7

Untuk definisi istilah-istilah ini, lihat Kamus Jaringan

Ini akan memberi Anda daftar yang hampir lengkap dari semua istilah yang pernah Anda temui (ini mencakup frasa apa pun yang mungkin terlewatkan pada halaman ini). Jelas, Anda akan ingin menjelajah melalui ini mencari orang-orang yang relevan dengan Anda dan audiens yang Anda inginkan.

Sebagai contoh, pertimbangkan beberapa entri di bawah D:

Daemon
Data Architect
Database Normalization

Semua tampak cukup bermanfaat. Namun, ada jutaan entri sehingga Anda mungkin ingin menerapkan beberapa aturan (jika Anda pernah mendengarnya, maka itu masuk, kalau tidak keluar):

  1. Tidak ada akronim (mis. TCP / IP dalam, OOD keluar)
  2. Tidak ada nama aplikasi spesifik (mis. Microsoft Word ada, Kazaa-Lite tidak ada)
  3. Tidak ada nama bahasa tertentu (mis. Java ada, Haskell tidak ada)

Semoga ini bisa membantu

EDIT: Awalnya bersumber dari: http://www.networkdictionary.com/software/dictionary.php tetapi situs tersebut tampaknya telah ditinggalkan.

EDIT 2: Tampaknya Internet Archive memiliki salinan: https://web.archive.org/web/20120507195610/http://www.networkdictionary.com/software/d.php Terima kasih kepada @locster untuk tautannya.

Gary Rowe
sumber
Daemon yang bagus! +1
3
Tautan tampaknya tidak berfungsi lagi.
Jan Hudec
@ JanHudec Diedit untuk mencerminkan bahwa itu hilang. Malu - itu adalah sumber materi yang bagus.
Gary Rowe
5

Beberapa kata dari matematika:

  1. Resmi. Perwakilan terkemuka dari sekelompok item yang setara.
  2. Hash. Biasanya tidak terbuat dari kol.
  3. Heuristis. Solusi yang tidak sempurna yang mungkin baik mengingat keadaan, dan itu tidak terlalu menjanjikan.
  4. Linier / eksponensial. Bagaimana laju memori atau prosesor dipengaruhi oleh ukuran input.

Beberapa kata yang sering disalahartikan:

  1. Proksi Sesuatu yang bertindak atas nama orang lain.
  2. Server klien. Suka browser Anda vs server web.
  3. Tuan / Budak. Tidak ada hubungannya dengan perbudakan manusia atau S&M, biasanya.
  4. Daemon. Suatu proses yang biasanya berjalan tanpa interaksi manusia. Tidak ada yang jahat.
  5. Penyihir. Elemen antarmuka pengguna yang memandu manusia melalui prosedur.

Beberapa kata yang konotasinya keras biasanya tidak disengaja:

  1. Membunuh. Ketika diterapkan pada proses, bukan anak kucing.
  2. Menggasak. Sebuah proses yang tidak menyelesaikan apa pun karena kurangnya memori untuk berkembang.
  3. Pesta. Bahasa scripting.
  4. Jatuh. Sangat bisa bertahan untuk apa pun yang mampu me-reboot.
  5. Bang Nama lain untuk simbol '!'.
  6. dll.

Dan itu mungkin bermanfaat termasuk daftar julukan karena semua orang ingin tahu kapan mereka dibicarakan: bos berambut runcing, dll.

Mike Samuel
sumber
2

Saya akan menambahkannya:

  • tangkas
  • KISS (Keep It Simple Stupid)
  • refactoring
  • antarmuka pemrograman aplikasi

sumber
Mereka cukup sering dilemparkan ke blog dan programer. Cukup sering. Saya dibesarkan dari KISS. (kita tidak akan berbicara tentang band ...)
Berin Loritsch
1
  • YAGNI - Anda tidak akan membutuhkannya
  • Scrum
  • CIUMAN
  • Ajax
  • Enkapsulasi
  • Warisan
  • Layanan web
  • Komponen
Sorantis
sumber
1

Anda mungkin ingin mendiskusikan ketepatan bahasa. Terkadang saya bercanda bahwa pengembangan perangkat lunak seharusnya mengubah kita menjadi pedant, bukan karena kita menikmatinya, tetapi karena ketika Anda memprogram Anda seringkali harus tepat. Ini kemudian mengarah ke sejumlah besar jargon, karena bahasa khusus domain memungkinkan Anda untuk menjadi cepat dan tepat.

Rory Hunter
sumber
+1 ini sangat benar. Saksikan semua pertanyaan di sini yang menanyakan apakah X 'diperlukan' atau 'dibutuhkan', ketika penanya benar-benar berarti 'direkomendasikan'. Jika seseorang tidak dapat mengajukan pertanyaan dengan tepat, mereka berada pada posisi yang kurang menguntungkan karena bidang kami membutuhkan ketelitian.
GrandmasterB
1

Saya akan senang jika Anda membahas penggunaan tanda baca non-standar yang khas pada beberapa programmer, seperti "Saya menolak untuk memasukkan koma dalam string literal ketika sumber tidak menggunakan koma", <----- kata Brian.

Penggunaan tanda kurung,, []dan kumis (atau kawat gigi, untuk orang-orang yang kurang pinggul) {}dapat diberikan perlakuan yang sama.

3- Rekursi mungkin menyenangkan untuk ditunjukkan. Lihat poin 3.

Untuk istirahat yang menyenangkan, mungkin menyenangkan untuk menunjukkan beberapa inspirasi budaya murni yang umum bagi banyak komunitas pengembang, dari raptor (terima kasih, XKCD), ke Monty Python, ke penunjuk kembali ke beberapa alasan umum awal yang mendirikan komunitas modern: IRC, papan buletin / forum, dan Usenet.

BrianH
sumber
0

SDLC akan menjadi saran saya untuk membahas topik lain.

Beberapa istilah lain yang mungkin layak untuk dibahas:

  • Aplikasi
  • Sistem
  • Program
  • Persyaratan

Jika Anda keluar dari orang-orang teknis, beberapa istilah ini dapat memiliki arti lain. Melamar pekerjaan dapat berarti mengambil aplikasi sehingga beberapa orang mungkin tidak memikirkan perangkat lunak dalam hal aplikasi. Demikian pula, ada kegiatan rekreasi dan inisiatif pemerintah yang beberapa orang mungkin anggap sebagai program. Dengan demikian, mungkin ada perbedaan antara manajer program di Microsoft dan manajer program di YMCA, hanya untuk memberikan contoh spesifik di sini.

Saya akan tergoda untuk melihat apakah Anda dapat meminta ide dari para peserta di muka dan membuat bagian dari ceramah menjadi sedikit lebih interaktif. Ini hanya ide untuk pembicaraan itu sendiri yang saya tidak tahu apakah Anda sudah mempertimbangkan ini atau tidak.

JB King
sumber
0

Saya akan menyertakan kartu referensi / cheat-sheet untuk semua orang untuk dibawa pulang. Mengingat semua hal itu akan sulit jika banyak yang baru.

Pada subjek, saya pasti akan menambahkan "pola desain" sebagai konsep umum.

Syg
sumber