This is the new age of AI, where it seeps into several aspects of our lives. Not only can we use it to help you edit our documents, or to draft that emails we dread to write, it can also help us plan trips, generate recipes with ingredients we have laying around our house, or even help us come up with your own personalized workout plan! There is no denying the instrumental power of improvement that AI can have over our lives.
While all of these other uses of AI are great, in my opinion, one of the arguably best uses of AI is that it can aid in your learning, and make the process of learning more efficient, enjoyable, and effective.
However, just like any other tool, it is all in how you use it. If you use it as a tool that calipote you into a deeper understanding of a topic, that is excellent. But if you use it as a way to not have to think for yourself and to have “somebody else” do it for you, it can be counterproductive, if not utterly destructive.
The human brain just does not absorb things through one pass of reading or through copy and paste. After all, how much do you remember from your past classes in high school or college? A small fraction of it, right? And that small fraction that you do remember is the fraction of knowledge that you repeatedly returned to and utilized, or spoke about. That is how you were able to learn it for the long term. We need to learn by doing. That is why children play so often. They are in the process of learning how the world works, how people work, how the laws of nature work. It is through this process of interaction and repetition that we all learn.
True learning requires you to deeply understand concepts as you build on them. This requires active learning, and using the concepts you have been absorbing in a real and tangible way. This is especially important for learning how to program. In order to understand how to write code you need to, well, write it. You have to build something, and in that process of building something, you trip and stumble along the way, learning how things work and do not work in context. Without this process of “failure” and problem solving, there is very little that your brain will hold on to.
But as long as you are aware of these principles of learning, and see the AI as a teaching assistant help you in your process for learning, and not the replacement of this learning, it can do wonders to become a stronger programmer, and I believe it truly has made me a stronger programmer.
Considering how the human brain works, I have developed a system for how I utilize AI on a regular basis.
First, I create learning logs for myself on each topic I am learning or on each project I am building. This has two benefits. One, it helps me keep track of what I am doing and gives me a reference to look back on when I later come back to my code and do not understand what is going on. Second, it helps me actually learn. The process of “teaching” yourself, or actively thinking about how and why you are doing something in written form, is an effective way to build the skills you are trying to obtain. It takes you from the plane of passive learner and puts you into a better position to be an active learner. So whenever I learn something from ChatGPT, I document what it is I learned from it in my log.
But documenting what you are learning is not enough. You need to be always in the quest of asking why? I never just take the solution or explanation that ChatGPT provides for me for granted. I dig deeper. I keep on asking for more. I pick a detail from its explanation, and I ask why we are doing this instead of that. Or I might ask it to further expand on a concept. I basically act like a young child who is pestering their parents with the endless stream of “But why?”. While potentially annoying to the adult who is having to answer these questions, this is a foundational way for a child to learn. And the same holds true for us adults. Always ask why.
Logging, documenting, and asking why are crucial, but nothing is more crucial than trying to build the work myself as much as I can, particularly where it matters. Looking up some syntax questions might not be on the top priority of things to absorb and memorize. But understanding, let’s say, how API calls work to communicate between a frontend and backend is a concept you have to do for yourself, many times. You have to deal with the network errors in the moment, and then learn how to debug those errors as you are working to make it work.
You have to see yourself as the conductor of an orchestra who understands how everything flows. Though you might have an assistant who transports the instruments from show to show, and prints out the sheet music, you still have to have your own fundamental understanding of how the instruments work together to make a cohesive hole. The assistant can’t do that for you in the moment of a performance.
Thus, for me, using ChatGPT has been a wonderful experience of growth, and in a project that requires the absorption of a lot of languages and libraries in a short amount of time, it has proved invaluable. Delegating what is not important to my tool, allowing the tool to teach me concepts in more depth and in a more time efficient manner, and then documenting and practicing concepts it helps me explore, has sharpened my programming skills significantly.
Knowing how to use it wisely in the modern world is akin to having a super power, as long as you don’t allow it to turn into your kryptonite and weaken you.
Leave a Reply