With the launch of SignaKit by iNVASIVECODE we would like to explain why you should invest in custom built code. SignaKit is a high-level iOS framework that helps you create handwritten signatures and add them to PDF documents. SignaKit is code that you pay for and comes with the support needed to make sure that it works through future Apple update.
When developing an app you have the choice of using third-party code and open-source libraries, or creating custom built code. Using open-source code might seem simple, efficient and cost-effective but there are implications to this you might want to consider. In the long run this might actually cost you more in terms of money and time.
With every Apple iOS transition, updating your iOS app becomes essential. Updates offer opportunities - the opportunity for businesses to optimize the functionality and aesthetic of their app, the opportunity for developers to utilize new technologies and tools, and the opportunity to engage users who are excited about taking advantage of the newest platform.
It is easy to think: my app functions fluidly now, therefore it will easily transition onto the next iOS release. Apple provides the tools and the platform to transition code easily. Graphics can be redone and the app would look like it has been completely redesigned. But most of the time, problems arise with the code that you have not written, a piece of code or a library borrowed to ‘patch’ some kind of functionality.
Using third-party code and open source libraries means trusting other developer's work and hoping that the code has been written with integrity and standards. But you should consider that trusting developers that are not paid for the code written frees them from all responsibility: they might not have the time to update the open-source library because they have a paid full-time job or their priorities might have changed. Or simply put, they can write quality code or not but, in any case, you cannot blame them since they did it for free! This becomes a problem when your app stops working correctly or, worse case scenario, your app stops working at all. If you didn't enter into any contractual obligation with the developer, the code you are using becomes your sole responsibility.
In order to understand the development process, imagine writing a book. When writing this book, however, instead of writing each sentence yourself, imagine borrowing each sentence from other writers. This process will save you time. Writing something from scratch always takes more time and effort than borrowing from others, and essentially all you are doing is copying and reconfiguring. However, if you had to find a simple typo in your manuscript before it could be published, you would be essentially helpless, trying to read and correct thousands of unknown sentences, and ultimately unable to publish your book.
Now think about this problem in terms of app development, and the actuality of updating an iOS app. When updating an iOS app, Apple requires the code to be recompiled. During the recompiling process Apple checks the application for errors and determines if it will function properly on the new OS version. If an error is found, you will have to find it and fix it. If you still wish to update, which is essential to staying relevant, you will need to find the errors. Now, finding errors seems simple enough. Bugs are a part of life as a coder and finding and fixing them is what we do. However, if the error exists in a piece of code that was written by a third-party, the developer is forced to either spend enormous amounts of time and resources looking through and fixing someone else’s work, or wait for the developers who maintain the code to fix it, which may happen or may not, depending on the time or focus of the developer. Instead, paying for custom-built code, like SignaKit, will bring you the peace of mind that come when you can request the support needed to solve the problem fast and seamlessly.
The point is, putting pieces of code together might seem faster and easier to start but be aware that you might run into a lot of trouble when technology moves forward. Thus the importance of writing native iOS apps in-house, and being knowledgeable about the constitution of your app. Though third-party open-source code allows developers to accelerate the development process and save money in the short term, there is a much higher risk than many people like to acknowledge. A product’s success, whether it is automobile or a mobile application, is contingent on longevity. If a minor problem renders the product useless, then it is impossible to say the product has any real value.
While the use of open-source code is rampant, consider paying for code that will provide support if a problem arises. The truth is that an iOS app written from scratch has significantly more value and will be easier to maintain than an app containing third-party code.
Eva Diaz-Santana (@evdiasan) is cofounder of InvasiveCode. She develops iOS applications and teaches iOS development since 2008. She also worked at Apple as Cocoa Architect and UX designer.