Skip to content

History

In the mid-80s I experienced the generic CRUD editor and other elements generated with generic programming working for a company that made software development following these concepts, with the configurations generated by a system called System Maker and stored in the database, using state-of-the art programming languages and databases for that time (Clipper and dBase III). Those concepts, in my opinion, were way ahead of its time.

Between 1999 and 2000 I made my own version of the generic CRUD editor in Microsoft ASP (Active Server Pages) for a CMS (Content Management System), something like what WordPress does.

Recently I noticed this is called DRY. DRY is an acronym for "Don't Repeat Yourself" and is a software development principle that aims to reduce the code repetition. DRY code uses abstractions that are less likely to change, parametrization and data normalization to avoid redundancy. DRY code aims to reduce repetitive patterns and duplicate code and logic, in favor of modular and referenceable code.

In 2020 (during the pandemic), I conceived the idea for a new application called FynApp. I began developing a generic CRUD editor with a React.js frontend based on Class Components (original repository here) and a Python backend (original repository here). At that time, all configurations were hardcoded within the application structure.

At the beginning of 2023 I started converting the generic editor to React.js based on Functional Components and Hooks and the configurations in JSON files.

During PyCon Colombia in June 2023, another idea came to me: bring generic programming to the backend. I started to code the CRUD handlers and the Menu and Endpoints automatic generation from the same configurations used by the frontend generic CRUD editor, using JSON files stored in a repository common to both frontend and backend.

The news about ChatGPT at the end of 2022 and the whole AI (Artificial Intelligence) boom, made me very curious and eager to include some of that in FynApp.

On July 2023 I participated in the lablab.ai Google Vertex AI Hackathon and that gave me the ideas to create FynBot: the artificial intelligence assistant for FynApp, based on OpenAI APIs and later GPT Functions.

Between August and November 2023 I explored and included AI image and audio generation in the App.

On December 2023 I decided to implement generic programming using Langchain for Python, to use any LLM / NLP / Embeddings models and avoid being tied to a single AI provider.

On February 18th, 2024, The Generic Suite was born extracting all the generic programming from FynApp. The first version was published at the beginning of March 2024 and the first packages were published in NPMJS and PyPI at the beginning of April 2024.

This is my first contribution to the open source community.