Learning with ChatGPT, the tireless teacher
Some weeks ago, I had the opportunity to participate in a cloud contest. I wasn’t sure about the kind of questions I was going to have. The only thing I was sure of was that the questions were going to be cloud agnostic. It means that the questions were going to be about the fundamentals of the cloud, about concepts common to every cloud provider. I use AWS services every day, so I have a good knowledge of AWS. However, I learned the cloud fundamentals years ago, so I needed to remember some cloud concepts, strategies, etc. I decided to use ChatGPT to help me in this task.
When I learn a topic, I generally follow these steps:
- Find what to learn about the topic. Generally, this step is done by taking a Udemy course or buying a book where the scope is well defined.
- The second step is to learn more in detail about specific subjects I don’t understand well. This step can be done by Googling the specific subjects.
- Finally, I usually test my knowledge by answering questions or doing exercises. This step is generally done by responding to the questions available at the end of the course or searching for questions on the Internet. Sometimes, it is necessary to pay for more questions on the subject.
The goal of this article is not to learn about cloud concepts but to see how easy or to avoid doing all the steps above with only ChatGPT.
Finding what to learn
We can first ask ChatGPT about the different topics we need to learn regarding cloud concepts with the question:
List the 100 basic cloud concepts I need to learn ?
The full response can be found here. Overall, ChatGPT’s response is very interesting, and the main concepts seem to be covered:
- Service Models (IaaS, PaaS, SaaS)
- Cloud types: public cloud, private cloud, hybrid cloud, community cloud
- Cloud concepts like elasticity, scalability, high availability, fault tolerance, security, compliance, etc.
- Cloud pricing models: pay-as-you-go, reserved instances, etc.
- Cloud deployment models: Lift and shift, refactoring, etc.
- Cloud disaster recovery solutions
- Storage types: object storage, block storage, etc.
There are also a lot of unrelated concepts mentioned, such as Docker, Kubernetes, Orchestration, DevOps, Microservices, etc. Since we already have some IT and cloud experience, we know that these concepts are not directly related to the Cloud, so we can easily discard them. However, a student who decides to learn cloud computing might waste time trying to understand these concepts.
Now that we have a list of concepts, we need to ask ChatGPT for more information about each topic, specifying that it is in the context of cloud computing.
Explain me the different Cloud disaster recovery solutions.
The full response can be found here. In summary, ChatGPT provides a small explanation for the different strategies:
- Backup and Restore
- Pilot Light
- Warm Standby
- Hot Standby
- Disaster Recovery as a Service (DRaaS)
ChatGPT also specifies that the strategies depend on the RTO/RPO requirements.
The response seems good and gives us additional subjects to delve into. For example, we can respond to ChatGPT (it is important to respond to preserve the context, rather than starting a new discussion):
- “Could you please sort these strategies according to the cost ?” See response.
- “I don’t understand the difference between the Pilot Light and the Warm Standby, could you explain me.” See response.
- “Could you please sort these strategies according to the RPO and RTO time ?” See response.
We can observe that for all the concepts obtained in the previous steps, we can go deeper by asking several questions to ChatGPT. We can ask questions or rephrase our questions until we get the “correct response.” The term “correct response” is in quotes because we must remember that ChatGPT can hallucinate even though many of its responses are relevant. We must be cautious and manage the contradictory effect when working with ChatGPT.
Therefore, it is necessary to ask numerous questions depending on how deeply we want to learn.
In the last step, we will try to use ChatGPT to test our knowledge of cloud concepts. We can, for example, ask:
Generate questions about cloud concepts and provide the response.
The full response can be found here. In summary, ChatGPT generates 5 open questions and provides several lines of response. The topics for our test include:
- What is cloud computing?
- What are the advantages of using cloud computing?
- What is the difference between public, private, and hybrid clouds?
- What is the difference between SaaS, PaaS, and IaaS?
- What is auto-scaling in cloud computing?
The questions and responses are very interesting, although a bit too basic. Let’s try to have more specific questions:
Generate questions about cloud disaster recovery strategies and provide the response.
The full response can be found here. The questions are now specific to recovery strategies and the RPO/RTO concepts we discussed earlier.
It is also possible to generate multiple-choice questions instead of open questions. Don’t forget to specify to ChatGPT to provide the response at the end of its response; otherwise, it is difficult to read the different question choices without seeing the response.
Generate multi choice questions about cloud disaster recovery strategies and provide the response at the end of your response.
The full response can be found here. Once again, the questions and responses generated by ChatGPT are very good.
The major advantage of using ChatGPT is that if we don’t understand the response to a question, we can ask for an explanation. To maintain the context of the discussion, it is important to respond to the current conversation instead of starting a new one.
I don’t understand the response of question 1 could you explain ?
ChatGPT has no difficulty providing a valuable response. See the response here.
Learning with ChatGPT seems very promising. The ability to delve into specific subjects by asking precise questions is invaluable. The feature of generating questions and responses on desired topics and requesting explanations on the responses is highly valuable. However, it is not without its flaws. Here is a list of drawbacks that may be encountered when using ChatGPT to learn a topic:
- As mentioned earlier, we cannot be certain about the responses generated by ChatGPT. It is important to keep that in mind and pay attention to the slightest contradictions.
- The learning process lacks structure and doesn’t provide a global view of what needs to be learned. As questions are asked, the scope of learning expands, requiring additional synthesis to structure the learning effectively.
- During the testing phase, it is difficult to have questions on multiple topics simultaneously. We have to specify the subject each time we want to receive questions.
The interactivity offered by ChatGPT can be combined with traditional learning processes to deepen understanding of topics that are not clear. It seems easier to identify inconsistencies in ChatGPT’s responses when it is used in conjunction with traditional learning materials. Let’s hope that future versions of ChatGPT will reduce the risk of incorrect responses.