{"id":801,"date":"2012-08-14T23:20:08","date_gmt":"2012-08-15T07:20:08","guid":{"rendered":"https:\/\/accretiondisc.com\/blog\/?p=801"},"modified":"2012-08-14T23:20:10","modified_gmt":"2012-08-15T07:20:10","slug":"blast-from-the-past","status":"publish","type":"post","link":"https:\/\/accretiondisc.com\/blog\/2012\/08\/14\/blast-from-the-past\/","title":{"rendered":"Blast From the Past"},"content":{"rendered":"<p>I found this program called <a href=\"http:\/\/www.secretgeometry.com\/apps\/cathode\/\">Cathode<\/a> that does an incredible job of recreating the experience of writing code on a CRT display, ca. 1980&ndash;83. Many was the hour I logged on the Lear-Sigler <a href=\"http:\/\/en.wikipedia.org\/wiki\/ADM-3A\">ADM-3A<\/a> &mdash; in those days time was logged, so you could pay for it. That was incredibly unfair since the I\/O (for l&#8217;users) was throttled down to 4800 <a href=\"http:\/\/en.wikipedia.org\/wiki\/Baud\">baud<\/a>.<\/p>\n<p><a href=\"http:\/\/www.flickr.com\/photos\/23642145@N00\/7786643438\" title=\"View 'CRT Recreation' on Flickr.com\"><img loading=\"lazy\" decoding=\"async\" height=\"199\" style=\"display:block; margin-left:auto; margin-right:auto;\" alt=\"CRT Recreation\" border=\"0\" src=\"http:\/\/farm9.staticflickr.com\/8297\/7786643438_8f12197474_n.jpg\" width=\"320\"\/><\/a><\/p>\n<p>Check it out. Then give it up, before the ergonomics make you blind.<\/p>\n<p>As a sort of colophon, the code I&#8217;m editing here is genuine <a href=\"http:\/\/en.wikipedia.org\/wiki\/K%26R_C#K.26R_C\">K&amp;R C<\/a>, from the <a href=\"http:\/\/catb.org\/jargon\/html\/O\/Old-Testament.html\">Old Testament<\/a>. There are two anachronisms:<\/p>\n<ol>\n<li>I&#8217;m using vi to edit it, but in the day I was busy getting all carpal with emacs. I had no choice here: there might be an Emacs on my system, but if there is, I can&#8217;t remember how to get out.<\/li>\n<li>I wrote this code in 1992, by which time we used terminal emulators like <a href=\"http:\/\/www.columbia.edu\/kermit\/\">Kermit<\/a> on PCs, instead of real terminals. However, it was a recreation of something I wrote in about 1983 to translate English into &#8220;Klingonese.&#8221; (Not the stuff used by Star Trek fans. That came later. I&#8217;m talking <tt>STA KANG, <a href=\"http:\/\/www.columbia.edu\/kermit\/dec20.html#languages\">PUSHJ JRST<\/a><\/tt>.)<\/li>\n<\/ol>\n<p>To be fair, I don&#8217;t think I ever wrote C on the ADM-3A, or even a <a href=\"http:\/\/www.vt100.net\/\">VT-100<\/a>. I don&#8217;t think the <a href=\"http:\/\/www.columbia.edu\/cu\/computinghistory\/cudec20.html\">DECSystem-20<\/a> even had a C compiler. All my C was on the <a href=\"http:\/\/www.vaxarchive.org\/hw\/750faq.html\">VAX<\/a>, which had <a href=\"http:\/\/www.hpmuseum.net\/display_item.php?hw=242\">HP-2621A<\/a> terminals.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I found this program called Cathode that does an incredible job of recreating the experience of writing code on a CRT display, ca. 1980&ndash;83. Many was the hour I logged on the Lear-Sigler ADM-3A &mdash; in those days time was logged, so you could pay for it. That was incredibly unfair since the I\/O (for [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[23,52],"tags":[256,619,622,386,621,88,620,302,618],"class_list":["post-801","post","type-post","status-publish","format-standard","hentry","category-life","category-technology","tag-adm3a","tag-baud","tag-cathode","tag-computers-2","tag-crt","tag-history-2","tag-mainframe","tag-programming-2","tag-vt100"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/paRqpr-cV","_links":{"self":[{"href":"https:\/\/accretiondisc.com\/blog\/wp-json\/wp\/v2\/posts\/801","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/accretiondisc.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/accretiondisc.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/accretiondisc.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/accretiondisc.com\/blog\/wp-json\/wp\/v2\/comments?post=801"}],"version-history":[{"count":0,"href":"https:\/\/accretiondisc.com\/blog\/wp-json\/wp\/v2\/posts\/801\/revisions"}],"wp:attachment":[{"href":"https:\/\/accretiondisc.com\/blog\/wp-json\/wp\/v2\/media?parent=801"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/accretiondisc.com\/blog\/wp-json\/wp\/v2\/categories?post=801"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/accretiondisc.com\/blog\/wp-json\/wp\/v2\/tags?post=801"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}