Essential Algorithms Solutions has a dedicated research team that remains abreast of any and all innovations related to software development so that the absolute most state-of-the-art technology is available to clients. Our development team also takes fresh or recent ideas and improves them on both a functionality and stability level so that the latest technology and tools can be utilised with the same reliability and stability as older previous technology.
The type and level of innovation used in a given software project will vary on a case-by-case basis, and is also left up to individual clients. Some examples of how E.A.S. has leveraged innovative technology in lieu of older standards are as follows:
- HTML5 in lieu of Flash. Flash was known for years as the leader in animation technology, allowing for high-quality and impressive content to be delivered to end users. However, in recent years, certain popular devices such as tablets and smart phones lack Flash content support and are thus unable to display or use any Flash videos. E.A.S. was one of the first adopters of the various HTML5 visual-related standards, including native video embedding, native sound playback support, canvas drawings and modelling, and sprite-based animations. Unlike Flash, HTML5 content is platform agnostic and can be used on nearly any modern device.
- Caching in lieu of database access. Some applications, particularly web-based ones, involve a great deal of database access for "fetching" of data. While it is true that certain data is ever-changing and thus not reasonably cacheable, a surprisingly large amount of data can be cached. In some cases, it's possible to remove all end-user DB requests entirely, and direct them towards a caching technology. Since most caching implementations are horizontally scalable, this greatly increases the scalability of the application and detaches the application's theoretical load limit from the database's load capabilities. Meanwhile, most real-time data changes that traditionally would have to be theoretically "pulled" from a database can actually be pushed to the cache engines (in order to update them) and also to any connected devices (in order to ensure each user has the latest data) using the WebSockets layer described above.