Learn Programming, AI and Engineering
In-depth tutorials and teaching materials across programming languages, web development, machine learning, algorithms, robotics and hardware — free and open to everyone.
Browse Categories
Programming Languages
Tutorials on Python, C, C++, Java, JavaScript, TypeScript, Go, R and Haskell — from beginner syntax to advanced techniques.
Web Development
HTML5, React, Angular, Next.js, Vite and modern frontend development guides and projects.
Backend Development
Server-side development with Node.js, NestJS, Spring Boot, Python backends, sockets, Nginx and payment integration.
Algorithms & Data Structures
Sorting, trees, hashing, graph algorithms, KMP, LeetCode practice and algorithm analysis teaching materials.
AI & Machine Learning
Machine learning, retrieval-augmented generation (RAG), AI applications and web crawling tutorials.
Databases
SQL and NoSQL database design, queries, optimization and practical exercises.
Computer Science Fundamentals
Computer organization, operating systems, Linux fundamentals and core computer science theory.
Hardware & Embedded Systems
Arduino, RISC-V, MSP430, PLC, Linux drivers and embedded systems engineering.
Robotics & Autonomous Systems
ROS 2, humanoid robots, drones and autonomous vehicle systems.
Networking & DevOps
Computer networking, TCP/IP, CI/CD pipelines and DevOps practice.
Mobile Development
Android and iOS app development tutorials.
Quantitative Finance & Blockchain
Quantitative finance, trading systems and blockchain technology.
Projects & Case Studies
Real-world projects: payment gateway microservices, full-stack apps, Django backends, RAG systems and more.
Latest Articles
Ch02:變數與資料型別
學會宣告與初始化變數,理解四種初始化形式的差異 認識 C++ 的基本資料型別(整數、浮點數、字元、布林) 理解固定寬度整數型別(<cstdint)與何時該用它們 搞懂 signed / unsigned 的差別與常見陷阱 了解浮點數的 IEEE 754 表示法,以及為什麼 0.1 + 0.2 = 0.3 掌握型別轉換規則(整數提升、一般算術轉換)與四種 cast 認識位元運算子(&、、^、~、<<、) 區分 const 與 conste
Read article →Ch06 — 指標與參考(Pointers & References)
指標和參考是 C++ 最重要也最容易混淆的概念之一。理解它們是掌握動態記憶體管理、多型、資料結構的基礎。 建議授課時數:2 小時(含 10 分鐘休息)
Read article →問題是什麼
3-SAT 布林可滿足性Boolean Satisfiability --- Backtracking DPLL 史上第一個被證明 NP-Complete 的問題:給一堆「三選一」的條件,找出讓全部條件成立的真假指派
Read article →問題是什麼
0/1 背包問題0/1 Knapsack --- Dynamic Programming Branch-and-Bound 容量有限、每件物品拿或不拿:NP-Hard 卻有偽多項式解法的代表作
Read article →問題是什麼
Subset Sum 與 Partition ,pdfauthor=Algorithms Teaching Series
Read article →問題是什麼
N 皇后問題N-Queens --- The Gateway to Backtracking 回溯法的「Hello World」:學會在死路上及早回頭,一輩子受用
Read article →問題是什麼
圖著色問題Graph Coloring --- Backtracking Greedy Heuristics 相鄰的點不能同色,最少要幾種顏色?從排課到暫存器分配都是它
Read article →問題是什麼
頂點覆蓋問題Vertex Cover --- Exact FPT Branching 2-Approximation 用最少的守衛看住所有走廊:FPT 分支與「保證不超過兩倍」的近似法的最佳教室
Read article →問題是什麼
Independent Set 與 Clique ,pdfauthor=Algorithms Teaching Series
Read article →