Monday, June 25, 2018

sQuiddio introduces new APIs

We just released a brand new set of Application Programming Interface (API) endpoints.

The new APIs are aimed at mobile or web application developers who need access to a our real time, global feed of GPS position updates and other navigational data generated by thousands of boats through their AIS transponders, SPOT devices or the OpenCPN plugin.

For instance, using the API, a charter company can better manage a fleet of charter yachts through their own in-house web application to monitor each yacht's position in real time, be notified when a yacht checks in at a particular destination etc. Or a marina can monitor all the boats in the departing nearby anchorages and marinas.

The new endpoints build on the same API that powers the sQuiddio plugin for OpenCPN, and enhance that functionality by enabling developers to:
  • Obtain list of boats within range of a POI, or of another vessel
  • Obtain the full profile of a vessel, including make and model, contact information, LOA, draft, last reported position etc.
  • Obtain the most recent position reports of a Vessel or the entire set of vessels in a Follow list.

The APIs follow the widely adopted REST standard and rely on the JSON data exchange format, through a standard endpoint taxonomy that provides read and write operations on vessels, points of interest and users.

Test the app yourself with the online interactive API test bench. Or check out our Wiki page for documentation.

Tuesday, June 19, 2018

The largest global repo of sailing destinations

When we say that is a truly global service, it's not just a trite marketing statement: take a look at the geographic distribution of destinations in our database, users and daily check-ins in the new real-time charts on our about page.

Sure, the United States is a huge place: lots of boaters and great boating destinations (plus the historical advantage of having started here). But European countries have almost as many marinas and anchorages in our database. And what about our growing number of  Australian, Canadian South African etc. users?

And yes, there is some great sailing in the Svalbarg archipelago (latitude 78.8 North!) gets power boost

As turns almost 6 years old (yes, hard to believe: development work started in late 2012), we realized the underlying back-end technology was ...well.. starting to show its age. This was resulting in performance that had not kept up with the expectations of a more sophisticated and fast growing user base.

As a result, the back-end Ruby-on-Rails application has recently undergone a pretty substantial remake:

For the technologically inclined:

  • The  Ruby environment has been upgraded from Ruby v 1.8.3 to Ruby v. 2.3.3. 
  • The  Rails environment has been upgraded from Rails 3.2 to Rails 5.1.6
  • We are using a new category of instance types on our cloud provider DigitaOcean (or "Droplets", in their speak) with added CPU performance, RAM and faster SSD storage
  • We have made some changes to the MySql database structure that result in faster query time, 

This effort was not just about keeping our technology up to date to prevent obsolescence. It has resulted in major user benefits , namely a remarkable increase in performance, both in web-based requests on its web site, and API requests from clients such as the OpenCPN plugin.

Please note that, with a few minor exceptions, the user interface has not changed, so most of these changes will be invisible to you, the user. But you will certainly enjoy the fact that some pages now render in half of the time! 

With the opportunity, we have also rationalized and enhanced our APIs (Application Programming Interface) so that more and more applications can be developed on the platform. More on this in an upcoming blog post but until then you can enjoy a sneak preview here.

Happy discovery!