This week's sponsor

Setapp

The Best Mac Apps in One Suite


Posts tagged with "developer tools"

Dash Returns to the iOS App Store

Last fall, Dash, a popular iOS and macOS developer documentation app by Kapeli, was pulled from Apple’s Mac and iOS App Stores amid allegations of fraudulent reviews and Kapeli’s Apple developer account was terminated. Since then, Kapeli has continued to sell Dash for macOS outside the Mac App Store. With no way to sell the iOS version of the app outside the iOS App Store, Kapelli open-sourced the code for the app.

According to Kapeli, open sourcing Dash for iOS has led to numerous people submitting it to the App Store in violation of its GNU GPL license. In an attempt to slow down the rate of copycat apps appearing to the App Store, Dash’s developer, Bogdan Popescu, announced in a blog post today that he created a personal developer account with Apple and submitted Dash for iOS to the App Store. The app was approved and is now available as a free download in the App Store.


Live Photos Can Now Be Embedded on the Web

Apple's developer site details a new API that makes it possible to embed Live Photos on the web:

This new JavaScript-based API makes it easy to embed Live Photos on your websites. In addition to enabling Live Photos on iOS and macOS, you can now let users display their Live Photos on the web.

Live Photos were first introduced in September 2015 alongside the iPhone 6s and 6s Plus. Since then, their adoption across major social media platforms and other parts of the web has been slow.

Today's news is welcome, as it will hopefully help expand the reach of Live Photos beyond the sandbox of photo apps on iOS.

Permalink

Apple Updates TestFlight with Improved Testing Options

Yesterday Apple launched TestFlight 1.5 on the App Store. The update's release notes didn't highlight any specific changes, but developers are discovering today that its release was timed with a few major updates.

Developers can now create different builds of an app to be distributed to different groups of testers. These changes will make A/B testing of apps possible for the first time, so developers can gauge feedback from different groups who are testing different versions of the same app.

Multiple builds can also be distributed to the same people so that testers can choose from a variety of builds that they wish to test.

Longer testing periods is another change – up from 60 days to 90 days. These are not yet noted in Apple's official documentation, so they are likely still in the process of rolling out. Developers we've spoken with as well as the MacStories team have been able to see builds with an expiration time of 90 days.


Details on App Store Developer Responses

Following yesterday's release of iOS 10.3, which introduced the ability for developers to respond to App Store reviews, Apple has released official guidelines for how developer's can best craft responses.

The ideal response is concise and clearly addresses your customer's feedback. Communicate in the tone of your brand, and use terminology your target audience will appreciate and understand. If multiple people in your company can reply to reviews for your app, they should use a similar voice and style. Make sure your replies follow Apple’s Terms and Conditions, which prohibits using profanity, posting users’ personal information, and spamming.

The guidelines also recommend:

  • Always providing individualized responses, even if only by pairing a personalized introduction with a more generic response.
  • Soliciting feedback from users regarding what they'd like to see in future updates.
  • Replying to reviews in a timely, consistent manner.
  • Prioritizing responses based on a review's apparent level of importance.
  • Writing release notes for app updates that specifically address issues mentioned in past reviews, and letting those past reviewers know of the update.
  • Staying on topic with the issue raised by a review; no using replies as a means of advertisement.

Besides these guidelines from Apple, as App Store responses have gone live for the first time, more details have come out concerning how those reviews will work.

It appears that every reply submitted by a developer goes through some sort of review process before it is posted to the App Store. In the following tweet's screenshot, you can see a 'Pending' tag on the developer's review.

It was previously unknown how users would be notified when a developer responds to their App Store review. Although a notification from the App Store app seemed a possibility, Apple has instead chosen to go the route of email notifications. Those emails include a link with the option for reviewers to update their original review.


Amazon’s New AI Tools for Developers

Interesting announcements from Amazon at its AWS event this week: the company is rolling out a suite of artificial intelligence APIs for developers to plug their apps into. These tools are based on the AWS cloud (which a lot of your favorite apps and services already use) and they leverage the same AI and deep learning that has also powered Alexa, the software behind the Amazon Echo.

Here's April Glaser, writing for Recode:

Drawing on the artificial intelligence that powers Amazon’s popular home assistant Alexa, the new tools will allow developers to build apps that have conversational interfaces, can turn text into speech and use computer vision that is capable of recognizing faces and objects.

Amazon’s latest push follows moves from Google and Microsoft, both of which have cloud computing platforms that already use artificial intelligence.

Google’s G Suite, for example, uses AI to power Smart Reply in Gmail, instant translation and smart scheduling functions in its calendar. Likewise, Microsoft recently announced it’s bringing artificial intelligence to its Office 365 service to add search within Word, provide productivity tracking and build maps from Excel with geographic data.

It's increasingly starting to look like "AI as an SDK" will become a requirement for modern apps and services. Deep learning and AI aren't limited to playing chess and recognizing cat videos anymore; developers are using this new kind of computing power for all kinds of features – see Plex, Spotify, and Todoist for two recent examples. I've also been hearing about iOS apps using Google's Cloud Vision a lot more frequently over the past few months.

I think this trend will only accelerate as AI reshapes how software gets more and better work done for us. And I wonder if Apple is considering an expansion of their neural network APIs to match what others are doing – competition in this field is heating up quickly.

Permalink

Continuous – C# and F# IDE for iPad

Frank A. Krueger (maker of Calca, a longtime favorite of mine) has launched Continuous, a new programming app for iOS.

He writes:

Continuous gives you the power of a traditional desktop .NET IDE - full C# 6 and F# 4 language support with semantic highlighting and code completion - while also featuring live code execution so you don’t have to wait around for code to compile and run. Continuous works completely offline so you get super fast compiles and your code is secure.

I like the approach he took to "doing work on the iPad" as a software developer:

I love the iPad but was still stuck having to lug around my laptop if I ever wanted to do “real work”. Real work, in my world, means programming. There are indeed other IDEs for the iPad: there is the powerful Pythonista app and the brilliant Codea app. But neither of those apps was able to help me in my job: writing iOS apps in C# and F#. I couldn’t use my favorite languages on my favorite device and that unfortunately relegated my iPad to a play thing.

I don't know C# and F#, but Continuous looks impressive and exactly like the kind of app we should see on the iPad more often. It even has full framework support for native iOS libraries such as UIKit, Foundation, and CoreImage. Reasonably priced at $9.99 on the App Store, too, with an iPhone version available.

Between Continuous, Pythonista (which recently received a brand new version 3.0), and the upcoming Swift Playgrounds, the iPad as a programming environment is growing up.

Permalink

TestFlight Update Allows Developers to Push iOS 10 Betas

Chance Miller, writing for 9to5Mac:

Following the release of the first developer beta of iOS 10 earlier this week, Apple today has update TestFlight with support for the latest iOS version. As announced on the company’s developer website, developers are now able to build apps for iOS 10, watchOS 3, and the latest version of tvOS.

Being able to push betas of apps with iOS 10 features means that developers will be able to perfect the implementation of things like SiriKit and the new notification and widget features on iOS.

I remember struggling last year to try beta apps updated for iOS 9 ahead of the public release. It's good to see Apple is doing better this year and letting developers push betas built against the new SDKs right out of the gate. This is the way it should be.

Permalink

Apple Announces New Apple Music API

Today Apple announced a new Apple Music API via its Affiliate Program Newsletter. According to Apple, the API:

…allows iOS apps to directly control Apple Music playback and more. We encourage affiliates to use the Apple Music API to provide a superior user experience by integrating music into their apps.

With the Apple Music API you can:

  • See if a user is currently an Apple Music member
  • See which country the user’s account is based in
  • Queue up the next song or songs based on a song ID for playback
  • Inspect playlists already in My Music or create a new playlist with a title and description (see App Store Review Guidelines for limitations).

The announcement coincides with the introduction of a new Apple Music Best Practices for Apple Developers page that serves as a hub for developer and affiliate program resources related to Apple Music. The page includes:

  • App Review guidelines applicable to the Apple Music API, some of which are new.
  • Links to developer documentation for the Apple Music APIs.
  • A summary of Apple Music identity guidelines regarding the use of the Apple Music name, logos, and related matters, with a link to the more comprehensive Apple Music Identity Guidelines.
  • Links to more information regarding the iTunes Affiliate Program.
  • A link to the Apple Music Toolbox page for searching Apple Music in each of the 113 Apple Music countries by artist, song, album, playlist, Connect, curator, radio and music video, from which you can generate affiliate links.

One thing I’d like to see added to these tools is the ability to return search results for items like playlists using the iTunes Search API, which would allow developers to generate affiliate links to them programatically. Right now those links can only be generated from the web-based search tool in the Apple Music Toolbox. Nonetheless, it’s nice to see Apple Music being opened up to developers, and not surprising given the emphasis on services during Tuesday’s investor call.


Stanford’s iOS 9 Class Has Started on iTunes U

Stanford University has published an iOS programming course (CS193P) on iTunes U annually since the very first iPhone SDK was released. Back then, the course was taught by Apple engineers, which was unheard of at the time, and a perhaps a sign of greater openness to come. There are still a lot of good basic lessons on Objective-C, model-view-controller patterns, and other fundamentals in that first lecture series, even though Cocoa Touch APIs have changed substantially over the years. But, perhaps my favorite lecture from that first class is a short talk Loren Brichter gave on the development of Tweetie, his Twitter client that was the first app to feature pull-to-refresh and was eventually purchased by Twitter.

Now, seven years later, Stanford has begun posting lectures for Developing iOS 9 Apps with Swift. It helps to have some basic object oriented programming experience before taking on this class, but don't let that discourage you. When I started teaching myself programming I watched that first lecture series over and over, stopping to research things I didn't understand as I went. And even if you're not interested in learning to program for iOS, go back and watch Loren Brichter's talk, it's a fascinating time capsule of how far iOS has come and the clever tricks programmers used in 2009 to get around the technical limitations of early iPhones.

Permalink