How AI Helped Me Learn Programming Better
I wanted to deep dive into the fundamentals of programming languages.
So a quick idea was to start asking questions to ChatGPT and create quick lists of concepts and fundamentals to understand in a short amount of time. This method failed and didn’t prove effective for me.
Here’s Why
I often lacked the whole breadth of understanding of what answers ChatGPT was giving and often felt the GPT interaction hallucinating after a couple of back and forths.
It would either repeat the same interaction or digress as the conversation went longer and it also got difficult for me to handle the conversation context in a cumbersome UX. A lot of scrolling up and down.
What Worked for Me
Having a clear definite guide on the programming languages from the standard website. Opening a website that had the whole index of topics for the programming language gave me control and a grip on all concepts I needed to know and what I didn’t know.
I go through the topics one by one and use ChatGPT to help me whenever I get stuck. ChatGPT provided me with explanations in simple terms, analogies, code snippets, or technical details, depending on my needs and the depth I wanted.
It is like having a personal tutor/senior developer teaching me about finer nuances.
The above approach made me feel confident because I had an overview of the guide rails I had and the AI assistant tended to the exact needs I had as a learner.
How Do I Use AI More Practically?
In high school, you didn’t grasp what matrix multiplication or vector physics was, worry not you already do that when using natural language, it’s just that LLMs (Large Language Models) like GPT make such math operations on language much more approachable now.
Here’s an Example of How
I wanted to understand the concepts of compounding, which is so heavily used and spoken of in the financial world, but I never quite had the right mental model to grasp its true power. I either didn’t know a person who introduced me to finance in a loving way, or I didn’t spend much time understanding their love for finance. So I became my own personal tutor charged with curiosity.
I asked ChatGPT, “Explain to me the concept of financial compounding with concepts from computer science”. Voila! It used Recursion to explain it to me!
You can conquer a piece of the world with love. Start by doing what you love, then sow that love into the fear and see yourself conquer the fear.
ChatGPT even gave me a snippet of Python code to show me how recursion is analogous to compounding and immediately it strikes to me how enormous and powerful the concept of compounding is because I love computer science and if you explain the world to me with the things I love, I will love and appreciate all the things eventually. No need to fear math or any coding language if you know one language properly.
LLMs allow individuals to perform vector operations on natural language.
How Do Academic Curriculums Evolve?
Humans define a hard-coded curriculum.
AI tutors assist the learner in deep diving based on the topics available on the topics present in the curriculum. AI-Assisted Curriculum (AAC) are established.
Why This Approach?
There’s a rigidity that covers the breadth and defines the scope of the learning.
The AI-assisted exploration enables depth-based consolidation of concepts.
What Are AI-Assisted Tutors Going to Be Awesome At?
- Analogy based explanations
- Rabbit hole deep dives (curiosity-driven exploration)
- Correcting our misunderstandings of concepts that we have misinterpreted.
Takeaways for Practical Learning
- Identify what type of cues a kid loves to engage with (audio, visual, sound explanations).
- Then identify which field of interest the kids get excited about.
- Then use the above experience to engage the student in optimized learning. Applicable to everyone actually, not just kids.
An example: A kid loves playing piano and has an acute perception of music. First get his/her fundamental strong in understanding the concepts of playing piano, the acoustics, and types of music. Later whenever you want to introduce the kid to new types of concepts which the kid is usually not interested in, explain it to them using the language/concepts of music.
Here’s a Fun Prompt to Try in ChatGPT
Explain compounding to me with concepts from classical Indian music.
Real-Life AI Impact
Recently I came upon this article by Simon Willson on how he used AI to be more ambitious while building on their projects.
One more example is my Dad who always keeps on tinkering with mechanical projects and has fun automating trivial chores at home. He often winds up in electronics-related issues where he needs more clarification from individuals in the electronics field. He has his basics and fundamentals clear on electronics, and he knows what questions to ask but didn’t find answers for his specific use cases on the internet or has to find contacts in our local network who could answer him. Again both of the above options are painfully slow in getting the answers. However now Dad takes the help of ChatGPT and it’s like he has mechanical, and electronics interns with him 24/7 at his disposal. It amazes me how happy he is to go ahead and solve his joyful hobby projects with no blockers.
Many developers who wrote boilerplate code now do code reviews on code produced by AI assistants like GitHub Copilot. So the shift is from writing to reviewing (at least for now). A person can review AI written code when they know what problem it is solving and how it is solving. Here we see the shift from implementing low-level details to reviewing high-level approaches.
If AI Becomes Advanced Enough to Do Most of What Humans Can Do with Coding, Is It Still Worth Learning to Code for Basic Tasks, or Will the AI Simply Generate the Code for Us?
I would still say, investing in learning to code and understanding the basic stuff still goes a long way, and here’s why:
- Knowing the fundamentals of how digital systems are shaped always helps.
- A rule of thumb that I follow, Semantics Over Syntax. Understand the meaning, the purpose, the context of the problem, and how it’s being solved at fundamentals.
- As human beings, we always need to collect higher-level ideas, the low-level approaches and implementation help can be sought by the AI.
I see a future where the combination of humans and robots co-exist in a symbiotic pair harmoniously and individuals who adapt to this co-existing mix will thrive.
So here’s why I believe, that people eventually become first-class entrepreneurs where every individual has the broad expertise to solve any problem. I have written more in this article below it.