What an accusation! Boo!
I know it might seem a bit strong for a blog post title, but let me explain.
I've encountered this question at one of the recent tech conferences I attended, where an audience member asked the panel speaker,
"Will ChatGPT replace our jobs?"
As common as this question has become in the era of AI technology, I was quite impressed with the speaker's response that day.
The individual stated,
"No, we won't necessarily lose our jobs to ChatGPT, but we might lose them to someone who knows how to use ChatGPT better."
Ding! This made me question whether I've been utilising ChatGPT to its full potential effectively.
So today, I'm here to admit that I've been underutilising ChatGPT and to introduce some ways to use it more effectively, which I'll share with you.
In this post, we will delve into how to make the best use of ChatGPT and other AI-powered generative models as engineers in our daily lives.
To achieve this, we'll explore some of the most popular and useful prompt patterns that developers can employ.
Some of these may be techniques you're already using without realising, or ones you can take advantage of in the future.
let's take a moment to consider an interesting research finding from Purdue University.
According to a recent study conducted by Purdue University, when ChatGPT was presented with around 517 programming questions from Stack Overflow, it provided answers with inaccuracies or non-functional code 52% of the time. The study also revealed that ChatGPT's performance in terms of correctness, comprehensiveness, consistency, and usefulness lags behind that of Stack Overflow.
Additionally, many of us have likely experienced instances of AI "hallucinating," where it produces convincing but incorrect answers.
This leads us to believe that we have the power to validate AI-provided answers.
To do so effectively,
We need to know how to ask the right questions and frame them properly.
After reading this article, I wasn't surprised at all because my ChatGPT has been apologising a lot for providing incorrect answers when I've called it out, which can be quite amusing.😂
Setting jokes aside, let's now dive into four prompt patterns that can help make ChatGPT's responses more meaningful, accurate, and aligned with the intent of our questions. Let's start with some standard patterns.
First up is the "Persona Pattern". Using this pattern, we can guide ChatGPT to produce responses tailored to a specific viewpoint or perspective. This is particularly useful for code reviews, architectural advice, tech discussions, and ideas commonly required in our professional field.
Next is the "Recipe Pattern". As the name suggests, this pattern provides step-by-step guidelines based on the question, making it ideal for situations where you have a general idea of what you want to achieve but need detailed instructions.
For instance, a question like, "Can you provide me with a step-by-step guide for releasing a mobile app to production, including the necessary steps for submitting it to the store for review?" would be an excellent use case for this pattern.
The "Reflection Pattern" is the third pattern, and I consider it one of the most important patterns for daily use as a developer. It commands the AI to provide answers with clear reasoning, making it invaluable for spotting instances of AI "hallucination" and validating responses.
This pattern becomes essential as we increasingly rely on AI in our daily work, potentially leading us to lose our grasp of the truth and its meaning.
So highly recommend,
Use this pattern and then start asking questions!
Lastly, my all time favourite, we have the "Flip Interaction" Pattern.
This pattern is all about letting AI take control of the conversation, a creative approach when you know what you want to achieve but aren't sure what information ChatGPT needs from you.
In this scenario, the AI inverts roles with you, asking questions for you to answer. It's an exciting way to explore a topic.
With this pattern, you won't need to worry about asking the right questions; ChatGPT will guide you by asking the questions it needs answers to in order to address your original query correctly.
In today's developer landscape, it's increasingly likely that we'll turn to AI tools like ChatGPT or Bard in our daily work. AI technologies have made tremendous strides and have a significant impact on both our personal and professional lives. We are in a world where it's crucial to equip ourselves with the right skills and a deep understanding of what we have at our disposal to make the most of it.
I hope this post helps you feel more confident in using ChatGPT effectively in the future, and I'm open to creating more AI-related posts if there's interest. Thank you!