From MOSFETs to the CPU

How can these simple components be connected to store data, perform calculations, and execute a program? A MOSFET, or metal-oxide-semiconductor field-effect transistor, is a fundamental building block of modern digital electronics. It acts like an electrically controlled switch: a voltage applied to its gate controls whether current can flow between its source and drain terminals. … Continue reading From MOSFETs to the CPU

From Assembly to Machine Code to Electrical Signals

A computer program looks very abstract when we write it in C, Python, or another high-level language. But underneath the abstraction, the CPU eventually has to execute a sequence of bits. Consider this simple operation: movl $42, -4(%rbp) In plain English, this means: Take the number 42 and store it at the memory address obtained … Continue reading From Assembly to Machine Code to Electrical Signals

Copilot Studio or Claude Desktop? the Difference is Harness

I recently looked into Microsoft Copilot Studio because Microsoft now supports connecting external MCP servers to it. My first impression was that Copilot Studio is very different from Claude Code, and I think the difference is mainly in the harness. Claude Code is essentially a professional agent workbench. The LLM is surrounded by a strong … Continue reading Copilot Studio or Claude Desktop? the Difference is Harness

From HTTPS to SSO: How RSA, SHA-256, JWT, OAuth, and TLS Fit Together

There are lot of terms like RSA, SHA-256, JWT, OAuth, OpenID Connect, SSO, TLS, and HTTPS. At first they seemed like a collection of unrelated technologies. In fact, they sit at different layers and solve different problems. The easiest way to understand them is to start with the cryptographic building blocks. RSA is a public/private-key … Continue reading From HTTPS to SSO: How RSA, SHA-256, JWT, OAuth, and TLS Fit Together

How Machines and Computers Communicate

Machines and computers use different communication protocols because they have different communication requirements. CAN, Modbus, EtherCAT, IP, TCP, UDP, HTTP, and TLS are examples of protocols that operate at different levels and solve different problems. CAN (Controller Area Network) is designed for multiple electronic controllers to communicate over a shared bus. It is widely used … Continue reading How Machines and Computers Communicate

PLC: From Relay Wiring to Programmable Logic

Before PLCs, industrial machines were controlled largely by physical relays. A relay is essentially an electrically controlled switch. Engineers could connect hundreds or thousands of relays, buttons, sensors, and motors to build the machine's control logic. The problem was that the wiring itself became the program. If the machine's behavior needed to change, engineers had … Continue reading PLC: From Relay Wiring to Programmable Logic