Life is full of decisions. Some are easy, like whether or not to run across a busy freeway wearing a chicken suit. Others are difficult, like ordering lunch at a Mexican restaurant (seriously, why are their menus so big?!). Developing software also has its own unique set of decisions to make: do it myself or use an SDK? Open source or commercial? Which open-source SDK? Which commercial SDK?
The answer to the first question is often wrapped up in a single word: time. Most programmers love the challenge of developing something from the ground up, but reality bites back with project deadlines and/or the pressure of earning a paycheck. Complexity naturally plays a major role in deciding whether or not you need to rely on the development expertise and time others have put into an SDK. For a project with imaging requirements, the complication factor is high even for the most basic requirements like loading, displaying, and saving various file formats. However, projects rarely stop there and require advanced features like OCR, barcode, PDF, forms recognition, DICOM, PACS, and multimedia streaming, further cementing the need for an SDK to get the job done in a timely fashion.
Open Source or Commercial: the Never-Ending Battle
Decision #1 made, you need an SDK! Now use your favorite search engine to look for “[YOUR FEATURE REQUIREMENT] SDK” and you’ll discover your next decision is much less concrete. There are many options between commercial and open source. Notable gems obviously exist, but sometimes using an open-source library is like building prefabricated furniture. It gets the job done, but the assembly instructions are awful and the quality pales in comparison to a hand-made, solid oak bookshelf. On the flip side, you don’t always get what you pay for with the expensive oak bookshelf since a commercial SDK doesn’t necessarily guarantee quality.
Another factor that typically differentiates a commercial SDK from open-source options is how bug resolutions and feature requests are handled. No piece of software is perfect, and your unique situation can shed light on something not heavily tested, or reveal shortcomings in the product offering. Open-source SDKs can be both good and bad here. You have the source code, so simple issues can be quickly resolved on your own. However, when time isn’t on your side and the library is complex (as we’ve established with imaging SDKs), you need to rely on the project author and contributors to fix the issue. Unfortunately, the author may no longer be involved, or he/she may not be available when you need them. Commercial SDKs have a personal stake in their customers, so resolving issues and growing the product through feature requests is something most of them are happy to oblige. This mutually beneficial relationship scores major points for commercial SDKs when unexpected hiccups occur during your development.
Getting Everything in a Single SDK: LEADTOOLS
The next and final hurdle is cost. This is where open-source can at times provide some value however, the ROI from a comprehensive commercial SDK like LEADTOOLS may surprise you. Comprehensive is important because some commercial SDKs are still limited in what they will accomplish. This would mean buying multiple SDKs, maintaining multiple licensing relationships, and mult… you get the idea, it’s a hassle. LEADTOOLS maintains the largest and most comprehensive collection of imaging SDK technology and makes it possible for its customers to eliminate the multi-vendor headache and deploy their application sooner.
One of the best industry examples of this benefit can be found in the document imaging market. Document imaging applications can have a lot going on: scanning an image, loading and saving TIFFs and PDFs, drawing annotations on images, OCR, OMR, and forms recognition can all be a realistic set or requirements for one application. Integrating all those features together with LEADTOOLS is not only possible, but will result in a faster, easier development cycle and actually saving money in the long run.
Bonus Round: Future Reliability
LEADTOOLS also has a proven track record of keeping up with the latest development trends, especially when it comes to Microsoft platforms. LEADTOOLS was a launch partner for Visual Studio 2017 and is currently working on creating imaging components specifically designed for .NET Core.
Make the easy decision to use LEADTOOLS and save time, money, and hassle on your next imaging software project. That decision will free you up to get back to deciding between lunch combination #15 or #47.