packages feed

json-feed 0.0.2 → 0.0.3

raw patch · 15 files changed

+2763/−2760 lines, 15 filesdep ~aesondep ~basedep ~bytestringPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: aeson, base, bytestring, filepath, hspec, json-feed, tagsoup, text, time

API changes (from Hackage documentation)

Files

LICENSE.markdown view
@@ -1,23 +1,23 @@-# [The MIT License (MIT)][]--Copyright (c) Taylor Fausak--Permission is hereby granted, free of charge, to any person obtaining a copy of-this software and associated documentation files (the "Software"), to deal in-the Software without restriction, including without limitation the rights to-use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies-of the Software, and to permit persons to whom the Software is furnished to do-so, subject to the following conditions:--The above copyright notice and this permission notice shall be included in all-copies or substantial portions of the Software.--THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE-SOFTWARE.--[The MIT License (MIT)]: http://opensource.org/licenses/MIT+# [The MIT License (MIT)][]
+
+Copyright (c) Taylor Fausak
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
+of the Software, and to permit persons to whom the Software is furnished to do
+so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+[The MIT License (MIT)]: http://opensource.org/licenses/MIT
feeds/allenpike.com.json view
@@ -1,30 +1,30 @@-{-  "version": "https://jsonfeed.org/version/1",-  "title": "Allen Pike",-  "home_page_url": "https://www.allenpike.com/",-  "feed_url": "http://www.allenpike.com/feed.json",-  "author": {-    "name": "Allen Pike"-  },-  "items": [-    {-      "id": "/2017/steve-stories",-      "url": "http://www.allenpike.com/2017/steve-stories",-      "title": "Steve Stories",-      "date_published": "2017-04-30T20:00:00-07:00",-      "content_html": "<p>Earlier this month I was lucky enough to be invited to speak at the <a href=\"http://2017.ull.ie/\">Úll</a> conference in Ireland. One of the many bonus features there was Steve Stories, a project that invited some of the presenters to record our favourite stories about Steve Jobs.</p>\n\n<p>Naturally, when I think of Steve stories, my mind first goes to Andy Hertzfeld’s classic site about the creation of the Mac, <a href=\"http://www.folklore.org/\">folklore.org</a>, and the accompanying book, <a href=\"https://www.amazon.ca/Revolution-Valley-Paperback-Insanely-Great-ebook/dp/B006BAW3N0/ref=tmm_kin_swatch_0\">Revolution in the Valley</a>. My favourite stories from those early days are about Steve’s infamous Reality Distortion Field.</p>\n\n<div class=\"getty embed image\" style=\"background-color:#fff;display:inline-block;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;color:#a7a7a7;font-size:11px;width:100%\"><div style=\"overflow:hidden;position:relative;height:0;padding:67.508418% 0 0 0;width:100%;\"><iframe src=\"http://www.allenpike.com//embed.gettyimages.com/embed/80823324?et=dnftxZfaQ7VUZLL6N4l0BQ&amp;tld=ca&amp;viewMoreLink=off&amp;sig=xgGsT73DtRP0lTLV90TA2nyvflsB9QmfUV7FUCnwXyU=&amp;caption=true\" width=\"100%\" scrolling=\"no\" frameborder=\"0\" style=\"display:inline-block;position:absolute;top:0;left:0;width:100%;height:100%;margin:0;\"></iframe></div><p style=\"margin:0;\"></p></div>\n\n<p>You see, in the early 80s when they were building the Macintosh, Steve was infamous for working the engineers <a href=\"http://www.folklore.org/StoryView.py?story=90_Hours_A_Week_And_Loving_It.txt\">disgustingly long hours</a> and putting them under extreme pressure to ship. Folks often threatened to leave, but if Steve wanted somebody to stay, they tended to stay.</p>\n\n<p>No matter how much a key engineer wanted to quit, if they went into Steve’s office to resign, he would always go into Reality Distortion mode and persuade them to feel like they wanted to stay. By the end of the conversation, the engineer would leave Steve’s office pumped and motivated. “Yeah, we <em>are</em> going to change the world! Wait… wasn’t I going in there to quit?”</p>\n\n<p>After some failed attempts at quitting, Burrell Smith, one of the key engineers behind the Mac, finally devised a way around Steve.</p>\n\n<p>“I’ve got it!” said Burrell. “I know the perfect way to quit that will nullify the Reality Distortion Field. I’ll just walk into Steve’s office, pull down my pants, and urinate on his desk. What could he say to that? It’s guaranteed to work.” The logic was sound.</p>\n\n<p>So he spends some time working up the courage to do this, and eventually makes his way to Steve’s office at the end of the day. He walks in, and Steve just asks, “Are you gonna do it?” Word had gotten around. “Are you really gonna do it?”</p>\n\n<p>Burrell looked Steve in the eye. “Do I have to? If I have to, I’ll do it.” He could tell by Steve’s expression that he didn’t have to. Burrell was free at last.</p>\n\n<h2 id=\"tales-tall-and-true\">Tales tall and true</h2>\n\n<p>Though most modern-era Apple employees were never lucky – or unlucky – enough to meet Steve Jobs, colourful stories about Steve were often shared between team members. While folks often enjoyed pumping up the <a href=\"https://www.theatlantic.com/technology/archive/2011/10/in-praise-of-bad-steve/246242/\">legends around Bad Steve</a>, I always liked the stories that humanized him.</p>\n\n<p>It’s been long said that when Steve Jobs would get into an elevator and see a rank and file employee, he would ask, simply, “What do you do?” An innocent enough question, on its face. However, given his years of accosting employees about their department’s shortcomings and the occasional summary firing, employees feared that you would be fired by the end of that elevator ride if Steve didn’t like your answer to “What do you do?”</p>\n\n<p>Reportedly a young designer at Apple had heard of this danger, and she was terrified of losing her job from such a chance encounter. She was newly pregnant and loved her job deeply, leading her to often rehearse in her head her answer – what if Steve Jobs ever asks “What do you do?”</p>\n\n<p>After one long day, she got in the elevator, and who else gets in, but Steve Jobs. Sure enough, he asks The Question and she’s off. She frantically launches into her elevator pitch, explaining her job, why her team is great, and she’s talking a mile a minute when Steve interrupts:</p>\n\n<blockquote>\n  <p>Whoa, whoa, uh… I said, <em>“When are you due?”</em></p>\n</blockquote>\n\n<p>They had a good laugh. I always liked these kinds of stories, the ones that push back on the idea that Steve was an unequivocal jerk, or worse that he succeeded <em>because</em> he was a jerk. While that makes for an interesting tale, it conflates the key skill – a critical eye – with one man’s intermittent hold on his temper.</p>\n\n<h2 id=\"the-stories-that-matter\">The stories that matter</h2>\n\n<p>The stories we choose to tell about our leaders matter greatly. At a large company, employees’ mental model of their CEO can be even more important than the CEO’s actual behaviour. As Apple grew to tens of thousands of employees, Steve could never oversee every decision, or even a significant fraction of those decisions. Yet he was always there, in every meeting or argument, as <em>our idea of Steve</em>.</p>\n\n<p>When debating a UI approach or feature decision, the ultimate appeal to authority was, “What would Steve say?” “Would Steve ever let us ship this?” “Is this really good enough?” Through his famously demanding product reviews, he pushed down into the organization an understanding of what kind of work was acceptable at Apple, and how far it’s worth going to get something right.</p>\n\n<p>When Steve passed away in 2011, there was fevered speculation that Apple was doomed. “How could a company built by such an exceptional leader ever survive without him?” I was never really worried about that. He is truly missed, but his methods were not some secret recipe, held under lock and key. Apple employees had already spent years thinking like Steve.</p>\n\n<p>—</p>\n\n<p><em><a href=\"https://twitter.com/agammell\">Adam Gammell</a>’s <a href=\"https://itunes.apple.com/il/app/steve-stories-%C3%BAll/id1215821983?mt=8\">Úll Steve Stories app</a> from the conference is now available on the App Store. It features the above stories, and more importantly additional stories from people much more interesting than I.</em></p>\n"-    },{-      "id": "/2017/principle-of-least-surprise",-      "url": "http://www.allenpike.com/2017/principle-of-least-surprise",-      "title": "The Principle of Least Surprise",-      "date_published": "2017-03-31T20:00:00-07:00",-      "content_html": "<p>The status meeting is going well. Your demo was well received, the new feature is looking great, and you’ve been nailing your estimates.</p>\n\n<p>The product manager glances at her notes, and remembers one last thing. “Oh also, a lot of customers are asking for offline editing support on this screen.” Your eyes narrow, as they always do when you hear <em>offline</em> and <em>editing</em> in the same sentence. “The CEO’s asked us to prioritize it, so we’re going to go ahead and add it to 1.0.”</p>\n\n<p><em>Bwoooooosh…</em> time slows. The product manager has just lobbed a Scope Bomb. A threat to any project, the Scope Bomb is capable of causing great disruption and despair.</p>\n\n<p>“Uh…” You try to think quickly. “It does seem like a good addition, but…” You stare down the bomb as it sails across the boardroom table. “I’m not sure if two weeks is enough time though.” There, you said it. Your defense is mounted: they have been warned.</p>\n\n<p>“Oh, I’m sure you can do it,” the project manager smiles. <em>“I have faith in you.”</em> Aw, that’s a nice thing to say.</p>\n\n<p>“Thanks,” you hear yourself respond – and just like that, the bomb is armed. Unless somebody disarms it, in two weeks it will go off. Everybody except you will be surprised. This is bad.</p>\n\n<p><img src=\"http://www.allenpike.com/images/2017/surprise.jpg\" /></p>\n\n<p>In project management, surprise is the enemy. All surprises are suspect, but bad surprises are the actual worst. They are, bar none, the most common cause of conflict and stress on projects. Whether you’re a project manager or a junior team member, everybody benefits if you work to avoid surprises.</p>\n\n<p>Yet, on most teams, people instead optimize for keeping up appearances. They give out optimistic estimates, assume that questionable approaches are being taken for good reasons, and <a href=\"http://calleam.com/WTPF/?p=1205\">green shift</a> status by under-reporting danger. They think, “Why worry them about the budget if we might still pull it off?” Shortcuts like these may make this week’s status meeting more pleasant, but they turn next month’s launch into a crunchy hell.</p>\n\n<p>You see, when potential problems lurk under the surface, decision-makers and managers <em>can’t do anything about them</em>. A team that’s off track early on can always be corrected. On the other hand, when the navigator is surprised by an iceberg, you’re gonna hit that iceberg.</p>\n\n<p>And so, in software, people are hitting icebergs all the damn time. Teams unexpectedly miss deadlines, architecture problems come to light at the last second, and Steve suddenly announces that his month-long vacation to Bora Bora starts tomorrow. God damnit Steve! Where even <em>is</em> Bora Bora? What the hell are we going to do now?</p>\n\n<p>Well, what we’re going to do is teach our team how to minimize surprises. Yes, the whole team. Having a skilled project manager on any team is valuable, but as with quality, surprise minimization starts with you.</p>\n\n<h2 id=\"ice-report-42-to-412n\">Ice report, 42 to 41.2N</h2>\n\n<p>The key to surprise minimization is – big shock here – communication. If there’s a problem in software development that isn’t somehow helped by better communication, I don’t know what it is. Perhaps cache invalidation.</p>\n\n<p>In any case, managers and other decision-makers get a lot of information thrown at them. They’re seeing status from everybody, they’re getting pressure from all sides, and just aren’t focused full-time on how your project is going. While it <em>is</em> their job to cut through this noise and focus on what matters, it’s <em>your</em> job to nominate potential problems and dangers for consideration.</p>\n\n<p>Now, these messages may not be fun to hear. An optimistic or distracted client may not absorb an early warning. Maybe you mention that Steve has vacation in April, but your CEO is “sure it will be fine.” It’s easy then, to lean back and feel absolved of your responsibility – whether or not anybody actually plans for Steve’s absence.</p>\n\n<p>The thing is though, your job isn’t to <em>say</em> something, it’s to <em>communicate</em> something. If, as April approaches, it’s clear that nobody is taking into account this huge hole in the development plan, the fact you  mentioned it once a few weeks ago doesn’t save anybody from hitting that iceberg, taking on 7 tons of water per second, and inspiring a profitable but tragic blockbuster film starring Leonardo DiCaprio.</p>\n\n<p>So leaders tend to miss potential dangers. Whether brought on by optimism or distraction, it’s a thing. That’s why the name of the game is – repeat after me – <a href=\"https://www.youtube.com/watch?v=nt9c0UeYhFc\">repeat stuff</a>. If things are going to go wrong and nobody is doing anything about it, bring it up until they do something about it.</p>\n\n<p>Admittedly, repeating potentially unwelcome warnings can be uncomfortable or annoying, and a lot of us in software are conflict-adverse. Nobody wants to pick a fight or be antagonistic, so it helps to have an approach for this. Here’s one simple technique: <strong>raise the issue in the form of a question that points to a potential fix</strong>.</p>\n\n<p>While saying “This deadline still looks questionable” is easy enough to brush off or get generically defensive about, the question “What’s our plan if we miss this deadline?” requires the recipient to actually absorb and process the idea of maybe missing the deadline. Next time it seems like a warning isn’t being heeded, give it a try:</p>\n\n<ul>\n  <li>Since we probably won’t get all these features in, what are the lowest priority items in this list?</li>\n  <li>Have we announced this target release date to anybody, or is it just our internal goal?</li>\n  <li>How much time do you want us to spend attempting to hack around this limitation before it’s worth just building our own component for it?</li>\n  <li>Do you think you’ll have that budget authorization in by Friday, or should we be planning to pause development while we’re waiting for it?</li>\n  <li>Given how problematic these APIs have been in the past, can we put an extra week in the timeline for downtime and API regressions?</li>\n  <li>Do I get to run this place while Steve’s in Bora Bora?</li>\n</ul>\n\n<p>Of course, you have to keep question-oriented pushback from devolving into   passive-aggressive “would you rather us ship a good product, or add your stupid hamburger menu that everybody hates” needling. You can call out issues without being a jerk.</p>\n\n<p>In fact, these kinds of early warning questions often motivate positive conversations about icebergs before things are tense and options are limited. Ask them early, and ask them often. Otherwise, chances are, your project is in for a titanic surprise.</p>\n\n"-    },{-      "id": "/2017/feedback-mountain",-      "url": "http://www.allenpike.com/2017/feedback-mountain",-      "title": "Feedback Mountain",-      "date_published": "2017-02-28T22:00:00-08:00",-      "content_html": "<p>“Hire great people, and trust them to do good work”. I’ve always liked that idea. It feels right. Hiring great people is critical, and nobody likes to be micromanaged or criticized. So it seems simple – hire great people, and trust them to do good work. Try to stay out of their way.</p>\n\n<p>As a naturally trusting person, warm ideas like these always stuck with me as fledgling manager. Meanwhile, it’s always seemed to me that bold maxims about <em>driving people to achieve results</em> serve more to enable assholes than to actually inspire a great work culture.</p>\n\n<p>That said, as I’ve gotten a little older I’ve realized that there’s another reason that I naturally gravitate to the idea of trust: I’m adverse to conflict.</p>\n\n<p>It’s a longstanding Canadian tradition to dislike conflict. At our best, Canadians are polite, diplomatic, and give our peers the benefit of the doubt. At our worst, we avoid rocking the boat so long that it sinks.</p>\n\n<p><img src=\"http://www.allenpike.com/images/2017/kanye-meyers.jpg\" /></p>\n\n<p>To be clear, when somebody earnestly solicits feedback, I love providing it. So far this year, I’ve enjoyed critiquing an app’s UX flow, providing technical and copyediting feedback to an upcoming JSON specification, and even filled out an unreasonably long city zoning policy survey. (If you want a torrential rant, ask me about Vancouver zoning after a couple pale ales.)</p>\n\n<p>When unsolicited criticism come to mind though, the benefit of the doubt weighs heavily on me. They’re surely trying their best!  They must already know. Do they really need me demotivating them?</p>\n\n<p>Combined with my tendency to launch into free-flowing criticism when asked for it, I can give people the awful impression that I’m secretly harbouring resentment, or that my people are doing a bad job and not even hearing about it. This is the actual worst.</p>\n\n<p>While I’d long known more frequent feedback was a good idea in theory, the turning point didn’t happen until a year ago. At that time, I’d noted that somebody deserved a raise – a happy occasion. I promptly confirmed that we could afford to give them a raise, cleared it with my co-founder, and asked our office manager to make the change on the upcoming payroll.</p>\n\n<p>Then, I stalled. I found myself being a total awkward penguin about telling them. <em>What the hell was wrong with me?!</em> What could be an easier conversation than “You’re doing great, here’s more money”? This was the flashing red light in my brain that made me realize I had a problem. I needed a habit and process for giving feedback if I wanted to be an actual leader rather than just a boss.</p>\n\n<p><img src=\"http://www.allenpike.com/images/2017/penguin-hole.jpg\" /></p>\n\n<p>Luckily for me, there is already a well-known and well-documented approach for managers to give and receive feedback, and that’s the One on One. When we were two people working in a basement, formally scheduling repeating 1:1 meetings seemed ludicrous. When we were four people, my hatred for recurring meetings overruled common wisdom. By the time we were ten people, we were way overdue.</p>\n\n<p>A lot has been written about 1:1s, <a href=\"http://a16z.com/2012/08/18/a-good-place-to-work/\">why they’re important</a>, and <a href=\"http://randsinrepose.com/archives/the-update-the-vent-and-the-disaster/\">what can happen in them</a>. The core idea, though, is to have a regularly scheduled time with each person that reports to you to talk about something <em>other than the status of their projects</em>. This can be positive feedback, office issues, long-term growth ideas, ideas for improvement, feedback for you, personal triumphs or struggles – anything but the code.</p>\n\n<h2 id=\"so-hows-it-going\">So, how’s it going?</h2>\n\n<p>A year ago this week, I scheduled recurring 1:1s with everybody in the company. At the time, I sent one of my very rare team-wide emails to describe what and why.</p>\n\n<blockquote>\n  <p>The theory is that the agendas are led by you. The goal is to discuss new ideas, express concerns, and talk about what’s coming up. It’s not intended to be a project status meeting, but more of a people planning meeting. While they’re not performance reviews, part of the goal is to get us thinking about and talking about feedback and happiness more frequently.</p>\n</blockquote>\n\n<p>While our 1:1s are continuing to evolve and improve, and still have a way to go before I think we’re at optimal feedback bandwidth, they have greatly improved my comfort and skill at giving and receiving feedback. Folks have been a lot more motivated to think about learning and growth, and most importantly long-term problems now come up <em>way</em> faster than when we waited for people to bring them up in the course of work.</p>\n\n<p>Before 1:1s, people would often wait until they were deeply frustrated with something before bringing it up in a larger meeting. Now, I’m hearing about frustrations, hopes, and dreams while they’re still young and a lot can be done about them.</p>\n\n<p>Motivated by this success, we’ve recently become more enthusiastic about experimenting with our culture and how we communicate. Great work happens when you bring up the hard questions, debate different options, re-visit assumptions, and give constructive criticism in both directions. If you’re not sold on that, <a href=\"https://www.amazon.ca/dp/B00GL3HU4Y/ref=dp-kindle-redirect?_encoding=UTF8&amp;btkr=1\">you have a book to read</a>.</p>\n\n<p>I’m still adverse to micromanaging, and I still have great trust in my team, but I now know better than to attempt to fuel a team on trust alone. Teams are much better fed with clarity, support, and feedback – a diet low in calories, but high in power.</p>\n"-    }-  ]+{
+  "version": "https://jsonfeed.org/version/1",
+  "title": "Allen Pike",
+  "home_page_url": "https://www.allenpike.com/",
+  "feed_url": "http://www.allenpike.com/feed.json",
+  "author": {
+    "name": "Allen Pike"
+  },
+  "items": [
+    {
+      "id": "/2017/steve-stories",
+      "url": "http://www.allenpike.com/2017/steve-stories",
+      "title": "Steve Stories",
+      "date_published": "2017-04-30T20:00:00-07:00",
+      "content_html": "<p>Earlier this month I was lucky enough to be invited to speak at the <a href=\"http://2017.ull.ie/\">Úll</a> conference in Ireland. One of the many bonus features there was Steve Stories, a project that invited some of the presenters to record our favourite stories about Steve Jobs.</p>\n\n<p>Naturally, when I think of Steve stories, my mind first goes to Andy Hertzfeld’s classic site about the creation of the Mac, <a href=\"http://www.folklore.org/\">folklore.org</a>, and the accompanying book, <a href=\"https://www.amazon.ca/Revolution-Valley-Paperback-Insanely-Great-ebook/dp/B006BAW3N0/ref=tmm_kin_swatch_0\">Revolution in the Valley</a>. My favourite stories from those early days are about Steve’s infamous Reality Distortion Field.</p>\n\n<div class=\"getty embed image\" style=\"background-color:#fff;display:inline-block;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;color:#a7a7a7;font-size:11px;width:100%\"><div style=\"overflow:hidden;position:relative;height:0;padding:67.508418% 0 0 0;width:100%;\"><iframe src=\"http://www.allenpike.com//embed.gettyimages.com/embed/80823324?et=dnftxZfaQ7VUZLL6N4l0BQ&amp;tld=ca&amp;viewMoreLink=off&amp;sig=xgGsT73DtRP0lTLV90TA2nyvflsB9QmfUV7FUCnwXyU=&amp;caption=true\" width=\"100%\" scrolling=\"no\" frameborder=\"0\" style=\"display:inline-block;position:absolute;top:0;left:0;width:100%;height:100%;margin:0;\"></iframe></div><p style=\"margin:0;\"></p></div>\n\n<p>You see, in the early 80s when they were building the Macintosh, Steve was infamous for working the engineers <a href=\"http://www.folklore.org/StoryView.py?story=90_Hours_A_Week_And_Loving_It.txt\">disgustingly long hours</a> and putting them under extreme pressure to ship. Folks often threatened to leave, but if Steve wanted somebody to stay, they tended to stay.</p>\n\n<p>No matter how much a key engineer wanted to quit, if they went into Steve’s office to resign, he would always go into Reality Distortion mode and persuade them to feel like they wanted to stay. By the end of the conversation, the engineer would leave Steve’s office pumped and motivated. “Yeah, we <em>are</em> going to change the world! Wait… wasn’t I going in there to quit?”</p>\n\n<p>After some failed attempts at quitting, Burrell Smith, one of the key engineers behind the Mac, finally devised a way around Steve.</p>\n\n<p>“I’ve got it!” said Burrell. “I know the perfect way to quit that will nullify the Reality Distortion Field. I’ll just walk into Steve’s office, pull down my pants, and urinate on his desk. What could he say to that? It’s guaranteed to work.” The logic was sound.</p>\n\n<p>So he spends some time working up the courage to do this, and eventually makes his way to Steve’s office at the end of the day. He walks in, and Steve just asks, “Are you gonna do it?” Word had gotten around. “Are you really gonna do it?”</p>\n\n<p>Burrell looked Steve in the eye. “Do I have to? If I have to, I’ll do it.” He could tell by Steve’s expression that he didn’t have to. Burrell was free at last.</p>\n\n<h2 id=\"tales-tall-and-true\">Tales tall and true</h2>\n\n<p>Though most modern-era Apple employees were never lucky – or unlucky – enough to meet Steve Jobs, colourful stories about Steve were often shared between team members. While folks often enjoyed pumping up the <a href=\"https://www.theatlantic.com/technology/archive/2011/10/in-praise-of-bad-steve/246242/\">legends around Bad Steve</a>, I always liked the stories that humanized him.</p>\n\n<p>It’s been long said that when Steve Jobs would get into an elevator and see a rank and file employee, he would ask, simply, “What do you do?” An innocent enough question, on its face. However, given his years of accosting employees about their department’s shortcomings and the occasional summary firing, employees feared that you would be fired by the end of that elevator ride if Steve didn’t like your answer to “What do you do?”</p>\n\n<p>Reportedly a young designer at Apple had heard of this danger, and she was terrified of losing her job from such a chance encounter. She was newly pregnant and loved her job deeply, leading her to often rehearse in her head her answer – what if Steve Jobs ever asks “What do you do?”</p>\n\n<p>After one long day, she got in the elevator, and who else gets in, but Steve Jobs. Sure enough, he asks The Question and she’s off. She frantically launches into her elevator pitch, explaining her job, why her team is great, and she’s talking a mile a minute when Steve interrupts:</p>\n\n<blockquote>\n  <p>Whoa, whoa, uh… I said, <em>“When are you due?”</em></p>\n</blockquote>\n\n<p>They had a good laugh. I always liked these kinds of stories, the ones that push back on the idea that Steve was an unequivocal jerk, or worse that he succeeded <em>because</em> he was a jerk. While that makes for an interesting tale, it conflates the key skill – a critical eye – with one man’s intermittent hold on his temper.</p>\n\n<h2 id=\"the-stories-that-matter\">The stories that matter</h2>\n\n<p>The stories we choose to tell about our leaders matter greatly. At a large company, employees’ mental model of their CEO can be even more important than the CEO’s actual behaviour. As Apple grew to tens of thousands of employees, Steve could never oversee every decision, or even a significant fraction of those decisions. Yet he was always there, in every meeting or argument, as <em>our idea of Steve</em>.</p>\n\n<p>When debating a UI approach or feature decision, the ultimate appeal to authority was, “What would Steve say?” “Would Steve ever let us ship this?” “Is this really good enough?” Through his famously demanding product reviews, he pushed down into the organization an understanding of what kind of work was acceptable at Apple, and how far it’s worth going to get something right.</p>\n\n<p>When Steve passed away in 2011, there was fevered speculation that Apple was doomed. “How could a company built by such an exceptional leader ever survive without him?” I was never really worried about that. He is truly missed, but his methods were not some secret recipe, held under lock and key. Apple employees had already spent years thinking like Steve.</p>\n\n<p>—</p>\n\n<p><em><a href=\"https://twitter.com/agammell\">Adam Gammell</a>’s <a href=\"https://itunes.apple.com/il/app/steve-stories-%C3%BAll/id1215821983?mt=8\">Úll Steve Stories app</a> from the conference is now available on the App Store. It features the above stories, and more importantly additional stories from people much more interesting than I.</em></p>\n"
+    },{
+      "id": "/2017/principle-of-least-surprise",
+      "url": "http://www.allenpike.com/2017/principle-of-least-surprise",
+      "title": "The Principle of Least Surprise",
+      "date_published": "2017-03-31T20:00:00-07:00",
+      "content_html": "<p>The status meeting is going well. Your demo was well received, the new feature is looking great, and you’ve been nailing your estimates.</p>\n\n<p>The product manager glances at her notes, and remembers one last thing. “Oh also, a lot of customers are asking for offline editing support on this screen.” Your eyes narrow, as they always do when you hear <em>offline</em> and <em>editing</em> in the same sentence. “The CEO’s asked us to prioritize it, so we’re going to go ahead and add it to 1.0.”</p>\n\n<p><em>Bwoooooosh…</em> time slows. The product manager has just lobbed a Scope Bomb. A threat to any project, the Scope Bomb is capable of causing great disruption and despair.</p>\n\n<p>“Uh…” You try to think quickly. “It does seem like a good addition, but…” You stare down the bomb as it sails across the boardroom table. “I’m not sure if two weeks is enough time though.” There, you said it. Your defense is mounted: they have been warned.</p>\n\n<p>“Oh, I’m sure you can do it,” the project manager smiles. <em>“I have faith in you.”</em> Aw, that’s a nice thing to say.</p>\n\n<p>“Thanks,” you hear yourself respond – and just like that, the bomb is armed. Unless somebody disarms it, in two weeks it will go off. Everybody except you will be surprised. This is bad.</p>\n\n<p><img src=\"http://www.allenpike.com/images/2017/surprise.jpg\" /></p>\n\n<p>In project management, surprise is the enemy. All surprises are suspect, but bad surprises are the actual worst. They are, bar none, the most common cause of conflict and stress on projects. Whether you’re a project manager or a junior team member, everybody benefits if you work to avoid surprises.</p>\n\n<p>Yet, on most teams, people instead optimize for keeping up appearances. They give out optimistic estimates, assume that questionable approaches are being taken for good reasons, and <a href=\"http://calleam.com/WTPF/?p=1205\">green shift</a> status by under-reporting danger. They think, “Why worry them about the budget if we might still pull it off?” Shortcuts like these may make this week’s status meeting more pleasant, but they turn next month’s launch into a crunchy hell.</p>\n\n<p>You see, when potential problems lurk under the surface, decision-makers and managers <em>can’t do anything about them</em>. A team that’s off track early on can always be corrected. On the other hand, when the navigator is surprised by an iceberg, you’re gonna hit that iceberg.</p>\n\n<p>And so, in software, people are hitting icebergs all the damn time. Teams unexpectedly miss deadlines, architecture problems come to light at the last second, and Steve suddenly announces that his month-long vacation to Bora Bora starts tomorrow. God damnit Steve! Where even <em>is</em> Bora Bora? What the hell are we going to do now?</p>\n\n<p>Well, what we’re going to do is teach our team how to minimize surprises. Yes, the whole team. Having a skilled project manager on any team is valuable, but as with quality, surprise minimization starts with you.</p>\n\n<h2 id=\"ice-report-42-to-412n\">Ice report, 42 to 41.2N</h2>\n\n<p>The key to surprise minimization is – big shock here – communication. If there’s a problem in software development that isn’t somehow helped by better communication, I don’t know what it is. Perhaps cache invalidation.</p>\n\n<p>In any case, managers and other decision-makers get a lot of information thrown at them. They’re seeing status from everybody, they’re getting pressure from all sides, and just aren’t focused full-time on how your project is going. While it <em>is</em> their job to cut through this noise and focus on what matters, it’s <em>your</em> job to nominate potential problems and dangers for consideration.</p>\n\n<p>Now, these messages may not be fun to hear. An optimistic or distracted client may not absorb an early warning. Maybe you mention that Steve has vacation in April, but your CEO is “sure it will be fine.” It’s easy then, to lean back and feel absolved of your responsibility – whether or not anybody actually plans for Steve’s absence.</p>\n\n<p>The thing is though, your job isn’t to <em>say</em> something, it’s to <em>communicate</em> something. If, as April approaches, it’s clear that nobody is taking into account this huge hole in the development plan, the fact you  mentioned it once a few weeks ago doesn’t save anybody from hitting that iceberg, taking on 7 tons of water per second, and inspiring a profitable but tragic blockbuster film starring Leonardo DiCaprio.</p>\n\n<p>So leaders tend to miss potential dangers. Whether brought on by optimism or distraction, it’s a thing. That’s why the name of the game is – repeat after me – <a href=\"https://www.youtube.com/watch?v=nt9c0UeYhFc\">repeat stuff</a>. If things are going to go wrong and nobody is doing anything about it, bring it up until they do something about it.</p>\n\n<p>Admittedly, repeating potentially unwelcome warnings can be uncomfortable or annoying, and a lot of us in software are conflict-adverse. Nobody wants to pick a fight or be antagonistic, so it helps to have an approach for this. Here’s one simple technique: <strong>raise the issue in the form of a question that points to a potential fix</strong>.</p>\n\n<p>While saying “This deadline still looks questionable” is easy enough to brush off or get generically defensive about, the question “What’s our plan if we miss this deadline?” requires the recipient to actually absorb and process the idea of maybe missing the deadline. Next time it seems like a warning isn’t being heeded, give it a try:</p>\n\n<ul>\n  <li>Since we probably won’t get all these features in, what are the lowest priority items in this list?</li>\n  <li>Have we announced this target release date to anybody, or is it just our internal goal?</li>\n  <li>How much time do you want us to spend attempting to hack around this limitation before it’s worth just building our own component for it?</li>\n  <li>Do you think you’ll have that budget authorization in by Friday, or should we be planning to pause development while we’re waiting for it?</li>\n  <li>Given how problematic these APIs have been in the past, can we put an extra week in the timeline for downtime and API regressions?</li>\n  <li>Do I get to run this place while Steve’s in Bora Bora?</li>\n</ul>\n\n<p>Of course, you have to keep question-oriented pushback from devolving into   passive-aggressive “would you rather us ship a good product, or add your stupid hamburger menu that everybody hates” needling. You can call out issues without being a jerk.</p>\n\n<p>In fact, these kinds of early warning questions often motivate positive conversations about icebergs before things are tense and options are limited. Ask them early, and ask them often. Otherwise, chances are, your project is in for a titanic surprise.</p>\n\n"
+    },{
+      "id": "/2017/feedback-mountain",
+      "url": "http://www.allenpike.com/2017/feedback-mountain",
+      "title": "Feedback Mountain",
+      "date_published": "2017-02-28T22:00:00-08:00",
+      "content_html": "<p>“Hire great people, and trust them to do good work”. I’ve always liked that idea. It feels right. Hiring great people is critical, and nobody likes to be micromanaged or criticized. So it seems simple – hire great people, and trust them to do good work. Try to stay out of their way.</p>\n\n<p>As a naturally trusting person, warm ideas like these always stuck with me as fledgling manager. Meanwhile, it’s always seemed to me that bold maxims about <em>driving people to achieve results</em> serve more to enable assholes than to actually inspire a great work culture.</p>\n\n<p>That said, as I’ve gotten a little older I’ve realized that there’s another reason that I naturally gravitate to the idea of trust: I’m adverse to conflict.</p>\n\n<p>It’s a longstanding Canadian tradition to dislike conflict. At our best, Canadians are polite, diplomatic, and give our peers the benefit of the doubt. At our worst, we avoid rocking the boat so long that it sinks.</p>\n\n<p><img src=\"http://www.allenpike.com/images/2017/kanye-meyers.jpg\" /></p>\n\n<p>To be clear, when somebody earnestly solicits feedback, I love providing it. So far this year, I’ve enjoyed critiquing an app’s UX flow, providing technical and copyediting feedback to an upcoming JSON specification, and even filled out an unreasonably long city zoning policy survey. (If you want a torrential rant, ask me about Vancouver zoning after a couple pale ales.)</p>\n\n<p>When unsolicited criticism come to mind though, the benefit of the doubt weighs heavily on me. They’re surely trying their best!  They must already know. Do they really need me demotivating them?</p>\n\n<p>Combined with my tendency to launch into free-flowing criticism when asked for it, I can give people the awful impression that I’m secretly harbouring resentment, or that my people are doing a bad job and not even hearing about it. This is the actual worst.</p>\n\n<p>While I’d long known more frequent feedback was a good idea in theory, the turning point didn’t happen until a year ago. At that time, I’d noted that somebody deserved a raise – a happy occasion. I promptly confirmed that we could afford to give them a raise, cleared it with my co-founder, and asked our office manager to make the change on the upcoming payroll.</p>\n\n<p>Then, I stalled. I found myself being a total awkward penguin about telling them. <em>What the hell was wrong with me?!</em> What could be an easier conversation than “You’re doing great, here’s more money”? This was the flashing red light in my brain that made me realize I had a problem. I needed a habit and process for giving feedback if I wanted to be an actual leader rather than just a boss.</p>\n\n<p><img src=\"http://www.allenpike.com/images/2017/penguin-hole.jpg\" /></p>\n\n<p>Luckily for me, there is already a well-known and well-documented approach for managers to give and receive feedback, and that’s the One on One. When we were two people working in a basement, formally scheduling repeating 1:1 meetings seemed ludicrous. When we were four people, my hatred for recurring meetings overruled common wisdom. By the time we were ten people, we were way overdue.</p>\n\n<p>A lot has been written about 1:1s, <a href=\"http://a16z.com/2012/08/18/a-good-place-to-work/\">why they’re important</a>, and <a href=\"http://randsinrepose.com/archives/the-update-the-vent-and-the-disaster/\">what can happen in them</a>. The core idea, though, is to have a regularly scheduled time with each person that reports to you to talk about something <em>other than the status of their projects</em>. This can be positive feedback, office issues, long-term growth ideas, ideas for improvement, feedback for you, personal triumphs or struggles – anything but the code.</p>\n\n<h2 id=\"so-hows-it-going\">So, how’s it going?</h2>\n\n<p>A year ago this week, I scheduled recurring 1:1s with everybody in the company. At the time, I sent one of my very rare team-wide emails to describe what and why.</p>\n\n<blockquote>\n  <p>The theory is that the agendas are led by you. The goal is to discuss new ideas, express concerns, and talk about what’s coming up. It’s not intended to be a project status meeting, but more of a people planning meeting. While they’re not performance reviews, part of the goal is to get us thinking about and talking about feedback and happiness more frequently.</p>\n</blockquote>\n\n<p>While our 1:1s are continuing to evolve and improve, and still have a way to go before I think we’re at optimal feedback bandwidth, they have greatly improved my comfort and skill at giving and receiving feedback. Folks have been a lot more motivated to think about learning and growth, and most importantly long-term problems now come up <em>way</em> faster than when we waited for people to bring them up in the course of work.</p>\n\n<p>Before 1:1s, people would often wait until they were deeply frustrated with something before bringing it up in a larger meeting. Now, I’m hearing about frustrations, hopes, and dreams while they’re still young and a lot can be done about them.</p>\n\n<p>Motivated by this success, we’ve recently become more enthusiastic about experimenting with our culture and how we communicate. Great work happens when you bring up the hard questions, debate different options, re-visit assumptions, and give constructive criticism in both directions. If you’re not sold on that, <a href=\"https://www.amazon.ca/dp/B00GL3HU4Y/ref=dp-kindle-redirect?_encoding=UTF8&amp;btkr=1\">you have a book to read</a>.</p>\n\n<p>I’m still adverse to micromanaging, and I still have great trust in my team, but I now know better than to attempt to fuel a team on trust alone. Teams are much better fed with clarity, support, and feedback – a diet low in calories, but high in power.</p>\n"
+    }
+  ]
 }
feeds/daringfireball.net.json view
@@ -1,584 +1,584 @@-{-   "version" : "https://jsonfeed.org/version/1",-   "title" : "Daring Fireball",-   "home_page_url" : "https://daringfireball.net/",-   "feed_url" : "https://daringfireball.net/feeds/json",-   "author" : {-      "url" : "https://twitter.com/gruber",-      "name" : "John Gruber"-   },-   "icon" : "https://daringfireball.net/graphics/apple-touch-icon.png",-   "favicon" : "https://daringfireball.net/graphics/favicon-64.png",-   "items" : [-      {-         "title" : "Mossberg: The Disappearing Computer",-         "date_published" : "2017-05-26T03:56:37Z",-         "date_modified" : "2017-05-26T03:56:39Z",-         "id" : "https://daringfireball.net/linked/2017/05/25/mossberg",-         "url" : "https://daringfireball.net/linked/2017/05/25/mossberg",-         "external_url" : "https://www.recode.net/2017/5/25/15689094/mossberg-final-column",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>Walt Mossberg:</p>\n\n<blockquote>\n  <p>This is my last weekly column for The Verge and Recode &#8212; the last\nweekly column I plan to write anywhere. I’ve been doing these\nalmost every week since 1991, starting at the Wall Street Journal,\nand during that time, I’ve been fortunate enough to get to know\nthe makers of the tech revolution, and to ruminate &#8212; and\nsometimes to fulminate &#8212; about their creations.</p>\n\n<p>Now, as I prepare to retire at the end of that very long and\nworld-changing stretch, it seems appropriate to ponder the\nsweep of consumer technology in that period, and what we can\nexpect next.</p>\n</blockquote>\n\n<p>Godspeed on whatever&#8217;s next, Walt.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Mossberg: The Disappearing Computer’\"  href=\"https://daringfireball.net/linked/2017/05/25/mossberg\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "Nick Murray on Alcantara: ‘It’s Garbage’",-         "date_published" : "2017-05-25T17:03:28Z",-         "date_modified" : "2017-05-26T04:02:32Z",-         "id" : "https://daringfireball.net/linked/2017/05/25/murray-alcantara",-         "url" : "https://daringfireball.net/linked/2017/05/25/murray-alcantara",-         "external_url" : "https://www.youtube.com/watch?v=aebUNgMhQV4&feature=youtu.be",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>Interesting video by Nick Murray, discussing the merits of <a href=\"http://www.alcantara.com/\">Alcantara</a>, the synthetic suede-like product that <a href=\"https://www.microsoft.com/en-us/surface/devices/surface-laptop/innovation\">Microsoft has used</a> for their new Surface Laptop. Murray is coming from the perspective of Alcantara&#8217;s use in cars, not laptops, but he says it wears terribly on things you touch, like steering wheels and gear shifters, losing all its softness after just a few thousand miles. This might bode poorly for the Surface Laptop.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Nick Murray on Alcantara: &#8216;It&#8217;s Garbage&#8217;’\"  href=\"https://daringfireball.net/linked/2017/05/25/murray-alcantara\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "The Marc Newson Hourglass for Hodinkee",-         "date_published" : "2017-05-25T03:59:00Z",-         "date_modified" : "2017-05-25T17:08:45Z",-         "id" : "https://daringfireball.net/linked/2017/05/24/marc-newson-hourglass",-         "url" : "https://daringfireball.net/linked/2017/05/24/marc-newson-hourglass",-         "external_url" : "https://www.hodinkee.com/articles/marc-newson-hourglass-limited-edition-for-hodinkee",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>Watch the video and read this. I&#8217;ll update this post with my comments later today.</p>\n\n<p><strong>Update:</strong> OK, so my take on this is going to upset many of you. I first saw this last night via <a href=\"https://twitter.com/marcoarment/status/867210701697409024\">this tweet from Marco Arment</a>, and I read through the replies and every single one of them was mocking either the entire premise of an exquisite hourglass or at the very least the price.</p>\n\n<p>I think this looks beautiful, and I don&#8217;t think there&#8217;s anything crazy about it costing $12,000. I&#8217;m not buying one. But all sorts of pieces of art cost tens of thousands of dollars, and I say this is most definitely art. Newson&#8217;s previous hourglass design, for Ikepod, <a href=\"http://www.ablogtowatch.com/ikepod-hourglass-time-for-art/\">ranged from $13,000–40,000</a>.</p>\n\n<p>I do find it odd that every unit is numbered &#8220;1/100&#8221; rather than giving each piece a unique number &#8212; &#8220;1/100&#8221;, &#8220;2/100&#8221;, … &#8220;100/100&#8221;. And Hodinkee isn&#8217;t doing themselves any favors with some of the precious bits of copywriting (e.g. &#8220;approximately 1,249,996 little spheres&#8221; is not an approximation). But if you don&#8217;t see anything ludicrous about a mechanical watch costing in excess of $10,000 (or $100,000, <a href=\"https://www.forbes.com/sites/robertanaas/2017/05/13/rolex-bao-dai-watch-sells-for-more-than-5-million-at-phillips-auction-new-world-record/\">or more</a>) why is there something ludicrous about a $12,000 hourglass?</p>\n\n<p>The world is full of cheaply-made mass-produced crap. Why not celebrate the creation of something genuinely beautiful?</p>\n\n<div>\n<a  title=\"Permanent link to ‘The Marc Newson Hourglass for Hodinkee’\"  href=\"https://daringfireball.net/linked/2017/05/24/marc-newson-hourglass\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "‘Spectre’ Trailer Re-Cut With Roger Moore as Bond",-         "date_published" : "2017-05-24T21:28:28Z",-         "date_modified" : "2017-05-25T17:49:07Z",-         "id" : "https://daringfireball.net/linked/2017/05/24/moore-spectre",-         "url" : "https://daringfireball.net/linked/2017/05/24/moore-spectre",-         "external_url" : "http://io9.gizmodo.com/the-spectre-trailer-is-so-much-better-when-its-starring-1723648560",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>This is so well done it gave me goosebumps. Makes me think the franchise could use some Moore-like suaveness when they recast the role post-Craig.</p>\n\n<div>\n<a  title=\"Permanent link to ‘&#8216;Spectre&#8217; Trailer Re-Cut With Roger Moore as Bond’\"  href=\"https://daringfireball.net/linked/2017/05/24/moore-spectre\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "‘Moonraker’ — The Insane Attempt to Turn James Bond Into ‘Star Wars’ in 1979",-         "date_published" : "2017-05-24T21:23:38Z",-         "date_modified" : "2017-05-24T21:28:39Z",-         "id" : "https://daringfireball.net/linked/2017/05/24/moonraker",-         "url" : "https://daringfireball.net/linked/2017/05/24/moonraker",-         "external_url" : "http://io9.gizmodo.com/looking-back-at-moonrakers-insane-attempt-to-turn-james-1795486523",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>James Whitbrook, writing for io9:</p>\n\n<blockquote>\n  <p><em>Moonraker</em> might not be the best Bond movie &#8212; it might not even\nbe the best of Moore’s time with the Bond mantle. But all these\nyears later, its goofy charm perhaps best represents the joyful\ncamp that Moore brought to his role as 007, something we will\nalways remember now that he’s gone.</p>\n</blockquote>\n\n<p>Over the years, my youthful resistance to campiness has faded, and my esteem for <em>Moonraker</em> has grown. </p>\n\n<div>\n<a  title=\"Permanent link to ‘&#8216;Moonraker&#8217; &#8212; The Insane Attempt to Turn James Bond Into &#8216;Star Wars&#8217; in 1979’\"  href=\"https://daringfireball.net/linked/2017/05/24/moonraker\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "From the Annals of Anal",-         "date_published" : "2017-05-24T21:16:00Z",-         "date_modified" : "2017-05-24T21:16:01Z",-         "id" : "https://daringfireball.net/linked/2017/05/24/annals-of-anal",-         "url" : "https://daringfireball.net/linked/2017/05/24/annals-of-anal",-         "external_url" : "http://www.nydailynews.com/news/national/truck-plows-analtech-odor-leads-hazmat-situation-article-1.3189762",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>The New York Daily News:</p>\n\n<blockquote>\n  <p>At approximately 6:30 a.m. Monday, a car crash involving two\npickup trucks sent one of the vehicles inside the AnalTech\nbuilding of Newark, Del., leaving a giant hole. The truck damaged\nthe facility&#8217;s laboratory and caused an odor to emanate from the\ncavity, <a href=\"http://www.wdel.com/news/video-truck-rams-newark-s-analtech-odor-leads-to-hazmat/article_2795e0ce-3f07-11e7-9b77-8719895bf06b.html\">WDEL\nreports</a>.</p>\n</blockquote>\n\n<p>Regarding the company name:</p>\n\n<blockquote>\n  <p>In an email sent to the Houston Chronicle, a spokesperson\nrevealed, &#8220;In 1964, the company paid a marketing firm to come up\nwith a different name. They said, &#8216;Well, you guys do Analytical\nTechnology &#8212; why don’t you put the two words together and call it\n‘AnalTech!’”</p>\n\n<p>However, the spokesperson admitted that &#8220;AnalTech faces certain\nchallenges because of the &#8216;juvenile&#8217; humor that has developed in\nthe past few decades and current web filters that may block the\ncompany name&#8221; and has considered rebranding as a result.</p>\n</blockquote>\n\n<p>I don&#8217;t see anything &#8220;juvenile&#8221; about this humor. Good butt jokes are funny to all ages.</p>\n\n<p>(<a href=\"https://onefoottsunami.com/2017/05/24/analtech-is-a-really-awful-name-for-a-company/\">Via Paul Kafasis</a>.)</p>\n\n<div>\n<a  title=\"Permanent link to ‘From the Annals of Anal’\"  href=\"https://daringfireball.net/linked/2017/05/24/annals-of-anal\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "★ Safari vs. Chrome on the Mac",-         "date_published" : "2017-05-24T20:36:39Z",-         "date_modified" : "2017-05-25T17:14:06Z",-         "id" : "https://daringfireball.net/2017/05/safari_vs_chrome_on_the_mac",-         "url" : "https://daringfireball.net/2017/05/safari_vs_chrome_on_the_mac",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>Eric Petitt, <a href=\"https://medium.com/the-official-unofficial-firefox-blog/browse-against-the-machine-e793c0fee917\">writing for The Official Unofficial Firefox Blog yesterday</a>:</p>\n\n<blockquote>\n  <p>I head up Firefox marketing, but I use Chrome every day. Works\nfine. Easy to use. Like most of us who spend too much time in\nfront of a laptop, I have two browsers open; Firefox for work,\nChrome for play, customized settings for each. There are multiple\nthings that bug me about the Chrome product, for sure, but I‘m OK\nwith Chrome. I just don’t like <em>only</em> being on Chrome. [&#8230;]</p>\n\n<p>But talking to friends, it sounds more and more like living on\nChrome has started to feel like their only option. Edge is broken.\nSafari and Internet Explorer are just plain bad. And\nunfortunately, too many people think Firefox isn’t a modern\nalternative.</p>\n</blockquote>\n\n<p>In an update posted today, he walked that back:</p>\n\n<blockquote>\n  <p>In my original post I made a personal dig about Edge, IE and\nSafari: “Edge is broken. Safari and Internet Explorer are just\nplain bad.” I’ve since deleted that sentence.</p>\n\n<p>It’s true, I personally don’t like those products, they just don’t\nwork for me. But that was probably a bit too flip. And, if it\nwasn’t obvious that those were my personal opinions as a user, not\nthose of the good folks at Firefox and Mozilla, then please accept\nmy apology.</p>\n</blockquote>\n\n<p>It&#8217;s easy when making an aside &#8212; and it&#8217;s clear that the central premise of this piece is about positioning Chrome as the Goliath to Firefox&#8217;s David, so references to Safari and IE are clearly asides &#8212; to conflate &#8220;<em>I don&#8217;t like X</em>&#8221; with &#8220;<em>X is bad</em>&#8221;. So I say we let it slide.<sup id=\"fnr1-2017-05-24\"><a href=\"#fn1-2017-05-24\">1</a></sup></p>\n\n<p>But I&#8217;ve been meaning to write about Safari vs. Chrome for a while, and Petitt&#8217;s jab, even retracted, makes for a good excuse.</p>\n\n<p>I think Safari is a <em>terrific</em> browser. It remains the one and only browser for the Mac that behaves like a native Mac app through and through. It may not be the fastest browser but it is fast. And its energy performance puts Chrome to shame. If you use a Mac laptop, using Chrome instead of Safari can cost you an hour or more of battery life per day.<sup id=\"fnr2-2017-05-24\"><a href=\"#fn2-2017-05-24\">2</a></sup></p>\n\n<p>But Chrome is a terrific browser, too. It&#8217;s clearly the second-most-Mac-like browser for MacOS. It almost inarguably has the widest and deepest extension ecosystem. It has good web developer tools, and Chrome adopts new web development technologies faster than Safari does.</p>\n\n<p>But Safari&#8217;s extension model is more privacy-conscious. For many people on MacOS, the decision between Safari and Chrome probably comes down to which ecosystem you&#8217;re more invested in &#8212; iCloud or Google &#8212; for things like tab, bookmark, and history syncing. Me, personally, I&#8217;d feel lost without the ability to send tabs between my Macs and iPhone via Handoff. <strong>Update:</strong> Unbeknownst to me, Chrome fully supports Handoff with iOS devices. Nice!</p>\n\n<p>In short, Safari closely reflects Apple&#8217;s institutional priorities (privacy, energy efficiency, the niceness of the native UI, support for MacOS and iCloud technologies) and Chrome closely reflects Google&#8217;s priorities (speed, convenience, a web-centric rather than native-app-centric concept of desktop computing, integration with Google web properties). Safari is Apple&#8217;s browser for Apple devices. Chrome is Google&#8217;s browser for all devices.</p>\n\n<p>I personally prefer Safari, but I can totally see why others &#8212; especially those who work on desktop machines or MacBooks that are usually plugged into power &#8212; prefer Chrome. DF readers agree. Looking at my web stats, over the last 30 days, 69 percent of Mac users visiting DF used Safari, but a sizable 28 percent used Chrome. (Firefox came in at 3 percent, and everything else was under 1 percent.)<sup id=\"fnr3-2017-05-24\"><a href=\"#fn3-2017-05-24\">3</a></sup></p>\n\n<p>As someone who&#8217;s been a Mac user long enough to remember when there were <em>no</em> good web browsers for the Mac, having both Safari and Chrome feels downright bountiful, and the competition is making both of them better.</p>\n\n<div class=\"footnotes\">\n<hr />\n<ol>\n<li id=\"fn1-2017-05-24\">\n<p>What really struck me about Petitt&#8217;s piece wasn&#8217;t the unfounded (to my eyes) dismissal of Safari, but rather his admission that he uses &#8220;Firefox for work,  Chrome for play&#8221;. I really doubt the marketing managers for Chrome or Safari spend their days with a rival browser open for &#8220;play&#8221;, and even if they did, I expect they&#8217;d have the common sense not to admit so publicly, and especially not in the opening paragraph of a piece arguing that their own browser is a viable alternative to the rival one.&nbsp;<a href=\"#fnr1-2017-05-24\"  class=\"footnoteBackLink\"  title=\"Jump back to footnote 1 in the text.\">&#x21A9;&#xFE0E;</a></p>\n</li>\n<li id=\"fn2-2017-05-24\">\n<p>Back in December, when Consumer Reports rushed out their sensational report <a href=\"https://daringfireball.net/linked/2016/12/23/cr-mbp\">claiming bizarrely erratic battery life</a> on the then-new MacBook Pros (which was eventually determined to be <a href=\"https://daringfireball.net/linked/2017/01/12/consumer-reports\">caused by a bug in Safari that Apple soon fixed</a>), I decided to try to loosely replicate their test on the MacBook Pro review units I had from Apple. Consumer Reports doesn&#8217;t reveal the exact details of their testing, but they do describe it in general. They set the laptop brightness to a certain brightness value, then load a list of web pages repeatedly until the battery runs out. Presumably they automate this with a script of some sort, but they don&#8217;t say.</p>\n\n<p>That&#8217;s pretty easy to replicate in AppleScript. I used that day&#8217;s leading stories on <a href=\"https://www.techmeme.com/\">TechMeme</a> as my source for URLs to load &#8212; 26 URLs total. When a page loads, my script waits 5 seconds, and then scrolls down (simulating the Page Down key), waits another 5 seconds and pages down again, and then waits another 5 seconds before paging down one last time. This is a simple simulation of a person actually reading a web page. While running through the list of URLs, my script leaves each URL open in a tab. At the end of the list, it closes all tabs and then starts all over again. Each time through the loop the elapsed time and remaining battery life are logged to a file. (I also logged results as updates via messages sent to myself via iMessage, so I could monitor the progress of the hours-long test runs from my phone. No apps were running during the tests other than Safari, Script Editor, Finder, and Messages.)</p>\n\n<p>I set the display brightness at exactly 68.75 percent for each test (11/16 clicks on the brightness meter when using the function key buttons to adjust), a value I chose arbitrarily as a reasonable balance for someone running on battery power.</p>\n\n<p>Averaged (and rounded) across several runs, I got the following results:</p>\n\n<ul>\n<li>15-inch MacBook Pro With Touch Bar: 6h:50m</li>\n<li>13-inch MacBook Pro With Touch Bar: 5h:30m</li>\n<li>13-inch MacBook Pro (2014): 5h:10m</li>\n<li>11-inch MacBook Air (2011): 2h:15m</li>\n</ul>\n\n<p>I no longer had a new 13-inch MacBook Pro without the Touch Bar (a.k.a. the &#8220;MacBook Esc&#8221;) &#8212; I&#8217;d sent it back to Apple. I included my own personal 2014 13-inch MacBook Pro and my old 2011 MacBook Air just as points of reference. I think the Air did poorly just because it was so old and so well-used. It still has its original battery.</p>\n\n<p>I saw <em>no</em> erratic fluctuations in battery life across runs of the test. I procrastinated on publishing the results, though, and within a few weeks the whole thing was written off with a &#8220;<em>never mind!</em>&#8221; when Apple fixed the bug in Safari that was causing Consumer Reports&#8217;s erratic results.</p>\n\n<p>Anyway, the whole point of including these results in this footnote is that I also ran the exact same test with Chrome on the 13-inch MacBook Pro With Touch Bar. The average result: 3h:40m. That&#8217;s 1h:50m difference. On the exact same machine running the exact same test with the exact same list of URLs, the battery lasted almost exactly 1.5 times as long using Safari than Chrome.</p>\n\n<p>My test was in no way meant to simulate real-world usage. You&#8217;d have to be fueled up on some serious stimulants to read a new web page every 15 seconds non-stop for hours on end. But the results were striking. If you place a high priority on your MacBook&#8217;s battery life, you should use Safari instead of Chrome.</p>\n\n<p>If you&#8217;re interested, I&#8217;ve posted my battery testing scripts for <a href=\"https://gist.github.com/gruber/ad201668b31d21096456d7abf11acbd3\">Safari</a> and <a href=\"https://gist.github.com/gruber/15d7183f04c2ac1c51ee6a2637925ebd\">Chrome</a>.&nbsp;<a href=\"#fnr2-2017-05-24\"  class=\"footnoteBackLink\"  title=\"Jump back to footnote 2 in the text.\">&#x21A9;&#xFE0E;︎</a></p>\n</li>\n<li id=\"fn3-2017-05-24\">\n<p>If anyone has a good source for browser usage by MacOS users from a general purpose website like The New York Times or CNN, let me know. I honestly don&#8217;t know whether to expect that the split among DF readers is biased in favor of Safari because DF readers are more likely to care about the advantages of a native app, or biased in favor of Chrome because so many of you are web developers or even just nerdy enough to install a third-party browser in the first place. Wikimedia used to publish stats like that, but alas, <a href=\"https://stats.wikimedia.org/wikimedia/squids/SquidReportClients.htm\">ceased in 2015</a>.&nbsp;<a href=\"#fnr3-2017-05-24\"  class=\"footnoteBackLink\"  title=\"Jump back to footnote 3 in the text.\">&#x21A9;&#xFE0E;︎</a></p>\n</li>\n\n</ol>\n</div>\n\n\n\n    "-      },-      {-         "title" : "Meeting Roger Moore",-         "date_published" : "2017-05-24T01:27:46Z",-         "date_modified" : "2017-05-24T01:27:48Z",-         "id" : "https://daringfireball.net/linked/2017/05/23/meeting-roger-moore",-         "url" : "https://daringfireball.net/linked/2017/05/23/meeting-roger-moore",-         "external_url" : "https://twitter.com/MrKenShabby/status/867036448037511169",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>Amazing story from Marc Haynes about meeting Roger Moore as a 7-year-old in 1983. </p>\n\n<p>(This tweet I&#8217;m linking to has screenshots of Haynes&#8217;s post on Facebook; <a href=\"http://www.northstandchat.com/showthread.php?352470-Roger-Moore-has-died/page6\">here&#8217;s the same story in text</a> copied and pasted into a forum, without attribution. Have I ever complained about how much I dislike Facebook?)</p>\n\n<div>\n<a  title=\"Permanent link to ‘Meeting Roger Moore’\"  href=\"https://daringfireball.net/linked/2017/05/23/meeting-roger-moore\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "Implementing JSON Feed",-         "date_published" : "2017-05-23T20:23:16Z",-         "date_modified" : "2017-05-24T01:18:09Z",-         "id" : "https://daringfireball.net/linked/2017/05/23/json-feed-dr-drang",-         "url" : "https://daringfireball.net/linked/2017/05/23/json-feed-dr-drang",-         "external_url" : "http://leancrew.com/all-this/2017/05/implementing-json-feed/",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>Dr. Drang, after adding JSON Feed support for both his blog publishing engine <em>and</em> his homegrown feed reader:</p>\n\n<blockquote>\n  <p>JSON Feed, for all its advantages, may be a flash in the pan. Not\nonly do bloggers and publishing platforms have to adopt it, so do\nthe major aggregator/reader services like Feedly and Digg and the\nanalytics services like FeedPress and FeedBurner. But even if JSON\nFeed doesn’t take off, the time I spent adding it to my blog and\naggregator was so short I won’t regret it.</p>\n</blockquote>\n\n<p>Again I say: easier to generate, easier to parse.</p>\n\n<p><strong>Update:</strong> <a href=\"https://www.robjwells.com/2017/05/json-feed/\">Rob Wells on adding JSON feed to his site</a>:</p>\n\n<blockquote>\n  <p>I think this is what all the people complaining on the Hacker News\nthread missed. Working in JSON is comfortable and familiar &#8212; the\ntools are good and you get told when something goes wrong. Working\nwith XML can be unclear and a bit of a pain, and creating an\ninvalid document is a risk.</p>\n\n<p>So my super-duper advanced JSON Feed implementation is…\nconstructing a <code>dict</code>, adding things to it and passing it off to\nthe JSON module that I use <em>all the time</em>. Taken care of.</p>\n</blockquote>\n\n<p>I do something similar to what Wells and Drang do. DF&#8217;s RSS and Atom XML feeds are generated via templates: skeleton XML documents with tokens and loop constructs where the actual content gets filled in. But for JSON Feed I just build a Perl data structure that maps exactly to the JSON Feed spec, and just call a single function from the standard JSON module and it gets printed. That&#8217;s it. A template would add complexity.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Implementing JSON Feed’\"  href=\"https://daringfireball.net/linked/2017/05/23/json-feed-dr-drang\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "Feedbin, Too",-         "date_published" : "2017-05-23T18:50:36Z",-         "date_modified" : "2017-05-23T19:03:33Z",-         "id" : "https://daringfireball.net/linked/2017/05/23/feedbin-too",-         "url" : "https://daringfireball.net/linked/2017/05/23/feedbin-too",-         "external_url" : "https://feedbin.com/blog/2017/05/22/feedbin-supports-json-feed/",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>Ben Ubois, announcing support for JSON Feed in Feedbin:</p>\n\n<blockquote>\n  <p>One of the criticisms I’ve seen of JSON Feed is that there’s no\nincentive for feed readers to support JSON Feed. This is not true.\nOne of the largest-by-volume support questions I get is along the\nlines of “Why does this random feed not work?” And, 95% of the\ntime, it’s because the feed is broken in some subtle way. JSON\nFeed will help alleviate these problems, because it’s easier to\nget right.</p>\n\n<p>I also want JSON Feed to succeed because I remember how daunting\nRSS/Atom parsing were when building Feedbin. If JSON Feed was the\ndominant format back then, it would have been a non-issue.</p>\n</blockquote>\n\n<p>Easier to generate <em>and</em> easier to parse &#8212; that&#8217;s the whole point of JSON Feed in a nut.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Feedbin, Too’\"  href=\"https://daringfireball.net/linked/2017/05/23/feedbin-too\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "NewsBlur Now Supports JSON Feed",-         "date_published" : "2017-05-23T18:44:42Z",-         "date_modified" : "2017-05-23T18:44:43Z",-         "id" : "https://daringfireball.net/linked/2017/05/23/newsblur-json-feed",-         "url" : "https://daringfireball.net/linked/2017/05/23/newsblur-json-feed",-         "external_url" : "http://blog.newsblur.com/post/160982162270/newsblur-now-supports-the-new-json-feed-spec",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>Samuel Clay, founder of NewsBlur:</p>\n\n<blockquote>\n  <p>Starting today, NewsBlur now officially supports the new JSON Feed\nspec. And there’s nothing extra you have to do. This means if a\nwebsite syndicates their stories with the easy-to-write and\neasy-to-read JSON format, you can read it on NewsBlur. It should\nmake no difference to you, since you’re reading the end product.\nBut to website developers everywhere, supporting JSON Feeds is so\nmuch easier than supporting XML-based RSS/Atom.</p>\n</blockquote>\n\n<p>According to Clay, there are 15,000 NewsBlur users who subscribe to Daring Fireball. It&#8217;s very cool to see a feed reader that popular adopt JSON Feed so quickly.</p>\n\n<p>The DF RSS feed isn&#8217;t going anywhere, so if you&#8217;re already subscribed to it, there&#8217;s no need to switch. But JSON Feed&#8217;s spec makes it possible for me to specify both a <code>url</code> that points to the post on Daring Fireball (i.e. the permalink) and an <code>external_url</code> that points to the article I&#8217;m linking to. The way I&#8217;ve dealt with that in the RSS (technically Atom, but that&#8217;s sort of beside the point) is a bit of a hack that&#8217;s caused problems with numerous feed readers over the years.</p>\n\n<div>\n<a  title=\"Permanent link to ‘NewsBlur Now Supports JSON Feed’\"  href=\"https://daringfireball.net/linked/2017/05/23/newsblur-json-feed\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "Roger Moore’s Recipe for a Perfect Martini",-         "date_published" : "2017-05-23T18:24:49Z",-         "date_modified" : "2017-05-23T18:24:50Z",-         "id" : "https://daringfireball.net/linked/2017/05/23/moore-perfect",-         "url" : "https://daringfireball.net/linked/2017/05/23/moore-perfect",-         "external_url" : "https://www.theguardian.com/lifeandstyle/2015/mar/17/how-make-dry-martini-roger-moore-way-james-bond",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>Worth <a href=\"https://daringfireball.net/linked/2015/11/01/moore-martini\">a re-link</a> today: Roger Moore, two years ago, writing for The Guardian:</p>\n\n<blockquote>\n  <p>The sad fact is that I know exactly how to make a dry martini but I\ncan’t drink them because, two years ago, I discovered I was\ndiabetic. I prefer one with gin, but James Bond liked a vodka\nmartini, “shaken not stirred” &#8212; which I never said, by the way.\nThat was Sean Connery, remember him?</p>\n\n<p>The worst martini I’ve ever had was in a club in New Zealand,\nwhere the barman poured juice from a bottle of olives into the\nvodka. That’s called a dirty martini and it is a dirty, filthy,\nrotten martini, and should not be drunk by anybody except\ncondemned prisoners.</p>\n\n<p>My dry martinis taste amazing and the day they tell me I’ve got 24\nhours to live I am going to have six. Here’s how I make them.</p>\n</blockquote>\n\n<p>I hope he had all six yesterday.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Roger Moore&#8217;s Recipe for a Perfect Martini’\"  href=\"https://daringfireball.net/linked/2017/05/23/moore-perfect\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "★ ‘The Spy Who Loved Me’",-         "date_published" : "2017-05-23T18:11:54Z",-         "date_modified" : "2017-05-26T04:36:03Z",-         "id" : "https://daringfireball.net/2017/05/moore_spy_who_loved_me",-         "url" : "https://daringfireball.net/2017/05/moore_spy_who_loved_me",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>Chris Murphy, <a href=\"http://www.cnn.com/2013/02/25/sport/alpine-bond-skiing-iconic/\">writing for CNN back in 2013</a> on the &#8220;greatest James Bond scene of all time&#8221;:</p>\n\n<blockquote>\n  <p>Despite this wealth of choice, a series of Bond experts, and one\nof the film&#8217;s legendary producers, are in no doubt as to which\nscene should be anointed the best ever.</p>\n\n<p>And given the recurring role that skiing has played throughout the\nlife of Bond, it should comes as no surprise our panel&#8217;s chosen\nencounter occurs on the slopes. &#8220;I would argue the most iconic\nsequence is in &#8216;The Spy Who Loved Me&#8217;, when Bond shot straight off\nthe edge of a cliff at Baffin Island in Canada,&#8221; Ajay Chowdhury,\neditor of the James Bond International Fan Club, told CNN.</p>\n\n<p>&#8220;We saw him fall and fall, and when the Union Jack parachute\nopened up and the theme tune kicked in, the world cheered.</p>\n\n<p>&#8220;That was Britain&#8217;s Queen Elizabeth&#8217;s Jubilee Year in 1977 and I\nthink to this day it was (famous Bond producer) Albert &#8216;Cubby&#8217;\nBroccoli&#8217;s favorite ever scene in a Bond movie.</p>\n\n<p>&#8220;When everything cleared it was him, on his own against the world.\nYou play that sequence around the world and it is James Bond. And\nhe did it on skis.&#8221;</p>\n</blockquote>\n\n<p><a href=\"https://www.youtube.com/watch?v=_kyQauA2udc\">That opening scene in <em>The Spy Who Loved Me</em></a> is also the one <a href=\"https://daringfireball.net/2015/04/watch_apple_watch\">where Bond is wearing a digital Seiko watch</a> that can receive secure text messages from MI6 &#8212; at the time, sheer fantasy; today, a feature many of you reading this now have on your own watch. (Albeit without the ticker tape.)</p>\n\n<p>I don&#8217;t know if it&#8217;s the single best Bond <em>scene</em> of all time, but it&#8217;s up there, and it&#8217;s almost certainly the best Bond <em>stunt</em> of all time &#8212; stuntman <a href=\"https://en.wikipedia.org/wiki/Rick_Sylvester\">Rick Sylvester</a> actually skied off that cliff and parachuted to safety. I just love how the fall takes place in silence.</p>\n\n<p>Without hesitation I would put <em>The Spy Who Loved Me</em> at the top of my list of Roger Moore&#8217;s Bond films. It has everything: the aforementioned great opening, an iconic car (the submarine-convertible white Lotus Esprit<sup id=\"fnr1-2017-05-23\"><a href=\"#fn1-2017-05-23\">1</a></sup>), a great villain (Jaws), and a perfect theme song (Carly Simon&#8217;s &#8220;Nobody Does It Better&#8221;). Bernard Lee was still in the role as M. And at the center of it all, Roger Moore at his cool, suave, and assured best.</p>\n\n<p>Moore was quite self-aware of what he brought to the role. His take, <a href=\"http://www.npr.org/2014/11/15/364077265/roger-moore-the-man-with-the-golden-life\">in a 2014 interview with NPR</a>, is exactly right:</p>\n\n<blockquote>\n  <p>I look like a comedic lover, and Sean [Connery] in particular, and\nDaniel Craig now, they are killers. They look like killers. I\nwouldn&#8217;t like to meet Daniel Craig on a dark night if I&#8217;d said\nanything bad about him.</p>\n</blockquote>\n\n<p>Moore&#8217;s Bond had fun doing his job.</p>\n\n<div class=\"footnotes\">\n<hr />\n<ol>\n<li id=\"fn1-2017-05-23\">\n<p><a href=\"https://www.theguardian.com/technology/2013/oct/18/tesla-elon-musk-james-bond-lotus-submarine-car\">Now owned by Elon Musk</a>.&nbsp;<a href=\"#fnr1-2017-05-23\"  class=\"footnoteBackLink\"  title=\"Jump back to footnote 1 in the text.\">&#x21A9;&#xFE0E;</a></p>\n</li>\n</ol>\n</div>\n\n\n\n    "-      },-      {-         "title" : "Roger Moore Dies at 89",-         "date_published" : "2017-05-23T17:28:44Z",-         "date_modified" : "2017-05-23T19:36:44Z",-         "id" : "https://daringfireball.net/linked/2017/05/23/moore",-         "url" : "https://daringfireball.net/linked/2017/05/23/moore",-         "external_url" : "https://twitter.com/sirrogermoore/status/867005447018086400",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>A terrific and much-loved actor, but also by all accounts a good man.</p>\n\n<p>&#8220;Who&#8217;s your favorite James Bond?&#8221; is a fun game to play, because there&#8217;s no wrong answer. I have at least two friends who swear their answer is Lazenby. But one thing I would argue is undeniable about Moore&#8217;s run as Bond is that he was the <em>perfect</em> Bond for the 70s. He didn&#8217;t just keep the franchise going, he helped adapt it to the times. Sean Connery made Bond a sensation. Roger Moore turned it into a cinematic and pop-cultural institution.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Roger Moore Dies at 89’\"  href=\"https://daringfireball.net/linked/2017/05/23/moore\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "Spotlight Performance Problems on iOS",-         "date_published" : "2017-05-22T19:57:15Z",-         "date_modified" : "2017-05-25T17:25:03Z",-         "id" : "https://daringfireball.net/linked/2017/05/22/heer-slack-spotlight",-         "url" : "https://daringfireball.net/linked/2017/05/22/heer-slack-spotlight",-         "external_url" : "https://pxlnv.com/linklog/slack-indexing-spotlight/",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>Nick Heer:</p>\n\n<blockquote>\n  <p>I’ve generally had pretty good luck with Spotlight on iOS, but\nI’ve long noticed that results are delayed or nonexistent after\nnot using it for a little while, particularly if I haven’t\nrebooted my phone recently. I thought I was losing my head a\nlittle bit, until I found a tip on Twitter from Anand Iyer :</p>\n\n<p>Settings > General > Spotlight Search > toggle Slack off</p>\n</blockquote>\n\n<p>A week or so ago I ran into this, where Spotlight was running so slowly on my iPhone that it was unusable. Restarting my phone fixed the problem, but I&#8217;ll bet it was this Slack problem.</p>\n\n<p><strong>Update:</strong> Sounds like there might be widespread problems with Spotlight indexing on iOS 10, because a bunch of readers have written to say they have the same problem but don&#8217;t even have Slack installed.</p>\n\n<p><strong>Update 2:</strong> Several readers are saying this was a bug in iOS 10.3.1 but has been fixed in last week&#8217;s 10.3.2 update.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Spotlight Performance Problems on iOS’\"  href=\"https://daringfireball.net/linked/2017/05/22/heer-slack-spotlight\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "How Anker Is Beating Apple and Samsung at Their Own Accessory Game",-         "date_published" : "2017-05-22T19:45:20Z",-         "date_modified" : "2017-05-22T21:09:13Z",-         "id" : "https://daringfireball.net/linked/2017/05/22/anker",-         "url" : "https://daringfireball.net/linked/2017/05/22/anker",-         "external_url" : "https://www.theverge.com/2017/5/22/15673712/anker-battery-charger-amazon-empire-steven-yang-interview",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>Nice profile of Anker by Nick Statt for The Verge:</p>\n\n<blockquote>\n  <p>So in airports, the back of cabs, and on city streets we’re\nplugging into lithium-ion slabs in our pockets and bags to stay\nconnected. The market for portable battery packs generated $360\nmillion in the 12 months ending in March, 2017 in the US alone.\nThe brands behind these packs are largely anonymous &#8212; Kmashi,\nJackery, and iMuto &#8212; and they often stay that way.</p>\n\n<p>Except Anker. The steady rise of the company’s profile is proof\nthat it’s possible to meet one very specific consumer need and\nride that wave as it continues to ripple out to other markets. A\nmajority of Anker’s sales come from cables and wall chargers, and\nit’s now moving into the smart home and auto market &#8212; anywhere a\nplug and a cable can solve a problem.</p>\n</blockquote>\n\n<p>It&#8217;s always satisfying to see a company thrive by focusing on making great products.</p>\n\n<div>\n<a  title=\"Permanent link to ‘How Anker Is Beating Apple and Samsung at Their Own Accessory Game’\"  href=\"https://daringfireball.net/linked/2017/05/22/anker\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "‘On Margins’",-         "date_published" : "2017-05-22T19:02:20Z",-         "date_modified" : "2017-05-22T19:02:22Z",-         "id" : "https://daringfireball.net/linked/2017/05/22/on-margins",-         "url" : "https://daringfireball.net/linked/2017/05/22/on-margins",-         "external_url" : "https://craigmod.com/onmargins/",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>New podcast from the inimitable Craig Mod about the art of making books. <a href=\"https://craigmod.com/onmargins/001/\">The first episode is an interview with Jan Chipchase</a>:</p>\n\n<blockquote>\n  <p>Researcher and author Jan Chipchase has a new book &#8212; &#8220;The Field\nStudy Handbook.&#8221; We discuss how he came to produce this 500+ page\nmagnum opus &#8212; a distillation of his life&#8217;s work &#8212; and why he is\nself publishing.</p>\n</blockquote>\n\n<div>\n<a  title=\"Permanent link to ‘&#8216;On Margins&#8217;’\"  href=\"https://daringfireball.net/linked/2017/05/22/on-margins\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "Boring Google",-         "date_published" : "2017-05-22T18:45:37Z",-         "date_modified" : "2017-05-22T18:45:39Z",-         "id" : "https://daringfireball.net/linked/2017/05/22/thompson-google-io",-         "url" : "https://daringfireball.net/linked/2017/05/22/thompson-google-io",-         "external_url" : "https://stratechery.com/2017/boring-google/",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>Ben Thompson, in praise of Google&#8217;s &#8220;boring&#8221; I/O keynote:</p>\n\n<blockquote>\n  <p>Google Assistant has a long ways to go, but there is a clear\npicture of what success will look like: Google Photos. Launched\nonly two years ago, Pichai bragged that Photos now has over 500\nmillion active users who upload 1.2 billion photos a day. This is\na spectacular number for one very simple reason: Google Photos is\n<em>not</em> the default photo app for Android or iOS. Rather, Google has\nearned all of those photos simply by being better than the\ndefaults, and the basis of that superiority is Google’s machine\nlearning.</p>\n\n<p>Moreover, much like search, Photos gets better the more data it\ngets, creating a virtuous cycle: more photos means more data which\nmeans a better experience which means more users which means more\nphotos. It is already hard to see other photo applications\ncatching up.</p>\n</blockquote>\n\n<p>Google Photos is Google at its best. Their visual recognition is clearly the best in the world right now, and Thompson makes a good point that the &#8220;virtuous circle&#8221; makes it difficult for anyone to catch up.</p>\n\n<p>In addition to being a great product, technically, Google Photos also launched with <a href=\"http://daringfireball.net/linked/2016/08/08/google-photos-sick-burn\">a terrific ad campaign</a>.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Boring Google’\"  href=\"https://daringfireball.net/linked/2017/05/22/thompson-google-io\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "Every Color of Cardigan Mister Rogers Wore From 1979–2001",-         "date_published" : "2017-05-22T17:53:29Z",-         "date_modified" : "2017-05-22T17:53:31Z",-         "id" : "https://daringfireball.net/linked/2017/05/22/mr-rogers-sweaters",-         "url" : "https://daringfireball.net/linked/2017/05/22/mr-rogers-sweaters",-         "external_url" : "https://theawl.com/every-color-of-cardigan-mister-rogers-wore-from-1979-2001-83c1faba2677",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>Owen Philips, writing for The Awl:</p>\n\n<blockquote>\n  <p>Fortunately, Tim Lybarger, a 40 year-old high school counselor\nfrom just outside of Champaign-Urbana, Illinois, wondered the same\nthing a few years ago. Back in 2011, on his blog devoted to all\nthings Mister Rogers, neighborhoodarchive.com, Lybarger recorded\nthe color of every sweater Rogers wore in each episode between\n1979 and 2001. “When I realized such a resource didn’t exist,”\nLybarger told me over email, “I just felt like somebody needed to\ndo it…might as well be me.”</p>\n\n<p>The chart below uses the data Lybarger meticulously collected to\nshow how Rogers’ preferences for the color of his cardigan changed\nover time.</p>\n</blockquote>\n\n<p>When I was a kid I simply loved <em>Mister Rogers&#8217; Neighborhood</em>. (<a href=\"http://kottke.org/17/05/the-colors-of-mister-rogers-cardigan-sweaters-1979-2001\">Via Kottke</a>, of course.)</p>\n\n<div>\n<a  title=\"Permanent link to ‘Every Color of Cardigan Mister Rogers Wore From 1979–2001’\"  href=\"https://daringfireball.net/linked/2017/05/22/mr-rogers-sweaters\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "Scrolling Is Going to Change in Mobile Safari",-         "date_published" : "2017-05-22T17:29:44Z",-         "date_modified" : "2017-05-23T00:56:48Z",-         "id" : "https://daringfireball.net/linked/2017/05/22/mobile-safari-scrolling",-         "url" : "https://daringfireball.net/linked/2017/05/22/mobile-safari-scrolling",-         "external_url" : "https://news.ycombinator.com/item?id=14384938",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>Here&#8217;s an interesting exchange in a Hacker News discussion about <a href=\"https://daringfireball.net/linked/2017/05/20/gilbertson-amp.php\">my criticism of AMP</a> over the weekend. <a href=\"https://news.ycombinator.com/item?id=14384938\">Malte Ubl, creator and tech lead of Google AMP</a>:</p>\n\n<blockquote>\n  <p>With respect to scrolling: We (AMP team) filed a bug with Apple\nabout that (we didn&#8217;t implement scrolling ourselves, just use a\ndiv with overflow). We asked to make the scroll inertia for that\ncase the same as the normal scrolling.</p>\n\n<p>Apple&#8217;s response was (surprisingly) to make the default scrolling\nlike the overflow scrolling. So, with the next Safari release all\npages will scroll like AMP pages. Hope Gruber is happy then :)</p>\n</blockquote>\n\n<p>&#8220;Om2&#8221;, who seemingly works on WebKit for Apple <a href=\"https://trac.webkit.org/changeset/211197/webkit\">added</a>:</p>\n\n<blockquote>\n  <p>In current iOS Safari, webpage scrolling is inconsistent from all\nother scrolling on the system. This was an intentional decision\nmade long ago. In addition, overflow areas are consistent with the\nrest of the system, and thus inconsistent with top-level webpage\nscrolling. This is semi-accidental. In reviewing scroll rates, we\nconcluded that the original reason was no longer a good tradeoff.\nThus this change, which removed all the inconsistencies:\n<a href=\"https://trac.webkit.org/changeset/211197/webkit\">https://trac.webkit.org/changeset/211197/webkit</a></p>\n\n<p>Having all scrolling be consistent feels good once you get\nused to it.</p>\n\n<p>That doesn&#8217;t necessarily mean it was a good idea for Google&#8217;s\nhosted AMP pages to use overflow scroll all along. The\ninconsistency definitely did feel weird. And the way they do\nscrolling prevents Safari from auto-hiding its top and bottom\nbars. I believe all the desired scroll effects could have been\nachieved without the use of overflow scroll.</p>\n</blockquote>\n\n<p>That&#8217;s a pretty big change, but I&#8217;ll bet Om2 is right that it soon feels normal. Web views have had different scrolling inertia than other scrolling views ever since the original iPhone. (My beef with scrolling in AMP is not that AMP&#8217;s fast scrolling is bad and Mobile Safari&#8217;s current slower scrolling is good, but rather that scrolling in AMP pages should not feel totally different than regular web pages. And I forgot to complain about the fact that AMP&#8217;s weird implementation also breaks Mobile Safari&#8217;s ability to hide the bottom and top browser chrome toolbars. <strong>Update:</strong> One more complaint: AMP breaks Safari&#8217;s Reader mode.)</p>\n\n<div>\n<a  title=\"Permanent link to ‘Scrolling Is Going to Change in Mobile Safari’\"  href=\"https://daringfireball.net/linked/2017/05/22/mobile-safari-scrolling\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "News Explorer 1.6 Supports JSON Feed",-         "date_published" : "2017-05-22T17:10:10Z",-         "date_modified" : "2017-05-22T17:10:12Z",-         "id" : "https://daringfireball.net/linked/2017/05/22/news-explorer-1-6",-         "url" : "https://daringfireball.net/linked/2017/05/22/news-explorer-1-6",-         "external_url" : "https://betamagic.nl/blog.html",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>First native app I&#8217;ve seen with support for JSON Feed. Pretty interesting take on a modern Mac feed reader, including nice support for using the keyboard arrow keys to move around the UI.</p>\n\n<div>\n<a  title=\"Permanent link to ‘News Explorer 1.6 Supports JSON Feed’\"  href=\"https://daringfireball.net/linked/2017/05/22/news-explorer-1-6\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "[Sponsor] Flow: Simple Project Management",-         "date_published" : "2017-05-22T17:00:49-04:00",-         "date_modified" : "2017-05-22T17:01:04-04:00",-         "id" : "https://daringfireball.net/feeds/sponsors/2017/05/flow_simple_project_management",-         "url" : "https://daringfireball.net/feeds/sponsors/2017/05/flow_simple_project_management",-         "external_url" : "http://www.getflow.com/daringfireball",-         "author" : {-            "name" : "Daring Fireball Department of Commerce"-         },-         "content_html" : "\n<p>Flow is simple project management for busy teams. It’s the easiest way to run your team, manage projects, track tasks, and stay up to date with everything happening at work.</p>\n\n<p>Teams choose Flow when email, sticky notes, and to-do apps aren’t enough, but complex project management tools are overkill. Flow’s world-class design team has worked with companies like Apple, Slack, TED, and Starbucks, so it’s simple, beautiful, and easy to use. Your team will love using it, and pick it up in minutes — not weeks.</p>\n\n<p>Visit <a href=\"http://www.getflow.com/daringfireball\">getflow.com/daringfireball</a> to start your free trial today, and save 20% on a monthly plan, or 30% on an annual plan at checkout. </p>\n\n<div>\n<a  title=\"Permanent link to ‘Flow: Simple Project Management’\"  href=\"https://daringfireball.net/feeds/sponsors/2017/05/flow_simple_project_management\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "‘Becoming Bond’",-         "date_published" : "2017-05-22T16:35:26Z",-         "date_modified" : "2017-05-22T16:41:57Z",-         "id" : "https://daringfireball.net/linked/2017/05/22/becoming-bond",-         "url" : "https://daringfireball.net/linked/2017/05/22/becoming-bond",-         "external_url" : "https://www.youtube.com/watch?v=rd9wdJIxqlo",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>New documentary from Hulu on George Lazenby, who played James Bond in 1969&#8217;s <em><a href=\"http://www.imdb.com/title/tt0064757/\">On Her Majesty&#8217;s Secret Service</a></em> and then turned down an offer for a six-picture contract. Watched it over the weekend and thoroughly enjoyed it.</p>\n\n<div>\n<a  title=\"Permanent link to ‘&#8216;Becoming Bond&#8217;’\"  href=\"https://daringfireball.net/linked/2017/05/22/becoming-bond\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "Stashword",-         "date_published" : "2017-05-20T19:23:06Z",-         "date_modified" : "2017-05-20T19:23:08Z",-         "id" : "https://daringfireball.net/linked/2017/05/20/stashword",-         "url" : "https://daringfireball.net/linked/2017/05/20/stashword",-         "external_url" : "http://df.stashword.com/",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>My thanks to Stashword for sponsoring this week&#8217;s DF RSS feed. Stashword is simple but feature-rich password manager for iOS and the web. In addition to passwords, Stashword can securely save notes, financial information, and more. You can even scan and save documents like your drivers license, insurance documentation, and passport.</p>\n\n<p>Stashword is free to try for 15 days. Paid membership enables you to synchronize across all your devices and <a href=\"http://df.stashword.com/\">their website</a>. As a special offer for Daring Fireball readers, through May 25 annual membership is just $7.99, which is 20 percent off the regular price.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Stashword’\"  href=\"https://daringfireball.net/linked/2017/05/20/stashword\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "MacStories’s iOS 11 iPad Wishes and Concept Video",-         "date_published" : "2017-05-20T19:10:48Z",-         "date_modified" : "2017-05-20T19:10:50Z",-         "id" : "https://daringfireball.net/linked/2017/05/20/macstories-ios-11-concept",-         "url" : "https://daringfireball.net/linked/2017/05/20/macstories-ios-11-concept",-         "external_url" : "https://www.macstories.net/stories/ios-11-ipad-wishes-and-concept-video/",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>Federico Viticci:</p>\n\n<blockquote>\n  <p>I&#8217;ve been thinking about some of these ideas since iOS 9 (you can\nsee a thread between <a href=\"https://youtube.com/watch?v=J2VcbT4Pgdk\">my iOS 10 concept</a> and this year&#8217;s version),\nwhile others would be a natural evolution for iOS on the iPad.\nOnce again, Sam was able to visualize everything with a fantastic\nconcept that, I believe, captures the iPad&#8217;s big-picture potential\nmore accurately than last year.</p>\n\n<p>Below, you&#8217;ll find our <a href=\"https://youtube.com/watch?v=UyFUDQ5LLZw\">iOS 11 for iPad concept video</a>, followed by\nan analysis of my iPad wishes with static mockups. I focused on\nfoundational changes to the iPad&#8217;s software &#8212; tentpole features\nthat would affect the entire OS and app ecosystem.</p>\n\n<p>This isn&#8217;t a prediction of what Apple will announce at WWDC; it&#8217;s\nmy vision for what the future of the iPad should be.</p>\n</blockquote>\n\n<p>Viticci and Beckett put months of work into this, and it shows. Some of the ideas they present: system-wide drag-and-drop, a Finder app, a redesigned App Store, and much more.</p>\n\n<p>The best part of this feature isn&#8217;t any specific idea, but rather Viticci&#8217;s profound enthusiasm for the iPad as a platform.</p>\n\n<div>\n<a  title=\"Permanent link to ‘MacStories&#8217;s iOS 11 iPad Wishes and Concept Video’\"  href=\"https://daringfireball.net/linked/2017/05/20/macstories-ios-11-concept\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "10-Year-Old Open Letter Calling for Apple to Make Glucose Monitors",-         "date_published" : "2017-05-20T19:00:18Z",-         "date_modified" : "2017-05-20T19:26:36Z",-         "id" : "https://daringfireball.net/linked/2017/05/20/open-letter-apple-glucose",-         "url" : "https://daringfireball.net/linked/2017/05/20/open-letter-apple-glucose",-         "external_url" : "http://www.healthline.com/health/diabetesmine/innovation/open-letter-steve-jobs",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>Amy Tenderich, 10 years ago, in an open letter to Steve Jobs:</p>\n\n<blockquote>\n  <p>If insulin pumps or continuous monitors had the form of an iPod\nNano, people wouldn&#8217;t have to wonder why we wear our &#8220;pagers&#8221; to\nour own weddings, or puzzle over that strange bulge under our\nclothes. If these devices wouldn&#8217;t start suddenly and incessantly\nbeeping, strangers wouldn&#8217;t lecture us to turn off our &#8220;cell\nphones&#8221; at the movie theater.</p>\n\n<p>In short, medical device manufacturers are stuck in a bygone era;\nthey continue to design these products in an engineering-driven,\nphysician-centered bubble. They have not yet grasped the concept\nthat medical devices are also life devices, and therefore need to\nfeel good and look good for the patients using them 24/7, in\naddition to keeping us alive.</p>\n</blockquote>\n\n<p>(<a href=\"http://articles.chicagotribune.com/2010-10-22/features/sc-health-1020-diabetes-insulin-devic20101022_1_insulin-dependent-diabetics-high-blood-glucose-levels-blood-sugar\">Follow-up here in 2010</a>.)</p>\n\n<p>This was incredibly prescient, given the rumors <a href=\"https://daringfireball.net/linked/2017/05/18/apple-watch-glucose\">that Apple is working on continuous non-invasive glucose monitoring</a> for Apple Watch. Jobs didn&#8217;t live to see it, but I think it&#8217;s exactly the sort of thing he would be pushing for if he were still alive.</p>\n\n<p>From chapter 37 of <a href=\"https://itun.es/us/QyFUz.l\">Walter Isaacson&#8217;s <em>Steve Jobs</em></a>:</p>\n\n<blockquote>\n  <p>Even when he was barely conscious, his strong personality came\nthrough. At one point the pulmonologist tried to put a mask over\nhis face when he was deeply sedated. Jobs ripped it off and\nmumbled that he hated the design and refused to wear it. Though\nbarely able to speak, he ordered them to bring five different\noptions for the mask and he would pick a design he liked. The\ndoctors looked at Powell, puzzled. She was finally able to\ndistract him so they could put on the mask. He also hated the\noxygen monitor they put on his finger. He told them it was ugly\nand too complex. He suggested ways it could be designed more\nsimply. “He was very attuned to every nuance of the environment\nand objects around him, and that drained him,” Powell recalled.</p>\n</blockquote>\n\n<div>\n<a  title=\"Permanent link to ‘10-Year-Old Open Letter Calling for Apple to Make Glucose Monitors’\"  href=\"https://daringfireball.net/linked/2017/05/20/open-letter-apple-glucose\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "Scott Gilbertson: ‘Kill Google AMP Before It Kills the Web’",-         "date_published" : "2017-05-20T18:18:19Z",-         "date_modified" : "2017-05-20T19:28:43Z",-         "id" : "https://daringfireball.net/linked/2017/05/20/gilbertson-amp",-         "url" : "https://daringfireball.net/linked/2017/05/20/gilbertson-amp",-         "external_url" : "https://www.theregister.co.uk/2017/05/19/open_source_insider_google_amp_bad_bad_bad/",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>Scott Gilbertson, writing for The Register:</p>\n\n<blockquote>\n  <p>Quite a few high-profile web developers have this year weighted in\nwith <a href=\"https://danielmiessler.com/blog/google-amp-not-good-thing/\">criticism</a> and some, following a Google conference dedicated\nto AMP, have cautioned users about diving in with <a href=\"https://css-tricks.com/need-catch-amp-debate/\">both feet</a>.</p>\n\n<p>These, in my view, don’t go far enough in stating the problem and\nI feel this needs to be said very clearly: Google&#8217;s AMP is bad &#8212;\nbad in a potentially web-destroying way. Google AMP is bad news\nfor how the web is built, it&#8217;s bad news for publishers of credible\nonline content, and it&#8217;s bad news for consumers of that content.\nGoogle AMP is only good for one party: Google. Google, and\npossibly, purveyors of fake news.</p>\n\n<p>It&#8217;s time for developers to wake up and, as Jason Scott <a href=\"http://ascii.textfiles.com/archives/3086\">once said</a>\nof Facebook, stop: &#8220;Shoveling down the shit sherbet&#8221; Google is now\nserving with AMP.</p>\n</blockquote>\n\n<p><a href=\"http://daringfireball.net/linked/2017/01/17/schreiber-amp\">I&#8217;m on the record</a> as being strongly opposed to AMP simply on the grounds of publication independence. I&#8217;d stand by that even if the implementation were great. But the implementation is not great &#8212; it&#8217;s terrible. Yes, AMP pages load fast, but you don&#8217;t need AMP for fast-loading web pages. If you are a publisher and your web pages don&#8217;t load fast, the sane solution is to <a href=\"http://idlewords.com/amp_static.html\">fix your fucking website so that pages load fast</a>, not to throw your hands up in the air and implement AMP.</p>\n\n<p>But other than loading fast, AMP <em>sucks</em>. It implements its own scrolling behavior on iOS, which feels unnatural, and even worse, it breaks the decade-old system-wide iOS behavior of being able to tap the status bar to scroll to the top of any scrollable view. AMP also completely breaks Safari&#8217;s ability to search for text on a page (via the &#8220;Find on Page&#8221; action in the sharing sheet). Google has no respect for the platform. If I had my way, Mobile Safari would refuse to render AMP pages. It&#8217;s a deliberate effort by Google to break the open web.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Scott Gilbertson: &#8216;Kill Google AMP Before It Kills the Web&#8217;’\"  href=\"https://daringfireball.net/linked/2017/05/20/gilbertson-amp\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "Arctic Stronghold of World’s Seeds Flooded After Permafrost Melts",-         "date_published" : "2017-05-20T17:52:14Z",-         "date_modified" : "2017-05-21T03:41:34Z",-         "id" : "https://daringfireball.net/linked/2017/05/20/global-seed-vault",-         "url" : "https://daringfireball.net/linked/2017/05/20/global-seed-vault",-         "external_url" : "https://www.theguardian.com/environment/2017/may/19/arctic-stronghold-of-worlds-seeds-flooded-after-permafrost-melts?CMP=twt_gu",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>Damian Carrington, reporting for The Guardian:</p>\n\n<blockquote>\n  <p>It was designed as an impregnable deep-freeze to protect the\nworld’s most precious seeds from any global disaster and ensure\nhumanity’s food supply forever. But the Global Seed Vault, buried\nin a mountain deep inside the Arctic circle, has been breached\nafter global warming produced extraordinary temperatures over the\nwinter, sending meltwater gushing into the entrance tunnel.</p>\n</blockquote>\n\n<p>The big takeaway from this should be that climate change truly is a threat to civilization. But, I have to say, that melting permafrost wasn&#8217;t taken into consideration during the design of this vault seems like a glaring oversight.</p>\n\n<p><strong>Update:</strong> Looks like The Guardian might have shamelessly sensationalized this story. <a href=\"http://www.popsci.com/seed-vault-flooding?src=SOC&amp;dom=tw#page-3\">Mary Beth Griggs, reporting for Popular Science</a>:</p>\n\n<blockquote>\n  <p>“If there was a worst case scenario where there was so much water,\nor the pumping systems failed, that it made its way uphill to the\nseed vault, then it would encounter minus 18 [degrees celsius] and\nfreeze again. Then there’s another barrier [the ice] for entry\ninto the seed vault,” Fowler says. In other words, any water that\nfloods into the tunnel has to make it 100 meters downhill, then\nback uphill, then overwhelm the pumping systems, and then manage\nnot to freeze at well-below-freezing temperatures. Otherwise,\nthere&#8217;s no way liquid is getting into the seed bank &#8212; so the\nseeds are probably safe. [&#8230;]</p>\n\n<p>Still worried? Maybe this will help you exhale: “We did this\ncalculation; if all the ice in the world melted &#8212; Greenland,\nArctic, Antarctic, everything &#8212; and then we had the world&#8217;s\nlargest recorded tsunami right in front of the seed vault. So,\nvery high sea levels and the worlds largest Tsunami. What would\nhappen to the seed vault?” Fowler says. “We found that the seed\nvault was somewhere between a five and seven story building above\nthat point. It might not help the road leading up to the seed\nvault, but the seeds themselves would be OK.&#8221;</p>\n</blockquote>\n\n<p>Sounds like the vault itself <em>is</em> designed to survive a climate apocalypse &#8212; it&#8217;s just the entry that isn&#8217;t.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Arctic Stronghold of World’s Seeds Flooded After Permafrost Melts’\"  href=\"https://daringfireball.net/linked/2017/05/20/global-seed-vault\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "‘It’s Borderline Stupid How Easy It Was’",-         "date_published" : "2017-05-19T20:07:02Z",-         "date_modified" : "2017-05-19T20:13:21Z",-         "id" : "https://daringfireball.net/linked/2017/05/19/json-feed-jekyll",-         "url" : "https://daringfireball.net/linked/2017/05/19/json-feed-jekyll",-         "external_url" : "https://ndarville.com/blog/2017/05/19/json-feed-for-jekyll/",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>Niclas Darville, on creating a JSON Feed template for Jekyll:</p>\n\n<blockquote>\n  <p>It literally took me longer to write this blog post than the JSON\nfeed code, because I couldn’t get Jekyll to escape the Liquid code\nexample.</p>\n</blockquote>\n\n<p>On Twitter, <a href=\"https://twitter.com/pessimism/status/865574252182990848\">Darville wrote</a>:</p>\n\n<blockquote>\n  <p>One of the best things about <a href=\"https://twitter.com/@jsonfeed\">@jsonfeed</a> is how well it works as a\nHello World kind of programming exercise.</p>\n\n<p>Sure beats to-do lists.</p>\n</blockquote>\n\n<p><a href=\"https://twitter.com/JmacDotOrg/status/865441060176121856\">Jason McIntosh described</a> adding JSON Feed support to his home-grown blog engine as a &#8220;blowing-off-steam project&#8221;.</p>\n\n<p>These reactions are exactly what I mean about JSON Feed being <em>fun</em>. There&#8217;s a time and place for specs that are drop-dead serious, but I think it&#8217;s often overlooked just how important <em>fun</em> can be in having a new spec gain traction.</p>\n\n<div>\n<a  title=\"Permanent link to ‘&#8216;It’s Borderline Stupid How Easy It Was&#8217;’\"  href=\"https://daringfireball.net/linked/2017/05/19/json-feed-jekyll\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "Headline of the Week",-         "date_published" : "2017-05-19T19:41:15Z",-         "date_modified" : "2017-05-20T04:12:08Z",-         "id" : "https://daringfireball.net/linked/2017/05/19/trump-nut-job",-         "url" : "https://daringfireball.net/linked/2017/05/19/trump-nut-job",-         "external_url" : "https://www.nytimes.com/2017/05/19/us/politics/trump-russia-comey.html",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>Actual headline in the staid New York Times: &#8220;Trump Told Russians That Firing ‘Nut Job’ Comey Eased Pressure From Investigation&#8221;.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Headline of the Week’\"  href=\"https://daringfireball.net/linked/2017/05/19/trump-nut-job\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "Requiring Facebook",-         "date_published" : "2017-05-19T02:19:06Z",-         "date_modified" : "2017-05-19T07:02:39Z",-         "id" : "https://daringfireball.net/linked/2017/05/18/requiring-facebook",-         "url" : "https://daringfireball.net/linked/2017/05/18/requiring-facebook",-         "external_url" : "https://thebolditalic.com/facebook-goes-full-black-mirror-how-facebook-is-making-membership-a-prerequisite-to-everyday-e88fb03b0eb9",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>Jason Ditzian, writing for The Bold Italic on what happened when the car sharing service he&#8217;d been using for 10 years was acquired:</p>\n\n<blockquote>\n  <p>However, City CarShare was recently bought by a corporation,\nGetaround. And Getaround built its platform on top of Facebook. So\nwhen I went to migrate my account over to them, I found that\nthere’s literally no way to do it as a non-Facebook user. If I\nwant to share cars with my fellow city dwellers, I’m compelled to\nstrike a Faustian bargain.</p>\n\n<p>To access the services of Getaround, one must authenticate their\nidentity through Facebook. [&#8230;]</p>\n\n<p>I know that for you Facebook-having people, this is no big deal.\nYou have resigned yourself to the idea of Facebook owning your\ndata. But if you don’t, haven’t and/or won’t resign to this fate,\nyou might end up left, like me, in a peculiar situation: the price\nof “sharing” a car equals money plus forking over a huge trove of\npersonal data. Personal information is supplanting money as a form\nof currency.</p>\n</blockquote>\n\n<p>There&#8217;s clearly a problem here, but I don&#8217;t think it&#8217;s Facebook&#8217;s fault. I think the problem is that Getaround sucks.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Requiring Facebook’\"  href=\"https://daringfireball.net/linked/2017/05/18/requiring-facebook\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "FCC Votes to Begin Dismantling Net Neutrality",-         "date_published" : "2017-05-18T22:30:58Z",-         "date_modified" : "2017-05-18T22:31:00Z",-         "id" : "https://daringfireball.net/linked/2017/05/18/net-neutrality",-         "url" : "https://daringfireball.net/linked/2017/05/18/net-neutrality",-         "external_url" : "https://www.techdirt.com/articles/20170517/12241437395/fcc-ignores-will-public-votes-to-begin-dismantling-net-neutrality.shtml",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>Karl Bode, writing for TechDirt:</p>\n\n<blockquote>\n  <p>Surprising absolutely nobody, the FCC today voted 2-1 along strict\nparty lines to begin dismantling net neutrality protections for\nconsumers. The move comes despite the fact that the <a href=\"https://www.techdirt.com/articles/20170516/06570237379/time-fcc-to-actually-listen-vast-majority-fcc-commenters-support-net-neutrality.shtml\">vast\nmajority</a> of non-bot comments filed with the FCC support\nkeeping the rules intact. And while FCC boss Ajit Pai has\nbreathlessly insisted he intended to listen to the concerns of all\nparties involved, there has been zero indication that this was a\nserious commitment as he begins <a href=\"https://www.techdirt.com/articles/20170206/06403236642/new-fcc-boss-ajit-pai-insists-hes-all-about-helping-poor-gets-right-to-work-harming-them-instead.shtml\">dismantling all manner of\nbroadband consumer protections</a>, not just net neutrality.</p>\n\n<p>As you might have expected, the FCC was quick to release a\nstatement claiming that gutting the popular consumer protections\nwould usher forth a magical age of connectivity, investment, and\ninnovation.</p>\n</blockquote>\n\n<p>(<a href=\"https://pxlnv.com/linklog/fcc-vote-may-18/\">Via Nick Heer</a>.)</p>\n\n<div>\n<a  title=\"Permanent link to ‘FCC Votes to Begin Dismantling Net Neutrality’\"  href=\"https://daringfireball.net/linked/2017/05/18/net-neutrality\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "‘You Know My Name’",-         "date_published" : "2017-05-18T22:24:55Z",-         "date_modified" : "2017-05-18T22:24:56Z",-         "id" : "https://daringfireball.net/linked/2017/05/18/cornell-casino-royale",-         "url" : "https://daringfireball.net/linked/2017/05/18/cornell-casino-royale",-         "external_url" : "https://www.youtube.com/watch?v=A1AMUmkj-ck",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>One of my very favorite songs from Chris Cornell &#8212; the opening credits theme to <em>Casino Royale</em>. A great song that just fits the movie so damn well.</p>\n\n<div>\n<a  title=\"Permanent link to ‘&#8216;You Know My Name&#8217;’\"  href=\"https://daringfireball.net/linked/2017/05/18/cornell-casino-royale\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "Chris Cornell of Soundgarden, Dead at 52",-         "date_published" : "2017-05-18T22:20:21Z",-         "date_modified" : "2017-05-19T07:17:15Z",-         "id" : "https://daringfireball.net/linked/2017/05/18/cornell",-         "url" : "https://daringfireball.net/linked/2017/05/18/cornell",-         "external_url" : "https://www.nytimes.com/2017/05/18/arts/music/chris-cornell-dead-soundgarden.html?_r=0",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>The New York Times:</p>\n\n<blockquote>\n  <p>Chris Cornell, the powerful, dynamic singer whose band Soundgarden\nwas one of the architects of grunge music, died on Wednesday night\nin Detroit hours after the band had performed there. He was 52.</p>\n\n<p>The death was a suicide by hanging, the Wayne County Medical\nExaminer’s Office said in a statement released on Thursday\nafternoon. It said a full autopsy had not yet been completed.</p>\n</blockquote>\n\n<p>Fuck.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Chris Cornell of Soundgarden, Dead at 52’\"  href=\"https://daringfireball.net/linked/2017/05/18/cornell\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "jq",-         "date_published" : "2017-05-18T20:40:38Z",-         "date_modified" : "2017-05-18T20:40:40Z",-         "id" : "https://daringfireball.net/linked/2017/05/18/jq",-         "url" : "https://daringfireball.net/linked/2017/05/18/jq",-         "external_url" : "https://stedolan.github.io/jq/",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>There&#8217;s a cool command-line JSON processor called <code>jq</code> &#8212; easily installed on a Mac via download or <a href=\"https://brew.sh/\">Homebrew</a>, and even more easily tinkered with using <a href=\"https://jqplay.org/\">the online playground</a>. Here&#8217;s how easy <code>jq</code> makes it to get, say, a list of the titles from DF&#8217;s <a href=\"https://jsonfeed.org/\">JSON feed</a>:</p>\n\n<pre><code>curl -s https://daringfireball.net/feeds/json | jq '.items[].title'\n</code></pre>\n\n<div>\n<a  title=\"Permanent link to ‘jq’\"  href=\"https://daringfireball.net/linked/2017/05/18/jq\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "The World’s First JSON Feed Viewer",-         "date_published" : "2017-05-18T20:32:06Z",-         "date_modified" : "2017-05-18T20:39:47Z",-         "id" : "https://daringfireball.net/linked/2017/05/18/maxime-vaillancourt-json-feed-viewer",-         "url" : "https://daringfireball.net/linked/2017/05/18/maxime-vaillancourt-json-feed-viewer",-         "external_url" : "https://twitter.com/vaillancourtmax/status/865291487881383937",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>Maxime Vaillancourt:</p>\n\n<blockquote>\n  <p>Here&#8217;s a tiny proof of concept for a <a href=\"https://twitter.com/@jsonfeed\">@jsonfeed</a> viewer, built in an\nhour: <a href=\"http://json-feed-viewer.herokuapp.com\">http://json-feed-viewer.herokuapp.com</a></p>\n</blockquote>\n\n<p>One of the things I love about <a href=\"https://jsonfeed.org/\">JSON Feed</a> is that it&#8217;s <em>fun</em>. JSON is so simple, and so well-supported by almost all programming languages, that you can build something interesting in just a few minutes, and something useful in an hour. There was <a href=\"https://news.ycombinator.com/item?id=14361178\">a comment</a> on the Hacker News thread about JSON Feed that I loved:</p>\n\n<blockquote>\n  <p>It is very likely than I am an idiot, but I&#8217;ve always found\nparsing XML too hard, specially compared to JSON which is almost\ntoo easy.</p>\n</blockquote>\n\n<p>&#8220;Almost too easy&#8221; are three words no one has ever said about XML.</p>\n\n<div>\n<a  title=\"Permanent link to ‘The World&#8217;s First JSON Feed Viewer’\"  href=\"https://daringfireball.net/linked/2017/05/18/maxime-vaillancourt-json-feed-viewer\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "Apple Is Testing an Apple Watch Glucose Monitor",-         "date_published" : "2017-05-18T20:24:52Z",-         "date_modified" : "2017-05-18T20:24:54Z",-         "id" : "https://daringfireball.net/linked/2017/05/18/apple-watch-glucose",-         "url" : "https://daringfireball.net/linked/2017/05/18/apple-watch-glucose",-         "external_url" : "http://www.cnbc.com/2017/05/18/apple-ceo-tim-cook-test-drove-glucose-monitor.html",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>Christina Farr, reporting for CNBC:</p>\n\n<blockquote>\n  <p>Tim Cook has been spotted at the Apple campus test-driving a\ndevice that tracks blood sugar, which was connected to his\nApple Watch.</p>\n\n<p>A source said that Cook was wearing a prototype glucose-tracker on\nthe Apple Watch, which points to future applications that would\nmake the device a &#8220;must have&#8221; for millions of people with diabetes\n&#8212; or at risk for the disease.</p>\n\n<p><a href=\"http://www.cnbc.com/2017/04/12/apple-working-on-glucose-sensors-diabetes-treatment.html\">As CNBC reported last month</a>, Apple has a team in Palo Alto\nworking on the &#8220;holy grail&#8221; for diabetes: Non-invasive and\ncontinuous glucose monitoring. The current glucose trackers on the\nmarket rely on tiny sensors penetrating the skin. Sources said the\ncompany is already conducting feasibility trials in the Bay Area.</p>\n</blockquote>\n\n<p>Non-invasive continuous glucose monitoring would be a life-changer for anyone with diabetes. But I can&#8217;t even imagine how life-changing this will be for kids with diabetes and their parents.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Apple Is Testing an Apple Watch Glucose Monitor’\"  href=\"https://daringfireball.net/linked/2017/05/18/apple-watch-glucose\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "CMD-D: Masters of Automation Conference",-         "date_published" : "2017-05-18T19:53:32Z",-         "date_modified" : "2017-05-18T19:53:34Z",-         "id" : "https://daringfireball.net/linked/2017/05/18/cmd-d-conference",-         "url" : "https://daringfireball.net/linked/2017/05/18/cmd-d-conference",-         "external_url" : "https://www.cmddconf.com/",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>This sounds very cool: a one-day conference in August devoted to Mac and iOS scripting and automation, hosted by Paul Kent, Naomi Pearce, and Sal Soghoian.</p>\n\n<div>\n<a  title=\"Permanent link to ‘CMD-D: Masters of Automation Conference’\"  href=\"https://daringfireball.net/linked/2017/05/18/cmd-d-conference\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "Final Cut Pro X and Closed Captions",-         "date_published" : "2017-05-18T16:42:06Z",-         "date_modified" : "2017-05-18T16:42:07Z",-         "id" : "https://daringfireball.net/linked/2017/05/18/fcpx-closed-captions",-         "url" : "https://daringfireball.net/linked/2017/05/18/fcpx-closed-captions",-         "external_url" : "http://hammonwry.com/forgotten-again/",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>Kevin Hamm:</p>\n\n<blockquote>\n  <p>Captions can be just text at timecode, which is simple. In their\nmost complex, they are styled, located text at timecode. That’s\nit. Nothing more. I work in text and titles and timecode every day\nin every video I do, so there is no reason that this simple\nfunction isn’t baked in at this point. Words at timecode. That’s\nall it is.</p>\n\n<p>That Apple is making their systems and products accessible is\ngreat. Xcode grants programmers the ability to build accessible\napps, and has from the beginning, which is even better as it makes\na massive part of the ecosystem accessible.</p>\n\n<p>That Final Cut Pro hasn’t ever and still doesn’t create closed\ncaptions is a smudge on that image.</p>\n</blockquote>\n\n<p>It seems bonkers to me that Final Cut Pro X doesn&#8217;t have support for closed captions. Coming from Apple, you&#8217;d think it would have <em>excellent</em> support for them. How does Apple create closed captions for their own videos?</p>\n\n<div>\n<a  title=\"Permanent link to ‘Final Cut Pro X and Closed Captions’\"  href=\"https://daringfireball.net/linked/2017/05/18/fcpx-closed-captions\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "Source Code for Panic Apps Stolen By Malware Thieves",-         "date_published" : "2017-05-17T18:26:52Z",-         "date_modified" : "2017-05-18T00:08:29Z",-         "id" : "https://daringfireball.net/linked/2017/05/17/panic-handbrake-thieves",-         "url" : "https://daringfireball.net/linked/2017/05/17/panic-handbrake-thieves",-         "external_url" : "https://panic.com/blog/stolen-source-code/",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>Steven Frank:</p>\n\n<blockquote>\n  <p>Last week, for about three days, <a href=\"https://blog.malwarebytes.com/threat-analysis/mac-threat-analysis/2017/05/handbrake-hacked-to-drop-new-variant-of-proton-malware/\">the macOS video transcoding app\nHandBrake</a> was compromised. One of the two download servers for\nHandBrake was serving up a special malware-infested version of the\napp, that, when launched, would essentially give hackers remote\ncontrol of your computer.</p>\n\n<p>In a case of extraordinarily bad luck, even for a guy that has a\nlot of bad computer luck, I happened to download HandBrake in that\nthree day window, and my work Mac got pwned.</p>\n\n<p>Long story short, <em>somebody, somewhere, now has quite a bit of\nsource code to several of our apps</em>.</p>\n</blockquote>\n\n<p>This is one hell of a story and quite a shock, but the crew at Panic kept their heads together and did the right thing: they&#8217;ve opened up completely and honestly, refused to deal with the blackmailer, and I think they are correctly unworried about their source code being leaked publicly.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Source Code for Panic Apps Stolen By Malware Thieves’\"  href=\"https://daringfireball.net/linked/2017/05/17/panic-handbrake-thieves\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "Dave Itzkoff Profiles Jimmy Fallon for The New York Times",-         "date_published" : "2017-05-17T17:33:40Z",-         "date_modified" : "2017-05-17T17:33:41Z",-         "id" : "https://daringfireball.net/linked/2017/05/17/itzkoff-fallon",-         "url" : "https://daringfireball.net/linked/2017/05/17/itzkoff-fallon",-         "external_url" : "https://www.nytimes.com/2017/05/17/arts/television/jimmy-fallon-tonight-show-interview-trump.html",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>Fascinating behind-the-scenes look at The Tonight Show, including a look inside Fallon&#8217;s briefcase (he&#8217;s got a Nintendo Switch in there).</p>\n\n<div>\n<a  title=\"Permanent link to ‘Dave Itzkoff Profiles Jimmy Fallon for The New York Times’\"  href=\"https://daringfireball.net/linked/2017/05/17/itzkoff-fallon\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "Announcing JSON Feed",-         "date_published" : "2017-05-17T17:24:53Z",-         "date_modified" : "2017-05-17T17:56:42Z",-         "id" : "https://daringfireball.net/linked/2017/05/17/json-feed",-         "url" : "https://daringfireball.net/linked/2017/05/17/json-feed",-         "external_url" : "https://jsonfeed.org/2017/05/17/announcing_json_feed",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>Brent Simmons and Manton Reece:</p>\n\n<blockquote>\n  <p>We &#8212; Manton Reece and Brent Simmons &#8212; have noticed that JSON has\nbecome the developers’ choice for APIs, and that developers will\noften go out of their way to avoid XML. JSON is simpler to read\nand write, and it’s less prone to bugs.</p>\n\n<p>So we developed JSON Feed, a format similar to <a href=\"http://cyber.harvard.edu/rss/rss.html\">RSS</a> and <a href=\"https://tools.ietf.org/html/rfc4287\">Atom</a> but in\nJSON. It reflects the lessons learned from our years of work\nreading and publishing feeds.</p>\n</blockquote>\n\n<p>I think this is a great idea, and a good spec. I even like the style in which <a href=\"https://jsonfeed.org/version/1\">the spec</a> is written: for real humans (much like the RSS spec). If you want to see a real-life example, <a href=\"https://daringfireball.net/feeds/json\">Daring Fireball has a JSON Feed</a>. I&#8217;ve got a good feeling about this project &#8212; the same sort of feeling I had <a href=\"https://daringfireball.net/2004/03/introducing_markdown\">about Markdown</a> <a href=\"https://daringfireball.net/2004/03/dive_into_markdown\">back in the day</a>.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Announcing JSON Feed’\"  href=\"https://daringfireball.net/linked/2017/05/17/json-feed\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "New Apple Videos Highlight Real-World Accessibility",-         "date_published" : "2017-05-17T06:03:01Z",-         "date_modified" : "2017-05-17T06:17:10Z",-         "id" : "https://daringfireball.net/linked/2017/05/17/accessibility-apple",-         "url" : "https://daringfireball.net/linked/2017/05/17/accessibility-apple",-         "external_url" : "http://mashable.com/2017/05/17/apple-accessibility-videos-disability/",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>Nice piece for Mashable by Katie Dupere on <a href=\"https://www.youtube.com/user/Apple/videos\">a bunch of new videos in Apple&#8217;s YouTube channel</a>, highlighting real-world usage of iOS and MacOS accessibility features. People who can&#8217;t move, people who can&#8217;t talk, people who can&#8217;t see or hear &#8212; doing amazing things. Apple&#8217;s commitment to accessibility is one of my very favorite things about the company. It&#8217;s not just the right thing to do for people who truly need these features &#8212; it makes the products better for everyone.</p>\n\n<p><strong>Update:</strong> <a href=\"http://www.loopinsight.com/2017/05/16/apple-videos-highlight-accessibility-achievements/?utm_source=loopinsight.com/\">Jim Dalrymple has all 7 videos collected on one page</a>.</p>\n\n<div>\n<a  title=\"Permanent link to ‘New Apple Videos Highlight Real-World Accessibility’\"  href=\"https://daringfireball.net/linked/2017/05/17/accessibility-apple\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "[Sponsor] Stashword iOS App and Website",-         "date_published" : "2017-05-15T18:52:31-04:00",-         "date_modified" : "2017-05-20T15:34:13-04:00",-         "id" : "https://daringfireball.net/feeds/sponsors/2017/05/stashword_ios_app_and_website",-         "url" : "https://daringfireball.net/feeds/sponsors/2017/05/stashword_ios_app_and_website",-         "external_url" : "http://df.stashword.com/",-         "author" : {-            "name" : "Daring Fireball Department of Commerce"-         },-         "content_html" : "\n<p>Stashword&#8217;s iOS app is a simple yet feature rich password manager trusted by thousands of users. Stashword is not just an incredible password manager, it is also a secure digital vault where you can save, organize and share notes, codes, bank information, credit cards, and more. You can even scan and save documents such as your drivers license, insurance, passport etc.</p>\n\n<p>Stashword is free to try for 15 days. Paid membership enables you to synchronize across all your devices and use their full-featured website <a href=\"http://www.stashword.com/\">www.stashword.com</a>. For this week only, yearly membership is $7.99, which is 20 percent off the regular price.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Stashword iOS App and Website’\"  href=\"https://daringfireball.net/feeds/sponsors/2017/05/stashword_ios_app_and_website\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"-      },-      {-         "title" : "★ Dropping Tech Giants",-         "date_published" : "2017-05-12T15:58:22Z",-         "date_modified" : "2017-05-14T20:26:47Z",-         "id" : "https://daringfireball.net/2017/05/dropping_tech_giants",-         "url" : "https://daringfireball.net/2017/05/dropping_tech_giants",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p><a href=\"https://www.nytimes.com/interactive/2017/05/10/technology/Ranking-Apple-Amazon-Facebook-Microsoft-Google.html\">Great interactive feature by Farhad Manjoo for The New York Times</a>:</p>\n\n<blockquote>\n  <p>Apple, Amazon, Facebook, Microsoft and Alphabet, the parent\ncompany of Google, are not just the largest technology companies\nin the world. As I’ve argued repeatedly in my column, they are\nalso becoming the most powerful companies of any kind, essentially\ninescapable for any consumer or business that wants to participate\nin the modern world. But which of the Frightful Five is most\nunavoidable? I ponder the question in my column this week.</p>\n\n<p>But what about you? If an evil monarch forced you to choose, in\nwhat order would you give up these inescapable giants of tech?</p>\n</blockquote>\n\n<p>Great question. I love thought exercises.</p>\n\n<p>My order (from first dropped to last):</p>\n\n<ol>\n<li><p>Facebook. I love Instagram, but could live without it. I don&#8217;t use anything else Facebook offers.</p></li>\n<li><p>Microsoft. The only Microsoft product I use regularly is Skype, for podcasting, and I suspect I could find another solution. (If I couldn&#8217;t, I might have to rethink my answer here.)</p></li>\n<li><p>Amazon. I buy stuff from Amazon almost every week. I just counted &#8212; 11 orders so far in 2017. My wife buys stuff from Amazon even more frequently. But just about anything we buy at Amazon, we <em>could</em> buy elsewhere. It&#8217;d be painful to replace, but not irreplaceable. There are a couple of shows exclusive to Amazon Prime that I enjoy, but none that I love.</p></li>\n<li><p>Alphabet. I already use DuckDuckGo as my default search engine, so giving up Google search would be frustrating at times, but not a deal breaker. I use a few email accounts backed by Gmail, but I actually dislike Gmail, and have been procrastinating on moving all my mail to <a href=\"https://www.fastmail.com/\">FastMail</a> for years. I despise Google Docs. I don&#8217;t use any Android devices other than as a curiosity. I greatly prefer Safari over Chrome. YouTube, however, is irreplaceable, and so essential that it pretty much singlehandedly catapults Alphabet to #4 in my list.</p></li>\n<li><p>Apple. I mean, come on. If not for Apple I&#8217;d be stuck using computers I don&#8217;t like and a phone that I consider a distant second-best. With all the other companies on the list, what I&#8217;d miss most are certain of their services &#8212; Instagram, Skype, Amazon&#8217;s store, YouTube &#8212; but Apple is the only company in the world whose hardware I consider irreplaceable. And you need the hardware to make best use of the services from any other companies. And that doesn&#8217;t even touch upon Apple&#8217;s crown jewels: the MacOS and iOS software platforms.</p></li>\n</ol>\n\n\n\n    "-      },-      {-         "title" : "★ Apple’s China Problem: WeChat",-         "date_published" : "2017-05-05T18:37:24Z",-         "date_modified" : "2017-05-06T01:58:08Z",-         "id" : "https://daringfireball.net/2017/05/apples_china_problem_wechat",-         "url" : "https://daringfireball.net/2017/05/apples_china_problem_wechat",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p><a href=\"https://stratechery.com/2017/apples-china-problem/\">Ben Thompson had a great column this week</a>, in the wake of Apple&#8217;s quarterly results and Microsoft&#8217;s announcement of the Surface Laptop:</p>\n\n<blockquote>\n  <p>Did you hear about the new Microsoft Surface Laptop? The <a href=\"https://twitter.com/reckless/status/859448810187235330\">usual\nsuspects</a> are claiming it’s a MacBook competitor, which is\ntrue insomuch as it is a laptop. In truth, though, the Surface\nLaptop isn’t a MacBook competitor at all for the rather obvious\nreason that it runs Windows, while the MacBook runs MacOS. This\nhas always been the foundation of Apple’s business model:\n<a href=\"https://stratechery.com/2016/everything-as-a-service/\">hardware differentiated by software</a> such that said hardware\ncan be sold with a margin much greater than nominal competitors\nrunning a commodity operating system.</p>\n</blockquote>\n\n<p>Hardware differentiated by <em>superior, exclusive</em> software is the key to understanding Apple. It&#8217;s the reason the company was founded. Apple II&#8217;s were the best personal computer hardware <em>and</em> had the best software. Part of why Woz is so venerated is that he was unimaginably gifted at both hardware <em>and</em> <a href=\"http://gizmodo.com/how-steve-wozniak-wrote-basic-for-the-original-apple-fr-1570573636\">software</a>. Hardware differentiated by software is how Apple survived in the late &#8217;90s, when the company was struggling. It explains all the company&#8217;s success after that: the iPod, the resurgence of the Mac, iPhone, iPad, and Apple Watch. Any comparison between Microsoft&#8217;s Surface Laptop and Apple&#8217;s MacBooks that doesn&#8217;t place heavy emphasis on the value of MacOS is vapid.</p>\n\n<p>Thompson then turns to Apple&#8217;s languishing iPhone sales in China:</p>\n\n<blockquote>\n  <p>But that is not what is going on in most of the world: plenty of\nfolks &#8212; more than last year &#8212; are happy to buy the iPhone 7,\neven though it doesn’t look much different than the iPhone 6.\nAfter all, if you need a new phone, and you want iOS, you don’t\nhave much choice! Except, again, for China: that is the country\nwhere the appearance of the iPhone matters most; Apple’s\nproblem, though, is that in China that is the only thing that\nmatters at all.</p>\n\n<p>The fundamental issue is this: unlike the rest of the world, in\nChina the most important layer of the smartphone stack is not the\nphone’s operating system. Rather, it is WeChat. Connie Chan of\nAndreessen Horowitz <a href=\"http://a16z.com/2015/08/06/wechat-china-mobile-first/\">tried to explain in 2015</a> just how integrated\nWeChat is into the daily lives of nearly <a href=\"http://mp.weixin.qq.com/s/5d6Th5wndmJT25cRHemZNg\">900 million Chinese</a>, and\nthat integration has only grown since then: every aspect of a\ntypical Chinese person’s life, not just online but also off is\nconducted through a single app (and, to the extent other apps are\nused, they are often games promoted through WeChat).</p>\n\n<p>There is nothing in any other country that is comparable: not\nLINE, not WhatsApp, not Facebook. All of those are about\ncommunication or wasting time: WeChat is that, but it is also for\nreading news, for hailing taxis, for paying for lunch (try and pay\nwith cash for lunch, and you’ll look like a luddite), for\naccessing government resources, for business. For all intents and\npurposes WeChat is your phone, and to a far greater extent in\nChina than anywhere else, your phone is everything.</p>\n</blockquote>\n\n<p>As Thompson adds in a footnote, &#8220;Or, to put it another way, the operating system of China is WeChat, not iOS/Android.&#8221;</p>\n\n<p>Thompson cites a staggering statistic: among existing iPhone users in China who bought a new phone in 2016, only 50 percent of them bought another iPhone. That is an incredible statistical outlier compared to iPhone users in the rest of the world, where Apple&#8217;s retention rates hover around the mid-80s.</p>\n\n<p><a href=\"http://www.businessinsider.com/iphone-users-abandon-loyalty-to-apple-2016-11\">Here&#8217;s a Business Insider report from November of last year</a>, with retention statistics from 2014 through 2016 from UBS analysts Steven Milunovich and Benjamin Wilson. Business Insider leads with the iPhone&#8217;s slowly declining retention rate globally, but the real story is halfway down the page, in <a href=\"http://static4.businessinsider.com/image/5818d4cbdd089533548b4991-1015/screen%20shot%202016-11-01%20at%2016.29.01.png\">this chart</a>.</p>\n\n<p>According to that research from UBS, iPhone retention rates hover in the mid-to-high 80s in the U.S., U.K., and Germany. In Japan they&#8217;re in the mid-70s, but holding roughly steady. China&#8217;s numbers have plummeted &#8212; and these numbers from UBS (in the mid-50s for Q4 2016) are in line with the 50 percent number in the Chinese survey Thompson cited.</p>\n\n<p>So here&#8217;s Apple&#8217;s China problem: Chinese iPhone users aren&#8217;t nearly as loyal to the iPhone platform as iPhone users elsewhere are. This is already hurting Apple financially. Apple&#8217;s Q2 2017 financial results (announced this week) were, overall, OK. But other than China, they were actually good. The drop in iPhone sales in China was so severe, and China is so big, that it singlehandedly turned a good quarter into a so-so quarter.</p>\n\n<p>I subtly disagree with Ben Thompson on one point. Thompson attributes the iPhone&#8217;s slide in China to two factors:</p>\n\n<ol>\n<li>The whole &#8220;the operating system of China is WeChat, not iOS/Android&#8221; thing.</li>\n<li>The staleness of the iPhone 7 form factor.</li>\n</ol>\n\n<p>Thompson knows Chinese culture well &#8212; he lives in Taipei, visits China often, and speaks Mandarin. My grasp of Chinese culture is rudimentary at best, and I&#8217;ve never traveled to Asia. So I defer to him on the point that the iPhone as a status symbol is more important in China than it is elsewhere.</p>\n\n<p>Thompson, though, I think places too much weight on the fact that at a glance, some models of the iPhone 7 are indistinguishable from the iPhone 6 and 6S. Thompson argues that this is more of a problem in status-conscious China than it is elsewhere &#8212; that in China, there are many people who forego an upgrade to an iPhone 7 because other people won&#8217;t be able to tell that it isn&#8217;t, say, a boring two-year-old iPhone 6. I just don&#8217;t buy that. For one thing, the black and especially jet black iPhone 7 models <em>are</em> instantly recognizable as the latest and greatest.</p>\n\n<p>But more importantly, I just think the whole &#8220;<em>if it doesn&#8217;t have an altogether new form factor, it&#8217;s boring</em>&#8221; thing is hogwash. <a href=\"http://daringfireball.net/2016/09/design_as_branding\">I wrote an entire column about this</a> when the iPhone 7 debuted, and won&#8217;t rehash the whole argument here. But I am convinced this viewpoint is mostly that of the tech and gadget obsessed.</p>\n\n<p>Again, I&#8217;ll concede that the status symbol aspect of a high-end smartphone may well be more important in China than anywhere else in the world. But even if I also concede that the iPhone 7&#8217;s mostly-like-the-iPhone-6 form factor is a problem for the Chinese market, if the iOS platform engendered the loyalty in China that it does elsewhere, the result would be Chinese iPhone owners waiting another year for the <em>next</em> iPhone. Instead, according to the market research cited above, half of the Chinese iPhone owners who bought a new phone in 2016 switched to an Android device. There are some fine looking Android phones at the high end of the market, but there are none that, based on form factor alone, would explain this. And none of them have anything close to the luxury brand prestige that Apple does.</p>\n\n<p>In Apple&#8217;s &#8220;hardware differentiated by software&#8221; formula, the software is more important than the hardware. That&#8217;s why gadget writers so often get Apple wrong: they&#8217;re focused solely on hardware &#8212; the object, not the experience of using the object. That&#8217;s also why the financial press so often gets Apple wrong: they focus only on the hardware because that&#8217;s where the money comes from.</p>\n\n<p>If forced to choose, I would much rather run iOS on a Google Pixel than Android on an iPhone 7. I would rather run MacOS on a ThinkPad than Windows on a MacBook Pro.<sup id=\"fnr1-2017-05-05\"><a href=\"#fn1-2017-05-05\">1</a></sup> Whenever I bring up this thought experiment &#8212; would you rather run Apple&#8217;s software platform on non-Apple hardware or run some other software platform on Apple hardware &#8212; I get email from readers who say they actually do choose Apple products, especially MacBooks, for the hardware. I believe them, but those are the sort of customers with the least loyalty to Apple. If all you depend on is, say, Chrome, a text editor, and a terminal, it&#8217;s easy to switch to another laptop brand. If you depend on native Mac and iOS apps, iCloud, and iMessage, it&#8217;s arduous, at best, to switch.</p>\n\n<p>If it really is true that &#8220;the operating system of China is WeChat, not iOS/Android&#8221;, that&#8217;s the whole ballgame right there. Again, my disagreement with Thompson here is subtle. He even describes WeChat&#8217;s centrality to the Chinese smartphone stack as &#8220;the fundamental issue&#8221;, leaving the supposed boringness of the iPhone 6S and 7 as a secondary issue. My difference with Thompson is that I don&#8217;t think the iPhone 6S/7 hardware is a problem at all. Personally, I think the iPhone 7 is such a great phone, and the 7 Plus in particular has such a great camera, that the quality of the latest iPhone hardware, including how it looks, shows just how much of a problem it is that WeChat, not iOS, is central to the iPhone experience in China.</p>\n\n<p>That&#8217;s a real problem for Apple, because even if Thompson is right (and I&#8217;m wrong) and Apple <em>does</em> have a boring-looking-hardware problem in China, they can (and seem poised to) remedy that by releasing exciting new iPhone hardware this year. But if the problem is that iOS engenders far less platform loyalty in China because of WeChat&#8217;s centrality &#8212; or even worse, if WeChat is central <em>and</em> better on Android than it is on iOS &#8212; there&#8217;s no easy fix for Apple.</p>\n\n<h2>Postscript</h2>\n\n<p>For those of you like me, who know very little about WeChat, this 2015 piece by Connie Chan (as linked to by Thompson) is a terrific introduction: &#8220;<a href=\"http://a16z.com/2015/08/06/wechat-china-mobile-first/\">When One App Rules Them All: The Case of WeChat and Mobile in China</a>&#8221;.</p>\n\n<div class=\"footnotes\">\n<hr />\n<ol>\n<li id=\"fn1-2017-05-05\">\n<p>I always use ThinkPads as my go-to example of high-quality PC hardware; perhaps I should start using Microsoft Surfaces?&nbsp;<a href=\"#fnr1-2017-05-05\"  class=\"footnoteBackLink\"  title=\"Jump back to footnote 1 in the text.\">&#x21A9;&#xFE0E;</a></p>\n</li>\n</ol>\n</div>\n\n\n\n    "-      },-      {-         "title" : "★ Judging Apple Watch’s Success",-         "date_published" : "2017-04-24T22:28:32Z",-         "date_modified" : "2017-04-25T01:47:44Z",-         "id" : "https://daringfireball.net/2017/04/apple_watch_success",-         "url" : "https://daringfireball.net/2017/04/apple_watch_success",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p>Mike Murphy, writing for Quartz, &#8220;<a href=\"https://qz.com/967256/two-years-after-its-launch-the-apple-watch-hasnt-made-a-difference-at-apples-revenue-streams-aapl/\">Two Years After Its Launch, the Apple Watch Hasn’t Made a Difference at Apple</a>&#8221;:</p>\n\n<blockquote>\n  <p>Apple’s biggest launch since the iPad in 2010, the Apple Watch was\nexpected to be a hit: Given the massive financial success of the\niPhone, it stood to reason that a companion device might be\nsomething customers craved.</p>\n\n<p>Not so much. Apple has never shared hard numbers on how many\nwearables it has sold, and doesn’t even break out Watch sales in\nits quarterly earnings report. Instead, the device is bundled into\nApple’s “Other products,” which the company says includes, “Apple\nTV, Apple Watch, Beats products, iPod and Apple-branded and\nthird-party accessories.”</p>\n</blockquote>\n\n<p>These articles come out like clockwork every 3 months, as Apple&#8217;s earnings report draws near. Apple told us they were not going to report hard numbers on Apple Watch right from the start, six months before it shipped. They want to keep them secret for competitive reasons.</p>\n\n<blockquote>\n  <p>Two years and two iterations after its launch, the Apple Watch has\nnot proven to be as indispensable as the iPhone, or even as\nlucrative as the Mac, the iPad, or Apple’s services businesses.\nIt’s unclear whether an iPhone-like overhaul, or attempts to\nmarket the watch directly to athletes or millennials, will\nultimately make a difference.</p>\n</blockquote>\n\n<p>(&#8220;Two years and two iterations after its launch&#8221; &#8212; I don&#8217;t know if that&#8217;s a mistake, if Murphy is counting WatchOS releases, or if he&#8217;s counting Series 1 as a full hardware iteration. But it&#8217;s sloppy writing. Most people would surely agree that there&#8217;s been only one iteration since launch, the Series 2 watches released last September.)</p>\n\n<p>The nut of every &#8220;Apple Watch is a dud&#8221; story is the fact that it&#8217;s clearly not an iPhone-size business. But that can&#8217;t be the only measure of success. The iPhone is the biggest and most successful consumer product in the history of the world. Nothing compares to the smartphone market, and it&#8217;s possible nothing else will in our lifetimes. You and I may never again see a product as profitable as the iPhone &#8212; not just from Apple, but from any company in any industry. Or maybe we will. It&#8217;s a complete unknown.</p>\n\n<p>But if Apple gets it into its head that they should only work on iPhone-sized opportunities, it would paralyze the company. In baseball terms, it&#8217;s fine for Apple to hit a bunch of singles while waiting for their next home run. According to Apple, <a href=\"https://www.wareable.com/apple/watch-sales-rolex-tim-cook-556\">they had more watch sales by revenue in 2015 than any company other than Rolex</a>, and Apple&#8217;s &#8220;Other&#8221; category, which is where Watch sales are accounted for, <a href=\"https://images.apple.com/pr/pdf/q1fy17datasum.pdf\">had a near record-breaking holiday quarter</a> three months ago, suggesting strongly that Watch sales were up over the year-ago holiday quarter.</p>\n\n<p>These two facts are both true: Apple Watch sales are a rounding error compared to the iPhone, and Apple Watch is a smash hit compared to traditional watches and other wearable devices.</p>\n\n\n\n    "-      },-      {-         "title" : "★ On Uber’s ‘Identifying and Tagging’ of iPhones",-         "date_published" : "2017-04-24T00:54:36Z",-         "date_modified" : "2017-04-24T03:19:56Z",-         "id" : "https://daringfireball.net/2017/04/uber_identifying_and_tagging_iphones",-         "url" : "https://daringfireball.net/2017/04/uber_identifying_and_tagging_iphones",-         "author" : {-            "name" : "John Gruber"-         },-         "content_html" : "\n<p><a href=\"https://mobile.nytimes.com/2017/04/23/technology/travis-kalanick-pushes-uber-and-himself-to-the-precipice.html\">Mike Isaac&#8217;s profile of Uber CEO Travis Kalanick for The New York Times</a> contains an accusation that, on its face, sounds outrageous:</p>\n\n<blockquote>\n  <p>For months, Mr. Kalanick had pulled a fast one on Apple by\ndirecting his employees to help camouflage the ride-hailing app\nfrom Apple’s engineers. The reason? So Apple would not find out\nthat Uber had been secretly identifying and tagging iPhones even\nafter its app had been deleted and the devices erased &#8212; a fraud\ndetection maneuver that violated Apple’s privacy guidelines.</p>\n\n<p>But Apple was on to the deception, and when Mr. Kalanick arrived\nat the midafternoon meeting sporting his favorite pair of bright\nred sneakers and hot-pink socks, Mr. Cook was prepared. “So, I’ve\nheard you’ve been breaking some of our rules,” Mr. Cook said in\nhis calm, Southern tone. Stop the trickery, Mr. Cook then\ndemanded, or Uber’s app would be kicked out of Apple’s App Store.</p>\n\n<p>For Mr. Kalanick, the moment was fraught with tension. If Uber’s\napp was yanked from the App Store, it would lose access to\nmillions of iPhone customers &#8212; essentially destroying the\nride-hailing company’s business. So Mr. Kalanick acceded.</p>\n</blockquote>\n\n<p>&#8220;Secretly identifying and tagging iPhones even after its app had been deleted and the devices erased&#8221; is a rather startling accusation, because it sounds like it should be technically impossible. It&#8217;s also very much unclear what information Uber was able to glean from these &#8220;identified and tagged&#8221; iPhones other than some sort of unique device identifier. Unfortunately, the Times story is very short on details here. But note that the Times is <em>not</em> saying Uber was &#8220;tracking&#8221; these phones. A lot of people are jumping to the conclusion that Uber was somehow tracking the location of users even after they deleted the Uber app, but the word &#8220;track&#8221; only appears in the article in the context of Kalanick having &#8220;excelled at running track and playing football&#8221; in high school.</p>\n\n<p>[<strong>Update:</strong> This explains a lot, regarding the hubbub today over this story. <a href=\"http://newsdiffs.org/diff/1383350/1383404/https%3A/www.nytimes.com/2017/04/23/technology/travis-kalanick-pushes-uber-and-himself-to-the-precipice.html\">When first published, the Times story <em>did</em> use the word &#8220;tracking&#8221;</a>, but a subsequent revision changed that word to &#8220;identifying and tagging&#8221;.]</p>\n\n<p>Reading between the lines, it is possible &#8212; and my gut says quite probable &#8212; that Uber wasn&#8217;t <em>doing</em> anything on these iPhones other than when its app was installed and running on them. From the end of the article:</p>\n\n<blockquote>\n  <p>The idea of fooling Apple, the main distributor of Uber’s app,\nbegan in 2014.</p>\n\n<p>At the time, Uber was dealing with widespread account fraud in\nplaces like China, where tricksters bought stolen iPhones that\nwere erased of their memory and resold. Some Uber drivers there\nwould then create dozens of fake email addresses to sign up for\nnew Uber rider accounts attached to each phone, and request rides\nfrom those phones, which they would then accept. Since Uber was\nhanding out incentives to drivers to take more rides, the drivers\ncould earn more money this way.</p>\n\n<p>To halt the activity, Uber engineers assigned a persistent\nidentity to iPhones with a small piece of code, a practice called\n“fingerprinting.” Uber could then identify an iPhone and prevent\nitself from being fooled even after the device was erased of its\ncontents.</p>\n\n<p>There was one problem: Fingerprinting iPhones broke Apple’s rules.\nMr. Cook believed that wiping an iPhone should ensure that no\ntrace of the owner’s identity remained on the device.</p>\n</blockquote>\n\n<p>What Isaac is reporting here doesn&#8217;t require any code running on an iPhone other than when the Uber app is itself installed and launched. I&#8217;m speculating here, but it could be something like this:</p>\n\n<ol>\n<li><p>The Uber app, while installed, fingerprints the device somehow, and reports the fingerprint home to Uber&#8217;s servers, where it is tied to the user&#8217;s Uber account. (All iPhones have a Unique Device Identifier &#8212; &#8220;UDID&#8221; &#8212; but <a href=\"http://lifehacker.com/5898282/what-a-udid-is-and-why-apples-rejecting-apps-that-want-yours\">Apple banned third-party apps from accessing it in 2012</a>. Uber either found a way to access UDIDs surreptitiously, or created some other way of uniquely identifying devices even after they&#8217;ve been wiped. It would be good to know exactly what they did, but for the sake of my argument here it doesn&#8217;t matter.)</p></li>\n<li><p>The Uber app is deleted from the device and/or device is wiped. At this point, Uber knows the fingerprint for the device, but can’t use it to track the device in any way, <em>and they don’t care</em>, because until someone reinstalls the Uber app on the phone it isn&#8217;t being used to book fraudulent rides.</p></li>\n<li><p>The Uber app is reinstalled on the iPhone. When it launches, it does the fingerprint check and phones home again. Uber now knows this is the same iPhone they’ve seen before, because the fingerprint matches. This is the violation of Apple&#8217;s privacy policy.</p></li>\n</ol>\n\n<p>But until step 3, when the Uber app is reinstalled, I don&#8217;t think Uber was &#8220;tracking&#8221; the phone in any way. And they didn’t care — the Times says the whole project was designed to counter fraud in China, which required the Uber app to be reinstalled on stolen iPhones.</p>\n\n<p>Repeating from the opening of the article, Isaac wrote:</p>\n\n<blockquote>\n  <p>So Apple would not find out that Uber had been secretly\nidentifying and tagging iPhones even after its app had been\ndeleted and the devices erased &#8212; a fraud detection maneuver that\nviolated Apple’s privacy guidelines.</p>\n</blockquote>\n\n<p>That <em>sounds</em> like Uber was doing the identifying and &#8220;tagging&#8221; (whatever that is) after the app had been deleted and/or the device wiped, but I think what it might &#8212; <em>might</em> &#8212; actually mean is merely that the identification persisted after the app had been deleted and/or the device wiped. That&#8217;s not supposed to be technically possible &#8212; iOS APIs for things like the UDID and even the MAC address stopped reporting unique identifiers years ago, because they were being abused by privacy invasive ad trackers, analytics packages, and entitled shitbags like Uber. That&#8217;s wrong, and Apple was right to put an end to it, but it&#8217;s far less sensational than the prospect of Uber having been able to identify and &#8220;tag&#8221; an iPhone <em>after</em> the Uber app had been deleted. The latter scenario only seems technically possible if other third-party apps were executing surreptitious code that did this stuff through Uber&#8217;s SDK, or if the Uber app left behind malware outside the app&#8217;s sandbox. I don&#8217;t think that&#8217;s the case, if only because I don&#8217;t think Apple would have hesitated to remove Uber from the App Store if it was infecting iPhones with hidden phone-home malware.</p>\n\n<p>The article does raise some questions:</p>\n\n<ul>\n<li><p>What APIs and device info was Uber using to identify iPhones? Are these API loopholes now closed in iOS? If we don&#8217;t learn exactly what Uber was using to identify devices, we cannot know that the technique no longer works. iOS users should be able to feel confident that when they delete an app, all connections between their device and the developer of the app are disconnected, and that when they wipe a device, everything personally identifying has been removed from it.</p></li>\n<li><p>What exactly did Apple know about Uber&#8217;s actions in this regard when Tim Cook called Kalanick in for the meeting? Was Apple aware that Uber was specifically keeping a database of unique iPhone identifiers? If so, how?</p></li>\n<li><p>What prompted Apple to investigate Uber in this regard? And why did Uber suspect Apple was going to investigate, prompting them to geofence their fingerprinting so it wouldn&#8217;t trigger in Cupertino? (My theory: the Uber app was calling private APIs, and they used the geofence to avoid calling those private APIs while the app was in App Store review, assuming, perhaps incorrectly, that all App Store reviewers work in Cupertino. App Store review can identify apps that call private APIs.)</p></li>\n<li><p><strong>Update</strong>: Why didn&#8217;t Apple require Uber to disclose what they’d done as a condition for remaining in the store? Shouldn&#8217;t iPhone users who had Uber installed know about this?</p></li>\n</ul>\n\n<p>[<strong>Update 2:</strong> <a href=\"https://twitter.com/chronic/status/856250223777206273\">Will Strafach examined a 2014 build of the Uber iOS app</a> and found them using private APIs to use IOKit to pull the device serial number from the device registry. There might be more, but this alone is a blatant violation of App Store policy. <a href=\"https://twitter.com/chronic/status/856333895050178560\">Strafach confirms</a> that the technique Uber was using no longer works in iOS 10.]</p>\n\n<hr />\n\n<p>The article also contains this non-Apple-related tidbit:</p>\n\n<blockquote>\n  <p>Uber devoted teams to so-called competitive intelligence,\npurchasing data from an analytics service called Slice\nIntelligence. Using an email digest service it owns named\nUnroll.me, Slice collected its customers’ emailed Lyft receipts\nfrom their inboxes and sold the anonymized data to Uber. Uber used\nthe data as a proxy for the health of Lyft’s business. (Lyft, too,\noperates a competitive intelligence team.)</p>\n\n<p>Slice confirmed that it sells anonymized data (meaning that\ncustomers’ names are not attached) based on ride receipts from\nUber and Lyft, but declined to disclose who buys the information.</p>\n</blockquote>\n\n<p>This is, needless to say, super shitty. We expect it from Uber. But Slice should be ashamed of themselves. Their <a href=\"https://unroll.me/\">Unroll.me</a> service is billed as a tool to &#8220;Clean up your inbox&#8221; by identifying subscription emails and allowing you to unsubscribe from them in bulk. It&#8217;s &#8220;free&#8221; in the sense that you don&#8217;t pay them money, but they&#8217;re selling your personal information to companies like Uber. Supposedly that information is anonymized, but wiped iPhones are supposed to be anonymized too, and Uber found at least one route around that. </p>\n\n\n\n    "-      }-   ]-}+{
+   "version" : "https://jsonfeed.org/version/1",
+   "title" : "Daring Fireball",
+   "home_page_url" : "https://daringfireball.net/",
+   "feed_url" : "https://daringfireball.net/feeds/json",
+   "author" : {
+      "url" : "https://twitter.com/gruber",
+      "name" : "John Gruber"
+   },
+   "icon" : "https://daringfireball.net/graphics/apple-touch-icon.png",
+   "favicon" : "https://daringfireball.net/graphics/favicon-64.png",
+   "items" : [
+      {
+         "title" : "Mossberg: The Disappearing Computer",
+         "date_published" : "2017-05-26T03:56:37Z",
+         "date_modified" : "2017-05-26T03:56:39Z",
+         "id" : "https://daringfireball.net/linked/2017/05/25/mossberg",
+         "url" : "https://daringfireball.net/linked/2017/05/25/mossberg",
+         "external_url" : "https://www.recode.net/2017/5/25/15689094/mossberg-final-column",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>Walt Mossberg:</p>\n\n<blockquote>\n  <p>This is my last weekly column for The Verge and Recode &#8212; the last\nweekly column I plan to write anywhere. I’ve been doing these\nalmost every week since 1991, starting at the Wall Street Journal,\nand during that time, I’ve been fortunate enough to get to know\nthe makers of the tech revolution, and to ruminate &#8212; and\nsometimes to fulminate &#8212; about their creations.</p>\n\n<p>Now, as I prepare to retire at the end of that very long and\nworld-changing stretch, it seems appropriate to ponder the\nsweep of consumer technology in that period, and what we can\nexpect next.</p>\n</blockquote>\n\n<p>Godspeed on whatever&#8217;s next, Walt.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Mossberg: The Disappearing Computer’\"  href=\"https://daringfireball.net/linked/2017/05/25/mossberg\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "Nick Murray on Alcantara: ‘It’s Garbage’",
+         "date_published" : "2017-05-25T17:03:28Z",
+         "date_modified" : "2017-05-26T04:02:32Z",
+         "id" : "https://daringfireball.net/linked/2017/05/25/murray-alcantara",
+         "url" : "https://daringfireball.net/linked/2017/05/25/murray-alcantara",
+         "external_url" : "https://www.youtube.com/watch?v=aebUNgMhQV4&feature=youtu.be",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>Interesting video by Nick Murray, discussing the merits of <a href=\"http://www.alcantara.com/\">Alcantara</a>, the synthetic suede-like product that <a href=\"https://www.microsoft.com/en-us/surface/devices/surface-laptop/innovation\">Microsoft has used</a> for their new Surface Laptop. Murray is coming from the perspective of Alcantara&#8217;s use in cars, not laptops, but he says it wears terribly on things you touch, like steering wheels and gear shifters, losing all its softness after just a few thousand miles. This might bode poorly for the Surface Laptop.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Nick Murray on Alcantara: &#8216;It&#8217;s Garbage&#8217;’\"  href=\"https://daringfireball.net/linked/2017/05/25/murray-alcantara\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "The Marc Newson Hourglass for Hodinkee",
+         "date_published" : "2017-05-25T03:59:00Z",
+         "date_modified" : "2017-05-25T17:08:45Z",
+         "id" : "https://daringfireball.net/linked/2017/05/24/marc-newson-hourglass",
+         "url" : "https://daringfireball.net/linked/2017/05/24/marc-newson-hourglass",
+         "external_url" : "https://www.hodinkee.com/articles/marc-newson-hourglass-limited-edition-for-hodinkee",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>Watch the video and read this. I&#8217;ll update this post with my comments later today.</p>\n\n<p><strong>Update:</strong> OK, so my take on this is going to upset many of you. I first saw this last night via <a href=\"https://twitter.com/marcoarment/status/867210701697409024\">this tweet from Marco Arment</a>, and I read through the replies and every single one of them was mocking either the entire premise of an exquisite hourglass or at the very least the price.</p>\n\n<p>I think this looks beautiful, and I don&#8217;t think there&#8217;s anything crazy about it costing $12,000. I&#8217;m not buying one. But all sorts of pieces of art cost tens of thousands of dollars, and I say this is most definitely art. Newson&#8217;s previous hourglass design, for Ikepod, <a href=\"http://www.ablogtowatch.com/ikepod-hourglass-time-for-art/\">ranged from $13,000–40,000</a>.</p>\n\n<p>I do find it odd that every unit is numbered &#8220;1/100&#8221; rather than giving each piece a unique number &#8212; &#8220;1/100&#8221;, &#8220;2/100&#8221;, … &#8220;100/100&#8221;. And Hodinkee isn&#8217;t doing themselves any favors with some of the precious bits of copywriting (e.g. &#8220;approximately 1,249,996 little spheres&#8221; is not an approximation). But if you don&#8217;t see anything ludicrous about a mechanical watch costing in excess of $10,000 (or $100,000, <a href=\"https://www.forbes.com/sites/robertanaas/2017/05/13/rolex-bao-dai-watch-sells-for-more-than-5-million-at-phillips-auction-new-world-record/\">or more</a>) why is there something ludicrous about a $12,000 hourglass?</p>\n\n<p>The world is full of cheaply-made mass-produced crap. Why not celebrate the creation of something genuinely beautiful?</p>\n\n<div>\n<a  title=\"Permanent link to ‘The Marc Newson Hourglass for Hodinkee’\"  href=\"https://daringfireball.net/linked/2017/05/24/marc-newson-hourglass\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "‘Spectre’ Trailer Re-Cut With Roger Moore as Bond",
+         "date_published" : "2017-05-24T21:28:28Z",
+         "date_modified" : "2017-05-25T17:49:07Z",
+         "id" : "https://daringfireball.net/linked/2017/05/24/moore-spectre",
+         "url" : "https://daringfireball.net/linked/2017/05/24/moore-spectre",
+         "external_url" : "http://io9.gizmodo.com/the-spectre-trailer-is-so-much-better-when-its-starring-1723648560",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>This is so well done it gave me goosebumps. Makes me think the franchise could use some Moore-like suaveness when they recast the role post-Craig.</p>\n\n<div>\n<a  title=\"Permanent link to ‘&#8216;Spectre&#8217; Trailer Re-Cut With Roger Moore as Bond’\"  href=\"https://daringfireball.net/linked/2017/05/24/moore-spectre\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "‘Moonraker’ — The Insane Attempt to Turn James Bond Into ‘Star Wars’ in 1979",
+         "date_published" : "2017-05-24T21:23:38Z",
+         "date_modified" : "2017-05-24T21:28:39Z",
+         "id" : "https://daringfireball.net/linked/2017/05/24/moonraker",
+         "url" : "https://daringfireball.net/linked/2017/05/24/moonraker",
+         "external_url" : "http://io9.gizmodo.com/looking-back-at-moonrakers-insane-attempt-to-turn-james-1795486523",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>James Whitbrook, writing for io9:</p>\n\n<blockquote>\n  <p><em>Moonraker</em> might not be the best Bond movie &#8212; it might not even\nbe the best of Moore’s time with the Bond mantle. But all these\nyears later, its goofy charm perhaps best represents the joyful\ncamp that Moore brought to his role as 007, something we will\nalways remember now that he’s gone.</p>\n</blockquote>\n\n<p>Over the years, my youthful resistance to campiness has faded, and my esteem for <em>Moonraker</em> has grown. </p>\n\n<div>\n<a  title=\"Permanent link to ‘&#8216;Moonraker&#8217; &#8212; The Insane Attempt to Turn James Bond Into &#8216;Star Wars&#8217; in 1979’\"  href=\"https://daringfireball.net/linked/2017/05/24/moonraker\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "From the Annals of Anal",
+         "date_published" : "2017-05-24T21:16:00Z",
+         "date_modified" : "2017-05-24T21:16:01Z",
+         "id" : "https://daringfireball.net/linked/2017/05/24/annals-of-anal",
+         "url" : "https://daringfireball.net/linked/2017/05/24/annals-of-anal",
+         "external_url" : "http://www.nydailynews.com/news/national/truck-plows-analtech-odor-leads-hazmat-situation-article-1.3189762",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>The New York Daily News:</p>\n\n<blockquote>\n  <p>At approximately 6:30 a.m. Monday, a car crash involving two\npickup trucks sent one of the vehicles inside the AnalTech\nbuilding of Newark, Del., leaving a giant hole. The truck damaged\nthe facility&#8217;s laboratory and caused an odor to emanate from the\ncavity, <a href=\"http://www.wdel.com/news/video-truck-rams-newark-s-analtech-odor-leads-to-hazmat/article_2795e0ce-3f07-11e7-9b77-8719895bf06b.html\">WDEL\nreports</a>.</p>\n</blockquote>\n\n<p>Regarding the company name:</p>\n\n<blockquote>\n  <p>In an email sent to the Houston Chronicle, a spokesperson\nrevealed, &#8220;In 1964, the company paid a marketing firm to come up\nwith a different name. They said, &#8216;Well, you guys do Analytical\nTechnology &#8212; why don’t you put the two words together and call it\n‘AnalTech!’”</p>\n\n<p>However, the spokesperson admitted that &#8220;AnalTech faces certain\nchallenges because of the &#8216;juvenile&#8217; humor that has developed in\nthe past few decades and current web filters that may block the\ncompany name&#8221; and has considered rebranding as a result.</p>\n</blockquote>\n\n<p>I don&#8217;t see anything &#8220;juvenile&#8221; about this humor. Good butt jokes are funny to all ages.</p>\n\n<p>(<a href=\"https://onefoottsunami.com/2017/05/24/analtech-is-a-really-awful-name-for-a-company/\">Via Paul Kafasis</a>.)</p>\n\n<div>\n<a  title=\"Permanent link to ‘From the Annals of Anal’\"  href=\"https://daringfireball.net/linked/2017/05/24/annals-of-anal\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "★ Safari vs. Chrome on the Mac",
+         "date_published" : "2017-05-24T20:36:39Z",
+         "date_modified" : "2017-05-25T17:14:06Z",
+         "id" : "https://daringfireball.net/2017/05/safari_vs_chrome_on_the_mac",
+         "url" : "https://daringfireball.net/2017/05/safari_vs_chrome_on_the_mac",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>Eric Petitt, <a href=\"https://medium.com/the-official-unofficial-firefox-blog/browse-against-the-machine-e793c0fee917\">writing for The Official Unofficial Firefox Blog yesterday</a>:</p>\n\n<blockquote>\n  <p>I head up Firefox marketing, but I use Chrome every day. Works\nfine. Easy to use. Like most of us who spend too much time in\nfront of a laptop, I have two browsers open; Firefox for work,\nChrome for play, customized settings for each. There are multiple\nthings that bug me about the Chrome product, for sure, but I‘m OK\nwith Chrome. I just don’t like <em>only</em> being on Chrome. [&#8230;]</p>\n\n<p>But talking to friends, it sounds more and more like living on\nChrome has started to feel like their only option. Edge is broken.\nSafari and Internet Explorer are just plain bad. And\nunfortunately, too many people think Firefox isn’t a modern\nalternative.</p>\n</blockquote>\n\n<p>In an update posted today, he walked that back:</p>\n\n<blockquote>\n  <p>In my original post I made a personal dig about Edge, IE and\nSafari: “Edge is broken. Safari and Internet Explorer are just\nplain bad.” I’ve since deleted that sentence.</p>\n\n<p>It’s true, I personally don’t like those products, they just don’t\nwork for me. But that was probably a bit too flip. And, if it\nwasn’t obvious that those were my personal opinions as a user, not\nthose of the good folks at Firefox and Mozilla, then please accept\nmy apology.</p>\n</blockquote>\n\n<p>It&#8217;s easy when making an aside &#8212; and it&#8217;s clear that the central premise of this piece is about positioning Chrome as the Goliath to Firefox&#8217;s David, so references to Safari and IE are clearly asides &#8212; to conflate &#8220;<em>I don&#8217;t like X</em>&#8221; with &#8220;<em>X is bad</em>&#8221;. So I say we let it slide.<sup id=\"fnr1-2017-05-24\"><a href=\"#fn1-2017-05-24\">1</a></sup></p>\n\n<p>But I&#8217;ve been meaning to write about Safari vs. Chrome for a while, and Petitt&#8217;s jab, even retracted, makes for a good excuse.</p>\n\n<p>I think Safari is a <em>terrific</em> browser. It remains the one and only browser for the Mac that behaves like a native Mac app through and through. It may not be the fastest browser but it is fast. And its energy performance puts Chrome to shame. If you use a Mac laptop, using Chrome instead of Safari can cost you an hour or more of battery life per day.<sup id=\"fnr2-2017-05-24\"><a href=\"#fn2-2017-05-24\">2</a></sup></p>\n\n<p>But Chrome is a terrific browser, too. It&#8217;s clearly the second-most-Mac-like browser for MacOS. It almost inarguably has the widest and deepest extension ecosystem. It has good web developer tools, and Chrome adopts new web development technologies faster than Safari does.</p>\n\n<p>But Safari&#8217;s extension model is more privacy-conscious. For many people on MacOS, the decision between Safari and Chrome probably comes down to which ecosystem you&#8217;re more invested in &#8212; iCloud or Google &#8212; for things like tab, bookmark, and history syncing. Me, personally, I&#8217;d feel lost without the ability to send tabs between my Macs and iPhone via Handoff. <strong>Update:</strong> Unbeknownst to me, Chrome fully supports Handoff with iOS devices. Nice!</p>\n\n<p>In short, Safari closely reflects Apple&#8217;s institutional priorities (privacy, energy efficiency, the niceness of the native UI, support for MacOS and iCloud technologies) and Chrome closely reflects Google&#8217;s priorities (speed, convenience, a web-centric rather than native-app-centric concept of desktop computing, integration with Google web properties). Safari is Apple&#8217;s browser for Apple devices. Chrome is Google&#8217;s browser for all devices.</p>\n\n<p>I personally prefer Safari, but I can totally see why others &#8212; especially those who work on desktop machines or MacBooks that are usually plugged into power &#8212; prefer Chrome. DF readers agree. Looking at my web stats, over the last 30 days, 69 percent of Mac users visiting DF used Safari, but a sizable 28 percent used Chrome. (Firefox came in at 3 percent, and everything else was under 1 percent.)<sup id=\"fnr3-2017-05-24\"><a href=\"#fn3-2017-05-24\">3</a></sup></p>\n\n<p>As someone who&#8217;s been a Mac user long enough to remember when there were <em>no</em> good web browsers for the Mac, having both Safari and Chrome feels downright bountiful, and the competition is making both of them better.</p>\n\n<div class=\"footnotes\">\n<hr />\n<ol>\n<li id=\"fn1-2017-05-24\">\n<p>What really struck me about Petitt&#8217;s piece wasn&#8217;t the unfounded (to my eyes) dismissal of Safari, but rather his admission that he uses &#8220;Firefox for work,  Chrome for play&#8221;. I really doubt the marketing managers for Chrome or Safari spend their days with a rival browser open for &#8220;play&#8221;, and even if they did, I expect they&#8217;d have the common sense not to admit so publicly, and especially not in the opening paragraph of a piece arguing that their own browser is a viable alternative to the rival one.&nbsp;<a href=\"#fnr1-2017-05-24\"  class=\"footnoteBackLink\"  title=\"Jump back to footnote 1 in the text.\">&#x21A9;&#xFE0E;</a></p>\n</li>\n<li id=\"fn2-2017-05-24\">\n<p>Back in December, when Consumer Reports rushed out their sensational report <a href=\"https://daringfireball.net/linked/2016/12/23/cr-mbp\">claiming bizarrely erratic battery life</a> on the then-new MacBook Pros (which was eventually determined to be <a href=\"https://daringfireball.net/linked/2017/01/12/consumer-reports\">caused by a bug in Safari that Apple soon fixed</a>), I decided to try to loosely replicate their test on the MacBook Pro review units I had from Apple. Consumer Reports doesn&#8217;t reveal the exact details of their testing, but they do describe it in general. They set the laptop brightness to a certain brightness value, then load a list of web pages repeatedly until the battery runs out. Presumably they automate this with a script of some sort, but they don&#8217;t say.</p>\n\n<p>That&#8217;s pretty easy to replicate in AppleScript. I used that day&#8217;s leading stories on <a href=\"https://www.techmeme.com/\">TechMeme</a> as my source for URLs to load &#8212; 26 URLs total. When a page loads, my script waits 5 seconds, and then scrolls down (simulating the Page Down key), waits another 5 seconds and pages down again, and then waits another 5 seconds before paging down one last time. This is a simple simulation of a person actually reading a web page. While running through the list of URLs, my script leaves each URL open in a tab. At the end of the list, it closes all tabs and then starts all over again. Each time through the loop the elapsed time and remaining battery life are logged to a file. (I also logged results as updates via messages sent to myself via iMessage, so I could monitor the progress of the hours-long test runs from my phone. No apps were running during the tests other than Safari, Script Editor, Finder, and Messages.)</p>\n\n<p>I set the display brightness at exactly 68.75 percent for each test (11/16 clicks on the brightness meter when using the function key buttons to adjust), a value I chose arbitrarily as a reasonable balance for someone running on battery power.</p>\n\n<p>Averaged (and rounded) across several runs, I got the following results:</p>\n\n<ul>\n<li>15-inch MacBook Pro With Touch Bar: 6h:50m</li>\n<li>13-inch MacBook Pro With Touch Bar: 5h:30m</li>\n<li>13-inch MacBook Pro (2014): 5h:10m</li>\n<li>11-inch MacBook Air (2011): 2h:15m</li>\n</ul>\n\n<p>I no longer had a new 13-inch MacBook Pro without the Touch Bar (a.k.a. the &#8220;MacBook Esc&#8221;) &#8212; I&#8217;d sent it back to Apple. I included my own personal 2014 13-inch MacBook Pro and my old 2011 MacBook Air just as points of reference. I think the Air did poorly just because it was so old and so well-used. It still has its original battery.</p>\n\n<p>I saw <em>no</em> erratic fluctuations in battery life across runs of the test. I procrastinated on publishing the results, though, and within a few weeks the whole thing was written off with a &#8220;<em>never mind!</em>&#8221; when Apple fixed the bug in Safari that was causing Consumer Reports&#8217;s erratic results.</p>\n\n<p>Anyway, the whole point of including these results in this footnote is that I also ran the exact same test with Chrome on the 13-inch MacBook Pro With Touch Bar. The average result: 3h:40m. That&#8217;s 1h:50m difference. On the exact same machine running the exact same test with the exact same list of URLs, the battery lasted almost exactly 1.5 times as long using Safari than Chrome.</p>\n\n<p>My test was in no way meant to simulate real-world usage. You&#8217;d have to be fueled up on some serious stimulants to read a new web page every 15 seconds non-stop for hours on end. But the results were striking. If you place a high priority on your MacBook&#8217;s battery life, you should use Safari instead of Chrome.</p>\n\n<p>If you&#8217;re interested, I&#8217;ve posted my battery testing scripts for <a href=\"https://gist.github.com/gruber/ad201668b31d21096456d7abf11acbd3\">Safari</a> and <a href=\"https://gist.github.com/gruber/15d7183f04c2ac1c51ee6a2637925ebd\">Chrome</a>.&nbsp;<a href=\"#fnr2-2017-05-24\"  class=\"footnoteBackLink\"  title=\"Jump back to footnote 2 in the text.\">&#x21A9;&#xFE0E;︎</a></p>\n</li>\n<li id=\"fn3-2017-05-24\">\n<p>If anyone has a good source for browser usage by MacOS users from a general purpose website like The New York Times or CNN, let me know. I honestly don&#8217;t know whether to expect that the split among DF readers is biased in favor of Safari because DF readers are more likely to care about the advantages of a native app, or biased in favor of Chrome because so many of you are web developers or even just nerdy enough to install a third-party browser in the first place. Wikimedia used to publish stats like that, but alas, <a href=\"https://stats.wikimedia.org/wikimedia/squids/SquidReportClients.htm\">ceased in 2015</a>.&nbsp;<a href=\"#fnr3-2017-05-24\"  class=\"footnoteBackLink\"  title=\"Jump back to footnote 3 in the text.\">&#x21A9;&#xFE0E;︎</a></p>\n</li>\n\n</ol>\n</div>\n\n\n\n    "
+      },
+      {
+         "title" : "Meeting Roger Moore",
+         "date_published" : "2017-05-24T01:27:46Z",
+         "date_modified" : "2017-05-24T01:27:48Z",
+         "id" : "https://daringfireball.net/linked/2017/05/23/meeting-roger-moore",
+         "url" : "https://daringfireball.net/linked/2017/05/23/meeting-roger-moore",
+         "external_url" : "https://twitter.com/MrKenShabby/status/867036448037511169",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>Amazing story from Marc Haynes about meeting Roger Moore as a 7-year-old in 1983. </p>\n\n<p>(This tweet I&#8217;m linking to has screenshots of Haynes&#8217;s post on Facebook; <a href=\"http://www.northstandchat.com/showthread.php?352470-Roger-Moore-has-died/page6\">here&#8217;s the same story in text</a> copied and pasted into a forum, without attribution. Have I ever complained about how much I dislike Facebook?)</p>\n\n<div>\n<a  title=\"Permanent link to ‘Meeting Roger Moore’\"  href=\"https://daringfireball.net/linked/2017/05/23/meeting-roger-moore\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "Implementing JSON Feed",
+         "date_published" : "2017-05-23T20:23:16Z",
+         "date_modified" : "2017-05-24T01:18:09Z",
+         "id" : "https://daringfireball.net/linked/2017/05/23/json-feed-dr-drang",
+         "url" : "https://daringfireball.net/linked/2017/05/23/json-feed-dr-drang",
+         "external_url" : "http://leancrew.com/all-this/2017/05/implementing-json-feed/",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>Dr. Drang, after adding JSON Feed support for both his blog publishing engine <em>and</em> his homegrown feed reader:</p>\n\n<blockquote>\n  <p>JSON Feed, for all its advantages, may be a flash in the pan. Not\nonly do bloggers and publishing platforms have to adopt it, so do\nthe major aggregator/reader services like Feedly and Digg and the\nanalytics services like FeedPress and FeedBurner. But even if JSON\nFeed doesn’t take off, the time I spent adding it to my blog and\naggregator was so short I won’t regret it.</p>\n</blockquote>\n\n<p>Again I say: easier to generate, easier to parse.</p>\n\n<p><strong>Update:</strong> <a href=\"https://www.robjwells.com/2017/05/json-feed/\">Rob Wells on adding JSON feed to his site</a>:</p>\n\n<blockquote>\n  <p>I think this is what all the people complaining on the Hacker News\nthread missed. Working in JSON is comfortable and familiar &#8212; the\ntools are good and you get told when something goes wrong. Working\nwith XML can be unclear and a bit of a pain, and creating an\ninvalid document is a risk.</p>\n\n<p>So my super-duper advanced JSON Feed implementation is…\nconstructing a <code>dict</code>, adding things to it and passing it off to\nthe JSON module that I use <em>all the time</em>. Taken care of.</p>\n</blockquote>\n\n<p>I do something similar to what Wells and Drang do. DF&#8217;s RSS and Atom XML feeds are generated via templates: skeleton XML documents with tokens and loop constructs where the actual content gets filled in. But for JSON Feed I just build a Perl data structure that maps exactly to the JSON Feed spec, and just call a single function from the standard JSON module and it gets printed. That&#8217;s it. A template would add complexity.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Implementing JSON Feed’\"  href=\"https://daringfireball.net/linked/2017/05/23/json-feed-dr-drang\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "Feedbin, Too",
+         "date_published" : "2017-05-23T18:50:36Z",
+         "date_modified" : "2017-05-23T19:03:33Z",
+         "id" : "https://daringfireball.net/linked/2017/05/23/feedbin-too",
+         "url" : "https://daringfireball.net/linked/2017/05/23/feedbin-too",
+         "external_url" : "https://feedbin.com/blog/2017/05/22/feedbin-supports-json-feed/",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>Ben Ubois, announcing support for JSON Feed in Feedbin:</p>\n\n<blockquote>\n  <p>One of the criticisms I’ve seen of JSON Feed is that there’s no\nincentive for feed readers to support JSON Feed. This is not true.\nOne of the largest-by-volume support questions I get is along the\nlines of “Why does this random feed not work?” And, 95% of the\ntime, it’s because the feed is broken in some subtle way. JSON\nFeed will help alleviate these problems, because it’s easier to\nget right.</p>\n\n<p>I also want JSON Feed to succeed because I remember how daunting\nRSS/Atom parsing were when building Feedbin. If JSON Feed was the\ndominant format back then, it would have been a non-issue.</p>\n</blockquote>\n\n<p>Easier to generate <em>and</em> easier to parse &#8212; that&#8217;s the whole point of JSON Feed in a nut.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Feedbin, Too’\"  href=\"https://daringfireball.net/linked/2017/05/23/feedbin-too\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "NewsBlur Now Supports JSON Feed",
+         "date_published" : "2017-05-23T18:44:42Z",
+         "date_modified" : "2017-05-23T18:44:43Z",
+         "id" : "https://daringfireball.net/linked/2017/05/23/newsblur-json-feed",
+         "url" : "https://daringfireball.net/linked/2017/05/23/newsblur-json-feed",
+         "external_url" : "http://blog.newsblur.com/post/160982162270/newsblur-now-supports-the-new-json-feed-spec",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>Samuel Clay, founder of NewsBlur:</p>\n\n<blockquote>\n  <p>Starting today, NewsBlur now officially supports the new JSON Feed\nspec. And there’s nothing extra you have to do. This means if a\nwebsite syndicates their stories with the easy-to-write and\neasy-to-read JSON format, you can read it on NewsBlur. It should\nmake no difference to you, since you’re reading the end product.\nBut to website developers everywhere, supporting JSON Feeds is so\nmuch easier than supporting XML-based RSS/Atom.</p>\n</blockquote>\n\n<p>According to Clay, there are 15,000 NewsBlur users who subscribe to Daring Fireball. It&#8217;s very cool to see a feed reader that popular adopt JSON Feed so quickly.</p>\n\n<p>The DF RSS feed isn&#8217;t going anywhere, so if you&#8217;re already subscribed to it, there&#8217;s no need to switch. But JSON Feed&#8217;s spec makes it possible for me to specify both a <code>url</code> that points to the post on Daring Fireball (i.e. the permalink) and an <code>external_url</code> that points to the article I&#8217;m linking to. The way I&#8217;ve dealt with that in the RSS (technically Atom, but that&#8217;s sort of beside the point) is a bit of a hack that&#8217;s caused problems with numerous feed readers over the years.</p>\n\n<div>\n<a  title=\"Permanent link to ‘NewsBlur Now Supports JSON Feed’\"  href=\"https://daringfireball.net/linked/2017/05/23/newsblur-json-feed\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "Roger Moore’s Recipe for a Perfect Martini",
+         "date_published" : "2017-05-23T18:24:49Z",
+         "date_modified" : "2017-05-23T18:24:50Z",
+         "id" : "https://daringfireball.net/linked/2017/05/23/moore-perfect",
+         "url" : "https://daringfireball.net/linked/2017/05/23/moore-perfect",
+         "external_url" : "https://www.theguardian.com/lifeandstyle/2015/mar/17/how-make-dry-martini-roger-moore-way-james-bond",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>Worth <a href=\"https://daringfireball.net/linked/2015/11/01/moore-martini\">a re-link</a> today: Roger Moore, two years ago, writing for The Guardian:</p>\n\n<blockquote>\n  <p>The sad fact is that I know exactly how to make a dry martini but I\ncan’t drink them because, two years ago, I discovered I was\ndiabetic. I prefer one with gin, but James Bond liked a vodka\nmartini, “shaken not stirred” &#8212; which I never said, by the way.\nThat was Sean Connery, remember him?</p>\n\n<p>The worst martini I’ve ever had was in a club in New Zealand,\nwhere the barman poured juice from a bottle of olives into the\nvodka. That’s called a dirty martini and it is a dirty, filthy,\nrotten martini, and should not be drunk by anybody except\ncondemned prisoners.</p>\n\n<p>My dry martinis taste amazing and the day they tell me I’ve got 24\nhours to live I am going to have six. Here’s how I make them.</p>\n</blockquote>\n\n<p>I hope he had all six yesterday.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Roger Moore&#8217;s Recipe for a Perfect Martini’\"  href=\"https://daringfireball.net/linked/2017/05/23/moore-perfect\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "★ ‘The Spy Who Loved Me’",
+         "date_published" : "2017-05-23T18:11:54Z",
+         "date_modified" : "2017-05-26T04:36:03Z",
+         "id" : "https://daringfireball.net/2017/05/moore_spy_who_loved_me",
+         "url" : "https://daringfireball.net/2017/05/moore_spy_who_loved_me",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>Chris Murphy, <a href=\"http://www.cnn.com/2013/02/25/sport/alpine-bond-skiing-iconic/\">writing for CNN back in 2013</a> on the &#8220;greatest James Bond scene of all time&#8221;:</p>\n\n<blockquote>\n  <p>Despite this wealth of choice, a series of Bond experts, and one\nof the film&#8217;s legendary producers, are in no doubt as to which\nscene should be anointed the best ever.</p>\n\n<p>And given the recurring role that skiing has played throughout the\nlife of Bond, it should comes as no surprise our panel&#8217;s chosen\nencounter occurs on the slopes. &#8220;I would argue the most iconic\nsequence is in &#8216;The Spy Who Loved Me&#8217;, when Bond shot straight off\nthe edge of a cliff at Baffin Island in Canada,&#8221; Ajay Chowdhury,\neditor of the James Bond International Fan Club, told CNN.</p>\n\n<p>&#8220;We saw him fall and fall, and when the Union Jack parachute\nopened up and the theme tune kicked in, the world cheered.</p>\n\n<p>&#8220;That was Britain&#8217;s Queen Elizabeth&#8217;s Jubilee Year in 1977 and I\nthink to this day it was (famous Bond producer) Albert &#8216;Cubby&#8217;\nBroccoli&#8217;s favorite ever scene in a Bond movie.</p>\n\n<p>&#8220;When everything cleared it was him, on his own against the world.\nYou play that sequence around the world and it is James Bond. And\nhe did it on skis.&#8221;</p>\n</blockquote>\n\n<p><a href=\"https://www.youtube.com/watch?v=_kyQauA2udc\">That opening scene in <em>The Spy Who Loved Me</em></a> is also the one <a href=\"https://daringfireball.net/2015/04/watch_apple_watch\">where Bond is wearing a digital Seiko watch</a> that can receive secure text messages from MI6 &#8212; at the time, sheer fantasy; today, a feature many of you reading this now have on your own watch. (Albeit without the ticker tape.)</p>\n\n<p>I don&#8217;t know if it&#8217;s the single best Bond <em>scene</em> of all time, but it&#8217;s up there, and it&#8217;s almost certainly the best Bond <em>stunt</em> of all time &#8212; stuntman <a href=\"https://en.wikipedia.org/wiki/Rick_Sylvester\">Rick Sylvester</a> actually skied off that cliff and parachuted to safety. I just love how the fall takes place in silence.</p>\n\n<p>Without hesitation I would put <em>The Spy Who Loved Me</em> at the top of my list of Roger Moore&#8217;s Bond films. It has everything: the aforementioned great opening, an iconic car (the submarine-convertible white Lotus Esprit<sup id=\"fnr1-2017-05-23\"><a href=\"#fn1-2017-05-23\">1</a></sup>), a great villain (Jaws), and a perfect theme song (Carly Simon&#8217;s &#8220;Nobody Does It Better&#8221;). Bernard Lee was still in the role as M. And at the center of it all, Roger Moore at his cool, suave, and assured best.</p>\n\n<p>Moore was quite self-aware of what he brought to the role. His take, <a href=\"http://www.npr.org/2014/11/15/364077265/roger-moore-the-man-with-the-golden-life\">in a 2014 interview with NPR</a>, is exactly right:</p>\n\n<blockquote>\n  <p>I look like a comedic lover, and Sean [Connery] in particular, and\nDaniel Craig now, they are killers. They look like killers. I\nwouldn&#8217;t like to meet Daniel Craig on a dark night if I&#8217;d said\nanything bad about him.</p>\n</blockquote>\n\n<p>Moore&#8217;s Bond had fun doing his job.</p>\n\n<div class=\"footnotes\">\n<hr />\n<ol>\n<li id=\"fn1-2017-05-23\">\n<p><a href=\"https://www.theguardian.com/technology/2013/oct/18/tesla-elon-musk-james-bond-lotus-submarine-car\">Now owned by Elon Musk</a>.&nbsp;<a href=\"#fnr1-2017-05-23\"  class=\"footnoteBackLink\"  title=\"Jump back to footnote 1 in the text.\">&#x21A9;&#xFE0E;</a></p>\n</li>\n</ol>\n</div>\n\n\n\n    "
+      },
+      {
+         "title" : "Roger Moore Dies at 89",
+         "date_published" : "2017-05-23T17:28:44Z",
+         "date_modified" : "2017-05-23T19:36:44Z",
+         "id" : "https://daringfireball.net/linked/2017/05/23/moore",
+         "url" : "https://daringfireball.net/linked/2017/05/23/moore",
+         "external_url" : "https://twitter.com/sirrogermoore/status/867005447018086400",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>A terrific and much-loved actor, but also by all accounts a good man.</p>\n\n<p>&#8220;Who&#8217;s your favorite James Bond?&#8221; is a fun game to play, because there&#8217;s no wrong answer. I have at least two friends who swear their answer is Lazenby. But one thing I would argue is undeniable about Moore&#8217;s run as Bond is that he was the <em>perfect</em> Bond for the 70s. He didn&#8217;t just keep the franchise going, he helped adapt it to the times. Sean Connery made Bond a sensation. Roger Moore turned it into a cinematic and pop-cultural institution.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Roger Moore Dies at 89’\"  href=\"https://daringfireball.net/linked/2017/05/23/moore\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "Spotlight Performance Problems on iOS",
+         "date_published" : "2017-05-22T19:57:15Z",
+         "date_modified" : "2017-05-25T17:25:03Z",
+         "id" : "https://daringfireball.net/linked/2017/05/22/heer-slack-spotlight",
+         "url" : "https://daringfireball.net/linked/2017/05/22/heer-slack-spotlight",
+         "external_url" : "https://pxlnv.com/linklog/slack-indexing-spotlight/",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>Nick Heer:</p>\n\n<blockquote>\n  <p>I’ve generally had pretty good luck with Spotlight on iOS, but\nI’ve long noticed that results are delayed or nonexistent after\nnot using it for a little while, particularly if I haven’t\nrebooted my phone recently. I thought I was losing my head a\nlittle bit, until I found a tip on Twitter from Anand Iyer :</p>\n\n<p>Settings > General > Spotlight Search > toggle Slack off</p>\n</blockquote>\n\n<p>A week or so ago I ran into this, where Spotlight was running so slowly on my iPhone that it was unusable. Restarting my phone fixed the problem, but I&#8217;ll bet it was this Slack problem.</p>\n\n<p><strong>Update:</strong> Sounds like there might be widespread problems with Spotlight indexing on iOS 10, because a bunch of readers have written to say they have the same problem but don&#8217;t even have Slack installed.</p>\n\n<p><strong>Update 2:</strong> Several readers are saying this was a bug in iOS 10.3.1 but has been fixed in last week&#8217;s 10.3.2 update.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Spotlight Performance Problems on iOS’\"  href=\"https://daringfireball.net/linked/2017/05/22/heer-slack-spotlight\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "How Anker Is Beating Apple and Samsung at Their Own Accessory Game",
+         "date_published" : "2017-05-22T19:45:20Z",
+         "date_modified" : "2017-05-22T21:09:13Z",
+         "id" : "https://daringfireball.net/linked/2017/05/22/anker",
+         "url" : "https://daringfireball.net/linked/2017/05/22/anker",
+         "external_url" : "https://www.theverge.com/2017/5/22/15673712/anker-battery-charger-amazon-empire-steven-yang-interview",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>Nice profile of Anker by Nick Statt for The Verge:</p>\n\n<blockquote>\n  <p>So in airports, the back of cabs, and on city streets we’re\nplugging into lithium-ion slabs in our pockets and bags to stay\nconnected. The market for portable battery packs generated $360\nmillion in the 12 months ending in March, 2017 in the US alone.\nThe brands behind these packs are largely anonymous &#8212; Kmashi,\nJackery, and iMuto &#8212; and they often stay that way.</p>\n\n<p>Except Anker. The steady rise of the company’s profile is proof\nthat it’s possible to meet one very specific consumer need and\nride that wave as it continues to ripple out to other markets. A\nmajority of Anker’s sales come from cables and wall chargers, and\nit’s now moving into the smart home and auto market &#8212; anywhere a\nplug and a cable can solve a problem.</p>\n</blockquote>\n\n<p>It&#8217;s always satisfying to see a company thrive by focusing on making great products.</p>\n\n<div>\n<a  title=\"Permanent link to ‘How Anker Is Beating Apple and Samsung at Their Own Accessory Game’\"  href=\"https://daringfireball.net/linked/2017/05/22/anker\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "‘On Margins’",
+         "date_published" : "2017-05-22T19:02:20Z",
+         "date_modified" : "2017-05-22T19:02:22Z",
+         "id" : "https://daringfireball.net/linked/2017/05/22/on-margins",
+         "url" : "https://daringfireball.net/linked/2017/05/22/on-margins",
+         "external_url" : "https://craigmod.com/onmargins/",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>New podcast from the inimitable Craig Mod about the art of making books. <a href=\"https://craigmod.com/onmargins/001/\">The first episode is an interview with Jan Chipchase</a>:</p>\n\n<blockquote>\n  <p>Researcher and author Jan Chipchase has a new book &#8212; &#8220;The Field\nStudy Handbook.&#8221; We discuss how he came to produce this 500+ page\nmagnum opus &#8212; a distillation of his life&#8217;s work &#8212; and why he is\nself publishing.</p>\n</blockquote>\n\n<div>\n<a  title=\"Permanent link to ‘&#8216;On Margins&#8217;’\"  href=\"https://daringfireball.net/linked/2017/05/22/on-margins\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "Boring Google",
+         "date_published" : "2017-05-22T18:45:37Z",
+         "date_modified" : "2017-05-22T18:45:39Z",
+         "id" : "https://daringfireball.net/linked/2017/05/22/thompson-google-io",
+         "url" : "https://daringfireball.net/linked/2017/05/22/thompson-google-io",
+         "external_url" : "https://stratechery.com/2017/boring-google/",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>Ben Thompson, in praise of Google&#8217;s &#8220;boring&#8221; I/O keynote:</p>\n\n<blockquote>\n  <p>Google Assistant has a long ways to go, but there is a clear\npicture of what success will look like: Google Photos. Launched\nonly two years ago, Pichai bragged that Photos now has over 500\nmillion active users who upload 1.2 billion photos a day. This is\na spectacular number for one very simple reason: Google Photos is\n<em>not</em> the default photo app for Android or iOS. Rather, Google has\nearned all of those photos simply by being better than the\ndefaults, and the basis of that superiority is Google’s machine\nlearning.</p>\n\n<p>Moreover, much like search, Photos gets better the more data it\ngets, creating a virtuous cycle: more photos means more data which\nmeans a better experience which means more users which means more\nphotos. It is already hard to see other photo applications\ncatching up.</p>\n</blockquote>\n\n<p>Google Photos is Google at its best. Their visual recognition is clearly the best in the world right now, and Thompson makes a good point that the &#8220;virtuous circle&#8221; makes it difficult for anyone to catch up.</p>\n\n<p>In addition to being a great product, technically, Google Photos also launched with <a href=\"http://daringfireball.net/linked/2016/08/08/google-photos-sick-burn\">a terrific ad campaign</a>.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Boring Google’\"  href=\"https://daringfireball.net/linked/2017/05/22/thompson-google-io\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "Every Color of Cardigan Mister Rogers Wore From 1979–2001",
+         "date_published" : "2017-05-22T17:53:29Z",
+         "date_modified" : "2017-05-22T17:53:31Z",
+         "id" : "https://daringfireball.net/linked/2017/05/22/mr-rogers-sweaters",
+         "url" : "https://daringfireball.net/linked/2017/05/22/mr-rogers-sweaters",
+         "external_url" : "https://theawl.com/every-color-of-cardigan-mister-rogers-wore-from-1979-2001-83c1faba2677",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>Owen Philips, writing for The Awl:</p>\n\n<blockquote>\n  <p>Fortunately, Tim Lybarger, a 40 year-old high school counselor\nfrom just outside of Champaign-Urbana, Illinois, wondered the same\nthing a few years ago. Back in 2011, on his blog devoted to all\nthings Mister Rogers, neighborhoodarchive.com, Lybarger recorded\nthe color of every sweater Rogers wore in each episode between\n1979 and 2001. “When I realized such a resource didn’t exist,”\nLybarger told me over email, “I just felt like somebody needed to\ndo it…might as well be me.”</p>\n\n<p>The chart below uses the data Lybarger meticulously collected to\nshow how Rogers’ preferences for the color of his cardigan changed\nover time.</p>\n</blockquote>\n\n<p>When I was a kid I simply loved <em>Mister Rogers&#8217; Neighborhood</em>. (<a href=\"http://kottke.org/17/05/the-colors-of-mister-rogers-cardigan-sweaters-1979-2001\">Via Kottke</a>, of course.)</p>\n\n<div>\n<a  title=\"Permanent link to ‘Every Color of Cardigan Mister Rogers Wore From 1979–2001’\"  href=\"https://daringfireball.net/linked/2017/05/22/mr-rogers-sweaters\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "Scrolling Is Going to Change in Mobile Safari",
+         "date_published" : "2017-05-22T17:29:44Z",
+         "date_modified" : "2017-05-23T00:56:48Z",
+         "id" : "https://daringfireball.net/linked/2017/05/22/mobile-safari-scrolling",
+         "url" : "https://daringfireball.net/linked/2017/05/22/mobile-safari-scrolling",
+         "external_url" : "https://news.ycombinator.com/item?id=14384938",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>Here&#8217;s an interesting exchange in a Hacker News discussion about <a href=\"https://daringfireball.net/linked/2017/05/20/gilbertson-amp.php\">my criticism of AMP</a> over the weekend. <a href=\"https://news.ycombinator.com/item?id=14384938\">Malte Ubl, creator and tech lead of Google AMP</a>:</p>\n\n<blockquote>\n  <p>With respect to scrolling: We (AMP team) filed a bug with Apple\nabout that (we didn&#8217;t implement scrolling ourselves, just use a\ndiv with overflow). We asked to make the scroll inertia for that\ncase the same as the normal scrolling.</p>\n\n<p>Apple&#8217;s response was (surprisingly) to make the default scrolling\nlike the overflow scrolling. So, with the next Safari release all\npages will scroll like AMP pages. Hope Gruber is happy then :)</p>\n</blockquote>\n\n<p>&#8220;Om2&#8221;, who seemingly works on WebKit for Apple <a href=\"https://trac.webkit.org/changeset/211197/webkit\">added</a>:</p>\n\n<blockquote>\n  <p>In current iOS Safari, webpage scrolling is inconsistent from all\nother scrolling on the system. This was an intentional decision\nmade long ago. In addition, overflow areas are consistent with the\nrest of the system, and thus inconsistent with top-level webpage\nscrolling. This is semi-accidental. In reviewing scroll rates, we\nconcluded that the original reason was no longer a good tradeoff.\nThus this change, which removed all the inconsistencies:\n<a href=\"https://trac.webkit.org/changeset/211197/webkit\">https://trac.webkit.org/changeset/211197/webkit</a></p>\n\n<p>Having all scrolling be consistent feels good once you get\nused to it.</p>\n\n<p>That doesn&#8217;t necessarily mean it was a good idea for Google&#8217;s\nhosted AMP pages to use overflow scroll all along. The\ninconsistency definitely did feel weird. And the way they do\nscrolling prevents Safari from auto-hiding its top and bottom\nbars. I believe all the desired scroll effects could have been\nachieved without the use of overflow scroll.</p>\n</blockquote>\n\n<p>That&#8217;s a pretty big change, but I&#8217;ll bet Om2 is right that it soon feels normal. Web views have had different scrolling inertia than other scrolling views ever since the original iPhone. (My beef with scrolling in AMP is not that AMP&#8217;s fast scrolling is bad and Mobile Safari&#8217;s current slower scrolling is good, but rather that scrolling in AMP pages should not feel totally different than regular web pages. And I forgot to complain about the fact that AMP&#8217;s weird implementation also breaks Mobile Safari&#8217;s ability to hide the bottom and top browser chrome toolbars. <strong>Update:</strong> One more complaint: AMP breaks Safari&#8217;s Reader mode.)</p>\n\n<div>\n<a  title=\"Permanent link to ‘Scrolling Is Going to Change in Mobile Safari’\"  href=\"https://daringfireball.net/linked/2017/05/22/mobile-safari-scrolling\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "News Explorer 1.6 Supports JSON Feed",
+         "date_published" : "2017-05-22T17:10:10Z",
+         "date_modified" : "2017-05-22T17:10:12Z",
+         "id" : "https://daringfireball.net/linked/2017/05/22/news-explorer-1-6",
+         "url" : "https://daringfireball.net/linked/2017/05/22/news-explorer-1-6",
+         "external_url" : "https://betamagic.nl/blog.html",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>First native app I&#8217;ve seen with support for JSON Feed. Pretty interesting take on a modern Mac feed reader, including nice support for using the keyboard arrow keys to move around the UI.</p>\n\n<div>\n<a  title=\"Permanent link to ‘News Explorer 1.6 Supports JSON Feed’\"  href=\"https://daringfireball.net/linked/2017/05/22/news-explorer-1-6\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "[Sponsor] Flow: Simple Project Management",
+         "date_published" : "2017-05-22T17:00:49-04:00",
+         "date_modified" : "2017-05-22T17:01:04-04:00",
+         "id" : "https://daringfireball.net/feeds/sponsors/2017/05/flow_simple_project_management",
+         "url" : "https://daringfireball.net/feeds/sponsors/2017/05/flow_simple_project_management",
+         "external_url" : "http://www.getflow.com/daringfireball",
+         "author" : {
+            "name" : "Daring Fireball Department of Commerce"
+         },
+         "content_html" : "\n<p>Flow is simple project management for busy teams. It’s the easiest way to run your team, manage projects, track tasks, and stay up to date with everything happening at work.</p>\n\n<p>Teams choose Flow when email, sticky notes, and to-do apps aren’t enough, but complex project management tools are overkill. Flow’s world-class design team has worked with companies like Apple, Slack, TED, and Starbucks, so it’s simple, beautiful, and easy to use. Your team will love using it, and pick it up in minutes — not weeks.</p>\n\n<p>Visit <a href=\"http://www.getflow.com/daringfireball\">getflow.com/daringfireball</a> to start your free trial today, and save 20% on a monthly plan, or 30% on an annual plan at checkout. </p>\n\n<div>\n<a  title=\"Permanent link to ‘Flow: Simple Project Management’\"  href=\"https://daringfireball.net/feeds/sponsors/2017/05/flow_simple_project_management\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "‘Becoming Bond’",
+         "date_published" : "2017-05-22T16:35:26Z",
+         "date_modified" : "2017-05-22T16:41:57Z",
+         "id" : "https://daringfireball.net/linked/2017/05/22/becoming-bond",
+         "url" : "https://daringfireball.net/linked/2017/05/22/becoming-bond",
+         "external_url" : "https://www.youtube.com/watch?v=rd9wdJIxqlo",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>New documentary from Hulu on George Lazenby, who played James Bond in 1969&#8217;s <em><a href=\"http://www.imdb.com/title/tt0064757/\">On Her Majesty&#8217;s Secret Service</a></em> and then turned down an offer for a six-picture contract. Watched it over the weekend and thoroughly enjoyed it.</p>\n\n<div>\n<a  title=\"Permanent link to ‘&#8216;Becoming Bond&#8217;’\"  href=\"https://daringfireball.net/linked/2017/05/22/becoming-bond\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "Stashword",
+         "date_published" : "2017-05-20T19:23:06Z",
+         "date_modified" : "2017-05-20T19:23:08Z",
+         "id" : "https://daringfireball.net/linked/2017/05/20/stashword",
+         "url" : "https://daringfireball.net/linked/2017/05/20/stashword",
+         "external_url" : "http://df.stashword.com/",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>My thanks to Stashword for sponsoring this week&#8217;s DF RSS feed. Stashword is simple but feature-rich password manager for iOS and the web. In addition to passwords, Stashword can securely save notes, financial information, and more. You can even scan and save documents like your drivers license, insurance documentation, and passport.</p>\n\n<p>Stashword is free to try for 15 days. Paid membership enables you to synchronize across all your devices and <a href=\"http://df.stashword.com/\">their website</a>. As a special offer for Daring Fireball readers, through May 25 annual membership is just $7.99, which is 20 percent off the regular price.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Stashword’\"  href=\"https://daringfireball.net/linked/2017/05/20/stashword\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "MacStories’s iOS 11 iPad Wishes and Concept Video",
+         "date_published" : "2017-05-20T19:10:48Z",
+         "date_modified" : "2017-05-20T19:10:50Z",
+         "id" : "https://daringfireball.net/linked/2017/05/20/macstories-ios-11-concept",
+         "url" : "https://daringfireball.net/linked/2017/05/20/macstories-ios-11-concept",
+         "external_url" : "https://www.macstories.net/stories/ios-11-ipad-wishes-and-concept-video/",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>Federico Viticci:</p>\n\n<blockquote>\n  <p>I&#8217;ve been thinking about some of these ideas since iOS 9 (you can\nsee a thread between <a href=\"https://youtube.com/watch?v=J2VcbT4Pgdk\">my iOS 10 concept</a> and this year&#8217;s version),\nwhile others would be a natural evolution for iOS on the iPad.\nOnce again, Sam was able to visualize everything with a fantastic\nconcept that, I believe, captures the iPad&#8217;s big-picture potential\nmore accurately than last year.</p>\n\n<p>Below, you&#8217;ll find our <a href=\"https://youtube.com/watch?v=UyFUDQ5LLZw\">iOS 11 for iPad concept video</a>, followed by\nan analysis of my iPad wishes with static mockups. I focused on\nfoundational changes to the iPad&#8217;s software &#8212; tentpole features\nthat would affect the entire OS and app ecosystem.</p>\n\n<p>This isn&#8217;t a prediction of what Apple will announce at WWDC; it&#8217;s\nmy vision for what the future of the iPad should be.</p>\n</blockquote>\n\n<p>Viticci and Beckett put months of work into this, and it shows. Some of the ideas they present: system-wide drag-and-drop, a Finder app, a redesigned App Store, and much more.</p>\n\n<p>The best part of this feature isn&#8217;t any specific idea, but rather Viticci&#8217;s profound enthusiasm for the iPad as a platform.</p>\n\n<div>\n<a  title=\"Permanent link to ‘MacStories&#8217;s iOS 11 iPad Wishes and Concept Video’\"  href=\"https://daringfireball.net/linked/2017/05/20/macstories-ios-11-concept\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "10-Year-Old Open Letter Calling for Apple to Make Glucose Monitors",
+         "date_published" : "2017-05-20T19:00:18Z",
+         "date_modified" : "2017-05-20T19:26:36Z",
+         "id" : "https://daringfireball.net/linked/2017/05/20/open-letter-apple-glucose",
+         "url" : "https://daringfireball.net/linked/2017/05/20/open-letter-apple-glucose",
+         "external_url" : "http://www.healthline.com/health/diabetesmine/innovation/open-letter-steve-jobs",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>Amy Tenderich, 10 years ago, in an open letter to Steve Jobs:</p>\n\n<blockquote>\n  <p>If insulin pumps or continuous monitors had the form of an iPod\nNano, people wouldn&#8217;t have to wonder why we wear our &#8220;pagers&#8221; to\nour own weddings, or puzzle over that strange bulge under our\nclothes. If these devices wouldn&#8217;t start suddenly and incessantly\nbeeping, strangers wouldn&#8217;t lecture us to turn off our &#8220;cell\nphones&#8221; at the movie theater.</p>\n\n<p>In short, medical device manufacturers are stuck in a bygone era;\nthey continue to design these products in an engineering-driven,\nphysician-centered bubble. They have not yet grasped the concept\nthat medical devices are also life devices, and therefore need to\nfeel good and look good for the patients using them 24/7, in\naddition to keeping us alive.</p>\n</blockquote>\n\n<p>(<a href=\"http://articles.chicagotribune.com/2010-10-22/features/sc-health-1020-diabetes-insulin-devic20101022_1_insulin-dependent-diabetics-high-blood-glucose-levels-blood-sugar\">Follow-up here in 2010</a>.)</p>\n\n<p>This was incredibly prescient, given the rumors <a href=\"https://daringfireball.net/linked/2017/05/18/apple-watch-glucose\">that Apple is working on continuous non-invasive glucose monitoring</a> for Apple Watch. Jobs didn&#8217;t live to see it, but I think it&#8217;s exactly the sort of thing he would be pushing for if he were still alive.</p>\n\n<p>From chapter 37 of <a href=\"https://itun.es/us/QyFUz.l\">Walter Isaacson&#8217;s <em>Steve Jobs</em></a>:</p>\n\n<blockquote>\n  <p>Even when he was barely conscious, his strong personality came\nthrough. At one point the pulmonologist tried to put a mask over\nhis face when he was deeply sedated. Jobs ripped it off and\nmumbled that he hated the design and refused to wear it. Though\nbarely able to speak, he ordered them to bring five different\noptions for the mask and he would pick a design he liked. The\ndoctors looked at Powell, puzzled. She was finally able to\ndistract him so they could put on the mask. He also hated the\noxygen monitor they put on his finger. He told them it was ugly\nand too complex. He suggested ways it could be designed more\nsimply. “He was very attuned to every nuance of the environment\nand objects around him, and that drained him,” Powell recalled.</p>\n</blockquote>\n\n<div>\n<a  title=\"Permanent link to ‘10-Year-Old Open Letter Calling for Apple to Make Glucose Monitors’\"  href=\"https://daringfireball.net/linked/2017/05/20/open-letter-apple-glucose\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "Scott Gilbertson: ‘Kill Google AMP Before It Kills the Web’",
+         "date_published" : "2017-05-20T18:18:19Z",
+         "date_modified" : "2017-05-20T19:28:43Z",
+         "id" : "https://daringfireball.net/linked/2017/05/20/gilbertson-amp",
+         "url" : "https://daringfireball.net/linked/2017/05/20/gilbertson-amp",
+         "external_url" : "https://www.theregister.co.uk/2017/05/19/open_source_insider_google_amp_bad_bad_bad/",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>Scott Gilbertson, writing for The Register:</p>\n\n<blockquote>\n  <p>Quite a few high-profile web developers have this year weighted in\nwith <a href=\"https://danielmiessler.com/blog/google-amp-not-good-thing/\">criticism</a> and some, following a Google conference dedicated\nto AMP, have cautioned users about diving in with <a href=\"https://css-tricks.com/need-catch-amp-debate/\">both feet</a>.</p>\n\n<p>These, in my view, don’t go far enough in stating the problem and\nI feel this needs to be said very clearly: Google&#8217;s AMP is bad &#8212;\nbad in a potentially web-destroying way. Google AMP is bad news\nfor how the web is built, it&#8217;s bad news for publishers of credible\nonline content, and it&#8217;s bad news for consumers of that content.\nGoogle AMP is only good for one party: Google. Google, and\npossibly, purveyors of fake news.</p>\n\n<p>It&#8217;s time for developers to wake up and, as Jason Scott <a href=\"http://ascii.textfiles.com/archives/3086\">once said</a>\nof Facebook, stop: &#8220;Shoveling down the shit sherbet&#8221; Google is now\nserving with AMP.</p>\n</blockquote>\n\n<p><a href=\"http://daringfireball.net/linked/2017/01/17/schreiber-amp\">I&#8217;m on the record</a> as being strongly opposed to AMP simply on the grounds of publication independence. I&#8217;d stand by that even if the implementation were great. But the implementation is not great &#8212; it&#8217;s terrible. Yes, AMP pages load fast, but you don&#8217;t need AMP for fast-loading web pages. If you are a publisher and your web pages don&#8217;t load fast, the sane solution is to <a href=\"http://idlewords.com/amp_static.html\">fix your fucking website so that pages load fast</a>, not to throw your hands up in the air and implement AMP.</p>\n\n<p>But other than loading fast, AMP <em>sucks</em>. It implements its own scrolling behavior on iOS, which feels unnatural, and even worse, it breaks the decade-old system-wide iOS behavior of being able to tap the status bar to scroll to the top of any scrollable view. AMP also completely breaks Safari&#8217;s ability to search for text on a page (via the &#8220;Find on Page&#8221; action in the sharing sheet). Google has no respect for the platform. If I had my way, Mobile Safari would refuse to render AMP pages. It&#8217;s a deliberate effort by Google to break the open web.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Scott Gilbertson: &#8216;Kill Google AMP Before It Kills the Web&#8217;’\"  href=\"https://daringfireball.net/linked/2017/05/20/gilbertson-amp\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "Arctic Stronghold of World’s Seeds Flooded After Permafrost Melts",
+         "date_published" : "2017-05-20T17:52:14Z",
+         "date_modified" : "2017-05-21T03:41:34Z",
+         "id" : "https://daringfireball.net/linked/2017/05/20/global-seed-vault",
+         "url" : "https://daringfireball.net/linked/2017/05/20/global-seed-vault",
+         "external_url" : "https://www.theguardian.com/environment/2017/may/19/arctic-stronghold-of-worlds-seeds-flooded-after-permafrost-melts?CMP=twt_gu",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>Damian Carrington, reporting for The Guardian:</p>\n\n<blockquote>\n  <p>It was designed as an impregnable deep-freeze to protect the\nworld’s most precious seeds from any global disaster and ensure\nhumanity’s food supply forever. But the Global Seed Vault, buried\nin a mountain deep inside the Arctic circle, has been breached\nafter global warming produced extraordinary temperatures over the\nwinter, sending meltwater gushing into the entrance tunnel.</p>\n</blockquote>\n\n<p>The big takeaway from this should be that climate change truly is a threat to civilization. But, I have to say, that melting permafrost wasn&#8217;t taken into consideration during the design of this vault seems like a glaring oversight.</p>\n\n<p><strong>Update:</strong> Looks like The Guardian might have shamelessly sensationalized this story. <a href=\"http://www.popsci.com/seed-vault-flooding?src=SOC&amp;dom=tw#page-3\">Mary Beth Griggs, reporting for Popular Science</a>:</p>\n\n<blockquote>\n  <p>“If there was a worst case scenario where there was so much water,\nor the pumping systems failed, that it made its way uphill to the\nseed vault, then it would encounter minus 18 [degrees celsius] and\nfreeze again. Then there’s another barrier [the ice] for entry\ninto the seed vault,” Fowler says. In other words, any water that\nfloods into the tunnel has to make it 100 meters downhill, then\nback uphill, then overwhelm the pumping systems, and then manage\nnot to freeze at well-below-freezing temperatures. Otherwise,\nthere&#8217;s no way liquid is getting into the seed bank &#8212; so the\nseeds are probably safe. [&#8230;]</p>\n\n<p>Still worried? Maybe this will help you exhale: “We did this\ncalculation; if all the ice in the world melted &#8212; Greenland,\nArctic, Antarctic, everything &#8212; and then we had the world&#8217;s\nlargest recorded tsunami right in front of the seed vault. So,\nvery high sea levels and the worlds largest Tsunami. What would\nhappen to the seed vault?” Fowler says. “We found that the seed\nvault was somewhere between a five and seven story building above\nthat point. It might not help the road leading up to the seed\nvault, but the seeds themselves would be OK.&#8221;</p>\n</blockquote>\n\n<p>Sounds like the vault itself <em>is</em> designed to survive a climate apocalypse &#8212; it&#8217;s just the entry that isn&#8217;t.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Arctic Stronghold of World’s Seeds Flooded After Permafrost Melts’\"  href=\"https://daringfireball.net/linked/2017/05/20/global-seed-vault\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "‘It’s Borderline Stupid How Easy It Was’",
+         "date_published" : "2017-05-19T20:07:02Z",
+         "date_modified" : "2017-05-19T20:13:21Z",
+         "id" : "https://daringfireball.net/linked/2017/05/19/json-feed-jekyll",
+         "url" : "https://daringfireball.net/linked/2017/05/19/json-feed-jekyll",
+         "external_url" : "https://ndarville.com/blog/2017/05/19/json-feed-for-jekyll/",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>Niclas Darville, on creating a JSON Feed template for Jekyll:</p>\n\n<blockquote>\n  <p>It literally took me longer to write this blog post than the JSON\nfeed code, because I couldn’t get Jekyll to escape the Liquid code\nexample.</p>\n</blockquote>\n\n<p>On Twitter, <a href=\"https://twitter.com/pessimism/status/865574252182990848\">Darville wrote</a>:</p>\n\n<blockquote>\n  <p>One of the best things about <a href=\"https://twitter.com/@jsonfeed\">@jsonfeed</a> is how well it works as a\nHello World kind of programming exercise.</p>\n\n<p>Sure beats to-do lists.</p>\n</blockquote>\n\n<p><a href=\"https://twitter.com/JmacDotOrg/status/865441060176121856\">Jason McIntosh described</a> adding JSON Feed support to his home-grown blog engine as a &#8220;blowing-off-steam project&#8221;.</p>\n\n<p>These reactions are exactly what I mean about JSON Feed being <em>fun</em>. There&#8217;s a time and place for specs that are drop-dead serious, but I think it&#8217;s often overlooked just how important <em>fun</em> can be in having a new spec gain traction.</p>\n\n<div>\n<a  title=\"Permanent link to ‘&#8216;It’s Borderline Stupid How Easy It Was&#8217;’\"  href=\"https://daringfireball.net/linked/2017/05/19/json-feed-jekyll\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "Headline of the Week",
+         "date_published" : "2017-05-19T19:41:15Z",
+         "date_modified" : "2017-05-20T04:12:08Z",
+         "id" : "https://daringfireball.net/linked/2017/05/19/trump-nut-job",
+         "url" : "https://daringfireball.net/linked/2017/05/19/trump-nut-job",
+         "external_url" : "https://www.nytimes.com/2017/05/19/us/politics/trump-russia-comey.html",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>Actual headline in the staid New York Times: &#8220;Trump Told Russians That Firing ‘Nut Job’ Comey Eased Pressure From Investigation&#8221;.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Headline of the Week’\"  href=\"https://daringfireball.net/linked/2017/05/19/trump-nut-job\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "Requiring Facebook",
+         "date_published" : "2017-05-19T02:19:06Z",
+         "date_modified" : "2017-05-19T07:02:39Z",
+         "id" : "https://daringfireball.net/linked/2017/05/18/requiring-facebook",
+         "url" : "https://daringfireball.net/linked/2017/05/18/requiring-facebook",
+         "external_url" : "https://thebolditalic.com/facebook-goes-full-black-mirror-how-facebook-is-making-membership-a-prerequisite-to-everyday-e88fb03b0eb9",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>Jason Ditzian, writing for The Bold Italic on what happened when the car sharing service he&#8217;d been using for 10 years was acquired:</p>\n\n<blockquote>\n  <p>However, City CarShare was recently bought by a corporation,\nGetaround. And Getaround built its platform on top of Facebook. So\nwhen I went to migrate my account over to them, I found that\nthere’s literally no way to do it as a non-Facebook user. If I\nwant to share cars with my fellow city dwellers, I’m compelled to\nstrike a Faustian bargain.</p>\n\n<p>To access the services of Getaround, one must authenticate their\nidentity through Facebook. [&#8230;]</p>\n\n<p>I know that for you Facebook-having people, this is no big deal.\nYou have resigned yourself to the idea of Facebook owning your\ndata. But if you don’t, haven’t and/or won’t resign to this fate,\nyou might end up left, like me, in a peculiar situation: the price\nof “sharing” a car equals money plus forking over a huge trove of\npersonal data. Personal information is supplanting money as a form\nof currency.</p>\n</blockquote>\n\n<p>There&#8217;s clearly a problem here, but I don&#8217;t think it&#8217;s Facebook&#8217;s fault. I think the problem is that Getaround sucks.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Requiring Facebook’\"  href=\"https://daringfireball.net/linked/2017/05/18/requiring-facebook\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "FCC Votes to Begin Dismantling Net Neutrality",
+         "date_published" : "2017-05-18T22:30:58Z",
+         "date_modified" : "2017-05-18T22:31:00Z",
+         "id" : "https://daringfireball.net/linked/2017/05/18/net-neutrality",
+         "url" : "https://daringfireball.net/linked/2017/05/18/net-neutrality",
+         "external_url" : "https://www.techdirt.com/articles/20170517/12241437395/fcc-ignores-will-public-votes-to-begin-dismantling-net-neutrality.shtml",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>Karl Bode, writing for TechDirt:</p>\n\n<blockquote>\n  <p>Surprising absolutely nobody, the FCC today voted 2-1 along strict\nparty lines to begin dismantling net neutrality protections for\nconsumers. The move comes despite the fact that the <a href=\"https://www.techdirt.com/articles/20170516/06570237379/time-fcc-to-actually-listen-vast-majority-fcc-commenters-support-net-neutrality.shtml\">vast\nmajority</a> of non-bot comments filed with the FCC support\nkeeping the rules intact. And while FCC boss Ajit Pai has\nbreathlessly insisted he intended to listen to the concerns of all\nparties involved, there has been zero indication that this was a\nserious commitment as he begins <a href=\"https://www.techdirt.com/articles/20170206/06403236642/new-fcc-boss-ajit-pai-insists-hes-all-about-helping-poor-gets-right-to-work-harming-them-instead.shtml\">dismantling all manner of\nbroadband consumer protections</a>, not just net neutrality.</p>\n\n<p>As you might have expected, the FCC was quick to release a\nstatement claiming that gutting the popular consumer protections\nwould usher forth a magical age of connectivity, investment, and\ninnovation.</p>\n</blockquote>\n\n<p>(<a href=\"https://pxlnv.com/linklog/fcc-vote-may-18/\">Via Nick Heer</a>.)</p>\n\n<div>\n<a  title=\"Permanent link to ‘FCC Votes to Begin Dismantling Net Neutrality’\"  href=\"https://daringfireball.net/linked/2017/05/18/net-neutrality\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "‘You Know My Name’",
+         "date_published" : "2017-05-18T22:24:55Z",
+         "date_modified" : "2017-05-18T22:24:56Z",
+         "id" : "https://daringfireball.net/linked/2017/05/18/cornell-casino-royale",
+         "url" : "https://daringfireball.net/linked/2017/05/18/cornell-casino-royale",
+         "external_url" : "https://www.youtube.com/watch?v=A1AMUmkj-ck",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>One of my very favorite songs from Chris Cornell &#8212; the opening credits theme to <em>Casino Royale</em>. A great song that just fits the movie so damn well.</p>\n\n<div>\n<a  title=\"Permanent link to ‘&#8216;You Know My Name&#8217;’\"  href=\"https://daringfireball.net/linked/2017/05/18/cornell-casino-royale\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "Chris Cornell of Soundgarden, Dead at 52",
+         "date_published" : "2017-05-18T22:20:21Z",
+         "date_modified" : "2017-05-19T07:17:15Z",
+         "id" : "https://daringfireball.net/linked/2017/05/18/cornell",
+         "url" : "https://daringfireball.net/linked/2017/05/18/cornell",
+         "external_url" : "https://www.nytimes.com/2017/05/18/arts/music/chris-cornell-dead-soundgarden.html?_r=0",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>The New York Times:</p>\n\n<blockquote>\n  <p>Chris Cornell, the powerful, dynamic singer whose band Soundgarden\nwas one of the architects of grunge music, died on Wednesday night\nin Detroit hours after the band had performed there. He was 52.</p>\n\n<p>The death was a suicide by hanging, the Wayne County Medical\nExaminer’s Office said in a statement released on Thursday\nafternoon. It said a full autopsy had not yet been completed.</p>\n</blockquote>\n\n<p>Fuck.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Chris Cornell of Soundgarden, Dead at 52’\"  href=\"https://daringfireball.net/linked/2017/05/18/cornell\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "jq",
+         "date_published" : "2017-05-18T20:40:38Z",
+         "date_modified" : "2017-05-18T20:40:40Z",
+         "id" : "https://daringfireball.net/linked/2017/05/18/jq",
+         "url" : "https://daringfireball.net/linked/2017/05/18/jq",
+         "external_url" : "https://stedolan.github.io/jq/",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>There&#8217;s a cool command-line JSON processor called <code>jq</code> &#8212; easily installed on a Mac via download or <a href=\"https://brew.sh/\">Homebrew</a>, and even more easily tinkered with using <a href=\"https://jqplay.org/\">the online playground</a>. Here&#8217;s how easy <code>jq</code> makes it to get, say, a list of the titles from DF&#8217;s <a href=\"https://jsonfeed.org/\">JSON feed</a>:</p>\n\n<pre><code>curl -s https://daringfireball.net/feeds/json | jq '.items[].title'\n</code></pre>\n\n<div>\n<a  title=\"Permanent link to ‘jq’\"  href=\"https://daringfireball.net/linked/2017/05/18/jq\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "The World’s First JSON Feed Viewer",
+         "date_published" : "2017-05-18T20:32:06Z",
+         "date_modified" : "2017-05-18T20:39:47Z",
+         "id" : "https://daringfireball.net/linked/2017/05/18/maxime-vaillancourt-json-feed-viewer",
+         "url" : "https://daringfireball.net/linked/2017/05/18/maxime-vaillancourt-json-feed-viewer",
+         "external_url" : "https://twitter.com/vaillancourtmax/status/865291487881383937",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>Maxime Vaillancourt:</p>\n\n<blockquote>\n  <p>Here&#8217;s a tiny proof of concept for a <a href=\"https://twitter.com/@jsonfeed\">@jsonfeed</a> viewer, built in an\nhour: <a href=\"http://json-feed-viewer.herokuapp.com\">http://json-feed-viewer.herokuapp.com</a></p>\n</blockquote>\n\n<p>One of the things I love about <a href=\"https://jsonfeed.org/\">JSON Feed</a> is that it&#8217;s <em>fun</em>. JSON is so simple, and so well-supported by almost all programming languages, that you can build something interesting in just a few minutes, and something useful in an hour. There was <a href=\"https://news.ycombinator.com/item?id=14361178\">a comment</a> on the Hacker News thread about JSON Feed that I loved:</p>\n\n<blockquote>\n  <p>It is very likely than I am an idiot, but I&#8217;ve always found\nparsing XML too hard, specially compared to JSON which is almost\ntoo easy.</p>\n</blockquote>\n\n<p>&#8220;Almost too easy&#8221; are three words no one has ever said about XML.</p>\n\n<div>\n<a  title=\"Permanent link to ‘The World&#8217;s First JSON Feed Viewer’\"  href=\"https://daringfireball.net/linked/2017/05/18/maxime-vaillancourt-json-feed-viewer\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "Apple Is Testing an Apple Watch Glucose Monitor",
+         "date_published" : "2017-05-18T20:24:52Z",
+         "date_modified" : "2017-05-18T20:24:54Z",
+         "id" : "https://daringfireball.net/linked/2017/05/18/apple-watch-glucose",
+         "url" : "https://daringfireball.net/linked/2017/05/18/apple-watch-glucose",
+         "external_url" : "http://www.cnbc.com/2017/05/18/apple-ceo-tim-cook-test-drove-glucose-monitor.html",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>Christina Farr, reporting for CNBC:</p>\n\n<blockquote>\n  <p>Tim Cook has been spotted at the Apple campus test-driving a\ndevice that tracks blood sugar, which was connected to his\nApple Watch.</p>\n\n<p>A source said that Cook was wearing a prototype glucose-tracker on\nthe Apple Watch, which points to future applications that would\nmake the device a &#8220;must have&#8221; for millions of people with diabetes\n&#8212; or at risk for the disease.</p>\n\n<p><a href=\"http://www.cnbc.com/2017/04/12/apple-working-on-glucose-sensors-diabetes-treatment.html\">As CNBC reported last month</a>, Apple has a team in Palo Alto\nworking on the &#8220;holy grail&#8221; for diabetes: Non-invasive and\ncontinuous glucose monitoring. The current glucose trackers on the\nmarket rely on tiny sensors penetrating the skin. Sources said the\ncompany is already conducting feasibility trials in the Bay Area.</p>\n</blockquote>\n\n<p>Non-invasive continuous glucose monitoring would be a life-changer for anyone with diabetes. But I can&#8217;t even imagine how life-changing this will be for kids with diabetes and their parents.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Apple Is Testing an Apple Watch Glucose Monitor’\"  href=\"https://daringfireball.net/linked/2017/05/18/apple-watch-glucose\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "CMD-D: Masters of Automation Conference",
+         "date_published" : "2017-05-18T19:53:32Z",
+         "date_modified" : "2017-05-18T19:53:34Z",
+         "id" : "https://daringfireball.net/linked/2017/05/18/cmd-d-conference",
+         "url" : "https://daringfireball.net/linked/2017/05/18/cmd-d-conference",
+         "external_url" : "https://www.cmddconf.com/",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>This sounds very cool: a one-day conference in August devoted to Mac and iOS scripting and automation, hosted by Paul Kent, Naomi Pearce, and Sal Soghoian.</p>\n\n<div>\n<a  title=\"Permanent link to ‘CMD-D: Masters of Automation Conference’\"  href=\"https://daringfireball.net/linked/2017/05/18/cmd-d-conference\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "Final Cut Pro X and Closed Captions",
+         "date_published" : "2017-05-18T16:42:06Z",
+         "date_modified" : "2017-05-18T16:42:07Z",
+         "id" : "https://daringfireball.net/linked/2017/05/18/fcpx-closed-captions",
+         "url" : "https://daringfireball.net/linked/2017/05/18/fcpx-closed-captions",
+         "external_url" : "http://hammonwry.com/forgotten-again/",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>Kevin Hamm:</p>\n\n<blockquote>\n  <p>Captions can be just text at timecode, which is simple. In their\nmost complex, they are styled, located text at timecode. That’s\nit. Nothing more. I work in text and titles and timecode every day\nin every video I do, so there is no reason that this simple\nfunction isn’t baked in at this point. Words at timecode. That’s\nall it is.</p>\n\n<p>That Apple is making their systems and products accessible is\ngreat. Xcode grants programmers the ability to build accessible\napps, and has from the beginning, which is even better as it makes\na massive part of the ecosystem accessible.</p>\n\n<p>That Final Cut Pro hasn’t ever and still doesn’t create closed\ncaptions is a smudge on that image.</p>\n</blockquote>\n\n<p>It seems bonkers to me that Final Cut Pro X doesn&#8217;t have support for closed captions. Coming from Apple, you&#8217;d think it would have <em>excellent</em> support for them. How does Apple create closed captions for their own videos?</p>\n\n<div>\n<a  title=\"Permanent link to ‘Final Cut Pro X and Closed Captions’\"  href=\"https://daringfireball.net/linked/2017/05/18/fcpx-closed-captions\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "Source Code for Panic Apps Stolen By Malware Thieves",
+         "date_published" : "2017-05-17T18:26:52Z",
+         "date_modified" : "2017-05-18T00:08:29Z",
+         "id" : "https://daringfireball.net/linked/2017/05/17/panic-handbrake-thieves",
+         "url" : "https://daringfireball.net/linked/2017/05/17/panic-handbrake-thieves",
+         "external_url" : "https://panic.com/blog/stolen-source-code/",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>Steven Frank:</p>\n\n<blockquote>\n  <p>Last week, for about three days, <a href=\"https://blog.malwarebytes.com/threat-analysis/mac-threat-analysis/2017/05/handbrake-hacked-to-drop-new-variant-of-proton-malware/\">the macOS video transcoding app\nHandBrake</a> was compromised. One of the two download servers for\nHandBrake was serving up a special malware-infested version of the\napp, that, when launched, would essentially give hackers remote\ncontrol of your computer.</p>\n\n<p>In a case of extraordinarily bad luck, even for a guy that has a\nlot of bad computer luck, I happened to download HandBrake in that\nthree day window, and my work Mac got pwned.</p>\n\n<p>Long story short, <em>somebody, somewhere, now has quite a bit of\nsource code to several of our apps</em>.</p>\n</blockquote>\n\n<p>This is one hell of a story and quite a shock, but the crew at Panic kept their heads together and did the right thing: they&#8217;ve opened up completely and honestly, refused to deal with the blackmailer, and I think they are correctly unworried about their source code being leaked publicly.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Source Code for Panic Apps Stolen By Malware Thieves’\"  href=\"https://daringfireball.net/linked/2017/05/17/panic-handbrake-thieves\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "Dave Itzkoff Profiles Jimmy Fallon for The New York Times",
+         "date_published" : "2017-05-17T17:33:40Z",
+         "date_modified" : "2017-05-17T17:33:41Z",
+         "id" : "https://daringfireball.net/linked/2017/05/17/itzkoff-fallon",
+         "url" : "https://daringfireball.net/linked/2017/05/17/itzkoff-fallon",
+         "external_url" : "https://www.nytimes.com/2017/05/17/arts/television/jimmy-fallon-tonight-show-interview-trump.html",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>Fascinating behind-the-scenes look at The Tonight Show, including a look inside Fallon&#8217;s briefcase (he&#8217;s got a Nintendo Switch in there).</p>\n\n<div>\n<a  title=\"Permanent link to ‘Dave Itzkoff Profiles Jimmy Fallon for The New York Times’\"  href=\"https://daringfireball.net/linked/2017/05/17/itzkoff-fallon\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "Announcing JSON Feed",
+         "date_published" : "2017-05-17T17:24:53Z",
+         "date_modified" : "2017-05-17T17:56:42Z",
+         "id" : "https://daringfireball.net/linked/2017/05/17/json-feed",
+         "url" : "https://daringfireball.net/linked/2017/05/17/json-feed",
+         "external_url" : "https://jsonfeed.org/2017/05/17/announcing_json_feed",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>Brent Simmons and Manton Reece:</p>\n\n<blockquote>\n  <p>We &#8212; Manton Reece and Brent Simmons &#8212; have noticed that JSON has\nbecome the developers’ choice for APIs, and that developers will\noften go out of their way to avoid XML. JSON is simpler to read\nand write, and it’s less prone to bugs.</p>\n\n<p>So we developed JSON Feed, a format similar to <a href=\"http://cyber.harvard.edu/rss/rss.html\">RSS</a> and <a href=\"https://tools.ietf.org/html/rfc4287\">Atom</a> but in\nJSON. It reflects the lessons learned from our years of work\nreading and publishing feeds.</p>\n</blockquote>\n\n<p>I think this is a great idea, and a good spec. I even like the style in which <a href=\"https://jsonfeed.org/version/1\">the spec</a> is written: for real humans (much like the RSS spec). If you want to see a real-life example, <a href=\"https://daringfireball.net/feeds/json\">Daring Fireball has a JSON Feed</a>. I&#8217;ve got a good feeling about this project &#8212; the same sort of feeling I had <a href=\"https://daringfireball.net/2004/03/introducing_markdown\">about Markdown</a> <a href=\"https://daringfireball.net/2004/03/dive_into_markdown\">back in the day</a>.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Announcing JSON Feed’\"  href=\"https://daringfireball.net/linked/2017/05/17/json-feed\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "New Apple Videos Highlight Real-World Accessibility",
+         "date_published" : "2017-05-17T06:03:01Z",
+         "date_modified" : "2017-05-17T06:17:10Z",
+         "id" : "https://daringfireball.net/linked/2017/05/17/accessibility-apple",
+         "url" : "https://daringfireball.net/linked/2017/05/17/accessibility-apple",
+         "external_url" : "http://mashable.com/2017/05/17/apple-accessibility-videos-disability/",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>Nice piece for Mashable by Katie Dupere on <a href=\"https://www.youtube.com/user/Apple/videos\">a bunch of new videos in Apple&#8217;s YouTube channel</a>, highlighting real-world usage of iOS and MacOS accessibility features. People who can&#8217;t move, people who can&#8217;t talk, people who can&#8217;t see or hear &#8212; doing amazing things. Apple&#8217;s commitment to accessibility is one of my very favorite things about the company. It&#8217;s not just the right thing to do for people who truly need these features &#8212; it makes the products better for everyone.</p>\n\n<p><strong>Update:</strong> <a href=\"http://www.loopinsight.com/2017/05/16/apple-videos-highlight-accessibility-achievements/?utm_source=loopinsight.com/\">Jim Dalrymple has all 7 videos collected on one page</a>.</p>\n\n<div>\n<a  title=\"Permanent link to ‘New Apple Videos Highlight Real-World Accessibility’\"  href=\"https://daringfireball.net/linked/2017/05/17/accessibility-apple\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "[Sponsor] Stashword iOS App and Website",
+         "date_published" : "2017-05-15T18:52:31-04:00",
+         "date_modified" : "2017-05-20T15:34:13-04:00",
+         "id" : "https://daringfireball.net/feeds/sponsors/2017/05/stashword_ios_app_and_website",
+         "url" : "https://daringfireball.net/feeds/sponsors/2017/05/stashword_ios_app_and_website",
+         "external_url" : "http://df.stashword.com/",
+         "author" : {
+            "name" : "Daring Fireball Department of Commerce"
+         },
+         "content_html" : "\n<p>Stashword&#8217;s iOS app is a simple yet feature rich password manager trusted by thousands of users. Stashword is not just an incredible password manager, it is also a secure digital vault where you can save, organize and share notes, codes, bank information, credit cards, and more. You can even scan and save documents such as your drivers license, insurance, passport etc.</p>\n\n<p>Stashword is free to try for 15 days. Paid membership enables you to synchronize across all your devices and use their full-featured website <a href=\"http://www.stashword.com/\">www.stashword.com</a>. For this week only, yearly membership is $7.99, which is 20 percent off the regular price.</p>\n\n<div>\n<a  title=\"Permanent link to ‘Stashword iOS App and Website’\"  href=\"https://daringfireball.net/feeds/sponsors/2017/05/stashword_ios_app_and_website\">&nbsp;★&nbsp;</a>\n</div>\n\n\t"
+      },
+      {
+         "title" : "★ Dropping Tech Giants",
+         "date_published" : "2017-05-12T15:58:22Z",
+         "date_modified" : "2017-05-14T20:26:47Z",
+         "id" : "https://daringfireball.net/2017/05/dropping_tech_giants",
+         "url" : "https://daringfireball.net/2017/05/dropping_tech_giants",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p><a href=\"https://www.nytimes.com/interactive/2017/05/10/technology/Ranking-Apple-Amazon-Facebook-Microsoft-Google.html\">Great interactive feature by Farhad Manjoo for The New York Times</a>:</p>\n\n<blockquote>\n  <p>Apple, Amazon, Facebook, Microsoft and Alphabet, the parent\ncompany of Google, are not just the largest technology companies\nin the world. As I’ve argued repeatedly in my column, they are\nalso becoming the most powerful companies of any kind, essentially\ninescapable for any consumer or business that wants to participate\nin the modern world. But which of the Frightful Five is most\nunavoidable? I ponder the question in my column this week.</p>\n\n<p>But what about you? If an evil monarch forced you to choose, in\nwhat order would you give up these inescapable giants of tech?</p>\n</blockquote>\n\n<p>Great question. I love thought exercises.</p>\n\n<p>My order (from first dropped to last):</p>\n\n<ol>\n<li><p>Facebook. I love Instagram, but could live without it. I don&#8217;t use anything else Facebook offers.</p></li>\n<li><p>Microsoft. The only Microsoft product I use regularly is Skype, for podcasting, and I suspect I could find another solution. (If I couldn&#8217;t, I might have to rethink my answer here.)</p></li>\n<li><p>Amazon. I buy stuff from Amazon almost every week. I just counted &#8212; 11 orders so far in 2017. My wife buys stuff from Amazon even more frequently. But just about anything we buy at Amazon, we <em>could</em> buy elsewhere. It&#8217;d be painful to replace, but not irreplaceable. There are a couple of shows exclusive to Amazon Prime that I enjoy, but none that I love.</p></li>\n<li><p>Alphabet. I already use DuckDuckGo as my default search engine, so giving up Google search would be frustrating at times, but not a deal breaker. I use a few email accounts backed by Gmail, but I actually dislike Gmail, and have been procrastinating on moving all my mail to <a href=\"https://www.fastmail.com/\">FastMail</a> for years. I despise Google Docs. I don&#8217;t use any Android devices other than as a curiosity. I greatly prefer Safari over Chrome. YouTube, however, is irreplaceable, and so essential that it pretty much singlehandedly catapults Alphabet to #4 in my list.</p></li>\n<li><p>Apple. I mean, come on. If not for Apple I&#8217;d be stuck using computers I don&#8217;t like and a phone that I consider a distant second-best. With all the other companies on the list, what I&#8217;d miss most are certain of their services &#8212; Instagram, Skype, Amazon&#8217;s store, YouTube &#8212; but Apple is the only company in the world whose hardware I consider irreplaceable. And you need the hardware to make best use of the services from any other companies. And that doesn&#8217;t even touch upon Apple&#8217;s crown jewels: the MacOS and iOS software platforms.</p></li>\n</ol>\n\n\n\n    "
+      },
+      {
+         "title" : "★ Apple’s China Problem: WeChat",
+         "date_published" : "2017-05-05T18:37:24Z",
+         "date_modified" : "2017-05-06T01:58:08Z",
+         "id" : "https://daringfireball.net/2017/05/apples_china_problem_wechat",
+         "url" : "https://daringfireball.net/2017/05/apples_china_problem_wechat",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p><a href=\"https://stratechery.com/2017/apples-china-problem/\">Ben Thompson had a great column this week</a>, in the wake of Apple&#8217;s quarterly results and Microsoft&#8217;s announcement of the Surface Laptop:</p>\n\n<blockquote>\n  <p>Did you hear about the new Microsoft Surface Laptop? The <a href=\"https://twitter.com/reckless/status/859448810187235330\">usual\nsuspects</a> are claiming it’s a MacBook competitor, which is\ntrue insomuch as it is a laptop. In truth, though, the Surface\nLaptop isn’t a MacBook competitor at all for the rather obvious\nreason that it runs Windows, while the MacBook runs MacOS. This\nhas always been the foundation of Apple’s business model:\n<a href=\"https://stratechery.com/2016/everything-as-a-service/\">hardware differentiated by software</a> such that said hardware\ncan be sold with a margin much greater than nominal competitors\nrunning a commodity operating system.</p>\n</blockquote>\n\n<p>Hardware differentiated by <em>superior, exclusive</em> software is the key to understanding Apple. It&#8217;s the reason the company was founded. Apple II&#8217;s were the best personal computer hardware <em>and</em> had the best software. Part of why Woz is so venerated is that he was unimaginably gifted at both hardware <em>and</em> <a href=\"http://gizmodo.com/how-steve-wozniak-wrote-basic-for-the-original-apple-fr-1570573636\">software</a>. Hardware differentiated by software is how Apple survived in the late &#8217;90s, when the company was struggling. It explains all the company&#8217;s success after that: the iPod, the resurgence of the Mac, iPhone, iPad, and Apple Watch. Any comparison between Microsoft&#8217;s Surface Laptop and Apple&#8217;s MacBooks that doesn&#8217;t place heavy emphasis on the value of MacOS is vapid.</p>\n\n<p>Thompson then turns to Apple&#8217;s languishing iPhone sales in China:</p>\n\n<blockquote>\n  <p>But that is not what is going on in most of the world: plenty of\nfolks &#8212; more than last year &#8212; are happy to buy the iPhone 7,\neven though it doesn’t look much different than the iPhone 6.\nAfter all, if you need a new phone, and you want iOS, you don’t\nhave much choice! Except, again, for China: that is the country\nwhere the appearance of the iPhone matters most; Apple’s\nproblem, though, is that in China that is the only thing that\nmatters at all.</p>\n\n<p>The fundamental issue is this: unlike the rest of the world, in\nChina the most important layer of the smartphone stack is not the\nphone’s operating system. Rather, it is WeChat. Connie Chan of\nAndreessen Horowitz <a href=\"http://a16z.com/2015/08/06/wechat-china-mobile-first/\">tried to explain in 2015</a> just how integrated\nWeChat is into the daily lives of nearly <a href=\"http://mp.weixin.qq.com/s/5d6Th5wndmJT25cRHemZNg\">900 million Chinese</a>, and\nthat integration has only grown since then: every aspect of a\ntypical Chinese person’s life, not just online but also off is\nconducted through a single app (and, to the extent other apps are\nused, they are often games promoted through WeChat).</p>\n\n<p>There is nothing in any other country that is comparable: not\nLINE, not WhatsApp, not Facebook. All of those are about\ncommunication or wasting time: WeChat is that, but it is also for\nreading news, for hailing taxis, for paying for lunch (try and pay\nwith cash for lunch, and you’ll look like a luddite), for\naccessing government resources, for business. For all intents and\npurposes WeChat is your phone, and to a far greater extent in\nChina than anywhere else, your phone is everything.</p>\n</blockquote>\n\n<p>As Thompson adds in a footnote, &#8220;Or, to put it another way, the operating system of China is WeChat, not iOS/Android.&#8221;</p>\n\n<p>Thompson cites a staggering statistic: among existing iPhone users in China who bought a new phone in 2016, only 50 percent of them bought another iPhone. That is an incredible statistical outlier compared to iPhone users in the rest of the world, where Apple&#8217;s retention rates hover around the mid-80s.</p>\n\n<p><a href=\"http://www.businessinsider.com/iphone-users-abandon-loyalty-to-apple-2016-11\">Here&#8217;s a Business Insider report from November of last year</a>, with retention statistics from 2014 through 2016 from UBS analysts Steven Milunovich and Benjamin Wilson. Business Insider leads with the iPhone&#8217;s slowly declining retention rate globally, but the real story is halfway down the page, in <a href=\"http://static4.businessinsider.com/image/5818d4cbdd089533548b4991-1015/screen%20shot%202016-11-01%20at%2016.29.01.png\">this chart</a>.</p>\n\n<p>According to that research from UBS, iPhone retention rates hover in the mid-to-high 80s in the U.S., U.K., and Germany. In Japan they&#8217;re in the mid-70s, but holding roughly steady. China&#8217;s numbers have plummeted &#8212; and these numbers from UBS (in the mid-50s for Q4 2016) are in line with the 50 percent number in the Chinese survey Thompson cited.</p>\n\n<p>So here&#8217;s Apple&#8217;s China problem: Chinese iPhone users aren&#8217;t nearly as loyal to the iPhone platform as iPhone users elsewhere are. This is already hurting Apple financially. Apple&#8217;s Q2 2017 financial results (announced this week) were, overall, OK. But other than China, they were actually good. The drop in iPhone sales in China was so severe, and China is so big, that it singlehandedly turned a good quarter into a so-so quarter.</p>\n\n<p>I subtly disagree with Ben Thompson on one point. Thompson attributes the iPhone&#8217;s slide in China to two factors:</p>\n\n<ol>\n<li>The whole &#8220;the operating system of China is WeChat, not iOS/Android&#8221; thing.</li>\n<li>The staleness of the iPhone 7 form factor.</li>\n</ol>\n\n<p>Thompson knows Chinese culture well &#8212; he lives in Taipei, visits China often, and speaks Mandarin. My grasp of Chinese culture is rudimentary at best, and I&#8217;ve never traveled to Asia. So I defer to him on the point that the iPhone as a status symbol is more important in China than it is elsewhere.</p>\n\n<p>Thompson, though, I think places too much weight on the fact that at a glance, some models of the iPhone 7 are indistinguishable from the iPhone 6 and 6S. Thompson argues that this is more of a problem in status-conscious China than it is elsewhere &#8212; that in China, there are many people who forego an upgrade to an iPhone 7 because other people won&#8217;t be able to tell that it isn&#8217;t, say, a boring two-year-old iPhone 6. I just don&#8217;t buy that. For one thing, the black and especially jet black iPhone 7 models <em>are</em> instantly recognizable as the latest and greatest.</p>\n\n<p>But more importantly, I just think the whole &#8220;<em>if it doesn&#8217;t have an altogether new form factor, it&#8217;s boring</em>&#8221; thing is hogwash. <a href=\"http://daringfireball.net/2016/09/design_as_branding\">I wrote an entire column about this</a> when the iPhone 7 debuted, and won&#8217;t rehash the whole argument here. But I am convinced this viewpoint is mostly that of the tech and gadget obsessed.</p>\n\n<p>Again, I&#8217;ll concede that the status symbol aspect of a high-end smartphone may well be more important in China than anywhere else in the world. But even if I also concede that the iPhone 7&#8217;s mostly-like-the-iPhone-6 form factor is a problem for the Chinese market, if the iOS platform engendered the loyalty in China that it does elsewhere, the result would be Chinese iPhone owners waiting another year for the <em>next</em> iPhone. Instead, according to the market research cited above, half of the Chinese iPhone owners who bought a new phone in 2016 switched to an Android device. There are some fine looking Android phones at the high end of the market, but there are none that, based on form factor alone, would explain this. And none of them have anything close to the luxury brand prestige that Apple does.</p>\n\n<p>In Apple&#8217;s &#8220;hardware differentiated by software&#8221; formula, the software is more important than the hardware. That&#8217;s why gadget writers so often get Apple wrong: they&#8217;re focused solely on hardware &#8212; the object, not the experience of using the object. That&#8217;s also why the financial press so often gets Apple wrong: they focus only on the hardware because that&#8217;s where the money comes from.</p>\n\n<p>If forced to choose, I would much rather run iOS on a Google Pixel than Android on an iPhone 7. I would rather run MacOS on a ThinkPad than Windows on a MacBook Pro.<sup id=\"fnr1-2017-05-05\"><a href=\"#fn1-2017-05-05\">1</a></sup> Whenever I bring up this thought experiment &#8212; would you rather run Apple&#8217;s software platform on non-Apple hardware or run some other software platform on Apple hardware &#8212; I get email from readers who say they actually do choose Apple products, especially MacBooks, for the hardware. I believe them, but those are the sort of customers with the least loyalty to Apple. If all you depend on is, say, Chrome, a text editor, and a terminal, it&#8217;s easy to switch to another laptop brand. If you depend on native Mac and iOS apps, iCloud, and iMessage, it&#8217;s arduous, at best, to switch.</p>\n\n<p>If it really is true that &#8220;the operating system of China is WeChat, not iOS/Android&#8221;, that&#8217;s the whole ballgame right there. Again, my disagreement with Thompson here is subtle. He even describes WeChat&#8217;s centrality to the Chinese smartphone stack as &#8220;the fundamental issue&#8221;, leaving the supposed boringness of the iPhone 6S and 7 as a secondary issue. My difference with Thompson is that I don&#8217;t think the iPhone 6S/7 hardware is a problem at all. Personally, I think the iPhone 7 is such a great phone, and the 7 Plus in particular has such a great camera, that the quality of the latest iPhone hardware, including how it looks, shows just how much of a problem it is that WeChat, not iOS, is central to the iPhone experience in China.</p>\n\n<p>That&#8217;s a real problem for Apple, because even if Thompson is right (and I&#8217;m wrong) and Apple <em>does</em> have a boring-looking-hardware problem in China, they can (and seem poised to) remedy that by releasing exciting new iPhone hardware this year. But if the problem is that iOS engenders far less platform loyalty in China because of WeChat&#8217;s centrality &#8212; or even worse, if WeChat is central <em>and</em> better on Android than it is on iOS &#8212; there&#8217;s no easy fix for Apple.</p>\n\n<h2>Postscript</h2>\n\n<p>For those of you like me, who know very little about WeChat, this 2015 piece by Connie Chan (as linked to by Thompson) is a terrific introduction: &#8220;<a href=\"http://a16z.com/2015/08/06/wechat-china-mobile-first/\">When One App Rules Them All: The Case of WeChat and Mobile in China</a>&#8221;.</p>\n\n<div class=\"footnotes\">\n<hr />\n<ol>\n<li id=\"fn1-2017-05-05\">\n<p>I always use ThinkPads as my go-to example of high-quality PC hardware; perhaps I should start using Microsoft Surfaces?&nbsp;<a href=\"#fnr1-2017-05-05\"  class=\"footnoteBackLink\"  title=\"Jump back to footnote 1 in the text.\">&#x21A9;&#xFE0E;</a></p>\n</li>\n</ol>\n</div>\n\n\n\n    "
+      },
+      {
+         "title" : "★ Judging Apple Watch’s Success",
+         "date_published" : "2017-04-24T22:28:32Z",
+         "date_modified" : "2017-04-25T01:47:44Z",
+         "id" : "https://daringfireball.net/2017/04/apple_watch_success",
+         "url" : "https://daringfireball.net/2017/04/apple_watch_success",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p>Mike Murphy, writing for Quartz, &#8220;<a href=\"https://qz.com/967256/two-years-after-its-launch-the-apple-watch-hasnt-made-a-difference-at-apples-revenue-streams-aapl/\">Two Years After Its Launch, the Apple Watch Hasn’t Made a Difference at Apple</a>&#8221;:</p>\n\n<blockquote>\n  <p>Apple’s biggest launch since the iPad in 2010, the Apple Watch was\nexpected to be a hit: Given the massive financial success of the\niPhone, it stood to reason that a companion device might be\nsomething customers craved.</p>\n\n<p>Not so much. Apple has never shared hard numbers on how many\nwearables it has sold, and doesn’t even break out Watch sales in\nits quarterly earnings report. Instead, the device is bundled into\nApple’s “Other products,” which the company says includes, “Apple\nTV, Apple Watch, Beats products, iPod and Apple-branded and\nthird-party accessories.”</p>\n</blockquote>\n\n<p>These articles come out like clockwork every 3 months, as Apple&#8217;s earnings report draws near. Apple told us they were not going to report hard numbers on Apple Watch right from the start, six months before it shipped. They want to keep them secret for competitive reasons.</p>\n\n<blockquote>\n  <p>Two years and two iterations after its launch, the Apple Watch has\nnot proven to be as indispensable as the iPhone, or even as\nlucrative as the Mac, the iPad, or Apple’s services businesses.\nIt’s unclear whether an iPhone-like overhaul, or attempts to\nmarket the watch directly to athletes or millennials, will\nultimately make a difference.</p>\n</blockquote>\n\n<p>(&#8220;Two years and two iterations after its launch&#8221; &#8212; I don&#8217;t know if that&#8217;s a mistake, if Murphy is counting WatchOS releases, or if he&#8217;s counting Series 1 as a full hardware iteration. But it&#8217;s sloppy writing. Most people would surely agree that there&#8217;s been only one iteration since launch, the Series 2 watches released last September.)</p>\n\n<p>The nut of every &#8220;Apple Watch is a dud&#8221; story is the fact that it&#8217;s clearly not an iPhone-size business. But that can&#8217;t be the only measure of success. The iPhone is the biggest and most successful consumer product in the history of the world. Nothing compares to the smartphone market, and it&#8217;s possible nothing else will in our lifetimes. You and I may never again see a product as profitable as the iPhone &#8212; not just from Apple, but from any company in any industry. Or maybe we will. It&#8217;s a complete unknown.</p>\n\n<p>But if Apple gets it into its head that they should only work on iPhone-sized opportunities, it would paralyze the company. In baseball terms, it&#8217;s fine for Apple to hit a bunch of singles while waiting for their next home run. According to Apple, <a href=\"https://www.wareable.com/apple/watch-sales-rolex-tim-cook-556\">they had more watch sales by revenue in 2015 than any company other than Rolex</a>, and Apple&#8217;s &#8220;Other&#8221; category, which is where Watch sales are accounted for, <a href=\"https://images.apple.com/pr/pdf/q1fy17datasum.pdf\">had a near record-breaking holiday quarter</a> three months ago, suggesting strongly that Watch sales were up over the year-ago holiday quarter.</p>\n\n<p>These two facts are both true: Apple Watch sales are a rounding error compared to the iPhone, and Apple Watch is a smash hit compared to traditional watches and other wearable devices.</p>\n\n\n\n    "
+      },
+      {
+         "title" : "★ On Uber’s ‘Identifying and Tagging’ of iPhones",
+         "date_published" : "2017-04-24T00:54:36Z",
+         "date_modified" : "2017-04-24T03:19:56Z",
+         "id" : "https://daringfireball.net/2017/04/uber_identifying_and_tagging_iphones",
+         "url" : "https://daringfireball.net/2017/04/uber_identifying_and_tagging_iphones",
+         "author" : {
+            "name" : "John Gruber"
+         },
+         "content_html" : "\n<p><a href=\"https://mobile.nytimes.com/2017/04/23/technology/travis-kalanick-pushes-uber-and-himself-to-the-precipice.html\">Mike Isaac&#8217;s profile of Uber CEO Travis Kalanick for The New York Times</a> contains an accusation that, on its face, sounds outrageous:</p>\n\n<blockquote>\n  <p>For months, Mr. Kalanick had pulled a fast one on Apple by\ndirecting his employees to help camouflage the ride-hailing app\nfrom Apple’s engineers. The reason? So Apple would not find out\nthat Uber had been secretly identifying and tagging iPhones even\nafter its app had been deleted and the devices erased &#8212; a fraud\ndetection maneuver that violated Apple’s privacy guidelines.</p>\n\n<p>But Apple was on to the deception, and when Mr. Kalanick arrived\nat the midafternoon meeting sporting his favorite pair of bright\nred sneakers and hot-pink socks, Mr. Cook was prepared. “So, I’ve\nheard you’ve been breaking some of our rules,” Mr. Cook said in\nhis calm, Southern tone. Stop the trickery, Mr. Cook then\ndemanded, or Uber’s app would be kicked out of Apple’s App Store.</p>\n\n<p>For Mr. Kalanick, the moment was fraught with tension. If Uber’s\napp was yanked from the App Store, it would lose access to\nmillions of iPhone customers &#8212; essentially destroying the\nride-hailing company’s business. So Mr. Kalanick acceded.</p>\n</blockquote>\n\n<p>&#8220;Secretly identifying and tagging iPhones even after its app had been deleted and the devices erased&#8221; is a rather startling accusation, because it sounds like it should be technically impossible. It&#8217;s also very much unclear what information Uber was able to glean from these &#8220;identified and tagged&#8221; iPhones other than some sort of unique device identifier. Unfortunately, the Times story is very short on details here. But note that the Times is <em>not</em> saying Uber was &#8220;tracking&#8221; these phones. A lot of people are jumping to the conclusion that Uber was somehow tracking the location of users even after they deleted the Uber app, but the word &#8220;track&#8221; only appears in the article in the context of Kalanick having &#8220;excelled at running track and playing football&#8221; in high school.</p>\n\n<p>[<strong>Update:</strong> This explains a lot, regarding the hubbub today over this story. <a href=\"http://newsdiffs.org/diff/1383350/1383404/https%3A/www.nytimes.com/2017/04/23/technology/travis-kalanick-pushes-uber-and-himself-to-the-precipice.html\">When first published, the Times story <em>did</em> use the word &#8220;tracking&#8221;</a>, but a subsequent revision changed that word to &#8220;identifying and tagging&#8221;.]</p>\n\n<p>Reading between the lines, it is possible &#8212; and my gut says quite probable &#8212; that Uber wasn&#8217;t <em>doing</em> anything on these iPhones other than when its app was installed and running on them. From the end of the article:</p>\n\n<blockquote>\n  <p>The idea of fooling Apple, the main distributor of Uber’s app,\nbegan in 2014.</p>\n\n<p>At the time, Uber was dealing with widespread account fraud in\nplaces like China, where tricksters bought stolen iPhones that\nwere erased of their memory and resold. Some Uber drivers there\nwould then create dozens of fake email addresses to sign up for\nnew Uber rider accounts attached to each phone, and request rides\nfrom those phones, which they would then accept. Since Uber was\nhanding out incentives to drivers to take more rides, the drivers\ncould earn more money this way.</p>\n\n<p>To halt the activity, Uber engineers assigned a persistent\nidentity to iPhones with a small piece of code, a practice called\n“fingerprinting.” Uber could then identify an iPhone and prevent\nitself from being fooled even after the device was erased of its\ncontents.</p>\n\n<p>There was one problem: Fingerprinting iPhones broke Apple’s rules.\nMr. Cook believed that wiping an iPhone should ensure that no\ntrace of the owner’s identity remained on the device.</p>\n</blockquote>\n\n<p>What Isaac is reporting here doesn&#8217;t require any code running on an iPhone other than when the Uber app is itself installed and launched. I&#8217;m speculating here, but it could be something like this:</p>\n\n<ol>\n<li><p>The Uber app, while installed, fingerprints the device somehow, and reports the fingerprint home to Uber&#8217;s servers, where it is tied to the user&#8217;s Uber account. (All iPhones have a Unique Device Identifier &#8212; &#8220;UDID&#8221; &#8212; but <a href=\"http://lifehacker.com/5898282/what-a-udid-is-and-why-apples-rejecting-apps-that-want-yours\">Apple banned third-party apps from accessing it in 2012</a>. Uber either found a way to access UDIDs surreptitiously, or created some other way of uniquely identifying devices even after they&#8217;ve been wiped. It would be good to know exactly what they did, but for the sake of my argument here it doesn&#8217;t matter.)</p></li>\n<li><p>The Uber app is deleted from the device and/or device is wiped. At this point, Uber knows the fingerprint for the device, but can’t use it to track the device in any way, <em>and they don’t care</em>, because until someone reinstalls the Uber app on the phone it isn&#8217;t being used to book fraudulent rides.</p></li>\n<li><p>The Uber app is reinstalled on the iPhone. When it launches, it does the fingerprint check and phones home again. Uber now knows this is the same iPhone they’ve seen before, because the fingerprint matches. This is the violation of Apple&#8217;s privacy policy.</p></li>\n</ol>\n\n<p>But until step 3, when the Uber app is reinstalled, I don&#8217;t think Uber was &#8220;tracking&#8221; the phone in any way. And they didn’t care — the Times says the whole project was designed to counter fraud in China, which required the Uber app to be reinstalled on stolen iPhones.</p>\n\n<p>Repeating from the opening of the article, Isaac wrote:</p>\n\n<blockquote>\n  <p>So Apple would not find out that Uber had been secretly\nidentifying and tagging iPhones even after its app had been\ndeleted and the devices erased &#8212; a fraud detection maneuver that\nviolated Apple’s privacy guidelines.</p>\n</blockquote>\n\n<p>That <em>sounds</em> like Uber was doing the identifying and &#8220;tagging&#8221; (whatever that is) after the app had been deleted and/or the device wiped, but I think what it might &#8212; <em>might</em> &#8212; actually mean is merely that the identification persisted after the app had been deleted and/or the device wiped. That&#8217;s not supposed to be technically possible &#8212; iOS APIs for things like the UDID and even the MAC address stopped reporting unique identifiers years ago, because they were being abused by privacy invasive ad trackers, analytics packages, and entitled shitbags like Uber. That&#8217;s wrong, and Apple was right to put an end to it, but it&#8217;s far less sensational than the prospect of Uber having been able to identify and &#8220;tag&#8221; an iPhone <em>after</em> the Uber app had been deleted. The latter scenario only seems technically possible if other third-party apps were executing surreptitious code that did this stuff through Uber&#8217;s SDK, or if the Uber app left behind malware outside the app&#8217;s sandbox. I don&#8217;t think that&#8217;s the case, if only because I don&#8217;t think Apple would have hesitated to remove Uber from the App Store if it was infecting iPhones with hidden phone-home malware.</p>\n\n<p>The article does raise some questions:</p>\n\n<ul>\n<li><p>What APIs and device info was Uber using to identify iPhones? Are these API loopholes now closed in iOS? If we don&#8217;t learn exactly what Uber was using to identify devices, we cannot know that the technique no longer works. iOS users should be able to feel confident that when they delete an app, all connections between their device and the developer of the app are disconnected, and that when they wipe a device, everything personally identifying has been removed from it.</p></li>\n<li><p>What exactly did Apple know about Uber&#8217;s actions in this regard when Tim Cook called Kalanick in for the meeting? Was Apple aware that Uber was specifically keeping a database of unique iPhone identifiers? If so, how?</p></li>\n<li><p>What prompted Apple to investigate Uber in this regard? And why did Uber suspect Apple was going to investigate, prompting them to geofence their fingerprinting so it wouldn&#8217;t trigger in Cupertino? (My theory: the Uber app was calling private APIs, and they used the geofence to avoid calling those private APIs while the app was in App Store review, assuming, perhaps incorrectly, that all App Store reviewers work in Cupertino. App Store review can identify apps that call private APIs.)</p></li>\n<li><p><strong>Update</strong>: Why didn&#8217;t Apple require Uber to disclose what they’d done as a condition for remaining in the store? Shouldn&#8217;t iPhone users who had Uber installed know about this?</p></li>\n</ul>\n\n<p>[<strong>Update 2:</strong> <a href=\"https://twitter.com/chronic/status/856250223777206273\">Will Strafach examined a 2014 build of the Uber iOS app</a> and found them using private APIs to use IOKit to pull the device serial number from the device registry. There might be more, but this alone is a blatant violation of App Store policy. <a href=\"https://twitter.com/chronic/status/856333895050178560\">Strafach confirms</a> that the technique Uber was using no longer works in iOS 10.]</p>\n\n<hr />\n\n<p>The article also contains this non-Apple-related tidbit:</p>\n\n<blockquote>\n  <p>Uber devoted teams to so-called competitive intelligence,\npurchasing data from an analytics service called Slice\nIntelligence. Using an email digest service it owns named\nUnroll.me, Slice collected its customers’ emailed Lyft receipts\nfrom their inboxes and sold the anonymized data to Uber. Uber used\nthe data as a proxy for the health of Lyft’s business. (Lyft, too,\noperates a competitive intelligence team.)</p>\n\n<p>Slice confirmed that it sells anonymized data (meaning that\ncustomers’ names are not attached) based on ride receipts from\nUber and Lyft, but declined to disclose who buys the information.</p>\n</blockquote>\n\n<p>This is, needless to say, super shitty. We expect it from Uber. But Slice should be ashamed of themselves. Their <a href=\"https://unroll.me/\">Unroll.me</a> service is billed as a tool to &#8220;Clean up your inbox&#8221; by identifying subscription emails and allowing you to unsubscribe from them in bulk. It&#8217;s &#8220;free&#8221; in the sense that you don&#8217;t pay them money, but they&#8217;re selling your personal information to companies like Uber. Supposedly that information is anonymized, but wiped iPhones are supposed to be anonymized too, and Uber found at least one route around that. </p>\n\n\n\n    "
+      }
+   ]
+}
feeds/flyingmeat.com.json view
@@ -1,82 +1,82 @@-{-    "version": "https://jsonfeed.org/version/1",-    "title": "News from Flying Meat",-    "home_page_url": "http://flyingmeat.com/blog/",-    "feed_url": "http://flyingmeat.com/blog/feed.json",-    "description": "News from your friends at Flying Meat.",-    "author": {-        "name": "Gus Mueller"-    },-    "items": [-        {-            "id": "http://flyingmeat.com/blog/archives/2015/8/so_awesome.html",-            "title": "So Awesome, It's Nuts (Acorn 5 Is Out)",-            "content_html": "<p><a href=\"http://flyingmeat.com/acorn/\">Acorn 5 is out now</a>, and it even comes with a 14 day trial so you have no excuse not to try it.</p>\n<p>We worked hard on it, and we think it&#39;s pretty awesome.  We&#39;re biased of course, and you can check the <a href=\"http://flyingmeat.com/acorn/releasenotes.html\">release notes</a> for the full details, but here are three of my favorite new features:</p>\n<p><strong>New Thing</strong>: The Shape Processor.  It&#39;s a collection of non destructive filters that  work on vector shapes instead of pixels.</p>\n<center><img src=\"http://shapeof.com/2015/8/flower.jpeg\" alt=\"flower\" /></center>\n\n<p>In the example above we start with the white shape on the left, and then combining four filters together to make the flower on the right.  Here&#39;s what the settings look like:</p>\n<center><img src=\"http://shapeof.com/2015/8/flower-proc.png\" alt=\"flower\" width=\"334\" /></center>\n\n<p>If this looks a lot like the filter that Acorn already has… well, that&#39;s on purpose.  Shape processors are of course non-destructive and save along with Acorn&#39;s native file format.  So you can save your image, open it back up, and tweak the settings as you&#39;d like.  You can make some really fun stuff with it and it turns out to be super useful for lots of things.</p>\n<p><strong>New Filters</strong>: Curves and Levels.  But wait - Acorn already has Curves and Levels, right?  Yes, but in Acorn 5 they are baked into the existing filter chain.  So now you can add Levels to your Curves and then a blur and then why not add Curves again after that and finish with a Drop Shadow filter?  Then save the file and open it upagain and remove the second Curves because that&#39;s just too much what were you thinking? And then you realize Curves and Levels are now non-destructive and that&#39;s amazing.</p>\n<p>Boom.</p>\n<p><strong>Hundreds of Little Things</strong>: We fixed hundreds of minor bugs and annoyances.  Little things that built up over the years that very few people ever encountered, like &quot;the shortcut key for zooming in doesn&#39;t work when the keyboard layout is set to Dvorak - Qwerty ⌘&quot;.  So we fixed pretty much all of those.  It took months and months of work, it was super boring and mind numbing and it was really hard to justify, and it made Acorn 5 super late.  But we did it anyway, because something in us felt that software quality has been going downhill in general, and we sure as heck weren&#39;t going to let that happen to Acorn.  So we took a long break from adding features and just fixed stuff.</p>\n<p>There&#39;s lots more of course (snapping, crop improvements, soft brushes for clone/burn/etc, shape tool improvements, more blend modes, image meta-data editing, Photoshop brush support, etc).  So <a href=\"http://flyingmeat.com/acorn/\">grab Acorn</a> and start playing with it right now.</p>\n<p>And I&#39;ll go back to answering emails and helping people out.</p>\n",-            "date_published": "2015-08-20T15:36:23.000Z",-            "url": "http://flyingmeat.com/blog/archives/2015/8/so_awesome.html"-        },-        {-            "id": "http://flyingmeat.com/blog/archives/2015/8/acorn_and_el_cap.html",-            "title": "Acorn, OS X 10.11 El Capitan, and You",-            "content_html": "<p>Apple&#39;s yearly Mac OS release is coming down the tracks, scheduled to crash into everybody sometime this fall.  One of the great new features of El Capitan is a completely new &quot;modern&quot; version of the Core Image framework.  <a href=\"http://flyingmeat.com/acorn/\">Acorn</a> uses the heck out of this framework, and does some <em>interesting</em> things with it.</p>\n<p>Which is to say that there&#39;s some interesting bugs associated with Acorn and 10.11.</p>\n<p>I&#39;ve spent a good amount of time this summer finding bugs and reporting them to Apple when I can create a reproducible case.  Apple has been good at fixing some of these as well, and I&#39;ve been cleaning up places where Acorn was playing fast and loose with the Core Image in ways it probably shouldn&#39;t have been.</p>\n<p>Acorn 5 shipped with a bunch of these fixes, and <a href=\"http://flyingmeat.com/download/latest/\">Acorn 4.5.6</a> is currently being worked on as well (we didn&#39;t forget about Acorn 4 just because 5 is out the door!).</p>\n<p>So the current status is: there are a couple of known issues (like auto levels crashing), but both Acorn 4.5.6 and Acorn 5.0 are working pretty good on 10.11.  However- if you encounter any bugs with it, we&#39;d love to know about them.  Let us know if you find any: <a href=\"mailto:support@flyingmeat.com\">support@flyingmeat.com</a></p>\n",-            "date_published": "2015-08-21T22:36:01.000Z",-            "url": "http://flyingmeat.com/blog/archives/2015/8/acorn_and_el_cap.html"-        },-        {-            "id": "http://flyingmeat.com/blog/archives/2015/9/a_pair_of_acorn_releases_today.html",-            "title": "A Pair of Acorn Releases Today",-            "content_html": "<p>It doesn&#39;t happen very often, but I&#39;m releasing two updates to <a href=\"http://flyingmeat.com/acorn/\">Acorn</a> today: 5.1 as well as 4.5.6.  If you&#39;re running the direct version, you can use the Acorn ▸ Check for Updates… menu item to grab the latest version.  If you&#39;re using the App Store version, you&#39;re going to have to wait a bit for Apple to review and approve it.</p>\n<p><strong>First up- what&#39;s new in Acorn 5.1?</strong><br>Some bug fixes, as well as minor compatibility fixes for OS X 10.11 El Capitan (most of the 10.11 fixes were in Acorn 5.0.1 already).  But there are also some neat new features if you&#39;d like to script Acorn from the command line, as well as Taptic feedback when aligning things to guides or canvas edges (this is available on 10.11+).</p>\n<p>And another slightly big thing- basic SVG support.  This has been a huge request for a number of years, and I&#39;m happy to finally have something started for you in Acorn 5.1.  Acorn doesn&#39;t support all the features that SVG provides (nor should it)- but it does a pretty decent job of getting vector objects and layers out of Acorn in a scalable format that&#39;ll be around for years to come.  Look for more SVG improvements in future releases of Acorn as well.</p>\n<p><strong>And what&#39;s new in Acorn 4.5.6?</strong><br>Compatiblity with OS X 10.11 El Capitan, and other bug fixes.  Acorn 4 is still a great usable app- and we&#39;d like to keep it that way.</p>\n<p>We&#39;ve also submitted Acorn 4.5.6 to the App Store- though it&#39;s been removed from sale.  I&#39;ve never tried updating an app that&#39;s been removed from sale, but hopefully it&#39;ll sail right through review without any problems.</p>\n",-            "date_published": "2015-09-29T21:21:56.000Z",-            "url": "http://flyingmeat.com/blog/archives/2015/9/a_pair_of_acorn_releases_today.html"-        },-        {-            "id": "http://flyingmeat.com/blog/archives/2016/7/acorn_and_sierra_compatibility.html",-            "title": "Acorn and Sierra Compatibility",-            "content_html": "<p>macOS Sierra is just around the corner, and if you&#39;re running the beta or developer seeds of it you&#39;re of course going to want to know if your favorite application, <a href=\"http://flyingmeat.com/acorn/\">Acorn 5</a>, is compatible with it.</p>\n<p>And it is of course.</p>\n<strike>There is at least one Sierra issue we are aware of (in beta 3, and it&#39;s totally Apple&#39;s fault). Exporting deep images (aka, 16 bits per component) is currently broken in the developer and public betas. I&#39;ve filed a radar with Apple and this is such a serious oversight on their part, that I&#39;m sure it&#39;ll be fixed pretty soon (#27285115 ImageIO problemo).</strike>\n\n<p><strong>Update August 1st, 2016:</strong> Apple has fixed this bug in beta 4, and we are no longer aware of any issues with Acorn and 10.12 Sierra.</p>\n<p>If you&#39;re running the Sierra betas and you encounter any crashes, bugs, or other issues let us <a href=\"mailto:support@flyingmeat.com\">know right away</a>! We want to make sure we don&#39;t miss anything.</p>\n",-            "date_published": "2016-07-22T16:02:14.000Z",-            "url": "http://flyingmeat.com/blog/archives/2016/7/acorn_and_sierra_compatibility.html"-        },-        {-            "id": "http://flyingmeat.com/blog/archives/2016/8/acorn_5.5_is_out.html",-            "title": "Acorn 5.5 is out",-            "content_html": "<p>Earlier today I typed in the magic commands which perform the <a href=\"http://flyingmeat.com/acorn/\">Acorn</a> release song and dance, which means Acorn 5.5 has been released for everyone. It&#39;s available via direct update as well as the Mac App Store, so go grab it when you get a second.</p>\n<p>What&#39;s new and interesting in 5.5? For starters, I&#39;ve rewritten the color picker loupe tool so that it Does The Right Thing (tm) regarding display color profiles and sampling colors from anywhere on the screen. We&#39;ve also given it a few new tricks for zooming in and out when sampling colors as well. It also looks better than the standard system one Acorn used previously.</p>\n<p>We&#39;ve also added new dithering filters, new layer alignment options, and additional information about your image in the Metadata window.</p>\n<p>Changes in Acorn 5.5 include various color profile improvements including reworking how colors are matched to the your image&#39;s profile before they hit the display, as well converting incoming colors from the color picker to the right color space. Cleaning up these seemingly little things really make a difference now that wide gamut displays are showing up everywhere these days.</p>\n<p>And as I always do, I close up bugs that we find along the way. The <a href=\"http://flyingmeat.com/acorn/releasenotes.html\">full release notes are available</a> on our website. And while you&#39;re reading about what&#39;s new, make sure to scroll down and see what else we&#39;ve changed since Acorn 5 was released. We&#39;ve put out 10 updates to Acorn 5 in just under a year with over 100 new things and tweaks, so I won&#39;t fault you if you might have missed one or two.</p>\n<p><a href=\"http://flyingmeat.com/acorn/\">Acorn 5.5</a> is a free update for anyone who has already purchased Acorn 5 and it runs on macOS 10.10 Yosemite, 10.11 El Capitan, and 10.12 Sierra.</p>\n",-            "date_published": "2016-08-02T20:07:06.000Z",-            "url": "http://flyingmeat.com/blog/archives/2016/8/acorn_5.5_is_out.html"-        },-        {-            "id": "http://flyingmeat.com/blog/archives/2016/8/an_epub_for_acorn_5.html",-            "title": "An ePub for Acorn 5",-            "content_html": "<p>For years we&#39;ve had people ask for Acorn&#39;s documentation in PDF form, and as a response to that we created the <em>Acorn 5 Basics</em> PDF which you can download from the <a href=\"http://flyingmeat.com/acorn/docs/\">main documentation page</a>. It was only ever a subset of the entire documentation however.</p>\n<p>Ever since the iPad came out, and with it iBooks, we&#39;ve been wanting to turn Acorn&#39;s online documentation into a downloadable ePub. In theory this is pretty easy to do- all of our online documentation is pushed up as HTML, and that&#39;s the native format of ePubs. But ePub readers don&#39;t support the full range of HTML that web browsers do, so there were a ton of little things to clean up and organize.</p>\n<p>Anyway, this is a long way of saying we have the Acorn 5 documentation available as an ePub for you: <a href=\"http://flyingmeat.s3.amazonaws.com/Acorn5.epub\">Acorn 5.epub</a>. You can download all 1100+ pages of Acorn&#39;s documentation and read it in iBooks either on your Macintosh or iOS device.</p>\n<p>It&#39;s pretty awesome. And since this is a first run of it, we&#39;re calling this a beta. We&#39;ll clean up things in future releases of the ePub. And if you find any problems in it, <a href=\"mailto:support@flyingmeat.com\">please let us know</a>.</p>\n",-            "date_published": "2016-08-17T17:38:48.000Z",-            "url": "http://flyingmeat.com/blog/archives/2016/8/an_epub_for_acorn_5.html"-        },-        {-            "id": "http://flyingmeat.com/blog/archives/2016/11/acorn_4.5.8_released.html",-            "title": "Acorn 4.5.8 Released",-            "content_html": "<p>Just because we&#39;re still pushing ahead with Acorn 5, doesn&#39;t mean we have forgotten about Acorn 4. We&#39;ve just pushed <a href=\"http://flyingmeat.com/download/Acorn-4.5.8.zip\">Acorn 4.5.8</a>, which contains compatibly fixes for MacOS 10.12 Sierra. Acorn 4.5.8 is now compatible with 10.8 through 10.12.</p>\n<p>This release is currently for direct customers only. For some reason the App Store has Acorn 4.5.7 in some sort of wedged state that we haven&#39;t quire figured out. We&#39;ll see if we can get that resolved sometime soon and get v4.5.8 out there as well.</p>\n",-            "date_published": "2016-11-21T20:35:12.000Z",-            "url": "http://flyingmeat.com/blog/archives/2016/11/acorn_4.5.8_released.html"-        },-        {-            "id": "http://flyingmeat.com/blog/archives/2016/12/the_first_tuesday_after_the_first_monday.html",-            "title": "The First Tuesday After the First Monday",-            "content_html": "<p>Tomorrow, Dec 6th, <a href=\"http://flyingmeat.com/\">Flying Meat</a> will be donating 100% of our sales to the <a href=\"https://www.splcenter.org/\">Southern Poverty Law Center</a>:</p>\n<blockquote>\n<p>&quot;The SPLC is dedicated to fighting hate and bigotry and to seeking justice for the most vulnerable members of our society. Using litigation, education, and other forms of advocacy, the SPLC works toward the day when the ideals of equal justice and equal opportunity will be a reality.&quot;</p>\n</blockquote>\n<p>If you don&#39;t already own <a href=\"http://flyingmeat.com/acorn/\">Acorn</a>, tomorrow would be a good time to pick it up. And if you buy it <a href=\"https://secure.flyingmeat.com/store/\">directly</a> from us instead of the App Store, 30% more of your purchase will be given to the SPLC.</p>\n<!--\n\nTo put it bluntly, we aren't happy with the choices America made in our last election. And I wish we had done more to stop what has happened. What is happening.\n\nSo we're going to start throwing money to those who are in a good position to help. A single donation is not enough and won't change what has happened, but it's something. And it's a start. Because what we can't do is just sit here, doing nothing, thinking good thoughts.\n\n-->",-            "date_published": "2016-12-05T18:27:20.000Z",-            "url": "http://flyingmeat.com/blog/archives/2016/12/the_first_tuesday_after_the_first_monday.html"-        },-        {-            "id": "http://flyingmeat.com/blog/archives/2016/12/acorn_5.6_with_touch_bar_photos_extension_released.html",-            "title": "Acorn 5.6 With Touch Bar Support and a Photos Extension Released",-            "content_html": "<p>Flying Meat has just <a href=\"http://flyingmeat.com/acorn/\">released Acorn 5.6</a>, which is a free update to anyone who already owns Acorn 5.</p>\n<p>What&#39;s new and awesome? The big new feature is Touch Bar support for the MacBook Pro. You can now resize your brushes, flip around your canvas, apply boolean operations and align your selected shapes, and much much more. The Touch Bar gives you intuitive control when editing your images, all with a couple of easy taps on your new MacBook Pro.</p>\n<p>If you don&#39;t have a new MacBook Pro you&#39;re going to like this update anyway because it includes one of our top feature requests: A Photos Extension to edit your images in Acorn. Now with a couple of clicks you can open up your image from Photos, edit in Acorn, then save your image back to Photos. It really is that simple.</p>\n<p>The <a href=\"http://flyingmeat.com/acorn/releasenotes.html\">full release notes</a> are also available.</p>\n",-            "date_published": "2016-12-15T17:53:12.000Z",-            "url": "http://flyingmeat.com/blog/archives/2016/12/acorn_5.6_with_touch_bar_photos_extension_released.html"-        },-        {-            "id": "http://flyingmeat.com/blog/archives/2017/3/acorn_5.6.4_released.html",-            "title": "Acorn 5.6.4 Released",-            "content_html": "<p>Up here at the FM world headquarters, I&#39;ve recently pushed the buttons and typed the commands to make $acorn$ 5.6.4 roll out to all my favorite people.</p>\n<p>It&#39;s purely a bug fix release, but it includes a fix for a 10.12 issue that I&#39;ve spent way too long tracking down. So if you&#39;re on 10.12 Sierra, and you&#39;ve seen the occasional case where a black box would suddenly appear somewhere on your canvas, this release is for you.</p>\n<p>So start your update engines and grab it today.</p>\n<p>And a small request: if love Acorn and you&#39;ve <a href=\"http://flyingmeat.com/acorn/appstore/\">purchased it via the App Store</a>, why not leave it a nice review or give it a handful of stars? When we push out new releases, it resets the previous reviews and ratings in the store which is a huge bummer for us (and it also creates a disincentive for releasing bugfix builds! But that&#39;s a story for another time). We love getting reviews and ratings though, it&#39;s like fuel for future releases.</p>\n",-            "date_published": "2017-03-16T16:16:34.000Z",-            "url": "http://flyingmeat.com/blog/archives/2017/3/acorn_5.6.4_released.html"-        }-    ]+{
+    "version": "https://jsonfeed.org/version/1",
+    "title": "News from Flying Meat",
+    "home_page_url": "http://flyingmeat.com/blog/",
+    "feed_url": "http://flyingmeat.com/blog/feed.json",
+    "description": "News from your friends at Flying Meat.",
+    "author": {
+        "name": "Gus Mueller"
+    },
+    "items": [
+        {
+            "id": "http://flyingmeat.com/blog/archives/2015/8/so_awesome.html",
+            "title": "So Awesome, It's Nuts (Acorn 5 Is Out)",
+            "content_html": "<p><a href=\"http://flyingmeat.com/acorn/\">Acorn 5 is out now</a>, and it even comes with a 14 day trial so you have no excuse not to try it.</p>\n<p>We worked hard on it, and we think it&#39;s pretty awesome.  We&#39;re biased of course, and you can check the <a href=\"http://flyingmeat.com/acorn/releasenotes.html\">release notes</a> for the full details, but here are three of my favorite new features:</p>\n<p><strong>New Thing</strong>: The Shape Processor.  It&#39;s a collection of non destructive filters that  work on vector shapes instead of pixels.</p>\n<center><img src=\"http://shapeof.com/2015/8/flower.jpeg\" alt=\"flower\" /></center>\n\n<p>In the example above we start with the white shape on the left, and then combining four filters together to make the flower on the right.  Here&#39;s what the settings look like:</p>\n<center><img src=\"http://shapeof.com/2015/8/flower-proc.png\" alt=\"flower\" width=\"334\" /></center>\n\n<p>If this looks a lot like the filter that Acorn already has… well, that&#39;s on purpose.  Shape processors are of course non-destructive and save along with Acorn&#39;s native file format.  So you can save your image, open it back up, and tweak the settings as you&#39;d like.  You can make some really fun stuff with it and it turns out to be super useful for lots of things.</p>\n<p><strong>New Filters</strong>: Curves and Levels.  But wait - Acorn already has Curves and Levels, right?  Yes, but in Acorn 5 they are baked into the existing filter chain.  So now you can add Levels to your Curves and then a blur and then why not add Curves again after that and finish with a Drop Shadow filter?  Then save the file and open it upagain and remove the second Curves because that&#39;s just too much what were you thinking? And then you realize Curves and Levels are now non-destructive and that&#39;s amazing.</p>\n<p>Boom.</p>\n<p><strong>Hundreds of Little Things</strong>: We fixed hundreds of minor bugs and annoyances.  Little things that built up over the years that very few people ever encountered, like &quot;the shortcut key for zooming in doesn&#39;t work when the keyboard layout is set to Dvorak - Qwerty ⌘&quot;.  So we fixed pretty much all of those.  It took months and months of work, it was super boring and mind numbing and it was really hard to justify, and it made Acorn 5 super late.  But we did it anyway, because something in us felt that software quality has been going downhill in general, and we sure as heck weren&#39;t going to let that happen to Acorn.  So we took a long break from adding features and just fixed stuff.</p>\n<p>There&#39;s lots more of course (snapping, crop improvements, soft brushes for clone/burn/etc, shape tool improvements, more blend modes, image meta-data editing, Photoshop brush support, etc).  So <a href=\"http://flyingmeat.com/acorn/\">grab Acorn</a> and start playing with it right now.</p>\n<p>And I&#39;ll go back to answering emails and helping people out.</p>\n",
+            "date_published": "2015-08-20T15:36:23.000Z",
+            "url": "http://flyingmeat.com/blog/archives/2015/8/so_awesome.html"
+        },
+        {
+            "id": "http://flyingmeat.com/blog/archives/2015/8/acorn_and_el_cap.html",
+            "title": "Acorn, OS X 10.11 El Capitan, and You",
+            "content_html": "<p>Apple&#39;s yearly Mac OS release is coming down the tracks, scheduled to crash into everybody sometime this fall.  One of the great new features of El Capitan is a completely new &quot;modern&quot; version of the Core Image framework.  <a href=\"http://flyingmeat.com/acorn/\">Acorn</a> uses the heck out of this framework, and does some <em>interesting</em> things with it.</p>\n<p>Which is to say that there&#39;s some interesting bugs associated with Acorn and 10.11.</p>\n<p>I&#39;ve spent a good amount of time this summer finding bugs and reporting them to Apple when I can create a reproducible case.  Apple has been good at fixing some of these as well, and I&#39;ve been cleaning up places where Acorn was playing fast and loose with the Core Image in ways it probably shouldn&#39;t have been.</p>\n<p>Acorn 5 shipped with a bunch of these fixes, and <a href=\"http://flyingmeat.com/download/latest/\">Acorn 4.5.6</a> is currently being worked on as well (we didn&#39;t forget about Acorn 4 just because 5 is out the door!).</p>\n<p>So the current status is: there are a couple of known issues (like auto levels crashing), but both Acorn 4.5.6 and Acorn 5.0 are working pretty good on 10.11.  However- if you encounter any bugs with it, we&#39;d love to know about them.  Let us know if you find any: <a href=\"mailto:support@flyingmeat.com\">support@flyingmeat.com</a></p>\n",
+            "date_published": "2015-08-21T22:36:01.000Z",
+            "url": "http://flyingmeat.com/blog/archives/2015/8/acorn_and_el_cap.html"
+        },
+        {
+            "id": "http://flyingmeat.com/blog/archives/2015/9/a_pair_of_acorn_releases_today.html",
+            "title": "A Pair of Acorn Releases Today",
+            "content_html": "<p>It doesn&#39;t happen very often, but I&#39;m releasing two updates to <a href=\"http://flyingmeat.com/acorn/\">Acorn</a> today: 5.1 as well as 4.5.6.  If you&#39;re running the direct version, you can use the Acorn ▸ Check for Updates… menu item to grab the latest version.  If you&#39;re using the App Store version, you&#39;re going to have to wait a bit for Apple to review and approve it.</p>\n<p><strong>First up- what&#39;s new in Acorn 5.1?</strong><br>Some bug fixes, as well as minor compatibility fixes for OS X 10.11 El Capitan (most of the 10.11 fixes were in Acorn 5.0.1 already).  But there are also some neat new features if you&#39;d like to script Acorn from the command line, as well as Taptic feedback when aligning things to guides or canvas edges (this is available on 10.11+).</p>\n<p>And another slightly big thing- basic SVG support.  This has been a huge request for a number of years, and I&#39;m happy to finally have something started for you in Acorn 5.1.  Acorn doesn&#39;t support all the features that SVG provides (nor should it)- but it does a pretty decent job of getting vector objects and layers out of Acorn in a scalable format that&#39;ll be around for years to come.  Look for more SVG improvements in future releases of Acorn as well.</p>\n<p><strong>And what&#39;s new in Acorn 4.5.6?</strong><br>Compatiblity with OS X 10.11 El Capitan, and other bug fixes.  Acorn 4 is still a great usable app- and we&#39;d like to keep it that way.</p>\n<p>We&#39;ve also submitted Acorn 4.5.6 to the App Store- though it&#39;s been removed from sale.  I&#39;ve never tried updating an app that&#39;s been removed from sale, but hopefully it&#39;ll sail right through review without any problems.</p>\n",
+            "date_published": "2015-09-29T21:21:56.000Z",
+            "url": "http://flyingmeat.com/blog/archives/2015/9/a_pair_of_acorn_releases_today.html"
+        },
+        {
+            "id": "http://flyingmeat.com/blog/archives/2016/7/acorn_and_sierra_compatibility.html",
+            "title": "Acorn and Sierra Compatibility",
+            "content_html": "<p>macOS Sierra is just around the corner, and if you&#39;re running the beta or developer seeds of it you&#39;re of course going to want to know if your favorite application, <a href=\"http://flyingmeat.com/acorn/\">Acorn 5</a>, is compatible with it.</p>\n<p>And it is of course.</p>\n<strike>There is at least one Sierra issue we are aware of (in beta 3, and it&#39;s totally Apple&#39;s fault). Exporting deep images (aka, 16 bits per component) is currently broken in the developer and public betas. I&#39;ve filed a radar with Apple and this is such a serious oversight on their part, that I&#39;m sure it&#39;ll be fixed pretty soon (#27285115 ImageIO problemo).</strike>\n\n<p><strong>Update August 1st, 2016:</strong> Apple has fixed this bug in beta 4, and we are no longer aware of any issues with Acorn and 10.12 Sierra.</p>\n<p>If you&#39;re running the Sierra betas and you encounter any crashes, bugs, or other issues let us <a href=\"mailto:support@flyingmeat.com\">know right away</a>! We want to make sure we don&#39;t miss anything.</p>\n",
+            "date_published": "2016-07-22T16:02:14.000Z",
+            "url": "http://flyingmeat.com/blog/archives/2016/7/acorn_and_sierra_compatibility.html"
+        },
+        {
+            "id": "http://flyingmeat.com/blog/archives/2016/8/acorn_5.5_is_out.html",
+            "title": "Acorn 5.5 is out",
+            "content_html": "<p>Earlier today I typed in the magic commands which perform the <a href=\"http://flyingmeat.com/acorn/\">Acorn</a> release song and dance, which means Acorn 5.5 has been released for everyone. It&#39;s available via direct update as well as the Mac App Store, so go grab it when you get a second.</p>\n<p>What&#39;s new and interesting in 5.5? For starters, I&#39;ve rewritten the color picker loupe tool so that it Does The Right Thing (tm) regarding display color profiles and sampling colors from anywhere on the screen. We&#39;ve also given it a few new tricks for zooming in and out when sampling colors as well. It also looks better than the standard system one Acorn used previously.</p>\n<p>We&#39;ve also added new dithering filters, new layer alignment options, and additional information about your image in the Metadata window.</p>\n<p>Changes in Acorn 5.5 include various color profile improvements including reworking how colors are matched to the your image&#39;s profile before they hit the display, as well converting incoming colors from the color picker to the right color space. Cleaning up these seemingly little things really make a difference now that wide gamut displays are showing up everywhere these days.</p>\n<p>And as I always do, I close up bugs that we find along the way. The <a href=\"http://flyingmeat.com/acorn/releasenotes.html\">full release notes are available</a> on our website. And while you&#39;re reading about what&#39;s new, make sure to scroll down and see what else we&#39;ve changed since Acorn 5 was released. We&#39;ve put out 10 updates to Acorn 5 in just under a year with over 100 new things and tweaks, so I won&#39;t fault you if you might have missed one or two.</p>\n<p><a href=\"http://flyingmeat.com/acorn/\">Acorn 5.5</a> is a free update for anyone who has already purchased Acorn 5 and it runs on macOS 10.10 Yosemite, 10.11 El Capitan, and 10.12 Sierra.</p>\n",
+            "date_published": "2016-08-02T20:07:06.000Z",
+            "url": "http://flyingmeat.com/blog/archives/2016/8/acorn_5.5_is_out.html"
+        },
+        {
+            "id": "http://flyingmeat.com/blog/archives/2016/8/an_epub_for_acorn_5.html",
+            "title": "An ePub for Acorn 5",
+            "content_html": "<p>For years we&#39;ve had people ask for Acorn&#39;s documentation in PDF form, and as a response to that we created the <em>Acorn 5 Basics</em> PDF which you can download from the <a href=\"http://flyingmeat.com/acorn/docs/\">main documentation page</a>. It was only ever a subset of the entire documentation however.</p>\n<p>Ever since the iPad came out, and with it iBooks, we&#39;ve been wanting to turn Acorn&#39;s online documentation into a downloadable ePub. In theory this is pretty easy to do- all of our online documentation is pushed up as HTML, and that&#39;s the native format of ePubs. But ePub readers don&#39;t support the full range of HTML that web browsers do, so there were a ton of little things to clean up and organize.</p>\n<p>Anyway, this is a long way of saying we have the Acorn 5 documentation available as an ePub for you: <a href=\"http://flyingmeat.s3.amazonaws.com/Acorn5.epub\">Acorn 5.epub</a>. You can download all 1100+ pages of Acorn&#39;s documentation and read it in iBooks either on your Macintosh or iOS device.</p>\n<p>It&#39;s pretty awesome. And since this is a first run of it, we&#39;re calling this a beta. We&#39;ll clean up things in future releases of the ePub. And if you find any problems in it, <a href=\"mailto:support@flyingmeat.com\">please let us know</a>.</p>\n",
+            "date_published": "2016-08-17T17:38:48.000Z",
+            "url": "http://flyingmeat.com/blog/archives/2016/8/an_epub_for_acorn_5.html"
+        },
+        {
+            "id": "http://flyingmeat.com/blog/archives/2016/11/acorn_4.5.8_released.html",
+            "title": "Acorn 4.5.8 Released",
+            "content_html": "<p>Just because we&#39;re still pushing ahead with Acorn 5, doesn&#39;t mean we have forgotten about Acorn 4. We&#39;ve just pushed <a href=\"http://flyingmeat.com/download/Acorn-4.5.8.zip\">Acorn 4.5.8</a>, which contains compatibly fixes for MacOS 10.12 Sierra. Acorn 4.5.8 is now compatible with 10.8 through 10.12.</p>\n<p>This release is currently for direct customers only. For some reason the App Store has Acorn 4.5.7 in some sort of wedged state that we haven&#39;t quire figured out. We&#39;ll see if we can get that resolved sometime soon and get v4.5.8 out there as well.</p>\n",
+            "date_published": "2016-11-21T20:35:12.000Z",
+            "url": "http://flyingmeat.com/blog/archives/2016/11/acorn_4.5.8_released.html"
+        },
+        {
+            "id": "http://flyingmeat.com/blog/archives/2016/12/the_first_tuesday_after_the_first_monday.html",
+            "title": "The First Tuesday After the First Monday",
+            "content_html": "<p>Tomorrow, Dec 6th, <a href=\"http://flyingmeat.com/\">Flying Meat</a> will be donating 100% of our sales to the <a href=\"https://www.splcenter.org/\">Southern Poverty Law Center</a>:</p>\n<blockquote>\n<p>&quot;The SPLC is dedicated to fighting hate and bigotry and to seeking justice for the most vulnerable members of our society. Using litigation, education, and other forms of advocacy, the SPLC works toward the day when the ideals of equal justice and equal opportunity will be a reality.&quot;</p>\n</blockquote>\n<p>If you don&#39;t already own <a href=\"http://flyingmeat.com/acorn/\">Acorn</a>, tomorrow would be a good time to pick it up. And if you buy it <a href=\"https://secure.flyingmeat.com/store/\">directly</a> from us instead of the App Store, 30% more of your purchase will be given to the SPLC.</p>\n<!--\n\nTo put it bluntly, we aren't happy with the choices America made in our last election. And I wish we had done more to stop what has happened. What is happening.\n\nSo we're going to start throwing money to those who are in a good position to help. A single donation is not enough and won't change what has happened, but it's something. And it's a start. Because what we can't do is just sit here, doing nothing, thinking good thoughts.\n\n-->",
+            "date_published": "2016-12-05T18:27:20.000Z",
+            "url": "http://flyingmeat.com/blog/archives/2016/12/the_first_tuesday_after_the_first_monday.html"
+        },
+        {
+            "id": "http://flyingmeat.com/blog/archives/2016/12/acorn_5.6_with_touch_bar_photos_extension_released.html",
+            "title": "Acorn 5.6 With Touch Bar Support and a Photos Extension Released",
+            "content_html": "<p>Flying Meat has just <a href=\"http://flyingmeat.com/acorn/\">released Acorn 5.6</a>, which is a free update to anyone who already owns Acorn 5.</p>\n<p>What&#39;s new and awesome? The big new feature is Touch Bar support for the MacBook Pro. You can now resize your brushes, flip around your canvas, apply boolean operations and align your selected shapes, and much much more. The Touch Bar gives you intuitive control when editing your images, all with a couple of easy taps on your new MacBook Pro.</p>\n<p>If you don&#39;t have a new MacBook Pro you&#39;re going to like this update anyway because it includes one of our top feature requests: A Photos Extension to edit your images in Acorn. Now with a couple of clicks you can open up your image from Photos, edit in Acorn, then save your image back to Photos. It really is that simple.</p>\n<p>The <a href=\"http://flyingmeat.com/acorn/releasenotes.html\">full release notes</a> are also available.</p>\n",
+            "date_published": "2016-12-15T17:53:12.000Z",
+            "url": "http://flyingmeat.com/blog/archives/2016/12/acorn_5.6_with_touch_bar_photos_extension_released.html"
+        },
+        {
+            "id": "http://flyingmeat.com/blog/archives/2017/3/acorn_5.6.4_released.html",
+            "title": "Acorn 5.6.4 Released",
+            "content_html": "<p>Up here at the FM world headquarters, I&#39;ve recently pushed the buttons and typed the commands to make $acorn$ 5.6.4 roll out to all my favorite people.</p>\n<p>It&#39;s purely a bug fix release, but it includes a fix for a 10.12 issue that I&#39;ve spent way too long tracking down. So if you&#39;re on 10.12 Sierra, and you&#39;ve seen the occasional case where a black box would suddenly appear somewhere on your canvas, this release is for you.</p>\n<p>So start your update engines and grab it today.</p>\n<p>And a small request: if love Acorn and you&#39;ve <a href=\"http://flyingmeat.com/acorn/appstore/\">purchased it via the App Store</a>, why not leave it a nice review or give it a handful of stars? When we push out new releases, it resets the previous reviews and ratings in the store which is a huge bummer for us (and it also creates a disincentive for releasing bugfix builds! But that&#39;s a story for another time). We love getting reviews and ratings though, it&#39;s like fuel for future releases.</p>\n",
+            "date_published": "2017-03-16T16:16:34.000Z",
+            "url": "http://flyingmeat.com/blog/archives/2017/3/acorn_5.6.4_released.html"
+        }
+    ]
 }
feeds/hypercritical.co.json view
@@ -1,432 +1,432 @@-{-   "version" : "https://jsonfeed.org/version/1",-   "title" : "Hypercritical",-   "home_page_url" : "http://hypercritical.co",-   "author" : {-      "url" : "http://hypercritical.co",-      "name" : "John Siracusa"-   },-   "items" : [-      {-         "author" : {-            "name" : "John Siracusa",-            "url" : "http://hypercritical.co"-         },-         "date_published" : "2016-12-18T13:45:20-05:00",-         "date_modified" : "2016-12-18T14:55:20-05:00",-         "content_html" : "<div class=\"image header\"><img src=\"/2016/12/18/images/trico1.jpg\" width=\"640\" height=\"360\" alt=\"The Last Guardian\"/></div>\n\n<p><a href=\"https://en.wikipedia.org/wiki/Fumito_Ueda\">Fumito Ueda’s</a> first game, <a href=\"https://en.wikipedia.org/wiki/Ico\">Ico</a>, was a beautiful, moody <a href=\"http://arstechnica.com/gaming/2010/11/masterpiece-ico/\">masterpiece</a>. Its spare depiction of a boy attempting to escape from a vast castle with the help of a mysterious companion discarded the gameplay and interface conventions of its day, delivering an almost meditative sense of immersion. Ueda’s next game, <a href=\"https://en.wikipedia.org/wiki/Shadow_of_the_Colossus\">Shadow of the Colossus</a>, added the bare minimum of status indicators to the screen to support its complex boss battles that required the player to clamber up and onto a succession of giant creatures.</p>\n\n<p>In terms of both gameplay and mood, Ueda’s latest game, <a href=\"http://amzn.to/2hIRrdT\">The Last Guardian</a>, is a straightforward combination of its predecessors. It features a boy attempting to escape from a mysterious castle with the help of a giant creature. Like Ico, it eschews a conventional <a href=\"https://en.wikipedia.org/wiki/HUD_(video_gaming)\">HUD</a>, save system, inventory management, power-ups, and nearly every other modern gaming convention. And as in Shadow of the Colossus, players will find themselves scrambling up the back of a large, often uncooperative, incredibly life-like beast (cheekily named Trico).</p>\n\n<p>Ico was able to deliver on the promise of its design by reducing complexity in other areas. It’s set in a largely rectilinear castle that the player navigates on foot. It has a small number of enemies. Its environmental puzzles are mechanically and conceptually simple. Similarly, Shadow of the Colossus manages to pull off its extremely ambitious boss battles by removing nearly everything from the game except those creatures.</p>\n\n<p>While The Last Guardian attempts to combine the strengths of its predecessors, it’s burdened by the combination of their features. The environment and the player’s movement through it is far more complex than in Ico. The puzzles play fast and loose with their own rules at a few critical points. The giant creature, no longer confined to a limited engagement in a boss arena, sometimes pushes the game mechanics past their limits.</p>\n\n<p>Nothing kills immersion more than an acute awareness of the game engine itself. In The Last Guardian, the camera often gets stuck on walls or briefly shows the view from inside Trico. (Spoiler alert: like all your favorite 3D-rendered characters, he’s hollow.) Arguably, Shadow of the Colossus had an even more frustrating camera and control scheme, but that game was released eleven years ago on a far less powerful console. The Last Guardian has made tremendous strides since then, but it’s still not quite enough to avoid illusion-breaking lapses.</p>\n\n<p>These shortcomings are compounded by an uncharacteristic lack of faith in its design. Traditional (read: oppressive) on-screen prompts describing the control scheme mar the opening of the game and are impossible to completely banish. A voice-over extends beyond its narrative role to provide a dynamic hint system that is often too quick to reveal solutions. Several brief cutscenes in quick succession at the start of the game undercut player agency. It's tempting to attribute these lapses to <a href=\"http://www.eurogamer.net/articles/2011-12-13-the-last-guardian-sony-confirms-fumito-uedas-departure\">Ueda’s departure from the project</a> several years before its release, but the reason is less important than the result.</p>\n\n<h2>Castle in the Sky</h2>\n\n<p>All of that said, it’s important to remember the context of these criticisms. Ico and Shadow of the Colossus are two of the greatest video games ever created. Both pushed the limits of the hardware they were released on, and both have influenced video game designers, filmmakers, and other creative professionals far out of proportion with their modest sales numbers. That The Last Guardian fails to resoundingly best its distinguished parents is only disappointing because of how close it comes.</p>\n\n<p>Let’s start with the obvious. The Last Guardian is a gorgeous game. The world design is in line with Ico and Shadow of the Colossus, but the increased fidelity of the PlayStation 4 really makes it shine. (<a href=\"http://amzn.to/2hINeEH\">PlayStation 4 Pro</a> running at 1080p is recommended for best frame rates.) Lighting effects that Ico could only dream of add a poignancy to already majestic vistas. At so many points, I wished this game had the <a href=\"https://www.engadget.com/2016/05/05/uncharted-4-photo-mode-screenshot-gallery/\">photo mode</a> from <a href=\"http://amzn.to/2gZcveM\">Uncharted 4</a>.</p>\n\n<p>Trico is an amazing achievement: a building-sized <a href=\"https://en.wikipedia.org/wiki/Non-player_character\">NPC</a> that truly feels alive. Its animations rarely feel canned or repetitive. Its <a href=\"https://www.penny-arcade.com/comic/2016/12/12/pet-class\">behavioral inscrutability</a> is completely in keeping with its character. Learning to read Trico’s moods and signals is a core part of the game. The experience smoothly transitions from frustration to a deep, intuitive understanding by the end.</p>\n\n<p>Anyone who has finished Ico and Shadow of the Colossus will have no trouble completing The Last Guardian. I found the environmental puzzles a bit more challenging than those in Ico, but I never had to go to the Internet to look up a solution. Anyone who got stuck in Ico will almost certainly be even more stymied by The Last Guardian, however. The hand-eye coordination required is substantially lower than in Shadow of the Colossus, but the camera management and overall control-scheme finesse is much more demanding than in Ico.</p>\n\n<p>Also keep in mind that these are comparisons to the difficulty of two much older games. The Last Guardian has a significant <a href=\"https://overcast.fm/+IpnwIQsY/56:21\">skill-barrier to enjoyment</a> when compared to contemporary console games, especially those with such an artistic bent. Inexperienced gamers looking for a better match for their skills should try <a href=\"http://amzn.to/2hJ9fpf\">Journey</a> instead.</p>\n\n<p>Longtime console gamers who have never played Ico or Shadow of the Colossus should definitely do so, preferably before playing The Last Guardian. High-definition remakes of both games are <a href=\"https://www.amazon.com/ICO-Shadow-Colossus-Collection/dp/B002I0J5FG/\">available for the PlayStation 3</a> on a single game disc for a combined price of $25. If your taste in games is anything like mine, it is <i>absolutely</i> worth <a href=\"http://amzn.to/2hIVhkT\">buying</a> or borrowing a PlayStation 3 console just to play these two games. (Plus <a href=\"http://amzn.to/2gZZZO8\">Journey</a> for just $15 more.) [Update: Both games are also available on the PS4 and Windows PC via the <a href=\"https://www.playstation.com/en-us/explore/playstationnow/\">PlayStation Now</a> cloud gaming service, though I have not tried playing them this way.]</p>\n\n<p>If you loved Ico and Shadow of the Colossus, <a href=\"http://amzn.to/2hIRrdT\">The Last Guardian</a> is well worth playing, but it bears the scars of its nearly <a href=\"https://en.wikipedia.org/wiki/The_Last_Guardian#Technical_development\">decade-long development</a>. Like <a href=\"https://www.theincomparable.com/theincomparable/277/\">The Force Awakens</a>, there’s almost no way The Last Guardian could have lived up to the  expectations accumulated during the long wait for its release. In the end, its reach exceeds its grasp, if only slightly. But, oh, what a reach it was. Like its star creature, The Last Guardian occupies a lofty perch—defiantly idiosyncratic and occasionally inscrutable, but a towering achievement nonetheless.</p>",-         "url" : "http://hypercritical.co/2016/12/18/the-last-guardian",-         "id" : "http://hypercritical.co/2016/12/18/the-last-guardian",-         "title" : "The Last Guardian"-      },-      {-         "author" : {-            "url" : "http://hypercritical.co",-            "name" : "John Siracusa"-         },-         "date_published" : "2016-04-22T13:41:23-04:00",-         "content_html" : "<p>These are the canonical bagel flavors:</p>\n\n<ul>\n<li> Plain</li>\n<li> Poppy</li>\n<li> Sesame</li>\n<li> Egg</li>\n<li> Cinnamon Raisin</li>\n<li> Everything</li>\n<li> Egg Everything</li>\n<li> Onion</li>\n<li> Salt</li>\n<li> Pumpernickel</li>\n</ul>\n\n<p>Also:</p>\n\n<ul>\n<li> Bialys</li>\n</ul>",-         "date_modified" : "2016-04-22T13:41:23-04:00",-         "title" : "Canonical Bagel Flavors",-         "url" : "http://hypercritical.co/2016/04/22/canonical-bagel-flavors",-         "id" : "http://hypercritical.co/2016/04/22/canonical-bagel-flavors"-      },-      {-         "author" : {-            "name" : "John Siracusa",-            "url" : "http://hypercritical.co"-         },-         "date_published" : "2015-04-15T21:04:05-04:00",-         "content_html" : "<p>Nearly 15 years ago, I wrote my <a href=\"http://arstechnica.com/apple/1999/12/macos-x-dp2/\">first</a> review of  Mac OS X for a nascent “<a href=\"http://archive.arstechnica.com/reviews/4q99/macos-x-dp2/m-macos-x-dp2-1.html\">PC enthusiast’s</a>\" website called <a href=\"http://arstechnica.com\">Ars Technica</a>. Last fall, I wrote <a href=\"http://arstechnica.com/apple/2014/10/os-x-10-10/\">my last</a>. Though Apple will presumably announce the next major version of OS X at <a href=\"https://developer.apple.com/wwdc/\">WWDC this coming June</a>, I won’t be reviewing it for Ars Technica or any other publication, including the website you’re reading now.</p>\n\n<p>Those who listen to the <a href=\"http://atp.fm\">ATP</a>, the weekly podcast I host with <a href=\"http://www.marco.org\">Marco Arment</a> and <a href=\"http://www.caseyliss.com\">Casey Liss</a>, know that I’ve been contemplating hanging up my OS X reviewer’s hat for some time now.  Producing thousands of words (and hundreds of screenshots) about each major release of OS X was my first real claim to fame on the Internet. The prospect of stopping has made me reconsider my public identity and sense of self.  Who am I if I’m not “that guy who writes those OS X reviews”?  But when I finally decided, the relief I felt let me know I’d made the right choice.</p>\n\n<p>There is no single, dramatic reason behind this. It’s an accumulation of small things—the time investment, the (admittedly, self-imposed) mental anguish, the pressure to meet my own expectations and those of my readers year after year—but it all boils down to a simple, pervasive feeling that this is the time to stop. I’ve done this. It is done.</p>\n\n<p>When I started, I was at the forefront of long-form nerd-centric tech writing. Today, the world has moved on. I might have stopped with my <a href=\"http://arstechnica.com/apple/2013/10/os-x-10-9/\">OS X 10.9 review</a> in 2013 if not for my love of round numbers and my expectation that <a href=\"http://arstechnica.com/apple/2014/10/os-x-10-10/\">OS X 10.10</a> would bring a <a href=\"http://arstechnica.com/apple/2014/10/os-x-10-10/9/#interface\">complete interface overhaul</a> that I really wanted to write about.</p>\n\n<p>While OS X reviews were my public debut, the <a href=\"http://5by5.tv/hypercritical\">Hypercritical podcast</a> brought me to a new audience starting in 2011. Hypercritical ran for 100 episodes, and in the years that followed I’ve recorded at least one podcast every week. (I’m currently a co-host of the weekly <a href=\"http://atp.fm/\">Accidental Tech Podcast</a> and a regular guest on <a href=\"http://www.theincomparable.com/theincomparable/\">The Incomparable</a>.) The one, long article I wrote about OS X for Ars Technica every year or two has long since been dwarfed by the <a href=\"http://hypercritical.co/about/appearances/\">volume</a> of my audio output.</p>\n\n<p>I still love OS X—and I still have many complaints about it. I will certainly talk about OS X 10.11 (whatever it’s called) at length on <a href=\"http://atp.fm\">ATP</a>, and I’ll read the many great reviews written by others when it’s released.  But neither podcasting nor writing have ever been full-time jobs for me. I’ve always had to fit them into my life alongside my actual job and my family. Right now, I’m looking forward to my first summer in many years that won’t be dominated by stolen daytime minutes and long, sleepless nights in front of a screen with a noisy air conditioner blowing behind me. I’m content to have reviewed 10.0 through 10.10. Someone else can pick up the baton for the next 15 years.</p>\n\n<hr>\n\n<h3>Releases</h3>\n\n<ul>\n<li> <a href=\"http://arstechnica.com/apple/2014/10/os-x-10-10/\">OS X 10.10 Yosemite</a> – October 16, 2014</li>\n<li> <a href=\"http://arstechnica.com/apple/2013/10/os-x-10-9/\">OS X 10.9 Mavericks</a> – October 22, 2013</li>\n<li> <a href=\"http://arstechnica.com/apple/2012/07/os-x-10-8/\">OS X 10.8 Mountain Lion</a> – July 25, 2012</li>\n<li> <a href=\"http://arstechnica.com/apple/2011/07/mac-os-x-10-7/\">Mac OS X 10.7 Lion</a> – July 20, 2011</li>\n<li> <a href=\"http://arstechnica.com/apple/2009/08/mac-os-x-10-6/\">Mac OS X 10.6 Snow Leopard</a> – August 31, 2009</li>\n<li> <a href=\"http://arstechnica.com/apple/2007/10/mac-os-x-10-5/\">Mac OS X 10.5 Leopard</a> – October 28, 2007</li>\n<li> <a href=\"http://arstechnica.com/apple/2005/04/macosx-10-4/\">Mac OS X 10.4 Tiger</a> – April 28, 2005</li>\n<li> <a href=\"http://arstechnica.com/apple/2003/11/macosx-10-3/\">Mac OS X 10.3 Panther</a> – November 9, 2003</li>\n<li> <a href=\"http://arstechnica.com/apple/2002/09/macosx-10-2/\">Mac OS X 10.2 Jaguar</a> – September 5, 2002</li>\n<li> <a href=\"http://arstechnica.com/apple/2001/10/macosx-10-1/\">Mac OS X 10.1</a> (Puma) – October 15, 2001</li>\n<li> <a href=\"http://arstechnica.com/apple/2001/04/macos-x/\">Mac OS X 10.0</a>  (Cheetah) – April 2, 2001</li>\n</ul>\n\n<h3>Retrospectives</h3>\n\n<ul>\n<li> <a href=\"http://arstechnica.com/apple/2011/05/mac-os-x-revisited/\">Here’s to the crazy ones: a decade of Mac OS X reviews</a> – May 12, 2011</li>\n<li> <a href=\"http://arstechnica.com/apple/2006/03/osx-fiveyears/\">Five years of Mac OS X</a> – March 24, 2006</li>\n</ul>\n\n<h3>Pre-release</h3>\n\n<ul>\n<li><a href=\"http://arstechnica.com/apple/2010/09/macos-x-beta/\">Mac OS X Public Beta</a> – October 3, 2000</li>\n<li><a href=\"http://arstechnica.com/apple/2000/06/macos-x-qa-1/\">Mac OS X Q &amp; A</a> – June 20, 2000</li>\n<li><a href=\"http://arstechnica.com/apple/2000/05/mac-os-x-dp4/\">Mac OS X DP4</a> – May 24, 2000</li>\n<li><a href=\"http://arstechnica.com/apple/2000/02/mac-os-x-dp3/\">Mac OS X DP3: Trial by Water</a> – February 28, 2000</li>\n<li><a href=\"http://arstechnica.com/apple/2000/01/macos-x-gui/\">Mac OS X Update: Quartz &amp; Aqua</a> – January 17, 2000</li>\n<li><a href=\"http://arstechnica.com/apple/1999/12/macos-x-dp2/\">Mac OS X DP2</a> – December 14, 1999</li>\n</ul>",-         "date_modified" : "2015-04-15T21:04:05-04:00",-         "id" : "http://hypercritical.co/2015/04/15/os-x-reviewed",-         "url" : "http://hypercritical.co/2015/04/15/os-x-reviewed",-         "title" : "OS X Reviewed"-      },-      {-         "author" : {-            "url" : "http://hypercritical.co",-            "name" : "John Siracusa"-         },-         "date_published" : "2014-10-16T15:02:14-04:00",-         "content_html" : "<p>I reviewed <a href=\"http://arstechnica.com/apple/2014/10/os-x-10-10/\">OS X 10.10 Yosemite</a> for <a href=\"http://arstechnica.com/\">Ars Technica</a>.  This is the eleventh major release of OS X, and I've <a href=\"http://arstechnica.com/author/john-siracusa/\">reviewed them all</a>.  There are several ways to read my review.</p>\n\n<ul>\n<li> <a href=\"http://arstechnica.com/apple/2014/10/os-x-10-10/\">Read it for free on the web</a></li>\n\n<li> <a href=\"https://itunes.apple.com/us/book/os-x-10.10-yosemite-ars-technica/id928630628?mt=11&amp;uo=4&amp;at=11l6SN\">Buy it from Apple’s iBookstore for $4.99</a>\n\n<li> <a href=\"http://www.amazon.com/gp/product/B00OFLKWTY/ref=as_li_tl?ie=UTF8&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B00OFLKWTY&amp;linkCode=as2&amp;tag=siracusa-20&amp;linkId=WD7GDMIPVQ63BLSX\">Buy it from Amazon’s Kindle store for $4.99</a>\n\n<li> <a href=\"http://arstechnica.com/subscriptions/\">Subscribe to Ars Premier for a month for $5</a> and get <i>all</i> of these options:\n\n<ul>\n<li> Read it on a single, ad-free web page</li>\n<li> Download an iBooks-compatible EPUB file</li>\n<li> Download a Kindle ebook: two versions, one made especially for iOS</li>\n</ul>\n\n</ul>\n\n<p>Here are my thoughts on the various reading options. This is mostly a repeat of <a href=\"http://hypercritical.co/2013/10/22/mavericks\">last year’s post about Mavericks</a>, with some text carried over verbatim, but there is some new information.</p>\n\n<h2>The Web Version</h2>\n\n<p>The web version of my review is the canonical version.  It has the best formatting, the biggest images, and includes mouse-over image toggle effects that can't be done in an ebook.  It's also the most up-to-date.  I believe that good writing for the web includes many links.  A web browser is the best place to inspect and follow those links.</p>\n\n<p>All the images in my review are <a href=\"http://en.wikipedia.org/wiki/Retina_Display\">Retina</a> resolution.  To see all the detail in the images, read the review on a screen with at least 1,920 “native” pixels of horizontal resolution.  Most images are 1,280 pixels wide (presented to the browser with a width value of 640), but the “full-width” images are 1,920 pixels wide (presented to the browser with a width value of 960).</p>\n\n<p>The free web version has ads, and it’s split up into multiple “pages” (which are usually much longer than a single printed page).  This kind of pagination annoys some people.  I actually like it for very long articles because it helps me keep my place across multiple reading sessions.  I can remember I was on page 8 instead of remembering the exact point in a very long, scrolling web page.</p>\n\n<p>That said, I also really like how an <a href=\"http://arstechnica.com/subscriptions/\">Ars Premier subscription</a> eliminates all ads from the Ars Technica website and gives me the option to view any article on a single page.  I use single-page view on very long articles when I’m searching for some text using my web browser’s “Find…” feature.  I use it all the time on short articles.</p>\n\n<p>Some people think Ars Technica forces me to break my article up into many tiny pages.  That’s not the case.  I choose how to paginate the article.  I like to break it up on logical section boundaries, which means that the “pages” vary widely in length.  I do try to keep any single “page” from being too short, however.</p>\n\n<h2>The eBooks</h2>\n\n<p>My review is <a href=\"https://itunes.apple.com/us/book/os-x-10.10-yosemite-ars-technica/id928630628?mt=11&amp;uo=4&amp;at=11l6SN\">available on Apple’s iBookstore</a> as well as <a href=\"http://www.amazon.com/gp/product/B008OYE8O8/ref=as_li_ss_tl?ie=UTF8&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B008OYE8O8&amp;linkCode=as2&amp;tag=siracusa-20\">Amazon.com</a>.</p>\n\n<p>The Kindle and iBooks readers for OS X and iOS have their own strengths and weaknesses, but I think the iBooks version of my review has a slight edge over the Kindle version.  Amazon adds a “delivery” charge of $0.15 per megabyte (varying a bit for different countries).  This can really eat into the price of a $4.99 book.  Like the web version, both ebook versions include Retina-resolution images, making them quite large.  To control the size of the Kindle ebook, I used JPEG images throughout.</p>\n\n<p>Unlike Amazon, Apple does not charge a per-megabyte fee in its ebook store.  Since both ebooks are the same price, this means I make slightly more money from each iBookstore purchase than I do from each Kindle purchase.  But there’s something in it for you, too. The iBookstore version of my review uses lossless PNG images throughout.  (Kindle version: 5 MB; iBookstore version: 25 MB.)  In practice, I doubt most people will be able to tell the difference between the JPEG and PNG images, but I know which one I’d choose.</p>\n\n<p>I've tried to make both ebooks available for purchase in as many countries as possible, but there are some limits on this that are beyond my control.  If the ebook is not available in your country, remember that you can get both versions of the ebook by <a href=\"http://arstechnica.com/subscriptions/\">subscribing to Ars Premier</a>.<p>\n\n<h2>The Stats</h2>\n\n<ul>\n<li> 26,485 words.</li>\n<li> 113 images (54.3 MB)</li>\n<li> 479 original screenshots (3.56 GB)</li>\n<li> 8,283 words of research notes.</li>\n<li> 2,534 lines of Perl code across 12 scripts to generate three different formats from the canonical HTML source: Ars CMS, EPUB, and Kindle.\n<li> All three formats were generated 171 times.\n<li> I saved the document 3,525 times while writing it in <a href=\"http://www.barebones.com/products/bbedit/\">BBEdit</a>.</li>\n<li> The article content was constantly backed up onto 7 different hard drives on three different Macs in two different locations (thanks to <a href=\"http://db.tt/KgXbHWr\">Dropbox</a>, <a href=\"http://arstechnica.com/apple/2007/10/mac-os-x-10-5/14/#time-machine\">Time Machine</a>, and <a href=\"http://www.shirt-pocket.com/SuperDuper/\">SuperDuper</a>), and pushed up to two different online backup services (<a href=\"http://www.backblaze.com/\">Backblaze</a> and <a href=\"http://www.crashplan.com/\">CrashPlan</a>).</li>\n<li> Applications used: <a href=\"http://www.barebones.com/products/bbedit/\">BBEdit</a>, <a href=\"http://www.nuance.com/for-individuals/by-product/dragon-for-mac/dragon-dictate/index.htm\">Dragon Dictate</a>, <a href=\"http://support.apple.com/kb/HT2523\">TextEdit</a>, <a href=\"http://simplenote.com\">Simplenote</a>, <a href=\"http://www.adobe.com/products/photoshop.html\">Photoshop CS6</a>, <a href=\"http://www.vmware.com/products/fusion/\">VMware Fusion</a>, <a href=\"http://xscopeapp.com\">xScope</a>, <a href=\"https://developer.apple.com/xcode/\">Xcode</a>, <a href=\"http://www.barebones.com/products/yojimbo/\">Yojimbo</a>.\n</ul>\n\n<p>My sincere thanks to everyone who reads the review, in any form, in whole or in part.  You’re the reason I’ve been doing this for the past fifteen years.</p>",-         "date_modified" : "2014-10-16T15:47:55-04:00",-         "url" : "http://hypercritical.co/2014/10/16/yosemite",-         "id" : "http://hypercritical.co/2014/10/16/yosemite",-         "title" : "About My Yosemite Review"-      },-      {-         "date_published" : "2014-04-27T20:53:17-04:00",-         "author" : {-            "url" : "http://hypercritical.co",-            "name" : "John Siracusa"-         },-         "title" : "Creativity, Inc.",-         "url" : "http://hypercritical.co/2014/04/27/creativity-inc",-         "id" : "http://hypercritical.co/2014/04/27/creativity-inc",-         "content_html" : "<p>Most of the nonfiction books I read these days fall into two broad categories: books about people I admire and books about the creation of things I admire.  Good books about the latter often turn into the former by the end.</p>\n\n<p>The book I just finished, <a href=\"http://www.amazon.com/gp/product/B00FUZQYBO/ref=as_li_ss_tl?ie=UTF8&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B00FUZQYBO&amp;linkCode=as2&amp;tag=siracusa-20\">Creativity, Inc.</a> by <a href=\"http://en.wikipedia.org/wiki/Edwin_Catmull\">Ed Catmull</a>, co-founder of <a href=\"http://en.wikipedia.org/wiki/Pixar\">Pixar</a>, had a head start on both counts.  My love of Pixar is not surprising or uncommon.  As for Ed Catmull, I’ve been aware of him and his contemporaries for decades (I had an <a href=\"http://en.wikipedia.org/wiki/Alvy_Ray_Smith\">Alvy Ray Smith</a> quote in my <a href=\"http://en.wikipedia.org/wiki/Signature_block\">.sig</a> for a while in the 90s), but my nerd crush really stepped into high gear when I saw <a href=\"https://www.youtube.com/watch?v=k2h2lvhzMDc\">a video of Catmull’s talk</a> at the Stanford Graduate School of Business in 2007.</p>\n\n<p>It’s difficult for me to describe my reaction to that talk—and to his new book—without sounding absurdly self-aggrandizing, but I’m going to give it a shot.  Saying what other people are thinking is a proven formula for mass-market appeal employed by everyone from talk radio hosts to stand-up comedians.  But as someone whose thoughts and interests have always been outside the norm, I’ve rarely heard excerpts from my own inner dialog voiced on a broader stage.</p>\n\n<p>Ed Catmull does that for me.  If you’ve listened to my <a href=\"http://5by5.tv/hypercritical\">Hypercritical podcast</a> or read <a href=\"http://arstechnica.com/staff/2009/05/hypercritical/\">the article that inspired it</a>, you will find many familiar topics and themes in Creativity, Inc.  Now, believe me, I harbor no illusions about this overlap.  I am not the guy who hears <a href=\"http://en.wikipedia.org/wiki/Louis_C.K.\">Louis C.K.</a> tell a joke and thinks he could be just as funny because he had a similar thought once.  But shared values and the fulfillment of common aspirations are at the heart of all hero worship.</p>\n\n<p>Ed Catmull’s dream was to create the first fully computer-animated feature film.  As a child, I also dreamed of such a thing; Catmull and the rest of the people at Pixar actually made it happen.  Similarly, as an adult, I’ve clung to the notion that <a href=\"http://arstechnica.com/staff/2009/05/hypercritical/\">critical thinking can be both useful and powerful</a>.  Creativity, Inc. explains just how powerful it can be when practiced by a handful of the most brilliant technical and creative people alive today.</p>\n\n<p>Ay, there’s the rub.  It’s so easy to hear the vaguest echo of your own thoughts expressed by someone fantastically smart and accomplished and view that as a cosmic endorsement of your approach to life.  But that absolutely would not be in keeping with the message of the book—a message Catmull tries again and again to communicate to readers he knows will resist it.</p>\n\n<p>Indeed, Catmull most often uses himself as an example of someone who has failed to see through to the heart of a problem.  This is the true strength of the book.  Unlike so many other tech-industry memoirs and business books, Creativity, Inc. is not an abstract exploration of a philosophy, nor is it a list of accomplishments interspersed with bold commandments.  Instead, it is a deep, thoughtful investigation of a never-ending series of failures—and the reactions to those failures that eventually led to success.</p>\n\n<p>Think of it: the man who invented <a href=\"http://en.wikipedia.org/wiki/Texture_mapping\" title=\"FFS!\">texture mapping</a>, made computer-animated films possible, and led his studio to release a string of amazing, <a href=\"http://en.wikipedia.org/wiki/List_of_Pixar_awards_and_nominations_(feature_films)\">Oscar</a>-<a href=\"http://en.wikipedia.org/wiki/List_of_Pixar_awards_and_nominations_(short_films)\">winning</a> examples of the form decides to write a book…and then builds it around an examination of his own mistakes.  Ed Catmull may not be your kind of hero, but he sure is mine.</p>",-         "date_modified" : "2014-04-30T08:52:34-04:00"-      },-      {-         "date_published" : "2014-01-24T08:36:10-05:00",-         "author" : {-            "name" : "John Siracusa",-            "url" : "http://hypercritical.co"-         },-         "title" : "Macintosh",-         "id" : "http://hypercritical.co/2014/01/24/macintosh",-         "url" : "http://hypercritical.co/2014/01/24/macintosh",-         "content_html" : "<div class=\"image header\"><img src=\"/2014/01/24/images/macintosh-team.jpg\" width=\"640\" height=\"452\" alt=\"The Macintosh team\"/></div>\n\n<p>Thirty years ago today, Steve Jobs <a href=\"https://www.youtube.com/watch?v=2B-XwPjn9YY\">introduced</a> Macintosh.  It was the single most important product announcement of my life.  When that upright beige box arrived in my home, it instilled in me an incredible sense of urgency.  I <a href=\"http://hypercritical.co/2014/01/14/the-road-to-geekdom\">greedily consumed</a> every scrap of information about this amazing new machine, from <a href=\"https://en.wikipedia.org/wiki/Inside_Macintosh\">books</a>, <a href=\"http://scottknaster.blogspot.com/2013/10/inside-first-issue-of-macworld.html\">magazines</a>, <a href=\"http://www.youtube.com/watch?v=1pwammW5syw\">audio cassettes</a>, and any adult whose ear I could bend.  This was the future—my future, if I could help it.</p>\n\n<p>The death of Steve Jobs in 2011 brought back a lot of these same memories.  What I <a href=\"http://arstechnica.com/staff/2011/10/steve-jobs-a-personal-remembrance/\">wrote</a> then echoes my thoughts on <a href=\"http://www.apple.com/30-years/\">the Mac’s 30th anniversary</a>.</p>\n\n<blockquote><p>I was 9 years old at the time. That year, <a href=\"http://arstechnica.com/apple/2007/10/mac-os-x-10-5/12/#quick-look\">my grandfather</a> had changed my life by purchasing a <a href=\"http://en.wikipedia.org/wiki/Macintosh_128K\">Macintosh 128K</a>, and convincing my parents to do the same. My grandfather also had a subscription to <em><a href=\"http://www.macworld.com/\">Macworld</a></em> magazine, including multiple copies of issue #1, two of which I took home with me. I cut the Macintosh team picture out of one [see above] and left the other intact. (I still have both.)</p>\n\n<p>I pored over that magazine for years, long after the technical and product information it contained was useless. It was the Macintosh team that fascinated me. That’s why I’d chosen to cut out this particular picture, not a photo of the hardware or software. After seeing the Macintosh and then reading this issue of <em>Macworld</em>, I had an important realization in my young life: <em>people made this</em>.</p></blockquote>\n\n<p>That last part is the most important.  It wasn’t just the product that galvanized me; it was the act of its creation.  The Macintosh team, idealized and partially fictionalized as it surely was in my adolescent mind, nevertheless served as my north star, my proof that knowledge and passion could produce great things.</p>\n\n<p>Memories are short in the tech industry.  For most people, Apple and Steve Jobs will always be synonymous with <a href=\"https://www.youtube.com/watch?v=9hUIxyE2Ns8\">the iPhone</a>, an uncontested inflection point in our computing culture.  For me, the introduction of the Macintosh will always be more important.  Though people who didn’t live through it might not feel it as keenly as I do, the distance between pre-<a href=\"https://www.youtube.com/watch?v=9hUIxyE2Ns8\">2007</a> smartphones and the iPhone is much smaller than the distance between <a href=\"/2014/01/24/images/ms-dos.png\">MS-DOS</a> and the <a href=\"/2014/01/24/images/macintosh-desktop.png\">Mac</a>.</p>\n\n<p>On a personal level, nothing will ever replace my tanned-plastic beauty, the greatest electronic gift I had ever received, or would ever receive.  My attachment to the Mac explains why, in the late 1990s, I was desperate to know everything possible about <a href=\"http://news.cnet.com/Apple-acquires-Next,-Jobs/2100-1001_3-256914.html\">the fate of Apple</a> and <a href=\"http://arstechnica.com/apple/2011/05/mac-os-x-revisited/\">the future of the Mac operating system</a>.  Almost fifteen years later—half the Mac’s life—I’ve <a href=\"http://arstechnica.com/author/john-siracusa/\">reviewed</a> every major release of OS X and zero releases of iOS.  Don’t get me wrong, I love my iPad and iPod touch, but you never forget <a href=\"/2014/01/24/images/macintosh-hello.jpg\">your first</a>.</p>\n\n<p>I’m eternally grateful to <a href=\"http://www.folklore.org\">the people who created the Mac</a>, and to the countless others who kept it alive and shepherded its <a href=\"http://arstechnica.com/apple/2011/05/mac-os-x-revisited/\">rebirth</a>.  In this age of iOS, it’s heartening to hear Phil Schiller <a href=\"http://www.macworld.com/article/2090829/apple-executives-on-the-mac-at-30-the-mac-keeps-going-forever.html\">say</a>, “Our view is, the Mac keeps going forever.” That’s just fine with me.</p>",-         "date_modified" : "2014-01-24T08:49:59-05:00"-      },-      {-         "date_published" : "2014-01-14T00:26:58-05:00",-         "author" : {-            "name" : "John Siracusa",-            "url" : "http://hypercritical.co"-         },-         "title" : "The Road to Geekdom",-         "url" : "http://hypercritical.co/2014/01/14/the-road-to-geekdom",-         "id" : "http://hypercritical.co/2014/01/14/the-road-to-geekdom",-         "content_html" : "<div class=\"image header\"><img src=\"/2014/01/14/images/labyrinth3.jpg\" width=\"640\" height=\"315\" alt=\"Labyrinth\"/></div>\n\n<p>Ask a room of computer geeks how they came to deserve this appellation and you’ll likely hear many similar stories.  “I got my first computer when I was very young. By the time I was a teenager, I’d logged thousands of hours at the keyboard doing everything imaginable with my computer: gaming, programming, networking, upgrades, the works.”</p>\n\n<p>That’s certainly my story.  I was <a href=\"http://eviltrout.com/2012/12/30/programming-since-i-was-seven.html\">lucky enough</a> to get a <a href=\"http://en.wikipedia.org/wiki/Macintosh_128K\">Macintosh</a> in 1984, and it changed my life.  I spent so many hours in front of that computer, I often look back in wonder at how I found so much to do with so little. This was years before I had an Internet connection.  I had very little software and no convenient way to get more. My dollar-a-week allowance didn’t go very far. The only other <a href=\"/2014/01/14/images/carmine-quicklook.png\">person</a> I knew with a Mac was <a href=\"/2014/01/14/images/grandparents.jpg\">my grandfather</a> who lived two hours away.  Nevertheless, I put in the hours—willingly, joyfully—and became the <a href=\"https://twitter.com/hotdogsladies/status/398667876850073600\">seasoned</a> <a href=\"http://arstechnica.com/author/john-siracusa/\">Mac geek</a> you see before you today.</p>\n\n<p>My Macintosh origin story is part of who I am.  Being there from the beginning (and staying with the Mac, even through <a href=\"http://www.wired.com/wired/archive/5.06/apple.html\">the dark times</a>) gives me a useful historical perspective on the platform.  But this is not the only road to geekdom.</p>\n\n<p>The Mac is actually one of the few things I’m a geek about that I’ve been in on since the start.  Geekdom is not defined by historical entry points or even shared experiences.  A geek must possess just two things: knowledge and enthusiasm.</p>\n\n<h2 id=\"a-man-makes-a-car\">A Man Makes a Car</h2>\n\n<p>I became interested in remote control cars in high school after seeing a friend drive one in his backyard.  He’d been building and racing RC cars since he was in elementary school.  I was fascinated by these machines, but I worried I’d never be a “real” RC car geek like my friend.</p>\n\n<p>I saved my money, bought a <a href=\"http://www.iconicrc.com/2011/02/3116-kyosho-turbo-ultima/\">car</a>, built it (badly) myself—and then crashed it.  Undaunted, I bought replacement parts, fixed it, learned to drive it with far less crashing, and eventually bought a <a href=\"http://www.rc10talk.com/viewtopic.php?f=27&amp;t=23937#p238822\">better car</a>.  Most importantly, I subscribed to <a href=\"http://www.rccaraction.com/\">Radio Control Car Action</a> magazine and read every issue from cover to cover as soon as they arrived at my house.</p>\n\n<p>A year or so later, I found myself in my local hobby shop answering another customer’s questions about his car.  It started to dawn on me that I now knew more about RC cars than the average hobby shop patron.  I was no longer an outsider looking in.</p>\n\n<p>Around the same time, I was engaged in one of those <a href=\"http://en.wikipedia.org/wiki/Columbia_House\">cheap-music-for-membership</a> marketing schemes that led to me having to select some CDs on a whim.  I ended up getting <a href=\"http://en.wikipedia.org/wiki/Achtung_Baby\">Achtung Baby</a>, and it knocked my socks off.  I’d been aware of U2 for years and had probably heard the hits from <a href=\"http://en.wikipedia.org/wiki/The_Joshua_Tree\">The Joshua Tree</a> on the radio dozens of times, but I’d never really been into the band—or any band, for that matter.  Achtung changed that.</p>\n\n<p>I started to work my way backwards through U2’s catalog, buying as many CD <a href=\"http://en.wikipedia.org/wiki/Longbox\">long boxes</a> as I could get my hands on.  I bought and read <a href=\"http://www.amazon.com/gp/product/0446389749/ref=as_li_ss_tl?ie=UTF8&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0446389749&amp;linkCode=as2&amp;tag=siracusa-20\">biographies</a> of the band.  At my local library, I devoured reviews of all their past albums in <a href=\"http://en.wikipedia.org/wiki/Rolling_Stone\">Rolling Stone</a> and <a href=\"http://en.wikipedia.org/wiki/Spin_(magazine)\">Spin</a>. I found every magazine with a <a href=\"http://content.time.com/time/covers/0,16641,19870427,00.html\">cover story</a> about U2.  When I couldn’t find anything else in the stacks of back issues, I turned to the library’s <a href=\"http://en.wikipedia.org/wiki/Microfiche\">microfiche</a> collection.</p>\n\n<p>In college, I finally had easy access to <a href=\"http://en.wikipedia.org/wiki/CD_single\">singles</a>, <a href=\"http://en.wikipedia.org/wiki/A-side_and_B-side\">b-sides</a>, and <a href=\"http://www.yelp.com/biz/second-coming-record-store-cambridge\">bootlegs</a>, allowing me to complete my collection.  I also had a fast, reliable Internet connection for the first time.  This was beyond the local hobby shop; I was communicating with other U2 fans across the entire planet.</p>\n\n<p>I learned to play the guitar (badly) and downloaded <a href=\"http://en.wikipedia.org/wiki/Tablature\">tab</a> for my favorite U2 songs.  Dissatisfied with the state of lyrics websites (some things <a href=\"http://www.reddit.com/r/AskReddit/comments/j3v8o/hey_reddit_why_are_all_lyrics_sites_absolutely/\">haven’t changed</a>), I transcribed every U2 album, single, b-side, and rarity, leading to the creation of my first public website, The U2 Lyrics Archive.  This was my first claim to fame on the net.  (The site is gone now, but when the official <a href=\"http://www.u2.com\">u2.com</a> website launched a few years after mine, it contained lyrics copied from my site, typos and all.)</p>\n\n<h2 id=\"a-sort-of-homecoming\">A Sort of Homecoming</h2>\n\n<p>Remote control cars existed for decades before I got my first kit.  Achtung Baby was U2’s seventh album. Yet I was once a serious RC car geek and an unassailable U2 geek.  It started with enthusiasm.  Given the <a href=\"http://eviltrout.com/2012/12/30/programming-since-i-was-seven.html\">opportunity</a>, I channeled that energy into a dogged pursuit of knowledge.</p>\n\n<p>You don’t have to be a geek about everything in your life—or anything, for that matter.  But if geekdom is your goal, don’t let anyone tell you it’s unattainable.  You don’t have to be there “from the beginning” (whatever that means).  You don’t have to start when you’re a kid.  You don’t need to be a member of a particular <a href=\"http://eviltrout.com/2012/12/30/programming-since-i-was-seven.html\">social class</a>, <a href=\"http://pgbovine.net/tech-privilege.htm\">race</a>, <a href=\"http://en.wikipedia.org/wiki/Sex_and_gender_distinction\">sex</a>, or <a href=\"http://whatever.scalzi.com/2012/07/26/who-gets-to-be-a-geek-anyone-who-wants-to-be/\">gender</a>.</p>\n\n<p>Geekdom is not a club; it’s a destination, open to anyone who wants to put in the time and effort to travel there.  And if someone lacks the <i>opportunity</i> to get there, we geeks should help in any way we can.  Take a new friend to a meetup or convention. Donate your old games, movies, comics, and toys.  Be welcoming.  Sharing your enthusiasm is part of being a geek.</p>\n\n<p>Anyone trying to purposely erect border fences or demanding to see ID upon entry to the land of Geekdom is missing the point.  They have <a href=\"http://www.youtube.com/watch?v=_MolWhOGhRc&amp;t=1m51s\">no power over you</a>.  Ignore them and dive headfirst into the things that interest you.  Soak up every experience.  Lose yourself in the pursuit of knowledge.  When you finally come up for air, you’ll find that the long road to geekdom no longer stretches out before you.  No one can deny you entry.  You’re already home.</p>",-         "date_modified" : "2014-01-14T01:42:08-05:00"-      },-      {-         "title" : "Apple’s 2013 Scorecard",-         "url" : "http://hypercritical.co/2014/01/02/apples-2013-scorecard",-         "id" : "http://hypercritical.co/2014/01/02/apples-2013-scorecard",-         "content_html" : "<p>At the beginning of last year, I posted <a href=\"http://hypercritical.co/2013/02/02/apples-2013-to-do-list\">a list of things Apple can and should do during 2013</a>. It’s time to settle up. Because I’m feeling scholastic, I’ll give a <a href=\"http://en.wikipedia.org/wiki/Academic_grading_in_the_United_States#Numerical_and_letter_grades\">letter grade</a> to each item.</p>\n\n<ul>\n\n<li> <p><b>Ship OS X 10.9 and iOS 7.</b>  <a href=\"http://arstechnica.com/apple/2013/10/os-x-10-9/\">Done</a> and <a href=\"http://www.apple.com/ios/\">done</a>, with only a few <a href=\"http://www.imore.com/ios-7-and-motion-sickness-poll\">minor</a> <a href=\"http://www.marco.org/2013/12/15/button-shapes\">bumps</a> in the road. <b>A-</b></p></li>\n\n<li> <p><b>Diversify the iPhone product line.</b>  “There needs to be more than one iPhone,” I <a href=\"http://hypercritical.co/2013/02/02/apples-2013-to-do-list\">wrote</a>.  This is <a href=\"http://5by5.tv/hypercritical/4\">a drum I’ve been beating</a> for many years.  Apple finally made it happen in 2013 with the cleverly conceived <a href=\"http://www.apple.com/iphone-5c/\">iPhone 5C</a>.  I’m disappointed that the 5C doesn’t have more internal changes beyond a slightly larger-capacity battery, and I’m still anxiously awaiting an iPhone with a <a href=\"http://www.marco.org/2013/01/31/iphone-plus-speculation\">larger screen</a>, but Apple got the important parts right.  The 5C is a good phone, and it’s easily distinguished from the <a href=\"http://www.apple.com/iphone-5s/\">5S</a>. <b>B+</b></p></li>\n\n<li> <p><b>Keep the iPad on track.</b> The <a href=\"http://www.apple.com/ipad-air/\">iPad Air</a> is impressive, and the <a href=\"http://www.apple.com/ipad-mini/\">mini</a> finally went <a href=\"http://en.wikipedia.org/wiki/Retina_Display\">Retina</a>. On the downside, the creaky old <a href=\"http://en.wikipedia.org/wiki/IPad_2\">iPad 2</a> lives on, the iPad Air really deserves more RAM, and a larger “iPad Pro” is still off in the hazy future.  The iPad is “on track,” for sure, but <a href=\"https://www.youtube.com/watch?v=NuInK_N9cLM\">exciting times</a> are still ahead.  <b>A-</b></p></li>\n\n<li> <p><b>Introduce more, better Retina Macs.</b> The <a href=\"http://arstechnica.com/apple/2013/10/retina-round-two-apples-15-inch-2013-retina-macbook-pro-reviewed/\">latest Retina MacBook Pro</a> has <a href=\"http://www.anandtech.com/show/6993/intel-iris-pro-5200-graphics-review-core-i74950hq-tested\">Intel’s Iris Pro 5200 graphics</a>, finally giving the integrated GPU enough muscle to handle all those pixels.  Apple also kept around an option for a <a href=\"http://www.geforce.com/hardware/notebook-gpus/geforce-gt-750m\">discrete GPU</a> on the high-end model.  But the MacBook Air and iMac are still excluded from the Retina club, and even the mighty Mac Pro has <a href=\"http://www.anandtech.com/show/7603/mac-pro-review-late-2013/11\">extremely limited</a> <a href=\"http://cocoamanifest.net/articles/2013/01/turn-on-hidpi-retina-mode-on-an-ordinary-mac.html\">high-DPI</a> options. We’ll get ’em next year, right <a href=\"http://www.apple.com/pr/bios/tim-cook.html\">Tim</a>? <b>B-</b></p></li>\n\n<li> <p><b>Make Messages work correctly.</b> It’s difficult to measure the scope and frequency of problems in Messages based solely on blog posts and tweets, but I feel safe in saying that weird behavior still exists and is likely to be seen by anyone who uses Messages every day.  Hope is <a href=\"https://alpha.app.net/mrgan/post/4248751\">fading</a>. <b>D</b></p></li>\n\n<li> <p><b>Make iCloud better.</b> The iCloud Core Data team got a chance to <a href=\"http://arstechnica.com/apple/2013/10/os-x-10-9/20/#icloud-core-data\">regroup in Mavericks</a>.  It may be too little, too late, but at least it’s a step in the right direction.  More broadly, iCloud still doesn’t have a good reputation for reliability, and debugging problems related to it remains difficult.  If the only user-accessible control for a service is a single checkbox, it had better “just work.”  iCloud has yet to earn that label.  <b>C</b></p></li>\n\n<li> <p><b>Resurrect iLife and iWork.</b> Be careful what you wish for, I suppose.  Apple did finally release new versions of the applications formerly known as the iLife and iWork suites, but the focus on simplicity and feature parity with the web and iOS versions <a href=\"http://9to5mac.com/2013/10/25/new-iwork-ilife-apps-go-for-simplicity-upset-power-users-all-over-again/\">left Mac users wanting more</a>.  It does not feel like an upgrade worthy of the years that have passed since the last major revisions of these applications.  <b>B-</b></p></li>\n\n<li> <p><b>Reassure Mac Pro lovers.</b> Apple was thoroughly convincing in its rededication to the Mac Pro, presenting a <a href=\"https://www.youtube.com/watch?v=SQl2FjaKCAQ\">dramatic introduction video</a> at <a href=\"https://developer.apple.com/wwdc/\">WWDC</a> for its radical new high-performance hardware.  It’s <a href=\"http://hypercritical.co/2013/03/08/the-case-for-a-true-mac-pro-successor\">not for everyone</a>, but it represents a hell of a turnaround for a once-neglected product.  Let’s hope it doesn’t take 18 months for the next revision to appear. <b>A</b></p></li>\n\n<li> <p><b>Do something about TV.</b>  Sigh. <b>F</b></p></li>\n\n</ul>\n\n<p>Out of the 10 items on my to-do list, Apple did 8 of them well enough to earn a checkmark. (The TV thing was always a bit of a reach, anyway.)  I’d call that a solid year.</p>",-         "date_modified" : "2014-01-02T17:11:02-05:00",-         "date_published" : "2014-01-02T15:19:12-05:00",-         "author" : {-            "url" : "http://hypercritical.co",-            "name" : "John Siracusa"-         }-      },-      {-         "date_published" : "2013-12-22T14:53:21-05:00",-         "author" : {-            "name" : "John Siracusa",-            "url" : "http://hypercritical.co"-         },-         "title" : "Fill Your TV",-         "id" : "http://hypercritical.co/2013/12/22/fill-your-tv",-         "url" : "http://hypercritical.co/2013/12/22/fill-your-tv",-         "date_modified" : "2013-12-22T18:49:19-05:00",-         "content_html" : "<p>On two <a href=\"http://atp.fm/episodes/43-brilliance-enhancer\">recent</a> <a href=\"http://atp.fm/episodes/44-a-plague-with-very-minor-effects\">episodes</a> of Accidental Tech Podcast, I talked about calibrating <a href=\"http://www.amazon.com/gp/product/B00BC4SJEC/ref=as_li_ss_tl?ie=UTF8&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B00BC4SJEC&amp;linkCode=as2&amp;tag=siracusa-20\">my new TV</a>. The reactions of my <a href=\"http://atp.fm\">co-hosts</a> and the feedback from listeners has made it clear that the entire concept of calibrating a home TV is foreign to most people.</p>\n\n<p>While a full-zoot <a href=\"http://www.imagingscience.com\">ISF</a> HDTV calibration is expensive and unnecessary for most people, there are some important steps that every TV owner should take to improve image quality.  If you have an iOS device plus either an HDMI output cable (<a href=\"http://store.apple.com/us/product/MD826ZM/A/lightning-digital-av-adapter\">Lightning</a> or <a href=\"http://store.apple.com/us/product/MD098ZM/A/apple-digital-av-adapter\">30-pin</a>) or an <a href=\"http://www.apple.com/appletv/\">Apple TV</a>, you can use the simple <a href=\"https://itunes.apple.com/us/app/thx-tune-up/id592624594?mt=8\">THX tune-up</a> application to dial in your color, contrast, brightness, and other basic settings.</p>\n\n<p>Before calibrating, don’t forget to turn off all the “image enhancement” features of your TV.  These are the things with names like Vivid Color, Color Remaster, Motion Interpolation, Brilliance Enhancer, Black Extension, C.A.T.S., AGC, and so on.  Check your TV’s manual for explanations of what each setting does, if you’re curious, but you really do want to turn them all <i>off</i>.  They all mess with the image in ways not intended by the creator, and they will make proper calibration more difficult or impossible.</p>\n\n<p>There’s one setting in particular that anyone can adjust without requiring any skill or special software. Let’s say you buy a new <a href=\"http://en.wikipedia.org/wiki/1080p\">1080p</a> HDTV with a native resolution of 1920×1080.  Out of the box, that TV will most likely be configured to never show you a full 1920×1080 pixels of information.  In computer parlance, it’s running at a non-<a href=\"http://en.wikipedia.org/wiki/Native_resolution\">native</a> resolution by default, like a 1024×768 LCD display set to a resolution of 800×600.</p>\n\n<p>Imagine this test image exactly matches the native resolution of your HDTV. (It doesn't, so please don't use it to test your actual TV. Use a real <a href=\"https://itunes.apple.com/us/app/thx-tune-up/id592624594?mt=8\">calibration app</a> or image instead.)</p>\n\n<div class=\"image\"><img src=\"/2013/12/22/images/tv-correct.png\" width=\"640\" height=\"360\" alt=\"TV test image displayed correctly\"/><div class=\"caption\">A TV test image displayed correctly: the shapes in the corners are squares, the green box is visible.</div></div> \n\n<p>If you’re viewing this post on a <a href=\"http://en.wikipedia.org/wiki/Retina_Display\">Retina</a> display, the thin lines extending from the squares in the corners should be crisp and pixel-perfect.  Send this image to your HDTV, however, and this is what you’re likely to see:</p>\n\n<div class=\"image\"><img src=\"/2013/12/22/images/tv-overscan.png\" width=\"640\" height=\"360\" alt=\"TV test image with overscan\"/><div class=\"caption\">This is how your TV is likely to display the test image: information is lost, detail is blurred.</div></div> \n\n<p>The green box is no longer visible; the squares in the corners are now rectangles; the fine lines are now blurred together, producing an unpleasant <a href=\"http://en.wikipedia.org/wiki/Moire_pattern\">moiré pattern</a>.  You can read all about the origins of this terrible behavior in the Wikipedia entry on “<a href=\"http://en.wikipedia.org/wiki/Overscan#Origins_of_overscan\">overscan</a>,” but all you need to know is that it’s no longer necessary in the age of HDTV.</p>\n\n<p>You paid for all 1920×1080 pixels of your fancy new HDTV—use them!  Most HDTVs have a setting somewhere to correct this problem.  It may be called “Overscan,” “1:1 Pixel Mapping,” “Native,” “Screen Fit,” “Just Scan,” or something even more generic like “Size 1” or “Size 2.”  Consult your TV’s manual to find out. (If you can’t find your paper manual, a Google search for your TV’s model number followed by “manual PDF” will usually lead to an online version.)  Don’t give up; the setting is almost always there somewhere. For TVs with no dedicated setting, you may have to change the input label to “PC” or similar to force the issue.</p>\n\n<p>The nerd-rage I feel at the thought of a display running in non-native resolution may not be something you can relate to, but everyone can appreciate a sharper image that shows more information.  This holiday, after you’re done fixing all your relatives’ computer problems and updating their software, take a moment to correct the image size on their HDTV as well.  Your relatives might not thank you for it, but I will.</p>"-      },-      {-         "date_published" : "2013-10-22T14:27:05-04:00",-         "author" : {-            "name" : "John Siracusa",-            "url" : "http://hypercritical.co"-         },-         "title" : "About My Mavericks Review",-         "id" : "http://hypercritical.co/2013/10/22/mavericks",-         "url" : "http://hypercritical.co/2013/10/22/mavericks",-         "content_html" : "<p>I reviewed <a href=\"http://arstechnica.com/apple/2013/10/os-x-10-9/\">OS X 10.9 Mavericks</a> for <a href=\"http://arstechnica.com/\">Ars Technica</a>.  I’ve been reviewing OS X since 1999, and this is the tenth major release.  There are several ways to read my review.</p>\n\n<ul>\n<li> <a href=\"http://arstechnica.com/apple/2013/10/os-x-10-9/\">Read it for free on the web</a></li>\n\n<li> <a href=\"https://itunes.apple.com/us/book/os-x-10.9-mavericks-ars-technica/id728112618?mt=11&amp;uo=4&amp;at=11l6SN\">Buy it from Apple’s iBookstore for $4.99</a>\n\n<li> <a href=\"http://www.amazon.com/gp/product/B00G3J8NPQ/ref=as_li_ss_tl?ie=UTF8&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B00G3J8NPQ&amp;linkCode=as2&amp;tag=siracusa-20\">Buy it from Amazon’s Kindle store for $4.99</a>\n\n<li> <a href=\"http://arstechnica.com/subscriptions/\">Subscribe to Ars Premier for a month for $5</a> and get <i>all</i> of these options:\n\n<ul>\n<li> Read it on a single, ad-free web page</li>\n<li> Download an iBooks-compatible EPUB file</li>\n<li> Download a Kindle ebook: two versions, one made especially for iOS</li>\n</ul>\n\n</ul>\n\n<p>Here are my thoughts on the various reading options. This is mostly a repeat of <a href=\"http://hypercritical.co/2012/07/25/mountain-lion\">last year’s post about Mountain Lion</a>, with some sections carried over verbatim, but there is some new information.</p>\n\n<h2>The Web Version</h2>\n\n<p>The web version of my review is the canonical version.  It has the best formatting and the most features.  It's also the most up-to-date.  I believe that good writing for the web includes many links.  A web browser is the best place to inspect and follow those links.</p>\n\n<p>This year, all the images in my review are <a href=\"http://en.wikipedia.org/wiki/Retina_Display\">Retina</a> resolution.  To see all the detail in the images, read the review on a Retina iPad, Mac, or other device with at least around 1,400 “native” pixels of horizontal resolution.  (The “full-width” images are 1,280 pixels wide, presented to the browser with a width value of 640, but there are also margins around the content column.) </p>\n\n<p>The free web version has ads, and it’s split up into multiple “pages” (which are usually much longer than a single printed page).  This kind of pagination annoys some people.  I actually like it for very long articles because it helps me keep my place across multiple reading sessions.  I can remember I was on page 8 instead of remembering the exact point in a very long, scrolling web page.</p>\n\n<p>That said, I also really like how an <a href=\"http://arstechnica.com/subscriptions/\">Ars Premier subscription</a> eliminates all ads from the Ars Technica website and gives me the option to view any article on a single page.  I use single-page view on very long articles when I’m searching for some text using my web browser’s “Find…” feature.  I use it all the time on short articles.</p>\n\n<p>Some people think Ars Technica forces me to break my article up into many tiny pages.  That’s not the case.  I choose how to paginate the article.  I like to break it up on logical section boundaries, which means that the “pages” vary widely in length.  I do try to keep any single “page” from being too short, however.</p>\n\n<h2>The eBooks</h2>\n\n<p>For the first time, my review is <a href=\"https://itunes.apple.com/us/book/os-x-10.9-mavericks-ars-technica/id728112618?mt=11&amp;uo=4&amp;at=11l6SN\">available on Apple’s iBookstore</a> as well as <a href=\"http://www.amazon.com/gp/product/B008OYE8O8/ref=as_li_ss_tl?ie=UTF8&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B008OYE8O8&amp;linkCode=as2&amp;tag=siracusa-20\">Amazon.com</a>.  The new iBooks application bundled with Mavericks means you can also read the iBookstore version on your Mac.</p>\n\n<p>The Kindle and iBooks readers for OS X and iOS have their own strengths and weaknesses, but I think the iBooks version of my review has a slight edge over the Kindle version.  Amazon adds a “delivery” charge of $0.15 per megabyte (varying a bit for different countries).  This can really eat into the price of a $4.99 book.  Like the web version, both ebook versions include Retina-resolution images this year, making them much larger than in past years.  To control the size of the Kindle ebook, I used JPEG images throughout.  (Last year’s Kindle ebook used a mix of JPEG and PNG images for the same reason.)</p>\n\n<p>Unlike Amazon, Apple does not charge a per-megabyte fee in its ebook store.  Since both ebooks are the same price, this means I make slightly more money from each iBookstore purchase than I do from each Kindle purchase.  But there’s something in it for you, too. The iBookstore version of my review uses lossless PNG images throughout.  (Kindle version: 5.5 MB; iBookstore version: 30.5 MB.)  In practice, I doubt most people will be able to tell the difference between the JPEG and PNG images, but I know which one I’d choose.</p>\n\n<h2 id=\"unknowns\">The Unknowns</h2>\n\n<p>This year is the first time I haven’t known the price and release date of a major OS X release well in advance.  The lead times dictated by the ebook stores (anywhere from 12 hours to a week) meant that I had to submit the ebooks before I knew how much Mavericks would cost.  The ebooks are now updated, but Amazon in particular does not make downloading updates easy or convenient.  Updates to the web version are visible instantly, of course.</p>\n\n<h2>The Stats</h2>\n\n<ul>\n<li> 24,008 words.</li>\n<li> 110 images (36.7 MB)</li>\n<li> 499 original screenshots (666.2 MB)</li>\n<li> 3,011 words of research notes.</li>\n<li> 2,206 lines of Perl code across 14 scripts to generate three different formats from the canonical HTML source: Ars CMS, EPUB, and Kindle.\n<li> All three formats were generated 98 times.\n<li> I saved the document 2,653 times while writing it in <a href=\"http://www.barebones.com/products/bbedit/\">BBEdit</a>.</li>\n<li> The article content was constantly backed up onto 7 different hard drives on three different Macs in two different locations (thanks to <a href=\"http://db.tt/KgXbHWr\">Dropbox</a>, <a href=\"http://arstechnica.com/apple/2007/10/mac-os-x-10-5/14/#time-machine\">Time Machine</a>, and <a href=\"http://www.shirt-pocket.com/SuperDuper/\">SuperDuper</a>), and pushed up to two different online backup services (<a href=\"http://www.backblaze.com/\">Backblaze</a> and <a href=\"http://www.crashplan.com/\">CrashPlan</a>).</li>\n<li> Applications used: <a href=\"http://www.barebones.com/products/bbedit/\">BBEdit</a>, <a href=\"http://www.nuance.com/for-individuals/by-product/dragon-for-mac/dragon-dictate/index.htm\">Dragon Dictate</a>, <a href=\"http://support.apple.com/kb/HT2523\">TextEdit</a>, <a href=\"http://simplenoteapp.com/\">Simplenote</a>, <a href=\"https://www.adobe.com/products/photoshopextended.html\">Photoshop CS6</a>, <a href=\"http://www.vmware.com/products/fusion/overview.html\">VMware Fusion</a>, <a href=\"http://iconfactory.com/software/xscope/\">xScope</a>, <a href=\"https://developer.apple.com/xcode/\">Xcode</a>, <a href=\"http://www.barebones.com/products/yojimbo/\">Yojimbo</a>.\n</ul>\n\n<p>My sincere thanks to everyone that reads the review, in any form, in whole or in part.  You’re the reason that I’ve been doing this for the past fourteen years.</p>",-         "date_modified" : "2014-10-16T19:54:44-04:00"-      },-      {-         "date_published" : "2013-09-02T15:00:45-04:00",-         "author" : {-            "url" : "http://hypercritical.co",-            "name" : "John Siracusa"-         },-         "id" : "http://hypercritical.co/2013/09/02/nintendo-in-crisis",-         "url" : "http://hypercritical.co/2013/09/02/nintendo-in-crisis",-         "title" : "Nintendo in Crisis",-         "content_html" : "<p>When Apple was on the ropes sixteen years ago, there was no shortage of advice about what the company should do to save itself, much of it fueled by a deep love for Apple’s products.  It takes a diehard Apple fanatic to create something like the <a href=\"/2013/09/02/images/wired-pray-cover.png\">iconic “Pray” cover</a> from the <a href=\"http://www.wired.com/wired/archive/5.06/\">June 1997 issue of Wired magazine</a>—coupled with the faith that there are enough like-minded readers to appreciate the sentiment.  <a href=\"http://arstechnica.com/staff/2008/06/wwdc-2008-keynote-bingo/\">A decade later</a>, those of us who spent the 1990s worrying about Apple felt relieved, and maybe even <a href=\"/2013/09/02/images/wwdc-2008-bingo-poster.png\">a little nervous about Apple’s newfound power</a>.  It was a hell of a ride.</p>\n\n<p>Nintendo engenders the same kind of affection and loyalty.  Like Apple, it has a recent history of defeat followed by <a href=\"/2013/02/24/images/who-dares-wins.jpg\">unlikely triumph</a>.  Nintendo’s dark times were not as bad as Apple’s; the <a href=\"http://en.wikipedia.org/wiki/N64\">N64</a> and <a href=\"http://en.wikipedia.org/wiki/Gamecube\">GameCube</a> were outgunned by the <a href=\"http://en.wikipedia.org/wiki/PlayStation_(console)\">PlayStation</a> and <a href=\"http://en.wikipedia.org/wiki/PlayStation_2\">PlayStation 2</a>, but Nintendo wasn’t days away from bankruptcy at any point, nor did it have to <a href=\"http://en.wikipedia.org/wiki/NeXT#1996:_After_NeXT\">buy another company</a> to save itself.</p>\n\n<p>Now the roles appear reversed.  Apple is in a bit of a slump (or so the <a href=\"http://techcrunch.com/2013/04/23/apple-ceo-tim-cook-we-acknowledge-that-our-growth-rate-has-slowed/\">narrative</a> <a href=\"http://www.google.com/finance?chdnp=1&amp;chdd=1&amp;chds=1&amp;chdv=1&amp;chvs=maximized&amp;chdeh=0&amp;chfdeh=0&amp;chdet=1378136501154&amp;chddm=97750&amp;chls=IntervalBasedLine&amp;q=NASDAQ:AAPL&amp;ntsp=0&amp;ei=q7EkUvCZB5-slgOJnwE\">goes</a>), but it’s a comparatively mild crisis of expectations.  Apple’s products are still in demand and <a href=\"http://www.apple.com/pr/library/2013/07/23Apple-Reports-Third-Quarter-Results.html\">selling in large numbers</a>.  Nintendo, meanwhile, is experiencing one of the most <a href=\"http://kotaku.com/the-wii-u-sales-are-really-really-bad-973133897\">disastrous console launches</a> in its history—and that’s not even the worst news, according to some observers.  It’s the handheld market where <a href=\"http://daringfireball.net/2013/09/nintendo_in_motion\">Nintendo is in the most trouble</a>, <a href=\"https://alpha.app.net/chartier/post/10166007\">they say</a>.</p>\n\n<p>As expected, people who don’t want to live in a world without a successful, thriving Nintendo feel compelled to <a href=\"http://daringfireball.net/2013/09/nintendo_in_motion\">offer their heartfelt suggestions</a> for saving the company.  It’s this same compulsion that has briefly driven me out of my months-long <a href=\"http://www.apple.com/osx/preview/\">Mavericks</a>-review-writing haze to offer my own perspective.</p>\n\n<h2 id=\"schrodingers-console\">Schrödinger’s Console</h2>\n\n<p>I agree that Nintendo is in trouble.  Before considering possible solutions, I’m forced to ask a tougher question: <i>can</i> it be saved?  <a href=\"https://twitter.com/codinghorror/status/374389005304885248\">Some say no</a>, that it’s only a matter of time.  I think it comes down to this.  As long as there continues to be a market for devices that are primarily designed to play games, then it’s possible for Nintendo to live to fight another day.</p>\n\n<p>If not, then I fear the worst.  Nintendo is not equipped to produce and maintain a long-lived, <i>general-purpose</i> software platform.  <a href=\"http://hypercritical.co/2013/03/19/self-reliance\">Precious few</a> companies have ever done it.  You know all their names: Microsoft, Apple, Google.  I don’t expect to ever see Nintendo on that list.</p>\n\n<p>I think there is still a market for game-only (or at least “game-mostly”) hardware products.  I’m not sure how long it will last, but I’m betting this <a href=\"http://hypercritical.co/2013/05/28/next-generation\">upcoming generation of consoles</a> will sell well enough in the aggregate to maintain the status quo, at the very least.</p>\n\n<p>Assuming I’m right, Nintendo has all the tools it needs to pull itself out of its current tailspin.  To understand how, just look at how Nintendo has always done it: with hardware and software working together to provide new, fun experiences.</p>\n\n<h2 id=\"how-nintendo-succeeds\">How Nintendo Succeeds</h2>\n\n<p>The <a href=\"http://en.wikipedia.org/wiki/Nintendo_Entertainment_System\">NES</a> was Nintendo’s first big video game success.  After the <a href=\"http://en.wikipedia.org/wiki/North_American_video_game_crash_of_1983\">game console crash</a> of the 1980s, home video game software alone was not going to lead Nintendo to riches.  Personal computers were still expensive and wouldn’t have mass-market penetration for years.  Any attempt to field an <a href=\"http://en.wikipedia.org/wiki/Atari_2600\">Atari-2600</a>-like hardware product would surely be met with skepticism.</p>\n\n<p>Nintendo’s solution required hardware and software.  The hardware: an Atari-like game console, yes, but also…<a href=\"http://en.wikipedia.org/wiki/R.O.B.\">a robot</a>?  Yep, and a <a href=\"http://en.wikipedia.org/wiki/NES_Zapper\">light gun</a>, too.  Very few games used these accessories, but you can be sure they were featured heavily in all the initial advertising for the NES.  They were hardware decoys, misdirections.  They existed to get the NES into homes.  Once there, a tiny mustachioed trojan <a href=\"http://en.wikipedia.org/wiki/Mario\">plumber</a> spilled out of the belly of the beast and conquered a generation of gamers.</p>\n\n<p>Now consider the <a href=\"http://en.wikipedia.org/wiki/N64\">Nintendo 64</a>, the company’s first 3D console.  The <a href=\"http://en.wikipedia.org/wiki/Sega_Saturn\">Saturn</a> and the <a href=\"http://en.wikipedia.org/wiki/PlayStation_(console)\">PlayStation</a> beat it to market by years, and both had the good sense to use optical disks instead of cartridges.  Though the PlayStation came to dominate that generation, it was the Nintendo that transformed 3D gaming forever with the potent combination of <a href=\"http://en.wikipedia.org/wiki/Super_Mario_64\">Super Mario 64</a> and the <a href=\"http://en.wikipedia.org/wiki/Nintendo_64_controller\">Nintendo 64 controller</a>—hardware and software products that were designed together, and it showed.</p>\n\n<p>Mario 64 taught the world how to make a good 3D game.  Though it couldn’t save the N64 from an ignominious fate in the market, it left its mark on gaming history and perhaps singlehandedly kept Nintendo relevant.  The idea of releasing a 3D gaming system today without a standard <a href=\"http://en.wikipedia.org/wiki/Analog_stick\">analog stick</a> is absurd, but that’s just what Sega and Sony did in 1994.  After the N64 was revealed to the world, analog sticks quickly appeared on both the <a href=\"http://en.wikipedia.org/wiki/Sega_Saturn#3D_Pad\">Saturn</a> and the <a href=\"http://en.wikipedia.org/wiki/Dual_Analog_Controller\">PlayStation</a>—<a href=\"http://en.wikipedia.org/wiki/File:PS1DualAnalogController.jpg\">hastily tacked onto</a> the existing controller, in the latter case, but I’m sure that was only a temporary condition, right?  (<a href=\"http://5by5.tv/hypercritical/49\">Sigh</a>.)</p>\n\n<p>Then there’s the <a href=\"http://en.wikipedia.org/wiki/Wii\">Wii</a>.  Nintendo sacrificed hardware power for a novel input method and low price, then paired it with <a href=\"http://en.wikipedia.org/wiki/Wii_Sports\">software</a> that explained the value proposition to the world.  After two generations of defeat at the hands of Sony, Nintendo put itself back on the top of the game console market.</p>\n\n<p>None of these examples would have been possible if Nintendo didn’t make both the hardware and the software.  And I didn’t even mention the <a href=\"http://en.wikipedia.org/wiki/Game_Boy_line\">Game Boy</a> product line or the dual-screened <a href=\"http://en.wikipedia.org/wiki/Nintendo_DS\">DS</a>, two of the top three <a href=\"http://www.vgchartz.com/analysis/platform_totals/\">best-selling gaming platforms of all time</a>.  Again, impossible without hardware and software synergy.  This is how Nintendo succeeds.</p>\n\n<h2 id=\"red-ocean\"><a href=\"http://en.wikipedia.org/wiki/Blue_Ocean_Strategy#Blue_ocean_strategy_vs._red_ocean_strategy\" style=\"text-decoration: none; color: inherit ! important;\">Red Ocean</a></h2>\n\n<p>When I read the current crop of advice for Nintendo, much of it focused on how to survive in a world where iOS comes to dominate portable gaming, I think about how it would have helped Nintendo at its previous low points.  <a href=\"http://daringfireball.net/2013/09/nintendo_in_motion\">Nintendo should make games for iOS</a>, some say.  If you can’t beat ’em, join ’em.</p>\n\n<p>At the tail end of the GameCube’s life, Sony had sold many times more consoles and games than Nintendo over the course of a decade.  Should Nintendo have started writing games for the overwhelmingly dominant Sony platform? Would that have helped Nintendo achieve Wii-like success?  I don’t think so; no amount of software alone could have done that.</p>\n\n<p>The game software business is tough.  It’s hit-driven, like Hollywood.  Most games lose money or break even.  A few big winners fund all the others—if you’re lucky.  A game development studio going out of business shortly after releasing a critically acclaimed game is not unheard of.  (Hell, <a href=\"http://hypercritical.co/2012/11/27/strange-game\">the best game released last year</a> <a href=\"http://www.destructoid.com/journey-took-thatgamecompany-into-bankruptcy-244311.phtml\">bankrupted its developer</a>.)</p>\n\n<p>Consolidation is rampant in game development.  Small players are routinely snatched up by <a href=\"http://en.wikipedia.org/wiki/Ea\">behemoths</a> that have a better capacity to absorb the inevitable losses that come with games that are not monster sales successes.</p>\n\n<p>This is not a world that Nintendo should aspire to enter.  Better to stick with hardware platforms that it controls, profiting from both the hardware sales and the fees collected from third-party games sold on its platforms.  That’s the kind of steady (and potentially enormous) income that will keep Nintendo afloat as it works on the next big thing.</p>\n\n<h2 id=\"ios-does\">iOS Does What Nintendon’t</h2>\n\n<p>Even if Nintendo sticks to its guns, and even if the market for game-focused hardware continues to exist, Nintendo still faces some big challenges.  A gaming platform doesn’t have to compete with iOS on its own terms, but it does have to at least match it in the areas that are relevant to gaming.</p>\n\n<p>Right now, Apple is crushing Nintendo when it comes to the software purchase, installation, and ownership experience.  Hell, even <a href=\"http://en.wikipedia.org/wiki/Steam_(software)\">Steam</a>—a PC gaming platform—embarrasses Nintendo’s e-commerce efforts.  My Nintendo games should not be tied to a piece of hardware.  My purchases should transfer seamlessly to any new Nintendo device I purchase.  <a href=\"http://www.penny-arcade.com/report/article/nintendo-isnt-losing-to-the-ouyas-high-quality-emulation-of-classic-games-i\">Illegal emulation should not be the easiest way</a> (or only way) to play classic Nintendo games. Nintendo needs to get <a href=\"http://5by5.tv/hypercritical/99\">much, much better</a> at this stuff—fast.</p>\n\n<p>Apple is also winning when it comes to market access.  It’s much easier for a two-person team to write an iOS game and put it up for sale than it is for that same team to get a game onto a Nintendo platform.  Expensive, formal, limited developer access has no place in the modern gaming world.  Nintendo needs to wake up and smell the App Store.</p>\n\n<h2 id=\"lets-a-go\">Let’s-a-Go!</h2>\n\n<p>A lot of things have to go right for Nintendo to get its mojo back.  It’s worth reiterating: if the market for dedicated gaming hardware disappears, I fear it’s game over for Nintendo as we know it.</p>\n\n<p>But if the time of the game console is not yet at an end (handheld or otherwise), then Nintendo has a lot of work to do.  It needs to get better at all of the game-related things that iOS is good at.  It needs to produce software that clearly demonstrates the value of its hardware—or, if that’s not possible, then it needs to make new hardware.</p>\n\n<p>Any advice that leads in a different direction is a distraction.  There’s no point in any plan to “save” Nintendo that fails to preserve what’s best about the company.  Nintendo needs to do what Nintendo does best: create amazing combinations of hardware and software.  That’s what has saved the company in the past, and it’s the only thing that will ensure its future.</p>",-         "date_modified" : "2013-09-02T20:25:58-04:00"-      },-      {-         "author" : {-            "name" : "John Siracusa",-            "url" : "http://hypercritical.co"-         },-         "date_published" : "2013-06-20T20:53:53-04:00",-         "date_modified" : "2013-06-20T20:53:53-04:00",-         "content_html" : "<div class=\"image header\"><a href=\"http://teespring.com/hypercritical-2\"><img src=\"/2013/06/21/images/hypercritical-t-shirts.jpg\" width=\"640\" height=\"409\" alt=\"Hypercritical T-Shirts 2.0\"/></a><div class=\"caption\">Hypercritical t-shirts 2.0, clockwise from the top-left: Silver, Gold, Black, and Navy.</div></div>\n\n<p>Let's try this <a href=\"http://hypercritical.co/2013/05/06/hypercritical-t-shirts\">again</a>.  Last month, inspired by <a href=\"http://www.marco.org/2013/05/03/tshirt\">Marco</a> and bolstered by the drop-dead-simple <a href=\"http://teespring.com/\">Teespring</a> website, I put the first Hypercritical t-shirt up for sale.  The response from fans was amazing, vastly exceeding my expectations.  Unfortunately, that sale was aborted due to my unauthorized use of copyrighted artwork.  All orders were refunded and no t-shirts were printed.</p>\n\n<p>Now the Hypercritical t-shirt is back, with a new design.  At a glance, it may look exactly like <a href=\"http://hypercritical.co/2013/05/06/hypercritical-t-shirts\">the previous shirt</a>, but this version features new artwork.  (It's the same image that appears next to this site's title and as its <a href=\"http://en.wikipedia.org/wiki/Favicon\">favicon</a>.)</p>\n\n<p>Everything else is the same as last time: the shirt is available in men's and women's styles and in four colors.  Teespring requires two separate pages for the two different ink colors used on the light and dark shirt.  Here are the links:\n\n<ul>\n<li> <a href=\"http://teespring.com/hypercritical-2\">Hypercritical: The Shirt 2.0</a> - Silver and Gold</li>\n<li> <a href=\"http://teespring.com/hypercritical-2-dark\">Hypercritical: The Shirt 2.0 (Dark)</a> - Navy and Black</li>\n</ul>\n\n<p>Once again, my sincere thanks to everyone who has purchased a shirt, past and present, and to all the people who continue to read this site.</p>",-         "title" : "Hypercritical T-Shirts 2.0",-         "id" : "http://hypercritical.co/2013/06/20/hypercritical-t-shirts-2",-         "url" : "http://hypercritical.co/2013/06/20/hypercritical-t-shirts-2"-      },-      {-         "id" : "http://hypercritical.co/2013/05/28/next-generation",-         "url" : "http://hypercritical.co/2013/05/28/next-generation",-         "title" : "Next Generation",-         "date_modified" : "2013-05-28T14:14:07-04:00",-         "content_html" : "<div class=\"image header\"><img src=\"/2013/05/28/images/xbox-one.jpg\" width=\"640\" height=\"136\" alt=\"The Xbox One\"/></div>\n\n<p>Now that the <a href=\"http://www.xbox.com/en-US/xboxone/\">Xbox One</a> has been <a href=\"http://www.ign.com/articles/2013/05/08/watch-the-xbox-reveal-event-live-on-ign\">revealed</a>, joining the already-released <a href=\"http://www.nintendo.com/wiiu/\">Wii U</a> and the <a href=\"http://www.youtube.com/watch?v=RiNGZMx2vhY\">previously announced</a> <a href=\"http://playstation.com/ps4/\">PlayStation 4</a>, we can finally get a sense of what the next generation of game consoles will look like.</p>\n\n<p>This used to be a simple business.  Cutthroat and fiercely competitive, yes, but at least all the players were racing for the same prize. Every handful of years, we’d get a new crop of consoles, each claiming to be the <a href=\"http://www.youtube.com/watch?v=zlulSyBI2aY\">most powerful</a> and to have the <a href=\"http://www.youtube.com/watch?v=w4ApVuNnmaM\">best games</a>.</p>\n\n<p>Seven years ago, after being outsold by Sony in the <a href=\"http://en.wikipedia.org/wiki/History_of_video_game_consoles_(fifth_generation)\">two</a> <a href=\"http://en.wikipedia.org/wiki/History_of_video_game_consoles_(sixth_generation)\">previous</a> console generations, Nintendo broke from the pack and <a href=\"http://en.wikipedia.org/wiki/Blue_Ocean_Strategy\">went after a new market</a>: people who were not interested in—or were too intimidated by—traditional game consoles.</p>\n\n<p>The Wii was startlingly less powerful than the other consoles in its generation.  This helped make it the least expensive and the smallest, which only increased its appeal to non-gamers.  The coup de grâce was the Wii’s novel control scheme, which let your dad, who couldn’t get past <a href=\"http://www.mariowiki.com/World_1-1_(Super_Mario_Bros.)\">World 1-1</a> back in the 80s, make an improbable transformation into <a href=\"http://www.youtube.com/watch?v=iYtVHHM2Fl0\">a hardcore gamer…of a sort</a>.</p>\n\n<p>And if the idea of “<a href=\"http://en.wikipedia.org/wiki/History_of_video_game_consoles_(seventh_generation)#Sales_standings\">winning</a>” a console generation with laughably underpowered hardware wasn’t enough, the Wii and its contemporaries also put an end to the idea of a game console that just plays games.  Just a few years after launch, all of the consoles—even the dainty, <a href=\"http://en.wikipedia.org/wiki/Standard-definition_television\">standard-definition</a> Wii—supported some kind of social networking, photo viewing, and one or more video streaming services.</p>\n\n<p>Arguably, this movement started to gain momentum with the original PlayStation’s ability to play music CDs, and continued with the PlayStation 2’s secondary role as a DVD player.  But the Wii, PS3, and Xbox 360 definitively moved the entire product category beyond gaming.  In fact, the PlayStation 3 ended up as <a href=\"http://blog.us.playstation.com/2012/12/04/ps3-is-1-for-netflix-streaming-in-the-living-room/\">the most popular way to view Netflix on a TV</a>.</p>\n\n<p>This was all a natural consequence of the decreased cost of storage and <a href=\"http://www.anandtech.com/show/6253/intel-by-2020-the-size-of-meaningful-compute-approaches-zero\">computation</a> combined with the ubiquity of wireless networking.  It was inevitable that any TV-connected box would eventually support these features.  But it also means the Xbox One, PlayStation 4, and Wii U lack the clarity of purpose enjoyed by the previous generations of game consoles.  Here’s how things look to me at the dawn of the next generation.</p>\n\n<h2>Wii U</h2>\n\n<p>Stop me if you’ve heard this one before.  The Wii U is dramatically less powerful than the Xbox One and PlayStation 4.  In place of hardware power, Nintendo is offering an unconventional multi-screen gaming experience using a <a href=\"http://en.wikipedia.org/wiki/Wii_U_GamePad\">tablet-style controller</a>.  Although pricing has not been announced for its competitors, there’s a reasonable chance the Wii U will end up being the least expensive console in this generation.</p>\n\n<p>It sure looks like the Wii formula all over again, but there’s a difference this time.  The Wii U’s <a href=\"http://en.wikipedia.org/wiki/Wii_U_GamePad\">GamePad controller</a> is significantly more intimidating to non-gamers than the familiar-looking <a href=\"http://en.wikipedia.org/wiki/Wii_Remote\">Wii remote</a>.  Wii accessories (and games) also work with the Wii U, which is nice, but the GamePad is the face of the new system to consumers.  For former Wii buyers who are intimidated by the GamePad, Wii hardware and software compatibility may only make them further question what the new system really offers beyond the Wii.  And though the Wii U expands on the Wii’s non-gaming features, its <a href=\"http://www.ign.com/articles/2012/12/21/nintendo-tvii-for-wii-u-hands-on\">TV integration</a> feels half-hearted and has thus far <a href=\"http://www.digitaltrends.com/gaming/nintendo-tvii-review-a-great-idea-that-simply-doesnt-work-yet/\">failed to impress</a>.</p>\n\n<p>The end result has been <a href=\"http://www.gamasutra.com/view/news/186734/January_sales_show_continued_rough_tides_for_the_Wii_U.php\">dismal Wii U sales</a> coming out of the 2012 holiday season.  Nintendo’s <a href=\"http://www.japantimes.co.jp/news/2013/05/06/business/nintendo-taps-smartphone-apps-for-console-boost/\">rumored consideration</a> of allowing smartphone apps to run on the Wii U seems uncharacteristically desperate.</p>\n\n<p>Thanks to the novelty and accessibility of the Wii remote and the universal appeal of launch titles like <a href=\"http://en.wikipedia.org/wiki/Wii_Sports\">Wii Sports</a>, the Wii sold in such huge numbers that third-party developers couldn’t afford to ignore it.  They dutifully cut down the features and graphics quality of their most popular games to get them to run on the Wii.  These games were often terrible, but at least they existed, giving the Wii’s game library “checkbox parity” with the rest of the market.</p>\n\n<p>Like the Wii, the Wii U is <a href=\"http://www.engadget.com/2013/05/08/ea-frostbite-nintendo-wii-u/\">not powerful enough</a> to run the same games as its competitors.  Unlike the Wii, the Wii U’s sales numbers aren’t high enough to motivate cut-down ports of new games.  That leaves the Wii U with Nintendo’s franchise titles (many of which are not yet available), a <a href=\"http://en.wikipedia.org/wiki/ZombiU\">scant</a> <a href=\"http://en.wikipedia.org/wiki/Lego_City_Undercover\">few</a> Wii U <a href=\"http://en.wikipedia.org/wiki/Bayonetta_2\">exclusives</a> from third-party developers, and several ports of <a href=\"http://en.wikipedia.org/wiki/Mass_Effect_3\"><i>previous</i>-generation</a> <a href=\"http://en.wikipedia.org/wiki/Deus_Ex:_Human_Revolution\">games</a> that Nintendo’s new hardware is finally able to run.</p>\n\n<p>It’s still <a href=\"http://www.nintendolife.com/news/2013/05/consumers_go_crazy_for_wii_u_following_xbox_one_reveal\">too early</a> to call this race, but the Wii U certainly looks like it’s in trouble.  It may be that Nintendo has just built the wrong machine.  For the most part, the Wii succeeded <i>despite</i> its underpowered hardware, not because of it.  Choosing to produce another “next-generation” console with previous-generation power isolates Nintendo.</p>\n\n<p>New multi-platform titles can easily target the Xbox One, the PlayStation 4, and the PC simultaneously.  The Wii U isn’t even in the running—unless it sells so well that a hobbled port is justified.  The same goes for exclusives built around the Wii U’s unique features.  No third-party developer wants to invest in a game that can only ever be sold on a single platform with a tiny installed base.</p>\n\n<p>I own a Wii U, and I’m <a href=\"http://nintendoland.nintendo.com\">convinced</a> that it really does offer new, fun gaming experiences not available on any other platform.  I’m also a <a href=\"http://hypercritical.co/2013/01/25/we-can-remember-it-for-you-wholesale\">diehard</a> fan of several of Nintendo’s <a href=\"http://mario.nintendo.com\">popular</a> <a href=\"http://www.zelda.com\">franchises</a>.  But I’m not the kind of customer that carried the Wii to head of the class in the previous generation.  I’m the kind that would gladly pay twice the price of a Wii U for the ability to play a Zelda game on a console with the power of the PlayStation 4.  The Wii U is not built for me.  Whatever kind of customer it is built for, there sure don’t seem to be many of them.</p>\n\n<h2>PlayStation 4</h2>\n\n<p>Sony is the reigning king of overblown hardware hype, famously promising that the PS2’s <a href=\"http://en.wikipedia.org/wiki/Emotion_Engine\">emotion engine</a> and the PS3’s <a href=\"http://en.wikipedia.org/wiki/Cell_(microprocessor)\">Cell processor</a> would change the face of computing forever.  And maybe they did, in <a href=\"http://www.youtube.com/watch?v=8cG2D5xv0T4\">a tiny way</a>.  But their power was notoriously difficult to unlock.  They became the standard-bearers for the gaming version of the <a href=\"http://en.wikipedia.org/wiki/May_you_live_in_interesting_times\">ancient Chinese proverb</a>: “May you develop for interesting hardware.”</p>\n\n<p>Hardware eccentricity has been part and parcel of console development for decades.  And the weirder the hardware, the more likely it is that a straightforward implementation of a game engine will run up against bottlenecks.  The developer laments are familiar.  “If only there were more bandwidth between the CPU and main memory.”  “If only I had just 10% more RAM.”  “If only this console had a much more powerful programmable GPU instead of a <a href=\"http://en.wikipedia.org/wiki/Cell_(microprocessor)#Element_Interconnect_Bus_.28EIB.29\">ring bus</a> studded with <a href=\"http://en.wikipedia.org/wiki/Cell_(microprocessor)#Synergistic_Processing_Elements_.28SPE.29\">custom SIMD processors</a>, each with its own tiny local storage.”</p>\n\n<p>The PlayStation 4 aims to repent for the sins of both its father and grandfather—and then some.  Unlike its predecessors, it was designed in close cooperation with game developers.  During the design process, new revisions of the PS4 architecture were presented to developers along with a challenge: find the bottleneck.  Every aspect of the system was put through a similar gauntlet, from the shape and travel of the controller triggers to the accuracy of the gyroscopes.</p>\n\n<p>All game consoles go through some version of this process, but the PlayStation 4 is defined by it.  The hubris of the PS2 and PS3 is nowhere to be found in the PS4.  This is a product of a newly humbled and rededicated Sony.</p>\n\n<p>And the thing that Sony is rededicated to is <i>gaming</i>, plain and simple.  Sony was the first console maker to really push the idea of a gaming system that does much more than just play games, but now it’s returning to its roots.</p>\n\n<p>The PlayStation 4 is exactly the sort of thing that a hardcore gamer might have envisioned if presented with the product name back in the days when the original PlayStation reigned supreme.  It’s got more of everything, and the vast majority of its resources are bent towards being the best system for developing and playing games.  In this generation of consoles, that’s actually a radical notion.</p>\n\n<h2>Xbox One</h2>\n\n<p>The final entrant in this round of the console wars is the most ambitious.  No longer content to walk the old paths blazed by Nintendo, Sega, and Sony, Microsoft is finally making its play for the entire living room.</p>\n\n<p>Take a peek at the back of the box—a box that looks for all the world like <a href=\"http://news.xbox.com/media?sc_device=lightbox&amp;mediaid=%7B3A902CE6-E7C6-49B6-8D48-9594B8D59E7F%7D\">a futuristic VCR</a>—and you’ll find the hardware incarnation of this ambition: an HDMI <i>input</i>.  Any form of entertainment that does not spring from the Xbox One is invited to at least flow through it, to be mediated and controlled by it.  It’s all right there in the name: One box to rule them all.</p>\n\n<p>The <a href=\"http://www.gamespot.com/features/the-xbox-one-revealed-6408247/\">Xbox One announcement</a> was unabashedly <a href=\"http://www.youtube.com/watch?v=KbWgUO-Rqcw\">focused</a> on everything <i>but</i> games.  Microsoft promised more at <a href=\"http://en.wikipedia.org/wiki/Electronic_Entertainment_Expo\">E3</a>, relying on the substantial goodwill it’s earned with gamers over the past decade to stave off any anxiety about the One’s gaming bona fides.</p>\n\n<p>Indeed, at first glance, the core hardware architecture looks nearly identical to the PS4.  But <a href=\"http://www.anandtech.com/show/6972/xbox-one-hardware-compared-to-playstation-4\">a closer look</a> reveals a system designed to accommodate a much broader vision of home entertainment.</p>\n\n<p>Where the PS4 uses high-speed <a href=\"http://en.wikipedia.org/wiki/GDDR5\">GDDR5</a> RAM, the Xbox One opts for <a href=\"http://www.anandtech.com/show/6972/xbox-one-hardware-compared-to-playstation-4/2\">slower</a>—but also less power-hungry—<a href=\"http://en.wikipedia.org/wiki/DDR3_SDRAM\">DDR3</a>.  And in the Xbox, that RAM is shared between two separate operating systems running simultaneously: one for games, and one for everything else.</p>\n\n<p>These hardware features express two very different usage models.  The PS4 expects to be turned on when in use, then turned “off” afterwards, entering a super-low-power mode during which a tiny auxiliary processor handles housecleaning chores like downloading game content and applying software updates.</p>\n\n<p>The Xbox One, with its HDMI input and non-game-related OS and apps, expects to be fully powered whenever the television is on.  Thus, Microsoft’s focus on idle power consumption—even at the cost of gaming performance.</p>\n\n<p>To mitigate this disadvantage, the Xbox One includes 32MB of low-latency embedded <a href=\"http://en.wikipedia.org/wiki/Static_random-access_memory\">SRAM</a> right on the <a href=\"http://en.wikipedia.org/wiki/System_on_a_chip\">SoC</a>.  This is a common technique, but it leads to increased complexity.  Game developers must now take care to ensure that the right data is in the tiny local eSRAM pool exactly when it’s needed.  A single pool of uniformly fast memory (albeit with higher latency), as in the PS4, is a much simpler arrangement.  Different priorities, different trade-offs.</p>\n\n<p>(The eSRAM also consumes die space, which, along with power consumption and cost, may have contributed to Microsoft's decision to give the Xbox One <a href=\"http://www.anandtech.com/show/6972/xbox-one-hardware-compared-to-playstation-4/2\">33% fewer GPU cores</a> than the PS4.)</p>\n\n<p>Then there’s the Xbox One’s companion hardware, the next iteration of Microsoft’s <a href=\"http://en.wikipedia.org/wiki/Kinect\">Kinect</a> motion control system.  The first version of this technology, released as an add-on for the Xbox 360, was the <a href=\"http://tvtropes.org/pmwiki/pmwiki.php/Main/DancingBear\">proverbial dancing bear</a>: it didn’t work well, but it was amazing that it worked at all.</p>\n\n<p>The new incarnation comes bundled with every Xbox One, and it dances like a furry Fred Astaire.  It surpasses its predecessor by many multiples in every specification: <a href=\"http://www.theverge.com/2013/5/21/4353232/kinect-xbox-one-hands-on\">resolution, depth perception, motion tracking, latency, noise cancellation, local computation</a>.  This technology is no joke.</p>\n\n<p>But does it make games more fun?  Or, failing that, is it a better way to control a television than a remote control?  Microsoft is betting a lot, in terms of both hardware cost and software support, that the new Kinect will be an essential component of at least one of these activities in a way that the first Kinect was not.</p>\n\n<p>When I’m feeling optimistic about the Kinect, I think back to the many generations of terrible touch-screen devices that preceded the iPhone.  The history of touch-based interfaces on consumer electronics wasn’t a gradual ramp up to acceptable quality.  The iPhone wasn’t just the next iteration; it was a discontinuity.  Once the technology passed some critical threshold of responsiveness and reliability, it went from a nerdy curiosity to completely mainstream in the blink of an eye.</p>\n\n<p>I don’t know where that threshold is for multi-sensor full-body motion control and voice recognition, but I do believe it’s out there.  Microsoft does too.  Of course, that belief will be of little consolation to Xbox One owners if the “iPhone moment” is still many years in the future.</p>\n\n<h2>Forward-Looking Statements</h2>\n\n<p>Last generation, Nintendo did something crazy—and it worked.  This generation, everyone is taking big risks.</p>\n\n<p>Nintendo tried to play the same hand that it won with in the last round, but now finds itself stranded with previous-generation hardware in a next-generation market.  Like Apple in the 90s, Nintendo is a sentimental favorite.  But it took more than just the iMac and the iPod to transform Apple.  The Wii U still has the potential to be an excellent platform for Nintendo’s beloved first-party games, and a low-cost alternative to the PS4 and Xbox One.  Nintendo should <a href=\"http://www.wired.com/gadgets/mac/commentary/cultofmac/2006/03/70512?currentPage=all\">milk it for all it’s worth</a>, and get busy on the next great thing.</p>\n\n<p>Sony is betting that the market for game consoles made by and for hardcore gamers has not yet peaked.  If it’s right, Sony is well-positioned to dominate this generation.  If it’s wrong, the PS4 could be Sony’s <a href=\"http://en.wikipedia.org/wiki/Spruce_Goose\" title=\"Way of the Future\">Spruce Goose</a>: the ne plus ultra of game consoles, remembered in equal parts as a technical marvel and a cautionary tale.</p>\n\n<p>Finally, there’s Microsoft, offering us a brief glimpse of the boundless hunger that once defined the company.  But as Microsoft knows <a href=\"http://en.wikipedia.org/wiki/Microsoft_TV\">all too well</a>, the living room is littered with the bones of past suitors.</p>\n\n<p>I applaud the technical prowess of the Xbox One’s software, particularly the focus on responsiveness.  The <a href=\"http://www.gamespot.com/features/the-xbox-one-revealed-6408247/\">demonstrated</a> performance when switching between live TV, gaming, and other apps puts all <a href=\"http://hypercritical.co/2013/01/07/ces-worse-products-through-software\">previous efforts</a> at “smart” TV interfaces to shame.</p>\n\n<p>That said, I seriously question the public’s appetite for displaying any additional content alongside a TV show or movie.  The “second screen” experience is already well established, and it happens with a device that’s in your hand or on your lap.  Grabbing one third of a large, communal TV screen to look up an actor on <a href=\"http://www.imdb.com/\">IMDB</a> isn’t just unappealing and cumbersome, it’s downright rude.</p>\n\n<p>There are other contexts where the Xbox One’s unique abilities might shine: jumping in and out of a game to check a sports score, for example, or quickly hitting the web to watch an extended version of an interview after finishing an episode of <a href=\"http://www.thedailyshow.com\">The Daily Show</a>.  Yes, I can see that.</p>\n\n<p>But will it be enough to crown the Xbox One the king of the living room?  As with all TV-connected devices, content is the key.  The Xbox One has games, live TV, and video streaming services covered, but it appears to lack any form of time-shifting functionality.  Given how much popular content remains locked up in broadcast and cable TV packages, there’s no way any box without DVR-like functionality can ever be the One True Interface to “watching television.”</p>\n\n<p>Luckily for all three companies, things change quickly in this industry.  If a critical mass of programming becomes available on streaming services a few years down the road, the Xbox One could finally fulfill its destiny.</p>\n\n<p>On the other hand, Microsoft’s new focus could be a giant turn-off to gamers who were expecting an “Xbox 720,” not a Kinect-powered “media center.”  However brief and anecdotal it may be, a <a href=\"http://www.nintendolife.com/news/2013/05/consumers_go_crazy_for_wii_u_following_xbox_one_reveal\">Wii U sales spike</a> accompanying the Xbox One announcement has to have Microsoft at least a bit worried.  If the gamers who bought the Xbox 360 don’t show up in the expected numbers to buy the Xbox One, I have a hard time believing this monstrous, sensor-festooned device will pull a Wii and capture the imaginations—and dollars—of non-gamers on a grand scale.</p>\n\n<p>No matter what happens, I <a href=\"http://www.youtube.com/watch?v=GgSa8Ca3iKs\">don't envision</a> a future where the market is evenly divided between these three very different products.  Game on.</p>\n\n<hr/>\n\n<p><small>If you’d like to hear an expanded audio discussion of these topics, including my take on the TV-related efforts of Apple and Google, check out <a href=\"http://www.imore.com/ad-hoc-03-xbox-one-and-state-living-room\">episode 3 of the Ad Hoc podcast</a> with <a href=\"https://twitter.com/gte\">Guy English</a> and <a href=\"https://twitter.com/reneritchie\">Rene Ritchie</a>.</small></p>",-         "date_published" : "2013-05-28T10:50:33-04:00",-         "author" : {-            "url" : "http://hypercritical.co",-            "name" : "John Siracusa"-         }-      },-      {-         "date_published" : "2013-05-06T08:31:32-04:00",-         "author" : {-            "url" : "http://hypercritical.co",-            "name" : "John Siracusa"-         },-         "id" : "http://hypercritical.co/2013/05/06/hypercritical-t-shirts",-         "url" : "http://hypercritical.co/2013/05/06/hypercritical-t-shirts",-         "title" : "Hypercritical T-Shirts",-         "date_modified" : "2013-05-14T14:42:00-04:00",-         "content_html" : "<div class=\"image header\"><a href=\"http://teespring.com/hypercritical\"><img src=\"/2013/05/06/images/hypercritical-t-shirts.jpg\" width=\"640\" height=\"409\" alt=\"\"/></a><div class=\"caption\">Hypercritical t-shirts, clockwise from the top-left: Silver, Gold, Black, and Navy.</div></div>\n\n<p><b>Update - May 14, 2013:</b> I regret to report that the Hypercritical t-shirt has been canceled due to the unauthorized use of an icon from a past version of the Macintosh operating system.  All purchases will be refunded in full.  This situation is entirely my fault. I'm sorry for disappointing everyone.  Thanks to all of you for your support.</p>\n\n<p>(My original post about t-shirts appears below, for historical purposes.)</p>\n\n<hr>\n\n<p>I’ve wanted to create a Hypercritical t-shirt for a while now.  When I saw that my friend and <a href=\"http://atp.fm\">podcast co-host</a> Marco Arment had created <a href=\"http://www.marco.org/2013/05/03/tshirt\">a t-shirt for Marco.org</a> using a new <a href=\"http://www.kickstarter.com\">Kickstarter</a>-like website called <a href=\"http://teespring.com\">Teespring</a>, I was intrigued.  When I looked at the shipping dates for Marco’s shirt, I realized that it was now or never if I wanted to get Hypercritical shirts into people’s hands in time for <a href=\"https://developer.apple.com/wwdc/\">WWDC</a>.</p>\n\n<p>The <a href=\"http://teespring.com\">Teespring website</a> made it incredibly easy to get a shirt up for sale.  In hindsight, doing this in the middle of the night on a Friday was perhaps not the best idea, but that’s what I did.  In less than 30 minutes, I’d created the artwork, uploaded it, and started the sale.  The rest of the weekend was a bit of a blur.  I worked with the Teespring staff (and <a href=\"https://twitter.com/siracusa/status/330710221087465472\">people on Twitter</a>) to improve the artwork I’d created in haste, and to make more colors and styles available.</p>\n\n<p>Teespring is <a href=\"http://www.forbes.com/sites/alextaub/2013/01/03/teespring-is-this-rhode-island-based-startup-the-future-of-custom-apparel/\">a relatively young company</a>, and the user-facing interface on the site doesn’t yet support adding multiple colors and styles.  The Teespring staff made all these changes for me behind the scenes—on a weekend.  The site’s limitations still necessitated the creation of two separate t-shirt “campaigns” for the two different ink colors used on the <a href=\"http://teespring.com/hypercritical-dark\">dark</a> and <a href=\"http://teespring.com/hypercritical\">light</a> shirts.</p>\n\n<p>If you follow <a href=\"http://twitter.com/hypercritical\">@hypercritical</a> or <a href=\"http://twitter.com/siracusa\">@siracusa</a> on Twitter and were online this weekend, this is all probably old news to you.  My dual t-shirt sales have already far surpassed their goals, thanks to the amazing response of my Twitter followers.</p>\n\n<p>If you’d like to support my writing on this site, the t-shirt sale will continue until May 14th.  According to <a href=\"http://teespring.com/about/shipping\">Teespring's shipping estimates</a>, all orders should arrive by June 4th at the latest, including international orders.  Here are the two links for the dark and light t-shirt sales:</p>\n\n<ul>\n<li> <a href=\"http://teespring.com/hypercritical\">Hypercritical: The Shirt</a> - Silver and Gold</li>\n<li> <a href=\"http://teespring.com/hypercritical-dark\">Hypercritical: The Shirt (Dark)</a> - Navy and Black</li>\n</ul>\n\n<p>My sincere thanks to everyone who has already purchased a shirt, and to all the people who continue to read this site.</p>"-      },-      {-         "author" : {-            "name" : "John Siracusa",-            "url" : "http://hypercritical.co"-         },-         "date_published" : "2013-05-03T21:59:48-04:00",-         "content_html" : "<div class=\"image header\"><img src=\"/2013/05/03/images/macbook-air.jpg\" width=\"640\" height=\"125\" alt=\"MacBook Air\"/></div>\n\n<p>The prevailing wisdom about software design at Apple is that the pendulum has swung too far in the direction of simulated real-world materials, slavish imitation of physical devices, and other <a href=\"http://arstechnica.com/apple/2011/07/mac-os-x-10-7/5/#crazy-ones\">skeuomorphic</a> design elements, producing a recent crop of applications that suffer from an <a href=\"http://arstechnica.com/apple/2011/07/mac-os-x-10-7/5/#address-book\">uncomfortable tension</a> between the visual design of the software and its usability and features.  After the <a href=\"http://www.apple.com/pr/library/2012/10/29Apple-Announces-Changes-to-Increase-Collaboration-Across-Hardware-Software-Services.html\">executive reshuffle</a> six months ago, we Apple fans have been hoping that <a href=\"http://www.apple.com/pr/bios/jonathan-ive.html\">Jony Ive</a>, now in charge of Human Interface for both hardware and software, will end this destructive conflict and bring order to the galaxy.</p>\n\n<p>With iOS 7 and OS X 10.9 <a href=\"https://developer.apple.com/wwdc/\">looming</a>, we’re left to wonder exactly what kind of software designer Ive will turn out to be.  Certainly, Apple’s software has been influenced by Ive’s hardware designs in the past—and perhaps vice versa—but this will be the first time Ive is officially in charge of the virtual bits as well as the physical ones.</p>\n\n<p>We may not have much to go on when predicting Ive’s software tastes, but we do know a heck of a lot about his opinions on hardware design.  Though Ive has historically spent his time at Apple keynotes in the audience rather than on the stage, he’s starred in many, many videos wherein he explains why Apple’s great new hardware product looks and works the way it does.  In these videos, his message has been remarkably consistent.</p>\n\n<p>Ive demands that the hardware be true to itself—its purpose, its materials, the way it looks, and the way it feels.  Here’s a quote from one of Ive’s rare <a href=\"http://www.youtube.com/watch?v=YdVG4LcoY4Y&amp;t=81\">appearances</a> outside an Apple press event, talking about hardware design at Apple.</p>\n\n<blockquote>\n<p>When we’re designing a product, we have to look to different attributes of the product. Some of those attributes will be the materials that it’s made from and the form that’s connected to those materials.  So for example, with the first iMac that we made, the primary component of that was the cathode ray tube, which was spherical. We would have an entirely different approach to designing something like that than the current iMac, which is a very thin, flat-panel display. […]</p>\n\n<p>A lot of what we seem to be doing in a product like [the iPhone] is actually getting design out of the way. And I think when forms develop with that sort of reason, and they’re not just arbitrary shapes, it feels almost inevitable. It feels almost undesigned. It feels almost like, well, of course it’s that way. You know, why wouldn’t it be any other way?</p>\n</blockquote>\n\n<p>Steve Jobs also subscribed to this philosophy.  Witness <a href=\"http://www.youtube.com/watch?v=qt2VsaEJ9so&amp;t=5433\">his explanation</a> of the design of <a href=\"http://en.wikipedia.org/wiki/IMac_G4\">the first iMac with an LCD display</a> at Macworld New York in 2002.  Here’s how Jobs described Apple’s solution to the inherent compromises (in 2002 technology) of putting an optical drive in a vertical orientation and trying to pack an entire computer behind an LCD display.</p>\n\n<blockquote><p>The big ideas was, that rather than glom these things all together and ruin them all—a lower-performance computer and a flat screen that isn’t flat anymore—why don’t we let each element be true to itself?  If the screen is flat, let it be flat.  If the computer wants to be horizontal, let it be horizontal.</p></blockquote>\n\n<p>It’s interesting that Jobs and Ive saw eye to eye on hardware design and yet seemed far apart, at least in Jobs’s final years, when it comes to software design.  While Jobs was <a href=\"http://www.fastcodesign.com/1670760/will-apples-tacky-software-design-philosophy-cause-a-revolt\">reportedly</a> a champion of <a href=\"http://arstechnica.com/apple/2011/07/mac-os-x-10-7/5/#ical\">rich Corinthian leather</a>, Ive could only wince when <a href=\"http://www.telegraph.co.uk/technology/apple/9283706/Jonathan-Ive-interview-simplicity-isnt-simple.html\">asked about it in an interview</a>.</p>\n\n<p>I’m confident that we’ll see less leather, wood, felt, and <a href=\"http://thenextweb.com/apple/2013/03/21/apple-updates-podcasts-app-with-custom-stations-on-the-go-playlists-and-less-skeuomorphic-design/\">animated reel-to-reel tapes</a> in Apple’s future software products, but the question remains: what does it mean for an application or an OS to be true to itself?</p>\n\n<p>I’m not sure how Ive will express that concept, but <a href=\"https://twitter.com/lorenb\">Loren Brichter</a>, creator of <a href=\"http://en.wikipedia.org/wiki/Tweetie\">Tweetie</a> and <a href=\"http://www.atebits.com/letterpress/\">Letterpress</a>, offers one possible interpretation on <a href=\"http://www.imore.com/loren-brichter-talks-opengl-tweetie-letterpress-and-future-interface\">an episode of the Debug podcast</a> (starting at 6:10, and again at 1:02:26, specifically mentioning Ive).  Letterpress is an exemplar of the so-called “<a href=\"http://pinterest.com/warmarc/flat-ui-design/\">flat design</a>” aesthetic (and it’s also currently featured on <a href=\"http://www.apple.com\">the front page of Apple.com</a>).  Brichter designed the look and feel of Letterpress based on the things that modern graphics hardware is naturally good at doing: drawing and manipulating flat planes of mostly solid colors.</p>\n\n<p>A design philosophy so tightly linked to nitty-gritty details of silicon chips and OpenGL APIs is unlikely to resonate with Ive as much as it does with a programmer like Brichter, but the end results may be similar.  I expect Ive to focus on harmony between the look and feel of the software, the materials and finish of the hardware, and most importantly, the intended purpose of each specific application.  (It’s kind of a shame that Apple’s <a href=\"http://en.wikipedia.org/wiki/Mac_OS_7.6#Mac_OS_7.6\">already used</a> the “Harmony” code name.)  This is my message to Jony Ive and and my hope for iOS 7, OS X 10.9, and each bundled application: to thine own self be true.</p>",-         "date_modified" : "2013-05-07T11:14:34-04:00",-         "title" : "Beauty, Truth, and Jony Ive",-         "id" : "http://hypercritical.co/2013/05/03/beauty-truth-and-jony-ive",-         "url" : "http://hypercritical.co/2013/05/03/beauty-truth-and-jony-ive"-      },-      {-         "title" : "The Lottery",-         "url" : "http://hypercritical.co/2013/04/26/the-lottery",-         "id" : "http://hypercritical.co/2013/04/26/the-lottery",-         "date_modified" : "2013-04-26T10:15:36-04:00",-         "content_html" : "<p>In a <a href=\"http://atp.fm/episodes/10-gradual-ramp-up-to-nothing\">recent podcast</a>, I rejected the idea of a lottery system for selling <a href=\"http://developer.apple.com/wwdc/\">WWDC</a> tickets as too random.  I wanted to preserve at least some aspect of the process that rewarded the most enthusiastic Apple fans: the people who are willing to be roused from bed at 2 a.m. and rush to their computers to buy tickets; <a href=\"http://www.youtube.com/watch?v=dX9GTUMh490\">the crazy ones</a>; the people who just want it more.</p>\n\n<p>After yesterday’s experience of watching WWDC tickets sell out in what I measured to be less than 2 minutes, I’ve changed my mind.  If the tickets had sold out in, say, 10 minutes (and assuming no server errors—more on that in a moment), then dedicated buyers would have been rewarded.  If you couldn’t be bothered to be online until more than 10 minutes after the tickets went on sale, well, tough luck.  Someone else wanted it more.</p>\n\n<p>But tickets selling out in less than 2 minutes does not reward anyone’s dedication.  We were all online at 10 a.m. PDT sharp, all ready to purchase, all equally dedicated.  It was a de facto lottery, with an extra layer of pointless stress added on top.</p>\n\n<p>Apple’s servers performed admirably…for about the first 5 seconds after tickets went on sale.  After that, it was a crapshoot.  Even if the tickets had sold out in an hour, it’d still effectively be a lottery if that hour was filled with server errors.  You’d “win” if you happened to get through the purchase process with no errors.</p>\n\n<p>An actual lottery, pre-announced, with no time pressure for entry, would be more equitable than what happened yesterday.  That’s what I recommend for next year.</p>\n\n<h2>The Heart of the Matter</h2>\n\n<p>Many more people want to attend WWDC than the conference can accommodate.  There has been no shortage of <a href=\"http://bitsplitting.org/2013/04/25/end-wwdc/\">interesting suggestions</a> for how to fix this.  Broadly speaking, WWDC has not changed in decades. Apple and its developer ecosystem, on the other hand, are radically different than they were just five years ago.  Something has to give.</p>\n\n<p>I’ve heard many non-developers discuss the rush to get WWDC tickets as if the big draw is the keynote presentation, where Apple typically reveals new products.  That is the most interesting part of the conference for the public, but it’s not why WWDC sells out so fast.</p>\n\n<p>Developers flock to WWDC because it’s a rare opportunity to communicate with Apple directly, human to human.  The best way to decrease the demand for WWDC tickets is for Apple to increase its communication with developers throughout the year.  And by communication I don’t mean throwing documentation or even video presentations over the wall to developers; I mean staffing up for more real, personal, timely, <i>informal</i> contact with developers outside the court-like atmosphere of the App Store review process or the artificial scarcity of <a href=\"https://developer.apple.com/support/technical/submit/\">Technical Support Incidents</a>.</p>\n\n<p>Apple’s decision to release WWDC session videos to all registered developers during the conference was long overdue, but it clearly didn’t decrease demand for WWDC tickets enough to make a difference.  Maybe next year, after developers have experienced their first <a href=\"http://en.wikipedia.org/wiki/Broadcast_delay\">tape-delayed</a> WWDC, it will make a dent.  But I really believe that increased, improved communication between Apple and developers on all fronts is the best long-term solution.</p>",-         "date_published" : "2013-04-26T09:22:17-04:00",-         "author" : {-            "name" : "John Siracusa",-            "url" : "http://hypercritical.co"-         }-      },-      {-         "date_modified" : "2013-10-23T12:52:43-04:00",-         "content_html" : "<div class=\"image header\"><img src=\"/2013/04/12/images/come-at-me-bro.jpg\" width=\"640\" height=\"266\" alt=\"Come at me, Bro\"/></div>\n\n<p>When Apple decided to make its own web browser back in 2001, it chose <a href=\"http://en.wikipedia.org/wiki/KHTML\">KHTML</a>/<a href=\"http://en.wikipedia.org/wiki/KJS_(KDE)\">KJS</a> from the <a href=\"http://en.wikipedia.org/wiki/KDE\">KDE</a> project as the basis of its rendering engine. Apple didn’t merely “adopt” this technology; it took the source code and ran with it, hiring a bunch of smart, experienced developers and giving them the time and resources they needed to massively improve KHTML/KJS over the course of several years.  Thus, <a href=\"http://en.wikipedia.org/wiki/Webkit#Origins\">WebKit was born</a>.</p>\n\n<p>In the world of open source software, this is the only legitimate way to assert “ownership” of a project: become the driving force behind the development process by contributing the most—and the best—changes.  As WebKit raced ahead, Apple had little motivation to <a href=\"http://en.wikipedia.org/wiki/Webkit#Split_development\">help keep KHTML in sync</a>.  The two projects had different goals and very different constraints.  KDE eventually <a href=\"http://kde.org/announcements/4.5/platform.php\">incorporated WebKit</a>.  Though KHTML development continues, WebKit has clearly left it behind.</p>\n\n<p>When Google introduced <a href=\"http://en.wikipedia.org/wiki/Google_Chrome\">its own web browser</a> in 2008, it chose WebKit as the basis for its rendering engine.  Rather than <a href=\"http://en.wikipedia.org/wiki/Fork_(software_development)\">forking off</a> its own engine based on WebKit, Google chose to participate in the existing WebKit community.  At the time, Apple was clearly the big dog in the WebKit world.  But just look at what happened after Google joined the party. (Data from <a href=\"http://bitergia.com/public/reports/webkit/2013_01/\">Bitergia</a>.)</p><span id=\"graphs\"></span>\n\n<div class=\"image\"><div class=\"title\">WebKit: Reviewed Commits</div>\n<a href=\"http://bitergia.com/public/reports/webkit/2013_01/\"><img src=\"/2013/04/12/images/webkit-reviewed-commits-per-comany.png\" width=\"640\" height=\"307\" alt=\"WebKit reviewed commits per company\"/></a></div> \n\n<div class=\"image\"><div class=\"title\">WebKit: Active Authors</div>\n<a href=\"http://bitergia.com/public/reports/webkit/2013_01/\"><img src=\"/2013/04/12/images/webkit-active-authors-per-company.png\" width=\"640\" height=\"310\" alt=\"WebKit reviewed commits per company\"/></a></div> \n\n<p>Given these graphs, and knowing the history between Apple and Google over the past decade, one of two things seemed inevitable: either Google was going to become the new de facto “owner” of WebKit development, or it was going to create its own fork of WebKit.  It turned out to be the latter.  Thus, <a href=\"http://www.chromium.org/blink\">Blink was born</a>.</p>\n\n<p>Google has <a href=\"http://www.google.com/chrome/\">already proven</a> that it has the talent, experience, and resources to develop a world-class web browser.  It made <a href=\"http://en.wikipedia.org/wiki/V8_(JavaScript_engine)\">its own JavaScript engine</a>, its own <a href=\"http://en.wikipedia.org/wiki/Google_Chrome#Stability\">multi-process architecture</a> for stability and code isolation, and has added a huge number of improvements to WebKit itself.  Now it’s taken the reins of the rendering engine too.</p>\n\n<p>Where does this leave Apple?  All the code in question is <a href=\"http://en.wikipedia.org/wiki/Open-source\">open-source</a>, so Apple is free to pull improvements from Blink into WebKit.  Of course, Google has little motivation to help with this effort.  Furthermore, Blink is a clearly declared fork that’s likely to rapidly diverge from its WebKit origins.  From <a href=\"http://blog.chromium.org/2013/04/blink-rendering-engine-for-chromium.html\">Google’s press release about Blink</a>: “[W]e anticipate that we’ll be able to remove 7 build systems and delete more than 7,000 files—comprising more than 4.5 million lines—right off the bat.”  (There’s <a href=\"https://lists.webkit.org/pipermail/webkit-dev/2013-April/024388.html\">some streamlining</a> in the works on the other side of the fence too.)</p>\n\n<p>Does Apple—and the rest of the WebKit community—have the skill and capacity to continue to drive WebKit forward at a pace that matches <a href=\"http://www.chromium.org/blink#architectural-changes\">Google’s grand plans for Blink</a>?  The easy answer is, “Of course it does!  Apple created the WebKit project, and it got along fine before Google started contributing.”  But I look at those graphs and wonder.</p>\n\n<p>The recent history of WebKit also gives me pause.  Google <a href=\"https://news.ycombinator.com/item?id=5490242\">did not want to contribute</a> its multi-process architecture back to the WebKit project, so Apple created its own solution: the somewhat confusingly named <a href=\"http://trac.webkit.org/wiki/WebKit2\">WebKit2</a>.  While Google chose to put the process management into the browser application, Apple baked multi-process support into the WebKit engine itself.  This means that any application that uses WebKit2 gets the benefits of multi-process isolation without having to do anything special.</p>\n\n<p>This all sounds great on paper, but in (several years of) practice, Google’s Chrome has proven to be far more stable and resilient in the face of misbehaving web pages than Apple’s WebKit2-based Safari.  I run both browsers all day, and a week rarely goes by where I don’t find myself facing the dreaded “<a href=\"/2013/04/12/images/web-pages-are-not-responding.png\" title=\"I wasn’t sure I’d be able to find a clean screenshot of this dialog box, but I needn’t have worried.  One appeared on my own Mac while writing this article.\">Webpages are not responding</a>” dialog in Safari that invites me to reload every single open tab to resume normal operation.</p>\n\n<h2>Princes of Android</h2>\n\n<p>Having the development talent to take control of foundational technologies is yet another aspect of corporate <a href=\"http://hypercritical.co/2013/03/19/self-reliance\">self reliance</a>.  Samsung’s smartphone business currently relies on a <a href=\"http://www.android.com\">platform</a> developed by another company.  Leveraging the work of others can save time and money, but Samsung would undoubtedly be a lot more comfortable if it had more control over the foundation of one of its most profitable product lines.</p>\n\n<p>The trouble is, I don’t think Samsung has the expertise to go it alone with a hypothetical Android fork.  Developing a modern  OS and its associated toolchain, documentation, developer support system, app store, and so on is a huge task.  Only a handful of companies in history have done it successfully on a large scale—and Samsung’s not one of them.  Sure, it’s possible to staff-up and build that expertise, but it’s not easy and it requires years of commitment.  I’d bet against Samsung pulling it off.</p>\n\n<p><a href=\"https://www.facebook.com/home\">Facebook Home</a> can also be viewed through the lens of developer-based self reliance.  Facebook clearly wants to make sure it’s an important part of the future of mobile computing, but that’s not easy to do when you’re “just a website.”  Home lets Facebook put itself front and center on existing Android-based smartphones.</p>\n\n<p>It seems unwise for Facebook to build its mobile strategy on the back of a platform controlled by its mortal enemy, Google.  But perhaps Home is just the first step of a long-term plan that will eventually lead to a Facebook fork of Android.  If so, the question inevitably follows: can Facebook really take ownership of its own platform without help from Google?</p>\n\n<p>Facebook has proven that it can expand its skill set.  Over the past few years, it’s been hiring <a href=\"http://www.mikematas.com\">talented designers</a> and acquiring <a href=\"http://www.madebysofa.com\">companies</a> with proven design chops.  Facebook Home is the first result of those efforts, and by all accounts, the user interface exhibits a level of polish more commonly associated with Apple than Facebook.</p>\n\n<p>Still, a lock screen replacement is a far cry from a full OS.  Maybe Facebook just plans to <a href=\"http://archive.org/details/PBS.Triumph.of.the.Nerds.2of3\">ride the bear</a>, relying on Google to do the grunt work of maintaining and advancing the platform for as long as it can, while Facebook slowly takes over an increasing amount of the user experience.</p>\n\n<p>Some people wonder how Google can possibly have any power in the Android ecosystem if the source code is free.  Facebook Home has been cited as an example of Google’s ineffectualness.  Look at how one of Google’s fiercest enemies has played it for a fool, they say.  Google did all the hard work, then Facebook came in at the last minute and co-opted it all for its own purposes.</p>\n\n<p>But look again at the <a href=\"#graphs\">graphs</a> above.  Now imagine similar graphs for the Android source code.  Any company with Android-based products that wants to be truly free from Google’s control has to be prepared—and able—to match Google’s output.  Operating systems don’t write themselves; platforms don’t maintain themselves; developers need tools and support; technology marches on.  It’s not enough just to just fix bugs and support new hardware.  To succeed with an Android fork, a company has to drive development in the same way that Apple did when it spawned WebKit from KHTML, just as Google is doing as it forks Blink from WebKit.</p>\n\n<p>This is not a <a href=\"http://en.wikipedia.org/wiki/Real-time_strategy\">real-time strategy game</a>.  Companies like Samsung and Facebook can’t just mine for more resources and build new developer <a href=\"http://starcraft.wikia.com/wiki/Barracks\" title=\"hatcheries?\">barracks</a>.  Building up expertise in a new domain takes years of concerted effort—and a little bit of luck on the hiring front doesn’t hurt, either.</p>\n\n<p>Facebook may already be a few years into that process.  Its <a href=\"http://techcrunch.com/2013/04/10/has-facebook-quietly-acquired-osmeta-a-stealth-mobile-software-startup/\">recent</a> acquisition of the mysterious, possibly-OS-related startup <a href=\"http://osmeta.com/about/\">osmeta</a> provides another data point.  Samsung, meanwhile, has just joined an exploratory project to <a href=\"http://blog.mozilla.org/blog/2013/04/03/mozilla-and-samsung-collaborate-on-next-generation-web-browser-engine/\">develop a new web rendering engine</a>.</p>\n\n<p>Google certainly has its own share of problems, but what may save it in the end is its proven ability to tackle ambitious software projects and succeed.  The <a href=\"http://www.youtube.com/watch?v=j82GKTgVDkw&amp;t=58\">challenge</a> set before Facebook, Samsung, and other pretenders to the Android throne is clear.  And as a <a href=\"http://en.wikipedia.org/wiki/Omar_Little\">wise man</a> once said, you come at the king, you best not miss.</p>",-         "url" : "http://hypercritical.co/2013/04/12/code-hard-or-go-home",-         "id" : "http://hypercritical.co/2013/04/12/code-hard-or-go-home",-         "title" : "Code Hard or Go Home",-         "author" : {-            "url" : "http://hypercritical.co",-            "name" : "John Siracusa"-         },-         "date_published" : "2013-04-12T19:53:27-04:00"-      },-      {-         "author" : {-            "url" : "http://hypercritical.co",-            "name" : "John Siracusa"-         },-         "date_published" : "2013-04-07T13:04:05-04:00",-         "content_html" : "<p>Technology can be a surprisingly ideological topic.  In politics, the spectrum of belief is right on the surface: conservative/liberal, right/left.  In tech, that same spectrum exists, but it’s rarely discussed.  What’s more, unlike political beliefs, I’m not sure most people are even aware of their own core ideas about technology.</p>\n\n<p>Anyone who’s read <a href=\"http://hypercritical.co/archive/\">the past three months of posts</a> on this site could be forgiven for pegging me as a technological ideologue.  Though I draw the line at outright dogmatism, railing against technological conservatism has indeed been a recurring theme of mine.</p>\n\n<p>To illustrate the concept, I’ll use myself as an example.  Back in the <a href=\"http://arstechnica.com/apple/2000/02/mac-os-x-dp3/\">early</a> <a href=\"http://arstechnica.com/apple/2000/05/mac-os-x-dp4/\">days</a> of the operating system now known as <a href=\"http://www.apple.com/osx/\">OS X</a>, I was not happy that the <a href=\"http://en.wikipedia.org/wiki/Apple_menu#System_7.0.E2.80.939.2.2\">user-customizable Apple menu</a> from classic Mac OS had been replaced with an <a href=\"http://en.wikipedia.org/wiki/Apple_menu#Mac_OS_X\">anemic, non-customizable incarnation</a>.  In classic Mac OS, the Apple menu was how I quickly found and launched commonly used applications and <a href=\"http://www.folklore.org/StoryView.py?story=Desk_Ornaments.txt\">Desk Accessories</a>.  Apple removed this feature in Mac OS X and replaced it with…nothing, really.  The <a href=\"http://en.wikipedia.org/wiki/Dock_(OS_X)\">Dock</a> attempted to cover some of the same bases, but the Apple menu could comfortably hold many more items, and in a much more compact form.</p>\n\n<p>In this situation, a technological-conservative position is that Mac OS X needs something like the classic customizable Apple menu.  It wouldn’t necessarily have to be an Apple icon in the upper-left corner of the screen.  It could be a hierarchical menu spawned from the Dock or another screen corner.  (This was actually a popular request back in the days before the Dock supported any form of hierarchy.)  The old OS had a feature like this, and it was useful.  The new OS needs a similar feature, or it will be less useful.</p>\n\n<p>Beneath what seems like a reasonable feature request lurks the heart of technological conservatism: <i>what was and is always shall be</i>.</p>\n\n<p>In my review of the <a href=\"http://arstechnica.com/apple/2010/09/macos-x-beta/\">public beta</a>, I was self-aware enough to moderate my position, <a href=\"http://arstechnica.com/apple/2010/09/macos-x-beta/15/\">merely asking for</a> “some sort of mechanism that equals or betters the functional merits of the Apple Menu.”  But what my conservatism prevented me from seeing was that things like <a href=\"http://www.obdev.at/products/launchbar/index.html\">LaunchBar</a>, <a href=\"http://qsapp.com\">Quicksilver</a>, and (later) <a href=\"http://arstechnica.com/apple/2005/04/macosx-10-4/9/#spotlight\">Spotlight</a> would provide similar functionality in an entirely different way, and with far more efficiency and elegance.</p>\n\n<p>No one wants to think of themselves as a <a href=\"http://en.wikipedia.org/wiki/Luddite\">Luddite</a>, which is part of what makes technological conservatism so insidious.  It can color the thinking of the nerdiest among us, even as we use the latest hardware and software and keep up with all the important tech news.  The certainty of our own tech savvy can blind us to future possibilities and lead us to reject anything that deviates from the status quo.  We are not immune.</p>\n\n<h2>Previously on Hypercritical…</h2>\n\n<p>Consider four of my recent posts, each of which, in its own way, pressed uncomfortably against the <a href=\"http://en.wikipedia.org/wiki/Dark_matter\">dark matter</a> of technological conservatism among tech nerds.</p>\n\n<p>In response to <a href=\"http://hypercritical.co/2013/03/08/the-case-for-a-true-mac-pro-successor\">The Case for a True Mac Pro Successor</a>, a few readers insisted that there’s no longer anything technically interesting about high-performance personal computers.  A new Mac Pro would just be a pair of the latest <a href=\"http://en.wikipedia.org/wiki/List_of_Intel_Xeon_microprocessors#Xeon_E5-2xxx_.28dual-processor.29\">Xeons</a>, some <a href=\"http://en.wikipedia.org/wiki/ECC_memory\">ECC RAM</a>, a few <a href=\"http://en.wikipedia.org/wiki/Fusion_Drive\">SSDs and/or hard drives</a>, and a <a href=\"http://en.wikipedia.org/wiki/Radeon_HD_7000_Series\">big, hot video card</a>.</p>\n\n<p>That’s what the Mac Pro has been, so that’s what it will always be, right?  And there it is.</p>\n\n<p>Even <a href=\"/2013/03/08/the-case-for-a-true-mac-pro-successor#high-end-debut\">explicitly listing</a> several technologies that debuted on Apple’s high-end Macs did not derail the people whose feedback was based on the premise that the Mac Pro will never be anything that it is not already.  This assumption is counter to the entire purpose of a product like the Mac Pro.  It’s meant to push the envelope, to seek out new frontiers of computing power.</p>\n\n<p>In <a href=\"http://hypercritical.co/2013/02/08/dont-stop-thinking-about-tomorrow\">Don’t Stop Thinking About Tomorrow</a>, I tackled technological conservatism head on—though without naming it—by addressing the surprisingly widespread notion that the iPhone 5 is “too light.”  This criticism leans heavily on the seductive view of the present as an endpoint, rather than just another step in a journey towards something radically different.  (For a long time, I avoided writing the post you're reading now because it felt like a retread of this older one. But I eventually decided that these ideas bear repeating. Do not be surprised when both posts arrive at a similar conclusion.)</p>\n\n<p><a href=\"http://hypercritical.co/2013/03/04/fear-of-a-webkit-planet\">Fear of a WebKit Planet</a> was a celebration of what <a href=\"http://blog.chromium.org/2013/04/blink-rendering-engine-for-chromium.html\">turned out</a> to be the tail end of peacetime in the browser wars.  (Well, maybe it was really just <a href=\"https://news.ycombinator.com/item?id=5490242\">a cold war turning hot again</a>.)  The post addressed the fear that “WebKit everywhere” would lead us into another dark age of web development.  Even before <a href=\"http://www.chromium.org/blink\">Google’s fork of WebKit</a>, I <a href=\"/2013/03/04/fear-of-a-webkit-planet#webkit-variety\">noted</a> that WebKit was a lot more like Linux than <a href=\"http://en.wikipedia.org/wiki/Ie6\">IE6</a>, and that “the products built with WebKit are as varied as those built with Linux.”  Pondering that variety, the idea of a homogenous, stagnating WebKit monoculture seemed extremely unlikely.  I didn’t have to wait long for confirmation.</p>\n\n<h2>Uphill, Both Ways</h2>\n\n<p>Finally, the point of <a href=\"http://hypercritical.co/2013/02/24/annoyance-driven-development\">Annoyance-Driven Development</a> was completely blotted out in the minds of a few readers by the audacious suggestion that a beloved service remains ripe for further improvement.  This post revealed technological conservatism in its most virulent form: not only is the current state of affairs satisfactory, but wanting more is evidence of a character flaw, perhaps even a moral failing.</p>\n\n<p>I find this idea absurd in its present-day context, and numerous analogous historical contexts immediately spring to mind as a means to persuade those who don’t.  The trouble is, I can also imagine those same people taking the same technological-conservative positions in all the historical contexts as well.  How far back in time do I have to go before it finally clicks?</p>\n\n<p>Poor baby, you have to wait a whole day after a new episode airs on cable before it magically appears on your silent, $99, network-connected TV box.</p>\n\n<p>Walking to the mailbox, unsealing an envelope, and sticking a disc into a slot under your TV is too much work, is it?  Now you need to be able to start watching a movie without even picking your lazy ass up off the couch?</p>\n\n<p>Oh no! There are rooms in your house where you don’t have instant access to the sum of all human knowledge!  And running wires is just <i>so</i> hard, isn’t it?  Those few cents for zip ties to keep yourself from tripping over the wires will obviously break the bank.  The prince demands radio-based networking everywhere in his castle!</p>\n\n<p>I guess it’s just too much work to walk out the front door five steps, pick up the newspaper that was delivered while you slept, and then bring it back to your kitchen table each morning to read the news of the world.  Now you want it to appear instantly on your computer screen.  OK, Mr. Fancypants Bigshot.</p>\n\n<p>Yeah, pressing seven buttons in sequence is so much work.  You need a <i>faster</i> way to call someone.  Pressing just one button instead will be such a big change in your life, won’t it?  You’ll finally have time to write that novel.</p>\n\n<p>You’ve got a way to send a piece of paper from your home to anywhere in the entire country for literal pocket change, but that’s just <i>too much work</i> for you.  You need to talk to someone <i>right now</i>, hearing an actual voice as if it’s in the same room instead of miles away.</p>\n\n<p>You are warmed by the sun for nearly all your waking hours, but I guess that’s not good enough for you.  No, you’re so important that you need to have light and heat at night as well.  What <i>you</i> need, you precious snowflake, is <a href=\"http://dresdencodak.com/2009/09/22/caveman-science-fiction/\">a miniature artificial sun</a> that’s under your control—obviously!</p>\n\n<h2>The Unreasonable Man</h2>\n\n<p>At some point, we’re all guilty of looking down upon things that have changed since our own formative years, but this attitude has no place in technology criticism—and it’s absolute poison for anyone trying to create great tech products and services.  Not all new ideas represent progress.  (Do I really need to spell this out?  It seems so.)  But ideas should not be rejected based merely on a lifetime of having lived without them.  Today’s “unnecessary” frill is tomorrow’s baseline.</p>\n\n<p>As the <a href=\"http://www.quotationspage.com/quote/692.html\">famous saying</a> goes, the reasonable man adapts himself to the world; the unreasonable one persists in trying to adapt the world to himself. Therefore all progress depends on the unreasonable man.</p>\n\n<p>Every great scientific and engineering triumph in human history has been a slap in the face of technological conservatism—the little ones, perhaps even more so.  And yet each new step forward, no matter what the size, is inevitably met with a fresh crop of familiar objections.  “Just look at what you have already, and it’s still not enough for you. Where does it end?”</p>\n\n<p>It doesn’t. It never ends.  Keep moving or get out of the way.</p>",-         "date_modified" : "2013-04-07T21:30:25-04:00",-         "title" : "Technological Conservatism",-         "id" : "http://hypercritical.co/2013/04/07/technological-conservatism",-         "url" : "http://hypercritical.co/2013/04/07/technological-conservatism"-      },-      {-         "id" : "http://hypercritical.co/2013/03/19/self-reliance",-         "url" : "http://hypercritical.co/2013/03/19/self-reliance",-         "title" : "Self-Reliance",-         "date_modified" : "2013-03-20T16:36:03-04:00",-         "content_html" : "<div class=\"image header\"><img src=\"/2013/03/19/images/its-dangerous-to-go-alone.png\" width=\"640\" height=\"418\" alt=\"The Legend of Zelda\"/></div>\n\n<p>The mobile market, everyone agrees, is the technology industry’s future.  What’s not so clear is which company is best positioned to thrive in that future.</p>\n\n<p>For smartphones in particular, the traditional metrics are confusing.  Android has <a href=\"http://www.forbes.com/sites/chuckjones/2013/02/13/android-solidifies-smartphone-market-share/\">70% market share</a>, but Apple is taking <a href=\"http://www.asymco.com/wp-content/uploads/2012/05/Screen-Shot-2012-05-03-at-5-3-10.33.31-AM.png\">70% of the profit</a>.  Google, meanwhile, is not benefiting from Android’s market share dominance as much as Samsung, which recorded <a href=\"http://webcache.googleusercontent.com/search?q=cache:Vqbt1Vyk7OgJ:online.wsj.com/article/SB10001424127887324039504578262432246509020.html+http://online.wsj.com/article/SB10001424127887324039504578262432246509020.html&amp;cd=1&amp;hl=en&amp;ct=clnk&amp;gl=us\">$4 billion in profit</a> from its cellphone and telecom business in Q4 2012.  In the same quarter, Google made less—<a href=\"http://www.usatoday.com/story/tech/2013/01/22/google-facebook-zynga-motorola/1855185/\">$2.89 billion</a>—from all its businesses combined.  And when it comes to selling actual smartphones, <a href=\"http://www.forbes.com/sites/ericsavitz/2013/02/06/applesamsung-101-of-q4-handset-profits-103-for-2012/\">the only two companies making <i>any</i> money</a> are Apple and Samsung.</p>\n\n<p>So who’s winning?  When pondering this, I find myself thinking about dependencies.  What is each company doing for itself, and in what ways does each company rely on others?  I think this balance, much more than profits or market share, is what will determine long-term success.  Let’s see how the players stack up.</p>\n\n<h2>Google: Mini-Microsoft</h2>\n\n<p>Google’s Android strategy looks a lot like Microsoft’s Windows strategy of yore—minus the part where you collect all the money.  Google got the other parts right, though: create a viable platform, support it, evangelize it, and get as many other companies as possible to use it.  That last part is made a lot easier when the OS is free and open source, of course.</p>\n\n<p>In the PC’s heyday, Compaq, Dell, HP, Gateway, and others all killed each other selling PC hardware, grinding their profit margins down to almost nothing, leaving only a few players (<a href=\"http://allthingsd.com/20130205/dell-confirms-plan-to-go-private-in-24-4-billion-buyout-deal/\">barely</a>) standing in the end.  Microsoft, meanwhile, sat back and collected the same fat software margins from all of them (<a href=\"http://en.wikipedia.org/wiki/Microsoft_Office\">and</a> from nearly all of their customers, as well).</p>\n\n<p>With Android, Google seemed to posit that there was value inherent in being the platform “owner,” even if hardware makers didn’t pay for each copy of the OS.  Android was filled with connections to Google’s (also free) services.  More people using Android meant more people seeing Google ads, which meant more money for Google.</p>\n\n<p>In the early days of Android, this theory looked promising.  As in the PC era, hardware makers jockeyed for position in the nascent Android market.  Individual fortunes rose and fell, but the number of Android activations <a href=\"https://twitter.com/BenedictEvans/status/311884391464988672\">just kept growing</a>.  So far, so good.</p>\n\n<p>But unlike the early PC market, the Android market hasn’t produced a group of strong competitors duking it out at the top.  As previously noted, only one company, Samsung, is making any money at all selling Android smartphones—and it’s making more from them than Google itself.</p>\n\n<p>From the <a href=\"http://en.wikipedia.org/wiki/Nexus_One\">beginning</a>, Google has shrewdly hedged its bets by fielding <a href=\"http://www.google.com/nexus/\">its own line of Android hardware</a>.  More recently, Google <a href=\"http://www.google.com/press/motorola/\">purchased Motorola</a>, giving it its very own bona fide handset maker.  Thus far, none of these efforts have produced Samsung-like numbers.  But it’s clear that Google is unwilling to be entirely dependent on other companies to create the hardware that its mobile OS needs to be a complete product.</p>\n\n<h2>Samsung: Death From Below</h2>\n\n<p>Samsung seems like an Android success story.  Previously better known in the US for its TVs than its smartphones, Samsung combined its hardware manufacturing prowess (and its <a href=\"http://5by5.tv/hypercritical/83\">shameless</a> willingness to <a href=\"http://samsungcopiesapple.tumblr.com\">copy other companies’</a> <a href=\"http://www.telegraph.co.uk/technology/samsung/9932372/Seen-it-before-Samsungs-game-controller-looks-familiar.html\">design cues</a>) with Google’s mobile OS to produce profitable phones that customers love.</p>\n\n<p>Though the Galaxy line of devices would not be possible without Android, Samsung is far from Google’s ideal of a dutiful Android licensee, selflessly ferrying customers to Google’s services.</p>\n\n<p>Just as PC makers used to insist on adding their own graphical shell or other brand-specific “enhancements” to their Windows PCs, most companies selling Android-based hardware products feel compelled to put their own stamp on the vanilla Android experience.  Samsung is no different, steadily papering over the underlying Android OS with each new release of its <a href=\"http://en.wikipedia.org/wiki/TouchWiz\">TouchWiz</a> user interface.</p>\n\n<p>And why not?  If Android is a money-loser for every other smartphone maker, Samsung is obviously doing something right.  In its recent <a href=\"http://news.cnet.com/8301-31322_3-57574466-256/samsung-gs4-launch-tone-deaf-and-shockingly-sexist/\">ill-conceived</a> Galaxy S4 launch event, <a href=\"http://www.techhive.com/article/2030981/samsung-puts-galaxy-not-android-on-center-stage.html\">Android was barely mentioned at all</a>.  Samsung’s dependence on Android is clearly chafing.\n\n<h2>Apple: Once Bitten, Twice Shy</h2>\n\n<p>In truth, Apple has been bitten more than once by its dependence on other companies.  The viability of the Mac once depended on Microsoft’s willingness to produce a decent version of <a href=\"http://en.wikipedia.org/wiki/Microsoft_Office\">Office</a> for it. Later, the Mac faltered multiple times when IBM and Motorola were unwilling or unable to produce competitive desktop and laptop CPUs.  When Apple wanted to <a href=\"http://en.wikipedia.org/wiki/Rhapsody_(operating_system)\">revamp its OS</a>, Adobe and Microsoft were unwilling to port their software, forcing Apple <a href=\"http://en.wikipedia.org/wiki/Mac_OS_X\">back to the drawing board</a>.  Then there was <a href=\"http://www.youtube.com/watch?v=TWSRgsk2oaw&amp;t=3m10s\">that time</a> when Apple asked another company to make a <a href=\"http://en.wikipedia.org/wiki/Motorola_Rokr#E1\">phone</a>.</p>\n\n<p>Like a lover who’s been betrayed one too many times, Apple has hardened its corporate heart against any form of true partnership.  If it’s important, Apple wants to own and control it.  When Apple does work with others, it insists on having the upper hand.  iOS developers serve at the pleasure of Apple.  Manufacturing partners must fight for the privilege of building Apple’s products, often using equipment Apple purchases for them.  And, of course, Apple has its own mobile OS that runs exclusively on its own hardware.  <a href=\"http://www.youtube.com/watch?v=gn26pEDEhyY\">As God is its witness, Apple will never be hungry again!</a></p>\n\n<p>Steve Jobs personified this attitude, which is why he felt <a href=\"http://gigaom.com/2011/10/21/steve-jobs-vowed-to-destroy-android/\">so deeply betrayed</a> when Google, his partner on stage during <a href=\"http://www.youtube.com/watch?v=TBxua7EDRdo&amp;t=51\">the iPhone introduction</a>, remade Android in iOS’s image.  After that, Apple’s reliance on Google for essential parts of its mobile experience simply could not stand.</p>\n\n<p>The trouble is, online services have <a href=\"http://createlivelove.com/246\">not</a> <a href=\"http://en.wikipedia.org/wiki/MobileMe\">historically</a> been Apple’s strength.  That’s why it partnered with Google, Yahoo, and others in the first place.  It took Apple several years (<a href=\"http://www.wired.co.uk/news/archive/2009-10/02/analysis-apple-buys-placebase-hinting-at-split-with-google\">and</a> <a href=\"http://gigaom.com/2010/07/14/apple-acquires-poly9-mapping-company/\">several</a> <a href=\"http://arstechnica.com/apple/2011/10/apple-now-has-third-piece-of-mapping-puzzle-but-whats-the-full-picture/\">acquisitions</a>) to finally replace Google maps—and the <a href=\"http://arstechnica.com/apple/2012/11/apple-fires-manager-of-maps-team/\">results</a> were not ideal.</p>\n\n<p>There’s an old saying in business: don’t outsource your core competency.  Or, <a href=\"http://www.joelonsoftware.com/articles/fog0000000007.html\">as Joel Spolsky originally put it</a>, “If it’s a core business function, do it yourself, no matter what.”  This guideline makes it easy for a software developer to decide to outsource, say, catering and landscaping services.  But what about Apple, with its historically well-founded paranoia about relying on outside companies for anything related to its actual products?  What happens when everything starts to look like a “core business function?”</p>\n\n<h2>Sometimes You Can’t Make It on Your Own</h2>\n\n<p>Even among just these three companies, there are more than enough dependencies to go around.  Google depends on other companies to make and sell the vast majority of the products that run its mobile OS.  Samsung depends on Google to make and support the most important software component of its flagship mobile devices.  Even the fiercely independent Apple still depends on Samsung to manufacture many of its mobile processors (<a href=\"http://www.imore.com/apple-may-say-goodbye-samsung-quad-core-chips\">for now…</a>) and Google to provide web search services—and perhaps to give <a href=\"http://arstechnica.com/apple/2012/12/google-maps-for-iphone-shows-apple-how-to-do-mapping-right/\">a little help with maps</a> as well.</p>\n\n<p>Back to the original question: who has the upper hand?  Yes, there are  dependencies in all directions—but not all dependencies are created equal.</p>\n\n<p>Despite its recent success, Samsung remains in the weakest position.  It clearly doesn’t want to remain beholden to Google, and that’s the right instinct.  But I’m not confident in Samsung’s ability to completely divorce its mobile platform from Android.  I just don’t think it has the experience or expertise to be a real platform owner.</p>\n\n<p>Furthermore, while Android’s market share may be overwhelming, Samsung’s is not.  Even if Samsung had the skills to take the reins of its software stack, it’d have to maintain compatibility with present and future versions of Android, lest it become just another low-volume also-ran smartphone platform.</p>\n\n<p>Google’s present position looks weak, but it has two big trump cards.  First, Google has proven to be one of the few companies capable of creating, popularizing, and supporting a platform.  Despite all the skinning and branding by handset makers, Google is still the driving force behind Android.  This power can only be negated by another company that’s willing and able to match Google’s Android efforts on all fronts: OS development, app store, developer tools, evangelism, the works.  That’s a tall order.</p>\n\n<p>Second, Google is still the king of online services.  Apple, the biggest technology company in the world, just tried to replace maps, one of Google’s second-tier services, and barely avoided disaster.  Microsoft, the former undisputed ruler of the tech sector, has been <a href=\"http://www.bing.com\">trying</a> for years to challenge Google for the web-search crown, with little success.  Maps and search are not obscure or obsolete services.  If you can’t create equal or better alternatives—and so far, no one has—then you’re stuck relying on Google.</p>\n\n<p>Google still needs hardware partners to maintain its Android empire, but we already have a model for how a software-focused platform owner can dominate a market.  It’s harder to imagine a hardware maker dominating while relying on a software platform controlled by someone else.</p>\n\n<p>Finally, there’s Apple, the jilted lover, feverishly working to eliminate any dependency that puts it at the mercy of a potential competitor.  Apple remembers when Samsung was a great source of mobile CPUs and Google provided network services for iOS.  Now look at those two traitors.  No partnership is safe!</p>\n\n<p>And so, in addition to developing its own OS, designing its own hardware, producing many of its most popular applications (built in its own IDE using its own compiler and language), Apple now has its own mapping service, is designing its own mobile CPUs, and is trying to get someone other than Samsung to manufacture them—all the while presumably eyeing its other parts suppliers and software partners warily.</p>\n\n<p>Despite the bumps, Apple’s position remains strong.  It’s got the best app ecosystem, competitive, trend-setting hardware, great adoption of each new version of its OS, and double the margins of the only other company making money selling smartphones.  Oh yeah, and it dominates the tablet market too.  There’s a lot for <a href=\"http://hypercritical.co/2013/02/02/apples-2013-to-do-list\">Apple to do in 2013</a>, but at least it’s poised to succeed or fail on its own merits.</p>\n\n<p>Looking out further than a year, the picture gets fuzzier.  An unfortunate side effect of doing everything yourself is that every other company starts to look like an enemy.  Realistically, Apple can’t do everything—or can’t do everything well, anyway.  Online services are only going to become more important with time, so it’s understandable that Apple wants to be the master of its own destiny in this area.  But it needs to improve much more quickly if it wants to even remain competitive, let alone catch up to Google.  Failing that, it needs to find some partners that aren’t mortal enemies.  (I’m sure <a href=\"http://en.wikipedia.org/wiki/Marissa_Mayer\">Marissa Mayer</a> would take Tim Cook’s call.)</p>\n\n<p>In general, Apple needs to engage in more balanced partnerships that produce sustainable benefits on both sides.  The switch to Intel CPUs is a good example, especially given how the situation has changed since the deal was first struck.  In business, no strategic partnership is forever, but that’s no reason to avoid them entirely.  And who knows?  Perhaps Apple’s good relations with Intel will lead to its next great mobile <a href=\"http://en.wikipedia.org/wiki/System_on_a_chip\">SoC</a> being manufactured at <a href=\"http://en.wikipedia.org/wiki/22_nanometer\">22</a> or even <a href=\"http://en.wikipedia.org/wiki/14_nanometer\">14nm</a>.</p>\n\n<p>Let’s just hope <a href=\"http://software.intel.com/en-us/appup/tizen\">Tizen</a> doesn’t come up during the meeting.</p>",-         "date_published" : "2013-03-19T19:58:14-04:00",-         "author" : {-            "name" : "John Siracusa",-            "url" : "http://hypercritical.co"-         }-      },-      {-         "url" : "http://hypercritical.co/2013/03/08/the-case-for-a-true-mac-pro-successor",-         "id" : "http://hypercritical.co/2013/03/08/the-case-for-a-true-mac-pro-successor",-         "title" : "The Case for a True Mac Pro Successor",-         "date_modified" : "2013-03-08T20:42:12-05:00",-         "content_html" : "<div class=\"image header\"><img src=\"/2013/03/08/images/lfa.jpg\" width=\"640\" height=\"306\" alt=\"Lexus LFA\"/></div>\n\n<p>The <a href=\"http://arstechnica.com/staff/2005/10/1676/\">xMac</a> has been back in the news lately—the idea, if not necessarily the name.  Whether it’s called a “<a href=\"http://www.macworld.com/article/2029740/the-time-is-finally-right-for-a-mac-minitower.html\">Mac minitower</a>\" or a “<a href=\"http://www.marco.org/2013/03/06/mac-pro-mini\">Mac Pro mini</a>,” we <a href=\"http://arstechnica.com/gadgets/2012/08/as-mac-pro-stagnates-pc-workstations-muscle-ahead/\">long-suffering</a> Mac Pro fans are all looking forward to the “really great” thing Tim Cook <a href=\"http://www.macworld.com/article/1167247/cook_apple_planning_professional_mac_for_2013.html\">told us</a> to expect this year.</p>\n\n<p>What almost no one expects is another straightforward revision of the existing Mac Pro, a gargantuan tower-style computer built with server-grade CPUs and RAM that pushes the limits of computing performance.  Very few people want that kind of computer these days, and even fewer people actually need one.</p>\n\n<p>On paper, the Mac Pro may no longer be a viable product, but it would be a mistake for Apple to abandon the <i>concept</i> that it embodies.  Like the Power Mac before it, the Mac Pro was designed to be the most powerful personal computer Apple knows how to make.  That goal should be maintained, even as the individual products that aim to achieve it evolve.</p>\n\n<p>Why is this important? If Apple produces a new Mac that’s faster than any of its current models by leaps and bounds, will people suddenly buy it in huge numbers, choosing it over the laptops, tablets, and phones they prefer today? No. Is it because a very fast Mac can be sold for such a high price that its huge margins will make its profits significant, despite the expected low number of sales? No, that won’t happen either.  Is a new, insanely fast Mac even guaranteed to make any money at all for Apple?  Sadly, no.</p>\n\n<p>So why bother creating a true Mac Pro successor at all? Good riddance, right?</p>\n\n<h2>Bean Counters and Car Guys</h2>\n\n<p>In the automobile industry, there’s what’s known as a “<a href=\"http://en.wikipedia.org/wiki/Halo_car#Automobiles\">halo car</a>.”  Though you may not know the term, you surely know a few examples. The <a href=\"http://en.wikipedia.org/wiki/Chevrolet_Corvette\">Corvette</a> is <a href=\"http://en.wikipedia.org/wiki/General_Motors\">GM</a>’s halo car.  <a href=\"http://en.wikipedia.org/wiki/Srt\">Chrysler</a> has the <a href=\"http://en.wikipedia.org/wiki/SRT_Viper\">Viper</a>.</p>\n\n<p>The vast, vast majority of people who buy a Chrysler car get something other than a Viper.  The same goes for GM buyers and the Corvette.  These cars are expensive to develop and maintain.  Due to the low sales volumes, most halo cars do not make money for car makers.  When Chrysler was recovering from bankruptcy in 2010, it considered selling the Viper product line.</p>\n\n<p>Why wouldn’t a company want to get a low-volume, money-losing product line off its books, bankruptcy or no bankruptcy?  If you can’t think of a reason, you may be what is known in the auto industry as a “<a href=\"http://www.amazon.com/gp/product/B004IYJEA6/ref=as_li_ss_tl?ie=UTF8&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B004IYJEA6&amp;linkCode=as2&amp;tag=siracusa-20\">bean counter</a>.”  Luckily for Viper fans, Chrysler had a few car guys left.  Here’s a passage from <a href=\"http://www.caranddriver.com/features/2013-srt-viper-gts-in-depth-with-the-men-who-made-it-happen-feature\">Car and Driver’s preview of the 2013 SRT Viper</a>—the Viper that almost didn’t exist.</p>\n\n<blockquote><p>“I knew the very last thing Chrysler needed during our bankruptcy was a 600-hp sports car,” says Ralph Gilles, the 42-year-old president and CEO of <a href=\"http://en.wikipedia.org/wiki/Srt\">SRT</a> and senior V-P of Chrysler Product Design. “But I’m an optimist. I wanted to fight for a chance. We discussed it for a year. I got Sergio [Marchionne, Chrysler CEO] to drive one of the last Vipers. He jumped in and disappeared to God knows where. He came back 15 minutes later and said, ‘Ralph, that’s a lot of work.’ He meant it was a brutal car. But he didn’t say, ‘Good riddance,’ or anything. Then in late ’09, I showed him a video of a Viper breaking the Nürburgring record. He watched all of it and was impressed. I gave him a list of the supercars the Viper had put away.</p></blockquote>\n\n<p>The car guys won; Chrysler chose to keep the Viper.</p>\n\n<p>Apple is not <a href=\"http://daringfireball.net/linked/2013/03/04/ben-bejarin\">yet</a> in bankruptcy, but every other reason that Chrysler should have run screaming from the Viper applies equally to the Mac Pro (except perhaps the lack of profitability; Apple doesn’t share that information about individual Mac lines).  To understand Chrysler’s decision, let’s consider why halo cars exist at all.</p>\n\n<p>One reason is prestige.  Though few people can afford to buy a Viper, its mere existence makes the affordable cars from the same manufacturer that have even <a href=\"http://www.dodge.com/en/2013/avenger/\">the mildest bit of sporting pretension</a> slightly more attractive to buyers.  Yes, this makes little logical sense, but it’s a very real phenomenon.  (There’s a reason the term “halo effect” <a href=\"http://www.waywordradio.org/halo_car/\">reportedly</a> dates back to at least 1938.)</p>\n\n<p>Halo cars also push car makers to their limits.  Engineering teams must use all their powers and all their skills to create the very best car possible.  This exercise inevitably leads to the exploration of new technologies.  The failed experiments are forgotten, but the winners eventually find their way into more prosaic cars from the same manufacturer.</p>\n\n<h2>To Boldly Go</h2>\n\n<p>The Mac Pro is Apple’s halo car.  It’s a chance for Apple to make the fastest, most powerful computer it can, besting its own past efforts and the efforts of its competitors, year after year.  This is Apple’s space program, its moonshot.  It’s a venue for new technologies to be explored.</p>\n\n<p>Consider <a href=\"http://en.wikipedia.org/wiki/Larrabee_(microarchitecture)\">Larrabee</a>, Intel’s project to create a massively multi-core x86-based GPU.  Rumor has it that Apple was working on integrating the technology into a Mac Pro.  Intel eventually scuttled the project, but consider what would have happened if it had taken off, reshaping the GPU market in the process.  Apple would have had a head start on integrating the technology into its OS and application frameworks.  Its drivers would have had their kinks worked out.  When it became feasible to incorporate Larrabee technology into the rest of its product line, Apple would have been ready.</p>\n\n<p>I intentionally chose a (rumored) failure as an example because that’s part of the point.  Better to <a href=\"http://en.wikipedia.org/wiki/Power_Mac_G5#Water_Cooling_Problems\">experiment</a> on your niche product than your high-volume money-maker.  There are plenty of success stories as well.</p>\n\n<p><a name=\"high-end-debut\"></a>Think of all the technologies that debuted on Apple’s high-end Macs: <a href=\"http://en.wikipedia.org/wiki/Macintosh_SE\">hard drives</a>, <a href=\"http://en.wikipedia.org/wiki/Macintosh_II_series\">color</a>, <a href=\"http://en.wikipedia.org/wiki/Blue_and_white_g3\">FireWire</a>, <a href=\"http://en.wikipedia.org/wiki/Power_Macintosh_9500\">multiple CPUs</a>, <a href=\"http://en.wikipedia.org/wiki/Power_Mac_G5\">multi-core CPUs</a>, <a href=\"http://en.wikipedia.org/wiki/Power_Mac_G5\">64-bit CPUs</a>, <a href=\"http://en.wikipedia.org/wiki/GeForce3\">programmable GPUs</a>, <a href=\"http://en.wikipedia.org/wiki/Final_Cut_Pro#Features\">real-time video processing</a>.  All these features had a chance to get shaken out on machines that most people don’t buy.  When they trickled down to “normal” Macs, Apple had enough experience under its belt to implement them competently.</p>\n\n<p>As for prestige, perhaps you think the existence of the Mac Pro has precisely zero influence on the average MacBook buyer.  The existence of the Corvette probably doesn’t affect the behavior of Chevy Malibu buyers either.  But things change as you creep up the respective product lines, edging closer to the high end.  The <a href=\"http://en.wikipedia.org/wiki/PowerBook_G4#Titanium_PowerBook_G4\">Titanium PowerBook G4</a> was all the more impressive for incorporating the CPU previously only available on Apple’s “<a href=\"http://www.youtube.com/watch?v=gSFeunkpng8\">supercomputer</a>” <a href=\"http://en.wikipedia.org/wiki/Power_Mac_G4\">Power Mac G4</a>.</p>\n\n<p>I used the present tense earlier when I said that the Mac Pro is Apple’s halo car, but that hasn’t actually been true for a while.  By <a href=\"http://arstechnica.com/gadgets/2012/08/as-mac-pro-stagnates-pc-workstations-muscle-ahead/\">allowing the Mac Pro line to languish</a> for so long, Apple has negated any possible prestige effect and abandoned an arena where it could safely push the limits of PC performance.</p>\n\n<p>I know what you're thinking.  That was then, this is now.  The age of the high-end PC is over!  But halo cars are even more absurd than high-end PCs.  There are some pretty hard limits on car performance.  Anything that carries a human around can only pull so many <a href=\"http://en.wikipedia.org/wiki/G-force\">G</a>s before its fragile cargo gives up the ghost.</p>\n\n<p>Compare this to computing power, which has no apparent useful limit.  While <a href=\"http://www.zeroto60times.com/Ferrari-0-60-mph-Times.html\">car performance</a> has increased by perhaps a factor of 5 in the past 50 years (and that's being generous), humanity has absorbed a <i>million-fold</i> increase in computing power during that same period without sating its appetite for more.  (And that factor gets quite a bit larger if I add <a href=\"http://en.wikipedia.org/wiki/GeForce_600_Series#Geforce_GTX_Titan\">GPUs</a> to the mix.)  Computers are not “fast enough.”  They weren’t when they were invented, nor when they got 10x faster, nor when they got 100,000x faster still.  They never will be.</p>\n\n<p>To be clear, absolute performance is not the only worthy technological frontier.  Apple continues to push the limits on many other fronts: <a href=\"http://www.apple.com/ipad-mini/overview/\">miniaturization</a>, <a href=\"http://en.wikipedia.org/wiki/Apple_A6\">power efficiency</a>, <a href=\"http://www.youtube.com/watch?v=xNsGNlDb6xY&amp;t=4m47s\">manufacturing processes</a>, <a href=\"http://www.engadget.com/2012/06/19/apple-and-liquidmetal-hug-it-out-lengthen-their-pact-until-2014/\">materials</a>, and, of course, <a href=\"http://www.apple.com/pr/library/2012/10/29Apple-Announces-Changes-to-Increase-Collaboration-Across-Hardware-Software-Services.html\">user experience</a>.  The same is true for car manufacturing, where <a href=\"http://www.chevrolet.com/volt-electric-car.html\">fuel efficiency</a>, <a href=\"http://en.wikipedia.org/wiki/Lane_departure_warning_system\">safety</a>, <a href=\"http://www.consumerreports.org/cro/money/shopping/ways-to-save-on/save-on-wheels-new-or-used/reliability-snapshot/save-on-wheels-new-or-used-reliability-snapshot.htm\">reliability</a>, and even <a href=\"http://www.youtube.com/watch?v=M4G_WLLzKHw\">comfort</a> are arguably more important axes of innovation than absolute performance (the limits of which can’t be legally explored on public roads anyway). And yet there they all are, those absurd halo cars, laughing in the face of logic.</p>\n\n<h2>Look Into Your Heart</h2>\n\n<p>This brings us to the final, and perhaps most important reason that halo cars exist, and that the Mac Pro—or its spiritual equivalent—should continue to exist.  Let’s talk about the <a href=\"http://en.wikipedia.org/wiki/Lexus_LFA\">Lexus LFA</a>, a halo car developed by Toyota over the course of <i><a href=\"http://en.wikipedia.org/wiki/Lexus_LFA#Development\">ten years</a></i>.  (Lexus is Toyota’s luxury nameplate.)  When the LFA was finally released in 2010, it sold for around $400,000.  A year later, <a href=\"http://www.motorauthority.com/news/1060460_2012-lexus-lfa-a-lost-decade-a-sales-dud/page-2\">only 90</a> LFAs had been sold.  At the end of 2012, production stopped, as planned, after <a href=\"http://lexusenthusiast.com/2012/12/19/more-photos-of-the-final-lexus-lfa-500/\">500 cars</a>.</p>\n\n<p>Those numbers should make any bean counter weak in the knees.  The LFA is a failure in nearly every objective measure—including, I might add, absolute performance, where it’s only about mid-pack among modern supercars.</p>\n\n<p>The explanation for the apparent insanity of this product is actually very simple.  <a href=\"http://en.wikipedia.org/wiki/Akio_Toyoda\">Akio Toyoda</a>, the CEO of Toyota, <i>loves fast cars.</i>  He fucking loves them!  That’s it.  That’s the big reason.  It’s why the <a href=\"http://online.wsj.com/article/SB10001424127887323375204578269181060493750.html\">biggest car maker in the world</a> spent <a href=\"http://www.thetruthaboutcars.com/2012/07/the-making-of-the-lexus-lfa-supercar-an-inside-report-chapter-5-exam-week/\">ten long years and well over a billion dollars</a> developing a car that almost no one will ever own—or even know about, for that matter.  It explains why Toyota scrapped the LFA’s frame design and essentially started over with carbon fiber midway through the development process.  (Talk about a Steve Jobs move.)</p>\n\n<p>And perhaps it also explains why the famously cantankerous <a href=\"http://en.wikipedia.org/wiki/Jeremy_Clarkson\">Jeremy Clarkson</a> of Top Gear, a man who has driven nearly every supercar produced in the last several decades, <a href=\"http://www.topgear.com/uk/tv-show/series-19/episode-2\">recently</a> called the LFA “the best car I’ve ever driven.”</p>\n\n<p>I’m not here to convince you that the LFA is a good car, that you should trust Jeremy Clarkson’s opinions on cars (or anything, really), or that you should buy a Mac Pro.  All the common reasons you’ve heard for Apple to abandon the market for high-end PCs are logically and financially sound.  They also don’t matter.</p>\n\n<p>Apple should keep pushing the limits of PC performance because it’s a company that loves personal computers.  If Apple can’t get on board with that, then all the other completely valid, practical reasons to keep <a href=\"http://www.youtube.com/watch?v=cE2t6Sg_H74\">chasing those demons</a> at the high end are irrelevant.  The spiritual battle will have already been lost.</p>",-         "date_published" : "2013-03-08T16:09:06-05:00",-         "author" : {-            "url" : "http://hypercritical.co",-            "name" : "John Siracusa"-         }-      },-      {-         "id" : "http://hypercritical.co/2013/03/04/fear-of-a-webkit-planet",-         "url" : "http://hypercritical.co/2013/03/04/fear-of-a-webkit-planet",-         "title" : "Fear of a WebKit Planet",-         "content_html" : "<p>I must confess, I was neither surprised nor disturbed by <a href=\"http://www.opera.com/press/releases/2013/02/13/\">last month’s announcement</a> that the Opera web browser was switching to the <a href=\"http://www.webkit.org\">WebKit</a> rendering engine.  But perhaps I’m in the minority among geeks on this topic.</p>\n\n<p>The anxiety about the possibility of a “WebKit monoculture” is based on past events that many of us remember all too well.  Someday, starry-eyed young web developers may ask us, “You fought in the <a href=\"http://www.webstandards.org\">Web Standards Wars</a>?”  (Yes, I was once a <a href=\"http://www.zeldman.com/about/\">Zeldi</a> Knight, the same as your father.)  In the end, <a href=\"http://www.webstandards.org/2013/03/01/our-work-here-is-done/\">we won</a>.</p>\n\n<p>As someone whose memory of perceived past technological betrayals and injustices is so keen that I still find myself unwilling to have a Microsoft game console in the house, my lack of anxiety about this move may seem incongruous, even hypocritical.  I am open to the possibility that I’ll be proven wrong in time, but here’s how I see it today.</p>\n\n<p>As much as I despised Internet Explorer for Windows, and what its simultaneous stagnation and dominance did to the web, I don’t think it’s the correct historical analog in this case.  WebKit is not a web browser.  It’s not even a product.  It’s much more analogous to Linux, an open-source project that any company or individual is free to build on and enhance.</p>\n\n<p>Linux, once a personal project created <a href=\"http://www.amazon.com/gp/product/0066620732/ref=as_li_ss_tl?ie=UTF8&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0066620732&amp;linkCode=as2&amp;tag=siracusa-20\">just for fun</a>, now dominates the <a href=\"http://en.wikipedia.org/wiki/Data_center\">data center</a>.  It’s also in <a href=\"http://www.samsung.com/global/galaxys3/\">phones</a>, <a href=\"http://www.amazon.com/gp/product/B008GGCAVM/ref=as_li_ss_tl?ie=UTF8&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B008GGCAVM&amp;linkCode=as2&amp;tag=siracusa-20\">tablets</a>, <a href=\"http://www.theverge.com/2013/2/6/3958162/valve-steam-box-cake\">game consoles</a>, <a href=\"http://www.amazon.com/gp/product/B005CLPP84/ref=as_li_ss_tl?ie=UTF8&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B005CLPP84&amp;linkCode=as2&amp;tag=siracusa-20\">set-top boxes</a>, and even (<a href=\"http://en.wikipedia.org/wiki/Desktop_Linux#Year_of_Desktop_Linux\">sometimes</a>) PCs.</p>\n\n<p>Is there a “Linux monoculture?”  In some ways, yes.  These days, it’s surprising if a startup creates a hardware product sophisticated enough to need an operating system and that operating system <i>isn’t</i> Linux.  And let’s not forget that Linux has all but wiped out the proprietary Unix-based operating systems that once ruled the high-end.</p>\n\n<p>Linux is the canonical open source success story.  It succeeded for reasons that are now so boring they’re accepted as common sense.  There’s still plenty of room for variation and innovation, but now all the significant achievements are shared with the world.  If a company improves Linux, it’s not just improving its own products; it’s making Linux better for everyone.  Linux let us “put all the wood behind one arrowhead” (to borrow one of <a href=\"http://en.wikipedia.org/wiki/Scott_McNealy\">Scott McNealy’s</a> favorite sayings), but on a global—instead of merely a corporate—scale.  (Funny how things turn out, eh, Scott?)  Linux solved the Unix problem—for everyone.</p>\n\n<p><a name=\"webkit-variety\"></a>WebKit fills a similar role.  Thanks to WebKit, anyone who needs a world-class web rendering engine can get one—for free.  And the products built with WebKit are as varied as those built with Linux.  Even products in the same category vary wildly.  Chrome and Safari, for example, have different features, different extension mechanisms, different JavaScript engines, different process models, and very different user interfaces.  Opera adds yet more variation.  And these are all just standalone web browsers.  Consider all the embedded applications of WebKit, from game consoles to theme-park kiosks, and the idea of a homogenous, stagnating WebKit monoculture seems even more unlikely.</p>\n\n<p>I haven’t forgotten the past.  A single, crappy web browser coming to dominate the market would be just as terrible today as it was in the dark days of <a href=\"http://en.wikipedia.org/wiki/Ie6\">IE6</a>.  But WebKit is not a browser.  Like Linux, it’s an enabling technology.  Like Linux, it’s free, open-source, and therefore beyond the control of any single entity.</p>\n\n<p>Web rendering engines are extremely complex.  There are very few companies that have the expertise to create and maintain one on their own.  (Again, the similarity to Linux is strong here.)  I’m glad all those developers at Apple and Google are working on improving the same open-source web rendering engine, rather than dividing their efforts between two totally different, proprietary engines.  Adding Opera’s developers can only make things better.  The proliferation of WebKit will be a rising tide that lifts all boats.</p>",-         "date_modified" : "2013-03-04T13:15:39-05:00",-         "date_published" : "2013-03-04T13:15:39-05:00",-         "author" : {-            "name" : "John Siracusa",-            "url" : "http://hypercritical.co"-         }-      },-      {-         "id" : "http://hypercritical.co/2013/02/24/annoyance-driven-development",-         "url" : "http://hypercritical.co/2013/02/24/annoyance-driven-development",-         "title" : "Annoyance-Driven Development",-         "date_modified" : "2013-03-04T08:24:32-05:00",-         "content_html" : "<div class=\"image header\"><img src=\"/2013/02/24/images/annoyance.jpg\" width=\"640\" height=\"341\" alt=\"High Maintenance\"/></div>\n\n<p>I’ve been watching <a href=\"http://en.wikipedia.org/wiki/House_of_Cards_(U.S._TV_series)\">House of Cards</a>, the new TV series available exclusively on Netflix, which reportedly outbid HBO, Showtime, and others for the rights to the show.  This is part of Netflix’s ongoing effort to “<a href=\"http://www.theatlantic.com/business/archive/2013/02/netflix-house-of-cards-and-the-golden-age-of-television/272869/\">become HBO faster than HBO can become us</a>.” That quote, from Netflix’s chief content officer Ted Sarandos, neatly draws the battle lines between the old and new worlds of TV.</p>\n\n<p><a href=\"http://en.wikipedia.org/wiki/Hbo#National_expansion.2C_innovation_and_rise_to_prominence_.281975.E2.80.931996.29\">Once the upstart</a>, HBO now finds itself playing catch-up with Netflix in terms of pricing and distribution.  Netflix, meanwhile, is  shelling out its own money to try to overcome its historic inability to offer the <a href=\"http://en.wikipedia.org/wiki/The_Wire\">very</a> <a href=\"http://en.wikipedia.org/wiki/The_Sopranos\">best</a> <a href=\"http://en.wikipedia.org/wiki/Game_of_Thrones_(TV_series)\">content</a>.</p>\n\n<p>I’m not ready to predict a winner in this race—though the two-year wait for HBO to <a href=\"http://gigaom.com/2013/02/12/hbo-go-airplay/\">add AirPlay support to its HBO Go iOS app</a> does not inspire confidence in the old guard.  I’m more interested in what Netflix offers that HBO doesn’t.</p>\n\n<p>The answer is obvious to anyone who has used the service.  For a fixed, low monthly fee, Netflix lets customers watch TV shows and movies whenever they want, wherever they want, on <a href=\"http://www.apple.com/iphone/\">phones</a>, <a href=\"http://www.apple.com/ipad/\">tablets</a>, “<a href=\"http://hypercritical.co/2013/01/07/ces-worse-products-through-software\">smart</a>” <a href=\"http://www.samsung.com/us/2012-smart-tv/index.html?cid=ppc-#apps\">TVs</a>, <a href=\"http://us.playstation.com/ps3/\">game</a> <a href=\"http://www.nintendo.com/consumer/systems/wii/en_na/netflix.jsp\">consoles</a>, <a href=\"http://www.roku.com\">streaming</a> <a href=\"http://www.apple.com/appletv/\">media boxes</a>, <a href=\"http://store.sony.com/c/Blu-ray-Disc-and-DVD-Players/en/c/S_Blu-Ray_Disc?SR=nav:electronics:tv_home_video:bluray_and_dvd_players:shop_compare:ss\">blu-ray players</a>, even <a href=\"http://www.apple.com/mac/\">personal computers</a>—remember those?</p>\n\n<p>Netflix’s decision to release the entire first season of House of Cards all at once is in keeping with its disregard for the traditional limitations of TV.  This is how products and services endear themselves to consumers: remove everything that gets in the way of what we want.  We want to be entertained.  We don’t want to arrange our schedules around your TV show.  We don’t want to watch commercials.  We don’t want to be forced to use a particular device.  We just want it the way we want it.</p>\n\n<p>But even Netflix has been unable to escape some of the trappings of the <a href=\"http://en.wikipedia.org/wiki/Days_of_Future_Past\">days of video past</a>.  A TV series like House of Cards that’s released a season at a time naturally lends itself to multi-episode viewing sessions.  But as I <a href=\"https://twitter.com/siracusa/status/303349850353852417\">recently tweeted</a>, watching a minute and a half of opening credits before each episode can get tiresome.</p>\n\n<p>This position proved somewhat controversial on Twitter.  <a href=\"https://twitter.com/adamschoales/status/303353064100884481\">Hard-working people deserve credit</a>, some said.  Others said that the credits <a href=\"https://twitter.com/xandriks/status/303405858707103744\">set the mood</a> for the show.  Some people just plain <a href=\"https://twitter.com/hoonpark/status/303355647674699776\">liked the credits</a>, with no qualifiers.</p>\n\n<p>But there were also people who agreed with me, people who routinely skip the opening credits (often lamenting the limited content-skipping tools provided by their chosen Netflix viewing device).  <a href=\"https://twitter.com/LandonAB/status/303356960357621760\">One person</a> even read my tweet while killing time as the House of Cards credits ran in another browser tab.</p>\n\n<p>To be fair to Netflix, the existence of opening credits may not be entirely under its control, even when it’s paying for a series itself, given existing <a href=\"https://twitter.com/Jon_Alper/status/303356548443418624\">union contracts</a> for actors, directors, writers, etc.  But getting bogged down in the details of this debate misses the point.</p>\n\n<p>Yes, opening credits are a longstanding part of traditional TV—but so were fixed broadcast schedules, commercial breaks, and viewing all TV shows on a television set.  As the delivery mechanism changes, the content itself must also adapt to its changing context.</p>\n\n<p>Not everyone binges on House of Cards four episodes at a time, but the people who do really love Netflix for making it possible.  Every time I fast-forward through those 90-second opening credits (made more difficult by the occasional variable-length pre-credits scene), I get the opposite feeling about Netflix.  It’s an unhappy reminder of the old world of TV.  No explanation of contractual obligations or artistic credit is going to convince me that I’m mistaken about my own desires.  I just want it the way I want it!</p>\n\n<p>This may sound <a href=\"/2013/02/24/movies/high-maintenance.m4v\">comically</a> selfish, but true innovation comes from embracing this sentiment, not fighting it.  For companies looking to get the best bang for their buck out of technology, this is the way forward.  Find out what’s annoying the people you want to sell to.  Question the assumptions of your business.  Give people what they want and they will beat a path to your door.</p>\n\n<p>This brings us, perhaps surprisingly, to the PlayStation 4, the <a href=\"http://arstechnica.com/gaming/2013/02/sony-reveals-the-first-official-details-of-the-playstation-4/\">newly announced</a> successor to the six-year-old <a href=\"http://en.wikipedia.org/wiki/PlayStation_3\">PlayStation 3</a>.  Six years is an eternity in the world of technology.  For the first few decades of console gaming, each new hardware platform surpassed the capabilities of its predecessor by leaps and bounds.  There was little question about what to do with technology.  More, better, faster was an end in and of itself.  If you build it, the games will come.</p>\n\n<p>The <a href=\"http://en.wikipedia.org/wiki/Wii\">Wii</a> was the first console to break that cycle, directing a large chunk of its innovation toward a novel control scheme, sacrificing raw computing power to do so.  <a href=\"/2013/02/24/images/who-dares-wins.jpg\">It worked</a>.  The Wii became the <a href=\"http://en.wikipedia.org/wiki/History_of_video_game_consoles_(seventh_generation)#Sales_standings\">best-selling console of its generation</a>, and its competitors soon followed with <a href=\"http://www.xbox.com/en-US/kinect\">non-traditional</a> <a href=\"http://us.playstation.com/ps3/playstation-move/\">control schemes</a> of their own.</p>\n\n<p>Based on what’s been announced about the PlayStation 4 so far, it seems that Sony has learned at least some of the lessons of the Wii.  While the PS4 will indeed be substantially more powerful than the PS3 (and embarrassingly more powerful than its competitor from Nintendo, the <a href=\"http://en.wikipedia.org/wiki/Wii_U\">Wii U</a>), Sony has not chosen to sink millions into developing a radical new CPU architecture like the PS3’s <a href=\"http://en.wikipedia.org/wiki/Cell_(microprocessor)\">Cell processor</a> in the hopes that <a href=\"http://en.wikipedia.org/wiki/Million_instructions_per_second#Million_instructions_per_second\">raw MIPs</a> will inexorably lead to market dominance.</p>\n\n<p>Instead, Sony has built the PS4 using a <a href=\"http://arstechnica.com/gaming/2013/02/inside-the-playstation-4-a-balanced-approach-to-building-a-game-console/\">nicely balanced arrangement of existing technology</a>.  All the time, money, and energy that would have otherwise gone toward a true Cell successor has been refocused on ensuring that the PS4 does things that makes Sony’s customers happy.</p>\n\n<p>Game developers are one kind of customer.  There may not be many of them relative to the number of people Sony hopes will buy its products at retail, but developers can make or break a game console by choosing which games to develop for which platform, and when.  And developers sure weren’t happy with the PS3, which was unlike any piece of gaming hardware that had come before it.  Thanks to its familiar combination of an <a href=\"http://en.wikipedia.org/wiki/X86\">x86 CPU</a> and an <a href=\"http://en.wikipedia.org/wiki/Southern_Islands_(GPU_family)\">ATI GPU</a>, the PS4 will be much easier to write games for.</p>\n\n<p>Sony feels gamers’ pain as well.  The PS4 appears to have been designed by identifying the parts of the PS3 experience that are annoying and deploying technology to eliminate them.  Deciding to play a game and being delayed by 30 minutes of mandatory system updates is not fun, so Sony added a dedicated processor to handle background downloads, and a low-power state for the entire system to allow this to happen unattended.  Resuming an interrupted gaming session only to find yourself back at the last checkpoint in the game is not fun, so Sony promises the ability to suspend a game’s state in its entirety and resume later at the instant you left off.  Waiting an hour for a multi-gigabyte game to download before you can start playing it is not fun, so the PS4 will allow games to be played as they download.</p>\n\n<p>Sony is providing new features as well.  A dedicated video encoder allows gameplay to be recorded in real time with no loss of performance, and a “share” button on the controller allows that video to be uploaded (in the background, naturally), without leaving the game.  That same video encoding hardware plus Sony’s game-focused social network will allow players to invite their friends to watch them play in real time.  Sony even promises the ability to play games remotely.  If a player is having trouble with some part of a game, he could invite one of his friends to remotely assume control for a bit to help out.</p>\n\n<p>Now, anyone who remembers Sony’s promises about the PlayStation 3 knows all too well how far they can be from the eventual reality.  I’m very skeptical about Sony’s ability to deliver all the announced PlayStation 4 capabilities in a competent and timely manner.  And then there are all the areas where the interests of gamers and game developers may conflict (e.g., <a href=\"http://penny-arcade.com/report/editorial-article/think-the-ps4-wil-be-best-friends-with-used-games-not-so-fast\">the market for used games</a>).</p>\n\n<p>But when I look at the PlayStation 4 hardware itself, I see a shrewd acknowledgement of the true nature of innovation.  It doesn’t cost much to add dedicated silicon to handle background network transfers and video encoding and decoding, and it sure isn’t sexy, technologically speaking.  Low-power sleep states, instant suspend/resume, progressive downloads, and remote play are all features that are a giant pain to implement and do precisely nothing to make games look, sound, or perform better.  But it’s these things, not the number of CPU/GPU cores or the amount of RAM, that really have a chance of making the PS4 gaming experience stand head and shoulders above what has come before.</p>\n\n<p>We nerds love technology for its own sake.  Indeed, there’s <a href=\"http://hypercritical.co/2013/02/08/dont-stop-thinking-about-tomorrow\">always something to be gained</a> by advancing the state of the art and providing more of a good thing.  But the most profound leaps are often the result of applying technology to historically underserved areas.  By all means, make everything better and faster, but also find the things that seem like minor annoyances, the things that everyone just accepts as necessary evils.  Go after <i>those</i> things and you’ll really make people love you.  Accentuate the positive.  <i>Eliminate</i> the negative.</p>",-         "date_published" : "2013-02-24T20:46:59-05:00",-         "author" : {-            "url" : "http://hypercritical.co",-            "name" : "John Siracusa"-         }-      },-      {-         "date_modified" : "2013-02-08T15:21:56-05:00",-         "content_html" : "<p>The iPhone 5 <a href=\"http://www.extremetech.com/computing/136422-iphone-5-review-round-up-everything-apple-promised\">caught</a> <a href=\"http://www.cnn.com/2012/09/26/tech/mobile/iphone-5-complaints\">some</a> <a href=\"http://gizmodo.com/5945662/the-weirdest-thing-people-hate-about-the-iphone-5\">flak</a> for being “too light.”  Similarly, some consider the latest revision of the iMac to be “<a href=\"http://arstechnica.com/apple/2012/12/review-21-5-inch-2012-imac-takes-two-steps-forward-one-step-back/\">too thin</a>.”  You’ll find some incredulity in the articles that address this topic.  It’s a little silly, right?  After all, what’s the alternative? Thicker and heavier?  Stagnation?  But these complaints are not entirely unreasonable.</p>\n\n<p>When it comes to electronics, density is often a signal of quality.  A product that feels like an empty metal box seems cheap.  A tiny item with surprising heft seems expensive.  For handheld items, higher density can also help produce stronger, more concentrated pressure on the hand.  This helps to more clearly delineate the sensations of a securely held item and an item that’s about to slip out of the hand.  I’ve heard this complaint about the iPhone 5 many times: “It’s so light, I’m afraid I’m going to drop it!”</p>\n\n<p>No one is holding an iMac while using it, so there’s no fear of dropping it.  But if it’s not being held, why the rush to slim down?  Dissatisfaction with the <a href=\"/2013/02/08/images/thinning-imac.jpg\">ever-slimming iMac</a> is exacerbated by the removal of the optical drive in the latest revision.  In all likelihood, that optical drive was going away regardless of the thickness of the iMac’s edge.  (Apple’s been steadily dropping optical drives from the Mac line for years.)  Still, some people can’t help but infer a cause and effect relationship, blaming Apple’s seemingly pointless drive for thinness for the loss of the slot for the spinning shiny things.</p>\n\n<p>In the past, I’ve voiced my own complaints about <a href=\"http://5by5.tv/hypercritical/91\">the edge of the latest iMac</a> and <a href=\"http://5by5.tv/hypercritical/86\">how the iPhone 5 feels in the hand</a>.  But though I might disagree with the timing and details of these changes, I fully support the broader long-term trend towards lighter, thinner hardware.  Here’s why.</p>\n\n<p>In technology, things that can be measured appear to exist on a smooth continuum: large to small, slow to fast.  But the  experiences provided by these measurable quantities often have sharp discontinuities.</p>\n\n<p>Consider touch-screen user interfaces. They’ve existed for decades, but it wasn’t until the iPhone arrived that they entered widespread usage.  Yes, there are many non-tech factors that contributed to this, but the responsiveness of the iPhone’s interface was an essential factor.  With the iPhone, touch interfaces finally crossed the threshold from frustrating to joyful.</p>\n\n<p>I’m not sure where the threshold is, or even what quantities it applies to (e.g., frames-per-second of animation, input lag, finger pressure), but it’s definitely there.  It’s not a steady ramp from unacceptable to acceptable.  It’s a perceived discontinuity—a leap.</p>\n\n<p>Most measurable qualities of tech products have experiential discontinuities like this.  In fact, there are usually <i>multiple</i> discontinuities.  It’s human nature to think that we’re at the pinnacle of useful achievement, but it’s never actually true.  Watch what happens to the experience of using a touch-screen when we go in search of the next discontinuity—what the Microsoft researcher in this video calls “a perceptual cliff.\"\n\n<div class=\"video-container\">\n<iframe width=\"640\" height=\"360\" src=\"http://www.youtube.com/embed/vOvQCPLkPt4?start=52&amp;rel=0\"></iframe>\n</div>\n\n<p>This phenomenon is not limited to performance measurements.  It extends to every aspect of a product, including size, weight, and even shape.  Let’s reconsider the iPhone.  The change in thickness and weight between the iPhone 4S and the iPhone 5 was very small.  Using an iPhone 5 does not feel dramatically different than using a 4S.  Clearly, the iPhone 5 has not yet reached the next perceptual cliff—but it’s out there.</p>\n\n<p>Consider a distant-future iPhone roughly the same width and height as the iPhone 5, but as thin and as durable as a credit card.  Accidentally drop such a phone and it’d flutter harmlessly to the ground.  Now maybe this would be a terrible design—the edges might dig into your hand, and it might be even less secure-feeling when held—but it’d clearly change the equation when it comes to fear of dropping your iPhone (not to mention where and how to carry it, and so on).</p>\n\n<p>Don’t get distracted by the details.  I’m not arguing for or against a particular design.  My point is that it’s important to keep making progress towards the next discontinuity, wherever it may be.</p>\n\n<p>Apple has its compass trained on “thinner and lighter,” a direction that’s proven fruitful in the past.  But as much as we’d all like to jump right to the next big win, <a href=\"http://en.wikipedia.org/wiki/Fifth_generation_computer\">you can’t just skip to the end</a>.  The original iPhone was never going to be followed by the credit-card-thin iPhone—again, ignoring whether this is actually a good idea; stay with me!  Instead, it was followed by the 3G (thicker in the middle, but thinner-feeling on the edge), then the 4 (thinner overall), then the 5 (thinner still), and so on.</p>\n\n<p>The same goes for the iMac, with the same caveats about the direction and endpoint.  How does the iMac change as a product when it’s as thin as an iPad, or a cafeteria tray, or a credit card?  Does it even need to exist at that point?  Maybe the distant-future iMac is “just a big iPad.”  Or maybe some <a href=\"http://en.wikipedia.org/wiki/Project_Glass\">new i/o device</a> makes all of this moot.</p>\n\n<p>Mistakes will be made in the march towards the future.  But the worst possible mistake is neglecting to do the work required to get there because you think we’ve already arrived.  There is no destination; there is only the journey.  Pick a direction or get out of the way.</p>",-         "title" : "Don’t Stop Thinking About Tomorrow",-         "url" : "http://hypercritical.co/2013/02/08/dont-stop-thinking-about-tomorrow",-         "id" : "http://hypercritical.co/2013/02/08/dont-stop-thinking-about-tomorrow",-         "author" : {-            "url" : "http://hypercritical.co",-            "name" : "John Siracusa"-         },-         "date_published" : "2013-02-08T15:08:57-05:00"-      },-      {-         "id" : "http://hypercritical.co/2013/02/02/apples-2013-to-do-list",-         "url" : "http://hypercritical.co/2013/02/02/apples-2013-to-do-list",-         "title" : "Apple’s 2013 To-Do List",-         "date_modified" : "2013-02-02T23:19:04-05:00",-         "content_html" : "<p>I didn’t just lead Apple to a <a href=\"http://www.macworld.com/article/2026112/iphone-ipad-sales-up-macs-fall-as-apple-sees-record-sales.html\">record quarterly profit</a> of $13.1 billion on sales of $54.5 billion, so I don’t expect to be consulted.  But were <a href=\"http://www.apple.com/pr/bios/tim-cook.html\">Tim</a> to ask me, here’s what I would tell him Apple should do in 2013—in broad strokes, and in no particular order.  (We’ve got people to work out the details—right, Tim?)  This is not a fantasy wish list.  These are things I think Apple can and should do this year.  This list is not exhaustive.</p>\n\n<ul>\n\n<li> <p><b>Ship OS X 10.9.</b>  Last year, Apple announced <a href=\"http://daringfireball.net/2012/02/mountain_lion\">OS X’s move to an annual release cycle</a>.   <a href=\"http://arstechnica.com/apple/2011/07/mac-os-x-10-7/\">Lion</a> was released in 2011; <a href=\"http://arstechnica.com/apple/2012/07/os-x-10-8\">Mountain Lion</a> followed in 2012. Two points may make a line, but it’ll take three points to fulfill this promise.  As tired as I get just thinking about writing another OS X review, it’s time to <a href=\"http://hypercritical.co/2012/07/25/mountain-lion\">do it all over again</a>.  (Big cat name optional.)</p></li>\n\n<li> <p><b>Ship iOS 7.</b>  Apple’s mobile platform <a href=\"http://arstechnica.com/apple/2007/01/apple-announces-the-iphone-at-macworld/\">started out</a> way ahead of the competition, and it’s stayed ahead thanks to <a href=\"http://www.macworld.com/article/1151235/apple_rolls.html\">relentless iteration</a>: six releases in six years.  Apple can’t let up now.  What’s left to do in iOS?  <a href=\"http://arstechnica.com/apple/2013/01/bring-us-the-features-an-ars-staff-wish-list-for-ios-7/\">Plenty</a>.</p></li>\n\n<li> <p><b>Diversify the iPhone product line.</b>  There needs to be more than one iPhone.  Selling <a href=\"http://www.verizonwireless.com/b2c/store/controller?item=phoneFirst&amp;action=viewPhoneDetail&amp;selectedPhoneId=5782\">models</a> from <a href=\"http://www.bestbuy.com/site/Apple%26%23174%3B+-+iPhone%26%23174%3B+4S+with+16GB+Memory+Mobile+Phone+-+Black+(AT%26T)/3487784.p;jsessionid=B2B287C1A175C3FA39E1D782F06009E7.bbolsp-app01-141?id=1218410277429&amp;skuId=3487784&amp;contract_desc=\">previous years</a> at a discount is no longer good enough.  Apple can make more attractive phones at similar prices if they’re purpose-built using modern parts and processes.  Margins may go down, but sales will go up.  Apple has done this before, with the Mac, the iPod, and <a href=\"http://www.apple.com/ipad-mini/\">now the iPad</a>.  It’s the iPhone’s turn.  Cheaper, smaller, <a href=\"http://www.marco.org/2013/01/31/iphone-plus-speculation\">bigger</a>, or multiple combinations of these attributes—it doesn’t matter.  Write it down, Tim: more new iPhones in 2013.</p></li>\n\n<li> <p><b>Keep the iPad on track.</b> Ship some new, slimmer, faster, lighter iPads, just like everyone expects.  Cheaper wouldn’t hurt either.  The <a href=\"http://www.apple.com/ipad-mini/\">mini</a> was a great start.  Now ditch the <a href=\"http://en.wikipedia.org/wiki/IPad_2\">iPad 2</a> and make a new model to fill that role, if necessary.  (A larger, more powerful “iPad Pro” would also be great, but this year is probably too soon.)</p></li>\n\n\n<li> <p><b>Introduce more, better Retina Macs.</b> The first Retina MacBook Pro had a GPU that could <a href=\"http://www.anandtech.com/show/6023/the-nextgen-macbook-pro-with-retina-display-review/8\">barely handle</a> all the pixels it was asked to push.  <a href=\"http://www.extremetech.com/computing/134985-apples-new-retina-display-dogged-by-image-retention-increasingly-unhappy-users\">Burn-in</a> was also an issue.  This year, the available <a href=\"http://www.anandtech.com/show/6355/intels-haswell-architecture\">CPU</a>, <a href=\"http://www.anandtech.com/show/6355/intels-haswell-architecture/12\">GPU</a>, and <a href=\"http://en.wikipedia.org/wiki/IGZO\">display</a> options should make the existing 13- and 15-inch Retina MacBook Pros look like the <a href=\"http://www.macworld.com/article/1131864/macbookair.html\">first-generation MacBook Air</a>: technical marvels, but also compromises that we’ll soon be happy to forget.  Oh, and a Retina display on a non-laptop Mac would be nice too.</p></li>\n\n<li> <p><b>Make Messages work correctly.</b> Apple’s <a href=\"http://en.wikipedia.org/wiki/IMessage\">iMessage service</a> is rapidly approaching <a href=\"http://en.wikipedia.org/wiki/Mobileme\">MobileMe</a> levels of undesirable brand association.  Fix it in 2013, or be ready for an iCloud-like rebrand/relaunch in 2014.  Speaking of which…</p></li>\n\n<li> <p><b>Make iCloud better.</b> iCloud beats the pants off MobileMe, but it’s still got plenty of room for improvement.  Google should be the reliability and performance target.  Decide which technologies and APIs under the giant umbrella term “iCloud” are working well, and fix or deprecate the ones <a href=\"http://www.jumsoft.com/2013/01/response-to-sync-issues/\">that are not</a>.</p></li>\n\n<li> <p><b>Resurrect iLife and iWork.</b> Both application suites are in desperate need of some serious attention.  The last new release of iLife was <a href=\"http://www.apple.com/pr/library/2010/10/20Apple-Introduces-iLife-11-With-Major-Upgrades-to-iPhoto-iMovie-and-GarageBand.html\">two years ago</a>; iWork hasn’t had a major revision in <a href=\"http://en.wikipedia.org/wiki/Iwork#Versions\">four years</a>.  People still use these apps.  Abandoning them is not an option (yet).</p></li>\n\n<li> <p><b>Reassure Mac Pro lovers.</b> Fans of the Mac Pro did not get the new machine they wanted in 2012.  After <a href=\"https://developer.apple.com/wwdc/\">WWDC</a> 2012, Tim Cook <a href=\"http://www.macworld.com/article/1167247/cook_apple_planning_professional_mac_for_2013.html\">said</a>, “Although we didn’t have a chance to talk about a new Mac Pro at today’s event, don’t worry as we’re working on something really great for later next year.”  As I’ve frequently noted, this statement is <i>not</i> a promise for a new Mac Pro, but merely for something that customers disappointed in the stagnant Mac Pro will consider “really great.”  2013 has <a href=\"http://arstechnica.com/apple/2013/01/apple-to-stop-shipping-mac-pro-in-europe-on-march-1/\">not gotten off to a good start</a> on that front, but the year is young.  Wow me, Tim.</p></li>\n\n<li> <p><b>Do something about TV.</b>  After years of <a href=\"http://5by5.tv/hypercritical/98\">steadily ramping up its rhetoric</a>, it’s time for Apple to put up or shut up about TV.  Make an actual Apple TV set; allow third-party apps on a massively revised <a href=\"http://www.apple.com/appletv/\">Apple TV box</a>; buy Netflix; whatever—you decide, Tim.  I agree, it’s a hard problem and a tough market.  But it’s time for action.</p></li>\n\n</ul>\n\n<p>Should be a cinch, right?  Too bad there are only two items on this list that will help Apple’s stock price recover from its <a href=\"http://www.nytimes.com/2013/01/24/technology/apple-earnings.html\">calamitous</a> 35% drop over the past four months.  Uneasy lies the head that wears a crown.</p>",-         "date_published" : "2013-02-02T22:39:51-05:00",-         "author" : {-            "name" : "John Siracusa",-            "url" : "http://hypercritical.co"-         }-      },-      {-         "title" : "We Can Remember It for You Wholesale",-         "id" : "http://hypercritical.co/2013/01/25/we-can-remember-it-for-you-wholesale",-         "url" : "http://hypercritical.co/2013/01/25/we-can-remember-it-for-you-wholesale",-         "date_modified" : "2014-08-13T21:14:37-04:00",-         "content_html" : "<div class=\"image header\"><img src=\"/2013/01/25/images/wind-waker-hd.jpg\" width=\"640\" height=\"360\" alt=\"A screenshot from the Wii U remake of The Legend of Zelda: The Wind Waker\"/></div>\n\n<p>The highlight of <a href=\"http://www.nintendo.com/nintendo-direct/archive/01-23-2013/\">Nintendo’s video presentation this week</a> was the announcement of a <a href=\"http://en.wikipedia.org/wiki/Wii_U\">Wii U</a> remake of <a href=\"http://en.wikipedia.org/wiki/The_Legend_of_Zelda:_The_Wind_Waker\">The Legend of Zelda: The Wind Waker</a>, a <a href=\"http://en.wikipedia.org/wiki/Gamecube\">GameCube</a> game originally released in the US a decade ago.  As a dedicated Zelda fan, <a href=\"https://twitter.com/siracusa/status/294096347701841920\">my reaction</a> was predictably enthusiastic.</p>\n\n<p>Elsewhere on the net, fretting about the <a href=\"http://kotaku.com/5978521/five-things-the-wind-waker-remake-needs-to-make-me-buy-it-all-over-again\">content</a> and <a href=\"http://www.ign.com/wikis/the-legend-of-zelda-wind-waker/HD_Screenshot_Comparison\">appearance</a> of the game started immediately.  It made me think about why I’m such a fan of video game remakes while my default position on <a href=\"http://www.imdb.com/title/tt1228987/\">movie remakes</a> is to turn up my nose at them.  How can I hate the <a href=\"http://starwars.wikia.com/wiki/Star_Wars_Trilogy_(Special_Edition)\">Star Wars special editions</a> but love the HD remakes of <a href=\"http://arstechnica.com/gaming/2010/11/masterpiece-ico/\">Ico</a> and <a href=\"http://arstechnica.com/gaming/2011/09/masterpieces-sonys-ps3-update-and-release-of-ico-and-shadow-of-the-collosus-are-must-buys/2/\">Shadow of the Colossus</a>?  I think both sentiments have the same underlying motivation: I don’t want to lose the things I love.</p>\n\n<p>In the case of Star Wars, I’m frustrated not so much by the existence of alternate versions of the movies, but by the disappearance of the original theatrical releases.  I discussed this at length in <a href=\"http://5by5.tv/hypercritical/45\">episode 45 of the Hypercritical podcast</a> (the topic starts at 35:57), but here’s a summary: Artists are often <a href=\"http://john-mccoy.blogspot.com/2011/09/bad-motivator.html\">not the best stewards of their own work</a>.  Once an artistic creation reaches a certain level of cultural significance, it belongs to society at large more than it belongs to the creators—philosophically, if not legally.  Cultural touchstones belong to all of us, and they deserve to be treasured and preserved, regardless of the creator’s wishes.</p>\n\n<p>Video games are an odd art form in <a href=\"http://natebarham.com/post/22653350983/physical-skills-are-the-barrier-to-art\">many ways</a>, one of which is that they’re extremely dependent on their delivery <a href=\"http://en.wikipedia.org/wiki/Computing_platform\">platform</a>.  More established kinds of art like paintings, books, video, and audio recordings have all proven resilient to changes in technology.  The novels of Charles Dickens did not disappear as <a href=\"http://arstechnica.com/business/2009/02/the-once-and-future-e-book/\">book technology evolved</a>.  Most filmmakers have been vigilant about preserving and (eventually) digitizing movies that were shot on film.  (Again, <a href=\"http://arstechnica.com/business/2010/05/star-wars/\">Star Wars stands out as a sad exception</a>.)  All these art forms have a clear path to move forward in time; they’ll always be with us.</p>\n\n<p>Video games are a different story.  Historically, video game platform owners have been unwilling or unable to preserve the works of art originally delivered on their platforms.  When the Wii, <a href=\"http://en.wikipedia.org/wiki/PlayStation_3\">PS3</a>, and <a href=\"http://en.wikipedia.org/wiki/Xbox_360\">Xbox 360</a> all launched with some ability to play games made for the consoles they replaced, I was optimistic about the future.  But the PS3’s ability to play <a href=\"http://en.wikipedia.org/wiki/PlayStation_2\">PS2</a> games rapidly diminished, first losing dedicated hardware support and then disappearing completely.  Similarly, the <a href=\"http://www.engadget.com/2011/10/16/gamecube-free-wii-refresh-heads-to-north-america-competes-with/\">latest iteration of the Wii</a> can’t play GameCube games.  Hoarding and preserving console launch hardware started to make a lot more sense.</p>\n\n<p>Today, Nintendo sells <a href=\"http://en.wikipedia.org/wiki/Virtual_Console\">its own emulated versions of many of its classic games</a>.  Presumably this will extend to Wii U games when that hardware is eventually phased out.  But I have little faith in Nintendo’s motivation to preserve its past beyond its function as an income source.  And let’s not forget all the important video game makers that have gone out of business—or been acquired and re-acquired so many times that they might as well have.</p>\n\n<p>Again, <a href=\"http://www.screened.com/news/behind-the-scenes-of-harmys-star-wars-despecialized-edition/2917/\">as in the case of Star Wars</a>, it has fallen to the fans to preserve classic games, sometimes by <a href=\"http://www.mattholden.com/consoles/\">preserving the original hardware</a>, but most often <a href=\"http://mamedev.org\">through emulation</a>.  This doesn’t just apply to video games that are 30 years old.  Games are becoming inaccessible so rapidly that even platforms created just a handful of years ago already have <a href=\"https://dolphin-emu.org/\">active emulation projects</a>.</p>\n\n<p>That’s the fear that HD remakes tap into.  Though there are many things that can go wrong when an older video game is ported and “improved” for release on a newer hardware platform, the risks are vastly outweighed in my mind by the playable-lifespan extension that a remake bestows on a beloved game.</p>\n\n<p>Right now, I can play Wind Waker on my GameCube and my Wii.  Newer Wiis (and the Wii U) don’t play GameCube games.  Both the GameCube and the Wii send their video signal over a <a href=\"http://en.wikipedia.org/wiki/Component_video\">component</a> cable, at best.  I suspect TVs will stop shipping with component video inputs in a few years, which will leave me at the mercy of video converter boxes.  Eventually, no matter how well I care for them, my 12-year-old GameCube and my 7-year-old Wii will break.  (The optical drives will probably go first.)  But when that happens, my Wii U, with its <a href=\"http://en.wikipedia.org/wiki/Hdmi\">HDMI</a> connection and 2012 manufacture date, will probably still be working.  Time extended!</p>\n\n<p>Alas, things get even more complicated when you consider not just the software but also the controller hardware and the details of the display device.  I’ve still got my <a href=\"http://en.wikipedia.org/wiki/Nintendo_64\">N64</a> in the attic, but my son experienced <a href=\"http://en.wikipedia.org/wiki/The_Legend_of_Zelda:_Ocarina_of_Time\">Ocarina of Time</a> by playing <a href=\"http://zeldawiki.org/The_Legend_of_Zelda:_Collector's_Edition\">the GameCube port</a> on the Wii connected to a <a href=\"http://en.wikipedia.org/wiki/Plasma_display\">plasma HDTV</a>.  Was it the same as playing the original using an N64 controller and an old <a href=\"http://en.wikipedia.org/wiki/Cathode_ray_tube\">CRT</a> television?  Well, not quite.  This problem only gets worse as <a href=\"http://ascii.textfiles.com/archives/3786\">the hardware gets more novel</a>.</p>\n\n<p>In the end, I’m content to at least preserve the software in some playable form, even if the controller and display are slightly different.  Just doing this is turning out to be enough of a fight.  I hope my purchase of the Wii U remake of Wind Waker will help convince Nintendo and other game makers that older titles are valued by gamers long past the death of their original platforms.</p>\n\n<p>I’m also a little afraid that remakes like this will delay or prevent the original version of the game from appearing in an officially sanctioned emulated form.  But for now, I’ll take what I can get.  I’m glad my son has already played the original GameCube version of Wind Waker—twice.  I’m also excited to replay Wind Waker with him on the Wii U in HD.  It won’t be exactly the same as it was, but I think it’ll still be great.  Most importantly, I hope he can share both of these experiences with his children someday.</p>",-         "date_published" : "2013-01-25T14:05:00-05:00",-         "author" : {-            "url" : "http://hypercritical.co",-            "name" : "John Siracusa"-         }-      },-      {-         "date_published" : "2013-01-07T16:31:00-05:00",-         "author" : {-            "url" : "http://hypercritical.co",-            "name" : "John Siracusa"-         },-         "title" : "CES: Worse Products Through Software",-         "id" : "http://hypercritical.co/2013/01/07/ces-worse-products-through-software",-         "url" : "http://hypercritical.co/2013/01/07/ces-worse-products-through-software",-         "date_modified" : "2013-01-07T16:31:00-05:00",-         "content_html" : "<p>Watching the CES coverage out of the corner of my Internet eye, I’m reminded of exactly how bad most hardware makers are at writing software.  <a href=\"https://twitter.com/mat\">Mat Honan</a> summed it up nicely last month: <a href=\"http://www.wired.com/gadgetlab/2012/12/internet-tv-sucks/\">No One Uses Smart TV Internet Because It Sucks</a>.  Amen to that.  But it’s not just TVs.  Who really likes the “software” in their car, microwave, or blu-ray player?</p>\n\n<p>All of this software is terrible in the same handful of ways.  It’s buggy, unresponsive, and difficult to use.  I actually think the second sin is the worst one, especially when it comes to appliances and consumer electronics.  Dials and knobs respond to your touch <i>right now</i>.  Anything that wants to replace them had better also do so.  But just try finding and watching a YouTube video on your TV and see how far you get before your brain checks out.  It’s faster to get up off the couch and walk to a computer—or, you know, whip out your iPhone.</p>\n\n<p>The companies out there that know how to make decent software have been steadily eating their way into and through markets previously dominated by the hardware guys.  Apple with music players, TiVo with video recording, even Microsoft with its decade-old Xbox Live service, which continues to embarrass the far weaker offerings from Sony and Nintendo.  (And, yes, iOS is embarrassing all three console makers.)</p>\n\n<p>Companies that make physical products that have only recently started sprouting sophisticated software features all find themselves in a similar bind.  The obvious solution is to <a href=\"http://en.wikipedia.org/wiki/SMOP\">just make better software</a>.  If only.  I have little faith that these companies are willing and able to transform themselves in the radical ways required to produce and support great software.  Here’s what I see happening instead.</p>\n\n<p>The long-term success of these companies now hinges on how difficult it is to create the hardware product that’s wrapped around their crappy software.  Car makers, for example, are probably safe from software upstarts (if not from other car makers).  The barrier to entry in the auto industry is immense, and the remaining successful car makers have deep expertise in their craft.  If <a href=\"http://www.teslamotors.com\">Tesla</a> succeeds, for example, it won’t be because <a href=\"http://en.wikipedia.org/wiki/MyFord_Touch\">MyFord Touch</a> is slow and unintuitive.</p>\n\n<p>TV makers, on the other hand, should be worried.  Most of the hardware they make is already a component of the industries dominated by the software guys.  The proliferation of “smart” TV features is fueled by the fear of becoming a mere component supplier.  Unfortunately for the companies involved, the terrible quality of these features may actually end up hastening the transitions from “TV maker” to “panel maker.”</p>\n\n<p>At this point, the only thing keeping the hounds at bay is the reality that a TV with non-crappy software requires a much deeper cooperation with content providers.  So while Apple can whip up a TV running iOS in its sleep, giving that software something useful to do requires talking to content owners—and possibly also cable companies and ISPs, who are even more keen to keep the content owners in their camp, and who have <a href=\"http://en.wikipedia.org/wiki/Fiber_to_the_x\">barriers</a> to <a href=\"http://en.wikipedia.org/wiki/Cell_site\">entry</a> that the auto industry would die for.  And this is before even considering the fragmentation of TV and Internet access in the US and around the world.</p>\n\n<p>The hardware barriers that protect ISPs and car makers will probably hold up (much to our detriment, in the case of US ISPs), but I think the TV content owners will eventually come around—or be <a href=\"http://en.wikipedia.org/wiki/House_of_Cards_(U.S._TV_series)\">routed around</a>.  When that happens, the market for formerly “software-neutral” hardware devices like TVs will rapidly follow the same path as the mobile phone market.  If it happens soon enough, it may even be the same familiar handful of companies that gobble up all the losers: Apple, Samsung, Google, maybe even Microsoft.</p>\n\n<p>Until then, we’ll all just have to suffer through—or find a way to ignore—this avalanche of software that’s slowly making our a/v equipment, appliances, and vehicles more annoying to use.</p>"-      },-      {-         "author" : {-            "name" : "John Siracusa",-            "url" : "http://hypercritical.co"-         },-         "date_published" : "2012-11-27T09:42:00-05:00",-         "date_modified" : "2012-11-27T09:42:00-05:00",-         "content_html" : "<div class=\"image header\"><img src=\"/2012/11/27/images/journey.jpg\" width=\"640\" height=\"360\" alt=\"Journey\"/></div>\n\n<p><i>This article originally appeared in <a href=\"http://the-magazine.org/2/strange-game\">issue 2</a> of <a href=\"http://the-magazine.org\">The Magazine</a> on October 25, 2012.</i></p>\n\n<p><a href=\"http://thatgamecompany.com/games/journey/\">Journey</a> for the PlayStation 3 is the best video game I’ve played in a long time.  I’m going to use it to illustrate a larger point about technology, and in doing so, I’m going to spoil the game.  If you have any interest in video games at all, I strongly recommend that you do not read any further until you’ve played it.</p>\n\n<p>Online discourse can be harsh.  Nowhere is this more true than in multiplayer video games.  It’s nearly impossible to play a popular online game without being exposed to — or worse, being the target of — the most vile kinds of <a href=\"http://en.wikipedia.org/wiki/Wikipedia:Griefing\">behaviors</a> and insults, including sexist, racist, and homophobic slurs.</p>\n\n<p>This problem is not confined to video games. Even something as seemingly benign as a comment form on a popular technology blog can trigger profoundly bad behavior. A well-known Penny Arcade comic sums up the phenomenon nicely in the form of <a href=\"http://www.penny-arcade.com/comic/2004/03/19/\">John Gabriel’s Greater Internet Fuckwad Theory</a>, which states: Normal Person + Anonymity + Audience = Total Fuckwad.</p>\n\n<p>Many remedies have been tried: moderation, the use of “real names” (whatever that means), increasingly complex privacy settings, user voting, karma scores, etc.  Sometimes these things help, but often only a little — and they all require constant vigilance.</p>\n\n<p>In frustration, many users and content creators choose to take out the big hammer and end discourse entirely.  <a href=\"http://mattgemmell.com/2011/11/29/comments-off/\">Eliminate blog comments</a>. Mute all voice chat. Disable communication between players on opposing teams.  <a href=\"http://www.youtube.com/watch?v=NHWjlCaIrQo\">The only winning move is not to play</a>.</p>\n\n<p>So goes the conventional wisdom.  But then there’s Journey, a $15 video game for the PlayStation 3.  When you start playing Journey, it’s not even obvious that it’s a multiplayer game.  When other players appear, they are not announced in any way, nor are you directed to interact with them.  Some players choose to ignore them and complete the game on their own.  Others dismiss them as computer-controlled <a href=\"http://en.wikipedia.org/wiki/Non-player_character\">NPCs</a>.  This is the first part of Journey’s solution: interaction with others is optional.</p>\n\n<p>Those who choose to engage with others have only a few choices.  Players can move, jump, and “sing” by pressing a single button, causing a musical note to play and a unique glyph to appear on screen.  The glyph is not selected or drawn by the player; it’s automatically chosen by the game (so <a href=\"http://en.wikipedia.org/wiki/Anshe_Chung#Target_of_griefing\">penis-themed griefing</a> is out of the question). There is no text or voice chat.  Singing is the only way to communicate, and the only control the player has over the note that’s played is the volume and duration.</p>\n\n<p>Most critically, none of these actions can harm other players.  Even movement can’t be used as a weapon; players simply pass through each other, making it impossible to <a href=\"http://www.youtube.com/watch?v=s-rl3RPC_Mw\">bump other players off a high ledge</a> or otherwise perturb their progress. Movement can’t even be used to race ahead and steal a desirable in-game item before another player can get to it, because power-ups are not consumed when acquired: they remain in place for future players to receive.</p>\n\n<p>All of this may sound like it stops just short of banning communication entirely.  Will players even bother to interact with each other?  Surely, such a limited palette of options will render the multiplayer aspects of Journey trite and inconsequential.</p>\n\n<p>But that’s not what happens at all.  Instead, Journey players find themselves having some of the most meaningful and emotionally engaging multiplayer experiences of their lives.  How is this possible?</p>\n\n<p>Though players can’t harm each other, they can <i>help</i> each other.  Touching another player recharges the power used to leap and (eventually) fly.  In cold weather, touching warms both players, fighting back the encroaching frost.  More experienced players can guide new players to secret areas and help them through difficult parts of the game.</p>\n\n<p>Journey players are not better people than Call of Duty players or Halo players.  In fact, they’re often the same people.  The difference is in the design of the game itself.  By so thoroughly eliminating all forms of negative interaction, all that remains is the positive.</p>\n\n<p>Players do want to interact; real people are much more interesting than computerized entities.  In Journey, players inevitably find themselves having positive interactions with others.  And, as it <a href=\"http://malcolmgladwellbookgenerator.com/\">turns out</a>, many people find these positive, cooperative interactions even more rewarding than their usual adversarial gaming experiences.</p>\n\n<p>Does this mean that playing Journey turns players into relaxed, peace-loving, spiritually enlightened beings?  Certainly not — but the limited communication system works in more ways than one.</p>\n\n<p>In the same way that you can imagine the actors in a subtitled film (speaking in a language you don’t understand) are all giving Oscar-worthy performances, it’s natural to assume that every other Journey player has only the best intentions.  After all, while we may judge ourselves by our motivations, we tend to judge others by their actions.  The actions in Journey are all either neutral or positive, so that’s how players perceive each other.</p>\n\n<p>Journey players are also anonymous during the game.  The unique player glyphs are only shown next to PlayStation Network account names when the game is over, and they change on each play-through.  Again, this plays into that subtitled-movie optimism.  It&#8217;s much easier to believe that the anonymous player with the winged glyph is the most caring, thoughtful person in the world when you don&#8217;t know his PSN account name is K1LLSh0t99.</p>\n\n<p>If you want some evidence of the deep feelings triggered by this game, look no further than the <a href=\"http://www.thatgamecompany.com/forum/viewtopic.php?t=1897\">Journey Apologies thread</a> in the official forum for the game.  Here, players apologize to the anonymous others they feel they have disappointed in the game.  It&#8217;s like <a href=\"http://en.wikipedia.org/wiki/Missed_connection\">missed connections</a> for gamers.  Here&#8217;s an example post:</p>\n\n<blockquote><p>To my friend in the fifth area: I never wanted to leave you. I just whiffed really badly on a jump. I miss you. And I&#8217;m sorry.</p></blockquote>\n\n<p>Journey may be just a game, but the lessons it teaches about ourselves and the things we&#8217;re capable of creating can be applied to all of human endeavor.</p>\n\n<p>Throughout history, we humans have invented many different sets of rules for ourselves.  Some have worked better than others, but all of them have been exploited.  As anyone with children knows, if there&#8217;s one thing humans are good at, it&#8217;s finding loopholes.</p>\n\n<p>When a system of rules is applied to many people, thoroughly codified, and consistently enforced, you have something approaching a government.  But for governments, even the most successful change occurs slowly and often happens <a href=\"http://en.wikipedia.org/wiki/African-American_Civil_Rights_Movement_(1955%E2%80%931968)\">painfully</a>. This can lead even the most optimistic person to despair.</p>\n\n<p>Human history is long, but how many different sets of rules have really been tried? In <a href=\"http://en.wikipedia.org/wiki/Real_life#Related_terminology\">meatspace</a>, it&#8217;s so difficult to establish a new set of rules or change the existing ones that the rate of design iteration is severely limited.</p>\n\n<p>This is not so in the relatively consequence-free worlds of video games and the Internet.  In the digital realm, wild experimentation and rapid iteration are the norm.  It&#8217;s also much easier to establish and enforce an iron-clad set of rules in a virtual world than in the real one.  This is the environment that created Journey, and its rarity is why it&#8217;s such a joy.</p>\n\n<p>The lesson of Journey is that success is possible, even in an area like online multiplayer interaction which has seemed so hopeless for so long over so many thousands of iterations.  Success is possible.</p>\n\n<p>But let&#8217;s go further.  Our digital lives increasingly affect our real lives.  Consider Twitter, another system for online interaction that has succeeded in large part thanks to its novel set of rules and limitations.  There&#8217;s a whole world of bad behavior that doesn&#8217;t fit into 140 characters and doesn&#8217;t work when producer/consumer relationships are asymmetrical.  Twitter isn&#8217;t just a game; its influence extends into the real world, in ways we don&#8217;t yet fully understand.</p>\n\n<p>As another US presidential election season grinds on and I become freshly disillusioned with the seemingly intractable problems in our system of government, Journey and Twitter give me hope.  They make me believe that maybe, just maybe, the digital world can be both a laboratory for new ideas and, eventually, a giant lever with which to change the formerly unchangeable.</p>",-         "url" : "http://hypercritical.co/2012/11/27/strange-game",-         "id" : "http://hypercritical.co/2012/11/27/strange-game",-         "title" : "Strange Game"-      },-      {-         "title" : "About My Mountain Lion Review",-         "id" : "http://hypercritical.co/2012/07/25/mountain-lion",-         "url" : "http://hypercritical.co/2012/07/25/mountain-lion",-         "date_modified" : "2014-10-17T08:59:48-04:00",-         "content_html" : "<p>As I have for the past 13 years (yikes!), I wrote a review of the latest major release of the Mac operating system, <a href=\"http://arstechnica.com/apple/2022/07/os-x-10-8/\">OS X 10.8 Mountain Lion</a>, for <a href=\"http://arstechnica.com/\">Ars Technica</a>.  There are several ways to read it.</p>\n\n<ul>\n<li> <a href=\"http://arstechnica.com/apple/2022/07/os-x-10-8/\">Read it for free on the web</a></li>\n\n<li> <a href=\"http://www.amazon.com/gp/product/B008OYE8O8/ref=as_li_ss_tl?ie=UTF8&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B008OYE8O8&amp;linkCode=as2&amp;tag=siracusa-20\">Buy the Kindle ebook for $4.99</a>\n\n<li> <a href=\"http://arstechnica.com/subscriptions/\">Subscribe to Ars Premier for a month for $5</a> and get <i>all</i> of these options:\n\n<ul>\n<li> Read it on a single, ad-free web page\n<li> Download an iBooks-compatible EPUB file\n<li> Download a PDF\n</ul>\n\n</ul>\n\n<p>Here are my thoughts on the various reading options.</p>\n\n<h2 id=\"web-version\">The Web Version</h2>\n\n<p>I consider the web version to be the canonical version, and the version with the best formatting and the most features.  I believe that good writing for the web includes a lot of links.  A web browser is the best place to inspect and follow those links.</p>\n\n<p>The free web version has ads, and it’s split up into multiple “pages” (which are actually much longer than a single printed page).  This kind of pagination annoys some people.  I actually like it for very long articles because it helps me keep my place across multiple reading sessions.  I can remember I was on page 8 instead of remembering the exact point in a very long, scrolling web page.</p>\n\n<p>That said, I also really like how an <a href=\"ttp://arstechnica.com/subscriptions/\">Ars Premier subscription</a> eliminates all ads from the Ars Technica website and gives me the option to view any article on a single page.  I use single-page view on very long articles when I’m searching for some text using my web browser’s “Find…” feature.  I use it all the time on short articles.</p>\n\n<p>Some people think Ars Technica forces me to break my article up into many tiny pages.  That’s not the case.  I choose how to paginate the article.  I like to break it up on logical section boundaries, which means that the “pages” vary widely in length.  This year, Ars Technica actually asked me to merge several pages together to reduce the total number of pages (and I did).</p>\n\n<h2>The eBooks</h2>\n\n<p>This year, I created the Kindle and EPUB versions of the article myself.  They’re both generated from the canonical HTML version of the article.  Both ebook formats have severe limitations, most of which are imposed by the reader software.</p>\n\n<p>Reading the Kindle version using a device or application that supports <a href=\"http://www.amazon.com/gp/feature.html?docId=1000729511\">Kindle Format 8</a> provides the best experience of any of the ebook formats.  Kindle Format 8 readers support amazing new technologies such as text that flows around images and the ability to tie a caption to an image.  Yes, that was sarcasm.</p>\n\n<p>Unfortunately many Kindle reading devices and applications <i>don’t</i> support Kindle Format 8.  Most notably, the <a href=\"http://itunes.apple.com/us/app/kindle-read-books-magazines/id302584613?mt=8\">iOS Kindle app</a> still does not support Kindle Format 8.  <a href=\"http://www.amazon.com/kindleformac\">The Mac version</a> does, however, as does the <a href=\"http://www.amazon.com/gp/product/B0051VVOB2/ref=as_li_ss_tl?ie=UTF8&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B0051VVOB2&amp;linkCode=as2&amp;tag=siracusa-20\">Kindle Fire</a>.</p>\n\n<p>The Kindle ebook is a single file that contains two versions of the content: one in Kindle Format 8, and one in the older Kindle format.  Open the same ebook file in both the Mac and iOS Kindle reader applications and you’ll see two very different appearances.</p>\n\n<p>Apple’s iBooks app displays the EPUB version of the book almost as well as the Kindle Format 8 readers, but it has an annoying habit of stretching the content to fit the vertical space of the page when a large image causes a mid-page break.  This can cause the image captions to be separate from their associated images by a big swath of whitespace.</p>\n\n<p>Lesser reader applications and devices display the Kindle and EPUB files in progressively more depressing ways. Most (all?) ebook reader applications also don’t provide a nice way to have a text link briefly display an image on top of the content, or to show a larger, un-cropped version of an inline image. I really wish ebook readers had the same capabilities and behaviors as a modern web browser.</p>\n\n<p>(I was not involved in the creation of the PDF version, but I imagine I’d find the limitations of the PDF format similarly frustrating.)</p>\n\n<h2>The Pricing</h2>\n\n<p>The Mountain Lion Kindle ebook is $4.99, which is the same as last year’s Lion ebook.  I considered a lower price, but Amazon’s ebook royalty system is definitely geared towards higher-priced (or maybe just smaller) ebooks.  Even at $4.99, more than half the purchase price is going to Amazon.  You can <a href=\"https://kdp.amazon.com/self-publishing/help?topicId=A29FL26OKE7R7B\">read Amazon’s pricing page</a> and do the math for yourself for a 7.5 MB Kindle ebook.</p>\n\n<p>At various times, people have asked me if I have <a href=\"https://flattr.com/profile/siracusa\">a flattr account</a> or something similar through which they can send me money.  It’s always felt weird to me for anyone to be sending me money “just because.”  I’m much more confortable creating something and then selling it to people who want it.  My Mountain Lion review provides just such an opportunity.</p>\n\n<p>Last year was the first year that Ars Technica tried selling ebook versions of my writing.  <a href=\"http://www.niemanlab.org/2011/07/ars-technica-cashes-in-on-the-siracusa-brand-and-word-count-with-a-kindle-edition-of-his-review/\">The results</a> certainly exceeded my expectations, but I didn’t get any part of the ebook profits.  This year, I will.</p>\n\n<p>So if you’re one of those people who has asked about sending money to thank me for <a href=\"http://arstechnica.com/author/john-siracusa/\">my writing</a>, <a href=\"http://5by5.tv/hypercritical\">my podcast</a>, or whatever, only to be rebuffed by my discomfort with receiving “<a href=\"http://www.youtube.com/watch?v=lAD6Obi7Cag\">money for nothing</a>,” now’s your chance to pay money for something: <a href=\"http://www.amazon.com/gp/product/B008OYE8O8/ref=as_li_ss_tl?ie=UTF8&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B008OYE8O8&amp;linkCode=as2&amp;tag=siracusa-20\">buy the Kindle ebook</a> or <a href=\"http://arstechnica.com/subscriptions/\">subscribe to Ars Premier</a> for a month or a year.</p>\n\n<h2>The Stats</h2>\n\n<ul>\n<li> 25,517 words.</li>\n<li> 167 images (31.6 MB)</li>\n<li> 371 original screenshots (252 MB)</li>\n<li> 10,339 words of research notes.</li>\n<li> 1,253 lines of Perl code across 10 scripts to generate three different formats from the canonical HTML source: Ars CMS, EPUB, and Kindle.\n<li> All three formats were generated 168 times (so far).\n<li> I saved the document 2,166 times while writing it in <a href=\"http://www.barebones.com/products/bbedit/\">BBEdit</a>.</li>\n<li> The article content was constantly backed up onto 6 different hard drives on three different Macs in two different locations (thanks to <a href=\"http://db.tt/KgXbHWr\">Dropbox</a>, <a href=\"http://arstechnica.com/apple/2007/10/mac-os-x-10-5/14/#time-machine\">Time Machine</a>, and <a href=\"http://www.shirt-pocket.com/SuperDuper/\">SuperDuper</a>), and pushed up to two different online backup services (<a href=\"http://www.backblaze.com/\">Backblaze</a> and <a href=\"http://www.crashplan.com/\">CrashPlan</a>).</li>\n<li> Applications used: <a href=\"http://www.barebones.com/products/bbedit/\">BBEdit</a>, <a href=\"http://www.nuance.com/for-individuals/by-product/dragon-for-mac/dragon-dictate/index.htm\">Dragon Dictate</a>, <a href=\"http://support.apple.com/kb/HT2523\">TextEdit</a>, <a href=\"http://simplenoteapp.com/\">Simplenote</a>, <a href=\"https://www.adobe.com/products/photoshopextended.html\">Photoshop CS6</a>, <a href=\"http://www.vmware.com/products/fusion/overview.html\">VMware Fusion</a>, <a href=\"http://iconfactory.com/software/xscope/\">xScope</a>, <a href=\"https://developer.apple.com/xcode/\">Xcode</a>, <a href=\"http://www.barebones.com/products/yojimbo/\">Yojimbo</a>.\n</ul>\n\n<h2>Highlights from the Future</h2>\n\n<p>In an earlier post, <a href=\"http://siracusa.tumblr.com/post/15138872275/highlights-from-2011\">Highlights from 2011</a>, I worried that the audience for <a href=\"http://arstechnica.com/author/john-siracusa/\">my brand of tech writing</a> was an ever-shrinking portion of a much larger, broader market.  I often feel the same way about my podcast, <a href=\"http://5by5.tv/hypercritical\">Hypercritical</a>—the third thing to share this name. (In order: <a href=\"http://arstechnica.com/staff/2009/05/hypercritical/\">2009</a>, <a href=\"http://siracusa.tumblr.com/post/376341247/meta-tumblr\">2010</a>, <a href=\"http://5by5.tv/hypercritical\">2011</a>.)</p>\n\n<p>But the web traffic and ebook sales from last year’s Lion review showed me that, at the very least, my audience is still growing in absolute numbers even as it may be shrinking as a percentage of the whole.  For that, I continue to be very grateful, and I hope this year turns out just as well.  Thanks to all of my fellow nerds for allowing me to continue to do this.</p>",-         "date_published" : "2012-07-25T08:40:00-04:00",-         "author" : {-            "url" : "http://hypercritical.co",-            "name" : "John Siracusa"-         }-      },-      {-         "title" : "Better Pasta",-         "id" : "http://hypercritical.co/2012/02/15/better-pasta",-         "url" : "http://hypercritical.co/2012/02/15/better-pasta",-         "content_html" : "<p>I like pasta.  I’d like to help people make better pasta.  It pains me to think about all the poorly prepared pasta being served and eaten in America.  My advice will focus on plain old store-bought dried pasta.  Nothing fancy.  You’ve probably made some yourself.</p>\n\n<p>I’m specifically <i>not</i> talking about preparing or cooking fresh pasta, how to execute any particular pasta recipe, or why you should never, ever buy pasta sauce in a jar.  (You really shouldn’t, though.)  This is just about the basics: how to cook and serve dried pasta as part of some larger recipe, the details of which are out of scope, for now.\n\n<p>Here’s my advice, in no particular order.</p>\n\n<p><b>Do not overcook your pasta.</b></p>\n\n<p>Please, I beg you, do not overcook your pasta. Every time you serve a pile of starchy, gelatinous mush, an Italian grandmother sheds a single, silent tear.  Overcooking is <i>by far</i> the most common pasta sin in America.  (As evidence, consider that <a href=\"http://en.wikipedia.org/wiki/Olive_Garden\">Olive Garden</a>, the gold standard for incorrectly prepared Italian food, <a href=\"http://online.wsj.com/article/SB10001424052970204466004577102464033301888.html\">intentionally overcooks its pasta</a>.)</p>\n\n<p>These days, the cooking times on most boxes of dried pasta are in the ballpark, but there are exceptions.  Boxed macaroni and cheese and other “children’s” pasta products routinely have cooking times that should be cut in <i>half</i>.  But even in the best case, cooking times are just estimates.  The actual cooking time will depend on the temperature and humidity of your kitchen, the mass and thermal conductivity of your cookware, the power of your cooktop, and on and on.</p>\n\n<p>As you gain experience, you’ll be able to tell when pasta is ready by “feel” (with a pair of tongs or a stirring spoon).  But the old fashioned way is still the most reliable: taste a piece.  Drop the pasta in the boiling water (see the next section for more on that), set a timer for 1-2 minutes <i>less than</i> the time on the box of your trusted dried pasta brand, and start tasting when it goes off.</p>\n\n<p>There’s an old saying about cooking eggs: done in the pan, overdone on the plate.  The same goes for pasta.  It will continue to cook after you remove it from the pot, and even more so when you put it directly into another hot pan or combine it with other hot, moist ingredients.</p>\n\n<p>Dried pasta in hot water cooks from the outside in.  The very last part to be cooked is the part that’s the least accessible to the hot water (e.g., the “knot” in the middle of a <a href=\"http://en.wikipedia.org/wiki/Farfalle\">farfalle</a> bow tie).  Once the pasta is “cooked through,” meaning there’s no longer any trace of hard, dried pasta at the center, you’ve probably already waited too long to take it out of the water.</p>\n\n<p>Here’s a good heuristic for string-shaped pasta like spaghetti.  Fold the pasta back on itself and pinch it near the end, forming a small loop where it makes a u-turn.  If that loops closes easily and completely collapses on itself, leaving no hole at all, you’ve waited too long to remove it from the water.</p>\n\n<p>One last tip on cooking times.  Pasta with a lot of surface area (e.g., <a href=\"http://en.wikipedia.org/wiki/Rotini\">rotini</a>) cooks faster, and it also <i>overcooks</i> faster.  It can take only a few seconds to go from “just right” to “too late.”  Be aware of your pasta shape.  The more surface area, the smaller the margin for error.</p>\n\n<p>I’m going to continue to my next point, but cooking time will come up again.  If you learn only one thing from reading this, it should be that doneness is the most complicated, difficult, and important aspect of cooking pasta.</p>\n\n<p><b>Cook your pasta in a sufficient amount of boiling, salted water.</b></p>\n\n<p>How much is a “sufficient” amount?  A good rule of thumb is 4-6 quarts of water for each pound of dried pasta. (Most boxes of dried pasta are 1 pound.)  You can <a href=\"http://cooking.stackexchange.com/questions/6162/what-is-the-correct-water-to-pasta-ratio\">probably get away with</a> using <a href=\"http://www.nytimes.com/2009/02/25/dining/25curi.html?pagewanted=all\">less</a>, but I think that leads to a pot that feels too crowded.</p>\n\n<p>Fill your pot with cold water from the tap.  Hot water is more likely to pick up unpleasant stuff from the pipes.  Salt the water until it tastes like the ocean<sup id=\"fnref:1\"><a href=\"#fn:1\" rel=\"footnote\">1</a></sup>.  (If you don’t know what ocean water tastes like, please take a break now and find out.  This blog post will be here when you return.)  Nothing other than salt needs to be in the water.  Do not add oil.</p>\n\n<p>I’ve heard people say they add oil to the water to prevent the pasta from sticking to itself.  This is misguided on multiple levels.  First, the pasta will spend most of its time below the surface of the water, far from the oil which will all stay on the surface of the water.  Second, you want pasta’s natural, starchy surface to be exposed upon exiting the water so the pasta can absorb the flavorful ingredients you’re about to combine it with.  An oil coating would impair that.</p>\n\n<p>As with most kitchen myths, there is a kernel of truth behind the notion of oil in the pasta water:  pasta that sticks together is bad.  You do not want pasta to stick to other pieces of pasta, or to any part of the pot you’re boiling it in.  But the solution to this problem is simple: stir the pasta at a few key points during the cooking process.</p>\n\n<p>Stir right after you dump the pasta into the water.  Adding the pasta will decrease the temperature of the water, and may even take it off the boil.  This is fine, but it does mean that the bubbling action won’t be there to keep the pasta from settling to the bottom and sticking to itself or the hot surface of the pot.</p>\n\n<p>Stir again as the boil comes back, to confirm that the pieces really are all separate and not sticking to each other.  With any luck, the bubbles will keep everything moving and all the pieces of pasta separated for the rest of the cooking time.</p>\n\n<p> Long, stringy pasta shapes require the most stirring later in the cooking process because you can’t agitate them well until they become pliable, and at that point they may have been pressing up against their neighbor strands in hot water for a while.  Be vigilant.  If a few get away from you, tongs can help separate strands once the boil is rolling along again.</p>\n\n<p>(And please, do not break long, stringy pasta.  Cook and eat it at its natural length.  You’ll figure out the fork-twirling thing with a little practice.)</p>\n\n<p><b>Finish cooking your pasta in the sauce.</b></p>\n\n<p>Pasta should go directly from the hot water where it (mostly) cooked into a vessel where it will be combined with the rest of the ingredients in the finished dish.  It could be a traditional tomato sauce, olive oil with garlic, or a complicated multi-ingredient mixture.  Whatever it is, the pasta must <i>immediately</i> meet it.</p>\n\n<p>You should use a colander if it will take more than 15 seconds to fish out the pasta with tongs or other utensils.  Remember, it’s still cooking!  If you do use a colander, <i>do not rinse your pasta</i>.  Just think of the colander as a really large utensil for separating the pasta from the water and bringing it to its next vessel.</p>\n\n<p>When combining the pasta with the other ingredients, try to coat each and every piece of pasta.  If possible, undercook the pasta slightly (i.e., leave a tiny bit of uncooked dry pasta at the center) and really finish cooking it in the sauce.  This is most practical when combining a small amount of pasta with a sauce prepared in a very wide pan, preferably one that contains some liquid.  If liquid is lacking, a bit of the water that the pasta cooked in can be added.  (A splash of starchy pasta water is a common liquid thickener in many simple pasta recipes.)</p>\n\n<p><b>Sauce your pasta, but don’t over-sauce it.</b></p>\n\n<p>In case this doesn’t go without saying, if there’s a large volume of sauce, like a giant simmering pot of tomato sauce, don’t dump the pasta into it.  You will need some other pot or pan in which to mix the pasta and just the right amount of sauce.</p>\n\n<p>Once the hot water has been removed from it, the pot the pasta cooked in makes the perfect mixing vessel (and you won’t have to dirty another pot).  You may want to put a ladle full of sauce in the bottom of the pot before you dump the freshly drained pasta into it, lest a few pieces stick to the hot bottom.  Ladle in more sauce a bit at a time and mix until every piece of pasta is coated.</p>\n\n<p>It seems to be the inclination of Americans to put on too much sauce, so when in doubt, under-do it.  Sauce should touch every piece of pasta, but that doesn’t mean every piece should be covered with an opaque red coating.</p>\n\n<p>At the opposite end of the spectrum is the bowl of pale, virgin pasta with a giant mound of tomato sauce on top of it—a tasteless starch ball with a red hat.  This is almost as big a sin as overcooking (and is usually combined with it, naturally).</p>\n\n<p>Remember, sauce (or oil or whatever) must touch every piece.  You have to mix it in before serving.  Yes, even if you plan to provide more sauce on the side for people to add.  If you learn only two things from reading this, let the second be that you must never, ever serve a single piece of pasta that looks like it just came out of hot water and never touched another ingredient.</p>\n\n<p><b>Pasta should be served in warm bowls.</b></p>\n\n<p>If you plan to put the pasta in a large serving bowl, warm that bowl, and also warm all the individual bowls for each place setting.  The easiest way to warm bowls is to pour the hot pasta water into them.  If using a colander, line the bottom of your sink with bowls (stacking if necessary) and put the colander into one of them.  Then pour the pasta water into the bowls, ending by pouring the last of the water and the pasta itself into the colander.  If you have a fancy “warming drawer,” that works too.  But you’re going to have a bunch of hot water on hand anyway, so you might as well use it.</p>\n\n<p>This may all sound crazy—warm bowls? really?—but trust me, it makes a difference. Putting hot, freshly sauced pasta into a massive, cold, ceramic dish will instantly suck the life out of it.  Warm bowls.  Seriously.</p>\n\n<p><b>Serve and eat immediately.</b></p>\n\n<p>Baked pasta dishes are an exception; they almost always need to rest a while before serving.  But hot pasta mixed with sauce or other ingredients and not put into an oven must be served and eaten as soon as it’s ready.  This usually means that the pasta shouldn’t even be dropped into the hot water until everyone is in the process of coming to the table.  Some dishes can stand up to a few minutes on the table in a (warm) serving bowl, but the clock is ticking.</p>\n\n<p><b>Maintain perspective.</b></p>\n\n<p>If this all sounds pedantic and overwrought, well, it is.  But like anything else in cooking, it all becomes second nature if repeated enough times.  Just note your mistakes each time and try to do the opposite next time.</p>\n\n<p>I’m sure there are people reading this who have literally never undercooked pasta in their lives.  Try that next time.  See if you can intentionally undercook some pasta.  You may find it harder than you think.  Once you’ve done that, go back in the other direction.  Eventually, you’ll home in on “just right.”</p>\n\n<p>It’s often the case that the simpler the food, the more important the ingredients and the preparation techniques become.  This is true for eggs, and it’s definitely true for pasta.</p>\n\n<p>And speaking of ingredients, please do buy the best you can afford when making pasta dishes.  Dried pasta itself is incredibly inexpensive, and you shouldn’t be smothering it in sauce.  Spend your money on a little bit of good olive oil, fresh garlic, and real cheese.  Yes, <a href=\"http://www.google.com/search?q=parmigiano+reggiano\">parmigiano reggiano</a> is over $20 per pound these days, but a little goes a long way.  And when that freshly grated cheese hits the hot surface of that perfectly cooked pasta sitting in its warmed bowl, you’ll know it’s all been worth it.</p>\n\n<hr>\n\n<p><b>Bonus tip: pasta in soups.</b></p>\n\n<p>Many soup recipes include pasta: elbow macaroni, tiny stars, wide noodles, etc.  Pasta will overcook in soup just as easily as it will overcook in water.  To prevent this, cook the pasta ahead of time, undercooking it slightly.  After removing the pasta from the water, do something I just told you never to do: rinse the pasta in cold water to stop the cooking process, coat it in olive oil to prevent it from sticking to itself, then set it aside.</p>\n\n<p>When the time comes to serve the soup, add just the right amount of pasta to each individual bowl.  The (relatively) cool pasta will warm up quickly in the hot soup, and finish cooking through by the time the first bite is taken.  It will also help lower the temperature of the soup sightly, making it easier to eat with less blowing and potential tongue burning.</p>\n\n<div class=\"footnotes\">\n<hr>\n<ol>\n<li class=\"footnote\" id=\"fn:1\"><p>Well, not really.  The “salty as the ocean” rule works because most people under-salt their pasta water, and the right amount tastes like their memory of the sea.  For actual percentages, see <a href=\"http://www.seriouseats.com/2014/05/how-salty-should-pasta-water-be.html\">this article at seriouseats.com</a>. <a href=\"#fnref:1\" title=\"return to article\">↩</a></p>\n</li>\n</ol>\n</div>",-         "date_modified" : "2014-05-16T15:03:21-04:00",-         "date_published" : "2012-02-15T00:30:00-05:00",-         "author" : {-            "url" : "http://hypercritical.co",-            "name" : "John Siracusa"-         }-      },-      {-         "date_modified" : "2012-01-07T15:32:00-05:00",-         "content_html" : "<p>This past year was an eventful one for someone like me who has already passed most of the common milestones of adulthood (college, marriage, home ownership, children).  The highlights:</p>\n\n<ul>\n\n<li> <p>I started <a href=\"http://5by5.tv/hypercritical\">a weekly podcast</a> with <a href=\"http://5by5.tv/person/dan-benjamin\">Dan Benjamin</a>, named after this blog (which, in turn, was named after <a href=\"http://arstechnica.com/staff/fatbits/2009/05/hypercritical.ars\">something I wrote for Ars Technica</a> in 2009).  I’ve been amazed by the popularity of the show and the quality of the listener feedback and participation.  Special thanks to <a href=\"https://twitter.com/mutewinter\">Jeremy Mack</a>, creator of <a href=\"http://showbot.me/\">showbot.me</a>, and <a href=\"https://twitter.com/xuff/\">Justin Michael</a>, creator of <a href=\"http://5by5illustrated.com/\">5by5illustrated.com</a>.</p>\n\n<p>I’ve also become a devoted fan of several other podcasts on the 5by5 network, co-hosted by <a href=\"http://5by5.tv/person/dan-benjamin\">Dan Benjamin</a>: <a href=\"http://5by5.tv/b2w\">Back to Work</a> with <a href=\"http://www.merlinmann.com/\">Merlin Mann</a>, <a href=\"http://5by5.tv/buildanalyze\">Build and Analyze</a> with <a href=\"http://marco.org/\">Marco Arment</a>, <a href=\"http://5by5.tv/ia\">The Ihnatko Almanac</a> with <a href=\"http://ihnatko.com/\">Andy Ihnatko</a>, and <a href=\"http://5by5.tv/talkshow\">The Talk Show</a> with <a href=\"http://daringfireball.net\">John Gruber</a>.  And for dessert, <a href=\"http://www.merlinmann.com/roderick/\">Roderick on the Line</a> with <a href=\"http://en.wikipedia.org/wiki/John_Roderick_(musician)\">John Roderick</a> and <a href=\"http://www.merlinmann.com/\">Merlin Mann</a>.</p>\n</li>\n\n<li> <p>Though it started in 2010, <a href=\"http://5by5.tv/incomparable/\">The Incomparable</a>, a geek ensemble podcast on which I’m proud to be a semi-regular guest, really hit its stride in 2011, with some great episodes about Star Wars (ANH <a href=\"http://5by5.tv/incomparable/46\">part 1</a> and <a href=\"http://5by5.tv/incomparable/47\">part 2</a>; ESB <a href=\"http://5by5.tv/incomparable/67\">part 1</a> and <a href=\"http://5by5.tv/incomparable/68\">part 2</a>), Pixar (<a href=\"http://5by5.tv/incomparable/49\">part 1</a> and <a href=\"http://5by5.tv/incomparable/50\">part 2</a>), giant fantasy novels (<a href=\"http://www.theincomparable.com/2011/03/29-magic-fridge.html\">The Name of the Wind</a> and <a href=\"http://5by5.tv/incomparable/63\">The Wise Man’s Fear</a>), plus a <a href=\"http://5by5.tv/incomparable/36\">bushel</a> of <a href=\"http://5by5.tv/incomparable/45\">episodes</a> about <a href=\"http://5by5.tv/incomparable/56\">Dr. Who</a> and <a href=\"http://5by5.tv/incomparable/43\">other</a> <a href=\"http://5by5.tv/incomparable/20\">TV shows</a> and <a href=\"http://5by5.tv/incomparable/15\">movies</a>.</p>\n\n<p>I enjoy being on this podcast all out of proportion to the number of listeners it’s managed to gather.  If you have even a fraction of the fun listening as I do recording this show, you should definitely <a href=\"http://5by5.tv/incomparable/\">give it a try</a>.  (And if you’re already a listener, why not <a href=\"http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=388887532\">rate it or write a review in iTunes</a>?)</p></li>\n\n<li> <p>In June, I made my first trip to <a href=\"http://developer.apple.com/wwdc/\">WWDC</a> in San Francisco, which was also my first trip farther west than Colorado.  Ostensibly, I made the trip because I was afraid that Mac OS X 10.7 Lion would be released after WWDC but before Apple published videos of the sessions for non-attendees.  (I rely on the information presented at WWDC when writing my Mac OS X reviews for <a href=\"http://arstechnica.com/\">Ars Technica</a>.)  But really, going to WWDC is something I’d always wanted to do.</p>\n\n<p>The trip was expensive, and I had to take time off work to do it, but it was so worth it.  I saw what turned out to be Steve Jobs’s <a href=\"http://arstechnica.com/staff/fatbits/2011/10/steve-jobs-a-personal-remembrance.ars\">final</a> keynote presentation.  I met tons of people in person that I’d known for years online, and made several new friends.  I also got to talk to a handful of famous (well, “nerd famous”) people in the Apple community that I’d never imagined I’d ever have any contact with.  I refuse to name-drop them, lest it cheapen the experience (and no, sadly, Steve Jobs was not one of them), but the suffice it to say that it exceeded all my expectations.  I’m not sure when or if I’ll make it to WWDC again, but it’ll be extremely hard to top my first time.</p></li>\n\n<li> <p>Apple’s release of Mac OS X 10.7 Lion in July meant that my trip to WWDC was indeed a wise choice.  In the two years since <a href=\"http://arstechnica.com/apple/reviews/2009/08/mac-os-x-10-6.ars\">my last Mac OS X review at Ars Technica</a>, the site has grown tremendously.  <a href=\"http://arstechnica.com/tech-policy/news/2011/02/how-one-security-firm-tracked-anonymousand-paid-a-heavy-price.ars\">Amazing</a> <a href=\"http://arstechnica.com/tech-policy/news/2011/02/anonymous-speaks-the-inside-story-of-the-hbgary-hack.ars\">feature</a> <a href=\"http://arstechnica.com/tech-policy/news/2011/02/black-ops-how-hbgary-wrote-backdoors-and-rootkits-for-the-government.ars\">stories</a> on <a href=\"http://arstechnica.com/hardware/news/2011/09/ultrabook-intels-300-million-plan-to-beat-apple-at-its-own-game.ars\">all</a> <a href=\"http://arstechnica.com/gaming/reviews/2011/06/duke-nukem-forever-review-barely-playable-unfunny-and-rampantly-offensive.ars\">sorts</a> of <a href=\"http://arstechnica.com/gaming/news/2011/08/accuracy-takes-power-one-mans-3ghz-quest-to-build-a-perfect-snes-emulator.ars\">subjects</a> were pulling in huge traffic numbers, well beyond what my past Mac OS X reviews had drawn.  I worried that the audience for <a href=\"http://arstechnica.com/author/john-siracusa/\">my brand of tech writing</a> was no longer significant enough to matter.</p>\n\n<p>When <a href=\"http://arstechnica.com/apple/reviews/2011/07/mac-os-x-10-7.ars\">my Lion review</a> was published, I was grateful to be <a href=\"http://arstechnica.com/staff/upstairs/2011/12/the-most-popular-stories-of-2011-on-ars-technica.ars\">proven wrong</a>.  Thanks to everyone who continues to read what I write.  Thanks for indulging my idiosyncrasies and continuing to hold me to the same high standards that I demand of the things I write about.  And thanks to everyone at Ars for so many years of loyalty and for building an amazing publication that I’m proud to be even a small part of.</p></li>\n\n<li> <p>Steve Jobs died in October, and it affected me more than I’d expected it to.  I <a href=\"http://arstechnica.com/staff/fatbits/2011/10/steve-jobs-a-personal-remembrance.ars\">wrote about it on Ars</a>, <a href=\"http://5by5.tv/hypercritical/37\">talked about it on my podcast</a>, and still think about it pretty regularly.</p></li>\n\n</ul>\n\n<p>Some smaller 2011 milestones:</p>\n\n<ul>\n<li> <p>My seven-year-old son finished <a href=\"http://arstechnica.com/gaming/news/2010/11/masterpiece-ico.ars\">Ico</a>,  his first three Zelda games (<a href=\"http://en.wikipedia.org/wiki/Zelda_Wind_Waker\">Wind Waker</a>, <a href=\"http://en.wikipedia.org/wiki/Ocarina_of_time\">Ocarina of Time</a>, and <a href=\"http://en.wikipedia.org/wiki/Twilight_Princes\">Twilight Princess</a>) and is deep into his fourth (<a href=\"http://en.wikipedia.org/wiki/Skyward_sword\">Skyward Sword</a>), with only a little help from dad on the harder bosses.  His gaming education is coming along nicely.</p></li>\n\n<li> <p>Hardware upgrades: <a href=\"http://support.apple.com/kb/SP17\">MacBook Pro 15-inch</a> replaced with a <a href=\"http://support.apple.com/kb/SP631\">13-inch MacBook Air</a> and a <a href=\"http://support.apple.com/kb/SP642\">27\" Thunderbolt display</a>; <a href=\"http://support.apple.com/kb/SP594\">4th generation iPod touch</a> replaced with <a href=\"http://support.apple.com/kb/SP643\">an iPhone 4S</a>; <a href=\"http://www.dpreview.com/reviews/canons3is/\">Canon PowerShot S3-IS</a> replaced with a <a href=\"http://www.dpreview.com/reviews/CanonS100/\">Canon PowerShot S100</a>.  Hardware firsts: first SSD, first camera that can shoot RAW, first iPhone.  (Note: the iPhone is my wife’s, <a href=\"http://5by5.tv/hypercritical/6\">not mine</a>.)</p></li>\n\n<li> <p>I almost posted more than one thing to this blog.</p></li>\n</ul>",-         "title" : "Highlights from 2011",-         "id" : "http://hypercritical.co/2012/01/07/highlights-from-2011",-         "url" : "http://hypercritical.co/2012/01/07/highlights-from-2011",-         "author" : {-            "name" : "John Siracusa",-            "url" : "http://hypercritical.co"-         },-         "date_published" : "2012-01-07T15:32:00-05:00"-      },-      {-         "title" : "Summer Movies: 1982",-         "url" : "http://hypercritical.co/2011/01/02/summer-movies-1982",-         "id" : "http://hypercritical.co/2011/01/02/summer-movies-1982",-         "date_modified" : "2011-01-02T13:37:00-05:00",-         "content_html" : "<p>The following movies were released in the summer of 1982.</p>\n\n<ul>\n<li> <a href=\"http://www.imdb.com/title/tt0084434/\">An Officer and a Gentleman</a></li>\n<li> <a href=\"http://www.imdb.com/title/tt0083564/\">Annie</a></li>\n<li> <a href=\"http://www.imdb.com/title/tt0083658/\">Blade Runner</a></li>\n<li> <a href=\"http://www.imdb.com/title/tt0082198/\">Conan the Barbarian</a></li>\n<li> <a href=\"http://www.imdb.com/title/tt0083866/\">E.T.: The Extra-Terrestrial</a>\n<li> <a href=\"http://www.imdb.com/title/tt0083929/\">Fast Times at Ridgemont High</a></li>\n<li> <a href=\"http://www.imdb.com/title/tt0083943/\">Firefox</a></li>\n<li> <a href=\"http://www.imdb.com/title/tt0084516/\">Poltergeist</a></li>\n<li> <a href=\"http://www.imdb.com/title/tt0084602/\">Rocky III</a></li>\n<li> <a href=\"http://www.imdb.com/title/tt0084726/\">Star Trek II: The Wrath of Khan</a></li>\n<li> <a href=\"http://www.imdb.com/title/tt0082694/\">The Road Warrior</a></li>\n<li> <a href=\"http://www.imdb.com/title/tt0084649/\">The Secret of NIMH</a></li>\n<li> <a href=\"http://www.imdb.com/title/tt0084787/\">The Thing</a></li>\n<li> <a href=\"http://www.imdb.com/title/tt0084827/\">Tron</a></li>\n</ul>\n\n<p>Is it just nostalgia, or does that lineup positively trounce any summer in recent memory?  What a perfect blend of popcorn summer blockbusters, kid-friendly films, and just plain great movies.  Can anyone find a summer that beats this one?</p>",-         "date_published" : "2011-01-02T13:37:00-05:00",-         "author" : {-            "url" : "http://hypercritical.co",-            "name" : "John Siracusa"-         }-      },-      {-         "author" : {-            "url" : "http://hypercritical.co",-            "name" : "John Siracusa"-         },-         "date_published" : "2010-08-08T16:01:00-04:00",-         "content_html" : "<p>Here’s my brief entry in the speculation derby surrounding <a href=\"http://www.nytimes.com/2010/08/08/technology/08apple.html\">the departure of Mark Papermaster from Apple</a>.  <a href=\"http://daringfireball.net/linked/2010/08/07/papermaster\">Assuming</a> Papermaster is out at least partially due to the iPhone 4 antenna and not some completely unrelated matter, and <a href=\"http://daringfireball.net/2010/08/papermaster_damn_antenna\">assuming</a> Apple really did know about the iPhone 4’s antenna problems even before Papermaster was hired, it may seem strange or even unfair that he’s ended up as the fall guy.  I won’t comment on the fairness of the decision, but I can certainly imagine a scenario where his ouster is well within the expectations of a job as a high-level executive in a big corporation.</p>\n\n<p>Imagine the following events.  Papermaster is hired by Apple and put in charge of the iPhone 4 hardware.  He’s brought up to speed on the project, including the unique characteristics of the external antenna.  At some point later, a final decision has to be made on the design: go or no go?</p>\n\n<p>While it’s clear that the buck stops with Steve Jobs on all decisions at Apple, that doesn’t mean he <i>makes</i> all the decisions.  This is why Apple hires people like Mark Papermaster in the first place.  It’s reasonable to expect that Jobs would defer to <a href=\"http://www.nytimes.com/2008/11/04/technology/04iht-apple.4.17516602.html\">the guy he fought to hire</a> when it came to this question.  And so Jobs would ask Papermaster, is the design ready to go or not?  And what about that antenna touching issue?  Is that a big deal, or will most people not even notice?</p>\n\n<p>Now imagine that Papermaster tells Jobs that, yes, it’s a real limitation in the antenna design, but that the advantages&mdash;increased range and room for a bigger battery&mdash;more than make up for it.  Now imagine Jobs pushes further: “While you may feel that way, Mark, will the public agree?  Will this end up being an issue?”  And now suppose Papermaster says no, it won’t be an issue.</p>\n\n<p>Either implicitly or explicitly, Papermaster would be putting his reputation on the line.  This is what his job is all about: making decisions.  This particular decision is not about technology or manufacturing; it’s a judgement call about how the public (and press) will react to something.  But that’s part of his job too.  And the harder he fought for this particular decision, the more he’d have on the line when he turned out to be wrong.</p>\n\n<p>Anyway, like I said, this is all just speculation.  I really have no idea why Mark Papermaster left Apple.  But I find the scenario described above eminently plausible.  Furthermore, if it were true, I don’t think it would speak ill of Papermaster.  Executive management at this level is a high-stakes endeavor.  The rewards are big, but so are the risks&mdash;and no one can be right <a href=\"http://www.mac-history.net/the-history-of-the-apple-macintosh/showdown-at-apple-john-sculley-vs-steve-jobs\">all</a> <a href=\"http://en.wikipedia.org/wiki/G4_cube\">the time</a>.  If you’re the new guy and this is your first big call on the biggest project in the company, well, you can end up back in the job market much sooner than you expected. C’est la vie.</p>",-         "date_modified" : "2010-08-08T16:01:00-04:00",-         "title" : "Papermaster",-         "url" : "http://hypercritical.co/2010/08/08/papermaster",-         "id" : "http://hypercritical.co/2010/08/08/papermaster"-      },-      {-         "author" : {-            "name" : "John Siracusa",-            "url" : "http://hypercritical.co"-         },-         "date_published" : "2010-04-11T11:20:00-04:00",-         "date_modified" : "2010-04-11T11:20:00-04:00",-         "content_html" : "<p>Many years ago, I recall talking with some of my Mac-nerd friends about how strange it was, after Apple’s near-death experiences of the late 1990s, to be living in a world where it’s just assumed that any tech luminary will mostly likely use a Mac.  A year or two later, Tim O’Reilly gave a name to this prognostication technique: <a href=\"http://oreilly.com/pub/a/mac/2002/05/14/oreilly_wwdc_keynote.html\">watching the “alpha geeks.”</a></p>\n\n<p>This trend of Mac adoption among alpha geeks was a sign of good things to come for Apple, and generally a bad sign for its competitors.  Today, <a href=\"http://en.wikipedia.org/wiki/James_Gosling\">James Gosling</a>’s <a href=\"http://nighthacks.com/roller/jag/entry/time_to_move_on\">departure</a> from the remains of Sun brought to mind a similar trend&mdash;one that’s not so good for Apple.</p>\n\n<p>These days, when a high-profile technical professional leaves his position at the company where he’s done his most important work, everyone’s first guess as to where he’ll end up is&hellip;well, do I really have to <a href=\"http://www.google.com/\">name the place</a>?  The point is, it’s not Apple.</p>\n\n<p>(This mostly applies to programmers and other engineers.  People on the more creative side of the technology world are <a href=\"http://hicksdesign.co.uk/journal/and-now-opera\">much harder to predict</a>.  But then, who can <a href=\"http://hicksdesign.co.uk/journal/moving-on\">truly fathom</a> the mind of an artist?)</p>\n\n<p>There are many trend lines that contribute to a company’s overall trajectory, and nearly all of Apple’s are still <a href=\"http://www.google.com/finance?chdnp=1&amp;chdd=1&amp;chds=1&amp;chdv=1&amp;chvs=maximized&amp;chdeh=0&amp;chfdeh=0&amp;chdet=1270998157208&amp;chddm=97750&amp;chls=IntervalBasedLine&amp;q=NASDAQ:AAPL&amp;ntsp=0\">pointing in the right direction</a>.  But the emergence of Google as a huge gravitational sink for engineering talent in the past five years has definitely put a kink in at least one those graphs.</p>",-         "title" : "Black Hole Sun",-         "url" : "http://hypercritical.co/2010/04/11/black-hole-sun",-         "id" : "http://hypercritical.co/2010/04/11/black-hole-sun"-      },-      {-         "author" : {-            "name" : "John Siracusa",-            "url" : "http://hypercritical.co"-         },-         "date_published" : "2010-03-15T12:35:00-04:00",-         "content_html" : "<p><a href=\"http://www.amazon.com/gp/product/B0032KNA4I?ie=UTF8&amp;tag=siracusa-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B0032KNA4I\">2012</a> is an awful movie.  I knew this when I added it to my Netflix queue, but I wanted to stay up to date on the latest in computer-generated apocalyptic destruction.  I’m a fan of special effects in general and stories about the end of the world in particular.</p>\n\n<p>All the boxes were ticked: absurd “science,” impossible escapes, a nonsensical plan to save humanity, familial and romantic problems resolved during the crisis, unintentionally slapstick character deaths, etc.  What I didn’t expect was how upsetting it would be&mdash;which is to say, that it was upsetting <i>at all</i>.</p>\n\n<p>The most heartless, lizard-brained humans are pre-teen boys.  Teens and young adult men have usually built up a tough emotional core, but are generally too distracted by puberty to ever match the hardness of their unenlightened, toad-exploding youths.  As men age, they become progressively more sensitive.  The biggest spike (or dip?) in the graph occurs when a man becomes a father.</p>\n\n<p>In my experience, this manifests itself most noticeably in a reduced ability to enjoy any story where children are in peril.  And so it was for me with 2012.  As bad as the movie was, I was still bothered by the repeated use of children in danger as a dramatic device.  This, despite the fact that there is never any mystery about who will live and who will die in any given scene.  My brain understood, but my body still twinged.</p>\n\n<p>So let this be a lesson to you, young men.  You may feel tough now, and you may remain rational and intelligent your entire lives.  But you will age, and someday you may even become a father.  When you do, watch out.  You too&mdash;yes, even you, you, and <i>you</i>&mdash;will someday become an unintentional victim of your own emotions.  (A “mush,” as I’ve heard it called.)</p>\n\n<h3>It’s Not You, It’s Me</h3>\n\n<p>I always ponder this situation when I see a movie or read a book.  It seems to me that our ability to enjoy a story depends on our personal experiences to a degree that people don’t want to consider.  For example, a common occurrence on this Internet of ours is to encounter an impassioned screed condemning some work of fiction as offensive.  Like clockwork, this is followed by a retaliatory condemnation of the offended party as “too sensitive” or “crazy.”  The phrase “give me a break” is featured.</p>\n\n<p>The overall point that the inherent worth of a work of art is not determined by the bad reactions of a few people is pretty solid.  But the glib denigration of the offended party is definitely on shaky ground.  The unfortunate truth is that, through no fault of the artist or the viewer, entire avenues of entertainment can be closed off by life experiences.</p>\n\n<p>If your wife died in a car accident, you may find yourself unable to enjoy movies that feature car crashes.  If you had an abusive parent, you may be upset by any scene where a parent yells at a child.  And yes, if you simply have one or more happy, healthy children, you may not even be able to smirk your way through a comically bad disaster movie which happens to feature children.</p>\n\n<p>None of this has to reach the level of trauma (e.g., a veteran being unable to watch war movies).  In fact, it’s most insidious when it’s much less dramatic, just a mild pin-prick of discomfort happening entirely outside&mdash;and often in opposition to&mdash;your conscious mind.</p>\n\n<p>And is this the fault of the artist?  Is the comedy <i>actually</i> less funny because there’s a gag involving turbulence on an airplane?  And on the other side, can you really blame the viewer?  I say no on all counts, as long as everyone involved has a clear head about the situation.  For the viewer, that means no blanket denunciation of a work of art based solely on your own unexamined emotional reaction.  For the artist, that means understanding that some people will be legitimately upset by your creation for reasons beyond your ability to predict or control.</p>\n\n<p>So yeah, thumbs down on 2012, but not because I’m a father of two and a giant mush.  It’s bad for all the usual reasons a movie is bad: script, story, characters, etc.  Maybe if you don’t have kids, you can appreciate it as a <a href=\"http://www.flophousepodcast.com/\">\"good ‘bad movie.’\"</a>  Maybe.</p>\n\n<p>Finally, lest you young men get depressed about your inevitable futures as wussy old(er) men, there is actually an upside.  A <i>good</i> movie that happens to intersect with your newly altered emotional landscape can be made all the more better by the interaction.  For example, I enjoyed reading <a href=\"http://www.amazon.com/gp/product/0307387895?ie=UTF8&amp;tag=siracusa-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0307387895\">The Road</a>, which is a much more intense story of the apocalypse and a child in danger than 2012.  Here’s hoping <a href=\"http://www.amazon.com/gp/product/B001FB563E?ie=UTF8&amp;tag=siracusa-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B001FB563E%22\">the movie adaptation</a> doesn’t suck.</p>",-         "date_modified" : "2013-02-05T19:47:24-05:00",-         "title" : "No Movie for Old Men",-         "url" : "http://hypercritical.co/2010/03/15/no-movie-for-old-men",-         "id" : "http://hypercritical.co/2010/03/15/no-movie-for-old-men"-      },-      {-         "content_html" : "<p>I’ve never considered Obama a very good speaker.  It may be because he speaks slowly and pauses a lot, all of which drives my fast-talking-Italian-New-York-native-self up a wall.  Whatever the reason, my low opinion of his speaking ability meant that I was willing to believe that the <a href=\"http://www.politico.com/news/stories/0309/19663.html\">Obama teleprompter gibes</a> could very well be indicative of a real problem.  Those jokes fed my fear that Obama lacked substance, that he was just a pretty voice able to dazzle people (though not me, apparently) with speeches he didn’t write or fully understand.</p>\n\n<p>That fear was put to rest by Obama’s <a href=\"http://www.suntimes.com/news/politics/obama/2019396,obama-republicans-house-conference-012910.article\">recent performance in front of a gathering of Republicans</a>.  No teleprompter, no questions received ahead of time, no softballs.  I was amazed at how well he did when I read the transcript.  When I watched the video, I still didn’t like his delivery (maybe I should have watched it at 1.5x) but it’s good to know that our president has a brain in his head.</p>\n\n<p>That’s what was important to me regarding the teleprompter issue, and that’s why I care little about what Sarah Palin does unless it changes my existing opinion of her.  Learning that <a href=\"http://www.youtube.com/watch?v=CtcVMTZkTZQ\">she wrote notes on her hand</a> before a speech doesn’t do that, and it sure as hell has no effect on what I think Obama’s use of the teleprompter does or doesn’t signify, regardless of which situation <a href=\"http://corner.nationalreview.com/post/?q=ODU3YzkwMGYxZGY1NGQ2OTZiZWZhMWIzOTNkZTU1ZWE=\">is more likely to resonate</a> with the <a href=\"http://www.slate.com/id/2243797/\">American people</a>.</p>",-         "date_modified" : "2010-02-07T14:04:00-05:00",-         "id" : "http://hypercritical.co/2010/02/07/obamas-teleprompter",-         "url" : "http://hypercritical.co/2010/02/07/obamas-teleprompter",-         "title" : "Obama’s Teleprompter",-         "author" : {-            "url" : "http://hypercritical.co",-            "name" : "John Siracusa"-         },-         "date_published" : "2010-02-07T14:04:00-05:00"-      }-   ],-   "feed_url" : "http://hypercritical.co/feeds/main"-}+{
+   "version" : "https://jsonfeed.org/version/1",
+   "title" : "Hypercritical",
+   "home_page_url" : "http://hypercritical.co",
+   "author" : {
+      "url" : "http://hypercritical.co",
+      "name" : "John Siracusa"
+   },
+   "items" : [
+      {
+         "author" : {
+            "name" : "John Siracusa",
+            "url" : "http://hypercritical.co"
+         },
+         "date_published" : "2016-12-18T13:45:20-05:00",
+         "date_modified" : "2016-12-18T14:55:20-05:00",
+         "content_html" : "<div class=\"image header\"><img src=\"/2016/12/18/images/trico1.jpg\" width=\"640\" height=\"360\" alt=\"The Last Guardian\"/></div>\n\n<p><a href=\"https://en.wikipedia.org/wiki/Fumito_Ueda\">Fumito Ueda’s</a> first game, <a href=\"https://en.wikipedia.org/wiki/Ico\">Ico</a>, was a beautiful, moody <a href=\"http://arstechnica.com/gaming/2010/11/masterpiece-ico/\">masterpiece</a>. Its spare depiction of a boy attempting to escape from a vast castle with the help of a mysterious companion discarded the gameplay and interface conventions of its day, delivering an almost meditative sense of immersion. Ueda’s next game, <a href=\"https://en.wikipedia.org/wiki/Shadow_of_the_Colossus\">Shadow of the Colossus</a>, added the bare minimum of status indicators to the screen to support its complex boss battles that required the player to clamber up and onto a succession of giant creatures.</p>\n\n<p>In terms of both gameplay and mood, Ueda’s latest game, <a href=\"http://amzn.to/2hIRrdT\">The Last Guardian</a>, is a straightforward combination of its predecessors. It features a boy attempting to escape from a mysterious castle with the help of a giant creature. Like Ico, it eschews a conventional <a href=\"https://en.wikipedia.org/wiki/HUD_(video_gaming)\">HUD</a>, save system, inventory management, power-ups, and nearly every other modern gaming convention. And as in Shadow of the Colossus, players will find themselves scrambling up the back of a large, often uncooperative, incredibly life-like beast (cheekily named Trico).</p>\n\n<p>Ico was able to deliver on the promise of its design by reducing complexity in other areas. It’s set in a largely rectilinear castle that the player navigates on foot. It has a small number of enemies. Its environmental puzzles are mechanically and conceptually simple. Similarly, Shadow of the Colossus manages to pull off its extremely ambitious boss battles by removing nearly everything from the game except those creatures.</p>\n\n<p>While The Last Guardian attempts to combine the strengths of its predecessors, it’s burdened by the combination of their features. The environment and the player’s movement through it is far more complex than in Ico. The puzzles play fast and loose with their own rules at a few critical points. The giant creature, no longer confined to a limited engagement in a boss arena, sometimes pushes the game mechanics past their limits.</p>\n\n<p>Nothing kills immersion more than an acute awareness of the game engine itself. In The Last Guardian, the camera often gets stuck on walls or briefly shows the view from inside Trico. (Spoiler alert: like all your favorite 3D-rendered characters, he’s hollow.) Arguably, Shadow of the Colossus had an even more frustrating camera and control scheme, but that game was released eleven years ago on a far less powerful console. The Last Guardian has made tremendous strides since then, but it’s still not quite enough to avoid illusion-breaking lapses.</p>\n\n<p>These shortcomings are compounded by an uncharacteristic lack of faith in its design. Traditional (read: oppressive) on-screen prompts describing the control scheme mar the opening of the game and are impossible to completely banish. A voice-over extends beyond its narrative role to provide a dynamic hint system that is often too quick to reveal solutions. Several brief cutscenes in quick succession at the start of the game undercut player agency. It's tempting to attribute these lapses to <a href=\"http://www.eurogamer.net/articles/2011-12-13-the-last-guardian-sony-confirms-fumito-uedas-departure\">Ueda’s departure from the project</a> several years before its release, but the reason is less important than the result.</p>\n\n<h2>Castle in the Sky</h2>\n\n<p>All of that said, it’s important to remember the context of these criticisms. Ico and Shadow of the Colossus are two of the greatest video games ever created. Both pushed the limits of the hardware they were released on, and both have influenced video game designers, filmmakers, and other creative professionals far out of proportion with their modest sales numbers. That The Last Guardian fails to resoundingly best its distinguished parents is only disappointing because of how close it comes.</p>\n\n<p>Let’s start with the obvious. The Last Guardian is a gorgeous game. The world design is in line with Ico and Shadow of the Colossus, but the increased fidelity of the PlayStation 4 really makes it shine. (<a href=\"http://amzn.to/2hINeEH\">PlayStation 4 Pro</a> running at 1080p is recommended for best frame rates.) Lighting effects that Ico could only dream of add a poignancy to already majestic vistas. At so many points, I wished this game had the <a href=\"https://www.engadget.com/2016/05/05/uncharted-4-photo-mode-screenshot-gallery/\">photo mode</a> from <a href=\"http://amzn.to/2gZcveM\">Uncharted 4</a>.</p>\n\n<p>Trico is an amazing achievement: a building-sized <a href=\"https://en.wikipedia.org/wiki/Non-player_character\">NPC</a> that truly feels alive. Its animations rarely feel canned or repetitive. Its <a href=\"https://www.penny-arcade.com/comic/2016/12/12/pet-class\">behavioral inscrutability</a> is completely in keeping with its character. Learning to read Trico’s moods and signals is a core part of the game. The experience smoothly transitions from frustration to a deep, intuitive understanding by the end.</p>\n\n<p>Anyone who has finished Ico and Shadow of the Colossus will have no trouble completing The Last Guardian. I found the environmental puzzles a bit more challenging than those in Ico, but I never had to go to the Internet to look up a solution. Anyone who got stuck in Ico will almost certainly be even more stymied by The Last Guardian, however. The hand-eye coordination required is substantially lower than in Shadow of the Colossus, but the camera management and overall control-scheme finesse is much more demanding than in Ico.</p>\n\n<p>Also keep in mind that these are comparisons to the difficulty of two much older games. The Last Guardian has a significant <a href=\"https://overcast.fm/+IpnwIQsY/56:21\">skill-barrier to enjoyment</a> when compared to contemporary console games, especially those with such an artistic bent. Inexperienced gamers looking for a better match for their skills should try <a href=\"http://amzn.to/2hJ9fpf\">Journey</a> instead.</p>\n\n<p>Longtime console gamers who have never played Ico or Shadow of the Colossus should definitely do so, preferably before playing The Last Guardian. High-definition remakes of both games are <a href=\"https://www.amazon.com/ICO-Shadow-Colossus-Collection/dp/B002I0J5FG/\">available for the PlayStation 3</a> on a single game disc for a combined price of $25. If your taste in games is anything like mine, it is <i>absolutely</i> worth <a href=\"http://amzn.to/2hIVhkT\">buying</a> or borrowing a PlayStation 3 console just to play these two games. (Plus <a href=\"http://amzn.to/2gZZZO8\">Journey</a> for just $15 more.) [Update: Both games are also available on the PS4 and Windows PC via the <a href=\"https://www.playstation.com/en-us/explore/playstationnow/\">PlayStation Now</a> cloud gaming service, though I have not tried playing them this way.]</p>\n\n<p>If you loved Ico and Shadow of the Colossus, <a href=\"http://amzn.to/2hIRrdT\">The Last Guardian</a> is well worth playing, but it bears the scars of its nearly <a href=\"https://en.wikipedia.org/wiki/The_Last_Guardian#Technical_development\">decade-long development</a>. Like <a href=\"https://www.theincomparable.com/theincomparable/277/\">The Force Awakens</a>, there’s almost no way The Last Guardian could have lived up to the  expectations accumulated during the long wait for its release. In the end, its reach exceeds its grasp, if only slightly. But, oh, what a reach it was. Like its star creature, The Last Guardian occupies a lofty perch—defiantly idiosyncratic and occasionally inscrutable, but a towering achievement nonetheless.</p>",
+         "url" : "http://hypercritical.co/2016/12/18/the-last-guardian",
+         "id" : "http://hypercritical.co/2016/12/18/the-last-guardian",
+         "title" : "The Last Guardian"
+      },
+      {
+         "author" : {
+            "url" : "http://hypercritical.co",
+            "name" : "John Siracusa"
+         },
+         "date_published" : "2016-04-22T13:41:23-04:00",
+         "content_html" : "<p>These are the canonical bagel flavors:</p>\n\n<ul>\n<li> Plain</li>\n<li> Poppy</li>\n<li> Sesame</li>\n<li> Egg</li>\n<li> Cinnamon Raisin</li>\n<li> Everything</li>\n<li> Egg Everything</li>\n<li> Onion</li>\n<li> Salt</li>\n<li> Pumpernickel</li>\n</ul>\n\n<p>Also:</p>\n\n<ul>\n<li> Bialys</li>\n</ul>",
+         "date_modified" : "2016-04-22T13:41:23-04:00",
+         "title" : "Canonical Bagel Flavors",
+         "url" : "http://hypercritical.co/2016/04/22/canonical-bagel-flavors",
+         "id" : "http://hypercritical.co/2016/04/22/canonical-bagel-flavors"
+      },
+      {
+         "author" : {
+            "name" : "John Siracusa",
+            "url" : "http://hypercritical.co"
+         },
+         "date_published" : "2015-04-15T21:04:05-04:00",
+         "content_html" : "<p>Nearly 15 years ago, I wrote my <a href=\"http://arstechnica.com/apple/1999/12/macos-x-dp2/\">first</a> review of  Mac OS X for a nascent “<a href=\"http://archive.arstechnica.com/reviews/4q99/macos-x-dp2/m-macos-x-dp2-1.html\">PC enthusiast’s</a>\" website called <a href=\"http://arstechnica.com\">Ars Technica</a>. Last fall, I wrote <a href=\"http://arstechnica.com/apple/2014/10/os-x-10-10/\">my last</a>. Though Apple will presumably announce the next major version of OS X at <a href=\"https://developer.apple.com/wwdc/\">WWDC this coming June</a>, I won’t be reviewing it for Ars Technica or any other publication, including the website you’re reading now.</p>\n\n<p>Those who listen to the <a href=\"http://atp.fm\">ATP</a>, the weekly podcast I host with <a href=\"http://www.marco.org\">Marco Arment</a> and <a href=\"http://www.caseyliss.com\">Casey Liss</a>, know that I’ve been contemplating hanging up my OS X reviewer’s hat for some time now.  Producing thousands of words (and hundreds of screenshots) about each major release of OS X was my first real claim to fame on the Internet. The prospect of stopping has made me reconsider my public identity and sense of self.  Who am I if I’m not “that guy who writes those OS X reviews”?  But when I finally decided, the relief I felt let me know I’d made the right choice.</p>\n\n<p>There is no single, dramatic reason behind this. It’s an accumulation of small things—the time investment, the (admittedly, self-imposed) mental anguish, the pressure to meet my own expectations and those of my readers year after year—but it all boils down to a simple, pervasive feeling that this is the time to stop. I’ve done this. It is done.</p>\n\n<p>When I started, I was at the forefront of long-form nerd-centric tech writing. Today, the world has moved on. I might have stopped with my <a href=\"http://arstechnica.com/apple/2013/10/os-x-10-9/\">OS X 10.9 review</a> in 2013 if not for my love of round numbers and my expectation that <a href=\"http://arstechnica.com/apple/2014/10/os-x-10-10/\">OS X 10.10</a> would bring a <a href=\"http://arstechnica.com/apple/2014/10/os-x-10-10/9/#interface\">complete interface overhaul</a> that I really wanted to write about.</p>\n\n<p>While OS X reviews were my public debut, the <a href=\"http://5by5.tv/hypercritical\">Hypercritical podcast</a> brought me to a new audience starting in 2011. Hypercritical ran for 100 episodes, and in the years that followed I’ve recorded at least one podcast every week. (I’m currently a co-host of the weekly <a href=\"http://atp.fm/\">Accidental Tech Podcast</a> and a regular guest on <a href=\"http://www.theincomparable.com/theincomparable/\">The Incomparable</a>.) The one, long article I wrote about OS X for Ars Technica every year or two has long since been dwarfed by the <a href=\"http://hypercritical.co/about/appearances/\">volume</a> of my audio output.</p>\n\n<p>I still love OS X—and I still have many complaints about it. I will certainly talk about OS X 10.11 (whatever it’s called) at length on <a href=\"http://atp.fm\">ATP</a>, and I’ll read the many great reviews written by others when it’s released.  But neither podcasting nor writing have ever been full-time jobs for me. I’ve always had to fit them into my life alongside my actual job and my family. Right now, I’m looking forward to my first summer in many years that won’t be dominated by stolen daytime minutes and long, sleepless nights in front of a screen with a noisy air conditioner blowing behind me. I’m content to have reviewed 10.0 through 10.10. Someone else can pick up the baton for the next 15 years.</p>\n\n<hr>\n\n<h3>Releases</h3>\n\n<ul>\n<li> <a href=\"http://arstechnica.com/apple/2014/10/os-x-10-10/\">OS X 10.10 Yosemite</a> – October 16, 2014</li>\n<li> <a href=\"http://arstechnica.com/apple/2013/10/os-x-10-9/\">OS X 10.9 Mavericks</a> – October 22, 2013</li>\n<li> <a href=\"http://arstechnica.com/apple/2012/07/os-x-10-8/\">OS X 10.8 Mountain Lion</a> – July 25, 2012</li>\n<li> <a href=\"http://arstechnica.com/apple/2011/07/mac-os-x-10-7/\">Mac OS X 10.7 Lion</a> – July 20, 2011</li>\n<li> <a href=\"http://arstechnica.com/apple/2009/08/mac-os-x-10-6/\">Mac OS X 10.6 Snow Leopard</a> – August 31, 2009</li>\n<li> <a href=\"http://arstechnica.com/apple/2007/10/mac-os-x-10-5/\">Mac OS X 10.5 Leopard</a> – October 28, 2007</li>\n<li> <a href=\"http://arstechnica.com/apple/2005/04/macosx-10-4/\">Mac OS X 10.4 Tiger</a> – April 28, 2005</li>\n<li> <a href=\"http://arstechnica.com/apple/2003/11/macosx-10-3/\">Mac OS X 10.3 Panther</a> – November 9, 2003</li>\n<li> <a href=\"http://arstechnica.com/apple/2002/09/macosx-10-2/\">Mac OS X 10.2 Jaguar</a> – September 5, 2002</li>\n<li> <a href=\"http://arstechnica.com/apple/2001/10/macosx-10-1/\">Mac OS X 10.1</a> (Puma) – October 15, 2001</li>\n<li> <a href=\"http://arstechnica.com/apple/2001/04/macos-x/\">Mac OS X 10.0</a>  (Cheetah) – April 2, 2001</li>\n</ul>\n\n<h3>Retrospectives</h3>\n\n<ul>\n<li> <a href=\"http://arstechnica.com/apple/2011/05/mac-os-x-revisited/\">Here’s to the crazy ones: a decade of Mac OS X reviews</a> – May 12, 2011</li>\n<li> <a href=\"http://arstechnica.com/apple/2006/03/osx-fiveyears/\">Five years of Mac OS X</a> – March 24, 2006</li>\n</ul>\n\n<h3>Pre-release</h3>\n\n<ul>\n<li><a href=\"http://arstechnica.com/apple/2010/09/macos-x-beta/\">Mac OS X Public Beta</a> – October 3, 2000</li>\n<li><a href=\"http://arstechnica.com/apple/2000/06/macos-x-qa-1/\">Mac OS X Q &amp; A</a> – June 20, 2000</li>\n<li><a href=\"http://arstechnica.com/apple/2000/05/mac-os-x-dp4/\">Mac OS X DP4</a> – May 24, 2000</li>\n<li><a href=\"http://arstechnica.com/apple/2000/02/mac-os-x-dp3/\">Mac OS X DP3: Trial by Water</a> – February 28, 2000</li>\n<li><a href=\"http://arstechnica.com/apple/2000/01/macos-x-gui/\">Mac OS X Update: Quartz &amp; Aqua</a> – January 17, 2000</li>\n<li><a href=\"http://arstechnica.com/apple/1999/12/macos-x-dp2/\">Mac OS X DP2</a> – December 14, 1999</li>\n</ul>",
+         "date_modified" : "2015-04-15T21:04:05-04:00",
+         "id" : "http://hypercritical.co/2015/04/15/os-x-reviewed",
+         "url" : "http://hypercritical.co/2015/04/15/os-x-reviewed",
+         "title" : "OS X Reviewed"
+      },
+      {
+         "author" : {
+            "url" : "http://hypercritical.co",
+            "name" : "John Siracusa"
+         },
+         "date_published" : "2014-10-16T15:02:14-04:00",
+         "content_html" : "<p>I reviewed <a href=\"http://arstechnica.com/apple/2014/10/os-x-10-10/\">OS X 10.10 Yosemite</a> for <a href=\"http://arstechnica.com/\">Ars Technica</a>.  This is the eleventh major release of OS X, and I've <a href=\"http://arstechnica.com/author/john-siracusa/\">reviewed them all</a>.  There are several ways to read my review.</p>\n\n<ul>\n<li> <a href=\"http://arstechnica.com/apple/2014/10/os-x-10-10/\">Read it for free on the web</a></li>\n\n<li> <a href=\"https://itunes.apple.com/us/book/os-x-10.10-yosemite-ars-technica/id928630628?mt=11&amp;uo=4&amp;at=11l6SN\">Buy it from Apple’s iBookstore for $4.99</a>\n\n<li> <a href=\"http://www.amazon.com/gp/product/B00OFLKWTY/ref=as_li_tl?ie=UTF8&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B00OFLKWTY&amp;linkCode=as2&amp;tag=siracusa-20&amp;linkId=WD7GDMIPVQ63BLSX\">Buy it from Amazon’s Kindle store for $4.99</a>\n\n<li> <a href=\"http://arstechnica.com/subscriptions/\">Subscribe to Ars Premier for a month for $5</a> and get <i>all</i> of these options:\n\n<ul>\n<li> Read it on a single, ad-free web page</li>\n<li> Download an iBooks-compatible EPUB file</li>\n<li> Download a Kindle ebook: two versions, one made especially for iOS</li>\n</ul>\n\n</ul>\n\n<p>Here are my thoughts on the various reading options. This is mostly a repeat of <a href=\"http://hypercritical.co/2013/10/22/mavericks\">last year’s post about Mavericks</a>, with some text carried over verbatim, but there is some new information.</p>\n\n<h2>The Web Version</h2>\n\n<p>The web version of my review is the canonical version.  It has the best formatting, the biggest images, and includes mouse-over image toggle effects that can't be done in an ebook.  It's also the most up-to-date.  I believe that good writing for the web includes many links.  A web browser is the best place to inspect and follow those links.</p>\n\n<p>All the images in my review are <a href=\"http://en.wikipedia.org/wiki/Retina_Display\">Retina</a> resolution.  To see all the detail in the images, read the review on a screen with at least 1,920 “native” pixels of horizontal resolution.  Most images are 1,280 pixels wide (presented to the browser with a width value of 640), but the “full-width” images are 1,920 pixels wide (presented to the browser with a width value of 960).</p>\n\n<p>The free web version has ads, and it’s split up into multiple “pages” (which are usually much longer than a single printed page).  This kind of pagination annoys some people.  I actually like it for very long articles because it helps me keep my place across multiple reading sessions.  I can remember I was on page 8 instead of remembering the exact point in a very long, scrolling web page.</p>\n\n<p>That said, I also really like how an <a href=\"http://arstechnica.com/subscriptions/\">Ars Premier subscription</a> eliminates all ads from the Ars Technica website and gives me the option to view any article on a single page.  I use single-page view on very long articles when I’m searching for some text using my web browser’s “Find…” feature.  I use it all the time on short articles.</p>\n\n<p>Some people think Ars Technica forces me to break my article up into many tiny pages.  That’s not the case.  I choose how to paginate the article.  I like to break it up on logical section boundaries, which means that the “pages” vary widely in length.  I do try to keep any single “page” from being too short, however.</p>\n\n<h2>The eBooks</h2>\n\n<p>My review is <a href=\"https://itunes.apple.com/us/book/os-x-10.10-yosemite-ars-technica/id928630628?mt=11&amp;uo=4&amp;at=11l6SN\">available on Apple’s iBookstore</a> as well as <a href=\"http://www.amazon.com/gp/product/B008OYE8O8/ref=as_li_ss_tl?ie=UTF8&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B008OYE8O8&amp;linkCode=as2&amp;tag=siracusa-20\">Amazon.com</a>.</p>\n\n<p>The Kindle and iBooks readers for OS X and iOS have their own strengths and weaknesses, but I think the iBooks version of my review has a slight edge over the Kindle version.  Amazon adds a “delivery” charge of $0.15 per megabyte (varying a bit for different countries).  This can really eat into the price of a $4.99 book.  Like the web version, both ebook versions include Retina-resolution images, making them quite large.  To control the size of the Kindle ebook, I used JPEG images throughout.</p>\n\n<p>Unlike Amazon, Apple does not charge a per-megabyte fee in its ebook store.  Since both ebooks are the same price, this means I make slightly more money from each iBookstore purchase than I do from each Kindle purchase.  But there’s something in it for you, too. The iBookstore version of my review uses lossless PNG images throughout.  (Kindle version: 5 MB; iBookstore version: 25 MB.)  In practice, I doubt most people will be able to tell the difference between the JPEG and PNG images, but I know which one I’d choose.</p>\n\n<p>I've tried to make both ebooks available for purchase in as many countries as possible, but there are some limits on this that are beyond my control.  If the ebook is not available in your country, remember that you can get both versions of the ebook by <a href=\"http://arstechnica.com/subscriptions/\">subscribing to Ars Premier</a>.<p>\n\n<h2>The Stats</h2>\n\n<ul>\n<li> 26,485 words.</li>\n<li> 113 images (54.3 MB)</li>\n<li> 479 original screenshots (3.56 GB)</li>\n<li> 8,283 words of research notes.</li>\n<li> 2,534 lines of Perl code across 12 scripts to generate three different formats from the canonical HTML source: Ars CMS, EPUB, and Kindle.\n<li> All three formats were generated 171 times.\n<li> I saved the document 3,525 times while writing it in <a href=\"http://www.barebones.com/products/bbedit/\">BBEdit</a>.</li>\n<li> The article content was constantly backed up onto 7 different hard drives on three different Macs in two different locations (thanks to <a href=\"http://db.tt/KgXbHWr\">Dropbox</a>, <a href=\"http://arstechnica.com/apple/2007/10/mac-os-x-10-5/14/#time-machine\">Time Machine</a>, and <a href=\"http://www.shirt-pocket.com/SuperDuper/\">SuperDuper</a>), and pushed up to two different online backup services (<a href=\"http://www.backblaze.com/\">Backblaze</a> and <a href=\"http://www.crashplan.com/\">CrashPlan</a>).</li>\n<li> Applications used: <a href=\"http://www.barebones.com/products/bbedit/\">BBEdit</a>, <a href=\"http://www.nuance.com/for-individuals/by-product/dragon-for-mac/dragon-dictate/index.htm\">Dragon Dictate</a>, <a href=\"http://support.apple.com/kb/HT2523\">TextEdit</a>, <a href=\"http://simplenote.com\">Simplenote</a>, <a href=\"http://www.adobe.com/products/photoshop.html\">Photoshop CS6</a>, <a href=\"http://www.vmware.com/products/fusion/\">VMware Fusion</a>, <a href=\"http://xscopeapp.com\">xScope</a>, <a href=\"https://developer.apple.com/xcode/\">Xcode</a>, <a href=\"http://www.barebones.com/products/yojimbo/\">Yojimbo</a>.\n</ul>\n\n<p>My sincere thanks to everyone who reads the review, in any form, in whole or in part.  You’re the reason I’ve been doing this for the past fifteen years.</p>",
+         "date_modified" : "2014-10-16T15:47:55-04:00",
+         "url" : "http://hypercritical.co/2014/10/16/yosemite",
+         "id" : "http://hypercritical.co/2014/10/16/yosemite",
+         "title" : "About My Yosemite Review"
+      },
+      {
+         "date_published" : "2014-04-27T20:53:17-04:00",
+         "author" : {
+            "url" : "http://hypercritical.co",
+            "name" : "John Siracusa"
+         },
+         "title" : "Creativity, Inc.",
+         "url" : "http://hypercritical.co/2014/04/27/creativity-inc",
+         "id" : "http://hypercritical.co/2014/04/27/creativity-inc",
+         "content_html" : "<p>Most of the nonfiction books I read these days fall into two broad categories: books about people I admire and books about the creation of things I admire.  Good books about the latter often turn into the former by the end.</p>\n\n<p>The book I just finished, <a href=\"http://www.amazon.com/gp/product/B00FUZQYBO/ref=as_li_ss_tl?ie=UTF8&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B00FUZQYBO&amp;linkCode=as2&amp;tag=siracusa-20\">Creativity, Inc.</a> by <a href=\"http://en.wikipedia.org/wiki/Edwin_Catmull\">Ed Catmull</a>, co-founder of <a href=\"http://en.wikipedia.org/wiki/Pixar\">Pixar</a>, had a head start on both counts.  My love of Pixar is not surprising or uncommon.  As for Ed Catmull, I’ve been aware of him and his contemporaries for decades (I had an <a href=\"http://en.wikipedia.org/wiki/Alvy_Ray_Smith\">Alvy Ray Smith</a> quote in my <a href=\"http://en.wikipedia.org/wiki/Signature_block\">.sig</a> for a while in the 90s), but my nerd crush really stepped into high gear when I saw <a href=\"https://www.youtube.com/watch?v=k2h2lvhzMDc\">a video of Catmull’s talk</a> at the Stanford Graduate School of Business in 2007.</p>\n\n<p>It’s difficult for me to describe my reaction to that talk—and to his new book—without sounding absurdly self-aggrandizing, but I’m going to give it a shot.  Saying what other people are thinking is a proven formula for mass-market appeal employed by everyone from talk radio hosts to stand-up comedians.  But as someone whose thoughts and interests have always been outside the norm, I’ve rarely heard excerpts from my own inner dialog voiced on a broader stage.</p>\n\n<p>Ed Catmull does that for me.  If you’ve listened to my <a href=\"http://5by5.tv/hypercritical\">Hypercritical podcast</a> or read <a href=\"http://arstechnica.com/staff/2009/05/hypercritical/\">the article that inspired it</a>, you will find many familiar topics and themes in Creativity, Inc.  Now, believe me, I harbor no illusions about this overlap.  I am not the guy who hears <a href=\"http://en.wikipedia.org/wiki/Louis_C.K.\">Louis C.K.</a> tell a joke and thinks he could be just as funny because he had a similar thought once.  But shared values and the fulfillment of common aspirations are at the heart of all hero worship.</p>\n\n<p>Ed Catmull’s dream was to create the first fully computer-animated feature film.  As a child, I also dreamed of such a thing; Catmull and the rest of the people at Pixar actually made it happen.  Similarly, as an adult, I’ve clung to the notion that <a href=\"http://arstechnica.com/staff/2009/05/hypercritical/\">critical thinking can be both useful and powerful</a>.  Creativity, Inc. explains just how powerful it can be when practiced by a handful of the most brilliant technical and creative people alive today.</p>\n\n<p>Ay, there’s the rub.  It’s so easy to hear the vaguest echo of your own thoughts expressed by someone fantastically smart and accomplished and view that as a cosmic endorsement of your approach to life.  But that absolutely would not be in keeping with the message of the book—a message Catmull tries again and again to communicate to readers he knows will resist it.</p>\n\n<p>Indeed, Catmull most often uses himself as an example of someone who has failed to see through to the heart of a problem.  This is the true strength of the book.  Unlike so many other tech-industry memoirs and business books, Creativity, Inc. is not an abstract exploration of a philosophy, nor is it a list of accomplishments interspersed with bold commandments.  Instead, it is a deep, thoughtful investigation of a never-ending series of failures—and the reactions to those failures that eventually led to success.</p>\n\n<p>Think of it: the man who invented <a href=\"http://en.wikipedia.org/wiki/Texture_mapping\" title=\"FFS!\">texture mapping</a>, made computer-animated films possible, and led his studio to release a string of amazing, <a href=\"http://en.wikipedia.org/wiki/List_of_Pixar_awards_and_nominations_(feature_films)\">Oscar</a>-<a href=\"http://en.wikipedia.org/wiki/List_of_Pixar_awards_and_nominations_(short_films)\">winning</a> examples of the form decides to write a book…and then builds it around an examination of his own mistakes.  Ed Catmull may not be your kind of hero, but he sure is mine.</p>",
+         "date_modified" : "2014-04-30T08:52:34-04:00"
+      },
+      {
+         "date_published" : "2014-01-24T08:36:10-05:00",
+         "author" : {
+            "name" : "John Siracusa",
+            "url" : "http://hypercritical.co"
+         },
+         "title" : "Macintosh",
+         "id" : "http://hypercritical.co/2014/01/24/macintosh",
+         "url" : "http://hypercritical.co/2014/01/24/macintosh",
+         "content_html" : "<div class=\"image header\"><img src=\"/2014/01/24/images/macintosh-team.jpg\" width=\"640\" height=\"452\" alt=\"The Macintosh team\"/></div>\n\n<p>Thirty years ago today, Steve Jobs <a href=\"https://www.youtube.com/watch?v=2B-XwPjn9YY\">introduced</a> Macintosh.  It was the single most important product announcement of my life.  When that upright beige box arrived in my home, it instilled in me an incredible sense of urgency.  I <a href=\"http://hypercritical.co/2014/01/14/the-road-to-geekdom\">greedily consumed</a> every scrap of information about this amazing new machine, from <a href=\"https://en.wikipedia.org/wiki/Inside_Macintosh\">books</a>, <a href=\"http://scottknaster.blogspot.com/2013/10/inside-first-issue-of-macworld.html\">magazines</a>, <a href=\"http://www.youtube.com/watch?v=1pwammW5syw\">audio cassettes</a>, and any adult whose ear I could bend.  This was the future—my future, if I could help it.</p>\n\n<p>The death of Steve Jobs in 2011 brought back a lot of these same memories.  What I <a href=\"http://arstechnica.com/staff/2011/10/steve-jobs-a-personal-remembrance/\">wrote</a> then echoes my thoughts on <a href=\"http://www.apple.com/30-years/\">the Mac’s 30th anniversary</a>.</p>\n\n<blockquote><p>I was 9 years old at the time. That year, <a href=\"http://arstechnica.com/apple/2007/10/mac-os-x-10-5/12/#quick-look\">my grandfather</a> had changed my life by purchasing a <a href=\"http://en.wikipedia.org/wiki/Macintosh_128K\">Macintosh 128K</a>, and convincing my parents to do the same. My grandfather also had a subscription to <em><a href=\"http://www.macworld.com/\">Macworld</a></em> magazine, including multiple copies of issue #1, two of which I took home with me. I cut the Macintosh team picture out of one [see above] and left the other intact. (I still have both.)</p>\n\n<p>I pored over that magazine for years, long after the technical and product information it contained was useless. It was the Macintosh team that fascinated me. That’s why I’d chosen to cut out this particular picture, not a photo of the hardware or software. After seeing the Macintosh and then reading this issue of <em>Macworld</em>, I had an important realization in my young life: <em>people made this</em>.</p></blockquote>\n\n<p>That last part is the most important.  It wasn’t just the product that galvanized me; it was the act of its creation.  The Macintosh team, idealized and partially fictionalized as it surely was in my adolescent mind, nevertheless served as my north star, my proof that knowledge and passion could produce great things.</p>\n\n<p>Memories are short in the tech industry.  For most people, Apple and Steve Jobs will always be synonymous with <a href=\"https://www.youtube.com/watch?v=9hUIxyE2Ns8\">the iPhone</a>, an uncontested inflection point in our computing culture.  For me, the introduction of the Macintosh will always be more important.  Though people who didn’t live through it might not feel it as keenly as I do, the distance between pre-<a href=\"https://www.youtube.com/watch?v=9hUIxyE2Ns8\">2007</a> smartphones and the iPhone is much smaller than the distance between <a href=\"/2014/01/24/images/ms-dos.png\">MS-DOS</a> and the <a href=\"/2014/01/24/images/macintosh-desktop.png\">Mac</a>.</p>\n\n<p>On a personal level, nothing will ever replace my tanned-plastic beauty, the greatest electronic gift I had ever received, or would ever receive.  My attachment to the Mac explains why, in the late 1990s, I was desperate to know everything possible about <a href=\"http://news.cnet.com/Apple-acquires-Next,-Jobs/2100-1001_3-256914.html\">the fate of Apple</a> and <a href=\"http://arstechnica.com/apple/2011/05/mac-os-x-revisited/\">the future of the Mac operating system</a>.  Almost fifteen years later—half the Mac’s life—I’ve <a href=\"http://arstechnica.com/author/john-siracusa/\">reviewed</a> every major release of OS X and zero releases of iOS.  Don’t get me wrong, I love my iPad and iPod touch, but you never forget <a href=\"/2014/01/24/images/macintosh-hello.jpg\">your first</a>.</p>\n\n<p>I’m eternally grateful to <a href=\"http://www.folklore.org\">the people who created the Mac</a>, and to the countless others who kept it alive and shepherded its <a href=\"http://arstechnica.com/apple/2011/05/mac-os-x-revisited/\">rebirth</a>.  In this age of iOS, it’s heartening to hear Phil Schiller <a href=\"http://www.macworld.com/article/2090829/apple-executives-on-the-mac-at-30-the-mac-keeps-going-forever.html\">say</a>, “Our view is, the Mac keeps going forever.” That’s just fine with me.</p>",
+         "date_modified" : "2014-01-24T08:49:59-05:00"
+      },
+      {
+         "date_published" : "2014-01-14T00:26:58-05:00",
+         "author" : {
+            "name" : "John Siracusa",
+            "url" : "http://hypercritical.co"
+         },
+         "title" : "The Road to Geekdom",
+         "url" : "http://hypercritical.co/2014/01/14/the-road-to-geekdom",
+         "id" : "http://hypercritical.co/2014/01/14/the-road-to-geekdom",
+         "content_html" : "<div class=\"image header\"><img src=\"/2014/01/14/images/labyrinth3.jpg\" width=\"640\" height=\"315\" alt=\"Labyrinth\"/></div>\n\n<p>Ask a room of computer geeks how they came to deserve this appellation and you’ll likely hear many similar stories.  “I got my first computer when I was very young. By the time I was a teenager, I’d logged thousands of hours at the keyboard doing everything imaginable with my computer: gaming, programming, networking, upgrades, the works.”</p>\n\n<p>That’s certainly my story.  I was <a href=\"http://eviltrout.com/2012/12/30/programming-since-i-was-seven.html\">lucky enough</a> to get a <a href=\"http://en.wikipedia.org/wiki/Macintosh_128K\">Macintosh</a> in 1984, and it changed my life.  I spent so many hours in front of that computer, I often look back in wonder at how I found so much to do with so little. This was years before I had an Internet connection.  I had very little software and no convenient way to get more. My dollar-a-week allowance didn’t go very far. The only other <a href=\"/2014/01/14/images/carmine-quicklook.png\">person</a> I knew with a Mac was <a href=\"/2014/01/14/images/grandparents.jpg\">my grandfather</a> who lived two hours away.  Nevertheless, I put in the hours—willingly, joyfully—and became the <a href=\"https://twitter.com/hotdogsladies/status/398667876850073600\">seasoned</a> <a href=\"http://arstechnica.com/author/john-siracusa/\">Mac geek</a> you see before you today.</p>\n\n<p>My Macintosh origin story is part of who I am.  Being there from the beginning (and staying with the Mac, even through <a href=\"http://www.wired.com/wired/archive/5.06/apple.html\">the dark times</a>) gives me a useful historical perspective on the platform.  But this is not the only road to geekdom.</p>\n\n<p>The Mac is actually one of the few things I’m a geek about that I’ve been in on since the start.  Geekdom is not defined by historical entry points or even shared experiences.  A geek must possess just two things: knowledge and enthusiasm.</p>\n\n<h2 id=\"a-man-makes-a-car\">A Man Makes a Car</h2>\n\n<p>I became interested in remote control cars in high school after seeing a friend drive one in his backyard.  He’d been building and racing RC cars since he was in elementary school.  I was fascinated by these machines, but I worried I’d never be a “real” RC car geek like my friend.</p>\n\n<p>I saved my money, bought a <a href=\"http://www.iconicrc.com/2011/02/3116-kyosho-turbo-ultima/\">car</a>, built it (badly) myself—and then crashed it.  Undaunted, I bought replacement parts, fixed it, learned to drive it with far less crashing, and eventually bought a <a href=\"http://www.rc10talk.com/viewtopic.php?f=27&amp;t=23937#p238822\">better car</a>.  Most importantly, I subscribed to <a href=\"http://www.rccaraction.com/\">Radio Control Car Action</a> magazine and read every issue from cover to cover as soon as they arrived at my house.</p>\n\n<p>A year or so later, I found myself in my local hobby shop answering another customer’s questions about his car.  It started to dawn on me that I now knew more about RC cars than the average hobby shop patron.  I was no longer an outsider looking in.</p>\n\n<p>Around the same time, I was engaged in one of those <a href=\"http://en.wikipedia.org/wiki/Columbia_House\">cheap-music-for-membership</a> marketing schemes that led to me having to select some CDs on a whim.  I ended up getting <a href=\"http://en.wikipedia.org/wiki/Achtung_Baby\">Achtung Baby</a>, and it knocked my socks off.  I’d been aware of U2 for years and had probably heard the hits from <a href=\"http://en.wikipedia.org/wiki/The_Joshua_Tree\">The Joshua Tree</a> on the radio dozens of times, but I’d never really been into the band—or any band, for that matter.  Achtung changed that.</p>\n\n<p>I started to work my way backwards through U2’s catalog, buying as many CD <a href=\"http://en.wikipedia.org/wiki/Longbox\">long boxes</a> as I could get my hands on.  I bought and read <a href=\"http://www.amazon.com/gp/product/0446389749/ref=as_li_ss_tl?ie=UTF8&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0446389749&amp;linkCode=as2&amp;tag=siracusa-20\">biographies</a> of the band.  At my local library, I devoured reviews of all their past albums in <a href=\"http://en.wikipedia.org/wiki/Rolling_Stone\">Rolling Stone</a> and <a href=\"http://en.wikipedia.org/wiki/Spin_(magazine)\">Spin</a>. I found every magazine with a <a href=\"http://content.time.com/time/covers/0,16641,19870427,00.html\">cover story</a> about U2.  When I couldn’t find anything else in the stacks of back issues, I turned to the library’s <a href=\"http://en.wikipedia.org/wiki/Microfiche\">microfiche</a> collection.</p>\n\n<p>In college, I finally had easy access to <a href=\"http://en.wikipedia.org/wiki/CD_single\">singles</a>, <a href=\"http://en.wikipedia.org/wiki/A-side_and_B-side\">b-sides</a>, and <a href=\"http://www.yelp.com/biz/second-coming-record-store-cambridge\">bootlegs</a>, allowing me to complete my collection.  I also had a fast, reliable Internet connection for the first time.  This was beyond the local hobby shop; I was communicating with other U2 fans across the entire planet.</p>\n\n<p>I learned to play the guitar (badly) and downloaded <a href=\"http://en.wikipedia.org/wiki/Tablature\">tab</a> for my favorite U2 songs.  Dissatisfied with the state of lyrics websites (some things <a href=\"http://www.reddit.com/r/AskReddit/comments/j3v8o/hey_reddit_why_are_all_lyrics_sites_absolutely/\">haven’t changed</a>), I transcribed every U2 album, single, b-side, and rarity, leading to the creation of my first public website, The U2 Lyrics Archive.  This was my first claim to fame on the net.  (The site is gone now, but when the official <a href=\"http://www.u2.com\">u2.com</a> website launched a few years after mine, it contained lyrics copied from my site, typos and all.)</p>\n\n<h2 id=\"a-sort-of-homecoming\">A Sort of Homecoming</h2>\n\n<p>Remote control cars existed for decades before I got my first kit.  Achtung Baby was U2’s seventh album. Yet I was once a serious RC car geek and an unassailable U2 geek.  It started with enthusiasm.  Given the <a href=\"http://eviltrout.com/2012/12/30/programming-since-i-was-seven.html\">opportunity</a>, I channeled that energy into a dogged pursuit of knowledge.</p>\n\n<p>You don’t have to be a geek about everything in your life—or anything, for that matter.  But if geekdom is your goal, don’t let anyone tell you it’s unattainable.  You don’t have to be there “from the beginning” (whatever that means).  You don’t have to start when you’re a kid.  You don’t need to be a member of a particular <a href=\"http://eviltrout.com/2012/12/30/programming-since-i-was-seven.html\">social class</a>, <a href=\"http://pgbovine.net/tech-privilege.htm\">race</a>, <a href=\"http://en.wikipedia.org/wiki/Sex_and_gender_distinction\">sex</a>, or <a href=\"http://whatever.scalzi.com/2012/07/26/who-gets-to-be-a-geek-anyone-who-wants-to-be/\">gender</a>.</p>\n\n<p>Geekdom is not a club; it’s a destination, open to anyone who wants to put in the time and effort to travel there.  And if someone lacks the <i>opportunity</i> to get there, we geeks should help in any way we can.  Take a new friend to a meetup or convention. Donate your old games, movies, comics, and toys.  Be welcoming.  Sharing your enthusiasm is part of being a geek.</p>\n\n<p>Anyone trying to purposely erect border fences or demanding to see ID upon entry to the land of Geekdom is missing the point.  They have <a href=\"http://www.youtube.com/watch?v=_MolWhOGhRc&amp;t=1m51s\">no power over you</a>.  Ignore them and dive headfirst into the things that interest you.  Soak up every experience.  Lose yourself in the pursuit of knowledge.  When you finally come up for air, you’ll find that the long road to geekdom no longer stretches out before you.  No one can deny you entry.  You’re already home.</p>",
+         "date_modified" : "2014-01-14T01:42:08-05:00"
+      },
+      {
+         "title" : "Apple’s 2013 Scorecard",
+         "url" : "http://hypercritical.co/2014/01/02/apples-2013-scorecard",
+         "id" : "http://hypercritical.co/2014/01/02/apples-2013-scorecard",
+         "content_html" : "<p>At the beginning of last year, I posted <a href=\"http://hypercritical.co/2013/02/02/apples-2013-to-do-list\">a list of things Apple can and should do during 2013</a>. It’s time to settle up. Because I’m feeling scholastic, I’ll give a <a href=\"http://en.wikipedia.org/wiki/Academic_grading_in_the_United_States#Numerical_and_letter_grades\">letter grade</a> to each item.</p>\n\n<ul>\n\n<li> <p><b>Ship OS X 10.9 and iOS 7.</b>  <a href=\"http://arstechnica.com/apple/2013/10/os-x-10-9/\">Done</a> and <a href=\"http://www.apple.com/ios/\">done</a>, with only a few <a href=\"http://www.imore.com/ios-7-and-motion-sickness-poll\">minor</a> <a href=\"http://www.marco.org/2013/12/15/button-shapes\">bumps</a> in the road. <b>A-</b></p></li>\n\n<li> <p><b>Diversify the iPhone product line.</b>  “There needs to be more than one iPhone,” I <a href=\"http://hypercritical.co/2013/02/02/apples-2013-to-do-list\">wrote</a>.  This is <a href=\"http://5by5.tv/hypercritical/4\">a drum I’ve been beating</a> for many years.  Apple finally made it happen in 2013 with the cleverly conceived <a href=\"http://www.apple.com/iphone-5c/\">iPhone 5C</a>.  I’m disappointed that the 5C doesn’t have more internal changes beyond a slightly larger-capacity battery, and I’m still anxiously awaiting an iPhone with a <a href=\"http://www.marco.org/2013/01/31/iphone-plus-speculation\">larger screen</a>, but Apple got the important parts right.  The 5C is a good phone, and it’s easily distinguished from the <a href=\"http://www.apple.com/iphone-5s/\">5S</a>. <b>B+</b></p></li>\n\n<li> <p><b>Keep the iPad on track.</b> The <a href=\"http://www.apple.com/ipad-air/\">iPad Air</a> is impressive, and the <a href=\"http://www.apple.com/ipad-mini/\">mini</a> finally went <a href=\"http://en.wikipedia.org/wiki/Retina_Display\">Retina</a>. On the downside, the creaky old <a href=\"http://en.wikipedia.org/wiki/IPad_2\">iPad 2</a> lives on, the iPad Air really deserves more RAM, and a larger “iPad Pro” is still off in the hazy future.  The iPad is “on track,” for sure, but <a href=\"https://www.youtube.com/watch?v=NuInK_N9cLM\">exciting times</a> are still ahead.  <b>A-</b></p></li>\n\n<li> <p><b>Introduce more, better Retina Macs.</b> The <a href=\"http://arstechnica.com/apple/2013/10/retina-round-two-apples-15-inch-2013-retina-macbook-pro-reviewed/\">latest Retina MacBook Pro</a> has <a href=\"http://www.anandtech.com/show/6993/intel-iris-pro-5200-graphics-review-core-i74950hq-tested\">Intel’s Iris Pro 5200 graphics</a>, finally giving the integrated GPU enough muscle to handle all those pixels.  Apple also kept around an option for a <a href=\"http://www.geforce.com/hardware/notebook-gpus/geforce-gt-750m\">discrete GPU</a> on the high-end model.  But the MacBook Air and iMac are still excluded from the Retina club, and even the mighty Mac Pro has <a href=\"http://www.anandtech.com/show/7603/mac-pro-review-late-2013/11\">extremely limited</a> <a href=\"http://cocoamanifest.net/articles/2013/01/turn-on-hidpi-retina-mode-on-an-ordinary-mac.html\">high-DPI</a> options. We’ll get ’em next year, right <a href=\"http://www.apple.com/pr/bios/tim-cook.html\">Tim</a>? <b>B-</b></p></li>\n\n<li> <p><b>Make Messages work correctly.</b> It’s difficult to measure the scope and frequency of problems in Messages based solely on blog posts and tweets, but I feel safe in saying that weird behavior still exists and is likely to be seen by anyone who uses Messages every day.  Hope is <a href=\"https://alpha.app.net/mrgan/post/4248751\">fading</a>. <b>D</b></p></li>\n\n<li> <p><b>Make iCloud better.</b> The iCloud Core Data team got a chance to <a href=\"http://arstechnica.com/apple/2013/10/os-x-10-9/20/#icloud-core-data\">regroup in Mavericks</a>.  It may be too little, too late, but at least it’s a step in the right direction.  More broadly, iCloud still doesn’t have a good reputation for reliability, and debugging problems related to it remains difficult.  If the only user-accessible control for a service is a single checkbox, it had better “just work.”  iCloud has yet to earn that label.  <b>C</b></p></li>\n\n<li> <p><b>Resurrect iLife and iWork.</b> Be careful what you wish for, I suppose.  Apple did finally release new versions of the applications formerly known as the iLife and iWork suites, but the focus on simplicity and feature parity with the web and iOS versions <a href=\"http://9to5mac.com/2013/10/25/new-iwork-ilife-apps-go-for-simplicity-upset-power-users-all-over-again/\">left Mac users wanting more</a>.  It does not feel like an upgrade worthy of the years that have passed since the last major revisions of these applications.  <b>B-</b></p></li>\n\n<li> <p><b>Reassure Mac Pro lovers.</b> Apple was thoroughly convincing in its rededication to the Mac Pro, presenting a <a href=\"https://www.youtube.com/watch?v=SQl2FjaKCAQ\">dramatic introduction video</a> at <a href=\"https://developer.apple.com/wwdc/\">WWDC</a> for its radical new high-performance hardware.  It’s <a href=\"http://hypercritical.co/2013/03/08/the-case-for-a-true-mac-pro-successor\">not for everyone</a>, but it represents a hell of a turnaround for a once-neglected product.  Let’s hope it doesn’t take 18 months for the next revision to appear. <b>A</b></p></li>\n\n<li> <p><b>Do something about TV.</b>  Sigh. <b>F</b></p></li>\n\n</ul>\n\n<p>Out of the 10 items on my to-do list, Apple did 8 of them well enough to earn a checkmark. (The TV thing was always a bit of a reach, anyway.)  I’d call that a solid year.</p>",
+         "date_modified" : "2014-01-02T17:11:02-05:00",
+         "date_published" : "2014-01-02T15:19:12-05:00",
+         "author" : {
+            "url" : "http://hypercritical.co",
+            "name" : "John Siracusa"
+         }
+      },
+      {
+         "date_published" : "2013-12-22T14:53:21-05:00",
+         "author" : {
+            "name" : "John Siracusa",
+            "url" : "http://hypercritical.co"
+         },
+         "title" : "Fill Your TV",
+         "id" : "http://hypercritical.co/2013/12/22/fill-your-tv",
+         "url" : "http://hypercritical.co/2013/12/22/fill-your-tv",
+         "date_modified" : "2013-12-22T18:49:19-05:00",
+         "content_html" : "<p>On two <a href=\"http://atp.fm/episodes/43-brilliance-enhancer\">recent</a> <a href=\"http://atp.fm/episodes/44-a-plague-with-very-minor-effects\">episodes</a> of Accidental Tech Podcast, I talked about calibrating <a href=\"http://www.amazon.com/gp/product/B00BC4SJEC/ref=as_li_ss_tl?ie=UTF8&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B00BC4SJEC&amp;linkCode=as2&amp;tag=siracusa-20\">my new TV</a>. The reactions of my <a href=\"http://atp.fm\">co-hosts</a> and the feedback from listeners has made it clear that the entire concept of calibrating a home TV is foreign to most people.</p>\n\n<p>While a full-zoot <a href=\"http://www.imagingscience.com\">ISF</a> HDTV calibration is expensive and unnecessary for most people, there are some important steps that every TV owner should take to improve image quality.  If you have an iOS device plus either an HDMI output cable (<a href=\"http://store.apple.com/us/product/MD826ZM/A/lightning-digital-av-adapter\">Lightning</a> or <a href=\"http://store.apple.com/us/product/MD098ZM/A/apple-digital-av-adapter\">30-pin</a>) or an <a href=\"http://www.apple.com/appletv/\">Apple TV</a>, you can use the simple <a href=\"https://itunes.apple.com/us/app/thx-tune-up/id592624594?mt=8\">THX tune-up</a> application to dial in your color, contrast, brightness, and other basic settings.</p>\n\n<p>Before calibrating, don’t forget to turn off all the “image enhancement” features of your TV.  These are the things with names like Vivid Color, Color Remaster, Motion Interpolation, Brilliance Enhancer, Black Extension, C.A.T.S., AGC, and so on.  Check your TV’s manual for explanations of what each setting does, if you’re curious, but you really do want to turn them all <i>off</i>.  They all mess with the image in ways not intended by the creator, and they will make proper calibration more difficult or impossible.</p>\n\n<p>There’s one setting in particular that anyone can adjust without requiring any skill or special software. Let’s say you buy a new <a href=\"http://en.wikipedia.org/wiki/1080p\">1080p</a> HDTV with a native resolution of 1920×1080.  Out of the box, that TV will most likely be configured to never show you a full 1920×1080 pixels of information.  In computer parlance, it’s running at a non-<a href=\"http://en.wikipedia.org/wiki/Native_resolution\">native</a> resolution by default, like a 1024×768 LCD display set to a resolution of 800×600.</p>\n\n<p>Imagine this test image exactly matches the native resolution of your HDTV. (It doesn't, so please don't use it to test your actual TV. Use a real <a href=\"https://itunes.apple.com/us/app/thx-tune-up/id592624594?mt=8\">calibration app</a> or image instead.)</p>\n\n<div class=\"image\"><img src=\"/2013/12/22/images/tv-correct.png\" width=\"640\" height=\"360\" alt=\"TV test image displayed correctly\"/><div class=\"caption\">A TV test image displayed correctly: the shapes in the corners are squares, the green box is visible.</div></div> \n\n<p>If you’re viewing this post on a <a href=\"http://en.wikipedia.org/wiki/Retina_Display\">Retina</a> display, the thin lines extending from the squares in the corners should be crisp and pixel-perfect.  Send this image to your HDTV, however, and this is what you’re likely to see:</p>\n\n<div class=\"image\"><img src=\"/2013/12/22/images/tv-overscan.png\" width=\"640\" height=\"360\" alt=\"TV test image with overscan\"/><div class=\"caption\">This is how your TV is likely to display the test image: information is lost, detail is blurred.</div></div> \n\n<p>The green box is no longer visible; the squares in the corners are now rectangles; the fine lines are now blurred together, producing an unpleasant <a href=\"http://en.wikipedia.org/wiki/Moire_pattern\">moiré pattern</a>.  You can read all about the origins of this terrible behavior in the Wikipedia entry on “<a href=\"http://en.wikipedia.org/wiki/Overscan#Origins_of_overscan\">overscan</a>,” but all you need to know is that it’s no longer necessary in the age of HDTV.</p>\n\n<p>You paid for all 1920×1080 pixels of your fancy new HDTV—use them!  Most HDTVs have a setting somewhere to correct this problem.  It may be called “Overscan,” “1:1 Pixel Mapping,” “Native,” “Screen Fit,” “Just Scan,” or something even more generic like “Size 1” or “Size 2.”  Consult your TV’s manual to find out. (If you can’t find your paper manual, a Google search for your TV’s model number followed by “manual PDF” will usually lead to an online version.)  Don’t give up; the setting is almost always there somewhere. For TVs with no dedicated setting, you may have to change the input label to “PC” or similar to force the issue.</p>\n\n<p>The nerd-rage I feel at the thought of a display running in non-native resolution may not be something you can relate to, but everyone can appreciate a sharper image that shows more information.  This holiday, after you’re done fixing all your relatives’ computer problems and updating their software, take a moment to correct the image size on their HDTV as well.  Your relatives might not thank you for it, but I will.</p>"
+      },
+      {
+         "date_published" : "2013-10-22T14:27:05-04:00",
+         "author" : {
+            "name" : "John Siracusa",
+            "url" : "http://hypercritical.co"
+         },
+         "title" : "About My Mavericks Review",
+         "id" : "http://hypercritical.co/2013/10/22/mavericks",
+         "url" : "http://hypercritical.co/2013/10/22/mavericks",
+         "content_html" : "<p>I reviewed <a href=\"http://arstechnica.com/apple/2013/10/os-x-10-9/\">OS X 10.9 Mavericks</a> for <a href=\"http://arstechnica.com/\">Ars Technica</a>.  I’ve been reviewing OS X since 1999, and this is the tenth major release.  There are several ways to read my review.</p>\n\n<ul>\n<li> <a href=\"http://arstechnica.com/apple/2013/10/os-x-10-9/\">Read it for free on the web</a></li>\n\n<li> <a href=\"https://itunes.apple.com/us/book/os-x-10.9-mavericks-ars-technica/id728112618?mt=11&amp;uo=4&amp;at=11l6SN\">Buy it from Apple’s iBookstore for $4.99</a>\n\n<li> <a href=\"http://www.amazon.com/gp/product/B00G3J8NPQ/ref=as_li_ss_tl?ie=UTF8&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B00G3J8NPQ&amp;linkCode=as2&amp;tag=siracusa-20\">Buy it from Amazon’s Kindle store for $4.99</a>\n\n<li> <a href=\"http://arstechnica.com/subscriptions/\">Subscribe to Ars Premier for a month for $5</a> and get <i>all</i> of these options:\n\n<ul>\n<li> Read it on a single, ad-free web page</li>\n<li> Download an iBooks-compatible EPUB file</li>\n<li> Download a Kindle ebook: two versions, one made especially for iOS</li>\n</ul>\n\n</ul>\n\n<p>Here are my thoughts on the various reading options. This is mostly a repeat of <a href=\"http://hypercritical.co/2012/07/25/mountain-lion\">last year’s post about Mountain Lion</a>, with some sections carried over verbatim, but there is some new information.</p>\n\n<h2>The Web Version</h2>\n\n<p>The web version of my review is the canonical version.  It has the best formatting and the most features.  It's also the most up-to-date.  I believe that good writing for the web includes many links.  A web browser is the best place to inspect and follow those links.</p>\n\n<p>This year, all the images in my review are <a href=\"http://en.wikipedia.org/wiki/Retina_Display\">Retina</a> resolution.  To see all the detail in the images, read the review on a Retina iPad, Mac, or other device with at least around 1,400 “native” pixels of horizontal resolution.  (The “full-width” images are 1,280 pixels wide, presented to the browser with a width value of 640, but there are also margins around the content column.) </p>\n\n<p>The free web version has ads, and it’s split up into multiple “pages” (which are usually much longer than a single printed page).  This kind of pagination annoys some people.  I actually like it for very long articles because it helps me keep my place across multiple reading sessions.  I can remember I was on page 8 instead of remembering the exact point in a very long, scrolling web page.</p>\n\n<p>That said, I also really like how an <a href=\"http://arstechnica.com/subscriptions/\">Ars Premier subscription</a> eliminates all ads from the Ars Technica website and gives me the option to view any article on a single page.  I use single-page view on very long articles when I’m searching for some text using my web browser’s “Find…” feature.  I use it all the time on short articles.</p>\n\n<p>Some people think Ars Technica forces me to break my article up into many tiny pages.  That’s not the case.  I choose how to paginate the article.  I like to break it up on logical section boundaries, which means that the “pages” vary widely in length.  I do try to keep any single “page” from being too short, however.</p>\n\n<h2>The eBooks</h2>\n\n<p>For the first time, my review is <a href=\"https://itunes.apple.com/us/book/os-x-10.9-mavericks-ars-technica/id728112618?mt=11&amp;uo=4&amp;at=11l6SN\">available on Apple’s iBookstore</a> as well as <a href=\"http://www.amazon.com/gp/product/B008OYE8O8/ref=as_li_ss_tl?ie=UTF8&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B008OYE8O8&amp;linkCode=as2&amp;tag=siracusa-20\">Amazon.com</a>.  The new iBooks application bundled with Mavericks means you can also read the iBookstore version on your Mac.</p>\n\n<p>The Kindle and iBooks readers for OS X and iOS have their own strengths and weaknesses, but I think the iBooks version of my review has a slight edge over the Kindle version.  Amazon adds a “delivery” charge of $0.15 per megabyte (varying a bit for different countries).  This can really eat into the price of a $4.99 book.  Like the web version, both ebook versions include Retina-resolution images this year, making them much larger than in past years.  To control the size of the Kindle ebook, I used JPEG images throughout.  (Last year’s Kindle ebook used a mix of JPEG and PNG images for the same reason.)</p>\n\n<p>Unlike Amazon, Apple does not charge a per-megabyte fee in its ebook store.  Since both ebooks are the same price, this means I make slightly more money from each iBookstore purchase than I do from each Kindle purchase.  But there’s something in it for you, too. The iBookstore version of my review uses lossless PNG images throughout.  (Kindle version: 5.5 MB; iBookstore version: 30.5 MB.)  In practice, I doubt most people will be able to tell the difference between the JPEG and PNG images, but I know which one I’d choose.</p>\n\n<h2 id=\"unknowns\">The Unknowns</h2>\n\n<p>This year is the first time I haven’t known the price and release date of a major OS X release well in advance.  The lead times dictated by the ebook stores (anywhere from 12 hours to a week) meant that I had to submit the ebooks before I knew how much Mavericks would cost.  The ebooks are now updated, but Amazon in particular does not make downloading updates easy or convenient.  Updates to the web version are visible instantly, of course.</p>\n\n<h2>The Stats</h2>\n\n<ul>\n<li> 24,008 words.</li>\n<li> 110 images (36.7 MB)</li>\n<li> 499 original screenshots (666.2 MB)</li>\n<li> 3,011 words of research notes.</li>\n<li> 2,206 lines of Perl code across 14 scripts to generate three different formats from the canonical HTML source: Ars CMS, EPUB, and Kindle.\n<li> All three formats were generated 98 times.\n<li> I saved the document 2,653 times while writing it in <a href=\"http://www.barebones.com/products/bbedit/\">BBEdit</a>.</li>\n<li> The article content was constantly backed up onto 7 different hard drives on three different Macs in two different locations (thanks to <a href=\"http://db.tt/KgXbHWr\">Dropbox</a>, <a href=\"http://arstechnica.com/apple/2007/10/mac-os-x-10-5/14/#time-machine\">Time Machine</a>, and <a href=\"http://www.shirt-pocket.com/SuperDuper/\">SuperDuper</a>), and pushed up to two different online backup services (<a href=\"http://www.backblaze.com/\">Backblaze</a> and <a href=\"http://www.crashplan.com/\">CrashPlan</a>).</li>\n<li> Applications used: <a href=\"http://www.barebones.com/products/bbedit/\">BBEdit</a>, <a href=\"http://www.nuance.com/for-individuals/by-product/dragon-for-mac/dragon-dictate/index.htm\">Dragon Dictate</a>, <a href=\"http://support.apple.com/kb/HT2523\">TextEdit</a>, <a href=\"http://simplenoteapp.com/\">Simplenote</a>, <a href=\"https://www.adobe.com/products/photoshopextended.html\">Photoshop CS6</a>, <a href=\"http://www.vmware.com/products/fusion/overview.html\">VMware Fusion</a>, <a href=\"http://iconfactory.com/software/xscope/\">xScope</a>, <a href=\"https://developer.apple.com/xcode/\">Xcode</a>, <a href=\"http://www.barebones.com/products/yojimbo/\">Yojimbo</a>.\n</ul>\n\n<p>My sincere thanks to everyone that reads the review, in any form, in whole or in part.  You’re the reason that I’ve been doing this for the past fourteen years.</p>",
+         "date_modified" : "2014-10-16T19:54:44-04:00"
+      },
+      {
+         "date_published" : "2013-09-02T15:00:45-04:00",
+         "author" : {
+            "url" : "http://hypercritical.co",
+            "name" : "John Siracusa"
+         },
+         "id" : "http://hypercritical.co/2013/09/02/nintendo-in-crisis",
+         "url" : "http://hypercritical.co/2013/09/02/nintendo-in-crisis",
+         "title" : "Nintendo in Crisis",
+         "content_html" : "<p>When Apple was on the ropes sixteen years ago, there was no shortage of advice about what the company should do to save itself, much of it fueled by a deep love for Apple’s products.  It takes a diehard Apple fanatic to create something like the <a href=\"/2013/09/02/images/wired-pray-cover.png\">iconic “Pray” cover</a> from the <a href=\"http://www.wired.com/wired/archive/5.06/\">June 1997 issue of Wired magazine</a>—coupled with the faith that there are enough like-minded readers to appreciate the sentiment.  <a href=\"http://arstechnica.com/staff/2008/06/wwdc-2008-keynote-bingo/\">A decade later</a>, those of us who spent the 1990s worrying about Apple felt relieved, and maybe even <a href=\"/2013/09/02/images/wwdc-2008-bingo-poster.png\">a little nervous about Apple’s newfound power</a>.  It was a hell of a ride.</p>\n\n<p>Nintendo engenders the same kind of affection and loyalty.  Like Apple, it has a recent history of defeat followed by <a href=\"/2013/02/24/images/who-dares-wins.jpg\">unlikely triumph</a>.  Nintendo’s dark times were not as bad as Apple’s; the <a href=\"http://en.wikipedia.org/wiki/N64\">N64</a> and <a href=\"http://en.wikipedia.org/wiki/Gamecube\">GameCube</a> were outgunned by the <a href=\"http://en.wikipedia.org/wiki/PlayStation_(console)\">PlayStation</a> and <a href=\"http://en.wikipedia.org/wiki/PlayStation_2\">PlayStation 2</a>, but Nintendo wasn’t days away from bankruptcy at any point, nor did it have to <a href=\"http://en.wikipedia.org/wiki/NeXT#1996:_After_NeXT\">buy another company</a> to save itself.</p>\n\n<p>Now the roles appear reversed.  Apple is in a bit of a slump (or so the <a href=\"http://techcrunch.com/2013/04/23/apple-ceo-tim-cook-we-acknowledge-that-our-growth-rate-has-slowed/\">narrative</a> <a href=\"http://www.google.com/finance?chdnp=1&amp;chdd=1&amp;chds=1&amp;chdv=1&amp;chvs=maximized&amp;chdeh=0&amp;chfdeh=0&amp;chdet=1378136501154&amp;chddm=97750&amp;chls=IntervalBasedLine&amp;q=NASDAQ:AAPL&amp;ntsp=0&amp;ei=q7EkUvCZB5-slgOJnwE\">goes</a>), but it’s a comparatively mild crisis of expectations.  Apple’s products are still in demand and <a href=\"http://www.apple.com/pr/library/2013/07/23Apple-Reports-Third-Quarter-Results.html\">selling in large numbers</a>.  Nintendo, meanwhile, is experiencing one of the most <a href=\"http://kotaku.com/the-wii-u-sales-are-really-really-bad-973133897\">disastrous console launches</a> in its history—and that’s not even the worst news, according to some observers.  It’s the handheld market where <a href=\"http://daringfireball.net/2013/09/nintendo_in_motion\">Nintendo is in the most trouble</a>, <a href=\"https://alpha.app.net/chartier/post/10166007\">they say</a>.</p>\n\n<p>As expected, people who don’t want to live in a world without a successful, thriving Nintendo feel compelled to <a href=\"http://daringfireball.net/2013/09/nintendo_in_motion\">offer their heartfelt suggestions</a> for saving the company.  It’s this same compulsion that has briefly driven me out of my months-long <a href=\"http://www.apple.com/osx/preview/\">Mavericks</a>-review-writing haze to offer my own perspective.</p>\n\n<h2 id=\"schrodingers-console\">Schrödinger’s Console</h2>\n\n<p>I agree that Nintendo is in trouble.  Before considering possible solutions, I’m forced to ask a tougher question: <i>can</i> it be saved?  <a href=\"https://twitter.com/codinghorror/status/374389005304885248\">Some say no</a>, that it’s only a matter of time.  I think it comes down to this.  As long as there continues to be a market for devices that are primarily designed to play games, then it’s possible for Nintendo to live to fight another day.</p>\n\n<p>If not, then I fear the worst.  Nintendo is not equipped to produce and maintain a long-lived, <i>general-purpose</i> software platform.  <a href=\"http://hypercritical.co/2013/03/19/self-reliance\">Precious few</a> companies have ever done it.  You know all their names: Microsoft, Apple, Google.  I don’t expect to ever see Nintendo on that list.</p>\n\n<p>I think there is still a market for game-only (or at least “game-mostly”) hardware products.  I’m not sure how long it will last, but I’m betting this <a href=\"http://hypercritical.co/2013/05/28/next-generation\">upcoming generation of consoles</a> will sell well enough in the aggregate to maintain the status quo, at the very least.</p>\n\n<p>Assuming I’m right, Nintendo has all the tools it needs to pull itself out of its current tailspin.  To understand how, just look at how Nintendo has always done it: with hardware and software working together to provide new, fun experiences.</p>\n\n<h2 id=\"how-nintendo-succeeds\">How Nintendo Succeeds</h2>\n\n<p>The <a href=\"http://en.wikipedia.org/wiki/Nintendo_Entertainment_System\">NES</a> was Nintendo’s first big video game success.  After the <a href=\"http://en.wikipedia.org/wiki/North_American_video_game_crash_of_1983\">game console crash</a> of the 1980s, home video game software alone was not going to lead Nintendo to riches.  Personal computers were still expensive and wouldn’t have mass-market penetration for years.  Any attempt to field an <a href=\"http://en.wikipedia.org/wiki/Atari_2600\">Atari-2600</a>-like hardware product would surely be met with skepticism.</p>\n\n<p>Nintendo’s solution required hardware and software.  The hardware: an Atari-like game console, yes, but also…<a href=\"http://en.wikipedia.org/wiki/R.O.B.\">a robot</a>?  Yep, and a <a href=\"http://en.wikipedia.org/wiki/NES_Zapper\">light gun</a>, too.  Very few games used these accessories, but you can be sure they were featured heavily in all the initial advertising for the NES.  They were hardware decoys, misdirections.  They existed to get the NES into homes.  Once there, a tiny mustachioed trojan <a href=\"http://en.wikipedia.org/wiki/Mario\">plumber</a> spilled out of the belly of the beast and conquered a generation of gamers.</p>\n\n<p>Now consider the <a href=\"http://en.wikipedia.org/wiki/N64\">Nintendo 64</a>, the company’s first 3D console.  The <a href=\"http://en.wikipedia.org/wiki/Sega_Saturn\">Saturn</a> and the <a href=\"http://en.wikipedia.org/wiki/PlayStation_(console)\">PlayStation</a> beat it to market by years, and both had the good sense to use optical disks instead of cartridges.  Though the PlayStation came to dominate that generation, it was the Nintendo that transformed 3D gaming forever with the potent combination of <a href=\"http://en.wikipedia.org/wiki/Super_Mario_64\">Super Mario 64</a> and the <a href=\"http://en.wikipedia.org/wiki/Nintendo_64_controller\">Nintendo 64 controller</a>—hardware and software products that were designed together, and it showed.</p>\n\n<p>Mario 64 taught the world how to make a good 3D game.  Though it couldn’t save the N64 from an ignominious fate in the market, it left its mark on gaming history and perhaps singlehandedly kept Nintendo relevant.  The idea of releasing a 3D gaming system today without a standard <a href=\"http://en.wikipedia.org/wiki/Analog_stick\">analog stick</a> is absurd, but that’s just what Sega and Sony did in 1994.  After the N64 was revealed to the world, analog sticks quickly appeared on both the <a href=\"http://en.wikipedia.org/wiki/Sega_Saturn#3D_Pad\">Saturn</a> and the <a href=\"http://en.wikipedia.org/wiki/Dual_Analog_Controller\">PlayStation</a>—<a href=\"http://en.wikipedia.org/wiki/File:PS1DualAnalogController.jpg\">hastily tacked onto</a> the existing controller, in the latter case, but I’m sure that was only a temporary condition, right?  (<a href=\"http://5by5.tv/hypercritical/49\">Sigh</a>.)</p>\n\n<p>Then there’s the <a href=\"http://en.wikipedia.org/wiki/Wii\">Wii</a>.  Nintendo sacrificed hardware power for a novel input method and low price, then paired it with <a href=\"http://en.wikipedia.org/wiki/Wii_Sports\">software</a> that explained the value proposition to the world.  After two generations of defeat at the hands of Sony, Nintendo put itself back on the top of the game console market.</p>\n\n<p>None of these examples would have been possible if Nintendo didn’t make both the hardware and the software.  And I didn’t even mention the <a href=\"http://en.wikipedia.org/wiki/Game_Boy_line\">Game Boy</a> product line or the dual-screened <a href=\"http://en.wikipedia.org/wiki/Nintendo_DS\">DS</a>, two of the top three <a href=\"http://www.vgchartz.com/analysis/platform_totals/\">best-selling gaming platforms of all time</a>.  Again, impossible without hardware and software synergy.  This is how Nintendo succeeds.</p>\n\n<h2 id=\"red-ocean\"><a href=\"http://en.wikipedia.org/wiki/Blue_Ocean_Strategy#Blue_ocean_strategy_vs._red_ocean_strategy\" style=\"text-decoration: none; color: inherit ! important;\">Red Ocean</a></h2>\n\n<p>When I read the current crop of advice for Nintendo, much of it focused on how to survive in a world where iOS comes to dominate portable gaming, I think about how it would have helped Nintendo at its previous low points.  <a href=\"http://daringfireball.net/2013/09/nintendo_in_motion\">Nintendo should make games for iOS</a>, some say.  If you can’t beat ’em, join ’em.</p>\n\n<p>At the tail end of the GameCube’s life, Sony had sold many times more consoles and games than Nintendo over the course of a decade.  Should Nintendo have started writing games for the overwhelmingly dominant Sony platform? Would that have helped Nintendo achieve Wii-like success?  I don’t think so; no amount of software alone could have done that.</p>\n\n<p>The game software business is tough.  It’s hit-driven, like Hollywood.  Most games lose money or break even.  A few big winners fund all the others—if you’re lucky.  A game development studio going out of business shortly after releasing a critically acclaimed game is not unheard of.  (Hell, <a href=\"http://hypercritical.co/2012/11/27/strange-game\">the best game released last year</a> <a href=\"http://www.destructoid.com/journey-took-thatgamecompany-into-bankruptcy-244311.phtml\">bankrupted its developer</a>.)</p>\n\n<p>Consolidation is rampant in game development.  Small players are routinely snatched up by <a href=\"http://en.wikipedia.org/wiki/Ea\">behemoths</a> that have a better capacity to absorb the inevitable losses that come with games that are not monster sales successes.</p>\n\n<p>This is not a world that Nintendo should aspire to enter.  Better to stick with hardware platforms that it controls, profiting from both the hardware sales and the fees collected from third-party games sold on its platforms.  That’s the kind of steady (and potentially enormous) income that will keep Nintendo afloat as it works on the next big thing.</p>\n\n<h2 id=\"ios-does\">iOS Does What Nintendon’t</h2>\n\n<p>Even if Nintendo sticks to its guns, and even if the market for game-focused hardware continues to exist, Nintendo still faces some big challenges.  A gaming platform doesn’t have to compete with iOS on its own terms, but it does have to at least match it in the areas that are relevant to gaming.</p>\n\n<p>Right now, Apple is crushing Nintendo when it comes to the software purchase, installation, and ownership experience.  Hell, even <a href=\"http://en.wikipedia.org/wiki/Steam_(software)\">Steam</a>—a PC gaming platform—embarrasses Nintendo’s e-commerce efforts.  My Nintendo games should not be tied to a piece of hardware.  My purchases should transfer seamlessly to any new Nintendo device I purchase.  <a href=\"http://www.penny-arcade.com/report/article/nintendo-isnt-losing-to-the-ouyas-high-quality-emulation-of-classic-games-i\">Illegal emulation should not be the easiest way</a> (or only way) to play classic Nintendo games. Nintendo needs to get <a href=\"http://5by5.tv/hypercritical/99\">much, much better</a> at this stuff—fast.</p>\n\n<p>Apple is also winning when it comes to market access.  It’s much easier for a two-person team to write an iOS game and put it up for sale than it is for that same team to get a game onto a Nintendo platform.  Expensive, formal, limited developer access has no place in the modern gaming world.  Nintendo needs to wake up and smell the App Store.</p>\n\n<h2 id=\"lets-a-go\">Let’s-a-Go!</h2>\n\n<p>A lot of things have to go right for Nintendo to get its mojo back.  It’s worth reiterating: if the market for dedicated gaming hardware disappears, I fear it’s game over for Nintendo as we know it.</p>\n\n<p>But if the time of the game console is not yet at an end (handheld or otherwise), then Nintendo has a lot of work to do.  It needs to get better at all of the game-related things that iOS is good at.  It needs to produce software that clearly demonstrates the value of its hardware—or, if that’s not possible, then it needs to make new hardware.</p>\n\n<p>Any advice that leads in a different direction is a distraction.  There’s no point in any plan to “save” Nintendo that fails to preserve what’s best about the company.  Nintendo needs to do what Nintendo does best: create amazing combinations of hardware and software.  That’s what has saved the company in the past, and it’s the only thing that will ensure its future.</p>",
+         "date_modified" : "2013-09-02T20:25:58-04:00"
+      },
+      {
+         "author" : {
+            "name" : "John Siracusa",
+            "url" : "http://hypercritical.co"
+         },
+         "date_published" : "2013-06-20T20:53:53-04:00",
+         "date_modified" : "2013-06-20T20:53:53-04:00",
+         "content_html" : "<div class=\"image header\"><a href=\"http://teespring.com/hypercritical-2\"><img src=\"/2013/06/21/images/hypercritical-t-shirts.jpg\" width=\"640\" height=\"409\" alt=\"Hypercritical T-Shirts 2.0\"/></a><div class=\"caption\">Hypercritical t-shirts 2.0, clockwise from the top-left: Silver, Gold, Black, and Navy.</div></div>\n\n<p>Let's try this <a href=\"http://hypercritical.co/2013/05/06/hypercritical-t-shirts\">again</a>.  Last month, inspired by <a href=\"http://www.marco.org/2013/05/03/tshirt\">Marco</a> and bolstered by the drop-dead-simple <a href=\"http://teespring.com/\">Teespring</a> website, I put the first Hypercritical t-shirt up for sale.  The response from fans was amazing, vastly exceeding my expectations.  Unfortunately, that sale was aborted due to my unauthorized use of copyrighted artwork.  All orders were refunded and no t-shirts were printed.</p>\n\n<p>Now the Hypercritical t-shirt is back, with a new design.  At a glance, it may look exactly like <a href=\"http://hypercritical.co/2013/05/06/hypercritical-t-shirts\">the previous shirt</a>, but this version features new artwork.  (It's the same image that appears next to this site's title and as its <a href=\"http://en.wikipedia.org/wiki/Favicon\">favicon</a>.)</p>\n\n<p>Everything else is the same as last time: the shirt is available in men's and women's styles and in four colors.  Teespring requires two separate pages for the two different ink colors used on the light and dark shirt.  Here are the links:\n\n<ul>\n<li> <a href=\"http://teespring.com/hypercritical-2\">Hypercritical: The Shirt 2.0</a> - Silver and Gold</li>\n<li> <a href=\"http://teespring.com/hypercritical-2-dark\">Hypercritical: The Shirt 2.0 (Dark)</a> - Navy and Black</li>\n</ul>\n\n<p>Once again, my sincere thanks to everyone who has purchased a shirt, past and present, and to all the people who continue to read this site.</p>",
+         "title" : "Hypercritical T-Shirts 2.0",
+         "id" : "http://hypercritical.co/2013/06/20/hypercritical-t-shirts-2",
+         "url" : "http://hypercritical.co/2013/06/20/hypercritical-t-shirts-2"
+      },
+      {
+         "id" : "http://hypercritical.co/2013/05/28/next-generation",
+         "url" : "http://hypercritical.co/2013/05/28/next-generation",
+         "title" : "Next Generation",
+         "date_modified" : "2013-05-28T14:14:07-04:00",
+         "content_html" : "<div class=\"image header\"><img src=\"/2013/05/28/images/xbox-one.jpg\" width=\"640\" height=\"136\" alt=\"The Xbox One\"/></div>\n\n<p>Now that the <a href=\"http://www.xbox.com/en-US/xboxone/\">Xbox One</a> has been <a href=\"http://www.ign.com/articles/2013/05/08/watch-the-xbox-reveal-event-live-on-ign\">revealed</a>, joining the already-released <a href=\"http://www.nintendo.com/wiiu/\">Wii U</a> and the <a href=\"http://www.youtube.com/watch?v=RiNGZMx2vhY\">previously announced</a> <a href=\"http://playstation.com/ps4/\">PlayStation 4</a>, we can finally get a sense of what the next generation of game consoles will look like.</p>\n\n<p>This used to be a simple business.  Cutthroat and fiercely competitive, yes, but at least all the players were racing for the same prize. Every handful of years, we’d get a new crop of consoles, each claiming to be the <a href=\"http://www.youtube.com/watch?v=zlulSyBI2aY\">most powerful</a> and to have the <a href=\"http://www.youtube.com/watch?v=w4ApVuNnmaM\">best games</a>.</p>\n\n<p>Seven years ago, after being outsold by Sony in the <a href=\"http://en.wikipedia.org/wiki/History_of_video_game_consoles_(fifth_generation)\">two</a> <a href=\"http://en.wikipedia.org/wiki/History_of_video_game_consoles_(sixth_generation)\">previous</a> console generations, Nintendo broke from the pack and <a href=\"http://en.wikipedia.org/wiki/Blue_Ocean_Strategy\">went after a new market</a>: people who were not interested in—or were too intimidated by—traditional game consoles.</p>\n\n<p>The Wii was startlingly less powerful than the other consoles in its generation.  This helped make it the least expensive and the smallest, which only increased its appeal to non-gamers.  The coup de grâce was the Wii’s novel control scheme, which let your dad, who couldn’t get past <a href=\"http://www.mariowiki.com/World_1-1_(Super_Mario_Bros.)\">World 1-1</a> back in the 80s, make an improbable transformation into <a href=\"http://www.youtube.com/watch?v=iYtVHHM2Fl0\">a hardcore gamer…of a sort</a>.</p>\n\n<p>And if the idea of “<a href=\"http://en.wikipedia.org/wiki/History_of_video_game_consoles_(seventh_generation)#Sales_standings\">winning</a>” a console generation with laughably underpowered hardware wasn’t enough, the Wii and its contemporaries also put an end to the idea of a game console that just plays games.  Just a few years after launch, all of the consoles—even the dainty, <a href=\"http://en.wikipedia.org/wiki/Standard-definition_television\">standard-definition</a> Wii—supported some kind of social networking, photo viewing, and one or more video streaming services.</p>\n\n<p>Arguably, this movement started to gain momentum with the original PlayStation’s ability to play music CDs, and continued with the PlayStation 2’s secondary role as a DVD player.  But the Wii, PS3, and Xbox 360 definitively moved the entire product category beyond gaming.  In fact, the PlayStation 3 ended up as <a href=\"http://blog.us.playstation.com/2012/12/04/ps3-is-1-for-netflix-streaming-in-the-living-room/\">the most popular way to view Netflix on a TV</a>.</p>\n\n<p>This was all a natural consequence of the decreased cost of storage and <a href=\"http://www.anandtech.com/show/6253/intel-by-2020-the-size-of-meaningful-compute-approaches-zero\">computation</a> combined with the ubiquity of wireless networking.  It was inevitable that any TV-connected box would eventually support these features.  But it also means the Xbox One, PlayStation 4, and Wii U lack the clarity of purpose enjoyed by the previous generations of game consoles.  Here’s how things look to me at the dawn of the next generation.</p>\n\n<h2>Wii U</h2>\n\n<p>Stop me if you’ve heard this one before.  The Wii U is dramatically less powerful than the Xbox One and PlayStation 4.  In place of hardware power, Nintendo is offering an unconventional multi-screen gaming experience using a <a href=\"http://en.wikipedia.org/wiki/Wii_U_GamePad\">tablet-style controller</a>.  Although pricing has not been announced for its competitors, there’s a reasonable chance the Wii U will end up being the least expensive console in this generation.</p>\n\n<p>It sure looks like the Wii formula all over again, but there’s a difference this time.  The Wii U’s <a href=\"http://en.wikipedia.org/wiki/Wii_U_GamePad\">GamePad controller</a> is significantly more intimidating to non-gamers than the familiar-looking <a href=\"http://en.wikipedia.org/wiki/Wii_Remote\">Wii remote</a>.  Wii accessories (and games) also work with the Wii U, which is nice, but the GamePad is the face of the new system to consumers.  For former Wii buyers who are intimidated by the GamePad, Wii hardware and software compatibility may only make them further question what the new system really offers beyond the Wii.  And though the Wii U expands on the Wii’s non-gaming features, its <a href=\"http://www.ign.com/articles/2012/12/21/nintendo-tvii-for-wii-u-hands-on\">TV integration</a> feels half-hearted and has thus far <a href=\"http://www.digitaltrends.com/gaming/nintendo-tvii-review-a-great-idea-that-simply-doesnt-work-yet/\">failed to impress</a>.</p>\n\n<p>The end result has been <a href=\"http://www.gamasutra.com/view/news/186734/January_sales_show_continued_rough_tides_for_the_Wii_U.php\">dismal Wii U sales</a> coming out of the 2012 holiday season.  Nintendo’s <a href=\"http://www.japantimes.co.jp/news/2013/05/06/business/nintendo-taps-smartphone-apps-for-console-boost/\">rumored consideration</a> of allowing smartphone apps to run on the Wii U seems uncharacteristically desperate.</p>\n\n<p>Thanks to the novelty and accessibility of the Wii remote and the universal appeal of launch titles like <a href=\"http://en.wikipedia.org/wiki/Wii_Sports\">Wii Sports</a>, the Wii sold in such huge numbers that third-party developers couldn’t afford to ignore it.  They dutifully cut down the features and graphics quality of their most popular games to get them to run on the Wii.  These games were often terrible, but at least they existed, giving the Wii’s game library “checkbox parity” with the rest of the market.</p>\n\n<p>Like the Wii, the Wii U is <a href=\"http://www.engadget.com/2013/05/08/ea-frostbite-nintendo-wii-u/\">not powerful enough</a> to run the same games as its competitors.  Unlike the Wii, the Wii U’s sales numbers aren’t high enough to motivate cut-down ports of new games.  That leaves the Wii U with Nintendo’s franchise titles (many of which are not yet available), a <a href=\"http://en.wikipedia.org/wiki/ZombiU\">scant</a> <a href=\"http://en.wikipedia.org/wiki/Lego_City_Undercover\">few</a> Wii U <a href=\"http://en.wikipedia.org/wiki/Bayonetta_2\">exclusives</a> from third-party developers, and several ports of <a href=\"http://en.wikipedia.org/wiki/Mass_Effect_3\"><i>previous</i>-generation</a> <a href=\"http://en.wikipedia.org/wiki/Deus_Ex:_Human_Revolution\">games</a> that Nintendo’s new hardware is finally able to run.</p>\n\n<p>It’s still <a href=\"http://www.nintendolife.com/news/2013/05/consumers_go_crazy_for_wii_u_following_xbox_one_reveal\">too early</a> to call this race, but the Wii U certainly looks like it’s in trouble.  It may be that Nintendo has just built the wrong machine.  For the most part, the Wii succeeded <i>despite</i> its underpowered hardware, not because of it.  Choosing to produce another “next-generation” console with previous-generation power isolates Nintendo.</p>\n\n<p>New multi-platform titles can easily target the Xbox One, the PlayStation 4, and the PC simultaneously.  The Wii U isn’t even in the running—unless it sells so well that a hobbled port is justified.  The same goes for exclusives built around the Wii U’s unique features.  No third-party developer wants to invest in a game that can only ever be sold on a single platform with a tiny installed base.</p>\n\n<p>I own a Wii U, and I’m <a href=\"http://nintendoland.nintendo.com\">convinced</a> that it really does offer new, fun gaming experiences not available on any other platform.  I’m also a <a href=\"http://hypercritical.co/2013/01/25/we-can-remember-it-for-you-wholesale\">diehard</a> fan of several of Nintendo’s <a href=\"http://mario.nintendo.com\">popular</a> <a href=\"http://www.zelda.com\">franchises</a>.  But I’m not the kind of customer that carried the Wii to head of the class in the previous generation.  I’m the kind that would gladly pay twice the price of a Wii U for the ability to play a Zelda game on a console with the power of the PlayStation 4.  The Wii U is not built for me.  Whatever kind of customer it is built for, there sure don’t seem to be many of them.</p>\n\n<h2>PlayStation 4</h2>\n\n<p>Sony is the reigning king of overblown hardware hype, famously promising that the PS2’s <a href=\"http://en.wikipedia.org/wiki/Emotion_Engine\">emotion engine</a> and the PS3’s <a href=\"http://en.wikipedia.org/wiki/Cell_(microprocessor)\">Cell processor</a> would change the face of computing forever.  And maybe they did, in <a href=\"http://www.youtube.com/watch?v=8cG2D5xv0T4\">a tiny way</a>.  But their power was notoriously difficult to unlock.  They became the standard-bearers for the gaming version of the <a href=\"http://en.wikipedia.org/wiki/May_you_live_in_interesting_times\">ancient Chinese proverb</a>: “May you develop for interesting hardware.”</p>\n\n<p>Hardware eccentricity has been part and parcel of console development for decades.  And the weirder the hardware, the more likely it is that a straightforward implementation of a game engine will run up against bottlenecks.  The developer laments are familiar.  “If only there were more bandwidth between the CPU and main memory.”  “If only I had just 10% more RAM.”  “If only this console had a much more powerful programmable GPU instead of a <a href=\"http://en.wikipedia.org/wiki/Cell_(microprocessor)#Element_Interconnect_Bus_.28EIB.29\">ring bus</a> studded with <a href=\"http://en.wikipedia.org/wiki/Cell_(microprocessor)#Synergistic_Processing_Elements_.28SPE.29\">custom SIMD processors</a>, each with its own tiny local storage.”</p>\n\n<p>The PlayStation 4 aims to repent for the sins of both its father and grandfather—and then some.  Unlike its predecessors, it was designed in close cooperation with game developers.  During the design process, new revisions of the PS4 architecture were presented to developers along with a challenge: find the bottleneck.  Every aspect of the system was put through a similar gauntlet, from the shape and travel of the controller triggers to the accuracy of the gyroscopes.</p>\n\n<p>All game consoles go through some version of this process, but the PlayStation 4 is defined by it.  The hubris of the PS2 and PS3 is nowhere to be found in the PS4.  This is a product of a newly humbled and rededicated Sony.</p>\n\n<p>And the thing that Sony is rededicated to is <i>gaming</i>, plain and simple.  Sony was the first console maker to really push the idea of a gaming system that does much more than just play games, but now it’s returning to its roots.</p>\n\n<p>The PlayStation 4 is exactly the sort of thing that a hardcore gamer might have envisioned if presented with the product name back in the days when the original PlayStation reigned supreme.  It’s got more of everything, and the vast majority of its resources are bent towards being the best system for developing and playing games.  In this generation of consoles, that’s actually a radical notion.</p>\n\n<h2>Xbox One</h2>\n\n<p>The final entrant in this round of the console wars is the most ambitious.  No longer content to walk the old paths blazed by Nintendo, Sega, and Sony, Microsoft is finally making its play for the entire living room.</p>\n\n<p>Take a peek at the back of the box—a box that looks for all the world like <a href=\"http://news.xbox.com/media?sc_device=lightbox&amp;mediaid=%7B3A902CE6-E7C6-49B6-8D48-9594B8D59E7F%7D\">a futuristic VCR</a>—and you’ll find the hardware incarnation of this ambition: an HDMI <i>input</i>.  Any form of entertainment that does not spring from the Xbox One is invited to at least flow through it, to be mediated and controlled by it.  It’s all right there in the name: One box to rule them all.</p>\n\n<p>The <a href=\"http://www.gamespot.com/features/the-xbox-one-revealed-6408247/\">Xbox One announcement</a> was unabashedly <a href=\"http://www.youtube.com/watch?v=KbWgUO-Rqcw\">focused</a> on everything <i>but</i> games.  Microsoft promised more at <a href=\"http://en.wikipedia.org/wiki/Electronic_Entertainment_Expo\">E3</a>, relying on the substantial goodwill it’s earned with gamers over the past decade to stave off any anxiety about the One’s gaming bona fides.</p>\n\n<p>Indeed, at first glance, the core hardware architecture looks nearly identical to the PS4.  But <a href=\"http://www.anandtech.com/show/6972/xbox-one-hardware-compared-to-playstation-4\">a closer look</a> reveals a system designed to accommodate a much broader vision of home entertainment.</p>\n\n<p>Where the PS4 uses high-speed <a href=\"http://en.wikipedia.org/wiki/GDDR5\">GDDR5</a> RAM, the Xbox One opts for <a href=\"http://www.anandtech.com/show/6972/xbox-one-hardware-compared-to-playstation-4/2\">slower</a>—but also less power-hungry—<a href=\"http://en.wikipedia.org/wiki/DDR3_SDRAM\">DDR3</a>.  And in the Xbox, that RAM is shared between two separate operating systems running simultaneously: one for games, and one for everything else.</p>\n\n<p>These hardware features express two very different usage models.  The PS4 expects to be turned on when in use, then turned “off” afterwards, entering a super-low-power mode during which a tiny auxiliary processor handles housecleaning chores like downloading game content and applying software updates.</p>\n\n<p>The Xbox One, with its HDMI input and non-game-related OS and apps, expects to be fully powered whenever the television is on.  Thus, Microsoft’s focus on idle power consumption—even at the cost of gaming performance.</p>\n\n<p>To mitigate this disadvantage, the Xbox One includes 32MB of low-latency embedded <a href=\"http://en.wikipedia.org/wiki/Static_random-access_memory\">SRAM</a> right on the <a href=\"http://en.wikipedia.org/wiki/System_on_a_chip\">SoC</a>.  This is a common technique, but it leads to increased complexity.  Game developers must now take care to ensure that the right data is in the tiny local eSRAM pool exactly when it’s needed.  A single pool of uniformly fast memory (albeit with higher latency), as in the PS4, is a much simpler arrangement.  Different priorities, different trade-offs.</p>\n\n<p>(The eSRAM also consumes die space, which, along with power consumption and cost, may have contributed to Microsoft's decision to give the Xbox One <a href=\"http://www.anandtech.com/show/6972/xbox-one-hardware-compared-to-playstation-4/2\">33% fewer GPU cores</a> than the PS4.)</p>\n\n<p>Then there’s the Xbox One’s companion hardware, the next iteration of Microsoft’s <a href=\"http://en.wikipedia.org/wiki/Kinect\">Kinect</a> motion control system.  The first version of this technology, released as an add-on for the Xbox 360, was the <a href=\"http://tvtropes.org/pmwiki/pmwiki.php/Main/DancingBear\">proverbial dancing bear</a>: it didn’t work well, but it was amazing that it worked at all.</p>\n\n<p>The new incarnation comes bundled with every Xbox One, and it dances like a furry Fred Astaire.  It surpasses its predecessor by many multiples in every specification: <a href=\"http://www.theverge.com/2013/5/21/4353232/kinect-xbox-one-hands-on\">resolution, depth perception, motion tracking, latency, noise cancellation, local computation</a>.  This technology is no joke.</p>\n\n<p>But does it make games more fun?  Or, failing that, is it a better way to control a television than a remote control?  Microsoft is betting a lot, in terms of both hardware cost and software support, that the new Kinect will be an essential component of at least one of these activities in a way that the first Kinect was not.</p>\n\n<p>When I’m feeling optimistic about the Kinect, I think back to the many generations of terrible touch-screen devices that preceded the iPhone.  The history of touch-based interfaces on consumer electronics wasn’t a gradual ramp up to acceptable quality.  The iPhone wasn’t just the next iteration; it was a discontinuity.  Once the technology passed some critical threshold of responsiveness and reliability, it went from a nerdy curiosity to completely mainstream in the blink of an eye.</p>\n\n<p>I don’t know where that threshold is for multi-sensor full-body motion control and voice recognition, but I do believe it’s out there.  Microsoft does too.  Of course, that belief will be of little consolation to Xbox One owners if the “iPhone moment” is still many years in the future.</p>\n\n<h2>Forward-Looking Statements</h2>\n\n<p>Last generation, Nintendo did something crazy—and it worked.  This generation, everyone is taking big risks.</p>\n\n<p>Nintendo tried to play the same hand that it won with in the last round, but now finds itself stranded with previous-generation hardware in a next-generation market.  Like Apple in the 90s, Nintendo is a sentimental favorite.  But it took more than just the iMac and the iPod to transform Apple.  The Wii U still has the potential to be an excellent platform for Nintendo’s beloved first-party games, and a low-cost alternative to the PS4 and Xbox One.  Nintendo should <a href=\"http://www.wired.com/gadgets/mac/commentary/cultofmac/2006/03/70512?currentPage=all\">milk it for all it’s worth</a>, and get busy on the next great thing.</p>\n\n<p>Sony is betting that the market for game consoles made by and for hardcore gamers has not yet peaked.  If it’s right, Sony is well-positioned to dominate this generation.  If it’s wrong, the PS4 could be Sony’s <a href=\"http://en.wikipedia.org/wiki/Spruce_Goose\" title=\"Way of the Future\">Spruce Goose</a>: the ne plus ultra of game consoles, remembered in equal parts as a technical marvel and a cautionary tale.</p>\n\n<p>Finally, there’s Microsoft, offering us a brief glimpse of the boundless hunger that once defined the company.  But as Microsoft knows <a href=\"http://en.wikipedia.org/wiki/Microsoft_TV\">all too well</a>, the living room is littered with the bones of past suitors.</p>\n\n<p>I applaud the technical prowess of the Xbox One’s software, particularly the focus on responsiveness.  The <a href=\"http://www.gamespot.com/features/the-xbox-one-revealed-6408247/\">demonstrated</a> performance when switching between live TV, gaming, and other apps puts all <a href=\"http://hypercritical.co/2013/01/07/ces-worse-products-through-software\">previous efforts</a> at “smart” TV interfaces to shame.</p>\n\n<p>That said, I seriously question the public’s appetite for displaying any additional content alongside a TV show or movie.  The “second screen” experience is already well established, and it happens with a device that’s in your hand or on your lap.  Grabbing one third of a large, communal TV screen to look up an actor on <a href=\"http://www.imdb.com/\">IMDB</a> isn’t just unappealing and cumbersome, it’s downright rude.</p>\n\n<p>There are other contexts where the Xbox One’s unique abilities might shine: jumping in and out of a game to check a sports score, for example, or quickly hitting the web to watch an extended version of an interview after finishing an episode of <a href=\"http://www.thedailyshow.com\">The Daily Show</a>.  Yes, I can see that.</p>\n\n<p>But will it be enough to crown the Xbox One the king of the living room?  As with all TV-connected devices, content is the key.  The Xbox One has games, live TV, and video streaming services covered, but it appears to lack any form of time-shifting functionality.  Given how much popular content remains locked up in broadcast and cable TV packages, there’s no way any box without DVR-like functionality can ever be the One True Interface to “watching television.”</p>\n\n<p>Luckily for all three companies, things change quickly in this industry.  If a critical mass of programming becomes available on streaming services a few years down the road, the Xbox One could finally fulfill its destiny.</p>\n\n<p>On the other hand, Microsoft’s new focus could be a giant turn-off to gamers who were expecting an “Xbox 720,” not a Kinect-powered “media center.”  However brief and anecdotal it may be, a <a href=\"http://www.nintendolife.com/news/2013/05/consumers_go_crazy_for_wii_u_following_xbox_one_reveal\">Wii U sales spike</a> accompanying the Xbox One announcement has to have Microsoft at least a bit worried.  If the gamers who bought the Xbox 360 don’t show up in the expected numbers to buy the Xbox One, I have a hard time believing this monstrous, sensor-festooned device will pull a Wii and capture the imaginations—and dollars—of non-gamers on a grand scale.</p>\n\n<p>No matter what happens, I <a href=\"http://www.youtube.com/watch?v=GgSa8Ca3iKs\">don't envision</a> a future where the market is evenly divided between these three very different products.  Game on.</p>\n\n<hr/>\n\n<p><small>If you’d like to hear an expanded audio discussion of these topics, including my take on the TV-related efforts of Apple and Google, check out <a href=\"http://www.imore.com/ad-hoc-03-xbox-one-and-state-living-room\">episode 3 of the Ad Hoc podcast</a> with <a href=\"https://twitter.com/gte\">Guy English</a> and <a href=\"https://twitter.com/reneritchie\">Rene Ritchie</a>.</small></p>",
+         "date_published" : "2013-05-28T10:50:33-04:00",
+         "author" : {
+            "url" : "http://hypercritical.co",
+            "name" : "John Siracusa"
+         }
+      },
+      {
+         "date_published" : "2013-05-06T08:31:32-04:00",
+         "author" : {
+            "url" : "http://hypercritical.co",
+            "name" : "John Siracusa"
+         },
+         "id" : "http://hypercritical.co/2013/05/06/hypercritical-t-shirts",
+         "url" : "http://hypercritical.co/2013/05/06/hypercritical-t-shirts",
+         "title" : "Hypercritical T-Shirts",
+         "date_modified" : "2013-05-14T14:42:00-04:00",
+         "content_html" : "<div class=\"image header\"><a href=\"http://teespring.com/hypercritical\"><img src=\"/2013/05/06/images/hypercritical-t-shirts.jpg\" width=\"640\" height=\"409\" alt=\"\"/></a><div class=\"caption\">Hypercritical t-shirts, clockwise from the top-left: Silver, Gold, Black, and Navy.</div></div>\n\n<p><b>Update - May 14, 2013:</b> I regret to report that the Hypercritical t-shirt has been canceled due to the unauthorized use of an icon from a past version of the Macintosh operating system.  All purchases will be refunded in full.  This situation is entirely my fault. I'm sorry for disappointing everyone.  Thanks to all of you for your support.</p>\n\n<p>(My original post about t-shirts appears below, for historical purposes.)</p>\n\n<hr>\n\n<p>I’ve wanted to create a Hypercritical t-shirt for a while now.  When I saw that my friend and <a href=\"http://atp.fm\">podcast co-host</a> Marco Arment had created <a href=\"http://www.marco.org/2013/05/03/tshirt\">a t-shirt for Marco.org</a> using a new <a href=\"http://www.kickstarter.com\">Kickstarter</a>-like website called <a href=\"http://teespring.com\">Teespring</a>, I was intrigued.  When I looked at the shipping dates for Marco’s shirt, I realized that it was now or never if I wanted to get Hypercritical shirts into people’s hands in time for <a href=\"https://developer.apple.com/wwdc/\">WWDC</a>.</p>\n\n<p>The <a href=\"http://teespring.com\">Teespring website</a> made it incredibly easy to get a shirt up for sale.  In hindsight, doing this in the middle of the night on a Friday was perhaps not the best idea, but that’s what I did.  In less than 30 minutes, I’d created the artwork, uploaded it, and started the sale.  The rest of the weekend was a bit of a blur.  I worked with the Teespring staff (and <a href=\"https://twitter.com/siracusa/status/330710221087465472\">people on Twitter</a>) to improve the artwork I’d created in haste, and to make more colors and styles available.</p>\n\n<p>Teespring is <a href=\"http://www.forbes.com/sites/alextaub/2013/01/03/teespring-is-this-rhode-island-based-startup-the-future-of-custom-apparel/\">a relatively young company</a>, and the user-facing interface on the site doesn’t yet support adding multiple colors and styles.  The Teespring staff made all these changes for me behind the scenes—on a weekend.  The site’s limitations still necessitated the creation of two separate t-shirt “campaigns” for the two different ink colors used on the <a href=\"http://teespring.com/hypercritical-dark\">dark</a> and <a href=\"http://teespring.com/hypercritical\">light</a> shirts.</p>\n\n<p>If you follow <a href=\"http://twitter.com/hypercritical\">@hypercritical</a> or <a href=\"http://twitter.com/siracusa\">@siracusa</a> on Twitter and were online this weekend, this is all probably old news to you.  My dual t-shirt sales have already far surpassed their goals, thanks to the amazing response of my Twitter followers.</p>\n\n<p>If you’d like to support my writing on this site, the t-shirt sale will continue until May 14th.  According to <a href=\"http://teespring.com/about/shipping\">Teespring's shipping estimates</a>, all orders should arrive by June 4th at the latest, including international orders.  Here are the two links for the dark and light t-shirt sales:</p>\n\n<ul>\n<li> <a href=\"http://teespring.com/hypercritical\">Hypercritical: The Shirt</a> - Silver and Gold</li>\n<li> <a href=\"http://teespring.com/hypercritical-dark\">Hypercritical: The Shirt (Dark)</a> - Navy and Black</li>\n</ul>\n\n<p>My sincere thanks to everyone who has already purchased a shirt, and to all the people who continue to read this site.</p>"
+      },
+      {
+         "author" : {
+            "name" : "John Siracusa",
+            "url" : "http://hypercritical.co"
+         },
+         "date_published" : "2013-05-03T21:59:48-04:00",
+         "content_html" : "<div class=\"image header\"><img src=\"/2013/05/03/images/macbook-air.jpg\" width=\"640\" height=\"125\" alt=\"MacBook Air\"/></div>\n\n<p>The prevailing wisdom about software design at Apple is that the pendulum has swung too far in the direction of simulated real-world materials, slavish imitation of physical devices, and other <a href=\"http://arstechnica.com/apple/2011/07/mac-os-x-10-7/5/#crazy-ones\">skeuomorphic</a> design elements, producing a recent crop of applications that suffer from an <a href=\"http://arstechnica.com/apple/2011/07/mac-os-x-10-7/5/#address-book\">uncomfortable tension</a> between the visual design of the software and its usability and features.  After the <a href=\"http://www.apple.com/pr/library/2012/10/29Apple-Announces-Changes-to-Increase-Collaboration-Across-Hardware-Software-Services.html\">executive reshuffle</a> six months ago, we Apple fans have been hoping that <a href=\"http://www.apple.com/pr/bios/jonathan-ive.html\">Jony Ive</a>, now in charge of Human Interface for both hardware and software, will end this destructive conflict and bring order to the galaxy.</p>\n\n<p>With iOS 7 and OS X 10.9 <a href=\"https://developer.apple.com/wwdc/\">looming</a>, we’re left to wonder exactly what kind of software designer Ive will turn out to be.  Certainly, Apple’s software has been influenced by Ive’s hardware designs in the past—and perhaps vice versa—but this will be the first time Ive is officially in charge of the virtual bits as well as the physical ones.</p>\n\n<p>We may not have much to go on when predicting Ive’s software tastes, but we do know a heck of a lot about his opinions on hardware design.  Though Ive has historically spent his time at Apple keynotes in the audience rather than on the stage, he’s starred in many, many videos wherein he explains why Apple’s great new hardware product looks and works the way it does.  In these videos, his message has been remarkably consistent.</p>\n\n<p>Ive demands that the hardware be true to itself—its purpose, its materials, the way it looks, and the way it feels.  Here’s a quote from one of Ive’s rare <a href=\"http://www.youtube.com/watch?v=YdVG4LcoY4Y&amp;t=81\">appearances</a> outside an Apple press event, talking about hardware design at Apple.</p>\n\n<blockquote>\n<p>When we’re designing a product, we have to look to different attributes of the product. Some of those attributes will be the materials that it’s made from and the form that’s connected to those materials.  So for example, with the first iMac that we made, the primary component of that was the cathode ray tube, which was spherical. We would have an entirely different approach to designing something like that than the current iMac, which is a very thin, flat-panel display. […]</p>\n\n<p>A lot of what we seem to be doing in a product like [the iPhone] is actually getting design out of the way. And I think when forms develop with that sort of reason, and they’re not just arbitrary shapes, it feels almost inevitable. It feels almost undesigned. It feels almost like, well, of course it’s that way. You know, why wouldn’t it be any other way?</p>\n</blockquote>\n\n<p>Steve Jobs also subscribed to this philosophy.  Witness <a href=\"http://www.youtube.com/watch?v=qt2VsaEJ9so&amp;t=5433\">his explanation</a> of the design of <a href=\"http://en.wikipedia.org/wiki/IMac_G4\">the first iMac with an LCD display</a> at Macworld New York in 2002.  Here’s how Jobs described Apple’s solution to the inherent compromises (in 2002 technology) of putting an optical drive in a vertical orientation and trying to pack an entire computer behind an LCD display.</p>\n\n<blockquote><p>The big ideas was, that rather than glom these things all together and ruin them all—a lower-performance computer and a flat screen that isn’t flat anymore—why don’t we let each element be true to itself?  If the screen is flat, let it be flat.  If the computer wants to be horizontal, let it be horizontal.</p></blockquote>\n\n<p>It’s interesting that Jobs and Ive saw eye to eye on hardware design and yet seemed far apart, at least in Jobs’s final years, when it comes to software design.  While Jobs was <a href=\"http://www.fastcodesign.com/1670760/will-apples-tacky-software-design-philosophy-cause-a-revolt\">reportedly</a> a champion of <a href=\"http://arstechnica.com/apple/2011/07/mac-os-x-10-7/5/#ical\">rich Corinthian leather</a>, Ive could only wince when <a href=\"http://www.telegraph.co.uk/technology/apple/9283706/Jonathan-Ive-interview-simplicity-isnt-simple.html\">asked about it in an interview</a>.</p>\n\n<p>I’m confident that we’ll see less leather, wood, felt, and <a href=\"http://thenextweb.com/apple/2013/03/21/apple-updates-podcasts-app-with-custom-stations-on-the-go-playlists-and-less-skeuomorphic-design/\">animated reel-to-reel tapes</a> in Apple’s future software products, but the question remains: what does it mean for an application or an OS to be true to itself?</p>\n\n<p>I’m not sure how Ive will express that concept, but <a href=\"https://twitter.com/lorenb\">Loren Brichter</a>, creator of <a href=\"http://en.wikipedia.org/wiki/Tweetie\">Tweetie</a> and <a href=\"http://www.atebits.com/letterpress/\">Letterpress</a>, offers one possible interpretation on <a href=\"http://www.imore.com/loren-brichter-talks-opengl-tweetie-letterpress-and-future-interface\">an episode of the Debug podcast</a> (starting at 6:10, and again at 1:02:26, specifically mentioning Ive).  Letterpress is an exemplar of the so-called “<a href=\"http://pinterest.com/warmarc/flat-ui-design/\">flat design</a>” aesthetic (and it’s also currently featured on <a href=\"http://www.apple.com\">the front page of Apple.com</a>).  Brichter designed the look and feel of Letterpress based on the things that modern graphics hardware is naturally good at doing: drawing and manipulating flat planes of mostly solid colors.</p>\n\n<p>A design philosophy so tightly linked to nitty-gritty details of silicon chips and OpenGL APIs is unlikely to resonate with Ive as much as it does with a programmer like Brichter, but the end results may be similar.  I expect Ive to focus on harmony between the look and feel of the software, the materials and finish of the hardware, and most importantly, the intended purpose of each specific application.  (It’s kind of a shame that Apple’s <a href=\"http://en.wikipedia.org/wiki/Mac_OS_7.6#Mac_OS_7.6\">already used</a> the “Harmony” code name.)  This is my message to Jony Ive and and my hope for iOS 7, OS X 10.9, and each bundled application: to thine own self be true.</p>",
+         "date_modified" : "2013-05-07T11:14:34-04:00",
+         "title" : "Beauty, Truth, and Jony Ive",
+         "id" : "http://hypercritical.co/2013/05/03/beauty-truth-and-jony-ive",
+         "url" : "http://hypercritical.co/2013/05/03/beauty-truth-and-jony-ive"
+      },
+      {
+         "title" : "The Lottery",
+         "url" : "http://hypercritical.co/2013/04/26/the-lottery",
+         "id" : "http://hypercritical.co/2013/04/26/the-lottery",
+         "date_modified" : "2013-04-26T10:15:36-04:00",
+         "content_html" : "<p>In a <a href=\"http://atp.fm/episodes/10-gradual-ramp-up-to-nothing\">recent podcast</a>, I rejected the idea of a lottery system for selling <a href=\"http://developer.apple.com/wwdc/\">WWDC</a> tickets as too random.  I wanted to preserve at least some aspect of the process that rewarded the most enthusiastic Apple fans: the people who are willing to be roused from bed at 2 a.m. and rush to their computers to buy tickets; <a href=\"http://www.youtube.com/watch?v=dX9GTUMh490\">the crazy ones</a>; the people who just want it more.</p>\n\n<p>After yesterday’s experience of watching WWDC tickets sell out in what I measured to be less than 2 minutes, I’ve changed my mind.  If the tickets had sold out in, say, 10 minutes (and assuming no server errors—more on that in a moment), then dedicated buyers would have been rewarded.  If you couldn’t be bothered to be online until more than 10 minutes after the tickets went on sale, well, tough luck.  Someone else wanted it more.</p>\n\n<p>But tickets selling out in less than 2 minutes does not reward anyone’s dedication.  We were all online at 10 a.m. PDT sharp, all ready to purchase, all equally dedicated.  It was a de facto lottery, with an extra layer of pointless stress added on top.</p>\n\n<p>Apple’s servers performed admirably…for about the first 5 seconds after tickets went on sale.  After that, it was a crapshoot.  Even if the tickets had sold out in an hour, it’d still effectively be a lottery if that hour was filled with server errors.  You’d “win” if you happened to get through the purchase process with no errors.</p>\n\n<p>An actual lottery, pre-announced, with no time pressure for entry, would be more equitable than what happened yesterday.  That’s what I recommend for next year.</p>\n\n<h2>The Heart of the Matter</h2>\n\n<p>Many more people want to attend WWDC than the conference can accommodate.  There has been no shortage of <a href=\"http://bitsplitting.org/2013/04/25/end-wwdc/\">interesting suggestions</a> for how to fix this.  Broadly speaking, WWDC has not changed in decades. Apple and its developer ecosystem, on the other hand, are radically different than they were just five years ago.  Something has to give.</p>\n\n<p>I’ve heard many non-developers discuss the rush to get WWDC tickets as if the big draw is the keynote presentation, where Apple typically reveals new products.  That is the most interesting part of the conference for the public, but it’s not why WWDC sells out so fast.</p>\n\n<p>Developers flock to WWDC because it’s a rare opportunity to communicate with Apple directly, human to human.  The best way to decrease the demand for WWDC tickets is for Apple to increase its communication with developers throughout the year.  And by communication I don’t mean throwing documentation or even video presentations over the wall to developers; I mean staffing up for more real, personal, timely, <i>informal</i> contact with developers outside the court-like atmosphere of the App Store review process or the artificial scarcity of <a href=\"https://developer.apple.com/support/technical/submit/\">Technical Support Incidents</a>.</p>\n\n<p>Apple’s decision to release WWDC session videos to all registered developers during the conference was long overdue, but it clearly didn’t decrease demand for WWDC tickets enough to make a difference.  Maybe next year, after developers have experienced their first <a href=\"http://en.wikipedia.org/wiki/Broadcast_delay\">tape-delayed</a> WWDC, it will make a dent.  But I really believe that increased, improved communication between Apple and developers on all fronts is the best long-term solution.</p>",
+         "date_published" : "2013-04-26T09:22:17-04:00",
+         "author" : {
+            "name" : "John Siracusa",
+            "url" : "http://hypercritical.co"
+         }
+      },
+      {
+         "date_modified" : "2013-10-23T12:52:43-04:00",
+         "content_html" : "<div class=\"image header\"><img src=\"/2013/04/12/images/come-at-me-bro.jpg\" width=\"640\" height=\"266\" alt=\"Come at me, Bro\"/></div>\n\n<p>When Apple decided to make its own web browser back in 2001, it chose <a href=\"http://en.wikipedia.org/wiki/KHTML\">KHTML</a>/<a href=\"http://en.wikipedia.org/wiki/KJS_(KDE)\">KJS</a> from the <a href=\"http://en.wikipedia.org/wiki/KDE\">KDE</a> project as the basis of its rendering engine. Apple didn’t merely “adopt” this technology; it took the source code and ran with it, hiring a bunch of smart, experienced developers and giving them the time and resources they needed to massively improve KHTML/KJS over the course of several years.  Thus, <a href=\"http://en.wikipedia.org/wiki/Webkit#Origins\">WebKit was born</a>.</p>\n\n<p>In the world of open source software, this is the only legitimate way to assert “ownership” of a project: become the driving force behind the development process by contributing the most—and the best—changes.  As WebKit raced ahead, Apple had little motivation to <a href=\"http://en.wikipedia.org/wiki/Webkit#Split_development\">help keep KHTML in sync</a>.  The two projects had different goals and very different constraints.  KDE eventually <a href=\"http://kde.org/announcements/4.5/platform.php\">incorporated WebKit</a>.  Though KHTML development continues, WebKit has clearly left it behind.</p>\n\n<p>When Google introduced <a href=\"http://en.wikipedia.org/wiki/Google_Chrome\">its own web browser</a> in 2008, it chose WebKit as the basis for its rendering engine.  Rather than <a href=\"http://en.wikipedia.org/wiki/Fork_(software_development)\">forking off</a> its own engine based on WebKit, Google chose to participate in the existing WebKit community.  At the time, Apple was clearly the big dog in the WebKit world.  But just look at what happened after Google joined the party. (Data from <a href=\"http://bitergia.com/public/reports/webkit/2013_01/\">Bitergia</a>.)</p><span id=\"graphs\"></span>\n\n<div class=\"image\"><div class=\"title\">WebKit: Reviewed Commits</div>\n<a href=\"http://bitergia.com/public/reports/webkit/2013_01/\"><img src=\"/2013/04/12/images/webkit-reviewed-commits-per-comany.png\" width=\"640\" height=\"307\" alt=\"WebKit reviewed commits per company\"/></a></div> \n\n<div class=\"image\"><div class=\"title\">WebKit: Active Authors</div>\n<a href=\"http://bitergia.com/public/reports/webkit/2013_01/\"><img src=\"/2013/04/12/images/webkit-active-authors-per-company.png\" width=\"640\" height=\"310\" alt=\"WebKit reviewed commits per company\"/></a></div> \n\n<p>Given these graphs, and knowing the history between Apple and Google over the past decade, one of two things seemed inevitable: either Google was going to become the new de facto “owner” of WebKit development, or it was going to create its own fork of WebKit.  It turned out to be the latter.  Thus, <a href=\"http://www.chromium.org/blink\">Blink was born</a>.</p>\n\n<p>Google has <a href=\"http://www.google.com/chrome/\">already proven</a> that it has the talent, experience, and resources to develop a world-class web browser.  It made <a href=\"http://en.wikipedia.org/wiki/V8_(JavaScript_engine)\">its own JavaScript engine</a>, its own <a href=\"http://en.wikipedia.org/wiki/Google_Chrome#Stability\">multi-process architecture</a> for stability and code isolation, and has added a huge number of improvements to WebKit itself.  Now it’s taken the reins of the rendering engine too.</p>\n\n<p>Where does this leave Apple?  All the code in question is <a href=\"http://en.wikipedia.org/wiki/Open-source\">open-source</a>, so Apple is free to pull improvements from Blink into WebKit.  Of course, Google has little motivation to help with this effort.  Furthermore, Blink is a clearly declared fork that’s likely to rapidly diverge from its WebKit origins.  From <a href=\"http://blog.chromium.org/2013/04/blink-rendering-engine-for-chromium.html\">Google’s press release about Blink</a>: “[W]e anticipate that we’ll be able to remove 7 build systems and delete more than 7,000 files—comprising more than 4.5 million lines—right off the bat.”  (There’s <a href=\"https://lists.webkit.org/pipermail/webkit-dev/2013-April/024388.html\">some streamlining</a> in the works on the other side of the fence too.)</p>\n\n<p>Does Apple—and the rest of the WebKit community—have the skill and capacity to continue to drive WebKit forward at a pace that matches <a href=\"http://www.chromium.org/blink#architectural-changes\">Google’s grand plans for Blink</a>?  The easy answer is, “Of course it does!  Apple created the WebKit project, and it got along fine before Google started contributing.”  But I look at those graphs and wonder.</p>\n\n<p>The recent history of WebKit also gives me pause.  Google <a href=\"https://news.ycombinator.com/item?id=5490242\">did not want to contribute</a> its multi-process architecture back to the WebKit project, so Apple created its own solution: the somewhat confusingly named <a href=\"http://trac.webkit.org/wiki/WebKit2\">WebKit2</a>.  While Google chose to put the process management into the browser application, Apple baked multi-process support into the WebKit engine itself.  This means that any application that uses WebKit2 gets the benefits of multi-process isolation without having to do anything special.</p>\n\n<p>This all sounds great on paper, but in (several years of) practice, Google’s Chrome has proven to be far more stable and resilient in the face of misbehaving web pages than Apple’s WebKit2-based Safari.  I run both browsers all day, and a week rarely goes by where I don’t find myself facing the dreaded “<a href=\"/2013/04/12/images/web-pages-are-not-responding.png\" title=\"I wasn’t sure I’d be able to find a clean screenshot of this dialog box, but I needn’t have worried.  One appeared on my own Mac while writing this article.\">Webpages are not responding</a>” dialog in Safari that invites me to reload every single open tab to resume normal operation.</p>\n\n<h2>Princes of Android</h2>\n\n<p>Having the development talent to take control of foundational technologies is yet another aspect of corporate <a href=\"http://hypercritical.co/2013/03/19/self-reliance\">self reliance</a>.  Samsung’s smartphone business currently relies on a <a href=\"http://www.android.com\">platform</a> developed by another company.  Leveraging the work of others can save time and money, but Samsung would undoubtedly be a lot more comfortable if it had more control over the foundation of one of its most profitable product lines.</p>\n\n<p>The trouble is, I don’t think Samsung has the expertise to go it alone with a hypothetical Android fork.  Developing a modern  OS and its associated toolchain, documentation, developer support system, app store, and so on is a huge task.  Only a handful of companies in history have done it successfully on a large scale—and Samsung’s not one of them.  Sure, it’s possible to staff-up and build that expertise, but it’s not easy and it requires years of commitment.  I’d bet against Samsung pulling it off.</p>\n\n<p><a href=\"https://www.facebook.com/home\">Facebook Home</a> can also be viewed through the lens of developer-based self reliance.  Facebook clearly wants to make sure it’s an important part of the future of mobile computing, but that’s not easy to do when you’re “just a website.”  Home lets Facebook put itself front and center on existing Android-based smartphones.</p>\n\n<p>It seems unwise for Facebook to build its mobile strategy on the back of a platform controlled by its mortal enemy, Google.  But perhaps Home is just the first step of a long-term plan that will eventually lead to a Facebook fork of Android.  If so, the question inevitably follows: can Facebook really take ownership of its own platform without help from Google?</p>\n\n<p>Facebook has proven that it can expand its skill set.  Over the past few years, it’s been hiring <a href=\"http://www.mikematas.com\">talented designers</a> and acquiring <a href=\"http://www.madebysofa.com\">companies</a> with proven design chops.  Facebook Home is the first result of those efforts, and by all accounts, the user interface exhibits a level of polish more commonly associated with Apple than Facebook.</p>\n\n<p>Still, a lock screen replacement is a far cry from a full OS.  Maybe Facebook just plans to <a href=\"http://archive.org/details/PBS.Triumph.of.the.Nerds.2of3\">ride the bear</a>, relying on Google to do the grunt work of maintaining and advancing the platform for as long as it can, while Facebook slowly takes over an increasing amount of the user experience.</p>\n\n<p>Some people wonder how Google can possibly have any power in the Android ecosystem if the source code is free.  Facebook Home has been cited as an example of Google’s ineffectualness.  Look at how one of Google’s fiercest enemies has played it for a fool, they say.  Google did all the hard work, then Facebook came in at the last minute and co-opted it all for its own purposes.</p>\n\n<p>But look again at the <a href=\"#graphs\">graphs</a> above.  Now imagine similar graphs for the Android source code.  Any company with Android-based products that wants to be truly free from Google’s control has to be prepared—and able—to match Google’s output.  Operating systems don’t write themselves; platforms don’t maintain themselves; developers need tools and support; technology marches on.  It’s not enough just to just fix bugs and support new hardware.  To succeed with an Android fork, a company has to drive development in the same way that Apple did when it spawned WebKit from KHTML, just as Google is doing as it forks Blink from WebKit.</p>\n\n<p>This is not a <a href=\"http://en.wikipedia.org/wiki/Real-time_strategy\">real-time strategy game</a>.  Companies like Samsung and Facebook can’t just mine for more resources and build new developer <a href=\"http://starcraft.wikia.com/wiki/Barracks\" title=\"hatcheries?\">barracks</a>.  Building up expertise in a new domain takes years of concerted effort—and a little bit of luck on the hiring front doesn’t hurt, either.</p>\n\n<p>Facebook may already be a few years into that process.  Its <a href=\"http://techcrunch.com/2013/04/10/has-facebook-quietly-acquired-osmeta-a-stealth-mobile-software-startup/\">recent</a> acquisition of the mysterious, possibly-OS-related startup <a href=\"http://osmeta.com/about/\">osmeta</a> provides another data point.  Samsung, meanwhile, has just joined an exploratory project to <a href=\"http://blog.mozilla.org/blog/2013/04/03/mozilla-and-samsung-collaborate-on-next-generation-web-browser-engine/\">develop a new web rendering engine</a>.</p>\n\n<p>Google certainly has its own share of problems, but what may save it in the end is its proven ability to tackle ambitious software projects and succeed.  The <a href=\"http://www.youtube.com/watch?v=j82GKTgVDkw&amp;t=58\">challenge</a> set before Facebook, Samsung, and other pretenders to the Android throne is clear.  And as a <a href=\"http://en.wikipedia.org/wiki/Omar_Little\">wise man</a> once said, you come at the king, you best not miss.</p>",
+         "url" : "http://hypercritical.co/2013/04/12/code-hard-or-go-home",
+         "id" : "http://hypercritical.co/2013/04/12/code-hard-or-go-home",
+         "title" : "Code Hard or Go Home",
+         "author" : {
+            "url" : "http://hypercritical.co",
+            "name" : "John Siracusa"
+         },
+         "date_published" : "2013-04-12T19:53:27-04:00"
+      },
+      {
+         "author" : {
+            "url" : "http://hypercritical.co",
+            "name" : "John Siracusa"
+         },
+         "date_published" : "2013-04-07T13:04:05-04:00",
+         "content_html" : "<p>Technology can be a surprisingly ideological topic.  In politics, the spectrum of belief is right on the surface: conservative/liberal, right/left.  In tech, that same spectrum exists, but it’s rarely discussed.  What’s more, unlike political beliefs, I’m not sure most people are even aware of their own core ideas about technology.</p>\n\n<p>Anyone who’s read <a href=\"http://hypercritical.co/archive/\">the past three months of posts</a> on this site could be forgiven for pegging me as a technological ideologue.  Though I draw the line at outright dogmatism, railing against technological conservatism has indeed been a recurring theme of mine.</p>\n\n<p>To illustrate the concept, I’ll use myself as an example.  Back in the <a href=\"http://arstechnica.com/apple/2000/02/mac-os-x-dp3/\">early</a> <a href=\"http://arstechnica.com/apple/2000/05/mac-os-x-dp4/\">days</a> of the operating system now known as <a href=\"http://www.apple.com/osx/\">OS X</a>, I was not happy that the <a href=\"http://en.wikipedia.org/wiki/Apple_menu#System_7.0.E2.80.939.2.2\">user-customizable Apple menu</a> from classic Mac OS had been replaced with an <a href=\"http://en.wikipedia.org/wiki/Apple_menu#Mac_OS_X\">anemic, non-customizable incarnation</a>.  In classic Mac OS, the Apple menu was how I quickly found and launched commonly used applications and <a href=\"http://www.folklore.org/StoryView.py?story=Desk_Ornaments.txt\">Desk Accessories</a>.  Apple removed this feature in Mac OS X and replaced it with…nothing, really.  The <a href=\"http://en.wikipedia.org/wiki/Dock_(OS_X)\">Dock</a> attempted to cover some of the same bases, but the Apple menu could comfortably hold many more items, and in a much more compact form.</p>\n\n<p>In this situation, a technological-conservative position is that Mac OS X needs something like the classic customizable Apple menu.  It wouldn’t necessarily have to be an Apple icon in the upper-left corner of the screen.  It could be a hierarchical menu spawned from the Dock or another screen corner.  (This was actually a popular request back in the days before the Dock supported any form of hierarchy.)  The old OS had a feature like this, and it was useful.  The new OS needs a similar feature, or it will be less useful.</p>\n\n<p>Beneath what seems like a reasonable feature request lurks the heart of technological conservatism: <i>what was and is always shall be</i>.</p>\n\n<p>In my review of the <a href=\"http://arstechnica.com/apple/2010/09/macos-x-beta/\">public beta</a>, I was self-aware enough to moderate my position, <a href=\"http://arstechnica.com/apple/2010/09/macos-x-beta/15/\">merely asking for</a> “some sort of mechanism that equals or betters the functional merits of the Apple Menu.”  But what my conservatism prevented me from seeing was that things like <a href=\"http://www.obdev.at/products/launchbar/index.html\">LaunchBar</a>, <a href=\"http://qsapp.com\">Quicksilver</a>, and (later) <a href=\"http://arstechnica.com/apple/2005/04/macosx-10-4/9/#spotlight\">Spotlight</a> would provide similar functionality in an entirely different way, and with far more efficiency and elegance.</p>\n\n<p>No one wants to think of themselves as a <a href=\"http://en.wikipedia.org/wiki/Luddite\">Luddite</a>, which is part of what makes technological conservatism so insidious.  It can color the thinking of the nerdiest among us, even as we use the latest hardware and software and keep up with all the important tech news.  The certainty of our own tech savvy can blind us to future possibilities and lead us to reject anything that deviates from the status quo.  We are not immune.</p>\n\n<h2>Previously on Hypercritical…</h2>\n\n<p>Consider four of my recent posts, each of which, in its own way, pressed uncomfortably against the <a href=\"http://en.wikipedia.org/wiki/Dark_matter\">dark matter</a> of technological conservatism among tech nerds.</p>\n\n<p>In response to <a href=\"http://hypercritical.co/2013/03/08/the-case-for-a-true-mac-pro-successor\">The Case for a True Mac Pro Successor</a>, a few readers insisted that there’s no longer anything technically interesting about high-performance personal computers.  A new Mac Pro would just be a pair of the latest <a href=\"http://en.wikipedia.org/wiki/List_of_Intel_Xeon_microprocessors#Xeon_E5-2xxx_.28dual-processor.29\">Xeons</a>, some <a href=\"http://en.wikipedia.org/wiki/ECC_memory\">ECC RAM</a>, a few <a href=\"http://en.wikipedia.org/wiki/Fusion_Drive\">SSDs and/or hard drives</a>, and a <a href=\"http://en.wikipedia.org/wiki/Radeon_HD_7000_Series\">big, hot video card</a>.</p>\n\n<p>That’s what the Mac Pro has been, so that’s what it will always be, right?  And there it is.</p>\n\n<p>Even <a href=\"/2013/03/08/the-case-for-a-true-mac-pro-successor#high-end-debut\">explicitly listing</a> several technologies that debuted on Apple’s high-end Macs did not derail the people whose feedback was based on the premise that the Mac Pro will never be anything that it is not already.  This assumption is counter to the entire purpose of a product like the Mac Pro.  It’s meant to push the envelope, to seek out new frontiers of computing power.</p>\n\n<p>In <a href=\"http://hypercritical.co/2013/02/08/dont-stop-thinking-about-tomorrow\">Don’t Stop Thinking About Tomorrow</a>, I tackled technological conservatism head on—though without naming it—by addressing the surprisingly widespread notion that the iPhone 5 is “too light.”  This criticism leans heavily on the seductive view of the present as an endpoint, rather than just another step in a journey towards something radically different.  (For a long time, I avoided writing the post you're reading now because it felt like a retread of this older one. But I eventually decided that these ideas bear repeating. Do not be surprised when both posts arrive at a similar conclusion.)</p>\n\n<p><a href=\"http://hypercritical.co/2013/03/04/fear-of-a-webkit-planet\">Fear of a WebKit Planet</a> was a celebration of what <a href=\"http://blog.chromium.org/2013/04/blink-rendering-engine-for-chromium.html\">turned out</a> to be the tail end of peacetime in the browser wars.  (Well, maybe it was really just <a href=\"https://news.ycombinator.com/item?id=5490242\">a cold war turning hot again</a>.)  The post addressed the fear that “WebKit everywhere” would lead us into another dark age of web development.  Even before <a href=\"http://www.chromium.org/blink\">Google’s fork of WebKit</a>, I <a href=\"/2013/03/04/fear-of-a-webkit-planet#webkit-variety\">noted</a> that WebKit was a lot more like Linux than <a href=\"http://en.wikipedia.org/wiki/Ie6\">IE6</a>, and that “the products built with WebKit are as varied as those built with Linux.”  Pondering that variety, the idea of a homogenous, stagnating WebKit monoculture seemed extremely unlikely.  I didn’t have to wait long for confirmation.</p>\n\n<h2>Uphill, Both Ways</h2>\n\n<p>Finally, the point of <a href=\"http://hypercritical.co/2013/02/24/annoyance-driven-development\">Annoyance-Driven Development</a> was completely blotted out in the minds of a few readers by the audacious suggestion that a beloved service remains ripe for further improvement.  This post revealed technological conservatism in its most virulent form: not only is the current state of affairs satisfactory, but wanting more is evidence of a character flaw, perhaps even a moral failing.</p>\n\n<p>I find this idea absurd in its present-day context, and numerous analogous historical contexts immediately spring to mind as a means to persuade those who don’t.  The trouble is, I can also imagine those same people taking the same technological-conservative positions in all the historical contexts as well.  How far back in time do I have to go before it finally clicks?</p>\n\n<p>Poor baby, you have to wait a whole day after a new episode airs on cable before it magically appears on your silent, $99, network-connected TV box.</p>\n\n<p>Walking to the mailbox, unsealing an envelope, and sticking a disc into a slot under your TV is too much work, is it?  Now you need to be able to start watching a movie without even picking your lazy ass up off the couch?</p>\n\n<p>Oh no! There are rooms in your house where you don’t have instant access to the sum of all human knowledge!  And running wires is just <i>so</i> hard, isn’t it?  Those few cents for zip ties to keep yourself from tripping over the wires will obviously break the bank.  The prince demands radio-based networking everywhere in his castle!</p>\n\n<p>I guess it’s just too much work to walk out the front door five steps, pick up the newspaper that was delivered while you slept, and then bring it back to your kitchen table each morning to read the news of the world.  Now you want it to appear instantly on your computer screen.  OK, Mr. Fancypants Bigshot.</p>\n\n<p>Yeah, pressing seven buttons in sequence is so much work.  You need a <i>faster</i> way to call someone.  Pressing just one button instead will be such a big change in your life, won’t it?  You’ll finally have time to write that novel.</p>\n\n<p>You’ve got a way to send a piece of paper from your home to anywhere in the entire country for literal pocket change, but that’s just <i>too much work</i> for you.  You need to talk to someone <i>right now</i>, hearing an actual voice as if it’s in the same room instead of miles away.</p>\n\n<p>You are warmed by the sun for nearly all your waking hours, but I guess that’s not good enough for you.  No, you’re so important that you need to have light and heat at night as well.  What <i>you</i> need, you precious snowflake, is <a href=\"http://dresdencodak.com/2009/09/22/caveman-science-fiction/\">a miniature artificial sun</a> that’s under your control—obviously!</p>\n\n<h2>The Unreasonable Man</h2>\n\n<p>At some point, we’re all guilty of looking down upon things that have changed since our own formative years, but this attitude has no place in technology criticism—and it’s absolute poison for anyone trying to create great tech products and services.  Not all new ideas represent progress.  (Do I really need to spell this out?  It seems so.)  But ideas should not be rejected based merely on a lifetime of having lived without them.  Today’s “unnecessary” frill is tomorrow’s baseline.</p>\n\n<p>As the <a href=\"http://www.quotationspage.com/quote/692.html\">famous saying</a> goes, the reasonable man adapts himself to the world; the unreasonable one persists in trying to adapt the world to himself. Therefore all progress depends on the unreasonable man.</p>\n\n<p>Every great scientific and engineering triumph in human history has been a slap in the face of technological conservatism—the little ones, perhaps even more so.  And yet each new step forward, no matter what the size, is inevitably met with a fresh crop of familiar objections.  “Just look at what you have already, and it’s still not enough for you. Where does it end?”</p>\n\n<p>It doesn’t. It never ends.  Keep moving or get out of the way.</p>",
+         "date_modified" : "2013-04-07T21:30:25-04:00",
+         "title" : "Technological Conservatism",
+         "id" : "http://hypercritical.co/2013/04/07/technological-conservatism",
+         "url" : "http://hypercritical.co/2013/04/07/technological-conservatism"
+      },
+      {
+         "id" : "http://hypercritical.co/2013/03/19/self-reliance",
+         "url" : "http://hypercritical.co/2013/03/19/self-reliance",
+         "title" : "Self-Reliance",
+         "date_modified" : "2013-03-20T16:36:03-04:00",
+         "content_html" : "<div class=\"image header\"><img src=\"/2013/03/19/images/its-dangerous-to-go-alone.png\" width=\"640\" height=\"418\" alt=\"The Legend of Zelda\"/></div>\n\n<p>The mobile market, everyone agrees, is the technology industry’s future.  What’s not so clear is which company is best positioned to thrive in that future.</p>\n\n<p>For smartphones in particular, the traditional metrics are confusing.  Android has <a href=\"http://www.forbes.com/sites/chuckjones/2013/02/13/android-solidifies-smartphone-market-share/\">70% market share</a>, but Apple is taking <a href=\"http://www.asymco.com/wp-content/uploads/2012/05/Screen-Shot-2012-05-03-at-5-3-10.33.31-AM.png\">70% of the profit</a>.  Google, meanwhile, is not benefiting from Android’s market share dominance as much as Samsung, which recorded <a href=\"http://webcache.googleusercontent.com/search?q=cache:Vqbt1Vyk7OgJ:online.wsj.com/article/SB10001424127887324039504578262432246509020.html+http://online.wsj.com/article/SB10001424127887324039504578262432246509020.html&amp;cd=1&amp;hl=en&amp;ct=clnk&amp;gl=us\">$4 billion in profit</a> from its cellphone and telecom business in Q4 2012.  In the same quarter, Google made less—<a href=\"http://www.usatoday.com/story/tech/2013/01/22/google-facebook-zynga-motorola/1855185/\">$2.89 billion</a>—from all its businesses combined.  And when it comes to selling actual smartphones, <a href=\"http://www.forbes.com/sites/ericsavitz/2013/02/06/applesamsung-101-of-q4-handset-profits-103-for-2012/\">the only two companies making <i>any</i> money</a> are Apple and Samsung.</p>\n\n<p>So who’s winning?  When pondering this, I find myself thinking about dependencies.  What is each company doing for itself, and in what ways does each company rely on others?  I think this balance, much more than profits or market share, is what will determine long-term success.  Let’s see how the players stack up.</p>\n\n<h2>Google: Mini-Microsoft</h2>\n\n<p>Google’s Android strategy looks a lot like Microsoft’s Windows strategy of yore—minus the part where you collect all the money.  Google got the other parts right, though: create a viable platform, support it, evangelize it, and get as many other companies as possible to use it.  That last part is made a lot easier when the OS is free and open source, of course.</p>\n\n<p>In the PC’s heyday, Compaq, Dell, HP, Gateway, and others all killed each other selling PC hardware, grinding their profit margins down to almost nothing, leaving only a few players (<a href=\"http://allthingsd.com/20130205/dell-confirms-plan-to-go-private-in-24-4-billion-buyout-deal/\">barely</a>) standing in the end.  Microsoft, meanwhile, sat back and collected the same fat software margins from all of them (<a href=\"http://en.wikipedia.org/wiki/Microsoft_Office\">and</a> from nearly all of their customers, as well).</p>\n\n<p>With Android, Google seemed to posit that there was value inherent in being the platform “owner,” even if hardware makers didn’t pay for each copy of the OS.  Android was filled with connections to Google’s (also free) services.  More people using Android meant more people seeing Google ads, which meant more money for Google.</p>\n\n<p>In the early days of Android, this theory looked promising.  As in the PC era, hardware makers jockeyed for position in the nascent Android market.  Individual fortunes rose and fell, but the number of Android activations <a href=\"https://twitter.com/BenedictEvans/status/311884391464988672\">just kept growing</a>.  So far, so good.</p>\n\n<p>But unlike the early PC market, the Android market hasn’t produced a group of strong competitors duking it out at the top.  As previously noted, only one company, Samsung, is making any money at all selling Android smartphones—and it’s making more from them than Google itself.</p>\n\n<p>From the <a href=\"http://en.wikipedia.org/wiki/Nexus_One\">beginning</a>, Google has shrewdly hedged its bets by fielding <a href=\"http://www.google.com/nexus/\">its own line of Android hardware</a>.  More recently, Google <a href=\"http://www.google.com/press/motorola/\">purchased Motorola</a>, giving it its very own bona fide handset maker.  Thus far, none of these efforts have produced Samsung-like numbers.  But it’s clear that Google is unwilling to be entirely dependent on other companies to create the hardware that its mobile OS needs to be a complete product.</p>\n\n<h2>Samsung: Death From Below</h2>\n\n<p>Samsung seems like an Android success story.  Previously better known in the US for its TVs than its smartphones, Samsung combined its hardware manufacturing prowess (and its <a href=\"http://5by5.tv/hypercritical/83\">shameless</a> willingness to <a href=\"http://samsungcopiesapple.tumblr.com\">copy other companies’</a> <a href=\"http://www.telegraph.co.uk/technology/samsung/9932372/Seen-it-before-Samsungs-game-controller-looks-familiar.html\">design cues</a>) with Google’s mobile OS to produce profitable phones that customers love.</p>\n\n<p>Though the Galaxy line of devices would not be possible without Android, Samsung is far from Google’s ideal of a dutiful Android licensee, selflessly ferrying customers to Google’s services.</p>\n\n<p>Just as PC makers used to insist on adding their own graphical shell or other brand-specific “enhancements” to their Windows PCs, most companies selling Android-based hardware products feel compelled to put their own stamp on the vanilla Android experience.  Samsung is no different, steadily papering over the underlying Android OS with each new release of its <a href=\"http://en.wikipedia.org/wiki/TouchWiz\">TouchWiz</a> user interface.</p>\n\n<p>And why not?  If Android is a money-loser for every other smartphone maker, Samsung is obviously doing something right.  In its recent <a href=\"http://news.cnet.com/8301-31322_3-57574466-256/samsung-gs4-launch-tone-deaf-and-shockingly-sexist/\">ill-conceived</a> Galaxy S4 launch event, <a href=\"http://www.techhive.com/article/2030981/samsung-puts-galaxy-not-android-on-center-stage.html\">Android was barely mentioned at all</a>.  Samsung’s dependence on Android is clearly chafing.\n\n<h2>Apple: Once Bitten, Twice Shy</h2>\n\n<p>In truth, Apple has been bitten more than once by its dependence on other companies.  The viability of the Mac once depended on Microsoft’s willingness to produce a decent version of <a href=\"http://en.wikipedia.org/wiki/Microsoft_Office\">Office</a> for it. Later, the Mac faltered multiple times when IBM and Motorola were unwilling or unable to produce competitive desktop and laptop CPUs.  When Apple wanted to <a href=\"http://en.wikipedia.org/wiki/Rhapsody_(operating_system)\">revamp its OS</a>, Adobe and Microsoft were unwilling to port their software, forcing Apple <a href=\"http://en.wikipedia.org/wiki/Mac_OS_X\">back to the drawing board</a>.  Then there was <a href=\"http://www.youtube.com/watch?v=TWSRgsk2oaw&amp;t=3m10s\">that time</a> when Apple asked another company to make a <a href=\"http://en.wikipedia.org/wiki/Motorola_Rokr#E1\">phone</a>.</p>\n\n<p>Like a lover who’s been betrayed one too many times, Apple has hardened its corporate heart against any form of true partnership.  If it’s important, Apple wants to own and control it.  When Apple does work with others, it insists on having the upper hand.  iOS developers serve at the pleasure of Apple.  Manufacturing partners must fight for the privilege of building Apple’s products, often using equipment Apple purchases for them.  And, of course, Apple has its own mobile OS that runs exclusively on its own hardware.  <a href=\"http://www.youtube.com/watch?v=gn26pEDEhyY\">As God is its witness, Apple will never be hungry again!</a></p>\n\n<p>Steve Jobs personified this attitude, which is why he felt <a href=\"http://gigaom.com/2011/10/21/steve-jobs-vowed-to-destroy-android/\">so deeply betrayed</a> when Google, his partner on stage during <a href=\"http://www.youtube.com/watch?v=TBxua7EDRdo&amp;t=51\">the iPhone introduction</a>, remade Android in iOS’s image.  After that, Apple’s reliance on Google for essential parts of its mobile experience simply could not stand.</p>\n\n<p>The trouble is, online services have <a href=\"http://createlivelove.com/246\">not</a> <a href=\"http://en.wikipedia.org/wiki/MobileMe\">historically</a> been Apple’s strength.  That’s why it partnered with Google, Yahoo, and others in the first place.  It took Apple several years (<a href=\"http://www.wired.co.uk/news/archive/2009-10/02/analysis-apple-buys-placebase-hinting-at-split-with-google\">and</a> <a href=\"http://gigaom.com/2010/07/14/apple-acquires-poly9-mapping-company/\">several</a> <a href=\"http://arstechnica.com/apple/2011/10/apple-now-has-third-piece-of-mapping-puzzle-but-whats-the-full-picture/\">acquisitions</a>) to finally replace Google maps—and the <a href=\"http://arstechnica.com/apple/2012/11/apple-fires-manager-of-maps-team/\">results</a> were not ideal.</p>\n\n<p>There’s an old saying in business: don’t outsource your core competency.  Or, <a href=\"http://www.joelonsoftware.com/articles/fog0000000007.html\">as Joel Spolsky originally put it</a>, “If it’s a core business function, do it yourself, no matter what.”  This guideline makes it easy for a software developer to decide to outsource, say, catering and landscaping services.  But what about Apple, with its historically well-founded paranoia about relying on outside companies for anything related to its actual products?  What happens when everything starts to look like a “core business function?”</p>\n\n<h2>Sometimes You Can’t Make It on Your Own</h2>\n\n<p>Even among just these three companies, there are more than enough dependencies to go around.  Google depends on other companies to make and sell the vast majority of the products that run its mobile OS.  Samsung depends on Google to make and support the most important software component of its flagship mobile devices.  Even the fiercely independent Apple still depends on Samsung to manufacture many of its mobile processors (<a href=\"http://www.imore.com/apple-may-say-goodbye-samsung-quad-core-chips\">for now…</a>) and Google to provide web search services—and perhaps to give <a href=\"http://arstechnica.com/apple/2012/12/google-maps-for-iphone-shows-apple-how-to-do-mapping-right/\">a little help with maps</a> as well.</p>\n\n<p>Back to the original question: who has the upper hand?  Yes, there are  dependencies in all directions—but not all dependencies are created equal.</p>\n\n<p>Despite its recent success, Samsung remains in the weakest position.  It clearly doesn’t want to remain beholden to Google, and that’s the right instinct.  But I’m not confident in Samsung’s ability to completely divorce its mobile platform from Android.  I just don’t think it has the experience or expertise to be a real platform owner.</p>\n\n<p>Furthermore, while Android’s market share may be overwhelming, Samsung’s is not.  Even if Samsung had the skills to take the reins of its software stack, it’d have to maintain compatibility with present and future versions of Android, lest it become just another low-volume also-ran smartphone platform.</p>\n\n<p>Google’s present position looks weak, but it has two big trump cards.  First, Google has proven to be one of the few companies capable of creating, popularizing, and supporting a platform.  Despite all the skinning and branding by handset makers, Google is still the driving force behind Android.  This power can only be negated by another company that’s willing and able to match Google’s Android efforts on all fronts: OS development, app store, developer tools, evangelism, the works.  That’s a tall order.</p>\n\n<p>Second, Google is still the king of online services.  Apple, the biggest technology company in the world, just tried to replace maps, one of Google’s second-tier services, and barely avoided disaster.  Microsoft, the former undisputed ruler of the tech sector, has been <a href=\"http://www.bing.com\">trying</a> for years to challenge Google for the web-search crown, with little success.  Maps and search are not obscure or obsolete services.  If you can’t create equal or better alternatives—and so far, no one has—then you’re stuck relying on Google.</p>\n\n<p>Google still needs hardware partners to maintain its Android empire, but we already have a model for how a software-focused platform owner can dominate a market.  It’s harder to imagine a hardware maker dominating while relying on a software platform controlled by someone else.</p>\n\n<p>Finally, there’s Apple, the jilted lover, feverishly working to eliminate any dependency that puts it at the mercy of a potential competitor.  Apple remembers when Samsung was a great source of mobile CPUs and Google provided network services for iOS.  Now look at those two traitors.  No partnership is safe!</p>\n\n<p>And so, in addition to developing its own OS, designing its own hardware, producing many of its most popular applications (built in its own IDE using its own compiler and language), Apple now has its own mapping service, is designing its own mobile CPUs, and is trying to get someone other than Samsung to manufacture them—all the while presumably eyeing its other parts suppliers and software partners warily.</p>\n\n<p>Despite the bumps, Apple’s position remains strong.  It’s got the best app ecosystem, competitive, trend-setting hardware, great adoption of each new version of its OS, and double the margins of the only other company making money selling smartphones.  Oh yeah, and it dominates the tablet market too.  There’s a lot for <a href=\"http://hypercritical.co/2013/02/02/apples-2013-to-do-list\">Apple to do in 2013</a>, but at least it’s poised to succeed or fail on its own merits.</p>\n\n<p>Looking out further than a year, the picture gets fuzzier.  An unfortunate side effect of doing everything yourself is that every other company starts to look like an enemy.  Realistically, Apple can’t do everything—or can’t do everything well, anyway.  Online services are only going to become more important with time, so it’s understandable that Apple wants to be the master of its own destiny in this area.  But it needs to improve much more quickly if it wants to even remain competitive, let alone catch up to Google.  Failing that, it needs to find some partners that aren’t mortal enemies.  (I’m sure <a href=\"http://en.wikipedia.org/wiki/Marissa_Mayer\">Marissa Mayer</a> would take Tim Cook’s call.)</p>\n\n<p>In general, Apple needs to engage in more balanced partnerships that produce sustainable benefits on both sides.  The switch to Intel CPUs is a good example, especially given how the situation has changed since the deal was first struck.  In business, no strategic partnership is forever, but that’s no reason to avoid them entirely.  And who knows?  Perhaps Apple’s good relations with Intel will lead to its next great mobile <a href=\"http://en.wikipedia.org/wiki/System_on_a_chip\">SoC</a> being manufactured at <a href=\"http://en.wikipedia.org/wiki/22_nanometer\">22</a> or even <a href=\"http://en.wikipedia.org/wiki/14_nanometer\">14nm</a>.</p>\n\n<p>Let’s just hope <a href=\"http://software.intel.com/en-us/appup/tizen\">Tizen</a> doesn’t come up during the meeting.</p>",
+         "date_published" : "2013-03-19T19:58:14-04:00",
+         "author" : {
+            "name" : "John Siracusa",
+            "url" : "http://hypercritical.co"
+         }
+      },
+      {
+         "url" : "http://hypercritical.co/2013/03/08/the-case-for-a-true-mac-pro-successor",
+         "id" : "http://hypercritical.co/2013/03/08/the-case-for-a-true-mac-pro-successor",
+         "title" : "The Case for a True Mac Pro Successor",
+         "date_modified" : "2013-03-08T20:42:12-05:00",
+         "content_html" : "<div class=\"image header\"><img src=\"/2013/03/08/images/lfa.jpg\" width=\"640\" height=\"306\" alt=\"Lexus LFA\"/></div>\n\n<p>The <a href=\"http://arstechnica.com/staff/2005/10/1676/\">xMac</a> has been back in the news lately—the idea, if not necessarily the name.  Whether it’s called a “<a href=\"http://www.macworld.com/article/2029740/the-time-is-finally-right-for-a-mac-minitower.html\">Mac minitower</a>\" or a “<a href=\"http://www.marco.org/2013/03/06/mac-pro-mini\">Mac Pro mini</a>,” we <a href=\"http://arstechnica.com/gadgets/2012/08/as-mac-pro-stagnates-pc-workstations-muscle-ahead/\">long-suffering</a> Mac Pro fans are all looking forward to the “really great” thing Tim Cook <a href=\"http://www.macworld.com/article/1167247/cook_apple_planning_professional_mac_for_2013.html\">told us</a> to expect this year.</p>\n\n<p>What almost no one expects is another straightforward revision of the existing Mac Pro, a gargantuan tower-style computer built with server-grade CPUs and RAM that pushes the limits of computing performance.  Very few people want that kind of computer these days, and even fewer people actually need one.</p>\n\n<p>On paper, the Mac Pro may no longer be a viable product, but it would be a mistake for Apple to abandon the <i>concept</i> that it embodies.  Like the Power Mac before it, the Mac Pro was designed to be the most powerful personal computer Apple knows how to make.  That goal should be maintained, even as the individual products that aim to achieve it evolve.</p>\n\n<p>Why is this important? If Apple produces a new Mac that’s faster than any of its current models by leaps and bounds, will people suddenly buy it in huge numbers, choosing it over the laptops, tablets, and phones they prefer today? No. Is it because a very fast Mac can be sold for such a high price that its huge margins will make its profits significant, despite the expected low number of sales? No, that won’t happen either.  Is a new, insanely fast Mac even guaranteed to make any money at all for Apple?  Sadly, no.</p>\n\n<p>So why bother creating a true Mac Pro successor at all? Good riddance, right?</p>\n\n<h2>Bean Counters and Car Guys</h2>\n\n<p>In the automobile industry, there’s what’s known as a “<a href=\"http://en.wikipedia.org/wiki/Halo_car#Automobiles\">halo car</a>.”  Though you may not know the term, you surely know a few examples. The <a href=\"http://en.wikipedia.org/wiki/Chevrolet_Corvette\">Corvette</a> is <a href=\"http://en.wikipedia.org/wiki/General_Motors\">GM</a>’s halo car.  <a href=\"http://en.wikipedia.org/wiki/Srt\">Chrysler</a> has the <a href=\"http://en.wikipedia.org/wiki/SRT_Viper\">Viper</a>.</p>\n\n<p>The vast, vast majority of people who buy a Chrysler car get something other than a Viper.  The same goes for GM buyers and the Corvette.  These cars are expensive to develop and maintain.  Due to the low sales volumes, most halo cars do not make money for car makers.  When Chrysler was recovering from bankruptcy in 2010, it considered selling the Viper product line.</p>\n\n<p>Why wouldn’t a company want to get a low-volume, money-losing product line off its books, bankruptcy or no bankruptcy?  If you can’t think of a reason, you may be what is known in the auto industry as a “<a href=\"http://www.amazon.com/gp/product/B004IYJEA6/ref=as_li_ss_tl?ie=UTF8&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B004IYJEA6&amp;linkCode=as2&amp;tag=siracusa-20\">bean counter</a>.”  Luckily for Viper fans, Chrysler had a few car guys left.  Here’s a passage from <a href=\"http://www.caranddriver.com/features/2013-srt-viper-gts-in-depth-with-the-men-who-made-it-happen-feature\">Car and Driver’s preview of the 2013 SRT Viper</a>—the Viper that almost didn’t exist.</p>\n\n<blockquote><p>“I knew the very last thing Chrysler needed during our bankruptcy was a 600-hp sports car,” says Ralph Gilles, the 42-year-old president and CEO of <a href=\"http://en.wikipedia.org/wiki/Srt\">SRT</a> and senior V-P of Chrysler Product Design. “But I’m an optimist. I wanted to fight for a chance. We discussed it for a year. I got Sergio [Marchionne, Chrysler CEO] to drive one of the last Vipers. He jumped in and disappeared to God knows where. He came back 15 minutes later and said, ‘Ralph, that’s a lot of work.’ He meant it was a brutal car. But he didn’t say, ‘Good riddance,’ or anything. Then in late ’09, I showed him a video of a Viper breaking the Nürburgring record. He watched all of it and was impressed. I gave him a list of the supercars the Viper had put away.</p></blockquote>\n\n<p>The car guys won; Chrysler chose to keep the Viper.</p>\n\n<p>Apple is not <a href=\"http://daringfireball.net/linked/2013/03/04/ben-bejarin\">yet</a> in bankruptcy, but every other reason that Chrysler should have run screaming from the Viper applies equally to the Mac Pro (except perhaps the lack of profitability; Apple doesn’t share that information about individual Mac lines).  To understand Chrysler’s decision, let’s consider why halo cars exist at all.</p>\n\n<p>One reason is prestige.  Though few people can afford to buy a Viper, its mere existence makes the affordable cars from the same manufacturer that have even <a href=\"http://www.dodge.com/en/2013/avenger/\">the mildest bit of sporting pretension</a> slightly more attractive to buyers.  Yes, this makes little logical sense, but it’s a very real phenomenon.  (There’s a reason the term “halo effect” <a href=\"http://www.waywordradio.org/halo_car/\">reportedly</a> dates back to at least 1938.)</p>\n\n<p>Halo cars also push car makers to their limits.  Engineering teams must use all their powers and all their skills to create the very best car possible.  This exercise inevitably leads to the exploration of new technologies.  The failed experiments are forgotten, but the winners eventually find their way into more prosaic cars from the same manufacturer.</p>\n\n<h2>To Boldly Go</h2>\n\n<p>The Mac Pro is Apple’s halo car.  It’s a chance for Apple to make the fastest, most powerful computer it can, besting its own past efforts and the efforts of its competitors, year after year.  This is Apple’s space program, its moonshot.  It’s a venue for new technologies to be explored.</p>\n\n<p>Consider <a href=\"http://en.wikipedia.org/wiki/Larrabee_(microarchitecture)\">Larrabee</a>, Intel’s project to create a massively multi-core x86-based GPU.  Rumor has it that Apple was working on integrating the technology into a Mac Pro.  Intel eventually scuttled the project, but consider what would have happened if it had taken off, reshaping the GPU market in the process.  Apple would have had a head start on integrating the technology into its OS and application frameworks.  Its drivers would have had their kinks worked out.  When it became feasible to incorporate Larrabee technology into the rest of its product line, Apple would have been ready.</p>\n\n<p>I intentionally chose a (rumored) failure as an example because that’s part of the point.  Better to <a href=\"http://en.wikipedia.org/wiki/Power_Mac_G5#Water_Cooling_Problems\">experiment</a> on your niche product than your high-volume money-maker.  There are plenty of success stories as well.</p>\n\n<p><a name=\"high-end-debut\"></a>Think of all the technologies that debuted on Apple’s high-end Macs: <a href=\"http://en.wikipedia.org/wiki/Macintosh_SE\">hard drives</a>, <a href=\"http://en.wikipedia.org/wiki/Macintosh_II_series\">color</a>, <a href=\"http://en.wikipedia.org/wiki/Blue_and_white_g3\">FireWire</a>, <a href=\"http://en.wikipedia.org/wiki/Power_Macintosh_9500\">multiple CPUs</a>, <a href=\"http://en.wikipedia.org/wiki/Power_Mac_G5\">multi-core CPUs</a>, <a href=\"http://en.wikipedia.org/wiki/Power_Mac_G5\">64-bit CPUs</a>, <a href=\"http://en.wikipedia.org/wiki/GeForce3\">programmable GPUs</a>, <a href=\"http://en.wikipedia.org/wiki/Final_Cut_Pro#Features\">real-time video processing</a>.  All these features had a chance to get shaken out on machines that most people don’t buy.  When they trickled down to “normal” Macs, Apple had enough experience under its belt to implement them competently.</p>\n\n<p>As for prestige, perhaps you think the existence of the Mac Pro has precisely zero influence on the average MacBook buyer.  The existence of the Corvette probably doesn’t affect the behavior of Chevy Malibu buyers either.  But things change as you creep up the respective product lines, edging closer to the high end.  The <a href=\"http://en.wikipedia.org/wiki/PowerBook_G4#Titanium_PowerBook_G4\">Titanium PowerBook G4</a> was all the more impressive for incorporating the CPU previously only available on Apple’s “<a href=\"http://www.youtube.com/watch?v=gSFeunkpng8\">supercomputer</a>” <a href=\"http://en.wikipedia.org/wiki/Power_Mac_G4\">Power Mac G4</a>.</p>\n\n<p>I used the present tense earlier when I said that the Mac Pro is Apple’s halo car, but that hasn’t actually been true for a while.  By <a href=\"http://arstechnica.com/gadgets/2012/08/as-mac-pro-stagnates-pc-workstations-muscle-ahead/\">allowing the Mac Pro line to languish</a> for so long, Apple has negated any possible prestige effect and abandoned an arena where it could safely push the limits of PC performance.</p>\n\n<p>I know what you're thinking.  That was then, this is now.  The age of the high-end PC is over!  But halo cars are even more absurd than high-end PCs.  There are some pretty hard limits on car performance.  Anything that carries a human around can only pull so many <a href=\"http://en.wikipedia.org/wiki/G-force\">G</a>s before its fragile cargo gives up the ghost.</p>\n\n<p>Compare this to computing power, which has no apparent useful limit.  While <a href=\"http://www.zeroto60times.com/Ferrari-0-60-mph-Times.html\">car performance</a> has increased by perhaps a factor of 5 in the past 50 years (and that's being generous), humanity has absorbed a <i>million-fold</i> increase in computing power during that same period without sating its appetite for more.  (And that factor gets quite a bit larger if I add <a href=\"http://en.wikipedia.org/wiki/GeForce_600_Series#Geforce_GTX_Titan\">GPUs</a> to the mix.)  Computers are not “fast enough.”  They weren’t when they were invented, nor when they got 10x faster, nor when they got 100,000x faster still.  They never will be.</p>\n\n<p>To be clear, absolute performance is not the only worthy technological frontier.  Apple continues to push the limits on many other fronts: <a href=\"http://www.apple.com/ipad-mini/overview/\">miniaturization</a>, <a href=\"http://en.wikipedia.org/wiki/Apple_A6\">power efficiency</a>, <a href=\"http://www.youtube.com/watch?v=xNsGNlDb6xY&amp;t=4m47s\">manufacturing processes</a>, <a href=\"http://www.engadget.com/2012/06/19/apple-and-liquidmetal-hug-it-out-lengthen-their-pact-until-2014/\">materials</a>, and, of course, <a href=\"http://www.apple.com/pr/library/2012/10/29Apple-Announces-Changes-to-Increase-Collaboration-Across-Hardware-Software-Services.html\">user experience</a>.  The same is true for car manufacturing, where <a href=\"http://www.chevrolet.com/volt-electric-car.html\">fuel efficiency</a>, <a href=\"http://en.wikipedia.org/wiki/Lane_departure_warning_system\">safety</a>, <a href=\"http://www.consumerreports.org/cro/money/shopping/ways-to-save-on/save-on-wheels-new-or-used/reliability-snapshot/save-on-wheels-new-or-used-reliability-snapshot.htm\">reliability</a>, and even <a href=\"http://www.youtube.com/watch?v=M4G_WLLzKHw\">comfort</a> are arguably more important axes of innovation than absolute performance (the limits of which can’t be legally explored on public roads anyway). And yet there they all are, those absurd halo cars, laughing in the face of logic.</p>\n\n<h2>Look Into Your Heart</h2>\n\n<p>This brings us to the final, and perhaps most important reason that halo cars exist, and that the Mac Pro—or its spiritual equivalent—should continue to exist.  Let’s talk about the <a href=\"http://en.wikipedia.org/wiki/Lexus_LFA\">Lexus LFA</a>, a halo car developed by Toyota over the course of <i><a href=\"http://en.wikipedia.org/wiki/Lexus_LFA#Development\">ten years</a></i>.  (Lexus is Toyota’s luxury nameplate.)  When the LFA was finally released in 2010, it sold for around $400,000.  A year later, <a href=\"http://www.motorauthority.com/news/1060460_2012-lexus-lfa-a-lost-decade-a-sales-dud/page-2\">only 90</a> LFAs had been sold.  At the end of 2012, production stopped, as planned, after <a href=\"http://lexusenthusiast.com/2012/12/19/more-photos-of-the-final-lexus-lfa-500/\">500 cars</a>.</p>\n\n<p>Those numbers should make any bean counter weak in the knees.  The LFA is a failure in nearly every objective measure—including, I might add, absolute performance, where it’s only about mid-pack among modern supercars.</p>\n\n<p>The explanation for the apparent insanity of this product is actually very simple.  <a href=\"http://en.wikipedia.org/wiki/Akio_Toyoda\">Akio Toyoda</a>, the CEO of Toyota, <i>loves fast cars.</i>  He fucking loves them!  That’s it.  That’s the big reason.  It’s why the <a href=\"http://online.wsj.com/article/SB10001424127887323375204578269181060493750.html\">biggest car maker in the world</a> spent <a href=\"http://www.thetruthaboutcars.com/2012/07/the-making-of-the-lexus-lfa-supercar-an-inside-report-chapter-5-exam-week/\">ten long years and well over a billion dollars</a> developing a car that almost no one will ever own—or even know about, for that matter.  It explains why Toyota scrapped the LFA’s frame design and essentially started over with carbon fiber midway through the development process.  (Talk about a Steve Jobs move.)</p>\n\n<p>And perhaps it also explains why the famously cantankerous <a href=\"http://en.wikipedia.org/wiki/Jeremy_Clarkson\">Jeremy Clarkson</a> of Top Gear, a man who has driven nearly every supercar produced in the last several decades, <a href=\"http://www.topgear.com/uk/tv-show/series-19/episode-2\">recently</a> called the LFA “the best car I’ve ever driven.”</p>\n\n<p>I’m not here to convince you that the LFA is a good car, that you should trust Jeremy Clarkson’s opinions on cars (or anything, really), or that you should buy a Mac Pro.  All the common reasons you’ve heard for Apple to abandon the market for high-end PCs are logically and financially sound.  They also don’t matter.</p>\n\n<p>Apple should keep pushing the limits of PC performance because it’s a company that loves personal computers.  If Apple can’t get on board with that, then all the other completely valid, practical reasons to keep <a href=\"http://www.youtube.com/watch?v=cE2t6Sg_H74\">chasing those demons</a> at the high end are irrelevant.  The spiritual battle will have already been lost.</p>",
+         "date_published" : "2013-03-08T16:09:06-05:00",
+         "author" : {
+            "url" : "http://hypercritical.co",
+            "name" : "John Siracusa"
+         }
+      },
+      {
+         "id" : "http://hypercritical.co/2013/03/04/fear-of-a-webkit-planet",
+         "url" : "http://hypercritical.co/2013/03/04/fear-of-a-webkit-planet",
+         "title" : "Fear of a WebKit Planet",
+         "content_html" : "<p>I must confess, I was neither surprised nor disturbed by <a href=\"http://www.opera.com/press/releases/2013/02/13/\">last month’s announcement</a> that the Opera web browser was switching to the <a href=\"http://www.webkit.org\">WebKit</a> rendering engine.  But perhaps I’m in the minority among geeks on this topic.</p>\n\n<p>The anxiety about the possibility of a “WebKit monoculture” is based on past events that many of us remember all too well.  Someday, starry-eyed young web developers may ask us, “You fought in the <a href=\"http://www.webstandards.org\">Web Standards Wars</a>?”  (Yes, I was once a <a href=\"http://www.zeldman.com/about/\">Zeldi</a> Knight, the same as your father.)  In the end, <a href=\"http://www.webstandards.org/2013/03/01/our-work-here-is-done/\">we won</a>.</p>\n\n<p>As someone whose memory of perceived past technological betrayals and injustices is so keen that I still find myself unwilling to have a Microsoft game console in the house, my lack of anxiety about this move may seem incongruous, even hypocritical.  I am open to the possibility that I’ll be proven wrong in time, but here’s how I see it today.</p>\n\n<p>As much as I despised Internet Explorer for Windows, and what its simultaneous stagnation and dominance did to the web, I don’t think it’s the correct historical analog in this case.  WebKit is not a web browser.  It’s not even a product.  It’s much more analogous to Linux, an open-source project that any company or individual is free to build on and enhance.</p>\n\n<p>Linux, once a personal project created <a href=\"http://www.amazon.com/gp/product/0066620732/ref=as_li_ss_tl?ie=UTF8&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0066620732&amp;linkCode=as2&amp;tag=siracusa-20\">just for fun</a>, now dominates the <a href=\"http://en.wikipedia.org/wiki/Data_center\">data center</a>.  It’s also in <a href=\"http://www.samsung.com/global/galaxys3/\">phones</a>, <a href=\"http://www.amazon.com/gp/product/B008GGCAVM/ref=as_li_ss_tl?ie=UTF8&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B008GGCAVM&amp;linkCode=as2&amp;tag=siracusa-20\">tablets</a>, <a href=\"http://www.theverge.com/2013/2/6/3958162/valve-steam-box-cake\">game consoles</a>, <a href=\"http://www.amazon.com/gp/product/B005CLPP84/ref=as_li_ss_tl?ie=UTF8&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B005CLPP84&amp;linkCode=as2&amp;tag=siracusa-20\">set-top boxes</a>, and even (<a href=\"http://en.wikipedia.org/wiki/Desktop_Linux#Year_of_Desktop_Linux\">sometimes</a>) PCs.</p>\n\n<p>Is there a “Linux monoculture?”  In some ways, yes.  These days, it’s surprising if a startup creates a hardware product sophisticated enough to need an operating system and that operating system <i>isn’t</i> Linux.  And let’s not forget that Linux has all but wiped out the proprietary Unix-based operating systems that once ruled the high-end.</p>\n\n<p>Linux is the canonical open source success story.  It succeeded for reasons that are now so boring they’re accepted as common sense.  There’s still plenty of room for variation and innovation, but now all the significant achievements are shared with the world.  If a company improves Linux, it’s not just improving its own products; it’s making Linux better for everyone.  Linux let us “put all the wood behind one arrowhead” (to borrow one of <a href=\"http://en.wikipedia.org/wiki/Scott_McNealy\">Scott McNealy’s</a> favorite sayings), but on a global—instead of merely a corporate—scale.  (Funny how things turn out, eh, Scott?)  Linux solved the Unix problem—for everyone.</p>\n\n<p><a name=\"webkit-variety\"></a>WebKit fills a similar role.  Thanks to WebKit, anyone who needs a world-class web rendering engine can get one—for free.  And the products built with WebKit are as varied as those built with Linux.  Even products in the same category vary wildly.  Chrome and Safari, for example, have different features, different extension mechanisms, different JavaScript engines, different process models, and very different user interfaces.  Opera adds yet more variation.  And these are all just standalone web browsers.  Consider all the embedded applications of WebKit, from game consoles to theme-park kiosks, and the idea of a homogenous, stagnating WebKit monoculture seems even more unlikely.</p>\n\n<p>I haven’t forgotten the past.  A single, crappy web browser coming to dominate the market would be just as terrible today as it was in the dark days of <a href=\"http://en.wikipedia.org/wiki/Ie6\">IE6</a>.  But WebKit is not a browser.  Like Linux, it’s an enabling technology.  Like Linux, it’s free, open-source, and therefore beyond the control of any single entity.</p>\n\n<p>Web rendering engines are extremely complex.  There are very few companies that have the expertise to create and maintain one on their own.  (Again, the similarity to Linux is strong here.)  I’m glad all those developers at Apple and Google are working on improving the same open-source web rendering engine, rather than dividing their efforts between two totally different, proprietary engines.  Adding Opera’s developers can only make things better.  The proliferation of WebKit will be a rising tide that lifts all boats.</p>",
+         "date_modified" : "2013-03-04T13:15:39-05:00",
+         "date_published" : "2013-03-04T13:15:39-05:00",
+         "author" : {
+            "name" : "John Siracusa",
+            "url" : "http://hypercritical.co"
+         }
+      },
+      {
+         "id" : "http://hypercritical.co/2013/02/24/annoyance-driven-development",
+         "url" : "http://hypercritical.co/2013/02/24/annoyance-driven-development",
+         "title" : "Annoyance-Driven Development",
+         "date_modified" : "2013-03-04T08:24:32-05:00",
+         "content_html" : "<div class=\"image header\"><img src=\"/2013/02/24/images/annoyance.jpg\" width=\"640\" height=\"341\" alt=\"High Maintenance\"/></div>\n\n<p>I’ve been watching <a href=\"http://en.wikipedia.org/wiki/House_of_Cards_(U.S._TV_series)\">House of Cards</a>, the new TV series available exclusively on Netflix, which reportedly outbid HBO, Showtime, and others for the rights to the show.  This is part of Netflix’s ongoing effort to “<a href=\"http://www.theatlantic.com/business/archive/2013/02/netflix-house-of-cards-and-the-golden-age-of-television/272869/\">become HBO faster than HBO can become us</a>.” That quote, from Netflix’s chief content officer Ted Sarandos, neatly draws the battle lines between the old and new worlds of TV.</p>\n\n<p><a href=\"http://en.wikipedia.org/wiki/Hbo#National_expansion.2C_innovation_and_rise_to_prominence_.281975.E2.80.931996.29\">Once the upstart</a>, HBO now finds itself playing catch-up with Netflix in terms of pricing and distribution.  Netflix, meanwhile, is  shelling out its own money to try to overcome its historic inability to offer the <a href=\"http://en.wikipedia.org/wiki/The_Wire\">very</a> <a href=\"http://en.wikipedia.org/wiki/The_Sopranos\">best</a> <a href=\"http://en.wikipedia.org/wiki/Game_of_Thrones_(TV_series)\">content</a>.</p>\n\n<p>I’m not ready to predict a winner in this race—though the two-year wait for HBO to <a href=\"http://gigaom.com/2013/02/12/hbo-go-airplay/\">add AirPlay support to its HBO Go iOS app</a> does not inspire confidence in the old guard.  I’m more interested in what Netflix offers that HBO doesn’t.</p>\n\n<p>The answer is obvious to anyone who has used the service.  For a fixed, low monthly fee, Netflix lets customers watch TV shows and movies whenever they want, wherever they want, on <a href=\"http://www.apple.com/iphone/\">phones</a>, <a href=\"http://www.apple.com/ipad/\">tablets</a>, “<a href=\"http://hypercritical.co/2013/01/07/ces-worse-products-through-software\">smart</a>” <a href=\"http://www.samsung.com/us/2012-smart-tv/index.html?cid=ppc-#apps\">TVs</a>, <a href=\"http://us.playstation.com/ps3/\">game</a> <a href=\"http://www.nintendo.com/consumer/systems/wii/en_na/netflix.jsp\">consoles</a>, <a href=\"http://www.roku.com\">streaming</a> <a href=\"http://www.apple.com/appletv/\">media boxes</a>, <a href=\"http://store.sony.com/c/Blu-ray-Disc-and-DVD-Players/en/c/S_Blu-Ray_Disc?SR=nav:electronics:tv_home_video:bluray_and_dvd_players:shop_compare:ss\">blu-ray players</a>, even <a href=\"http://www.apple.com/mac/\">personal computers</a>—remember those?</p>\n\n<p>Netflix’s decision to release the entire first season of House of Cards all at once is in keeping with its disregard for the traditional limitations of TV.  This is how products and services endear themselves to consumers: remove everything that gets in the way of what we want.  We want to be entertained.  We don’t want to arrange our schedules around your TV show.  We don’t want to watch commercials.  We don’t want to be forced to use a particular device.  We just want it the way we want it.</p>\n\n<p>But even Netflix has been unable to escape some of the trappings of the <a href=\"http://en.wikipedia.org/wiki/Days_of_Future_Past\">days of video past</a>.  A TV series like House of Cards that’s released a season at a time naturally lends itself to multi-episode viewing sessions.  But as I <a href=\"https://twitter.com/siracusa/status/303349850353852417\">recently tweeted</a>, watching a minute and a half of opening credits before each episode can get tiresome.</p>\n\n<p>This position proved somewhat controversial on Twitter.  <a href=\"https://twitter.com/adamschoales/status/303353064100884481\">Hard-working people deserve credit</a>, some said.  Others said that the credits <a href=\"https://twitter.com/xandriks/status/303405858707103744\">set the mood</a> for the show.  Some people just plain <a href=\"https://twitter.com/hoonpark/status/303355647674699776\">liked the credits</a>, with no qualifiers.</p>\n\n<p>But there were also people who agreed with me, people who routinely skip the opening credits (often lamenting the limited content-skipping tools provided by their chosen Netflix viewing device).  <a href=\"https://twitter.com/LandonAB/status/303356960357621760\">One person</a> even read my tweet while killing time as the House of Cards credits ran in another browser tab.</p>\n\n<p>To be fair to Netflix, the existence of opening credits may not be entirely under its control, even when it’s paying for a series itself, given existing <a href=\"https://twitter.com/Jon_Alper/status/303356548443418624\">union contracts</a> for actors, directors, writers, etc.  But getting bogged down in the details of this debate misses the point.</p>\n\n<p>Yes, opening credits are a longstanding part of traditional TV—but so were fixed broadcast schedules, commercial breaks, and viewing all TV shows on a television set.  As the delivery mechanism changes, the content itself must also adapt to its changing context.</p>\n\n<p>Not everyone binges on House of Cards four episodes at a time, but the people who do really love Netflix for making it possible.  Every time I fast-forward through those 90-second opening credits (made more difficult by the occasional variable-length pre-credits scene), I get the opposite feeling about Netflix.  It’s an unhappy reminder of the old world of TV.  No explanation of contractual obligations or artistic credit is going to convince me that I’m mistaken about my own desires.  I just want it the way I want it!</p>\n\n<p>This may sound <a href=\"/2013/02/24/movies/high-maintenance.m4v\">comically</a> selfish, but true innovation comes from embracing this sentiment, not fighting it.  For companies looking to get the best bang for their buck out of technology, this is the way forward.  Find out what’s annoying the people you want to sell to.  Question the assumptions of your business.  Give people what they want and they will beat a path to your door.</p>\n\n<p>This brings us, perhaps surprisingly, to the PlayStation 4, the <a href=\"http://arstechnica.com/gaming/2013/02/sony-reveals-the-first-official-details-of-the-playstation-4/\">newly announced</a> successor to the six-year-old <a href=\"http://en.wikipedia.org/wiki/PlayStation_3\">PlayStation 3</a>.  Six years is an eternity in the world of technology.  For the first few decades of console gaming, each new hardware platform surpassed the capabilities of its predecessor by leaps and bounds.  There was little question about what to do with technology.  More, better, faster was an end in and of itself.  If you build it, the games will come.</p>\n\n<p>The <a href=\"http://en.wikipedia.org/wiki/Wii\">Wii</a> was the first console to break that cycle, directing a large chunk of its innovation toward a novel control scheme, sacrificing raw computing power to do so.  <a href=\"/2013/02/24/images/who-dares-wins.jpg\">It worked</a>.  The Wii became the <a href=\"http://en.wikipedia.org/wiki/History_of_video_game_consoles_(seventh_generation)#Sales_standings\">best-selling console of its generation</a>, and its competitors soon followed with <a href=\"http://www.xbox.com/en-US/kinect\">non-traditional</a> <a href=\"http://us.playstation.com/ps3/playstation-move/\">control schemes</a> of their own.</p>\n\n<p>Based on what’s been announced about the PlayStation 4 so far, it seems that Sony has learned at least some of the lessons of the Wii.  While the PS4 will indeed be substantially more powerful than the PS3 (and embarrassingly more powerful than its competitor from Nintendo, the <a href=\"http://en.wikipedia.org/wiki/Wii_U\">Wii U</a>), Sony has not chosen to sink millions into developing a radical new CPU architecture like the PS3’s <a href=\"http://en.wikipedia.org/wiki/Cell_(microprocessor)\">Cell processor</a> in the hopes that <a href=\"http://en.wikipedia.org/wiki/Million_instructions_per_second#Million_instructions_per_second\">raw MIPs</a> will inexorably lead to market dominance.</p>\n\n<p>Instead, Sony has built the PS4 using a <a href=\"http://arstechnica.com/gaming/2013/02/inside-the-playstation-4-a-balanced-approach-to-building-a-game-console/\">nicely balanced arrangement of existing technology</a>.  All the time, money, and energy that would have otherwise gone toward a true Cell successor has been refocused on ensuring that the PS4 does things that makes Sony’s customers happy.</p>\n\n<p>Game developers are one kind of customer.  There may not be many of them relative to the number of people Sony hopes will buy its products at retail, but developers can make or break a game console by choosing which games to develop for which platform, and when.  And developers sure weren’t happy with the PS3, which was unlike any piece of gaming hardware that had come before it.  Thanks to its familiar combination of an <a href=\"http://en.wikipedia.org/wiki/X86\">x86 CPU</a> and an <a href=\"http://en.wikipedia.org/wiki/Southern_Islands_(GPU_family)\">ATI GPU</a>, the PS4 will be much easier to write games for.</p>\n\n<p>Sony feels gamers’ pain as well.  The PS4 appears to have been designed by identifying the parts of the PS3 experience that are annoying and deploying technology to eliminate them.  Deciding to play a game and being delayed by 30 minutes of mandatory system updates is not fun, so Sony added a dedicated processor to handle background downloads, and a low-power state for the entire system to allow this to happen unattended.  Resuming an interrupted gaming session only to find yourself back at the last checkpoint in the game is not fun, so Sony promises the ability to suspend a game’s state in its entirety and resume later at the instant you left off.  Waiting an hour for a multi-gigabyte game to download before you can start playing it is not fun, so the PS4 will allow games to be played as they download.</p>\n\n<p>Sony is providing new features as well.  A dedicated video encoder allows gameplay to be recorded in real time with no loss of performance, and a “share” button on the controller allows that video to be uploaded (in the background, naturally), without leaving the game.  That same video encoding hardware plus Sony’s game-focused social network will allow players to invite their friends to watch them play in real time.  Sony even promises the ability to play games remotely.  If a player is having trouble with some part of a game, he could invite one of his friends to remotely assume control for a bit to help out.</p>\n\n<p>Now, anyone who remembers Sony’s promises about the PlayStation 3 knows all too well how far they can be from the eventual reality.  I’m very skeptical about Sony’s ability to deliver all the announced PlayStation 4 capabilities in a competent and timely manner.  And then there are all the areas where the interests of gamers and game developers may conflict (e.g., <a href=\"http://penny-arcade.com/report/editorial-article/think-the-ps4-wil-be-best-friends-with-used-games-not-so-fast\">the market for used games</a>).</p>\n\n<p>But when I look at the PlayStation 4 hardware itself, I see a shrewd acknowledgement of the true nature of innovation.  It doesn’t cost much to add dedicated silicon to handle background network transfers and video encoding and decoding, and it sure isn’t sexy, technologically speaking.  Low-power sleep states, instant suspend/resume, progressive downloads, and remote play are all features that are a giant pain to implement and do precisely nothing to make games look, sound, or perform better.  But it’s these things, not the number of CPU/GPU cores or the amount of RAM, that really have a chance of making the PS4 gaming experience stand head and shoulders above what has come before.</p>\n\n<p>We nerds love technology for its own sake.  Indeed, there’s <a href=\"http://hypercritical.co/2013/02/08/dont-stop-thinking-about-tomorrow\">always something to be gained</a> by advancing the state of the art and providing more of a good thing.  But the most profound leaps are often the result of applying technology to historically underserved areas.  By all means, make everything better and faster, but also find the things that seem like minor annoyances, the things that everyone just accepts as necessary evils.  Go after <i>those</i> things and you’ll really make people love you.  Accentuate the positive.  <i>Eliminate</i> the negative.</p>",
+         "date_published" : "2013-02-24T20:46:59-05:00",
+         "author" : {
+            "url" : "http://hypercritical.co",
+            "name" : "John Siracusa"
+         }
+      },
+      {
+         "date_modified" : "2013-02-08T15:21:56-05:00",
+         "content_html" : "<p>The iPhone 5 <a href=\"http://www.extremetech.com/computing/136422-iphone-5-review-round-up-everything-apple-promised\">caught</a> <a href=\"http://www.cnn.com/2012/09/26/tech/mobile/iphone-5-complaints\">some</a> <a href=\"http://gizmodo.com/5945662/the-weirdest-thing-people-hate-about-the-iphone-5\">flak</a> for being “too light.”  Similarly, some consider the latest revision of the iMac to be “<a href=\"http://arstechnica.com/apple/2012/12/review-21-5-inch-2012-imac-takes-two-steps-forward-one-step-back/\">too thin</a>.”  You’ll find some incredulity in the articles that address this topic.  It’s a little silly, right?  After all, what’s the alternative? Thicker and heavier?  Stagnation?  But these complaints are not entirely unreasonable.</p>\n\n<p>When it comes to electronics, density is often a signal of quality.  A product that feels like an empty metal box seems cheap.  A tiny item with surprising heft seems expensive.  For handheld items, higher density can also help produce stronger, more concentrated pressure on the hand.  This helps to more clearly delineate the sensations of a securely held item and an item that’s about to slip out of the hand.  I’ve heard this complaint about the iPhone 5 many times: “It’s so light, I’m afraid I’m going to drop it!”</p>\n\n<p>No one is holding an iMac while using it, so there’s no fear of dropping it.  But if it’s not being held, why the rush to slim down?  Dissatisfaction with the <a href=\"/2013/02/08/images/thinning-imac.jpg\">ever-slimming iMac</a> is exacerbated by the removal of the optical drive in the latest revision.  In all likelihood, that optical drive was going away regardless of the thickness of the iMac’s edge.  (Apple’s been steadily dropping optical drives from the Mac line for years.)  Still, some people can’t help but infer a cause and effect relationship, blaming Apple’s seemingly pointless drive for thinness for the loss of the slot for the spinning shiny things.</p>\n\n<p>In the past, I’ve voiced my own complaints about <a href=\"http://5by5.tv/hypercritical/91\">the edge of the latest iMac</a> and <a href=\"http://5by5.tv/hypercritical/86\">how the iPhone 5 feels in the hand</a>.  But though I might disagree with the timing and details of these changes, I fully support the broader long-term trend towards lighter, thinner hardware.  Here’s why.</p>\n\n<p>In technology, things that can be measured appear to exist on a smooth continuum: large to small, slow to fast.  But the  experiences provided by these measurable quantities often have sharp discontinuities.</p>\n\n<p>Consider touch-screen user interfaces. They’ve existed for decades, but it wasn’t until the iPhone arrived that they entered widespread usage.  Yes, there are many non-tech factors that contributed to this, but the responsiveness of the iPhone’s interface was an essential factor.  With the iPhone, touch interfaces finally crossed the threshold from frustrating to joyful.</p>\n\n<p>I’m not sure where the threshold is, or even what quantities it applies to (e.g., frames-per-second of animation, input lag, finger pressure), but it’s definitely there.  It’s not a steady ramp from unacceptable to acceptable.  It’s a perceived discontinuity—a leap.</p>\n\n<p>Most measurable qualities of tech products have experiential discontinuities like this.  In fact, there are usually <i>multiple</i> discontinuities.  It’s human nature to think that we’re at the pinnacle of useful achievement, but it’s never actually true.  Watch what happens to the experience of using a touch-screen when we go in search of the next discontinuity—what the Microsoft researcher in this video calls “a perceptual cliff.\"\n\n<div class=\"video-container\">\n<iframe width=\"640\" height=\"360\" src=\"http://www.youtube.com/embed/vOvQCPLkPt4?start=52&amp;rel=0\"></iframe>\n</div>\n\n<p>This phenomenon is not limited to performance measurements.  It extends to every aspect of a product, including size, weight, and even shape.  Let’s reconsider the iPhone.  The change in thickness and weight between the iPhone 4S and the iPhone 5 was very small.  Using an iPhone 5 does not feel dramatically different than using a 4S.  Clearly, the iPhone 5 has not yet reached the next perceptual cliff—but it’s out there.</p>\n\n<p>Consider a distant-future iPhone roughly the same width and height as the iPhone 5, but as thin and as durable as a credit card.  Accidentally drop such a phone and it’d flutter harmlessly to the ground.  Now maybe this would be a terrible design—the edges might dig into your hand, and it might be even less secure-feeling when held—but it’d clearly change the equation when it comes to fear of dropping your iPhone (not to mention where and how to carry it, and so on).</p>\n\n<p>Don’t get distracted by the details.  I’m not arguing for or against a particular design.  My point is that it’s important to keep making progress towards the next discontinuity, wherever it may be.</p>\n\n<p>Apple has its compass trained on “thinner and lighter,” a direction that’s proven fruitful in the past.  But as much as we’d all like to jump right to the next big win, <a href=\"http://en.wikipedia.org/wiki/Fifth_generation_computer\">you can’t just skip to the end</a>.  The original iPhone was never going to be followed by the credit-card-thin iPhone—again, ignoring whether this is actually a good idea; stay with me!  Instead, it was followed by the 3G (thicker in the middle, but thinner-feeling on the edge), then the 4 (thinner overall), then the 5 (thinner still), and so on.</p>\n\n<p>The same goes for the iMac, with the same caveats about the direction and endpoint.  How does the iMac change as a product when it’s as thin as an iPad, or a cafeteria tray, or a credit card?  Does it even need to exist at that point?  Maybe the distant-future iMac is “just a big iPad.”  Or maybe some <a href=\"http://en.wikipedia.org/wiki/Project_Glass\">new i/o device</a> makes all of this moot.</p>\n\n<p>Mistakes will be made in the march towards the future.  But the worst possible mistake is neglecting to do the work required to get there because you think we’ve already arrived.  There is no destination; there is only the journey.  Pick a direction or get out of the way.</p>",
+         "title" : "Don’t Stop Thinking About Tomorrow",
+         "url" : "http://hypercritical.co/2013/02/08/dont-stop-thinking-about-tomorrow",
+         "id" : "http://hypercritical.co/2013/02/08/dont-stop-thinking-about-tomorrow",
+         "author" : {
+            "url" : "http://hypercritical.co",
+            "name" : "John Siracusa"
+         },
+         "date_published" : "2013-02-08T15:08:57-05:00"
+      },
+      {
+         "id" : "http://hypercritical.co/2013/02/02/apples-2013-to-do-list",
+         "url" : "http://hypercritical.co/2013/02/02/apples-2013-to-do-list",
+         "title" : "Apple’s 2013 To-Do List",
+         "date_modified" : "2013-02-02T23:19:04-05:00",
+         "content_html" : "<p>I didn’t just lead Apple to a <a href=\"http://www.macworld.com/article/2026112/iphone-ipad-sales-up-macs-fall-as-apple-sees-record-sales.html\">record quarterly profit</a> of $13.1 billion on sales of $54.5 billion, so I don’t expect to be consulted.  But were <a href=\"http://www.apple.com/pr/bios/tim-cook.html\">Tim</a> to ask me, here’s what I would tell him Apple should do in 2013—in broad strokes, and in no particular order.  (We’ve got people to work out the details—right, Tim?)  This is not a fantasy wish list.  These are things I think Apple can and should do this year.  This list is not exhaustive.</p>\n\n<ul>\n\n<li> <p><b>Ship OS X 10.9.</b>  Last year, Apple announced <a href=\"http://daringfireball.net/2012/02/mountain_lion\">OS X’s move to an annual release cycle</a>.   <a href=\"http://arstechnica.com/apple/2011/07/mac-os-x-10-7/\">Lion</a> was released in 2011; <a href=\"http://arstechnica.com/apple/2012/07/os-x-10-8\">Mountain Lion</a> followed in 2012. Two points may make a line, but it’ll take three points to fulfill this promise.  As tired as I get just thinking about writing another OS X review, it’s time to <a href=\"http://hypercritical.co/2012/07/25/mountain-lion\">do it all over again</a>.  (Big cat name optional.)</p></li>\n\n<li> <p><b>Ship iOS 7.</b>  Apple’s mobile platform <a href=\"http://arstechnica.com/apple/2007/01/apple-announces-the-iphone-at-macworld/\">started out</a> way ahead of the competition, and it’s stayed ahead thanks to <a href=\"http://www.macworld.com/article/1151235/apple_rolls.html\">relentless iteration</a>: six releases in six years.  Apple can’t let up now.  What’s left to do in iOS?  <a href=\"http://arstechnica.com/apple/2013/01/bring-us-the-features-an-ars-staff-wish-list-for-ios-7/\">Plenty</a>.</p></li>\n\n<li> <p><b>Diversify the iPhone product line.</b>  There needs to be more than one iPhone.  Selling <a href=\"http://www.verizonwireless.com/b2c/store/controller?item=phoneFirst&amp;action=viewPhoneDetail&amp;selectedPhoneId=5782\">models</a> from <a href=\"http://www.bestbuy.com/site/Apple%26%23174%3B+-+iPhone%26%23174%3B+4S+with+16GB+Memory+Mobile+Phone+-+Black+(AT%26T)/3487784.p;jsessionid=B2B287C1A175C3FA39E1D782F06009E7.bbolsp-app01-141?id=1218410277429&amp;skuId=3487784&amp;contract_desc=\">previous years</a> at a discount is no longer good enough.  Apple can make more attractive phones at similar prices if they’re purpose-built using modern parts and processes.  Margins may go down, but sales will go up.  Apple has done this before, with the Mac, the iPod, and <a href=\"http://www.apple.com/ipad-mini/\">now the iPad</a>.  It’s the iPhone’s turn.  Cheaper, smaller, <a href=\"http://www.marco.org/2013/01/31/iphone-plus-speculation\">bigger</a>, or multiple combinations of these attributes—it doesn’t matter.  Write it down, Tim: more new iPhones in 2013.</p></li>\n\n<li> <p><b>Keep the iPad on track.</b> Ship some new, slimmer, faster, lighter iPads, just like everyone expects.  Cheaper wouldn’t hurt either.  The <a href=\"http://www.apple.com/ipad-mini/\">mini</a> was a great start.  Now ditch the <a href=\"http://en.wikipedia.org/wiki/IPad_2\">iPad 2</a> and make a new model to fill that role, if necessary.  (A larger, more powerful “iPad Pro” would also be great, but this year is probably too soon.)</p></li>\n\n\n<li> <p><b>Introduce more, better Retina Macs.</b> The first Retina MacBook Pro had a GPU that could <a href=\"http://www.anandtech.com/show/6023/the-nextgen-macbook-pro-with-retina-display-review/8\">barely handle</a> all the pixels it was asked to push.  <a href=\"http://www.extremetech.com/computing/134985-apples-new-retina-display-dogged-by-image-retention-increasingly-unhappy-users\">Burn-in</a> was also an issue.  This year, the available <a href=\"http://www.anandtech.com/show/6355/intels-haswell-architecture\">CPU</a>, <a href=\"http://www.anandtech.com/show/6355/intels-haswell-architecture/12\">GPU</a>, and <a href=\"http://en.wikipedia.org/wiki/IGZO\">display</a> options should make the existing 13- and 15-inch Retina MacBook Pros look like the <a href=\"http://www.macworld.com/article/1131864/macbookair.html\">first-generation MacBook Air</a>: technical marvels, but also compromises that we’ll soon be happy to forget.  Oh, and a Retina display on a non-laptop Mac would be nice too.</p></li>\n\n<li> <p><b>Make Messages work correctly.</b> Apple’s <a href=\"http://en.wikipedia.org/wiki/IMessage\">iMessage service</a> is rapidly approaching <a href=\"http://en.wikipedia.org/wiki/Mobileme\">MobileMe</a> levels of undesirable brand association.  Fix it in 2013, or be ready for an iCloud-like rebrand/relaunch in 2014.  Speaking of which…</p></li>\n\n<li> <p><b>Make iCloud better.</b> iCloud beats the pants off MobileMe, but it’s still got plenty of room for improvement.  Google should be the reliability and performance target.  Decide which technologies and APIs under the giant umbrella term “iCloud” are working well, and fix or deprecate the ones <a href=\"http://www.jumsoft.com/2013/01/response-to-sync-issues/\">that are not</a>.</p></li>\n\n<li> <p><b>Resurrect iLife and iWork.</b> Both application suites are in desperate need of some serious attention.  The last new release of iLife was <a href=\"http://www.apple.com/pr/library/2010/10/20Apple-Introduces-iLife-11-With-Major-Upgrades-to-iPhoto-iMovie-and-GarageBand.html\">two years ago</a>; iWork hasn’t had a major revision in <a href=\"http://en.wikipedia.org/wiki/Iwork#Versions\">four years</a>.  People still use these apps.  Abandoning them is not an option (yet).</p></li>\n\n<li> <p><b>Reassure Mac Pro lovers.</b> Fans of the Mac Pro did not get the new machine they wanted in 2012.  After <a href=\"https://developer.apple.com/wwdc/\">WWDC</a> 2012, Tim Cook <a href=\"http://www.macworld.com/article/1167247/cook_apple_planning_professional_mac_for_2013.html\">said</a>, “Although we didn’t have a chance to talk about a new Mac Pro at today’s event, don’t worry as we’re working on something really great for later next year.”  As I’ve frequently noted, this statement is <i>not</i> a promise for a new Mac Pro, but merely for something that customers disappointed in the stagnant Mac Pro will consider “really great.”  2013 has <a href=\"http://arstechnica.com/apple/2013/01/apple-to-stop-shipping-mac-pro-in-europe-on-march-1/\">not gotten off to a good start</a> on that front, but the year is young.  Wow me, Tim.</p></li>\n\n<li> <p><b>Do something about TV.</b>  After years of <a href=\"http://5by5.tv/hypercritical/98\">steadily ramping up its rhetoric</a>, it’s time for Apple to put up or shut up about TV.  Make an actual Apple TV set; allow third-party apps on a massively revised <a href=\"http://www.apple.com/appletv/\">Apple TV box</a>; buy Netflix; whatever—you decide, Tim.  I agree, it’s a hard problem and a tough market.  But it’s time for action.</p></li>\n\n</ul>\n\n<p>Should be a cinch, right?  Too bad there are only two items on this list that will help Apple’s stock price recover from its <a href=\"http://www.nytimes.com/2013/01/24/technology/apple-earnings.html\">calamitous</a> 35% drop over the past four months.  Uneasy lies the head that wears a crown.</p>",
+         "date_published" : "2013-02-02T22:39:51-05:00",
+         "author" : {
+            "name" : "John Siracusa",
+            "url" : "http://hypercritical.co"
+         }
+      },
+      {
+         "title" : "We Can Remember It for You Wholesale",
+         "id" : "http://hypercritical.co/2013/01/25/we-can-remember-it-for-you-wholesale",
+         "url" : "http://hypercritical.co/2013/01/25/we-can-remember-it-for-you-wholesale",
+         "date_modified" : "2014-08-13T21:14:37-04:00",
+         "content_html" : "<div class=\"image header\"><img src=\"/2013/01/25/images/wind-waker-hd.jpg\" width=\"640\" height=\"360\" alt=\"A screenshot from the Wii U remake of The Legend of Zelda: The Wind Waker\"/></div>\n\n<p>The highlight of <a href=\"http://www.nintendo.com/nintendo-direct/archive/01-23-2013/\">Nintendo’s video presentation this week</a> was the announcement of a <a href=\"http://en.wikipedia.org/wiki/Wii_U\">Wii U</a> remake of <a href=\"http://en.wikipedia.org/wiki/The_Legend_of_Zelda:_The_Wind_Waker\">The Legend of Zelda: The Wind Waker</a>, a <a href=\"http://en.wikipedia.org/wiki/Gamecube\">GameCube</a> game originally released in the US a decade ago.  As a dedicated Zelda fan, <a href=\"https://twitter.com/siracusa/status/294096347701841920\">my reaction</a> was predictably enthusiastic.</p>\n\n<p>Elsewhere on the net, fretting about the <a href=\"http://kotaku.com/5978521/five-things-the-wind-waker-remake-needs-to-make-me-buy-it-all-over-again\">content</a> and <a href=\"http://www.ign.com/wikis/the-legend-of-zelda-wind-waker/HD_Screenshot_Comparison\">appearance</a> of the game started immediately.  It made me think about why I’m such a fan of video game remakes while my default position on <a href=\"http://www.imdb.com/title/tt1228987/\">movie remakes</a> is to turn up my nose at them.  How can I hate the <a href=\"http://starwars.wikia.com/wiki/Star_Wars_Trilogy_(Special_Edition)\">Star Wars special editions</a> but love the HD remakes of <a href=\"http://arstechnica.com/gaming/2010/11/masterpiece-ico/\">Ico</a> and <a href=\"http://arstechnica.com/gaming/2011/09/masterpieces-sonys-ps3-update-and-release-of-ico-and-shadow-of-the-collosus-are-must-buys/2/\">Shadow of the Colossus</a>?  I think both sentiments have the same underlying motivation: I don’t want to lose the things I love.</p>\n\n<p>In the case of Star Wars, I’m frustrated not so much by the existence of alternate versions of the movies, but by the disappearance of the original theatrical releases.  I discussed this at length in <a href=\"http://5by5.tv/hypercritical/45\">episode 45 of the Hypercritical podcast</a> (the topic starts at 35:57), but here’s a summary: Artists are often <a href=\"http://john-mccoy.blogspot.com/2011/09/bad-motivator.html\">not the best stewards of their own work</a>.  Once an artistic creation reaches a certain level of cultural significance, it belongs to society at large more than it belongs to the creators—philosophically, if not legally.  Cultural touchstones belong to all of us, and they deserve to be treasured and preserved, regardless of the creator’s wishes.</p>\n\n<p>Video games are an odd art form in <a href=\"http://natebarham.com/post/22653350983/physical-skills-are-the-barrier-to-art\">many ways</a>, one of which is that they’re extremely dependent on their delivery <a href=\"http://en.wikipedia.org/wiki/Computing_platform\">platform</a>.  More established kinds of art like paintings, books, video, and audio recordings have all proven resilient to changes in technology.  The novels of Charles Dickens did not disappear as <a href=\"http://arstechnica.com/business/2009/02/the-once-and-future-e-book/\">book technology evolved</a>.  Most filmmakers have been vigilant about preserving and (eventually) digitizing movies that were shot on film.  (Again, <a href=\"http://arstechnica.com/business/2010/05/star-wars/\">Star Wars stands out as a sad exception</a>.)  All these art forms have a clear path to move forward in time; they’ll always be with us.</p>\n\n<p>Video games are a different story.  Historically, video game platform owners have been unwilling or unable to preserve the works of art originally delivered on their platforms.  When the Wii, <a href=\"http://en.wikipedia.org/wiki/PlayStation_3\">PS3</a>, and <a href=\"http://en.wikipedia.org/wiki/Xbox_360\">Xbox 360</a> all launched with some ability to play games made for the consoles they replaced, I was optimistic about the future.  But the PS3’s ability to play <a href=\"http://en.wikipedia.org/wiki/PlayStation_2\">PS2</a> games rapidly diminished, first losing dedicated hardware support and then disappearing completely.  Similarly, the <a href=\"http://www.engadget.com/2011/10/16/gamecube-free-wii-refresh-heads-to-north-america-competes-with/\">latest iteration of the Wii</a> can’t play GameCube games.  Hoarding and preserving console launch hardware started to make a lot more sense.</p>\n\n<p>Today, Nintendo sells <a href=\"http://en.wikipedia.org/wiki/Virtual_Console\">its own emulated versions of many of its classic games</a>.  Presumably this will extend to Wii U games when that hardware is eventually phased out.  But I have little faith in Nintendo’s motivation to preserve its past beyond its function as an income source.  And let’s not forget all the important video game makers that have gone out of business—or been acquired and re-acquired so many times that they might as well have.</p>\n\n<p>Again, <a href=\"http://www.screened.com/news/behind-the-scenes-of-harmys-star-wars-despecialized-edition/2917/\">as in the case of Star Wars</a>, it has fallen to the fans to preserve classic games, sometimes by <a href=\"http://www.mattholden.com/consoles/\">preserving the original hardware</a>, but most often <a href=\"http://mamedev.org\">through emulation</a>.  This doesn’t just apply to video games that are 30 years old.  Games are becoming inaccessible so rapidly that even platforms created just a handful of years ago already have <a href=\"https://dolphin-emu.org/\">active emulation projects</a>.</p>\n\n<p>That’s the fear that HD remakes tap into.  Though there are many things that can go wrong when an older video game is ported and “improved” for release on a newer hardware platform, the risks are vastly outweighed in my mind by the playable-lifespan extension that a remake bestows on a beloved game.</p>\n\n<p>Right now, I can play Wind Waker on my GameCube and my Wii.  Newer Wiis (and the Wii U) don’t play GameCube games.  Both the GameCube and the Wii send their video signal over a <a href=\"http://en.wikipedia.org/wiki/Component_video\">component</a> cable, at best.  I suspect TVs will stop shipping with component video inputs in a few years, which will leave me at the mercy of video converter boxes.  Eventually, no matter how well I care for them, my 12-year-old GameCube and my 7-year-old Wii will break.  (The optical drives will probably go first.)  But when that happens, my Wii U, with its <a href=\"http://en.wikipedia.org/wiki/Hdmi\">HDMI</a> connection and 2012 manufacture date, will probably still be working.  Time extended!</p>\n\n<p>Alas, things get even more complicated when you consider not just the software but also the controller hardware and the details of the display device.  I’ve still got my <a href=\"http://en.wikipedia.org/wiki/Nintendo_64\">N64</a> in the attic, but my son experienced <a href=\"http://en.wikipedia.org/wiki/The_Legend_of_Zelda:_Ocarina_of_Time\">Ocarina of Time</a> by playing <a href=\"http://zeldawiki.org/The_Legend_of_Zelda:_Collector's_Edition\">the GameCube port</a> on the Wii connected to a <a href=\"http://en.wikipedia.org/wiki/Plasma_display\">plasma HDTV</a>.  Was it the same as playing the original using an N64 controller and an old <a href=\"http://en.wikipedia.org/wiki/Cathode_ray_tube\">CRT</a> television?  Well, not quite.  This problem only gets worse as <a href=\"http://ascii.textfiles.com/archives/3786\">the hardware gets more novel</a>.</p>\n\n<p>In the end, I’m content to at least preserve the software in some playable form, even if the controller and display are slightly different.  Just doing this is turning out to be enough of a fight.  I hope my purchase of the Wii U remake of Wind Waker will help convince Nintendo and other game makers that older titles are valued by gamers long past the death of their original platforms.</p>\n\n<p>I’m also a little afraid that remakes like this will delay or prevent the original version of the game from appearing in an officially sanctioned emulated form.  But for now, I’ll take what I can get.  I’m glad my son has already played the original GameCube version of Wind Waker—twice.  I’m also excited to replay Wind Waker with him on the Wii U in HD.  It won’t be exactly the same as it was, but I think it’ll still be great.  Most importantly, I hope he can share both of these experiences with his children someday.</p>",
+         "date_published" : "2013-01-25T14:05:00-05:00",
+         "author" : {
+            "url" : "http://hypercritical.co",
+            "name" : "John Siracusa"
+         }
+      },
+      {
+         "date_published" : "2013-01-07T16:31:00-05:00",
+         "author" : {
+            "url" : "http://hypercritical.co",
+            "name" : "John Siracusa"
+         },
+         "title" : "CES: Worse Products Through Software",
+         "id" : "http://hypercritical.co/2013/01/07/ces-worse-products-through-software",
+         "url" : "http://hypercritical.co/2013/01/07/ces-worse-products-through-software",
+         "date_modified" : "2013-01-07T16:31:00-05:00",
+         "content_html" : "<p>Watching the CES coverage out of the corner of my Internet eye, I’m reminded of exactly how bad most hardware makers are at writing software.  <a href=\"https://twitter.com/mat\">Mat Honan</a> summed it up nicely last month: <a href=\"http://www.wired.com/gadgetlab/2012/12/internet-tv-sucks/\">No One Uses Smart TV Internet Because It Sucks</a>.  Amen to that.  But it’s not just TVs.  Who really likes the “software” in their car, microwave, or blu-ray player?</p>\n\n<p>All of this software is terrible in the same handful of ways.  It’s buggy, unresponsive, and difficult to use.  I actually think the second sin is the worst one, especially when it comes to appliances and consumer electronics.  Dials and knobs respond to your touch <i>right now</i>.  Anything that wants to replace them had better also do so.  But just try finding and watching a YouTube video on your TV and see how far you get before your brain checks out.  It’s faster to get up off the couch and walk to a computer—or, you know, whip out your iPhone.</p>\n\n<p>The companies out there that know how to make decent software have been steadily eating their way into and through markets previously dominated by the hardware guys.  Apple with music players, TiVo with video recording, even Microsoft with its decade-old Xbox Live service, which continues to embarrass the far weaker offerings from Sony and Nintendo.  (And, yes, iOS is embarrassing all three console makers.)</p>\n\n<p>Companies that make physical products that have only recently started sprouting sophisticated software features all find themselves in a similar bind.  The obvious solution is to <a href=\"http://en.wikipedia.org/wiki/SMOP\">just make better software</a>.  If only.  I have little faith that these companies are willing and able to transform themselves in the radical ways required to produce and support great software.  Here’s what I see happening instead.</p>\n\n<p>The long-term success of these companies now hinges on how difficult it is to create the hardware product that’s wrapped around their crappy software.  Car makers, for example, are probably safe from software upstarts (if not from other car makers).  The barrier to entry in the auto industry is immense, and the remaining successful car makers have deep expertise in their craft.  If <a href=\"http://www.teslamotors.com\">Tesla</a> succeeds, for example, it won’t be because <a href=\"http://en.wikipedia.org/wiki/MyFord_Touch\">MyFord Touch</a> is slow and unintuitive.</p>\n\n<p>TV makers, on the other hand, should be worried.  Most of the hardware they make is already a component of the industries dominated by the software guys.  The proliferation of “smart” TV features is fueled by the fear of becoming a mere component supplier.  Unfortunately for the companies involved, the terrible quality of these features may actually end up hastening the transitions from “TV maker” to “panel maker.”</p>\n\n<p>At this point, the only thing keeping the hounds at bay is the reality that a TV with non-crappy software requires a much deeper cooperation with content providers.  So while Apple can whip up a TV running iOS in its sleep, giving that software something useful to do requires talking to content owners—and possibly also cable companies and ISPs, who are even more keen to keep the content owners in their camp, and who have <a href=\"http://en.wikipedia.org/wiki/Fiber_to_the_x\">barriers</a> to <a href=\"http://en.wikipedia.org/wiki/Cell_site\">entry</a> that the auto industry would die for.  And this is before even considering the fragmentation of TV and Internet access in the US and around the world.</p>\n\n<p>The hardware barriers that protect ISPs and car makers will probably hold up (much to our detriment, in the case of US ISPs), but I think the TV content owners will eventually come around—or be <a href=\"http://en.wikipedia.org/wiki/House_of_Cards_(U.S._TV_series)\">routed around</a>.  When that happens, the market for formerly “software-neutral” hardware devices like TVs will rapidly follow the same path as the mobile phone market.  If it happens soon enough, it may even be the same familiar handful of companies that gobble up all the losers: Apple, Samsung, Google, maybe even Microsoft.</p>\n\n<p>Until then, we’ll all just have to suffer through—or find a way to ignore—this avalanche of software that’s slowly making our a/v equipment, appliances, and vehicles more annoying to use.</p>"
+      },
+      {
+         "author" : {
+            "name" : "John Siracusa",
+            "url" : "http://hypercritical.co"
+         },
+         "date_published" : "2012-11-27T09:42:00-05:00",
+         "date_modified" : "2012-11-27T09:42:00-05:00",
+         "content_html" : "<div class=\"image header\"><img src=\"/2012/11/27/images/journey.jpg\" width=\"640\" height=\"360\" alt=\"Journey\"/></div>\n\n<p><i>This article originally appeared in <a href=\"http://the-magazine.org/2/strange-game\">issue 2</a> of <a href=\"http://the-magazine.org\">The Magazine</a> on October 25, 2012.</i></p>\n\n<p><a href=\"http://thatgamecompany.com/games/journey/\">Journey</a> for the PlayStation 3 is the best video game I’ve played in a long time.  I’m going to use it to illustrate a larger point about technology, and in doing so, I’m going to spoil the game.  If you have any interest in video games at all, I strongly recommend that you do not read any further until you’ve played it.</p>\n\n<p>Online discourse can be harsh.  Nowhere is this more true than in multiplayer video games.  It’s nearly impossible to play a popular online game without being exposed to — or worse, being the target of — the most vile kinds of <a href=\"http://en.wikipedia.org/wiki/Wikipedia:Griefing\">behaviors</a> and insults, including sexist, racist, and homophobic slurs.</p>\n\n<p>This problem is not confined to video games. Even something as seemingly benign as a comment form on a popular technology blog can trigger profoundly bad behavior. A well-known Penny Arcade comic sums up the phenomenon nicely in the form of <a href=\"http://www.penny-arcade.com/comic/2004/03/19/\">John Gabriel’s Greater Internet Fuckwad Theory</a>, which states: Normal Person + Anonymity + Audience = Total Fuckwad.</p>\n\n<p>Many remedies have been tried: moderation, the use of “real names” (whatever that means), increasingly complex privacy settings, user voting, karma scores, etc.  Sometimes these things help, but often only a little — and they all require constant vigilance.</p>\n\n<p>In frustration, many users and content creators choose to take out the big hammer and end discourse entirely.  <a href=\"http://mattgemmell.com/2011/11/29/comments-off/\">Eliminate blog comments</a>. Mute all voice chat. Disable communication between players on opposing teams.  <a href=\"http://www.youtube.com/watch?v=NHWjlCaIrQo\">The only winning move is not to play</a>.</p>\n\n<p>So goes the conventional wisdom.  But then there’s Journey, a $15 video game for the PlayStation 3.  When you start playing Journey, it’s not even obvious that it’s a multiplayer game.  When other players appear, they are not announced in any way, nor are you directed to interact with them.  Some players choose to ignore them and complete the game on their own.  Others dismiss them as computer-controlled <a href=\"http://en.wikipedia.org/wiki/Non-player_character\">NPCs</a>.  This is the first part of Journey’s solution: interaction with others is optional.</p>\n\n<p>Those who choose to engage with others have only a few choices.  Players can move, jump, and “sing” by pressing a single button, causing a musical note to play and a unique glyph to appear on screen.  The glyph is not selected or drawn by the player; it’s automatically chosen by the game (so <a href=\"http://en.wikipedia.org/wiki/Anshe_Chung#Target_of_griefing\">penis-themed griefing</a> is out of the question). There is no text or voice chat.  Singing is the only way to communicate, and the only control the player has over the note that’s played is the volume and duration.</p>\n\n<p>Most critically, none of these actions can harm other players.  Even movement can’t be used as a weapon; players simply pass through each other, making it impossible to <a href=\"http://www.youtube.com/watch?v=s-rl3RPC_Mw\">bump other players off a high ledge</a> or otherwise perturb their progress. Movement can’t even be used to race ahead and steal a desirable in-game item before another player can get to it, because power-ups are not consumed when acquired: they remain in place for future players to receive.</p>\n\n<p>All of this may sound like it stops just short of banning communication entirely.  Will players even bother to interact with each other?  Surely, such a limited palette of options will render the multiplayer aspects of Journey trite and inconsequential.</p>\n\n<p>But that’s not what happens at all.  Instead, Journey players find themselves having some of the most meaningful and emotionally engaging multiplayer experiences of their lives.  How is this possible?</p>\n\n<p>Though players can’t harm each other, they can <i>help</i> each other.  Touching another player recharges the power used to leap and (eventually) fly.  In cold weather, touching warms both players, fighting back the encroaching frost.  More experienced players can guide new players to secret areas and help them through difficult parts of the game.</p>\n\n<p>Journey players are not better people than Call of Duty players or Halo players.  In fact, they’re often the same people.  The difference is in the design of the game itself.  By so thoroughly eliminating all forms of negative interaction, all that remains is the positive.</p>\n\n<p>Players do want to interact; real people are much more interesting than computerized entities.  In Journey, players inevitably find themselves having positive interactions with others.  And, as it <a href=\"http://malcolmgladwellbookgenerator.com/\">turns out</a>, many people find these positive, cooperative interactions even more rewarding than their usual adversarial gaming experiences.</p>\n\n<p>Does this mean that playing Journey turns players into relaxed, peace-loving, spiritually enlightened beings?  Certainly not — but the limited communication system works in more ways than one.</p>\n\n<p>In the same way that you can imagine the actors in a subtitled film (speaking in a language you don’t understand) are all giving Oscar-worthy performances, it’s natural to assume that every other Journey player has only the best intentions.  After all, while we may judge ourselves by our motivations, we tend to judge others by their actions.  The actions in Journey are all either neutral or positive, so that’s how players perceive each other.</p>\n\n<p>Journey players are also anonymous during the game.  The unique player glyphs are only shown next to PlayStation Network account names when the game is over, and they change on each play-through.  Again, this plays into that subtitled-movie optimism.  It&#8217;s much easier to believe that the anonymous player with the winged glyph is the most caring, thoughtful person in the world when you don&#8217;t know his PSN account name is K1LLSh0t99.</p>\n\n<p>If you want some evidence of the deep feelings triggered by this game, look no further than the <a href=\"http://www.thatgamecompany.com/forum/viewtopic.php?t=1897\">Journey Apologies thread</a> in the official forum for the game.  Here, players apologize to the anonymous others they feel they have disappointed in the game.  It&#8217;s like <a href=\"http://en.wikipedia.org/wiki/Missed_connection\">missed connections</a> for gamers.  Here&#8217;s an example post:</p>\n\n<blockquote><p>To my friend in the fifth area: I never wanted to leave you. I just whiffed really badly on a jump. I miss you. And I&#8217;m sorry.</p></blockquote>\n\n<p>Journey may be just a game, but the lessons it teaches about ourselves and the things we&#8217;re capable of creating can be applied to all of human endeavor.</p>\n\n<p>Throughout history, we humans have invented many different sets of rules for ourselves.  Some have worked better than others, but all of them have been exploited.  As anyone with children knows, if there&#8217;s one thing humans are good at, it&#8217;s finding loopholes.</p>\n\n<p>When a system of rules is applied to many people, thoroughly codified, and consistently enforced, you have something approaching a government.  But for governments, even the most successful change occurs slowly and often happens <a href=\"http://en.wikipedia.org/wiki/African-American_Civil_Rights_Movement_(1955%E2%80%931968)\">painfully</a>. This can lead even the most optimistic person to despair.</p>\n\n<p>Human history is long, but how many different sets of rules have really been tried? In <a href=\"http://en.wikipedia.org/wiki/Real_life#Related_terminology\">meatspace</a>, it&#8217;s so difficult to establish a new set of rules or change the existing ones that the rate of design iteration is severely limited.</p>\n\n<p>This is not so in the relatively consequence-free worlds of video games and the Internet.  In the digital realm, wild experimentation and rapid iteration are the norm.  It&#8217;s also much easier to establish and enforce an iron-clad set of rules in a virtual world than in the real one.  This is the environment that created Journey, and its rarity is why it&#8217;s such a joy.</p>\n\n<p>The lesson of Journey is that success is possible, even in an area like online multiplayer interaction which has seemed so hopeless for so long over so many thousands of iterations.  Success is possible.</p>\n\n<p>But let&#8217;s go further.  Our digital lives increasingly affect our real lives.  Consider Twitter, another system for online interaction that has succeeded in large part thanks to its novel set of rules and limitations.  There&#8217;s a whole world of bad behavior that doesn&#8217;t fit into 140 characters and doesn&#8217;t work when producer/consumer relationships are asymmetrical.  Twitter isn&#8217;t just a game; its influence extends into the real world, in ways we don&#8217;t yet fully understand.</p>\n\n<p>As another US presidential election season grinds on and I become freshly disillusioned with the seemingly intractable problems in our system of government, Journey and Twitter give me hope.  They make me believe that maybe, just maybe, the digital world can be both a laboratory for new ideas and, eventually, a giant lever with which to change the formerly unchangeable.</p>",
+         "url" : "http://hypercritical.co/2012/11/27/strange-game",
+         "id" : "http://hypercritical.co/2012/11/27/strange-game",
+         "title" : "Strange Game"
+      },
+      {
+         "title" : "About My Mountain Lion Review",
+         "id" : "http://hypercritical.co/2012/07/25/mountain-lion",
+         "url" : "http://hypercritical.co/2012/07/25/mountain-lion",
+         "date_modified" : "2014-10-17T08:59:48-04:00",
+         "content_html" : "<p>As I have for the past 13 years (yikes!), I wrote a review of the latest major release of the Mac operating system, <a href=\"http://arstechnica.com/apple/2022/07/os-x-10-8/\">OS X 10.8 Mountain Lion</a>, for <a href=\"http://arstechnica.com/\">Ars Technica</a>.  There are several ways to read it.</p>\n\n<ul>\n<li> <a href=\"http://arstechnica.com/apple/2022/07/os-x-10-8/\">Read it for free on the web</a></li>\n\n<li> <a href=\"http://www.amazon.com/gp/product/B008OYE8O8/ref=as_li_ss_tl?ie=UTF8&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B008OYE8O8&amp;linkCode=as2&amp;tag=siracusa-20\">Buy the Kindle ebook for $4.99</a>\n\n<li> <a href=\"http://arstechnica.com/subscriptions/\">Subscribe to Ars Premier for a month for $5</a> and get <i>all</i> of these options:\n\n<ul>\n<li> Read it on a single, ad-free web page\n<li> Download an iBooks-compatible EPUB file\n<li> Download a PDF\n</ul>\n\n</ul>\n\n<p>Here are my thoughts on the various reading options.</p>\n\n<h2 id=\"web-version\">The Web Version</h2>\n\n<p>I consider the web version to be the canonical version, and the version with the best formatting and the most features.  I believe that good writing for the web includes a lot of links.  A web browser is the best place to inspect and follow those links.</p>\n\n<p>The free web version has ads, and it’s split up into multiple “pages” (which are actually much longer than a single printed page).  This kind of pagination annoys some people.  I actually like it for very long articles because it helps me keep my place across multiple reading sessions.  I can remember I was on page 8 instead of remembering the exact point in a very long, scrolling web page.</p>\n\n<p>That said, I also really like how an <a href=\"ttp://arstechnica.com/subscriptions/\">Ars Premier subscription</a> eliminates all ads from the Ars Technica website and gives me the option to view any article on a single page.  I use single-page view on very long articles when I’m searching for some text using my web browser’s “Find…” feature.  I use it all the time on short articles.</p>\n\n<p>Some people think Ars Technica forces me to break my article up into many tiny pages.  That’s not the case.  I choose how to paginate the article.  I like to break it up on logical section boundaries, which means that the “pages” vary widely in length.  This year, Ars Technica actually asked me to merge several pages together to reduce the total number of pages (and I did).</p>\n\n<h2>The eBooks</h2>\n\n<p>This year, I created the Kindle and EPUB versions of the article myself.  They’re both generated from the canonical HTML version of the article.  Both ebook formats have severe limitations, most of which are imposed by the reader software.</p>\n\n<p>Reading the Kindle version using a device or application that supports <a href=\"http://www.amazon.com/gp/feature.html?docId=1000729511\">Kindle Format 8</a> provides the best experience of any of the ebook formats.  Kindle Format 8 readers support amazing new technologies such as text that flows around images and the ability to tie a caption to an image.  Yes, that was sarcasm.</p>\n\n<p>Unfortunately many Kindle reading devices and applications <i>don’t</i> support Kindle Format 8.  Most notably, the <a href=\"http://itunes.apple.com/us/app/kindle-read-books-magazines/id302584613?mt=8\">iOS Kindle app</a> still does not support Kindle Format 8.  <a href=\"http://www.amazon.com/kindleformac\">The Mac version</a> does, however, as does the <a href=\"http://www.amazon.com/gp/product/B0051VVOB2/ref=as_li_ss_tl?ie=UTF8&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B0051VVOB2&amp;linkCode=as2&amp;tag=siracusa-20\">Kindle Fire</a>.</p>\n\n<p>The Kindle ebook is a single file that contains two versions of the content: one in Kindle Format 8, and one in the older Kindle format.  Open the same ebook file in both the Mac and iOS Kindle reader applications and you’ll see two very different appearances.</p>\n\n<p>Apple’s iBooks app displays the EPUB version of the book almost as well as the Kindle Format 8 readers, but it has an annoying habit of stretching the content to fit the vertical space of the page when a large image causes a mid-page break.  This can cause the image captions to be separate from their associated images by a big swath of whitespace.</p>\n\n<p>Lesser reader applications and devices display the Kindle and EPUB files in progressively more depressing ways. Most (all?) ebook reader applications also don’t provide a nice way to have a text link briefly display an image on top of the content, or to show a larger, un-cropped version of an inline image. I really wish ebook readers had the same capabilities and behaviors as a modern web browser.</p>\n\n<p>(I was not involved in the creation of the PDF version, but I imagine I’d find the limitations of the PDF format similarly frustrating.)</p>\n\n<h2>The Pricing</h2>\n\n<p>The Mountain Lion Kindle ebook is $4.99, which is the same as last year’s Lion ebook.  I considered a lower price, but Amazon’s ebook royalty system is definitely geared towards higher-priced (or maybe just smaller) ebooks.  Even at $4.99, more than half the purchase price is going to Amazon.  You can <a href=\"https://kdp.amazon.com/self-publishing/help?topicId=A29FL26OKE7R7B\">read Amazon’s pricing page</a> and do the math for yourself for a 7.5 MB Kindle ebook.</p>\n\n<p>At various times, people have asked me if I have <a href=\"https://flattr.com/profile/siracusa\">a flattr account</a> or something similar through which they can send me money.  It’s always felt weird to me for anyone to be sending me money “just because.”  I’m much more confortable creating something and then selling it to people who want it.  My Mountain Lion review provides just such an opportunity.</p>\n\n<p>Last year was the first year that Ars Technica tried selling ebook versions of my writing.  <a href=\"http://www.niemanlab.org/2011/07/ars-technica-cashes-in-on-the-siracusa-brand-and-word-count-with-a-kindle-edition-of-his-review/\">The results</a> certainly exceeded my expectations, but I didn’t get any part of the ebook profits.  This year, I will.</p>\n\n<p>So if you’re one of those people who has asked about sending money to thank me for <a href=\"http://arstechnica.com/author/john-siracusa/\">my writing</a>, <a href=\"http://5by5.tv/hypercritical\">my podcast</a>, or whatever, only to be rebuffed by my discomfort with receiving “<a href=\"http://www.youtube.com/watch?v=lAD6Obi7Cag\">money for nothing</a>,” now’s your chance to pay money for something: <a href=\"http://www.amazon.com/gp/product/B008OYE8O8/ref=as_li_ss_tl?ie=UTF8&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B008OYE8O8&amp;linkCode=as2&amp;tag=siracusa-20\">buy the Kindle ebook</a> or <a href=\"http://arstechnica.com/subscriptions/\">subscribe to Ars Premier</a> for a month or a year.</p>\n\n<h2>The Stats</h2>\n\n<ul>\n<li> 25,517 words.</li>\n<li> 167 images (31.6 MB)</li>\n<li> 371 original screenshots (252 MB)</li>\n<li> 10,339 words of research notes.</li>\n<li> 1,253 lines of Perl code across 10 scripts to generate three different formats from the canonical HTML source: Ars CMS, EPUB, and Kindle.\n<li> All three formats were generated 168 times (so far).\n<li> I saved the document 2,166 times while writing it in <a href=\"http://www.barebones.com/products/bbedit/\">BBEdit</a>.</li>\n<li> The article content was constantly backed up onto 6 different hard drives on three different Macs in two different locations (thanks to <a href=\"http://db.tt/KgXbHWr\">Dropbox</a>, <a href=\"http://arstechnica.com/apple/2007/10/mac-os-x-10-5/14/#time-machine\">Time Machine</a>, and <a href=\"http://www.shirt-pocket.com/SuperDuper/\">SuperDuper</a>), and pushed up to two different online backup services (<a href=\"http://www.backblaze.com/\">Backblaze</a> and <a href=\"http://www.crashplan.com/\">CrashPlan</a>).</li>\n<li> Applications used: <a href=\"http://www.barebones.com/products/bbedit/\">BBEdit</a>, <a href=\"http://www.nuance.com/for-individuals/by-product/dragon-for-mac/dragon-dictate/index.htm\">Dragon Dictate</a>, <a href=\"http://support.apple.com/kb/HT2523\">TextEdit</a>, <a href=\"http://simplenoteapp.com/\">Simplenote</a>, <a href=\"https://www.adobe.com/products/photoshopextended.html\">Photoshop CS6</a>, <a href=\"http://www.vmware.com/products/fusion/overview.html\">VMware Fusion</a>, <a href=\"http://iconfactory.com/software/xscope/\">xScope</a>, <a href=\"https://developer.apple.com/xcode/\">Xcode</a>, <a href=\"http://www.barebones.com/products/yojimbo/\">Yojimbo</a>.\n</ul>\n\n<h2>Highlights from the Future</h2>\n\n<p>In an earlier post, <a href=\"http://siracusa.tumblr.com/post/15138872275/highlights-from-2011\">Highlights from 2011</a>, I worried that the audience for <a href=\"http://arstechnica.com/author/john-siracusa/\">my brand of tech writing</a> was an ever-shrinking portion of a much larger, broader market.  I often feel the same way about my podcast, <a href=\"http://5by5.tv/hypercritical\">Hypercritical</a>—the third thing to share this name. (In order: <a href=\"http://arstechnica.com/staff/2009/05/hypercritical/\">2009</a>, <a href=\"http://siracusa.tumblr.com/post/376341247/meta-tumblr\">2010</a>, <a href=\"http://5by5.tv/hypercritical\">2011</a>.)</p>\n\n<p>But the web traffic and ebook sales from last year’s Lion review showed me that, at the very least, my audience is still growing in absolute numbers even as it may be shrinking as a percentage of the whole.  For that, I continue to be very grateful, and I hope this year turns out just as well.  Thanks to all of my fellow nerds for allowing me to continue to do this.</p>",
+         "date_published" : "2012-07-25T08:40:00-04:00",
+         "author" : {
+            "url" : "http://hypercritical.co",
+            "name" : "John Siracusa"
+         }
+      },
+      {
+         "title" : "Better Pasta",
+         "id" : "http://hypercritical.co/2012/02/15/better-pasta",
+         "url" : "http://hypercritical.co/2012/02/15/better-pasta",
+         "content_html" : "<p>I like pasta.  I’d like to help people make better pasta.  It pains me to think about all the poorly prepared pasta being served and eaten in America.  My advice will focus on plain old store-bought dried pasta.  Nothing fancy.  You’ve probably made some yourself.</p>\n\n<p>I’m specifically <i>not</i> talking about preparing or cooking fresh pasta, how to execute any particular pasta recipe, or why you should never, ever buy pasta sauce in a jar.  (You really shouldn’t, though.)  This is just about the basics: how to cook and serve dried pasta as part of some larger recipe, the details of which are out of scope, for now.\n\n<p>Here’s my advice, in no particular order.</p>\n\n<p><b>Do not overcook your pasta.</b></p>\n\n<p>Please, I beg you, do not overcook your pasta. Every time you serve a pile of starchy, gelatinous mush, an Italian grandmother sheds a single, silent tear.  Overcooking is <i>by far</i> the most common pasta sin in America.  (As evidence, consider that <a href=\"http://en.wikipedia.org/wiki/Olive_Garden\">Olive Garden</a>, the gold standard for incorrectly prepared Italian food, <a href=\"http://online.wsj.com/article/SB10001424052970204466004577102464033301888.html\">intentionally overcooks its pasta</a>.)</p>\n\n<p>These days, the cooking times on most boxes of dried pasta are in the ballpark, but there are exceptions.  Boxed macaroni and cheese and other “children’s” pasta products routinely have cooking times that should be cut in <i>half</i>.  But even in the best case, cooking times are just estimates.  The actual cooking time will depend on the temperature and humidity of your kitchen, the mass and thermal conductivity of your cookware, the power of your cooktop, and on and on.</p>\n\n<p>As you gain experience, you’ll be able to tell when pasta is ready by “feel” (with a pair of tongs or a stirring spoon).  But the old fashioned way is still the most reliable: taste a piece.  Drop the pasta in the boiling water (see the next section for more on that), set a timer for 1-2 minutes <i>less than</i> the time on the box of your trusted dried pasta brand, and start tasting when it goes off.</p>\n\n<p>There’s an old saying about cooking eggs: done in the pan, overdone on the plate.  The same goes for pasta.  It will continue to cook after you remove it from the pot, and even more so when you put it directly into another hot pan or combine it with other hot, moist ingredients.</p>\n\n<p>Dried pasta in hot water cooks from the outside in.  The very last part to be cooked is the part that’s the least accessible to the hot water (e.g., the “knot” in the middle of a <a href=\"http://en.wikipedia.org/wiki/Farfalle\">farfalle</a> bow tie).  Once the pasta is “cooked through,” meaning there’s no longer any trace of hard, dried pasta at the center, you’ve probably already waited too long to take it out of the water.</p>\n\n<p>Here’s a good heuristic for string-shaped pasta like spaghetti.  Fold the pasta back on itself and pinch it near the end, forming a small loop where it makes a u-turn.  If that loops closes easily and completely collapses on itself, leaving no hole at all, you’ve waited too long to remove it from the water.</p>\n\n<p>One last tip on cooking times.  Pasta with a lot of surface area (e.g., <a href=\"http://en.wikipedia.org/wiki/Rotini\">rotini</a>) cooks faster, and it also <i>overcooks</i> faster.  It can take only a few seconds to go from “just right” to “too late.”  Be aware of your pasta shape.  The more surface area, the smaller the margin for error.</p>\n\n<p>I’m going to continue to my next point, but cooking time will come up again.  If you learn only one thing from reading this, it should be that doneness is the most complicated, difficult, and important aspect of cooking pasta.</p>\n\n<p><b>Cook your pasta in a sufficient amount of boiling, salted water.</b></p>\n\n<p>How much is a “sufficient” amount?  A good rule of thumb is 4-6 quarts of water for each pound of dried pasta. (Most boxes of dried pasta are 1 pound.)  You can <a href=\"http://cooking.stackexchange.com/questions/6162/what-is-the-correct-water-to-pasta-ratio\">probably get away with</a> using <a href=\"http://www.nytimes.com/2009/02/25/dining/25curi.html?pagewanted=all\">less</a>, but I think that leads to a pot that feels too crowded.</p>\n\n<p>Fill your pot with cold water from the tap.  Hot water is more likely to pick up unpleasant stuff from the pipes.  Salt the water until it tastes like the ocean<sup id=\"fnref:1\"><a href=\"#fn:1\" rel=\"footnote\">1</a></sup>.  (If you don’t know what ocean water tastes like, please take a break now and find out.  This blog post will be here when you return.)  Nothing other than salt needs to be in the water.  Do not add oil.</p>\n\n<p>I’ve heard people say they add oil to the water to prevent the pasta from sticking to itself.  This is misguided on multiple levels.  First, the pasta will spend most of its time below the surface of the water, far from the oil which will all stay on the surface of the water.  Second, you want pasta’s natural, starchy surface to be exposed upon exiting the water so the pasta can absorb the flavorful ingredients you’re about to combine it with.  An oil coating would impair that.</p>\n\n<p>As with most kitchen myths, there is a kernel of truth behind the notion of oil in the pasta water:  pasta that sticks together is bad.  You do not want pasta to stick to other pieces of pasta, or to any part of the pot you’re boiling it in.  But the solution to this problem is simple: stir the pasta at a few key points during the cooking process.</p>\n\n<p>Stir right after you dump the pasta into the water.  Adding the pasta will decrease the temperature of the water, and may even take it off the boil.  This is fine, but it does mean that the bubbling action won’t be there to keep the pasta from settling to the bottom and sticking to itself or the hot surface of the pot.</p>\n\n<p>Stir again as the boil comes back, to confirm that the pieces really are all separate and not sticking to each other.  With any luck, the bubbles will keep everything moving and all the pieces of pasta separated for the rest of the cooking time.</p>\n\n<p> Long, stringy pasta shapes require the most stirring later in the cooking process because you can’t agitate them well until they become pliable, and at that point they may have been pressing up against their neighbor strands in hot water for a while.  Be vigilant.  If a few get away from you, tongs can help separate strands once the boil is rolling along again.</p>\n\n<p>(And please, do not break long, stringy pasta.  Cook and eat it at its natural length.  You’ll figure out the fork-twirling thing with a little practice.)</p>\n\n<p><b>Finish cooking your pasta in the sauce.</b></p>\n\n<p>Pasta should go directly from the hot water where it (mostly) cooked into a vessel where it will be combined with the rest of the ingredients in the finished dish.  It could be a traditional tomato sauce, olive oil with garlic, or a complicated multi-ingredient mixture.  Whatever it is, the pasta must <i>immediately</i> meet it.</p>\n\n<p>You should use a colander if it will take more than 15 seconds to fish out the pasta with tongs or other utensils.  Remember, it’s still cooking!  If you do use a colander, <i>do not rinse your pasta</i>.  Just think of the colander as a really large utensil for separating the pasta from the water and bringing it to its next vessel.</p>\n\n<p>When combining the pasta with the other ingredients, try to coat each and every piece of pasta.  If possible, undercook the pasta slightly (i.e., leave a tiny bit of uncooked dry pasta at the center) and really finish cooking it in the sauce.  This is most practical when combining a small amount of pasta with a sauce prepared in a very wide pan, preferably one that contains some liquid.  If liquid is lacking, a bit of the water that the pasta cooked in can be added.  (A splash of starchy pasta water is a common liquid thickener in many simple pasta recipes.)</p>\n\n<p><b>Sauce your pasta, but don’t over-sauce it.</b></p>\n\n<p>In case this doesn’t go without saying, if there’s a large volume of sauce, like a giant simmering pot of tomato sauce, don’t dump the pasta into it.  You will need some other pot or pan in which to mix the pasta and just the right amount of sauce.</p>\n\n<p>Once the hot water has been removed from it, the pot the pasta cooked in makes the perfect mixing vessel (and you won’t have to dirty another pot).  You may want to put a ladle full of sauce in the bottom of the pot before you dump the freshly drained pasta into it, lest a few pieces stick to the hot bottom.  Ladle in more sauce a bit at a time and mix until every piece of pasta is coated.</p>\n\n<p>It seems to be the inclination of Americans to put on too much sauce, so when in doubt, under-do it.  Sauce should touch every piece of pasta, but that doesn’t mean every piece should be covered with an opaque red coating.</p>\n\n<p>At the opposite end of the spectrum is the bowl of pale, virgin pasta with a giant mound of tomato sauce on top of it—a tasteless starch ball with a red hat.  This is almost as big a sin as overcooking (and is usually combined with it, naturally).</p>\n\n<p>Remember, sauce (or oil or whatever) must touch every piece.  You have to mix it in before serving.  Yes, even if you plan to provide more sauce on the side for people to add.  If you learn only two things from reading this, let the second be that you must never, ever serve a single piece of pasta that looks like it just came out of hot water and never touched another ingredient.</p>\n\n<p><b>Pasta should be served in warm bowls.</b></p>\n\n<p>If you plan to put the pasta in a large serving bowl, warm that bowl, and also warm all the individual bowls for each place setting.  The easiest way to warm bowls is to pour the hot pasta water into them.  If using a colander, line the bottom of your sink with bowls (stacking if necessary) and put the colander into one of them.  Then pour the pasta water into the bowls, ending by pouring the last of the water and the pasta itself into the colander.  If you have a fancy “warming drawer,” that works too.  But you’re going to have a bunch of hot water on hand anyway, so you might as well use it.</p>\n\n<p>This may all sound crazy—warm bowls? really?—but trust me, it makes a difference. Putting hot, freshly sauced pasta into a massive, cold, ceramic dish will instantly suck the life out of it.  Warm bowls.  Seriously.</p>\n\n<p><b>Serve and eat immediately.</b></p>\n\n<p>Baked pasta dishes are an exception; they almost always need to rest a while before serving.  But hot pasta mixed with sauce or other ingredients and not put into an oven must be served and eaten as soon as it’s ready.  This usually means that the pasta shouldn’t even be dropped into the hot water until everyone is in the process of coming to the table.  Some dishes can stand up to a few minutes on the table in a (warm) serving bowl, but the clock is ticking.</p>\n\n<p><b>Maintain perspective.</b></p>\n\n<p>If this all sounds pedantic and overwrought, well, it is.  But like anything else in cooking, it all becomes second nature if repeated enough times.  Just note your mistakes each time and try to do the opposite next time.</p>\n\n<p>I’m sure there are people reading this who have literally never undercooked pasta in their lives.  Try that next time.  See if you can intentionally undercook some pasta.  You may find it harder than you think.  Once you’ve done that, go back in the other direction.  Eventually, you’ll home in on “just right.”</p>\n\n<p>It’s often the case that the simpler the food, the more important the ingredients and the preparation techniques become.  This is true for eggs, and it’s definitely true for pasta.</p>\n\n<p>And speaking of ingredients, please do buy the best you can afford when making pasta dishes.  Dried pasta itself is incredibly inexpensive, and you shouldn’t be smothering it in sauce.  Spend your money on a little bit of good olive oil, fresh garlic, and real cheese.  Yes, <a href=\"http://www.google.com/search?q=parmigiano+reggiano\">parmigiano reggiano</a> is over $20 per pound these days, but a little goes a long way.  And when that freshly grated cheese hits the hot surface of that perfectly cooked pasta sitting in its warmed bowl, you’ll know it’s all been worth it.</p>\n\n<hr>\n\n<p><b>Bonus tip: pasta in soups.</b></p>\n\n<p>Many soup recipes include pasta: elbow macaroni, tiny stars, wide noodles, etc.  Pasta will overcook in soup just as easily as it will overcook in water.  To prevent this, cook the pasta ahead of time, undercooking it slightly.  After removing the pasta from the water, do something I just told you never to do: rinse the pasta in cold water to stop the cooking process, coat it in olive oil to prevent it from sticking to itself, then set it aside.</p>\n\n<p>When the time comes to serve the soup, add just the right amount of pasta to each individual bowl.  The (relatively) cool pasta will warm up quickly in the hot soup, and finish cooking through by the time the first bite is taken.  It will also help lower the temperature of the soup sightly, making it easier to eat with less blowing and potential tongue burning.</p>\n\n<div class=\"footnotes\">\n<hr>\n<ol>\n<li class=\"footnote\" id=\"fn:1\"><p>Well, not really.  The “salty as the ocean” rule works because most people under-salt their pasta water, and the right amount tastes like their memory of the sea.  For actual percentages, see <a href=\"http://www.seriouseats.com/2014/05/how-salty-should-pasta-water-be.html\">this article at seriouseats.com</a>. <a href=\"#fnref:1\" title=\"return to article\">↩</a></p>\n</li>\n</ol>\n</div>",
+         "date_modified" : "2014-05-16T15:03:21-04:00",
+         "date_published" : "2012-02-15T00:30:00-05:00",
+         "author" : {
+            "url" : "http://hypercritical.co",
+            "name" : "John Siracusa"
+         }
+      },
+      {
+         "date_modified" : "2012-01-07T15:32:00-05:00",
+         "content_html" : "<p>This past year was an eventful one for someone like me who has already passed most of the common milestones of adulthood (college, marriage, home ownership, children).  The highlights:</p>\n\n<ul>\n\n<li> <p>I started <a href=\"http://5by5.tv/hypercritical\">a weekly podcast</a> with <a href=\"http://5by5.tv/person/dan-benjamin\">Dan Benjamin</a>, named after this blog (which, in turn, was named after <a href=\"http://arstechnica.com/staff/fatbits/2009/05/hypercritical.ars\">something I wrote for Ars Technica</a> in 2009).  I’ve been amazed by the popularity of the show and the quality of the listener feedback and participation.  Special thanks to <a href=\"https://twitter.com/mutewinter\">Jeremy Mack</a>, creator of <a href=\"http://showbot.me/\">showbot.me</a>, and <a href=\"https://twitter.com/xuff/\">Justin Michael</a>, creator of <a href=\"http://5by5illustrated.com/\">5by5illustrated.com</a>.</p>\n\n<p>I’ve also become a devoted fan of several other podcasts on the 5by5 network, co-hosted by <a href=\"http://5by5.tv/person/dan-benjamin\">Dan Benjamin</a>: <a href=\"http://5by5.tv/b2w\">Back to Work</a> with <a href=\"http://www.merlinmann.com/\">Merlin Mann</a>, <a href=\"http://5by5.tv/buildanalyze\">Build and Analyze</a> with <a href=\"http://marco.org/\">Marco Arment</a>, <a href=\"http://5by5.tv/ia\">The Ihnatko Almanac</a> with <a href=\"http://ihnatko.com/\">Andy Ihnatko</a>, and <a href=\"http://5by5.tv/talkshow\">The Talk Show</a> with <a href=\"http://daringfireball.net\">John Gruber</a>.  And for dessert, <a href=\"http://www.merlinmann.com/roderick/\">Roderick on the Line</a> with <a href=\"http://en.wikipedia.org/wiki/John_Roderick_(musician)\">John Roderick</a> and <a href=\"http://www.merlinmann.com/\">Merlin Mann</a>.</p>\n</li>\n\n<li> <p>Though it started in 2010, <a href=\"http://5by5.tv/incomparable/\">The Incomparable</a>, a geek ensemble podcast on which I’m proud to be a semi-regular guest, really hit its stride in 2011, with some great episodes about Star Wars (ANH <a href=\"http://5by5.tv/incomparable/46\">part 1</a> and <a href=\"http://5by5.tv/incomparable/47\">part 2</a>; ESB <a href=\"http://5by5.tv/incomparable/67\">part 1</a> and <a href=\"http://5by5.tv/incomparable/68\">part 2</a>), Pixar (<a href=\"http://5by5.tv/incomparable/49\">part 1</a> and <a href=\"http://5by5.tv/incomparable/50\">part 2</a>), giant fantasy novels (<a href=\"http://www.theincomparable.com/2011/03/29-magic-fridge.html\">The Name of the Wind</a> and <a href=\"http://5by5.tv/incomparable/63\">The Wise Man’s Fear</a>), plus a <a href=\"http://5by5.tv/incomparable/36\">bushel</a> of <a href=\"http://5by5.tv/incomparable/45\">episodes</a> about <a href=\"http://5by5.tv/incomparable/56\">Dr. Who</a> and <a href=\"http://5by5.tv/incomparable/43\">other</a> <a href=\"http://5by5.tv/incomparable/20\">TV shows</a> and <a href=\"http://5by5.tv/incomparable/15\">movies</a>.</p>\n\n<p>I enjoy being on this podcast all out of proportion to the number of listeners it’s managed to gather.  If you have even a fraction of the fun listening as I do recording this show, you should definitely <a href=\"http://5by5.tv/incomparable/\">give it a try</a>.  (And if you’re already a listener, why not <a href=\"http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=388887532\">rate it or write a review in iTunes</a>?)</p></li>\n\n<li> <p>In June, I made my first trip to <a href=\"http://developer.apple.com/wwdc/\">WWDC</a> in San Francisco, which was also my first trip farther west than Colorado.  Ostensibly, I made the trip because I was afraid that Mac OS X 10.7 Lion would be released after WWDC but before Apple published videos of the sessions for non-attendees.  (I rely on the information presented at WWDC when writing my Mac OS X reviews for <a href=\"http://arstechnica.com/\">Ars Technica</a>.)  But really, going to WWDC is something I’d always wanted to do.</p>\n\n<p>The trip was expensive, and I had to take time off work to do it, but it was so worth it.  I saw what turned out to be Steve Jobs’s <a href=\"http://arstechnica.com/staff/fatbits/2011/10/steve-jobs-a-personal-remembrance.ars\">final</a> keynote presentation.  I met tons of people in person that I’d known for years online, and made several new friends.  I also got to talk to a handful of famous (well, “nerd famous”) people in the Apple community that I’d never imagined I’d ever have any contact with.  I refuse to name-drop them, lest it cheapen the experience (and no, sadly, Steve Jobs was not one of them), but the suffice it to say that it exceeded all my expectations.  I’m not sure when or if I’ll make it to WWDC again, but it’ll be extremely hard to top my first time.</p></li>\n\n<li> <p>Apple’s release of Mac OS X 10.7 Lion in July meant that my trip to WWDC was indeed a wise choice.  In the two years since <a href=\"http://arstechnica.com/apple/reviews/2009/08/mac-os-x-10-6.ars\">my last Mac OS X review at Ars Technica</a>, the site has grown tremendously.  <a href=\"http://arstechnica.com/tech-policy/news/2011/02/how-one-security-firm-tracked-anonymousand-paid-a-heavy-price.ars\">Amazing</a> <a href=\"http://arstechnica.com/tech-policy/news/2011/02/anonymous-speaks-the-inside-story-of-the-hbgary-hack.ars\">feature</a> <a href=\"http://arstechnica.com/tech-policy/news/2011/02/black-ops-how-hbgary-wrote-backdoors-and-rootkits-for-the-government.ars\">stories</a> on <a href=\"http://arstechnica.com/hardware/news/2011/09/ultrabook-intels-300-million-plan-to-beat-apple-at-its-own-game.ars\">all</a> <a href=\"http://arstechnica.com/gaming/reviews/2011/06/duke-nukem-forever-review-barely-playable-unfunny-and-rampantly-offensive.ars\">sorts</a> of <a href=\"http://arstechnica.com/gaming/news/2011/08/accuracy-takes-power-one-mans-3ghz-quest-to-build-a-perfect-snes-emulator.ars\">subjects</a> were pulling in huge traffic numbers, well beyond what my past Mac OS X reviews had drawn.  I worried that the audience for <a href=\"http://arstechnica.com/author/john-siracusa/\">my brand of tech writing</a> was no longer significant enough to matter.</p>\n\n<p>When <a href=\"http://arstechnica.com/apple/reviews/2011/07/mac-os-x-10-7.ars\">my Lion review</a> was published, I was grateful to be <a href=\"http://arstechnica.com/staff/upstairs/2011/12/the-most-popular-stories-of-2011-on-ars-technica.ars\">proven wrong</a>.  Thanks to everyone who continues to read what I write.  Thanks for indulging my idiosyncrasies and continuing to hold me to the same high standards that I demand of the things I write about.  And thanks to everyone at Ars for so many years of loyalty and for building an amazing publication that I’m proud to be even a small part of.</p></li>\n\n<li> <p>Steve Jobs died in October, and it affected me more than I’d expected it to.  I <a href=\"http://arstechnica.com/staff/fatbits/2011/10/steve-jobs-a-personal-remembrance.ars\">wrote about it on Ars</a>, <a href=\"http://5by5.tv/hypercritical/37\">talked about it on my podcast</a>, and still think about it pretty regularly.</p></li>\n\n</ul>\n\n<p>Some smaller 2011 milestones:</p>\n\n<ul>\n<li> <p>My seven-year-old son finished <a href=\"http://arstechnica.com/gaming/news/2010/11/masterpiece-ico.ars\">Ico</a>,  his first three Zelda games (<a href=\"http://en.wikipedia.org/wiki/Zelda_Wind_Waker\">Wind Waker</a>, <a href=\"http://en.wikipedia.org/wiki/Ocarina_of_time\">Ocarina of Time</a>, and <a href=\"http://en.wikipedia.org/wiki/Twilight_Princes\">Twilight Princess</a>) and is deep into his fourth (<a href=\"http://en.wikipedia.org/wiki/Skyward_sword\">Skyward Sword</a>), with only a little help from dad on the harder bosses.  His gaming education is coming along nicely.</p></li>\n\n<li> <p>Hardware upgrades: <a href=\"http://support.apple.com/kb/SP17\">MacBook Pro 15-inch</a> replaced with a <a href=\"http://support.apple.com/kb/SP631\">13-inch MacBook Air</a> and a <a href=\"http://support.apple.com/kb/SP642\">27\" Thunderbolt display</a>; <a href=\"http://support.apple.com/kb/SP594\">4th generation iPod touch</a> replaced with <a href=\"http://support.apple.com/kb/SP643\">an iPhone 4S</a>; <a href=\"http://www.dpreview.com/reviews/canons3is/\">Canon PowerShot S3-IS</a> replaced with a <a href=\"http://www.dpreview.com/reviews/CanonS100/\">Canon PowerShot S100</a>.  Hardware firsts: first SSD, first camera that can shoot RAW, first iPhone.  (Note: the iPhone is my wife’s, <a href=\"http://5by5.tv/hypercritical/6\">not mine</a>.)</p></li>\n\n<li> <p>I almost posted more than one thing to this blog.</p></li>\n</ul>",
+         "title" : "Highlights from 2011",
+         "id" : "http://hypercritical.co/2012/01/07/highlights-from-2011",
+         "url" : "http://hypercritical.co/2012/01/07/highlights-from-2011",
+         "author" : {
+            "name" : "John Siracusa",
+            "url" : "http://hypercritical.co"
+         },
+         "date_published" : "2012-01-07T15:32:00-05:00"
+      },
+      {
+         "title" : "Summer Movies: 1982",
+         "url" : "http://hypercritical.co/2011/01/02/summer-movies-1982",
+         "id" : "http://hypercritical.co/2011/01/02/summer-movies-1982",
+         "date_modified" : "2011-01-02T13:37:00-05:00",
+         "content_html" : "<p>The following movies were released in the summer of 1982.</p>\n\n<ul>\n<li> <a href=\"http://www.imdb.com/title/tt0084434/\">An Officer and a Gentleman</a></li>\n<li> <a href=\"http://www.imdb.com/title/tt0083564/\">Annie</a></li>\n<li> <a href=\"http://www.imdb.com/title/tt0083658/\">Blade Runner</a></li>\n<li> <a href=\"http://www.imdb.com/title/tt0082198/\">Conan the Barbarian</a></li>\n<li> <a href=\"http://www.imdb.com/title/tt0083866/\">E.T.: The Extra-Terrestrial</a>\n<li> <a href=\"http://www.imdb.com/title/tt0083929/\">Fast Times at Ridgemont High</a></li>\n<li> <a href=\"http://www.imdb.com/title/tt0083943/\">Firefox</a></li>\n<li> <a href=\"http://www.imdb.com/title/tt0084516/\">Poltergeist</a></li>\n<li> <a href=\"http://www.imdb.com/title/tt0084602/\">Rocky III</a></li>\n<li> <a href=\"http://www.imdb.com/title/tt0084726/\">Star Trek II: The Wrath of Khan</a></li>\n<li> <a href=\"http://www.imdb.com/title/tt0082694/\">The Road Warrior</a></li>\n<li> <a href=\"http://www.imdb.com/title/tt0084649/\">The Secret of NIMH</a></li>\n<li> <a href=\"http://www.imdb.com/title/tt0084787/\">The Thing</a></li>\n<li> <a href=\"http://www.imdb.com/title/tt0084827/\">Tron</a></li>\n</ul>\n\n<p>Is it just nostalgia, or does that lineup positively trounce any summer in recent memory?  What a perfect blend of popcorn summer blockbusters, kid-friendly films, and just plain great movies.  Can anyone find a summer that beats this one?</p>",
+         "date_published" : "2011-01-02T13:37:00-05:00",
+         "author" : {
+            "url" : "http://hypercritical.co",
+            "name" : "John Siracusa"
+         }
+      },
+      {
+         "author" : {
+            "url" : "http://hypercritical.co",
+            "name" : "John Siracusa"
+         },
+         "date_published" : "2010-08-08T16:01:00-04:00",
+         "content_html" : "<p>Here’s my brief entry in the speculation derby surrounding <a href=\"http://www.nytimes.com/2010/08/08/technology/08apple.html\">the departure of Mark Papermaster from Apple</a>.  <a href=\"http://daringfireball.net/linked/2010/08/07/papermaster\">Assuming</a> Papermaster is out at least partially due to the iPhone 4 antenna and not some completely unrelated matter, and <a href=\"http://daringfireball.net/2010/08/papermaster_damn_antenna\">assuming</a> Apple really did know about the iPhone 4’s antenna problems even before Papermaster was hired, it may seem strange or even unfair that he’s ended up as the fall guy.  I won’t comment on the fairness of the decision, but I can certainly imagine a scenario where his ouster is well within the expectations of a job as a high-level executive in a big corporation.</p>\n\n<p>Imagine the following events.  Papermaster is hired by Apple and put in charge of the iPhone 4 hardware.  He’s brought up to speed on the project, including the unique characteristics of the external antenna.  At some point later, a final decision has to be made on the design: go or no go?</p>\n\n<p>While it’s clear that the buck stops with Steve Jobs on all decisions at Apple, that doesn’t mean he <i>makes</i> all the decisions.  This is why Apple hires people like Mark Papermaster in the first place.  It’s reasonable to expect that Jobs would defer to <a href=\"http://www.nytimes.com/2008/11/04/technology/04iht-apple.4.17516602.html\">the guy he fought to hire</a> when it came to this question.  And so Jobs would ask Papermaster, is the design ready to go or not?  And what about that antenna touching issue?  Is that a big deal, or will most people not even notice?</p>\n\n<p>Now imagine that Papermaster tells Jobs that, yes, it’s a real limitation in the antenna design, but that the advantages&mdash;increased range and room for a bigger battery&mdash;more than make up for it.  Now imagine Jobs pushes further: “While you may feel that way, Mark, will the public agree?  Will this end up being an issue?”  And now suppose Papermaster says no, it won’t be an issue.</p>\n\n<p>Either implicitly or explicitly, Papermaster would be putting his reputation on the line.  This is what his job is all about: making decisions.  This particular decision is not about technology or manufacturing; it’s a judgement call about how the public (and press) will react to something.  But that’s part of his job too.  And the harder he fought for this particular decision, the more he’d have on the line when he turned out to be wrong.</p>\n\n<p>Anyway, like I said, this is all just speculation.  I really have no idea why Mark Papermaster left Apple.  But I find the scenario described above eminently plausible.  Furthermore, if it were true, I don’t think it would speak ill of Papermaster.  Executive management at this level is a high-stakes endeavor.  The rewards are big, but so are the risks&mdash;and no one can be right <a href=\"http://www.mac-history.net/the-history-of-the-apple-macintosh/showdown-at-apple-john-sculley-vs-steve-jobs\">all</a> <a href=\"http://en.wikipedia.org/wiki/G4_cube\">the time</a>.  If you’re the new guy and this is your first big call on the biggest project in the company, well, you can end up back in the job market much sooner than you expected. C’est la vie.</p>",
+         "date_modified" : "2010-08-08T16:01:00-04:00",
+         "title" : "Papermaster",
+         "url" : "http://hypercritical.co/2010/08/08/papermaster",
+         "id" : "http://hypercritical.co/2010/08/08/papermaster"
+      },
+      {
+         "author" : {
+            "name" : "John Siracusa",
+            "url" : "http://hypercritical.co"
+         },
+         "date_published" : "2010-04-11T11:20:00-04:00",
+         "date_modified" : "2010-04-11T11:20:00-04:00",
+         "content_html" : "<p>Many years ago, I recall talking with some of my Mac-nerd friends about how strange it was, after Apple’s near-death experiences of the late 1990s, to be living in a world where it’s just assumed that any tech luminary will mostly likely use a Mac.  A year or two later, Tim O’Reilly gave a name to this prognostication technique: <a href=\"http://oreilly.com/pub/a/mac/2002/05/14/oreilly_wwdc_keynote.html\">watching the “alpha geeks.”</a></p>\n\n<p>This trend of Mac adoption among alpha geeks was a sign of good things to come for Apple, and generally a bad sign for its competitors.  Today, <a href=\"http://en.wikipedia.org/wiki/James_Gosling\">James Gosling</a>’s <a href=\"http://nighthacks.com/roller/jag/entry/time_to_move_on\">departure</a> from the remains of Sun brought to mind a similar trend&mdash;one that’s not so good for Apple.</p>\n\n<p>These days, when a high-profile technical professional leaves his position at the company where he’s done his most important work, everyone’s first guess as to where he’ll end up is&hellip;well, do I really have to <a href=\"http://www.google.com/\">name the place</a>?  The point is, it’s not Apple.</p>\n\n<p>(This mostly applies to programmers and other engineers.  People on the more creative side of the technology world are <a href=\"http://hicksdesign.co.uk/journal/and-now-opera\">much harder to predict</a>.  But then, who can <a href=\"http://hicksdesign.co.uk/journal/moving-on\">truly fathom</a> the mind of an artist?)</p>\n\n<p>There are many trend lines that contribute to a company’s overall trajectory, and nearly all of Apple’s are still <a href=\"http://www.google.com/finance?chdnp=1&amp;chdd=1&amp;chds=1&amp;chdv=1&amp;chvs=maximized&amp;chdeh=0&amp;chfdeh=0&amp;chdet=1270998157208&amp;chddm=97750&amp;chls=IntervalBasedLine&amp;q=NASDAQ:AAPL&amp;ntsp=0\">pointing in the right direction</a>.  But the emergence of Google as a huge gravitational sink for engineering talent in the past five years has definitely put a kink in at least one those graphs.</p>",
+         "title" : "Black Hole Sun",
+         "url" : "http://hypercritical.co/2010/04/11/black-hole-sun",
+         "id" : "http://hypercritical.co/2010/04/11/black-hole-sun"
+      },
+      {
+         "author" : {
+            "name" : "John Siracusa",
+            "url" : "http://hypercritical.co"
+         },
+         "date_published" : "2010-03-15T12:35:00-04:00",
+         "content_html" : "<p><a href=\"http://www.amazon.com/gp/product/B0032KNA4I?ie=UTF8&amp;tag=siracusa-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B0032KNA4I\">2012</a> is an awful movie.  I knew this when I added it to my Netflix queue, but I wanted to stay up to date on the latest in computer-generated apocalyptic destruction.  I’m a fan of special effects in general and stories about the end of the world in particular.</p>\n\n<p>All the boxes were ticked: absurd “science,” impossible escapes, a nonsensical plan to save humanity, familial and romantic problems resolved during the crisis, unintentionally slapstick character deaths, etc.  What I didn’t expect was how upsetting it would be&mdash;which is to say, that it was upsetting <i>at all</i>.</p>\n\n<p>The most heartless, lizard-brained humans are pre-teen boys.  Teens and young adult men have usually built up a tough emotional core, but are generally too distracted by puberty to ever match the hardness of their unenlightened, toad-exploding youths.  As men age, they become progressively more sensitive.  The biggest spike (or dip?) in the graph occurs when a man becomes a father.</p>\n\n<p>In my experience, this manifests itself most noticeably in a reduced ability to enjoy any story where children are in peril.  And so it was for me with 2012.  As bad as the movie was, I was still bothered by the repeated use of children in danger as a dramatic device.  This, despite the fact that there is never any mystery about who will live and who will die in any given scene.  My brain understood, but my body still twinged.</p>\n\n<p>So let this be a lesson to you, young men.  You may feel tough now, and you may remain rational and intelligent your entire lives.  But you will age, and someday you may even become a father.  When you do, watch out.  You too&mdash;yes, even you, you, and <i>you</i>&mdash;will someday become an unintentional victim of your own emotions.  (A “mush,” as I’ve heard it called.)</p>\n\n<h3>It’s Not You, It’s Me</h3>\n\n<p>I always ponder this situation when I see a movie or read a book.  It seems to me that our ability to enjoy a story depends on our personal experiences to a degree that people don’t want to consider.  For example, a common occurrence on this Internet of ours is to encounter an impassioned screed condemning some work of fiction as offensive.  Like clockwork, this is followed by a retaliatory condemnation of the offended party as “too sensitive” or “crazy.”  The phrase “give me a break” is featured.</p>\n\n<p>The overall point that the inherent worth of a work of art is not determined by the bad reactions of a few people is pretty solid.  But the glib denigration of the offended party is definitely on shaky ground.  The unfortunate truth is that, through no fault of the artist or the viewer, entire avenues of entertainment can be closed off by life experiences.</p>\n\n<p>If your wife died in a car accident, you may find yourself unable to enjoy movies that feature car crashes.  If you had an abusive parent, you may be upset by any scene where a parent yells at a child.  And yes, if you simply have one or more happy, healthy children, you may not even be able to smirk your way through a comically bad disaster movie which happens to feature children.</p>\n\n<p>None of this has to reach the level of trauma (e.g., a veteran being unable to watch war movies).  In fact, it’s most insidious when it’s much less dramatic, just a mild pin-prick of discomfort happening entirely outside&mdash;and often in opposition to&mdash;your conscious mind.</p>\n\n<p>And is this the fault of the artist?  Is the comedy <i>actually</i> less funny because there’s a gag involving turbulence on an airplane?  And on the other side, can you really blame the viewer?  I say no on all counts, as long as everyone involved has a clear head about the situation.  For the viewer, that means no blanket denunciation of a work of art based solely on your own unexamined emotional reaction.  For the artist, that means understanding that some people will be legitimately upset by your creation for reasons beyond your ability to predict or control.</p>\n\n<p>So yeah, thumbs down on 2012, but not because I’m a father of two and a giant mush.  It’s bad for all the usual reasons a movie is bad: script, story, characters, etc.  Maybe if you don’t have kids, you can appreciate it as a <a href=\"http://www.flophousepodcast.com/\">\"good ‘bad movie.’\"</a>  Maybe.</p>\n\n<p>Finally, lest you young men get depressed about your inevitable futures as wussy old(er) men, there is actually an upside.  A <i>good</i> movie that happens to intersect with your newly altered emotional landscape can be made all the more better by the interaction.  For example, I enjoyed reading <a href=\"http://www.amazon.com/gp/product/0307387895?ie=UTF8&amp;tag=siracusa-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0307387895\">The Road</a>, which is a much more intense story of the apocalypse and a child in danger than 2012.  Here’s hoping <a href=\"http://www.amazon.com/gp/product/B001FB563E?ie=UTF8&amp;tag=siracusa-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B001FB563E%22\">the movie adaptation</a> doesn’t suck.</p>",
+         "date_modified" : "2013-02-05T19:47:24-05:00",
+         "title" : "No Movie for Old Men",
+         "url" : "http://hypercritical.co/2010/03/15/no-movie-for-old-men",
+         "id" : "http://hypercritical.co/2010/03/15/no-movie-for-old-men"
+      },
+      {
+         "content_html" : "<p>I’ve never considered Obama a very good speaker.  It may be because he speaks slowly and pauses a lot, all of which drives my fast-talking-Italian-New-York-native-self up a wall.  Whatever the reason, my low opinion of his speaking ability meant that I was willing to believe that the <a href=\"http://www.politico.com/news/stories/0309/19663.html\">Obama teleprompter gibes</a> could very well be indicative of a real problem.  Those jokes fed my fear that Obama lacked substance, that he was just a pretty voice able to dazzle people (though not me, apparently) with speeches he didn’t write or fully understand.</p>\n\n<p>That fear was put to rest by Obama’s <a href=\"http://www.suntimes.com/news/politics/obama/2019396,obama-republicans-house-conference-012910.article\">recent performance in front of a gathering of Republicans</a>.  No teleprompter, no questions received ahead of time, no softballs.  I was amazed at how well he did when I read the transcript.  When I watched the video, I still didn’t like his delivery (maybe I should have watched it at 1.5x) but it’s good to know that our president has a brain in his head.</p>\n\n<p>That’s what was important to me regarding the teleprompter issue, and that’s why I care little about what Sarah Palin does unless it changes my existing opinion of her.  Learning that <a href=\"http://www.youtube.com/watch?v=CtcVMTZkTZQ\">she wrote notes on her hand</a> before a speech doesn’t do that, and it sure as hell has no effect on what I think Obama’s use of the teleprompter does or doesn’t signify, regardless of which situation <a href=\"http://corner.nationalreview.com/post/?q=ODU3YzkwMGYxZGY1NGQ2OTZiZWZhMWIzOTNkZTU1ZWE=\">is more likely to resonate</a> with the <a href=\"http://www.slate.com/id/2243797/\">American people</a>.</p>",
+         "date_modified" : "2010-02-07T14:04:00-05:00",
+         "id" : "http://hypercritical.co/2010/02/07/obamas-teleprompter",
+         "url" : "http://hypercritical.co/2010/02/07/obamas-teleprompter",
+         "title" : "Obama’s Teleprompter",
+         "author" : {
+            "url" : "http://hypercritical.co",
+            "name" : "John Siracusa"
+         },
+         "date_published" : "2010-02-07T14:04:00-05:00"
+      }
+   ],
+   "feed_url" : "http://hypercritical.co/feeds/main"
+}
feeds/inessential.com.json view
@@ -1,156 +1,156 @@-{-  "version": "https://jsonfeed.org/version/1",-  "title": "inessential.com",-  "description": "Brent Simmons’s weblog.",-  "home_page_url": "http://inessential.com/",-  "feed_url": "http://inessential.com/feed.json",-  "user_comment": "This feed allows you to read the posts from this site in any feed reader that supports the JSON Feed format. To add this feed to your reader, copy the following URL — http://inessential.com/feed.json — and add it your reader.",-  "favicon": "http://inessential.com/favicon.ico",-  "author": {-    "name": "Brent Simmons",-    "url": "http://inessential.com/",-    "avatar": "http://ranchero.com/downloads/brent_avatar.png"-  },-  "items": [-    {-      "id": "http://inessential.com/2017/05/17/json_feed",-      "url": "http://inessential.com/2017/05/17/json_feed",-      "title": "JSON Feed",-      "content_html": "<p>I was hesitant, even up to this morning, to publish the <a href=\"https://jsonfeed.org/version/1\">JSON Feed spec</a>.</p>\n\n<p>If you read Dave Winer’s <a href=\"http://scripting.com/2017/05/09/rulesForStandardsmakers.html\">Rules for standards-makers</a>, you’ll see that we did a decent job with some of the rules — the spec is written in plain English, for example — but a strict application of the rules would have meant not publishing at all, since “Fewer formats is better.”</p>\n\n<p>I agree completely — but I also believe that developers (particularly Mac and iOS developers, the group I know best) are so loath to work with XML that they won’t even consider building software that needs an XML parser. Which says to me that JSON Feed is needed for the survival of syndication.</p>\n\n<p>I could be wrong, of course. I admit.</p>\n\n<h4>Feed Reader Starter Kit</h4>\n\n<p>See my <a href=\"https://github.com/brentsimmons/RSXML\">RSXML repository</a> for Objective-C code that reads RSS, Atom, and OPML. I’ve done the work for you of supporting those formats. Go write a feed reader! Seriously. Do it.</p>\n\n<p>I planned to have a JSON Feed parser for Swift done for today, but other things got in the way. It’s coming soon. But you probably don’t actually need any sample code, since JSON is so easy to handle.</p>\n\n<h4>Feedback so far</h4>\n\n<p>Feedback has been interesting so far. Some <a href=\"https://github.com/brentsimmons/JSONFeed\">questions</a> on the GitHub repo need answering.</p>\n\n<p>Some people have said this should have happened ten years ago, and other people have said that they hate how developers jump on the latest fad (JSON).</p>\n\n<p>And some people really like the icon:</p>\n\n<p><img src=\"http://jsonfeed.org/graphics/icon.png\" height=70 width=70 /></p>\n\n<h4>Microformats</h4>\n\n<p>One of the more serious criticisms was this: why not just support the <a href=\"http://microformats.org/wiki/hatom\">hAtom microformat</a> instead? Why do another side-file?</p>\n\n<p>My thinking:</p>\n\n<p>My experience as a feed reader author tells me that people screw up XML, badly, all the time — and they do even less well with HTML. So embedding info in HTML is just plain too difficult. In practice it would be even buggier than XML-based feeds.</p>\n\n<p>And there are other advantages to decoupling: a side-file can have 100 entries where there are only 10 on an HTML page, for instance. A side-file can have extra information that you wouldn’t put on an HTML page. And yet, despite the extra information, a side-file can be much smaller than an HTML page, and it can often be easier to cache (since it’s not different based on a logged-in user, for instance).</p>\n\n<p>Microformats sounds elegant, but I don’t prize elegance as much as I value things that work well.</p>",-      "date_published": "2017-05-17T13:22:14-07:00"-    },-    {-      "id": "http://inessential.com/2017/05/01/frontier_diary_8_when_worlds_collide",-      "url": "http://inessential.com/2017/05/01/frontier_diary_8_when_worlds_collide",-      "title": "Frontier Diary #8: When Worlds Collide",-      "content_html": "<p>I spent the weekend making a bunch of progress on the compiler. It has two pieces: a <a href=\"https://github.com/brentsimmons/Frontier/blob/master/UserTalk/UserTalk/Compiler/Tokenizer.swift\">tokenizer</a>, which I created by rewriting the original C code (<a href=\"https://github.com/brentsimmons/Frontier/blob/master/FrontierOrigFork/Common/source/langscan.c\">langscan.c</a>) in Swift, and a parser.</p>\n\n<p>The parser in OrigFrontier was generated by MacYacc, which is similar to Yacc, which is similar to <a href=\"https://www.gnu.org/software/bison/\">Bison</a>, which is on my Mac. The thing about the parser is that it’s C code, and the rest of the app is Swift.</p>\n\n<p>How do you bridge the two worlds? Easy answer: with Objective-C, which is a superset of C and which plays nicely (enough) with Swift.</p>\n\n<p>So I renamed langparser.y — the rules file that the parser generator uses — to <a href=\"https://github.com/brentsimmons/Frontier/blob/master/UserTalk/UserTalk/Compiler/langparser.ym\">langparser.ym</a> so that Xcode would know to treat the generated parser source as Objective-C. I edited it slightly, not to change the grammar rules but to change how nodes are created (as return values rather than via inout).</p>\n\n<p>I also made my <a href=\"https://github.com/brentsimmons/Frontier/blob/master/UserTalk/UserTalk/CodeTreeNode.swift\">CodeTreeNode</a> class, written in Swift, an Objective-C class so that it would be visible to my Objective-C code.</p>\n\n<p>And then, finally, I started a build…</p>\n\n<p>…and then it stopped with an error because the parser places my <code>CodeTreeNode</code> in a C union, which isn’t allowed in ARC.</p>\n\n<p>Crushed.</p>\n\n<p style=\"text-align:center\">* * *</p>\n\n\n<p>I think I have three options:</p>\n\n<ol>\n<li>Go down the rabbit hole of figuring out how to get the parser to work with ARC.</li>\n<li>Go with the flow: have the parser generate nodes that are, as in OrigFrontier, C structs. The last compilation step would be Objective-C code that translates that tree of C structs into a tree of <code>CodeTreeNode</code> objects, and then disposes the C-struct-node-tree.</li>\n<li>Write the parser by hand, in Swift.</li>\n</ol>\n\n\n<p>My thinking:</p>\n\n<p>I could waste a ton of time on #1, and bending tools in that way can be pretty frustrating work when they refuse to bend.</p>\n\n<p>With #2 I’d feel a bit weird about the redundancy: building a tree and then building a copy of that tree with a different type of object.</p>\n\n<p>My heart tells me #3 is the answer. After all, I’ve already done the tokenizer. How hard would it be to parse those tokens into a code tree? I could skip C and Objective-C altogether and stay in Swift. And it would be <em>so fun</em>. (Because that’s precisely the style of weirdo I am.)</p>\n\n<p style=\"text-align:center\">* * *</p>\n\n\n<p>But the real answer is #2. Writing a parser by hand would take way longer than I think. Given enough tests, it shouldn’t be a huge source of bugs, but still.</p>\n\n<p>The thing about #2 is that yes, it’s redundant, it’s doing more work than it needs to, ideally — but my bet is that it would still be so fast that you wouldn’t be able to tell the difference. Computers are so good at this kind of thing. It’s not like reading files or networking; it’s just in-memory traversal and creating/releasing things.</p>\n\n<p>You remember in Indiana Jones that guy with the twirling swords, and Indy gives that look and then just shoots him? The second option is the Indiana Jones solution.</p>\n\n<p><i>Update 2:05 pm</i>: Two people have already written me to recommend <a href=\"http://www.antlr.org\">ANTLR</a>. So I will definitely give that a look. It might be exactly what I need.</p>",-      "date_published": "2017-05-01T13:34:23-07:00"-    },-    {-      "id": "http://inessential.com/2017/04/27/frontier_diary_7_pretty_much_everythin",-      "url": "http://inessential.com/2017/04/27/frontier_diary_7_pretty_much_everythin",-      "title": "Frontier Diary #7: Pretty Much Everything Throws",-      "content_html": "<p>A script can throw an error, either intentionally (via the <code>scriptError</code> verb) or by doing something, such as referencing an undefined object, that generates an error.</p>\n\n<p>OrigFrontier was written in C, which has no error-throwing mechanism, and so it worked like this: most runtime functions returned a boolean (for success or failure), and the return value was passed in by reference. If there was an error, the function would set a global error variable and return false. The caller would then have to check that global to see if there was an error, and then do the right thing.</p>\n\n<p>This was not unreasonable, given the language and the times (early ’90s) and also given the need to be very careful about unwinding memory allocations.</p>\n\n<p>But, these days, it seems to me that Swift’s error system is the way to go. There’s just one downside to that, and it’s that I have to do that do/try/catch dance all over the place, since pretty much any runtime function can throw an error.</p>\n\n<p>Even the coercions can throw, so last night I changed the <a href=\"https://github.com/brentsimmons/Frontier/blob/master/FrontierData/FrontierData/Value/ValueProtocol.swift\">Value</a> protocol so that <code>asInt</code> and so on are now functions, since properties can’t throw (at least not yet).</p>\n\n<p>The extra housekeeping — the do/try/catch stuff — kind of bugs me, but it’s honest. I considered making script errors just another type of Value — but that meant that all those callers have to check the returned Value to see if it’s an error, and then do the right thing. Better to just use Swift’s error system, because it makes for more consistent code, and it makes sure I’m catching errors in every case.</p>\n\n<p>It also means I’m not multiplying entities. A Swift error is a script error, and vice versa.</p>\n\n<p style=\"text-align:center\">* * *</p>\n\n\n<p>Working on this code is like applying the last 25 years of programming history all at once.</p>\n\n<p>A completely different type of error is a <em>bug</em>, and I’m certain to write a bunch of them, because that’s how programming goes.</p>\n\n<p>That’s where unit tests come in. Frontier has long had a stress-test suite of scripts — you’d launch the app, run that suite, wait a while, and see if there are any errors. This was critically helpful.</p>\n\n<p>But OrigFontier didn’t have unit tests at the C code level. The new version does. (Well, <a href=\"https://github.com/brentsimmons/Frontier/blob/master/FrontierVerbs/FrontierVerbsTests/Math.swift\">I’ve started them anyway</a>.) This means I can more easily follow <a href=\"http://scripting.com/2002/09/29.html#rule1\">Rule 1</a> — the no-breakage rule — and can also more easily follow Rule 1b — the don’t-break-Dave rule.</p>\n\n<p>PS I’ve added a <a href=\"http://inessential.com/frontierdiary\">collection page for the Frontier Diary</a>, as I did with earlier diaries. There’s a link to it in the footer of every page on the blog.</p>",-      "date_published": "2017-04-27T13:30:42-07:00"-    },-    {-      "id": "http://inessential.com/2017/04/26/frontier_diary_6_ballard_from_the_par",-      "url": "http://inessential.com/2017/04/26/frontier_diary_6_ballard_from_the_par",-      "title": "Frontier Diary #6: Ballard, from the Parallel Universe",-      "content_html": "<p>In another universe I didn’t decide to port Frontier — instead, I started over from scratch on an app <em>inspired</em> by Frontier.</p>\n\n<p>In that universe, the new scripting language, descended from UserTalk, is called Ballard. <a href=\"http://inessential.com/ballard_lang\">And it’s documented</a>.</p>",-      "date_published": "2017-04-26T13:04:04-07:00"-    },-    {-      "id": "http://inessential.com/2017/04/25/my_microblog",-      "url": "http://inessential.com/2017/04/25/my_microblog",-      "title": "My Microblog",-      "content_html": "<p>I’m on Manton‘s cool new microblogs system. Here’s where you can follow me, once you’re on the system: <a href=\"http://micro.blog/brentsimmons\">http://micro.blog/brentsimmons</a>.</p>\n\n<p>And here’s my microblog: <a href=\"http://brent.micro.blog/\">http://brent.micro.blog/</a>. (Which you can read using RSS, whether you’re on the system or not.)</p>\n\n<p>I wrote about three-quarters of my own single-user microblog system — and then stopped because I didn’t feel like running a server and because Manton’s service is so good.</p>",-      "date_published": "2017-04-25T14:27:28-07:00"-    },-    {-      "id": "http://inessential.com/2017/04/25/frontier_diary_5_values_and_progress_o",-      "url": "http://inessential.com/2017/04/25/frontier_diary_5_values_and_progress_o",-      "title": "Frontier Diary #5: Values and Progress on the Language",-      "content_html": "<p>I put the <a href=\"https://github.com/brentsimmons/Frontier\">Frontier repository</a> up on GitHub.</p>\n\n<p>(The build is currently broken. This is bad discipline, but since it’s still just me, I forgive myself. Sometimes I run out of time and I just commit what I have.)</p>\n\n<p>The repo has my new code and it also contains <a href=\"https://github.com/brentsimmons/Frontier/tree/master/FrontierOrigFork\">FrontierOrigFork</a>, which is the original Frontier source with a bunch of deletions and some changes. The point is to give me 1) code to read and 2) a project that builds and runs on <a href=\"http://inessential.com/2017/04/03/frontier_diary_1_vm_life\">my 10.6.8 virtual machine</a>.</p>\n\n<p>The original code is in C, and the port is, at least so far, all in Swift. In the end it should be <em>almost</em> all in Swift, but I anticipate a couple places where I may need to use Objective-C.</p>\n\n<p>Here’s one of the Swift wins:</p>\n\n<h4>Values</h4>\n\n<p>Since Frontier contains a database and scripting language, there’s a need for some kind of value object that could be a boolean, integer, string, date, and so on.</p>\n\n<p>Original Frontier used a <a href=\"https://github.com/brentsimmons/Frontier/blob/master/FrontierOrigFork/Common/headers/lang.h\">tyvaluedata</a> union, with fields for the various types of values.</p>\n\n<p>This is a perfectly reasonably approach in C. It’s great because you can pass the same type of value object everywhere.</p>\n\n<p>Were I writing this in Objective-C, however, I’d create a <code>Value</code> protocol, and then create new value objects for some types and also extend existing objects (<code>NSNumber</code>, <code>NSString</code>, etc.) to conform to the <code>Value</code> protocol. This would still give me the upside — passing a <code>Value</code> type everywhere — while reducing the amount of boxing.</p>\n\n<p>But: this still means I have an <code>NSNumber</code> when I really want a BOOL. Luckily, in Swift I can go one better: I can extend types such as <a href=\"https://github.com/brentsimmons/Frontier/blob/master/FrontierData/FrontierData/Value/ValueBool.swift\">Bool</a> and <code>Int</code> to conform to a <a href=\"https://github.com/brentsimmons/Frontier/blob/master/FrontierData/FrontierData/Value/ValueProtocol.swift\">Value</a> protocol.</p>\n\n<p>This means passing around an <em>actual</em> <code>Bool</code> rather than a boxed boolean. I like this a ton. It feels totally right.</p>\n\n<p>Other topic:</p>\n\n<h4>Language Progress</h4>\n\n<p>I’m still in architectural mode, where I’m writing just enough code to validate and refine my decisions. A couple days ago I started on the <a href=\"https://github.com/brentsimmons/Frontier/blob/master/UserTalk/UserTalk/LangEvaluator.swift\">language evaluator</a> — the thing that actually runs scripts.</p>\n\n<p>It works as you expect: it takes a compiled code tree and recursively evaluates it. It’s not difficult — it’s just that it’s going to end up being a fair amount of code.</p>\n\n<p>I’ve done just enough to know that I’m on the right path. (The Swift code looks a lot like the C code in OrigFrontier’s <a href=\"https://github.com/brentsimmons/Frontier/blob/master/FrontierOrigFork/Common/source/langevaluate.c\">langevaluate.c</a>. See <code>evaluateList</code>, for instance.)</p>\n\n<p>The next step is for me to build the parser. I thought about writing a parser by hand, because it sounds like fun, and it would give me some extra control — but, really, it would slow me way down, so forget it.</p>\n\n<p>OrigFrontier generated its parser by passing a grammar file — <a href=\"https://github.com/brentsimmons/Frontier/blob/master/FrontierOrigFork/Common/source/langparser.y\">langparser.y</a> — to MacYacc (there was such a thing!), which generated <a href=\"https://github.com/brentsimmons/Frontier/blob/master/FrontierOrigFork/Common/source/langparser.c\">langparser.c</a>.</p>\n\n<p>I’ll do a similar thing, except using <a href=\"https://www.gnu.org/software/bison/\">Bison</a> (which is compatible with Yacc). Or, possibly, using the <a href=\"http://www.hwaci.com/sw/lemon/\">Lemon parser generator</a> instead. Either way, I’ll want the generated code to be Objective-C. (Well, mostly C, but with Objective-C objects instead of structs.) (I don’t know of a generator that would create Swift code.)</p>\n\n<p>This is completely new territory for me, and is exciting.</p>\n\n<p>(Almost forgot to mention: I’ll need to write a tokenizer. This means porting <a href=\"https://github.com/brentsimmons/Frontier/blob/master/FrontierOrigFork/Common/source/langscan.c\">langscan.c</a>. I’ll need to do this first, since the parser generator needs it. So this is the real next step.)</p>",-      "date_published": "2017-04-25T13:26:33-07:00"-    },-    {-      "id": "http://inessential.com/2017/04/14/save_300_on_coccoaconf_next_door",-      "url": "http://inessential.com/2017/04/14/save_300_on_coccoaconf_next_door",-      "title": "Save $300 on CocoaConf Next Door",-      "content_html": "<p>My pals at CocoaConf asked me to remind you that the <a href=\"https://twitter.com/cocoaconf/status/852898192035282944\">Early Bird sale ends in two weeks</a> for CocoaConf Next Door — the one taking place in San Jose during WWDC.</p>\n\n<p>I’ll be there. At least in the afternoons.</p>\n\n<p>Check out the <a href=\"http://cocoaconf.com/nextdoor/speakers\">speakers list</a>. Yummy, chewy, nutty speakers list.</p>",-      "date_published": "2017-04-14T13:53:02-07:00"-    },-    {-      "id": "http://inessential.com/2017/04/14/frontier_diary_4_the_quickdraw_problem",-      "url": "http://inessential.com/2017/04/14/frontier_diary_4_the_quickdraw_problem",-      "title": "Frontier Diary #4: The QuickDraw Problem and Where It Led Me",-      "content_html": "<p>In my fork of Frontier there are still over 600 deprecation warnings. A whole bunch of these are due to <a href=\"https://en.wikipedia.org/wiki/QuickDraw\">QuickDraw</a> calls.</p>\n\n<p>For those who don’t know: QuickDraw was how, in the old days, you drew things to the Mac’s screen. It was amazing for its time and pretty easy to work with. Functions included things like <code>MoveTo</code>, <code>LineTo</code>, <code>DrawLine</code>, <code>FrameOval</code>, and so on. All pretty straightforward.</p>\n\n<p>These days we have Core Graphics instead, and we have higher-level things like <code>NSBezierPath</code>. QuickDraw was simpler — though yes, sure, that was partly because it did less.</p>\n\n<p style=\"text-align:center\">* * *</p>\n\n\n<p>I was looking at all these deprecation warnings for QuickDraw functions and wondering how I’m ever going to get through them.</p>\n\n<p>I could, after all, convert all or most of them to the equivalent Core Graphics thing. But sheesh, what a bunch of work.</p>\n\n<p>And, in the end, it would still be a Carbon app, but with modern drawing.</p>\n\n<p style=\"text-align:center\">* * *</p>\n\n\n<p>So I thought about it from another angle. The goal is to get to the point where it’s a 64-bit Cocoa app. All these QuickDraw calls are in the service of UI — so why not just start over with a Cocoa UI?</p>\n\n<p>The app has some outlines (database browser, script editor, etc.), a basic text editor, and a handful of small dialogs. <em>And all of that is super-easy in Cocoa.</em></p>\n\n<p>Use an <code>NSOutlineView</code>, <code>NSTextView</code>, and some xibs for the dialogs, and we’re done. (Well, after <em>some</em> work, but not nearly the same amount of work as actually writing an outliner from scratch.)</p>\n\n<p>In other words, instead of going from the bottom up — porting the existing source code — I decided to start from the top down.</p>\n\n<p>I started a new workspace and started a new Frontier project: a Cocoa app with Swift as the default language.</p>\n\n<p>Then I looked at the existing source and thought about how to organize things. I came up with this:</p>\n\n<ul>\n<li>Frontier — App UI</li>\n<li>UserTalk.framework — the language</li>\n<li>FrontierVerbs.framework - the standard library</li>\n<li>FrontierDB.framework — the object database</li>\n<li>FrontierCore.framework — common utility functions and extensions</li>\n</ul>\n\n\n<p>I like using frameworks, because it helps enforce separation, and it helps in doing unit testing. And frameworks are so easy with Swift these days.</p>\n\n<p>Hardly any of this is filled-in yet. I’ve got the barest start on FrontierVerbs. <a href=\"https://twitter.com/tedchoward\">Ted Howard</a>, my partner in all this, is taking UserTalk.framework and FrontierDB.framework.</p>\n\n<p>In the end, it’s possible that no code from the original code base survives. Which is totally fine. But it also means that this is no quick project.</p>\n\n<p>At this point I should probably put it up on GitHub, since it’s easier to write about it if I can link to the code. I’ll do that soon, possibly on the weekend.</p>",-      "date_published": "2017-04-14T13:14:20-07:00"-    },-    {-      "id": "http://inessential.com/2017/04/13/frontier_diary_3_built-in_verbs_config",-      "url": "http://inessential.com/2017/04/13/frontier_diary_3_built-in_verbs_config",-      "title": "Frontier Diary #3: Built-in Verbs Configuration",-      "content_html": "<p>Frontier’s standard library is known as its built-in verbs. There are a number of different tables: <code>file</code>, <code>clock</code>, <code>xml</code>, and so on. Each contains a number of verbs: <code>file.readWholeFile</code>, <code>clock.now</code>, and so on.</p>\n\n<p>Most of these verbs are implemented in C, in the kernel, rather than as scripts. At the moment, to add one of these kernel verbs, you have to jump through a few hoops: edit a resource, add an integer ID, add to a switch statement, etc. It’s a pain and is error-prone.</p>\n\n<p>So I want to re-do this in Swift, because I’m all about Swift. And I want adding verbs to be fool-proof: I don’t want to remember how to configure this every single time I add a verb. Adding a verb needs to be <em>easy</em>.</p>\n\n<p>My thinking:</p>\n\n<ul>\n<li>Give each table its own class: ClockVerbs, FileVerbs, etc.</li>\n<li>Have each class report the names of the verbs it supports. These need to be strings, because we get a string at runtime.</li>\n<li>Run a verb simply by looking up the selector, performing it, and returning the result.</li>\n</ul>\n\n\n<p>To make things easy and obvious, I think it should work like this: the selector for a given verb is its name plus a parameter. Then there’s not even a lookup step.</p>\n\n<p>Each verb will take a VerbParameters object and return a VerbResult object.</p>\n\n<pre><code>dynamic func readWholeFile(_ params: VerbParameters) -&gt; VerbResult\n</code></pre>\n\n<p>The flow goes like this:</p>\n\n<ol>\n<li>We have the string <code>file.readWholeFile</code>.</li>\n<li>We see the <code>file</code> suffix and so we know we need a <code>FileVerbs</code> object.</li>\n<li>We check <code>fileVerbs.supportedVerbs</code> (an array) to see if <code>readWholeFile</code> is in the list. It is.</li>\n<li>We construct a selector using the <code>readWholeFile</code> part of the string and we add a <code>:</code> character: <code>NSSelectorFromString(verbName + \":\")</code></li>\n</ol>\n\n\n<p>This is great! We’re almost home free. Then we run the verb:</p>\n\n<pre><code>if let result = perform(selector, with: params) as? VerbResult {\n    return result\n}\n</code></pre>\n\n<p>That doesn’t work. We get:</p>\n\n<pre><code>Cast from 'Unmanaged&lt;AnyObject&gt;! to unrelated type 'VerbResult' always fails\n</code></pre>\n\n<p>Nuts.</p>\n\n<p style=\"text-align:center\">* * *</p>\n\n\n<p>It was <em>so</em> close.</p>\n\n<p>In Objective-C this would have worked. And obviously, apparently, I still think in Objective-C.</p>\n\n<p>I investigated some other options. At one point enums were abused, because there’s <em>always</em>, in Swift, an enum-abuse step. But everything I tried was more code and was more error-prone, and my goal here is to improve the situation.</p>\n\n<p>I think, in the end, I’m going to do something that looks kind of ugly: a switch statement where the cases are string literals.</p>\n\n<pre><code>switch(verbName) {\ncase \"readWholeFile\":\n    return readWholeFile(params)\n…\n}\n</code></pre>\n\n<p>“Nooooo!” you cry. I hear ya.</p>\n\n<p>My experience as an object-oriented programmer tells me this: if I write a <code>switch</code> statement, I blew it.</p>\n\n<p>And my experience as a programmer tells me that string literals are a bad idea.</p>\n\n<p>But the above may actually be the easiest to configure and maintain. Each string literal appears only in that one switch statement and nowhere else in the code. And the mapping between a verb name and its function couldn’t be more clear — it’s right there.</p>\n\n<p>(Yes, instead of using a string literal, I could create a String enum and switch on that. But that’s actually more code and more room for error. I’m going to have to type those string literals <em>somewhere</em>, so why not right where they’re used?)</p>\n\n<p>It does mean that <code>readWholeFile</code> appears three times in the code (the string literal, the call, and the function itself), and in an Objective-C version it would appear only twice (in a <code>supportedVerbs</code> array and the method itself).</p>\n\n<p>But. Well.</p>\n\n<p>I’m torn between shuddering in abject and complete horror at this solution and thinking, “Hey, that’s pretty straightforward. Anybody could read it. Anybody could edit it.” Which was the plan all along.</p>\n\n<p>And I get to stick with Swift, so there’s that.</p>\n\n<p>But, sure as shootin’, some day someone’s going to come across this code and say, “Brent, dude, are ya <em>new</em>?” And I’ll send them the link to this page.</p>\n\n<p style=\"text-align:center\">* * *</p>\n\n\n<p><i>Update the next day:</i> well, the <code>performSelector</code> thing <em>would</em> work, if only I’d known about Swift Unmanaged objects.</p>\n\n<p><a href=\"https://twitter.com/jckarter\">Joe Groff</a> told me how this works.</p>\n\n<p>Here’s the gist: the <code>Unmanaged&lt;AnyObject&gt;</code> just needs to be unwrapped by calling <code>takeRetainedValue</code> or <code>takeUnretainedValue</code>. Once unwrapped, it can be cast to <code>VerbResult</code>.</p>\n\n<p>All this means that I can use my original design, which is great news.</p>\n\n<p style=\"text-align:center\">* * *</p>\n\n\n<p><i>Update April 25, 2017:</i> I ended up using enums after all. See <a href=\"https://github.com/brentsimmons/Frontier/blob/master/FrontierVerbs/FrontierVerbs/VerbTables/MathVerbs.swift\">MathVerbs.swift</a> for an example.</p>",-      "date_published": "2017-04-13T22:25:41-07:00"-    },-    {-      "id": "http://inessential.com/2017/04/11/frontier_diary_2_two_good_ideas_that_a",-      "url": "http://inessential.com/2017/04/11/frontier_diary_2_two_good_ideas_that_a",-      "title": "Frontier Diary #2: Two Good Ideas that Aren’t Good Anymore",-      "content_html": "<p>Strings in <a href=\"http://inessential.com/2017/04/03/frontier_diary_1_vm_life\">Frontier</a> are usually either Pascal strings or Handles.</p>\n\n<p>You probably don’t know what I’m talking about. I’ll explain.</p>\n\n<h4>Pascal Strings</h4>\n\n<p>Frontier is a Mac Toolbox app that’s been Carbonized just enough to run on OS X. You may recall that the Mac Toolbox was written so long ago that the <a href=\"https://developer.apple.com/legacy/library/documentation/mac/pdf/MacintoshToolboxEssentials.pdf\">original API</a> was in Pascal. That Pascal heritage lived on in many ways, even after everyone switched to C — and one of those ways was Pascal strings.</p>\n\n<p>A Pascal string is n bytes long, and the first byte specifies the length of the string, which leaves the rest of the bytes for the actual string. <code>Str255</code> was probably most common, and certainly is most common in Frontier, but there are also smaller sizes: <code>Str63</code> and <code>Str31</code>, for instance.</p>\n\n<p>Unlike C strings, they’re not zero-terminated, since there’s no need to calculate the length: you always know it from that first byte.</p>\n\n<p>You create a literal Pascal string like this…</p>\n\n<pre><code>Str255 s = \"\\pThis is a string\";\n</code></pre>\n\n<p>…and the compiler turns the <code>\\p</code> into the correct length (16 in this case).</p>\n\n<p>Now, I bet you’re saying to yourself, “Self, those Pascal strings are too small to be useful.”</p>\n\n<p>But consider this: every menu item name can fit into a Pascal string. You can fit a window title or a file name into a Pascal string (in fact, memory suggests that file names were even shorter, were <code>Str31</code> Pascal strings). Any label or message on any bit of UI is probably short enough to fit into a Pascal string. (Especially if you assume English.)</p>\n\n<p>So for GUI apps these were terrifically useful, and the 255-byte limit was no problem. (You can fit a tweet in a Pascal string, after all, with a bunch of room left over. [Well, depending on the size of the characters.])</p>\n\n<p>Frontier still uses them internally a ton. (For some reason, in the Frontier code, <code>Str255</code> strings are called <code>bigstring</code>, which sounds ironic, since they’re so small, but I think it was to differentiate them from even smaller Pascal strings such as <code>Str31</code>.)</p>\n\n<p>You might ask what the text encoding was for these strings.</p>\n\n<p>“Text whatzit?” I’d reply. “Oh, I see. Just regular.” (<a href=\"https://en.wikipedia.org/wiki/Mac_OS_Roman\">MacRoman</a>.)</p>\n\n<p>It was a good idea, but its time has come and gone. We have better strings these days.</p>\n\n<h4>Handles</h4>\n\n<p>Frontier includes a scripting language and a database, which means it certainly has a need for strings much larger than 255 bytes.</p>\n\n<p>It also needs heap storage for other things — binary data, structs, etc. — that could be much larger than 255 bytes.</p>\n\n<p>Enter the Handle. A Handle points to a pointer <em>that might move</em>: the memory you access via a Handle is <em>relocatable</em>.</p>\n\n<p>Which sounds awful, I know, but it was a smart optimization in the days when your Mac’s memory would be a single-digit number of megabytes, or even less than that.</p>\n\n<p>Here’s the problem: your application’s heap space can become fragmented. It could have a whole bunch of gaps in it after a while. So, to regain that memory, the system could compact the heap — it would remove those gaps, which means relocating the memory pointed to via a Handle.</p>\n\n<p>This is better than running out of memory, obviously. But it means that you have to be careful when dereferencing a Handle: you have to actually lock it first — <code>HLock(h)</code> — so that it can’t be moved while you’re using it. (And then you unlock it — <code>HUnlock(h)</code> — when finished.)</p>\n\n<p>Handles are also resizable — <code>SetHandleSize(h, size)</code> — and resizing a Handle can result in it needing to move, if there’s not enough space where it is. Or other Handles might move. You don’t ever know, and don’t care, and you think this is elegant because the system handles it all for you.</p>\n\n<p>All you have to deal with is an additional level of indirection (<code>**h</code> instead of <code>*p</code>), locking and unlocking it when needed, and disposing of it — <code>DisposeHandle(h)</code> — when finished. (No, there’s no reference counting, slacker.)</p>\n\n<p>Nowadays, on OS X, Handles don’t ever move and there’s no heap compaction. So there’s no reason for them whatsoever. And they are, as expected, deprecated.</p>\n\n<p>Nevertheless, Frontier, a Mac Toolbox app written in C, uses Handles everywhere.</p>\n\n<p>(I remember being shocked, when I first started learning Cocoa 15 years ago, that there were no Handles. It seemed <em>incredibly</em> daring that objects were just pointers. It made me nervous!)</p>\n\n<h4>The Size of the Job</h4>\n\n<p>Almost all the Mac APIs that Frontier uses are deprecated. That’s one thing.</p>\n\n<p>But it’s worse than just that: the ways Frontier handles strings and <em>pretty much every single thing it stores on the heap</em> are also deprecated.</p>\n\n<p>So: what to do?</p>\n\n<p>The end goal is a Cocoa app, which means I’ll be able to use Foundation, CoreFoundation, and Swift data types: NSString and Swift String, for instance. There are a number of different structs in the code, and those will be turned into Objective-C and Swift objects and Swift structs.</p>\n\n<p>The tricky part, though, is getting from here to there. I think the first step is to start with Objective-C and Foundation types and use them where possible. I can do that without actually turning it into a Cocoa app (the app will still have its own WaitNextEvent event loop and Carbon windows) — which means I’ll have to bracket all Objective-C code in autorelease pools, and I’ll have to use manual retains and releases. I’m not sure how far that will get me, but it will get me closer.</p>\n\n<p>PS Here are a couple articles by Gwynne Raskind on the Mac Toolbox you might enjoy: <a href=\"https://mikeash.com/pyblog/friday-qa-2012-01-13-the-mac-toolbox.html\">Friday Q&amp;A 2012-01-13: The Mac Toolbox</a> and <a href=\"https://mikeash.com/pyblog/the-mac-toolbox-followup.html\">The Mac Toolbox: Followup</a>.</p>",-      "date_published": "2017-04-11T13:01:55-07:00"-    },-    {-      "id": "http://inessential.com/2017/04/05/two_little-known_and_completely_unrelate",-      "url": "http://inessential.com/2017/04/05/two_little-known_and_completely_unrelate",-      "title": "Two Little-Known and Completely Unrelated Facts",-      "content_html": "<p>One. <a href=\"https://www.omnigroup.com/omnioutliner\">OmniOutliner</a>’s outline view is implemented as CALayers rather than as a view with subviews. (I don’t think I’m giving away a trade secret here.)</p>\n\n<p>Two. If you eat fenugreek, your <a href=\"https://www.theatlantic.com/health/archive/2010/06/the-mystery-of-the-maple-syrup-smell/57980/\">armpits will smell like maple syrup</a>.</p>",-      "date_published": "2017-04-05T16:57:59-07:00"-    },-    {-      "id": "http://inessential.com/2017/04/05/ios_javascript_and_object_hierarchies",-      "url": "http://inessential.com/2017/04/05/ios_javascript_and_object_hierarchies",-      "title": "iOS, JavaScript, and Object Hierarchies",-      "content_html": "<p><a href=\"http://iam.fahrni.me/2017/03/25/scripting-ios/\">Rob Fahrni</a>:</p>\n\n<blockquote><p>Given x-callback-url and App URL schemes in general it would be extremely cool to use those to create object hierarchies using JavaScript. Why JavaScript? Well, it’s native to iOS and applications can use the runtime.</p></blockquote>",-      "date_published": "2017-04-05T14:53:01-07:00"-    },-    {-      "id": "http://inessential.com/2017/04/05/cocoaconf_near_wwdc",-      "url": "http://inessential.com/2017/04/05/cocoaconf_near_wwdc",-      "title": "CocoaConf Near WWDC",-      "content_html": "<p>There are a bunch of things happening near WWDC this year. Me, I’ll be at <a href=\"http://cocoaconf.com/blog/nextdoor\">CocoaConf Next Door</a>. I’m not preparing a talk, but I’ll probably be on a panel. And hanging out.</p>\n\n<p>Check out the <a href=\"http://cocoaconf.com/nextdoor/speakers\">speakers list</a>, which includes Omni’s own <a href=\"http://cocoaconf.com/nextdoor/speakers/162\">Liz Marley</a>. And a bunch of other people you totally want to see — Manton Reece, Jean MacDonald, Laura Savino, and plenty more.</p>\n\n<p>Also… <a href=\"http://altconf.com/\">AltConf</a> and <a href=\"https://layers.is/\">Layers</a> will be near WWDC. If you could be in three places at once, you would. Well, four, including WWDC itself, I suppose. :)</p>",-      "date_published": "2017-04-05T14:35:05-07:00"-    },-    {-      "id": "http://inessential.com/2017/04/05/omnioutliner_5_0_for_mac",-      "url": "http://inessential.com/2017/04/05/omnioutliner_5_0_for_mac",-      "title": "OmniOutliner 5.0 for Mac",-      "content_html": "<p>I’ve been on the OmniOutliner team for over a year now. Though we don’t have positions like junior and senior developer, I enjoy calling myself the junior developer on the Outliner team, since I’m newest.</p>\n\n<p>I may be a new developer, but I’m not a new user — I’ve been using the app since the days when OmniOutliner 3 came installed on every Mac.</p>\n\n<p>Every time I start a talk, I outline it first. I organize the work I need to do in my side-project apps in OmniOutliner. And — don’t tell the OmniFocus guys, who are literally right here — sometimes I even use it for to-do management in general. I’d be lost without a great outliner.</p>\n\n<p>Anyway… <a href=\"https://www.omnigroup.com/blog/omnioutliner-5-is-now-available\">there’s a new version: OmniOutliner 5.0</a>. It’s my first dot-oh release at Omni, and I’m proud of it and proud of the team.</p>\n\n<p>As is common with our apps, we have two levels: a regular level and a Pro level. The regular level is called “Essentials” and is just $9.99. There’s a demo so you can try it out first.</p>\n\n<p>It syncs with iOS and with other Macs, by the way. Sync is free. And of course it comes with extensive documentation, and Omni’s awesome support humans are standing by.</p>\n\n<p><a href=\"https://www.omnigroup.com/omnioutliner/\">Get it while it’s hot</a>!</p>",-      "date_published": "2017-04-05T10:44:45-07:00"-    },-    {-      "id": "http://inessential.com/2017/04/03/frontier_diary_1_vm_life",-      "url": "http://inessential.com/2017/04/03/frontier_diary_1_vm_life",-      "title": "Frontier Diary #1: VM Life",-      "content_html": "<p>It’s been years since I could build the <a href=\"http://frontierkernel.org\">Frontier kernel</a> — but I finally got it building.</p>\n\n<p>It’s really a ’90s Mac app that’s been Carbonized just enough to run on MacOS, but it’s by no means modern: it uses QuickDraw and early Carbon APIs. It’s written entirely in C.</p>\n\n<p>I got it building by installing MacOS 10.6.8 Server in VMWare. Installed Xcode 3.2.6. And now, finally, I can build and run it.</p>\n\n<h4>What is Frontier?</h4>\n\n<p>Frontier — as some of you know — was a UserLand Software product in the ’90s and 2000s. I worked there for about six years.</p>\n\n<p>The app is a development environment and runtime: a persistent, hierarchical database with a scripting language and a GUI for browsing and editing the database and for writing, debugging, and running scripts.</p>\n\n<p>The <a href=\"http://scripting.com/frontier/snippets/nerdsguide.html\">Nerd’s Guide to Frontier</a> gives some idea of what it’s like, though it was written before many of the later advances.</p>\n\n<p>Maybe you’ve never heard of it. But here’s the thing: it was in Frontier that the following were either invented or popularized and fleshed-out: scripted and templated websites, weblogs, hosted weblogs, web services over http, RSS, RSS readers, and OPML. (And things I’m forgetting.)</p>\n\n<p>Those innovations were due to the person — <a href=\"http://scripting.com/\">Dave Winer</a> — and to the times, the relatively early web days. But they were also in part due to the tool: Frontier was a fantastic tool for implementing and iterating quickly.</p>\n\n<h4>The Goal</h4>\n\n<p>The high-level goal is to make that tool available again, because I think we need it.</p>\n\n<p>The plan is to turn it into a modern Mac app, a 64-bit Cocoa app, and then add new features that make sense these days. (There are so many!) But that first step is a big one.</p>\n\n<p>The first part of the first step is simple, and it’s where I am now: mass deletions of code. Every reference to THINK_C and MPWC has to go. All references to the 68K and PPC versions must go. There was a Windows port, and all that code is getting tossed. And then I’ll see the scale of what needs to be done.</p>\n\n<p>(Note: my repo is a fork, and it’s not even on the web yet. The code I’m deleting is never really gone.)</p>\n\n<p>I’m doing a blog diary on it because it helps keep me focused. Otherwise I’m jumping around on my side projects. But if I have to write about it, then I’ll stay on target.</p>",-      "date_published": "2017-04-03T13:44:34-07:00"-    },-    {-      "id": "http://inessential.com/2017/03/31/the_goal",-      "url": "http://inessential.com/2017/03/31/the_goal",-      "title": "The Goal",-      "content_html": "<p>The goal isn’t specifically impeachment and conviction. It’s for Trump to leave office.</p>\n\n<p>The stretch goal is that he dies broke and in prison.</p>\n\n<p>But we could settle for him going down in history as our worst President, as the worst person ever to become President, with the name Trump held in less esteem than that of Benedict Arnold, with Trumpism — that pseudo-populist white nationalism for the benefit of the super-rich — thoroughly loathed and seen for the brutish scam that it is.</p>\n\n<p>I think there comes a point before an actual trial in the Senate where Republican leaders — in Congress, in the Cabinet, wherever — realize that Trump can no longer govern, and they tell him so and urge him to resign.</p>\n\n<p>And I think he actually does resign at that point. He’s been through bankruptcy, and he’s shown that when there’s no path to winning, he’ll take the easiest route out of the situation, the route that leaves him the most status. He doesn’t have the stick-to-it-iveness to go to trial in the Senate: he’d quit.</p>\n\n<p>I don’t know what it will take to bring Republican leaders to this point. Their ongoing cowardice is the real scandal — when faced with a threat to our democracy, they play along because they’re hoping for some goodies.</p>\n\n<p>I don’t think they get to this point unless the public gets to this point, and so I look to the approval polls. If it gets below 30%, it’s probably there because of further revelations in the Russia affair, and it’s probably at the point where even cowards feel safe in doing the right thing — even if only to save their own necks, which will need saving.</p>\n\n<p>But right now Speaker Ryan won’t even replace Devin Nunes as chair of the house intelligence committee. So there’s still a long way to go.</p>",-      "date_published": "2017-03-31T13:47:44-07:00"-    },-    {-      "id": "http://inessential.com/2017/03/25/my_cocoaconf_yosemite_2017_talk",-      "url": "http://inessential.com/2017/03/25/my_cocoaconf_yosemite_2017_talk",-      "title": "My CocoaConf Yosemite 2017 Talk",-      "content_html": "<p><a href=\"http://cocoaconf.com/yosemite\">Yosemite 2017</a> was so great. It always is.</p>\n\n<p>Below is the rough draft of my first-night talk. A few notes…</p>\n\n<p>The actual spoken version is probably not even close to the text, which was written before any rehearsal, and of course it’s never my intent to memorize it exactly.</p>\n\n<p>The bit with Laura Savino was a quick three-chord rock medley. We both played acoustic guitar and sang. It went like this:</p>\n\n<p>B: Louie Louie, oh baby, we gotta go<br />\nL: Yeah yeah yeah yeah yeah<br />\nB: Louie Louie, oh baby, we gotta go<br />\nL: Yeah yeah yeah yeah yeah<br />\nB: I live on an apartment on the 99th floor of my block<br />\nL: Hang on Sloopy, Sloopy hang on<br />\nB: I look out my window imagining the world has stopped</br />\nL: Hang on Sloopy, Sloopy hang on<br />\n[Slight change of chords]<br />\nB &amp; L: Teenage wasteland, oh yeah, only teenage wasteland [repeated]</p>\n\n<p>Here’s my <a href=\"https://www.youtube.com/watch?v=RzBz7p0A3-Y\">favorite video for Brimful of Asha</a>.</p>\n\n<p>During the Squirrel Picture interlude (slide #3) I told the <a href=\"http://inessential.com/2001/06/07/2001_06_07\">Squirrel Story</a>, which wasn’t planned or recently rehearsed, but I’ve told it often enough that it didn’t really need rehearsal.</p>\n\n<p>I dedicated the performance of Hallelujah to <a href=\"https://twitter.com/dori\">Dori Smith</a>.</p>\n\n<p>The talk was meant to be about 20 minutes long. Afterward I went around the room with a microphone and each person introduced themselves. (The talk’s job is to be a first-night ice-breaker talk.)</p>\n\n<p>I spent about 10 hours on rehearsal for those 20 minutes.</p>\n\n<p>Here’s the talk:</p>\n\n<h4>Slide #1: Three Chord Rock</h4>\n\n<p>Hi. I’m Brent.</p>\n\n<p>Before I get started — seeing my friend Brad Ellis reminded me of the most rock-n-roll moment of my life. Where’s Brad? Hi Brad. Anyway — I was at a party at my friend Chris’s house, and he let me borrow his guitar and do a sing-along. I think we did White Rabbit and Me and Bobby McGee and Hotel California.</p>\n\n<p>Well, here’s the problem — I have a hard time hanging on to a guitar pick. Especially after a few beers. So at one point the pick goes flying, and I’m strumming with my fingers.</p>\n\n<p>But I had a hangnail, and it got a bit aggravated as I was strumming. At the end I noticed that there was my actual blood on the guitar. I felt bad about it, but Chris was gracious, of course, and I thought that right then: that’s rock and roll.</p>\n\n<p>You can use this as metaphor. Bleeding? Keep right on playing. Maybe you won’t even notice that you’re bleeding, at least not until you stop.</p>\n\n<p>Chris told me later that the guitar cleaned up fine, so all was well.</p>\n\n<p>Okay. On to the actual talk…</p>\n\n<p>I bet most of you have heard the phrase “three chord rock n roll.” Or have heard that “rock is so great because you only need three chords.”</p>\n\n<p>What you may not realize is that it’s even easier than that: it’s three specific chords. Always the same three chords.</p>\n\n<p>They might be in any key but they’re the first, fourth, and fifth. In the key of C, the first is C, the fourth is F, and the fifth is G. In the key of A it’s A, D, and E.</p>\n\n<p>And when a song <em>does</em> have more than those three chords, it has at least those three chords. They’re the foundation for almost all pop and rock.</p>\n\n<p>One part of music is building tension and then resolving it. I’ll demonstrate on guitar.</p>\n\n<p>[On guitar] Play the first .... and you’re fine. You’re home. Play the fourth .... and there’s a little tension. Not a ton, but some. But you want to go back to the first, to home.</p>\n\n<p>Then play the fifth ... and you have maximum tension. You definitely want to go back home to the first.</p>\n\n<p>So with those three chords you have everything you need to write a thousand songs.</p>\n\n<p>Now for a little demo, I’d like to invite Laura Savino up to help me out.</p>\n\n<p>[music]</p>\n\n<p>Thanks, Laura!</p>\n\n<p>SO LET ME MAKE TWO POINTS VERY CLEAR.</p>\n\n<ol>\n<li><p>ONE. If you’re writing apps or a website or doing a podcast or whatever — if you’re just starting out and only know the equivalent of three chords, don’t worry — you can create a masterpiece with just three chords.</p></li>\n<li><p>TWO. If you do know more than three chords, you might want to consider just using those three chords anyway. People <em>love</em> those three chords. They’re appealing. They’re accessible and intimate. They work.</p></li>\n</ol>\n\n\n<h4>Slide #2: “Brimful of Asha“ by Cornershop, Asha Bhosle, and You</h4>\n\n<p>One of my personal favorite three-chord-rock songs came out in the mid-90s. Brimful of Asha by Cornershop.</p>\n\n<p>Who here knows this song?</p>\n\n<p>Let me explain what it’s about:</p>\n\n<p>Asha Bhosle sang songs for Bollywood musicals. The actresses would lip-sync, but it was her singing. She did this for over a thousand movies. Over 12,000 songs.</p>\n\n<p>Some of those songs would be released as singles. Years ago a single would come out on vinyl, as a 45. A 45 is smaller than a regular album, and it has one song on each side. The number 45 means 45 revolutions-per-minute — you’d have to set your turntable to 45 instead of the usual 33 1/3. So: a 45 is a single.</p>\n\n<p>So here’s a little bit from the song:</p>\n\n<p>[There’s dancing, behind movie screens…]</p>\n\n<p>I <em>love</em> that image. That Asha is not just singing but <em>dancing</em> as she’s singing. We never see her dancing, but that joy and engagement shows up in her performance.</p>\n\n<p>And so this song is about hope. It’s about how a song can bring some consolation and hope when people need it.</p>\n\n<p>And her name Asha actually <em>means</em> hope. Brimful of Asha — brimful of hope.</p>\n\n<p>HERE’S MY POINT.</p>\n\n<p>We're in the same business. People form an emotional connection to whatever we’re making. The things we make can bring hope to other people. Knowing that, it’s our job to be as engaged and joyful as she is as we make our things. Maybe we’re not literally dancing, but it should be the metaphorical equivalent.</p>\n\n<h4>Slide #3: Squirrel Picture</h4>\n\n<p>Squirrel!</p>\n\n<p>When I was a kid we went to a Methodist church. I haven’t been to church hardly at all since I was a kid, but I remember one cool thing from church services: the minister would pause and ask people to shake hands with the people around them.</p>\n\n<p>So here are the rules. Tell people to have a good conference, and shake hands with at least one person from another table. Stand up!</p>\n\n<h4>Slide #4: “Hallelujah” by Leonard Cohen, with Singing by James Dempsey</h4>\n\n<p>A few weeks ago I found myself in a hotel bar with a bunch of other nerds. I also found a piano. If there’s a piano, I’m going to play it. So I talked a few people — James Dempsey, Jean McDonald, Curt Clifton, and Jim Correia, into singing some songs.</p>\n\n<p>I forget who suggested Hallelujah. Might have been James. I didn’t know it very well, but I did my best. James sang, and he was awesome.</p>\n\n<p>So when I was thinking about this talk, I was thinking of doing the most beautiful possible thing I could do. So I remembered James singing this song.</p>\n\n<p>I may not be religious, but I think it’s plain that there is awesome magnificence greater than anything any human could make. It’s right outside.</p>\n\n<p>I’m not sure bears feel humble at the sight of these mountains; I’m not sure birds are awed at the vistas they fly over.</p>\n\n<p>But we do. Humans do. And knowing that we can’t measure up, it doesn’t stop us. Intead, we’re <em>inspired</em>.</p>\n\n<p>So here’s what I love about Hallelujah. It’s about trying and failing, and loving and losing — and singing Hallelujah anyway. In Cohen’s words, it may be a broken Hallelujah, but it’s still on our lips.</p>\n\n<p>James Dempsey please report to the stage.</p>\n\n<p>Everybody is encouraged to sing along. Especially to the chorus.</p>\n\n<p>[Hallelujah]</p>\n\n<h4>Slide #5: Picture of my cat Papa</h4>\n\n<p>I’m going to go around the room and have everyone introduce themselves. RULE: if anyone can’t hear, yell out.</p>",-      "date_published": "2017-03-25T11:55:21-07:00"-    },-    {-      "id": "http://inessential.com/2017/03/07/thems_thats_got_shall_get",-      "url": "http://inessential.com/2017/03/07/thems_thats_got_shall_get",-      "title": "Them That’s Got Shall Get",-      "content_html": "<p>I try — earnestly, with good faith — to understand the Republican ideologies.</p>\n\n<p>And I think I’ve figured out one of them: they want to make life harder for poor people so that they have more incentive to become rich, and they want to make life better for rich people to reward success, since it <em>should</em> be rewarded, and since doing so provides even more incentive for poor people to become rich.</p>\n\n<p>If you look at it just the right way, you can see it’s not entirely wrong. If the government made material life pretty sweet for everybody, then some people wouldn’t bother to work to earn a living. <em>I</em> wouldn’t bother — I’d just make software and give it away for free.</p>\n\n<p>If the government made life semi-sweet — well, anybody who wants the full sweet would want a job. But some people would be fine with semi-sweet, and they wouldn’t work.</p>\n\n<p>I think that’s where Republicans stand: they think the government has made life semi-sweet, enough so that a bunch of people just <em>take</em> and don’t work. Republicans think: we need to give them an incentive to work.</p>\n\n<p>This explains the health care bill: it takes from the poor, who need incentives to work, and gives to the wealthy, who need rewards for their success. (So the Republicans think.)</p>\n\n<p style=\"text-align:center\">* * *</p>\n\n\n<p>It’s as if the Republicans have no realistic conception of what it’s like to be poor. The choice isn’t <a href=\"http://www.politico.com/story/2017/03/jason-chaffetz-new-gop-health-care-plan-235762\">between health care and an iPhone</a>, as one Republican suggested — it’s between food and rent, or worse, and forget health care and iPhones entirely.</p>\n\n<p>I was “poor” in my very early 20s. I put that in quotes because I was never in danger of starving or becoming homeless — my parents would have helped me. (They did plenty, in fact.)</p>\n\n<p>But still, even this small experience gives me some insight. I remember buying generic macaroni and cheese because I literally didn’t have enough money for Kraft. And forget hot dogs. And forget vegetables.</p>\n\n<p>I don’t mean that I had some money lying around that I’d put aside; I mean that I had a few dollars to last a week, and if I bought Kraft, which was a few dimes more, I would run out of money before the week was over.</p>\n\n<p>(My bank had a $5 minimum balance for my account. I could withdraw as little as $5 — and in those days ATMs were free — but that would have meant having more than $10 in my account to get that $5. I got so angry because I had, as I recall, $6.91 but couldn’t get at it. I remember thinking that another $5 would change my life.)</p>\n\n<p>I’m not complaining about this, or saying that I had things particularly tough. Not at all.</p>\n\n<p>I’m saying that if you take that experience, and take away any possibility of help from family, and then stretch it out for years and decades — with the inevitable issues, health and otherwise, that happen to everybody — then you have a life where getting ahead is really, really difficult. I can’t imagine; I can only try.</p>\n\n<p>But it’s no semi-sweet life. Not even close.</p>",-      "date_published": "2017-03-07T18:29:27-08:00"-    },-    {-      "id": "http://inessential.com/2017/02/23/dont_be_scared_if_you_have_to_get_an_mr",-      "url": "http://inessential.com/2017/02/23/dont_be_scared_if_you_have_to_get_an_mr",-      "title": "Don’t Be Scared If You Have to Get an MRI",-      "content_html": "<p>“Totally normal,” said my neurologist of the results of the MRI on my head. No worries.</p>\n\n<p>I was afraid to get an MRI in the first place.</p>\n\n<p>I got a crown last week, and that didn’t worry me — it’s my ninth. Breathe the gas and just chill for a while. No big deal. It’s almost sad when it’s over.</p>\n\n<p>But I was afraid to get the MRI, because I’m slightly claustrophobic, and all I knew was that they’d put me in a big tube and then walk away.</p>\n\n<h4>How It Went</h4>\n\n<p>I didn’t have any dietary restrictions in advance. They didn’t inject me with anything. I was told to wear comfortable clothes with no metal — so I wore sweatpants, a T-shirt, and a sweatshirt. I was able to leave my rings (gold, two small diamonds) on.</p>\n\n<p>Beforehand I did a three-sixty in front of a ferrous metal detector. Then I was led through the doors with the giant warnings about extremely powerful magnets.</p>\n\n<p>I put in earplugs that the technician gave me, and then put on headphones. He asked me what music I’d like, and I replied, “80s. Bowie.” I lied down on the thing. There was a firm but not painful thing to hold my head still and give it something to rest on. Under the lower half of my legs was a foam thing that kept them elevated a little. It was comfortable.</p>\n\n<p>He told me it would take about 20 minutes. He also gave me a bulb to hold onto and to squeeze as an alert, and he said they could pause the tests if needed.</p>\n\n<p>Then he slid me in. The tube was more narrow than I expected. And for the first couple seconds I did feel panic rising a little bit, and I thought about squeezing the bulb — but I didn’t. I oriented myself and took some deep breaths.</p>\n\n<p>I was staring up at the top of the tube (I was on my back), but there was this mirror contraption (two mirrors? hard to tell) that I was looking at, and so I was looking out through the end of the tube. What I was actually seeing was a nice, calm painting on the wall — a river and some trees — and I could see the length of my body and my feet, which were free of the tube. I told myself I could scramble out on my own if I had to.</p>\n\n<p>The music started with a Bowie song — “<a href=\"https://www.youtube.com/watch?v=v--IqqusnNQ\">Life on Mars</a>.” Later there were songs by Talking Heads and similar bands. It was good to have music because I could note the passage of time that way. (I guess I was listening to a Pandora station or something similar.)</p>\n\n<p>The machine was noisy, but I had plenty enough ear protection, and the different scans had different patterns. One scan near the end included a bit of vibration. The technician talked to me through the headphones a couple times to let me know how much time was remaining. I just kept my eyes on that painting the whole time.</p>\n\n<p>I had no trouble being still, except when I had to swallow. I just did. It was otherwise comfortable. And I could have gone another 20 minutes, easy.</p>\n\n<p style=\"text-align:center\">* * *</p>\n\n\n<p>Of course, I’m lucky. I have very good insurance through Omni, and it paid for this. And, even luckier, the results were totally normal.</p>\n\n<p>Hear that, world? The inside of my head is totally normal. I don’t mind feeling good about some good news for a change.</p>\n\n<p><i>Update 4:15 pm</i>: I’ve heard that not all MRIs are so nice. They might not have the mirrors and the music. In that case, well, I’m sorry. Just remember that they won’t forget you’re in there, and they’ll let you out at the end. Stay cool.</p>",-      "date_published": "2017-02-23T13:37:39-08:00"-    },-    {-      "id": "http://inessential.com/2017/02/22/omnioutliner_essentials",-      "url": "http://inessential.com/2017/02/22/omnioutliner_essentials",-      "title": "OmniOutliner Essentials",-      "content_html": "<p>Omni <a href=\"https://www.omnigroup.com/blog/introducing-omnioutliner-essentials-an-outliner-for-everyone\">introduces OmniOutliner Essentials</a>:</p>\n\n<blockquote><p>We didn’t want to just reach out to our existing audience; we wanted to introduce the joys and benefits of outlining to a much larger audience. We decided that meant two things: we needed to make the app much simpler, and we needed to make it much more affordable.</p></blockquote>\n\n<p>It’s in public preview now. <a href=\"https://www.omnigroup.com/omnioutliner/preview/essentials\">You can check it out</a>.</p>\n\n<p>I’ve been the junior developer on the OmniOutliner team for a couple years, and it’s a joy to work on an app that I’ve loved for years as a user. We’re not finished yet with this release, but I’m very happy with how it’s turning out.</p>\n\n<p>PS I like that Ken mentions MORE in the blog post:</p>\n\n<blockquote><p>We shipped the first beta of OmniOutliner while Mac OS X was still in beta, and doing so introduced us to a passionate community of outliners who had been using great outlining tools like <a href=\"https://en.wikipedia.org/wiki/MORE_(application)\">MORE</a> for over a decade.</p></blockquote>\n\n<p>MORE was by Living Videotext, which was <a href=\"http://scripting.com\">Dave Winer</a>’s company. Later I went to work at Dave’s company UserLand Software, which also included an outliner in its app Frontier, which I worked on. So there is a sort-of family tree connection from OmniOutliner back to MORE.</p>",-      "date_published": "2017-02-22T10:17:48-08:00"-    }-  ]-}+{
+  "version": "https://jsonfeed.org/version/1",
+  "title": "inessential.com",
+  "description": "Brent Simmons’s weblog.",
+  "home_page_url": "http://inessential.com/",
+  "feed_url": "http://inessential.com/feed.json",
+  "user_comment": "This feed allows you to read the posts from this site in any feed reader that supports the JSON Feed format. To add this feed to your reader, copy the following URL — http://inessential.com/feed.json — and add it your reader.",
+  "favicon": "http://inessential.com/favicon.ico",
+  "author": {
+    "name": "Brent Simmons",
+    "url": "http://inessential.com/",
+    "avatar": "http://ranchero.com/downloads/brent_avatar.png"
+  },
+  "items": [
+    {
+      "id": "http://inessential.com/2017/05/17/json_feed",
+      "url": "http://inessential.com/2017/05/17/json_feed",
+      "title": "JSON Feed",
+      "content_html": "<p>I was hesitant, even up to this morning, to publish the <a href=\"https://jsonfeed.org/version/1\">JSON Feed spec</a>.</p>\n\n<p>If you read Dave Winer’s <a href=\"http://scripting.com/2017/05/09/rulesForStandardsmakers.html\">Rules for standards-makers</a>, you’ll see that we did a decent job with some of the rules — the spec is written in plain English, for example — but a strict application of the rules would have meant not publishing at all, since “Fewer formats is better.”</p>\n\n<p>I agree completely — but I also believe that developers (particularly Mac and iOS developers, the group I know best) are so loath to work with XML that they won’t even consider building software that needs an XML parser. Which says to me that JSON Feed is needed for the survival of syndication.</p>\n\n<p>I could be wrong, of course. I admit.</p>\n\n<h4>Feed Reader Starter Kit</h4>\n\n<p>See my <a href=\"https://github.com/brentsimmons/RSXML\">RSXML repository</a> for Objective-C code that reads RSS, Atom, and OPML. I’ve done the work for you of supporting those formats. Go write a feed reader! Seriously. Do it.</p>\n\n<p>I planned to have a JSON Feed parser for Swift done for today, but other things got in the way. It’s coming soon. But you probably don’t actually need any sample code, since JSON is so easy to handle.</p>\n\n<h4>Feedback so far</h4>\n\n<p>Feedback has been interesting so far. Some <a href=\"https://github.com/brentsimmons/JSONFeed\">questions</a> on the GitHub repo need answering.</p>\n\n<p>Some people have said this should have happened ten years ago, and other people have said that they hate how developers jump on the latest fad (JSON).</p>\n\n<p>And some people really like the icon:</p>\n\n<p><img src=\"http://jsonfeed.org/graphics/icon.png\" height=70 width=70 /></p>\n\n<h4>Microformats</h4>\n\n<p>One of the more serious criticisms was this: why not just support the <a href=\"http://microformats.org/wiki/hatom\">hAtom microformat</a> instead? Why do another side-file?</p>\n\n<p>My thinking:</p>\n\n<p>My experience as a feed reader author tells me that people screw up XML, badly, all the time — and they do even less well with HTML. So embedding info in HTML is just plain too difficult. In practice it would be even buggier than XML-based feeds.</p>\n\n<p>And there are other advantages to decoupling: a side-file can have 100 entries where there are only 10 on an HTML page, for instance. A side-file can have extra information that you wouldn’t put on an HTML page. And yet, despite the extra information, a side-file can be much smaller than an HTML page, and it can often be easier to cache (since it’s not different based on a logged-in user, for instance).</p>\n\n<p>Microformats sounds elegant, but I don’t prize elegance as much as I value things that work well.</p>",
+      "date_published": "2017-05-17T13:22:14-07:00"
+    },
+    {
+      "id": "http://inessential.com/2017/05/01/frontier_diary_8_when_worlds_collide",
+      "url": "http://inessential.com/2017/05/01/frontier_diary_8_when_worlds_collide",
+      "title": "Frontier Diary #8: When Worlds Collide",
+      "content_html": "<p>I spent the weekend making a bunch of progress on the compiler. It has two pieces: a <a href=\"https://github.com/brentsimmons/Frontier/blob/master/UserTalk/UserTalk/Compiler/Tokenizer.swift\">tokenizer</a>, which I created by rewriting the original C code (<a href=\"https://github.com/brentsimmons/Frontier/blob/master/FrontierOrigFork/Common/source/langscan.c\">langscan.c</a>) in Swift, and a parser.</p>\n\n<p>The parser in OrigFrontier was generated by MacYacc, which is similar to Yacc, which is similar to <a href=\"https://www.gnu.org/software/bison/\">Bison</a>, which is on my Mac. The thing about the parser is that it’s C code, and the rest of the app is Swift.</p>\n\n<p>How do you bridge the two worlds? Easy answer: with Objective-C, which is a superset of C and which plays nicely (enough) with Swift.</p>\n\n<p>So I renamed langparser.y — the rules file that the parser generator uses — to <a href=\"https://github.com/brentsimmons/Frontier/blob/master/UserTalk/UserTalk/Compiler/langparser.ym\">langparser.ym</a> so that Xcode would know to treat the generated parser source as Objective-C. I edited it slightly, not to change the grammar rules but to change how nodes are created (as return values rather than via inout).</p>\n\n<p>I also made my <a href=\"https://github.com/brentsimmons/Frontier/blob/master/UserTalk/UserTalk/CodeTreeNode.swift\">CodeTreeNode</a> class, written in Swift, an Objective-C class so that it would be visible to my Objective-C code.</p>\n\n<p>And then, finally, I started a build…</p>\n\n<p>…and then it stopped with an error because the parser places my <code>CodeTreeNode</code> in a C union, which isn’t allowed in ARC.</p>\n\n<p>Crushed.</p>\n\n<p style=\"text-align:center\">* * *</p>\n\n\n<p>I think I have three options:</p>\n\n<ol>\n<li>Go down the rabbit hole of figuring out how to get the parser to work with ARC.</li>\n<li>Go with the flow: have the parser generate nodes that are, as in OrigFrontier, C structs. The last compilation step would be Objective-C code that translates that tree of C structs into a tree of <code>CodeTreeNode</code> objects, and then disposes the C-struct-node-tree.</li>\n<li>Write the parser by hand, in Swift.</li>\n</ol>\n\n\n<p>My thinking:</p>\n\n<p>I could waste a ton of time on #1, and bending tools in that way can be pretty frustrating work when they refuse to bend.</p>\n\n<p>With #2 I’d feel a bit weird about the redundancy: building a tree and then building a copy of that tree with a different type of object.</p>\n\n<p>My heart tells me #3 is the answer. After all, I’ve already done the tokenizer. How hard would it be to parse those tokens into a code tree? I could skip C and Objective-C altogether and stay in Swift. And it would be <em>so fun</em>. (Because that’s precisely the style of weirdo I am.)</p>\n\n<p style=\"text-align:center\">* * *</p>\n\n\n<p>But the real answer is #2. Writing a parser by hand would take way longer than I think. Given enough tests, it shouldn’t be a huge source of bugs, but still.</p>\n\n<p>The thing about #2 is that yes, it’s redundant, it’s doing more work than it needs to, ideally — but my bet is that it would still be so fast that you wouldn’t be able to tell the difference. Computers are so good at this kind of thing. It’s not like reading files or networking; it’s just in-memory traversal and creating/releasing things.</p>\n\n<p>You remember in Indiana Jones that guy with the twirling swords, and Indy gives that look and then just shoots him? The second option is the Indiana Jones solution.</p>\n\n<p><i>Update 2:05 pm</i>: Two people have already written me to recommend <a href=\"http://www.antlr.org\">ANTLR</a>. So I will definitely give that a look. It might be exactly what I need.</p>",
+      "date_published": "2017-05-01T13:34:23-07:00"
+    },
+    {
+      "id": "http://inessential.com/2017/04/27/frontier_diary_7_pretty_much_everythin",
+      "url": "http://inessential.com/2017/04/27/frontier_diary_7_pretty_much_everythin",
+      "title": "Frontier Diary #7: Pretty Much Everything Throws",
+      "content_html": "<p>A script can throw an error, either intentionally (via the <code>scriptError</code> verb) or by doing something, such as referencing an undefined object, that generates an error.</p>\n\n<p>OrigFrontier was written in C, which has no error-throwing mechanism, and so it worked like this: most runtime functions returned a boolean (for success or failure), and the return value was passed in by reference. If there was an error, the function would set a global error variable and return false. The caller would then have to check that global to see if there was an error, and then do the right thing.</p>\n\n<p>This was not unreasonable, given the language and the times (early ’90s) and also given the need to be very careful about unwinding memory allocations.</p>\n\n<p>But, these days, it seems to me that Swift’s error system is the way to go. There’s just one downside to that, and it’s that I have to do that do/try/catch dance all over the place, since pretty much any runtime function can throw an error.</p>\n\n<p>Even the coercions can throw, so last night I changed the <a href=\"https://github.com/brentsimmons/Frontier/blob/master/FrontierData/FrontierData/Value/ValueProtocol.swift\">Value</a> protocol so that <code>asInt</code> and so on are now functions, since properties can’t throw (at least not yet).</p>\n\n<p>The extra housekeeping — the do/try/catch stuff — kind of bugs me, but it’s honest. I considered making script errors just another type of Value — but that meant that all those callers have to check the returned Value to see if it’s an error, and then do the right thing. Better to just use Swift’s error system, because it makes for more consistent code, and it makes sure I’m catching errors in every case.</p>\n\n<p>It also means I’m not multiplying entities. A Swift error is a script error, and vice versa.</p>\n\n<p style=\"text-align:center\">* * *</p>\n\n\n<p>Working on this code is like applying the last 25 years of programming history all at once.</p>\n\n<p>A completely different type of error is a <em>bug</em>, and I’m certain to write a bunch of them, because that’s how programming goes.</p>\n\n<p>That’s where unit tests come in. Frontier has long had a stress-test suite of scripts — you’d launch the app, run that suite, wait a while, and see if there are any errors. This was critically helpful.</p>\n\n<p>But OrigFontier didn’t have unit tests at the C code level. The new version does. (Well, <a href=\"https://github.com/brentsimmons/Frontier/blob/master/FrontierVerbs/FrontierVerbsTests/Math.swift\">I’ve started them anyway</a>.) This means I can more easily follow <a href=\"http://scripting.com/2002/09/29.html#rule1\">Rule 1</a> — the no-breakage rule — and can also more easily follow Rule 1b — the don’t-break-Dave rule.</p>\n\n<p>PS I’ve added a <a href=\"http://inessential.com/frontierdiary\">collection page for the Frontier Diary</a>, as I did with earlier diaries. There’s a link to it in the footer of every page on the blog.</p>",
+      "date_published": "2017-04-27T13:30:42-07:00"
+    },
+    {
+      "id": "http://inessential.com/2017/04/26/frontier_diary_6_ballard_from_the_par",
+      "url": "http://inessential.com/2017/04/26/frontier_diary_6_ballard_from_the_par",
+      "title": "Frontier Diary #6: Ballard, from the Parallel Universe",
+      "content_html": "<p>In another universe I didn’t decide to port Frontier — instead, I started over from scratch on an app <em>inspired</em> by Frontier.</p>\n\n<p>In that universe, the new scripting language, descended from UserTalk, is called Ballard. <a href=\"http://inessential.com/ballard_lang\">And it’s documented</a>.</p>",
+      "date_published": "2017-04-26T13:04:04-07:00"
+    },
+    {
+      "id": "http://inessential.com/2017/04/25/my_microblog",
+      "url": "http://inessential.com/2017/04/25/my_microblog",
+      "title": "My Microblog",
+      "content_html": "<p>I’m on Manton‘s cool new microblogs system. Here’s where you can follow me, once you’re on the system: <a href=\"http://micro.blog/brentsimmons\">http://micro.blog/brentsimmons</a>.</p>\n\n<p>And here’s my microblog: <a href=\"http://brent.micro.blog/\">http://brent.micro.blog/</a>. (Which you can read using RSS, whether you’re on the system or not.)</p>\n\n<p>I wrote about three-quarters of my own single-user microblog system — and then stopped because I didn’t feel like running a server and because Manton’s service is so good.</p>",
+      "date_published": "2017-04-25T14:27:28-07:00"
+    },
+    {
+      "id": "http://inessential.com/2017/04/25/frontier_diary_5_values_and_progress_o",
+      "url": "http://inessential.com/2017/04/25/frontier_diary_5_values_and_progress_o",
+      "title": "Frontier Diary #5: Values and Progress on the Language",
+      "content_html": "<p>I put the <a href=\"https://github.com/brentsimmons/Frontier\">Frontier repository</a> up on GitHub.</p>\n\n<p>(The build is currently broken. This is bad discipline, but since it’s still just me, I forgive myself. Sometimes I run out of time and I just commit what I have.)</p>\n\n<p>The repo has my new code and it also contains <a href=\"https://github.com/brentsimmons/Frontier/tree/master/FrontierOrigFork\">FrontierOrigFork</a>, which is the original Frontier source with a bunch of deletions and some changes. The point is to give me 1) code to read and 2) a project that builds and runs on <a href=\"http://inessential.com/2017/04/03/frontier_diary_1_vm_life\">my 10.6.8 virtual machine</a>.</p>\n\n<p>The original code is in C, and the port is, at least so far, all in Swift. In the end it should be <em>almost</em> all in Swift, but I anticipate a couple places where I may need to use Objective-C.</p>\n\n<p>Here’s one of the Swift wins:</p>\n\n<h4>Values</h4>\n\n<p>Since Frontier contains a database and scripting language, there’s a need for some kind of value object that could be a boolean, integer, string, date, and so on.</p>\n\n<p>Original Frontier used a <a href=\"https://github.com/brentsimmons/Frontier/blob/master/FrontierOrigFork/Common/headers/lang.h\">tyvaluedata</a> union, with fields for the various types of values.</p>\n\n<p>This is a perfectly reasonably approach in C. It’s great because you can pass the same type of value object everywhere.</p>\n\n<p>Were I writing this in Objective-C, however, I’d create a <code>Value</code> protocol, and then create new value objects for some types and also extend existing objects (<code>NSNumber</code>, <code>NSString</code>, etc.) to conform to the <code>Value</code> protocol. This would still give me the upside — passing a <code>Value</code> type everywhere — while reducing the amount of boxing.</p>\n\n<p>But: this still means I have an <code>NSNumber</code> when I really want a BOOL. Luckily, in Swift I can go one better: I can extend types such as <a href=\"https://github.com/brentsimmons/Frontier/blob/master/FrontierData/FrontierData/Value/ValueBool.swift\">Bool</a> and <code>Int</code> to conform to a <a href=\"https://github.com/brentsimmons/Frontier/blob/master/FrontierData/FrontierData/Value/ValueProtocol.swift\">Value</a> protocol.</p>\n\n<p>This means passing around an <em>actual</em> <code>Bool</code> rather than a boxed boolean. I like this a ton. It feels totally right.</p>\n\n<p>Other topic:</p>\n\n<h4>Language Progress</h4>\n\n<p>I’m still in architectural mode, where I’m writing just enough code to validate and refine my decisions. A couple days ago I started on the <a href=\"https://github.com/brentsimmons/Frontier/blob/master/UserTalk/UserTalk/LangEvaluator.swift\">language evaluator</a> — the thing that actually runs scripts.</p>\n\n<p>It works as you expect: it takes a compiled code tree and recursively evaluates it. It’s not difficult — it’s just that it’s going to end up being a fair amount of code.</p>\n\n<p>I’ve done just enough to know that I’m on the right path. (The Swift code looks a lot like the C code in OrigFrontier’s <a href=\"https://github.com/brentsimmons/Frontier/blob/master/FrontierOrigFork/Common/source/langevaluate.c\">langevaluate.c</a>. See <code>evaluateList</code>, for instance.)</p>\n\n<p>The next step is for me to build the parser. I thought about writing a parser by hand, because it sounds like fun, and it would give me some extra control — but, really, it would slow me way down, so forget it.</p>\n\n<p>OrigFrontier generated its parser by passing a grammar file — <a href=\"https://github.com/brentsimmons/Frontier/blob/master/FrontierOrigFork/Common/source/langparser.y\">langparser.y</a> — to MacYacc (there was such a thing!), which generated <a href=\"https://github.com/brentsimmons/Frontier/blob/master/FrontierOrigFork/Common/source/langparser.c\">langparser.c</a>.</p>\n\n<p>I’ll do a similar thing, except using <a href=\"https://www.gnu.org/software/bison/\">Bison</a> (which is compatible with Yacc). Or, possibly, using the <a href=\"http://www.hwaci.com/sw/lemon/\">Lemon parser generator</a> instead. Either way, I’ll want the generated code to be Objective-C. (Well, mostly C, but with Objective-C objects instead of structs.) (I don’t know of a generator that would create Swift code.)</p>\n\n<p>This is completely new territory for me, and is exciting.</p>\n\n<p>(Almost forgot to mention: I’ll need to write a tokenizer. This means porting <a href=\"https://github.com/brentsimmons/Frontier/blob/master/FrontierOrigFork/Common/source/langscan.c\">langscan.c</a>. I’ll need to do this first, since the parser generator needs it. So this is the real next step.)</p>",
+      "date_published": "2017-04-25T13:26:33-07:00"
+    },
+    {
+      "id": "http://inessential.com/2017/04/14/save_300_on_coccoaconf_next_door",
+      "url": "http://inessential.com/2017/04/14/save_300_on_coccoaconf_next_door",
+      "title": "Save $300 on CocoaConf Next Door",
+      "content_html": "<p>My pals at CocoaConf asked me to remind you that the <a href=\"https://twitter.com/cocoaconf/status/852898192035282944\">Early Bird sale ends in two weeks</a> for CocoaConf Next Door — the one taking place in San Jose during WWDC.</p>\n\n<p>I’ll be there. At least in the afternoons.</p>\n\n<p>Check out the <a href=\"http://cocoaconf.com/nextdoor/speakers\">speakers list</a>. Yummy, chewy, nutty speakers list.</p>",
+      "date_published": "2017-04-14T13:53:02-07:00"
+    },
+    {
+      "id": "http://inessential.com/2017/04/14/frontier_diary_4_the_quickdraw_problem",
+      "url": "http://inessential.com/2017/04/14/frontier_diary_4_the_quickdraw_problem",
+      "title": "Frontier Diary #4: The QuickDraw Problem and Where It Led Me",
+      "content_html": "<p>In my fork of Frontier there are still over 600 deprecation warnings. A whole bunch of these are due to <a href=\"https://en.wikipedia.org/wiki/QuickDraw\">QuickDraw</a> calls.</p>\n\n<p>For those who don’t know: QuickDraw was how, in the old days, you drew things to the Mac’s screen. It was amazing for its time and pretty easy to work with. Functions included things like <code>MoveTo</code>, <code>LineTo</code>, <code>DrawLine</code>, <code>FrameOval</code>, and so on. All pretty straightforward.</p>\n\n<p>These days we have Core Graphics instead, and we have higher-level things like <code>NSBezierPath</code>. QuickDraw was simpler — though yes, sure, that was partly because it did less.</p>\n\n<p style=\"text-align:center\">* * *</p>\n\n\n<p>I was looking at all these deprecation warnings for QuickDraw functions and wondering how I’m ever going to get through them.</p>\n\n<p>I could, after all, convert all or most of them to the equivalent Core Graphics thing. But sheesh, what a bunch of work.</p>\n\n<p>And, in the end, it would still be a Carbon app, but with modern drawing.</p>\n\n<p style=\"text-align:center\">* * *</p>\n\n\n<p>So I thought about it from another angle. The goal is to get to the point where it’s a 64-bit Cocoa app. All these QuickDraw calls are in the service of UI — so why not just start over with a Cocoa UI?</p>\n\n<p>The app has some outlines (database browser, script editor, etc.), a basic text editor, and a handful of small dialogs. <em>And all of that is super-easy in Cocoa.</em></p>\n\n<p>Use an <code>NSOutlineView</code>, <code>NSTextView</code>, and some xibs for the dialogs, and we’re done. (Well, after <em>some</em> work, but not nearly the same amount of work as actually writing an outliner from scratch.)</p>\n\n<p>In other words, instead of going from the bottom up — porting the existing source code — I decided to start from the top down.</p>\n\n<p>I started a new workspace and started a new Frontier project: a Cocoa app with Swift as the default language.</p>\n\n<p>Then I looked at the existing source and thought about how to organize things. I came up with this:</p>\n\n<ul>\n<li>Frontier — App UI</li>\n<li>UserTalk.framework — the language</li>\n<li>FrontierVerbs.framework - the standard library</li>\n<li>FrontierDB.framework — the object database</li>\n<li>FrontierCore.framework — common utility functions and extensions</li>\n</ul>\n\n\n<p>I like using frameworks, because it helps enforce separation, and it helps in doing unit testing. And frameworks are so easy with Swift these days.</p>\n\n<p>Hardly any of this is filled-in yet. I’ve got the barest start on FrontierVerbs. <a href=\"https://twitter.com/tedchoward\">Ted Howard</a>, my partner in all this, is taking UserTalk.framework and FrontierDB.framework.</p>\n\n<p>In the end, it’s possible that no code from the original code base survives. Which is totally fine. But it also means that this is no quick project.</p>\n\n<p>At this point I should probably put it up on GitHub, since it’s easier to write about it if I can link to the code. I’ll do that soon, possibly on the weekend.</p>",
+      "date_published": "2017-04-14T13:14:20-07:00"
+    },
+    {
+      "id": "http://inessential.com/2017/04/13/frontier_diary_3_built-in_verbs_config",
+      "url": "http://inessential.com/2017/04/13/frontier_diary_3_built-in_verbs_config",
+      "title": "Frontier Diary #3: Built-in Verbs Configuration",
+      "content_html": "<p>Frontier’s standard library is known as its built-in verbs. There are a number of different tables: <code>file</code>, <code>clock</code>, <code>xml</code>, and so on. Each contains a number of verbs: <code>file.readWholeFile</code>, <code>clock.now</code>, and so on.</p>\n\n<p>Most of these verbs are implemented in C, in the kernel, rather than as scripts. At the moment, to add one of these kernel verbs, you have to jump through a few hoops: edit a resource, add an integer ID, add to a switch statement, etc. It’s a pain and is error-prone.</p>\n\n<p>So I want to re-do this in Swift, because I’m all about Swift. And I want adding verbs to be fool-proof: I don’t want to remember how to configure this every single time I add a verb. Adding a verb needs to be <em>easy</em>.</p>\n\n<p>My thinking:</p>\n\n<ul>\n<li>Give each table its own class: ClockVerbs, FileVerbs, etc.</li>\n<li>Have each class report the names of the verbs it supports. These need to be strings, because we get a string at runtime.</li>\n<li>Run a verb simply by looking up the selector, performing it, and returning the result.</li>\n</ul>\n\n\n<p>To make things easy and obvious, I think it should work like this: the selector for a given verb is its name plus a parameter. Then there’s not even a lookup step.</p>\n\n<p>Each verb will take a VerbParameters object and return a VerbResult object.</p>\n\n<pre><code>dynamic func readWholeFile(_ params: VerbParameters) -&gt; VerbResult\n</code></pre>\n\n<p>The flow goes like this:</p>\n\n<ol>\n<li>We have the string <code>file.readWholeFile</code>.</li>\n<li>We see the <code>file</code> suffix and so we know we need a <code>FileVerbs</code> object.</li>\n<li>We check <code>fileVerbs.supportedVerbs</code> (an array) to see if <code>readWholeFile</code> is in the list. It is.</li>\n<li>We construct a selector using the <code>readWholeFile</code> part of the string and we add a <code>:</code> character: <code>NSSelectorFromString(verbName + \":\")</code></li>\n</ol>\n\n\n<p>This is great! We’re almost home free. Then we run the verb:</p>\n\n<pre><code>if let result = perform(selector, with: params) as? VerbResult {\n    return result\n}\n</code></pre>\n\n<p>That doesn’t work. We get:</p>\n\n<pre><code>Cast from 'Unmanaged&lt;AnyObject&gt;! to unrelated type 'VerbResult' always fails\n</code></pre>\n\n<p>Nuts.</p>\n\n<p style=\"text-align:center\">* * *</p>\n\n\n<p>It was <em>so</em> close.</p>\n\n<p>In Objective-C this would have worked. And obviously, apparently, I still think in Objective-C.</p>\n\n<p>I investigated some other options. At one point enums were abused, because there’s <em>always</em>, in Swift, an enum-abuse step. But everything I tried was more code and was more error-prone, and my goal here is to improve the situation.</p>\n\n<p>I think, in the end, I’m going to do something that looks kind of ugly: a switch statement where the cases are string literals.</p>\n\n<pre><code>switch(verbName) {\ncase \"readWholeFile\":\n    return readWholeFile(params)\n…\n}\n</code></pre>\n\n<p>“Nooooo!” you cry. I hear ya.</p>\n\n<p>My experience as an object-oriented programmer tells me this: if I write a <code>switch</code> statement, I blew it.</p>\n\n<p>And my experience as a programmer tells me that string literals are a bad idea.</p>\n\n<p>But the above may actually be the easiest to configure and maintain. Each string literal appears only in that one switch statement and nowhere else in the code. And the mapping between a verb name and its function couldn’t be more clear — it’s right there.</p>\n\n<p>(Yes, instead of using a string literal, I could create a String enum and switch on that. But that’s actually more code and more room for error. I’m going to have to type those string literals <em>somewhere</em>, so why not right where they’re used?)</p>\n\n<p>It does mean that <code>readWholeFile</code> appears three times in the code (the string literal, the call, and the function itself), and in an Objective-C version it would appear only twice (in a <code>supportedVerbs</code> array and the method itself).</p>\n\n<p>But. Well.</p>\n\n<p>I’m torn between shuddering in abject and complete horror at this solution and thinking, “Hey, that’s pretty straightforward. Anybody could read it. Anybody could edit it.” Which was the plan all along.</p>\n\n<p>And I get to stick with Swift, so there’s that.</p>\n\n<p>But, sure as shootin’, some day someone’s going to come across this code and say, “Brent, dude, are ya <em>new</em>?” And I’ll send them the link to this page.</p>\n\n<p style=\"text-align:center\">* * *</p>\n\n\n<p><i>Update the next day:</i> well, the <code>performSelector</code> thing <em>would</em> work, if only I’d known about Swift Unmanaged objects.</p>\n\n<p><a href=\"https://twitter.com/jckarter\">Joe Groff</a> told me how this works.</p>\n\n<p>Here’s the gist: the <code>Unmanaged&lt;AnyObject&gt;</code> just needs to be unwrapped by calling <code>takeRetainedValue</code> or <code>takeUnretainedValue</code>. Once unwrapped, it can be cast to <code>VerbResult</code>.</p>\n\n<p>All this means that I can use my original design, which is great news.</p>\n\n<p style=\"text-align:center\">* * *</p>\n\n\n<p><i>Update April 25, 2017:</i> I ended up using enums after all. See <a href=\"https://github.com/brentsimmons/Frontier/blob/master/FrontierVerbs/FrontierVerbs/VerbTables/MathVerbs.swift\">MathVerbs.swift</a> for an example.</p>",
+      "date_published": "2017-04-13T22:25:41-07:00"
+    },
+    {
+      "id": "http://inessential.com/2017/04/11/frontier_diary_2_two_good_ideas_that_a",
+      "url": "http://inessential.com/2017/04/11/frontier_diary_2_two_good_ideas_that_a",
+      "title": "Frontier Diary #2: Two Good Ideas that Aren’t Good Anymore",
+      "content_html": "<p>Strings in <a href=\"http://inessential.com/2017/04/03/frontier_diary_1_vm_life\">Frontier</a> are usually either Pascal strings or Handles.</p>\n\n<p>You probably don’t know what I’m talking about. I’ll explain.</p>\n\n<h4>Pascal Strings</h4>\n\n<p>Frontier is a Mac Toolbox app that’s been Carbonized just enough to run on OS X. You may recall that the Mac Toolbox was written so long ago that the <a href=\"https://developer.apple.com/legacy/library/documentation/mac/pdf/MacintoshToolboxEssentials.pdf\">original API</a> was in Pascal. That Pascal heritage lived on in many ways, even after everyone switched to C — and one of those ways was Pascal strings.</p>\n\n<p>A Pascal string is n bytes long, and the first byte specifies the length of the string, which leaves the rest of the bytes for the actual string. <code>Str255</code> was probably most common, and certainly is most common in Frontier, but there are also smaller sizes: <code>Str63</code> and <code>Str31</code>, for instance.</p>\n\n<p>Unlike C strings, they’re not zero-terminated, since there’s no need to calculate the length: you always know it from that first byte.</p>\n\n<p>You create a literal Pascal string like this…</p>\n\n<pre><code>Str255 s = \"\\pThis is a string\";\n</code></pre>\n\n<p>…and the compiler turns the <code>\\p</code> into the correct length (16 in this case).</p>\n\n<p>Now, I bet you’re saying to yourself, “Self, those Pascal strings are too small to be useful.”</p>\n\n<p>But consider this: every menu item name can fit into a Pascal string. You can fit a window title or a file name into a Pascal string (in fact, memory suggests that file names were even shorter, were <code>Str31</code> Pascal strings). Any label or message on any bit of UI is probably short enough to fit into a Pascal string. (Especially if you assume English.)</p>\n\n<p>So for GUI apps these were terrifically useful, and the 255-byte limit was no problem. (You can fit a tweet in a Pascal string, after all, with a bunch of room left over. [Well, depending on the size of the characters.])</p>\n\n<p>Frontier still uses them internally a ton. (For some reason, in the Frontier code, <code>Str255</code> strings are called <code>bigstring</code>, which sounds ironic, since they’re so small, but I think it was to differentiate them from even smaller Pascal strings such as <code>Str31</code>.)</p>\n\n<p>You might ask what the text encoding was for these strings.</p>\n\n<p>“Text whatzit?” I’d reply. “Oh, I see. Just regular.” (<a href=\"https://en.wikipedia.org/wiki/Mac_OS_Roman\">MacRoman</a>.)</p>\n\n<p>It was a good idea, but its time has come and gone. We have better strings these days.</p>\n\n<h4>Handles</h4>\n\n<p>Frontier includes a scripting language and a database, which means it certainly has a need for strings much larger than 255 bytes.</p>\n\n<p>It also needs heap storage for other things — binary data, structs, etc. — that could be much larger than 255 bytes.</p>\n\n<p>Enter the Handle. A Handle points to a pointer <em>that might move</em>: the memory you access via a Handle is <em>relocatable</em>.</p>\n\n<p>Which sounds awful, I know, but it was a smart optimization in the days when your Mac’s memory would be a single-digit number of megabytes, or even less than that.</p>\n\n<p>Here’s the problem: your application’s heap space can become fragmented. It could have a whole bunch of gaps in it after a while. So, to regain that memory, the system could compact the heap — it would remove those gaps, which means relocating the memory pointed to via a Handle.</p>\n\n<p>This is better than running out of memory, obviously. But it means that you have to be careful when dereferencing a Handle: you have to actually lock it first — <code>HLock(h)</code> — so that it can’t be moved while you’re using it. (And then you unlock it — <code>HUnlock(h)</code> — when finished.)</p>\n\n<p>Handles are also resizable — <code>SetHandleSize(h, size)</code> — and resizing a Handle can result in it needing to move, if there’s not enough space where it is. Or other Handles might move. You don’t ever know, and don’t care, and you think this is elegant because the system handles it all for you.</p>\n\n<p>All you have to deal with is an additional level of indirection (<code>**h</code> instead of <code>*p</code>), locking and unlocking it when needed, and disposing of it — <code>DisposeHandle(h)</code> — when finished. (No, there’s no reference counting, slacker.)</p>\n\n<p>Nowadays, on OS X, Handles don’t ever move and there’s no heap compaction. So there’s no reason for them whatsoever. And they are, as expected, deprecated.</p>\n\n<p>Nevertheless, Frontier, a Mac Toolbox app written in C, uses Handles everywhere.</p>\n\n<p>(I remember being shocked, when I first started learning Cocoa 15 years ago, that there were no Handles. It seemed <em>incredibly</em> daring that objects were just pointers. It made me nervous!)</p>\n\n<h4>The Size of the Job</h4>\n\n<p>Almost all the Mac APIs that Frontier uses are deprecated. That’s one thing.</p>\n\n<p>But it’s worse than just that: the ways Frontier handles strings and <em>pretty much every single thing it stores on the heap</em> are also deprecated.</p>\n\n<p>So: what to do?</p>\n\n<p>The end goal is a Cocoa app, which means I’ll be able to use Foundation, CoreFoundation, and Swift data types: NSString and Swift String, for instance. There are a number of different structs in the code, and those will be turned into Objective-C and Swift objects and Swift structs.</p>\n\n<p>The tricky part, though, is getting from here to there. I think the first step is to start with Objective-C and Foundation types and use them where possible. I can do that without actually turning it into a Cocoa app (the app will still have its own WaitNextEvent event loop and Carbon windows) — which means I’ll have to bracket all Objective-C code in autorelease pools, and I’ll have to use manual retains and releases. I’m not sure how far that will get me, but it will get me closer.</p>\n\n<p>PS Here are a couple articles by Gwynne Raskind on the Mac Toolbox you might enjoy: <a href=\"https://mikeash.com/pyblog/friday-qa-2012-01-13-the-mac-toolbox.html\">Friday Q&amp;A 2012-01-13: The Mac Toolbox</a> and <a href=\"https://mikeash.com/pyblog/the-mac-toolbox-followup.html\">The Mac Toolbox: Followup</a>.</p>",
+      "date_published": "2017-04-11T13:01:55-07:00"
+    },
+    {
+      "id": "http://inessential.com/2017/04/05/two_little-known_and_completely_unrelate",
+      "url": "http://inessential.com/2017/04/05/two_little-known_and_completely_unrelate",
+      "title": "Two Little-Known and Completely Unrelated Facts",
+      "content_html": "<p>One. <a href=\"https://www.omnigroup.com/omnioutliner\">OmniOutliner</a>’s outline view is implemented as CALayers rather than as a view with subviews. (I don’t think I’m giving away a trade secret here.)</p>\n\n<p>Two. If you eat fenugreek, your <a href=\"https://www.theatlantic.com/health/archive/2010/06/the-mystery-of-the-maple-syrup-smell/57980/\">armpits will smell like maple syrup</a>.</p>",
+      "date_published": "2017-04-05T16:57:59-07:00"
+    },
+    {
+      "id": "http://inessential.com/2017/04/05/ios_javascript_and_object_hierarchies",
+      "url": "http://inessential.com/2017/04/05/ios_javascript_and_object_hierarchies",
+      "title": "iOS, JavaScript, and Object Hierarchies",
+      "content_html": "<p><a href=\"http://iam.fahrni.me/2017/03/25/scripting-ios/\">Rob Fahrni</a>:</p>\n\n<blockquote><p>Given x-callback-url and App URL schemes in general it would be extremely cool to use those to create object hierarchies using JavaScript. Why JavaScript? Well, it’s native to iOS and applications can use the runtime.</p></blockquote>",
+      "date_published": "2017-04-05T14:53:01-07:00"
+    },
+    {
+      "id": "http://inessential.com/2017/04/05/cocoaconf_near_wwdc",
+      "url": "http://inessential.com/2017/04/05/cocoaconf_near_wwdc",
+      "title": "CocoaConf Near WWDC",
+      "content_html": "<p>There are a bunch of things happening near WWDC this year. Me, I’ll be at <a href=\"http://cocoaconf.com/blog/nextdoor\">CocoaConf Next Door</a>. I’m not preparing a talk, but I’ll probably be on a panel. And hanging out.</p>\n\n<p>Check out the <a href=\"http://cocoaconf.com/nextdoor/speakers\">speakers list</a>, which includes Omni’s own <a href=\"http://cocoaconf.com/nextdoor/speakers/162\">Liz Marley</a>. And a bunch of other people you totally want to see — Manton Reece, Jean MacDonald, Laura Savino, and plenty more.</p>\n\n<p>Also… <a href=\"http://altconf.com/\">AltConf</a> and <a href=\"https://layers.is/\">Layers</a> will be near WWDC. If you could be in three places at once, you would. Well, four, including WWDC itself, I suppose. :)</p>",
+      "date_published": "2017-04-05T14:35:05-07:00"
+    },
+    {
+      "id": "http://inessential.com/2017/04/05/omnioutliner_5_0_for_mac",
+      "url": "http://inessential.com/2017/04/05/omnioutliner_5_0_for_mac",
+      "title": "OmniOutliner 5.0 for Mac",
+      "content_html": "<p>I’ve been on the OmniOutliner team for over a year now. Though we don’t have positions like junior and senior developer, I enjoy calling myself the junior developer on the Outliner team, since I’m newest.</p>\n\n<p>I may be a new developer, but I’m not a new user — I’ve been using the app since the days when OmniOutliner 3 came installed on every Mac.</p>\n\n<p>Every time I start a talk, I outline it first. I organize the work I need to do in my side-project apps in OmniOutliner. And — don’t tell the OmniFocus guys, who are literally right here — sometimes I even use it for to-do management in general. I’d be lost without a great outliner.</p>\n\n<p>Anyway… <a href=\"https://www.omnigroup.com/blog/omnioutliner-5-is-now-available\">there’s a new version: OmniOutliner 5.0</a>. It’s my first dot-oh release at Omni, and I’m proud of it and proud of the team.</p>\n\n<p>As is common with our apps, we have two levels: a regular level and a Pro level. The regular level is called “Essentials” and is just $9.99. There’s a demo so you can try it out first.</p>\n\n<p>It syncs with iOS and with other Macs, by the way. Sync is free. And of course it comes with extensive documentation, and Omni’s awesome support humans are standing by.</p>\n\n<p><a href=\"https://www.omnigroup.com/omnioutliner/\">Get it while it’s hot</a>!</p>",
+      "date_published": "2017-04-05T10:44:45-07:00"
+    },
+    {
+      "id": "http://inessential.com/2017/04/03/frontier_diary_1_vm_life",
+      "url": "http://inessential.com/2017/04/03/frontier_diary_1_vm_life",
+      "title": "Frontier Diary #1: VM Life",
+      "content_html": "<p>It’s been years since I could build the <a href=\"http://frontierkernel.org\">Frontier kernel</a> — but I finally got it building.</p>\n\n<p>It’s really a ’90s Mac app that’s been Carbonized just enough to run on MacOS, but it’s by no means modern: it uses QuickDraw and early Carbon APIs. It’s written entirely in C.</p>\n\n<p>I got it building by installing MacOS 10.6.8 Server in VMWare. Installed Xcode 3.2.6. And now, finally, I can build and run it.</p>\n\n<h4>What is Frontier?</h4>\n\n<p>Frontier — as some of you know — was a UserLand Software product in the ’90s and 2000s. I worked there for about six years.</p>\n\n<p>The app is a development environment and runtime: a persistent, hierarchical database with a scripting language and a GUI for browsing and editing the database and for writing, debugging, and running scripts.</p>\n\n<p>The <a href=\"http://scripting.com/frontier/snippets/nerdsguide.html\">Nerd’s Guide to Frontier</a> gives some idea of what it’s like, though it was written before many of the later advances.</p>\n\n<p>Maybe you’ve never heard of it. But here’s the thing: it was in Frontier that the following were either invented or popularized and fleshed-out: scripted and templated websites, weblogs, hosted weblogs, web services over http, RSS, RSS readers, and OPML. (And things I’m forgetting.)</p>\n\n<p>Those innovations were due to the person — <a href=\"http://scripting.com/\">Dave Winer</a> — and to the times, the relatively early web days. But they were also in part due to the tool: Frontier was a fantastic tool for implementing and iterating quickly.</p>\n\n<h4>The Goal</h4>\n\n<p>The high-level goal is to make that tool available again, because I think we need it.</p>\n\n<p>The plan is to turn it into a modern Mac app, a 64-bit Cocoa app, and then add new features that make sense these days. (There are so many!) But that first step is a big one.</p>\n\n<p>The first part of the first step is simple, and it’s where I am now: mass deletions of code. Every reference to THINK_C and MPWC has to go. All references to the 68K and PPC versions must go. There was a Windows port, and all that code is getting tossed. And then I’ll see the scale of what needs to be done.</p>\n\n<p>(Note: my repo is a fork, and it’s not even on the web yet. The code I’m deleting is never really gone.)</p>\n\n<p>I’m doing a blog diary on it because it helps keep me focused. Otherwise I’m jumping around on my side projects. But if I have to write about it, then I’ll stay on target.</p>",
+      "date_published": "2017-04-03T13:44:34-07:00"
+    },
+    {
+      "id": "http://inessential.com/2017/03/31/the_goal",
+      "url": "http://inessential.com/2017/03/31/the_goal",
+      "title": "The Goal",
+      "content_html": "<p>The goal isn’t specifically impeachment and conviction. It’s for Trump to leave office.</p>\n\n<p>The stretch goal is that he dies broke and in prison.</p>\n\n<p>But we could settle for him going down in history as our worst President, as the worst person ever to become President, with the name Trump held in less esteem than that of Benedict Arnold, with Trumpism — that pseudo-populist white nationalism for the benefit of the super-rich — thoroughly loathed and seen for the brutish scam that it is.</p>\n\n<p>I think there comes a point before an actual trial in the Senate where Republican leaders — in Congress, in the Cabinet, wherever — realize that Trump can no longer govern, and they tell him so and urge him to resign.</p>\n\n<p>And I think he actually does resign at that point. He’s been through bankruptcy, and he’s shown that when there’s no path to winning, he’ll take the easiest route out of the situation, the route that leaves him the most status. He doesn’t have the stick-to-it-iveness to go to trial in the Senate: he’d quit.</p>\n\n<p>I don’t know what it will take to bring Republican leaders to this point. Their ongoing cowardice is the real scandal — when faced with a threat to our democracy, they play along because they’re hoping for some goodies.</p>\n\n<p>I don’t think they get to this point unless the public gets to this point, and so I look to the approval polls. If it gets below 30%, it’s probably there because of further revelations in the Russia affair, and it’s probably at the point where even cowards feel safe in doing the right thing — even if only to save their own necks, which will need saving.</p>\n\n<p>But right now Speaker Ryan won’t even replace Devin Nunes as chair of the house intelligence committee. So there’s still a long way to go.</p>",
+      "date_published": "2017-03-31T13:47:44-07:00"
+    },
+    {
+      "id": "http://inessential.com/2017/03/25/my_cocoaconf_yosemite_2017_talk",
+      "url": "http://inessential.com/2017/03/25/my_cocoaconf_yosemite_2017_talk",
+      "title": "My CocoaConf Yosemite 2017 Talk",
+      "content_html": "<p><a href=\"http://cocoaconf.com/yosemite\">Yosemite 2017</a> was so great. It always is.</p>\n\n<p>Below is the rough draft of my first-night talk. A few notes…</p>\n\n<p>The actual spoken version is probably not even close to the text, which was written before any rehearsal, and of course it’s never my intent to memorize it exactly.</p>\n\n<p>The bit with Laura Savino was a quick three-chord rock medley. We both played acoustic guitar and sang. It went like this:</p>\n\n<p>B: Louie Louie, oh baby, we gotta go<br />\nL: Yeah yeah yeah yeah yeah<br />\nB: Louie Louie, oh baby, we gotta go<br />\nL: Yeah yeah yeah yeah yeah<br />\nB: I live on an apartment on the 99th floor of my block<br />\nL: Hang on Sloopy, Sloopy hang on<br />\nB: I look out my window imagining the world has stopped</br />\nL: Hang on Sloopy, Sloopy hang on<br />\n[Slight change of chords]<br />\nB &amp; L: Teenage wasteland, oh yeah, only teenage wasteland [repeated]</p>\n\n<p>Here’s my <a href=\"https://www.youtube.com/watch?v=RzBz7p0A3-Y\">favorite video for Brimful of Asha</a>.</p>\n\n<p>During the Squirrel Picture interlude (slide #3) I told the <a href=\"http://inessential.com/2001/06/07/2001_06_07\">Squirrel Story</a>, which wasn’t planned or recently rehearsed, but I’ve told it often enough that it didn’t really need rehearsal.</p>\n\n<p>I dedicated the performance of Hallelujah to <a href=\"https://twitter.com/dori\">Dori Smith</a>.</p>\n\n<p>The talk was meant to be about 20 minutes long. Afterward I went around the room with a microphone and each person introduced themselves. (The talk’s job is to be a first-night ice-breaker talk.)</p>\n\n<p>I spent about 10 hours on rehearsal for those 20 minutes.</p>\n\n<p>Here’s the talk:</p>\n\n<h4>Slide #1: Three Chord Rock</h4>\n\n<p>Hi. I’m Brent.</p>\n\n<p>Before I get started — seeing my friend Brad Ellis reminded me of the most rock-n-roll moment of my life. Where’s Brad? Hi Brad. Anyway — I was at a party at my friend Chris’s house, and he let me borrow his guitar and do a sing-along. I think we did White Rabbit and Me and Bobby McGee and Hotel California.</p>\n\n<p>Well, here’s the problem — I have a hard time hanging on to a guitar pick. Especially after a few beers. So at one point the pick goes flying, and I’m strumming with my fingers.</p>\n\n<p>But I had a hangnail, and it got a bit aggravated as I was strumming. At the end I noticed that there was my actual blood on the guitar. I felt bad about it, but Chris was gracious, of course, and I thought that right then: that’s rock and roll.</p>\n\n<p>You can use this as metaphor. Bleeding? Keep right on playing. Maybe you won’t even notice that you’re bleeding, at least not until you stop.</p>\n\n<p>Chris told me later that the guitar cleaned up fine, so all was well.</p>\n\n<p>Okay. On to the actual talk…</p>\n\n<p>I bet most of you have heard the phrase “three chord rock n roll.” Or have heard that “rock is so great because you only need three chords.”</p>\n\n<p>What you may not realize is that it’s even easier than that: it’s three specific chords. Always the same three chords.</p>\n\n<p>They might be in any key but they’re the first, fourth, and fifth. In the key of C, the first is C, the fourth is F, and the fifth is G. In the key of A it’s A, D, and E.</p>\n\n<p>And when a song <em>does</em> have more than those three chords, it has at least those three chords. They’re the foundation for almost all pop and rock.</p>\n\n<p>One part of music is building tension and then resolving it. I’ll demonstrate on guitar.</p>\n\n<p>[On guitar] Play the first .... and you’re fine. You’re home. Play the fourth .... and there’s a little tension. Not a ton, but some. But you want to go back to the first, to home.</p>\n\n<p>Then play the fifth ... and you have maximum tension. You definitely want to go back home to the first.</p>\n\n<p>So with those three chords you have everything you need to write a thousand songs.</p>\n\n<p>Now for a little demo, I’d like to invite Laura Savino up to help me out.</p>\n\n<p>[music]</p>\n\n<p>Thanks, Laura!</p>\n\n<p>SO LET ME MAKE TWO POINTS VERY CLEAR.</p>\n\n<ol>\n<li><p>ONE. If you’re writing apps or a website or doing a podcast or whatever — if you’re just starting out and only know the equivalent of three chords, don’t worry — you can create a masterpiece with just three chords.</p></li>\n<li><p>TWO. If you do know more than three chords, you might want to consider just using those three chords anyway. People <em>love</em> those three chords. They’re appealing. They’re accessible and intimate. They work.</p></li>\n</ol>\n\n\n<h4>Slide #2: “Brimful of Asha“ by Cornershop, Asha Bhosle, and You</h4>\n\n<p>One of my personal favorite three-chord-rock songs came out in the mid-90s. Brimful of Asha by Cornershop.</p>\n\n<p>Who here knows this song?</p>\n\n<p>Let me explain what it’s about:</p>\n\n<p>Asha Bhosle sang songs for Bollywood musicals. The actresses would lip-sync, but it was her singing. She did this for over a thousand movies. Over 12,000 songs.</p>\n\n<p>Some of those songs would be released as singles. Years ago a single would come out on vinyl, as a 45. A 45 is smaller than a regular album, and it has one song on each side. The number 45 means 45 revolutions-per-minute — you’d have to set your turntable to 45 instead of the usual 33 1/3. So: a 45 is a single.</p>\n\n<p>So here’s a little bit from the song:</p>\n\n<p>[There’s dancing, behind movie screens…]</p>\n\n<p>I <em>love</em> that image. That Asha is not just singing but <em>dancing</em> as she’s singing. We never see her dancing, but that joy and engagement shows up in her performance.</p>\n\n<p>And so this song is about hope. It’s about how a song can bring some consolation and hope when people need it.</p>\n\n<p>And her name Asha actually <em>means</em> hope. Brimful of Asha — brimful of hope.</p>\n\n<p>HERE’S MY POINT.</p>\n\n<p>We're in the same business. People form an emotional connection to whatever we’re making. The things we make can bring hope to other people. Knowing that, it’s our job to be as engaged and joyful as she is as we make our things. Maybe we’re not literally dancing, but it should be the metaphorical equivalent.</p>\n\n<h4>Slide #3: Squirrel Picture</h4>\n\n<p>Squirrel!</p>\n\n<p>When I was a kid we went to a Methodist church. I haven’t been to church hardly at all since I was a kid, but I remember one cool thing from church services: the minister would pause and ask people to shake hands with the people around them.</p>\n\n<p>So here are the rules. Tell people to have a good conference, and shake hands with at least one person from another table. Stand up!</p>\n\n<h4>Slide #4: “Hallelujah” by Leonard Cohen, with Singing by James Dempsey</h4>\n\n<p>A few weeks ago I found myself in a hotel bar with a bunch of other nerds. I also found a piano. If there’s a piano, I’m going to play it. So I talked a few people — James Dempsey, Jean McDonald, Curt Clifton, and Jim Correia, into singing some songs.</p>\n\n<p>I forget who suggested Hallelujah. Might have been James. I didn’t know it very well, but I did my best. James sang, and he was awesome.</p>\n\n<p>So when I was thinking about this talk, I was thinking of doing the most beautiful possible thing I could do. So I remembered James singing this song.</p>\n\n<p>I may not be religious, but I think it’s plain that there is awesome magnificence greater than anything any human could make. It’s right outside.</p>\n\n<p>I’m not sure bears feel humble at the sight of these mountains; I’m not sure birds are awed at the vistas they fly over.</p>\n\n<p>But we do. Humans do. And knowing that we can’t measure up, it doesn’t stop us. Intead, we’re <em>inspired</em>.</p>\n\n<p>So here’s what I love about Hallelujah. It’s about trying and failing, and loving and losing — and singing Hallelujah anyway. In Cohen’s words, it may be a broken Hallelujah, but it’s still on our lips.</p>\n\n<p>James Dempsey please report to the stage.</p>\n\n<p>Everybody is encouraged to sing along. Especially to the chorus.</p>\n\n<p>[Hallelujah]</p>\n\n<h4>Slide #5: Picture of my cat Papa</h4>\n\n<p>I’m going to go around the room and have everyone introduce themselves. RULE: if anyone can’t hear, yell out.</p>",
+      "date_published": "2017-03-25T11:55:21-07:00"
+    },
+    {
+      "id": "http://inessential.com/2017/03/07/thems_thats_got_shall_get",
+      "url": "http://inessential.com/2017/03/07/thems_thats_got_shall_get",
+      "title": "Them That’s Got Shall Get",
+      "content_html": "<p>I try — earnestly, with good faith — to understand the Republican ideologies.</p>\n\n<p>And I think I’ve figured out one of them: they want to make life harder for poor people so that they have more incentive to become rich, and they want to make life better for rich people to reward success, since it <em>should</em> be rewarded, and since doing so provides even more incentive for poor people to become rich.</p>\n\n<p>If you look at it just the right way, you can see it’s not entirely wrong. If the government made material life pretty sweet for everybody, then some people wouldn’t bother to work to earn a living. <em>I</em> wouldn’t bother — I’d just make software and give it away for free.</p>\n\n<p>If the government made life semi-sweet — well, anybody who wants the full sweet would want a job. But some people would be fine with semi-sweet, and they wouldn’t work.</p>\n\n<p>I think that’s where Republicans stand: they think the government has made life semi-sweet, enough so that a bunch of people just <em>take</em> and don’t work. Republicans think: we need to give them an incentive to work.</p>\n\n<p>This explains the health care bill: it takes from the poor, who need incentives to work, and gives to the wealthy, who need rewards for their success. (So the Republicans think.)</p>\n\n<p style=\"text-align:center\">* * *</p>\n\n\n<p>It’s as if the Republicans have no realistic conception of what it’s like to be poor. The choice isn’t <a href=\"http://www.politico.com/story/2017/03/jason-chaffetz-new-gop-health-care-plan-235762\">between health care and an iPhone</a>, as one Republican suggested — it’s between food and rent, or worse, and forget health care and iPhones entirely.</p>\n\n<p>I was “poor” in my very early 20s. I put that in quotes because I was never in danger of starving or becoming homeless — my parents would have helped me. (They did plenty, in fact.)</p>\n\n<p>But still, even this small experience gives me some insight. I remember buying generic macaroni and cheese because I literally didn’t have enough money for Kraft. And forget hot dogs. And forget vegetables.</p>\n\n<p>I don’t mean that I had some money lying around that I’d put aside; I mean that I had a few dollars to last a week, and if I bought Kraft, which was a few dimes more, I would run out of money before the week was over.</p>\n\n<p>(My bank had a $5 minimum balance for my account. I could withdraw as little as $5 — and in those days ATMs were free — but that would have meant having more than $10 in my account to get that $5. I got so angry because I had, as I recall, $6.91 but couldn’t get at it. I remember thinking that another $5 would change my life.)</p>\n\n<p>I’m not complaining about this, or saying that I had things particularly tough. Not at all.</p>\n\n<p>I’m saying that if you take that experience, and take away any possibility of help from family, and then stretch it out for years and decades — with the inevitable issues, health and otherwise, that happen to everybody — then you have a life where getting ahead is really, really difficult. I can’t imagine; I can only try.</p>\n\n<p>But it’s no semi-sweet life. Not even close.</p>",
+      "date_published": "2017-03-07T18:29:27-08:00"
+    },
+    {
+      "id": "http://inessential.com/2017/02/23/dont_be_scared_if_you_have_to_get_an_mr",
+      "url": "http://inessential.com/2017/02/23/dont_be_scared_if_you_have_to_get_an_mr",
+      "title": "Don’t Be Scared If You Have to Get an MRI",
+      "content_html": "<p>“Totally normal,” said my neurologist of the results of the MRI on my head. No worries.</p>\n\n<p>I was afraid to get an MRI in the first place.</p>\n\n<p>I got a crown last week, and that didn’t worry me — it’s my ninth. Breathe the gas and just chill for a while. No big deal. It’s almost sad when it’s over.</p>\n\n<p>But I was afraid to get the MRI, because I’m slightly claustrophobic, and all I knew was that they’d put me in a big tube and then walk away.</p>\n\n<h4>How It Went</h4>\n\n<p>I didn’t have any dietary restrictions in advance. They didn’t inject me with anything. I was told to wear comfortable clothes with no metal — so I wore sweatpants, a T-shirt, and a sweatshirt. I was able to leave my rings (gold, two small diamonds) on.</p>\n\n<p>Beforehand I did a three-sixty in front of a ferrous metal detector. Then I was led through the doors with the giant warnings about extremely powerful magnets.</p>\n\n<p>I put in earplugs that the technician gave me, and then put on headphones. He asked me what music I’d like, and I replied, “80s. Bowie.” I lied down on the thing. There was a firm but not painful thing to hold my head still and give it something to rest on. Under the lower half of my legs was a foam thing that kept them elevated a little. It was comfortable.</p>\n\n<p>He told me it would take about 20 minutes. He also gave me a bulb to hold onto and to squeeze as an alert, and he said they could pause the tests if needed.</p>\n\n<p>Then he slid me in. The tube was more narrow than I expected. And for the first couple seconds I did feel panic rising a little bit, and I thought about squeezing the bulb — but I didn’t. I oriented myself and took some deep breaths.</p>\n\n<p>I was staring up at the top of the tube (I was on my back), but there was this mirror contraption (two mirrors? hard to tell) that I was looking at, and so I was looking out through the end of the tube. What I was actually seeing was a nice, calm painting on the wall — a river and some trees — and I could see the length of my body and my feet, which were free of the tube. I told myself I could scramble out on my own if I had to.</p>\n\n<p>The music started with a Bowie song — “<a href=\"https://www.youtube.com/watch?v=v--IqqusnNQ\">Life on Mars</a>.” Later there were songs by Talking Heads and similar bands. It was good to have music because I could note the passage of time that way. (I guess I was listening to a Pandora station or something similar.)</p>\n\n<p>The machine was noisy, but I had plenty enough ear protection, and the different scans had different patterns. One scan near the end included a bit of vibration. The technician talked to me through the headphones a couple times to let me know how much time was remaining. I just kept my eyes on that painting the whole time.</p>\n\n<p>I had no trouble being still, except when I had to swallow. I just did. It was otherwise comfortable. And I could have gone another 20 minutes, easy.</p>\n\n<p style=\"text-align:center\">* * *</p>\n\n\n<p>Of course, I’m lucky. I have very good insurance through Omni, and it paid for this. And, even luckier, the results were totally normal.</p>\n\n<p>Hear that, world? The inside of my head is totally normal. I don’t mind feeling good about some good news for a change.</p>\n\n<p><i>Update 4:15 pm</i>: I’ve heard that not all MRIs are so nice. They might not have the mirrors and the music. In that case, well, I’m sorry. Just remember that they won’t forget you’re in there, and they’ll let you out at the end. Stay cool.</p>",
+      "date_published": "2017-02-23T13:37:39-08:00"
+    },
+    {
+      "id": "http://inessential.com/2017/02/22/omnioutliner_essentials",
+      "url": "http://inessential.com/2017/02/22/omnioutliner_essentials",
+      "title": "OmniOutliner Essentials",
+      "content_html": "<p>Omni <a href=\"https://www.omnigroup.com/blog/introducing-omnioutliner-essentials-an-outliner-for-everyone\">introduces OmniOutliner Essentials</a>:</p>\n\n<blockquote><p>We didn’t want to just reach out to our existing audience; we wanted to introduce the joys and benefits of outlining to a much larger audience. We decided that meant two things: we needed to make the app much simpler, and we needed to make it much more affordable.</p></blockquote>\n\n<p>It’s in public preview now. <a href=\"https://www.omnigroup.com/omnioutliner/preview/essentials\">You can check it out</a>.</p>\n\n<p>I’ve been the junior developer on the OmniOutliner team for a couple years, and it’s a joy to work on an app that I’ve loved for years as a user. We’re not finished yet with this release, but I’m very happy with how it’s turning out.</p>\n\n<p>PS I like that Ken mentions MORE in the blog post:</p>\n\n<blockquote><p>We shipped the first beta of OmniOutliner while Mac OS X was still in beta, and doing so introduced us to a passionate community of outliners who had been using great outlining tools like <a href=\"https://en.wikipedia.org/wiki/MORE_(application)\">MORE</a> for over a decade.</p></blockquote>\n\n<p>MORE was by Living Videotext, which was <a href=\"http://scripting.com\">Dave Winer</a>’s company. Later I went to work at Dave’s company UserLand Software, which also included an outliner in its app Frontier, which I worked on. So there is a sort-of family tree connection from OmniOutliner back to MORE.</p>",
+      "date_published": "2017-02-22T10:17:48-08:00"
+    }
+  ]
+}
feeds/jsonfeed.org.json view
@@ -1,21 +1,21 @@-{-  "version": "https://jsonfeed.org/version/1",-  "title": "JSON Feed",-  "description": "JSON Feed is a pragmatic syndication format for blogs, microblogs, and other time-based content.",-  "home_page_url": "https://jsonfeed.org/",-  "feed_url": "https://jsonfeed.org/feed.json",-  "user_comment": "This feed allows you to read the posts from this site in any feed reader that supports the JSON Feed format. To add this feed to your reader, copy the following URL — https://jsonfeed.org/feed.json — and add it your reader.",-  "favicon": "https://jsonfeed.org/graphics/icon.png",-  "author": {-    "name": "Brent Simmons and Manton Reece"-  },-  "items": [-    {-      "id": "https://jsonfeed.org/2017/05/17/announcing_json_feed",-      "url": "https://jsonfeed.org/2017/05/17/announcing_json_feed",-      "title": "Announcing JSON Feed",-      "content_html": "<p>We — Manton Reece and Brent Simmons — have noticed that JSON has become the developers’ choice for APIs, and that developers will often go out of their way to avoid XML. JSON is simpler to read and write, and it’s less prone to bugs.</p>\n\n<p>So we developed JSON Feed, a format similar to <a href=\"http://cyber.harvard.edu/rss/rss.html\">RSS</a> and <a href=\"https://tools.ietf.org/html/rfc4287\">Atom</a> but in JSON. It reflects the lessons learned from our years of work reading and publishing feeds.</p>\n\n<p><a href=\"https://jsonfeed.org/version/1\">See the spec</a>. It’s at version 1, which may be the only version ever needed. If future versions are needed, version 1 feeds will still be valid feeds.</p>\n\n<h4>Notes</h4>\n\n<p>We have a <a href=\"https://github.com/manton/jsonfeed-wp\">WordPress plugin</a> and, coming soon, a JSON Feed Parser for Swift. As more code is written, by us and others, we’ll update the <a href=\"https://jsonfeed.org/code\">code</a> page.</p>\n\n<p>See <a href=\"https://jsonfeed.org/mappingrssandatom\">Mapping RSS and Atom to JSON Feed</a> for more on the similarities between the formats.</p>\n\n<p>This website — the Markdown files and supporting resources — <a href=\"https://github.com/brentsimmons/JSONFeed\">is up on GitHub</a>, and you’re welcome to comment there.</p>\n\n<p>This website is also a blog, and you can subscribe to the <a href=\"https://jsonfeed.org/xml/rss.xml\">RSS feed</a> or the <a href=\"https://jsonfeed.org/feed.json\">JSON feed</a> (if your reader supports it).</p>\n\n<p>We worked with a number of people on this over the course of several months. We list them, and thank them, at the bottom of the <a href=\"https://jsonfeed.org/version/1\">spec</a>. But — most importantly — <a href=\"http://furbo.org/\">Craig Hockenberry</a> spent a little time making it look pretty. :)</p>",-      "date_published": "2017-05-17T08:02:12-07:00"-    }-  ]-}+{
+  "version": "https://jsonfeed.org/version/1",
+  "title": "JSON Feed",
+  "description": "JSON Feed is a pragmatic syndication format for blogs, microblogs, and other time-based content.",
+  "home_page_url": "https://jsonfeed.org/",
+  "feed_url": "https://jsonfeed.org/feed.json",
+  "user_comment": "This feed allows you to read the posts from this site in any feed reader that supports the JSON Feed format. To add this feed to your reader, copy the following URL — https://jsonfeed.org/feed.json — and add it your reader.",
+  "favicon": "https://jsonfeed.org/graphics/icon.png",
+  "author": {
+    "name": "Brent Simmons and Manton Reece"
+  },
+  "items": [
+    {
+      "id": "https://jsonfeed.org/2017/05/17/announcing_json_feed",
+      "url": "https://jsonfeed.org/2017/05/17/announcing_json_feed",
+      "title": "Announcing JSON Feed",
+      "content_html": "<p>We — Manton Reece and Brent Simmons — have noticed that JSON has become the developers’ choice for APIs, and that developers will often go out of their way to avoid XML. JSON is simpler to read and write, and it’s less prone to bugs.</p>\n\n<p>So we developed JSON Feed, a format similar to <a href=\"http://cyber.harvard.edu/rss/rss.html\">RSS</a> and <a href=\"https://tools.ietf.org/html/rfc4287\">Atom</a> but in JSON. It reflects the lessons learned from our years of work reading and publishing feeds.</p>\n\n<p><a href=\"https://jsonfeed.org/version/1\">See the spec</a>. It’s at version 1, which may be the only version ever needed. If future versions are needed, version 1 feeds will still be valid feeds.</p>\n\n<h4>Notes</h4>\n\n<p>We have a <a href=\"https://github.com/manton/jsonfeed-wp\">WordPress plugin</a> and, coming soon, a JSON Feed Parser for Swift. As more code is written, by us and others, we’ll update the <a href=\"https://jsonfeed.org/code\">code</a> page.</p>\n\n<p>See <a href=\"https://jsonfeed.org/mappingrssandatom\">Mapping RSS and Atom to JSON Feed</a> for more on the similarities between the formats.</p>\n\n<p>This website — the Markdown files and supporting resources — <a href=\"https://github.com/brentsimmons/JSONFeed\">is up on GitHub</a>, and you’re welcome to comment there.</p>\n\n<p>This website is also a blog, and you can subscribe to the <a href=\"https://jsonfeed.org/xml/rss.xml\">RSS feed</a> or the <a href=\"https://jsonfeed.org/feed.json\">JSON feed</a> (if your reader supports it).</p>\n\n<p>We worked with a number of people on this over the course of several months. We list them, and thank them, at the bottom of the <a href=\"https://jsonfeed.org/version/1\">spec</a>. But — most importantly — <a href=\"http://furbo.org/\">Craig Hockenberry</a> spent a little time making it look pretty. :)</p>",
+      "date_published": "2017-05-17T08:02:12-07:00"
+    }
+  ]
+}
feeds/manton.org.json view
@@ -1,120 +1,120 @@-{-    "version": "https://jsonfeed.org/version/1",-    "user_comment": "This feed allows you to read the posts from this site in any feed reader that supports the JSON Feed format. To add this feed to your reader, copy the following URL -- https://www.manton.org/feed/json -- and add it your reader.",-    "home_page_url": "https://www.manton.org",-    "feed_url": "https://www.manton.org/feed/json",-    "title": "Manton Reece",-    "description": "",-    "items": [-        {-            "id": "https://www.manton.org/2017/05/5177.html",-            "url": "https://www.manton.org/2017/05/5177.html",-            "title": "",-            "content_html": "<p>NSDrinking tonight, 8pm at Ginger Man. We were thinking near the front instead of out back, so we can check on the Cavs game. :-)</p>\n",-            "date_published": "2017-05-25T15:40:25+00:00",-            "date_modified": "2017-05-25T15:40:25+00:00",-            "author": {-                "name": "manton"-            }-        },-        {-            "id": "https://www.manton.org/2017/05/5175.html",-            "url": "https://www.manton.org/2017/05/5175.html",-            "title": "",-            "content_html": "<p>Still making plans for San Jose? 1 day left to register for <a href=\"http://cocoaconf.com/nextdoor/home\">CocoaConf during WWDC</a>. Hope to see y&#8217;all there.</p>\n",-            "date_published": "2017-05-25T10:48:12+00:00",-            "date_modified": "2017-05-25T10:48:12+00:00",-            "author": {-                "name": "manton"-            }-        },-        {-            "id": "https://www.manton.org/2017/05/5173.html",-            "url": "https://www.manton.org/2017/05/5173.html",-            "title": "",-            "content_html": "<p>WordPress plugin for JSON Feed is now in the directory. WP Admin \u2192 Plugins \u2192 Add New, then search for &#8220;jsonfeed&#8221;. Easy install and update.</p>\n",-            "date_published": "2017-05-25T08:02:11+00:00",-            "date_modified": "2017-05-25T08:02:11+00:00",-            "author": {-                "name": "manton"-            }-        },-        {-            "id": "https://www.manton.org/2017/05/micro-blog-photos.html",-            "url": "https://www.manton.org/2017/05/micro-blog-photos.html",-            "title": "Micro.blog photos",-            "content_html": "<p>This week we added a selection of photos to the Discover page on <a href=\"https://micro.blog/\">Micro.blog</a>, and today I uploaded a new TestFlight beta with the same feature inside the app. It&#8217;s another way to find users to follow, or just see what the Micro.blog community is up to.</p>\n<p>Here&#8217;s what the iPhone screen looks like:</p>\n<p><img src=\"http://www.manton.org/images/2017/microblog_discover_photos.png\" width=\"251\" height=\"430\" alt=\"iPhone screenshot\" /></p>\n<p>I think photoblogging is a really important part of indie microblogging. When I share photos online, I want them to be at my own web site in addition to cross-posted to Twitter and other social networks. Photos always capture something \u2014 a moment with family or friends, visiting a new place, or just the everyday routine as it changes \u2014\u00a0and I want Micro.blog to provide a great user experience for photos, from filters to hosting.</p>\n",-            "date_published": "2017-05-24T17:54:35+00:00",-            "date_modified": "2017-05-24T17:54:35+00:00",-            "author": {-                "name": "manton"-            }-        },-        {-            "id": "https://www.manton.org/2017/05/first-week-of-json-feed.html",-            "url": "https://www.manton.org/2017/05/first-week-of-json-feed.html",-            "title": "First week of JSON Feed",-            "content_html": "<p>I&#8217;ve been impressed with how quickly people have adopted JSON Feed. There are a bunch of feeds in the wild now, <a href=\"https://jsonfeed.org/code\">as well as code and templates</a> for popular languages and web frameworks. The next step is support in feed readers, including brand new feed readers, which is <a href=\"https://json-feed-viewer.herokuapp.com\">already happening</a>.</p>\n<p>Feedbin and <a href=\"http://blog.newsblur.com/post/160982162270/newsblur-now-supports-the-new-json-feed-spec\">NewsBlur</a> both added support for JSON Feed. I like how <a href=\"https://feedbin.com/blog/2017/05/22/feedbin-supports-json-feed/\">Feedbin&#8217;s Ben Ubois puts it</a>:</p>\n<blockquote><p>\n  One of the criticisms I\u2019ve seen of JSON Feed is that there\u2019s no incentive for feed readers to support JSON Feed. This is not true. One of the largest-by-volume support questions I get is along the lines of \u201cWhy does this random feed not work?\u201d And, 95% of the time, it\u2019s because the feed is broken in some subtle way. JSON Feed will help alleviate these problems, because it\u2019s easier to get right.\n</p></blockquote>\n<p><a href=\"https://micro.blog/\">Micro.blog</a> can also read from JSON feeds. I&#8217;ll be switching over all the hosted sites to prefer JSON. I&#8217;m doing that slowly to make sure there aren&#8217;t any issues with duplicate posts. (There shouldn&#8217;t be, but it&#8217;s something to watch out for with self-hosted sites if your post IDs change.)</p>\n<p><a href=\"https://github.com/manton/jsonfeed-wp\">The WordPress plugin</a> is <em>almost</em> in the WordPress directory. I&#8217;ll link to it as soon as it&#8217;s live, because it will make installing the WordPress plugin much easier.</p>\n",-            "date_published": "2017-05-24T16:27:21+00:00",-            "date_modified": "2017-05-24T16:27:21+00:00",-            "author": {-                "name": "manton"-            }-        },-        {-            "id": "https://www.manton.org/2017/05/interview-at-the-brooks-review.html",-            "url": "https://www.manton.org/2017/05/interview-at-the-brooks-review.html",-            "title": "Interview at The Brooks Review",-            "content_html": "<p><a href=\"https://brooksreview.net/2017/05/an-interview-with-manton-reece/\">I talked with Ben Brooks over Slack</a> this week about Micro.blog and JSON Feed. From the chat:</p>\n<blockquote><p>\n  Micro.blog and JSON Feed share a common goal, which is to encourage more blogging on the open web, and new tools that can make blogging easier. I feel like we\u2019ve gotten off course a little since the early days of blogging, with so many people now putting all of their writing into closed, centralized platforms like Twitter or Facebook. I think we can make it easier to own your own content, have your own domain name, and maybe learn from the UI in modern social networks too.\n</p></blockquote>\n<p>Slack makes for a really interesting interview format. Some of the spontaneity of a podcast, but with live editing and an automatic transcript. Similar to what Talkshow.im was trying to do before they shut down.</p>\n",-            "date_published": "2017-05-24T13:52:09+00:00",-            "date_modified": "2017-05-24T13:52:09+00:00",-            "author": {-                "name": "manton"-            }-        },-        {-            "id": "https://www.manton.org/2017/05/5165.html",-            "url": "https://www.manton.org/2017/05/5165.html",-            "title": "",-            "content_html": "<p>Uploaded a new TestFlight build with a photos tab under Discover, new filters, and more. Starting to come together.</p>\n",-            "date_published": "2017-05-24T13:38:27+00:00",-            "date_modified": "2017-05-24T13:38:27+00:00",-            "author": {-                "name": "manton"-            }-        },-        {-            "id": "https://www.manton.org/2017/05/5163.html",-            "url": "https://www.manton.org/2017/05/5163.html",-            "title": "",-            "content_html": "<p>A couple Micro.blog improvements early this week&#8230; We&#8217;ve started showing photos on the Discover page on the web. It&#8217;s a nice way to find new users. Also, more of the pins work now! Looking forward to adding more.</p>\n",-            "date_published": "2017-05-23T20:21:12+00:00",-            "date_modified": "2017-05-23T20:21:12+00:00",-            "author": {-                "name": "manton"-            }-        },-        {-            "id": "https://www.manton.org/2017/05/5161.html",-            "url": "https://www.manton.org/2017/05/5161.html",-            "title": "",-            "content_html": "<p>115 points is a good finish for the Spurs. Their average this season was 105. Gotta beat the Warriors with defense, and can&#8217;t do that when the best defensive player in the NBA is out hurt. Next year.</p>\n",-            "date_published": "2017-05-22T22:40:07+00:00",-            "date_modified": "2017-05-22T22:40:07+00:00",-            "author": {-                "name": "manton"-            }-        },-        {-            "id": "https://www.manton.org/2017/05/5159.html",-            "url": "https://www.manton.org/2017/05/5159.html",-            "title": "",-            "content_html": "<p>Spurs start Manu Ginobili for game 4. I love it on a couple levels. And he gets the first basket of the game.</p>\n",-            "date_published": "2017-05-22T20:09:20+00:00",-            "date_modified": "2017-05-22T20:09:20+00:00",-            "author": {-                "name": "manton"-            }-        }-    ]+{
+    "version": "https://jsonfeed.org/version/1",
+    "user_comment": "This feed allows you to read the posts from this site in any feed reader that supports the JSON Feed format. To add this feed to your reader, copy the following URL -- https://www.manton.org/feed/json -- and add it your reader.",
+    "home_page_url": "https://www.manton.org",
+    "feed_url": "https://www.manton.org/feed/json",
+    "title": "Manton Reece",
+    "description": "",
+    "items": [
+        {
+            "id": "https://www.manton.org/2017/05/5177.html",
+            "url": "https://www.manton.org/2017/05/5177.html",
+            "title": "",
+            "content_html": "<p>NSDrinking tonight, 8pm at Ginger Man. We were thinking near the front instead of out back, so we can check on the Cavs game. :-)</p>\n",
+            "date_published": "2017-05-25T15:40:25+00:00",
+            "date_modified": "2017-05-25T15:40:25+00:00",
+            "author": {
+                "name": "manton"
+            }
+        },
+        {
+            "id": "https://www.manton.org/2017/05/5175.html",
+            "url": "https://www.manton.org/2017/05/5175.html",
+            "title": "",
+            "content_html": "<p>Still making plans for San Jose? 1 day left to register for <a href=\"http://cocoaconf.com/nextdoor/home\">CocoaConf during WWDC</a>. Hope to see y&#8217;all there.</p>\n",
+            "date_published": "2017-05-25T10:48:12+00:00",
+            "date_modified": "2017-05-25T10:48:12+00:00",
+            "author": {
+                "name": "manton"
+            }
+        },
+        {
+            "id": "https://www.manton.org/2017/05/5173.html",
+            "url": "https://www.manton.org/2017/05/5173.html",
+            "title": "",
+            "content_html": "<p>WordPress plugin for JSON Feed is now in the directory. WP Admin \u2192 Plugins \u2192 Add New, then search for &#8220;jsonfeed&#8221;. Easy install and update.</p>\n",
+            "date_published": "2017-05-25T08:02:11+00:00",
+            "date_modified": "2017-05-25T08:02:11+00:00",
+            "author": {
+                "name": "manton"
+            }
+        },
+        {
+            "id": "https://www.manton.org/2017/05/micro-blog-photos.html",
+            "url": "https://www.manton.org/2017/05/micro-blog-photos.html",
+            "title": "Micro.blog photos",
+            "content_html": "<p>This week we added a selection of photos to the Discover page on <a href=\"https://micro.blog/\">Micro.blog</a>, and today I uploaded a new TestFlight beta with the same feature inside the app. It&#8217;s another way to find users to follow, or just see what the Micro.blog community is up to.</p>\n<p>Here&#8217;s what the iPhone screen looks like:</p>\n<p><img src=\"http://www.manton.org/images/2017/microblog_discover_photos.png\" width=\"251\" height=\"430\" alt=\"iPhone screenshot\" /></p>\n<p>I think photoblogging is a really important part of indie microblogging. When I share photos online, I want them to be at my own web site in addition to cross-posted to Twitter and other social networks. Photos always capture something \u2014 a moment with family or friends, visiting a new place, or just the everyday routine as it changes \u2014\u00a0and I want Micro.blog to provide a great user experience for photos, from filters to hosting.</p>\n",
+            "date_published": "2017-05-24T17:54:35+00:00",
+            "date_modified": "2017-05-24T17:54:35+00:00",
+            "author": {
+                "name": "manton"
+            }
+        },
+        {
+            "id": "https://www.manton.org/2017/05/first-week-of-json-feed.html",
+            "url": "https://www.manton.org/2017/05/first-week-of-json-feed.html",
+            "title": "First week of JSON Feed",
+            "content_html": "<p>I&#8217;ve been impressed with how quickly people have adopted JSON Feed. There are a bunch of feeds in the wild now, <a href=\"https://jsonfeed.org/code\">as well as code and templates</a> for popular languages and web frameworks. The next step is support in feed readers, including brand new feed readers, which is <a href=\"https://json-feed-viewer.herokuapp.com\">already happening</a>.</p>\n<p>Feedbin and <a href=\"http://blog.newsblur.com/post/160982162270/newsblur-now-supports-the-new-json-feed-spec\">NewsBlur</a> both added support for JSON Feed. I like how <a href=\"https://feedbin.com/blog/2017/05/22/feedbin-supports-json-feed/\">Feedbin&#8217;s Ben Ubois puts it</a>:</p>\n<blockquote><p>\n  One of the criticisms I\u2019ve seen of JSON Feed is that there\u2019s no incentive for feed readers to support JSON Feed. This is not true. One of the largest-by-volume support questions I get is along the lines of \u201cWhy does this random feed not work?\u201d And, 95% of the time, it\u2019s because the feed is broken in some subtle way. JSON Feed will help alleviate these problems, because it\u2019s easier to get right.\n</p></blockquote>\n<p><a href=\"https://micro.blog/\">Micro.blog</a> can also read from JSON feeds. I&#8217;ll be switching over all the hosted sites to prefer JSON. I&#8217;m doing that slowly to make sure there aren&#8217;t any issues with duplicate posts. (There shouldn&#8217;t be, but it&#8217;s something to watch out for with self-hosted sites if your post IDs change.)</p>\n<p><a href=\"https://github.com/manton/jsonfeed-wp\">The WordPress plugin</a> is <em>almost</em> in the WordPress directory. I&#8217;ll link to it as soon as it&#8217;s live, because it will make installing the WordPress plugin much easier.</p>\n",
+            "date_published": "2017-05-24T16:27:21+00:00",
+            "date_modified": "2017-05-24T16:27:21+00:00",
+            "author": {
+                "name": "manton"
+            }
+        },
+        {
+            "id": "https://www.manton.org/2017/05/interview-at-the-brooks-review.html",
+            "url": "https://www.manton.org/2017/05/interview-at-the-brooks-review.html",
+            "title": "Interview at The Brooks Review",
+            "content_html": "<p><a href=\"https://brooksreview.net/2017/05/an-interview-with-manton-reece/\">I talked with Ben Brooks over Slack</a> this week about Micro.blog and JSON Feed. From the chat:</p>\n<blockquote><p>\n  Micro.blog and JSON Feed share a common goal, which is to encourage more blogging on the open web, and new tools that can make blogging easier. I feel like we\u2019ve gotten off course a little since the early days of blogging, with so many people now putting all of their writing into closed, centralized platforms like Twitter or Facebook. I think we can make it easier to own your own content, have your own domain name, and maybe learn from the UI in modern social networks too.\n</p></blockquote>\n<p>Slack makes for a really interesting interview format. Some of the spontaneity of a podcast, but with live editing and an automatic transcript. Similar to what Talkshow.im was trying to do before they shut down.</p>\n",
+            "date_published": "2017-05-24T13:52:09+00:00",
+            "date_modified": "2017-05-24T13:52:09+00:00",
+            "author": {
+                "name": "manton"
+            }
+        },
+        {
+            "id": "https://www.manton.org/2017/05/5165.html",
+            "url": "https://www.manton.org/2017/05/5165.html",
+            "title": "",
+            "content_html": "<p>Uploaded a new TestFlight build with a photos tab under Discover, new filters, and more. Starting to come together.</p>\n",
+            "date_published": "2017-05-24T13:38:27+00:00",
+            "date_modified": "2017-05-24T13:38:27+00:00",
+            "author": {
+                "name": "manton"
+            }
+        },
+        {
+            "id": "https://www.manton.org/2017/05/5163.html",
+            "url": "https://www.manton.org/2017/05/5163.html",
+            "title": "",
+            "content_html": "<p>A couple Micro.blog improvements early this week&#8230; We&#8217;ve started showing photos on the Discover page on the web. It&#8217;s a nice way to find new users. Also, more of the pins work now! Looking forward to adding more.</p>\n",
+            "date_published": "2017-05-23T20:21:12+00:00",
+            "date_modified": "2017-05-23T20:21:12+00:00",
+            "author": {
+                "name": "manton"
+            }
+        },
+        {
+            "id": "https://www.manton.org/2017/05/5161.html",
+            "url": "https://www.manton.org/2017/05/5161.html",
+            "title": "",
+            "content_html": "<p>115 points is a good finish for the Spurs. Their average this season was 105. Gotta beat the Warriors with defense, and can&#8217;t do that when the best defensive player in the NBA is out hurt. Next year.</p>\n",
+            "date_published": "2017-05-22T22:40:07+00:00",
+            "date_modified": "2017-05-22T22:40:07+00:00",
+            "author": {
+                "name": "manton"
+            }
+        },
+        {
+            "id": "https://www.manton.org/2017/05/5159.html",
+            "url": "https://www.manton.org/2017/05/5159.html",
+            "title": "",
+            "content_html": "<p>Spurs start Manu Ginobili for game 4. I love it on a couple levels. And he gets the first basket of the game.</p>\n",
+            "date_published": "2017-05-22T20:09:20+00:00",
+            "date_modified": "2017-05-22T20:09:20+00:00",
+            "author": {
+                "name": "manton"
+            }
+        }
+    ]
 }
feeds/maybepizza.com.json view
@@ -1,82 +1,82 @@-{-    "version": "https://jsonfeed.org/version/1",-    "title": "Maybe Pizza?",-    "home_page_url": "http://maybepizza.com/",-    "feed_url": "http://maybepizza.com/feed.json",-    "description": "Gus's experiments in making pizza with very hot ovens.  And Pizza reviews, why not?.",-    "author": {-        "name": "Gus Mueller"-    },-    "items": [-        {-            "id": "http://maybepizza.com/archives/2016/1/monogram_pizza_oven.html",-            "title": "GE's Monogram Pizza Oven Is Probably a Bad Idea",-            "content_html": "<p><a href=\"http://www.digitaltrends.com/home/ge-firstbuild-monogram-pizza-oven/\">Digital Trends</a>: </p>\n<blockquote>\n<p>&quot;But now you too can own an oven hot enough to make Satan sweat. GE’s elite FirstBuild team just unveiled the Monogram Pizza Oven, which can not only hit the same temperatures as the scorcher your local pizzeria uses, it’s a lot smarter, too.\n<br/><br/>\n&quot;This isn’t another one of those backyard, wood-fired pizza ovens that have been gaining popularity over the past few years as home pizza making takes off. The Monogram Pizza Oven installs right in your kitchen and uses a standard 240-volt outlet, with no special venting required, unlike a commercial unit. But you won’t mistake it for an ordinary kitchen oven. The short height and conspicuous lack of a door are a dead giveaway you’re dealing with a culinary dragon.&quot;</p>\n</blockquote>\n<p>I don&#39;t understand how an oven like this gets made. The reason why traditional wood fired ovens don&#39;t have a door is because you need a steady flow of oxygen to feed the fire. You put a door on an electric oven to keep the heat and moisture in.</p>\n<blockquote>\n<p>&quot;The Monogram can blast to 800 degrees within a half hour of preheating, and 14 heating elements in the dome can rocket the top up to a blistering 1,200 degrees. Those conditions, it turns out, are exactly what you need to bake a perfect Neapolitan-style pizza … in two minutes flat.&quot;</p>\n</blockquote>\n<p>If you&#39;re taking two minutes to bake a Neapolitan pizza in an oven that goes to 1.2k, then something is seriously wrong with your oven. I&#39;ve baked at 1.2k before, and it&#39;s insanely difficult. Your pizza is going to cook in about 45 seconds and unless you have everything dialed you&#39;re going to have a pizza that&#39;s burnt on the outside with raw dough on the inside.</p>\n<p><a href=\"http://www.digitaltrends.com/home/ge-monogram-pizza-oven-taste-test/\">From another page</a> on Digital Trends where they try out pizzas made in the oven:</p>\n<blockquote>\n<p>&quot;Each slice was crispy on the outside, still chewy inside, with just a hint of crumbly black char around the edges — an effect I’ve never been able to replicate in my home oven.&quot;</p>\n</blockquote>\n<p>Neapolitan pizza is supposed to be soft, not crispy. Crispy is what happens when you bake too long and use the wrong flour. Looking at the pizzas made in the GE oven and the burnt edges where there should be leoparding, I&#39;m guessing these were 2-3 minute pies.</p>\n<p>Here&#39;s what a proper neo pizza should look like:</p>\n<center>\n<img src=\"https://instagram.fsnc1-1.fna.fbcdn.net/hphotos-xpa1/t51.2885-15/s640x640/sh0.08/e35/12547241_1036741646346643_1720954828_n.jpg\" style=\"border: solid 1px #000;\" width=\"320\" height=\"320\" /><br/>\n(Photo from <a href=\"https://www.instagram.com/pizzicletta/\">@pizzicletta&#39;s</a> Instagram page)\n</center>\n\n<p>From the previous page:</p>\n<blockquote>\n<p>&quot;But can anything top the satisfaction of making your own pizza at home? Or more importantly, watching your personal chef make it for you?&quot;</p>\n</blockquote>\n<p>At $10,000 USD, I guess this is for people with more money than sense. If you&#39;re going to get an electric oven for baking neapolitan at home, you&#39;re probably better off getting a <a href=\"https://www.google.com/search?client=safari&amp;rls=en&amp;q=cuppone+tiziano&amp;ie=UTF-8&amp;oe=UTF-8\">Cuppone Tiziano</a> or a <a href=\"https://www.google.com/search?client=safari&amp;rls=en&amp;q=Effeuno+P134H&amp;ie=UTF-8&amp;oe=UTF-8\">Effeuno P134H</a> if you live in Europe (you lucky jerks).</p>\n<p>Found via <a href=\"http://www.pizzamaking.com/forum/index.php?topic=41271.0\">Pizza Making</a>.</p>\n",-            "date_published": "2016-01-22T17:43:25.000Z",-            "url": "http://maybepizza.com/archives/2016/1/monogram_pizza_oven.html"-        },-        {-            "id": "http://maybepizza.com/archives/2016/2/reading_up_on_yeast.html",-            "title": "Reading Up on Yeast",-            "content_html": "<p>A good read from King Arthur- <a href=\"http://www.kingarthurflour.com/blog/2016/01/29/yeast-use/\">Choosing the Best Type (of Yeast) for Any Recipe</a>.</p>\n<p>Their pick has been my favorite for years- <a href=\"http://www.amazon.com/gp/product/B0001CXUHW/ref=as_li_tl?ie=UTF8&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B0001CXUHW&amp;linkCode=as2&amp;tag=pizlab-20&amp;linkId=ADYRWQAIFMBK7UZZ\">SAF instant yeast</a>. I buy a 1lb bag of this, and replace it every 6 months. KA has a <a href=\"http://www.kingarthurflour.com/shop/items/yeast-set\">nice little set</a> which includes the yeast, as well as a container for it (which I also use). Put that in your fridge and you&#39;ll be set for a long while.</p>\n",-            "date_published": "2016-02-02T18:39:58.000Z",-            "url": "http://maybepizza.com/archives/2016/2/reading_up_on_yeast.html"-        },-        {-            "id": "http://maybepizza.com/archives/2016/5/shepherds_grain.html",-            "title": "Shepherd’s Grain Flour",-            "content_html": "<p>We were talking a bit of Pizza last night at <a href=\"http://www.cyclopsseattle.com\">Cyclops</a>, as you do, and the topic of flour was brought up.</p>\n<p>If you live in the greater Seattle area, you need to go buy some <a href=\"http://www.shepherdsgrain.com\">Shepherd’s Grain</a> High Gluten flour. <a href=\"https://www.smartfoodservice.com\">Cash &amp; Carry</a> has 50lb bags of it, for $21. You can&#39;t beat that price, and I&#39;ve not found a better flour for use in your home oven. It makes great bread too.</p>\n<p>We&#39;re pretty damn lucky to have this flour, take advantage of it.</p>\n",-            "date_published": "2016-05-13T17:57:30.000Z",-            "url": "http://maybepizza.com/archives/2016/5/shepherds_grain.html"-        },-        {-            "id": "http://maybepizza.com/archives/2016/5/quick_pizza_recommendations_for_wwdc.html",-            "title": "Quick Pizza Recommendations for WWDC",-            "content_html": "<p><a href=\"https://en.wikipedia.org/wiki/Apple_Worldwide_Developers_Conference\">WWDC</a> will soon be here, and you might be thinking to yourself, gee- I wonder if there&#39;s any good Neapolitan pizza in San Francisco?</p>\n<p>Why yes, there is.</p>\n<p>I&#39;ve not been to very many neo pizza places in SF, but I&#39;ve been to enough to at least make a small list of recommendations. So here you go:</p>\n<p><strong><a href=\"http://www.zerozerosf.com/\">Zero Zero</a></strong>. Located just a couple of blocks away from the Moscone Center where WWDC is hosted. It&#39;s open late, has a nice bar, and the quality of the pizza is pretty consistent.</p>\n<p>It&#39;s a little pricy and can get crowded, but it&#39;s good pie.</p>\n<p><strong><a href=\"http://tonyspizzanapoletana.com\">Tony’s Pizza Napoletana</a></strong>. A bit of a hike from WWDC, but if you&#39;re a pizza aficionado, you absolutely need to go here. The (PDF) <a href=\"http://tonyspizzanapoletana.com/wp-content/uploads/2015/12/TonysPizzaNapoletana_Menu-12162015.pdf\">menu is astounding</a>. Ten different styles of pizzas, from Neapolitan to St. Louis to Detroit and even Coal Fired. WTF, how many ovens do they have? Who even does this? <a href=\"http://maybepizza.com/assets/THIS_IS_AMAZING.mp3\">THIS IS AMAZING</a>. My brain just about exploded the first time I saw their menu.</p>\n<p><strong><a href=\"https://www.google.com/search?client=safari&amp;rls=en&amp;q=una+pizza+napoletana&amp;ie=UTF-8&amp;oe=UTF-8\">Una Pizza Napoletana</a></strong>. Famous for being Una Pizza Napoletana, this restaurant is another must for the pizza aficionado. Actually, I&#39;d say it&#39;s more of a pilgrimage (though a short one at a 25 minute walk from Moscone Center). The resident pizzaiolo, Anthony Mangieri, is widely credited for helping start the US Neapolitan craze. Check out their <a href=\"http://www.unapizza.com/home\">videos page</a> for a taste (and scroll right to start with the last video, working forward after that).</p>\n<p>It&#39;s a bit pricy, and can be a bit wet. I recommend the Filetti.</p>\n<p><strong><a href=\"http://www.delpopolosf.com\">Del Popolo</a></strong>. This is currently my favorite Neapolitan pizza in all the universe. And since I&#39;ve last had it they&#39;ve opened up a brick store, which means you now have two locations to grab a pie from.</p>\n<p>Del Popolo (aka, Jon Darsky) is mostly known because they took a flippen&#39; giant shipping container, <a href=\"http://www.psfk.com/2012/07/shipping-container-gets-converted-into-a-wood-fired-pizza-oven-food-truck.html\">stuck it it on a big truck</a>, put a Stefano Ferrara pizza oven in there, and made it look pretty. And that pizza truck usually shows up a block or two away at Mint Plaza during WWDC.</p>\n<p>The prices for the pizza truck are very reasonable, and I recommend everything.</p>\n<p>I haven&#39;t been to the restaurant on Bush Street yet, but my hotel is a few blocks away, so you bet I will. Most likely more than once.</p>\n<p>…</p>\n<p>I hope this year to expand my horizons a bit more and try out some new places. Got any recommendations for me? Delfina and PizzaHacker are already on the list.</p>\n",-            "date_published": "2016-05-19T20:24:38.000Z",-            "url": "http://maybepizza.com/archives/2016/5/quick_pizza_recommendations_for_wwdc.html"-        },-        {-            "id": "http://maybepizza.com/archives/2016/6/a_philosophy_of_pizza_napoletanismo.html",-            "title": "A Philosophy of Pizza Napoletanismo",-            "content_html": "<p>If you have the time, and want to dig into some history, check out the <a href=\"http://www.pizzamaking.com/forum/index.php?topic=14506.0\">A Philosophy of Pizza Napoletanismo</a> thread on the PM forums. Omid is a Neapolitan nut, and has made some great contributions to the thread over the years. It&#39;s also neat to see him change his mind about things over the years.</p>\n<p>I&#39;m also pretty jealous of <a href=\"http://www.pizzamaking.com/forum/index.php?topic=14506.msg434872#msg434872\">his pizza studio</a>.</p>\n",-            "date_published": "2016-06-10T20:04:04.000Z",-            "url": "http://maybepizza.com/archives/2016/6/a_philosophy_of_pizza_napoletanismo.html"-        },-        {-            "id": "http://maybepizza.com/archives/2016/6/my_new_pizza_dough_calculator.html",-            "title": "My New Pizza Dough Calculator",-            "content_html": "<p>For years I&#39;ve been using a little worksheet I made up in <a href=\"http://calca.io\">Calca</a> to calculate how many grams of water, flour, and salt I need in my dough. I would frequently change the values for experimentation though, but I wouldn&#39;t ever be able to refer back to them. And it was also worthless if I wanted to send a specific recipe to a friend.</p>\n<p>So I looked around for a dough calculator, and while I came across some <a href=\"http://www.pizzacreator.net\">nice ones</a>, they didn&#39;t do everything I wanted (like bookmarking). So I of course made my own.</p>\n<p><a href=\"http://maybepizza.com/calc/\">The Maybe Pizza? Dough Calculator</a>, at your service. Works great on iOS as well.</p>\n",-            "date_published": "2016-06-10T20:13:23.000Z",-            "url": "http://maybepizza.com/archives/2016/6/my_new_pizza_dough_calculator.html"-        },-        {-            "id": "http://maybepizza.com/archives/2016/11/discovering_the_science_secrets_of_sourdough.html",-            "title": "Discovering The Science Secrets Of Sourdough",-            "content_html": "<p>NPR: <a href=\"http://www.npr.org/sections/thesalt/2016/10/28/499363379/discovering-the-science-secrets-of-sourdough-you-can-help\">Discovering The Science Secrets Of Sourdough</a></p>\n<blockquote>\n<p>&quot;Those first bubbles were almost a revelation. A couple of days before, I had mixed together flour and water into a paste. But now pockets of gas percolated through that seemingly inert glob. It was breathing. It was alive.</p>\n<p>&quot;This gloppy mess, exuding a whiff of vinegar, was my nascent sourdough starter. When mature, it would be a pungent brew of yeasts and bacteria, a complex ecosystem that would hopefully yield delicious loaves of sourdough bread.</p>\n<p>&quot;As the microbes eat the sugars in the flour, they exhale carbon dioxide, producing the bubbles that turn a flat, dense loaf into something light and fluffy. A starter breathes life into bread. If the loaf is the body, the starter is the soul.&quot;</p>\n</blockquote>\n<p>Over the years I&#39;ve attempted to use starters for my pizza dough, without any success. I could get <a href=\"http://amzn.to/2ejagmW\">various starters</a> going but the flavor it invoked just wasn&#39;t something I liked.</p>\n<p>That changed this past summer, after chatting with some folks at the <a href=\"http://www.delpopolosf.com/truck\">Del Popolo pizza truck</a>. I asked if they added any yeast to their starter to help things out, and the answer was no. Do they sell it? Again the answer was no. But the guy in the truck offered some more information- the Del Popolo starter was super active, and they fed it 4 times a day.</p>\n<p>Four. Times. A. Day.</p>\n<p>That&#39;s a lot. I knew that frequently feeding your starter would make it less sour, but … four times a day. That&#39;s commitment.</p>\n<p>So when I returned home from my trip, I made a new starter, and I fed it. A lot. It became super active, and I was soon feeding it 3-4 times a day.</p>\n<p>And I knew the temperature it lived in would change which microbes became more active, so bought a little round thermos from a thrift store, a <a href=\"http://amzn.to/2fwsMps\">temperature controller</a>, and stuck a seedling heat mat in there.</p>\n<center><img class=\"bb\" src=\"http://maybepizza.com//images/2016/startertherm.jpg\" alt=\"My starter contraption.\"  width=\"660\" /><div style=\"color: #666; padding-top: 2px;\">My starter contraption.</div></center>\n\n<p>Pretty soon I had a starter with really good flavor and very little sour to it. And for the past 6 months or so, I&#39;ve been using using it in my pizzas.</p>\n<p>At first I would just add 1-2% as a flavoring agent in addition to the normal yeast amounts. Then I started ramping up the amount of starter I&#39;d use to 10% and even pushing it up to 20% at times.</p>\n<p>I&#39;d try experimenting by not adding any yeast, or maybe just a tiny bit. I&#39;m still learning what the best ratios are, and even what temperature I keep the active starter at. This past weekend had it a 84 degrees, 10% starter, and 1/4 teaspoon of yeast for six dough balls (it turned out pretty awesome).</p>\n<p>I have a whole routine I use to store and swap out older starter that goes dormant in the fridge, and what I do to re-train it to get it ready for pizza on the weekend. I&#39;ll probably go into detail about that some day in the future, but the takeaway from this post is: if you haven&#39;t been happy with starter in the past, maybe try again? And do everything in your power to keep your starter in a stable environment so things like feeding schedules and temperatures don&#39;t throw everything off?</p>\n<p>It&#39;s nice having a new area to explore with my pizza making. And my starter&#39;s name? &quot;Magic&quot;.</p>\n",-            "date_published": "2016-11-08T19:02:37.000Z",-            "url": "http://maybepizza.com/archives/2016/11/discovering_the_science_secrets_of_sourdough.html"-        },-        {-            "id": "http://maybepizza.com/archives/2016/11/another_new_pizza_oven.html",-            "title": "Another New Pizza Oven",-            "content_html": "<p>I bought a <a href=\"http://www.webstaurantstore.com/waring-wpo500-single-deck-countertop-pizza-oven-120v/929WPO500.html\">Waring WPO500</a> pizza oven for my birthday. It&#39;s a piece of junk, you shouldn&#39;t get one.</p>\n<p>The elements are so weak that I was never able to get it up to its max temperature. There is no way to adjust the bottom heat temp versus the top, so you end with burnt pizzas on the bottom. And the amount of insulation it comes with is a complete joke.</p>\n<p>I wasn&#39;t surprised though, I kind of figured this would be the case. My intention when buying this, was to beef up any insulation if it need it, add another element or two, and use my own stones in the oven. And that is exactly what I&#39;ve done.</p>\n<center><img class=\"bb\" src=\"http://maybepizza.com//images/2016/img_4608.jpeg\" alt=\"Pizza #3\"  width=\"660\" /><div style=\"color: #666; padding-top: 2px;\">Pizza #3</div></center>\n\n<p>With my improvements, I&#39;m seeing around a 30 minute warm up time and bakes that are a little less than 2 minutes. This is about double the amount of time it would take to cook my pizzas in <a href=\"http://maybepizza.com/archives/2014/6/rocket.html\">Rocket</a>, but they are still coming out great. In fact there&#39;s a certain… quality to the pizzas that I&#39;m not quite able to put into words yet, but they seem to be coming out even better than they would in Rocket. I think it might have to do with using a more starter to get the dough going, but there&#39;s also a lot more volume in the oven chamber of the Waring oven, which might be contributing to the difference.</p>\n<p>I haven&#39;t thought of a name yet, as it hasn&#39;t quite settled on a personality. But I&#39;ll keep on hacking on it, and eventually come up with something.</p>\n",-            "date_published": "2016-11-20T00:11:14.000Z",-            "url": "http://maybepizza.com/archives/2016/11/another_new_pizza_oven.html"-        },-        {-            "id": "http://maybepizza.com/archives/2017/1/youre_going_to_fuck_up_some_pizzas.html",-            "title": "You're going to fuck up some pizzas.",-            "content_html": "<p>You need to <a href=\"https://twitter.com/tomdale/status/814616894762323968\">follow the link to read the whole image</a>, but here&#39;s a neat passage from an unknown (to me) pizza book. </p>\n<p><a href=\"https://twitter.com/tomdale/status/814616894762323968\">Profunctor Optics on Twitter</a>:</p>\n<blockquote>\n<p>&quot;We wish someone sat us down, looked us in the eye and told us that before we went on this journey. There were a couple times when, propelled into a fit of rage, pizza peel thrown across the room, tomato sauce splattered against the kitchen floor, we honestly regretted ever even trying to make homemade pizza. The failure of a single pie extended to our entire existence.&quot;</p>\n</blockquote>\n<p>Update: Apparently this is from <a href=\"http://make.pizza\">make.pizza</a>.</p>\n<!--\nHere's the ocr'd text:\nYou're going to fuck up some pizzas. \n\nWe wish someone sat us down, looked us in the eye and told us that before we went on this journey. There were a couple times when, propelled into a fit of rage, pizza peel thrown across the room, tomato sauce splattered against the kitchen floor, we honestly regretted ever even trying to make homemade pizza. The failure of a single pie extended to our entire existence. \n\nWhat is it about the simple act of dropping a pizza that can cause an existential crisis? \n\nAQ had a particularly harrowing encounter with imperfection. He carefully made the dough, waited patiently for several days, did all the necessary prep work, and had a plan for a perfect meal. Then disaster struck: the pizza ended up lying half-folded over on the black and white checkered kitchen tile, and all of AQs hopes for success collapsed into that half-baked mozzarella inferno. Disappointment wasn't the root feeling. The inability to conquer the making of a simple pizza somehow was a sign of a deeper intrinsic weakness. He thought: \"I am a failure:' \n\nSo AQ got angry. He started yelling, throwing his hands up, and tossing his tools around. He was angry at his own feelings of inadequacy, but he blamed those feelings on everyone and everything around him. \n\nIt took a while to recover and make pizza again, but the urge to try crept back and the next time AQ made pizza it came out better. \n\nThat wasn't the last time either of us screwed up. Over the past eight years it's happened more times than we would like to admit, and it even happened while we made the pizzas for the photos in this book. \n\nWhat we learned along the way is that messing up is not actually a sign that we are shitty bakers (or worse). These incidents are reminders that sometimes you fail (we're guessing that people who play competitive sports as kids learn this lesson sooner, but we will admit that we were more indoor kids). Failure isn't something that you need to con-quer and \"defeat,\" rather failure is part of being successful at whatever you're trying to do, especially when there are many variables involved beyond your control. \n\nOver time our pizza disasters have become fewer and far between. Practice makes us better. Our higher success rates stem from observation. We've learned to document every detail of the process. Our goal is to try to share as many of those details with you, but we know your pizza making success will come from becoming aware of all of the subtle aspects of the craft. You're going to fail at least a couple of times no matter what, and we're here to tell you that not only is that OK but it means you're on your way to learning more. \n\nEnough with being sappy, let's go make some pizza. \n-->",-            "date_published": "2017-01-03T04:43:11.000Z",-            "url": "http://maybepizza.com/archives/2017/1/youre_going_to_fuck_up_some_pizzas.html"-        },-        {-            "id": "http://maybepizza.com/archives/2017/1/a_couple_of_dough_tips.html",-            "title": "A Couple of Dough Tips",-            "content_html": "<p>A couple of tips for you, dear reader.</p>\n<center><img class=\"bb\" src=\"http://maybepizza.com//images/2017/01/mason.jpg\" alt=\"This is a large image, showing my hand and some questionable liquid.\"  width=\"660\" /><div style=\"color: #666; padding-top: 2px;\">This is a large image, showing my hand and some questionable liquid.</div></center>\n\n<p>If you have a large mason jar (as seen above) it can be a time saver to add all your liquid soluble ingredients (water, salt, oil, yeast/starter, etc) into said mason jar, shake it all around, and then pour everything together on top of your flour before handing everything off to your mixer.</p>\n<p>I first started doing this a few months ago when feeding my starter (but with smaller mason jars). I found the workflow of mixing old starter with 50% water, shaking everything up quite a bit so it&#39;s as above, and then stirring in my 50% flour to be a cleaner process. It also more evenly distributes the older starter among the new flour. Turns out it&#39;s also a great process for making dough.</p>\n<p>OK, onto the second tip.</p>\n<center><img class=\"bb\" src=\"http://maybepizza.com//images/2017/01/rubbermaid.jpg\" alt=\"\"  width=\"660\" /><div style=\"color: #666; padding-top: 2px;\"></div></center>\n\n<p>I found when <a href=\"http://maybepizza.com/archives/2016/11/another_new_pizza_oven.html\">hacking up my new oven</a> that it was annoying to make pizza dough every other night when I wanted to test something out. Especially since I only wanted one or two pies for my tests.</p>\n<p>Now, this isn&#39;t exactly new information (sorry). You can make your dough ahead of time, ball it up, put it slightly oiled <a href=\"http://amzn.to/2hMrV6N\">containers</a> (as seen above), then you can have &quot;overnight&quot; dough or even keep it a week or a bit more in the fridge. If you want to have pizza later on, you&#39;ll take your dough out ~12 hours ahead of time to give it ample time to warm up, activate, and raise. Then you get to have pizza. Yum.</p>\n<p>OK now here&#39;s the new information.</p>\n<p>Small containers are awesome if you don&#39;t have a lot of room in your fridge, but it can complicate things when raising. You&#39;ll notice in the above images that there isn&#39;t much room for the dough to expand. In fact, if you try to do that with the lids on, then you&#39;re going to blow them right off (because of expansion of the gas in the dough) and if you&#39;re not around to catch that, you&#39;re going to have funky dry dough.</p>\n<p>Nobody likes funky dry dough.</p>\n<p>Instead, you&#39;ll need to transfer it into a larger container or do something like this:</p>\n<center><img class=\"bb\" src=\"http://maybepizza.com//images/2017/01/containers_in_containers.jpg\" alt=\"Containers in containers\"  width=\"660\" /><div style=\"color: #666; padding-top: 2px;\">Containers in containers</div></center>\n\n<p>Since there&#39;s more room for expansion, and the lid of the outer container isn&#39;t super tight- things aren&#39;t going to explode and dry out.</p>\n<p>But wait there&#39;s more.</p>\n<p>Using the above technique, and using starter, I&#39;ve found that I can even go 3 to 4 weeks with this dough in the fridge (this may or may not work with active dry yeast). But that 12 hour planning ahead kind of sucks. What if I&#39;m really really hungry and I want that pizza an hour or two after removing it from the fridge?</p>\n<p>This takes a bit more planning, but it&#39;s doable. Let your dough raise as described above, and still in the little container. Let it double in size so it raises just to the top of your smaller container, and then put the lid back on and shove it in the fridge.</p>\n<p>When cooling down in the fridge, you&#39;re stopping (or slowing down by a lot) the activity which was raising your dough. It&#39;s frozen in time, just about ready to be put in the oven.</p>\n<p>Then when future you is hungry you can pull your raised dough out of the fridge and just let it warm up. It&#39;ll still turn out great. Here&#39;s an example <a href=\"https://www.instagram.com/p/BOvWpFdBgLz/?taken-by=ccgus\">pie made just that way</a>.</p>\n<p>That&#39;s it! Except- Happy New Year. Let&#39;s make a lot of pizza in 2017.</p>\n",-            "date_published": "2017-01-03T05:00:41.000Z",-            "url": "http://maybepizza.com/archives/2017/1/a_couple_of_dough_tips.html"-        }-    ]+{
+    "version": "https://jsonfeed.org/version/1",
+    "title": "Maybe Pizza?",
+    "home_page_url": "http://maybepizza.com/",
+    "feed_url": "http://maybepizza.com/feed.json",
+    "description": "Gus's experiments in making pizza with very hot ovens.  And Pizza reviews, why not?.",
+    "author": {
+        "name": "Gus Mueller"
+    },
+    "items": [
+        {
+            "id": "http://maybepizza.com/archives/2016/1/monogram_pizza_oven.html",
+            "title": "GE's Monogram Pizza Oven Is Probably a Bad Idea",
+            "content_html": "<p><a href=\"http://www.digitaltrends.com/home/ge-firstbuild-monogram-pizza-oven/\">Digital Trends</a>: </p>\n<blockquote>\n<p>&quot;But now you too can own an oven hot enough to make Satan sweat. GE’s elite FirstBuild team just unveiled the Monogram Pizza Oven, which can not only hit the same temperatures as the scorcher your local pizzeria uses, it’s a lot smarter, too.\n<br/><br/>\n&quot;This isn’t another one of those backyard, wood-fired pizza ovens that have been gaining popularity over the past few years as home pizza making takes off. The Monogram Pizza Oven installs right in your kitchen and uses a standard 240-volt outlet, with no special venting required, unlike a commercial unit. But you won’t mistake it for an ordinary kitchen oven. The short height and conspicuous lack of a door are a dead giveaway you’re dealing with a culinary dragon.&quot;</p>\n</blockquote>\n<p>I don&#39;t understand how an oven like this gets made. The reason why traditional wood fired ovens don&#39;t have a door is because you need a steady flow of oxygen to feed the fire. You put a door on an electric oven to keep the heat and moisture in.</p>\n<blockquote>\n<p>&quot;The Monogram can blast to 800 degrees within a half hour of preheating, and 14 heating elements in the dome can rocket the top up to a blistering 1,200 degrees. Those conditions, it turns out, are exactly what you need to bake a perfect Neapolitan-style pizza … in two minutes flat.&quot;</p>\n</blockquote>\n<p>If you&#39;re taking two minutes to bake a Neapolitan pizza in an oven that goes to 1.2k, then something is seriously wrong with your oven. I&#39;ve baked at 1.2k before, and it&#39;s insanely difficult. Your pizza is going to cook in about 45 seconds and unless you have everything dialed you&#39;re going to have a pizza that&#39;s burnt on the outside with raw dough on the inside.</p>\n<p><a href=\"http://www.digitaltrends.com/home/ge-monogram-pizza-oven-taste-test/\">From another page</a> on Digital Trends where they try out pizzas made in the oven:</p>\n<blockquote>\n<p>&quot;Each slice was crispy on the outside, still chewy inside, with just a hint of crumbly black char around the edges — an effect I’ve never been able to replicate in my home oven.&quot;</p>\n</blockquote>\n<p>Neapolitan pizza is supposed to be soft, not crispy. Crispy is what happens when you bake too long and use the wrong flour. Looking at the pizzas made in the GE oven and the burnt edges where there should be leoparding, I&#39;m guessing these were 2-3 minute pies.</p>\n<p>Here&#39;s what a proper neo pizza should look like:</p>\n<center>\n<img src=\"https://instagram.fsnc1-1.fna.fbcdn.net/hphotos-xpa1/t51.2885-15/s640x640/sh0.08/e35/12547241_1036741646346643_1720954828_n.jpg\" style=\"border: solid 1px #000;\" width=\"320\" height=\"320\" /><br/>\n(Photo from <a href=\"https://www.instagram.com/pizzicletta/\">@pizzicletta&#39;s</a> Instagram page)\n</center>\n\n<p>From the previous page:</p>\n<blockquote>\n<p>&quot;But can anything top the satisfaction of making your own pizza at home? Or more importantly, watching your personal chef make it for you?&quot;</p>\n</blockquote>\n<p>At $10,000 USD, I guess this is for people with more money than sense. If you&#39;re going to get an electric oven for baking neapolitan at home, you&#39;re probably better off getting a <a href=\"https://www.google.com/search?client=safari&amp;rls=en&amp;q=cuppone+tiziano&amp;ie=UTF-8&amp;oe=UTF-8\">Cuppone Tiziano</a> or a <a href=\"https://www.google.com/search?client=safari&amp;rls=en&amp;q=Effeuno+P134H&amp;ie=UTF-8&amp;oe=UTF-8\">Effeuno P134H</a> if you live in Europe (you lucky jerks).</p>\n<p>Found via <a href=\"http://www.pizzamaking.com/forum/index.php?topic=41271.0\">Pizza Making</a>.</p>\n",
+            "date_published": "2016-01-22T17:43:25.000Z",
+            "url": "http://maybepizza.com/archives/2016/1/monogram_pizza_oven.html"
+        },
+        {
+            "id": "http://maybepizza.com/archives/2016/2/reading_up_on_yeast.html",
+            "title": "Reading Up on Yeast",
+            "content_html": "<p>A good read from King Arthur- <a href=\"http://www.kingarthurflour.com/blog/2016/01/29/yeast-use/\">Choosing the Best Type (of Yeast) for Any Recipe</a>.</p>\n<p>Their pick has been my favorite for years- <a href=\"http://www.amazon.com/gp/product/B0001CXUHW/ref=as_li_tl?ie=UTF8&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B0001CXUHW&amp;linkCode=as2&amp;tag=pizlab-20&amp;linkId=ADYRWQAIFMBK7UZZ\">SAF instant yeast</a>. I buy a 1lb bag of this, and replace it every 6 months. KA has a <a href=\"http://www.kingarthurflour.com/shop/items/yeast-set\">nice little set</a> which includes the yeast, as well as a container for it (which I also use). Put that in your fridge and you&#39;ll be set for a long while.</p>\n",
+            "date_published": "2016-02-02T18:39:58.000Z",
+            "url": "http://maybepizza.com/archives/2016/2/reading_up_on_yeast.html"
+        },
+        {
+            "id": "http://maybepizza.com/archives/2016/5/shepherds_grain.html",
+            "title": "Shepherd’s Grain Flour",
+            "content_html": "<p>We were talking a bit of Pizza last night at <a href=\"http://www.cyclopsseattle.com\">Cyclops</a>, as you do, and the topic of flour was brought up.</p>\n<p>If you live in the greater Seattle area, you need to go buy some <a href=\"http://www.shepherdsgrain.com\">Shepherd’s Grain</a> High Gluten flour. <a href=\"https://www.smartfoodservice.com\">Cash &amp; Carry</a> has 50lb bags of it, for $21. You can&#39;t beat that price, and I&#39;ve not found a better flour for use in your home oven. It makes great bread too.</p>\n<p>We&#39;re pretty damn lucky to have this flour, take advantage of it.</p>\n",
+            "date_published": "2016-05-13T17:57:30.000Z",
+            "url": "http://maybepizza.com/archives/2016/5/shepherds_grain.html"
+        },
+        {
+            "id": "http://maybepizza.com/archives/2016/5/quick_pizza_recommendations_for_wwdc.html",
+            "title": "Quick Pizza Recommendations for WWDC",
+            "content_html": "<p><a href=\"https://en.wikipedia.org/wiki/Apple_Worldwide_Developers_Conference\">WWDC</a> will soon be here, and you might be thinking to yourself, gee- I wonder if there&#39;s any good Neapolitan pizza in San Francisco?</p>\n<p>Why yes, there is.</p>\n<p>I&#39;ve not been to very many neo pizza places in SF, but I&#39;ve been to enough to at least make a small list of recommendations. So here you go:</p>\n<p><strong><a href=\"http://www.zerozerosf.com/\">Zero Zero</a></strong>. Located just a couple of blocks away from the Moscone Center where WWDC is hosted. It&#39;s open late, has a nice bar, and the quality of the pizza is pretty consistent.</p>\n<p>It&#39;s a little pricy and can get crowded, but it&#39;s good pie.</p>\n<p><strong><a href=\"http://tonyspizzanapoletana.com\">Tony’s Pizza Napoletana</a></strong>. A bit of a hike from WWDC, but if you&#39;re a pizza aficionado, you absolutely need to go here. The (PDF) <a href=\"http://tonyspizzanapoletana.com/wp-content/uploads/2015/12/TonysPizzaNapoletana_Menu-12162015.pdf\">menu is astounding</a>. Ten different styles of pizzas, from Neapolitan to St. Louis to Detroit and even Coal Fired. WTF, how many ovens do they have? Who even does this? <a href=\"http://maybepizza.com/assets/THIS_IS_AMAZING.mp3\">THIS IS AMAZING</a>. My brain just about exploded the first time I saw their menu.</p>\n<p><strong><a href=\"https://www.google.com/search?client=safari&amp;rls=en&amp;q=una+pizza+napoletana&amp;ie=UTF-8&amp;oe=UTF-8\">Una Pizza Napoletana</a></strong>. Famous for being Una Pizza Napoletana, this restaurant is another must for the pizza aficionado. Actually, I&#39;d say it&#39;s more of a pilgrimage (though a short one at a 25 minute walk from Moscone Center). The resident pizzaiolo, Anthony Mangieri, is widely credited for helping start the US Neapolitan craze. Check out their <a href=\"http://www.unapizza.com/home\">videos page</a> for a taste (and scroll right to start with the last video, working forward after that).</p>\n<p>It&#39;s a bit pricy, and can be a bit wet. I recommend the Filetti.</p>\n<p><strong><a href=\"http://www.delpopolosf.com\">Del Popolo</a></strong>. This is currently my favorite Neapolitan pizza in all the universe. And since I&#39;ve last had it they&#39;ve opened up a brick store, which means you now have two locations to grab a pie from.</p>\n<p>Del Popolo (aka, Jon Darsky) is mostly known because they took a flippen&#39; giant shipping container, <a href=\"http://www.psfk.com/2012/07/shipping-container-gets-converted-into-a-wood-fired-pizza-oven-food-truck.html\">stuck it it on a big truck</a>, put a Stefano Ferrara pizza oven in there, and made it look pretty. And that pizza truck usually shows up a block or two away at Mint Plaza during WWDC.</p>\n<p>The prices for the pizza truck are very reasonable, and I recommend everything.</p>\n<p>I haven&#39;t been to the restaurant on Bush Street yet, but my hotel is a few blocks away, so you bet I will. Most likely more than once.</p>\n<p>…</p>\n<p>I hope this year to expand my horizons a bit more and try out some new places. Got any recommendations for me? Delfina and PizzaHacker are already on the list.</p>\n",
+            "date_published": "2016-05-19T20:24:38.000Z",
+            "url": "http://maybepizza.com/archives/2016/5/quick_pizza_recommendations_for_wwdc.html"
+        },
+        {
+            "id": "http://maybepizza.com/archives/2016/6/a_philosophy_of_pizza_napoletanismo.html",
+            "title": "A Philosophy of Pizza Napoletanismo",
+            "content_html": "<p>If you have the time, and want to dig into some history, check out the <a href=\"http://www.pizzamaking.com/forum/index.php?topic=14506.0\">A Philosophy of Pizza Napoletanismo</a> thread on the PM forums. Omid is a Neapolitan nut, and has made some great contributions to the thread over the years. It&#39;s also neat to see him change his mind about things over the years.</p>\n<p>I&#39;m also pretty jealous of <a href=\"http://www.pizzamaking.com/forum/index.php?topic=14506.msg434872#msg434872\">his pizza studio</a>.</p>\n",
+            "date_published": "2016-06-10T20:04:04.000Z",
+            "url": "http://maybepizza.com/archives/2016/6/a_philosophy_of_pizza_napoletanismo.html"
+        },
+        {
+            "id": "http://maybepizza.com/archives/2016/6/my_new_pizza_dough_calculator.html",
+            "title": "My New Pizza Dough Calculator",
+            "content_html": "<p>For years I&#39;ve been using a little worksheet I made up in <a href=\"http://calca.io\">Calca</a> to calculate how many grams of water, flour, and salt I need in my dough. I would frequently change the values for experimentation though, but I wouldn&#39;t ever be able to refer back to them. And it was also worthless if I wanted to send a specific recipe to a friend.</p>\n<p>So I looked around for a dough calculator, and while I came across some <a href=\"http://www.pizzacreator.net\">nice ones</a>, they didn&#39;t do everything I wanted (like bookmarking). So I of course made my own.</p>\n<p><a href=\"http://maybepizza.com/calc/\">The Maybe Pizza? Dough Calculator</a>, at your service. Works great on iOS as well.</p>\n",
+            "date_published": "2016-06-10T20:13:23.000Z",
+            "url": "http://maybepizza.com/archives/2016/6/my_new_pizza_dough_calculator.html"
+        },
+        {
+            "id": "http://maybepizza.com/archives/2016/11/discovering_the_science_secrets_of_sourdough.html",
+            "title": "Discovering The Science Secrets Of Sourdough",
+            "content_html": "<p>NPR: <a href=\"http://www.npr.org/sections/thesalt/2016/10/28/499363379/discovering-the-science-secrets-of-sourdough-you-can-help\">Discovering The Science Secrets Of Sourdough</a></p>\n<blockquote>\n<p>&quot;Those first bubbles were almost a revelation. A couple of days before, I had mixed together flour and water into a paste. But now pockets of gas percolated through that seemingly inert glob. It was breathing. It was alive.</p>\n<p>&quot;This gloppy mess, exuding a whiff of vinegar, was my nascent sourdough starter. When mature, it would be a pungent brew of yeasts and bacteria, a complex ecosystem that would hopefully yield delicious loaves of sourdough bread.</p>\n<p>&quot;As the microbes eat the sugars in the flour, they exhale carbon dioxide, producing the bubbles that turn a flat, dense loaf into something light and fluffy. A starter breathes life into bread. If the loaf is the body, the starter is the soul.&quot;</p>\n</blockquote>\n<p>Over the years I&#39;ve attempted to use starters for my pizza dough, without any success. I could get <a href=\"http://amzn.to/2ejagmW\">various starters</a> going but the flavor it invoked just wasn&#39;t something I liked.</p>\n<p>That changed this past summer, after chatting with some folks at the <a href=\"http://www.delpopolosf.com/truck\">Del Popolo pizza truck</a>. I asked if they added any yeast to their starter to help things out, and the answer was no. Do they sell it? Again the answer was no. But the guy in the truck offered some more information- the Del Popolo starter was super active, and they fed it 4 times a day.</p>\n<p>Four. Times. A. Day.</p>\n<p>That&#39;s a lot. I knew that frequently feeding your starter would make it less sour, but … four times a day. That&#39;s commitment.</p>\n<p>So when I returned home from my trip, I made a new starter, and I fed it. A lot. It became super active, and I was soon feeding it 3-4 times a day.</p>\n<p>And I knew the temperature it lived in would change which microbes became more active, so bought a little round thermos from a thrift store, a <a href=\"http://amzn.to/2fwsMps\">temperature controller</a>, and stuck a seedling heat mat in there.</p>\n<center><img class=\"bb\" src=\"http://maybepizza.com//images/2016/startertherm.jpg\" alt=\"My starter contraption.\"  width=\"660\" /><div style=\"color: #666; padding-top: 2px;\">My starter contraption.</div></center>\n\n<p>Pretty soon I had a starter with really good flavor and very little sour to it. And for the past 6 months or so, I&#39;ve been using using it in my pizzas.</p>\n<p>At first I would just add 1-2% as a flavoring agent in addition to the normal yeast amounts. Then I started ramping up the amount of starter I&#39;d use to 10% and even pushing it up to 20% at times.</p>\n<p>I&#39;d try experimenting by not adding any yeast, or maybe just a tiny bit. I&#39;m still learning what the best ratios are, and even what temperature I keep the active starter at. This past weekend had it a 84 degrees, 10% starter, and 1/4 teaspoon of yeast for six dough balls (it turned out pretty awesome).</p>\n<p>I have a whole routine I use to store and swap out older starter that goes dormant in the fridge, and what I do to re-train it to get it ready for pizza on the weekend. I&#39;ll probably go into detail about that some day in the future, but the takeaway from this post is: if you haven&#39;t been happy with starter in the past, maybe try again? And do everything in your power to keep your starter in a stable environment so things like feeding schedules and temperatures don&#39;t throw everything off?</p>\n<p>It&#39;s nice having a new area to explore with my pizza making. And my starter&#39;s name? &quot;Magic&quot;.</p>\n",
+            "date_published": "2016-11-08T19:02:37.000Z",
+            "url": "http://maybepizza.com/archives/2016/11/discovering_the_science_secrets_of_sourdough.html"
+        },
+        {
+            "id": "http://maybepizza.com/archives/2016/11/another_new_pizza_oven.html",
+            "title": "Another New Pizza Oven",
+            "content_html": "<p>I bought a <a href=\"http://www.webstaurantstore.com/waring-wpo500-single-deck-countertop-pizza-oven-120v/929WPO500.html\">Waring WPO500</a> pizza oven for my birthday. It&#39;s a piece of junk, you shouldn&#39;t get one.</p>\n<p>The elements are so weak that I was never able to get it up to its max temperature. There is no way to adjust the bottom heat temp versus the top, so you end with burnt pizzas on the bottom. And the amount of insulation it comes with is a complete joke.</p>\n<p>I wasn&#39;t surprised though, I kind of figured this would be the case. My intention when buying this, was to beef up any insulation if it need it, add another element or two, and use my own stones in the oven. And that is exactly what I&#39;ve done.</p>\n<center><img class=\"bb\" src=\"http://maybepizza.com//images/2016/img_4608.jpeg\" alt=\"Pizza #3\"  width=\"660\" /><div style=\"color: #666; padding-top: 2px;\">Pizza #3</div></center>\n\n<p>With my improvements, I&#39;m seeing around a 30 minute warm up time and bakes that are a little less than 2 minutes. This is about double the amount of time it would take to cook my pizzas in <a href=\"http://maybepizza.com/archives/2014/6/rocket.html\">Rocket</a>, but they are still coming out great. In fact there&#39;s a certain… quality to the pizzas that I&#39;m not quite able to put into words yet, but they seem to be coming out even better than they would in Rocket. I think it might have to do with using a more starter to get the dough going, but there&#39;s also a lot more volume in the oven chamber of the Waring oven, which might be contributing to the difference.</p>\n<p>I haven&#39;t thought of a name yet, as it hasn&#39;t quite settled on a personality. But I&#39;ll keep on hacking on it, and eventually come up with something.</p>\n",
+            "date_published": "2016-11-20T00:11:14.000Z",
+            "url": "http://maybepizza.com/archives/2016/11/another_new_pizza_oven.html"
+        },
+        {
+            "id": "http://maybepizza.com/archives/2017/1/youre_going_to_fuck_up_some_pizzas.html",
+            "title": "You're going to fuck up some pizzas.",
+            "content_html": "<p>You need to <a href=\"https://twitter.com/tomdale/status/814616894762323968\">follow the link to read the whole image</a>, but here&#39;s a neat passage from an unknown (to me) pizza book. </p>\n<p><a href=\"https://twitter.com/tomdale/status/814616894762323968\">Profunctor Optics on Twitter</a>:</p>\n<blockquote>\n<p>&quot;We wish someone sat us down, looked us in the eye and told us that before we went on this journey. There were a couple times when, propelled into a fit of rage, pizza peel thrown across the room, tomato sauce splattered against the kitchen floor, we honestly regretted ever even trying to make homemade pizza. The failure of a single pie extended to our entire existence.&quot;</p>\n</blockquote>\n<p>Update: Apparently this is from <a href=\"http://make.pizza\">make.pizza</a>.</p>\n<!--\nHere's the ocr'd text:\nYou're going to fuck up some pizzas. \n\nWe wish someone sat us down, looked us in the eye and told us that before we went on this journey. There were a couple times when, propelled into a fit of rage, pizza peel thrown across the room, tomato sauce splattered against the kitchen floor, we honestly regretted ever even trying to make homemade pizza. The failure of a single pie extended to our entire existence. \n\nWhat is it about the simple act of dropping a pizza that can cause an existential crisis? \n\nAQ had a particularly harrowing encounter with imperfection. He carefully made the dough, waited patiently for several days, did all the necessary prep work, and had a plan for a perfect meal. Then disaster struck: the pizza ended up lying half-folded over on the black and white checkered kitchen tile, and all of AQs hopes for success collapsed into that half-baked mozzarella inferno. Disappointment wasn't the root feeling. The inability to conquer the making of a simple pizza somehow was a sign of a deeper intrinsic weakness. He thought: \"I am a failure:' \n\nSo AQ got angry. He started yelling, throwing his hands up, and tossing his tools around. He was angry at his own feelings of inadequacy, but he blamed those feelings on everyone and everything around him. \n\nIt took a while to recover and make pizza again, but the urge to try crept back and the next time AQ made pizza it came out better. \n\nThat wasn't the last time either of us screwed up. Over the past eight years it's happened more times than we would like to admit, and it even happened while we made the pizzas for the photos in this book. \n\nWhat we learned along the way is that messing up is not actually a sign that we are shitty bakers (or worse). These incidents are reminders that sometimes you fail (we're guessing that people who play competitive sports as kids learn this lesson sooner, but we will admit that we were more indoor kids). Failure isn't something that you need to con-quer and \"defeat,\" rather failure is part of being successful at whatever you're trying to do, especially when there are many variables involved beyond your control. \n\nOver time our pizza disasters have become fewer and far between. Practice makes us better. Our higher success rates stem from observation. We've learned to document every detail of the process. Our goal is to try to share as many of those details with you, but we know your pizza making success will come from becoming aware of all of the subtle aspects of the craft. You're going to fail at least a couple of times no matter what, and we're here to tell you that not only is that OK but it means you're on your way to learning more. \n\nEnough with being sappy, let's go make some pizza. \n-->",
+            "date_published": "2017-01-03T04:43:11.000Z",
+            "url": "http://maybepizza.com/archives/2017/1/youre_going_to_fuck_up_some_pizzas.html"
+        },
+        {
+            "id": "http://maybepizza.com/archives/2017/1/a_couple_of_dough_tips.html",
+            "title": "A Couple of Dough Tips",
+            "content_html": "<p>A couple of tips for you, dear reader.</p>\n<center><img class=\"bb\" src=\"http://maybepizza.com//images/2017/01/mason.jpg\" alt=\"This is a large image, showing my hand and some questionable liquid.\"  width=\"660\" /><div style=\"color: #666; padding-top: 2px;\">This is a large image, showing my hand and some questionable liquid.</div></center>\n\n<p>If you have a large mason jar (as seen above) it can be a time saver to add all your liquid soluble ingredients (water, salt, oil, yeast/starter, etc) into said mason jar, shake it all around, and then pour everything together on top of your flour before handing everything off to your mixer.</p>\n<p>I first started doing this a few months ago when feeding my starter (but with smaller mason jars). I found the workflow of mixing old starter with 50% water, shaking everything up quite a bit so it&#39;s as above, and then stirring in my 50% flour to be a cleaner process. It also more evenly distributes the older starter among the new flour. Turns out it&#39;s also a great process for making dough.</p>\n<p>OK, onto the second tip.</p>\n<center><img class=\"bb\" src=\"http://maybepizza.com//images/2017/01/rubbermaid.jpg\" alt=\"\"  width=\"660\" /><div style=\"color: #666; padding-top: 2px;\"></div></center>\n\n<p>I found when <a href=\"http://maybepizza.com/archives/2016/11/another_new_pizza_oven.html\">hacking up my new oven</a> that it was annoying to make pizza dough every other night when I wanted to test something out. Especially since I only wanted one or two pies for my tests.</p>\n<p>Now, this isn&#39;t exactly new information (sorry). You can make your dough ahead of time, ball it up, put it slightly oiled <a href=\"http://amzn.to/2hMrV6N\">containers</a> (as seen above), then you can have &quot;overnight&quot; dough or even keep it a week or a bit more in the fridge. If you want to have pizza later on, you&#39;ll take your dough out ~12 hours ahead of time to give it ample time to warm up, activate, and raise. Then you get to have pizza. Yum.</p>\n<p>OK now here&#39;s the new information.</p>\n<p>Small containers are awesome if you don&#39;t have a lot of room in your fridge, but it can complicate things when raising. You&#39;ll notice in the above images that there isn&#39;t much room for the dough to expand. In fact, if you try to do that with the lids on, then you&#39;re going to blow them right off (because of expansion of the gas in the dough) and if you&#39;re not around to catch that, you&#39;re going to have funky dry dough.</p>\n<p>Nobody likes funky dry dough.</p>\n<p>Instead, you&#39;ll need to transfer it into a larger container or do something like this:</p>\n<center><img class=\"bb\" src=\"http://maybepizza.com//images/2017/01/containers_in_containers.jpg\" alt=\"Containers in containers\"  width=\"660\" /><div style=\"color: #666; padding-top: 2px;\">Containers in containers</div></center>\n\n<p>Since there&#39;s more room for expansion, and the lid of the outer container isn&#39;t super tight- things aren&#39;t going to explode and dry out.</p>\n<p>But wait there&#39;s more.</p>\n<p>Using the above technique, and using starter, I&#39;ve found that I can even go 3 to 4 weeks with this dough in the fridge (this may or may not work with active dry yeast). But that 12 hour planning ahead kind of sucks. What if I&#39;m really really hungry and I want that pizza an hour or two after removing it from the fridge?</p>\n<p>This takes a bit more planning, but it&#39;s doable. Let your dough raise as described above, and still in the little container. Let it double in size so it raises just to the top of your smaller container, and then put the lid back on and shove it in the fridge.</p>\n<p>When cooling down in the fridge, you&#39;re stopping (or slowing down by a lot) the activity which was raising your dough. It&#39;s frozen in time, just about ready to be put in the oven.</p>\n<p>Then when future you is hungry you can pull your raised dough out of the fridge and just let it warm up. It&#39;ll still turn out great. Here&#39;s an example <a href=\"https://www.instagram.com/p/BOvWpFdBgLz/?taken-by=ccgus\">pie made just that way</a>.</p>\n<p>That&#39;s it! Except- Happy New Year. Let&#39;s make a lot of pizza in 2017.</p>\n",
+            "date_published": "2017-01-03T05:00:41.000Z",
+            "url": "http://maybepizza.com/archives/2017/1/a_couple_of_dough_tips.html"
+        }
+    ]
 }
feeds/shapeof.com.json view
@@ -1,68 +1,68 @@-{-    "version": "https://jsonfeed.org/version/1",-    "title": "The Shape of Everything",-    "home_page_url": "http://shapeof.com/",-    "feed_url": "http://shapeof.com/feed.json",-    "description": "A website mostly about Mac stuff, written by Gus Mueller",-    "author": {-        "name": "Gus Mueller"-    },-    "items": [-        {-            "id": "http://shapeof.com/archives/2017/1/today_you_are_an_astronaut.html",-            "title": "Today you are an astronaut",-            "content_html": "<p><a href=\"http://astronaut.io/\">Astronaut.io</a>:</p>\n<blockquote>\n<p>&quot;Today, you are an Astronaut. You are floating in inner space 100 miles above the surface of Earth. You peer through your window and this is what you see. You are people watching. These are fleeting moments.</p>\n<p>&quot;These videos come from YouTube. They were uploaded in the last week and have titles like DSC 1234 and IMG 4321. They have almost zero previous views. They are unnamed, unedited, and unseen by anyone but YOU.&quot;</p>\n</blockquote>\n<p>This video stream(s) are mesmerizing. At first, I thought they must have been curated somehow. But then I took a look at the number of views of them, and the count was usually under ten. I think they really are random. It&#39;s amazing.</p>\n",-            "date_published": "2017-01-18T12:27:43-08:00",-            "url": "http://shapeof.com/archives/2017/1/today_you_are_an_astronaut.html"-        },-        {-            "id": "http://shapeof.com/archives/2017/2/piezos_life_outside_the_app_store.html",-            "title": "Piezo’s Life Outside The App Store",-            "content_html": "<p><a href=\"https://weblog.rogueamoeba.com/2017/02/10/piezos-life-outside-the-app-store/\">Piezo’s Life Outside The App Store</a></p>\n<p>Paul Kafasis talks about what sales and revenue for Rogue Amoeba&#39;s app Piezo looks both in the App Store, and out of it.</p>\n",-            "date_published": "2017-02-10T09:52:38-08:00",-            "url": "http://shapeof.com/archives/2017/2/piezos_life_outside_the_app_store.html"-        },-        {-            "id": "http://shapeof.com/archives/2017/2/brothers_of_climbing.html",-            "title": "Brothers of Climbing",-            "content_html": "<p><a href=\"https://www.youtube.com/watch?v=7LWq5s-s4pY&amp;feature=youtu.be\">This video is the best thing</a> I&#39;ve seen in the climbing community for a long while.</p>\n<p>Diversity has always been huge problem in the climbing world. I&#39;m glad <a href=\"https://boccrew.com\">Brothers of Climbing</a> is helping to fix it.</p>\n",-            "date_published": "2017-02-17T12:20:19-08:00",-            "url": "http://shapeof.com/archives/2017/2/brothers_of_climbing.html"-        },-        {-            "id": "http://shapeof.com/archives/2017/3/acorn_5.6.4_released.html",-            "title": "Acorn 5.6.4 Released",-            "content_html": "<p>Up here at the FM world headquarters, I&#39;ve recently pushed the buttons and typed the commands to make <a href=\"https://secure.flyingmeat.com/acorn/\">Acorn</a> 5.6.4 roll out to all my favorite people.</p>\n<p>It&#39;s purely a bug fix release, but it includes a fix for a 10.12 issue that I&#39;ve spent way too long tracking down. So if you&#39;re on 10.12 Sierra, and you&#39;ve seen the occasional case where a black box would suddenly appear somewhere on your canvas, this release is for you.</p>\n<p>So start your update engines and grab it today.</p>\n<p>And a small request: if love Acorn and you&#39;ve <a href=\"http://flyingmeat.com/acorn/appstore/\">purchased it via the App Store</a>, why not leave it a nice review or give it a handful of stars? When we push out new releases, it resets the previous reviews and ratings in the store which is a huge bummer for us (and it also creates a disincentive for releasing bugfix builds! But that&#39;s a story for another time). We love getting reviews and ratings though, it&#39;s like fuel for future releases.</p>\n",-            "date_published": "2017-03-16T09:16:34-07:00",-            "url": "http://shapeof.com/archives/2017/3/acorn_5.6.4_released.html"-        },-        {-            "id": "http://shapeof.com/archives/2017/5/looking_for_some_testers.html",-            "title": "I'm looking for some folks to test major new features in Acorn.",-            "content_html": "<p>I&#39;m currently doing a private beta of some big new features in Acorn (for Mac OS 10.11+), and I&#39;m looking for some folks to kick the figurative tires and give some feedback if they have any. You don&#39;t need to be a daily Acorn user, if you only launch it once or twice a week that&#39;s fine.</p>\n<p>Sound interesting? Shoot me an email: <a href=\"mailto:gus@flyingmeat.com?subject=Acorn%20Beta\">gus@flyingmeat.com</a>.</p>\n",-            "date_published": "2017-05-09T12:53:29-07:00",-            "url": "http://shapeof.com/archives/2017/5/looking_for_some_testers.html"-        },-        {-            "id": "http://shapeof.com/archives/2017/5/seattle_in_mourning.html",-            "title": "Seattle in Mourning",-            "content_html": "<p>We found out yesterday Chris Cornell, Seattle native and soul of Soundgarden, <a href=\"https://www.nytimes.com/2017/05/18/arts/music/chris-cornell-dead-soundgarden.html?_r=1\">has died</a>. It&#39;s looking like a suicide.</p>\n<p>I was walking around Seattle last evening with friends, for happier reasons, and it was impossible to ignore the impact of Chris&#39;s death on the city. Every pub we entered was playing songs of his, sometimes a little Nirvana sprinkled in because that still hurts too. Temple of the Dog and Soundgarden shirts and jackets were out. The DJs on <a href=\"http://kexp.org\">KEXP</a> were constantly on the verge of tears, talking about Chris, suicide, and playing his music. </p>\n<p>As we sat down under some trees you could look up and see the <a href=\"https://www.google.com/search?q=Space+Needle&amp;client=safari&amp;rls=en&amp;source=lnms&amp;tbm=isch&amp;sa=X&amp;ved=0ahUKEwjfuaDhsvzTAhVE8WMKHVdaC5gQ_AUICygC&amp;biw=1758&amp;bih=1290\">Space Needle</a> lit up. A few minutes later it went dark. Random people gathered on a corner, with a guitar of course, singing songs of his.</p>\n<p>On the way home there was a sign hanging from an overpass, the words <a href=\"https://www.youtube.com/watch?v=5qi8hhiYEQA\">Say Hello to Heaven</a> painted on.</p>\n<p>Chris Cornell will be missed.</p>\n",-            "date_published": "2017-05-19T09:46:14-07:00",-            "url": "http://shapeof.com/archives/2017/5/seattle_in_mourning.html"-        },-        {-            "id": "http://shapeof.com/archives/2017/5/how_to_survive_as_a_solo_dev_for_like_a_decade_or_so.html",-            "title": "How to Survive as a Solo Dev for Like a Decade or So",-            "content_html": "<p>Dan Marshall: <a href=\"http://www.sizefivegames.com/2017/05/04/how-to-survive-as-a-solo-dev-for-like-a-decade-or-so/\">How to Survive as a Solo Dev for Like a Decade or So</a></p>\n<blockquote>\n<p>&quot;I read a thing recently. Quite an interesting article about ‘how to survive as a solo dev’, but it was written by someone who was releasing their first game (presumably as ‘marketing’) and “haaaaaaang on”, I thought. Yes that’s impressive well done but it’s not exactly advice from someone who has been doing it for a decade and WAIT WAIT WAIT I’ve been doing it for a decade! I wonder what MY advice is to survive as a Solo Dev beyond one or two games.&quot;</p>\n</blockquote>\n<p>I think Dan&#39;s advice transfers very well to app development in general.</p>\n<p>You may notice that #1 on his list is &quot;Work from home&quot;, and I&#39;ve been working out of an office for a number of years (6-7 at this point?). As of yesterday, that&#39;s no longer the case.</p>\n<p>Last December we got an 8 month old puppy, and he wasn&#39;t quite ready to stay at home alone so I ended up not driving in to work a couple of a days a week. Turns out, I like working from home. No traffic to deal with, I can just pop upstairs for lunch, etc. So I decided that at the end of my lease, I just wouldn&#39;t renew. As the date got closer, I found that going into the office was really getting on my nerves and even though I still have a little over a month left on the rental, I&#39;m going to start working at home full time anyway.</p>\n<p>Why did I get an office in the first place? There were two main reasons. The first was that I was hiring employees and I didn&#39;t want folks coming to my home. The second reason was that I need to get out of the house. There were stretches of time where I didn&#39;t leave a three mile radius of my home for weeks and my wife said I was getting socially awkward. I wasn&#39;t getting out enough.</p>\n<p>I eventually decided that I&#39;m happier working alone and kept the office out of momentum. And I get out a lot more these days, so hopefully the social problem won&#39;t be one anymore. I hope.</p>\n",-            "date_published": "2017-05-24T11:47:16-07:00",-            "url": "http://shapeof.com/archives/2017/5/how_to_survive_as_a_solo_dev_for_like_a_decade_or_so.html"-        },-        {-            "id": "http://shapeof.com/archives/2017/5/first_week_of_json_feed.html",-            "title": "First week of JSON Feed",-            "content_html": "<p>Manton Reece: <a href=\"http://www.manton.org/2017/05/first-week-of-json-feed.html\">First week of JSON Feed</a>:</p>\n<blockquote>\n<p>&quot;I’ve been impressed with how quickly people have adopted JSON Feed. There are a bunch of feeds in the wild now, as well as code and templates for popular languages and web frameworks. The next step is support in feed readers, including brand new feed readers, which is already happening.&quot;</p>\n</blockquote>\n<p>I&#39;m a big fan of this, and you can find my JSON Feed <a href=\"http://shapeof.com/feed.json\">here</a>. The scripts that generate this site are written in <a href=\"http://nodejs.org\">Node.js</a>, so adding support for it was trivial.</p>\n<p>Slightly related to this, I also <a href=\"https://micro.blog/ccgus\">have a Micro.blog site</a> I&#39;m playing around with.</p>\n",-            "date_published": "2017-05-24T15:44:36-07:00",-            "url": "http://shapeof.com/archives/2017/5/first_week_of_json_feed.html"-        }-    ]+{
+    "version": "https://jsonfeed.org/version/1",
+    "title": "The Shape of Everything",
+    "home_page_url": "http://shapeof.com/",
+    "feed_url": "http://shapeof.com/feed.json",
+    "description": "A website mostly about Mac stuff, written by Gus Mueller",
+    "author": {
+        "name": "Gus Mueller"
+    },
+    "items": [
+        {
+            "id": "http://shapeof.com/archives/2017/1/today_you_are_an_astronaut.html",
+            "title": "Today you are an astronaut",
+            "content_html": "<p><a href=\"http://astronaut.io/\">Astronaut.io</a>:</p>\n<blockquote>\n<p>&quot;Today, you are an Astronaut. You are floating in inner space 100 miles above the surface of Earth. You peer through your window and this is what you see. You are people watching. These are fleeting moments.</p>\n<p>&quot;These videos come from YouTube. They were uploaded in the last week and have titles like DSC 1234 and IMG 4321. They have almost zero previous views. They are unnamed, unedited, and unseen by anyone but YOU.&quot;</p>\n</blockquote>\n<p>This video stream(s) are mesmerizing. At first, I thought they must have been curated somehow. But then I took a look at the number of views of them, and the count was usually under ten. I think they really are random. It&#39;s amazing.</p>\n",
+            "date_published": "2017-01-18T12:27:43-08:00",
+            "url": "http://shapeof.com/archives/2017/1/today_you_are_an_astronaut.html"
+        },
+        {
+            "id": "http://shapeof.com/archives/2017/2/piezos_life_outside_the_app_store.html",
+            "title": "Piezo’s Life Outside The App Store",
+            "content_html": "<p><a href=\"https://weblog.rogueamoeba.com/2017/02/10/piezos-life-outside-the-app-store/\">Piezo’s Life Outside The App Store</a></p>\n<p>Paul Kafasis talks about what sales and revenue for Rogue Amoeba&#39;s app Piezo looks both in the App Store, and out of it.</p>\n",
+            "date_published": "2017-02-10T09:52:38-08:00",
+            "url": "http://shapeof.com/archives/2017/2/piezos_life_outside_the_app_store.html"
+        },
+        {
+            "id": "http://shapeof.com/archives/2017/2/brothers_of_climbing.html",
+            "title": "Brothers of Climbing",
+            "content_html": "<p><a href=\"https://www.youtube.com/watch?v=7LWq5s-s4pY&amp;feature=youtu.be\">This video is the best thing</a> I&#39;ve seen in the climbing community for a long while.</p>\n<p>Diversity has always been huge problem in the climbing world. I&#39;m glad <a href=\"https://boccrew.com\">Brothers of Climbing</a> is helping to fix it.</p>\n",
+            "date_published": "2017-02-17T12:20:19-08:00",
+            "url": "http://shapeof.com/archives/2017/2/brothers_of_climbing.html"
+        },
+        {
+            "id": "http://shapeof.com/archives/2017/3/acorn_5.6.4_released.html",
+            "title": "Acorn 5.6.4 Released",
+            "content_html": "<p>Up here at the FM world headquarters, I&#39;ve recently pushed the buttons and typed the commands to make <a href=\"https://secure.flyingmeat.com/acorn/\">Acorn</a> 5.6.4 roll out to all my favorite people.</p>\n<p>It&#39;s purely a bug fix release, but it includes a fix for a 10.12 issue that I&#39;ve spent way too long tracking down. So if you&#39;re on 10.12 Sierra, and you&#39;ve seen the occasional case where a black box would suddenly appear somewhere on your canvas, this release is for you.</p>\n<p>So start your update engines and grab it today.</p>\n<p>And a small request: if love Acorn and you&#39;ve <a href=\"http://flyingmeat.com/acorn/appstore/\">purchased it via the App Store</a>, why not leave it a nice review or give it a handful of stars? When we push out new releases, it resets the previous reviews and ratings in the store which is a huge bummer for us (and it also creates a disincentive for releasing bugfix builds! But that&#39;s a story for another time). We love getting reviews and ratings though, it&#39;s like fuel for future releases.</p>\n",
+            "date_published": "2017-03-16T09:16:34-07:00",
+            "url": "http://shapeof.com/archives/2017/3/acorn_5.6.4_released.html"
+        },
+        {
+            "id": "http://shapeof.com/archives/2017/5/looking_for_some_testers.html",
+            "title": "I'm looking for some folks to test major new features in Acorn.",
+            "content_html": "<p>I&#39;m currently doing a private beta of some big new features in Acorn (for Mac OS 10.11+), and I&#39;m looking for some folks to kick the figurative tires and give some feedback if they have any. You don&#39;t need to be a daily Acorn user, if you only launch it once or twice a week that&#39;s fine.</p>\n<p>Sound interesting? Shoot me an email: <a href=\"mailto:gus@flyingmeat.com?subject=Acorn%20Beta\">gus@flyingmeat.com</a>.</p>\n",
+            "date_published": "2017-05-09T12:53:29-07:00",
+            "url": "http://shapeof.com/archives/2017/5/looking_for_some_testers.html"
+        },
+        {
+            "id": "http://shapeof.com/archives/2017/5/seattle_in_mourning.html",
+            "title": "Seattle in Mourning",
+            "content_html": "<p>We found out yesterday Chris Cornell, Seattle native and soul of Soundgarden, <a href=\"https://www.nytimes.com/2017/05/18/arts/music/chris-cornell-dead-soundgarden.html?_r=1\">has died</a>. It&#39;s looking like a suicide.</p>\n<p>I was walking around Seattle last evening with friends, for happier reasons, and it was impossible to ignore the impact of Chris&#39;s death on the city. Every pub we entered was playing songs of his, sometimes a little Nirvana sprinkled in because that still hurts too. Temple of the Dog and Soundgarden shirts and jackets were out. The DJs on <a href=\"http://kexp.org\">KEXP</a> were constantly on the verge of tears, talking about Chris, suicide, and playing his music. </p>\n<p>As we sat down under some trees you could look up and see the <a href=\"https://www.google.com/search?q=Space+Needle&amp;client=safari&amp;rls=en&amp;source=lnms&amp;tbm=isch&amp;sa=X&amp;ved=0ahUKEwjfuaDhsvzTAhVE8WMKHVdaC5gQ_AUICygC&amp;biw=1758&amp;bih=1290\">Space Needle</a> lit up. A few minutes later it went dark. Random people gathered on a corner, with a guitar of course, singing songs of his.</p>\n<p>On the way home there was a sign hanging from an overpass, the words <a href=\"https://www.youtube.com/watch?v=5qi8hhiYEQA\">Say Hello to Heaven</a> painted on.</p>\n<p>Chris Cornell will be missed.</p>\n",
+            "date_published": "2017-05-19T09:46:14-07:00",
+            "url": "http://shapeof.com/archives/2017/5/seattle_in_mourning.html"
+        },
+        {
+            "id": "http://shapeof.com/archives/2017/5/how_to_survive_as_a_solo_dev_for_like_a_decade_or_so.html",
+            "title": "How to Survive as a Solo Dev for Like a Decade or So",
+            "content_html": "<p>Dan Marshall: <a href=\"http://www.sizefivegames.com/2017/05/04/how-to-survive-as-a-solo-dev-for-like-a-decade-or-so/\">How to Survive as a Solo Dev for Like a Decade or So</a></p>\n<blockquote>\n<p>&quot;I read a thing recently. Quite an interesting article about ‘how to survive as a solo dev’, but it was written by someone who was releasing their first game (presumably as ‘marketing’) and “haaaaaaang on”, I thought. Yes that’s impressive well done but it’s not exactly advice from someone who has been doing it for a decade and WAIT WAIT WAIT I’ve been doing it for a decade! I wonder what MY advice is to survive as a Solo Dev beyond one or two games.&quot;</p>\n</blockquote>\n<p>I think Dan&#39;s advice transfers very well to app development in general.</p>\n<p>You may notice that #1 on his list is &quot;Work from home&quot;, and I&#39;ve been working out of an office for a number of years (6-7 at this point?). As of yesterday, that&#39;s no longer the case.</p>\n<p>Last December we got an 8 month old puppy, and he wasn&#39;t quite ready to stay at home alone so I ended up not driving in to work a couple of a days a week. Turns out, I like working from home. No traffic to deal with, I can just pop upstairs for lunch, etc. So I decided that at the end of my lease, I just wouldn&#39;t renew. As the date got closer, I found that going into the office was really getting on my nerves and even though I still have a little over a month left on the rental, I&#39;m going to start working at home full time anyway.</p>\n<p>Why did I get an office in the first place? There were two main reasons. The first was that I was hiring employees and I didn&#39;t want folks coming to my home. The second reason was that I need to get out of the house. There were stretches of time where I didn&#39;t leave a three mile radius of my home for weeks and my wife said I was getting socially awkward. I wasn&#39;t getting out enough.</p>\n<p>I eventually decided that I&#39;m happier working alone and kept the office out of momentum. And I get out a lot more these days, so hopefully the social problem won&#39;t be one anymore. I hope.</p>\n",
+            "date_published": "2017-05-24T11:47:16-07:00",
+            "url": "http://shapeof.com/archives/2017/5/how_to_survive_as_a_solo_dev_for_like_a_decade_or_so.html"
+        },
+        {
+            "id": "http://shapeof.com/archives/2017/5/first_week_of_json_feed.html",
+            "title": "First week of JSON Feed",
+            "content_html": "<p>Manton Reece: <a href=\"http://www.manton.org/2017/05/first-week-of-json-feed.html\">First week of JSON Feed</a>:</p>\n<blockquote>\n<p>&quot;I’ve been impressed with how quickly people have adopted JSON Feed. There are a bunch of feeds in the wild now, as well as code and templates for popular languages and web frameworks. The next step is support in feed readers, including brand new feed readers, which is already happening.&quot;</p>\n</blockquote>\n<p>I&#39;m a big fan of this, and you can find my JSON Feed <a href=\"http://shapeof.com/feed.json\">here</a>. The scripts that generate this site are written in <a href=\"http://nodejs.org\">Node.js</a>, so adding support for it was trivial.</p>\n<p>Slightly related to this, I also <a href=\"https://micro.blog/ccgus\">have a Micro.blog site</a> I&#39;m playing around with.</p>\n",
+            "date_published": "2017-05-24T15:44:36-07:00",
+            "url": "http://shapeof.com/archives/2017/5/first_week_of_json_feed.html"
+        }
+    ]
 }
feeds/therecord.co.json view
@@ -1,167 +1,167 @@-{-  "version": "https://jsonfeed.org/version/1",-  "title": "The Record",-  "description": "The stories you should know about the Mac and Cocoa developer community. Hosted by Brent Simmons and Chris Parrish.",-  "home_page_url": "http://therecord.co/",-  "feed_url": "http://therecord.co/feed.json",-  "user_comment": "This feed allows you to read the posts from this site in any feed reader that supports the JSON Feed format. To add this feed to your reader, copy the following URL — http://therecord.co/feed.json — and add it your reader.",-  "author": {-    "name": "Brent Simmons and Chris Parrish"-  },-  "items": [-    {-      "id": "http://therecord.co/2014/05/29/brent_simmons",-      "url": "http://therecord.co/2014/05/29/brent_simmons",-      "title": "Special #2 - Brent Simmons",-      "content_html": "<p>This episode was recorded 26 May 2014 live and in person at Brent’s office in sunny, lovely Ballard.</p>\n\n<p>You can <a href=\"http://therecord.co/downloads/TheRecord-sp1e2-BrentSimmons.m4a\">download the m4a file</a> or <a href=\"https://itunes.apple.com/us/podcast/the-record/id791861057\">subscribe in iTunes</a>. (Or <a href=\"http://therecord.co/xml/rss.xml\">subscribe to the podcast feed</a>.)</p>\n\n<p><a href=\"http://inessential.com/\">Brent</a> has worked at UserLand Software and NewsGator and as an indie at his company Ranchero Software. These days he’s one-third of Q Branch, where he writes <a href=\"http://vesperapp.co/appstore\">Vesper</a>. He is also the co-host of this podcast.</p>\n\n<p class=\"sponsor\">This episode is sponsored by <a href=\"https://itunes.apple.com/us/app/tagcaster/id662918542?mt=8\">Tagcaster</a>. Tagcaster is not just another podcast client — it solves the age-old problem of <i>linking</i> to specific parts of a podcast. You can make clips — short audio excerpts — and share them and link to them. After all these years, that problem is finally solved.</p>\n\n\n\n\n<p class=\"sponsor\">This episode is also sponsored by <a href=\"http://igloosoftware.com/therecord\">Igloo</a>. Igloo is an intranet you’ll actually like, with shared calendars, microblogs, file-sharing, social networking, and more. It’s free for up 10 users — give it a try for your company or your team today.</p>\n\n\n\n\n<p class=\"sponsor\">This episode is also sponsored by <a href=\"https://www.hover.com/\">Hover</a>. Hover makes domain name management <i>easy</i>. And it’s a snap to transfer domains from other registrars using their valet service. Get 10% off your first purchase with the promotional code MANILA. (Manila was the name of the blogging system worked on at UserLand.) <a href=\"https://www.hover.com/\">Take a look</a>.</p>\n\n\n<p>Things we mention, more or less in order of appearance:</p>\n\n<ul>\n<li><a href=\"https://web.archive.org/web/20040114044527/http://ranchero.com/netnewswire/\">NetNewsWire</a></li>\n<li><a href=\"https://web.archive.org/web/20050604075416/http://ranchero.com/marsedit/\">MarsEdit</a></li>\n<li><a href=\"http://glassboard.com\">Glassboard</a></li>\n<li><a href=\"http://vesperapp.co\">Vesper</a></li>\n<li><a href=\"https://web.archive.org/web/20000229202924/http://manila.userland.com/\">Manila</a></li>\n<li><a href=\"http://www.uchicago.edu\">The University of Chicago</a></li>\n<li><a href=\"http://www.dupont.com\">DuPont</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Punched_card\">Punched cards</a></li>\n<li><a href=\"http://www.udel.edu\">University of Delaware</a></li>\n<li><a href=\"http://www.cityofnewarkde.us\">Newark, Delaware</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Fortran\">Fortran</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1980\">1980</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Apple_II_Plus\">Apple II Plus</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/PLATO_(computer_system)\">PLATO</a></li>\n<li><a href=\"https://twitter.com/maggiejdavis\">Brent's Mom</a></li>\n<li><a href=\"http://en.wikibooks.org/wiki/6502_Assembly\">6502 Assembly</a></li>\n<li><a href=\"http://support.apple.com/kb/TA46270?viewlocale=en_US&locale=en_US\">80 column card</a></li>\n<li><a href=\"https://archive.org/details/ALF_Music_Synthesizer_Owners_Manual\">ALF II</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Music_Construction_Set\">Music Construction Set</a></li>\n<li><a href=\"http://www.thebeatles.com\">Beatles</a></li>\n<li><a href=\"http://www.rollingstones.com\">Rolling Stones</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Phil_Ochs\">Pil Ochs</a></li>\n<li><a href=\"http://www.judycollins.com/index1.php\">Judy Collins</a></li>\n<li><a href=\"http://www.bobdylan.com/\">Boby Dylan</a></li>\n<li><a href=\"http://www.westsidestory.com\">West Side Story</a></li>\n<li><a href=\"https://m.youtube.com/watch?v=TYjz7gxo8k4\">Hair Broadway Soundtrack</a></li>\n<li><a href=\"http://delicious-monster.com\">Delicious Library</a></li>\n<li><a href=\"http://global.epson.com/company/corporate_history/milestone_products/11_mx80.html\">Epson MX-80</a></li>\n<li><a href=\"http://thephoenix.com/boston/music/129722-rise-and-fall-of-the-columbia-house-record-clu/\">Columbia House Records</a></li>\n<li><a href=\"http://cyndilauper.com\">Cindy Lauper</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Born_in_the_U.S.A.\">Born in the USA</a></li>\n<li><a href=\"http://www.theclash.com\">The Clash</a></li>\n<li><a href=\"https://m.youtube.com/watch?v=EfK-WX2pa8c\">London Calling</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Pascal_(programming_language)\">Pascal</a></li>\n<li><a href=\"http://www.evergreen.edu\">Evergreen State College</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1992\">1992</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1989\">1989</a></li>\n<li><a href=\"http://www.seattlecentral.edu\">Seattle Central Community College</a></li>\n<li><a href=\"http://newcitycollegian.com\">City Collegian</a></li>\n<li><a href=\"http://www.quark.com/Products/QuarkXPress/\">QuarkXpress</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/LaserWriter\">LaserWriter</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Macintosh_IIcx\">Mac IIcx</a></li>\n<li><a href=\"https://www.google.com/search?q=radius+monitor&client=safari&rls=en&tbm=isch&tbo=u&source=univ&sa=X&ei=Qc6GU_TJN9XeoAT_4YGQDA&ved=0CEIQsAQ&biw=1369&bih=1236\">Radius monitor</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Silo_(store)\">Silo</a></li>\n<li><a href=\"http://www.seattlegoodwill.org\">Goodwill</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/THINK_C\">Symantec C</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Grenoble\">Grenoble, France</a></li>\n<li><a href=\"http://office.microsoft.com/en-us/word/\">Microsoft Word</a></li>\n<li><a href=\"http://office.microsoft.com/en-us/excel/\">Microsoft Excel</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Seattle\">Seattle</a></li>\n<li><a href=\"http://www.boeing.com/boeing/\">Boeing</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Photovoltaics\">Photovoltaics</a></li>\n<li><a href=\"http://www.washington.edu\">University of Washington</a></li>\n<li><a href=\"http://www.ibs.fr/?lang=en\">Institut de Biologie Structurale</a></li>\n<li><a href=\"http://www.cea.fr\">CEA</a></li>\n<li><a href=\"http://www.cnrs.fr\">CNRS</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Alps\">Alps (the mountains)</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Gopher_(protocol)\">Gopher</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Pine_(email_client)\">Pine</a></li>\n<li><a href=\"http://www.iht.com\">International Herald Tribune</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Kronenbourg_Brewery\">Kronenbourg</a></li>\n<li><a href=\"http://www.georgekillians.com/AV.aspx?returnUrl=default.aspx\">Killian’s Red</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Isère_(river)\">Isère River</a></li>\n<li><a href=\"http://www.anthonys.com/restaurants/detail/chinook-at-salmon-bay\">Chinook's</a></li>\n<li><a href=\"http://www.eskimo.com\">Eskimo dial-up account</a></li>\n<li><a href=\"http://www.dalverson.com/zterm/\">Zterm</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Lynx_(web_browser)\">Lynx</a></li>\n<li><a href=\"http://searchengineland.com/altavista-eulogy-165366\">AltaVista</a></li>\n<li><a href=\"http://www.seanet.com\">Seanet</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/MacTCP\">MacTCP</a></li>\n<li><a href=\"http://www.index-site.com/macppp.html\">MacPPP</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/AppleTalk\">AppleTalk</a></li>\n<li><a href=\"https://www.yahoo.com\">Yahoo</a></li>\n<li><a href=\"http://archive.info-mac.org\">Info-Mac Archive</a></li>\n<li><a href=\"http://www.kagi.com/\">Kagi</a></li>\n<li><a href=\"http://www.ambrosiasw.com/games/maelstrom/\">Maelstrom</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Macintosh_Performa\">Performa 604</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/After_Dark_(software)\">After Dark</a></li>\n<li><a href=\"http://www.bungie.net\">Bungie</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Ambrosia_Software\">Andrew Welch</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Usenet\">Usenet</a></li>\n<li><a href=\"http://fuckingblocksyntax.com\">fuckingblocksyntax.com</a></li>\n<li><a href=\"http://scripting.com\">Dave Winer</a></li>\n<li><a href=\"http://davewiner.userland.com/historyOfFrontier\">UserLand Frontier Aretha release</a></li>\n<li><a href=\"https://web.archive.org/web/19991113024326/http://www.userland.com/\">UserLand Software</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/documentation/applescript/Conceptual/AppleScriptX/AppleScriptX.html\">AppleScript</a></li>\n<li><a href=\"https://www.google.com/search?q=hypercard&client=safari&rls=en&tbm=isch&tbo=u&source=univ&sa=X&ei=09GGU7fBL8_coASMuYCQBA&ved=0CDUQsAQ&biw=1369&bih=1236\">HyperCard</a></li>\n<li><a href=\"https://web.archive.org/web/20000815062309/http://www.starnine.com/webstar/webstar.html\">WebSTAR</a></li>\n<li><a href=\"http://projects.pudge.net\">MacPerl</a></li>\n<li><a href=\"http://www.mysql.com\">MySQL</a></li>\n<li><a href=\"http://web.archive.org/web/19991021212201/http://www.ranchero.com/spotlight/\">Spotlight</a></li>\n<li><a href=\"http://www.filemaker.com/products/filemaker-pro/\">Filemaker Pro</a></li>\n<li><a href=\"http://www.indystar.com\">Indianapolis Star News</a></li>\n<li><a href=\"http://www.woodsidetown.org\">Woodside, CA</a></li>\n<li><a href=\"https://twitter.com/jsavin\">Jake Savin</a></li>\n<li><a href=\"http://sfgov.org\">San Francisco</a></li>\n<li><a href=\"http://scobleizer.com\">Robert Scoble</a></li>\n<li><a href=\"http://www.ci.millbrae.ca.us\">Millbrae</a></li>\n<li><a href=\"http://www.cityofpaloalto.org\">Palo Alto</a></li>\n<li><a href=\"http://windows.microsoft.com/\">Windows</a></li>\n<li><a href=\"http://www.visualstudio.com\">Visual Studio</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/CodeWarrior\">CodeWarrior</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/PowerPlant\">PowerPlant</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/MacApp\">MacApp</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Macintosh_Toolbox\">Toolbox</a></li>\n<li><a href=\"https://developer.apple.com/xcode/\">Xcode</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Project_Builder\">Project Builder</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Carbon_(API)\">Carbon</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/QuickDraw\">QuickDraw</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Open_Transport\">Open Transport</a></li>\n<li><a href=\"https://web.archive.org/web/20000229202924/http://manila.userland.com/\">Manila</a></li>\n<li><a href=\"https://web.archive.org/web/20000302104551/http://www.editthispage.com/\">EditThisPage.com</a></li>\n<li><a href=\"http://www.dailykos.com\">Daily Kos</a></li>\n<li><a href=\"https://web.archive.org/web/20000620151247/http://joel.editthispage.com/\">joel.editthispage.com</a></li>\n<li><a href=\"http://www.amazon.com/Cocoa-Programming-Mac-4th-Edition/dp/0321774086\">Aaron Hillegass’s Book on Cocoa</a></li>\n<li><a href=\"https://web.archive.org/web/20010224173813/http://radio.userland.com/\">Radio UserLand</a></li>\n<li><a href=\"https://www.python.org\">Python</a></li>\n<li><a href=\"http://inessential.com/2002/06/05/macnewswire_1_0b7\">MacNewsWire</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/RSS\">RSS</a></li>\n<li><a href=\"http://www.webkit.org\">WebKit</a></li>\n<li><a href=\"https://www.apple.com/safari/\">Safari</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Internet_Explorer_for_Mac\">MSIE for Mac</a></li>\n<li><a href=\"http://caminobrowser.org\">Camino</a></li>\n<li><a href=\"http://ranchero.com/images/newheadlines2.jpg\">NetNewsWire 1.0 screen shot</a></li>\n<li><a href=\"http://www.xojo.com/index_xojo.php\">RealBasic</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/BBEdit_Lite\">BBEdit Lite</a></li>\n<li><a href=\"http://www.barebones.com/products/textwrangler/\">TextWrangler</a></li>\n<li><a href=\"https://web.archive.org/web/19991010052722/http://www.vertexdev.com/HeadlineViewer/\">Carmen’s Headline Viewer</a></li>\n<li><a href=\"http://www.yole.ru/projects/syndirella/\">Syndirella</a></li>\n<li><a href=\"http://www.disobey.com/amphetadesk/\">AmphetaDesk</a></li>\n<li><a href=\"http://readwrite.com/2007/03/05/mynetscape_20#awesm=~oFDbbHvdM5cj7V\">My.Netscape.Com</a></li>\n<li><a href=\"https://discussions.apple.com/thread/4135311?start=285&\">Safari/RSS</a></li>\n<li><a href=\"http://ecto.kung-foo.tv\">Ecto</a></li>\n<li><a href=\"http://movabletype.org\">Movable Type</a></li>\n<li><a href=\"http://www.apple.com/osx/server/\">Mac OS X Server</a></li>\n<li><a href=\"http://inessential.com/2014/05/10/what_happened_at_newsgator\">NewsGator</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Palm_Treo\">Palm Treo</a></li>\n<li><a href=\"http://www.feeddemon.com\">FeedDemon</a></li>\n<li><a href=\"http://nickbradbury.com\">Nick Bradbury</a></li>\n<li><a href=\"https://twitter.com/gregr\">Greg Reinacker</a></li>\n<li><a href=\"http://office.microsoft.com/en-us/outlook/\">Outlook</a></li>\n<li><a href=\"http://taplynx.com\">TapLynx</a></li>\n<li><a href=\"http://push.io\">Push IO</a></li>\n<li><a href=\"http://sepialabs.com\">Sepia Labs</a></li>\n<li><a href=\"http://culturedcode.com\">Cultured Code and Things</a></li>\n<li><a href=\"http://blackpixel.com\">Black Pixel</a></li>\n<li><a href=\"http://www.red-sweater.com\">Red Sweater</a></li>\n<li><a href=\"http://www.oracle.com/\">Oracle</a></li>\n<li><a href=\"http://carpeaqua.com\">Justin Wiliams</a></li>\n<li><a href=\"http://inessential.com/2011/03/02/the_return_of_netnewswire_lite\">NetNewsWire Lite 4.0 for Macintosh</a></li>\n<li><a href=\"http://inessential.com/vespersyncdiary\">Vesper Sync Diary</a></li>\n<li><a href=\"https://developer.apple.com/wwdc/\">WWDC</a></li>\n<li><a href=\"http://www.parc55hotel.com\">Parc 55</a></li>\n</ul>",-      "date_published": "2014-05-29T05:00:00-07:00",-      "attachments": [-        {-          "url": "http://therecord.co/downloads/TheRecord-sp1e2-BrentSimmons.m4a",-          "mime_type": "audio/x-m4a",-          "size_in_bytes": 75344101-        }-      ]-    },-    {-      "id": "http://therecord.co/2014/05/09/chris_parrish",-      "url": "http://therecord.co/2014/05/09/chris_parrish",-      "title": "Special #1 - Chris Parrish",-      "content_html": "<p>This episode was recorded 6 May 2014 live and in person at Brent’s office in lovely, sunny Ballard.</p>\n\n<p>You can <a href=\"http://therecord.co/downloads/TheRecord-sp1e1-ChrisParrish.m4a\">download the m4a file</a> or <a href=\"https://itunes.apple.com/us/podcast/the-record/id791861057\">subscribe in iTunes</a>. (Or <a href=\"http://therecord.co/xml/rss.xml\">subscribe to the podcast feed</a>.)</p>\n\n<p><a href=\"https://twitter.com/twenty3\">Chris</a> has worked at <a href=\"http://adobe.com/\">Adobe</a> and as a founder of Rogue Sheep, which won an Apple Design Award for <a href=\"http://www.macworld.com/article/1140874/postage.html\">Postage</a>. Chris’s new company is Aged &amp; Distilled with <a href=\"http://kickingbear.com/blog/\">Guy English</a> — which shipped <a href=\"http://aged-and-distilled.com/napkin/\">Napkin</a>, a Mac app for visual collaboration. Chris is also the co-host of The Record. He lives on <a href=\"http://www.ci.bainbridge-isl.wa.us/\">Bainbridge Island</a>, a quick ferry ride from Seattle.</p>\n\n<p class=\"sponsor\">This episode is sponsored by <a href=\"https://itunes.apple.com/us/app/tagcaster/id662918542?mt=8\">Tagcaster</a>. Tagcaster is not just another podcast client — it solves the age-old problem of <i>linking</i> to specific parts of a podcast. You can make clips — short audio excerpts — and share them and link to them. After all these years, that problem is finally solved.</p>\n\n\n\n\n<p class=\"sponsor\">This episode is also sponsored by <a href=\"http://igloosoftware.com/therecord\">Igloo</a>. Igloo is an intranet you’ll actually like, with shared calendars, microblogs, file-sharing, social networking, and more. It’s free for up 10 users — give it a try for your company or your team today.</p>\n\n\n\n\n<p class=\"sponsor\">This episode is also sponsored by <a href=\"https://www.hover.com/\">Hover</a>. Hover makes domain name management <i>easy</i>. And it’s a snap to transfer domains from other registrars using their valet service. Get 10% off your first purchase with the promotional code PANIC. As in “Don’t Panic! Use Hover.” <a href=\"https://www.hover.com/\">Take a look</a>.</p>\n\n\n<p>Things we mention, more or less in order of appearance:</p>\n\n<ul>\n<li><a href=\"http://www.ok.gov\">Oklahoma</a></li>\n<li><a href=\"http://www.wikipedia.org\">Wikipedia</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Shopping_cart\">The shopping cart</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Rust\">Rust</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Homestead_Acts\">Homestead Act</a></li>\n<li><a href=\"http://www.pong-story.com/intro.htm\">Pong</a></li>\n<li><a href=\"https://www.atari2600.com\">Atari 2600</a></li>\n<li><a href=\"http://www.whitehouse.gov/about/presidents/jimmycarter\">President Carter</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Pinochle\">Pinochle</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Republican_Party_(United_States)\">Republicans</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Democratic_Party_(United_States)\">Democrats</a></li>\n<li><a href=\"http://apple2history.org\">Apple II</a></li>\n<li><a href=\"https://archive.org/details/applerefjan78\">Apple II Reference Manual</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Floppy_disk\">Floppy Disks</a></li>\n<li><a href=\"\">Odyssey: The Compleat Adventure</a></li>\n<li><a href=\"http://www.marco.org\">Marco</a></li>\n<li><a href=\"http://global.epson.com/company/corporate_history/milestone_products/11_mx80.html\">Epson MX-80 dot matrix printer</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Parallel_port\">Parallel port</a></li>\n<li><a href=\"http://time.com/69316/basic/\">BASIC</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Apple_II_graphics\">Apple II graphics modes</a></li>\n<li><a href=\"http://www.hasbro.com/litebrite/en_US/\">LiteBrite</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=OuZpZ4i3ql4\">Apple II Star Wars game</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Assembler_(computing)#Assembler\">Assembler</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Adventure_game\">Text adventure games</a></li>\n<li><a href=\"https://itunes.apple.com/us/app/paper-by-fiftythree/id506003812?mt=8\">Paper app</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Graph_paper\">Graph paper</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Merlin_(assembler)\">Merlin assembler</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Apple_Pascal\">Pascal compiler for Apple II</a></li>\n<li><a href=\"http://www.apple2scans.net/apple-ii-documents/locksmith-6-0-users-manual/\">Locksmith for Apple II</a></li>\n<li><a href=\"http://www.fadden.com/techmisc/cassette-protect.htm\">Apple II copy protection</a></li>\n<li><a href=\"http://www.radioshack.com\">Radio Shack</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Read-only_memory\">ROM chips</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Tin_foil\">Tin foil</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Crocodile_clip\">Alligator clips</a></li>\n<li><a href=\"http://graphicsmagician.com/polarware/pengraph.htm\">The Complete Graphics System</a></li>\n<li><a href=\"http://5by5.tv/incomparable\">The Incomparable</a></li>\n<li><a href=\"http://therecord.co/2014/04/25/mike_lee\">Mike Lee on The Record</a></li>\n<li><a href=\"https://sat.collegeboard.org/home\">SATs</a></li>\n<li><a href=\"http://www.ou.edu\">University of Oklahoma</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/LaserWriter\">LaserWriter</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Linotronic\">Linotronic image setter</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/The_Beverly_Hillbillies\">The Clampetts</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/The_Grapes_of_Wrath\">The Joads</a></li>\n<li><a href=\"http://www.seattle.gov\">Seattle</a></li>\n<li><a href=\"http://www.lasvegasnevada.gov\">Las Vegas</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Belltown,_Seattle\">Belltown</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Capitol_Hill_(Seattle)\">Capitol Hill</a></li>\n<li><a href=\"http://www.ci.everett.wa.us\">Everett</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Queen_Anne,_Seattle\">Queen Anne</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Magnolia,_Seattle\">Magnolia</a></li>\n<li><a href=\"http://www.adobe.com\">Adobe</a></li>\n<li><a href=\"http://www.microsoft.com\">Microsoft</a></li>\n<li><a href=\"http://windows.microsoft.com/\">Windows</a></li>\n<li><a href=\"http://starwars.wikia.com/wiki/X-Wing_series_(computer_games)\">X-Wing video game</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/X86_assembly_language\">8086 Assembly language</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/MS-DOS\">Microsoft DOS</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Sierra_Entertainment\">Sierra On-Line</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/PowerBook_Duo\">PowerBook Duo</a></li>\n<li><a href=\"http://oldcomputers.net/appleiigs.html\">Apple IIGS</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/THINK_C\">Think C</a></li>\n<li><a href=\"http://www.sega.com\">Sega</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/CD-ROM\">CD-ROMs</a></li>\n<li><a href=\"https://partners.adobe.com/public/developer/ps/index_specs.html\">Postscript</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Adobe_PageMaker\">Pagemaker</a></li>\n<li><a href=\"http://www.quark.com\">Quark</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Aldus\">Aldus</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Pioneer_Square,_Seattle\">Pioneer Square</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1995\">1995</a></li>\n<li><a href=\"http://www.java.com\">Java</a></li>\n<li><a href=\"http://www.mactech.com/articles/mactech/Vol.12/12.10/JavaIDEOlympics/index.html\">Natural Intelligence Roaster IDE</a></li>\n<li><a href=\"http://www.adobe.com/products/illustrator.html\">Illustrator</a></li>\n<li><a href=\"http://www.sqaforums.com/showflat.php?Number=275630\">QA Partner</a></li>\n<li><a href=\"http://david.heinemeierhansson.com/2014/tdd-is-dead-long-live-testing.html\">Test-Driven Development</a></li>\n<li><a href=\"http://www.adobe.com/products/indesign.html\">InDesign</a></li>\n<li><a href=\"https://www.microsoft.com/com/default.mspx\">COM</a></li>\n<li><a href=\"https://twitter.com/mattjoss\">Matt Joss</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Revision_control\">Version control</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2001\">2001</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Microsoft_Visual_SourceSafe\">SourceSafe</a></li>\n<li><a href=\"http://msdn.microsoft.com/en-us/vstudio//\">Visual Studio</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/C++\">C++</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/OpenDoc\">OpenDoc Resource Compiler</a></li>\n<li><a href=\"http://office.microsoft.com/en-us/sharepoint/\">Sharepoint</a></li>\n<li><a href=\"http://azure.microsoft.com\">Azure</a></li>\n<li><a href=\"http://www.adobe.com/products/framemaker.html\">FrameMaker</a></li>\n<li><a href=\"https://twitter.com/roguesheep\">Rogue Sheep</a></li>\n<li><a href=\"http://printwearmag.com/article/screen-printing/separations-for-four-color-process-printing\">CMYK separation</a></li>\n<li><a href=\"http://www.fonts.com/content/learning/fyti/using-type-tools/optical-margin-alignment-in-indesign\">Optical character alignment</a></li>\n<li><a href=\"http://www.washington.edu\">University of Washington</a></li>\n<li><a href=\"http://www.hitl.washington.edu/home/\">HITLab</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Gel_electrophoresis\">Gel Electrophoresis</a></li>\n<li><a href=\"https://github.com/jeffargast\">Jeff Argast</a></li>\n<li><a href=\"http://office.microsoft.com/en-us/powerpoint/\">PowerPoint</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Western_blot\">Western blots</a></li>\n<li><a href=\"http://www.theguardian.com/\">The Guardian</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Presidency_of_George_W._Bush\">Bush Administration</a></li>\n<li><a href=\"http://www.macworld.com/article/1140874/postage.html\">Postage</a></li>\n<li><a href=\"http://twitterrific.com/\">Twitterrific</a></li>\n<li><a href=\"http://pacifichelm.com\">Brad Ellis</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Lehman_Brothers\">Lehman Brothers</a></li>\n<li><a href=\"https://twitter.com/JakeCarter\">Jake Carter</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Cocoa_(API)\">Cocoa</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Quartz_Composer\">Quartz Composer</a></li>\n<li><a href=\"https://www.apple.com/final-cut-pro/motion/\">Motion</a></li>\n<li><a href=\"http://www.adobe.com/products/aftereffects.html\">After Effects</a></li>\n<li><a href=\"https://twitter.com/kylerichter\">Kyle Richter</a></li>\n<li><a href=\"https://twitter.com/rtmfd\">Ian Baird</a></li>\n<li><a href=\"https://developer.apple.com/in-app-purchase/\">IAP</a></li>\n<li><a href=\"http://eddierickssf.com\">Rickenbacker’s</a></li>\n<li><a href=\"http://www.thehouseofshields.com\">The House of Shields</a></li>\n<li><a href=\"http://daringfireball.net\">John Gruber</a></li>\n<li><a href=\"http://betterelevation.com\">Dave Wiskus</a></li>\n<li><a href=\"http://aged-and-distilled.com/napkin/\">Napkin</a></li>\n<li><a href=\"http://kickingbear.com/blog/\">Guy English</a></li>\n<li><a href=\"https://twitter.com/ottokajetan\">Thomas Unterberger</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/C4_(conference)\">C4</a></li>\n<li><a href=\"https://twitter.com/unitedlemur\">United Lemur</a></li>\n<li><a href=\"http://www.fifa.com/worldcup/\">World Cup</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Brazil\">Brazil</a></li>\n<li><a href=\"https://developer.apple.com/wwdc/\">WWDC</a></li>\n<li><a href=\"http://sfgov.org\">San Francisco</a></li>\n<li><a href=\"http://netnewswireapp.com\">NetNewsWire</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1999\">1999</a></li>\n<li><a href=\"http://www.macworld.com/article/2071020/macworld-editors-choice-awards-the-best-products-of-2013.html\">Eddy awards</a></li>\n</ul>",-      "date_published": "2014-05-09T05:30:00-07:00",-      "attachments": [-        {-          "url": "http://therecord.co/downloads/TheRecord-sp1e1-ChrisParrish.m4a",-          "mime_type": "audio/x-m4a",-          "size_in_bytes": 89970236-        }-      ]-    },-    {-      "id": "http://therecord.co/2014/04/25/mike_lee",-      "url": "http://therecord.co/2014/04/25/mike_lee",-      "title": "Seattle Before the iPhone #9 - Mike Lee",-      "content_html": "<p>This episode was recorded 17 May 2013 live and in person at <a href=\"http://www.omnigroup.com/\">Omni’s</a> beautiful offices overlooking Lake Union in Seattle.</p>\n\n<p>You can <a href=\"http://therecord.co/downloads/TheRecord-s1e9-MikeLee.m4a\">download the m4a file</a> or <a href=\"https://itunes.apple.com/us/podcast/the-record/id791861057\">subscribe in iTunes</a>. (Or <a href=\"http://therecord.co/xml/rss.xml\">subscribe to the podcast feed</a>.)</p>\n\n<p><a href=\"https://twitter.com/bmf\">Mike Lee</a>, <a href=\"https://appsterdam.rs/\">Appsterdam</a> founder, has worked at Alaska Airlines, <a href=\"http://delicious-monster.com/\">Delicious Monster</a> (with Wil Shipley), Apple, and is now Chief Lemur at <a href=\"http://newlemurs.com/\">New Lemurs</a>.</p>\n\n<p class=\"sponsor\">This episode is sponsored by <a href=\"https://www.hover.com/\">Hover</a>. Hover makes domain name management <i>easy</i>. And it’s a snap to transfer domains from other registrars using their valet service. Get 10% off your first purchase with the promotional code BMF. (BMF -- Be My Friend — is Mike Lee’s Twitter handle.) You notice how people with a lot of domains are always talking about Hover? It’s because of their excellent service. <a href=\"https://www.hover.com/\">Take a look</a>.</p>\n\n\n\n\n<p class=\"sponsor\">This episode is also sponsored by <a href=\" http://azure.microsoft.com/en-us/develop/mobile/ios/?WT.mc_id=azurebg_us_pmm_mirluna_therecord\">Microsoft Azure Mobile Services</a>. Mobile Services is a great way to provide backend services — syncing and other things — for your iPhone, iPad, and Mac apps. It’s high level — you can get <i>more</i> done with <i>less</i> work. It’s also deep: write JavaScript in your favorite text editor. Test with mocha. Deploy with git.</p>\n\n\n<p>Things we mention, in order of appearance (mostly):</p>\n\n<ul>\n<li><a href=\"http://en.wikipedia.org/wiki/Kurt_Cobain\">Kurt Cobain</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Grunge\">Grunge</a></li>\n<li><a href=\"http://www.honolulu.gov\">Honolulu</a></li>\n<li><a href=\"https://portal.ehawaii.gov\">Hawaii</a></li>\n<li><a href=\"http://www.pugetsound.edu\">University of Puget Sound</a></li>\n<li><a href=\"http://www.cityoftacoma.org\">Tacoma</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Puget_Sound\">Puget Sound</a></li>\n<li><a href=\"http://www.alaskaair.com\">Alaska Airlines</a></li>\n<li><a href=\"http://www.portseattle.org/Sea-Tac/Pages/default.aspx\">SeaTac</a></li>\n<li><a href=\"http://career-advice.monster.com/job-search/company-industry-research/ramp-agent-ground-support-jobs/article.aspx\">Lead ramp agent</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Skill_(labor)\">Skilled labor</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1993\">1993</a></li>\n<li><a href=\"http://www.cyoa.com\">Choose Your Own Adventure</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Dynamic_HTML\">DHTML</a></li>\n<li><a href=\"http://www.adobe.com/products/flash.html\">Flash</a></li>\n<li><a href=\"http://www.webstandards.org\">Web Standards Project</a></li>\n<li><a href=\"http://www.w3.org/XML/\">XML</a></li>\n<li><a href=\"http://www.java.com/\">Java</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/C_Sharp_(programming_language)\">C#</a></li>\n<li><a href=\"http://www.microsoft.com/net\">DotNet</a></li>\n<li><a href=\"http://www.apple.com/mac/\">Macintosh</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Personal_computer\">PC</a></li>\n<li><a href=\"http://www.microsoft.com\">Microsoft</a></li>\n<li><a href=\"http://windows.microsoft.com/\">Windows</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Windows_95\">Windows 95</a></li>\n<li><a href=\"http://www.apple.com/osx/\">Mac OS X</a></li>\n<li><a href=\"http://www.ise.gov/terrorist-watchlist\">Terrorist watch list</a></li>\n<li><a href=\"https://developer.apple.com/wwdc/\">WWDC</a></li>\n<li><a href=\"http://www.oracle.com/javaone/index.html\">JavaOne</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Objective-C\">Objective-C</a></li>\n<li><a href=\"https://developer.apple.com/xcode/\">Xcode</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2005\">2005</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2001\">2001</a></li>\n<li><a href=\"http://www.yelp.com/biz/renoir-hotel-san-francisco\">Renoir Hotel</a></li>\n<li><a href=\"https://developer.apple.com/wwdc/students/\">WWDC Student Scholarship</a></li>\n<li><a href=\"http://blog.wilshipley.com\">Wil Shipley</a></li>\n<li><a href=\"http://arstechnica.com/apple/2005/06/574/\">Wil Shipley’s Speech on the Indie Dream</a></li>\n<li><a href=\"http://www.devry.edu\">Devry</a></li>\n<li><a href=\"http://www.fedex.com\">FedEx</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/CoreData/cdProgrammingGuide.html\">Core Data</a></li>\n<li><a href=\"http://www.friday.com/bbum/\">Bill Bumgarner</a></li>\n<li><a href=\"http://www.ci.federal-way.wa.us\">Federal Way</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Interstate_5\">I-5</a></li>\n<li><a href=\"http://delicious-monster.com\">Delicious Library</a></li>\n<li><a href=\"https://developer.apple.com/design/awards/\">Apple Design Award</a></li>\n<li><a href=\"http://www.tuaw.com/2005/06/10/wwdc-wallflowers-rock-apple-campus-bash/\">Campus Bash</a></li>\n<li><a href=\"http://www.yelp.com/biz/dennys-san-francisco-2\">Denny’s</a></li>\n<li><a href=\"http://www.omnigroup.com\">Omni Group</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Recreation_room\">Rumpus Room</a></li>\n<li><a href=\"https://www.apple.com/retail/universityvillage/\">Apple Store</a></li>\n<li><a href=\"http://www.barnesandnoble.com\">Barnes & Noble</a></li>\n<li><a href=\"https://twitter.com/lllucas\">Lucas Newman</a></li>\n<li><a href=\"http://www.mikematas.com/\">Mike Matas</a></li>\n<li><a href=\"http://www.cityofknoxville.org\">Knoxville</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Samurai\">Samurai</a></li>\n<li><a href=\"http://imaginepeace.com\">Yoko Ono</a></li>\n<li><a href=\"http://seattlexcoders.org\">Seattle Xcoders</a></li>\n<li><a href=\"http://shapeof.com\">Gus Mueller</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Uncertainty_principle\">Heisenberg Uncertainty Principle</a></li>\n<li><a href=\"http://scripting.com/\">Dave Winer</a></li>\n<li><a href=\"http://www.dccomics.com/characters/superman\">Superman</a></li>\n<li><a href=\"http://www.bjsrestaurants.com/locations/ca/cupertino\">IL 7</a></li>\n<li><a href=\"https://twitter.com/jgeleynse\">John Geleynse</a></li>\n<li><a href=\"http://newlemurs.com\">Lemur Chemistry</a></li>\n<li><a href=\"http://cabel.me\">Cabel Sasser</a></li>\n<li><a href=\"https://www.flickr.com/photos/martingausby/3661009412/\">“Hi, I Make Macintosh Software” T-shirt</a></li>\n<li><a href=\"http://www.altconf.com\">altWWDC</a></li>\n<li><a href=\"http://www.imore.com/debug\">Debug podcast</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Tapulous\">Tapulous</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Tap_Tap_Revenge\">Tap Tap Revenge</a></li>\n<li><a href=\"http://ifartmobile.com\">iFart</a></li>\n<li><a href=\"https://developer.apple.com/support/technical/\">DTS</a></li>\n<li><a href=\"https://foursquare.com/v/apple-infinite-loop-3-cupertino-ca/4b267f5ef964a520647c24e3\">IL 3</a></li>\n<li><a href=\"http://www.yelp.com/biz/caffè-macs-cupertino-2\">Caffè Macs</a></li>\n<li><a href=\"http://randsinrepose.com\">Rands</a></li>\n<li><a href=\"http://www.appleoutsider.com\">Matt Drance</a></li>\n<li><a href=\"https://twitter.com/Jury\">Michael Jurewitz</a></li>\n</ul>",-      "date_published": "2014-04-25T11:30:00-07:00",-      "attachments": [-        {-          "url": "http://therecord.co/downloads/TheRecord-s1e9-MikeLee.m4a",-          "mime_type": "audio/x-m4a",-          "size_in_bytes": 52213416-        }-      ]-    },-    {-      "id": "http://therecord.co/2014/04/11/nat_irons",-      "url": "http://therecord.co/2014/04/11/nat_irons",-      "title": "Seattle Before the iPhone #8 - Nathaniel Irons",-      "content_html": "<p>This episode was recorded 16 May 2013 live and in person at <a href=\"http://www.omnigroup.com/\">Omni’s</a> lovely offices overlooking Lake Union in Seattle.</p>\n\n<p>You can <a href=\"http://therecord.co/downloads/TheRecord-s1e8-NatIrons.m4a\">download the m4a file</a> or <a href=\"https://itunes.apple.com/us/podcast/the-record/id791861057\">subscribe in iTunes</a>. (Or <a href=\"http://therecord.co/xml/rss.xml\">subscribe to the podcast feed</a>.)</p>\n\n<p><a href=\"https://twitter.com/irons\">Nat Irons</a> has worked at <a href=\"https://developer.apple.com/contact/\">Apple Developer Relations</a>, as a WebObjects consultant, and as IT director at <a href=\"http://www.thestranger.com\">The Stranger</a>. He’s now QA Manager at <a href=\"http://blackpixel.com\">Black Pixel</a>. He once delivered pizza to The Far Side author Gary Larson.</p>\n\n<p class=\"sponsor\">This episode is sponsored by <a href=\"http://igloosoftware.com/therecord\">Igloo</a>. Igloo is an intranet you’ll actually like, with shared calendars, microblogs, file-sharing, social networking, and more. It’s free for up 10 users — give it a try for your company or your team today.</p>\n\n\n\n\n<p class=\"sponsor\">This episode is also sponsored by <a href=\" http://azure.microsoft.com/en-us/develop/mobile/ios/?WT.mc_id=azurebg_us_pmm_mirluna_therecord\">Microsoft Azure Mobile Services</a>. Mobile Services is a great way to provide backend services — syncing and other things — for your iPhone, iPad, and Mac apps. It’s high level — you can get more done with less work.</p>\n\n\n<p>Things we mention, in-order-of-appearance-ish:</p>\n\n<ul>\n<li><a href=\"http://www.loderunnerclassic.com\">Lode Runner</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=KCkbp4wurW0\">Dark Castle</a></li>\n<li><a href=\"http://windows.microsoft.com\">Windows</a></li>\n<li><a href=\"http://www.cityofboston.gov\">Boston</a></li>\n<li><a href=\"http://sfgov.org\">San Francisco</a></li>\n<li><a href=\"http://www.ci.berkeley.ca.us\">Berkeley, CA</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/San_Francisco_Bay_Area\">Bay Area</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=FKov1lmq_OU\">High school</a></li>\n<li><a href=\"http://www.seattle.gov\">Seattle</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Tim_Eyman\">Tim Eyman</a></li>\n<li><a href=\"http://community.seattletimes.nwsource.com/archive/?date=19940114&slug=1889548\">Sit & Spin</a></li>\n<li><a href=\"http://www.meetup.com/blog-1/\">Blogger Meetup</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Natty_Bumppo\">Natty Bumppo</a></li>\n<li><a href=\"http://blog.bumppo.net\">bumppo.net</a></li>\n<li><a href=\"http://external.oneonta.edu/cooper/\">James Fenimore Cooper</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Leatherstocking_Tales\">Leatherstocking Tales</a></li>\n<li><a href=\"http://www.imdb.com/name/nm0000520/\">Michael Mann</a></li>\n<li><a href=\"http://www.imdb.com/name/nm0000358/\">Daniel Day Lewis</a></li>\n<li><a href=\"http://www.rogerebert.com/reviews/the-last-of-the-mohicans-1992\">Last of the Mohicans movie</a></li>\n<li><a href=\"http://help.aol.com/help/microsites/microsite.do?cmd=displayKC&docType=kc&externalId=220781\">AOL chatrooms</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Berkeley_Macintosh_Users_Group\">Berkeley Macintosh User Group (BMUG)</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Bulletin_board_system\">BBS</a></li>\n<li><a href=\"http://www.firstclass.com\">First Class BBS</a></li>\n<li><a href=\"https://twitter.com/tpoholmes\">Tim Holmes</a></li>\n<li><a href=\"https://www.google.com/search?q=purple+harley&client=safari&rls=en&tbm=isch&tbo=u&source=univ&sa=X&ei=Ue9FU4eDJ6fXyAH-54B4&ved=0CDkQsAQ&biw=1270&bih=1269\">Purple Harley</a></li>\n<li><a href=\"http://www.amazon.com/The-Bmug-Newsletter-Spring-1997/dp/0201688891\">BMUG Newsletter</a></li>\n<li><a href=\"http://computer.howstuffworks.com/modem.htm\">Modems</a></li>\n<li><a href=\"http://www.heidiroizen.com\">Heidi Roizen</a></li>\n<li><a href=\"http://technorati.com/technology/article/steve-jobs-on-what-it-means/\">Bleeding in six colors</a></li>\n<li><a href=\"https://twitter.com\">Twitter</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Bolo_(1987_video_game)\">Bolo</a></li>\n<li><a href=\"http://www.moddb.com/groups/video-game-art-realm/videos/spectre-vr-apple-macintosh-tank-game-fine-one\">Spectre</a></li>\n<li><a href=\"http://stuartcheshire.org\">Stuart Cheshire</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Virtual_reality\">Virtual Reality</a></li>\n<li><a href=\"https://developer.apple.com/bonjour/\">Bonjour</a></li>\n<li><a href=\"http://www.zeroconf.org\">ZeroConf</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Cheshire_Cat\">Cheshire Cat</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Stuart_Little\">Stuart Little</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=2PlP95WoCBw\">Alice</a></li>\n<li><a href=\"http://www.perl.org\">PERL</a></li>\n<li><a href=\"http://office.microsoft.com/en-us/excel/\">Excel</a></li>\n<li><a href=\"http://www.macos9lives.com\">Mac OS 9</a></li>\n<li><a href=\"https://www.google.com/search?q=imac+bondi+blue&client=safari&rls=en&tbm=isch&tbo=u&source=univ&sa=X&ei=p_FFU7XiF4Op2QXR2YGADA&ved=0CCgQsAQ&biw=1270&bih=1269\">iMac</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Floppy_disk\">Floppy drive</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Apple_Desktop_Bus\">ADB</a></li>\n<li><a href=\"http://computer.howstuffworks.com/usb.htm\">USB</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/NeXT\">NeXT</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Rhapsody_(operating_system)\">Rhapsody</a></li>\n<li><a href=\"http://www.unix.org\">UNIX</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Terminal_(OS_X)\">Terminal.app</a></li>\n<li><a href=\"http://www.barebones.com/products/bbedit/\">BBEdit</a></li>\n<li><a href=\"http://apple-history.com/se30\">SE/30</a></li>\n<li><a href=\"http://www.guidebookgallery.org/screenshots/macosxdp3\">Apple in middle of menubar</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Macintosh_Programmer's_Workshop\">MPW</a></li>\n<li><a href=\"http://c2.com/cgi/wiki?MacPerl\">MacPerl</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/documentation/TextFonts/Reference/LatentSemanticMapping/_index.html\">Latent Semantic Mapping (LSM)</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Regular_expression\">Regular expressions</a></li>\n<li><a href=\"https://developer.apple.com/wwdc/\">WWDC</a></li>\n<li><a href=\"http://www.hulu.com/watch/33844\">Homer Simpson in The Land of Chocoloate</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Schadenfreude\">Schadenfreude</a></li>\n<li><a href=\"http://www.macintouch.com\">MacInTouch</a></li>\n<li><a href=\"http://www.npr.org\">NPR</a></li>\n<li><a href=\"http://microsoft.com\">Microsoft</a></li>\n<li><a href=\"http://news.cnet.com/2100-1001-202143.html\">Microsoft invests in Apple and pledges to keep developing Office for Mac</a></li>\n<li><a href=\"http://apple-history.com/pg3s\">Powerbook G3</a></li>\n<li><a href=\"http://www.filemaker.com\">Filemaker Pro</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Claris\">Claris</a></li>\n<li><a href=\"http://office.microsoft.com/en-us/access/\">Microsoft Access</a></li>\n<li><a href=\"http://info.filemaker.com/Bento_Statement.html\">Bento</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Apple_events\">Apple events</a></li>\n<li><a href=\"http://moto.arrisi.com\">Farallon</a></li>\n<li><a href=\"https://twitter.com/cshotton\">Chuck Shotton</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Kerio_WebSTAR\">WebSTAR</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/MacHTTP\">MacHTTP</a></li>\n<li><a href=\"http://www.networkcomputing.com/1014/1014sp5.html\">StarNine</a></li>\n<li><a href=\"http://news.cnet.com/Quarterdeck-to-beef-up-Webstar/2100-1023_3-211781.html\">Quarterdeck</a></li>\n<li><a href=\"http://httpd.apache.org\">Apache</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Open_Transport\">Open Transport</a></li>\n<li><a href=\"https://itunes.apple.com/us/app/xcode/id497799835?mt=12\">Xcode</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/WebObjects\">WebObjects</a></li>\n<li><a href=\"http://www.java.com/en/\">Java</a></li>\n<li><a href=\"http://www.friday.com/bbum/\">Bill Bumgarner</a></li>\n<li><a href=\"https://developer.apple.com/library/ios/documentation/Cocoa/Conceptual/ProgrammingWithObjectiveC/CustomizingExistingClasses/CustomizingExistingClasses.html\">Objective-C categories</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Tunneling_protocol\">SSH tunnels</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1999\">1999</a></li>\n<li><a href=\"https://www.redmond.gov\">Redmond</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2000\">2000</a></li>\n<li><a href=\"http://www.cantwell.senate.gov/\">Maria Cantwell</a></li>\n<li><a href=\"http://www.kingcounty.gov\">King County</a></li>\n<li><a href=\"http://www.co.pierce.wa.us\">Pierce County</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/List_of_U.S._state_partition_proposals#Washington\">Eastern Washington secession</a></li>\n<li><a href=\"http://www.cityofshoreline.com\">Shoreline</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Queen_Anne,_Seattle\">Queen Anne</a></li>\n<li><a href=\"http://www.myballard.com\">Ballard</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Magnolia,_Seattle\">Magnolia</a></li>\n<li><a href=\"http://www.seattle.gov/tour/discov.htm\">Discovery Park</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Capitol_Hill_(Seattle)\">Capitol Hill</a></li>\n<li><a href=\"http://www.pagliacci.com\">Pagliacci Pizza</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2003\">2003</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Sand_Point,_Seattle\">Sand Point</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Gary_Larson\">Gary Larson</a></li>\n<li><a href=\"http://harrypotter.wikia.com/wiki/Albus_Dumbledore\">Dumbledore</a></li>\n<li><a href=\"http://www.thefarside.com\">The Far Side</a></li>\n<li><a href=\"http://www.yelp.com/biz/california-academy-of-sciences-san-francisco\">San Francisco Academy of Sciences</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Workers'_compensation\">Workmen’s Compensation</a></li>\n<li><a href=\"https://www.virginiamason.org\">Virgina Mason</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2001\">2001</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2002\">2002</a></li>\n<li><a href=\"http://waxy.org/2013/04/the_death_of_upcomingorg/\">Upcoming.org</a></li>\n<li><a href=\"http://www.seattleweekly.com\">Seattle Weekly</a></li>\n<li><a href=\"http://www.thestranger.com/seattle/dan-savage/Author?oid=259\">Dan Savage</a></li>\n<li><a href=\"http://www.robertnewman.com/merry-xmas-and-happy-new-year-from-seattles-the-rocket-magazine/\">The Rocket</a></li>\n<li><a href=\"http://therumpus.net/2012/04/the-rumpus-interview-with-lynda-barry/\">Lynda Barry</a></li>\n<li><a href=\"http://www.buzzfeed.com/summeranne/13-of-the-best-life-in-hell-comics-by-matt-groen\">Life in Hell</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Matt_Groening\">Matt Groening</a></li>\n<li><a href=\"http://www.evergreen.edu\">Evergreen State College</a></li>\n<li><a href=\"https://www.apple.com/retail/universityvillage/\">University Village Apple Store</a></li>\n<li><a href=\"http://seattlexcoders.org\">Seattle Xcoders</a></li>\n<li><a href=\"http://scripting.com\">Dave Winer</a></li>\n<li><a href=\"https://twitter.com/dlpasco\">Daniel Pasco</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/C4_(conference)\">C4</a></li>\n<li><a href=\"http://therecord.co/2014/02/28/paul_goracke\">Paul Goracke</a></li>\n<li><a href=\"http://blackpixel.com/careers.html\">Black Pixel job listings</a></li>\n</ul>",-      "date_published": "2014-04-11T11:45:00-07:00",-      "attachments": [-        {-          "url": "http://therecord.co/downloads/TheRecord-s1e8-NatIrons.m4a",-          "mime_type": "audio/x-m4a",-          "size_in_bytes": 57712499-        }-      ]-    },-    {-      "id": "http://therecord.co/2014/03/28/john_chaffee",-      "url": "http://therecord.co/2014/03/28/john_chaffee",-      "title": "Seattle Before the iPhone #7 - John Chaffee",-      "content_html": "<p>This episode was recorded 16 May 2013 live and in person at <a href=\"http://www.omnigroup.com/\">Omni’s</a> lovely offices overlooking Lake Union in Seattle. (Check out the <a href=\"http://www.omnigroup.com/blog/omnifocus-2-for-mac-resumes-testing-will-ship-in-june\">OmniFocus 2 public beta</a>!)</p>\n\n<p>You can <a href=\"http://therecord.co/downloads/TheRecord-s1e7-JohnChaffee.m4a\">download the m4a file</a> or <a href=\"https://itunes.apple.com/us/podcast/the-record/id791861057\">subscribe in iTunes</a>. (Or <a href=\"http://therecord.co/xml/rss.xml\">subscribe to the podcast feed</a>.)</p>\n\n<p><a href=\"https://twitter.com/ChaffeeJohn\">John Chaffee</a> is a co-founder of <a href=\"http://busymac.com/\">BusyMac</a> which makes the awesome <a href=\"http://www.busymac.com/busycal/\">BusyCal</a>. John talks about being a Mac developer in the ’90s, what it was like at Now Software, and how he got tired of mobile and came back to the Mac.</p>\n\n<p class=\"sponsor\">This episode is sponsored by <a href=\"http://squarespace.com/therecord\">Squarespace</a>. Easily create beautiful websites via drag-and-drop. Get help any time from their 24/7 technical support. Create responsive websites — ready for phones and tablets — without any extra effort: Squarespace’s designers have already handled it for you. Get 10% off by going to <a href=\"http://squarespace.com/therecord\">http://squarespace.com/therecord</a>. And, if you want to get under the hood, check out their APIs at <a href=\"http://developers.squarespace.com/\">developers.squarespace.com</a>.</p>\n\n\n\n\n<p class=\"sponsor\">This episode is also sponsored by <a href=\" http://www.windowsazure.com/en-us/develop/mobile/ios/?WT.mc_id=azurebg_us_pmm_mirluna_therecord\">Microsoft Azure Mobile Services</a>. Mobile Services is a great way to provide backend services — syncing and other things — for your iPhone, iPad, and Mac apps. If you’ve been to the website already, you’ve seen the tutorials where you input code into a browser window. And that’s an easy way to get started. But don’t be fooled: Mobile Services is deep. You can write in JavaScript in your favorite text editor and deploy via Git. Good stuff.</p>\n\n\n<p>Things we mention, in order of appearance (roughly):</p>\n\n<ul>\n<li><a href=\"http://www.busymac.com//\">BusyMac</a></li>\n<li><a href=\"http://www.busymac.com/busycal/\">BusyCal</a></li>\n<li><a href=\"http://www.macworld.com/article/1147271/nowsoftware.html\">Now Software</a></li>\n<li><a href=\"http://www.extensis.com/\">Extensis</a></li>\n<li><a href=\"http://www.netopia.com/\">Farallon</a></li>\n<li><a href=\"http://www.splashdata.com/\">SplashData</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/PhoneNet\">PhoneNet connectors</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/AppleTalk\">AppleTalk</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Berkeley_Macintosh_Users_Group\">Berkeley Mac Users Group (BMUG)</a></li>\n<li><a href=\"http://www.ci.berkeley.ca.us/Home.aspx\">Berkeley, CA</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Software_quality_assurance\">QA</a></li>\n<li><a href=\"http://en.wikipedia.org/?title=A/UX\">A/UX</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Desktop_publishing\">Desktop publishing</a></li>\n<li><a href=\"http://lowendmac.com/1989/mac-iici/\">Mac iici</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/SCSI\">SCSI</a></li>\n<li><a href=\"https://www.santabarbaraca.gov/\">Santa Barbara</a></li>\n<li><a href=\"http://www.themacstore.com/\">Mac Store</a></li>\n<li><a href=\"http://www.adobe.com/products/pagemaker/\">Pagemaker</a></li>\n<li><a href=\"http://apple-history.com/512k\">Mac 512</a></li>\n<li><a href=\"http://www.viptechnologies.net/\">VIP Technologies</a></li>\n<li><a href=\"http://www.atarimuseum.com/computers/16bits/stmenu/atarist.htm\">Atari ST</a></li>\n<li><a href=\"http://oldcomputers.net/appleiigs.html\">Apple IIgs</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Lotus_1-2-3\">Lotus 1-2-3</a></li>\n<li><a href=\"http://www.irs.gov/\">Taxes</a></li>\n<li><a href=\"http://apple-history.com/se30\">Mac SE/30</a></li>\n<li><a href=\"http://www.portlandoregon.gov/\">Portland</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/San_Francisco_Bay_Area\">Bay Area</a></li>\n<li><a href=\"http://www.sanjoseca.gov/\">San Jose</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/System_7\">System 7</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1991\">1991</a></li>\n<li><a href=\"http://tidbits.com/article/875\">Now Utilities</a></li>\n<li><a href=\"http://www.busymac.com/about.html\">Dave Riggle</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Claris\">Claris</a></li>\n<li><a href=\"http://m.youtube.com/watch?v=ZS2wTH_nZWI\">MacWrite</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/FileMaker\">Filemaker Pro</a></li>\n<li><a href=\"http://info.filemaker.com/Bento_Statement.html\">Bento</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1990\">1990</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Macworld/iWorld\">Macworld Expo</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/History_of_the_floppy_disk\">Floppy disks</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Calendar_(application)\">iCal</a></li>\n<li><a href=\"https://sites.google.com/site/nowsoftwarecom/download\">Now Up-to-Date</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=PEHNrqPkefI\">Macworld Expo Boston</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/CompuServe\">Compuserve</a></li>\n<li><a href=\"http://windows.microsoft.com/en-us/windows/home\">Windows</a></li>\n<li><a href=\"http://www.altura.com/portfolio.php\">Altura Mac2Win</a></li>\n<li><a href=\"http://www.qualcomm.com/\">Qualcomm</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Osborne_effect\">Osborne Effect</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Dot-com_bubble\">Dotcom Bubble</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=NHjf9rGgGQQ\">Aldus Fetch</a></li>\n<li><a href=\"http://www.quark.com/\">Quark</a></li>\n<li><a href=\"http://www.macmall.com/\">MacMall</a></li>\n<li><a href=\"http://www.ononesoftware.com/\">OnOne Software</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1999\">1999</a></li>\n<li><a href=\"http://www.adobe.com/products/indesign.html\">Adobe InDesign</a></li>\n<li><a href=\"http://apple.wikia.com/wiki/OpenDoc\">OpenDoc</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/OS_X\">Mac OS X</a></li>\n<li><a href=\"http://oreilly.com/pub/a/mac/2001/05/23/cocoa_vs_carbon.html\">Carbon</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/documentation/cocoa/reference/applicationkit/objc_classic/_index.html\">AppKit</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/NetNewsWire\">NetNewsWire</a></li>\n<li><a href=\"http://www.imdb.com/title/tt0151804/\">Office Space</a></li>\n<li><a href=\"http://www.gettyimages.com/\">Getty Images</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/PhotoDisc\">PhotoDisx</a></li>\n<li><a href=\"http://www.imdb.com/title/tt0062622/\">2001</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Palm_(PDA)\">Palm PDA</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Handspring_(company)\">Handspring Visor</a></li>\n<li><a href=\"http://www.palmgear.com//\">PalmGear</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Handango\">Handango</a></li>\n<li><a href=\"http://www.splashdata.com/splashphoto/palm/\">SplashPhoto</a></li>\n<li><a href=\"http://www.splashdata.com/splashmoney/\">SplashMoney</a></li>\n<li><a href=\"http://www.splashdata.com/splashid/\">SplashID</a></li>\n<li><a href=\"http://www.splashdata.com/splashshopper/\">SplashShopper</a></li>\n<li><a href=\"http://www.splashdata.com/splashwallet/\">SplashWallet</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Windows_Mobile\">Windows Mobile</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Symbian\">Symbian</a></li>\n<li><a href=\"http://www.android.com/\">Android</a></li>\n<li><a href=\"http://splashdata.com/press/PR050214.htm\">SplashBlog</a></li>\n<li><a href=\"http://instagram.com/\">Instagram</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2006\">2006</a></li>\n<li><a href=\"http://www.sixapart.com/\">SixApart</a></li>\n<li><a href=\"http://movabletype.org/\">Movable Type</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2007\">2007</a></li>\n<li><a href=\"http://www.apple.com/osx/apps/app-store.html\">Mac App Store</a></li>\n<li><a href=\"http://www.busymac.com/\">BusyCal, LLC</a></li>\n<li><a href=\"https://www.google.com/\">Google</a></li>\n<li><a href=\"https://developer.apple.com/wwdc/\">WWDC</a></li>\n<li><a href=\"http://cyber.law.harvard.edu/rss/rss.html\">RSS</a></li>\n<li><a href=\"https://discussions.apple.com/thread/4135311?start=285&\">Safari/RSS</a></li>\n<li><a href=\"http://googleblog.blogspot.com.au/2013/03/a-second-spring-of-cleaning.html\">Google (Partly) Shuts Down CalDAV</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/MobileMe\">MobileMe</a></li>\n<li><a href=\"http://support.apple.com/kb/HT5847\">SyncServices</a></li>\n<li><a href=\"https://www.icloud.com/\">iCloud</a></li>\n<li><a href=\"https://developer.apple.com/app-sandboxing/\">Sandboxing</a></li>\n<li><a href=\"http://www.jcpenney.com/\">JCPenney’s</a></li>\n<li><a href=\"http://www.apple.com/pr/library/2008/12/16Apple-Announces-Its-Last-Year-at-Macworld.html\">Apple Pulls out of Macworld</a></li>\n<li><a href=\"https://twitter.com/\">Twitter</a></li>\n<li><a href=\"https://www.apple.com/airplay/\">AirPlay</a></li>\n<li><a href=\"http://www.apple.com/appletv/\">Apple TV</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Type_A_and_Type_B_personality_theory\">Type A Personality</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Domain_Name_System\">Domain Name System</a></li>\n<li><a href=\"http://www.macworld.com/article/1135218/busysync216.html\">BusySync</a></li>\n<li><a href=\"http://kb.hpwebos.com/wps/portal/kb/common/article/2630_en.html\">HotSync</a></li>\n<li><a href=\"http://www.objc.io/issue-10/icloud-core-data.html\">iCloud Core Data Syncing</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/documentation/General/Conceptual/iCloudDesignGuide/Chapters/DesigningForKey-ValueDataIniCloud.html\">iCloud Key/Value Storage</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Exchange_ActiveSync\">ActiveSync</a></li>\n<li><a href=\"http://msdn.microsoft.com/en-us/library/office/dd877045(v=exchg.140).aspx\">ExchangeWebService</a></li>\n<li><a href=\"http://us.blackberry.com/\">Blackberry</a></li>\n</ul>",-      "date_published": "2014-03-28T11:00:00-07:00",-      "attachments": [-        {-          "url": "http://therecord.co/downloads/TheRecord-s1e7-JohnChaffee.m4a",-          "mime_type": "audio/x-m4a",-          "size_in_bytes": 56949803-        }-      ]-    },-    {-      "id": "http://therecord.co/2014/03/14/tim_wood",-      "url": "http://therecord.co/2014/03/14/tim_wood",-      "title": "Seattle Before the iPhone #6 - Tim Wood",-      "content_html": "<p>This episode was recorded 17 May 2013 live and in person at <a href=\"http://www.omnigroup.com/\">Omni’s</a> lovely offices overlooking Lake Union in Seattle.</p>\n\n<p>You can <a href=\"http://therecord.co/downloads/TheRecord-s1e6-TimWood.m4a\">download the m4a file</a> or <a href=\"https://itunes.apple.com/us/podcast/the-record/id791861057\">subscribe in iTunes</a>. (Or <a href=\"http://therecord.co/xml/rss.xml\">subscribe to the podcast feed</a>.)</p>\n\n<p><a href=\"https://twitter.com/tjw\">Tim Wood</a>, CTO of <a href=\"https://www.omnigroup.com/\">The Omni Group</a>, talks about how Omni got started and what it was like being a NeXT developer before the acquisition.</p>\n\n<p class=\"sponsor\">This episode is sponsored by <a href=\"http://squarespace.com/therecord\">Squarespace</a>. Easily create beautiful websites via drag-and-drop. Get help any time from their 24/7 technical support. Create responsive websites — ready for phones and tablets — without any extra effort: Squarespace’s designers have already handled it for you. Get 10% off by going to <a href=\"http://squarespace.com/therecord\">http://squarespace.com/therecord</a>. And, if you want to get under the hood, check out their APIs at <a href=\"http://developers.squarespace.com/\">developers.squarespace.com</a>.</p>\n\n\n\n\n<p class=\"sponsor\">This episode is also sponsored by <a href=\" http://www.windowsazure.com/en-us/develop/mobile/ios/?WT.mc_id=azurebg_us_pmm_mirluna_therecord\">Microsoft Azure Mobile Services</a>. Mobile Services is a great way to provide backend services — syncing and other things — for your iPhone, iPad, and Mac apps. If you’ve been to the website already, you’ve seen the tutorials where you input code into a browser window. And that’s an easy way to get started. But don’t be fooled: Mobile Services is deep. You can write in your favorite text editor and deploy via Git. Regular-old Git, not Git#++. Git.</p>\n\n\n<p>Things we mention, in order of appearance (more or less):</p>\n\n<p><li><a href=\"http://oldcomputers.net/atari800.html\">Atari 800</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/BASIC\">BASIC</a></li>\n<li><a href=\"http://www.cityoftacoma.org/\">Tacoma, WA</a></li>\n<li><a href=\"http://oldcomputers.net/c64.html\">Commodore</a></li>\n<li><a href=\"http://oldcomputers.net/appleii.html\">Apple II</a></li>\n<li><a href=\"http://en.wikibooks.org/wiki/6502_Assembly\">6502 Assembler</a></li>\n<li><a href=\"http://www.atarimuseum.com/computers/16bits/stmenu/atarist.htm\">Atari ST</a></li>\n<li><a href=\"https://archive.org/details/compute-magazine\">Compute! Magazine</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Burroughs_Corporation\">Burroughs</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Mainframe_computer\">Mainframes</a></li>\n<li><a href=\"http://www.radioshack.com/\">Radio Shack</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/NeXT\">NeXT</a></li>\n<li><a href=\"http://www.apple.com/mac/\">Mac</a></li>\n<li><a href=\"https://www.washington.edu/\">University of Washington</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Zenith_Z-89\">H19 Terminal</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Fortran\">Fortran</a></li>\n<li><a href=\"http://www.wolfram.com/mathematica/\">Mathematica</a></li>\n<li><a href=\"http://www.latex-project.org/\">LaTeX</a></li>\n<li><a href=\"https://www.java.com/\">Java</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Ada_(programming_language)\">Ada</a></li>\n<li><a href=\"http://www.boeing.com/boeing/\">Boeing</a></li>\n<li><a href=\"http://www.defense.gov/\">Department of Defense</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/OpenVMS\">VMS</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/IBM_System/360\">IBM 360</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Objective-C\">Objective-C</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/documentation/cocoa/reference/applicationkit/objc_classic/_index.html\">AppKit</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Interface_Builder\">Interface Builder</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Project_Builder\">Project Builder</a></li>\n<li><a href=\"http://mrbook.org/tutorials/make/\">Makefiles</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Optical_disc_drive\">Read-write Optical drives</a></li>\n<li><a href=\"http://blog.wilshipley.com/\">Wil Shipley</a></li>\n<li><a href=\"https://twitter.com/kcase\">Ken Case</a></li>\n<li><a href=\"https://twitter.com/gregtitus\">Greg Titus</a></li>\n<li><a href=\"http://people.omnigroup.com/tom/\">Tom Bunch</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Massively_multiplayer_online_game\">Massively multiplayer games</a></li>\n<li><a href=\"https://minecraft.net/\">Minecraft</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/MOO\">MOOs</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/MUSH\">MUSHes</a></li>\n<li><a href=\"http://www.compuserve.com/‎\">CompuServe</a></li>\n<li><a href=\"http://www.uo.com/\">Ultima Online</a></li>\n<li><a href=\"http://www.wma.com/\">William Morris Agency</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Craig_McCaw\">McCaw Cellular</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1992\">1992</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Adobe_FrameMaker\">Framemaker</a></li>\n<li><a href=\"http://www.adobe.com/\">Adobe</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Lighthouse_Design\">Lighthouse Design</a></li>\n<li><a href=\"http://www.hodgesfamily.com/images/Diagram.pdf\">Diagram!</a></li>\n<li><a href=\"http://www.omnigroup.com/omnigraffle\">OmniGraffle</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1994\">1994</a></li>\n<li><a href=\"http://www.w3.org/People/Berners-Lee/WorldWideWeb.html\">www.app</a></li>\n<li><a href=\"https://www.omnigroup.com/more\">OmniWeb</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Blink_element\">Blink tag</a></li>\n<li><a href=\"http://www.imdb.com/title/tt0054524/\">Rocky &amp; Bullwinkle</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Rhapsody_(operating_system)\">Rhapsody</a></li>\n<li><a href=\"http://www.hp.com/\">Hewlett Packard</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Sun_Microsystems\">Sun</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/OpenStep\">OpenStep</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Solaris_(operating_system)\">Solaris</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Windows_NT\">Windows NT</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/BeOS\">Be</a></li>\n<li><a href=\"http://www.mondaynote.com/author/jlg/\">Jean-Louis Gasée</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Enterprise_Objects_Framework\">Enterprise Objects Framework</a></li>\n<li><a href=\"https://developer.apple.com/library/ios/documentation/Cocoa/Conceptual/CoreData/cdProgrammingGuide.html\">Core Data</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Avie_Tevanian\">Avie Tevanian</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Jon_Rubinstein\">Jon Rubinstein</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Bertrand_Serlet\">Bertrand Serlet</a></li>\n<li><a href=\"https://www.apple.com/pr/bios/craig-federighi.html\">Craig Federighi</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/AppleTalk\">Appletalk</a></li>\n<li><a href=\"http://www.roughlydrafted.com/RD/RDM.Tech.Q1.07/4B800F78-0F75-455A-9681-F186A4365805.html\">Yellow Box</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/HP-UX\">HP-UX</a></li>\n<li><a href=\"http://www.stone.com/\">Andrew Stone</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Doom_(video_game)\">Doom</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Id_Software\">Id Software</a></li>\n<li><a href=\"http://blog.wilshipley.com/2013/12/my-doom-20th-anniversary-stories.html\">Wil’s mail</a></li>\n<li><a href=\"http://www.opengl.org/\">OpenGL</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/John_D._Carmack\">John Carmack</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/DirectX\">DirectX</a></li>\n<li><a href=\"http://www.omnigroup.com/omnioutliner\">OmniOutliner</a></li>\n<li><a href=\"http://plasq.com/products/comiclife3/mac\">Comic Life</a></li>\n<li><a href=\"http://www.ncsa.illinois.edu/\">NCSA</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/documentation/performance/reference/gcd_libdispatch_ref/Reference/reference.html\">GCD</a></li>\n<li><a href=\"https://developer.apple.com/library/ios/documentation/cocoa/conceptual/Blocks/Articles/bxGettingStarted.html\">Blocks</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Functional_programming\">Functional programming</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Mac_Pro\">Mac Pro</a></li>\n<li><a href=\"http://golang.org/\">Go</a></li>\n<li><a href=\"http://www.rust-lang.org/\">Rust</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Race_condition\">Race conditions</a></li>\n<li><a href=\"https://www.omnigroup.com/omnipresence\">OmniPresence</a></li>\n<li><a href=\"https://twitter.com/tjw/status/289230416064425984\">Own the Wheel</a></li>\n<li><a href=\"http://www.objc.io/issue-10/icloud-core-data.html\">iCloud Core Data Syncing</a></li>\n<li><a href=\"https://twitter.com/siegel\">Rich Siegel</a></li>\n<li><a href=\"http://www.barebones.com/products/yojimbo/\">Yojimbo</a></li>\n<li><a href=\"http://cocoadev.com/SyncServices\">Sync Services</a></li>\n</ul></p>",-      "date_published": "2014-03-14T13:00:00-07:00",-      "attachments": [-        {-          "url": "http://therecord.co/downloads/TheRecord-s1e6-TimWood.m4a",-          "mime_type": "audio/x-m4a",-          "size_in_bytes": 58007122-        }-      ]-    },-    {-      "id": "http://therecord.co/2014/02/28/paul_goracke",-      "url": "http://therecord.co/2014/02/28/paul_goracke",-      "title": "Seattle Before the iPhone #5 - Paul Goracke",-      "content_html": "<p>This episode was recorded 16 May 2013 live and in person at <a href=\"http://www.omnigroup.com/\">Omni’s</a> lovely offices overlooking Lake Union in Seattle.</p>\n\n<p>You can <a href=\"http://therecord.co/downloads/TheRecord-s1e5-PaulGoracke.m4a\">download the m4a file</a> or <a href=\"https://itunes.apple.com/us/podcast/the-record/id791861057\">subscribe in iTunes</a>. (Or <a href=\"http://therecord.co/xml/rss.xml\">subscribe to the podcast feed</a>.)</p>\n\n<p><a href=\"https://twitter.com/pgor\">Paul Goracke</a> is a senior staff engineer at <a href=\"http://blackpixel.com/\">Black Pixel</a>, where he works on things he can’t talk about but that you’ve used. He’s also a former instructor at the <a href=\"http://www.pce.uw.edu/certificates/ios-mac-development.html\">University of Washington’s Cocoa development program</a>, and has at times been the lead organizer of the <a href=\"http://seattlexcoders.org/\">Seattle Xcoders</a>.</p>\n\n<p><p class=\"sponsor\">This episode is sponsored by <a href=\"http://squarespace.com/therecord\">Squarespace</a>. Get 10% off by going to <a href=\"http://squarespace.com/therecord\">http://squarespace.com/therecord</a>. Better still: <a href=\"http://beapartofit.squarespace.com\">go work for Squarespace</a>! They’re hiring 30 engineers and designers by March 15, and, “When you interview at Squarespace, we’ll invite you and your spouse or partner to be New Yorkers for a weekend—on us.” The great designers at Squarespace have designed an entire weekend for you, from dining at Alder to going to the Smalls Jazz Club and visiting The New Museum. Seriously cool deal at <a href=\"http://beapartofit.squarespace.com/\">beapartofit.squarespace.com</a>.</p>\n\n<p><p class=\"sponsor\">This episode is also sponsored by <a href=\" http://www.windowsazure.com/en-us/develop/mobile/ios/?WT.mc_id=azurebg_us_pmm_mirluna_therecord\">Microsoft Azure Mobile Services</a>. Mobile Services is a great way to provide backend services — syncing and other things — for your iPhone, iPad, and Mac apps. Write code — Javascript code — in your favorite text editor on your Mac. (Mobile Services runs Node.js.) Deploy via git. Write unit tests using mocha (or your tool of choice). Supports authenticating via Twitter, Facebook, and Google — and you can roll your own system. It’s cool.</p></p>\n\n<p>Things we mention, in order of appearance (more or less):</p>\n\n<p><ul>\n<li><a href=\"http://en.wikipedia.org/wiki/CodeWarrior\">CodeWarrior</a></li>\n<li><a href=\"http://www.toddp.com/classic/Software%20Install/Development%20Tools/001%20-%20Application%20Suites/001%20-%20CodeWarrior/CodeWarrior%202000%20(Full)/Metrowerks%20CodeWarrior/Metrowerks%20Standard%20Library/Readmes/SIOUX%20Notes\">SIOUX-WASTE</a></li>\n<li><a href=\"http://www.macgui.com/usenet/?group=53&id=81687\">TextEdit 32K limit</a></li>\n<li><a href=\"http://www.boingo.org/waste/\">WASTE</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Usenet\">Usenet</a></li>\n<li><a href=\"http://www.zoominfo.com/p/Ron-Liechty/45349900\">Metrowerks Ron</a></li>\n<li><a href=\"http://blog.hsoi.com/\">John Daub</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Compact_disc\">Compact Discs</a></li>\n<li><a href=\"http://www.adobe.com/\">Adobe</a></li>\n<li><a href=\"http://www.mactech.com/articles/mactech/Vol.16/16.07/CommandLinePorting/index.html\">MacTech on SIOUX</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/WorldScript\">WorldScript</a></li>\n<li><a href=\"http://www.unicode.org/\">Unicode</a></li>\n<li><a href=\"http://www.utf-8.com/\">UTF-8</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/PowerPC\">PowerPC</a></li>\n<li><a href=\"http://tidbits.com/article/1627\">Apprentice CDs</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/DNA_sequencer\">DNA sequencers</a></li>\n<li><a href=\"http://www.ca.gov/\">California</a></li>\n<li><a href=\"http://www.stanford.edu/\">Stanford</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/SUN_workstation\">Sun workstation</a></li>\n<li><a href=\"http://oldcomputers.net/ibm5150.html\">PC</a></li>\n<li><a href=\"http://mn.gov/portal/\">Minnesota</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Egghead_Software\">Egghead Software</a></li>\n<li><a href=\"http://searchitchannel.techtarget.com/definition/not-for-resale-NFR\">NFR copies</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/THINK_C\">Think C</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/THINK_Reference\">Think C Reference</a></li>\n<li><a href=\"http://www.amazon.com/Learn-Mac-For-OS-iOS/dp/1430245336\">Learn C on the Macintosh</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Inside_Macintosh\">Inside Mac</a></li>\n<li><a href=\"http://www.amazon.com/Macintosh-Programming-Secrets-Scott-Knaster/dp/0201581345/ref=sr_1_3?s=books&ie=UTF8&qid=1393550204&sr=1-3\">Scott Knaster book</a></li>\n<li><a href=\"http://www.amazon.com/Ultimate-Mac-Programming-Dave-Mark/dp/1568841957\">Ultimate Mac Programming Guide</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Apple_events\">Apple events</a></li>\n<li><a href=\"http://www.amazon.com/Inside-Ole-Microsoft-Programming-Series/dp/1556158432\">Inside OLE</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/4th_Dimension_(software)\">4th Dimension</a></li>\n<li><a href=\"https://twitter.com/GuyKawasaki\">Guy Kawasaki</a></li>\n<li><a href=\"http://oldcomputers.net/appleii.html\">Apple II</a></li>\n<li><a href=\"http://www.atari.com/\">Atari</a></li>\n<li><a href=\"http://oldcomputers.net/c64.html\">Commodore</a></li>\n<li><a href=\"http://www.bricklin.com/visicalc.htm\">VisiCalc</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Applesoft_BASIC\">BASIC</a></li>\n<li><a href=\"http://www.nibblemagazine.com/\">Nibble magazine</a></li>\n<li><a href=\"http://home.comcast.net/~kevin_d_clark/ems/\">Elephant Disks</a></li>\n<li><a href=\"http://stevenf.com/beagle/\">Beagle Bros.</a></li>\n<li><a href=\"https://archive.org/details/byte-magazine\">Byte</a></li>\n<li><a href=\"http://oldcomputers.net/trs80i.html\">TRS-80</a></li>\n<li><a href=\"https://archive.org/details/creativecomputing\">Creative Computing</a></li>\n<li><a href=\"http://6502.org/\">6502</a></li>\n<li><a href=\"http://cslibrary.stanford.edu/106/\">C pointers</a></li>\n<li><a href=\"http://man7.org/linux/man-pages/man3/fseek.3.html\">fseek</a></li>\n<li><a href=\"http://apple-history.com/aiie\">Apple IIe</a></li>\n<li><a href=\"http://oldcomputers.net/appleiigs.html\">Apple IIgs</a></li>\n<li><a href=\"http://www.virtualapple.org/lemonadestanddisk.html\">Lemonade Stand</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Token_ring\">Token rings</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1994\">1994</a></li>\n<li><a href=\"http://www.yelp.com/biz/the-computer-store-seattle\">The Computer Store</a></li>\n<li><a href=\"http://apple-history.com/180\">Powerbook 180</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/FileMaker\">Filemaker</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/SQL\">SQL</a></li>\n<li><a href=\"http://hypercard.org/\">HyperCard</a></li>\n<li><a href=\"http://cyan.com/games/myst/\">Myst</a></li>\n<li><a href=\"http://www.broderbund.com/\">Broderbund</a></li>\n<li><a href=\"http://www.ign.com/companies/sierra-on-line\">Sierra On-Line</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/King's_Quest\">King’s Quest</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/PowerPlant\">PowerPlant</a></li>\n<li><a href=\"http://get.adobe.com/flashplayer/\">Flash</a></li>\n<li><a href=\"http://www.w3schools.com/js/\">JavaScript</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Java_applet\">Java Applet</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Java_remote_method_invocation\">Remote Method Invocation</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Java_Native_Interface\">Java Native Interface</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Windows_NT\">Windows NT</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Classpath_(Java)\">Classpaths</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Bioinformatics\">Bioinformatics</a></li>\n<li><a href=\"http://www.perl.org/\">Perl</a></li>\n<li><a href=\"http://stackoverflow.com/questions/8023959/why-use-strict-and-warnings\">use strict</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Berkeley_DB\">Berkeley DB</a></li>\n<li><a href=\"http://www.mysql.com/\">MySQL</a></li>\n<li><a href=\"http://www.redhat.com/\">RedHat Linux</a></li>\n<li><a href=\"http://www.gnu.org/software/emacs/\">Emacs</a></li>\n<li><a href=\"http://quartzcomposer.com/\">Quartz Composer</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Grok\">Grok</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Forth_(programming_language)\">Forth</a></li>\n<li><a href=\"http://seattlexcoders.org/\">Seattle Xcoders</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2004\">2004</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2005\">2005</a></li>\n<li><a href=\"http://nscodernight.com/\">NSCoder Night</a></li>\n<li><a href=\"http://cocoaheads.org/\">CocoaHeads</a></li>\n<li><a href=\"http://www.folklore.org/StoryView.py?story=Pirate_Flag.txt\">Pirate flag</a></li>\n<li><a href=\"http://www.amazon.com/Advanced-Programming-Edition-Core-Unix/dp/0974078514\">Advanced Mac OS X Programming book</a></li>\n<li><a href=\"http://shapeof.com/\">Gus Mueller</a></li>\n<li><a href=\"http://www.geekwire.com/2011/roguesheep-ceo-chris-parrish-leaves-flock/\">Rogue Sheep</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Macintosh_Business_Unit\">MacBU</a></li>\n<li><a href=\"http://www.omnigroup.com/\">OmniGroup</a></li>\n<li><a href=\"http://www.dbug.org/\">dBug</a></li>\n<li><a href=\"https://twitter.com/lllucas\">Lucas Newman</a></li>\n<li><a href=\"https://twitter.com/bmf\">Mike Lee</a></li>\n<li><a href=\"http://blog.wilshipley.com/\">Wil Shipley</a></li>\n<li><a href=\"http://gigaom.com/2008/07/22/seattle-xcoders-coverage-golden-braeburn/\">Golden Braeburn</a></li>\n<li><a href=\"https://twitter.com/heckj\">Joe Heck</a></li>\n<li><a href=\"https://twitter.com/halm\">Hal Mueller</a></li>\n<li><a href=\"https://developer.apple.com/wwdc/\">WWDC</a></li>\n<li><a href=\"http://www.yelp.com/biz/luau-polynesian-lounge-seattle\">Luau</a></li>\n<li><a href=\"http://sfmacindie.com/\">SFMacIndie Party</a></li>\n<li><a href=\"http://www.jillianssf.com/\">Jillian’s</a></li>\n<li><a href=\"http://arstechnica.com/author/jacqui-cheng/\">Jacqui Cheng</a></li>\n<li><a href=\"http://blog.clintecker.com/\">Clint Ecker</a></li>\n<li><a href=\"http://kickingbear.com/blog/\">Guy English</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/C4_(conference)\">C4</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/NeXT\">NeXT</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/BeOS\">BeOS</a></li>\n<li><a href=\"https://www.washington.edu/facilities/finadmin/movingandsurplus/inventory/\">UW Salvage</a></li>\n<li><a href=\"http://subversion.apache.org/\">Subversion</a></li>\n<li><a href=\"http://versionsapp.com/\">Versions</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/John_Flansburgh\">John Flansburgh</a></li>\n<li><a href=\"http://www.noside.com/\">Northside</a></li>\n</ul></p>",-      "date_published": "2014-02-28T11:40:00-08:00",-      "attachments": [-        {-          "url": "http://therecord.co/downloads/TheRecord-s1e5-PaulGoracke.m4a",-          "mime_type": "audio/x-m4a",-          "size_in_bytes": 57269955-        }-      ]-    },-    {-      "id": "http://therecord.co/2014/02/14/gus_mueller",-      "url": "http://therecord.co/2014/02/14/gus_mueller",-      "title": "Seattle Before the iPhone #4 - Gus Mueller",-      "content_html": "<p>This episode was recorded 17 May 2013 live and in person at <a href=\"http://www.omnigroup.com/\">Omni’s</a> lovely offices overlooking Lake Union in Seattle.</p>\n\n<p>You can <a href=\"http://therecord.co/downloads/TheRecord-s1e4-GusMueller.m4a\">download the m4a file</a> or <a href=\"https://itunes.apple.com/us/podcast/the-record/id791861057\">subscribe in iTunes</a>. (Or <a href=\"http://therecord.co/xml/rss.xml\">subscribe to the podcast feed</a>.)</p>\n\n<p>Gus Mueller, <a href=\"http://www.flyingmeat.com/\">Flying Meat</a> founder, created VoodooPad (now at <a href=\"https://plausible.coop/voodoopad/\">Plausible Labs</a>) and <a href=\"http://www.flyingmeat.com/acorn/\">Acorn</a>, the image editor for humans. Gus is also responsible for open source software such as <a href=\"https://github.com/ccgus/fmdb\">FMDB</a> and <a href=\"http://jstalk.org/\">JSTalk</a>.</p>\n\n<p><p class=\"sponsor\">This episode is sponsored by <a href=\"http://squarespace.com/therecord\">Squarespace</a>. Get 10% off by going to <a href=\"http://squarespace.com/therecord\">http://squarespace.com/therecord</a>. Better still: <a href=\"http://beapartofit.squarespace.com\">go work for Squarespace</a>! They’re hiring 30 engineers and designers by March 15, and, “When you interview at Squarespace, we’ll invite you and your spouse or partner to be New Yorkers for a weekend—on us.” The great designers at Squarespace have designed an entire weekend for you, from dining at Alder to going to the Smalls Jazz Club and visiting The New Museum. Seriously cool deal at <a href=\"http://beapartofit.squarespace.com/\">beapartofit.squarespace.com</a>.</p>\n\n<p><p class=\"sponsor\">This episode is also sponsored by <a href=\" http://www.windowsazure.com/en-us/develop/mobile/ios/?WT.mc_id=azurebg_us_pmm_mirluna_therecord\">Microsoft Azure Mobile Services</a>. Mobile Services is a great way to provide backend services — syncing and other things — for your iPhone, iPad, and Mac apps. Write code — Javascript code — in your favorite text editor on your Mac. (Mobile Services runs Node.js.) Deploy via git. Write unit tests using mocha (or your tool of choice). Supports authenticating via Twitter, Facebook, and Google — and you can roll your own system. It’s cool.</p></p>\n\n<p>Things we mention, in order of appearance (more or less):</p>\n\n<p><ul>\n<li><a href=\"http://en.wikipedia.org/wiki/Rock_climbing\">Rock climbing</a></li>\n<li><a href=\"http://therecord.co/2014/01/03/luke_adamson\">Luke Adamson</a></li>\n<li><a href=\"http://www.mo.gov/\">Missouri</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2001\">2001</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2002\">2002</a></li>\n<li><a href=\"https://developer.apple.com/technologies/mac/cocoa.html\">Cocoa</a></li>\n<li><a href=\"http://oldcomputers.net/appleiic.html\">Apple IIc</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1993\">1993</a></li>\n<li><a href=\"http://apple-history.com/colorclassic\">Mac Color Classic</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/BASIC\">BASIC</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/ELIZA\">ELIZA</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Artificial_intelligence\">Artificial Intelligence</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Assembly_language\">Assembler</a></li>\n<li><a href=\"http://www.missilecommand.com/\">Missile Command</a></li>\n<li><a href=\"https://www.java.com/\">Java</a></li>\n<li><a href=\"http://www.linkedin.com/pub/eric-albert/1/610/402\">Eric Albert</a></li>\n<li><a href=\"http://www.perl.org/\">Perl</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Graphics_Interchange_Format\">Animated GIFs</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Common_Gateway_Interface\">CGIs</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Push_technology\">Server push images</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Xojo\">REALBasic</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Personal_computer\">PC</a></li>\n<li><a href=\"http://apple-history.com/aiie\">Apple IIe</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/DOS\">DOS</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Colossal_Cave_Adventure\">Colossal Caves</a></li>\n<li><a href=\"http://rickadams.org/adventure/walkthroughs/walkthrough.html\">Plover</a></li>\n<li><a href=\"http://www.nibblemagazine.com/\">Nibble</a></li>\n<li><a href=\"http://www.civilization.com/\">Civilization</a></li>\n<li><a href=\"http://www.unix.org/\">UNIX</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/IBM_AIX\">AIX</a></li>\n<li><a href=\"http://en.wikipedia.org/?title=A/UX\">A/UX</a></li>\n<li><a href=\"https://stlouis-mo.gov/\">St. Louis</a></li>\n<li><a href=\"http://www.gocolumbiamo.com/\">Columbia</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Barbie\">Math is hard</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Single_sign-on\">Single sign-on</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Java_Servlet\">Servlets</a></li>\n<li><a href=\"https://www.apple.com/osx/\">OS X</a></li>\n<li><a href=\"https://developer.apple.com/wwdc/\">WWDC</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Rhapsody_(operating_system)\">Rhapsody</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1995\">1995</a></li>\n<li><a href=\"http://projects.pudge.net/\">MacPERL</a></li>\n<li><a href=\"http://asg.andrew.cmu.edu/andrew2/dist/niftytelnet.html\">NiftyTelnet</a></li>\n<li><a href=\"http://www.barebones.com/products/bbedit/\">BBEdit</a></li>\n<li><a href=\"http://flyingmeat.com/flysketch/\">FlySketch</a></li>\n<li><a href=\"http://www.marco.org/\">Coffee</a></li>\n<li><a href=\"http://www.artyfactory.com/art_appreciation/animals_in_art/pablo_picasso.htm\">Picasso’s bull sketches</a></li>\n<li><a href=\"https://plausible.coop/voodoopad/\">VoodooPad</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Apple_Cinema_Display\">22\" Cinema Display</a></li>\n<li><a href=\"http://www.macdevcenter.com/pub/a/mac/developer/2003/07/10/innovators.html\">OS X Innovator’s Award</a></li>\n<li><a href=\"http://www.oreilly.com/\">O’Reilly</a></li>\n<li><a href=\"http://www.stairways.com/main/\">Peter Lewis</a></li>\n<li><a href=\"https://twitter.com/siegel\">Rich Siegel</a></li>\n<li><a href=\"http://latenightsw.com/blog/\">Mark Aldritt</a></li>\n<li><a href=\"http://www.ambrosiasw.com/\">Ambrosia</a></li>\n<li><a href=\"http://panic.com/\">Panic</a></li>\n<li><a href=\"http://panic.com/transmit/\">Transmit</a></li>\n<li><a href=\"http://panic.com/audion/\">Audion</a></li>\n<li><a href=\"http://conferences.oreillynet.com/macosx2004/\">O’Reilly Mac OS Conference</a></li>\n<li><a href=\"http://www.rogueamoeba.com/audiohijackpro/\">Audio Hijack</a></li>\n<li><a href=\"http://onefoottsunami.com/\">Paul Kafasis</a></li>\n<li><a href=\"http://www.codingmonkeys.de/subethaedit/\">SubEthaEdit</a></li>\n<li><a href=\"https://www.apple.com/mac-pro/\">Mac Pro</a></li>\n<li><a href=\"http://www.ireland.com/\">Ireland</a></li>\n<li><a href=\"http://www.xml.com/axml/testaxml.htm\">XML</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Portable_Document_Format\">PDF</a></li>\n<li><a href=\"http://www.victoriassecret.com/\">Victoria’s Secret</a></li>\n<li><a href=\"http://www.cat.com/\">Caterpillar</a></li>\n<li><a href=\"http://www.adobe.com/products/indesign.html\">Adobe InDesign</a></li>\n<li><a href=\"http://www.apple.com/osx/server/\">OS X Server</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Xserve\">Xserve</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Power_Mac_G5\">Macintosh G5</a></li>\n<li><a href=\"https://www.macupdate.com/\">MacUpdate</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/VersionTracker\">VersionTracker</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/QuickDraw\">QuickDraw</a></li>\n<li><a href=\"http://web.mit.edu/~kerberos/\">Kerberos</a></li>\n<li><a href=\"http://arstechnica.com/apple/2012/05/25-years-of-hypercard-the-missing-link-to-the-web/\">HyperCard</a></li>\n<li><a href=\"https://www.mikeash.com/pyblog/friday-qa-2009-03-20-objective-c-messaging.html\">Objective-C messaging system</a></li>\n<li><a href=\"http://www.amazon.com/Cocoa-Programming-Mac-4th-Edition/dp/0321774086\">Aaron Hillegass’s book</a></li>\n<li><a href=\"http://cocoadev.com/JavaBridge\">Java-Cocoa bridge</a></li>\n<li><a href=\"http://www.oracle.com/technetwork/java/javase/jdbc/index.html\">JDBC</a></li>\n<li><a href=\"http://docs.oracle.com/cd/B19306_01/server.102/b14220/intro.htm\">Oracle databases</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2005\">2005</a></li>\n<li><a href=\"http://www.seattle.gov/default.aspx\">Seattle</a></li>\n<li><a href=\"http://microsoft.com/\">Microsoft</a></li>\n<li><a href=\"http://www.youtube.com/watch?v=jW3PFC86UNI&feature=kp\">Parents Just Don’t Understand</a></li>\n<li><a href=\"https://vancouver.ca/\">Vancouver, BC</a></li>\n<li><a href=\"http://www.bbking.com/\">B.B. King</a></li>\n<li><a href=\"http://seattlexcoders.org/\">Seattle Xcoders</a></li>\n<li><a href=\"https://twitter.com/heckj\">Joe Heck</a></li>\n<li><a href=\"http://missouri.edu/\">University of Missouri</a></li>\n<li><a href=\"https://archive.org/details/EveningAtAdler\">Evening at Adler</a></li>\n<li><a href=\"http://blog.wilshipley.com/\">Wil Shipley</a></li>\n<li><a href=\"http://bitsplitting.org/\">Daniel Jalkut</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Fire_(instant_messaging_client)\">Eric Peyton</a></li>\n<li><a href=\"http://qsapp.com/\">Quicksilver</a></li>\n<li><a href=\"https://twitter.com/rosyna\">Rosyna</a></li>\n<li><a href=\"http://www.cityofchicago.org/city/en.html\">Chicago</a></li>\n<li><a href=\"http://drunkenblog.com/\">Drunkenbatman</a></li>\n<li><a href=\"http://www.adlerplanetarium.org/\">Adler Planetarium</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/C4_(conference)\">C4</a></li>\n<li><a href=\"http://rentzsch.tumblr.com/\">Wolf</a></li>\n<li><a href=\"http://iamthewalr.us/\">Colin Barrett</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Delicious_Generation\">Delicious Generation</a></li>\n<li><a href=\"http://www.discoapp.com/\">Disco.app</a></li>\n<li><a href=\"http://forums.macrumors.com/showthread.php?t=481368\">My Dream App</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Camino\">Chimera / Camino</a></li>\n<li><a href=\"http://santaclaraca.gov/\">Santa Clara</a></li>\n<li><a href=\"http://worldwrapps.com/\">World Wrapps</a></li>\n<li><a href=\"http://log.scifihifi.com/\">Buzz Andersen</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/documentation/GraphicsImaging/Conceptual/drawingwithquartz2d/Introduction/Introduction.html\">Quartz</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/documentation/graphicsimaging/reference/CoreImageFilterReference/Reference/reference.html\">Core Image Filters</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Bézier_curve\">Bezier curves</a></li>\n<li><a href=\"http://www.wacom.com/\">Wacom</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Unit_testing\">Unit tests</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Build_automation\">Automated builds</a></li>\n<li><a href=\"http://borkwarellc.wordpress.com/2007/10/26/zerolink-rest-in-pieces/\">ZeroLink</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/CodeWarrior\">Metrowerks CodeWarrior</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/NeXT\">NeXT</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/BeOS\">BeOS</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Macintosh_Performa\">Macintosh Performa</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Display_PostScript\">Display Postscript</a></li>\n<li><a href=\"http://www.sgi.com/\">SGIs</a></li>\n<li><a href=\"http://www.flickr.com/photos/johnhanna/2141573873/\">Sun boxes</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Mac_OS_8\">Mac OS 8</a></li>\n<li><a href=\"https://www.tenon.com/products/machten/\">MachTen</a></li>\n<li><a href=\"http://home.mcom.com/MCOM/products_docs/client.html\">Netscape</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Internet_Explorer_for_Mac\">Internet Explorer for Mac OS</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Outlook_Express\">Outlook Express</a></li>\n<li><a href=\"http://www.omnigroup.com/\">OmniGroup</a></li>\n<li><a href=\"http://shakespeares.com/\">Shakespeare’s pizza</a></li>\n<li><a href=\"http://www.pagliacci.com/\">Pagliacci</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Neapolitan_pizza\">Neapolitan pizza</a></li>\n<li><a href=\"http://www.ci.everett.wa.us/\">Everett</a></li>\n<li><a href=\"http://www.verizon.com/home/fios/\">FIOS</a></li>\n<li><a href=\"http://www.fender.com/guitars/stratocaster/\">Fender Stratocaster</a></li>\n<li><a href=\"https://www.apple.com/mac/garageband/\">GarageBand</a></li>\n<li><a href=\"http://audiob.us/\">AudioBus</a></li>\n<li><a href=\"http://www.photoshop.com/\">Adobe Photoshop</a></li>\n<li><a href=\"http://www.adobe.com/products/photoshop-elements.html\">Adobe Photoshop Elements</a></li>\n<li><a href=\"http://jstalk.org/\">JSTalk</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/documentation/AppleScript/Conceptual/AppleScriptX/AppleScriptX.html\">AppleScript</a></li>\n<li><a href=\"http://www.sqlite.org/\">SQLite</a></li>\n<li><a href=\"http://www.webkit.org/\">WebKit</a></li>\n<li><a href=\"http://aged-and-distilled.com/napkin/\">Napkin</a></li>\n</ul></p>",-      "date_published": "2014-02-14T10:00:00-08:00",-      "attachments": [-        {-          "url": "http://therecord.co/downloads/TheRecord-s1e4-GusMueller.m4a",-          "mime_type": "audio/x-m4a",-          "size_in_bytes": 60579155-        }-      ]-    },-    {-      "id": "http://therecord.co/2014/01/31/greg_robbins",-      "url": "http://therecord.co/2014/01/31/greg_robbins",-      "title": "Seattle Before the iPhone #3 - Greg Robbins",-      "content_html": "<p>This episode was recorded 16 May 2013 live and in person at <a href=\"http://www.omnigroup.com/\">Omni’s</a> offices overlooking Lake Union in Seattle.</p>\n\n<p>You can <a href=\"http://therecord.co/downloads/TheRecord-s1e3-GregRobbins.m4a\">download the m4a file</a> or <a href=\"https://itunes.apple.com/us/podcast/the-record/id791861057\">subscribe in iTunes</a>. (Or <a href=\"http://therecord.co/xml/rss.xml\">subscribe to the podcast feed</a>.)</p>\n\n<p>Greg Robbins is Graphing Calculator co-author (<a href=\"http://www.pacifict.com/Story/\">a story you should already know about</a>, that we don’t go over again) and has done such diverse things as bringing translucency to the Mac OS Drag Manager (way back in the ’90s), and writing an open source <a href=\"http://googlemac.blogspot.com/2011/08/new-objective-c-library-for-new.html\">Objective-C library for Google Data APIs</a>. You can follow <a href=\"https://twitter.com/grob\">Greg on Twitter</a>.</p>\n\n<p class=\"sponsor\">This episode is sponsored by <a href=\"http://squarespace.com/therecord\">Squarespace</a>. Easily create beautiful websites via drag-and-drop. Get help any time from their 24/7 technical support. Create responsive websites — ready for phones and tablets — without any extra effort: Squarespace’s designers have already handled it for you. Get 10% off by going to <a href=\"http://squarespace.com/therecord\">http://squarespace.com/therecord</a>. And, if you want to get under the hood, check out their APIs at <a href=\"http://developers.squarespace.com/\">developers.squarespace.com</a>.</p>\n\n\n\n\n<p class=\"sponsor\">This episode is also sponsored by <a href=\" http://www.windowsazure.com/en-us/develop/mobile/ios/?WT.mc_id=azurebg_us_pmm_mirluna_therecord\">Microsoft Azure Mobile Services</a>. Mobile Services is a great way to provide backend services — syncing and other things — for your iPhone, iPad, and Mac apps. If you’ve been to the website already, you’ve seen the tutorials where you input code into a browser window. And that’s an easy way to get started. But don’t be fooled: Mobile Services is deep. You can write in your favorite text editor and deploy via Git. Regular-old Git, not Git#++. Git.</p>\n\n\n<p>Things we mention, in order of appearance (pretty much):</p>\n\n<ul>\n<li><a href=\"http://www.real.com/\">Real Networks</a></li>\n<li><a href=\"http://www.pacifict.com/Story/\">Graphing Calculator</a></li>\n<li><a href=\"https://www.google.com/\">Google</a></li>\n<li><a href=\"http://www.thisamericanlife.org/radio-archives/episode/284/transcript\">Ira Glass on Graphing Calculator</a></li>\n<li><a href=\"http://books.google.com/books?id=LKkZ3TC-wScC&pg=PA1359&lpg=PA1359&dq=mac+drag+manager+translucency&source=bl&ots=smAKSBsSI7&sig=guFPXLs1c2VmwCKRpBD33uZWojU&hl=en&sa=X&ei=LeTqUoqWH4vwoASziYGQAw&ved=0CCkQ6AEwAQ#v=onepage&q=mac%20drag%20manager%20translucency&f=false\">Drag Manager Translucency</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/History_of_Mac_OS#System_7\">Mac OS 7.5.3</a></li>\n<li><a href=\"https://developer.apple.com/legacy/library/documentation/Carbon/reference/Drag_Manager/drag_manager_ref.pdf\">Drag Manager</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Alpha_compositing\">Alpha channels</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/documentation/GraphicsImaging/Conceptual/drawingwithquartz2d/Introduction/Introduction.html\">Quartz</a></li>\n<li><a href=\"http://www.mactech.com/articles/develop/issue_06/Othmer_text_.html\">CopyBits</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Monochrome_monitor\">Black and white displays</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Motorola_68000_family\">68K computers</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/PowerPC\">PowerPC</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Bit_blit\">Blitting</a></li>\n<li><a href=\"http://www.macobserver.com/images/features/macos8/deskpictures.gif\">Desktop Pictures</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1995\">1995</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/NeXT\">NeXT</a></li>\n<li><a href=\"http://www.omnigroup.com\">Omni</a></li>\n<li><a href=\"http://www.swansontec.com/sprogram.html\">Assembly language</a></li>\n<li><a href=\"https://developer.apple.com/support/technical/\">DTS</a></li>\n<li><a href=\"http://oldcomputers.net/apple-newton.html\">Newton</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Teleprinter\">Teletypes</a></li>\n<li><a href=\"http://www.lawrencehallofscience.org\">Berkeley’s Lawrence Hall of Science</a></li>\n<li><a href=\"http://oldcomputers.net/appleii.html\">Apple II</a></li>\n<li><a href=\"http://www.youtube.com/watch?v=4aeETEoNfOg\">1979</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Mainframe_computer\">Mainframe</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Concentration_(game_show)\">Concentration</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Busboy\">Busboy</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Nolo.com\">Nolo Press</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/ComputerLand\">ComputerLand</a></li>\n<li><a href=\"http://stevenf.com/beagle/\">Beagle Bros.</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Integer_BASIC\">Integer BASIC</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Apple_80-Column_Text_Card\">80-column cards</a></li>\n<li><a href=\"http://oldcomputers.net/appleii.html\">Apple II Plus</a></li>\n<li><a href=\"http://www.applelogic.org/UserManuals.html\">Apple II Technical Manual</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Homebrew_Computer_Club\">Homebrew computers</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Electromagnetic_interference\">RF Interference</a></li>\n<li><a href=\"http://oldcomputers.net/appleiigs.html\">Apple II GS</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/TRS-80\">Non-Apple Machines</a></li>\n<li><a href=\"http://en.wikibooks.org/wiki/6502_Assembly\">6502 Assembly</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Missile_Command\">Missile Command</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1992\">1992</a></li>\n<li><a href=\"http://www.nasa.gov/\">NASA</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Artificial_neural_network\">Neural networks</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Robert_Hecht-Nielsen\">Robert Hecht-Nielsen</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1980s\">1980s</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Speech_recognition\">Voice recognition</a></li>\n<li><a href=\"http://eospso.gsfc.nasa.gov\">Earth Observing System</a></li>\n<li><a href=\"http://www.nasa.gov/centers/goddard/home/\">Goddard Space Flight Center</a></li>\n<li><a href=\"http://www.macusenet.com/\">comp.sys.mac</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Pascal_(programming_language)\">Pascal</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/C_(programming_language)\">C</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Macintosh_Programmer%27s_Workshop\">Macintosh Progammers Workshop (MPW)</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/THINK_C\">Lightspeed C / THINK C</a></li>\n<li><a href=\"http://www.danielsays.com/ss-gallery-macintosh-thinks-lightspeed-pascal-10.html\">Lightspeed Pascal</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/CodeWarrior\">CodeWarrior</a></li>\n<li><a href=\"http://lowendmac.com/roundtable/12rt/026-powerpc-transition.html\">PowerPC transition</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Macintosh_Toolbox\">Toolbox</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Inside_Macintosh\">Inside Mac</a></li>\n<li><a href=\"http://www.amazon.com/Macintosh-Programmers-Toolbox-Assistant-Cd-Rom/dp/0201483424\">Macintosh Programmers Toolbox Assistant</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/QuickView\">QuickView</a></li>\n<li><a href=\"http://hypercard.org/\">Hypercard</a></li>\n<li><a href=\"http://www.amazon.com/Write-Macintosh-Software-Scott-Knaster/dp/0672484293/ref=sr_1_7?s=books&ie=UTF8&qid=1391196136&sr=1-7\">How to Write Macintosh software by Scott Knaster</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1990s\">1990s</a></li>\n<li><a href=\"http://apple-history.com/emate\">eMate</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Apple_QuickTake\">Apple QuickTake</a></li>\n<li><a href=\"http://www.youtube.com/watch?v=ZYcAsOG2jaI\">Secret About Box</a></li>\n<li><a href=\"http://www.tuaw.com/2013/03/31/mac-101-easter-eggs/\">Easter eggs</a></li>\n<li><a href=\"http://www.mackido.com/EasterEggs/Breakout.html\">Breakout in 7.5</a></li>\n<li><a href=\"http://www.mackido.com/EasterEggs/Iguana.html\">Herman the Iguana</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Pointer_(computer_programming)\">Pointers</a></li>\n<li><a href=\"http://www.pacifict.com/ron/\">Ron Avitzur</a></li>\n<li><a href=\"https://www.apple.com/airplay/\">Airplay</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Front_Row_(software)\">Front Row</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Windows_Vista\">Windows Vista</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Microsoft_Office\">Microsoft Office</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Adobe_Photoshop\">Adobe Photoshop</a></li>\n<li><a href=\"http://www.seattle.gov/\">Seattle</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/RealPlayer\">RealPlayer</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1998\">1998</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Rob_Glaser\">Rob Glaser</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Macworld/iWorld\">Macworld Conference</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Extension_(Mac_OS)\">Marching extensions</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Conflict_Catcher\">Casady & Greene’s Conflict Catcher</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Carbon_(API)\">Carbon</a></li>\n<li><a href=\"https://developer.apple.com/technologies/mac/cocoa.html\">Cocoa</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2002\">2002</a></li>\n<li><a href=\"http://www.winamp.com/\">WinAmp</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Appearance_Manager\">Appearance Manager</a></li>\n<li><a href=\"http://www.lowendmac.com/thompson/06/0801.html\">Kaleidoscope</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Copland_(operating_system)\">Copland</a></li>\n<li><a href=\"http://inessential.com/2009/03/19/internetworld_spring_1997\">InternetWorld 1997</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/OpenDoc\">OpenDoc</a></li>\n<li><a href=\"http://scripting.com/\">Dave Winer</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/QuickDraw_GX\">Quickdraw GX</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Apple_Open_Collaboration_Environment\">Apple Open Collaborative Environment (AOCE)</a></li>\n<li><a href=\"http://www.apple.com/icloud/\">iCloud</a></li>\n<li><a href=\"http://llvm.org/\">LLVM</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/documentation/developertools/conceptual/InstrumentsUserGuide/Introduction/Introduction.html\">Instruments</a></li>\n<li><a href=\"http://msdn.microsoft.com/en-US/vstudio\">Microsoft Visual Studio</a></li>\n<li><a href=\"http://clang.llvm.org/docs/AutomaticReferenceCounting.html\">ARC</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/C_Sharp_(programming_language)\">C#</a></li>\n<li><a href=\"https://developer.apple.com/xcode/\">Xcode</a></li>\n<li><a href=\"https://www.eclipse.org/\">Eclipse</a></li>\n<li><a href=\"http://www.apple.com/quicktime/\">QuickTime</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Project_Builder\">Project Builder</a></li>\n<li><a href=\"https://www.macupdate.com/app/mac/24587/google-desktop\">Google Desktop</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Spotlight_(software)\">Spotlight</a></li>\n<li><a href=\"https://itunes.apple.com/us/app/google-maps/id585027354?mt=8\">Google Maps for iOS</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2005\">2005</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Macintosh_Business_Unit\">Macintosh Business Unit (MacBU)</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/RSS\">RSS</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Google_Reader\">Google Reader</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Google_Keep\">Google Keep</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Google_driverless_car\">Self-driving cars</a></li>\n<li><a href=\"http://www.google.com/glass/start/\">Google Glass</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Big_data\">Big data</a></li>\n<li><a href=\"http://googlemac.blogspot.com/2011/08/new-objective-c-library-for-new.html\">Google Data APIs for Objective-C</a></li>\n<li><a href=\"http://www.w3.org/XML/\">XML</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/OAuth\">OAuth</a></li>\n</ul>",-      "date_published": "2014-01-31T12:00:00-08:00",-      "attachments": [-        {-          "url": "http://therecord.co/downloads/TheRecord-s1e3-GregRobbins.m4a",-          "mime_type": "audio/x-m4a",-          "size_in_bytes": 62216126-        }-      ]-    },-    {-      "id": "http://therecord.co/2014/01/17/john_nack",-      "url": "http://therecord.co/2014/01/17/john_nack",-      "title": "Seattle Before the iPhone #2 - John Nack",-      "content_html": "<p>This episode was recorded 22 May 2013 live and in person at <a href=\"http://www.adobe.com/\">Adobe’s</a> offices in Fremont in Seattle.</p>\n\n<p>You can <a href=\"http://therecord.co/downloads/TheRecord-s1e2-JohnNack.m4a\">download the m4a file</a> or <a href=\"https://itunes.apple.com/us/podcast/the-record/id791861057\">subscribe in iTunes</a>. (Or <a href=\"http://therecord.co/xml/rss.xml\">subscribe to the podcast feed</a>.)</p>\n\n<p>John Nack is Principal Product Manager, Adobe Digital Video. <a href=\"http://blogs.adobe.com/jnack/\">He has a blog</a> (definitely worth reading, especially if you use Photoshop) and is <a href=\"https://twitter.com/jnack\">@jnack</a> on Twitter.</p>\n\n<p class=\"sponsor\">This episode is sponsored by <a href=\" http://www.windowsazure.com/en-us/develop/mobile/ios/?WT.mc_id=azurebg_us_pmm_mirluna_therecord\">Microsoft Azure Mobile Services</a>. One of the cooler features recently added is the ability to create custom APIs. Originally you were limited to standard operations on your database tables — but now you can design any API you want. This allows you to create a full REST/JSON API that’s tailored to your app, that works as efficiently as possible. (And it’s all in JavaScript. Mobile Services runs Node.js. Write your apps in your favorite text editor on your <i>Mac</i>.)</p>\n\n\n<p>Things we mention, in order of appearance (pretty much):</p>\n\n<ul>\n<li><a href=\"http://adobe.com/\">Adobe</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Adobe_LiveMotion\">LiveMotion</a></li>\n<li><a href=\"http://www.adobe.com/products/photoshop.html\">Photoshop</a></li>\n<li><a href=\"http://blogs.adobe.com/jnack/\">John’s Blog</a></li>\n<li><a href=\"http://www.vonnegut.com/\">Kurt Vonnegut</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Granfalloon\">Granfalloons</a></li>\n<li><a href=\"http://www.despair.com/\">despair.com</a></li>\n<li><a href=\"https://developer.apple.com/technologies/mac/cocoa.html\">Cocoa</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/64-bit_computing\">64-bit</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Carbon_(API)\">Carbon 64-bit</a></li>\n<li><a href=\"http://www.youtube.com/watch?v=G3J89Io28qM\">Unfrozen Cave Man</a></li>\n<li><a href=\"http://www.olivegarden.com/\">Olive Garden</a></li>\n<li><a href=\"http://www.ci.south-bend.in.us/\">South Bend, Indiana</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Tiramisu\">Tiramisu</a></li>\n<li><a href=\"http://www.catholic.org/saints/saint.php?saint_id=103\">St. Sebastian</a></li>\n<li><a href=\"http://abcnews.go.com/GMA/recipe?id=11745412\">Breadsticks</a></li>\n<li><a href=\"http://animals.nationalgeographic.com/animals/photos/monkeys/\">Monkeys</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2005\">2005</a></li>\n<li><a href=\"http://movabletype.org/\">Movable Type</a></li>\n<li><a href=\"http://www.equilibrium.com/debabelizer/\">DeBabelizer</a></li>\n<li><a href=\"https://www.macupdate.com/app/mac/235/gifbuilder\">GifBuilder</a></li>\n<li><a href=\"http://nolobe.com/interarchy/\">Anarchie</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Nineteen_Eighty-Four\">1984</a></li>\n<li><a href=\"https://www.apple.com/mac/\">Mac</a></li>\n<li><a href=\"http://www.imdb.com/title/tt0062622/\">2001</a></li>\n<li><a href=\"http://www.algonquinhotel.com/\">Algonquin Hotel</a></li>\n<li><a href=\"http://oldcomputers.net/appleii.html\">Apple II</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/IBM_PCjr\">PCjr</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/ASCII_art\">ASCII Art</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Clip_art\">Clip Art</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Googly_eyes\">Googly Eyes</a></li>\n<li><a href=\"http://www.folklore.org/ProjectView.py?name=Macintosh&characters=Bill+Atkinson\">Bill Atkinson</a></li>\n<li><a href=\"http://www.folklore.org/StoryView.py?story=MacPaint_Evolution.txt\">MacPaint</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Rorschach_test\">Rorschach Test</a></li>\n<li><a href=\"http://oldcomputers.net/appleiigs.html\">Apple II GS</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Great_books\">Great Books</a></li>\n<li><a href=\"http://apple-history.com/840\">Quadra 840AV</a></li>\n<li><a href=\"http://www.youtube.com/watch?v=5tw454TPZtU\">Quadra Ad</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/MacroMind_Director\">Director</a></li>\n<li><a href=\"http://www.supercard.us/\">SuperCard</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Søren_Kierkegaard\">Søren Kierkegaard</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Immanuel_Kant\">Immanuel Kant</a></li>\n<li><a href=\"http://www.nd.edu/\">Notre Dame</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/American_football\">Football</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Windows_NT\">Windows NT</a></li>\n<li><a href=\"http://www.w3schools.com/html/\">HTML</a></li>\n<li><a href=\"http://www1.nyc.gov/\">New York City</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1998\">1998</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Adobe_Flash\">Flash</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Macromedia\">Macromedia</a></li>\n<li><a href=\"http://www.adobe.com/products/illustrator.html\">Illustrator</a></li>\n<li><a href=\"http://www.nrotc.navy.mil/\">Navy ROTC</a></li>\n<li><a href=\"http://www.sfgov.org/index.asp\">San Francisco</a></li>\n<li><a href=\"http://www.adobe.com/support/downloads/product.jsp?product=26&platform=Macintosh\">GoLive</a></li>\n<li><a href=\"http://netnewswireapp.com/\">NetNewsWire</a></li>\n<li><a href=\"http://www.adobe.com/products/aftereffects.html\">After Effects</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Thomas_Knoll\">Thomas Knoll</a></li>\n<li><a href=\"http://www.adobe.com/products/photoshop/extend.html\">Camera Raw</a></li>\n<li><a href=\"http://www.adobe.com/products/photoshop-touch.html\">Photoshop Touch</a></li>\n<li><a href=\"https://www.cia.gov/library/publications/the-world-factbook/geos/gm.html\">Germany</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Philistinism\">Philistinism</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Perfectionism_(psychology)\">Perfectionism</a></li>\n<li><a href=\"http://www.vw.com/en.html\">Volkswagen</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Radiocarbon_dating\">Carbon-dating</a></li>\n<li><a href=\"http://www.webstandards.org/\">Web Standards</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Scalable_Vector_Graphics\">SVG</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Cascading_Style_Sheets\">CSS</a></li>\n<li><a href=\"http://shapeof.com/\">Gus Mueller</a></li>\n<li><a href=\"http://www.flyingmeat.com/acorn/\">Acorn</a></li>\n<li><a href=\"https://twitter.com/mrgan\">Neven Mrgan</a></li>\n<li><a href=\"http://www.subtraction.com/\">Khoi Vinh</a></li>\n<li><a href=\"https://www.cia.gov/library/publications/the-world-factbook/geos/hr.html\">Croatia</a></li>\n<li><a href=\"http://www.portlandonline.com/\">Portland</a></li>\n<li><a href=\"http://www.internetslang.com/JDI-meaning-definition.asp\">JDI</a></li>\n<li><a href=\"http://helpx.adobe.com/photoshop/using/retouching-repairing-images.html\">Healing Brush</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Buck_Rogers\">Buck Rogers</a></li>\n<li><a href=\"http://www.adobe.com/products/creativecloud.html\">Creative Cloud</a></li>\n<li><a href=\"http://facebook.com/\">Facebook</a></li>\n<li><a href=\"http://www.smugmug.com/\">Smugmug</a></li>\n<li><a href=\"https://developer.apple.com/wwdc/\">WWDC</a></li>\n<li><a href=\"http://www.vw.com/en/models/jetta/gallery.html\">Jetta</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Ketchup\">Ketchup</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Death_march_(project_management)\">Death-march</a></li>\n<li><a href=\"http://www.simpsoncrazy.com/characters/comic-book-guy\">Comic Book Guy</a></li>\n<li><a href=\"http://daringfireball.net/\">John Gruber</a></li>\n<li><a href=\"http://parislemon.com/post/40128357896/if-you-see-a-stylus-they-blew-it\">“If you see a stylus, they blew it.”</a></li>\n<li><a href=\"http://www.microsoft.com/surface/en-us\">Microsoft Surface</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Metro_(design_language)\">Metro UI</a></li>\n<li><a href=\"http://www.youtube.com/watch?v=1yeA_kHHLow\">Rahm Emmanuel: “You never want a serious crisis to go to waste.”</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/The_Mythical_Man-Month\">The Mythical Man-Month</a></li>\n<li><a href=\"http://www.photoshopessentials.com/photo-editing/content-aware-fill-cs5/\">Content-Aware Fill</a></li>\n<li><a href=\"http://www.imdb.com/title/tt0111161/\">Shawshank</a></li>\n<li><a href=\"http://www.adobe.com/products/indesign.html\">InDesign</a></li>\n<li><a href=\"http://www.adobemagazine.com/\">Adobe Magazine</a></li>\n<li><a href=\"http://www.nike.com/\">Nike</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Adobe_PageMaker\">PageMaker</a></li>\n<li><a href=\"http://www.adobe.com/products/postscript/\">Postscript</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Single-lens_reflex_camera\">SLR</a></li>\n<li><a href=\"http://www.adobe.com/products/photoshop-lightroom.html\">Lightroom</a></li>\n<li><a href=\"http://www.blackanddecker.com/\">Black & Decker</a></li>\n<li><a href=\"http://austinpowers.wikia.com/wiki/Dr._Evil\">Dr. Evil</a></li>\n<li><a href=\"https://twitter.com/lorenb\">Loren Brichter</a></li>\n<li><a href=\"http://instagram.com/\">Instagram</a></li>\n<li><a href=\"http://www.kickstarter.com/\">Kickstarter</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Non-governmental_organization\">NGO</a></li>\n<li><a href=\"http://marissamayr.tumblr.com/post/50902274591/im-delighted-to-announce-that-weve-reached-an\">Tumblr Acquisition</a></li>\n<li><a href=\"http://www.troygaul.com/\">Troy Gaul</a></li>\n<li><a href=\"http://www.blurb.com/\">Blurb</a></li>\n<li><a href=\"http://www.theonion.com/articles/report-98-percent-of-us-commuters-favor-public-tra,1434/\">The Onion: Report: 98 Percent Of U.S. Commuters Favor Public Transportation For Others</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Data_(Star_Trek)\">Data</a></li>\n<li><a href=\"http://terminator.wikia.com/wiki/T-1000_(Terminator_2:_Judgment_Day)\">T-1000</a></li>\n<li><a href=\"https://www.cia.gov/library/publications/the-world-factbook/geos/sy.html\">Syria</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/MacApp\">MacApp</a></li>\n<li><a href=\"https://code.google.com/p/resourceviewer/\">Resource Manager</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/John_Knoll\">John Knoll</a></li>\n<li><a href=\"http://www.ilm.com/\">Industrial Light & Magic</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/QuickTime\">QuickTime</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/OpenDoc\">OpenDoc</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Common_Object_Request_Broker_Architecture\">Corba</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Object_Linking_and_Embedding\">OLE</a></li>\n<li><a href=\"https://twitter.com/snapseed\">SnapSeed</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/System_6\">Mac System 6</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Apple_events\">Apple events</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/AppleScript\">AppleScript</a></li>\n<li><a href=\"http://audiob.us/\">Audio Bus</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1992\">1992</a></li>\n<li><a href=\"http://www.imdb.com/character/ch0190293/quotes\">“The only time you should start worrying about a soldier is when they stop bitchin’”</a></li>\n<li><a href=\"http://books.google.com/books?id=mXnw5tM8QRwC&pg=PA115&lpg=PA115&dq=first+computer+good+enough+to+criticize&source=bl&ots=PxLvdYbqXE&sig=N2QWjFNo-AoPE_PlP1di6HPglQc&hl=en&sa=X&ei=DcjYUs3nF4TzoATV_YGIBQ&ved=0CCsQ6AEwAA#v=onepage&q=first%20computer%20good%20enough%20to%20criticize&f=false\">Alan Kay: “The Mac is the first computer good enough to be criticized.”</a></li>\n<li><a href=\"http://tapbots.com/\">TapBots</a></li>\n<li><a href=\"https://itunes.apple.com/us/app/tweetbot-2-iphone-ipod-touch/id428851691?mt=8\">Tweetbot 2</a></li>\n<li><a href=\"http://www.android.com/\">Android</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Kai's_Power_Tools\">Kai’s Power Tools</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Kai_Krause\">Kai Krause</a></li>\n<li><a href=\"http://fremont.com/\">Fremont</a></li>\n<li><a href=\"http://www.rundmc.com/\">RUN DMC</a></li>\n<li><a href=\"http://www.porsche.com/usa/models/boxster/\">Porsche Boxster</a></li>\n<li><a href=\"http://jnack.com/flavawagon\">Flavawagon</a></li>\n<li><a href=\"http://www.google.com/glass/start/\">Google Glass</a></li>\n<li><a href=\"http://scobleizer.com/\">Robert Scoble</a></li>\n</ul>",-      "date_published": "2014-01-17T10:00:00-08:00",-      "attachments": [-        {-          "url": "http://therecord.co/downloads/TheRecord-s1e2-JohnNack.m4a",-          "mime_type": "audio/x-m4a",-          "size_in_bytes": 60301043-        }-      ]-    },-    {-      "id": "http://therecord.co/2014/01/03/luke_adamson",-      "url": "http://therecord.co/2014/01/03/luke_adamson",-      "title": "Seattle Before the iPhone #1 - Luke Adamson",-      "content_html": "<p>This episode was recorded 15 May 2013 live and in person at <a href=\"http://www.omnigroup.com/\">The Omni Group’s</a> lovely offices overlooking Lake Union in Seattle.</p>\n\n<p>You can <a href=\"http://therecord.co/downloads/TheRecord-s1e1-LukeAdamson.m4a\">download the m4a file</a> or <a href=\"https://itunes.apple.com/us/podcast/the-record/id791861057\">subscribe in iTunes</a> or <a href=\"http://therecord.co/xml/rss.xml\">subscribe to the podcast feed</a>.</p>\n\n<p><a href=\"https://twitter.com/lukesadamson\">Luke Adamson</a> is a founder of <a href=\"http://toyrockets.com/\">Toy Rockets</a>. He’s a former instructor at the University of Washington’s <a href=\"http://www.pce.uw.edu/certificates/ios-mac-development.html\">iOS and Mac certificate program</a> and a former developer at <a href=\"http://www.omnigroup.com/\">The Omni Group</a> (where, among other things, he helped create OmniOutliner).</p>\n\n<p class=\"sponsor\">This episode is sponsored by <a href=\" http://www.windowsazure.com/en-us/develop/mobile/ios/?WT.mc_id=azurebg_us_pmm_mirluna_therecord\">Microsoft Azure Mobile Services</a>. Does your app need online services? Syncing? Storage? Mobile Services is the easiest way to get started. Create your own APIs. Write your code using JavaScript (Mobile Services runs Node.js). Store data in a SQL database and/or in blob storage. Develop using your favorite text editor and terminal app on your favorite computer — a <i>Mac</i>. And never ever worry about applying security patches to a server. A trial account is free.</p>\n\n\n<p>Things we mention, in order of appearance (roughly):</p>\n\n<ul>\n<li><a href=\"http://www.youtube.com/watch?v=3lYm0c7gYyU\">Gophers</a></li>\n<li><a href=\"http://www.idaho.gov/\">Idaho</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Methamphetamine\">Meth</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Maze_War\">Maze War\n<li><a href=\"http://www.boisestate.edu/\">Boise State U</a></li>\n<li><a href=\"https://www.google.com/search?q=nextstation&client=safari&rls=en&tbm=isch&tbo=u&source=univ&sa=X&ei=FTfGUqndKZLkoATOvoCAAg&ved=0CDQQsAQ&biw=1147&bih=1283\">Nextstation</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/UUCP\">UUCP</a></li>\n<li><a href=\"https://twitter.com/HP\">HP</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Usenet\">Usenet</a></li>\n<li><a href=\"http://oldcomputers.net/c64.html\">Commodore 64</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/BASIC\">BASIC</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Pascal_(programming_language)\">Pascal</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/documentation/cocoa/conceptual/ProgrammingWithObjectiveC/Introduction/Introduction.html\">Objective-C</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/C%2B%2B\">C++</a></li>\n<li><a href=\"http://www.transmissionzero.co.uk/computing/win16-apps-in-c/\">Win16</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/documentation/cocoa/reference/applicationkit/objc_classic/_index.html\">AppKit</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/DOCUMENTATION/Cocoa/Reference/Foundation/ObjC_classic/_index.html\">Foundation</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/documentation/cocoa/conceptual/Strings/introStrings.html\">NSString</a></li>\n<li><a href=\"http://www.uidaho.edu/\">University of Idaho</a></li>\n<li><a href=\"http://www.omnigroup.com/\">The Omni Group</a></li>\n<li><a href=\"http://www.tamu.edu/\">Texas A&M</a></li>\n<li><a href=\"https://www.omnigroup.com/more\">OmniWeb</a></li>\n<li><a href=\"https://www.macupdate.com/app/mac/5599/omnipdf-for-macos-x/\">OmniPDF</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/WebObjects\">WebObjects</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Lighthouse_Design\">Lighthouse Design</a></li>\n<li><a href=\"http://6ixpassions.com/post/6958648381/lighthouse-design-diagram\">Diagram!</a></li>\n<li><a href=\"http://www.quantrix.com/\">Quantrix</a></li>\n<li><a href=\"https://www.google.com/search?q=wainscoting&client=safari&rls=en&tbm=isch&tbo=u&source=univ&sa=X&ei=dxPHUoPGCM36oATrxYHwBA&ved=0CFwQsAQ&biw=1365&bih=1276\">Wainscoting</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Enterprise_Objects_Framework\">EOF</a></li>\n<li><a href=\"http://www.standardandpoors.com/home/en/us\">Standard & Poor’s</a></li>\n<li><a href=\"http://www.mitsubishielectric.com/\">Mitsubishi</a></li>\n<li><a href=\"http://www.toyota.com/\">Toyota</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/AT%26T_Wireless_Services\">McCaw Cellular</a></li>\n<li><a href=\"http://www.oracle.com/technetwork/documentation/oracle8-090636.html\">Oracle 8</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Craig_Federighi\">Craig Federighi</a></li>\n<li><a href=\"http://www.linkedin.com/pub/bruce-arthur/0/1/123\">Bruce Arthur</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Solaris_(operating_system)\">Solaris</a></li>\n<li><a href=\"http://www.sybase.com/\">Sybase</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Power_Mac_G4\">G4</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Ireland\">Ireland</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Quake_(video_game)\">Quake</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/HP-UX\">HP-UX</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Doom_(video_game)\">Doom</a></li>\n<li><a href=\"https://twitter.com/ID_AA_Carmack\">John Carmack</a></li>\n<li><a href=\"https://www.java.com/en/\">Java</a></li>\n<li><a href=\"https://www.google.com/search?q=beos&client=safari&rls=en&tbm=isch&tbo=u&source=univ&sa=X&ei=tjnGUvLVCcyHogSciYLQDQ&ved=0CDkQsAQ&biw=1147&bih=1283\">BeOS</a></li>\n<li><a href=\"http://www.adobe.com/\">Adobe</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/PowerPC\">PowerPC</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Power_Computing_Corporation\">Power Computing</a></li>\n<li><a href=\"https://developer.apple.com/legacy/library/documentation/LegacyTechnologies/WebObjects/WebObjects_3.1/DevGuide/WebScript/RoleOfScripts.html\">Webscript</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Lisp_(programming_language)\">Lisp</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Swing_(Java)\">Swing Toolkit</a></li>\n<li><a href=\"http://docs.oracle.com/javase/7/docs/technotes/guides/awt/\">AWT</a></li>\n<li><a href=\"https://twitter.com/kcase\">Ken Case</a></li>\n<li><a href=\"https://twitter.com/tjw\">Tim Wood</a></li>\n<li><a href=\"http://blog.wilshipley.com/\">Wil Shipley</a></li>\n<li><a href=\"https://twitter.com/gregtitus\">Greg Titus</a></li>\n<li><a href=\"https://twitter.com/andrewabernathy\">Andrew Abernathy</a></li>\n<li><a href=\"http://people.omnigroup.com/tom/\">Tom Bunch</a></li>\n<li><a href=\"http://www.retrospect.com\">Retrospect</a></li>\n<li><a href=\"http://stevenygard.com/\">Steve Nygard</a></li>\n<li><a href=\"https://github.com/nygard/class-dump\">Class-dump</a></li>\n<li><a href=\"http://www.omnigroup.com/omnioutliner\">OmniOutliner</a></li>\n<li><a href=\"http://office.microsoft.com/en-us/visio/\">Visio</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Rhapsody_(operating_system)\">Rhapsody</a></li>\n<li><a href=\"http://www.omnigroup.com/omnigraffle\">OmniGraffle</a></li>\n<li><a href=\"http://www.adobe.com/products/illustrator.html?promoid=KAUCB\">Illustrator</a></li>\n<li><a href=\"https://www.google.com/search?q=rx7&client=safari&rls=en&tbm=isch&tbo=u&source=univ&sa=X&ei=pDvGUr3jL4PkoATvh4KgCQ&ved=0CC4QsAQ&biw=1147&bih=1283\">Mazda RX-7</a></li>\n<li><a href=\"http://www.frontbase.com/cgi-bin/WebObjects/FBWebSite\">FrontBase</a></li>\n<li><a href=\"http://denmark.dk/\">Denmark</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Apple_Cinema_Display\">Cinema Displays</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/PowerBook_G4\">TiBook</a></li>\n<li><a href=\"http://www.ci.everett.wa.us/\">Everett, Washington</a></li>\n<li><a href=\"https://www.google.com/search?q=blue+hair&client=safari&rls=en&tbm=isch&tbo=u&source=univ&sa=X&ei=-zvGUuCsBYPpoATfzoG4Cw&ved=0CC4QsAQ&biw=1147&bih=1283\">Blue hair</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Subprime_lending\">Sub-prime mortgages</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Bear_Stearns\">Bear Stearns</a></li>\n<li><a href=\"https://www.db.com/us/\">Deutsche Bank</a></li>\n<li><a href=\"https://www.credit-suisse.com/\">Credit Suisse</a></li>\n<li><a href=\"http://www.internap.com/\">Internap</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Xserve\">Xserve</a></li>\n<li><a href=\"http://www.geekwire.com/2011/seattle-mobile-app-developer-ubermind-finds-buyer/\">Ubermind</a></li>\n<li><a href=\"http://www.deloittedigital.com/us/\">Deloitte Digital</a></li>\n<li><a href=\"http://www.societegenerale.com/en\">Societe General</a></li>\n<li><a href=\"http://india.gov.in/\">India</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/IOS\">iOS</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/IOS_jailbreaking\">Jailbroken iPhones</a></li>\n<li><a href=\"https://twitter.com/lllucas\">Lucas Newman</a></li>\n</ul>",-      "date_published": "2014-01-03T11:10:00-08:00",-      "attachments": [-        {-          "url": "http://therecord.co/downloads/TheRecord-s1e1-LukeAdamson.m4a",-          "mime_type": "audio/x-m4a",-          "size_in_bytes": 48641024-        }-      ]-    }-  ]-}+{
+  "version": "https://jsonfeed.org/version/1",
+  "title": "The Record",
+  "description": "The stories you should know about the Mac and Cocoa developer community. Hosted by Brent Simmons and Chris Parrish.",
+  "home_page_url": "http://therecord.co/",
+  "feed_url": "http://therecord.co/feed.json",
+  "user_comment": "This feed allows you to read the posts from this site in any feed reader that supports the JSON Feed format. To add this feed to your reader, copy the following URL — http://therecord.co/feed.json — and add it your reader.",
+  "author": {
+    "name": "Brent Simmons and Chris Parrish"
+  },
+  "items": [
+    {
+      "id": "http://therecord.co/2014/05/29/brent_simmons",
+      "url": "http://therecord.co/2014/05/29/brent_simmons",
+      "title": "Special #2 - Brent Simmons",
+      "content_html": "<p>This episode was recorded 26 May 2014 live and in person at Brent’s office in sunny, lovely Ballard.</p>\n\n<p>You can <a href=\"http://therecord.co/downloads/TheRecord-sp1e2-BrentSimmons.m4a\">download the m4a file</a> or <a href=\"https://itunes.apple.com/us/podcast/the-record/id791861057\">subscribe in iTunes</a>. (Or <a href=\"http://therecord.co/xml/rss.xml\">subscribe to the podcast feed</a>.)</p>\n\n<p><a href=\"http://inessential.com/\">Brent</a> has worked at UserLand Software and NewsGator and as an indie at his company Ranchero Software. These days he’s one-third of Q Branch, where he writes <a href=\"http://vesperapp.co/appstore\">Vesper</a>. He is also the co-host of this podcast.</p>\n\n<p class=\"sponsor\">This episode is sponsored by <a href=\"https://itunes.apple.com/us/app/tagcaster/id662918542?mt=8\">Tagcaster</a>. Tagcaster is not just another podcast client — it solves the age-old problem of <i>linking</i> to specific parts of a podcast. You can make clips — short audio excerpts — and share them and link to them. After all these years, that problem is finally solved.</p>\n\n\n\n\n<p class=\"sponsor\">This episode is also sponsored by <a href=\"http://igloosoftware.com/therecord\">Igloo</a>. Igloo is an intranet you’ll actually like, with shared calendars, microblogs, file-sharing, social networking, and more. It’s free for up 10 users — give it a try for your company or your team today.</p>\n\n\n\n\n<p class=\"sponsor\">This episode is also sponsored by <a href=\"https://www.hover.com/\">Hover</a>. Hover makes domain name management <i>easy</i>. And it’s a snap to transfer domains from other registrars using their valet service. Get 10% off your first purchase with the promotional code MANILA. (Manila was the name of the blogging system worked on at UserLand.) <a href=\"https://www.hover.com/\">Take a look</a>.</p>\n\n\n<p>Things we mention, more or less in order of appearance:</p>\n\n<ul>\n<li><a href=\"https://web.archive.org/web/20040114044527/http://ranchero.com/netnewswire/\">NetNewsWire</a></li>\n<li><a href=\"https://web.archive.org/web/20050604075416/http://ranchero.com/marsedit/\">MarsEdit</a></li>\n<li><a href=\"http://glassboard.com\">Glassboard</a></li>\n<li><a href=\"http://vesperapp.co\">Vesper</a></li>\n<li><a href=\"https://web.archive.org/web/20000229202924/http://manila.userland.com/\">Manila</a></li>\n<li><a href=\"http://www.uchicago.edu\">The University of Chicago</a></li>\n<li><a href=\"http://www.dupont.com\">DuPont</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Punched_card\">Punched cards</a></li>\n<li><a href=\"http://www.udel.edu\">University of Delaware</a></li>\n<li><a href=\"http://www.cityofnewarkde.us\">Newark, Delaware</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Fortran\">Fortran</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1980\">1980</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Apple_II_Plus\">Apple II Plus</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/PLATO_(computer_system)\">PLATO</a></li>\n<li><a href=\"https://twitter.com/maggiejdavis\">Brent's Mom</a></li>\n<li><a href=\"http://en.wikibooks.org/wiki/6502_Assembly\">6502 Assembly</a></li>\n<li><a href=\"http://support.apple.com/kb/TA46270?viewlocale=en_US&locale=en_US\">80 column card</a></li>\n<li><a href=\"https://archive.org/details/ALF_Music_Synthesizer_Owners_Manual\">ALF II</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Music_Construction_Set\">Music Construction Set</a></li>\n<li><a href=\"http://www.thebeatles.com\">Beatles</a></li>\n<li><a href=\"http://www.rollingstones.com\">Rolling Stones</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Phil_Ochs\">Pil Ochs</a></li>\n<li><a href=\"http://www.judycollins.com/index1.php\">Judy Collins</a></li>\n<li><a href=\"http://www.bobdylan.com/\">Boby Dylan</a></li>\n<li><a href=\"http://www.westsidestory.com\">West Side Story</a></li>\n<li><a href=\"https://m.youtube.com/watch?v=TYjz7gxo8k4\">Hair Broadway Soundtrack</a></li>\n<li><a href=\"http://delicious-monster.com\">Delicious Library</a></li>\n<li><a href=\"http://global.epson.com/company/corporate_history/milestone_products/11_mx80.html\">Epson MX-80</a></li>\n<li><a href=\"http://thephoenix.com/boston/music/129722-rise-and-fall-of-the-columbia-house-record-clu/\">Columbia House Records</a></li>\n<li><a href=\"http://cyndilauper.com\">Cindy Lauper</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Born_in_the_U.S.A.\">Born in the USA</a></li>\n<li><a href=\"http://www.theclash.com\">The Clash</a></li>\n<li><a href=\"https://m.youtube.com/watch?v=EfK-WX2pa8c\">London Calling</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Pascal_(programming_language)\">Pascal</a></li>\n<li><a href=\"http://www.evergreen.edu\">Evergreen State College</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1992\">1992</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1989\">1989</a></li>\n<li><a href=\"http://www.seattlecentral.edu\">Seattle Central Community College</a></li>\n<li><a href=\"http://newcitycollegian.com\">City Collegian</a></li>\n<li><a href=\"http://www.quark.com/Products/QuarkXPress/\">QuarkXpress</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/LaserWriter\">LaserWriter</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Macintosh_IIcx\">Mac IIcx</a></li>\n<li><a href=\"https://www.google.com/search?q=radius+monitor&client=safari&rls=en&tbm=isch&tbo=u&source=univ&sa=X&ei=Qc6GU_TJN9XeoAT_4YGQDA&ved=0CEIQsAQ&biw=1369&bih=1236\">Radius monitor</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Silo_(store)\">Silo</a></li>\n<li><a href=\"http://www.seattlegoodwill.org\">Goodwill</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/THINK_C\">Symantec C</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Grenoble\">Grenoble, France</a></li>\n<li><a href=\"http://office.microsoft.com/en-us/word/\">Microsoft Word</a></li>\n<li><a href=\"http://office.microsoft.com/en-us/excel/\">Microsoft Excel</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Seattle\">Seattle</a></li>\n<li><a href=\"http://www.boeing.com/boeing/\">Boeing</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Photovoltaics\">Photovoltaics</a></li>\n<li><a href=\"http://www.washington.edu\">University of Washington</a></li>\n<li><a href=\"http://www.ibs.fr/?lang=en\">Institut de Biologie Structurale</a></li>\n<li><a href=\"http://www.cea.fr\">CEA</a></li>\n<li><a href=\"http://www.cnrs.fr\">CNRS</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Alps\">Alps (the mountains)</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Gopher_(protocol)\">Gopher</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Pine_(email_client)\">Pine</a></li>\n<li><a href=\"http://www.iht.com\">International Herald Tribune</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Kronenbourg_Brewery\">Kronenbourg</a></li>\n<li><a href=\"http://www.georgekillians.com/AV.aspx?returnUrl=default.aspx\">Killian’s Red</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Isère_(river)\">Isère River</a></li>\n<li><a href=\"http://www.anthonys.com/restaurants/detail/chinook-at-salmon-bay\">Chinook's</a></li>\n<li><a href=\"http://www.eskimo.com\">Eskimo dial-up account</a></li>\n<li><a href=\"http://www.dalverson.com/zterm/\">Zterm</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Lynx_(web_browser)\">Lynx</a></li>\n<li><a href=\"http://searchengineland.com/altavista-eulogy-165366\">AltaVista</a></li>\n<li><a href=\"http://www.seanet.com\">Seanet</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/MacTCP\">MacTCP</a></li>\n<li><a href=\"http://www.index-site.com/macppp.html\">MacPPP</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/AppleTalk\">AppleTalk</a></li>\n<li><a href=\"https://www.yahoo.com\">Yahoo</a></li>\n<li><a href=\"http://archive.info-mac.org\">Info-Mac Archive</a></li>\n<li><a href=\"http://www.kagi.com/\">Kagi</a></li>\n<li><a href=\"http://www.ambrosiasw.com/games/maelstrom/\">Maelstrom</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Macintosh_Performa\">Performa 604</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/After_Dark_(software)\">After Dark</a></li>\n<li><a href=\"http://www.bungie.net\">Bungie</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Ambrosia_Software\">Andrew Welch</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Usenet\">Usenet</a></li>\n<li><a href=\"http://fuckingblocksyntax.com\">fuckingblocksyntax.com</a></li>\n<li><a href=\"http://scripting.com\">Dave Winer</a></li>\n<li><a href=\"http://davewiner.userland.com/historyOfFrontier\">UserLand Frontier Aretha release</a></li>\n<li><a href=\"https://web.archive.org/web/19991113024326/http://www.userland.com/\">UserLand Software</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/documentation/applescript/Conceptual/AppleScriptX/AppleScriptX.html\">AppleScript</a></li>\n<li><a href=\"https://www.google.com/search?q=hypercard&client=safari&rls=en&tbm=isch&tbo=u&source=univ&sa=X&ei=09GGU7fBL8_coASMuYCQBA&ved=0CDUQsAQ&biw=1369&bih=1236\">HyperCard</a></li>\n<li><a href=\"https://web.archive.org/web/20000815062309/http://www.starnine.com/webstar/webstar.html\">WebSTAR</a></li>\n<li><a href=\"http://projects.pudge.net\">MacPerl</a></li>\n<li><a href=\"http://www.mysql.com\">MySQL</a></li>\n<li><a href=\"http://web.archive.org/web/19991021212201/http://www.ranchero.com/spotlight/\">Spotlight</a></li>\n<li><a href=\"http://www.filemaker.com/products/filemaker-pro/\">Filemaker Pro</a></li>\n<li><a href=\"http://www.indystar.com\">Indianapolis Star News</a></li>\n<li><a href=\"http://www.woodsidetown.org\">Woodside, CA</a></li>\n<li><a href=\"https://twitter.com/jsavin\">Jake Savin</a></li>\n<li><a href=\"http://sfgov.org\">San Francisco</a></li>\n<li><a href=\"http://scobleizer.com\">Robert Scoble</a></li>\n<li><a href=\"http://www.ci.millbrae.ca.us\">Millbrae</a></li>\n<li><a href=\"http://www.cityofpaloalto.org\">Palo Alto</a></li>\n<li><a href=\"http://windows.microsoft.com/\">Windows</a></li>\n<li><a href=\"http://www.visualstudio.com\">Visual Studio</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/CodeWarrior\">CodeWarrior</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/PowerPlant\">PowerPlant</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/MacApp\">MacApp</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Macintosh_Toolbox\">Toolbox</a></li>\n<li><a href=\"https://developer.apple.com/xcode/\">Xcode</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Project_Builder\">Project Builder</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Carbon_(API)\">Carbon</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/QuickDraw\">QuickDraw</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Open_Transport\">Open Transport</a></li>\n<li><a href=\"https://web.archive.org/web/20000229202924/http://manila.userland.com/\">Manila</a></li>\n<li><a href=\"https://web.archive.org/web/20000302104551/http://www.editthispage.com/\">EditThisPage.com</a></li>\n<li><a href=\"http://www.dailykos.com\">Daily Kos</a></li>\n<li><a href=\"https://web.archive.org/web/20000620151247/http://joel.editthispage.com/\">joel.editthispage.com</a></li>\n<li><a href=\"http://www.amazon.com/Cocoa-Programming-Mac-4th-Edition/dp/0321774086\">Aaron Hillegass’s Book on Cocoa</a></li>\n<li><a href=\"https://web.archive.org/web/20010224173813/http://radio.userland.com/\">Radio UserLand</a></li>\n<li><a href=\"https://www.python.org\">Python</a></li>\n<li><a href=\"http://inessential.com/2002/06/05/macnewswire_1_0b7\">MacNewsWire</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/RSS\">RSS</a></li>\n<li><a href=\"http://www.webkit.org\">WebKit</a></li>\n<li><a href=\"https://www.apple.com/safari/\">Safari</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Internet_Explorer_for_Mac\">MSIE for Mac</a></li>\n<li><a href=\"http://caminobrowser.org\">Camino</a></li>\n<li><a href=\"http://ranchero.com/images/newheadlines2.jpg\">NetNewsWire 1.0 screen shot</a></li>\n<li><a href=\"http://www.xojo.com/index_xojo.php\">RealBasic</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/BBEdit_Lite\">BBEdit Lite</a></li>\n<li><a href=\"http://www.barebones.com/products/textwrangler/\">TextWrangler</a></li>\n<li><a href=\"https://web.archive.org/web/19991010052722/http://www.vertexdev.com/HeadlineViewer/\">Carmen’s Headline Viewer</a></li>\n<li><a href=\"http://www.yole.ru/projects/syndirella/\">Syndirella</a></li>\n<li><a href=\"http://www.disobey.com/amphetadesk/\">AmphetaDesk</a></li>\n<li><a href=\"http://readwrite.com/2007/03/05/mynetscape_20#awesm=~oFDbbHvdM5cj7V\">My.Netscape.Com</a></li>\n<li><a href=\"https://discussions.apple.com/thread/4135311?start=285&\">Safari/RSS</a></li>\n<li><a href=\"http://ecto.kung-foo.tv\">Ecto</a></li>\n<li><a href=\"http://movabletype.org\">Movable Type</a></li>\n<li><a href=\"http://www.apple.com/osx/server/\">Mac OS X Server</a></li>\n<li><a href=\"http://inessential.com/2014/05/10/what_happened_at_newsgator\">NewsGator</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Palm_Treo\">Palm Treo</a></li>\n<li><a href=\"http://www.feeddemon.com\">FeedDemon</a></li>\n<li><a href=\"http://nickbradbury.com\">Nick Bradbury</a></li>\n<li><a href=\"https://twitter.com/gregr\">Greg Reinacker</a></li>\n<li><a href=\"http://office.microsoft.com/en-us/outlook/\">Outlook</a></li>\n<li><a href=\"http://taplynx.com\">TapLynx</a></li>\n<li><a href=\"http://push.io\">Push IO</a></li>\n<li><a href=\"http://sepialabs.com\">Sepia Labs</a></li>\n<li><a href=\"http://culturedcode.com\">Cultured Code and Things</a></li>\n<li><a href=\"http://blackpixel.com\">Black Pixel</a></li>\n<li><a href=\"http://www.red-sweater.com\">Red Sweater</a></li>\n<li><a href=\"http://www.oracle.com/\">Oracle</a></li>\n<li><a href=\"http://carpeaqua.com\">Justin Wiliams</a></li>\n<li><a href=\"http://inessential.com/2011/03/02/the_return_of_netnewswire_lite\">NetNewsWire Lite 4.0 for Macintosh</a></li>\n<li><a href=\"http://inessential.com/vespersyncdiary\">Vesper Sync Diary</a></li>\n<li><a href=\"https://developer.apple.com/wwdc/\">WWDC</a></li>\n<li><a href=\"http://www.parc55hotel.com\">Parc 55</a></li>\n</ul>",
+      "date_published": "2014-05-29T05:00:00-07:00",
+      "attachments": [
+        {
+          "url": "http://therecord.co/downloads/TheRecord-sp1e2-BrentSimmons.m4a",
+          "mime_type": "audio/x-m4a",
+          "size_in_bytes": 75344101
+        }
+      ]
+    },
+    {
+      "id": "http://therecord.co/2014/05/09/chris_parrish",
+      "url": "http://therecord.co/2014/05/09/chris_parrish",
+      "title": "Special #1 - Chris Parrish",
+      "content_html": "<p>This episode was recorded 6 May 2014 live and in person at Brent’s office in lovely, sunny Ballard.</p>\n\n<p>You can <a href=\"http://therecord.co/downloads/TheRecord-sp1e1-ChrisParrish.m4a\">download the m4a file</a> or <a href=\"https://itunes.apple.com/us/podcast/the-record/id791861057\">subscribe in iTunes</a>. (Or <a href=\"http://therecord.co/xml/rss.xml\">subscribe to the podcast feed</a>.)</p>\n\n<p><a href=\"https://twitter.com/twenty3\">Chris</a> has worked at <a href=\"http://adobe.com/\">Adobe</a> and as a founder of Rogue Sheep, which won an Apple Design Award for <a href=\"http://www.macworld.com/article/1140874/postage.html\">Postage</a>. Chris’s new company is Aged &amp; Distilled with <a href=\"http://kickingbear.com/blog/\">Guy English</a> — which shipped <a href=\"http://aged-and-distilled.com/napkin/\">Napkin</a>, a Mac app for visual collaboration. Chris is also the co-host of The Record. He lives on <a href=\"http://www.ci.bainbridge-isl.wa.us/\">Bainbridge Island</a>, a quick ferry ride from Seattle.</p>\n\n<p class=\"sponsor\">This episode is sponsored by <a href=\"https://itunes.apple.com/us/app/tagcaster/id662918542?mt=8\">Tagcaster</a>. Tagcaster is not just another podcast client — it solves the age-old problem of <i>linking</i> to specific parts of a podcast. You can make clips — short audio excerpts — and share them and link to them. After all these years, that problem is finally solved.</p>\n\n\n\n\n<p class=\"sponsor\">This episode is also sponsored by <a href=\"http://igloosoftware.com/therecord\">Igloo</a>. Igloo is an intranet you’ll actually like, with shared calendars, microblogs, file-sharing, social networking, and more. It’s free for up 10 users — give it a try for your company or your team today.</p>\n\n\n\n\n<p class=\"sponsor\">This episode is also sponsored by <a href=\"https://www.hover.com/\">Hover</a>. Hover makes domain name management <i>easy</i>. And it’s a snap to transfer domains from other registrars using their valet service. Get 10% off your first purchase with the promotional code PANIC. As in “Don’t Panic! Use Hover.” <a href=\"https://www.hover.com/\">Take a look</a>.</p>\n\n\n<p>Things we mention, more or less in order of appearance:</p>\n\n<ul>\n<li><a href=\"http://www.ok.gov\">Oklahoma</a></li>\n<li><a href=\"http://www.wikipedia.org\">Wikipedia</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Shopping_cart\">The shopping cart</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Rust\">Rust</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Homestead_Acts\">Homestead Act</a></li>\n<li><a href=\"http://www.pong-story.com/intro.htm\">Pong</a></li>\n<li><a href=\"https://www.atari2600.com\">Atari 2600</a></li>\n<li><a href=\"http://www.whitehouse.gov/about/presidents/jimmycarter\">President Carter</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Pinochle\">Pinochle</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Republican_Party_(United_States)\">Republicans</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Democratic_Party_(United_States)\">Democrats</a></li>\n<li><a href=\"http://apple2history.org\">Apple II</a></li>\n<li><a href=\"https://archive.org/details/applerefjan78\">Apple II Reference Manual</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Floppy_disk\">Floppy Disks</a></li>\n<li><a href=\"\">Odyssey: The Compleat Adventure</a></li>\n<li><a href=\"http://www.marco.org\">Marco</a></li>\n<li><a href=\"http://global.epson.com/company/corporate_history/milestone_products/11_mx80.html\">Epson MX-80 dot matrix printer</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Parallel_port\">Parallel port</a></li>\n<li><a href=\"http://time.com/69316/basic/\">BASIC</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Apple_II_graphics\">Apple II graphics modes</a></li>\n<li><a href=\"http://www.hasbro.com/litebrite/en_US/\">LiteBrite</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=OuZpZ4i3ql4\">Apple II Star Wars game</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Assembler_(computing)#Assembler\">Assembler</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Adventure_game\">Text adventure games</a></li>\n<li><a href=\"https://itunes.apple.com/us/app/paper-by-fiftythree/id506003812?mt=8\">Paper app</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Graph_paper\">Graph paper</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Merlin_(assembler)\">Merlin assembler</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Apple_Pascal\">Pascal compiler for Apple II</a></li>\n<li><a href=\"http://www.apple2scans.net/apple-ii-documents/locksmith-6-0-users-manual/\">Locksmith for Apple II</a></li>\n<li><a href=\"http://www.fadden.com/techmisc/cassette-protect.htm\">Apple II copy protection</a></li>\n<li><a href=\"http://www.radioshack.com\">Radio Shack</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Read-only_memory\">ROM chips</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Tin_foil\">Tin foil</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Crocodile_clip\">Alligator clips</a></li>\n<li><a href=\"http://graphicsmagician.com/polarware/pengraph.htm\">The Complete Graphics System</a></li>\n<li><a href=\"http://5by5.tv/incomparable\">The Incomparable</a></li>\n<li><a href=\"http://therecord.co/2014/04/25/mike_lee\">Mike Lee on The Record</a></li>\n<li><a href=\"https://sat.collegeboard.org/home\">SATs</a></li>\n<li><a href=\"http://www.ou.edu\">University of Oklahoma</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/LaserWriter\">LaserWriter</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Linotronic\">Linotronic image setter</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/The_Beverly_Hillbillies\">The Clampetts</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/The_Grapes_of_Wrath\">The Joads</a></li>\n<li><a href=\"http://www.seattle.gov\">Seattle</a></li>\n<li><a href=\"http://www.lasvegasnevada.gov\">Las Vegas</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Belltown,_Seattle\">Belltown</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Capitol_Hill_(Seattle)\">Capitol Hill</a></li>\n<li><a href=\"http://www.ci.everett.wa.us\">Everett</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Queen_Anne,_Seattle\">Queen Anne</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Magnolia,_Seattle\">Magnolia</a></li>\n<li><a href=\"http://www.adobe.com\">Adobe</a></li>\n<li><a href=\"http://www.microsoft.com\">Microsoft</a></li>\n<li><a href=\"http://windows.microsoft.com/\">Windows</a></li>\n<li><a href=\"http://starwars.wikia.com/wiki/X-Wing_series_(computer_games)\">X-Wing video game</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/X86_assembly_language\">8086 Assembly language</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/MS-DOS\">Microsoft DOS</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Sierra_Entertainment\">Sierra On-Line</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/PowerBook_Duo\">PowerBook Duo</a></li>\n<li><a href=\"http://oldcomputers.net/appleiigs.html\">Apple IIGS</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/THINK_C\">Think C</a></li>\n<li><a href=\"http://www.sega.com\">Sega</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/CD-ROM\">CD-ROMs</a></li>\n<li><a href=\"https://partners.adobe.com/public/developer/ps/index_specs.html\">Postscript</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Adobe_PageMaker\">Pagemaker</a></li>\n<li><a href=\"http://www.quark.com\">Quark</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Aldus\">Aldus</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Pioneer_Square,_Seattle\">Pioneer Square</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1995\">1995</a></li>\n<li><a href=\"http://www.java.com\">Java</a></li>\n<li><a href=\"http://www.mactech.com/articles/mactech/Vol.12/12.10/JavaIDEOlympics/index.html\">Natural Intelligence Roaster IDE</a></li>\n<li><a href=\"http://www.adobe.com/products/illustrator.html\">Illustrator</a></li>\n<li><a href=\"http://www.sqaforums.com/showflat.php?Number=275630\">QA Partner</a></li>\n<li><a href=\"http://david.heinemeierhansson.com/2014/tdd-is-dead-long-live-testing.html\">Test-Driven Development</a></li>\n<li><a href=\"http://www.adobe.com/products/indesign.html\">InDesign</a></li>\n<li><a href=\"https://www.microsoft.com/com/default.mspx\">COM</a></li>\n<li><a href=\"https://twitter.com/mattjoss\">Matt Joss</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Revision_control\">Version control</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2001\">2001</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Microsoft_Visual_SourceSafe\">SourceSafe</a></li>\n<li><a href=\"http://msdn.microsoft.com/en-us/vstudio//\">Visual Studio</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/C++\">C++</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/OpenDoc\">OpenDoc Resource Compiler</a></li>\n<li><a href=\"http://office.microsoft.com/en-us/sharepoint/\">Sharepoint</a></li>\n<li><a href=\"http://azure.microsoft.com\">Azure</a></li>\n<li><a href=\"http://www.adobe.com/products/framemaker.html\">FrameMaker</a></li>\n<li><a href=\"https://twitter.com/roguesheep\">Rogue Sheep</a></li>\n<li><a href=\"http://printwearmag.com/article/screen-printing/separations-for-four-color-process-printing\">CMYK separation</a></li>\n<li><a href=\"http://www.fonts.com/content/learning/fyti/using-type-tools/optical-margin-alignment-in-indesign\">Optical character alignment</a></li>\n<li><a href=\"http://www.washington.edu\">University of Washington</a></li>\n<li><a href=\"http://www.hitl.washington.edu/home/\">HITLab</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Gel_electrophoresis\">Gel Electrophoresis</a></li>\n<li><a href=\"https://github.com/jeffargast\">Jeff Argast</a></li>\n<li><a href=\"http://office.microsoft.com/en-us/powerpoint/\">PowerPoint</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Western_blot\">Western blots</a></li>\n<li><a href=\"http://www.theguardian.com/\">The Guardian</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Presidency_of_George_W._Bush\">Bush Administration</a></li>\n<li><a href=\"http://www.macworld.com/article/1140874/postage.html\">Postage</a></li>\n<li><a href=\"http://twitterrific.com/\">Twitterrific</a></li>\n<li><a href=\"http://pacifichelm.com\">Brad Ellis</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Lehman_Brothers\">Lehman Brothers</a></li>\n<li><a href=\"https://twitter.com/JakeCarter\">Jake Carter</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Cocoa_(API)\">Cocoa</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Quartz_Composer\">Quartz Composer</a></li>\n<li><a href=\"https://www.apple.com/final-cut-pro/motion/\">Motion</a></li>\n<li><a href=\"http://www.adobe.com/products/aftereffects.html\">After Effects</a></li>\n<li><a href=\"https://twitter.com/kylerichter\">Kyle Richter</a></li>\n<li><a href=\"https://twitter.com/rtmfd\">Ian Baird</a></li>\n<li><a href=\"https://developer.apple.com/in-app-purchase/\">IAP</a></li>\n<li><a href=\"http://eddierickssf.com\">Rickenbacker’s</a></li>\n<li><a href=\"http://www.thehouseofshields.com\">The House of Shields</a></li>\n<li><a href=\"http://daringfireball.net\">John Gruber</a></li>\n<li><a href=\"http://betterelevation.com\">Dave Wiskus</a></li>\n<li><a href=\"http://aged-and-distilled.com/napkin/\">Napkin</a></li>\n<li><a href=\"http://kickingbear.com/blog/\">Guy English</a></li>\n<li><a href=\"https://twitter.com/ottokajetan\">Thomas Unterberger</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/C4_(conference)\">C4</a></li>\n<li><a href=\"https://twitter.com/unitedlemur\">United Lemur</a></li>\n<li><a href=\"http://www.fifa.com/worldcup/\">World Cup</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Brazil\">Brazil</a></li>\n<li><a href=\"https://developer.apple.com/wwdc/\">WWDC</a></li>\n<li><a href=\"http://sfgov.org\">San Francisco</a></li>\n<li><a href=\"http://netnewswireapp.com\">NetNewsWire</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1999\">1999</a></li>\n<li><a href=\"http://www.macworld.com/article/2071020/macworld-editors-choice-awards-the-best-products-of-2013.html\">Eddy awards</a></li>\n</ul>",
+      "date_published": "2014-05-09T05:30:00-07:00",
+      "attachments": [
+        {
+          "url": "http://therecord.co/downloads/TheRecord-sp1e1-ChrisParrish.m4a",
+          "mime_type": "audio/x-m4a",
+          "size_in_bytes": 89970236
+        }
+      ]
+    },
+    {
+      "id": "http://therecord.co/2014/04/25/mike_lee",
+      "url": "http://therecord.co/2014/04/25/mike_lee",
+      "title": "Seattle Before the iPhone #9 - Mike Lee",
+      "content_html": "<p>This episode was recorded 17 May 2013 live and in person at <a href=\"http://www.omnigroup.com/\">Omni’s</a> beautiful offices overlooking Lake Union in Seattle.</p>\n\n<p>You can <a href=\"http://therecord.co/downloads/TheRecord-s1e9-MikeLee.m4a\">download the m4a file</a> or <a href=\"https://itunes.apple.com/us/podcast/the-record/id791861057\">subscribe in iTunes</a>. (Or <a href=\"http://therecord.co/xml/rss.xml\">subscribe to the podcast feed</a>.)</p>\n\n<p><a href=\"https://twitter.com/bmf\">Mike Lee</a>, <a href=\"https://appsterdam.rs/\">Appsterdam</a> founder, has worked at Alaska Airlines, <a href=\"http://delicious-monster.com/\">Delicious Monster</a> (with Wil Shipley), Apple, and is now Chief Lemur at <a href=\"http://newlemurs.com/\">New Lemurs</a>.</p>\n\n<p class=\"sponsor\">This episode is sponsored by <a href=\"https://www.hover.com/\">Hover</a>. Hover makes domain name management <i>easy</i>. And it’s a snap to transfer domains from other registrars using their valet service. Get 10% off your first purchase with the promotional code BMF. (BMF -- Be My Friend — is Mike Lee’s Twitter handle.) You notice how people with a lot of domains are always talking about Hover? It’s because of their excellent service. <a href=\"https://www.hover.com/\">Take a look</a>.</p>\n\n\n\n\n<p class=\"sponsor\">This episode is also sponsored by <a href=\" http://azure.microsoft.com/en-us/develop/mobile/ios/?WT.mc_id=azurebg_us_pmm_mirluna_therecord\">Microsoft Azure Mobile Services</a>. Mobile Services is a great way to provide backend services — syncing and other things — for your iPhone, iPad, and Mac apps. It’s high level — you can get <i>more</i> done with <i>less</i> work. It’s also deep: write JavaScript in your favorite text editor. Test with mocha. Deploy with git.</p>\n\n\n<p>Things we mention, in order of appearance (mostly):</p>\n\n<ul>\n<li><a href=\"http://en.wikipedia.org/wiki/Kurt_Cobain\">Kurt Cobain</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Grunge\">Grunge</a></li>\n<li><a href=\"http://www.honolulu.gov\">Honolulu</a></li>\n<li><a href=\"https://portal.ehawaii.gov\">Hawaii</a></li>\n<li><a href=\"http://www.pugetsound.edu\">University of Puget Sound</a></li>\n<li><a href=\"http://www.cityoftacoma.org\">Tacoma</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Puget_Sound\">Puget Sound</a></li>\n<li><a href=\"http://www.alaskaair.com\">Alaska Airlines</a></li>\n<li><a href=\"http://www.portseattle.org/Sea-Tac/Pages/default.aspx\">SeaTac</a></li>\n<li><a href=\"http://career-advice.monster.com/job-search/company-industry-research/ramp-agent-ground-support-jobs/article.aspx\">Lead ramp agent</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Skill_(labor)\">Skilled labor</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1993\">1993</a></li>\n<li><a href=\"http://www.cyoa.com\">Choose Your Own Adventure</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Dynamic_HTML\">DHTML</a></li>\n<li><a href=\"http://www.adobe.com/products/flash.html\">Flash</a></li>\n<li><a href=\"http://www.webstandards.org\">Web Standards Project</a></li>\n<li><a href=\"http://www.w3.org/XML/\">XML</a></li>\n<li><a href=\"http://www.java.com/\">Java</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/C_Sharp_(programming_language)\">C#</a></li>\n<li><a href=\"http://www.microsoft.com/net\">DotNet</a></li>\n<li><a href=\"http://www.apple.com/mac/\">Macintosh</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Personal_computer\">PC</a></li>\n<li><a href=\"http://www.microsoft.com\">Microsoft</a></li>\n<li><a href=\"http://windows.microsoft.com/\">Windows</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Windows_95\">Windows 95</a></li>\n<li><a href=\"http://www.apple.com/osx/\">Mac OS X</a></li>\n<li><a href=\"http://www.ise.gov/terrorist-watchlist\">Terrorist watch list</a></li>\n<li><a href=\"https://developer.apple.com/wwdc/\">WWDC</a></li>\n<li><a href=\"http://www.oracle.com/javaone/index.html\">JavaOne</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Objective-C\">Objective-C</a></li>\n<li><a href=\"https://developer.apple.com/xcode/\">Xcode</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2005\">2005</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2001\">2001</a></li>\n<li><a href=\"http://www.yelp.com/biz/renoir-hotel-san-francisco\">Renoir Hotel</a></li>\n<li><a href=\"https://developer.apple.com/wwdc/students/\">WWDC Student Scholarship</a></li>\n<li><a href=\"http://blog.wilshipley.com\">Wil Shipley</a></li>\n<li><a href=\"http://arstechnica.com/apple/2005/06/574/\">Wil Shipley’s Speech on the Indie Dream</a></li>\n<li><a href=\"http://www.devry.edu\">Devry</a></li>\n<li><a href=\"http://www.fedex.com\">FedEx</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/CoreData/cdProgrammingGuide.html\">Core Data</a></li>\n<li><a href=\"http://www.friday.com/bbum/\">Bill Bumgarner</a></li>\n<li><a href=\"http://www.ci.federal-way.wa.us\">Federal Way</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Interstate_5\">I-5</a></li>\n<li><a href=\"http://delicious-monster.com\">Delicious Library</a></li>\n<li><a href=\"https://developer.apple.com/design/awards/\">Apple Design Award</a></li>\n<li><a href=\"http://www.tuaw.com/2005/06/10/wwdc-wallflowers-rock-apple-campus-bash/\">Campus Bash</a></li>\n<li><a href=\"http://www.yelp.com/biz/dennys-san-francisco-2\">Denny’s</a></li>\n<li><a href=\"http://www.omnigroup.com\">Omni Group</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Recreation_room\">Rumpus Room</a></li>\n<li><a href=\"https://www.apple.com/retail/universityvillage/\">Apple Store</a></li>\n<li><a href=\"http://www.barnesandnoble.com\">Barnes & Noble</a></li>\n<li><a href=\"https://twitter.com/lllucas\">Lucas Newman</a></li>\n<li><a href=\"http://www.mikematas.com/\">Mike Matas</a></li>\n<li><a href=\"http://www.cityofknoxville.org\">Knoxville</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Samurai\">Samurai</a></li>\n<li><a href=\"http://imaginepeace.com\">Yoko Ono</a></li>\n<li><a href=\"http://seattlexcoders.org\">Seattle Xcoders</a></li>\n<li><a href=\"http://shapeof.com\">Gus Mueller</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Uncertainty_principle\">Heisenberg Uncertainty Principle</a></li>\n<li><a href=\"http://scripting.com/\">Dave Winer</a></li>\n<li><a href=\"http://www.dccomics.com/characters/superman\">Superman</a></li>\n<li><a href=\"http://www.bjsrestaurants.com/locations/ca/cupertino\">IL 7</a></li>\n<li><a href=\"https://twitter.com/jgeleynse\">John Geleynse</a></li>\n<li><a href=\"http://newlemurs.com\">Lemur Chemistry</a></li>\n<li><a href=\"http://cabel.me\">Cabel Sasser</a></li>\n<li><a href=\"https://www.flickr.com/photos/martingausby/3661009412/\">“Hi, I Make Macintosh Software” T-shirt</a></li>\n<li><a href=\"http://www.altconf.com\">altWWDC</a></li>\n<li><a href=\"http://www.imore.com/debug\">Debug podcast</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Tapulous\">Tapulous</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Tap_Tap_Revenge\">Tap Tap Revenge</a></li>\n<li><a href=\"http://ifartmobile.com\">iFart</a></li>\n<li><a href=\"https://developer.apple.com/support/technical/\">DTS</a></li>\n<li><a href=\"https://foursquare.com/v/apple-infinite-loop-3-cupertino-ca/4b267f5ef964a520647c24e3\">IL 3</a></li>\n<li><a href=\"http://www.yelp.com/biz/caffè-macs-cupertino-2\">Caffè Macs</a></li>\n<li><a href=\"http://randsinrepose.com\">Rands</a></li>\n<li><a href=\"http://www.appleoutsider.com\">Matt Drance</a></li>\n<li><a href=\"https://twitter.com/Jury\">Michael Jurewitz</a></li>\n</ul>",
+      "date_published": "2014-04-25T11:30:00-07:00",
+      "attachments": [
+        {
+          "url": "http://therecord.co/downloads/TheRecord-s1e9-MikeLee.m4a",
+          "mime_type": "audio/x-m4a",
+          "size_in_bytes": 52213416
+        }
+      ]
+    },
+    {
+      "id": "http://therecord.co/2014/04/11/nat_irons",
+      "url": "http://therecord.co/2014/04/11/nat_irons",
+      "title": "Seattle Before the iPhone #8 - Nathaniel Irons",
+      "content_html": "<p>This episode was recorded 16 May 2013 live and in person at <a href=\"http://www.omnigroup.com/\">Omni’s</a> lovely offices overlooking Lake Union in Seattle.</p>\n\n<p>You can <a href=\"http://therecord.co/downloads/TheRecord-s1e8-NatIrons.m4a\">download the m4a file</a> or <a href=\"https://itunes.apple.com/us/podcast/the-record/id791861057\">subscribe in iTunes</a>. (Or <a href=\"http://therecord.co/xml/rss.xml\">subscribe to the podcast feed</a>.)</p>\n\n<p><a href=\"https://twitter.com/irons\">Nat Irons</a> has worked at <a href=\"https://developer.apple.com/contact/\">Apple Developer Relations</a>, as a WebObjects consultant, and as IT director at <a href=\"http://www.thestranger.com\">The Stranger</a>. He’s now QA Manager at <a href=\"http://blackpixel.com\">Black Pixel</a>. He once delivered pizza to The Far Side author Gary Larson.</p>\n\n<p class=\"sponsor\">This episode is sponsored by <a href=\"http://igloosoftware.com/therecord\">Igloo</a>. Igloo is an intranet you’ll actually like, with shared calendars, microblogs, file-sharing, social networking, and more. It’s free for up 10 users — give it a try for your company or your team today.</p>\n\n\n\n\n<p class=\"sponsor\">This episode is also sponsored by <a href=\" http://azure.microsoft.com/en-us/develop/mobile/ios/?WT.mc_id=azurebg_us_pmm_mirluna_therecord\">Microsoft Azure Mobile Services</a>. Mobile Services is a great way to provide backend services — syncing and other things — for your iPhone, iPad, and Mac apps. It’s high level — you can get more done with less work.</p>\n\n\n<p>Things we mention, in-order-of-appearance-ish:</p>\n\n<ul>\n<li><a href=\"http://www.loderunnerclassic.com\">Lode Runner</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=KCkbp4wurW0\">Dark Castle</a></li>\n<li><a href=\"http://windows.microsoft.com\">Windows</a></li>\n<li><a href=\"http://www.cityofboston.gov\">Boston</a></li>\n<li><a href=\"http://sfgov.org\">San Francisco</a></li>\n<li><a href=\"http://www.ci.berkeley.ca.us\">Berkeley, CA</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/San_Francisco_Bay_Area\">Bay Area</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=FKov1lmq_OU\">High school</a></li>\n<li><a href=\"http://www.seattle.gov\">Seattle</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Tim_Eyman\">Tim Eyman</a></li>\n<li><a href=\"http://community.seattletimes.nwsource.com/archive/?date=19940114&slug=1889548\">Sit & Spin</a></li>\n<li><a href=\"http://www.meetup.com/blog-1/\">Blogger Meetup</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Natty_Bumppo\">Natty Bumppo</a></li>\n<li><a href=\"http://blog.bumppo.net\">bumppo.net</a></li>\n<li><a href=\"http://external.oneonta.edu/cooper/\">James Fenimore Cooper</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Leatherstocking_Tales\">Leatherstocking Tales</a></li>\n<li><a href=\"http://www.imdb.com/name/nm0000520/\">Michael Mann</a></li>\n<li><a href=\"http://www.imdb.com/name/nm0000358/\">Daniel Day Lewis</a></li>\n<li><a href=\"http://www.rogerebert.com/reviews/the-last-of-the-mohicans-1992\">Last of the Mohicans movie</a></li>\n<li><a href=\"http://help.aol.com/help/microsites/microsite.do?cmd=displayKC&docType=kc&externalId=220781\">AOL chatrooms</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Berkeley_Macintosh_Users_Group\">Berkeley Macintosh User Group (BMUG)</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Bulletin_board_system\">BBS</a></li>\n<li><a href=\"http://www.firstclass.com\">First Class BBS</a></li>\n<li><a href=\"https://twitter.com/tpoholmes\">Tim Holmes</a></li>\n<li><a href=\"https://www.google.com/search?q=purple+harley&client=safari&rls=en&tbm=isch&tbo=u&source=univ&sa=X&ei=Ue9FU4eDJ6fXyAH-54B4&ved=0CDkQsAQ&biw=1270&bih=1269\">Purple Harley</a></li>\n<li><a href=\"http://www.amazon.com/The-Bmug-Newsletter-Spring-1997/dp/0201688891\">BMUG Newsletter</a></li>\n<li><a href=\"http://computer.howstuffworks.com/modem.htm\">Modems</a></li>\n<li><a href=\"http://www.heidiroizen.com\">Heidi Roizen</a></li>\n<li><a href=\"http://technorati.com/technology/article/steve-jobs-on-what-it-means/\">Bleeding in six colors</a></li>\n<li><a href=\"https://twitter.com\">Twitter</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Bolo_(1987_video_game)\">Bolo</a></li>\n<li><a href=\"http://www.moddb.com/groups/video-game-art-realm/videos/spectre-vr-apple-macintosh-tank-game-fine-one\">Spectre</a></li>\n<li><a href=\"http://stuartcheshire.org\">Stuart Cheshire</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Virtual_reality\">Virtual Reality</a></li>\n<li><a href=\"https://developer.apple.com/bonjour/\">Bonjour</a></li>\n<li><a href=\"http://www.zeroconf.org\">ZeroConf</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Cheshire_Cat\">Cheshire Cat</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Stuart_Little\">Stuart Little</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=2PlP95WoCBw\">Alice</a></li>\n<li><a href=\"http://www.perl.org\">PERL</a></li>\n<li><a href=\"http://office.microsoft.com/en-us/excel/\">Excel</a></li>\n<li><a href=\"http://www.macos9lives.com\">Mac OS 9</a></li>\n<li><a href=\"https://www.google.com/search?q=imac+bondi+blue&client=safari&rls=en&tbm=isch&tbo=u&source=univ&sa=X&ei=p_FFU7XiF4Op2QXR2YGADA&ved=0CCgQsAQ&biw=1270&bih=1269\">iMac</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Floppy_disk\">Floppy drive</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Apple_Desktop_Bus\">ADB</a></li>\n<li><a href=\"http://computer.howstuffworks.com/usb.htm\">USB</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/NeXT\">NeXT</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Rhapsody_(operating_system)\">Rhapsody</a></li>\n<li><a href=\"http://www.unix.org\">UNIX</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Terminal_(OS_X)\">Terminal.app</a></li>\n<li><a href=\"http://www.barebones.com/products/bbedit/\">BBEdit</a></li>\n<li><a href=\"http://apple-history.com/se30\">SE/30</a></li>\n<li><a href=\"http://www.guidebookgallery.org/screenshots/macosxdp3\">Apple in middle of menubar</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Macintosh_Programmer's_Workshop\">MPW</a></li>\n<li><a href=\"http://c2.com/cgi/wiki?MacPerl\">MacPerl</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/documentation/TextFonts/Reference/LatentSemanticMapping/_index.html\">Latent Semantic Mapping (LSM)</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Regular_expression\">Regular expressions</a></li>\n<li><a href=\"https://developer.apple.com/wwdc/\">WWDC</a></li>\n<li><a href=\"http://www.hulu.com/watch/33844\">Homer Simpson in The Land of Chocoloate</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Schadenfreude\">Schadenfreude</a></li>\n<li><a href=\"http://www.macintouch.com\">MacInTouch</a></li>\n<li><a href=\"http://www.npr.org\">NPR</a></li>\n<li><a href=\"http://microsoft.com\">Microsoft</a></li>\n<li><a href=\"http://news.cnet.com/2100-1001-202143.html\">Microsoft invests in Apple and pledges to keep developing Office for Mac</a></li>\n<li><a href=\"http://apple-history.com/pg3s\">Powerbook G3</a></li>\n<li><a href=\"http://www.filemaker.com\">Filemaker Pro</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Claris\">Claris</a></li>\n<li><a href=\"http://office.microsoft.com/en-us/access/\">Microsoft Access</a></li>\n<li><a href=\"http://info.filemaker.com/Bento_Statement.html\">Bento</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Apple_events\">Apple events</a></li>\n<li><a href=\"http://moto.arrisi.com\">Farallon</a></li>\n<li><a href=\"https://twitter.com/cshotton\">Chuck Shotton</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Kerio_WebSTAR\">WebSTAR</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/MacHTTP\">MacHTTP</a></li>\n<li><a href=\"http://www.networkcomputing.com/1014/1014sp5.html\">StarNine</a></li>\n<li><a href=\"http://news.cnet.com/Quarterdeck-to-beef-up-Webstar/2100-1023_3-211781.html\">Quarterdeck</a></li>\n<li><a href=\"http://httpd.apache.org\">Apache</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Open_Transport\">Open Transport</a></li>\n<li><a href=\"https://itunes.apple.com/us/app/xcode/id497799835?mt=12\">Xcode</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/WebObjects\">WebObjects</a></li>\n<li><a href=\"http://www.java.com/en/\">Java</a></li>\n<li><a href=\"http://www.friday.com/bbum/\">Bill Bumgarner</a></li>\n<li><a href=\"https://developer.apple.com/library/ios/documentation/Cocoa/Conceptual/ProgrammingWithObjectiveC/CustomizingExistingClasses/CustomizingExistingClasses.html\">Objective-C categories</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Tunneling_protocol\">SSH tunnels</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1999\">1999</a></li>\n<li><a href=\"https://www.redmond.gov\">Redmond</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2000\">2000</a></li>\n<li><a href=\"http://www.cantwell.senate.gov/\">Maria Cantwell</a></li>\n<li><a href=\"http://www.kingcounty.gov\">King County</a></li>\n<li><a href=\"http://www.co.pierce.wa.us\">Pierce County</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/List_of_U.S._state_partition_proposals#Washington\">Eastern Washington secession</a></li>\n<li><a href=\"http://www.cityofshoreline.com\">Shoreline</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Queen_Anne,_Seattle\">Queen Anne</a></li>\n<li><a href=\"http://www.myballard.com\">Ballard</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Magnolia,_Seattle\">Magnolia</a></li>\n<li><a href=\"http://www.seattle.gov/tour/discov.htm\">Discovery Park</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Capitol_Hill_(Seattle)\">Capitol Hill</a></li>\n<li><a href=\"http://www.pagliacci.com\">Pagliacci Pizza</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2003\">2003</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Sand_Point,_Seattle\">Sand Point</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Gary_Larson\">Gary Larson</a></li>\n<li><a href=\"http://harrypotter.wikia.com/wiki/Albus_Dumbledore\">Dumbledore</a></li>\n<li><a href=\"http://www.thefarside.com\">The Far Side</a></li>\n<li><a href=\"http://www.yelp.com/biz/california-academy-of-sciences-san-francisco\">San Francisco Academy of Sciences</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Workers'_compensation\">Workmen’s Compensation</a></li>\n<li><a href=\"https://www.virginiamason.org\">Virgina Mason</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2001\">2001</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2002\">2002</a></li>\n<li><a href=\"http://waxy.org/2013/04/the_death_of_upcomingorg/\">Upcoming.org</a></li>\n<li><a href=\"http://www.seattleweekly.com\">Seattle Weekly</a></li>\n<li><a href=\"http://www.thestranger.com/seattle/dan-savage/Author?oid=259\">Dan Savage</a></li>\n<li><a href=\"http://www.robertnewman.com/merry-xmas-and-happy-new-year-from-seattles-the-rocket-magazine/\">The Rocket</a></li>\n<li><a href=\"http://therumpus.net/2012/04/the-rumpus-interview-with-lynda-barry/\">Lynda Barry</a></li>\n<li><a href=\"http://www.buzzfeed.com/summeranne/13-of-the-best-life-in-hell-comics-by-matt-groen\">Life in Hell</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Matt_Groening\">Matt Groening</a></li>\n<li><a href=\"http://www.evergreen.edu\">Evergreen State College</a></li>\n<li><a href=\"https://www.apple.com/retail/universityvillage/\">University Village Apple Store</a></li>\n<li><a href=\"http://seattlexcoders.org\">Seattle Xcoders</a></li>\n<li><a href=\"http://scripting.com\">Dave Winer</a></li>\n<li><a href=\"https://twitter.com/dlpasco\">Daniel Pasco</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/C4_(conference)\">C4</a></li>\n<li><a href=\"http://therecord.co/2014/02/28/paul_goracke\">Paul Goracke</a></li>\n<li><a href=\"http://blackpixel.com/careers.html\">Black Pixel job listings</a></li>\n</ul>",
+      "date_published": "2014-04-11T11:45:00-07:00",
+      "attachments": [
+        {
+          "url": "http://therecord.co/downloads/TheRecord-s1e8-NatIrons.m4a",
+          "mime_type": "audio/x-m4a",
+          "size_in_bytes": 57712499
+        }
+      ]
+    },
+    {
+      "id": "http://therecord.co/2014/03/28/john_chaffee",
+      "url": "http://therecord.co/2014/03/28/john_chaffee",
+      "title": "Seattle Before the iPhone #7 - John Chaffee",
+      "content_html": "<p>This episode was recorded 16 May 2013 live and in person at <a href=\"http://www.omnigroup.com/\">Omni’s</a> lovely offices overlooking Lake Union in Seattle. (Check out the <a href=\"http://www.omnigroup.com/blog/omnifocus-2-for-mac-resumes-testing-will-ship-in-june\">OmniFocus 2 public beta</a>!)</p>\n\n<p>You can <a href=\"http://therecord.co/downloads/TheRecord-s1e7-JohnChaffee.m4a\">download the m4a file</a> or <a href=\"https://itunes.apple.com/us/podcast/the-record/id791861057\">subscribe in iTunes</a>. (Or <a href=\"http://therecord.co/xml/rss.xml\">subscribe to the podcast feed</a>.)</p>\n\n<p><a href=\"https://twitter.com/ChaffeeJohn\">John Chaffee</a> is a co-founder of <a href=\"http://busymac.com/\">BusyMac</a> which makes the awesome <a href=\"http://www.busymac.com/busycal/\">BusyCal</a>. John talks about being a Mac developer in the ’90s, what it was like at Now Software, and how he got tired of mobile and came back to the Mac.</p>\n\n<p class=\"sponsor\">This episode is sponsored by <a href=\"http://squarespace.com/therecord\">Squarespace</a>. Easily create beautiful websites via drag-and-drop. Get help any time from their 24/7 technical support. Create responsive websites — ready for phones and tablets — without any extra effort: Squarespace’s designers have already handled it for you. Get 10% off by going to <a href=\"http://squarespace.com/therecord\">http://squarespace.com/therecord</a>. And, if you want to get under the hood, check out their APIs at <a href=\"http://developers.squarespace.com/\">developers.squarespace.com</a>.</p>\n\n\n\n\n<p class=\"sponsor\">This episode is also sponsored by <a href=\" http://www.windowsazure.com/en-us/develop/mobile/ios/?WT.mc_id=azurebg_us_pmm_mirluna_therecord\">Microsoft Azure Mobile Services</a>. Mobile Services is a great way to provide backend services — syncing and other things — for your iPhone, iPad, and Mac apps. If you’ve been to the website already, you’ve seen the tutorials where you input code into a browser window. And that’s an easy way to get started. But don’t be fooled: Mobile Services is deep. You can write in JavaScript in your favorite text editor and deploy via Git. Good stuff.</p>\n\n\n<p>Things we mention, in order of appearance (roughly):</p>\n\n<ul>\n<li><a href=\"http://www.busymac.com//\">BusyMac</a></li>\n<li><a href=\"http://www.busymac.com/busycal/\">BusyCal</a></li>\n<li><a href=\"http://www.macworld.com/article/1147271/nowsoftware.html\">Now Software</a></li>\n<li><a href=\"http://www.extensis.com/\">Extensis</a></li>\n<li><a href=\"http://www.netopia.com/\">Farallon</a></li>\n<li><a href=\"http://www.splashdata.com/\">SplashData</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/PhoneNet\">PhoneNet connectors</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/AppleTalk\">AppleTalk</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Berkeley_Macintosh_Users_Group\">Berkeley Mac Users Group (BMUG)</a></li>\n<li><a href=\"http://www.ci.berkeley.ca.us/Home.aspx\">Berkeley, CA</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Software_quality_assurance\">QA</a></li>\n<li><a href=\"http://en.wikipedia.org/?title=A/UX\">A/UX</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Desktop_publishing\">Desktop publishing</a></li>\n<li><a href=\"http://lowendmac.com/1989/mac-iici/\">Mac iici</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/SCSI\">SCSI</a></li>\n<li><a href=\"https://www.santabarbaraca.gov/\">Santa Barbara</a></li>\n<li><a href=\"http://www.themacstore.com/\">Mac Store</a></li>\n<li><a href=\"http://www.adobe.com/products/pagemaker/\">Pagemaker</a></li>\n<li><a href=\"http://apple-history.com/512k\">Mac 512</a></li>\n<li><a href=\"http://www.viptechnologies.net/\">VIP Technologies</a></li>\n<li><a href=\"http://www.atarimuseum.com/computers/16bits/stmenu/atarist.htm\">Atari ST</a></li>\n<li><a href=\"http://oldcomputers.net/appleiigs.html\">Apple IIgs</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Lotus_1-2-3\">Lotus 1-2-3</a></li>\n<li><a href=\"http://www.irs.gov/\">Taxes</a></li>\n<li><a href=\"http://apple-history.com/se30\">Mac SE/30</a></li>\n<li><a href=\"http://www.portlandoregon.gov/\">Portland</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/San_Francisco_Bay_Area\">Bay Area</a></li>\n<li><a href=\"http://www.sanjoseca.gov/\">San Jose</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/System_7\">System 7</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1991\">1991</a></li>\n<li><a href=\"http://tidbits.com/article/875\">Now Utilities</a></li>\n<li><a href=\"http://www.busymac.com/about.html\">Dave Riggle</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Claris\">Claris</a></li>\n<li><a href=\"http://m.youtube.com/watch?v=ZS2wTH_nZWI\">MacWrite</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/FileMaker\">Filemaker Pro</a></li>\n<li><a href=\"http://info.filemaker.com/Bento_Statement.html\">Bento</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1990\">1990</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Macworld/iWorld\">Macworld Expo</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/History_of_the_floppy_disk\">Floppy disks</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Calendar_(application)\">iCal</a></li>\n<li><a href=\"https://sites.google.com/site/nowsoftwarecom/download\">Now Up-to-Date</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=PEHNrqPkefI\">Macworld Expo Boston</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/CompuServe\">Compuserve</a></li>\n<li><a href=\"http://windows.microsoft.com/en-us/windows/home\">Windows</a></li>\n<li><a href=\"http://www.altura.com/portfolio.php\">Altura Mac2Win</a></li>\n<li><a href=\"http://www.qualcomm.com/\">Qualcomm</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Osborne_effect\">Osborne Effect</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Dot-com_bubble\">Dotcom Bubble</a></li>\n<li><a href=\"https://www.youtube.com/watch?v=NHjf9rGgGQQ\">Aldus Fetch</a></li>\n<li><a href=\"http://www.quark.com/\">Quark</a></li>\n<li><a href=\"http://www.macmall.com/\">MacMall</a></li>\n<li><a href=\"http://www.ononesoftware.com/\">OnOne Software</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1999\">1999</a></li>\n<li><a href=\"http://www.adobe.com/products/indesign.html\">Adobe InDesign</a></li>\n<li><a href=\"http://apple.wikia.com/wiki/OpenDoc\">OpenDoc</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/OS_X\">Mac OS X</a></li>\n<li><a href=\"http://oreilly.com/pub/a/mac/2001/05/23/cocoa_vs_carbon.html\">Carbon</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/documentation/cocoa/reference/applicationkit/objc_classic/_index.html\">AppKit</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/NetNewsWire\">NetNewsWire</a></li>\n<li><a href=\"http://www.imdb.com/title/tt0151804/\">Office Space</a></li>\n<li><a href=\"http://www.gettyimages.com/\">Getty Images</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/PhotoDisc\">PhotoDisx</a></li>\n<li><a href=\"http://www.imdb.com/title/tt0062622/\">2001</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Palm_(PDA)\">Palm PDA</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Handspring_(company)\">Handspring Visor</a></li>\n<li><a href=\"http://www.palmgear.com//\">PalmGear</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Handango\">Handango</a></li>\n<li><a href=\"http://www.splashdata.com/splashphoto/palm/\">SplashPhoto</a></li>\n<li><a href=\"http://www.splashdata.com/splashmoney/\">SplashMoney</a></li>\n<li><a href=\"http://www.splashdata.com/splashid/\">SplashID</a></li>\n<li><a href=\"http://www.splashdata.com/splashshopper/\">SplashShopper</a></li>\n<li><a href=\"http://www.splashdata.com/splashwallet/\">SplashWallet</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Windows_Mobile\">Windows Mobile</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Symbian\">Symbian</a></li>\n<li><a href=\"http://www.android.com/\">Android</a></li>\n<li><a href=\"http://splashdata.com/press/PR050214.htm\">SplashBlog</a></li>\n<li><a href=\"http://instagram.com/\">Instagram</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2006\">2006</a></li>\n<li><a href=\"http://www.sixapart.com/\">SixApart</a></li>\n<li><a href=\"http://movabletype.org/\">Movable Type</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2007\">2007</a></li>\n<li><a href=\"http://www.apple.com/osx/apps/app-store.html\">Mac App Store</a></li>\n<li><a href=\"http://www.busymac.com/\">BusyCal, LLC</a></li>\n<li><a href=\"https://www.google.com/\">Google</a></li>\n<li><a href=\"https://developer.apple.com/wwdc/\">WWDC</a></li>\n<li><a href=\"http://cyber.law.harvard.edu/rss/rss.html\">RSS</a></li>\n<li><a href=\"https://discussions.apple.com/thread/4135311?start=285&\">Safari/RSS</a></li>\n<li><a href=\"http://googleblog.blogspot.com.au/2013/03/a-second-spring-of-cleaning.html\">Google (Partly) Shuts Down CalDAV</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/MobileMe\">MobileMe</a></li>\n<li><a href=\"http://support.apple.com/kb/HT5847\">SyncServices</a></li>\n<li><a href=\"https://www.icloud.com/\">iCloud</a></li>\n<li><a href=\"https://developer.apple.com/app-sandboxing/\">Sandboxing</a></li>\n<li><a href=\"http://www.jcpenney.com/\">JCPenney’s</a></li>\n<li><a href=\"http://www.apple.com/pr/library/2008/12/16Apple-Announces-Its-Last-Year-at-Macworld.html\">Apple Pulls out of Macworld</a></li>\n<li><a href=\"https://twitter.com/\">Twitter</a></li>\n<li><a href=\"https://www.apple.com/airplay/\">AirPlay</a></li>\n<li><a href=\"http://www.apple.com/appletv/\">Apple TV</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Type_A_and_Type_B_personality_theory\">Type A Personality</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Domain_Name_System\">Domain Name System</a></li>\n<li><a href=\"http://www.macworld.com/article/1135218/busysync216.html\">BusySync</a></li>\n<li><a href=\"http://kb.hpwebos.com/wps/portal/kb/common/article/2630_en.html\">HotSync</a></li>\n<li><a href=\"http://www.objc.io/issue-10/icloud-core-data.html\">iCloud Core Data Syncing</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/documentation/General/Conceptual/iCloudDesignGuide/Chapters/DesigningForKey-ValueDataIniCloud.html\">iCloud Key/Value Storage</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Exchange_ActiveSync\">ActiveSync</a></li>\n<li><a href=\"http://msdn.microsoft.com/en-us/library/office/dd877045(v=exchg.140).aspx\">ExchangeWebService</a></li>\n<li><a href=\"http://us.blackberry.com/\">Blackberry</a></li>\n</ul>",
+      "date_published": "2014-03-28T11:00:00-07:00",
+      "attachments": [
+        {
+          "url": "http://therecord.co/downloads/TheRecord-s1e7-JohnChaffee.m4a",
+          "mime_type": "audio/x-m4a",
+          "size_in_bytes": 56949803
+        }
+      ]
+    },
+    {
+      "id": "http://therecord.co/2014/03/14/tim_wood",
+      "url": "http://therecord.co/2014/03/14/tim_wood",
+      "title": "Seattle Before the iPhone #6 - Tim Wood",
+      "content_html": "<p>This episode was recorded 17 May 2013 live and in person at <a href=\"http://www.omnigroup.com/\">Omni’s</a> lovely offices overlooking Lake Union in Seattle.</p>\n\n<p>You can <a href=\"http://therecord.co/downloads/TheRecord-s1e6-TimWood.m4a\">download the m4a file</a> or <a href=\"https://itunes.apple.com/us/podcast/the-record/id791861057\">subscribe in iTunes</a>. (Or <a href=\"http://therecord.co/xml/rss.xml\">subscribe to the podcast feed</a>.)</p>\n\n<p><a href=\"https://twitter.com/tjw\">Tim Wood</a>, CTO of <a href=\"https://www.omnigroup.com/\">The Omni Group</a>, talks about how Omni got started and what it was like being a NeXT developer before the acquisition.</p>\n\n<p class=\"sponsor\">This episode is sponsored by <a href=\"http://squarespace.com/therecord\">Squarespace</a>. Easily create beautiful websites via drag-and-drop. Get help any time from their 24/7 technical support. Create responsive websites — ready for phones and tablets — without any extra effort: Squarespace’s designers have already handled it for you. Get 10% off by going to <a href=\"http://squarespace.com/therecord\">http://squarespace.com/therecord</a>. And, if you want to get under the hood, check out their APIs at <a href=\"http://developers.squarespace.com/\">developers.squarespace.com</a>.</p>\n\n\n\n\n<p class=\"sponsor\">This episode is also sponsored by <a href=\" http://www.windowsazure.com/en-us/develop/mobile/ios/?WT.mc_id=azurebg_us_pmm_mirluna_therecord\">Microsoft Azure Mobile Services</a>. Mobile Services is a great way to provide backend services — syncing and other things — for your iPhone, iPad, and Mac apps. If you’ve been to the website already, you’ve seen the tutorials where you input code into a browser window. And that’s an easy way to get started. But don’t be fooled: Mobile Services is deep. You can write in your favorite text editor and deploy via Git. Regular-old Git, not Git#++. Git.</p>\n\n\n<p>Things we mention, in order of appearance (more or less):</p>\n\n<p><li><a href=\"http://oldcomputers.net/atari800.html\">Atari 800</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/BASIC\">BASIC</a></li>\n<li><a href=\"http://www.cityoftacoma.org/\">Tacoma, WA</a></li>\n<li><a href=\"http://oldcomputers.net/c64.html\">Commodore</a></li>\n<li><a href=\"http://oldcomputers.net/appleii.html\">Apple II</a></li>\n<li><a href=\"http://en.wikibooks.org/wiki/6502_Assembly\">6502 Assembler</a></li>\n<li><a href=\"http://www.atarimuseum.com/computers/16bits/stmenu/atarist.htm\">Atari ST</a></li>\n<li><a href=\"https://archive.org/details/compute-magazine\">Compute! Magazine</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Burroughs_Corporation\">Burroughs</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Mainframe_computer\">Mainframes</a></li>\n<li><a href=\"http://www.radioshack.com/\">Radio Shack</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/NeXT\">NeXT</a></li>\n<li><a href=\"http://www.apple.com/mac/\">Mac</a></li>\n<li><a href=\"https://www.washington.edu/\">University of Washington</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Zenith_Z-89\">H19 Terminal</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Fortran\">Fortran</a></li>\n<li><a href=\"http://www.wolfram.com/mathematica/\">Mathematica</a></li>\n<li><a href=\"http://www.latex-project.org/\">LaTeX</a></li>\n<li><a href=\"https://www.java.com/\">Java</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Ada_(programming_language)\">Ada</a></li>\n<li><a href=\"http://www.boeing.com/boeing/\">Boeing</a></li>\n<li><a href=\"http://www.defense.gov/\">Department of Defense</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/OpenVMS\">VMS</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/IBM_System/360\">IBM 360</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Objective-C\">Objective-C</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/documentation/cocoa/reference/applicationkit/objc_classic/_index.html\">AppKit</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Interface_Builder\">Interface Builder</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Project_Builder\">Project Builder</a></li>\n<li><a href=\"http://mrbook.org/tutorials/make/\">Makefiles</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Optical_disc_drive\">Read-write Optical drives</a></li>\n<li><a href=\"http://blog.wilshipley.com/\">Wil Shipley</a></li>\n<li><a href=\"https://twitter.com/kcase\">Ken Case</a></li>\n<li><a href=\"https://twitter.com/gregtitus\">Greg Titus</a></li>\n<li><a href=\"http://people.omnigroup.com/tom/\">Tom Bunch</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Massively_multiplayer_online_game\">Massively multiplayer games</a></li>\n<li><a href=\"https://minecraft.net/\">Minecraft</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/MOO\">MOOs</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/MUSH\">MUSHes</a></li>\n<li><a href=\"http://www.compuserve.com/‎\">CompuServe</a></li>\n<li><a href=\"http://www.uo.com/\">Ultima Online</a></li>\n<li><a href=\"http://www.wma.com/\">William Morris Agency</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Craig_McCaw\">McCaw Cellular</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1992\">1992</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Adobe_FrameMaker\">Framemaker</a></li>\n<li><a href=\"http://www.adobe.com/\">Adobe</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Lighthouse_Design\">Lighthouse Design</a></li>\n<li><a href=\"http://www.hodgesfamily.com/images/Diagram.pdf\">Diagram!</a></li>\n<li><a href=\"http://www.omnigroup.com/omnigraffle\">OmniGraffle</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1994\">1994</a></li>\n<li><a href=\"http://www.w3.org/People/Berners-Lee/WorldWideWeb.html\">www.app</a></li>\n<li><a href=\"https://www.omnigroup.com/more\">OmniWeb</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Blink_element\">Blink tag</a></li>\n<li><a href=\"http://www.imdb.com/title/tt0054524/\">Rocky &amp; Bullwinkle</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Rhapsody_(operating_system)\">Rhapsody</a></li>\n<li><a href=\"http://www.hp.com/\">Hewlett Packard</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Sun_Microsystems\">Sun</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/OpenStep\">OpenStep</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Solaris_(operating_system)\">Solaris</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Windows_NT\">Windows NT</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/BeOS\">Be</a></li>\n<li><a href=\"http://www.mondaynote.com/author/jlg/\">Jean-Louis Gasée</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Enterprise_Objects_Framework\">Enterprise Objects Framework</a></li>\n<li><a href=\"https://developer.apple.com/library/ios/documentation/Cocoa/Conceptual/CoreData/cdProgrammingGuide.html\">Core Data</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Avie_Tevanian\">Avie Tevanian</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Jon_Rubinstein\">Jon Rubinstein</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Bertrand_Serlet\">Bertrand Serlet</a></li>\n<li><a href=\"https://www.apple.com/pr/bios/craig-federighi.html\">Craig Federighi</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/AppleTalk\">Appletalk</a></li>\n<li><a href=\"http://www.roughlydrafted.com/RD/RDM.Tech.Q1.07/4B800F78-0F75-455A-9681-F186A4365805.html\">Yellow Box</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/HP-UX\">HP-UX</a></li>\n<li><a href=\"http://www.stone.com/\">Andrew Stone</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Doom_(video_game)\">Doom</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Id_Software\">Id Software</a></li>\n<li><a href=\"http://blog.wilshipley.com/2013/12/my-doom-20th-anniversary-stories.html\">Wil’s mail</a></li>\n<li><a href=\"http://www.opengl.org/\">OpenGL</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/John_D._Carmack\">John Carmack</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/DirectX\">DirectX</a></li>\n<li><a href=\"http://www.omnigroup.com/omnioutliner\">OmniOutliner</a></li>\n<li><a href=\"http://plasq.com/products/comiclife3/mac\">Comic Life</a></li>\n<li><a href=\"http://www.ncsa.illinois.edu/\">NCSA</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/documentation/performance/reference/gcd_libdispatch_ref/Reference/reference.html\">GCD</a></li>\n<li><a href=\"https://developer.apple.com/library/ios/documentation/cocoa/conceptual/Blocks/Articles/bxGettingStarted.html\">Blocks</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Functional_programming\">Functional programming</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Mac_Pro\">Mac Pro</a></li>\n<li><a href=\"http://golang.org/\">Go</a></li>\n<li><a href=\"http://www.rust-lang.org/\">Rust</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Race_condition\">Race conditions</a></li>\n<li><a href=\"https://www.omnigroup.com/omnipresence\">OmniPresence</a></li>\n<li><a href=\"https://twitter.com/tjw/status/289230416064425984\">Own the Wheel</a></li>\n<li><a href=\"http://www.objc.io/issue-10/icloud-core-data.html\">iCloud Core Data Syncing</a></li>\n<li><a href=\"https://twitter.com/siegel\">Rich Siegel</a></li>\n<li><a href=\"http://www.barebones.com/products/yojimbo/\">Yojimbo</a></li>\n<li><a href=\"http://cocoadev.com/SyncServices\">Sync Services</a></li>\n</ul></p>",
+      "date_published": "2014-03-14T13:00:00-07:00",
+      "attachments": [
+        {
+          "url": "http://therecord.co/downloads/TheRecord-s1e6-TimWood.m4a",
+          "mime_type": "audio/x-m4a",
+          "size_in_bytes": 58007122
+        }
+      ]
+    },
+    {
+      "id": "http://therecord.co/2014/02/28/paul_goracke",
+      "url": "http://therecord.co/2014/02/28/paul_goracke",
+      "title": "Seattle Before the iPhone #5 - Paul Goracke",
+      "content_html": "<p>This episode was recorded 16 May 2013 live and in person at <a href=\"http://www.omnigroup.com/\">Omni’s</a> lovely offices overlooking Lake Union in Seattle.</p>\n\n<p>You can <a href=\"http://therecord.co/downloads/TheRecord-s1e5-PaulGoracke.m4a\">download the m4a file</a> or <a href=\"https://itunes.apple.com/us/podcast/the-record/id791861057\">subscribe in iTunes</a>. (Or <a href=\"http://therecord.co/xml/rss.xml\">subscribe to the podcast feed</a>.)</p>\n\n<p><a href=\"https://twitter.com/pgor\">Paul Goracke</a> is a senior staff engineer at <a href=\"http://blackpixel.com/\">Black Pixel</a>, where he works on things he can’t talk about but that you’ve used. He’s also a former instructor at the <a href=\"http://www.pce.uw.edu/certificates/ios-mac-development.html\">University of Washington’s Cocoa development program</a>, and has at times been the lead organizer of the <a href=\"http://seattlexcoders.org/\">Seattle Xcoders</a>.</p>\n\n<p><p class=\"sponsor\">This episode is sponsored by <a href=\"http://squarespace.com/therecord\">Squarespace</a>. Get 10% off by going to <a href=\"http://squarespace.com/therecord\">http://squarespace.com/therecord</a>. Better still: <a href=\"http://beapartofit.squarespace.com\">go work for Squarespace</a>! They’re hiring 30 engineers and designers by March 15, and, “When you interview at Squarespace, we’ll invite you and your spouse or partner to be New Yorkers for a weekend—on us.” The great designers at Squarespace have designed an entire weekend for you, from dining at Alder to going to the Smalls Jazz Club and visiting The New Museum. Seriously cool deal at <a href=\"http://beapartofit.squarespace.com/\">beapartofit.squarespace.com</a>.</p>\n\n<p><p class=\"sponsor\">This episode is also sponsored by <a href=\" http://www.windowsazure.com/en-us/develop/mobile/ios/?WT.mc_id=azurebg_us_pmm_mirluna_therecord\">Microsoft Azure Mobile Services</a>. Mobile Services is a great way to provide backend services — syncing and other things — for your iPhone, iPad, and Mac apps. Write code — Javascript code — in your favorite text editor on your Mac. (Mobile Services runs Node.js.) Deploy via git. Write unit tests using mocha (or your tool of choice). Supports authenticating via Twitter, Facebook, and Google — and you can roll your own system. It’s cool.</p></p>\n\n<p>Things we mention, in order of appearance (more or less):</p>\n\n<p><ul>\n<li><a href=\"http://en.wikipedia.org/wiki/CodeWarrior\">CodeWarrior</a></li>\n<li><a href=\"http://www.toddp.com/classic/Software%20Install/Development%20Tools/001%20-%20Application%20Suites/001%20-%20CodeWarrior/CodeWarrior%202000%20(Full)/Metrowerks%20CodeWarrior/Metrowerks%20Standard%20Library/Readmes/SIOUX%20Notes\">SIOUX-WASTE</a></li>\n<li><a href=\"http://www.macgui.com/usenet/?group=53&id=81687\">TextEdit 32K limit</a></li>\n<li><a href=\"http://www.boingo.org/waste/\">WASTE</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Usenet\">Usenet</a></li>\n<li><a href=\"http://www.zoominfo.com/p/Ron-Liechty/45349900\">Metrowerks Ron</a></li>\n<li><a href=\"http://blog.hsoi.com/\">John Daub</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Compact_disc\">Compact Discs</a></li>\n<li><a href=\"http://www.adobe.com/\">Adobe</a></li>\n<li><a href=\"http://www.mactech.com/articles/mactech/Vol.16/16.07/CommandLinePorting/index.html\">MacTech on SIOUX</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/WorldScript\">WorldScript</a></li>\n<li><a href=\"http://www.unicode.org/\">Unicode</a></li>\n<li><a href=\"http://www.utf-8.com/\">UTF-8</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/PowerPC\">PowerPC</a></li>\n<li><a href=\"http://tidbits.com/article/1627\">Apprentice CDs</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/DNA_sequencer\">DNA sequencers</a></li>\n<li><a href=\"http://www.ca.gov/\">California</a></li>\n<li><a href=\"http://www.stanford.edu/\">Stanford</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/SUN_workstation\">Sun workstation</a></li>\n<li><a href=\"http://oldcomputers.net/ibm5150.html\">PC</a></li>\n<li><a href=\"http://mn.gov/portal/\">Minnesota</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Egghead_Software\">Egghead Software</a></li>\n<li><a href=\"http://searchitchannel.techtarget.com/definition/not-for-resale-NFR\">NFR copies</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/THINK_C\">Think C</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/THINK_Reference\">Think C Reference</a></li>\n<li><a href=\"http://www.amazon.com/Learn-Mac-For-OS-iOS/dp/1430245336\">Learn C on the Macintosh</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Inside_Macintosh\">Inside Mac</a></li>\n<li><a href=\"http://www.amazon.com/Macintosh-Programming-Secrets-Scott-Knaster/dp/0201581345/ref=sr_1_3?s=books&ie=UTF8&qid=1393550204&sr=1-3\">Scott Knaster book</a></li>\n<li><a href=\"http://www.amazon.com/Ultimate-Mac-Programming-Dave-Mark/dp/1568841957\">Ultimate Mac Programming Guide</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Apple_events\">Apple events</a></li>\n<li><a href=\"http://www.amazon.com/Inside-Ole-Microsoft-Programming-Series/dp/1556158432\">Inside OLE</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/4th_Dimension_(software)\">4th Dimension</a></li>\n<li><a href=\"https://twitter.com/GuyKawasaki\">Guy Kawasaki</a></li>\n<li><a href=\"http://oldcomputers.net/appleii.html\">Apple II</a></li>\n<li><a href=\"http://www.atari.com/\">Atari</a></li>\n<li><a href=\"http://oldcomputers.net/c64.html\">Commodore</a></li>\n<li><a href=\"http://www.bricklin.com/visicalc.htm\">VisiCalc</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Applesoft_BASIC\">BASIC</a></li>\n<li><a href=\"http://www.nibblemagazine.com/\">Nibble magazine</a></li>\n<li><a href=\"http://home.comcast.net/~kevin_d_clark/ems/\">Elephant Disks</a></li>\n<li><a href=\"http://stevenf.com/beagle/\">Beagle Bros.</a></li>\n<li><a href=\"https://archive.org/details/byte-magazine\">Byte</a></li>\n<li><a href=\"http://oldcomputers.net/trs80i.html\">TRS-80</a></li>\n<li><a href=\"https://archive.org/details/creativecomputing\">Creative Computing</a></li>\n<li><a href=\"http://6502.org/\">6502</a></li>\n<li><a href=\"http://cslibrary.stanford.edu/106/\">C pointers</a></li>\n<li><a href=\"http://man7.org/linux/man-pages/man3/fseek.3.html\">fseek</a></li>\n<li><a href=\"http://apple-history.com/aiie\">Apple IIe</a></li>\n<li><a href=\"http://oldcomputers.net/appleiigs.html\">Apple IIgs</a></li>\n<li><a href=\"http://www.virtualapple.org/lemonadestanddisk.html\">Lemonade Stand</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Token_ring\">Token rings</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1994\">1994</a></li>\n<li><a href=\"http://www.yelp.com/biz/the-computer-store-seattle\">The Computer Store</a></li>\n<li><a href=\"http://apple-history.com/180\">Powerbook 180</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/FileMaker\">Filemaker</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/SQL\">SQL</a></li>\n<li><a href=\"http://hypercard.org/\">HyperCard</a></li>\n<li><a href=\"http://cyan.com/games/myst/\">Myst</a></li>\n<li><a href=\"http://www.broderbund.com/\">Broderbund</a></li>\n<li><a href=\"http://www.ign.com/companies/sierra-on-line\">Sierra On-Line</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/King's_Quest\">King’s Quest</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/PowerPlant\">PowerPlant</a></li>\n<li><a href=\"http://get.adobe.com/flashplayer/\">Flash</a></li>\n<li><a href=\"http://www.w3schools.com/js/\">JavaScript</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Java_applet\">Java Applet</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Java_remote_method_invocation\">Remote Method Invocation</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Java_Native_Interface\">Java Native Interface</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Windows_NT\">Windows NT</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Classpath_(Java)\">Classpaths</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Bioinformatics\">Bioinformatics</a></li>\n<li><a href=\"http://www.perl.org/\">Perl</a></li>\n<li><a href=\"http://stackoverflow.com/questions/8023959/why-use-strict-and-warnings\">use strict</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Berkeley_DB\">Berkeley DB</a></li>\n<li><a href=\"http://www.mysql.com/\">MySQL</a></li>\n<li><a href=\"http://www.redhat.com/\">RedHat Linux</a></li>\n<li><a href=\"http://www.gnu.org/software/emacs/\">Emacs</a></li>\n<li><a href=\"http://quartzcomposer.com/\">Quartz Composer</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Grok\">Grok</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Forth_(programming_language)\">Forth</a></li>\n<li><a href=\"http://seattlexcoders.org/\">Seattle Xcoders</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2004\">2004</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2005\">2005</a></li>\n<li><a href=\"http://nscodernight.com/\">NSCoder Night</a></li>\n<li><a href=\"http://cocoaheads.org/\">CocoaHeads</a></li>\n<li><a href=\"http://www.folklore.org/StoryView.py?story=Pirate_Flag.txt\">Pirate flag</a></li>\n<li><a href=\"http://www.amazon.com/Advanced-Programming-Edition-Core-Unix/dp/0974078514\">Advanced Mac OS X Programming book</a></li>\n<li><a href=\"http://shapeof.com/\">Gus Mueller</a></li>\n<li><a href=\"http://www.geekwire.com/2011/roguesheep-ceo-chris-parrish-leaves-flock/\">Rogue Sheep</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Macintosh_Business_Unit\">MacBU</a></li>\n<li><a href=\"http://www.omnigroup.com/\">OmniGroup</a></li>\n<li><a href=\"http://www.dbug.org/\">dBug</a></li>\n<li><a href=\"https://twitter.com/lllucas\">Lucas Newman</a></li>\n<li><a href=\"https://twitter.com/bmf\">Mike Lee</a></li>\n<li><a href=\"http://blog.wilshipley.com/\">Wil Shipley</a></li>\n<li><a href=\"http://gigaom.com/2008/07/22/seattle-xcoders-coverage-golden-braeburn/\">Golden Braeburn</a></li>\n<li><a href=\"https://twitter.com/heckj\">Joe Heck</a></li>\n<li><a href=\"https://twitter.com/halm\">Hal Mueller</a></li>\n<li><a href=\"https://developer.apple.com/wwdc/\">WWDC</a></li>\n<li><a href=\"http://www.yelp.com/biz/luau-polynesian-lounge-seattle\">Luau</a></li>\n<li><a href=\"http://sfmacindie.com/\">SFMacIndie Party</a></li>\n<li><a href=\"http://www.jillianssf.com/\">Jillian’s</a></li>\n<li><a href=\"http://arstechnica.com/author/jacqui-cheng/\">Jacqui Cheng</a></li>\n<li><a href=\"http://blog.clintecker.com/\">Clint Ecker</a></li>\n<li><a href=\"http://kickingbear.com/blog/\">Guy English</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/C4_(conference)\">C4</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/NeXT\">NeXT</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/BeOS\">BeOS</a></li>\n<li><a href=\"https://www.washington.edu/facilities/finadmin/movingandsurplus/inventory/\">UW Salvage</a></li>\n<li><a href=\"http://subversion.apache.org/\">Subversion</a></li>\n<li><a href=\"http://versionsapp.com/\">Versions</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/John_Flansburgh\">John Flansburgh</a></li>\n<li><a href=\"http://www.noside.com/\">Northside</a></li>\n</ul></p>",
+      "date_published": "2014-02-28T11:40:00-08:00",
+      "attachments": [
+        {
+          "url": "http://therecord.co/downloads/TheRecord-s1e5-PaulGoracke.m4a",
+          "mime_type": "audio/x-m4a",
+          "size_in_bytes": 57269955
+        }
+      ]
+    },
+    {
+      "id": "http://therecord.co/2014/02/14/gus_mueller",
+      "url": "http://therecord.co/2014/02/14/gus_mueller",
+      "title": "Seattle Before the iPhone #4 - Gus Mueller",
+      "content_html": "<p>This episode was recorded 17 May 2013 live and in person at <a href=\"http://www.omnigroup.com/\">Omni’s</a> lovely offices overlooking Lake Union in Seattle.</p>\n\n<p>You can <a href=\"http://therecord.co/downloads/TheRecord-s1e4-GusMueller.m4a\">download the m4a file</a> or <a href=\"https://itunes.apple.com/us/podcast/the-record/id791861057\">subscribe in iTunes</a>. (Or <a href=\"http://therecord.co/xml/rss.xml\">subscribe to the podcast feed</a>.)</p>\n\n<p>Gus Mueller, <a href=\"http://www.flyingmeat.com/\">Flying Meat</a> founder, created VoodooPad (now at <a href=\"https://plausible.coop/voodoopad/\">Plausible Labs</a>) and <a href=\"http://www.flyingmeat.com/acorn/\">Acorn</a>, the image editor for humans. Gus is also responsible for open source software such as <a href=\"https://github.com/ccgus/fmdb\">FMDB</a> and <a href=\"http://jstalk.org/\">JSTalk</a>.</p>\n\n<p><p class=\"sponsor\">This episode is sponsored by <a href=\"http://squarespace.com/therecord\">Squarespace</a>. Get 10% off by going to <a href=\"http://squarespace.com/therecord\">http://squarespace.com/therecord</a>. Better still: <a href=\"http://beapartofit.squarespace.com\">go work for Squarespace</a>! They’re hiring 30 engineers and designers by March 15, and, “When you interview at Squarespace, we’ll invite you and your spouse or partner to be New Yorkers for a weekend—on us.” The great designers at Squarespace have designed an entire weekend for you, from dining at Alder to going to the Smalls Jazz Club and visiting The New Museum. Seriously cool deal at <a href=\"http://beapartofit.squarespace.com/\">beapartofit.squarespace.com</a>.</p>\n\n<p><p class=\"sponsor\">This episode is also sponsored by <a href=\" http://www.windowsazure.com/en-us/develop/mobile/ios/?WT.mc_id=azurebg_us_pmm_mirluna_therecord\">Microsoft Azure Mobile Services</a>. Mobile Services is a great way to provide backend services — syncing and other things — for your iPhone, iPad, and Mac apps. Write code — Javascript code — in your favorite text editor on your Mac. (Mobile Services runs Node.js.) Deploy via git. Write unit tests using mocha (or your tool of choice). Supports authenticating via Twitter, Facebook, and Google — and you can roll your own system. It’s cool.</p></p>\n\n<p>Things we mention, in order of appearance (more or less):</p>\n\n<p><ul>\n<li><a href=\"http://en.wikipedia.org/wiki/Rock_climbing\">Rock climbing</a></li>\n<li><a href=\"http://therecord.co/2014/01/03/luke_adamson\">Luke Adamson</a></li>\n<li><a href=\"http://www.mo.gov/\">Missouri</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2001\">2001</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2002\">2002</a></li>\n<li><a href=\"https://developer.apple.com/technologies/mac/cocoa.html\">Cocoa</a></li>\n<li><a href=\"http://oldcomputers.net/appleiic.html\">Apple IIc</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1993\">1993</a></li>\n<li><a href=\"http://apple-history.com/colorclassic\">Mac Color Classic</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/BASIC\">BASIC</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/ELIZA\">ELIZA</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Artificial_intelligence\">Artificial Intelligence</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Assembly_language\">Assembler</a></li>\n<li><a href=\"http://www.missilecommand.com/\">Missile Command</a></li>\n<li><a href=\"https://www.java.com/\">Java</a></li>\n<li><a href=\"http://www.linkedin.com/pub/eric-albert/1/610/402\">Eric Albert</a></li>\n<li><a href=\"http://www.perl.org/\">Perl</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Graphics_Interchange_Format\">Animated GIFs</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Common_Gateway_Interface\">CGIs</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Push_technology\">Server push images</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Xojo\">REALBasic</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Personal_computer\">PC</a></li>\n<li><a href=\"http://apple-history.com/aiie\">Apple IIe</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/DOS\">DOS</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Colossal_Cave_Adventure\">Colossal Caves</a></li>\n<li><a href=\"http://rickadams.org/adventure/walkthroughs/walkthrough.html\">Plover</a></li>\n<li><a href=\"http://www.nibblemagazine.com/\">Nibble</a></li>\n<li><a href=\"http://www.civilization.com/\">Civilization</a></li>\n<li><a href=\"http://www.unix.org/\">UNIX</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/IBM_AIX\">AIX</a></li>\n<li><a href=\"http://en.wikipedia.org/?title=A/UX\">A/UX</a></li>\n<li><a href=\"https://stlouis-mo.gov/\">St. Louis</a></li>\n<li><a href=\"http://www.gocolumbiamo.com/\">Columbia</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Barbie\">Math is hard</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Single_sign-on\">Single sign-on</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Java_Servlet\">Servlets</a></li>\n<li><a href=\"https://www.apple.com/osx/\">OS X</a></li>\n<li><a href=\"https://developer.apple.com/wwdc/\">WWDC</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Rhapsody_(operating_system)\">Rhapsody</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1995\">1995</a></li>\n<li><a href=\"http://projects.pudge.net/\">MacPERL</a></li>\n<li><a href=\"http://asg.andrew.cmu.edu/andrew2/dist/niftytelnet.html\">NiftyTelnet</a></li>\n<li><a href=\"http://www.barebones.com/products/bbedit/\">BBEdit</a></li>\n<li><a href=\"http://flyingmeat.com/flysketch/\">FlySketch</a></li>\n<li><a href=\"http://www.marco.org/\">Coffee</a></li>\n<li><a href=\"http://www.artyfactory.com/art_appreciation/animals_in_art/pablo_picasso.htm\">Picasso’s bull sketches</a></li>\n<li><a href=\"https://plausible.coop/voodoopad/\">VoodooPad</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Apple_Cinema_Display\">22\" Cinema Display</a></li>\n<li><a href=\"http://www.macdevcenter.com/pub/a/mac/developer/2003/07/10/innovators.html\">OS X Innovator’s Award</a></li>\n<li><a href=\"http://www.oreilly.com/\">O’Reilly</a></li>\n<li><a href=\"http://www.stairways.com/main/\">Peter Lewis</a></li>\n<li><a href=\"https://twitter.com/siegel\">Rich Siegel</a></li>\n<li><a href=\"http://latenightsw.com/blog/\">Mark Aldritt</a></li>\n<li><a href=\"http://www.ambrosiasw.com/\">Ambrosia</a></li>\n<li><a href=\"http://panic.com/\">Panic</a></li>\n<li><a href=\"http://panic.com/transmit/\">Transmit</a></li>\n<li><a href=\"http://panic.com/audion/\">Audion</a></li>\n<li><a href=\"http://conferences.oreillynet.com/macosx2004/\">O’Reilly Mac OS Conference</a></li>\n<li><a href=\"http://www.rogueamoeba.com/audiohijackpro/\">Audio Hijack</a></li>\n<li><a href=\"http://onefoottsunami.com/\">Paul Kafasis</a></li>\n<li><a href=\"http://www.codingmonkeys.de/subethaedit/\">SubEthaEdit</a></li>\n<li><a href=\"https://www.apple.com/mac-pro/\">Mac Pro</a></li>\n<li><a href=\"http://www.ireland.com/\">Ireland</a></li>\n<li><a href=\"http://www.xml.com/axml/testaxml.htm\">XML</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Portable_Document_Format\">PDF</a></li>\n<li><a href=\"http://www.victoriassecret.com/\">Victoria’s Secret</a></li>\n<li><a href=\"http://www.cat.com/\">Caterpillar</a></li>\n<li><a href=\"http://www.adobe.com/products/indesign.html\">Adobe InDesign</a></li>\n<li><a href=\"http://www.apple.com/osx/server/\">OS X Server</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Xserve\">Xserve</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Power_Mac_G5\">Macintosh G5</a></li>\n<li><a href=\"https://www.macupdate.com/\">MacUpdate</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/VersionTracker\">VersionTracker</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/QuickDraw\">QuickDraw</a></li>\n<li><a href=\"http://web.mit.edu/~kerberos/\">Kerberos</a></li>\n<li><a href=\"http://arstechnica.com/apple/2012/05/25-years-of-hypercard-the-missing-link-to-the-web/\">HyperCard</a></li>\n<li><a href=\"https://www.mikeash.com/pyblog/friday-qa-2009-03-20-objective-c-messaging.html\">Objective-C messaging system</a></li>\n<li><a href=\"http://www.amazon.com/Cocoa-Programming-Mac-4th-Edition/dp/0321774086\">Aaron Hillegass’s book</a></li>\n<li><a href=\"http://cocoadev.com/JavaBridge\">Java-Cocoa bridge</a></li>\n<li><a href=\"http://www.oracle.com/technetwork/java/javase/jdbc/index.html\">JDBC</a></li>\n<li><a href=\"http://docs.oracle.com/cd/B19306_01/server.102/b14220/intro.htm\">Oracle databases</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2005\">2005</a></li>\n<li><a href=\"http://www.seattle.gov/default.aspx\">Seattle</a></li>\n<li><a href=\"http://microsoft.com/\">Microsoft</a></li>\n<li><a href=\"http://www.youtube.com/watch?v=jW3PFC86UNI&feature=kp\">Parents Just Don’t Understand</a></li>\n<li><a href=\"https://vancouver.ca/\">Vancouver, BC</a></li>\n<li><a href=\"http://www.bbking.com/\">B.B. King</a></li>\n<li><a href=\"http://seattlexcoders.org/\">Seattle Xcoders</a></li>\n<li><a href=\"https://twitter.com/heckj\">Joe Heck</a></li>\n<li><a href=\"http://missouri.edu/\">University of Missouri</a></li>\n<li><a href=\"https://archive.org/details/EveningAtAdler\">Evening at Adler</a></li>\n<li><a href=\"http://blog.wilshipley.com/\">Wil Shipley</a></li>\n<li><a href=\"http://bitsplitting.org/\">Daniel Jalkut</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Fire_(instant_messaging_client)\">Eric Peyton</a></li>\n<li><a href=\"http://qsapp.com/\">Quicksilver</a></li>\n<li><a href=\"https://twitter.com/rosyna\">Rosyna</a></li>\n<li><a href=\"http://www.cityofchicago.org/city/en.html\">Chicago</a></li>\n<li><a href=\"http://drunkenblog.com/\">Drunkenbatman</a></li>\n<li><a href=\"http://www.adlerplanetarium.org/\">Adler Planetarium</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/C4_(conference)\">C4</a></li>\n<li><a href=\"http://rentzsch.tumblr.com/\">Wolf</a></li>\n<li><a href=\"http://iamthewalr.us/\">Colin Barrett</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Delicious_Generation\">Delicious Generation</a></li>\n<li><a href=\"http://www.discoapp.com/\">Disco.app</a></li>\n<li><a href=\"http://forums.macrumors.com/showthread.php?t=481368\">My Dream App</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Camino\">Chimera / Camino</a></li>\n<li><a href=\"http://santaclaraca.gov/\">Santa Clara</a></li>\n<li><a href=\"http://worldwrapps.com/\">World Wrapps</a></li>\n<li><a href=\"http://log.scifihifi.com/\">Buzz Andersen</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/documentation/GraphicsImaging/Conceptual/drawingwithquartz2d/Introduction/Introduction.html\">Quartz</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/documentation/graphicsimaging/reference/CoreImageFilterReference/Reference/reference.html\">Core Image Filters</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Bézier_curve\">Bezier curves</a></li>\n<li><a href=\"http://www.wacom.com/\">Wacom</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Unit_testing\">Unit tests</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Build_automation\">Automated builds</a></li>\n<li><a href=\"http://borkwarellc.wordpress.com/2007/10/26/zerolink-rest-in-pieces/\">ZeroLink</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/CodeWarrior\">Metrowerks CodeWarrior</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/NeXT\">NeXT</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/BeOS\">BeOS</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Macintosh_Performa\">Macintosh Performa</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Display_PostScript\">Display Postscript</a></li>\n<li><a href=\"http://www.sgi.com/\">SGIs</a></li>\n<li><a href=\"http://www.flickr.com/photos/johnhanna/2141573873/\">Sun boxes</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Mac_OS_8\">Mac OS 8</a></li>\n<li><a href=\"https://www.tenon.com/products/machten/\">MachTen</a></li>\n<li><a href=\"http://home.mcom.com/MCOM/products_docs/client.html\">Netscape</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Internet_Explorer_for_Mac\">Internet Explorer for Mac OS</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Outlook_Express\">Outlook Express</a></li>\n<li><a href=\"http://www.omnigroup.com/\">OmniGroup</a></li>\n<li><a href=\"http://shakespeares.com/\">Shakespeare’s pizza</a></li>\n<li><a href=\"http://www.pagliacci.com/\">Pagliacci</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Neapolitan_pizza\">Neapolitan pizza</a></li>\n<li><a href=\"http://www.ci.everett.wa.us/\">Everett</a></li>\n<li><a href=\"http://www.verizon.com/home/fios/\">FIOS</a></li>\n<li><a href=\"http://www.fender.com/guitars/stratocaster/\">Fender Stratocaster</a></li>\n<li><a href=\"https://www.apple.com/mac/garageband/\">GarageBand</a></li>\n<li><a href=\"http://audiob.us/\">AudioBus</a></li>\n<li><a href=\"http://www.photoshop.com/\">Adobe Photoshop</a></li>\n<li><a href=\"http://www.adobe.com/products/photoshop-elements.html\">Adobe Photoshop Elements</a></li>\n<li><a href=\"http://jstalk.org/\">JSTalk</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/documentation/AppleScript/Conceptual/AppleScriptX/AppleScriptX.html\">AppleScript</a></li>\n<li><a href=\"http://www.sqlite.org/\">SQLite</a></li>\n<li><a href=\"http://www.webkit.org/\">WebKit</a></li>\n<li><a href=\"http://aged-and-distilled.com/napkin/\">Napkin</a></li>\n</ul></p>",
+      "date_published": "2014-02-14T10:00:00-08:00",
+      "attachments": [
+        {
+          "url": "http://therecord.co/downloads/TheRecord-s1e4-GusMueller.m4a",
+          "mime_type": "audio/x-m4a",
+          "size_in_bytes": 60579155
+        }
+      ]
+    },
+    {
+      "id": "http://therecord.co/2014/01/31/greg_robbins",
+      "url": "http://therecord.co/2014/01/31/greg_robbins",
+      "title": "Seattle Before the iPhone #3 - Greg Robbins",
+      "content_html": "<p>This episode was recorded 16 May 2013 live and in person at <a href=\"http://www.omnigroup.com/\">Omni’s</a> offices overlooking Lake Union in Seattle.</p>\n\n<p>You can <a href=\"http://therecord.co/downloads/TheRecord-s1e3-GregRobbins.m4a\">download the m4a file</a> or <a href=\"https://itunes.apple.com/us/podcast/the-record/id791861057\">subscribe in iTunes</a>. (Or <a href=\"http://therecord.co/xml/rss.xml\">subscribe to the podcast feed</a>.)</p>\n\n<p>Greg Robbins is Graphing Calculator co-author (<a href=\"http://www.pacifict.com/Story/\">a story you should already know about</a>, that we don’t go over again) and has done such diverse things as bringing translucency to the Mac OS Drag Manager (way back in the ’90s), and writing an open source <a href=\"http://googlemac.blogspot.com/2011/08/new-objective-c-library-for-new.html\">Objective-C library for Google Data APIs</a>. You can follow <a href=\"https://twitter.com/grob\">Greg on Twitter</a>.</p>\n\n<p class=\"sponsor\">This episode is sponsored by <a href=\"http://squarespace.com/therecord\">Squarespace</a>. Easily create beautiful websites via drag-and-drop. Get help any time from their 24/7 technical support. Create responsive websites — ready for phones and tablets — without any extra effort: Squarespace’s designers have already handled it for you. Get 10% off by going to <a href=\"http://squarespace.com/therecord\">http://squarespace.com/therecord</a>. And, if you want to get under the hood, check out their APIs at <a href=\"http://developers.squarespace.com/\">developers.squarespace.com</a>.</p>\n\n\n\n\n<p class=\"sponsor\">This episode is also sponsored by <a href=\" http://www.windowsazure.com/en-us/develop/mobile/ios/?WT.mc_id=azurebg_us_pmm_mirluna_therecord\">Microsoft Azure Mobile Services</a>. Mobile Services is a great way to provide backend services — syncing and other things — for your iPhone, iPad, and Mac apps. If you’ve been to the website already, you’ve seen the tutorials where you input code into a browser window. And that’s an easy way to get started. But don’t be fooled: Mobile Services is deep. You can write in your favorite text editor and deploy via Git. Regular-old Git, not Git#++. Git.</p>\n\n\n<p>Things we mention, in order of appearance (pretty much):</p>\n\n<ul>\n<li><a href=\"http://www.real.com/\">Real Networks</a></li>\n<li><a href=\"http://www.pacifict.com/Story/\">Graphing Calculator</a></li>\n<li><a href=\"https://www.google.com/\">Google</a></li>\n<li><a href=\"http://www.thisamericanlife.org/radio-archives/episode/284/transcript\">Ira Glass on Graphing Calculator</a></li>\n<li><a href=\"http://books.google.com/books?id=LKkZ3TC-wScC&pg=PA1359&lpg=PA1359&dq=mac+drag+manager+translucency&source=bl&ots=smAKSBsSI7&sig=guFPXLs1c2VmwCKRpBD33uZWojU&hl=en&sa=X&ei=LeTqUoqWH4vwoASziYGQAw&ved=0CCkQ6AEwAQ#v=onepage&q=mac%20drag%20manager%20translucency&f=false\">Drag Manager Translucency</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/History_of_Mac_OS#System_7\">Mac OS 7.5.3</a></li>\n<li><a href=\"https://developer.apple.com/legacy/library/documentation/Carbon/reference/Drag_Manager/drag_manager_ref.pdf\">Drag Manager</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Alpha_compositing\">Alpha channels</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/documentation/GraphicsImaging/Conceptual/drawingwithquartz2d/Introduction/Introduction.html\">Quartz</a></li>\n<li><a href=\"http://www.mactech.com/articles/develop/issue_06/Othmer_text_.html\">CopyBits</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Monochrome_monitor\">Black and white displays</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Motorola_68000_family\">68K computers</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/PowerPC\">PowerPC</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Bit_blit\">Blitting</a></li>\n<li><a href=\"http://www.macobserver.com/images/features/macos8/deskpictures.gif\">Desktop Pictures</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1995\">1995</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/NeXT\">NeXT</a></li>\n<li><a href=\"http://www.omnigroup.com\">Omni</a></li>\n<li><a href=\"http://www.swansontec.com/sprogram.html\">Assembly language</a></li>\n<li><a href=\"https://developer.apple.com/support/technical/\">DTS</a></li>\n<li><a href=\"http://oldcomputers.net/apple-newton.html\">Newton</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Teleprinter\">Teletypes</a></li>\n<li><a href=\"http://www.lawrencehallofscience.org\">Berkeley’s Lawrence Hall of Science</a></li>\n<li><a href=\"http://oldcomputers.net/appleii.html\">Apple II</a></li>\n<li><a href=\"http://www.youtube.com/watch?v=4aeETEoNfOg\">1979</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Mainframe_computer\">Mainframe</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Concentration_(game_show)\">Concentration</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Busboy\">Busboy</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Nolo.com\">Nolo Press</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/ComputerLand\">ComputerLand</a></li>\n<li><a href=\"http://stevenf.com/beagle/\">Beagle Bros.</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Integer_BASIC\">Integer BASIC</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Apple_80-Column_Text_Card\">80-column cards</a></li>\n<li><a href=\"http://oldcomputers.net/appleii.html\">Apple II Plus</a></li>\n<li><a href=\"http://www.applelogic.org/UserManuals.html\">Apple II Technical Manual</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Homebrew_Computer_Club\">Homebrew computers</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Electromagnetic_interference\">RF Interference</a></li>\n<li><a href=\"http://oldcomputers.net/appleiigs.html\">Apple II GS</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/TRS-80\">Non-Apple Machines</a></li>\n<li><a href=\"http://en.wikibooks.org/wiki/6502_Assembly\">6502 Assembly</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Missile_Command\">Missile Command</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1992\">1992</a></li>\n<li><a href=\"http://www.nasa.gov/\">NASA</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Artificial_neural_network\">Neural networks</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Robert_Hecht-Nielsen\">Robert Hecht-Nielsen</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1980s\">1980s</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Speech_recognition\">Voice recognition</a></li>\n<li><a href=\"http://eospso.gsfc.nasa.gov\">Earth Observing System</a></li>\n<li><a href=\"http://www.nasa.gov/centers/goddard/home/\">Goddard Space Flight Center</a></li>\n<li><a href=\"http://www.macusenet.com/\">comp.sys.mac</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Pascal_(programming_language)\">Pascal</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/C_(programming_language)\">C</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Macintosh_Programmer%27s_Workshop\">Macintosh Progammers Workshop (MPW)</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/THINK_C\">Lightspeed C / THINK C</a></li>\n<li><a href=\"http://www.danielsays.com/ss-gallery-macintosh-thinks-lightspeed-pascal-10.html\">Lightspeed Pascal</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/CodeWarrior\">CodeWarrior</a></li>\n<li><a href=\"http://lowendmac.com/roundtable/12rt/026-powerpc-transition.html\">PowerPC transition</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Macintosh_Toolbox\">Toolbox</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Inside_Macintosh\">Inside Mac</a></li>\n<li><a href=\"http://www.amazon.com/Macintosh-Programmers-Toolbox-Assistant-Cd-Rom/dp/0201483424\">Macintosh Programmers Toolbox Assistant</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/QuickView\">QuickView</a></li>\n<li><a href=\"http://hypercard.org/\">Hypercard</a></li>\n<li><a href=\"http://www.amazon.com/Write-Macintosh-Software-Scott-Knaster/dp/0672484293/ref=sr_1_7?s=books&ie=UTF8&qid=1391196136&sr=1-7\">How to Write Macintosh software by Scott Knaster</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1990s\">1990s</a></li>\n<li><a href=\"http://apple-history.com/emate\">eMate</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Apple_QuickTake\">Apple QuickTake</a></li>\n<li><a href=\"http://www.youtube.com/watch?v=ZYcAsOG2jaI\">Secret About Box</a></li>\n<li><a href=\"http://www.tuaw.com/2013/03/31/mac-101-easter-eggs/\">Easter eggs</a></li>\n<li><a href=\"http://www.mackido.com/EasterEggs/Breakout.html\">Breakout in 7.5</a></li>\n<li><a href=\"http://www.mackido.com/EasterEggs/Iguana.html\">Herman the Iguana</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Pointer_(computer_programming)\">Pointers</a></li>\n<li><a href=\"http://www.pacifict.com/ron/\">Ron Avitzur</a></li>\n<li><a href=\"https://www.apple.com/airplay/\">Airplay</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Front_Row_(software)\">Front Row</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Windows_Vista\">Windows Vista</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Microsoft_Office\">Microsoft Office</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Adobe_Photoshop\">Adobe Photoshop</a></li>\n<li><a href=\"http://www.seattle.gov/\">Seattle</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/RealPlayer\">RealPlayer</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1998\">1998</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Rob_Glaser\">Rob Glaser</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Macworld/iWorld\">Macworld Conference</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Extension_(Mac_OS)\">Marching extensions</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Conflict_Catcher\">Casady & Greene’s Conflict Catcher</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Carbon_(API)\">Carbon</a></li>\n<li><a href=\"https://developer.apple.com/technologies/mac/cocoa.html\">Cocoa</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2002\">2002</a></li>\n<li><a href=\"http://www.winamp.com/\">WinAmp</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Appearance_Manager\">Appearance Manager</a></li>\n<li><a href=\"http://www.lowendmac.com/thompson/06/0801.html\">Kaleidoscope</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Copland_(operating_system)\">Copland</a></li>\n<li><a href=\"http://inessential.com/2009/03/19/internetworld_spring_1997\">InternetWorld 1997</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/OpenDoc\">OpenDoc</a></li>\n<li><a href=\"http://scripting.com/\">Dave Winer</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/QuickDraw_GX\">Quickdraw GX</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Apple_Open_Collaboration_Environment\">Apple Open Collaborative Environment (AOCE)</a></li>\n<li><a href=\"http://www.apple.com/icloud/\">iCloud</a></li>\n<li><a href=\"http://llvm.org/\">LLVM</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/documentation/developertools/conceptual/InstrumentsUserGuide/Introduction/Introduction.html\">Instruments</a></li>\n<li><a href=\"http://msdn.microsoft.com/en-US/vstudio\">Microsoft Visual Studio</a></li>\n<li><a href=\"http://clang.llvm.org/docs/AutomaticReferenceCounting.html\">ARC</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/C_Sharp_(programming_language)\">C#</a></li>\n<li><a href=\"https://developer.apple.com/xcode/\">Xcode</a></li>\n<li><a href=\"https://www.eclipse.org/\">Eclipse</a></li>\n<li><a href=\"http://www.apple.com/quicktime/\">QuickTime</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Project_Builder\">Project Builder</a></li>\n<li><a href=\"https://www.macupdate.com/app/mac/24587/google-desktop\">Google Desktop</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Spotlight_(software)\">Spotlight</a></li>\n<li><a href=\"https://itunes.apple.com/us/app/google-maps/id585027354?mt=8\">Google Maps for iOS</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2005\">2005</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Macintosh_Business_Unit\">Macintosh Business Unit (MacBU)</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/RSS\">RSS</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Google_Reader\">Google Reader</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Google_Keep\">Google Keep</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Google_driverless_car\">Self-driving cars</a></li>\n<li><a href=\"http://www.google.com/glass/start/\">Google Glass</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Big_data\">Big data</a></li>\n<li><a href=\"http://googlemac.blogspot.com/2011/08/new-objective-c-library-for-new.html\">Google Data APIs for Objective-C</a></li>\n<li><a href=\"http://www.w3.org/XML/\">XML</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/OAuth\">OAuth</a></li>\n</ul>",
+      "date_published": "2014-01-31T12:00:00-08:00",
+      "attachments": [
+        {
+          "url": "http://therecord.co/downloads/TheRecord-s1e3-GregRobbins.m4a",
+          "mime_type": "audio/x-m4a",
+          "size_in_bytes": 62216126
+        }
+      ]
+    },
+    {
+      "id": "http://therecord.co/2014/01/17/john_nack",
+      "url": "http://therecord.co/2014/01/17/john_nack",
+      "title": "Seattle Before the iPhone #2 - John Nack",
+      "content_html": "<p>This episode was recorded 22 May 2013 live and in person at <a href=\"http://www.adobe.com/\">Adobe’s</a> offices in Fremont in Seattle.</p>\n\n<p>You can <a href=\"http://therecord.co/downloads/TheRecord-s1e2-JohnNack.m4a\">download the m4a file</a> or <a href=\"https://itunes.apple.com/us/podcast/the-record/id791861057\">subscribe in iTunes</a>. (Or <a href=\"http://therecord.co/xml/rss.xml\">subscribe to the podcast feed</a>.)</p>\n\n<p>John Nack is Principal Product Manager, Adobe Digital Video. <a href=\"http://blogs.adobe.com/jnack/\">He has a blog</a> (definitely worth reading, especially if you use Photoshop) and is <a href=\"https://twitter.com/jnack\">@jnack</a> on Twitter.</p>\n\n<p class=\"sponsor\">This episode is sponsored by <a href=\" http://www.windowsazure.com/en-us/develop/mobile/ios/?WT.mc_id=azurebg_us_pmm_mirluna_therecord\">Microsoft Azure Mobile Services</a>. One of the cooler features recently added is the ability to create custom APIs. Originally you were limited to standard operations on your database tables — but now you can design any API you want. This allows you to create a full REST/JSON API that’s tailored to your app, that works as efficiently as possible. (And it’s all in JavaScript. Mobile Services runs Node.js. Write your apps in your favorite text editor on your <i>Mac</i>.)</p>\n\n\n<p>Things we mention, in order of appearance (pretty much):</p>\n\n<ul>\n<li><a href=\"http://adobe.com/\">Adobe</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Adobe_LiveMotion\">LiveMotion</a></li>\n<li><a href=\"http://www.adobe.com/products/photoshop.html\">Photoshop</a></li>\n<li><a href=\"http://blogs.adobe.com/jnack/\">John’s Blog</a></li>\n<li><a href=\"http://www.vonnegut.com/\">Kurt Vonnegut</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Granfalloon\">Granfalloons</a></li>\n<li><a href=\"http://www.despair.com/\">despair.com</a></li>\n<li><a href=\"https://developer.apple.com/technologies/mac/cocoa.html\">Cocoa</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/64-bit_computing\">64-bit</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Carbon_(API)\">Carbon 64-bit</a></li>\n<li><a href=\"http://www.youtube.com/watch?v=G3J89Io28qM\">Unfrozen Cave Man</a></li>\n<li><a href=\"http://www.olivegarden.com/\">Olive Garden</a></li>\n<li><a href=\"http://www.ci.south-bend.in.us/\">South Bend, Indiana</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Tiramisu\">Tiramisu</a></li>\n<li><a href=\"http://www.catholic.org/saints/saint.php?saint_id=103\">St. Sebastian</a></li>\n<li><a href=\"http://abcnews.go.com/GMA/recipe?id=11745412\">Breadsticks</a></li>\n<li><a href=\"http://animals.nationalgeographic.com/animals/photos/monkeys/\">Monkeys</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/2005\">2005</a></li>\n<li><a href=\"http://movabletype.org/\">Movable Type</a></li>\n<li><a href=\"http://www.equilibrium.com/debabelizer/\">DeBabelizer</a></li>\n<li><a href=\"https://www.macupdate.com/app/mac/235/gifbuilder\">GifBuilder</a></li>\n<li><a href=\"http://nolobe.com/interarchy/\">Anarchie</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Nineteen_Eighty-Four\">1984</a></li>\n<li><a href=\"https://www.apple.com/mac/\">Mac</a></li>\n<li><a href=\"http://www.imdb.com/title/tt0062622/\">2001</a></li>\n<li><a href=\"http://www.algonquinhotel.com/\">Algonquin Hotel</a></li>\n<li><a href=\"http://oldcomputers.net/appleii.html\">Apple II</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/IBM_PCjr\">PCjr</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/ASCII_art\">ASCII Art</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Clip_art\">Clip Art</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Googly_eyes\">Googly Eyes</a></li>\n<li><a href=\"http://www.folklore.org/ProjectView.py?name=Macintosh&characters=Bill+Atkinson\">Bill Atkinson</a></li>\n<li><a href=\"http://www.folklore.org/StoryView.py?story=MacPaint_Evolution.txt\">MacPaint</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Rorschach_test\">Rorschach Test</a></li>\n<li><a href=\"http://oldcomputers.net/appleiigs.html\">Apple II GS</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Great_books\">Great Books</a></li>\n<li><a href=\"http://apple-history.com/840\">Quadra 840AV</a></li>\n<li><a href=\"http://www.youtube.com/watch?v=5tw454TPZtU\">Quadra Ad</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/MacroMind_Director\">Director</a></li>\n<li><a href=\"http://www.supercard.us/\">SuperCard</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Søren_Kierkegaard\">Søren Kierkegaard</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Immanuel_Kant\">Immanuel Kant</a></li>\n<li><a href=\"http://www.nd.edu/\">Notre Dame</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/American_football\">Football</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Windows_NT\">Windows NT</a></li>\n<li><a href=\"http://www.w3schools.com/html/\">HTML</a></li>\n<li><a href=\"http://www1.nyc.gov/\">New York City</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1998\">1998</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Adobe_Flash\">Flash</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Macromedia\">Macromedia</a></li>\n<li><a href=\"http://www.adobe.com/products/illustrator.html\">Illustrator</a></li>\n<li><a href=\"http://www.nrotc.navy.mil/\">Navy ROTC</a></li>\n<li><a href=\"http://www.sfgov.org/index.asp\">San Francisco</a></li>\n<li><a href=\"http://www.adobe.com/support/downloads/product.jsp?product=26&platform=Macintosh\">GoLive</a></li>\n<li><a href=\"http://netnewswireapp.com/\">NetNewsWire</a></li>\n<li><a href=\"http://www.adobe.com/products/aftereffects.html\">After Effects</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Thomas_Knoll\">Thomas Knoll</a></li>\n<li><a href=\"http://www.adobe.com/products/photoshop/extend.html\">Camera Raw</a></li>\n<li><a href=\"http://www.adobe.com/products/photoshop-touch.html\">Photoshop Touch</a></li>\n<li><a href=\"https://www.cia.gov/library/publications/the-world-factbook/geos/gm.html\">Germany</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Philistinism\">Philistinism</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Perfectionism_(psychology)\">Perfectionism</a></li>\n<li><a href=\"http://www.vw.com/en.html\">Volkswagen</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Radiocarbon_dating\">Carbon-dating</a></li>\n<li><a href=\"http://www.webstandards.org/\">Web Standards</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Scalable_Vector_Graphics\">SVG</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Cascading_Style_Sheets\">CSS</a></li>\n<li><a href=\"http://shapeof.com/\">Gus Mueller</a></li>\n<li><a href=\"http://www.flyingmeat.com/acorn/\">Acorn</a></li>\n<li><a href=\"https://twitter.com/mrgan\">Neven Mrgan</a></li>\n<li><a href=\"http://www.subtraction.com/\">Khoi Vinh</a></li>\n<li><a href=\"https://www.cia.gov/library/publications/the-world-factbook/geos/hr.html\">Croatia</a></li>\n<li><a href=\"http://www.portlandonline.com/\">Portland</a></li>\n<li><a href=\"http://www.internetslang.com/JDI-meaning-definition.asp\">JDI</a></li>\n<li><a href=\"http://helpx.adobe.com/photoshop/using/retouching-repairing-images.html\">Healing Brush</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Buck_Rogers\">Buck Rogers</a></li>\n<li><a href=\"http://www.adobe.com/products/creativecloud.html\">Creative Cloud</a></li>\n<li><a href=\"http://facebook.com/\">Facebook</a></li>\n<li><a href=\"http://www.smugmug.com/\">Smugmug</a></li>\n<li><a href=\"https://developer.apple.com/wwdc/\">WWDC</a></li>\n<li><a href=\"http://www.vw.com/en/models/jetta/gallery.html\">Jetta</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Ketchup\">Ketchup</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Death_march_(project_management)\">Death-march</a></li>\n<li><a href=\"http://www.simpsoncrazy.com/characters/comic-book-guy\">Comic Book Guy</a></li>\n<li><a href=\"http://daringfireball.net/\">John Gruber</a></li>\n<li><a href=\"http://parislemon.com/post/40128357896/if-you-see-a-stylus-they-blew-it\">“If you see a stylus, they blew it.”</a></li>\n<li><a href=\"http://www.microsoft.com/surface/en-us\">Microsoft Surface</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Metro_(design_language)\">Metro UI</a></li>\n<li><a href=\"http://www.youtube.com/watch?v=1yeA_kHHLow\">Rahm Emmanuel: “You never want a serious crisis to go to waste.”</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/The_Mythical_Man-Month\">The Mythical Man-Month</a></li>\n<li><a href=\"http://www.photoshopessentials.com/photo-editing/content-aware-fill-cs5/\">Content-Aware Fill</a></li>\n<li><a href=\"http://www.imdb.com/title/tt0111161/\">Shawshank</a></li>\n<li><a href=\"http://www.adobe.com/products/indesign.html\">InDesign</a></li>\n<li><a href=\"http://www.adobemagazine.com/\">Adobe Magazine</a></li>\n<li><a href=\"http://www.nike.com/\">Nike</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Adobe_PageMaker\">PageMaker</a></li>\n<li><a href=\"http://www.adobe.com/products/postscript/\">Postscript</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Single-lens_reflex_camera\">SLR</a></li>\n<li><a href=\"http://www.adobe.com/products/photoshop-lightroom.html\">Lightroom</a></li>\n<li><a href=\"http://www.blackanddecker.com/\">Black & Decker</a></li>\n<li><a href=\"http://austinpowers.wikia.com/wiki/Dr._Evil\">Dr. Evil</a></li>\n<li><a href=\"https://twitter.com/lorenb\">Loren Brichter</a></li>\n<li><a href=\"http://instagram.com/\">Instagram</a></li>\n<li><a href=\"http://www.kickstarter.com/\">Kickstarter</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Non-governmental_organization\">NGO</a></li>\n<li><a href=\"http://marissamayr.tumblr.com/post/50902274591/im-delighted-to-announce-that-weve-reached-an\">Tumblr Acquisition</a></li>\n<li><a href=\"http://www.troygaul.com/\">Troy Gaul</a></li>\n<li><a href=\"http://www.blurb.com/\">Blurb</a></li>\n<li><a href=\"http://www.theonion.com/articles/report-98-percent-of-us-commuters-favor-public-tra,1434/\">The Onion: Report: 98 Percent Of U.S. Commuters Favor Public Transportation For Others</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Data_(Star_Trek)\">Data</a></li>\n<li><a href=\"http://terminator.wikia.com/wiki/T-1000_(Terminator_2:_Judgment_Day)\">T-1000</a></li>\n<li><a href=\"https://www.cia.gov/library/publications/the-world-factbook/geos/sy.html\">Syria</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/MacApp\">MacApp</a></li>\n<li><a href=\"https://code.google.com/p/resourceviewer/\">Resource Manager</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/John_Knoll\">John Knoll</a></li>\n<li><a href=\"http://www.ilm.com/\">Industrial Light & Magic</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/QuickTime\">QuickTime</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/OpenDoc\">OpenDoc</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Common_Object_Request_Broker_Architecture\">Corba</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Object_Linking_and_Embedding\">OLE</a></li>\n<li><a href=\"https://twitter.com/snapseed\">SnapSeed</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/System_6\">Mac System 6</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Apple_events\">Apple events</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/AppleScript\">AppleScript</a></li>\n<li><a href=\"http://audiob.us/\">Audio Bus</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/1992\">1992</a></li>\n<li><a href=\"http://www.imdb.com/character/ch0190293/quotes\">“The only time you should start worrying about a soldier is when they stop bitchin’”</a></li>\n<li><a href=\"http://books.google.com/books?id=mXnw5tM8QRwC&pg=PA115&lpg=PA115&dq=first+computer+good+enough+to+criticize&source=bl&ots=PxLvdYbqXE&sig=N2QWjFNo-AoPE_PlP1di6HPglQc&hl=en&sa=X&ei=DcjYUs3nF4TzoATV_YGIBQ&ved=0CCsQ6AEwAA#v=onepage&q=first%20computer%20good%20enough%20to%20criticize&f=false\">Alan Kay: “The Mac is the first computer good enough to be criticized.”</a></li>\n<li><a href=\"http://tapbots.com/\">TapBots</a></li>\n<li><a href=\"https://itunes.apple.com/us/app/tweetbot-2-iphone-ipod-touch/id428851691?mt=8\">Tweetbot 2</a></li>\n<li><a href=\"http://www.android.com/\">Android</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Kai's_Power_Tools\">Kai’s Power Tools</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Kai_Krause\">Kai Krause</a></li>\n<li><a href=\"http://fremont.com/\">Fremont</a></li>\n<li><a href=\"http://www.rundmc.com/\">RUN DMC</a></li>\n<li><a href=\"http://www.porsche.com/usa/models/boxster/\">Porsche Boxster</a></li>\n<li><a href=\"http://jnack.com/flavawagon\">Flavawagon</a></li>\n<li><a href=\"http://www.google.com/glass/start/\">Google Glass</a></li>\n<li><a href=\"http://scobleizer.com/\">Robert Scoble</a></li>\n</ul>",
+      "date_published": "2014-01-17T10:00:00-08:00",
+      "attachments": [
+        {
+          "url": "http://therecord.co/downloads/TheRecord-s1e2-JohnNack.m4a",
+          "mime_type": "audio/x-m4a",
+          "size_in_bytes": 60301043
+        }
+      ]
+    },
+    {
+      "id": "http://therecord.co/2014/01/03/luke_adamson",
+      "url": "http://therecord.co/2014/01/03/luke_adamson",
+      "title": "Seattle Before the iPhone #1 - Luke Adamson",
+      "content_html": "<p>This episode was recorded 15 May 2013 live and in person at <a href=\"http://www.omnigroup.com/\">The Omni Group’s</a> lovely offices overlooking Lake Union in Seattle.</p>\n\n<p>You can <a href=\"http://therecord.co/downloads/TheRecord-s1e1-LukeAdamson.m4a\">download the m4a file</a> or <a href=\"https://itunes.apple.com/us/podcast/the-record/id791861057\">subscribe in iTunes</a> or <a href=\"http://therecord.co/xml/rss.xml\">subscribe to the podcast feed</a>.</p>\n\n<p><a href=\"https://twitter.com/lukesadamson\">Luke Adamson</a> is a founder of <a href=\"http://toyrockets.com/\">Toy Rockets</a>. He’s a former instructor at the University of Washington’s <a href=\"http://www.pce.uw.edu/certificates/ios-mac-development.html\">iOS and Mac certificate program</a> and a former developer at <a href=\"http://www.omnigroup.com/\">The Omni Group</a> (where, among other things, he helped create OmniOutliner).</p>\n\n<p class=\"sponsor\">This episode is sponsored by <a href=\" http://www.windowsazure.com/en-us/develop/mobile/ios/?WT.mc_id=azurebg_us_pmm_mirluna_therecord\">Microsoft Azure Mobile Services</a>. Does your app need online services? Syncing? Storage? Mobile Services is the easiest way to get started. Create your own APIs. Write your code using JavaScript (Mobile Services runs Node.js). Store data in a SQL database and/or in blob storage. Develop using your favorite text editor and terminal app on your favorite computer — a <i>Mac</i>. And never ever worry about applying security patches to a server. A trial account is free.</p>\n\n\n<p>Things we mention, in order of appearance (roughly):</p>\n\n<ul>\n<li><a href=\"http://www.youtube.com/watch?v=3lYm0c7gYyU\">Gophers</a></li>\n<li><a href=\"http://www.idaho.gov/\">Idaho</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Methamphetamine\">Meth</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Maze_War\">Maze War\n<li><a href=\"http://www.boisestate.edu/\">Boise State U</a></li>\n<li><a href=\"https://www.google.com/search?q=nextstation&client=safari&rls=en&tbm=isch&tbo=u&source=univ&sa=X&ei=FTfGUqndKZLkoATOvoCAAg&ved=0CDQQsAQ&biw=1147&bih=1283\">Nextstation</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/UUCP\">UUCP</a></li>\n<li><a href=\"https://twitter.com/HP\">HP</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Usenet\">Usenet</a></li>\n<li><a href=\"http://oldcomputers.net/c64.html\">Commodore 64</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/BASIC\">BASIC</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Pascal_(programming_language)\">Pascal</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/documentation/cocoa/conceptual/ProgrammingWithObjectiveC/Introduction/Introduction.html\">Objective-C</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/C%2B%2B\">C++</a></li>\n<li><a href=\"http://www.transmissionzero.co.uk/computing/win16-apps-in-c/\">Win16</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/documentation/cocoa/reference/applicationkit/objc_classic/_index.html\">AppKit</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/DOCUMENTATION/Cocoa/Reference/Foundation/ObjC_classic/_index.html\">Foundation</a></li>\n<li><a href=\"https://developer.apple.com/library/mac/documentation/cocoa/conceptual/Strings/introStrings.html\">NSString</a></li>\n<li><a href=\"http://www.uidaho.edu/\">University of Idaho</a></li>\n<li><a href=\"http://www.omnigroup.com/\">The Omni Group</a></li>\n<li><a href=\"http://www.tamu.edu/\">Texas A&M</a></li>\n<li><a href=\"https://www.omnigroup.com/more\">OmniWeb</a></li>\n<li><a href=\"https://www.macupdate.com/app/mac/5599/omnipdf-for-macos-x/\">OmniPDF</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/WebObjects\">WebObjects</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Lighthouse_Design\">Lighthouse Design</a></li>\n<li><a href=\"http://6ixpassions.com/post/6958648381/lighthouse-design-diagram\">Diagram!</a></li>\n<li><a href=\"http://www.quantrix.com/\">Quantrix</a></li>\n<li><a href=\"https://www.google.com/search?q=wainscoting&client=safari&rls=en&tbm=isch&tbo=u&source=univ&sa=X&ei=dxPHUoPGCM36oATrxYHwBA&ved=0CFwQsAQ&biw=1365&bih=1276\">Wainscoting</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Enterprise_Objects_Framework\">EOF</a></li>\n<li><a href=\"http://www.standardandpoors.com/home/en/us\">Standard & Poor’s</a></li>\n<li><a href=\"http://www.mitsubishielectric.com/\">Mitsubishi</a></li>\n<li><a href=\"http://www.toyota.com/\">Toyota</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/AT%26T_Wireless_Services\">McCaw Cellular</a></li>\n<li><a href=\"http://www.oracle.com/technetwork/documentation/oracle8-090636.html\">Oracle 8</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Craig_Federighi\">Craig Federighi</a></li>\n<li><a href=\"http://www.linkedin.com/pub/bruce-arthur/0/1/123\">Bruce Arthur</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Solaris_(operating_system)\">Solaris</a></li>\n<li><a href=\"http://www.sybase.com/\">Sybase</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Power_Mac_G4\">G4</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Ireland\">Ireland</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Quake_(video_game)\">Quake</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/HP-UX\">HP-UX</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Doom_(video_game)\">Doom</a></li>\n<li><a href=\"https://twitter.com/ID_AA_Carmack\">John Carmack</a></li>\n<li><a href=\"https://www.java.com/en/\">Java</a></li>\n<li><a href=\"https://www.google.com/search?q=beos&client=safari&rls=en&tbm=isch&tbo=u&source=univ&sa=X&ei=tjnGUvLVCcyHogSciYLQDQ&ved=0CDkQsAQ&biw=1147&bih=1283\">BeOS</a></li>\n<li><a href=\"http://www.adobe.com/\">Adobe</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/PowerPC\">PowerPC</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Power_Computing_Corporation\">Power Computing</a></li>\n<li><a href=\"https://developer.apple.com/legacy/library/documentation/LegacyTechnologies/WebObjects/WebObjects_3.1/DevGuide/WebScript/RoleOfScripts.html\">Webscript</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Lisp_(programming_language)\">Lisp</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Swing_(Java)\">Swing Toolkit</a></li>\n<li><a href=\"http://docs.oracle.com/javase/7/docs/technotes/guides/awt/\">AWT</a></li>\n<li><a href=\"https://twitter.com/kcase\">Ken Case</a></li>\n<li><a href=\"https://twitter.com/tjw\">Tim Wood</a></li>\n<li><a href=\"http://blog.wilshipley.com/\">Wil Shipley</a></li>\n<li><a href=\"https://twitter.com/gregtitus\">Greg Titus</a></li>\n<li><a href=\"https://twitter.com/andrewabernathy\">Andrew Abernathy</a></li>\n<li><a href=\"http://people.omnigroup.com/tom/\">Tom Bunch</a></li>\n<li><a href=\"http://www.retrospect.com\">Retrospect</a></li>\n<li><a href=\"http://stevenygard.com/\">Steve Nygard</a></li>\n<li><a href=\"https://github.com/nygard/class-dump\">Class-dump</a></li>\n<li><a href=\"http://www.omnigroup.com/omnioutliner\">OmniOutliner</a></li>\n<li><a href=\"http://office.microsoft.com/en-us/visio/\">Visio</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Rhapsody_(operating_system)\">Rhapsody</a></li>\n<li><a href=\"http://www.omnigroup.com/omnigraffle\">OmniGraffle</a></li>\n<li><a href=\"http://www.adobe.com/products/illustrator.html?promoid=KAUCB\">Illustrator</a></li>\n<li><a href=\"https://www.google.com/search?q=rx7&client=safari&rls=en&tbm=isch&tbo=u&source=univ&sa=X&ei=pDvGUr3jL4PkoATvh4KgCQ&ved=0CC4QsAQ&biw=1147&bih=1283\">Mazda RX-7</a></li>\n<li><a href=\"http://www.frontbase.com/cgi-bin/WebObjects/FBWebSite\">FrontBase</a></li>\n<li><a href=\"http://denmark.dk/\">Denmark</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Apple_Cinema_Display\">Cinema Displays</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/PowerBook_G4\">TiBook</a></li>\n<li><a href=\"http://www.ci.everett.wa.us/\">Everett, Washington</a></li>\n<li><a href=\"https://www.google.com/search?q=blue+hair&client=safari&rls=en&tbm=isch&tbo=u&source=univ&sa=X&ei=-zvGUuCsBYPpoATfzoG4Cw&ved=0CC4QsAQ&biw=1147&bih=1283\">Blue hair</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Subprime_lending\">Sub-prime mortgages</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Bear_Stearns\">Bear Stearns</a></li>\n<li><a href=\"https://www.db.com/us/\">Deutsche Bank</a></li>\n<li><a href=\"https://www.credit-suisse.com/\">Credit Suisse</a></li>\n<li><a href=\"http://www.internap.com/\">Internap</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/Xserve\">Xserve</a></li>\n<li><a href=\"http://www.geekwire.com/2011/seattle-mobile-app-developer-ubermind-finds-buyer/\">Ubermind</a></li>\n<li><a href=\"http://www.deloittedigital.com/us/\">Deloitte Digital</a></li>\n<li><a href=\"http://www.societegenerale.com/en\">Societe General</a></li>\n<li><a href=\"http://india.gov.in/\">India</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/IOS\">iOS</a></li>\n<li><a href=\"http://en.wikipedia.org/wiki/IOS_jailbreaking\">Jailbroken iPhones</a></li>\n<li><a href=\"https://twitter.com/lllucas\">Lucas Newman</a></li>\n</ul>",
+      "date_published": "2014-01-03T11:10:00-08:00",
+      "attachments": [
+        {
+          "url": "http://therecord.co/downloads/TheRecord-s1e1-LukeAdamson.m4a",
+          "mime_type": "audio/x-m4a",
+          "size_in_bytes": 48641024
+        }
+      ]
+    }
+  ]
+}
feeds/timetable.manton.org.json view
@@ -1,637 +1,637 @@-{-  "version": "https://jsonfeed.org/version/1",-  "title": "Timetable",-  "home_page_url": "http://timetable.manton.org/",-  "items": [-    {-      "id": "http://timetable.manton.org/2017/04/episode-45-launch-week/",-      "url": "http://timetable.manton.org/2017/04/episode-45-launch-week/",-      "title": "Episode 45: Launch week",-      "content_html": "I’m rolling out early access to Micro.blog this week. I talk about how the first 2 days have gone, mistakes with TestFlight, and what to do next.",-      "date_published": "2017-04-26T01:09:45+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/139/episode-45-launch-week.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 5236920-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2017/04/episode-44-disappoint-some-people/",-      "url": "http://timetable.manton.org/2017/04/episode-44-disappoint-some-people/",-      "title": "Episode 44: Disappoint some people",-      "content_html": "I look back at Katy Perry’s performance at the Grammys. Why it’s okay to make a political statement and risk disappointing some fans.",-      "date_published": "2017-04-20T16:59:09+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/136/episode-44-disappoint-some-people.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 3590496-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2017/04/episode-43-default-themes/",-      "url": "http://timetable.manton.org/2017/04/episode-43-default-themes/",-      "title": "Episode 43: Default themes",-      "content_html": "Finalizing the default themes for Micro.blog, why they’re based on Jekyll, and a thousand beta testers.",-      "date_published": "2017-04-18T18:24:39+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/134/episode-43-default-themes.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 4400851-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2017/04/episode-42-officially-announced/",-      "url": "http://timetable.manton.org/2017/04/episode-42-officially-announced/",-      "title": "Episode 42: Officially announced",-      "content_html": "Today I sent a Kickstarter update about the rollout date. I also talk about the invite code system, the book, and stickers.",-      "date_published": "2017-04-17T22:34:14+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/132/episode-42-officially-announced.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 7436651-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2017/04/episode-41-final-rollout-date/",-      "url": "http://timetable.manton.org/2017/04/episode-41-final-rollout-date/",-      "title": "Episode 41: Final rollout date",-      "content_html": "Wrapping up a busy week, I realize there’s too much going on to start the Micro.blog rollout next week. It will be the following week, April 24th.",-      "date_published": "2017-04-15T02:11:02+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/129/episode-41-final-rollout-date.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 3796695-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2017/04/episode-40-just-the-basics/",-      "url": "http://timetable.manton.org/2017/04/episode-40-just-the-basics/",-      "title": "Episode 40: Just the basics",-      "content_html": "Picking up hamburgers for lunch and talking about keeping the iPhone app simple.",-      "date_published": "2017-04-13T21:49:52+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/126/episode-40-just-the-basics.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 6003412-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2017/04/episode-39-handling-mistakes/",-      "url": "http://timetable.manton.org/2017/04/episode-39-handling-mistakes/",-      "title": "Episode 39: Handling mistakes",-      "content_html": "I start with a clip from the Oscars, then talk about my repeated mistake over-promising on the Micro.blog rollout schedule.",-      "date_published": "2017-04-12T18:32:39+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/124/episode-39-handling-mistakes.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 3480351-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2017/04/episode-38-season-2/",-      "url": "http://timetable.manton.org/2017/04/episode-38-season-2/",-      "title": "Episode 38: Season 2",-      "content_html": "It’s a rainy week in Austin. I catch up on the progress for Micro.blog and some thoughts on the bigger picture for where it’s going.",-      "date_published": "2017-04-11T18:56:59+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/122/episode-38-season-2.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 7491835-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2017/02/episode-37-next-steps/",-      "url": "http://timetable.manton.org/2017/02/episode-37-next-steps/",-      "title": "Episode 37: Next steps",-      "content_html": "Now that the Kickstarter campaign has wrapped up, I move to the next phase of getting Micro.blog ready, planning for invites, and focusing on the Slack community.",-      "date_published": "2017-02-07T17:14:38+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/115/episode-37-next-steps.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 3634859-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2017/01/episode-36-stretch-goals/",-      "url": "http://timetable.manton.org/2017/01/episode-36-stretch-goals/",-      "title": "Episode 36: Stretch goals",-      "content_html": "Recent thoughts on App.net shutting down and details about why I added a stretch goal to my Kickstarter campaign.",-      "date_published": "2017-01-17T17:45:49+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/112/episode-36-stretch-goals.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 7146632-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2017/01/episode-35-kickstarter-optimism/",-      "url": "http://timetable.manton.org/2017/01/episode-35-kickstarter-optimism/",-      "title": "Episode 35: Kickstarter optimism",-      "content_html": "A week after launching the Kickstarter, I talk about its success so far and why I believe I can build Micro.blog, with a clip about optimism from Gary Vaynerchuk.",-      "date_published": "2017-01-10T16:19:32+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/109/episode-35-kickstarter-optimism.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 5134845-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2017/01/episode-34-launching-tomorrow/",-      "url": "http://timetable.manton.org/2017/01/episode-34-launching-tomorrow/",-      "title": "Episode 34: Launching tomorrow",-      "content_html": "Happy New Year! I talk about the first day of the year, and the final day to finish my Kickstarter project for Micro.blog.",-      "date_published": "2017-01-01T23:27:13+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/107/episode-34-launching-tomorrow.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 3463529-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/12/episode-33-kickstarter-launch-review/",-      "url": "http://timetable.manton.org/2016/12/episode-33-kickstarter-launch-review/",-      "title": "Episode 33: Kickstarter launch review",-      "content_html": "The morning after Christmas, I give a quick update on Micro.blog plans and Kickstarter’s Launch Now review feature.",-      "date_published": "2016-12-26T15:04:04+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/104/episode-33-kickstarter-launch-review.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 3781342-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/12/episode-32-super-mario-run/",-      "url": "http://timetable.manton.org/2016/12/episode-32-super-mario-run/",-      "title": "Episode 32: Super Mario Run",-      "content_html": "I share some thoughts on the first day of Super Mario Run and how my work week is wrapping up.",-      "date_published": "2016-12-16T15:18:09+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/101/episode-32-super-mario-run.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 4524097-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/12/episode-31-getting-out-there/",-      "url": "http://timetable.manton.org/2016/12/episode-31-getting-out-there/",-      "title": "Episode 31: Getting out there",-      "content_html": "I try the new WeWork location at the Domain, listen to a singer at the car dealership, and remember that I need to get out to talk to real people about my work.",-      "date_published": "2016-12-12T20:29:14+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/99/episode-31-getting-out-there.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 4262979-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/12/episode-30-november-question/",-      "url": "http://timetable.manton.org/2016/12/episode-30-november-question/",-      "title": "Episode 30: November question",-      "content_html": "From a listener question, I talk about steps in November to wrap up old projects and finish new ones.",-      "date_published": "2016-12-09T18:11:02+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/97/episode-30-november-question.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 4899688-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/11/episode-29-dot-blog/",-      "url": "http://timetable.manton.org/2016/11/episode-29-dot-blog/",-      "title": "Episode 29: Dot blog",-      "content_html": "I got a new domain! I talk about the .blog registration process and my evolving plans.",-      "date_published": "2016-11-25T14:25:28+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/94/episode-29-dot-blog.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 4874445-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/11/episode-28-work-soundtrack/",-      "url": "http://timetable.manton.org/2016/11/episode-28-work-soundtrack/",-      "title": "Episode 28: Work soundtrack",-      "content_html": "Not enough sleep yet still focused on getting work done. I review today’s blog post and play a clip from the Moana soundtrack.",-      "date_published": "2016-11-18T22:16:06+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/91/episode-28-work-soundtrack.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 5230657-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/11/episode-27-something-was-missing/",-      "url": "http://timetable.manton.org/2016/11/episode-27-something-was-missing/",-      "title": "Episode 27: Something was missing",-      "content_html": "One week after the election, I react to Apple’s design book announcement and talk about why social networks may be broken.",-      "date_published": "2016-11-15T23:10:23+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/89/episode-27-something-was-missing.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 4193132-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/10/episode-26-losing-a-week/",-      "url": "http://timetable.manton.org/2016/10/episode-26-losing-a-week/",-      "title": "Episode 26: Losing a week",-      "content_html": "I talk about getting derailed with home repairs, the U.S. presidential election, and writing about the Dash controversy.",-      "date_published": "2016-10-19T19:30:29+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/85/episode-26-losing-a-week.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 4964415-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/10/episode-25-tim-duncan/",-      "url": "http://timetable.manton.org/2016/10/episode-25-tim-duncan/",-      "title": "Episode 25: Tim Duncan",-      "content_html": "Back after a summer break, on this episode I talk through what we can learn from Tim Duncan’s incredible 19-year career.",-      "date_published": "2016-10-07T21:33:42+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/83/episode-25-tim-duncan.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 3987955-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/06/episode-24-san-francisco-reset/",-      "url": "http://timetable.manton.org/2016/06/episode-24-san-francisco-reset/",-      "title": "Episode 24: San Francisco reset",-      "content_html": "I summarize my week in San Francisco from the perspective of not just the WWDC technical news and events, but also of using the trip to refocus on my priorities for Riverfold Software.",-      "date_published": "2016-06-17T22:11:16+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/80/episode-24-san-francisco-reset.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 6248022-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/05/episode-23-when-a-product-is-over/",-      "url": "http://timetable.manton.org/2016/05/episode-23-when-a-product-is-over/",-      "title": "Episode 23: When a product is over",-      "content_html": "I play a clip from the Upgrade podcast and then talk about my struggle to wind down a product correctly.",-      "date_published": "2016-05-18T15:19:05+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/77/episode-23-when-a-product-is-over.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 6701145-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/05/episode-22-grumpy-about-everything/",-      "url": "http://timetable.manton.org/2016/05/episode-22-grumpy-about-everything/",-      "title": "Episode 22: Grumpy about everything",-      "content_html": "Last week was stressful. This episode is about being mad at nothing and everything, and why fireflies are magical.",-      "date_published": "2016-05-16T21:16:09+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/75/episode-22-grumpy-about-everything.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 4251591-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/05/episode-21-the-right-work-balance/",-      "url": "http://timetable.manton.org/2016/05/episode-21-the-right-work-balance/",-      "title": "Episode 21: The right work balance",-      "content_html": "Today I take stock of the last few weeks of client work and recovering from 2 months of focusing so heavily on my personal blog.",-      "date_published": "2016-05-04T14:46:38+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/72/episode-21-the-right-work-balance.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 3760442-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/04/episode-20-kickstarter-rewards/",-      "url": "http://timetable.manton.org/2016/04/episode-20-kickstarter-rewards/",-      "title": "Episode 20: Kickstarter rewards",-      "content_html": "I talk about receiving the Loish art book and my current thoughts on Kickstarter goals and rewards.",-      "date_published": "2016-04-06T20:01:39+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/69/episode-20-kickstarter-rewards.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 4258693-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/04/episode-19-kickstarter-recording/",-      "url": "http://timetable.manton.org/2016/04/episode-19-kickstarter-recording/",-      "title": "Episode 19: Kickstarter recording",-      "content_html": "I finally record a video for my Kickstarter project. Now I just need to edit it and do everything else.",-      "date_published": "2016-04-05T19:18:11+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/67/episode-19-kickstarter-recording.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 3623188-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/03/episode-18-waiting-for-the-se/",-      "url": "http://timetable.manton.org/2016/03/episode-18-waiting-for-the-se/",-      "title": "Episode 18: Waiting for the SE",-      "content_html": "I’m playing Nintendo’s new iPhone app Miitomo, watching my Mii character pace around the room as he (and I) wait for our iPhone SE delivery. Also talk about the library routine and Rails 5.",-      "date_published": "2016-03-31T15:21:40+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/65/episode-18-waiting-for-the-se.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 3962776-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/03/episode-17-spring-break/",-      "url": "http://timetable.manton.org/2016/03/episode-17-spring-break/",-      "title": "Episode 17: Spring break",-      "content_html": "It’s spring break week, which means the kids are out of school and SXSW is taking over downtown.",-      "date_published": "2016-03-14T21:16:12+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/62/episode-17-spring-break.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 2759675-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/03/episode-16-dont-panic/",-      "url": "http://timetable.manton.org/2016/03/episode-16-dont-panic/",-      "title": "Episode 16: Don&#8217;t panic",-      "content_html": "This week I’m thinking back on how Staple! Expo went over the weekend, and why it never helps to panic when something isn’t going perfectly to plan.",-      "date_published": "2016-03-11T14:58:02+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/60/episode-16-dont-panic.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 1751614-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/02/episode-15-leap-year/",-      "url": "http://timetable.manton.org/2016/02/episode-15-leap-year/",-      "title": "Episode 15: Leap year",-      "content_html": "I reflect on 6 months as an indie, think about stealing time for projects, and plan how I can use working from a coffee shop in the morning to provide a better structure to my day.",-      "date_published": "2016-02-29T20:25:26+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/57/episode-15-leap-year.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 3042254-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/02/episode-14-coffee-writing/",-      "url": "http://timetable.manton.org/2016/02/episode-14-coffee-writing/",-      "title": "Episode 14: Coffee writing",-      "content_html": "At my 10th new coffee shop in as many days, I write a few blog posts. And on this episode I talk about it.",-      "date_published": "2016-02-27T23:26:47+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/54/episode-14-coffee-writing.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 2137795-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/02/episode-13-luck/",-      "url": "http://timetable.manton.org/2016/02/episode-13-luck/",-      "title": "Episode 13: Luck",-      "content_html": "I finally drop the stickers in the mailbox at our neighborhood post office. Thinking this episode about what it means to be lucky.",-      "date_published": "2016-02-23T17:18:39+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/52/episode-13-luck.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 1752427-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/02/episode-12-kickstarter-music/",-      "url": "http://timetable.manton.org/2016/02/episode-12-kickstarter-music/",-      "title": "Episode 12: Kickstarter music",-      "content_html": "Back from a quick trip to Portland, today I’m thinking about the music for my Kickstarter project.",-      "date_published": "2016-02-17T16:32:07+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/48/episode-12-kickstarter-music.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 2192760-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/02/episode-11-timing-a-launch/",-      "url": "http://timetable.manton.org/2016/02/episode-11-timing-a-launch/",-      "title": "Episode 11: Timing a launch",-      "content_html": "Back from a sick day or two, I talk today about Twitter’s algorithmic timeline change and why it would be nice to launch a product when your competitor has some bad news.",-      "date_published": "2016-02-11T17:45:24+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/46/episode-11-timing-a-launch.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 2033516-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/02/episode-10-planning-outside/",-      "url": "http://timetable.manton.org/2016/02/episode-10-planning-outside/",-      "title": "Episode 10: Planning outside",-      "content_html": "I take the iPad Pro and my microphone out to the front porch, to think through what work I need to focus on for today.",-      "date_published": "2016-02-01T21:07:33+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/43/episode-10-planning-outside.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 2136126-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/01/episode-9-not-just-an-app/",-      "url": "http://timetable.manton.org/2016/01/episode-9-not-just-an-app/",-      "title": "Episode 9: Not just an app",-      "content_html": "Today I mention the iPhone app rejection, talk about why the iPhone app itself is secondary to the web version, and reveal more about the Kickstarter.",-      "date_published": "2016-01-29T20:43:15+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/41/episode-9-not-just-an-app.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 2960339-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/01/episode-8-early-start/",-      "url": "http://timetable.manton.org/2016/01/episode-8-early-start/",-      "title": "Episode 8: Early start",-      "content_html": "Recorded in 3 segments, I set my alarm early this morning to get some coding done before the day starts slipping away.",-      "date_published": "2016-01-25T18:31:59+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/38/episode-8-early-start.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 2133612-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/01/episode-7-backup-distractions/",-      "url": "http://timetable.manton.org/2016/01/episode-7-backup-distractions/",-      "title": "Episode 7: Backup distractions",-      "content_html": "This morning I was distracted a little with backups, ordering a new hard drive, and thinking about my iOS app, which was just rejected by Apple.",-      "date_published": "2016-01-22T20:26:46+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/36/episode-7-backup-distractions.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 3438698-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/01/episode-6-thinking-about-kickstarter/",-      "url": "http://timetable.manton.org/2016/01/episode-6-thinking-about-kickstarter/",-      "title": "Episode 6: Thinking about Kickstarter",-      "content_html": "I start with some thoughts on basketball, my potential Kickstarter campaign, and whether it’s better to start strong or finish strong. (Go Spurs Go!)",-      "date_published": "2016-01-19T18:34:17+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/34/episode-6-thinking-about-kickstarter.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 2263612-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/01/episode-5-mailing-stickers/",-      "url": "http://timetable.manton.org/2016/01/episode-5-mailing-stickers/",-      "title": "Episode 5: Mailing stickers",-      "content_html": "Today I stopped at the post office to pick up some stamps to mail stickers for the new microblogging app and platform I’m working on.",-      "date_published": "2016-01-13T16:55:49+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/31/episode-5-mailing-stickers.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 2908722-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/01/episode-4-driving-downtown/",-      "url": "http://timetable.manton.org/2016/01/episode-4-driving-downtown/",-      "title": "Episode 4: Driving downtown",-      "content_html": "This morning I was downtown to work at a coffee shop for a few hours before lunch. I talk about getting out of the house and last night’s icon sketches.",-      "date_published": "2016-01-12T01:32:41+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/29/episode-4-driving-downtown.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 2459416-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/01/episode-3-friday-already/",-      "url": "http://timetable.manton.org/2016/01/episode-3-friday-already/",-      "title": "Episode 3: Friday already",-      "content_html": "On this episode, I talk about finishing some work and the new iPhone microphone I bought.",-      "date_published": "2016-01-08T20:59:47+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/23/episode-3-friday-already.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 1851283-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/01/episode-2-naming-the-podcast/",-      "url": "http://timetable.manton.org/2016/01/episode-2-naming-the-podcast/",-      "title": "Episode 2: Naming the podcast",-      "content_html": "On this episode, I talk about trying tea instead of coffee, how I named this podcast, and my work schedule as I wrap up the week.",-      "date_published": "2016-01-07T20:01:52+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/19/episode-2-naming-the-podcast.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 2893469-        }-      ]-    },-    {-      "id": "http://timetable.manton.org/2016/01/episode-1-hello/",-      "url": "http://timetable.manton.org/2016/01/episode-1-hello/",-      "title": "Episode 1: Hello",-      "content_html": "On the first episode, I introduce the idea behind the show and the topics I hope to cover.",-      "date_published": "2016-01-06T02:57:22+00:00",-      "attachments": [-        {-          "url": "http://timetable.manton.org/podcast-download/10/episode-1-hello.mp3",-          "mime_type": "audio/mpeg",-          "size_in_bytes": 3126886-        }-      ]-    }-  ]-}+{
+  "version": "https://jsonfeed.org/version/1",
+  "title": "Timetable",
+  "home_page_url": "http://timetable.manton.org/",
+  "items": [
+    {
+      "id": "http://timetable.manton.org/2017/04/episode-45-launch-week/",
+      "url": "http://timetable.manton.org/2017/04/episode-45-launch-week/",
+      "title": "Episode 45: Launch week",
+      "content_html": "I’m rolling out early access to Micro.blog this week. I talk about how the first 2 days have gone, mistakes with TestFlight, and what to do next.",
+      "date_published": "2017-04-26T01:09:45+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/139/episode-45-launch-week.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 5236920
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2017/04/episode-44-disappoint-some-people/",
+      "url": "http://timetable.manton.org/2017/04/episode-44-disappoint-some-people/",
+      "title": "Episode 44: Disappoint some people",
+      "content_html": "I look back at Katy Perry’s performance at the Grammys. Why it’s okay to make a political statement and risk disappointing some fans.",
+      "date_published": "2017-04-20T16:59:09+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/136/episode-44-disappoint-some-people.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 3590496
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2017/04/episode-43-default-themes/",
+      "url": "http://timetable.manton.org/2017/04/episode-43-default-themes/",
+      "title": "Episode 43: Default themes",
+      "content_html": "Finalizing the default themes for Micro.blog, why they’re based on Jekyll, and a thousand beta testers.",
+      "date_published": "2017-04-18T18:24:39+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/134/episode-43-default-themes.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 4400851
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2017/04/episode-42-officially-announced/",
+      "url": "http://timetable.manton.org/2017/04/episode-42-officially-announced/",
+      "title": "Episode 42: Officially announced",
+      "content_html": "Today I sent a Kickstarter update about the rollout date. I also talk about the invite code system, the book, and stickers.",
+      "date_published": "2017-04-17T22:34:14+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/132/episode-42-officially-announced.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 7436651
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2017/04/episode-41-final-rollout-date/",
+      "url": "http://timetable.manton.org/2017/04/episode-41-final-rollout-date/",
+      "title": "Episode 41: Final rollout date",
+      "content_html": "Wrapping up a busy week, I realize there’s too much going on to start the Micro.blog rollout next week. It will be the following week, April 24th.",
+      "date_published": "2017-04-15T02:11:02+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/129/episode-41-final-rollout-date.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 3796695
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2017/04/episode-40-just-the-basics/",
+      "url": "http://timetable.manton.org/2017/04/episode-40-just-the-basics/",
+      "title": "Episode 40: Just the basics",
+      "content_html": "Picking up hamburgers for lunch and talking about keeping the iPhone app simple.",
+      "date_published": "2017-04-13T21:49:52+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/126/episode-40-just-the-basics.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 6003412
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2017/04/episode-39-handling-mistakes/",
+      "url": "http://timetable.manton.org/2017/04/episode-39-handling-mistakes/",
+      "title": "Episode 39: Handling mistakes",
+      "content_html": "I start with a clip from the Oscars, then talk about my repeated mistake over-promising on the Micro.blog rollout schedule.",
+      "date_published": "2017-04-12T18:32:39+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/124/episode-39-handling-mistakes.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 3480351
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2017/04/episode-38-season-2/",
+      "url": "http://timetable.manton.org/2017/04/episode-38-season-2/",
+      "title": "Episode 38: Season 2",
+      "content_html": "It’s a rainy week in Austin. I catch up on the progress for Micro.blog and some thoughts on the bigger picture for where it’s going.",
+      "date_published": "2017-04-11T18:56:59+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/122/episode-38-season-2.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 7491835
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2017/02/episode-37-next-steps/",
+      "url": "http://timetable.manton.org/2017/02/episode-37-next-steps/",
+      "title": "Episode 37: Next steps",
+      "content_html": "Now that the Kickstarter campaign has wrapped up, I move to the next phase of getting Micro.blog ready, planning for invites, and focusing on the Slack community.",
+      "date_published": "2017-02-07T17:14:38+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/115/episode-37-next-steps.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 3634859
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2017/01/episode-36-stretch-goals/",
+      "url": "http://timetable.manton.org/2017/01/episode-36-stretch-goals/",
+      "title": "Episode 36: Stretch goals",
+      "content_html": "Recent thoughts on App.net shutting down and details about why I added a stretch goal to my Kickstarter campaign.",
+      "date_published": "2017-01-17T17:45:49+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/112/episode-36-stretch-goals.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 7146632
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2017/01/episode-35-kickstarter-optimism/",
+      "url": "http://timetable.manton.org/2017/01/episode-35-kickstarter-optimism/",
+      "title": "Episode 35: Kickstarter optimism",
+      "content_html": "A week after launching the Kickstarter, I talk about its success so far and why I believe I can build Micro.blog, with a clip about optimism from Gary Vaynerchuk.",
+      "date_published": "2017-01-10T16:19:32+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/109/episode-35-kickstarter-optimism.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 5134845
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2017/01/episode-34-launching-tomorrow/",
+      "url": "http://timetable.manton.org/2017/01/episode-34-launching-tomorrow/",
+      "title": "Episode 34: Launching tomorrow",
+      "content_html": "Happy New Year! I talk about the first day of the year, and the final day to finish my Kickstarter project for Micro.blog.",
+      "date_published": "2017-01-01T23:27:13+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/107/episode-34-launching-tomorrow.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 3463529
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/12/episode-33-kickstarter-launch-review/",
+      "url": "http://timetable.manton.org/2016/12/episode-33-kickstarter-launch-review/",
+      "title": "Episode 33: Kickstarter launch review",
+      "content_html": "The morning after Christmas, I give a quick update on Micro.blog plans and Kickstarter’s Launch Now review feature.",
+      "date_published": "2016-12-26T15:04:04+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/104/episode-33-kickstarter-launch-review.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 3781342
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/12/episode-32-super-mario-run/",
+      "url": "http://timetable.manton.org/2016/12/episode-32-super-mario-run/",
+      "title": "Episode 32: Super Mario Run",
+      "content_html": "I share some thoughts on the first day of Super Mario Run and how my work week is wrapping up.",
+      "date_published": "2016-12-16T15:18:09+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/101/episode-32-super-mario-run.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 4524097
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/12/episode-31-getting-out-there/",
+      "url": "http://timetable.manton.org/2016/12/episode-31-getting-out-there/",
+      "title": "Episode 31: Getting out there",
+      "content_html": "I try the new WeWork location at the Domain, listen to a singer at the car dealership, and remember that I need to get out to talk to real people about my work.",
+      "date_published": "2016-12-12T20:29:14+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/99/episode-31-getting-out-there.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 4262979
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/12/episode-30-november-question/",
+      "url": "http://timetable.manton.org/2016/12/episode-30-november-question/",
+      "title": "Episode 30: November question",
+      "content_html": "From a listener question, I talk about steps in November to wrap up old projects and finish new ones.",
+      "date_published": "2016-12-09T18:11:02+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/97/episode-30-november-question.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 4899688
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/11/episode-29-dot-blog/",
+      "url": "http://timetable.manton.org/2016/11/episode-29-dot-blog/",
+      "title": "Episode 29: Dot blog",
+      "content_html": "I got a new domain! I talk about the .blog registration process and my evolving plans.",
+      "date_published": "2016-11-25T14:25:28+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/94/episode-29-dot-blog.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 4874445
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/11/episode-28-work-soundtrack/",
+      "url": "http://timetable.manton.org/2016/11/episode-28-work-soundtrack/",
+      "title": "Episode 28: Work soundtrack",
+      "content_html": "Not enough sleep yet still focused on getting work done. I review today’s blog post and play a clip from the Moana soundtrack.",
+      "date_published": "2016-11-18T22:16:06+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/91/episode-28-work-soundtrack.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 5230657
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/11/episode-27-something-was-missing/",
+      "url": "http://timetable.manton.org/2016/11/episode-27-something-was-missing/",
+      "title": "Episode 27: Something was missing",
+      "content_html": "One week after the election, I react to Apple’s design book announcement and talk about why social networks may be broken.",
+      "date_published": "2016-11-15T23:10:23+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/89/episode-27-something-was-missing.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 4193132
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/10/episode-26-losing-a-week/",
+      "url": "http://timetable.manton.org/2016/10/episode-26-losing-a-week/",
+      "title": "Episode 26: Losing a week",
+      "content_html": "I talk about getting derailed with home repairs, the U.S. presidential election, and writing about the Dash controversy.",
+      "date_published": "2016-10-19T19:30:29+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/85/episode-26-losing-a-week.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 4964415
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/10/episode-25-tim-duncan/",
+      "url": "http://timetable.manton.org/2016/10/episode-25-tim-duncan/",
+      "title": "Episode 25: Tim Duncan",
+      "content_html": "Back after a summer break, on this episode I talk through what we can learn from Tim Duncan’s incredible 19-year career.",
+      "date_published": "2016-10-07T21:33:42+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/83/episode-25-tim-duncan.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 3987955
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/06/episode-24-san-francisco-reset/",
+      "url": "http://timetable.manton.org/2016/06/episode-24-san-francisco-reset/",
+      "title": "Episode 24: San Francisco reset",
+      "content_html": "I summarize my week in San Francisco from the perspective of not just the WWDC technical news and events, but also of using the trip to refocus on my priorities for Riverfold Software.",
+      "date_published": "2016-06-17T22:11:16+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/80/episode-24-san-francisco-reset.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 6248022
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/05/episode-23-when-a-product-is-over/",
+      "url": "http://timetable.manton.org/2016/05/episode-23-when-a-product-is-over/",
+      "title": "Episode 23: When a product is over",
+      "content_html": "I play a clip from the Upgrade podcast and then talk about my struggle to wind down a product correctly.",
+      "date_published": "2016-05-18T15:19:05+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/77/episode-23-when-a-product-is-over.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 6701145
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/05/episode-22-grumpy-about-everything/",
+      "url": "http://timetable.manton.org/2016/05/episode-22-grumpy-about-everything/",
+      "title": "Episode 22: Grumpy about everything",
+      "content_html": "Last week was stressful. This episode is about being mad at nothing and everything, and why fireflies are magical.",
+      "date_published": "2016-05-16T21:16:09+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/75/episode-22-grumpy-about-everything.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 4251591
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/05/episode-21-the-right-work-balance/",
+      "url": "http://timetable.manton.org/2016/05/episode-21-the-right-work-balance/",
+      "title": "Episode 21: The right work balance",
+      "content_html": "Today I take stock of the last few weeks of client work and recovering from 2 months of focusing so heavily on my personal blog.",
+      "date_published": "2016-05-04T14:46:38+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/72/episode-21-the-right-work-balance.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 3760442
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/04/episode-20-kickstarter-rewards/",
+      "url": "http://timetable.manton.org/2016/04/episode-20-kickstarter-rewards/",
+      "title": "Episode 20: Kickstarter rewards",
+      "content_html": "I talk about receiving the Loish art book and my current thoughts on Kickstarter goals and rewards.",
+      "date_published": "2016-04-06T20:01:39+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/69/episode-20-kickstarter-rewards.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 4258693
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/04/episode-19-kickstarter-recording/",
+      "url": "http://timetable.manton.org/2016/04/episode-19-kickstarter-recording/",
+      "title": "Episode 19: Kickstarter recording",
+      "content_html": "I finally record a video for my Kickstarter project. Now I just need to edit it and do everything else.",
+      "date_published": "2016-04-05T19:18:11+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/67/episode-19-kickstarter-recording.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 3623188
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/03/episode-18-waiting-for-the-se/",
+      "url": "http://timetable.manton.org/2016/03/episode-18-waiting-for-the-se/",
+      "title": "Episode 18: Waiting for the SE",
+      "content_html": "I’m playing Nintendo’s new iPhone app Miitomo, watching my Mii character pace around the room as he (and I) wait for our iPhone SE delivery. Also talk about the library routine and Rails 5.",
+      "date_published": "2016-03-31T15:21:40+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/65/episode-18-waiting-for-the-se.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 3962776
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/03/episode-17-spring-break/",
+      "url": "http://timetable.manton.org/2016/03/episode-17-spring-break/",
+      "title": "Episode 17: Spring break",
+      "content_html": "It’s spring break week, which means the kids are out of school and SXSW is taking over downtown.",
+      "date_published": "2016-03-14T21:16:12+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/62/episode-17-spring-break.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 2759675
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/03/episode-16-dont-panic/",
+      "url": "http://timetable.manton.org/2016/03/episode-16-dont-panic/",
+      "title": "Episode 16: Don&#8217;t panic",
+      "content_html": "This week I’m thinking back on how Staple! Expo went over the weekend, and why it never helps to panic when something isn’t going perfectly to plan.",
+      "date_published": "2016-03-11T14:58:02+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/60/episode-16-dont-panic.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 1751614
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/02/episode-15-leap-year/",
+      "url": "http://timetable.manton.org/2016/02/episode-15-leap-year/",
+      "title": "Episode 15: Leap year",
+      "content_html": "I reflect on 6 months as an indie, think about stealing time for projects, and plan how I can use working from a coffee shop in the morning to provide a better structure to my day.",
+      "date_published": "2016-02-29T20:25:26+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/57/episode-15-leap-year.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 3042254
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/02/episode-14-coffee-writing/",
+      "url": "http://timetable.manton.org/2016/02/episode-14-coffee-writing/",
+      "title": "Episode 14: Coffee writing",
+      "content_html": "At my 10th new coffee shop in as many days, I write a few blog posts. And on this episode I talk about it.",
+      "date_published": "2016-02-27T23:26:47+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/54/episode-14-coffee-writing.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 2137795
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/02/episode-13-luck/",
+      "url": "http://timetable.manton.org/2016/02/episode-13-luck/",
+      "title": "Episode 13: Luck",
+      "content_html": "I finally drop the stickers in the mailbox at our neighborhood post office. Thinking this episode about what it means to be lucky.",
+      "date_published": "2016-02-23T17:18:39+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/52/episode-13-luck.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 1752427
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/02/episode-12-kickstarter-music/",
+      "url": "http://timetable.manton.org/2016/02/episode-12-kickstarter-music/",
+      "title": "Episode 12: Kickstarter music",
+      "content_html": "Back from a quick trip to Portland, today I’m thinking about the music for my Kickstarter project.",
+      "date_published": "2016-02-17T16:32:07+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/48/episode-12-kickstarter-music.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 2192760
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/02/episode-11-timing-a-launch/",
+      "url": "http://timetable.manton.org/2016/02/episode-11-timing-a-launch/",
+      "title": "Episode 11: Timing a launch",
+      "content_html": "Back from a sick day or two, I talk today about Twitter’s algorithmic timeline change and why it would be nice to launch a product when your competitor has some bad news.",
+      "date_published": "2016-02-11T17:45:24+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/46/episode-11-timing-a-launch.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 2033516
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/02/episode-10-planning-outside/",
+      "url": "http://timetable.manton.org/2016/02/episode-10-planning-outside/",
+      "title": "Episode 10: Planning outside",
+      "content_html": "I take the iPad Pro and my microphone out to the front porch, to think through what work I need to focus on for today.",
+      "date_published": "2016-02-01T21:07:33+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/43/episode-10-planning-outside.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 2136126
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/01/episode-9-not-just-an-app/",
+      "url": "http://timetable.manton.org/2016/01/episode-9-not-just-an-app/",
+      "title": "Episode 9: Not just an app",
+      "content_html": "Today I mention the iPhone app rejection, talk about why the iPhone app itself is secondary to the web version, and reveal more about the Kickstarter.",
+      "date_published": "2016-01-29T20:43:15+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/41/episode-9-not-just-an-app.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 2960339
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/01/episode-8-early-start/",
+      "url": "http://timetable.manton.org/2016/01/episode-8-early-start/",
+      "title": "Episode 8: Early start",
+      "content_html": "Recorded in 3 segments, I set my alarm early this morning to get some coding done before the day starts slipping away.",
+      "date_published": "2016-01-25T18:31:59+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/38/episode-8-early-start.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 2133612
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/01/episode-7-backup-distractions/",
+      "url": "http://timetable.manton.org/2016/01/episode-7-backup-distractions/",
+      "title": "Episode 7: Backup distractions",
+      "content_html": "This morning I was distracted a little with backups, ordering a new hard drive, and thinking about my iOS app, which was just rejected by Apple.",
+      "date_published": "2016-01-22T20:26:46+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/36/episode-7-backup-distractions.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 3438698
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/01/episode-6-thinking-about-kickstarter/",
+      "url": "http://timetable.manton.org/2016/01/episode-6-thinking-about-kickstarter/",
+      "title": "Episode 6: Thinking about Kickstarter",
+      "content_html": "I start with some thoughts on basketball, my potential Kickstarter campaign, and whether it’s better to start strong or finish strong. (Go Spurs Go!)",
+      "date_published": "2016-01-19T18:34:17+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/34/episode-6-thinking-about-kickstarter.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 2263612
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/01/episode-5-mailing-stickers/",
+      "url": "http://timetable.manton.org/2016/01/episode-5-mailing-stickers/",
+      "title": "Episode 5: Mailing stickers",
+      "content_html": "Today I stopped at the post office to pick up some stamps to mail stickers for the new microblogging app and platform I’m working on.",
+      "date_published": "2016-01-13T16:55:49+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/31/episode-5-mailing-stickers.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 2908722
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/01/episode-4-driving-downtown/",
+      "url": "http://timetable.manton.org/2016/01/episode-4-driving-downtown/",
+      "title": "Episode 4: Driving downtown",
+      "content_html": "This morning I was downtown to work at a coffee shop for a few hours before lunch. I talk about getting out of the house and last night’s icon sketches.",
+      "date_published": "2016-01-12T01:32:41+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/29/episode-4-driving-downtown.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 2459416
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/01/episode-3-friday-already/",
+      "url": "http://timetable.manton.org/2016/01/episode-3-friday-already/",
+      "title": "Episode 3: Friday already",
+      "content_html": "On this episode, I talk about finishing some work and the new iPhone microphone I bought.",
+      "date_published": "2016-01-08T20:59:47+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/23/episode-3-friday-already.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 1851283
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/01/episode-2-naming-the-podcast/",
+      "url": "http://timetable.manton.org/2016/01/episode-2-naming-the-podcast/",
+      "title": "Episode 2: Naming the podcast",
+      "content_html": "On this episode, I talk about trying tea instead of coffee, how I named this podcast, and my work schedule as I wrap up the week.",
+      "date_published": "2016-01-07T20:01:52+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/19/episode-2-naming-the-podcast.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 2893469
+        }
+      ]
+    },
+    {
+      "id": "http://timetable.manton.org/2016/01/episode-1-hello/",
+      "url": "http://timetable.manton.org/2016/01/episode-1-hello/",
+      "title": "Episode 1: Hello",
+      "content_html": "On the first episode, I introduce the idea behind the show and the topics I hope to cover.",
+      "date_published": "2016-01-06T02:57:22+00:00",
+      "attachments": [
+        {
+          "url": "http://timetable.manton.org/podcast-download/10/episode-1-hello.mp3",
+          "mime_type": "audio/mpeg",
+          "size_in_bytes": 3126886
+        }
+      ]
+    }
+  ]
+}
json-feed.cabal view
@@ -1,5 +1,5 @@ name: json-feed-version: 0.0.2+version: 0.0.3 cabal-version: >=1.10 build-type: Simple license: MIT@@ -32,33 +32,37 @@     exposed-modules:         JsonFeed     build-depends:-        aeson >=1.0.2.1 && <1.1,-        base >=4.9.1.0 && <4.10,-        bytestring >=0.10.8.1 && <0.11,+        aeson >=1.2.3.0 && <1.3,+        base >=4.10.1.0 && <4.11,+        bytestring >=0.10.8.2 && <0.11,         mime-types >=0.1.0.7 && <0.2,         network-uri >=2.6.1.0 && <2.7,-        tagsoup ==0.14.*,-        text >=1.2.2.1 && <1.3,-        time >=1.6.0.1 && <1.7+        tagsoup >=0.14.2 && <0.15,+        text >=1.2.2.2 && <1.3,+        time >=1.8.0.2 && <1.9     default-language: Haskell2010     hs-source-dirs: library+    other-modules:+        Paths_json_feed     ghc-options: -Wall -test-suite test+test-suite  test     type: exitcode-stdio-1.0     main-is: test.hs     build-depends:-        aeson >=1.0.2.1 && <1.1,-        base >=4.9.1.0 && <4.10,-        bytestring >=0.10.8.1 && <0.11,+        aeson >=1.2.3.0 && <1.3,+        base >=4.10.1.0 && <4.11,+        bytestring >=0.10.8.2 && <0.11,+        filepath >=1.4.1.2 && <1.5,+        hspec >=2.4.4 && <2.5,+        json-feed -any,         mime-types >=0.1.0.7 && <0.2,         network-uri >=2.6.1.0 && <2.7,-        tagsoup ==0.14.*,-        text >=1.2.2.1 && <1.3,-        time >=1.6.0.1 && <1.7,-        filepath >=1.4.1.1 && <1.5,-        hspec >=2.4.1 && <2.5,-        json-feed >=0.0.2 && <0.1+        tagsoup >=0.14.2 && <0.15,+        text >=1.2.2.2 && <1.3,+        time >=1.8.0.2 && <1.9     default-language: Haskell2010     hs-source-dirs: tests+    other-modules:+        Paths_json_feed     ghc-options: -Wall -rtsopts -threaded -with-rtsopts=-N
library/JsonFeed.hs view
@@ -1,313 +1,312 @@-{-# LANGUAGE DeriveGeneric #-}---- | <https://jsonfeed.org>-module JsonFeed-  ( parseFeed-  , renderFeed-  -- * Types-  , Feed (..)-  , Author (..)-  , Item (..)-  , Attachment (..)-  , Hub (..)-  -- * Wrappers-  , Html (..)-  , Mime (..)-  , Url (..)-  ) where--import Data.Aeson (FromJSON, ToJSON, Value)-import Data.Aeson.Types (Options)-import Data.ByteString.Lazy (ByteString)-import Data.Text (Text)-import Data.Time (UTCTime)-import GHC.Generics (Generic)-import Network.Mime (MimeType)-import Network.URI (URI)-import Numeric.Natural (Natural)-import Text.HTML.TagSoup (Tag)--import qualified Data.Aeson as Json-import qualified Data.Aeson.Types as Json-import qualified Data.List as List-import qualified Data.Text as Text-import qualified Data.Text.Encoding as Text-import qualified Network.URI as Uri-import qualified Text.HTML.TagSoup as Html---parseFeed :: ByteString -> Either String Feed-parseFeed = Json.eitherDecode---renderFeed :: Feed -> ByteString-renderFeed = Json.encode---data Feed = Feed-  { feedAuthor :: Maybe Author-  -- ^ The feed author. The author object has several members. These are all-  -- optional --- but if you provide an author object, then at least one is-  -- required.-  , feedDescription :: Maybe Text-  -- ^ Provides more detail, beyond the title, on what the feed is about. A-  -- feed reader may display this text.-  , feedExpired :: Maybe Bool-  -- ^ Says whether or not the feed is finished --- that is, whether or not it-  -- will ever update again. A feed for a temporary event, such as an instance-  -- of the Olympics, could expire. If the value is 'True', then it's expired.-  -- Any other value, or the absence of 'feedExpired', means the feed may-  -- continue to update.-  , feedFavicon :: Maybe Url-  -- ^ The URL of an image for the feed suitable to be used in a source list.-  -- It should be square and relatively small, but not smaller than 64 x 64 (so-  -- that it can look good on retina displays). As with 'feedIcon', this image-  -- should use transparency where appropriate, since it may be rendered on a-  -- non-white background.-  , feedFeedUrl :: Maybe Url-  -- ^ The URL of the feed, and serves as the unique identifier for the feed.-  -- As with 'feedHomePageUrl', this should be considered required for feeds on-  -- the public web.-  , feedHomePageUrl :: Maybe Url-  -- ^ The URL of the resource that the feed describes. This resource may or-  -- may not actually be a "home" page, but it should be an HTML page. If a-  -- feed is published on the public web, this should be considered as-  -- required. But it may not make sense in the case of a file created on a-  -- desktop computer, when that file is not shared or is shared only-  -- privately.-  , feedHubs :: Maybe [Hub]-  -- ^ Describes endpoints that can be used to subscribe to real-time-  -- notifications from the publisher of this feed. Each object has a type and-  -- URL, both of which are required.-  , feedIcon :: Maybe Url-  -- ^ The URL of an image for the feed suitable to be used in a timeline, much-  -- the way an avatar might be used. It should be square and relatively large-  -- --- such as 512 x 512 --- so that it can be scaled-down and so that it can-  -- look good on retina displays. It should use transparency where-  -- appropriate, since it may be rendered on a non-white background.-  , feedItems :: [Item]-  -- ^ An array of objects that describe each object in the list.-  , feedNextUrl :: Maybe Url-  -- ^ The URL of a feed that provides the next /n/ items, where /n/ is-  -- determined by the publisher. This allows for pagination, but with the-  -- expectation that reader software is not required to use it and probably-  -- won't use it very often. 'feedNextUrl' must not be the same as-  -- 'feedFeedUrl', and it must not be the same as a previous 'feedNextUrl' (to-  -- avoid infinite loops).-  , feedTitle :: Text-  -- ^ The name of the feed, which will often correspond to the name of the-  -- website (blog, for instance), though not necessarily.-  , feedUserComment :: Maybe Text-  -- ^ A description of the purpose of the feed. This is for the use of people-  -- looking at the raw JSON, and should be ignored by feed readers.-  , feedVersion :: Url-  -- ^ The URL of the version of the format the feed uses.-  } deriving (Eq, Generic, Show)--instance FromJSON Feed where-  parseJSON = Json.genericParseJSON (jsonOptions "feed")--instance ToJSON Feed where-  toJSON = Json.genericToJSON (jsonOptions "feed")---data Author = Author-  { authorAvatar :: Maybe Url-  -- ^ The URL for an image for the author. As with icon, it should be square-  -- and relatively large --- such as 512 x 512 --- and should use transparency-  -- where appropriate, since it may be rendered on a non-white background.-  , authorName :: Maybe Text-  -- ^ The author's name.-  , authorUrl :: Maybe Url-  -- ^ The URL of a site owned by the author. It could be a blog, micro-blog,-  -- Twitter account, and so on. Ideally the linked-to page provides a way to-  -- contact the author, but that's not required. The URL could be a @mailto:@-  -- link, though we suspect that will be rare.-  } deriving (Eq, Generic, Show)--instance FromJSON Author where-  parseJSON value = do-    author <- Json.genericParseJSON (jsonOptions "author") value-    case (authorAvatar author, authorName author, authorUrl author) of-      (Nothing, Nothing, Nothing) -> fail ("invalid Author: " ++ show author)-      _ -> pure author--instance ToJSON Author where-  toJSON = Json.genericToJSON (jsonOptions "author")---data Item = Item-  { itemAttachments :: Maybe [Attachment]-  -- ^ Lists related resources. Podcasts, for instance, would include an-  -- attachment that's an audio or video file.-  , itemAuthor :: Maybe Author-  -- ^ Has the same structure as the top-level 'feedAuthor'. If not specified-  -- in an item, then the top-level author, if present, is the author of the-  -- item.-  , itemBannerImage :: Maybe Url-  -- ^ The URL of an image to use as a banner. Some blogging systems (such as-  -- Medium) display a different banner image chosen to go with each post, but-  -- that image wouldn't otherwise appear in the content_html. A feed reader-  -- with a detail view may choose to show this banner image at the top of the-  -- detail view, possibly with the title overlaid.-  , itemContentHtml :: Maybe Html-  -- ^ 'itemContentHtml' and 'itemContentText' are each optional strings ----  -- but one or both must be present. This is the HTML or plain text of the-  -- item. Important: the only place HTML is allowed in this format is in-  -- 'itemContentHtml'. A Twitter-like service might use 'itemContentText',-  -- while a blog might use 'itemContentHtml'. Use whichever makes sense for-  -- your resource. (It doesn't even have to be the same for each item in a-  -- feed.)-  , itemContentText :: Maybe Text-  -- ^ See 'itemContentHtml'.-  , itemDateModified :: Maybe UTCTime-  -- ^ Specifies the modification date in RFC 3339 format.-  , itemDatePublished :: Maybe UTCTime-  -- ^ Specifies the date in RFC 3339 format. (Example:-  -- @2010-02-07T14:04:00-05:00@.)-  , itemExternalUrl :: Maybe Url-  -- ^ The URL of a page elsewhere. This is especially useful for linkblogs. If-  -- 'itemUrl' links to where you're talking about a thing, then-  -- 'itemExternalUrl' links to the thing you're talking about.-  , itemId :: Value-  -- ^ Unique for the item in the feed over time. If an item is ever updated,-  -- the ID should be unchanged. New items should never use a previously-used-  -- ID. If an ID is presented as a number or other type, a JSON Feed reader-  -- must coerce it to a string. Ideally, the ID is the full URL of the-  -- resource described by the item, since URLs make great unique identifiers.-  , itemImage :: Maybe Url-  -- ^ The URL of the main image for the item. This image may also appear in-  -- the 'itemContentHtml' --- if so, it's a hint to the feed reader that this-  -- is the main, featured image. Feed readers may use the image as a preview-  -- (probably resized as a thumbnail and placed in a timeline).-  , itemSummary :: Maybe Text-  -- ^ A plain text sentence or two describing the item. This might be-  -- presented in a timeline, for instance, where a detail view would display-  -- all of 'itemContentHtml' or 'itemContentText'.-  , itemTags :: Maybe [Text]-  -- ^ Can have any plain text values you want. Tags tend to be just one word,-  -- but they may be anything. Note: they are not the equivalent of Twitter-  -- hashtags. Some blogging systems and other feed formats call these-  -- categories.-  , itemTitle :: Maybe Text-  -- ^ Plain text. Microblog items in particular may omit titles.-  , itemUrl :: Maybe Url-  -- ^ The URL of the resource described by the item. It's the permalink. This-  -- may be the same as the ID --- but should be present regardless.-  } deriving (Eq, Generic, Show)--instance FromJSON Item where-  parseJSON value = do-    item <- Json.genericParseJSON (jsonOptions "item") value-    case (itemContentHtml item, itemContentText item) of-      (Nothing, Nothing) -> fail ("invalid Item: " ++ show item)-      _ -> pure item--instance ToJSON Item where-  toJSON = Json.genericToJSON (jsonOptions "item")---data Attachment = Attachment-  { attachmentDurationInSeconds :: Maybe Natural-  -- ^ Specifies how long it takes to listen to or watch, when played at normal-  -- speed.-  , attachmentMimeType :: Mime-  -- ^ Specifies the type of the attachment, such as @audio/mpeg@.-  , attachmentSizeInBytes :: Maybe Natural-  -- ^ Specifies how large the file is.-  , attachmentTitle :: Maybe Text-  -- ^ Is a name for the attachment. Important: if there are multiple-  -- attachments, and two or more have the exact same title (when title is-  -- present), then they are considered as alternate representations of the-  -- same thing. In this way a podcaster, for instance, might provide an audio-  -- recording in different formats.-  , attachmentUrl :: Url-  -- ^ Specifies the location of the attachment.-  } deriving (Eq, Generic, Show)--instance FromJSON Attachment where-  parseJSON = Json.genericParseJSON (jsonOptions "attachment")--instance ToJSON Attachment where-  toJSON = Json.genericToJSON (jsonOptions "attachment")---data Hub = Hub-  { hubType :: Text-  , hubUrl :: Url-  } deriving (Eq, Generic, Show)--instance FromJSON Hub where-  parseJSON = Json.genericParseJSON (jsonOptions "hub")--instance ToJSON Hub where-  toJSON = Json.genericToJSON (jsonOptions "hub")---newtype Html = Html-  { htmlValue :: [Tag Text]-  } deriving (Eq, Show)--instance FromJSON Html where-  parseJSON = Json.withText "Html" (\text ->-    pure Html { htmlValue = Html.parseTags text })--instance ToJSON Html where-  toJSON html = Json.String (Html.renderTags (htmlValue html))---newtype Mime = Mime-  { mimeValue :: MimeType-  } deriving (Eq, Show)--instance FromJSON Mime where-  parseJSON = Json.withText "Mime" (\text ->-    pure Mime { mimeValue = Text.encodeUtf8 text })--instance ToJSON Mime where-  toJSON mime = Json.String (Text.decodeUtf8 (mimeValue mime))---newtype Url = Url-  { urlValue :: URI-  } deriving (Eq, Show)--instance FromJSON Url where-  parseJSON = Json.withText "Url" (\text ->-    case Uri.parseURI (Text.unpack text) of-      Just uri -> pure Url { urlValue = uri }-      Nothing -> fail ("invalid Url: " ++ show text))--instance ToJSON Url where-  toJSON url = Json.String (Text.pack (show (urlValue url)))---jsonOptions :: String -> Options-jsonOptions prefix =-  Json.defaultOptions-    { Json.fieldLabelModifier = fieldLabelModifier prefix-    }---fieldLabelModifier :: String -> String -> String-fieldLabelModifier prefix string =-  Json.camelTo2 '_' (unsafeDropPrefix prefix string)---unsafeDropPrefix :: String -> String -> String-unsafeDropPrefix prefix string =-  case dropPrefix prefix string of-    Just suffix -> suffix-    Nothing -> error (unwords-      [ "unsafeDropPrefix:"-      , show prefix-      , "is not a prefix of"-      , show string-      ])---dropPrefix :: String -> String -> Maybe String-dropPrefix prefix string =-  if List.isPrefixOf prefix string-    then Just (drop (length prefix) string)-    else Nothing+{-# LANGUAGE DeriveGeneric #-}
+
+-- | <https://jsonfeed.org>
+module JsonFeed
+  ( parseFeed
+  , renderFeed
+  -- * Types
+  , Feed (..)
+  , Author (..)
+  , Item (..)
+  , Attachment (..)
+  , Hub (..)
+  -- * Wrappers
+  , Html (..)
+  , Mime (..)
+  , Url (..)
+  ) where
+
+import Data.Aeson (FromJSON, ToJSON, Value)
+import Data.Aeson.Types (Options)
+import Data.ByteString.Lazy (ByteString)
+import Data.Text (Text)
+import Data.Time (UTCTime)
+import GHC.Generics (Generic)
+import Network.Mime (MimeType)
+import Network.URI (URI)
+import Numeric.Natural (Natural)
+import Text.HTML.TagSoup (Tag)
+
+import qualified Data.Aeson as Json
+import qualified Data.List as List
+import qualified Data.Text as Text
+import qualified Data.Text.Encoding as Text
+import qualified Network.URI as Uri
+import qualified Text.HTML.TagSoup as Html
+
+
+parseFeed :: ByteString -> Either String Feed
+parseFeed = Json.eitherDecode
+
+
+renderFeed :: Feed -> ByteString
+renderFeed = Json.encode
+
+
+data Feed = Feed
+  { feedAuthor :: Maybe Author
+  -- ^ The feed author. The author object has several members. These are all
+  -- optional --- but if you provide an author object, then at least one is
+  -- required.
+  , feedDescription :: Maybe Text
+  -- ^ Provides more detail, beyond the title, on what the feed is about. A
+  -- feed reader may display this text.
+  , feedExpired :: Maybe Bool
+  -- ^ Says whether or not the feed is finished --- that is, whether or not it
+  -- will ever update again. A feed for a temporary event, such as an instance
+  -- of the Olympics, could expire. If the value is 'True', then it's expired.
+  -- Any other value, or the absence of 'feedExpired', means the feed may
+  -- continue to update.
+  , feedFavicon :: Maybe Url
+  -- ^ The URL of an image for the feed suitable to be used in a source list.
+  -- It should be square and relatively small, but not smaller than 64 x 64 (so
+  -- that it can look good on retina displays). As with 'feedIcon', this image
+  -- should use transparency where appropriate, since it may be rendered on a
+  -- non-white background.
+  , feedFeedUrl :: Maybe Url
+  -- ^ The URL of the feed, and serves as the unique identifier for the feed.
+  -- As with 'feedHomePageUrl', this should be considered required for feeds on
+  -- the public web.
+  , feedHomePageUrl :: Maybe Url
+  -- ^ The URL of the resource that the feed describes. This resource may or
+  -- may not actually be a "home" page, but it should be an HTML page. If a
+  -- feed is published on the public web, this should be considered as
+  -- required. But it may not make sense in the case of a file created on a
+  -- desktop computer, when that file is not shared or is shared only
+  -- privately.
+  , feedHubs :: Maybe [Hub]
+  -- ^ Describes endpoints that can be used to subscribe to real-time
+  -- notifications from the publisher of this feed. Each object has a type and
+  -- URL, both of which are required.
+  , feedIcon :: Maybe Url
+  -- ^ The URL of an image for the feed suitable to be used in a timeline, much
+  -- the way an avatar might be used. It should be square and relatively large
+  -- --- such as 512 x 512 --- so that it can be scaled-down and so that it can
+  -- look good on retina displays. It should use transparency where
+  -- appropriate, since it may be rendered on a non-white background.
+  , feedItems :: [Item]
+  -- ^ An array of objects that describe each object in the list.
+  , feedNextUrl :: Maybe Url
+  -- ^ The URL of a feed that provides the next /n/ items, where /n/ is
+  -- determined by the publisher. This allows for pagination, but with the
+  -- expectation that reader software is not required to use it and probably
+  -- won't use it very often. 'feedNextUrl' must not be the same as
+  -- 'feedFeedUrl', and it must not be the same as a previous 'feedNextUrl' (to
+  -- avoid infinite loops).
+  , feedTitle :: Text
+  -- ^ The name of the feed, which will often correspond to the name of the
+  -- website (blog, for instance), though not necessarily.
+  , feedUserComment :: Maybe Text
+  -- ^ A description of the purpose of the feed. This is for the use of people
+  -- looking at the raw JSON, and should be ignored by feed readers.
+  , feedVersion :: Url
+  -- ^ The URL of the version of the format the feed uses.
+  } deriving (Eq, Generic, Show)
+
+instance FromJSON Feed where
+  parseJSON = Json.genericParseJSON (jsonOptions "feed")
+
+instance ToJSON Feed where
+  toJSON = Json.genericToJSON (jsonOptions "feed")
+
+
+data Author = Author
+  { authorAvatar :: Maybe Url
+  -- ^ The URL for an image for the author. As with icon, it should be square
+  -- and relatively large --- such as 512 x 512 --- and should use transparency
+  -- where appropriate, since it may be rendered on a non-white background.
+  , authorName :: Maybe Text
+  -- ^ The author's name.
+  , authorUrl :: Maybe Url
+  -- ^ The URL of a site owned by the author. It could be a blog, micro-blog,
+  -- Twitter account, and so on. Ideally the linked-to page provides a way to
+  -- contact the author, but that's not required. The URL could be a @mailto:@
+  -- link, though we suspect that will be rare.
+  } deriving (Eq, Generic, Show)
+
+instance FromJSON Author where
+  parseJSON value = do
+    author <- Json.genericParseJSON (jsonOptions "author") value
+    case (authorAvatar author, authorName author, authorUrl author) of
+      (Nothing, Nothing, Nothing) -> fail ("invalid Author: " ++ show author)
+      _ -> pure author
+
+instance ToJSON Author where
+  toJSON = Json.genericToJSON (jsonOptions "author")
+
+
+data Item = Item
+  { itemAttachments :: Maybe [Attachment]
+  -- ^ Lists related resources. Podcasts, for instance, would include an
+  -- attachment that's an audio or video file.
+  , itemAuthor :: Maybe Author
+  -- ^ Has the same structure as the top-level 'feedAuthor'. If not specified
+  -- in an item, then the top-level author, if present, is the author of the
+  -- item.
+  , itemBannerImage :: Maybe Url
+  -- ^ The URL of an image to use as a banner. Some blogging systems (such as
+  -- Medium) display a different banner image chosen to go with each post, but
+  -- that image wouldn't otherwise appear in the content_html. A feed reader
+  -- with a detail view may choose to show this banner image at the top of the
+  -- detail view, possibly with the title overlaid.
+  , itemContentHtml :: Maybe Html
+  -- ^ 'itemContentHtml' and 'itemContentText' are each optional strings ---
+  -- but one or both must be present. This is the HTML or plain text of the
+  -- item. Important: the only place HTML is allowed in this format is in
+  -- 'itemContentHtml'. A Twitter-like service might use 'itemContentText',
+  -- while a blog might use 'itemContentHtml'. Use whichever makes sense for
+  -- your resource. (It doesn't even have to be the same for each item in a
+  -- feed.)
+  , itemContentText :: Maybe Text
+  -- ^ See 'itemContentHtml'.
+  , itemDateModified :: Maybe UTCTime
+  -- ^ Specifies the modification date in RFC 3339 format.
+  , itemDatePublished :: Maybe UTCTime
+  -- ^ Specifies the date in RFC 3339 format. (Example:
+  -- @2010-02-07T14:04:00-05:00@.)
+  , itemExternalUrl :: Maybe Url
+  -- ^ The URL of a page elsewhere. This is especially useful for linkblogs. If
+  -- 'itemUrl' links to where you're talking about a thing, then
+  -- 'itemExternalUrl' links to the thing you're talking about.
+  , itemId :: Value
+  -- ^ Unique for the item in the feed over time. If an item is ever updated,
+  -- the ID should be unchanged. New items should never use a previously-used
+  -- ID. If an ID is presented as a number or other type, a JSON Feed reader
+  -- must coerce it to a string. Ideally, the ID is the full URL of the
+  -- resource described by the item, since URLs make great unique identifiers.
+  , itemImage :: Maybe Url
+  -- ^ The URL of the main image for the item. This image may also appear in
+  -- the 'itemContentHtml' --- if so, it's a hint to the feed reader that this
+  -- is the main, featured image. Feed readers may use the image as a preview
+  -- (probably resized as a thumbnail and placed in a timeline).
+  , itemSummary :: Maybe Text
+  -- ^ A plain text sentence or two describing the item. This might be
+  -- presented in a timeline, for instance, where a detail view would display
+  -- all of 'itemContentHtml' or 'itemContentText'.
+  , itemTags :: Maybe [Text]
+  -- ^ Can have any plain text values you want. Tags tend to be just one word,
+  -- but they may be anything. Note: they are not the equivalent of Twitter
+  -- hashtags. Some blogging systems and other feed formats call these
+  -- categories.
+  , itemTitle :: Maybe Text
+  -- ^ Plain text. Microblog items in particular may omit titles.
+  , itemUrl :: Maybe Url
+  -- ^ The URL of the resource described by the item. It's the permalink. This
+  -- may be the same as the ID --- but should be present regardless.
+  } deriving (Eq, Generic, Show)
+
+instance FromJSON Item where
+  parseJSON value = do
+    item <- Json.genericParseJSON (jsonOptions "item") value
+    case (itemContentHtml item, itemContentText item) of
+      (Nothing, Nothing) -> fail ("invalid Item: " ++ show item)
+      _ -> pure item
+
+instance ToJSON Item where
+  toJSON = Json.genericToJSON (jsonOptions "item")
+
+
+data Attachment = Attachment
+  { attachmentDurationInSeconds :: Maybe Natural
+  -- ^ Specifies how long it takes to listen to or watch, when played at normal
+  -- speed.
+  , attachmentMimeType :: Mime
+  -- ^ Specifies the type of the attachment, such as @audio/mpeg@.
+  , attachmentSizeInBytes :: Maybe Natural
+  -- ^ Specifies how large the file is.
+  , attachmentTitle :: Maybe Text
+  -- ^ Is a name for the attachment. Important: if there are multiple
+  -- attachments, and two or more have the exact same title (when title is
+  -- present), then they are considered as alternate representations of the
+  -- same thing. In this way a podcaster, for instance, might provide an audio
+  -- recording in different formats.
+  , attachmentUrl :: Url
+  -- ^ Specifies the location of the attachment.
+  } deriving (Eq, Generic, Show)
+
+instance FromJSON Attachment where
+  parseJSON = Json.genericParseJSON (jsonOptions "attachment")
+
+instance ToJSON Attachment where
+  toJSON = Json.genericToJSON (jsonOptions "attachment")
+
+
+data Hub = Hub
+  { hubType :: Text
+  , hubUrl :: Url
+  } deriving (Eq, Generic, Show)
+
+instance FromJSON Hub where
+  parseJSON = Json.genericParseJSON (jsonOptions "hub")
+
+instance ToJSON Hub where
+  toJSON = Json.genericToJSON (jsonOptions "hub")
+
+
+newtype Html = Html
+  { htmlValue :: [Tag Text]
+  } deriving (Eq, Show)
+
+instance FromJSON Html where
+  parseJSON = Json.withText "Html" (\text ->
+    pure Html { htmlValue = Html.parseTags text })
+
+instance ToJSON Html where
+  toJSON html = Json.String (Html.renderTags (htmlValue html))
+
+
+newtype Mime = Mime
+  { mimeValue :: MimeType
+  } deriving (Eq, Show)
+
+instance FromJSON Mime where
+  parseJSON = Json.withText "Mime" (\text ->
+    pure Mime { mimeValue = Text.encodeUtf8 text })
+
+instance ToJSON Mime where
+  toJSON mime = Json.String (Text.decodeUtf8 (mimeValue mime))
+
+
+newtype Url = Url
+  { urlValue :: URI
+  } deriving (Eq, Show)
+
+instance FromJSON Url where
+  parseJSON = Json.withText "Url" (\text ->
+    case Uri.parseURI (Text.unpack text) of
+      Just uri -> pure Url { urlValue = uri }
+      Nothing -> fail ("invalid Url: " ++ show text))
+
+instance ToJSON Url where
+  toJSON url = Json.String (Text.pack (show (urlValue url)))
+
+
+jsonOptions :: String -> Options
+jsonOptions prefix =
+  Json.defaultOptions
+    { Json.fieldLabelModifier = fieldLabelModifier prefix
+    }
+
+
+fieldLabelModifier :: String -> String -> String
+fieldLabelModifier prefix string =
+  Json.camelTo2 '_' (unsafeDropPrefix prefix string)
+
+
+unsafeDropPrefix :: String -> String -> String
+unsafeDropPrefix prefix string =
+  case dropPrefix prefix string of
+    Just suffix -> suffix
+    Nothing -> error (unwords
+      [ "unsafeDropPrefix:"
+      , show prefix
+      , "is not a prefix of"
+      , show string
+      ])
+
+
+dropPrefix :: String -> String -> Maybe String
+dropPrefix prefix string =
+  if List.isPrefixOf prefix string
+    then Just (drop (length prefix) string)
+    else Nothing
tests/test.hs view
@@ -1,33 +1,33 @@-module Main (main) where--import JsonFeed-import System.FilePath ((</>), (<.>))-import Test.Hspec--import qualified Control.Monad as Monad-import qualified Data.ByteString.Lazy as ByteString-import qualified Data.Either as Either---main :: IO ()-main = hspec . parallel . describe "JsonFeed" $ do-  Monad.forM_ feeds $ \feed -> do-    it ("parses the " ++ feed ++ " feed") $ do-      let file = "feeds" </> feed <.> "json"-      contents <- ByteString.readFile file-      parseFeed contents `shouldSatisfy` Either.isRight--feeds :: [String]-feeds =-  [ "allenpike.com"-  , "daringfireball.net"-  , "flyingmeat.com"-  , "hypercritical.co"-  , "inessential.com"-  , "jsonfeed.org"-  , "manton.org"-  , "maybepizza.com"-  , "shapeof.com"-  , "therecord.co"-  , "timetable.manton.org"-  ]+module Main (main) where
+
+import JsonFeed
+import System.FilePath ((</>), (<.>))
+import Test.Hspec
+
+import qualified Control.Monad as Monad
+import qualified Data.ByteString.Lazy as ByteString
+import qualified Data.Either as Either
+
+
+main :: IO ()
+main = hspec . parallel . describe "JsonFeed" $ do
+  Monad.forM_ feeds $ \feed -> do
+    it ("parses the " ++ feed ++ " feed") $ do
+      let file = "feeds" </> feed <.> "json"
+      contents <- ByteString.readFile file
+      parseFeed contents `shouldSatisfy` Either.isRight
+
+feeds :: [String]
+feeds =
+  [ "allenpike.com"
+  , "daringfireball.net"
+  , "flyingmeat.com"
+  , "hypercritical.co"
+  , "inessential.com"
+  , "jsonfeed.org"
+  , "manton.org"
+  , "maybepizza.com"
+  , "shapeof.com"
+  , "therecord.co"
+  , "timetable.manton.org"
+  ]