Program Composition: Slides ready
I say ready, but I am going in the wrong direction with time. Something is going to have to give, either with the next section or these existing ones. I want time for interactive demonstrations.master
parent
dc82dc74f9
commit
3d8d8a594e
45
slides.org
45
slides.org
|
@ -117,7 +117,7 @@
|
|||
- [ ] =vim=
|
||||
- [ ] =screen=
|
||||
|
||||
* LACKING Slides [3/6]
|
||||
* LACKING Slides [4/6]
|
||||
:PROPERTIES:
|
||||
:ID: slides
|
||||
:END:
|
||||
|
@ -125,7 +125,7 @@
|
|||
#+BEGIN: columnview :hlines 2 :maxlevel 3 :indent t :id slides
|
||||
| ITEM | DURATION | TODO | ENVIRONMENT |
|
||||
|-------------------------------------------------------+----------+----------+-------------|
|
||||
| Slides | 0:40:53 | LACKING | |
|
||||
| Slides | 0:40:59 | LACKING | |
|
||||
|-------------------------------------------------------+----------+----------+-------------|
|
||||
| \_ Summary | | | |
|
||||
|-------------------------------------------------------+----------+----------+-------------|
|
||||
|
@ -163,15 +163,15 @@
|
|||
| \_ Pipelines | 0:00:15 | READY | fullframe |
|
||||
| \_ Summary of the Unix Philosophy | 0:00:40 | READY | fullframe |
|
||||
|-------------------------------------------------------+----------+----------+-------------|
|
||||
| \_ Program Composition | 0:09:10 | REVIEWED | |
|
||||
| \_ Program Composition | 0:09:15 | READY | |
|
||||
| \_ Composition Topics | | | |
|
||||
| \_ LP Sessions | 0:02:30 | REVIEWED | fullframe |
|
||||
| \_ Interactive, Incremental, Iterative Development | 0:01:10 | REVIEWED | fullframe |
|
||||
| \_ Discovering URLs | 0:02:15 | REVIEWED | fullframe |
|
||||
| \_ Go Grab a Coffee | 0:00:15 | REVIEWED | fullframe |
|
||||
| \_ Async Processes | 0:00:45 | REVIEWED | fullframe |
|
||||
| \_ Executable Shell Script and Concurrency | 0:01:30 | REVIEWED | fullframe |
|
||||
| \_ Execution Time | 0:00:45 | REVIEWED | frame |
|
||||
| \_ LP Sessions | 0:02:30 | READY | fullframe |
|
||||
| \_ Interactive, Incremental, Iterative Development | 0:01:10 | READY | fullframe |
|
||||
| \_ Discovering URLs | 0:02:15 | READY | fullframe |
|
||||
| \_ Go Grab a Coffee | 0:00:15 | READY | fullframe |
|
||||
| \_ Async Processes | 0:00:45 | READY | fullframe |
|
||||
| \_ Executable Shell Script and Concurrency | 0:01:30 | READY | fullframe |
|
||||
| \_ Execution Time | 0:00:50 | READY | frame |
|
||||
|-------------------------------------------------------+----------+----------+-------------|
|
||||
| \_ More Examples | 0:09:52 | REVIEWED | |
|
||||
| \_ More Example Topics | | | |
|
||||
|
@ -1588,7 +1588,7 @@ We start to think of how to decompose problems into small operations that
|
|||
We think of how to chain small, specialized programs together,
|
||||
transforming text at each step to make it more suitable for the next.
|
||||
|
||||
** REVIEWED Program Composition [0/7]
|
||||
** READY Program Composition [7/7]
|
||||
*** Composition Topics [6/6] :noexport:
|
||||
- [X] Clarify how pipelines work with existing =wget | grep=.
|
||||
- [X] More involved pipeline with more than two programs.
|
||||
|
@ -1609,7 +1609,7 @@ We think of how to chain small, specialized programs together,
|
|||
- [X] Extract =url-grep= into script.
|
||||
- [X] Demonstrate running jobs in parallel with =xargs=.
|
||||
|
||||
*** REVIEWED LP Sessions :B_fullframe:
|
||||
*** READY LP Sessions :B_fullframe:
|
||||
:PROPERTIES:
|
||||
:BEAMER_env: fullframe
|
||||
:END:
|
||||
|
@ -1817,7 +1817,7 @@ Your computer will speak the top five talks by presenter count to you.
|
|||
Listening to computers speak is all the rage right now,
|
||||
right?
|
||||
|
||||
*** REVIEWED Interactive, Incremental, Iterative Development :B_fullframe:
|
||||
*** READY Interactive, Incremental, Iterative Development :B_fullframe:
|
||||
:PROPERTIES:
|
||||
:BEAMER_env: fullframe
|
||||
:END:
|
||||
|
@ -1866,7 +1866,7 @@ If something doesn't work,
|
|||
And because we're working with text as data,
|
||||
a human can replace any part of this process!
|
||||
|
||||
*** REVIEWED Discovering URLs :B_fullframe:
|
||||
*** READY Discovering URLs :B_fullframe:
|
||||
:PROPERTIES:
|
||||
:BEAMER_env: fullframe
|
||||
:END:
|
||||
|
@ -2011,7 +2011,7 @@ Now that we have a means of creating the list of results,
|
|||
Why not pull them right out of the email with =grep=?
|
||||
|
||||
Let's say you saved the email in =email-of-links.txt=.
|
||||
This simple regex should grab most URLs for both HTTP and HTTPS protocols,
|
||||
This simple regex should grab most URLs,
|
||||
but it's far from perfect.
|
||||
For example,
|
||||
it'd grab punctuation at the end of a sentence.
|
||||
|
@ -2066,7 +2066,7 @@ We can do that too by reading =results.txt= in place of standard input to
|
|||
|
||||
Phew!
|
||||
|
||||
*** REVIEWED Go Grab a Coffee :B_fullframe:
|
||||
*** READY Go Grab a Coffee :B_fullframe:
|
||||
:PROPERTIES:
|
||||
:BEAMER_env: fullframe
|
||||
:END:
|
||||
|
@ -2089,7 +2089,7 @@ The Internet is fast nowadays;
|
|||
ideally, we wouldn't have to wait long.
|
||||
Can we do better?
|
||||
|
||||
*** REVIEWED Async Processes :B_fullframe:
|
||||
*** READY Async Processes :B_fullframe:
|
||||
:PROPERTIES:
|
||||
:BEAMER_env: fullframe
|
||||
:END:
|
||||
|
@ -2142,7 +2142,7 @@ But what if we have 1000?
|
|||
That isn't efficient,
|
||||
and it's a bit rude to server administrators.
|
||||
|
||||
*** REVIEWED Executable Shell Script and Concurrency :B_fullframe:
|
||||
*** READY Executable Shell Script and Concurrency :B_fullframe:
|
||||
:PROPERTIES:
|
||||
:BEAMER_env: fullframe
|
||||
:END:
|
||||
|
@ -2244,7 +2244,7 @@ Here we specify =5=,
|
|||
meaning =xargs= will run five processes at a time.
|
||||
You can change that to whatever number makes sense for you.
|
||||
|
||||
*** REVIEWED Execution Time :B_frame:
|
||||
*** READY Execution Time :B_frame:
|
||||
:PROPERTIES:
|
||||
:BEAMER_env: frame
|
||||
:END:
|
||||
|
@ -2262,7 +2262,7 @@ sys 0m4.877s
|
|||
**** Notes :B_noteNH:
|
||||
:PROPERTIES:
|
||||
:BEAMER_env: noteNH
|
||||
:DURATION: 00:00:45
|
||||
:DURATION: 00:00:50
|
||||
:END:
|
||||
|
||||
So how long does it take to run?
|
||||
|
@ -2282,8 +2282,11 @@ If you were to write this from scratch knowing what you know now,
|
|||
You don't need to be a programmer to know how to do this;
|
||||
you just need to be familiar with the tools and know what's possible,
|
||||
which comes with a little bit of practice.
|
||||
It can certainly be daunting at first.
|
||||
But I hope that by walking you through these examples and showing you how to
|
||||
construct them step-by-step,
|
||||
it helps to demystify them and show that there is no wizardry involved.
|
||||
|
||||
This is certainly an efficient means of communicating with the machine.
|
||||
We've come a long way from using the web browser and a mouse.
|
||||
|
||||
Now that we've finally completed our research task,
|
||||
|
|
Loading…
Reference in New Issue