<commit_before># Streams in NodeJS

## ToDo
* need to interweave demos / live coding
    * Streams in 0.6/0.8 -> demo old unzip
    * Streams in 0.9/0.10 -> demo new unzip
* Visuals for back-pressure

## Outline
* What is an I/O bound problem?
* Why Streams?
    * Code example of buffering data w/o Streams?
    * Show how _using_ Streams is _easy_
    * Compare to unix pipes 
* Streaming problems (Show evolution in node for each concept?)
    * Define types of Streams here?
    * Dive into buffering and back-pressure
* Evolution of the NodeJS Stream abstraction
* Problems with Streams Today
* Streams Tomorrow, Today
    * Changes to stream.Readable & stream.Writable
    * Duplex, Transform, PassThrough
    * UntilStream
* Streams in Rails?
* Conclusion
* References
<commit_msg>Update outline<commit_after># Streams in NodeJS

## Outline
* What is an I/O bound problem?
    * Code example of buffering data w/o Streams
    * Is there a good abstraction for the on 'data' pattern?
* Streams with util.pump
    * Code example
    * Issues
* Streams with .pipe()
    * Show how _using_ Streams is _easy_
        * Define types of Streams here?
    * Compare to unix pipes
    * Simple demo using core streams?
* Problems with Streams today
    * Demo old unzip
    * Explore buffering, back-pressure, and spew streams
* Streams Tomorrow, Today
    * Changes to stream.Readable & stream.Writable
    * Duplex, Transform, PassThrough
    * Demo unzip with readable-stream / v0.9
    * UntilStream
        * Live code using new unshift() method??
* Streams in Rails?
* Conclusion
* References
{'fraction_non_alphanumeric': 0.07268170426065163, 'fraction_numerical': 0.006892230576441102, 'mean_word_length': 3.148051948051948, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 5, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1136541', 'n_tokens_mistral': 511, 'n_tokens_neox': 473, 'n_words': 195}