Sunday 2 July 2023

Exploring Python and OpenAI: Unveiling Strengths, Limitations, and Collaborative Potential

 Disclaimer: The following code and text was written in part by AI, OpenAI to be precise

Title: Exploring Python and OpenAI: Unveiling Strengths, Limitations, and Collaborative Potential

Introduction:

In this blog post, we delve into the realms of Python programming and the intriguing capabilities of OpenAI as a programming companion. Our objective is to understand the effectiveness of OpenAI in assisting with Python programming while also uncovering its limitations. By exploring this intersection between human programming skills and AI-powered assistance, we aim to gain insights into the collaborative potential of AI in programming.

Learning Python and Assessing AI's Capabilities:

The primary goal of this exercise was to gain proficiency in Python, a widely-used and versatile programming language. Concurrently, we sought to evaluate the effectiveness of OpenAI as a tool for programming guidance. With an open mind and an eagerness to understand the interplay between AI and programming, we embarked on this exploration.

Understanding OpenAI's Strengths and Limitations:

As we engaged with OpenAI, we discovered its value in providing general assistance and suggestions, particularly for beginners. However, we also encountered limitations when faced with more complex coding challenges. These instances highlighted the need for human intervention and expertise, underlining the fact that OpenAI cannot fully replace the role of human programmers.

The Collaborative Potential:

Despite its limitations, OpenAI showcased its potential as a collaborative tool. We completed coding challenges more efficiently compared to relying solely on conventional internet-based resources. This experience led us to recognize the value of combining human programming skills with AI assistance, harnessing the strengths of both to achieve optimal results.

As we conclude our exploration, we remain intrigued by the future possibilities of AI in programming. Tools like OpenAI and GitHub Copilot hint at the promising direction of collaboration between humans and AI. However, it is crucial to acknowledge that AI should be seen as a tool to enhance programming skills, rather than a substitute for foundational knowledge and experience.

Through this exploration, we hope to provide valuable insights for those curious about the capabilities of AI in programming, as well as the importance of human expertise in this evolving landscape.

The real conclusion

It's Damo again, no it really is, but I guess you can't entirely trust it given I've just used AI to help me write a blog post and prior to that I used it to help complete a coding challenge. The code challenge is here: https://github.com/DamianStanger/PythonPlayground it's a simple calculator. The chat GPT session on open ai can be found here: https://chat.openai.com/share/fea96f69-70ab-4e11-822c-b79ec8503547 and the session I used to write the above blog post is here: https://chat.openai.com/share/806903cf-c8d1-40f3-842c-362e5af8499d

How long these sessions will live on the internet I don't know, I'm sure they will eventually get deleted, please don't complain when they do, I'm not going to keep a copy of them.

 

This is the first time I've used AI to help either with coding or with writing a blog post, all in all, it's been a positive experience, the coding was quicker as my knowledge of python is not up to much, I have read some chapters from books watched some videos targeted at experienced developers learning python but I've never actually written any, although I have reviewed others code (a strange concept in a way given I've never written it).

Like I said I found the help in writing the code really useful and for sure speeded me up in that coding challenge, i took about 90 minutes to do that with help. I had installed and set up python prior to starting so that’s 90 minutes just to complete toe code. But the writing of the blog post would have been better/quicker if i had just done it myself, i found it hard to get it to sound authentic and to say what I wanted, how I wanted it said, it was a short blog post it would have been quicker to write it myself.

 

I will use AI in the future to help me write code, I am keen to try out copilot but it's worth emphasising again i see this as another aid to learning a new language, not a way to learn programming. Other than code correctness my main concern is that I'm writing idiomatic python, using best practices, and I don't want to learn from the worst/average of the internet, imagine learning to code solely by reading answers in stack overflow or GitHub snippets, no one does that right?