Objective-C in the 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-C in the Cloud for you. Start Xcode, solve your problems with the tools and frameworks you already know, push it to Objective-C in the Cloud and you're done.
You may have some idea in mind that requires a web service or something else running in the cloud. With Objective-C in the Cloud you have Objective-C itself, as well as all the frameworks you know and love, at your disposal. When we created Objective-C in the Cloud, we had the following use cases in mind:
To make it clear: we have not built Objective-C in the Cloud because we are narrow-minded Objective-C freaks. No. We created Objective-C in the Cloud because of the frameworks. Learning a new programming language is easy but learning the frameworks available for any language is not.
Let's assume your app is running on our servers. You can communicate with your app by sending us an HTTP request. We then transform this HTTP request into an NSDictionary and pass it to your method. You can examine the dictionary in your implementation and do anything you like with it. At some point you have to return a result in the form of a dictionary. We use this dictionary and transform it back into an HTTP response.
There are three kinds of different services that you can run in the cloud:
You can combine these services and chain them together. For example, a classical request/response service can put something in the background service queue and return immediately or do something else. At some point the background service queue will use your background service to work on the task. Once your background service has done its job, it can use a storage service to save the result permanently.
Your cloud apps will initially be hosted on Mac minis in Germany. Mac minis are very energy efficient and they have a lot of computation power. If you have special needs please contact us at email@example.com.
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.
Yes - although the storage service won't be initially available as part of the private beta.
Your request/response services will be made accessible via HTTP. Let's say you have implemented a service called -facesInImageWithImageDetectionRequest:. You simply send an HTTP request to http://objective-c-in-the-cloud.com/your_username/facesInImageWithImageDetectionRequest. The HTTP request has to contain all the information that your -facesInImageWithImageDetectionRequest: method needs. We will transform the HTTP request into an NSDictionary and pass this to your method. By default all of your services are publicly available. You can add access restrictions to the service by requiring authentication.
You can 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. You also have the option to simply upload your app without the source code.
If this happens, we will make our server technology available to everyone in an open source fashion.