The Science Behind Snaps

Although they’ve been the indispensible “elbow joints” of integration software for decades, adapters have always been brittle, and shockingly expensive to maintain. They’re commonly built using proprietary APIs and are intended to work with relational data that’s distributed behind the firewall at LAN speeds. While this model worked when synchronizing heavyweight on-premise enterprise applications such as ERP, it’s obsolete in a world that’s quickly moving to the cloud. We’re now at the early stages of an era where the Internet is the network, much of the information we need to coordinate isn’t relational, and there are tons of new, highly targeted hosted applications.

When we started SnapLogic, we knew that there had to be a better, faster and more replicable way to interoperate with all these applications and the new classes of information that are being captured and maintained. We came up with a fresh approach that thrives in today’s environment. We call this new breed of connectivity software ‘Snaps,’ and the best way to understand them is by using a real-world counterpart: shipping containers. Those big metal boxes have uniform dimensions, can hold just about anything, and are able to be transported by truck, ship, or train. Just as containers revolutionized global trade, Snaps revolutionize the ‘containerization’ of the cloud.

A Snap is a collection of integration components, sharing some contextual property, generally an application. Snaps include powerful wizards that inspect their target application; automatically building links throughout the data layer, giving a user the ‘create,’ ‘read,’ ‘update’ and ‘delete’ functionality they will use in their integration. Snaps are language-neutral and abstracted from the application layer. They use open protocols (HTTP/S) and data formats (REST), and supply a URI to all resources. They shield both business users and developers from much of the complexity of the underlying application, data model, and service.

All Snaps also follow the same pattern, use the same API, and leverage the underlying infrastructure supplied by the SnapLogic integration platform. This really lightens the load for Snap users, which was also a big part of our founding philosophy: from the very beginning, we wanted Snaps to be easy to create or modify using an open and standardized development environment. To give you an example of how much we’ve abstracted away, the Twitter Snap took a mid-level Java programmer just a few days to build. Contrast that with the average adapter, which demands highly specialized knowledge of closed, proprietary systems and puts the user through months of development and testing.

We also wanted to encourage a thriving ecosystem. By developing a ‘containerized’ platform, we enable others to leverage their expertise in specific applications and business scenarios to create Snaps which can be purchased and downloaded from our SnapStore. Or, users can leverage the platform to create their own private Snap, customized to their own system and needs. By taking the complexity out of integration, Snaps make it easy to connect as you grow.

So, how have you been integrating data with your cloud-based applications? Have you hand-coded any of your own connectivity software? Or do you deliver integration solutions to a wide range of clients?