what's the distinction between process.stdin and process.stdout vs. http request and response?

I'm learning Node.js and often enough in the tutorial exercises the assignment is to take some kind of input through process.stdin , modify or filter it and pass it on to process.stdout, meanwhile as a clue there is example code that uses http.createServer( function(req, res) { req.pipe( function of some sort... res.end(), and other times it can be something like this process.stdin.pipe( function "something perhaps involving the through module"...).pipe(process.stdout) .

The difference is that the former (processor.stdin/out) is writing a command line program. The latter (http.createServer) is creating a tiny web-server, where "input" (the page request) and "output" (the resulting pages) will basically be managed by the browser via HTTP. Tutorials which do not demonstrate anything web-specific may use the command line because it is simpler.