AI Coder

How are you using AI in your project (or another one)? What are some pros and cons? Has it made you a better programmer?

The capstone project that my team is working on is called AI Coder. In this project, we attempt to use the maximum possible use of AI tools to help create our chosen project: Dating app for animal adoption. This blog post delves into how I’ve utilized AI in my projects, the advantages and pitfalls encountered along the way, and the impact it has had on my programming skills and problem-solving capabilities. At the beginning of the course, I attempted to use ChatGPT 4, Google Bard, and Microsoft Bing. Out of all of these, ChatGPT 4 had the best responses and is the AI chatbot that I would be mainly using throughout the rest of the course.

Database Design

ChatGPT was a good starting point but they listed too many entities and relationships that weren’t really needed. I posted the Requirements listed on the Dating app for animal adoption page along with the prompt: Make a relational schema and ER Diagram. ChatGPT pretty much took every requirement and made each of them a separate table. Although this is doable as a design, it doesn’t really make sense since a lot of these requirements are just static options that wouldn’t require their own table. However, ChatGPT was able to provide a very nice database schema. For example, for the animal shelters, it provided the following:

  • Shelters
    • shelter_id (INT, PRIMARY KEY)
    • name (VARCHAR)
    • address (VARCHAR)
    • contact_info (VARCHAR)

AI has the remarkable ability to automate mundane and repetitive tasks, freeing up valuable time that can be redirected towards more complex and creative problem-solving. Although I didn’t use the actual design, I was able to use this design as a starting point and create my own design, using a lot of the same variables and datatypes.

I asked ChatGPT for recommended options for SQL hosting providers for small projects such as this application. It recommended options such as Heroku, or Oracle free trial. After researching these options more and trying out Heroku, I wasn’t too fond of them. My own research went with Railway due to its cheap price and ease of use for beginners. Next, I will attempt to use ChatGPT to create a db_conn.py file to connect to the Railway database.

Conclusion

AI tools such as ChatGPT are very useful as a starting point and for brainstorming. AI is able to drive efficiency and innovation and can save the programmer lots of valuable time. However, the programmer needs to be able to understand the information that they are receiving from AI and the important takeaways. In my case, the database design was not perfect but I was able to takeaway important information from their responses. If a programmer just followed their design, I believe it would be very slow and inefficient. Overall, the complexity of AI has honed my problem-solving skills, teaching me to approach challenges with a more analytical and data-driven mindset.


Posted

in

by

Tags:

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *