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.
Mathematics & Statistics
Probability, statistics, game theory and the mathematics behind machine learning, with worked examples.
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.
English Language
English grammar from the basics to advanced usage, with answer keys and vocabulary volumes.
Latest Articles
Chapter 2: Algorithm Analysis — Comprehensive Teaching Materials
Source: Data Structures and Algorithm Analysis in C++, 4th Edition, Mark Allen Weiss
Read article →SQL Learning Course - Complete Summary
This comprehensive SQL learning course teaches relational database concepts using MySQL and Python SQLAlchemy, progressing from beginner to advanced levels.
Read article →Relational Database Learning Course
This comprehensive course teaches relational database concepts using MySQL and Python SQLAlchemy. Students will learn SQL from beginner to advanced levels, with practical examples and hands-on exercises.
Read article →Lesson 2: Creating Databases and Tables
Create a database and tables for a library management system with the following entities
Read article →Lesson 10: Aggregation Functions
By the end of this lesson, you will be able to: Use basic aggregation functions (COUNT, SUM, AVG, MIN, MAX) Group data using GROUP BY clauses Filter grouped data with HAVING Understand the difference between WHERE and HA
Read article →Lesson 13 Supplement: Stored Procedures Practice (Loops, Management, Worked Examples)
This file is the hands-on companion to Lesson 13: Stored Procedures and Functions. Lesson 13 explains the concepts; this supplement adds loop constructs, procedure management commands, longer worked examples and practice
Read article →Lesson 11: Subqueries
By the end of this lesson, you will be able to: Explain what a subquery is and where one can appear (SELECT list, FROM, WHERE, HAVING) Write scalar, row, column and table subqueries Choose between IN, EXISTS, ANY/SOME an
Read article →Lesson 13: Stored Procedures and Functions
By the end of this lesson, you will be able to: Create and execute stored procedures Define user-defined functions Use parameters in procedures and functions Handle errors and exceptions Understand security implications
Read article →Lesson 18: Window Functions, CTEs and Transactions
By the end of this lesson, you will be able to: Use OVER (PARTITION BY … ORDER BY …) to compute rankings, running totals, moving averages and row-to-row differences without collapsing rows Choose between ROW_NUMBER, RANK
Read article →