Objective-C in the Cloud

FAQ

Who will use Objective-Cloud?

Objective-Cloud is intended to be used by developers who are already familiar with Objective-C and at least with some of the frameworks that are part of OS X and iOS. We created Objective-Cloud for you. Start Xcode, solve your problems with the tools and frameworks you already know, push it to Objective-Cloud and you're done.

Why would you use Objective-Cloud?

You may have some idea in mind that requires a web service or something else running in the cloud. With Objective-Cloud you have Objective-C itself, as well as all the frameworks you know and love, at your disposal. When we created Objective-Cloud, we had the following use cases in mind:

  • Exposing functionality provided by the frameworks as HTTP services to your apps/clients. This makes sense for many reasons. Think about tasks which are extremely processor-intensive (such as converting videos) that could be done in the cloud rather than on the (mobile) device itself. Another reason why you would want to expose framework functionality as HTTP services are the frameworks themselves. OS X comes with tons of powerful frameworks. You can write a face detector in 15 lines of code - so why not expose the face detector as a web service and make use of it in a web application?
  • Execute background tasks: scrape webpages, analyze PDF documents as well as audio and video files. There are many tasks that can be easily solved by using the frameworks provided by OS X/iOS to build a database or something else that's useful.
  • State and Storage (in planning): Obviously at some point you want to keep information alive (either for a short time or forever). Doing this should be easy.

To make it clear: we have not built Objective-Cloud because we are narrow-minded Objective-C freaks. To the contrary: Objective-Cloud has been created mostly because of the frameworks. Learning a new programming language is easy but learning the frameworks available for any language is not.

How does Objective-Cloud work in detail?

Let's assume your app is running on our servers. You can communicate with your app by sending us an HTTPS request. We then transform this HTTPS request into a method invocation: Your code is executed with the arguments contained in the request. At some point you have to return a result. You can return anything you want. We transform it back into a web-friendly format (JSON).

What kind of things can I do easily on Objective-Cloud?

There are two kinds of different application types (which can be mixed):

  1. Invocation-based applications (aka remote procedure calls): You define several methods and implement them. Clients can invoke those methods via HTTPS. To make things easy on the client-side we have written a client-side library for you to use.
  2. Request-based applications (aka anything else): Request-based apps give you more control. You can implement Restful HTTP interfaces or simply do more advanced stuff with the actual HTTP-requests and responses.

You can combine these kinds of applications.

Where are my cloud apps hosted?

Your cloud apps will be hosted on Mac minis in Germany by MELTING MIND. Mac minis are very energy efficient and they have a lot of computation power. Each Mac mini we use has at least 16 GB of ram, a fast SSD and is powered completely by renewable energy. If you have special needs please contact us at team@objective-cloud.com.

Many thanks to MELTING MIND for the excellent service.

What do I have to do in order to scale with Objective-C in the Cloud?

By default your request/response services and your background services scale automatically. Of course you can still limit the scaling we do on your behalf.

Can I run Core Data in the cloud?

Yes - although the storage service won't be initially available as part of the beta.

Do I have to upload the source code of my cloud app?

Yes. You have to upload the source code (including your Xcode project). If you do so we will build it automatically and execute your unit tests - and if everything checks out, your app will be deployed. If this concerns you contact us: team@objective-cloud.com

Do you have a review process like Apple?

Nope.

What will happen to my cloud apps if you go out of business?

Many of our core technologies are already open-sourced and we will continue to open source stuff when it makes sense to do so. Objective-Cloud is designed so that your own code does not know that it is running on Objective-Cloud. So if we go out of business you still have your own code that should work without us.