{"id":8307,"date":"2014-01-10T14:55:52","date_gmt":"2014-01-10T19:55:52","guid":{"rendered":"http:\/\/mjtsai.com\/blog\/?p=8307"},"modified":"2014-01-10T14:55:52","modified_gmt":"2014-01-10T19:55:52","slug":"doom-20th-anniversary-stories","status":"publish","type":"post","link":"https:\/\/mjtsai.com\/blog\/2014\/01\/10\/doom-20th-anniversary-stories\/","title":{"rendered":"&ldquo;Doom&rdquo; 20th Anniversary Stories"},"content":{"rendered":"<p><a href=\"http:\/\/blog.wilshipley.com\/2013\/12\/my-doom-20th-anniversary-stories.html\">Wil Shipley<\/a>:<\/p>\n<blockquote cite=\"http:\/\/blog.wilshipley.com\/2013\/12\/my-doom-20th-anniversary-stories.html\"><p>The way I got into the software business (besides learning to code) was to use every piece of software I could find and send the developers tons and tons of notes and bug reports. It turns out developers liked this, and it gained me a lot of opportunities. One of them was porting Doom and Quake to NEXTSTEP.<\/p>\n<p>[&#8230;]<\/p>\n<p>Don&rsquo;t take this to mean [Carmack&rsquo;s] code was spaghetti&mdash;it was actually some of the easiest-to-understand code I&rsquo;ve ever worked with. It has an almost indescribable quality of &ldquo;obviousness.&rdquo; Like, you know when a really good teacher explains something, it seems obvious? That&rsquo;s what his code was like.<\/p>\n<p>[&#8230;]<\/p>\n<p>We did some other ports for free as well, because back when OS X was new it wasn&rsquo;t at all clear that the Cocoa layer would win out over the Carbon layer. (Most people thought not.) It had been my life&rsquo;s mission (since 1987) to make sure that NEXTSTEP technology got into the mainstream, and OS X was our last and only hope. We knew games were crucial for a platform&lsquo;s wide adoption (c.f. iOS), and Steve didn&rsquo;t like games, so it was up to us.<\/p>\n<\/blockquote>","protected":false},"excerpt":{"rendered":"<p>Wil Shipley: The way I got into the software business (besides learning to code) was to use every piece of software I could find and send the developers tons and tons of notes and bug reports. It turns out developers liked this, and it gained me a lot of opportunities. One of them was porting [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"apple_news_api_created_at":"","apple_news_api_id":"","apple_news_api_modified_at":"","apple_news_api_revision":"","apple_news_api_share_url":"","apple_news_coverimage":0,"apple_news_coverimage_caption":"","apple_news_is_hidden":false,"apple_news_is_paid":false,"apple_news_is_preview":false,"apple_news_is_sponsored":false,"apple_news_maturity_rating":"","apple_news_metadata":"\"\"","apple_news_pullquote":"","apple_news_pullquote_position":"","apple_news_slug":"","apple_news_sections":"\"\"","apple_news_suppress_video_url":false,"apple_news_use_image_component":false,"footnotes":""},"categories":[2],"tags":[101,643,295,646,24,30,718,645,72],"class_list":["post-8307","post","type-post","status-publish","format-standard","hentry","category-technology","tag-business","tag-doom","tag-history","tag-id-software","tag-johncarmack","tag-mac","tag-nextstep","tag-quake","tag-omnigroup"],"apple_news_notices":[],"_links":{"self":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/8307","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/comments?post=8307"}],"version-history":[{"count":0,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/8307\/revisions"}],"wp:attachment":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/media?parent=8307"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/categories?post=8307"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/tags?post=8307"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}