At Intuit Developer, we took a look at our own community to see the different programming language trends across 3rd-party developers who are developing against the QuickBooks platform.
Based on our data from the last 6 months, the following pie chart shows the language choices by 3rd-party developers building on the QuickBooks platform.
- Java : Java is one of the most commonly used languages for developing against the QuickBooks platform. With tons of open source libraries/frameworks and huge community support, it is no surprise that Java is one of the most of commonly used language. To help developers enable faster integration with QuickBooks Online, Intuit officially provides a Java SDK with a set of class libraries that make it easier to call QuickBooks APIs, providing access to QuickBooks data.
- C Sharp (C#) : Along with Java, C# is one of most prominent used by Intuit developers. C# is a common language to build on the .NET platform primarily for Microsoft products. C# is completely backed by Microsoft and has huge community support. Just like for Java, Intuit provides a C# based .NET SDK to enable developers to more easily integrate with QuickBooks Online.
- PHP : PHP is one of the most widely used server-side scripting languages used for web development. There’s a ton of community supported PHP frameworks to enable easier/faster development. Given the wide usage of PHP in the industry, it’s no surprise that PHP is the third most commonly used language for developing on QuickBooks. Similar to Java and C#, there is an official PHP SDK for QBO integration.
- Ruby : Ruby is a dynamic, reflective, object-oriented programming language. Ruby is primarily used with the Rails platform (i.e., Ruby on Rails) for web development. Ruby on Rails has been around for a while with enough maturity and a thriving community. Even though Intuit does not have an officially supported SDK for Ruby, there is an open source library available.
- Python : Python, similar to Ruby, is a dynamic, object-oriented programming language. Just like with PHP, there’s a ton of community-supported Python frameworks to enable easier/faster development, including a vibrant community. Even though Intuit does not provide an official integration SDK, Python is one of the top 5 languages used by developers integrating with the QuickBooks platform.
- Other : In addition to the above mentioned languages, we see developers using languages like C++, Perl, and ColdFusion (CFML) when integrating with the QuickBooks platform.
To be honest, it’s not really surprising that our developers choose to use these languages, given the penetration of each in the market over the years.
So, which language should you use when you create your QuickBooks Online app integration?
The good news is you have many choices: you can choose any language that can easily consume the REST Service – and that is most of them. For an analogy, think of asking what spoon is best for eating cereal. In all cases, the spoon is a tool to consume the cereal; most spoons will do the trick. In the case of integrating with QuickBooks, developers write code to consume our REST Service, and many programming languages can do that.
However, because some languages are more popular than others, we’ve created SDKs and samples in those languages. We know that most of our base uses Java and .Net (C# or VB), and most of the others use PHP, Ruby, Python, Node, or other JS libraries. So, if someone is partial to Java, .Net, or PHP, we have a great jump start for you with an the SDK and sample code for you to use.
We would love to hear your comments and thoughts on the list above. What are you using? Tell us in the comments section below.