Pada tahun 1987, saya menerima pekerjaan di sebuah perusahaan yang mempekerjakan saya karena saya adalah salah satu dari segelintir orang yang tahu bagaimana menggunakan Wahyu. Revelation, jika Anda belum pernah mendengarnya, pada dasarnya adalah implementasi sistem operasi Pick berbasis PC - yang, jika Anda belum pernah mendengarnya, mendapatkan namanya dari penemunya, Dick Pick yang bernama luar biasa. Banyak yang bisa dikatakan tentang Pick OS, sebagian besar bagus. Sejumlah vendor supermini (setidaknya Prime dan MIPS) menggunakan Pick, atau implementasi kustom mereka sendiri.
Perusahaan ini adalah toko Perdana, dan untuk sistem in-house mereka, mereka menggunakan Informasi. (Tidak, itu benar-benar namanya: itu adalah implementasi Prime Pick.) Mereka memiliki kontrak dengan negara untuk membangun sistem berbasis PC, dan telah menempatkan sekitar satu tahun ke dalam proyek Wahyu mereka sebelum orang itu melakukan semua pekerjaan, yang juga direktur SIM mereka, memutuskan dia tidak bisa melakukan kedua pekerjaan lagi dan mempekerjakan saya.
Bagaimanapun, ia telah menetapkan sejumlah standar pengkodean untuk perangkat lunak berbasis Prime mereka, banyak di antaranya berasal dari dua kondisi dasar: 1) penggunaan terminal bisu 80-kolom, dan 2) fakta bahwa sejak Prime tidak "Aku tidak punya editor visual," tulisnya sendiri. Karena portabilitasnya yang ajaib dari kode Pick, ia membawa editornya turun ke Revelation, dan telah membangun seluruh proyek pada PC yang menggunakannya.
Wahyu, tentu saja, karena berbasis PC, memiliki editor layar penuh yang sangat bagus, dan tidak keberatan ketika Anda melewati kolom 80. Namun, selama beberapa bulan pertama saya di sana, dia bersikeras bahwa saya menggunakan editor dan standarnya.
Jadi, standar pertama adalah bahwa setiap baris kode harus dikomentari. Setiap baris. Tidak ada pengecualian. Alasannya adalah bahwa bahkan jika komentar Anda mengatakan dengan tepat apa yang baru saja Anda tulis dalam kode, harus berkomentar berarti Anda setidaknya memikirkan kalimat itu dua kali. Juga, ketika dia dengan riang menunjukkan, dia telah menambahkan perintah ke editor yang memformat setiap baris kode sehingga Anda bisa memberikan komentar akhir.
Oh ya. Ketika Anda mengomentari setiap baris kode, itu dengan komentar end-of-line . Singkatnya, 64 karakter pertama dari setiap baris adalah untuk kode, lalu ada titik koma, dan kemudian Anda memiliki 15 karakter untuk menggambarkan apa yang dilakukan 64 karakter Anda. Singkatnya, kami menggunakan konvensi bahasa assembly untuk memformat kode Pilih / Dasar kami. Ini menyebabkan hal-hal yang terlihat seperti ini:
EVENT.LIST[DATE.INDEX][-1] = _ ;ADD THE MOST RECENT EVENT
EVENTS[LEN(EVENTS)] ;TO THE END OF EVENT LIST
(Sebenarnya, setelah 20 tahun saya akhirnya lupa sintaksis garis-kelanjutan R / Basic, jadi mungkin terlihat berbeda. Tetapi Anda mendapatkan idenya.)
Selain itu, setiap kali Anda harus memasukkan komentar multiline, aturannya adalah Anda menggunakan kotak bunga:
************************************************************************
** IN CASE YOU NEVER HEARD OF ONE, OR COULDN'T GUESS FROM ITS NAME, **
** THIS IS A FLOWER BOX. **
************************************************************************
Ya, tanda bintang yang menutup pada setiap baris diperlukan. Lagi pula, jika Anda menggunakan editornya, itu hanya perintah editor sederhana untuk menyisipkan kotak bunga.
Membuatnya mengalah dan membiarkan saya menggunakan editor bawaan Revelation cukup sulit. Awalnya dia ngotot, hanya karena itu aturannya. Ketika saya keberatan bahwa a) saya sudah tahu editor Wahyu b) itu jauh lebih fungsional daripada editornya, c) pengembang Wahyu lainnya akan memiliki perspektif yang sama, dia menjawab bahwa jika saya tidak melatih editornya saya tidak akan pernah dapat bekerja pada basis kode Prime, yang, seperti yang kita berdua tahu, tidak akan terjadi selama neraka tetap tidak beku lagi. Akhirnya dia menyerah.
Tetapi standar pengkodean adalah yang terakhir pergi. Komentar kotak-bunga khususnya adalah buang-buang waktu, dan dia bertarung denganku, mengatakan bahwa jika aku hanya menggunakan editor yang tepat, mempertahankannya akan sangat mudah. (Semuanya menjadi sangat pasif-agresif.) Akhirnya saya diam-diam menyerah, dan sejak saat itu pada semua kode yang saya bawa ke ulasan kode memiliki komentar kotak bunga yang berharga.
Suatu hari, beberapa bulan di pekerjaan, ketika saya telah membuktikan diri saya lebih dari kompeten (terutama dibandingkan dengan parade coders luar biasa yang melewati kantor itu ketika saya bekerja di sana), dia melihat dari balik bahu saya ketika saya bekerja, dan dia perhatikan saya tidak menggunakan komentar kotak bunga. Oh, saya katakan, saya menulis formatter kode sumber yang mengubah komentar saya menjadi gaya Anda ketika saya mencetaknya. Lebih mudah daripada mempertahankannya di editor. Dia membuka mulut, berpikir sejenak, menutupnya, pergi, dan kami tidak pernah berbicara tentang standar pengkodean lagi. Kedua pekerjaan kami menjadi lebih mudah setelah itu.