From College Classes to Real Projects: My Journey in Web Development
By Bhuwan Jung Thapa ·

A personal reflection on how my computer science education, practical projects, and work experience helped me understand web development beyond classroom theory and grow as a full stack developer.
When I first started studying computer science, I mostly saw programming as writing code to solve assignments and pass practical exams. At that time, many subjects felt separate from each other. We had programming, database, networking, software engineering, and other theory-based subjects, but I did not clearly understand how everything connected in real life.
Slowly, as I started building small projects and learning web development, those subjects began to make more sense. I realized that the things we learn in college are not only for exams. They become useful when we start creating something real.
A database subject becomes useful when we need to store users, posts, products, or any kind of data. Software engineering becomes useful when we need to plan and organize a project properly. Programming concepts become useful every day while solving errors and writing logic. Even small topics that once felt boring started becoming important when I worked on actual applications.
This is one of the reasons I became interested in full stack development.
Why I Became Interested in Full Stack Development
Full stack development caught my attention because it allows me to understand both sides of an application.
The frontend is the part users see and interact with. It includes the design, layout, buttons, forms, and overall user experience. The backend is the part that handles logic, database, authentication, APIs, and other important operations behind the scenes.
I liked the idea of being able to build a complete application from start to finish. It gave me the chance to understand how a simple-looking feature actually works from the inside.
For example, a login form may look very simple to users. But behind that form, there is validation, authentication, database checking, error handling, and sometimes security-related logic. Working on these kinds of features helped me understand that web development is not only about making something look good. It is also about making it work properly and reliably.
Learning Through Projects
College gave me the foundation, but projects helped me understand things more practically.
When I started working with technologies like React, Laravel, Node.js, Python, and Supabase, I learned how different tools can be used to solve different problems. At first, I made many mistakes. Sometimes the layout would break, sometimes the backend would not respond, sometimes the database relation would not work as expected, and sometimes a small bug would take hours to fix.
But those moments taught me a lot.
I learned that errors are part of the process. Debugging is frustrating sometimes, but it also improves the way we think. Every bug teaches something new if we try to understand the reason behind it instead of just copying a quick fix.
Over time, I also started understanding the importance of writing clean and organized code. In the beginning, I only cared whether the code worked or not. But later, I realized that code should also be readable and maintainable. A project may work today, but if the structure is messy, it becomes hard to update later.
What Work Experience Taught Me
Working on real projects gave me a different kind of learning experience.
In personal projects, we usually decide everything ourselves. But in real work, we have to understand requirements, communicate with others, follow structure, fix issues carefully, and think about how the project will be used by real people.
This helped me become more serious about the way I write code.
I learned that completing a feature is not the only goal. The feature should be understandable, usable, and easy to maintain. It should not create problems for other parts of the system. It should also be simple enough for users to use without confusion.
Real work also taught me patience. Sometimes requirements change. Sometimes something that looks easy takes more time than expected. Sometimes we need to read and understand code written by someone else. These things are normal in development, and they help us grow.
Connecting Education with Practical Skills
One thing I have understood during my journey is that education and practical skills should go together.
College helps us build the base. It teaches us how computers work, how logic is formed, how data is stored, and how systems are designed. But only studying theory is not enough. We need to build projects, make mistakes, and apply those concepts in real situations.
At the same time, only learning tools without understanding the basics is also not enough. Frameworks and libraries may change, but fundamentals remain useful for a long time.
For me, the best learning happens when I connect both sides: the concepts I learn in college and the experience I get from building projects.
My Current Focus
Right now, I am continuing my academic journey by studying MCS. This has helped me look at computer science in a deeper way, not only as a field of programming, but also as a field of research, problem-solving, and continuous innovation.
Along with full stack development, I am becoming more interested in artificial intelligence and generative AI. Generative AI is now being used to create text, images, code, audio, and other types of content from simple prompts, and it is changing the way developers think about building software. Google Cloud describes generative AI as a field focused on creating new content such as text, images, audio, and code, while IBM also explains its use in areas like chatbots, assistants, content generation, and software development.
As a developer, I do not want to learn AI only as a trend. I want to understand how it can be used properly in real applications. I am interested in learning how AI models work, how they can be integrated with web applications, and how they can help solve practical problems.
My current goal is to connect my knowledge of full stack development with AI-based tools and systems. I want to explore things like AI chatbots, smart search, content generation, automation, recommendation systems, and applications that can support users in a more intelligent way.
I know this field is still growing very fast, and there is a lot for me to learn. But that is also what makes it exciting. Every new concept gives me a chance to improve my skills and think about software from a new perspective.
My journey in technology is still continuing. I started with basic programming concepts, moved into web development, and now I am slowly exploring how AI and generative AI can be used in real-world applications. For me, being a developer is not only about learning frameworks or programming languages. It is about staying curious, improving step by step, and building something that can be useful for others.