<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Tutorial on Bruce on AI Engineering</title><link>http://www.heyuan110.com/tags/tutorial/</link><description>Recent content in Tutorial on Bruce on AI Engineering</description><generator>Hugo</generator><language>en</language><lastBuildDate>Sat, 07 Mar 2026 18:00:00 +0800</lastBuildDate><atom:link href="http://www.heyuan110.com/tags/tutorial/index.xml" rel="self" type="application/rss+xml"/><item><title>Build an AI Coding Agent from Scratch in Python (Complete Tutorial)</title><link>http://www.heyuan110.com/posts/ai/2026-03-07-build-ai-agent-python/</link><pubDate>Sat, 07 Mar 2026 18:00:00 +0800</pubDate><guid>http://www.heyuan110.com/posts/ai/2026-03-07-build-ai-agent-python/</guid><description>&lt;p&gt;&lt;img src="http://www.heyuan110.com/posts/ai/2026-03-07-build-ai-agent-python/cover.webp"
 alt="Build an AI coding agent from scratch in Python — complete tutorial with agentic loop and tool use"
 
 loading="lazy"
 decoding="async"
 fetchpriority="low"
 width="1200"
 height="630"
/&gt;
&lt;/p&gt;
&lt;p&gt;Every AI coding tool — &lt;a href="http://www.heyuan110.com/posts/ai/2026-02-28-claude-code-complete-guide/"&gt;Claude Code&lt;/a&gt;, Cursor, Copilot — runs on the same core architecture. In this tutorial, you will build that architecture yourself: a terminal AI coding agent in Python, from zero to a working 250-line tool that reads files, writes code, runs commands, and makes autonomous multi-step decisions.&lt;/p&gt;
&lt;p&gt;No frameworks. No abstractions. Just Python and a clear understanding of how AI agents actually work.&lt;/p&gt;</description></item><item><title>Build MCP Servers in Python: Complete Step-by-Step Tutorial</title><link>http://www.heyuan110.com/posts/ai/2026-03-05-build-mcp-server-python/</link><pubDate>Thu, 05 Mar 2026 14:00:00 +0800</pubDate><guid>http://www.heyuan110.com/posts/ai/2026-03-05-build-mcp-server-python/</guid><description>&lt;p&gt;&lt;img src="http://www.heyuan110.com/posts/ai/2026-03-05-build-mcp-server-python/cover.webp"
 alt="Build MCP servers in Python with FastMCP step by step tutorial"
 
 loading="lazy"
 decoding="async"
 fetchpriority="low"
 width="1200"
 height="630"
/&gt;
&lt;/p&gt;
&lt;p&gt;Python is the most popular language for AI developers, and the &lt;a href="https://github.com/modelcontextprotocol/python-sdk"&gt;MCP Python SDK&lt;/a&gt; makes it remarkably easy to build custom MCP servers. With the decorator-based FastMCP framework, you can go from zero to a working server in under 50 lines of code.&lt;/p&gt;
&lt;p&gt;This tutorial walks you through building MCP servers in Python from scratch. You will create tools, resources, and prompts, handle errors properly, test with the MCP Inspector, connect to Claude Code, and build a practical SQLite database server. Every code example is complete and runnable.&lt;/p&gt;</description></item><item><title>Building MCP Servers with TypeScript: Zero to Deploy Tutorial</title><link>http://www.heyuan110.com/posts/ai/2026-03-02-building-mcp-servers-typescript/</link><pubDate>Mon, 02 Mar 2026 10:00:00 +0800</pubDate><guid>http://www.heyuan110.com/posts/ai/2026-03-02-building-mcp-servers-typescript/</guid><description>&lt;p&gt;&lt;img src="http://www.heyuan110.com/posts/ai/2026-03-02-building-mcp-servers-typescript/cover.webp"
 alt="Building MCP servers with TypeScript from zero to deploy"
 
 loading="lazy"
 decoding="async"
 fetchpriority="low"
 width="1200"
 height="630"
/&gt;
&lt;/p&gt;
&lt;p&gt;MCP (Model Context Protocol) is the standard way to give AI models access to external tools, data, and services in 2026. If you&amp;rsquo;ve used &lt;a href="http://www.heyuan110.com/posts/ai/2026-02-28-claude-code-complete-guide/"&gt;Claude Code&lt;/a&gt; or Cursor, you&amp;rsquo;ve already used MCP servers — they power everything from database queries to API integrations.&lt;/p&gt;
&lt;p&gt;This tutorial walks you through building your own MCP server from scratch with TypeScript, from project setup to npm publishing. By the end, you&amp;rsquo;ll have a working server that any MCP-compatible AI client can use.&lt;/p&gt;</description></item><item><title>Claude Code Guide 2026: Everything You Need to Know</title><link>http://www.heyuan110.com/posts/ai/2026-02-28-claude-code-complete-guide/</link><pubDate>Sun, 01 Mar 2026 10:00:00 +0800</pubDate><guid>http://www.heyuan110.com/posts/ai/2026-02-28-claude-code-complete-guide/</guid><description>&lt;p&gt;&lt;img src="http://www.heyuan110.com/posts/ai/2026-02-28-claude-code-complete-guide/cover.webp"
 alt="Complete Claude Code guide covering all features and workflows in 2026"
 
 loading="lazy"
 decoding="async"
 fetchpriority="low"
 width="1200"
 height="630"
/&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a href="https://github.com/anthropics/claude-code"&gt;Claude Code&lt;/a&gt; is Anthropic&amp;rsquo;s terminal-based AI coding agent. Unlike IDE extensions that suggest code snippets, Claude Code operates as an &lt;strong&gt;autonomous agent&lt;/strong&gt; — it reads your codebase, plans multi-step changes, writes code, runs tests, and iterates until the task is done.&lt;/p&gt;
&lt;p&gt;Since its launch, Claude Code has become the go-to tool for developers who want more than autocomplete. It can refactor entire modules, set up CI/CD pipelines, debug complex issues across files, and even manage git workflows — all from your terminal.&lt;/p&gt;</description></item><item><title>Claude Code MCP Setup: Connect AI to Any External Service</title><link>http://www.heyuan110.com/posts/ai/2026-02-28-claude-code-mcp-setup/</link><pubDate>Sat, 28 Feb 2026 09:00:00 +0800</pubDate><guid>http://www.heyuan110.com/posts/ai/2026-02-28-claude-code-mcp-setup/</guid><description>&lt;p&gt;&lt;img src="http://www.heyuan110.com/posts/ai/2026-02-28-claude-code-mcp-setup/cover.webp"
 alt="Claude Code MCP setup connecting AI to external services"
 
 loading="lazy"
 decoding="async"
 fetchpriority="low"
 width="1200"
 height="630"
/&gt;
&lt;/p&gt;
&lt;p&gt;Out of the box, Claude Code can read files, run shell commands, and search code. But what if you need it to query your Postgres database, send a Slack message, or hit your company&amp;rsquo;s internal API?&lt;/p&gt;
&lt;p&gt;That&amp;rsquo;s exactly what MCP solves. The &lt;strong&gt;&lt;a href="https://modelcontextprotocol.io"&gt;Model Context Protocol&lt;/a&gt;&lt;/strong&gt; is an open standard that lets you plug any external service into Claude Code — no prompt hacking, no copy-pasting data, no brittle workarounds. Think of it as &lt;strong&gt;USB-C for AI&lt;/strong&gt;: a single, universal connector between your AI assistant and every tool you care about.&lt;/p&gt;</description></item><item><title>How to Install Claude Code 2026: Complete Setup Guide in 10 Minutes</title><link>http://www.heyuan110.com/posts/ai/2026-02-25-claude-code-setup-guide/</link><pubDate>Wed, 25 Feb 2026 12:00:00 +0800</pubDate><guid>http://www.heyuan110.com/posts/ai/2026-02-25-claude-code-setup-guide/</guid><description>&lt;p&gt;&lt;img src="http://www.heyuan110.com/posts/ai/2026-02-25-claude-code-setup-guide/cover.webp"
 alt="Claude Code setup guide showing terminal installation and IDE integration"
 
 loading="lazy"
 decoding="async"
 fetchpriority="low"
 width="1200"
 height="630"
/&gt;
&lt;/p&gt;
&lt;p&gt;You&amp;rsquo;ve heard about Claude Code. Maybe you&amp;rsquo;ve seen the demos. Now you want to try it yourself.&lt;/p&gt;
&lt;p&gt;Good news: getting from zero to a working Claude Code setup takes about 10 minutes. This guide covers everything — installation, authentication, configuration, IDE integration, and running your first real task.&lt;/p&gt;
&lt;p&gt;By the end, you&amp;rsquo;ll have Claude Code working in your terminal and IDE, configured for your workflow, and ready to start coding with AI.&lt;/p&gt;</description></item><item><title>Docker Compose Tutorial: docker-compose.yml Explained with Real Examples (2026)</title><link>http://www.heyuan110.com/posts/docker/2026-01-24-docker-compose-yml-explained/</link><pubDate>Sat, 24 Jan 2026 00:00:00 +0000</pubDate><guid>http://www.heyuan110.com/posts/docker/2026-01-24-docker-compose-yml-explained/</guid><description>&lt;p&gt;Docker Compose is the go-to tool for running multi-container applications, and &lt;strong&gt;docker-compose.yml&lt;/strong&gt; (now officially &lt;code&gt;compose.yaml&lt;/code&gt;) is its configuration file. Whether you are picking up containers for the first time or brushing up on the finer details, this tutorial walks you through every field you will actually use.&lt;/p&gt;
&lt;p&gt;We will cover every key directive in compose.yaml — services, volumes, networks, ports, environment, healthcheck — and put them into practice with a WordPress + MySQL stack you can spin up in seconds. Pair this guide with the &lt;a href="http://www.heyuan110.com/posts/docker/2019-11-14-docker-commands/"&gt;Docker Command Cheat Sheet&lt;/a&gt; for an even smoother workflow.&lt;/p&gt;</description></item><item><title>Java Tutorial Part 2: Arrays Utility, Lambda Expressions, Regex, and Sorting Algorithms</title><link>http://www.heyuan110.com/posts/java/2024-05-13-learn-java2/</link><pubDate>Mon, 13 May 2024 15:13:10 +0800</pubDate><guid>http://www.heyuan110.com/posts/java/2024-05-13-learn-java2/</guid><description>&lt;p&gt;&lt;img src="http://www.heyuan110.com/posts/java/2024-05-13-learn-java2/java-logo.webp"
 alt="image"
 
 loading="lazy"
 decoding="async"
 fetchpriority="low"
 width="898"
 height="471"
/&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a href="../2024-05-05-learn-java"&gt;Continued from Part 1: Java Tutorial (Part 1)&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="7-collections--io-fundamentals"&gt;7. Collections &amp;amp; I/O Fundamentals&lt;a href="#7-collections--io-fundamentals" class="anchor" aria-hidden="true"&gt;&lt;svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"
 stroke-linecap="round" stroke-linejoin="round"&gt;
 &lt;path d="M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3"&gt;&lt;/path&gt;
 &lt;line x1="8" y1="12" x2="16" y2="12"&gt;&lt;/line&gt;
 &lt;/svg&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;h3 id="1-the-arrays-utility-class"&gt;1. The Arrays Utility Class&lt;a href="#1-the-arrays-utility-class" class="anchor" aria-hidden="true"&gt;&lt;svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"
 stroke-linecap="round" stroke-linejoin="round"&gt;
 &lt;path d="M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3"&gt;&lt;/path&gt;
 &lt;line x1="8" y1="12" x2="16" y2="12"&gt;&lt;/line&gt;
 &lt;/svg&gt;&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;The &lt;code&gt;java.util.Arrays&lt;/code&gt; class is a utility class designed to make common array operations &amp;ndash; traversal, copying, sorting &amp;ndash; simple and convenient.&lt;/p&gt;</description></item></channel></rss>