<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Git on TECHFOR by Suriya Sonphu</title><link>http://suriyasonphu.com/en/tags/git/</link><description>Recent content in Git on TECHFOR by Suriya Sonphu</description><generator>Hugo -- gohugo.io</generator><language>en</language><lastBuildDate>Sat, 12 Sep 2026 00:00:00 +0000</lastBuildDate><atom:link href="http://suriyasonphu.com/en/tags/git/index.xml" rel="self" type="application/rss+xml"/><item><title>Web Technology Development Basic Workshop: From Software Engineering Foundations to AI-Assisted Development</title><link>http://suriyasonphu.com/en/post/2026-09-web-technology-development-basic-workshop/</link><pubDate>Sat, 12 Sep 2026 00:00:00 +0000</pubDate><guid>http://suriyasonphu.com/en/post/2026-09-web-technology-development-basic-workshop/</guid><description>&lt;img src="http://suriyasonphu.com/post/2026-09-web-technology-development-basic-workshop/workshop-group.jpg" alt="Featured image of post Web Technology Development Basic Workshop: From Software Engineering Foundations to AI-Assisted Development" />&lt;p>On 12–13 September 2026, I had the opportunity to return to &lt;strong>Kasetsart University, Sriracha Campus&lt;/strong>. This time I was not there as a student, but as an instructor for the &lt;strong>Web Technology Development Basic Workshop&lt;/strong> for more than 50 third-year students in Digital Science and Technology, Faculty of Science at Sriracha, as part of their preparation for Cooperative Education.&lt;/p>
&lt;p>For me, the workshop meant more than teaching a set of technologies. It was a chance to share what I have learned from real software-development work: software is not only about making code run. It is also about how we think, design, collaborate, make decisions, and take responsibility for what we deliver.&lt;/p>
&lt;h2 id="more-than-learning-a-framework">More Than Learning a Framework
&lt;/h2>&lt;p>The goal of this workshop was not simply to make the students capable of building a backend or frontend that works. I wanted them to understand &lt;strong>how a software system is actually built&lt;/strong> — from the idea and application structure to the way a real development team collaborates.&lt;/p>
&lt;p>Frameworks and tools keep changing. Today we may work with .NET, Vue.js, or TypeScript. A few years from now, some of those tools may be different. The engineering foundations, however, remain transferable.&lt;/p>
&lt;p>&lt;img src="http://suriyasonphu.com/post/2026-09-web-technology-development-basic-workshop/workshop-gitflow.jpg"
width="1152"
height="1536"
srcset="http://suriyasonphu.com/post/2026-09-web-technology-development-basic-workshop/workshop-gitflow_hu_74b76af84d64d511.jpg 480w, http://suriyasonphu.com/post/2026-09-web-technology-development-basic-workshop/workshop-gitflow_hu_7d4bcb0e9a099d3a.jpg 1024w"
loading="lazy"
alt="Explaining Gitflow Workflow and how a software-development team collaborates"
class="gallery-image"
data-flex-grow="75"
data-flex-basis="180px"
>&lt;/p>
&lt;p>That is why I wanted the students to see Full-stack Development as more than connecting a frontend to a backend. It means understanding the relationship between the parts of a system: APIs, data flow, application structure, state management, and the design decisions behind the code.&lt;/p>
&lt;h2 id="from-zero-to-full-stack">From Zero to Full Stack
&lt;/h2>&lt;p>The workshop was designed as a hands-on journey. We started with the fundamentals of a web application, then gradually moved into backend development, frontend development, and finally the integration between both sides.&lt;/p>
&lt;p>The core topics included RESTful APIs, backend development, frontend development, TypeScript, data handling, and full-stack application integration. More importantly, I tried to explain what each part is responsible for and why we structure software in a particular way.&lt;/p>
&lt;p>One principle I repeated throughout the workshop was: &lt;strong>do not rush to memorize syntax; understand the reason behind the code first.&lt;/strong>&lt;/p>
&lt;p>When we understand the structure, learning another framework becomes easier. More importantly, we are better prepared to solve problems that do not have a ready-made tutorial.&lt;/p>
&lt;p>&lt;img src="http://suriyasonphu.com/post/2026-09-web-technology-development-basic-workshop/workshop-mentoring.jpg"
width="1620"
height="1080"
srcset="http://suriyasonphu.com/post/2026-09-web-technology-development-basic-workshop/workshop-mentoring_hu_c79d320df10cbfd.jpg 480w, http://suriyasonphu.com/post/2026-09-web-technology-development-basic-workshop/workshop-mentoring_hu_d3c7f51791976e8a.jpg 1024w"
loading="lazy"
alt="Hands-on mentoring during the workshop lab"
class="gallery-image"
data-flex-grow="150"
data-flex-basis="360px"
>&lt;/p>
&lt;p>During the lab, I was happy to see the questions gradually change from “what should I type next?” to “why do we do it this way?” That shift matters. Software development is not built on remembering commands; it is built on understanding the problem and making reasoned decisions.&lt;/p>
&lt;h2 id="software-development-is-a-team-sport">Software Development Is a Team Sport
&lt;/h2>&lt;p>Another important part of the workshop was how software-development teams work together.&lt;/p>
&lt;p>In professional work, code does not end on the developer&amp;rsquo;s machine. It must be reviewed, changed, released, maintained, and often handed over to other people in the future.&lt;/p>
&lt;p>The students therefore practiced the ideas behind &lt;strong>Gitflow Workflow&lt;/strong>, Feature Branches, Pull Requests, and collaborative development practices that help reduce risk when many people work on the same codebase.&lt;/p>
&lt;p>We also discussed Agile principles and practical best practices that help teams deliver continuously without treating software quality as an afterthought.&lt;/p>
&lt;p>&lt;img src="http://suriyasonphu.com/post/2026-09-web-technology-development-basic-workshop/workshop-classroom.jpg"
width="1536"
height="1152"
srcset="http://suriyasonphu.com/post/2026-09-web-technology-development-basic-workshop/workshop-classroom_hu_c66e21aa3b89d188.jpg 480w, http://suriyasonphu.com/post/2026-09-web-technology-development-basic-workshop/workshop-classroom_hu_8eb846a2da93f7a5.jpg 1024w"
loading="lazy"
alt="Students building their applications in the computer laboratory"
class="gallery-image"
data-flex-grow="133"
data-flex-basis="320px"
>&lt;/p>
&lt;p>I wanted them to see that “the code works” is only one condition of good software. In real projects, code also needs to be &lt;strong>readable, reviewable, changeable, testable, and maintainable by someone else&lt;/strong>.&lt;/p>
&lt;h2 id="strong-foundations-before-ai">Strong Foundations Before AI
&lt;/h2>&lt;p>Today, AI Agents can help developers write code, implement features, and complete multi-step development tasks remarkably quickly.&lt;/p>
&lt;p>But I believe that getting the most value from AI does not begin with becoming the best at prompting. It begins with &lt;strong>understanding what we are building&lt;/strong> and being able to judge whether what AI generates is actually appropriate for our system.&lt;/p>
&lt;p>Without an understanding of architecture, data flow, security, maintainability, and software-development principles, it is very easy to generate code quickly while also creating unnecessary &lt;strong>Technical Debt&lt;/strong>.&lt;/p>
&lt;p>The development path I wanted the students to see is closer to this:&lt;/p>
&lt;p>&lt;strong>Understand → Design → Build → Collaborate → Improve → Accelerate with AI&lt;/strong>&lt;/p>
&lt;p>rather than:&lt;/p>
&lt;p>&lt;strong>Prompt → Generate → Copy → Hope it works&lt;/strong>&lt;/p>
&lt;p>AI should amplify a developer&amp;rsquo;s capability, not remove the need to think.&lt;/p>
&lt;p>With strong foundations, AI Agents can then become genuinely useful for feature implementation, refactoring, testing, documentation, and code review — while the developer still has the knowledge required to evaluate the result.&lt;/p>
&lt;h2 id="what-i-wanted-the-students-to-take-away">What I Wanted the Students to Take Away
&lt;/h2>&lt;p>The workshop time was limited, and I could not deliver every topic I had prepared.&lt;/p>
&lt;p>Instead of rushing through every slide, I chose to focus on the quality of understanding. I wanted the students to think, experiment, ask questions, and understand what they were building.&lt;/p>
&lt;p>Software development is not a skill that can be completed in two days. The important part starts after the workshop: continued practice, building real things, making mistakes, and learning again.&lt;/p>
&lt;p>&lt;img src="http://suriyasonphu.com/post/2026-09-web-technology-development-basic-workshop/workshop-instructor.jpg"
width="1620"
height="1080"
srcset="http://suriyasonphu.com/post/2026-09-web-technology-development-basic-workshop/workshop-instructor_hu_5e11079046081052.jpg 480w, http://suriyasonphu.com/post/2026-09-web-technology-development-basic-workshop/workshop-instructor_hu_a45880446f333b24.jpg 1024w"
loading="lazy"
alt="A teaching moment during the Web Technology Development Basic Workshop"
class="gallery-image"
data-flex-grow="150"
data-flex-basis="360px"
>&lt;/p>
&lt;p>What impressed me most was the students&amp;rsquo; interest, participation, and productivity throughout the workshop. Many of them started from the fundamentals and gradually connected the pieces until they could see the shape of a real Full-stack Application.&lt;/p>
&lt;p>Returning to the university was therefore not only an opportunity to share knowledge. It also gave me new energy. It reminded me why I enjoy software development and why sharing engineering knowledge with the next generation matters.&lt;/p>
&lt;p>The main message I wanted to leave with them is simple: &lt;strong>tools will change, but strong foundations will keep taking us forward.&lt;/strong>&lt;/p>
&lt;p>&lt;img src="http://suriyasonphu.com/post/2026-09-web-technology-development-basic-workshop/workshop-group.jpg"
width="1536"
height="720"
srcset="http://suriyasonphu.com/post/2026-09-web-technology-development-basic-workshop/workshop-group_hu_f8dbfab5a3a5b26a.jpg 480w, http://suriyasonphu.com/post/2026-09-web-technology-development-basic-workshop/workshop-group_hu_e6a8f3b20299aaad.jpg 1024w"
loading="lazy"
alt="Preparing for the Web Technology Development Basic Workshop"
class="gallery-image"
data-flex-grow="213"
data-flex-basis="512px"
>&lt;/p>
&lt;h2 id="workshop-materials">Workshop Materials
&lt;/h2>&lt;p>The teaching materials and hands-on labs used in this workshop are available as a dedicated workshop site:&lt;/p>
&lt;p>&lt;strong>&lt;a class="link" href="https://suriyasonp.github.io/web-tech-ku-workshop/" target="_blank" rel="noopener"
>Web Technology Development Basic Workshop&lt;/a>&lt;/strong>&lt;/p>
&lt;p>The site brings together the backend, frontend, Git workflow, and hands-on learning materials used during the workshop in a format that is easier to follow than browsing the repository directly.&lt;/p></description></item></channel></rss>