Of all tech companies, Twitter has been infamous for having a complicated relationship with developers. It seems that the company wants to change that. Twitter hosted "Flight", its first developer conference, last year and more recently hosted "Flock", where it announced Fabric, a new development platform consisting of three development kits: Crashlytics, Mopub, and Twitter Kit.
Fabric promises developers many features, such as sign-in with Twitter, Twitter Embeds and phone number-based logins, "with just a single line of code". This brings Twitter into competition with Amazon, Facebook and Google, who all provide back-end support and tools that developers need to build mobile apps. The company announced a list of companies who are already using Fabric, including AOL, Kickstarter, McDonalds and Spotify.
Let's have a look at the components of Fabric to see what it's capable of!
The first component of the Fabric suite is Crashlytics, acquired by Twitter in early 2013 as part of its strategy to build the mobile development community. Crashlytics is better known for its core product, a lightweight crash-reporting framework, which is easy to install and use out of the box.
Crashlytics lets you track each release of your app, for iOS and Android, catching all crashes and providing insights. For iOS, the Crashlytics Kit uses a multi-step process to provide progressively higher levels of detail. It starts with on-device symbolication. Once a crash report makes it into Crashlytics' system, stack frames are then re-processed against your application's dSYM on Crashlytics' servers.
With Android, it analyzes your crashes and automatically deobfuscates stack traces, beginning with on-device exception handling. Once the crash report reaches the system, Crashlytics re-processes the stack frames against your application's mapping file that was automatically uploaded to the servers at build time.
Crashlytics supports NDK, allowing Android Developers who code in C/C++ to build more stable apps. This is an important step for the future of Android, as it's critical for apps to take advantage of the ever evolving new hardware coming out.
Crashlytics is compatible with most versions of OS X along with full support for Android Studio, Eclipse and IntelliJ.
Beta by Crashlytics is a cross-platform toolset integrated into Crashlytics, which aims to make Beta version distribution a more intuitive task.
You can invite individual testers to your app via email through the web dashboard or through the Crashlytics plugin. Once you select a distribution in the app, you can add new testers or re-select anyone you've added before.
Interestingly, Beta by Crashlytics is OS-aware meaning that if you, for example, build for iOS7, your iOS6 testers won't be prompted.
To help with distribution of your app, Twitter released Twitter Kit, including three products to help integrate various Twitter features easily.
Native embed Tweets
In the past integrating tweets in an app has involved many hours of work. Twitter promises now that with a few lines of code, developers are able to embed Tweets into their apps and also style them to match their app's theme.
The Tweet composer allows people to share moments from your app to their Twitter followers. Fabric allows you to implement this in a hassle free way.
Sign in with Twitter
Twitter is pushing its authentication API with Fabric, allowing users to sign in using their Twitter credentials, rather than remembering individual user names and passwords.
By implementing Twitter's credentials consolidation gateway, developers are rewarded with the insights of the authenticated user's Twitter profile, including tweets, photos and followers in their network, which can be leveraged to create viral engagement campaigns.
Twitter believes that we live in a world where our mobile phone numbers are the most common way to identify our persona. With the reasoning that people already give their mobile phone number to companies for various things like loyalty programs, Twitter hopes mobile phone sign-in will significantly lower the bar for new sign ups. Mobile phone numbers are often the only identifier in developing countries, as smartphone owners often don't have email addresses. Using a simple sign-in process via a mobile phone number for verification, Digits encourages users to authenticate, while safeguarding or compromising identifiable user profile information.
Similar to Twitter's video-sharing app, Vine, Digits lets you manage other apps' access to your phone number, or if needed, delete your account. What this means for developers is that it's a more secure way to get new users on board who may not have email, regardless where they are based.
Digits is built on Twitter infrastructure and is part of the Twitter Kit. Being fully themeable, it's able to adapt to the user experience of any app. It also won‘t post anything on the user‘s behalf since it isn‘t tied to their social network accounts, including Twitter.
Digits is available in 216 countries and in 28 languages, on iOS, Android and the web.
As part of the Crashlytics kit, Answers gives real time analysis of your app's performance, sparing you most of the work needed to get useful feedback out of your data. It analyzes your app's behavior over time and constantly observes trends and accounts for cyclicality in user behavior, alerting you only when the pattern is abnormal.
As Answers is integrated with the same SDK you use for crash reporting, you can now jump straight into specific builds in the issues dashboard and instantly address the stability of your app.
MoPub is a monetization platform for mobile app developers, designed to maximize ad revenue for apps through a single platform. Developers can serve ads directly from advertisers, work with multiple ad networks, and tap into thousands of advertisers, who compete for inventories against other ad partners on MoPub's exchange, MoPub Marketplace. MoPub shows the ad from the highest-paying advertiser, ensuring that developers can maximize their revenue.
MoPub supports all major ad formats including banners, interstitials, video and native ads, and boasts a new set of features to make it easier to create and experiment with native ads. With MoPub's native location control, you can now choose the position of your ads and how often they appear in your content stream in the MoPub UI, allowing you to find the right balance between the ads and the content in your app.
After changing the "game rules" for developers of their platforms in 2012, Twitter provoked a fierce backlash for making changes to their API levels. Changing direction and strategy every few years will cause Twitter to lose its followers (pun intended). The company has had a difficult relationship with the developer community.
With Fabric, Twitter wants to set itself apart again and regain the trust of developers. Having attended "Twitter Flock", Twitter's developer conference in Berlin, it looks very impressive, but the Silicon Valley-style smooth talk served to the developer audience was cliched at times. Let's hope the substance matches the delivery.
Are you looking forward to using Fabric? Do you have enough use for its features to replace similar products you are currently using?
Elio is a open source designer and founder of Ura Design. He coordinates community initiatives at SitePoint as well. Further, as a board member at Open Labs Hackerspace, he promotes free software and open source locally and regionally. Elio founded the Open Design team at Mozilla and is a Creative Lead at Glucosio and Visual Designer at The Tor Project. He co-organizes OSCAL and gives talks as a Mozilla Tech Speaker at various conferences. When he doesn’t write for SitePoint, he scribbles his musings on his personal blog.