Wordsmiths is an open-source project written by Dion Misic in Python to understand and pave a path toward an improved understanding of Operational Transformation, the algorithm behind collaborative editing in Google Docs. The project is built on the Flask micro-framework and uses Python to perform Operational Transformation so multiple users can collaborate on a shared document in real time in high latency environments such as the web.
As a high school student, this project has allowed me to implement complex algorithms, measure their algorithmic efficiency, create relational databases and explore new programming paradigms which can be used in real-world applications outside the confines of school. Despite having no prior knowledge of web development, this project has allowed me to understand web development in greater depth and how a client and server can work together to manipulate and store data. I will share my experiences with Python, the shortcomings of Python and how I managed to develop my project using Flask.