Google Developer Groups DevFest

In early October, I checked the GDG website to see what events were coming up, and without much thought, I signed up for DevFest. I didn't realize it would be such a large-scale full-day event. In addition to the Taipei venue, there were also sessions in Taoyuan, Taichung, Changhua, Tainan, and Kaohsiung. Cities around the world also host annual tech conferences during this period.
This year's Taipei venue was at NTU's Bo-Ya Teaching Building. Over 1,600 users expressed interest in participating, and the actual attendance was indeed very high. The event was arranged with four tracks in the morning and six tracks in the afternoon, covering seven major themes: Cloud, AI/Machine Learning, Web Technology, Flutter, Firebase, Android, and Go. Among these, AI/Machine Learning was a particularly popular sharing topic.
There were 38 speakers in total, with most sessions conducted in Chinese and a few sessions entirely in English. Speakers shared in two formats: 40-minute technical sessions and 2.5-hour workshops.
I only participated in the technical sessions this time. From morning to afternoon, I attended four and a half sessions, three of which were related to AI/Machine Learning topics. After listening, I found I didn't have the energy left to participate in workshops—those will have to wait for future experiences~

Summary of Two AI/Machine Learning Sessions
Since this is a tech conference organized by Google Developer Groups, most of the sessions were highly related to Google's products. Combined with collaborative notes, I've compiled the following key points:

Summary: "Gemini CLI × Spec Kit: Redefining AI Collaborative Development"
In this session, the speaker first emphasized why we should operate AI models through the terminal, then introduced Google's newly launched open-source AI agent product Gemini CLI, explaining its core advantages. Finally, based on practical experience, the speaker compared the differences between two tools for terminal-based AI collaborative development: Spec Kit and OpenSpec.
For developers, Gemini CLI's current advantages include generous free usage quotas. Gemini 2.5 Pro supports a million-token context window and can extend functionality through MCP (Model Context Protocol) to connect with other software tools, avoiding frequent window switching.
When using Gemini CLI, it employs the ReAct reasoning framework to complete error corrections and complex task requirements. For detailed information, you can check the full introduction in Gemini CLI: your open-source AI agent and Gemini Code Assist.
Spec-Driven Development (SDD)
If you want to reduce the risk of AI going out of control during development, Spec-Driven Development (SDD) is one of the more discussed solutions. The collaboration approach involves first writing clear, structured specification documents and incorporating natural language specifications into version control for continuous refinement and iteration.
Four Steps to Using Spec Kit
- /specify: Focus on user needs and success criteria, establish a consensus foundation
- /plan: Decide on the technology stack and system architecture, create an executable implementation plan
- /tasks: Break down into independently executable small tasks
- /implement: AI generates code step by step according to task specifications
Spec Kit Auxiliary Commands
- /speckit.constitution: Establish project principles
- /speckit.specify: Create specifications
- /speckit.plan: Create technical implementation plan
- /speckit.tasks: Break down into tasks
- /speckit.implement: Execute implementation
- /clarify: Clarify unclear sections in specifications
- /checklist: Generate custom quality checklists to verify completeness, clarity, and consistency of requirements
- /analyze: Cross-artifact consistency and coverage analysis
Tool Selection and Practical Recommendations: Spec Kit vs. OpenSpec
The speaker believes Spec Kit is suitable for 0 to 1 development scenarios with stricter rules, while OpenSpec is suitable for 1 to 100 development scenarios, offering more flexibility and agility. The "Spec-Driven Development" methodology is not suitable for handling requirements that are too large in granularity at once. Additionally, you need to have certain software engineering capabilities to master these tools. Regardless of which tool you choose, you must read through all the generated code.

Summary: "From Zero to Practice: Gemma-3-270M Pre-training and Application Experience Sharing"
The speaker first explained the motivation for training large language models, then introduced the features of the Gemma 3 series models. After enhancing the Traditional Chinese capabilities of Gemma-3-270M, the speaker implemented two interesting applications using this model: the PTT Keyboard Warrior model and the Tang Bohu model.
Both Gemma and Gemini are Google's large language models. The main difference is that Gemma is suitable for local or private environments and is primarily text-based, while Gemini is cloud-based and can be applied in multimodal ways. Those who need to train models themselves mostly do so for these three reasons:
- Privacy concerns: Specific sensitive fields such as finance and defense cannot upload data to the cloud.
- Domain expertise: General models cannot meet the highly specialized needs of specific domains.
- Cost control: Small-scale projects can rely on cloud models, but using self-trained models becomes more economical at scale.
Gemma 3 Series Models
- Supports image and text input (270M, 1B only support text)
- Input context can reach 128K tokens
- Supports over 140 languages (Traditional Chinese capability is relatively weak)
- Multiple parameter levels: 270M, 1B, 4B, 12B, 27B (can be downloaded from Kaggle or Hugging Face)
- Supports function calling
Feasibility of Small Model Training: Significant Effects with Just Thousands of Samples
Using the enhanced Traditional Chinese-capable OOO model, the speaker demonstrated two interesting applications, both models that respond to messages based on certain conversational characteristics: the "PTT Keyboard Warrior model" and the "Tang Bohu model." The PTT Keyboard Warrior model responds in a very sharp manner, while the Tang Bohu model responds in seven-character quatrains. Even with 270M parameters, interesting applications can be created!
The speaker mentioned that the training data used for the "PTT Keyboard Warrior" was generated directly using existing large language models, producing thousands of data points rather than scraping them. These generated data points met the speaker's expectations very well. After manual screening, the data was used with 8 GPU B200s (running for 17 minutes) to finally complete the "PTT Keyboard Warrior model."
Interesting Experience with HackMD Collaborative Note-taking
One session had nearly 300 participants, and among them, a group of participants would collaboratively take notes on HackMD, sometimes in sync and sometimes not. Some were responsible for presentation text, some helped add images or extended hyperlinks, and others recorded the actual cases mentioned orally. Of course, there were occasional issues with accidental deletions or duplicates, which was quite interesting!

Conclusion
When checking in, you receive an event badge where you write your name yourself. The badge has two colored lanyards to choose from—if you don't want to be photographed, use the yellow lanyard. In addition to the badge, there was also a NT$100 discount coupon from Tenlong Bookstore (an early bird exclusive gift), and finally a sticker. I don't know why, but receiving stickers always makes me happy ♩♫♬~
As a first-time attendee of GDG DevFest, I found the event location very convenient. After arriving at the venue, because the floor plan was published in advance, I hardly needed to spend time finding session locations. Each space provided Wi-Fi for participants.
The classroom seating was cramped, and once seated, it was impossible to move around. I recommend arriving early to secure a seat, and for popular sessions, it's best to be inside during the previous session. Power supply issues need to be handled yourself (only one classroom had outlets on the desks).
There was a one-hour lunch break, and the distance to dining areas was quite far. Although I brought a simple meal, my body was honest and I went to a fast-food restaurant to buy fried food. Weekend restaurants were crowded, so you need to allocate more time. If you don't want to miss the 1 PM session, I recommend bringing your own meal so you'll have more time to eat.

References
Gemini CLI: your open-source AI agent
