{"id":300,"date":"2016-08-23T09:35:27","date_gmt":"2016-08-23T13:35:27","guid":{"rendered":"https:\/\/george.hotelling.net\/91percent\/?p=300"},"modified":"2016-08-24T09:14:57","modified_gmt":"2016-08-24T13:14:57","slug":"ubuntu-on-windows","status":"publish","type":"post","link":"https:\/\/george.hotelling.net\/91percent\/2016\/08\/23\/ubuntu-on-windows\/","title":{"rendered":"Ubuntu on Windows"},"content":{"rendered":"<p><a href=\"http:\/\/www.howtogeek.com\/248177\/whats-new-in-windows-10s-anniversary-update\/\">Windows 10 Anniversary Update<\/a> came out last week. I haven&#8217;t heard very many folks\u00a0talking about \u00a0one of the most interesting features I&#8217;ve seen from the New Microsoft: Linux.<\/p>\n<p>I think part of the reason people aren&#8217;t excited is because they don&#8217;t understand what this is:<\/p>\n<ul>\n<li>It&#8217;s not a virtual machine<\/li>\n<li>It&#8217;s not a container like Docker<\/li>\n<li>It&#8217;s not Cygwin &#8211; you can run pre-compiled ELF binaries<\/li>\n<\/ul>\n<p><strong>This is basically <a href=\"https:\/\/www.winehq.org\/\">WINE<\/a> in reverse &#8211; it translates Linux system calls to Windows system calls at runtime.<\/strong> That means it can run pretty much anything that Linux can. To take it for a test drive, I installed <a href=\"https:\/\/github.com\/creationix\/nvm\">nvm<\/a>\u00a0and node, then <a href=\"https:\/\/github.com\/Automattic\/wp-calypso\">Calypso<\/a> and then ran <tt>make run<\/tt>. It worked! (I had to <tt>sudo apt-get install gcc g++ make<\/tt> first, but that&#8217;s just more proof that this is Ubuntu)<\/p>\n<p>I love developing on Unix-like systems, and <del>OS X<\/del> macOS has been a great balance of a Unix system with good consumer support. \u00a0However I&#8217;m concerned that so much of Apple is focused on iDevices that\u00a0they will\u00a0start to care less and less about computer. As of August 23, it&#8217;s been 462 days since they have updated the MacBook Pro, and they&#8217;ve discontinued the Thunderbolt display.<\/p>\n<p>Meanwhile, Microsoft is open-sourcing things left and right. And now actually running Linux on Windows, something that 10 years ago would have sounded ridiculous. It&#8217;s not perfect &#8211; the terminal window still sucks compared to <a href=\"https:\/\/www.iterm2.com\/\">iTerm<\/a> or even Terminal.app &#8211; but now you can use a real OpenSSH instead of PuTTY. Maybe\u00a0soon I can live the dream of the same machine for development and gaming.<\/p>\n<p>The funny thing is that IBM tried this with Windows 20 years ago.\u00a0IBM had OS\/2, which had\u00a0<a href=\"https:\/\/en.wikipedia.org\/wiki\/OS\/2#Windows_3.x_compatibility\">a Windows compatibility layer<\/a> so that OS\/2 could run Windows 3.1 apps. This backfired for IBM &#8211; as a dev if I have to choose between writing an app for OS\/2 or Windows, why not write for Windows since\u00a0it will run on both? <a href=\"https:\/\/news.ycombinator.com\/item?id=12235481\">A comment on Hacker News<\/a>\u00a0claims that the Linux subsystem was originally developed for Windows phones to run Android apps. Maybe Microsoft chose not to go down that path for fear of the same fate as OS\/2 Warp?<\/p>\n<p>I strongly recommend anyone who likes Linux command lines\u00a0to <a href=\"http:\/\/www.howtogeek.com\/249966\/how-to-install-and-use-the-linux-bash-shell-on-windows-10\/\">give it a try to see what works and what doesn&#8217;t<\/a>\u00a0(I had to <a href=\"https:\/\/support.microsoft.com\/en-us\/help\/12387\/windows-10-update-history\">manually install the update<\/a> first). There are a lot of shortcomings but if it&#8217;s supported this could lead to more devs switching back to Windows.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Windows 10 Anniversary Update came out last week. I haven&#8217;t heard very many folks\u00a0talking about \u00a0one of the most interesting features I&#8217;ve seen from the New Microsoft: Linux. I think part of the reason people aren&#8217;t excited is because they don&#8217;t understand what this is: It&#8217;s not a virtual machine It&#8217;s not a container like &hellip; <a href=\"https:\/\/george.hotelling.net\/91percent\/2016\/08\/23\/ubuntu-on-windows\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">Ubuntu on Windows<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":314,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5],"tags":[64,63,65],"class_list":["post-300","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-programming","tag-linux","tag-microsoft","tag-ubuntu"],"_links":{"self":[{"href":"https:\/\/george.hotelling.net\/91percent\/wp-json\/wp\/v2\/posts\/300","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/george.hotelling.net\/91percent\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/george.hotelling.net\/91percent\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/george.hotelling.net\/91percent\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/george.hotelling.net\/91percent\/wp-json\/wp\/v2\/comments?post=300"}],"version-history":[{"count":10,"href":"https:\/\/george.hotelling.net\/91percent\/wp-json\/wp\/v2\/posts\/300\/revisions"}],"predecessor-version":[{"id":369,"href":"https:\/\/george.hotelling.net\/91percent\/wp-json\/wp\/v2\/posts\/300\/revisions\/369"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/george.hotelling.net\/91percent\/wp-json\/wp\/v2\/media\/314"}],"wp:attachment":[{"href":"https:\/\/george.hotelling.net\/91percent\/wp-json\/wp\/v2\/media?parent=300"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/george.hotelling.net\/91percent\/wp-json\/wp\/v2\/categories?post=300"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/george.hotelling.net\/91percent\/wp-json\/wp\/v2\/tags?post=300"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}