การเรียนรู้การเขียนโปรแกรมบนบัตรคำศัพท์ [ปิด]


9

ฉันต้องการลองเขียนโปรแกรมด้วยบัตรเจาะหนึ่งครั้งในชีวิตของฉัน ฉันจะทำสิ่งนี้ได้อย่างไร

ฉันมีอายุ 30 ปีและเติบโตขึ้นอย่างสมบูรณ์ในยุคพีซีการเขียนโปรแกรมบนคอมพิวเตอร์ที่มีหน้าจอและคีย์บอร์ด ฉันต้องการสัมผัสวิธีที่พ่อและปู่ของฉันเคยทำงาน ฉันนึกภาพฮาร์ดแวร์ (และอาจเป็นบัตรด้วยตัวเอง) ไม่ได้ผลิตอีกต่อไป มีมหาวิทยาลัยหรือพิพิธภัณฑ์ที่มีเครื่องอ่านบัตรทำงานอีกต่อไปหรือไม่? ฉันอยู่ในบอสตัน แต่ฉันยินดีที่จะเดินทางไปทำสิ่งนี้

ฉันถาม MetaFilterและฉันได้คำตอบที่หลากหลาย (พร้อมด้วยคำว่า "ไม่อย่าทำอย่างนั้น") ฉันได้รับตัวชี้ไปยังสังคมแห่งการคำนวณย้อนยุคของเกาะโรดไอแลนด์แต่ฉันยังไม่ได้รับอีเมลตอบกลับถึงพวกเขา


คุณอาจต้องใช้เวลาขุดหาคนที่มีเครื่องจักรเก่าที่หวังว่าจะยังคงทำงานและหาบัตรเจาะสำหรับพวกเขาฉันคิดว่ามันจะค่อนข้างแพงเพราะเครื่องจักรเหล่านี้จะค่อนข้างหายากเนื่องจากการรักษาประวัติศาสตร์โดยทั่วไปไม่ใช่ ' ไม่มีเป้าหมายในสนาม
Ryathal

บางสถานที่มีสิ่งอำนวยความสะดวกด้านการคำนวณทางประวัติศาสตร์ที่ยอดเยี่ยมทั้งนี้ขึ้นอยู่กับตำแหน่งของคุณ มหาวิทยาลัยของฉันทำและฉันชอบโอกาสที่จะตั้งโปรแกรม altair พร้อมสวิตช์และ PDP เห็นโทรพิมพ์ที่ใช้งานได้และเช่นกัน มีองค์กรจำนวนมากที่พยายามอนุรักษ์สิ่งประดิษฐ์ประเภทนั้น คำตอบที่ดีที่สุดคือหาคนเหล่านั้นออกมา คุณจะประหลาดใจกับสิ่งที่คนเหล่านี้มี
Rig

1
ปุ่มกดทำงานอาจยังพบได้ง่าย cardreaders ที่ใช้งานได้อาจน้อยลง ผู้สร้างการ์ดมีความพิถีพิถันเมื่อพวกเขายังใหม่และได้รับการดูแลอย่างดีดังนั้นฉันจะแปลกใจถ้าคุณสามารถหาคนที่เป็น) ในสภาพการทำงานและ b) สามารถเข้าถึงได้
John Bode

3
วิธีการเกี่ยวกับการเขียนโปรแกรมเพื่อจำลองเครื่องบัตร Puch? - สิ่งนี้น่าสนใจ!
NoChance

ที่จริงแล้วมีความเสถียรของกระบวนการหลายอย่างที่ทำกับเทคโนโลยีที่สืบทอดมามากกว่าเดิม - ซึ่งคล้ายกับที่จะเกิดขึ้นอีกครั้ง หากคุณรู้ว่าคุณต้องรอลิงค์เชื่อมและโหลดรหัสของคุณเองครึ่งวันคุณอาจเริ่มเขียนแอพที่มีความเสถียรมากขึ้น

คำตอบ:


9

หากคุณมีสแกนเนอร์คุณสามารถ DIY ได้ด้วยซอฟต์แวร์จำภาพเครื่องมือจำลองต้นไม้ที่ตายแล้วและปากกา felttip


2
แรงบันดาลใจจากแนวคิดการจดจำภาพฉันไปดูรอบ ๆ เพื่อจำลองเครื่องตอกบัตร หาไม่เจอ แต่นี่อาจเป็นโครงการ OCR ที่สนุก :)
ไฮเดรนเยีย

7

เพียงโปรแกรมอย่างที่คุณมักทำยกเว้นว่า:

  • คุณสามารถมีไฟล์ต้นฉบับได้เพียงไฟล์เดียว
  • เมื่อใดก็ตามที่คุณต้องการแก้ไขรหัสให้พิมพ์ทั้งบรรทัดอีกครั้ง
  • เมื่อใดก็ตามที่คุณต้องการเรียกใช้โปรแกรมให้เปิดตัวจับเวลาสิบนาทีและปิดหน้าจอ เมื่อหมดเวลาเปิดหน้าจอและเรียกใช้โปรแกรม

15
ฉันได้รับการตอบสนองแบบนี้มากและฉันไม่แน่ใจว่าทำไม การทำสิ่งต่าง ๆ ในแบบสมัยเก่านั้นมีประโยชน์โดยเฉพาะอย่างยิ่งถ้าคุณสนใจประวัติศาสตร์ คุณเยาะเย้ยคนที่อบขนมปังตั้งแต่เริ่มต้นหรือชงเบียร์ของตัวเองหรือสร้างเฟอร์นิเจอร์ด้วยหรือไม่?
พลูโต

16
@Plutor สิ่งที่คุณเสนอไม่เหมือนขนมปังอบ คนทำขนมปังและผู้ผลิตเบียร์ที่บ้านทำเองเพราะมันทำให้พวกเขาสามารถควบคุมผลิตภัณฑ์ขั้นสุดท้ายและเสนอทางเลือกให้กับผลิตภัณฑ์เชิงพาณิชย์ (ที่ต่ำกว่าเนื้อหา) สิ่งที่คุณกำลังพูดถึงนั้นคล้ายกับการมีส่วนร่วมในการออกกฎหมายครั้งใหม่ - ประสบการณ์ในการทำแบบเดิมที่คุณทำไม่ใช่ผลิตภัณฑ์ขั้นสุดท้าย เท่าที่ฉันเคยเห็นนักประวัติศาสตร์อีกครั้งมักจะมีอารมณ์ขันที่ดีเกี่ยวกับข้อดีของความพยายาม
Caleb

10
@Plutor BTW คำตอบนี้อาจใกล้เคียงกับความจริงมากกว่าที่คุณคิด โปรแกรมเมอร์ส่วนใหญ่ในสมัยก่อนไม่ได้สัมผัสเครื่อง - ผู้ให้บริการเท่านั้นที่ได้รับอนุญาตให้ทำเช่นนั้น ดังนั้นเพื่อให้ได้รับประสบการณ์ที่สำคัญตั้งค่าลูกคนโปรดของคุณด้วยเสื้อคลุมแล็บในห้องปรับอากาศ จากนั้นเขียนโปรแกรมของคุณเป็นลำดับแรกก่อนจากนั้นจึงพิมพ์ลงบนเครื่องพิมพ์ดีดด้วยตนเอง ส่งไปให้เด็กในกล่องที่มีหน้าตามลำดับและให้เด็กใส่มันลงในคอมพิวเตอร์เรียกใช้โปรแกรมพิมพ์ผลลัพธ์และเก็บไว้ในกล่องจดหมายของคุณ นั่นใกล้เคียงกับที่ทำไปแล้ว
Caleb

3
Plutor: ฉันแบ่งปันการกดคีย์ คุณอาจพบว่ามันน่าสนใจสักสองสามนาที ถ้าอย่างนั้นมันก็น่าเบื่อ มันเป็นแค่เทคโนโลยีที่ล้าสมัยและผลลัพธ์ก็ด้อยกว่าในทุก ๆ ทางของโค้ดสมัยใหม่
kevin cline

2
นอกจากนี้ยังมีโอกาสที่จะวางกล่องบัตรของคุณระหว่างทางไปยังอาคารคอมพิวเตอร์บังคับให้คุณกลับไปที่สำนักงานของคุณในขณะที่คุณพยายามนำทุกอย่างกลับมาตามลำดับ คุณจำหมายเลขบัตรทั้งหมดของคุณด้วยหมายเลขลำดับใช่มั้ย (โบนัส: ฝนตกเมื่อคุณทิ้งการ์ด ... ) ขอบคุณพระเจ้าฉันยังเด็กเกินไปที่จะได้สัมผัสกับสิ่งเหล่านี้!
Donal Fellows

4

บางทีคุณสามารถเข้าใกล้สิ่งนี้ได้โดยใช้อีมูเลเตอร์เช่น:

http://www.kloth.net/services/cardpunch.php

สุภาพบุรุษคนนี้ที่นี่ดูเหมือนจะมีข้อมูลที่ดีเกี่ยวกับการเปิดตัวจำลองของคุณเอง:

http://www.divms.uiowa.edu/~jones/cards/

ซึ่งได้แรงบันดาลใจบางส่วน:

http://dev.technikum29.de/projects/checkout/paper-tape-project/documentation/index.php/punch-card/README.htm


โดยส่วนตัวฉันชอบความคิด / แนวทางของคุณ :)


3

ฉันเดาได้ทันทีว่าคำถามของคุณมีจำนวนพอใช้ ในขณะที่มีอย่างไม่ต้องสงสัยอย่างน้อยสักสองสามหมัดบัตรและผู้อ่านที่เหลือในโลกเดาของฉันทันทีจะเป็นว่ามันนานพอเพราะใคร ๆ ก็พยายามที่จะใช้พวกเขาว่ามีความมั่นใจเล็กน้อยว่าพวกเขาจะทำงานแม้ว่าบางคนพยายาม

อย่างน้อยตามความทรงจำของฉันหมัดการ์ดน่าเชื่อถือเพียงพอที่หลายคนอาจยังใช้งานได้ พวกเขาไม่ได้แตกต่างจากเครื่องพิมพ์ดีดมากนักยกเว้นว่าเมื่อ "สิ่ง" เหวี่ยงไปข้างหน้าเพื่อตีกระดาษมันไม่เพียงแค่กระแทกแรงพอที่จะดันริบบิ้นกับกระดาษ - มันเหวี่ยงแรงกว่าที่จะเจาะ ผ่านรู

ฉันไปจากความทรงจำที่ห่างไกล แต่ความทรงจำของฉันเกี่ยวกับเครื่องอ่านการ์ดนั้นแตกต่างกันมาก - พวกเขาต้องการการดูแลรักษาบ่อยครั้ง ในความเป็นจริงเมื่อฉันทำงานบนเมนเฟรมฉันดูเหมือนจะจำได้ว่ามีเครื่องอ่านบัตรสามใบ - แต่ไม่ค่อยสามารถใช้มากกว่าสองเครื่องในเวลาใดก็ตาม อย่างน้อยถ้าหน่วยความจำทำหน้าที่ตัวเรียงลำดับการ์ดก็ยิ่งแย่ลงไปอีก ในทั้งสองกรณีฉันค่อนข้างมั่นใจว่าปัญหาส่วนใหญ่เกิดจากชิ้นส่วนเชิงกลเพื่อป้อนบัตรเข้าในเครื่องอ่านที่เหมาะสม

อย่างไรก็ตามฉันต้องพูดว่าในกรณีนี้ฉันเห็นเพียงเล็กน้อย (ถ้ามี) ที่จะได้รับจาก "ทำสิ่งต่าง ๆ ในแบบที่ล้าสมัย" ฉันนึกถึงประโยชน์ใด ๆ จากบัตร Hollerith ที่ไม่สามารถทำได้เร็วกว่าง่ายและเชื่อถือได้มากขึ้นด้วยวิธีการที่ทันสมัยกว่า ฉันคิดว่า (ในทางทฤษฎี) พวกเขาสนับสนุนให้มีระเบียบวินัยในการเขียนโปรแกรมและการดูโค้ดอย่างรอบคอบก่อนที่จะดำเนินการ (อย่างน้อยในประสบการณ์ของฉันมักจะ "ข้ามคืน" บ่อยกว่า "10 นาที" @ เควินไคลน์กล่าวถึง )

หน้าจอที่เหมาะสมเป็นวิธีที่ดีกว่าการทำการ์ด Hollerith เมื่อเราต้องทำมันกลับมาเรามักจะได้พิมพ์ออกมาบนกระดาษพับขนาด 132 คอลัมน์ ฉันนึกภาพไม่ออกว่าพยายามอ่านพิสูจน์แม้แต่เรื่องไร้สาระบนการ์ดโดยตรง

บรรทัดล่าง: โชคดี - แต่อย่าหวังสูงเกินไปเกี่ยวกับการเรียนรู้อะไรมากมายจากเรื่องนี้แม้แต่ในสิ่งที่ไม่น่าเป็นไปได้แม้ว่าคุณจะทำมัน


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.