Why Python

programming
development
software-architecture

Python is one of the most common and widely used programming languages. It is used across multiple domains and industries, which means more people would be familiar with using it.

Author

Richard Ding

Published

March 22, 2023

Modified

February 26, 2024

Introduction

Since Seedcase is a data management system and software, it requires a programming language for its development that can handle large amounts of data, provide efficient data processing capabilities, and integrate well with other technologies commonly used in the research area.

Considered Options

We considered Python, Java, C++, and R.

Decision Outcome

We have decided to use Python as the main development language for the following reasons:

  • Is widely used in the research area, particularly in data science and machine learning, and has a rich ecosystem of libraries and tools for data processing and analysis.
  • It’s syntax is concise and easy to read, making it ideal for rapid development and prototyping.
  • Has a large community of developers who contribute to its development, ensuring that it is constantly evolving and improving.
  • Has strong support for web development, with a number of popular frameworks such as Django and Flask, making it easy to build RESTful APIs for Seedcase.
  • Has excellent support for working with databases, with libraries such as SQLAlchemy and Django ORM, making it easy to manage and query large datasets.
  • Is a cross-platform language, making it easy to deploy the system on a variety of operating systems and hardware.

While Java and C++ are also capable languages for building data management systems, they are generally more complex and have a steeper learning curve than Python. R is a powerful language for data analysis and visualization, but it is less suitable for building large-scale web applications.

Conclusion

Python is the most suitable option for this project, as it provides a powerful, flexible, and easy-to-use platform for building a data management system. Python is also one of the most common and widely used programming languages and is used across multiple domains and industries.