Learning computer programming in higher education has become synonymous with paving the way for a successful tech career. Despite this, many students find themselves dropping out of the course. They fall under the misconception that they will be molded into industry-ready graduates, yet the rapidly evolving nature of technology is often counterproductive to the finite scope of the curricula that universities and programs offer.
To confront such a conundrum, the book How to Really Teach Yourself Programming raises a critical question that attests to the complexity of the art: “Do you really know how to teach yourself programming?”
Published in February 2024 by Gabriel Paulo Rayo (IV, BS IET-GD), who is also chairperson for the Council of Student Organizations-Laguna, the book’s query aims to spark reflection on the continued competency of its readers. Rayo, in a semi-biographical style, seeks to teach his audience how to learn programming effectively through research-backed examples and anecdotes, reinforcing the belief that anyone can teach themselves to code.

How to really teach yourself programming
Rayo’s book is not your usual programming textbook. “It’s still largely a book about learning, more so than it is a book about programming,” he clarifies. Unlike other books that are caught up in syntax, Rayo’s work acts like a springboard for amateur programmers to stimulate their creativity and go beyond what they already know.
The book is organized into two primary parts that follow the principles of goal-oriented and project-based learning. In the first section, Knowing where you are stuck, Rayo provides a visualization for learner competence and motivation through Max Landsberg’s Skill-Will Matrix. He also offers his own interpretation of the Dunning-Kruger effect, a cognitive bias describing the contrast between the perceived and actual performance of an individual.
From these frameworks, Rayo comes up with three stages in learning programming: the enthusiasm area, a high-motivation and high-competency stage; the realization area, a low-motivation and mid-competency stage; and the reluctance area, a low-motivation and high-competence area. He expounds in later chapters on the realizations in each of these areas that describe a student’s progress in learning and the principles to continue forward.
The second part of the book posits how project-based learning could be done through Object-oriented Programming (OOP), a programming paradigm that organizes a program around building blocks like objects and classes rather than functions and logic alone. As OOP fosters modular and reusable code, it allows programmers to exercise better program design and simplify high-level concepts. This approach also grants more autonomy over projects and encourages deeper engagement.
How to really write a book
Before he published his book, Rayo found himself in search of meaning entering the University. He eventually became part of the Laguna Campus’ La Salle Computer Society, granting him the opportunity to deliver a seminar under the same title as his printed work. The experience was a revelation for Rayo to pursue teaching and write his book. “During this time, I realized [that] instead of trying to look for something meaningful, I should instead try to create something meaningful and share that with people,” he shares.
Rayo spent the next 48 days after the seminar completing the first manuscript. While the actual writing took a little over a month, the idea itself took two years to mature and was grounded in seven years of experience. As Rayo was only 19 at the time of writing, he started programming at age 12 before delving into game development at age 14.
The biggest challenge he faced while writing the book was reaching the 30,000 word count for non-fiction literature; he only had about 21,000 words upon completing the manuscript. “I needed to make sure that I had, like, 9,000 words of significance put into it. So, this took a lot of critical thinking of my experiences [about]…what can I delve deeper into,” reflects Rayo.
The editing process afterward was entirely done by Rayo himself, relying mostly on grammar checkers and Turnitin features. In refining the book’s content, Rayo also sought the advice of his cousin, one of Trello’s lead developers, to better explain why programming came more naturally to him than to his peers. The insight that he received became a pivotal point for himself, serving as a foundation for his advocacy for better programming education.
“He said that the reason I’m ahead is because I focus on…an ambitious goal instead of focusing on the means for that goal. Specifically, I didn’t focus on the syntax. I focused on what I wanted to do with that syntax.”
How to really teach others programming
The book is a testimony to a better approach in programming education within academic institutions. Going beyond self-motivated learning, Rayo criticizes the material-centric approach to learning programming, especially in DLSU. “I believe as a university, we should not undervalue the power of self-teaching… We should not forget that the primary goal of the University is to teach students how to teach themselves.”
Moreover, he argues that the University must create an environment that stimulates students’ imagination instead of solely relying on lectures and standardized exams to improve their proficiency. “What’s happening right now is [that] they’re so focused on giving the students the explanation first before the imagination aspect,” he continues. By fostering the students’ imagination, DLSU can push them to explore programming at greater depth. “They have to be allowed to experience what they are able to do before they are taught how to do it.”
Moving forward, Rayo plans to publish more literature on programming pedagogy, including a research paper, a sequel piece, and a second edition of his book. To his current and future readers, he encourages them to teach once they are done with the book. By sharing what they have learned, they can help “teach knowledge that is transferable” and contribute to the push for improved programming education for everyone.

One reply on “Gabriel Rayo pens debut book on programming pedagogy”
Very well written. Thank you for this coverage TLS.