Quality customizations to Sage 300 built using Orchid Extender.

Contact Us

12 August 2020

Our Approach to Successful Engagements

by Chris (chris at poplars.dev)

Customizations are rarely given the attention they deserve. They can play a key part in a customer’s business process but from the developer’s perspective they are a one off project. The result tends towards a low quality customization that meets the minimum bar only; inflexible and hard to maintain.

We are focused on delivering quality customizations for Sage 300. A high quality customization is built as much on possible on existing, well tested code - quality customizations have as little custom code as possible! In fact, the best customizations contain custom code only to express the specific business process they automate.

Building a customization requires much more than just expressing the customer’s business logic. Data needs to be managed, events dispatched, errors handled. Extender provides a secure and isolated execution environment for customizations. However, security comes at the expense of easy code reuse and access to standard development tools.
Without reusing existing well tested code, or having access to standard tools like linters, it is exceptionally difficult to consistently build quality customizations.

We build and distribute all customizations using Customization Manager. Customization Manager overcomes the code reuse limitations of the Extender enviroment and enables developers to use any of the almost 200,000 libraries available in the Python Packaging Index or their own, existing, code in the development of new customizations.

We use extools, an open source library that contains much code common to all customizations, to build on a well-tested, robust, foundation that is easily easily maintained by other Python developers in the future.

Testing

Deploying

Maintining

tags: process - approach - python - extender - implementation - business - analyst