- Ark project’s utilities library improves the performance of some functions by up to 4900%
- The first version of ARK Utilities will be used in the upcoming ARK Core v2.1 release
- Contributors can benefit from helping the development of the library both by using it in their projects and earning via ARK’s Github Bounty Program
On January 23, 2019, ARK project introduced ARK Utilities library on their blog.
The software tool is aimed at increasing the speed of ARK Core. The release will happen with ARK Core v2.1 update, with individual functions planned to be added down the line.
Interestingly, the library will be able to help non-ARK projects as well, because it will be separated from the ARK core code.
Technical Details
The library is written in TypeScript language and has a wide selection of frequently used algorithms. It will partially replace the popular, but comparatively inefficient lodash library widely used in ARK Core code.
The first steps in this direction were already taken by the ARK team: using benchmark tests, they evaluated the performance of select existing functions and replaced them with faster ones.
Here are examples of ARK Utilities components:
- A few algorithms from the Fast.JS library that provide higher performance versions of many common JavaScript functions;
- Fast Sort is used instead of Lodash’s slower sortBy
Many of the third-party dependencies in ARK Core were replaced with the ones developed in-house. Importantly, common API is now provided, which makes it possible for ARK team to make changes to the implementations when performance or stability issues occur.
A Remarkable Improvement in Performance
According to the benchmark testing carried out by ARK team themselves, the library has sped up some of the operations by up to 4900%, with most functions being 60 to 700 percent faster.
For example, the utility function is 639.44% faster than existing lodash when sorting 100 000 wallets in descending order.
The team also promises that performance gains will increase as the number of blockchain users grows.
The Project Welcomes the Contributors
ARK team invites projects and individuals wanting to help to suggest improvements, open GitHub issues and provide pull-requests in case they have ideas for how the library can be improved.
Such a collaboration would be useful not only for ARK project itself but also for the contributors: ARK hopes to turn ARK Utilities into a powerful resource for the whole blockchain industry.
ARK also has a Github Bounty Program, which was recently updated, allowing any skilled contributor to earn ARK tokens by improving the code.