Apple vs. FBI is getting heated

Chris Welch of The Verge reports:

As Apple and the FBI head to another hearing on the San Bernardino iPhone case, both sides are growing more aggressive — and the exchange is quickly turning negative. Hours ago, federal prosecutors filed a motion that said “Apple’s rhetoric is not only false, but also corrosive of the very institutions that are best able to safeguard our liberty and our rights.” The government also pushed back against Apple’s concerns over the “backdoor” to iPhone making its way to the wrong hands. “Far from being a master key, the software simply disarms a booby trap affixed to one door.” Well, Apple isn’t very pleased with the government’s latest filing.

The company just held a conference call with members of the press, describing the prosecution’s motion as a “cheap shot” brief that takes away from the debate over consumer privacy and encryption’s role in preserving it. But Bruce Sewell, Apple’s general counsel and SVP of legal, had harsher words still. He accused the government of trying to “vilify Apple” on unsubstantiated theories.

Earlier today, Russel Brandom of The Verge reported:

Apple just pulled off a major scheduling coup. After months of rumors, the company announced today that its next product keynote will come on March 21st, just one day before the company defends itself against government efforts to break security on a phone linked to the San Bernardino attacks.

We’re absolutely going to see this issue mentioned at the keynote. It’s one of Apple’s most public and influential means of communicating with their customers. I hope they’re a specific call to action, i.e., “go to apple.com/privacy to find a list of congressman and senators to contact.”

Google doesn’t prioritize iOS apps

There’s a lot of animosity about Google’s applications on iOS. Michael Tsai posted a roundup:

Federico Viticci:

No matter the technical reason behind the scenes, a company the size of Google shouldn’t need four months (nine if you count WWDC 2015) to ship a partial [Google Docs] compatibility update for iOS 9 and the iPad Pro. Google have only themselves to blame for their lack of attention and failure to deliver modern iOS apps.

Other Google apps also lag behind on iOS. Kirsty Styles:

After launching on Android in October last year, a pitstop feature has finally dropped on Google Maps for iOS today.

One of the major competitive edges that iOS has on Android, as I see it, is the quality of apps on the App Store. I recently experimented with using an Android handset, and my experience is that all the “big names” have pretty good apps: Uber, Facebook, Twitter, Instagram … even Apple Music. But as your needs get more obscure, a Reddit client, an RSS reader, a podcast client say, so the apps get worse. This of course isn’t uniform, but I did find it striking. I bring this up because if Google doesn’t “prioritize” iOS because they don’t want to “help” their competitor, they’re only harming their own credibility. People will use alternatives (for instance, MS Office is really quite exemplary on iOS).

If I were Google and I didn’t want to “help” Apple, I’d make world-class web apps for mobile instead of half-assed native apps for mobile. As a comparison, Apple, Apple of all companies, do not have “iOS-like” apps on Android, they’re good Android citizens.

LinkedIn and the network effect

Finding new professional contacts and keeping existing ones used to be a lot more difficult before the Internet, and now it’s becoming more difficult because of the Internet, or well, they way the Internet is monetized.

LinkedIn doesn’t cost anything to sign up and put your information on, and it would have a hard time convincing job-seekers or the employed if it wasn’t gratis. It’s kind of like free beer at other professional events, where the gratis stuff attracts people that might not otherwise bother. But unlike the free beer at that glorified sales info sessions, LinkedIn sticks to you, it becomes your online business card and professional directory. Furthermore, and like the free beer, LinkedIn has got to recoup the cost of the beer and more, as it must feed Wall Street’s insatiable thirst for growth. The conflict between being good at being your online professional network and being good at making money is the core of what’s wrong with LinkedIn: their interests aren’t the same as their users’ interests.

You may reasonably decide to do a quick query for “Paul Jones” on LinkedIn to see if I’m a hypocrite, and you would likely be slowed down by how many entries there are, so I’ll save you the trouble: I’m still on LinkedIn. Why? Evert Pot has a great way of putting it:

My only issue is that I feel, as an independent contractor, I’m obligated to maximize my potential in acquiring new customers. I don’t yet have the luxury to shut down an entire channel for new leads, despite the fact that LinkedIn has actually done very little for me in that regard. On top of that LinkedIn has become so ubiquitous that it’s actually become a standard question during some interview processes to ask for my profile. I feel that “I don’t have one” because of “principles” is never a great opener when you just made a new connection with someone.

Richard Stallman is often mocked on these grounds, of being unreasonable because of principles. A business person might deem this the “network effect” while a 5 year old might identify it more cogently as “peer pressure.” But it’s true. Everyone (in the professional scene) seems to be on LinkedIn, which means I have many reasons to be on there too. Then, because I’m now on it, LinkedIn as a service is more (even if only ever so slightly) valuable to a potential user. This compounds across millions of users until it’s inescapable. Facebook and Twitter have this same property as networks, and at least Facebook has found a pretty good way of monetizing without harming users too much: displaying engaging content from advertisers for a price. It isn’t perfect because advertising is annoying and has privacy concerns, but these are by no means insurmountable for users or for Facebook.

The biggest place that I see LinkedIn getting paid is for the “InMail” they sell to recruiters for the privilege of contacting people on platform. Unfortunately, just like every member of my trade which joins LinkedIn adds value, every sham recruiter and message they send me removes value from the network. Here’s Henrick Warne on the problem with recruiters:

Plenty of times, I have received messages from recruiters asking if I am interested in an “amazing opportunity”. Even if I am happy at my current job, I am always a little bit curious. You never know whether it is a great job or not. But before I can say if I am even remotely interested, I need to know some details. “OK, please send us your CV”. What? LinkedIn is my CV, you have already seen it. Next, they want to schedule a phone call. Why? Just mail me the details. If I agree to talk to them, they will act as if I contacted them, and they are now “helping me with my career” by jumping into interview mode. No, I don’t need your help. Just tell me about the “amazing opportunity”, and I will say if I am interested or not. If I am, we can take the next step.

The positive network effect that LinkedIn gets is increasingly stifled by the negative network effect of recruiters. Which is a problem, because the recruiters are the ones that are, in part, keeping the lights on. These misaligned interests are more than just some fuzzy notion I’m using to criticize LinkedIn, this conflict actually manifests itself in the product. As many people have embarrassingly realized, LinkedIn is terrible for contacting people and taking information that it tricks the user into. Here’s Dan Schlosser describing “dark patterns”:

In UX design, a dark pattern is design that works against users. It might trick them into doing the wrong thing, or just confuse them to the point where they can’t figure out how to do something that the designers don’t want them to do. This could be making it hard to delete a user account, or in LinkedIn’s case, making it really hard to use the service without importing your entire address book.

Unfortunately for LinkedIn, I’m of the opinion that the way forward is to decentralize the web from Silicon Valley unicorns, and I envision a utopia where everyone cares enough to host their own website. Perhaps it’s a pipe dream, but as technical skills are disseminated and the barrier to entry becomes lower thanks to improved tools, I have hope that people will come to desire control of their own Internet presence. Until then, I’ve un-connected with all the people I don’t know on LinkedIn and removed much of the information from my profile, and I advise everyone do the same.

Eric Schmidt working with Pentagon

I prefer Apple to Google. My preferences side with Apple because their hardware is superb, their OS is a lovely shiny UI and ecosystem atop a solid UNIX foundation, and their interests align with mine: they make hardware, I buy hardware, we both win.

There’s no denying the centrality of Google to digital life, however. If you want to find more information something, see a video of something, or communicate with colleagues, chances are you’ll use a Google service. And for some weird reason to do with our perceived value of non-tangible objects, we refuse to pay for this central fact-of-life, and so Google has found ways to monetize that aren’t directly inline with my interests.

For instance, Andrea Shalal reporting for Reuters via John Gruber:

Eric Schmidt, the former chief executive officer of Google, will head a new Pentagon advisory board aimed at bringing Silicon Valley innovation and best practices to the U.S. military, Defense Secretary Ash Carter said on Wednesday. Carter unveiled the new Defense Innovation Advisory Board with Schmidt during the annual RSA cyber security conference in San Francisco, saying it would give the Pentagon access to “the brightest technical minds focused on innovation.”

Makes perfect sense: software is a munition, after all, so why shouldn’t Google be a defense contractor? I hope this relationship truly is about innovation within the military which ultimately brings good to world instead of increased spying on citizens, or worse, more effective destruction.

Slack planning voice and video

I strongly dislike Slack: it’s an overhyped and proprietary web wrapper around IRC with history. It works just fine, but it bills itself as a replacement for email, which it isn’t, and so it’s become just another thing I have to check. Having said that, TechCrunch report and iMore paraphrase:

Slack plans to roll out voice and video chat this year, making the popular messaging company even more competitive with incumbents like Microsoft’s Skype and Google’s Hangouts. That’s according to their 2016 product roadmap, presented to customers at a conference today in San Fransisco.

I’m glad, because then I can stop saying that Slack is just an web wrapper around IRC with history, and people can stop telling me that “No! It’s also got zany error messages and GIFs.” I hope that Slack can do a better job than Skype, Hangouts, FaceTime, and all those awful corporate conferencing applications, because it’s a market which could really use improvement.

However everyone should stop using Slack for open source projects. Because it’s proprietary and costs money and is just a web wrapper around IRC. So stop it.

John McAfee on Apple vs. FBI

In an interview given to RT, software legend John McAfee claims that unlocking the iPhone is a “half-hour job.” This part of the interview is just wrong: it may have been the case that passwords were stored in memory in the past, but I don’t believe that’s the case any more. For instance, if I were Apple and I was implementing the iPhone unlock system, I’d encrypt the disk without storing the password, and when the user enters the password I’d attempt to decrypt the disk with that key. I’d then check to see if some known (and non-sensitive) value in memory was correctly decrypted or gibberish.

He does raise an interesting dilemma, however, and that’s that either:

  1. The FBI does not know how to access the iPhone’s information, and they should because there a well-funded federal agency;
  2. The FBI does know how to access the iPhone’s information, and so they’re deceiving the American people.

I find (1) much more likely in this scenario, or rather, that they do not know how to access the iPhone’s information easily, and would prefer that they have a precedent to get Apple to do it in the future. I find this more likely because iPhone’s have zero day exploits: I don’t have one, I wouldn’t know one if I saw one, but it’s a massive user base with a large attack surface area, they undoubtedly exist and the FBI undoubtedly have access to people that can get them. But it’s hard, costly, and the best hackers smoke weed and don’t wear suits.

The first self-driving car accident

As artificial intelligence and machine learning is increasingly commercialized, it’s going to begin challenging our legal and moral notions of agency, blame, and responsibility.

Google’s self-driving car had a very minor accident with a bus, and Reuters had this to report about it:

Alphabet Inc’s (GOOGL.O) Google said on Monday it bears “some responsibility” after one of its self-driving cars struck a municipal bus in a minor crash earlier this month.

The crash may be the first case of one of its autonomous cars hitting another vehicle and the fault of the self-driving car. The Mountain View, California-based Internet search leader said it made changes to its software after the crash to avoid future incidents.

Some stray observations:

  • I’m surprised Google owned up to even “some responsibility”, as I would have thought they were eager to shed all responsibility early in the product’s existence, because while in the long run they’ll be less accidents with robot drivers, I’m uncertain that the first batch will always be so fortunate.
  • I imagine this is 100% the fault of the bus driver, and for purely an unfair reason: as an bike rider, I see how bus drivers in New York City act on the road, and it isn’t always friendly.

Playgrounds get video support

Playgrounds are such a wonderful feature of Xcode and the growing Swift ecosystem: they drastically lower the barrier for entry for learning the language and for experimenting. I have countless “experimental projects” that are just empty view controllers which have some interesting code snippet, and Playgrounds are a much better way of supporting this use case.

Erica Sadun has discovered an exciting new feature in Xcode Beta 5:

What you do is this, you add movie files to the playground’s resources. You can then add specialized playground rich text:

//: ![Alternate text](video width="width" height="height" poster="poster")

You won’t see the video until you render the rich text.

The markdown rendering and rich content embedded in Playgrounds is going to make them great for education. There’s nothing like running code to prove a point, and having educational content sit side-by-side with running code is a brilliant way to learn. I hope the project format for Playgrounds sees adoption on Linux and Windows so that more people can learn from them.

Proofreading software

When a company markets a product as perfect and constantly re-invents it, there will be growing pain. There are some issues that should almost never exist with even a modest QA process however, which includes proofreading, and here’s Stephen Hackett describing a grammar problem in Disk Utility:

  1. The first sentence should read “….destroy all of the data.” It currently transposes “all” and “of.”
  2. “Enter a name, choose a format” is a comma splice. Break it into two sentences or use a semicolon.

Even given Apple’s software woes, this is an unfortunate misstep for a core system utility.

App Store review and rule-of-law

The App Store review time is a contentious issue for iOS developers. As a user of iOS, I like it, because it means that I never fear downloading an app, knowing it has at least been vetted for the worst offenses. As a developer, the biggest obstruction to making iOS development as responsive to change as Web development is undoubtedly App Store review times. Here’s Dave Verwer from iOS Dev Weekly:

So, is App Store review still providing a useful service? Did it ever? My opinion is that at the very start it definitely set a tone and stopped the immediate flooding of the store with crap. However at this point, I’m not sure it’s really providing many benefits. Half finished and completely useless apps still get through all the time so it’s definitely not providing the quality control that was promised. More importantly, it continues to stifle innovation through fear of (and the reality of) rejection as we’ve seen time and time again.

I don’t think his points make the case to remove App Store review, but rather that there should be rule of law with regards to App Store review. Inconsistent enforcement is what’s stifling innovation through fear of rejection: multiple times in my career, an app has been rejected for something that had not changed since the last version, pointlessly slowing down development. These should have been cases of “approved, but make these changes for next submission.” Furthermore, I think that organizations in good standing should get approved-by-default status with periodic audits.

GovtOS and resignation as civil disobedience

In the debate between Apple and the FBI, the software giant has filed an appeal to dismiss the the court order. On page 13, there’s a very interesting section discussing what it would take to develop the custom version of iOS that would allow the government to brute force passwords on someone’s phone (which has come to be known as “GovtOS”):

The compromised operating system that the government demands would require significant resources and effort to develop. Although it is difficult to estimate, because it has never been done before, the design, creation, validation, and deployment of the software likely would necessitate six to ten Apple engineers and employees dedicating a very substantial portion of their time for a minimum of two weeks, and likely as many as four weeks.

Up to ten engineers for up to four weeks, Apple believe GovtOS will take. I have to wonder what I would do if I were given this assignment. I consider it similar in some respects to what must have gone through the heads of Volkswagen engineers that were asked to create a way to fake emission reports: it’s immoral and it’s my job. Unique to the Apple case, however, is the addendum that it might be illegal to not do it. I do not envy the engineers that get this assignment should Apple be compelled to create GovtOS, and I imagine that it would be given to their most trusted and senior members.

I’d like to say that I’d resign in that position, but the fact is, with a court order, if someone chooses not to do it, they will be replaced with someone that will. And a project of this fragility deserves to be in the most trustworthy and capable hands. Having said that, resignation as civil disobedience would weigh heavily on my conscience.

Swift ported to Android

There has been a great disturbance in the Swift community: Brian Gesiak has done the work necessary to get Swift up-and-running on Android and opened a pull request on GitHub.

This adds an Android target for the stdlib. It is also the first example of cross-compiling outside of Darwin: a Linux host machine builds for an Android target.

If this draws the ire of higher-ups at Apple, this could get … interesting. Apple have clearly acknowledged Android more than they have historically with 2 native Android apps. Further, they stand to benefit from Swift’s wider adoption. But there is a sense in which Apple loses by improving the development environment of Android with the clearly delightful Swift. On my view, Java has yet to catch up to Objective-C considering the lack of blocks, never mind Swift and its tuples.

Google have a neural network that takes a photo and returns a location

Google have trained a neural network that can determine with better accuracy than humans the geographical location given an arbitrary image; from the MIT Technology Review:

That’s impressive work that shows deep neural nets flexing their muscles once again. Perhaps more impressive still is that the model uses a relatively small amount of memory unlike other approaches that use gigabytes of the stuff. “Our model uses only 377 MB, which even fits into the memory of a smartphone,” say Weyand and co.

That’s a tantalizing idea—the power of a superhuman neural network on a smartphone. It surely won’t be long now!

That is indeed tantalizing, and while this trick is in some ways a gimmick, it’s a great part of an intelligent system. The hard part about this is to compose these skills into a system than can use the right skill at the right time, analyzing an image for location when needed, finding the shortest path when needed, seeing the trend in data structures when needed, etc.

Microsoft support Apple in the right to privacy

After the Microsoft CEO and founder expressed at best lukewarm support for Apple’ defense of the right to privacy, Bloomberg report that they’re going to stand with Apple on encryption in a big way:

Microsoft Corp. will file an amicus brief next week to support Apple Inc. in its fight with the U.S. government over unlocking a terrorist’s iPhone, President and Chief Legal Officer Brad Smith said at a congressional hearing Thursday to discuss the need for new legislation to govern privacy.

Good for them. This puts them on the right side of history, in my opinion, and I hope it’s enough to sway our government. The US government should be a leader here, because other nations will consider what happens here when making their policy.

Microsoft Acquires Xamarin

Xamarin is a cross-platform development tool that’s built on Microsoft-sponsored technologies, here’s the announcement:

As part of this commitment I am pleased to announce today that Microsoft has signed an agreement to acquire Xamarin, a leading platform provider for mobile app development.

In conjunction with Visual Studio, Xamarin provides a rich mobile development offering that enables developers to build mobile apps using C# and deliver fully native mobile app experiences to all major devices – including iOS, Android, and Windows.

This is a massive power grab from Microsoft, and could be leveraged to put them back on top. Consider that Microsoft have a way for developers to take iOS and Android codebases and ship it on Windows 10 using a compatibility-layer approach. If you look at their offerings on competitor’s platforms, you might think they’ve taken a “if you can’t beat them join them” approach, but it’s becoming more and more “if you can’t beat them become them.”

Apple introduces Podcasts Connect

A couple days ago, I received an email from Apple regarding podcasts, which announced a number of new features that the iTunes service has for podcasters, including:

Introducing Podcasts Connect
Podcasts Connect is the primary place to manage your podcasts on the iTunes Store. Here you will be able to validate and submit podcasts to iTunes. You will also be able to manage availablity once your podcast has been approved.

Get started using Podcasts Connect.

Right now it just lets you manage your shows, and it is much better than the older webforms I had to use to set up my podcast. An exciting development for anyone that wants to get into podcasting, because it’s now easier than ever. I hope this includes analytics one day, it could be a huge boon for podcasters that want to attract advertisers.

The March 2016 issue of Hacker Bits published with yours truly

A couple weeks ago, Ray Li of Hacker Bits reached out to me asking to reprint some of my writing in the periodical. I clicked around the site and found that it’s a beautifully typeset publication, check it out. Here’s a synopsis:

Wow! What a month! We just put the finishing touches on the March 2016 issue of Hacker Bits.

The issue line-up is a great mix of startups, programming bits, opinion pieces topped off with a DIY camera article!

Bill Gates on Apple v. FBI

Bill Gates weighs in on what he thinks about the Apple v. FBI showdown with regards to the San Bernardino massacre:

“This is a specific case where the government is asking for access to information. They are not asking for some general thing, they are asking for a particular case,” Gates tells the Financial Times, disagreeing with Apple CEO Tim Cook that the FBI’s request would create an iPhone backdoor.

How shamefully wrong. If this were in fact just a singular request for information, the FBI would not have done it so publicly, they would not have invoked the All Writs Acts, and if I’m to speculate a bit, they would not have purposefully sabotaged their chances at legal access to the phone’s information. What more, but the Wall Street Journal is reporting that the FBI already have twelve iPhones they would want Apple to compromise.

Certification of apps for Apple platforms

An app which allows users to pirate apps snuck onto the App Store by changing the UI based on a user’s locale, location, IP, or something akin. Macworld:

A Chinese iOS application recently found on Apple’s official store contained hidden features that allow users to install pirated apps on non-jailbroken devices. Its creators took advantage of a relatively new feature that lets iOS developers obtain free code-signing certificates for limited app deployment and testing.

Coincidentally, Apple have released some news a couple days ago of an upcoming certification renewal:

How will customers be affected by the certificate renewal?
Customers who have purchased and installed iOS apps, tvOS apps, or Safari Extensions will not be affected by the certificate renewal. Users running OS X El Capitan (v10.11 or v10.11.1) may receive a notification that your Mac app is damaged if it utilizes receipt validation to request a new receipt from Apple. They can resolve this issue by restarting their Mac or updating to OS X El Capitan (v10.11.2) or later.

It seem I’m not the only one that finds certification, provisioning, and code signing confusing …

As a side note, I ran into this bug this weekend.

GitLab 8.5 released

The open-source GitHub competitor GitLab has shipped a new version of their software which, among other things, has light project management in the form of a feature they call “Todos”:

GitLab is where you do your work, so being able to get started quickly is very important. Therefore, we’re now introducing Todos.

Todos is a chronological list of to-dos that are waiting for your input. Whenever you’re assigned to an issue or merge request or have someone mention you, a new to-do is created automatically.

Then when you’ve made a change, like replying to a comment or updating an issue, the to-do is automatically set to Done. You can also manually mark to-dos as done.

I bet GitHub are really feeling the heat. I’ve long thought it silly that many projects have their source code and their issues/milestones/bug-tracking separate. I’m very impressed by GitLab, and the version control for my next project will be between them and BitBucket.