Function-first Development and Best Practices for API Integration with Xano
In this meeting, the State Changer discusses their progress with their team of engineers in developing an app and admin tools using Xano. They have made significant progress with the help of Xano over the past few months and are now preparing to present it to the engineers for integration into the backend database. However, the engineers have been resistant to the idea of using Xano. The State Changer also mentions their use of Retool, which they are not happy with.
They then ask about the best practice of building functions versus APIs first. The State Changer has noticed that Xano videos often build APIs first, but they have been building functions first. They are concerned about whether this is a proper best practice. The State Changer also mentions that they have multiple background tasks, API endpoints, and functions in their development and asks if it is acceptable for functions to ultimately make it into an API request.
The State Changer is reassured that building functions first is fine and that many technologists tend to take a function-first approach when working through the logic of what they want something to do. It is suggested that background tasks should have a few lines of code calling functions to keep the logic disconnected and make testing and editing easier. With API endpoints, there is a suggestion to separate concerns by having functions deal with different concerns and then stitching them together in the API endpoints. Starting from the function perspective is seen as a more sophisticated approach, but many developers start from the API endpoint because they are starting from the front end.
The State Changer also shares feedback about the organization of the functions section in Xano, suggesting the need for folders for better organization. It is acknowledged that Xano's front-end development may have limitations due to the company's focus on the backend.
In regards to chaining APIs within an API, the State Changer learns that it depends on the desired outcome. It is mentioned that they have chained APIs in two circumstances - to parallelize a process and to address a memory limitation issue. It is explained that sometimes kicking off another API while one is running can help with parallelization, and in certain cases, chaining APIs can help address memory limitations.
The meeting ends with the State Changer expressing gratitude for the insights and expressing satisfaction with the answers provided. No further questions or discussions are summarized.