Notes on software and the ideas behind it

Find the meaning
behind the code.

I’m Fred Yang. I write about software—how it works, why it behaves the way it does, and the ideas that make code easier to reason about.

Open the notebook

Working notes / 2026

Recently mapped

Architecture, reactivity, and the hidden relationships that shape frontend systems.

javascript

ajax header

Most of the javascript library add a header, when it use ajax to make a http quest. x-requested-with: XMLHttpRequest
Follow the thread
Lamda Expression

Expression, Expression Tree, Lamda, Lamda expression, IQueryable

Expression trees in .net 3.5 provide an abstract way of representing code as a tree of objects, these objects are expressions. As it said, Expression tree is a tree of expressions, and expression tree...
Follow the thread
asp.net mvc

Namespace and Controller in asp.net mvc

In .net a type has a namespace, if two type names are the same, but they live in different namespace, this is not a problem. So when asp.net resolve the type with the controller...
Follow the thread
asp.net mvc

Test Example in System.Web.Mvc

Because the mvc project and test project are seperate, we need the test project to see the internal member in System.Web.Mvc project, so there is a attribute in the mvc project. [assembly: InternalsVisibleTo("System.Web.Mvc.Test")]
Follow the thread
asp.net mvc

Custom T4 host for asp.net mvc

T4 template can be hosted by different environment. By default template is not HostSpecific. When you want to reuse a template to generate different file, you can customize the generation process by providing a...
Follow the thread