logo

PGD Cohort 2 Enrolment is live. Call 8100551189 or Request a Call Back.

PGD Cohort 2 Enrolment is live.
Call 8100551189 or Request a Call Back.

‘How to code’ OR ‘What to code’ in the Chat GPT era The debate continues!

Fundamentals


15th June 2023

Anish Roychowdhury

blog

As a faculty of programming and AI, I have recently faced this challenge with learners from diverse backgrounds and that forms the basis of this discussion. With the changing economic trends, general slowdown in the world economy, the need for corporations to extract every juice from their investments is the mantra everywhere. As a natural fallout of the same, organizations are undergoing a digital transformation like never before and trying to adapt, inculcate and develop a discipline of data within their organisations to better analyse the business and make every buck spent meaningful or at least analyse and implement strategies for cost effectiveness through data analytics. This has resulted in a plethora of experienced workforce as well as fresh graduates from different disciplines wanting to upgrade themselves and learn the discipline or at least the basics of it. Thus, my students included early jobbers from finance, IT management, Retail and other backgrounds. The first scare they faced was how do we manage to pass the python programming course? With concerns like “I have no prior experience in any programming language, and I am a completely non-technical person how will I pick up and be at par with my classmates who have some technical background or are engineers with coding skills? 

  

Now, like every good teacher I had a mission to break the fear of coding for my students by focusing on a solutioning style of teaching rather than emphasizing syntactical pedagogy. The why was important here. Why a function or modular coding rather than a scripting style? Why a vector-based number crunching than a for loop?  The background concepts must be taught to early learners rather than emphasising on code generation itself.  At the same current time we are experiencing and explosion of Chat GPT adoption and usage and this put faculties and educational institutes on a backfoot – how do we do deal with this ‘menace’ now that students can basically get any technical assignment done and thus making such evaluations irrelevant and putting in place the need for an entire new learning paradigm. 

  

So how did I get ahead with my students and the rest of the course? A hint – its teaching what to code this time and not how to code and leveraging the AI advances and adapting the teaching pedagogy.  Interested in knowing more? 

 

 Well one of the assignments I planned to give was to develop an OOPS based library management software in python. Before giving the assignment, I did explain in detail what would be the requirements for such software. We would need a Class for every borrower.  A method for check out check in for books, keeping track of due dates. Keeping track of the central book repo so that a book checked out cannot be issued to another person. A class for every borrower as well with relevant methods.  Then I did what shocked the class, asked a student to volunteer and prompt Chat GPT with this ‘to be assigned HW”, and we demo-ed what Chat GPT could do. 

  

Below is the actual screen shot of the text generated by Chat GPT along with the code, for the prompt as shown. 

 

 

The implications of the above are simple yet powerful. We now have advances in generative (like Chat GPT under discussion) by which it makes more sense to know “What to code” rather than struggle with “How to code” a challenge faced by many first time non-technical background learners.   This opens a learning path for many folks from diverse backgrounds. Even for the tech savvy coders – leaving the code generation to Chat GPT leaves the bandwidth free for better product design, robust testing and spending bandwidth in general on making a better overall optimised product. 

  

However, I end the discussion with a caveat, Chat GPT is as good as what it has been trained on. Python code generation may be one of its strong points based on its training base, however learners still need to know the fundamentals, to evaluate the code. Yes, we can claim that a huge effort of code writing may now be simplified thanks to Chat GPT, but then you still must know where to shoot, Oops I meant what to code! 

  

RELATED BLOGS