Unauthoritative Pronouncements

Subscribe About

Slippery Slope of Empathy

Conor McClure posted a big rant about political correctness. I disagreed with him, at length, on Twitter about this post. It was difficult to carry a conversation with him on Twitter, because there’s a lot to say. I’m going to take apart his blog post here, not because I am mean, but because this is the kind of thing where I don’t want to leave any stone unturned. He’s not a bad guy, he just needs some Orwellian reeducation.

I’m not a fan of political correctness. But even more so, I’m not a fan of forcing political correctness.

People often object to political correctness without saying what it is, which further serves to make it a bit of a boogeyman that you are either for or against. Let’s just revisit it, with some historical context:

Historically, the term was a colloquialism used in the early-to-mid 20th century by Communists and Socialists in political debates, referring pejoratively to the Communist “party line”, which provided for “correct” positions on many matters of politics. The term was adopted in the later 20th century by the New Left, applied with a certain humour [sic] to condemn sexist or racist conduct as “not politically correct”. By the early 1990s, the term was adopted by US conservatives as a pejorative term for all manner of attempts to promote multiculturalism and identity politics, particularly, attempts to introduce new terms that sought to leave behind discriminatory baggage ostensibly attached to older ones, and conversely, to try to make older ones taboo.

Conor’s use of it here certainly corresponds to the pejorative sense. People are attempting to assert that things should be unacceptable. That it is inherently wrong to use certain words that offend people.

He goes on to cite a tweet he made earlier where he paraphrased Mark Cuban. Mark had said this when he was asked about keeping Donald Sterling’s racism out of the NBA, “You don’t. There’s no law against stupid.”

The state is not suing Sterling. The US government is not suing Sterling. He can be forced out — just like any person at a company can be forced out — for saying despicable things that reflect badly on the organization. It is perfectly legal to dismiss someone for being a bigot. Don’t believe me? Go slur your boss. But just in case, we have a court system where this the issues surrounding Sterling can be fully explored. Pay attention to that part about the courts, because it is important. Sterling is offensive, without a doubt, and Conor admits this.

Conor paraphrased Cuban talking about the LA Clippers’ owner Donald Sterling, because he wished to draw parallels between that NBA team owner, and the NFL team, the Washington Redskins. Dana Lone Hill in The Guardian:

Meanwhile, my fellow Native Americans and I watch as Washington Redskins owner Dan Snyder and his team’s fans argue that using a recognized racial slur as the team’s very name isn’t racist and need not be changed. Snyder insists, instead, that he honors our people with the Redskins name and mascot – and that our legitimate anger can be assuaged by donating jackets to a poor reservation in Montana.

Dana and Conor draw very different things from Sterlings’ situation. Her article predates the events of Conors, where the United States Patent and Trademark Office canceled the patents the team held.

Note that it is not immediately canceled, because there will be an appeal. Also note that this involved people suing to get the trademark canceled, this was not a random act of bureaucracy. Back to Conor:

The idea of political correctness seems to have grown in tandem with the “Everyone Gets A Medal!” trend in children’s schooling. It’s the idea that we should all be nice to each other. None of us deserve to have our feelings hurt. We should all feel like winners all the time. These trends, and many facets of other sociopolitical movements, all share a common goal: making everyone feel happy, and systematically identifying (and (re)defining) and eliminating any form of hate speech or negative thoughts or viewpoints.

No, political correctness predates “everyone gets a medal” by a wide margin, but the core Conor is getting at is the idea that feelings should be protected from any, and all, harm. Problem with that, is that we are not talking about issues of personal achievement when we talk about racial slurs. This is not a singular person being called a name, this is a whole ethnicity having been called a derogatory name, and that name being adopted for a sports team. That is not the same thing as protecting an individual persons’ feelings about language.

These days, if you hurt anyone’s feelings, you deserve the attacks that come as a result. That is okay—it’s based on the founding principals of free speech, and works for both sides. Don’t get me wrong: I get it.

Point of order, “free speech”, here, refers to The First Amendment of the United States Constitution, which does not protect all forms of speech. There are tons of limits, and clauses, set on the amendment. It is not pure Voltaire, but that is what most people think it is. Even if it were, I very much doubt that Conor is arguing for the parties of this case to lob racial epithets at one another.

What’s not okay is the next step, something that’s been occurring more and more lately: if you hurt someone’s feelings, you lose your property.

Wait, what? What are all these other cases Conor is referring to? The government canceled a trademark in this one case. Where are all the other cases? What’s all this other property? That’s just a sloppy argument to make if the only thing that backs it up is the one time someone had a trademark canceled because it was ruled it should not have been granted on the basis of a racial slur. Even if you count the trademark as property, no one has taken it yet. Snyder is free to keep pressing his case to higher courts, and to keep telling people that racial slurs are OK when they’re traditional racial slurs.

Just recently, Mozilla CEO Brendan Eich was forced from his position because of a donation he made in support of a gay marriage ban. Let it be known: he’s an asshole for his beliefs. Did he deserve to be removed from his position? Debatable, but because he was ousted from a privately-owned company by a privately-owned company, I can’t comment. Then, Donald Sterling was banned for life from the NBA for making offensive and racist comments. Again, let it be known: Sterling is an awful person. Was it a fair decision? Mark Cuban would say no, and so would I.

Oh, those “more and more lately” things. Yeah well, those are still all private cases, n’est pas? No one gets any protection for that. I’ve written about Eich on here before. I wanted him to see the error of his ways more than I wanted him out of his office, but he was clearly not a good CEO because he couldn’t manage anything (even his damage control interviews) in the couple weeks he held his post. That was not good leadership, which I think is more of the reason he lost his job, than his position on same sex marriage. But this is a digression, because that had nothing to do with the government.

It keeps going with today’s news. I think most would argue and agree that the Redskins name is fairly offensive to the ethnic group in question, and that they have been demanding a change for decades. But I have to wonder: is it really okay for the government to censor and remove a long-held and legally-obtained trademark on the grounds that it hurts feelings? It’s offensive?

Traditional racism is my least favorite kind of argument. We should keep being horrible because we’ve always been horrible? What kind of logic is that? Admit when you are wrong, as the USPTO did today.

Going back to Dana’s article:

An elder from my tribe once told me that, back in the day, some Native Americans were proud of even the mascots that were racist caricatures because it let white people know that we were still here – that we endured. But that is the exact reason this is not, and should not be, acceptable: we are here, and we are not caricatures. My race isn’t a joke, and fans of the Washington DC football team should be, at the very least, embarrassed to call themselves “fans” of a racist slur. I know I would not let someone call me a “redskin” to my face, nor would I allow anyone to address my children in that manner.

I bet no one ranting about the USPTO decision has given much thought to any of that.

Back to today, if you send a slur to be trademarked, they would not trademark it. Should they? I ask Conor:

joesteel: @conorjmcclure OK then, back to the USPTO: Do you think racial slurs deserve trademark protection? conorjmcclure: @joesteel I think people should be able to trademark what they want :\

Conor does not really mean that. I asked if a certain other slur should be trademarked, and he didn’t really want to offer up an opinion on that one. Probably because he knows that one is wrong and doesn’t want to say yes. Of course he shouldn’t say yes, but does that mean this other slur is less-wrong? Conor changed direction:

connorjmcclure: @joesteel @sidoneill I’m reacting to the government offering blanket definitions of what’s defined as “offensive” and what’s not

There is no blanket definition. There was a suit, brought by a private party, that argued it was an offensive slur. A legal process took place, that started in 2006. There was agreement at this level of the court that it was offensive, and for that reason, should not have been granted. That’s not a blanket definition. That is not a magistrate, or mid-level bureaucrat hastily, and arbitrarily, deeming certain words taboo. It’s like there’s a legal system, or something. “We decide, based on the evidence properly before us, that these registrations must be cancelled because they were disparaging to Native Americans at the respective times they were registered, in violation of … the Trademark Act of 1946.” ^1 Back to Conor:

Once again, I have to quote Mark Cuban: we’re going down a slippery slope. At what point is it okay for being politically incorrect to be legally objectionable?

Slippery slope! BINGO! Finish your drink!

The fear of “what next” — it doesn’t have to be defined, or even speculated about with any specificity! Just some other thing. And it’ll be worse! Thought police! Orwell! What will we do then? Why bother talking about racism at all because society could slide off a slope, that is slippery, and then we’ll be sliding … and bad things!

Seriously, unpack that terrorizing notion of the next thing, and the next thing. What are they in this instance? Is there even anything you are willing to assume will be in jeopardy? Some other sports team with a slur in their name, or a racist caricature, will be pressured to change? That they might lose their money-making trademarks on their offensiveness? That’s not really a great slope to try to defend! “We need to let them keep their trademark on their bigoted thing, or all these other bigoted things will be threatened!” — I mock.

Well I guess part of the slippery slope is that no one uses Italian, Irish, French, or German slurs when they talk to me. Sure, there are tons of them, and they’ve all fallen out of fashion. We’ve all agreed, maybe we don’t need to say those things. And that’s just slurs white people called other white people! What a catastrophic slope we’ve all slid down already! Oh dear!

This country has the benefit of holding freedom of thought, speech, and expression to a uniquely high standard, more than the vast, vast majority of countries in the world. We live in a country where law-obeying citizens can raise rebel flags outside of their homes and get away with it. They can speak racial slurs, publish controversial opinions, participate in morally-debatable activities, or abstain from the same activities. We live in a country where those of us who agree or disagree with choices such as these can freely insult, shame, dispute, and boycott to make a point. The power of the people is unique in these regards. I don’t want to change any of this.

Who’s changing any of it? As I’ve already established, the only case even involving the government Conor mentions is the USPTO trademark case. The Clippers, and Mozilla are red herrings. Indeed, Conor cites boycotting as something we can do to make a point —something that happened to Mozilla, which he objected to!

The trademark ruling doesn’t prevent anyone from using the slur, or selling the merchandise. There are no licensing protections afforded to the team owners, assuming the USPTO ruling is upheld and the hold removed. I hardly see that as an unspeakable terror perpetrated on unsuspecting white men just trying to uphold 80 year-old racism. No one has come in to your home and taken away your slurs. You can still slur people as much as you ever could, but now someone’s licensing is potentially at risk? The worst outcome is that public pressure will continue to mount as an indirect result of this. I guess people not liking things you don’t want them to not like is bad?

This isn’t about Conor. It’s not about two white guys arguing about something that doesn’t directly affect them. This is about empathy vs. pigheadedness. Not just blindly raging on about ‘free speech’. Thoughtfulness, considering other perspectives, is not some kind of debilitating impairment.

2014-06-18 12:47:25

Category: text

No Accountability on Our Accounts

Like many children of the 90’s, I have an old AOL account still active for use with a third party AIM client. (I know they rebranded, but it’s stupid, so I refuse to type it. They even forgot they rebranded in the docs they typed, so good job guys.) Upon signing in today, I was greeted by an automated alert from AOL:

We place a premium on your privacy, security and our ongoing relationship with you. We apologize for any inconvenience the recent email spoofing and unauthorized access of AOL’s contact database has had on you and your contacts. If you have any unanswered questions, please visit our FAQs.


If you’re curious, you can click the FAQ to find out that basically anything AOL had on file: “email addresses, postal addresses, contact information (as stored in the AOL Mail “address book”), encrypted account passwords, and the encrypted answers to account security questions that we ask when a user resets his or her password.” That is now in the hands of people that would do not-nice things with them. On the FAQ, they advise users change their password, but don’t even bother to mention it in their automated IM. They also don’t mention whether or not they will change the kinds of account verification questions they used to use when you’d ask for a password reset. You know, just in case their flawless encryption is broken on those answers and they just get in to your account anyway. Also, this could theoretically affect people that no longer hold active AOL accounts and you’d have no idea.

The “how” section is particularly comedic because it is a tautology. To paraphrase: Unauthorized access happened because unauthorized access happened. More troubling is the amount of time AOL took to contact me that my account was one of the accounts in the breach.

Why wasn’t I notified sooner? It is always our intent to be as transparent as possible when it comes to our members’ security. As soon as we were alerted to this issue, we began investigating its cause to identify the scope of affected users as quickly as possible. We then quickly took protective measures to address the impacts of the spoofing issue on April 22, 2014 and notified our consumers of that action in a post at blog.aol.com. We gave further information on April 28, 2014.

We want to be as transparent as possible about issues with AOL Mail that may affect you. Please check our blog periodically for the most up-to-date information.

There we go, every thing a person using AOL as an IM client would never see. Didn’t I check out their official blog? No, of course not! What the hell kind of a notification is that? “We published information about this breach in the 2nd floor women’s restroom of our North Sacramento, CA offices.” Would be nearly as helpful. Furthermore, if passwords were accessed, what possible reason would they have had to not immediately force a password reset? Sure, just keep logging in for another six weeks from the time we knew about a breach! Herp derp!

Also, they say in their FAQ that they are emailing people affected by this. I got an IM notification, and not an email. That’s a really consistent message to send that doesn’t make me at all confident. “Well they didn’t email me so I might be fine…”

Not Just Them

There are information breaches all the time these days. Adobe, eBay, Evernote, Target, etc. In each of these investigations, it has turned out that the people storing the data are total fucking morons. They might as well print all of our passwords and put them in neatly labeled file folders in the lobby area of their corporate headquarters. They might be nominally safer there. No regulation has even been suggested for industry-wide best practices, or to regulate what steps are mandatory when a breach occurs. Hypothetically, if I was unable to reset the password myself because I was not currently using the service, then anyone could exploit the account. There is no mandatory password reset required. The ones that reset the passwords have been the nice ones. I can literally say that Adobe was nice enough to forcefully reset my password.

Many people, myself included, have moved to using 1Password by AgileBits to manage separate passwords to accounts because there are simply too many to remember, and reset these days. After a breach there is the geek lamentation that these companies don’t work with AgileBits to have a 1Password 1Reset button. (The fact they can’t secure anything is a pretty big clue that no one should hold their breath on reset features.) That’s still a pretty fucked up thought though. We have so little faith that a company will learn its lesson after a breach has occurred at their company that we’re willing to ask for them to just make it easier for us to reset it. We fundamentally do not trust them.

What if this had been Google? What if this had been Apple? Could you imagine them sitting around for six weeks before notifying a person that they should consider resetting their password? Maybe we’ll find out what they will do some day when they experience a security breach. I am not entirely confident that any of these companies are secure.

When Dropbox announced they were adding convenient, limited-time-only-opt-out arbitration, one of the reasons I was so skeptical was that it just protects them in the event any data is compromised.

Stephen Hackett, and Casey Liss, have both complained about companies shortening the required passwords for services. One was a bank the other was T-Mobile. That seems like security is trending in the wrong direction.

You’d think that breach, after breach, would compell companies to audit their own security. You’d think…

2014-06-12 15:00:00

Category: text

Screenplays and Storyboards, Sitting in a Git Branch

I am a big fan of the Fountain markup language. It allows for some really interesting approaches to a creative writing space that haven’t been able to progress much with one company holding all the cards. This morning, I saw Stu Maschwitz tweet about this new Storyboard Fountain app from Charles Forman, and Chris Smoak. In very tiny letters, all the way at the bottom, they acknowledge that there are probably very few writers that use tablets, and that an iPad app would probably have more appeal. Interestingly, the whole thing is MIT licensed on GitHub. Unfortunately, it uses Node.js, which is why it’s currently a desktop-only app. That kind of explains a lot. (I guess with a web view…)

Just thinking about someone — anyone — using this to think about how they’ll shoot something before they start shooting it fills me with hope for the future. People underestimate the value in that kind of planning.

Indeed, Charles’ blog post is chock full-o-reasons why it’s a good idea to use storyboards. Like, knowing what you need, and saving money.

This tool is a fancy way to organize sketches. Being excited about this tool, is like being excited about a notebook, instead of being excited about all the great ideas you’re going to write in it. I’m excited to build a tool to help a better process, and ultimately make better work.

I disagree with Charles here. If there’s one thing the internet can do, it’s show you how excited people are about notebooks.

2014-06-10 16:32:00

Category: text

The Sprawling, Booming LA Tech Scene is Having a Moment ►

Recode posted a thorough piece where writer Nellie Bowles traveled around the LA metropolitan area and interviewed founders of tech startups about how being in LA, instead of Silicon Valley, has helped them. After feeling so down about this city recently, it’s a little heartening to see something can grow here — even if that something happens to Snapchat (cringe). I would definitely say that the people interviewed range from strange to fratty.

There is one sad part that caught my eye:

At an old steel-and-concrete special-effects studio along the main drag in Santa Monica, Peter Pham and Mike Jones have set up an incubator called Science. They have a private movie theater with a 25-foot screen and leather seats.


(pours one out for Digital Domain)

That’s also technically Venice… Erm. So.

What’s curious about it is that there is an emphasis on being close to film, and television culture. Something that is dwindling in LA. Wouldn’t it be strange to see a shift where tech investment in online ‘content’ starts to make actual entertainment jobs? Not just a few people holding up a smartphone to record something?

Another perpetual starter-upper makes mention of the connection between Hollywood and ‘Madison Avenue’ for advertising. His metaphor is embarrassingly clunky, and makes his advice about the connection here being more natural a dubious one.

2014-06-09 14:39:00

Category: text

60 Years

Alan Turing died 60 years ago. Excerpt from a letter he wrote to mathematician Norman Routledge:

Turing believes machines think
Turing lies with men
Therefore machines do not think

2014-06-07 13:00:00

Category: text

End of an Era - Follow-up

The other day, a friend emailed me to let me know that my post about Imageworks closing in Culver City was up on the VFX Soldier blog. I didn’t know it would find its way there, and I had not talked to Daniel about any of it. The last we spoke was when I ran in to him at a mall, when he was working for Digital Domain years ago. My blog is mostly for personal things, and isn’t a call-to-action, or anything. There was some argument in the comments over on VFX Soldier about pro-LA, anti-Canada, anti-Tax, pro… Etc. That wasn’t what the post was about, it was just about my feelings, and definitely not deep analysis. I winced at the thought of coworkers reading my piece, but I guess that’s just self-doubt about my writing. My blog is basically about nonsense, so please don’t stick around for any further emotional outbursts. Just for the really bad puns, and sarcasm.


2014-06-07 12:45:00

Category: text

Form and Function

My favorite, cantankerous snowman wrote about design last night. In Design is How it Works, Dr. Drang argues that people misuse design to talk about how something looks.

Steve Jobs’s [Joe’s note: Take a shot.] “design is how it works” gets a lot of lip service, but when most Apple bloggers and pundits say design they still mean how it looks. Flat design, skeuomorphic design, “clean” design1 these generate millions of words of heated discussion, but they have little to do with how your computer operates2. You could go to the Iconfactory and change every icon on your machine, but that wouldn’t change how you or it work.

He managed to have two footnotes there.

  1. “Clean design = Helvetica + white space.”
  2. “I’m not arguing that how something looks has no effect on how we use it. There’s no question that things like layout, shape, and color can have a profound influence on user interaction. But the features have to be there to interact with.”

I don’t feel like those should be bunched up in a pop-over footnote. By shooing away how things look, he is downplaying an integral component of design. How something looks, and how something works, should not be disclaimers, they should work together. Also, his example of changing the icons is not a good one. Change every icon on your system to be exactly the same icon (pick your poison!) and then tell me it has no baring on how you interact with it.

There are a myriad of different kinds of design. Many shorthand the artsy-fartsy part as ‘design’, which should be corrected to include the engineering, but it shouldn’t exclude the people responsible for the look, because really, both parties are as responsible for the design.

When the doc decries ‘clean design’ he’s right to do so. In almost every case, it is used to describe vast tracts of emptiness padding the elements you read, and interact with, so that the overall look is ‘spacious’. It is more often, cold, spartan, and out of proportion. Google is especially bad at it in their web apps these days. That is bad design, and it’s the fault of someone with an art degree. After all, we all know engineers have beautiful, functional web sites that can be used on any mobile platform.

From Yesterday’s episode of The Prompt podcast, Stephen Hackett, Myke Hurley, and Federico Viticci discuss the necessity of some of the visual changes in iOS 7. Without them, the new mechanics of iOS 8 would be very strange.

Myke: We got iOS 7 to enable iOS 8, and that the design of iOS 7 was done in such a way that iOS 8 would make sense. Because if you think now, like, what they’ve done this year, is so much bigger than what they did last year. What they did last year was just change the way everything looked. In regards to functionality, there was some cool stuff, but it’s nothing like what they added this year. It feels like this is two years of functions. Like if you look, 4,000 new APIs. It seems like too much. Like it’s so much stuff. So I feel like iOS 7 was designed as a groundwork for iOS 8, which Apple probably should have made clear, I think.
Stephen: Well they’re not going to make it clear on the front end. They’re not going to say — Because what are you going to say? Last year, hey we redesigned it but we’ve got a lot of cool stuff coming next year? They’re never going to say that. In hindsight, it’s easy to connect the dots. And I have a couple points to make about OS X when we get there.
Myke: I’m sure that you do.
Stephen: But absolutely, [iOS] 7 was a stepping stone to this. And you see the way these things work, and parts of the interface make a lot of sense. Even down to, and it’s probably dumb, but, like, even trying to get developers go to an interface that’s white, that’s very flat, that makes pulling elements of different apps in to each other, easier, if apps kind of look like they’re in the same family.
Federico: I mean, can you imagine if, this stuff was done in iOS 6? You’d have, like, a metal calculator on top of a wooden, library bookshelf —
Myke: [giggling]
Federico (Continued): — I mean, that would have been crazy, right? Where as the new look of iOS 7, and iOS 8, allows apps to not only be more consistent with themselves, but also with each other.

That is, of course, assuming a lot about the intentions last year. It’s hard to ignore that thought exercise though. You’d double-tap to go to your multi-tasking card view, with a linen background, and linen would still slide down for notification center. ‘Well, you’re being too literal.’ I know, it’s my blog, go get your own blog.

That’s not really worthy of a footnote. People should still talk about the design of what’s changed this year when it comes to functional aspects, and not exclude that important work, but that’s because it is form and function that make up design.

Let’s say you need to design a chair. Sketch out a chair, I’ll wait. No matter what you draw, it will have components of form and function. It will have a supporting structure, part of it will be for resting your tuchus, perhaps it will have back support, lumbar support? You can go on. Whether or not it works is the functional aspect of the design. What it ends up looking like is it’s form. There is no way to completely abstract away form from your chair, it will have it. The aesthetic value of the form speaks to how well the form was designed. A well-designed chair will meet not only functional standards, but aesthetic ones. Shorting either will give you a poorly designed chair. Frank Lloyd Wright designed some beautiful-looking chairs. They are great to sit in.

Even in computer programming there is form and function. An engineer might think he has distilled his well designed program down to just code with a simple command line interface, but it’s still an interface. A text prompt is still a form. Don’t believe me? Go play with a bunch of command line applications and look how they choose to print information back in to the shell for you to read. That is an readability is an aesthetic concern. Even the code for the program has a form. Tabs or spaces? Line breaks between your blocks? Where should your imports go? Functionally, the program will work, form-wise, it’s gross and people will not like you as a person.

I work in a field that requires technical work, like setting up a ‘rig’ of ‘joints’ that need to rotate a certain way in order to function. They need to bind to a rig so they can actually be a character, and they need to render out, all-pretty-like, for people to see. Form and function throughout the pipeline.

Can’t we all just get along? We can all be designers, guys. No need to downplay what each of us contributes to design processes. Surely we can all come together and agree the real enemies to design are the managers.

2014-06-05 12:14:00

Category: text

One More Concern…

While I am excited about Swift, I am apprehensive about the frequent use of the word ‘seamless’ during yesterday’s WWDC presentation to describe many other things. Apple is notorious for being really bad at services — or I should say, “not as reliable” as their competitors. They have improved the reliability of these services, but even with the very latest iWork update, they continue to miss the mark. From David Sparks:

Yesterday I had a small writing project with a Mac-savvy client and I decided to do it collaboratively with him using iCloud Pages. I figured that if the application can support 100 collaborators, it should be pretty solid with just two. It still isn’t.

That’s the most recent release of iWork, just days before the WWDC announcement about more, seamless workflows. Color me skeptical.

Every CloudKit Has a Silver Lining

Perhaps what should be encouraging is that CloudKit, and other iCloud services, seem to be different from the infamously bad iCloud implementation of CoreData. Not very many details are out, but a few tweets from programmers attending CloudKit sessions seem to indicate they at least believe it is possible for the service to function appropriately. Perhaps this indicates that some future version of iWork will be updated to include some of these other functions, that it will continue its slow shuffle in the direction of improvement?

“I would only agree that a symbolic [cloud service] is as nourishing to the intellect as a photograph of oxygen to a drowning man.” — Dr. Manhattan


Part of this overhaul includes rethinking the storage, and sharing, of photos on your devices. Mac OS X.X and iOS 8 will have some more persistent available storage for your photos, instead of the weird, busted, Photostream system that no one has been happy with. This is good, in theory, but they didn’t go in to a lot of detail about the tools to manage the storage, or to archive, old photos. I am hopeful that they learned their lesson from Photostream, but the fact that there is another new Photos app that won’t ship until “early next year” should be a red flag that this idea hasn’t really been fully tested. This was not an announcement they were making for a project that’s been under development for years, this was something that was far more recent. Let’s focus on the positives… I’m sure it will seamlessly move photos around just in the way that I both want and expect it to. I’m sure.

PhotoKit, however, would seem to solve a problem for some photo apps that want to ingest your photos in to their own storage facility to use their app. Things like VSCOcam. There really isn’t a reason to have a duplicate collection of photos that you need to keep importing from your Camera Roll and exporting to your Camera Roll.


Another strange development in the rat-king that is iCloud services, is that they’ve added some support to directly access other cloud storage solutions. Notably absent were the two biggest, most widely-used cloud storage solutions on the market: Dropbox and Google Drive. Will this mean that there’s going to be a bifurcated experience going forward? If I have data in one of those buckets, like Dropbox, then will I have separate storage widgets popping up using Extensions? That would seem to make for a less than ideal user experience! I’d hardly apply the word ‘seamless’ to that. While Extensions can solve many problems that users experience, they can also create new problems if every developer chooses to carve out “me-me-me” space for themselves. A year from now, when people go to save files, are they going to get a list of 10+ services they can save to? When they open a file, are they going to immediately remember what service it was saved on? When they go to save it, will they know to return it to the same place? Particularly if some services choose extensions, or built-in Dropbox browsers?

No One Will Ever Need More Than Five Gigabytes

They have three tiers.

  1. 5 GB for free.
  2. 20 GB for $.99 a month.
  3. 200 GB for $2.99 a month.
  4. Plans up to 1 TB for ? a month.

The top end is a good value, relative to Dropbox, but the low end is laughable. I am fine paying for it, but as Bradley Chambers notes on his blog:

While people reading this article understand that $.99 is cheap for 20 GB, a lot of regular people will just not pay any amount of money for it. They will just use up their 5 GB and then nothing else will be uploaded or backed up. When they drop their phone in the pool, they will still be upset that some of their photos aren’t backed up. Google offers 15 GB for Google Drive as the starter plan. We can argue about business models all day long, but the bottom line is that things like automatic backup with a ton of storage for free helps sell devices.

Preach, Brad. Like I said, I am fine with it, but I am unlikely to run in to normals that will put down money for this. We exchanged some tweets about this the other day, and I noted that if Apple makes it sufficiently frictionless to enter, and sufficiently frictionless to auto-renew, then perhaps people will participate. Here’s an article with data from a Rutgers University study on pricing.

Maybe They Got the Message?

iMessage is one of those services that has steadily improved over the years. It continues to have hiccups, and rough patches, and it’s never really clear when an iMessage will just bounce off one device, and hit another one you aren’t using. It’s ‘magical’ that way, I guess. Still, very reluctant to call this ‘seamless’. When I’m at my Mac, and the Messages app is closed, I will get a new iMessage that will show as a red badge. If I read, but do not reply to it on my phone, the red badge persists. That’s not accurate, let alone seamless.

While they announced many features yesterday for Messages app, some of them are using new techniques to piggyback on your iPhone to get audio, and text data on to your Mac. No mention is made of progress on the other weird bugs in iMessage during the WWDC keynote, but perhaps by consolidating it all to go through your iPhone it will be less buggy? I am given to understand that part of the problem with synchronizing the notifications was the way every device deals with encrypted connections to the server. If your phone is a single conduit then it may increase reliability and presence awareness because it is dealing with one channel instead of two? The last thing I want is for EVERY thing to ring like in the bad, old days when every single device you owned always got a notification.

Having said all that, I will give Apple the benefit of all of my doubts and download Yosemite when it is available.

2014-06-04 14:50:00

Category: text

Swift Excitement

Of all of the many announcements from Apple’s WWDC yesterday, the one that seemed to pique the interest of the largest number of people in attendance, online, and in my living room, was the premiere of Swift. Apple has been the subject of some ridicule for their Objective-C language for many years. A lot of blog-ink has been spilled, and a lot of audio has been recorded, with people arguing for and against adopting a new programming language. I happened to be in the camp that thought they needed develop one, but that was purely for selfish reasons. I’ve wanted to make applications — nothing profitable, marketable, or really all that interesting. Just to put together a little something-something for myself to make task X, or Y easier. One might say, “to scratch an itch.”

Objective-C melts my brain. It is a hideous monstrosity of a language, covered in warts. I know why it is that way. Many consider that a feature, and a testament to the original design. As someone that didn’t grow up using C-based languages, those reasons mean very little to me. I have none of that development baggage. All I want to do is get in, and get out. Have my tactical strike run of a few lines of something I can read, and be done with it. This isn’t just a barrier to adoption for me, but for many. The reason to learn Objective-C is to do something with Apple’s platforms that require it.

As I’ve said before, my ability to do anything at all stems from using graphics software that uses embedded Python interpreters to provide scripting, or expression, functionality. That’s why I know enough Python 2.7 to configure a Twisted settings.py file for multiple, virtual hosts, and to write a stupid static blog engine, and other proprietary pipeline scripts. I don’t know enough to do anything super-important, because what I consider to be super-important is programming a GUI, not CLI stuff. Tons more people know JavaScript because they’ve had to tinker with it for the web. These things are not completely dissimilar to one another.

That’s what’s so valuable about Swift. It integrates all the things I want to make with a language I can read and understand. I don’t have an iOS, or Mac Apple Developer account yet, but I probably will. It is too enticing to think about writing little pet apps for myself.

Just how easy is it to understand it given my limited background? Well if you understand:

print('Hello World')

Then you’ll understand:

println('Hello World')

Blocks aren’t exactly the way I’d like them ({} cruft), but they’re easy to interpolate between the two in your head:

mydict = {'apple':0, 'blackberry':0}
for key,val in mydict:
    if key == 'apple':
        val = 1


var mydict = ["apple":0, "blackberry":0]
for (key,val) in mydict {
    if key == "apple" {
        val = 1

If you already know one of these similar languages then this is approachable as fuck. If you don’t know one, then at least it’s equally cryptic! The only part I foresee being potentially confusing for me is the difference between var and let which I’m sure I will get wrong 50% of the time.

Next Generation of Programmers

I don’t recall seeing many Apple developers maintain a personal site where they publish any information about how something internal was developed, but Chris Lattner has done just that. Excerpt from his site.

I started work on the Swift Programming Language (wikipedia) in July of 2010. I implemented much of the basic language structure, with only a few people knowing of its existence. A few other (amazing) people started contributing in earnest late in 2011, and it became a major focus for the Apple Developer Tools group in July 2013.

The Swift language is the product of tireless effort from a team of language experts, documentation gurus, compiler optimization ninjas, and an incredibly important internal dogfooding group who provided feedback to help refine and battle-test ideas. Of course, it also greatly benefited from the experiences hard-won by many other languages in the field, drawing ideas from Objective-C, Rust, Haskell, Ruby, Python, C#, CLU, and far too many others to list.

The Xcode Playgrounds feature and REPL were a personal passion of mine, to make programming more interactive and approachable. The Xcode and LLDB teams have done a phenomenal job turning crazy ideas into something truly great. Playgrounds were heavily influenced by Bret Victor’s ideas, by Light Table and by many other interactive systems. I hope that by making programming more approachable and fun, we’ll appeal to the next generation of programmers and to help redefine how Computer Science is taught.

A beautiful sentiment. It made me feel bad for laughing when I read this.


There are some not-great things about Swift that are immediately obvious right out of the gate.

  1. It was not, and will not be, developed in the open so that people will have advanced knowledge of new features in the language, or be able to propose, or respond to, features in the language.
  2. It can’t be run on any other operating system. (You could write a web service in Swift, but it would need to run on Apple hardware.)
  3. The development IDE, Playground, looks great, but that will be the IDE.
  4. Security. Apple is the only one that will really be able to do anything with the guts of the language, and the compiler. Not that anything would happen.
  5. It is not one of many, similar, existing languages.

Those are ALL the things I expect of any Apple language. I don’t expect them to start a standards body where people can weigh in on this stuff. Pfft. What possible incentive is there for them to do that when the goal is not to increase adoption of the language on competing platforms, but to increase adoption of their platforms.

A few, long-time Objective-C developers seem to be averse to Swift. Todd Ditchendorf, former Apple developer, and developer of commercial software, like Fluid, was beside himself on Twitter yesterday. Todd loves Objective-C, and he sees Swift as inferior. I mentioned to him that I was excited about it, because it would help get more people to write software for Apple’s platform, to which he replied:

@joesteel I’m sorry, you must be looking for rational @iTod. You’re currently speaking with emotionally violated @iTod.

Todd’s been linking to complaints against Swift, so anyone interested in seeing this from another angle should definitely be following him. He linked to this piece by David Flanagan, a Mozilla programmer.

The fact that Apple treats a new programming language as a WWDC surprise, says a lot about Apple’s culture, I guess. If I wrote software targeting Apple hardware (or managed people who did) I don’t think I’d be happy at all about having a new language dropped on me from the blue—here’s the new language you’ll be using from now on… go learn it right away!

Naturally, I think David is overstating the urgency to adopt Swift swiftly. Its very design allows it to run alongside Objective-C code — of course it would. It is in Apple’s own interest not to invalidate the a language that is used for everything in both of their operating systems. The reason it was unveiled was to increase excitement about future development. To give guidance that there is a direction things will go eventually. Apple famously had Carbon and Cocoa frameworks for doing things in OS X for a really long time before they deprecated Carbon. There’s no way they expect an overnight switch, as David argues.

Back to the security concern: Unicode. There is a delightful part of Apple’s Swift book that shows unicode characters, and emoji, being used in variable assignment. This is neat, and great for developers of other languages. Python 3 also lets people do this and Armin Ronacher, a prominent developer, has pointed out that it is very possible to include backdoors in code if you substitute certain, lookalike unicode characters. I have not been able to test a similar situation under Swift, but I’d be curious to see how they avoid the same pitfall.

Who Else is Pumped?!

I am! Are you?

2014-06-03 14:50:00

Category: text

Contributing to Film Development

UPDATE: Rob Bredow, the Chief Technology Officer at Sony Pictures Imageworks for many, many years, is moving to ILM instead of staying with Sony Pictures Imageworks after the Vancouver move. I didn’t interact personally with Rob ever, but I would not be breaking any NDA to point out that he was crucial to the development of everything I mention below. Not just the development, but of the open source contributions that have benefited so many companies, large and small. More in David S. Cohen’s Variety article.

Original Post:

In my last post, on the loss of Imageworks as a local institution, I was pretty focused on my personal feelings. There are some practical things to consider though. Imageworks was staffed not only by artists, but also with brilliant software engineers. Every visual effects studio has a budget for software engineers. You just do. They set up a pipeline where resources can move between multiple software packages, and through the hands of many people. When I started in the industry, companies were starting to open up to open source, free software. Industrial Light and Magic (ILM) distributed OpenEXR so that all studios could handle passing around image files without resorting to ancient, limited image formats.

Imageworks, similarly, started to release tools as open source and they’ve been adopted across the industry. Not just with other studios bolting on the tools to existing software, but with third party software vendors integrating them. The effect is so large that the Sony engineers have won Academy Awards for their technical work.

  • Alembic - When animating geometry, every software package handles not just the geometry data differently, but the way in which the surfaces deform. Imagine a puppet rig inside a character, and you want to hand it off to another vendor. Their software isn’t the same, or its a different version, and that delicate puppet rig breaks. Alembic lets you bake out, on frames, sub-frames, everything before it is handed off. Then the other software loads only this baked geometry, no delicate rig that can break, or have precision issues.
  • Field3D - A common format for storing voxel data. Things like smoke clouds, explosions, etc. Like Alembic, this is baked per frame, or sub-frame.
  • Maya Reticle - Autodesk Maya pretty standard for animation and layout work these days. This improves looking through the camera in the software, so it’s a little more niche.
  • OpenColorIO - This is huge. Color is fucked up. Seriously. If you’ve ever worked with images, and thought “gee, that looks different on my computer in Photoshop” you might be able to empathize with the problem. Imagine a world where color management was totally unified, and actually implemented. No more ‘let’s just assume this is sRGB’ in software. Jeremy Selan, the chief developer, won an Academy Award for this in 2014.
  • Open Shading Language - OSL is an ambitious project to create an open standard for how to write shader code for any render package. Pixar recently announced that they would add support OSL in to Renderman.
  • Pystring - Python string handling in C++. I don’t do anything in C++ but I always thought this looked cool.
  • Scala Migrations - I don’t want to use this one, but I’m glad it exists.
  • Pyp - This one is fun. I’ve posted about it before. You can do all kinds of neat stuff on the command line. It is most useful if you are working with lots of directories, or need to transform file paths. It’s something you can run right there on your Mac at home.

That’s a lot of really useful open source, totally free software. Most of it is MIT licensed, so it can be put in commercial projects, like The Foundry’s Nuke node-based compositing application (the current industry standard for compositing).


One of the things that I love the most is Academy-Award-winning Katana. I am under a boring NDA so I can’t talk about how I’ve used Katana, but I can point to other people that have been authorized to talk about using it (video). Like Nuke, it is a node-based system. For those unfamiliar, it looks like a flowchart, but none of the nodes in the flow chart can loop (boring wikipedia page on DAG). This provides a powerful, modular way to filter through data. Katana is also based around the idea of deferred loading. Instead of loading everything in the file in to memory, it keeps track of where those things will go. This means you can do things like render all of Manhattan.

The reason why Katana is a big deal is because it was sold to The Foundry, makers of the aforementioned Nuke, and now studios can buy Katana licenses to use it in production. Indeed, Pixar used it for their short film. The Foundry has a user guide for Katana as a PDF, and a more detailed technical guide if you’re interested in learning about any particular details.

This stuff took years to make at Imageworks. You can’t just whip it up overnight. As you can see in part of that video, Tippett Studios did not have the resources to work on a system like this. Even though this is commercial software, and not open source, its wide spread use (much like Nuke, which originally started at the studio Digital Domain) is still a valuable contribution to the industry. All of Sony’s open source projects are also inside of Katana, Alembic, Field3D, and OpenColorIO.

With Imageworks shuttering in Culver City, where all this development took place, it’s another reason to be sad about these tax subsidies.

2014-05-31 12:13:00

Category: text