Yushi's Blog

AI Mentorship Approach and TDD Learning Journey

AI Mentorship Approach

Today I continued working on my portfolio project, but with a completely new approach that’s proving to be incredibly valuable for my learning.

AI as Mentor, Not Code Assistant

Instead of using AI as a typical code assistant that gives direct answers, I’ve transformed it into a mentorship system. Here’s how I set it up:

First, I worked with ChatGPT to build a detailed project plan covering every stage – design patterns, tech stack decisions, and implementation phases. From this, I created a comprehensive Work Breakdown Structure (WBS) that guides my entire development process.

The key innovation was creating a mentorship prompt that focuses on guiding me toward solutions rather than providing them directly. When I get stuck, the AI asks probing questions like:

This forces me to think deeply and learn high-level skills rather than just getting quick fixes. I want to develop real understanding, not just employment-level coding abilities.

The AI also provides insights into industry best practices, showing me how professionals would handle similar challenges in real-world scenarios.

TDD Implementation and Learning

I decided to try Test-Driven Development (TDD) for this project, which led me to set up two separate ESLint configurations:

  1. Backend-focused rules: Concentrated on logic and functionality
  2. Frontend-focused rules: Including formatting, naming conventions, and visual consistency

The TDD-specific linting only focuses on testing practices, while the other configurations handle code style and patterns.

I also set up Semantic Release for the project. While I haven’t written any production code yet, the process setup has been incredibly educational.

Deep Dive into ESLint Philosophy

Through this setup, I learned about ESLint’s design philosophy – not just syntax rules, but the underlying principles. ESLint version 4 introduced a confidence-based rule system that’s quite fascinating from an architectural perspective.

I explored different linting tools beyond ESLint, including a Rust-based alternative, but decided to stick with ESLint for now since it’s widely adopted and will help me understand industry standards.

Reflections on Learning Process

Using linters has proven excellent for learning purposes. They help me build good coding habits, understand what constitutes quality code, and prepare for team collaboration. I’m planning to set up ESLint configurations for my future team projects, which should significantly improve code review processes on GitHub.

This mentorship approach with AI feels like a breakthrough in how I learn. Rather than getting quick answers, I’m developing the thinking patterns and problem-solving skills that will serve me long-term. The process takes longer, but the depth of understanding I’m gaining is much more valuable.

The combination of structured planning, mentorship-style AI guidance, and proper tooling setup is creating a learning environment that challenges me while providing the support I need to grow.

<< Previous Post

|

Next Post >>

#AI-Mentorship #Portfolio-Project #Learning #Tdd #Development-Process #Skill-Building