Software Technology

Natural Spirals

NIP’s applications have always been built using stable, current platforms, APIs, tools and standards. However, we also continually explore next generation technologies to identify those with potential to support both us and our customers moving forwards.

We began making use of Open Source software within our infrastructure as early as 1995, and platforms based on Open Source software present many advantages over more traditional proprietary software (such as reduced licensing and a worldwide community of users and developers sharing knowledge and experience).

Accordingly, in 1998, we began to incorporate Open Source in our plans for future application development. The richness and capabilities of web standards and web browsers at that time had reached the point where powerful client-server applications were finally possible – requiring nothing more than a standard web browser on users’ computers to interface with them – and we embraced the web-based application model fully.


Current Technologies

Python logo

In 1998, we started using Python for project work, because we recognised its potential power and scaleability. Since then, it’s become a popular language and continues to perform strongly on the TIOBE Programming Community Index Initially, in response to the growing demand for globally-accessible open technology applications, we developed our own web-based application framework in Python, and used it to rewrite our main applications.


DjangoIn more recent years, a number of Open Source web-based application frameworks have evolved and, by 2007, a server-side one was maturing that looked like being a good alternative to our own. So, we then adopted the Django framework for the server-side aspects of our applications in our recent Public Sector solutions. For us, the advantages to using Django are:

  • It is powerful but flexible.
  • Whilst it continues to evolve, it is developed with a strong emphasis on stability and robustness in mind.
  • It is well documented, but feels intuitive to use.
  • It also has a vibrant community behind it – contributing help, “recipes” and modules.

JQuery

In tandem with using Django on the server side, we use JQuery as the toolkit for cross-platform client-side scripting. JQuery is often used and recommended by those developing applications in Django. In its being powerful, flexible, well documented and intuitive, it is very similar to Django, with a similarly vibrant community behind it.


PostgreSQL

We use a variety of databases (Oracle, Microsoft SQL Server, PostgreSQL and MySQL) to power our applications, but PostgreSQL is our current preferred choice. This is a powerful, open source, object-relational database system, with more than 15 years of active development and a proven architecture that has earned it a strong reputation for reliability, data integrity, and correctness.


Historic Technologies

Lotus Notes

In 1992, Lotus Notes was an ideal tool for our innovative award-winning solutions. We became a leading Notes development company, joined the Business Partner programme in 1993, and became a Premium Partner in 1994. In 1995, it became clear that the emerging Internet would dramatically impact the management of unstructured data, and we began developing web-based solutions in Notes. The flexible and responsive web-based architecture is popular as it fits with any corporate IT infrastructure, is easy to deploy and maintain and realises the global information-sharing and collaborative potential of the Internet. We continue to support legacy Notes applications.


MasonHQ

Our initial web-based applications built on open source tools (rather than in Lotus Notes/Domino) were developed using the Perl-based web development framework called Mason. The longer established Perl had, at the time, substantially more support in terms of users and availability of libraries over the relative newcomer Python.


All logos and trademarks are the property of the respective trademark owners.