Internet And Text
The Internet
Smart Network (circuit switching)
Dumb Network (packet switching)
Our L'il Internet
RULE 1 - Pass this note to the person in the back
RULE 2 - If you can't, then pass it to someone
who is closer to them than you are.
Our L'il Internet
C D B (1/4)
Our L'il Internet
A E E (2/4)
Our L'il Internet
F A E (3/4)
Our L'il Internet
E D F (4/4)
What was sent?
A huge number
(technically, this is DEFINITELY a right answer)
What was sent?
Hex: CDBAEEFAEEDF =
226,202,757,033,695
What was sent?
MAC Address?
Perhaps a computer was identifying itself.
CD:BA:EE:FA:EE:DF
What was sent?
Perhaps, a lovely color scheme...
What was sent?
Music?
What was sent?
Something else?
110011011011101011101110111110101110111011011111
What was sent?
Wait - maybe encrypted?
(badly)
Tricky...
C A F E D E A D B E E F
Obviously, a restaurant recommendation. (Or not.)
Cafe Dead Beef
So, we have...
DIGITIZATION (literally, turning any "data" into a number)
+
PACKET SWITCHING (peer to peer node based network)
ARPANET
Why didn't the American Telegraph and Telephone company invent the Internet?
(somewhat controversial) thoughts on invention
The public sector (schools, defense, NASA, government) etc. is as inventive and as innovative as private companies...
..eh, probably more.
(the internet, GPS, touchscreens, digital photography, water filters, invisible braces etc.)
Diversity of layers (OSI)
Application (HTTP, telnet, etc)
Presentation (framework MIME)
Session (pipe,SOCKS)
Transport (reliable packet delivery, TCP)
Network (nodes and address, IP)
Data (PPP)
Physical (wires, radio, USB)
Diversity of transmission media:
- telephone lines (modem/DSL)
- tv cable
- wireless (802.11)
- satellites
- radio
- lasers (pointless, but true)
- fiber
Diversity of protocols
- telnet
- gopher
- usenet
- email
- irc
- html/www
Which is "primitive?"
THIS v.
Which is "primitive?"
Why Command Line?
Because you can very quickly say/relate complex concepts in a concise way, by combining a series of simple symbols.
Why Command Line?
Because you can very quickly say/relate complex concepts in a concise way, by combining a series of simple symbols.
You know, like talking. Or writing.
Why Command Line?
Command line is the act of literally talking to the computer....unlike...
What's so bad about the mouse again?
"Caveman interface."
Pre-linguistic/animal-like
"Point and grunt"
(Tablets and even "Minority Report" are cool and fun...but why is Charades a game?)
http://jrm4.com/slides/html_files/10000000000001D40000011E490CA832E614C738.jpg
It's so easy, even...
On Intelligence
Buttons and gestures are frequently convenient for repetitive tasks...
...but to do anything intelligent,
you need LANGUAGE.
TEXT. Numbers and Letters.
Why, e.g. Linux?
1) Free and open
2) Language/Text Based
(These two are completely related; newer stuff tries to allow for more of 2 and/or 1; e.g. Mac OS X, Android)
The Unix Way
Write programs that do one thing and do it well.
Write programs to work together.
Write programs to handle text streams, because that is a universal interface.
Controversial idea:
The mouse is the worst thing to ever happen to computers.
Most real work = communication = text.
- Tablets (and mouses) arguably didn't do much for productivity...
- Siri, et al, on the other hand...
LEVELS of complexity
(all computer languages are for humans!)
Changing your screensaver
Writer/Word
Calc/Excel
HTML/CSS
Bash
PHP/MYSQL/Javascript
Python/Perl/Ruby interpreted/scripted
C compiled
Assembly (00 4E A3 77 8C 0A etc)
Machine (00101010011010101100)
One way to divide ALL FILES
(open it in a text program like gedit or leafpad or notepad. Can you kind of read any of it?)
NOTE: Remember, frequently you can convert one to the other, e.g. ZIPs
TEXT, .e.g.
Text
HTML
XML
.ini
BINARY, e.g.
Executables (bin, exe)
ZIP
ISO
jpg
MP3
MP4
More on "Text"
- The "lingua franca" of computers - you dig deep enough, this is where you get.
- formerly ASCII, now mostly "Unicode" (EMOJI!!)
- Most often "monospaced" (ugly, but with advantages)
- Where (sane) languages live
More on "Text"
Ideally - this is the best place to pick up / play with programming concepts...
...too bad we sort of won't. :)
PROGRAMMING AND HOW TO SOUND SMART
Nearly any (real) language CAN do what any other real language CAN do...
If you want to sound smart say:
Turing Machine or Turing Complete
and
Lambda Calculus
PROGRAMMING AND HOW TO SOUND SMART
Nearly any (real) language CAN do what any other real language CAN do...
PROGRAMMING AND HOW TO SOUND SMART
Nearly any (real) language CAN do what any other real language CAN do...
HTML
...but I'm not a language*
HTML
HyperText Markup Language
Technically, just a way to decorate text, and not designed to "compute"
(I want to say it *can't* perform calculations...
..and I bet I'm wrong because some crazy person probably did it.)
...and later, obviously, a framework for much much more....
HTML and XML
Technically a subset of XML, one of many "data structures."
<metadata isthiscool=yes > THE REAL DATA </metadata>
HTML
Interesting alternatives to HTML: (on either side of "complexity")
Markdown
LaTeX
Backlinks: LIS5362-Slides