Kisah-kisah dari crypt (dari 40 tahun pekerjaan programmer)

Saya menemukan komputer (kata komputer tidak digunakan pada saat itu) pada tahun 1977, itu hanya kursus seperti itu di mehmat. Fortran IV, kode M-20, Algol-60, PL / 1, segera setelah uni masuk ke programer (programmer sistem!), Dan kami berangkat ...

Dan beberapa tahun yang lalu, saya berhenti aktif melakukan pengodean, hanya skrip untuk saya sendiri, sekarang saya mengatur tugas untuk sekelompok programmer.

Betapapun, selama waktu ini ada sejumlah cerita lucu dan / atau menarik (yah, paling tidak diingat), yang saya undang untuk Anda baca di bawah kucing. Cerita tidak harus sepenuhnya tentang pemrograman, lebih banyak tentang kehidupan seorang programmer.

# 1


β€œTag di Fortran diidentifikasi dengan angka. Misalnya, Anda dapat menulis GOTO 21. Hee hee hee hee. ” - Hampir semua yang saya ingat tentang belajar Fortran. Dari penampilan pertama, dia (FORTRAN IV) tidak menarik bagi saya. Minat muncul kemudian, ketika saya agak terkejut melihat bahwa sebagian besar operator satu-satu diimplementasikan dalam tim dari banyak prosesor. Mengapa dia, pada kenyataannya, adalah untuk waktu yang lama pemimpin mutlak dalam kecepatan penyiaran (mereka tidak mengatakan "kompilasi", dan tidak ada, pada kenyataannya) dan kecepatan eksekusi.

# 2


- Tidak ada apa-apa.
- Kenapa?
- Anda memiliki kesalahan program.
"Nah, kalau begitu, hasilnya benar?"
- Ya, tetapi ada kesalahan dalam program. Seharusnya tidak disiarkan
- Tetapi tidak ada pesan kesalahan siaran, dan hasilnya benar - apakah tidak ada kesalahan?
"Itu tidak mungkin."
- Apakah kita menggambar cetakan dengan tangan?
- Nnu, ya, ternyata, semuanya benar. Itu - salah! Tugas di Algol dilakukan melalui : = , dan Anda hanya memiliki tanda yang sama, ini adalah perbandingan. Ya, dan di sini, dan di sini - program tidak dapat disiarkan.
- Tetapi siarannya telah berlalu dan hasilnya benar!
...
Dialog lucu diprovokasi oleh kami. Simbol "carriage return" di tengah garis mengarah ke fakta bahwa bagian dari garis sebelum tidak dicetak. Jadi cetakannya adalah apa yang sebenarnya adalah komentar. Penerjemah (TA-1M pada BESM-4) mengabaikan karakter kontrol dan memproses teks sumber nyata. Untuk menciptakan efek, itu cukup untuk memotong beberapa lubang tambahan di kartu dengan pisau cukur sehingga celahnya berubah menjadi CR.

Pada akhirnya, kami dipanggil ke kantor dekan dan membuat saran. Kami bukan pelopor lelucon, dan bukan hanya kami yang baru dalam pemrograman. Ini juga berlaku untuk beberapa guru, pada waktu itu sama sekali tidak mengejutkan.
Oh, dan ya - kami masih mendapat pujian.

# 3


Segera setelah uni, distribusi ke SoyuzEVMkompleks, seorang programmer sistem.

Pekerjaannya pada dasarnya seperti ini:
Pemasangan sistem operasi pada komputer UE. By the way, itu sepadan, 2000 itu sendiri biaya OS dan 640 rubel - instalasi. Dengan semua ekor nilai tukar rubel saat itu, untuk pengertian, Anda dapat mengambil urutan harga yang sama dalam dolar. Menjadi jelas mengapa produsen OS saat itu tidak jatuh cinta dengan Gates dengan penjualan OS-nya sepuluh kali lebih murah.

Bantuan untuk programmer di CC berbeda dalam menemukan dan memperbaiki kesalahan dalam program. Dalam berbagai bahasa, termasuk, katakanlah, COBOL, yang saya, pada kenyataannya, tidak tahu, dan BASIC, yang saya tidak ingin tahu.

Bantu insinyur elektronik dalam pemecahan masalah.

Yang terakhir sering diperlukan. Komputer EC tidak hanya buggy, tetapi juga sistem multiprosesor. Input-output dilakukan oleh prosesor terpisah (dalam bentuk kabinet terpisah) dengan sistem komando mereka dan, dengan demikian, program "saluran" mereka. Dalam hal terjadi malfungsi, masih perlu untuk mencari tahu apa yang sebenarnya terletak: perangkat, prosesor saluran atau yang utama.
Program saluran, essno, adalah bagian dari OS, tetapi untuk memecahkan masalah, Anda harus dapat meluncurkan sendiri. Yang standar dapat diunduh dari disk (diagnostik khusus). Tapi dia mungkin tidak bekerja. Kemudian - dengan pita magnetik. Paling buruk, dengan kartu punch.
Dalam kasus yang paling sulit dipahami, saya harus dengan bodohnya memalu program kecil ke dalam memori dari remote
Anda menulis program dalam kode program saluran.

Anda mengetik alamat di memori dengan sakelar di "wajah", Anda mengetik nilai byte.
Anda mengetik nilai byte yang dituju, tulis.

Anda mengetik alamat berikut, nilai berikut ...



Lihat roda hitam di bagian bawah? Di sini, di hex-digit, dan berakhir. Untungnya, program itu pendek, dalam seratus, jarang lebih, byte.

Dalam hal ketika perlu untuk melipatgandakan atau mencetak setumpuk kartu punch pada mesin tanpa OS, "tiga kartu" disimpan. Program luar biasa dari 240 byte. Anda meletakkan tiga kartu punch di pembaca, boot dari mereka. Jika kartunya dalam urutan yang sama, dek berikutnya pergi ke cetakan. Di sisi lain - untuk menyalin ke "barmales", keluaran kartu punch. Yang ketiga - diyakini bahwa dek berisi program dalam bentuk biner, yang diluncurkan. Ini bukan tiga program berbeda! Tidak mungkin untuk membuang salah satu kartu di salah satu opsi.

# 4


Ada banyak kegagalan, misalnya, dengan disk.

Drive EC-5061


Memutar drive ini paket disk dengan kapasitas 29mb:



11 disk, 20 permukaan kerja (permukaan atas dan bawah tidak digunakan).

Tas itu dalam casing plastik, dimasukkan ke dalam drive, setelah itu casing dilepas. Untuk pemahaman lebih lanjut, detail-detail ini penting.
Bukan tidak biasa bahwa paket di drive khusus ini tidak dibaca, tetapi di paket selanjutnya dibaca secara normal. Ada kebiasaan, jika ada, untuk mengatur ulang paket di drive lain. Yang mengarah pada kisah berikut:

Shift malam. Drive macet. Operator menukar paket dalam dua drive. Biasanya itu membantu, tetapi sekarang mereka berdua pergi tidur. Nah, dalam hal ini ada paket dengan salinan data di rak. Dia menghapus yang gagal, menaruh yang cadangan - tidak bisa dibaca! Dia meletakkan paket lain, mencoba untuk beralih ke tugas lain - tidak, tidak ada yang dibaca.

Akhirnya, pagi tiba, seluruh staf datang. Mereka mulai membongkar dan mengerti. Dengan cara yang tidak diketahui (ada filter di mana-mana) seekor kecoa merangkak ke dalam tas. Dan berada di antara tas dan kepala. Kepala menabrak tas dan "menarik", membuat lubang yang cukup di piring. Setelah penataan ulang, plat yang rusak merusak kepala pada drive berikutnya, dan kepala yang rusak merusak plat berikutnya.

Pada pagi hari, ada kekalahan total: beberapa kepala baca / tulis, lima atau lebih (saya tidak ingat) paket - hancur. Kehilangan 2500 rubel, yang mereka coba gantung pada operator wanita miskin dengan gaji kurang dari 100 rubel. Tapi entah bagaimana mereka berhasil menurunkan semua yang ada di rem.

# 5


Tahun 80-an semakin dekat, kertas termasuk di antara defisit. Di beberapa CC, situasinya sangat akut sehingga hasil cetakan setelah penelitian (mencari kesalahan dalam program atau melihat hasil pekerjaan) dikumpulkan, dengan hati-hati dikumpulkan di sepanjang garis putus, direkatkan bersama dan dimasukkan kembali ke dalam cetakan untuk bekerja di sisi sebaliknya. Menempatkan teh atau sandwich di cetakan dianggap tidak sopan.

# 6


Saya melayani pabrik VTS di Taganrog. Saya membawa-bawa distribusi OS (dua gulungan pita magnetik berdiameter 30cm, 20mb dan berat per kilogram, mungkin) dengan baik, dan cetakan kode sumber dari program yang mereka tulis di sana, sehingga di rumah mereka bisa berurusan dengan kesalahan yang mereka minta temukan. Dan pos pemeriksaan itu sulit ... CC harus meluruskan saya lulus ke "pos pemeriksaan direktur jenderal." Ngomong-ngomong, hasil cetakannya dikotori. Karena kebodohan, saya mencoba menjelaskan bahwa cetakan itu pah, ini kaset-kasetnya, ya, saya bisa membawa seluruh tanaman kepada mereka. Saya hampir mendapatkan poin bahwa mereka berhenti membiarkan saya pergi sama sekali - pada saat terakhir saya menyadari dan berhenti.

# 7


Akhirnya, saatnya telah tiba PC. Saya bekerja di Robotron-1715.
Delapan bit, pada CPM, tapi bagus, berkualitas tinggi, bukan pasangan Sparks kami.

Tapi ruangan itu dipanaskan, secara halus, buruk. Di musim dingin Anda datang di pagi hari - es mengapung di botol. Robot, sampai menghangat, menuangkan karakter acak dari keyboard dengan kecepatan panik. Saya mencoba bercanda bahwa dia mentransmisikan semuanya ke satelit - ada seorang pria yang percaya :-) Bagaimanapun, hari kerja dimulai dengan fakta bahwa saya mengalahkan baklusha selama satu setengah jam, minum teh, menghangatkan dan menunggu komputer untuk melakukan pemanasan.

# 8


Pada robotron yang sama, saya mulai menulis tugas gudang. Dan untuk membuatnya dalam Pascal - tidak, saya beralih ke hal baru, ke dBaseII, modis saat itu. Ini adalah "DBMS" dari mana FoxBase dan Clipper yang masih hidup tumbuh. Semuanya akan baik-baik saja, tetapi file dengan tabel adalah murni teks , sehingga mereka mengambil banyak ruang (tetapi mudah dibawa!).

Sudah tidak mungkin untuk mengubah platform, dan pelanggan menuntut untuk menambah ukuran pangkalan, bahkan crack. Dan di mana untuk meningkatkannya pada floppy disk? Saya mulai membuat perpustakaan, seperti ZIP dengan UUCP dalam satu botol. Dan agar struktur file tidak rusak. Dan - ia menulis, bahkan di kantor Nantucket Moskow (pabrikan Clipper'a) mereka menganggapnya (mungkin, tentu saja, hanya karena kesopanan).

Ya, dan sebagainya: hampir persis pada hari ketika saya benar-benar men-debug semuanya dan siap untuk memberikan opsi ini kepada pelanggan, hard drive 5 megabyte pertama datang kepada kami.

# 9


Dan floppy disk lagi. 5 ", 40 trek, 128 kb (mereka mengoreksi saya, 110 kb). Saya menulis sebuah program, meneruskannya kepada pelanggan (yang berada di luar Lingkaran Arktik, omong-omong). Prosesnya sedang berjalan, mereka memperbaiki produksi saat bepergian, saya memperbaiki bug saat itu, semuanya seperti biasa.

Tapi kemajuan tidak berhenti, mereka membuat saya gagal dalam 80-jalur. Hore, 256kb (juga diperbaiki, 360kb)! Tetapi hanya untuk diri mereka sendiri, pelanggan memiliki disket tua. Dan itu dimulai ... Saya memperbaiki program, saya mentransfernya ke pelanggan - tidak berhasil. Aturannya, saya kirimkan, tidak berfungsi, dan kesalahannya sudah lama, masih ada. Saya periksa ulang seratus kali - semuanya baik-baik saja. Saya bahkan melakukan perjalanan bisnis ke sana, di luar Lingkaran Arktik. Memang, mereka memiliki versi "waktu Ochakov dan penaklukan Krimea", meskipun disket adalah yang saya transmisikan. Mukjizat!

Tapi mengetahuinya, tentu saja. Dalam mode perekaman 40-track, panduan flop 80-track hanya menulis 40 trek, tetapi memiliki head yang lebih kecil dan lebar track yang direkam jauh lebih sempit. Di tempat pelanggan, konduktor flop 40-track membaca trek lebar, mengabaikan catatan bermodel sempit, dan mengambil informasi lama yang direkam ketika neraka.
Di sini, saya bahkan menggambar - apa yang terjadi:



# 10


Seiring berjalannya waktu, tugas dBase dan tipe akuntansi terlupakan (saya belum mencintai mereka sepanjang hidup saya, meskipun mereka jujur ​​memberi saya makan tujuh tahun). Bagaimanapun, saya sudah dewasa, saya sudah menulis dalam C (tidak, belum C ++) di bawah MSC 6.0 (tidak, tidak, bukan MS Visual C).

Dan - deja vu.

Saya menulis sebuah program, saya memberikannya kepada pelanggan - sebuah kesalahan. Saya melakukan perakitan debug, saya mengemudi di bagian ekor dan surai - semuanya dalam urutan yang sempurna. Sampai pada titik ia mengguncang jaman dahulu, naik ke kode dan dump. Ternyata melewati parameter pendek ke fungsi. Pendek 16-bit saat itu. Dan di tumpukan di bawah parameter semua 32 bit yang sama dialokasikan, sebuah kata. Dan, tram-tararam, dalam rilis singkat ditulis dalam setengah kata, dan dalam debug - di bagian lain. Dan itu selalu dibaca dari bagian yang sama. Jadi, parameter debug lulus dengan benar, dan dalam rilis beberapa sampah.

# 11


Ya, tugas gudang memberi saya makan di saat-saat paling sulit. Dan diajarkan untuk hidup.
Saya membuat pilihan berikutnya untuk kantor berikutnya. Saya memberikan laporan. Mereka bersukacita bahwa itu berhasil, tetapi mereka meminta "posting nomor 8". Yah, saya bertanya apa itu, saya memperbaiki laporannya. Mereka bersukacita - nyaman, indah, lebih baik daripada di atas kertas ... "tetapi di mana kabel nomor 8". Oh, saya tidak kehabisan tenaga - tidak, bukan itu. Akhirnya, setelah kehilangan kesabaran, ia mengambil pilihan yang paling tua, paling sederhana, dan karena itu tercepat, dan menulis dalam format besar "Posting No. 8" dalam font terbesar yang diizinkan oleh printer (matriks) itu.
- Akhirnya, terima kasih banyak, kami sangat senang!
Saya senang juga, tenggat waktu sudah di hidung. Dan baru kemudian saya menyadari bahwa tidak perlu menjadi pandai kelebihan, Anda perlu melakukan sesuatu yang akan bekerja dalam teknologi. Dan satu hal lagi: Anda tidak hanya perlu mendengarkan pelanggan, tetapi juga mempelajari area subjek, jika Anda ingin melakukannya dengan baik.

# 12


Tumbuh di bawah kepemimpinan yang sabar itu mudah, dan cara termudah untuk menemukan sesuatu adalah tidak tahu apa yang telah dilakukan. Jadi saya tumbuh dan muncul dengan jaringan saraf. Kata ini pada waktu itu, di tahun 80-an, tidak secara khusus digunakan, saya tidak mengenalnya. Tapi - saya menulis semuanya sama. Tentu saja, itu tidak dapat menghasilkan dengan serius, jaringan saraf yang baik tumbuh pada matematika yang baik, dan saya memiliki begitu, omong kosong, aritmatika bodoh. Tetapi dia belajar dan bahkan membuat diagnosis sederhana dari kegagalan komputer. Level demo murni, tentu saja.

Seperti yang diharapkan, banyak memori diperlukan. Saya tidak bisa memimpikan gigabytes RAM, di mana "640k sudah cukup untuk siapa pun" masih berfungsi. Ruang alamat adalah 1mb, dan memori sebenarnya adalah 640k yang sama.

Idenya muncul: untuk menggunakan memori adaptor grafis VGA, karena itu dipetakan ke ruang alamat umum. Tidak lebih cepat dikatakan daripada dilakukan. Suplemen sebanyak 256 ribu! Untuk kecepatan, tampilan mati, jika tidak, karena sinkronisasi dengan layar, itu bekerja sangat lambat.

Dan kadang-kadang itu tidak mati, karena sangat menarik untuk menonton bagaimana layar berubah abu-abu dari belajar sebagai hitam, formasi dan luapan terbentuk, yang seiring waktu mengalir ke titik-titik terang keputusan. Banyak orang datang untuk melihat bagaimana mesin berpikir.

# 13


Di bawah nomor ini, hanya tentang virus dan katakan. Pada saat itu, virus lebih sering lucu daripada jahat, penulis lebih asyik menulis virus dan memiliki efek lucu. Ada virus pembakar ketika gambar itu perlahan habis. Teknik ini telah bertahan hingga saat ini di screensaver:



Ada yang lebih sederhana, misalnya, sirip:



Pada suatu titik, dia merangkak di sekitar kantor. Di mana-mana mereka memanggil saya untuk meminta bantuan, sebagai mantan insinyur sistem. Baiklah, saya pergi, saya menerbangkan mobil. Setelah memperlakukan orang lain, untuk berjaga-jaga jika saya pergi ke tempat paling tenang, tempat saya tidak dipanggil. Anehnya, ini pembukuan. Ternyata wanita tidak repot: mereka membalikkan monitor dan dengan tenang terus bekerja.
Saya tahu, saya tahu, banyak yang menemukan deskripsi serupa dalam bentuk lelucon. Jadi: terkadang itu adalah kebenaran murni.

# 14


Ya, itu tidak bekerja selamanya, itu terjadi pada tanggal 1 April. Sekarang entah bagaimana membosankan, tetapi sebelum mereka mencoba dan menciptakannya. Itu sangat lucu di komputer, berdiri dengan saling membelakangi, untuk tikus. Anda menggerakkan mouse - dan tidak ada, kursor berjalan di seberang rekan kerja yang berlawanan. Tiba-tiba kursor Anda mulai melompat liar - kolega ini juga mencoba memahami apa itu.

Ketika tikus optik muncul, menempelkan jendela optik dengan sepotong pita listrik merah bekerja dengan baik. Mouse berhenti bekerja, dan Anda melihat dari bawah - semuanya tampak normal, bersinar merah seperti biasa.



Sebenarnya itu saja. Tidak ada gunanya menceritakan tentang waktu baru-baru ini, yang baru akrab bagi semua orang apa yang harus dikatakan di sana. Dan, harus saya akui, saya sudah menjadi penulis kutip sebagai programmer. Jadi, terkadang saya menulis skrip untuk diri saya sendiri. Saya menetapkan tugas untuk sekelompok anak kecil.


Saya akan menambahkan, satu sepeda lagi dikenang saat berkomentar

# 15

Mereka mendorong ingatan ke tempatnya. Kabinet itu besar, beratnya 600 kilogram. Mereka sudah diseret ke aula, sekarang cukup dorong ke lantai, karena semuanya ada di atas roda ...
Baiklah, kita dorong, dan kemudian lantai yang ditinggikan mulai menekuk dan berantakan. Berhenti - itu akan jatuh setengah meter ke bawah, lalu dapatkan. Ya, dan kakinya akan menghancurkan kita. Tidak ada yang bisa dilakukan, Anda perlu mendorongnya ke seluruh tempat. Hampir mendorong, dan itu terjatuh.

Secara umum, memori ini melewati hampir seluruh aula, membuka lantai yang terangkat seperti pemecah es. Pada akhirnya, lebih dekat ke dinding, lantainya lebih kuat, jadi itu berakhir dengan bahagia. Ya, kecuali untuk membangun kembali lantai.

# 16

Yah, saya masih ingat!
Ketika orang-orang muncul, tetapi sangat jarang, beberapa orang terbiasa pergi ke rumah saya untuk mengirim surat atau mencetak sesuatu. Entah bagaimana tidak nyaman untuk menolak, tetapi segera berubah menjadi hukuman - mereka mulai bertindak seolah-olah untuk diri saya sendiri, seolah-olah saya sekarang berutang kepada mereka.
Tapi begitu aku hampir mendapat mimpi:
Keyboard MS Alami. Yang itu, yang pertama, yang asli. Dibuat di Meksiko, seperti semua kelenjar keren dari MS. Secara alami, tanpa huruf Rusia. Orang-orang di luar negeri, dibeli untuk menjual mahal di sini. Mereka menjual komputer, tetapi tidak ada yang mengambil keyboard. Jadi saya mendapatkannya dengan sangat murah, meskipun MS Natural cukup mahal.

Diseret pulang, bersukacitalah. Sudah di hari kedua, dia secara alami mulai mengetik secara membabi buta dengan semua jarinya.
Ya ... jadi, sekali lagi - dia perlu mengetik teks. Sambil tersenyum lebar, dengan gerakan menyambut, saya melambaikan tangan: "Ya, silakan duduk, isilah." Dia ragu-ragu, ragu-ragu, dan dia pergi. Untuk beberapa alasan saya tidak mencetak. Dan yang lainnya segera menjadi sia-sia.
Ngomong-ngomong, saya mengetik teks ini di atasnya, dan sejak 1997 telah bekerja terus menerus dan tanpa gagal. Inilah dia, kecantikan:



Dan beberapa bukan milikku, dipilih dari komentar untuk disatukan:

# 17

DrPass berkata:
Saya mengingat kembali kisah saya 20 tahun yang lalu, tentang flip, yang pertama bulan April dan kesabaran. Kemudian saya mengirim teman saya program semacam itu, atau lebih tepatnya, bukan program, tetapi arsip SFX dengan foto yang dipindai. Foto ada di sana, dan modul SFX palsu. Dia tidak menajiskan apa-apa (dia tidak membutuhkannya, saya hanya menyematkan gambar dalam format JPEG karena itu ke sumber daya), tetapi selain gambar-gambar dari sumber daya, dia juga menarik keluar dan menulis sebuah program di startup yang mengubah layar dan mengguncang jendela di atasnya. Sederhana mematikan hal ini, menurut ESC. Ya, dia memanggil saya, tertawa, dan sudah lupa. Sekitar enam bulan kemudian, ketika daunnya jatuh, dia bertanya kapan aku akan menghapus kotoran ini dari komputernya.

# 18

Jef239 berkata:
Biarkan saya memberi tahu Anda lebih baik tentang sendok. Dushanbe, layanan "09" (pertanyaan telepon), RP yang sama untuk 29 MB, tahun itu sekitar tahun 1980. Dushanbe dibedakan oleh kenyataan bahwa beberapa kali sehari ada saklar kabel yang memasok listrik (seperti di St Petersburg pada Vaska) + secara berkala hanya pemadaman listrik.
, . , . β€” . , , .
β€” . . β€” .

#19

toivo61 :
… ( ). , «» . :-)
Bedal : 60 β€” .

#20

tiger_sc :
, , -2001. . β€” , , - 3-4 , 2-3. 1999 , 2000 2001- .

Source: https://habr.com/ru/post/id470734/


All Articles