From f61026119df4700f69eb73e95620bc5928ca0fcb Mon Sep 17 00:00:00 2001 From: User Date: Tue, 13 Oct 2009 02:52:09 +0000 Subject: Grand rename for gitit transfer --- Ethernet | 148 ---------------------------------- Ethernet.page | 148 ++++++++++++++++++++++++++++++++++ Git Wiki | 57 ------------- Git Wiki.page | 57 +++++++++++++ MIT Courses | 84 -------------------- MIT Courses.page | 84 ++++++++++++++++++++ Test of Features | 62 --------------- Test of Features.page | 62 +++++++++++++++ books/Genealogy of Morality | 59 -------------- books/Genealogy of Morality.page | 59 ++++++++++++++ books/Gravity's Rainbow | 114 -------------------------- books/Gravity's Rainbow.page | 114 ++++++++++++++++++++++++++ books/Little Schemer | 108 ------------------------- books/Little Schemer.page | 108 +++++++++++++++++++++++++ books/Seasoned Schemer | 139 -------------------------------- books/Seasoned Schemer.page | 139 ++++++++++++++++++++++++++++++++ books/wanted books | 53 ------------- books/wanted books.page | 53 +++++++++++++ film/French Classics | 59 -------------- film/French Classics.page | 59 ++++++++++++++ film/Good Movies | 78 ------------------ film/Good Movies.page | 78 ++++++++++++++++++ film/To Watch | 6 -- film/To Watch.page | 6 ++ math/algebra | 79 ------------------ math/algebra.page | 79 ++++++++++++++++++ math/integers | 5 -- math/integers.page | 5 ++ math/logic | 18 ----- math/logic.page | 18 +++++ math/numbers | 54 ------------- math/numbers.page | 54 +++++++++++++ math/sets | 47 ----------- math/sets.page | 47 +++++++++++ math/tensors | 74 ----------------- math/tensors.page | 74 +++++++++++++++++ math/topology | 81 ------------------- math/topology.page | 81 +++++++++++++++++++ physics/LIGO | 48 ----------- physics/LIGO.page | 48 +++++++++++ physics/general relativity | 18 ----- physics/general relativity.page | 18 +++++ physics/gravitational waves | 111 -------------------------- physics/gravitational waves.page | 111 ++++++++++++++++++++++++++ physics/quantum/fermigas | 51 ------------ physics/quantum/fermigas.page | 51 ++++++++++++ physics/special relativity | 56 ------------- physics/special relativity.page | 56 +++++++++++++ physics/units | 53 ------------- physics/units.page | 53 +++++++++++++ reStructured Text | 19 ----- reStructured Text.page | 19 +++++ sheets/rst | 127 ----------------------------- sheets/rst.page | 127 +++++++++++++++++++++++++++++ software/MOSS | 98 ----------------------- software/MOSS.page | 98 +++++++++++++++++++++++ software/bash | 6 -- software/bash.page | 6 ++ software/debian | 40 ---------- software/debian.page | 40 ++++++++++ software/firefox-tricks | 16 ---- software/firefox-tricks.page | 16 ++++ software/freebsd-packages | 63 --------------- software/freebsd-packages.page | 63 +++++++++++++++ software/freebsd-tricks | 24 ------ software/freebsd-tricks.page | 24 ++++++ software/functional programming | 52 ------------ software/functional programming.page | 52 ++++++++++++ software/gimp | 19 ----- software/gimp.page | 19 +++++ software/git | 7 -- software/git.page | 7 ++ software/grub-boot | 17 ---- software/grub-boot.page | 17 ++++ software/matlab | 39 --------- software/matlab.page | 39 +++++++++ software/pynsfs | 150 ----------------------------------- software/pynsfs.page | 150 +++++++++++++++++++++++++++++++++++ software/ruby | 67 ---------------- software/ruby.page | 67 ++++++++++++++++ software/sagemath | 23 ------ software/sagemath.page | 23 ++++++ software/scheme | 85 -------------------- software/scheme.page | 85 ++++++++++++++++++++ software/server-setup | 51 ------------ software/server-setup.page | 51 ++++++++++++ software/unix-tricks | 13 --- software/unix-tricks.page | 13 +++ software/vim | 38 --------- software/vim.page | 38 +++++++++ tmp/Newcomb paradox | 65 --------------- tmp/Newcomb paradox.page | 65 +++++++++++++++ tmp/SCUBA | 83 ------------------- tmp/SCUBA.page | 83 +++++++++++++++++++ tmp/Saccade | 7 -- tmp/Saccade.page | 7 ++ tmp/Teaching CS | 97 ---------------------- tmp/Teaching CS.page | 97 ++++++++++++++++++++++ tmp/Topics of Curiosity | 50 ------------ tmp/Topics of Curiosity.page | 50 ++++++++++++ tmp/artists | 9 --- tmp/artists.page | 9 +++ tmp/sql | 8 -- tmp/sql.page | 8 ++ 104 files changed, 2935 insertions(+), 2935 deletions(-) delete mode 100644 Ethernet create mode 100644 Ethernet.page delete mode 100644 Git Wiki create mode 100644 Git Wiki.page delete mode 100644 MIT Courses create mode 100644 MIT Courses.page delete mode 100644 Test of Features create mode 100644 Test of Features.page delete mode 100644 books/Genealogy of Morality create mode 100644 books/Genealogy of Morality.page delete mode 100644 books/Gravity's Rainbow create mode 100644 books/Gravity's Rainbow.page delete mode 100644 books/Little Schemer create mode 100644 books/Little Schemer.page delete mode 100644 books/Seasoned Schemer create mode 100644 books/Seasoned Schemer.page delete mode 100644 books/wanted books create mode 100644 books/wanted books.page delete mode 100644 film/French Classics create mode 100644 film/French Classics.page delete mode 100644 film/Good Movies create mode 100644 film/Good Movies.page delete mode 100644 film/To Watch create mode 100644 film/To Watch.page delete mode 100644 math/algebra create mode 100644 math/algebra.page delete mode 100644 math/integers create mode 100644 math/integers.page delete mode 100644 math/logic create mode 100644 math/logic.page delete mode 100644 math/numbers create mode 100644 math/numbers.page delete mode 100644 math/sets create mode 100644 math/sets.page delete mode 100644 math/tensors create mode 100644 math/tensors.page delete mode 100644 math/topology create mode 100644 math/topology.page delete mode 100644 physics/LIGO create mode 100644 physics/LIGO.page delete mode 100644 physics/general relativity create mode 100644 physics/general relativity.page delete mode 100644 physics/gravitational waves create mode 100644 physics/gravitational waves.page delete mode 100644 physics/quantum/fermigas create mode 100644 physics/quantum/fermigas.page delete mode 100644 physics/special relativity create mode 100644 physics/special relativity.page delete mode 100644 physics/units create mode 100644 physics/units.page delete mode 100644 reStructured Text create mode 100644 reStructured Text.page delete mode 100644 sheets/rst create mode 100644 sheets/rst.page delete mode 100644 software/MOSS create mode 100644 software/MOSS.page delete mode 100644 software/bash create mode 100644 software/bash.page delete mode 100644 software/debian create mode 100644 software/debian.page delete mode 100644 software/firefox-tricks create mode 100644 software/firefox-tricks.page delete mode 100644 software/freebsd-packages create mode 100644 software/freebsd-packages.page delete mode 100644 software/freebsd-tricks create mode 100644 software/freebsd-tricks.page delete mode 100644 software/functional programming create mode 100644 software/functional programming.page delete mode 100644 software/gimp create mode 100644 software/gimp.page delete mode 100644 software/git create mode 100644 software/git.page delete mode 100644 software/grub-boot create mode 100644 software/grub-boot.page delete mode 100644 software/matlab create mode 100644 software/matlab.page delete mode 100644 software/pynsfs create mode 100644 software/pynsfs.page delete mode 100644 software/ruby create mode 100644 software/ruby.page delete mode 100644 software/sagemath create mode 100644 software/sagemath.page delete mode 100644 software/scheme create mode 100644 software/scheme.page delete mode 100644 software/server-setup create mode 100644 software/server-setup.page delete mode 100644 software/unix-tricks create mode 100644 software/unix-tricks.page delete mode 100644 software/vim create mode 100644 software/vim.page delete mode 100644 tmp/Newcomb paradox create mode 100644 tmp/Newcomb paradox.page delete mode 100644 tmp/SCUBA create mode 100644 tmp/SCUBA.page delete mode 100644 tmp/Saccade create mode 100644 tmp/Saccade.page delete mode 100644 tmp/Teaching CS create mode 100644 tmp/Teaching CS.page delete mode 100644 tmp/Topics of Curiosity create mode 100644 tmp/Topics of Curiosity.page delete mode 100644 tmp/artists create mode 100644 tmp/artists.page delete mode 100644 tmp/sql create mode 100644 tmp/sql.page diff --git a/Ethernet b/Ethernet deleted file mode 100644 index 6240871..0000000 --- a/Ethernet +++ /dev/null @@ -1,148 +0,0 @@ -======== -Ethernet -======== -:Author: Bryan Newbold - -.. contents:: - -History -======= -Bob Metcalfe first described the ethernet system in a memo while working at the -Xerox Palo Alto Research Center in 1973 ([oreilly]_). It was based on the -earlier *Aloha* system developed by Norman Abramson at the University of -Hawaii. *Aloha* was a radio network for inter-island communications. - -Structure -========= - -Data Frames -~~~~~~~~~~~ -The frame format is the same for ethernet systems of any speed. - -==================== =========== -Section Size (bits) -==================== =========== -Preamble 64 -Destination Address 48 -Source Address 48 -Type Length 16 -Data 46 to 1500 -Checksum 32 -==================== =========== - -.. topic:: Preamble - - The preamble originally served as a "warm up" period for hardware to - stabilize and prepare for the rest of the frame. - - The last 8 bits are the preamble are a particular "start frame delimiter" - pattern to help hardware notice the beginning of signal transmission. - -.. topic:: Source and Destination addresses - - Manufacturers are given a 24 bit id (first half), and are expected to - ensure the uniqueness of the second half of each device's address. - - If the first bit of the destination is high (1), the destination is - multicast; if low (0), then unicast. Under IEEE, if the second bit is high, - global administration rules should be followed, and if low, local - administration rules should be followed. - - The IEEE-SA (Standards Association) delegates addresses. - -.. topic:: Checksum - - The checksum (or Frame Check Sequence) is a Cyclic Redundancy Checksum. - -Inter-Frame Gap -~~~~~~~~~~~~~~~~~ -The Inter-Frame Gap (IFG) is a pause in between signal frames; it is 96 -bit-times long. - -.. _collision: - -Collisions -============= -Collision management is the heart of Ethernet; a collision occurs when two -devices try to transmit at the same time and their signals overlap and the -transmission is unreadable. This problem is made worse the further apart -stations are because it takes longer for signal fronts to propagate, so there -is a longer overlap period when the first device has started transmitting but -the second hasn't noticed and may start transmitting on its own. The network -size (in distance, not nodes) is determined by the maximum collision period -(also called slot time). This period is 512 bit-times, so usually the faster a -network is, the smaller it should be (in distance); at gigabit speeds the -slot is expanded, see Speeds_. - -Under Ethernet, if any device detects a collision, it sends out a 32 bit -"collision enforcement jam signal" to ensure that all devices notice the -collision. Then each device that wishes to transmit waits a random amount of -bit-times r before transmitting again. If there is another collision, a new -r is randomly chosen with a larger maximum; up to 15 retries are allowed before -the devices will give up and drop the frame. The constraints for the random -backoff time r are `$0\leq r \leq 2^k$`:latex:, where r is in bit times and -k is the number of retry attempts up to 10 (for 11th to 15th retries, use -k=10). - -Speeds -========= -At 10mb, bit time is 100ns (nano-seconds); at 100mb, 10ns; at 1gb, 1ns. - -At gigabit speeds, the slot time would limit network size to 20 meters, so -it gets padded with a null "carrier extension" signal to 4096 bits (512 bytes). -On high speed half-duplex gigabit links (which are rare!), frame bursting is -a technique to allow several small data frames to be transmitted at the same -time: one frame is sent regularly to capture the channel, then up to 65536 -bit times of short non-carrier extended (only IFG) frames are sent, then -a single last regular frame is sent. - -Phrases -========= - -Auto-negotiation - Optional protocol for direct links (eg, from switch to switch) to - determine network speed. Can be reinitiated by dropping and restarting - the link. - -802.1 - IEEE working group for higher level networking. - -802.2 - IEEE working group for "logical link control" (LLC), which is related - to the type/length frame field. - -802.3 - For _`CSMA/CD` LANs - -802.5 - For Token Ring LANs - -CSMA/CD Protocol - Stands for Carrier Sense Multiple Access/Collision Detect. The two main - implementations are DIX (DEC-Intel-Xerox) and IEEE. (Can't remember how - this works...) - -VLAN - Optional 4-byte field in between "source" and "type" fields. The first - two bytes are a valid type field; this increases the max length to - 1522 bits. Only used by switches. - -Channel Capture - This phenomena is a result of _collision management. After a few - sequential collisions, the device that ultimately transmits first gets - its backoff reset to zero, while all other devices retain a high backoff; - this means the first device is much much more likely to retransmit again - faster than any of the others, and if it has a lot of frames to send it - will dominate the carrier until it is done transmitting. - -Jabber - When a broken station/device keeps a carrier open and prevents other - transmissions. - -PAUSE - A PAUSE frame is a MAC control (higher level, type 0x8808) frame which - causes switches to stop for up to 65536 slot times to allow a switch or - station to clear its buffers. - -.. [oreilly] `Ethernet: The Definitive Guide`:title:, by Charles Spurgeon. - O'Reilly, 2000 diff --git a/Ethernet.page b/Ethernet.page new file mode 100644 index 0000000..6240871 --- /dev/null +++ b/Ethernet.page @@ -0,0 +1,148 @@ +======== +Ethernet +======== +:Author: Bryan Newbold + +.. contents:: + +History +======= +Bob Metcalfe first described the ethernet system in a memo while working at the +Xerox Palo Alto Research Center in 1973 ([oreilly]_). It was based on the +earlier *Aloha* system developed by Norman Abramson at the University of +Hawaii. *Aloha* was a radio network for inter-island communications. + +Structure +========= + +Data Frames +~~~~~~~~~~~ +The frame format is the same for ethernet systems of any speed. + +==================== =========== +Section Size (bits) +==================== =========== +Preamble 64 +Destination Address 48 +Source Address 48 +Type Length 16 +Data 46 to 1500 +Checksum 32 +==================== =========== + +.. topic:: Preamble + + The preamble originally served as a "warm up" period for hardware to + stabilize and prepare for the rest of the frame. + + The last 8 bits are the preamble are a particular "start frame delimiter" + pattern to help hardware notice the beginning of signal transmission. + +.. topic:: Source and Destination addresses + + Manufacturers are given a 24 bit id (first half), and are expected to + ensure the uniqueness of the second half of each device's address. + + If the first bit of the destination is high (1), the destination is + multicast; if low (0), then unicast. Under IEEE, if the second bit is high, + global administration rules should be followed, and if low, local + administration rules should be followed. + + The IEEE-SA (Standards Association) delegates addresses. + +.. topic:: Checksum + + The checksum (or Frame Check Sequence) is a Cyclic Redundancy Checksum. + +Inter-Frame Gap +~~~~~~~~~~~~~~~~~ +The Inter-Frame Gap (IFG) is a pause in between signal frames; it is 96 +bit-times long. + +.. _collision: + +Collisions +============= +Collision management is the heart of Ethernet; a collision occurs when two +devices try to transmit at the same time and their signals overlap and the +transmission is unreadable. This problem is made worse the further apart +stations are because it takes longer for signal fronts to propagate, so there +is a longer overlap period when the first device has started transmitting but +the second hasn't noticed and may start transmitting on its own. The network +size (in distance, not nodes) is determined by the maximum collision period +(also called slot time). This period is 512 bit-times, so usually the faster a +network is, the smaller it should be (in distance); at gigabit speeds the +slot is expanded, see Speeds_. + +Under Ethernet, if any device detects a collision, it sends out a 32 bit +"collision enforcement jam signal" to ensure that all devices notice the +collision. Then each device that wishes to transmit waits a random amount of +bit-times r before transmitting again. If there is another collision, a new +r is randomly chosen with a larger maximum; up to 15 retries are allowed before +the devices will give up and drop the frame. The constraints for the random +backoff time r are `$0\leq r \leq 2^k$`:latex:, where r is in bit times and +k is the number of retry attempts up to 10 (for 11th to 15th retries, use +k=10). + +Speeds +========= +At 10mb, bit time is 100ns (nano-seconds); at 100mb, 10ns; at 1gb, 1ns. + +At gigabit speeds, the slot time would limit network size to 20 meters, so +it gets padded with a null "carrier extension" signal to 4096 bits (512 bytes). +On high speed half-duplex gigabit links (which are rare!), frame bursting is +a technique to allow several small data frames to be transmitted at the same +time: one frame is sent regularly to capture the channel, then up to 65536 +bit times of short non-carrier extended (only IFG) frames are sent, then +a single last regular frame is sent. + +Phrases +========= + +Auto-negotiation + Optional protocol for direct links (eg, from switch to switch) to + determine network speed. Can be reinitiated by dropping and restarting + the link. + +802.1 + IEEE working group for higher level networking. + +802.2 + IEEE working group for "logical link control" (LLC), which is related + to the type/length frame field. + +802.3 + For _`CSMA/CD` LANs + +802.5 + For Token Ring LANs + +CSMA/CD Protocol + Stands for Carrier Sense Multiple Access/Collision Detect. The two main + implementations are DIX (DEC-Intel-Xerox) and IEEE. (Can't remember how + this works...) + +VLAN + Optional 4-byte field in between "source" and "type" fields. The first + two bytes are a valid type field; this increases the max length to + 1522 bits. Only used by switches. + +Channel Capture + This phenomena is a result of _collision management. After a few + sequential collisions, the device that ultimately transmits first gets + its backoff reset to zero, while all other devices retain a high backoff; + this means the first device is much much more likely to retransmit again + faster than any of the others, and if it has a lot of frames to send it + will dominate the carrier until it is done transmitting. + +Jabber + When a broken station/device keeps a carrier open and prevents other + transmissions. + +PAUSE + A PAUSE frame is a MAC control (higher level, type 0x8808) frame which + causes switches to stop for up to 65536 slot times to allow a switch or + station to clear its buffers. + +.. [oreilly] `Ethernet: The Definitive Guide`:title:, by Charles Spurgeon. + O'Reilly, 2000 diff --git a/Git Wiki b/Git Wiki deleted file mode 100644 index 2c33c55..0000000 --- a/Git Wiki +++ /dev/null @@ -1,57 +0,0 @@ -======== -Git Wiki -======== - -`Git Wiki`__ is what you're doing right now! It is a django__ app which -stores a hierarchy of articles/items in a git__ repository; each item -is formated in `reStructured Text`__, which can be reinterpreted into -XHTML or LateX (and thus a pdf document). - -__ /k/gitwiki/ -__ http://djangoproject.com/ -__ http://git.cx -__ /k/restructuredtext/ - -Features -~~~~~~~~ -Full File History - Because all files are stored in a repository all changes are tracked - and can be reverted. It could be interesting to watch the evolution - of a larger or controversial item. -PDF Output - Using a combination of `LaTeX`__ and rubber [#]_, portable document - files can be generated on the fly (with figures etc included) -LaTeX Math in (X)HTML - When rendering to (X)HTML LaTeX math sections are rendered to png - and inserted as images - -__ /k/latex/ -.. [#] A python wrapper around LaTeX and pdflatex which does a great job - handling bibliographies, weird image formats, etc. - -Dependencies -~~~~~~~~~~~~ -''(hey, everybody's got 'em)'' - -Pygments_ - A python library for highlighting and/or typesetting source code. Used to - format diffs (aka, history of items) - -.. _Pygments: http://pygments.org/ - -Development -~~~~~~~~~~~ -Git Wiki is under heavy development. The source tree can be browsed at `/code/bn-project `__. - -To Do ------ -* implement per-section commentary -* possibly implement aafigure ascii->svg plugin for docutils -* possibly implement auto linking for CamelCase text (probably not) -* implement grouping many articles into single pdf/book automagicly -* possibly implement web-based editing/item creation - -Similar Projects -~~~~~~~~~~~~~~~~ -* http://spu.tnik.org/ - diff --git a/Git Wiki.page b/Git Wiki.page new file mode 100644 index 0000000..2c33c55 --- /dev/null +++ b/Git Wiki.page @@ -0,0 +1,57 @@ +======== +Git Wiki +======== + +`Git Wiki`__ is what you're doing right now! It is a django__ app which +stores a hierarchy of articles/items in a git__ repository; each item +is formated in `reStructured Text`__, which can be reinterpreted into +XHTML or LateX (and thus a pdf document). + +__ /k/gitwiki/ +__ http://djangoproject.com/ +__ http://git.cx +__ /k/restructuredtext/ + +Features +~~~~~~~~ +Full File History + Because all files are stored in a repository all changes are tracked + and can be reverted. It could be interesting to watch the evolution + of a larger or controversial item. +PDF Output + Using a combination of `LaTeX`__ and rubber [#]_, portable document + files can be generated on the fly (with figures etc included) +LaTeX Math in (X)HTML + When rendering to (X)HTML LaTeX math sections are rendered to png + and inserted as images + +__ /k/latex/ +.. [#] A python wrapper around LaTeX and pdflatex which does a great job + handling bibliographies, weird image formats, etc. + +Dependencies +~~~~~~~~~~~~ +''(hey, everybody's got 'em)'' + +Pygments_ + A python library for highlighting and/or typesetting source code. Used to + format diffs (aka, history of items) + +.. _Pygments: http://pygments.org/ + +Development +~~~~~~~~~~~ +Git Wiki is under heavy development. The source tree can be browsed at `/code/bn-project `__. + +To Do +----- +* implement per-section commentary +* possibly implement aafigure ascii->svg plugin for docutils +* possibly implement auto linking for CamelCase text (probably not) +* implement grouping many articles into single pdf/book automagicly +* possibly implement web-based editing/item creation + +Similar Projects +~~~~~~~~~~~~~~~~ +* http://spu.tnik.org/ + diff --git a/MIT Courses b/MIT Courses deleted file mode 100644 index 4c70d7f..0000000 --- a/MIT Courses +++ /dev/null @@ -1,84 +0,0 @@ -==================== -Courses taken at MIT -==================== - -These are the courses I've taken and plan to take. I should -graduate in the spring of 2009 with a degree in Physics and a -humanities concentration in philosophy. - -* Fall 2004 - + **8.012** - Physics I: Mechanics - + **18.022** - Mulivariable Calc - + **12.000** - Mission 2008: Galapagos - + **3.091** - Intro to Solid State Chem - + **21H.601** - Islam, Middle East, and the West - -* IAP 2005 - + EMT Training - -* Spring 2005 - + **1.016** - Terrascope: Galapagos - + **7.013** - Biology - + **8.022** - Physics II: Electricity and Magnetism - + **24.02** - What is the Best Way to Live? - -* Fall 2005 - + **18.03** - Differential Equations - + **8.03** - Waves and Vibrations - + **8.033** - Relativity - + **17.31** - Science, Technology, and Public Policy - -* IAP 2006 - + **6.186** - Maslab (robotics competition) - -* Spring 2006 - + **8.04** - Quantum Mechanics I (failed) - + **8.044** - Statistical Mechanics (did poorly) - + **4.366** - Advanced Video - + **12.409** - Hands-on Astronomy - -* Fall 2006 - + **8.13** - Experimental Physics I - + **8.04** - Quantum I (failed) - + **8.351** - Computational Mechanics - -* Spring 2008 - + **8.04** - Quantum Mechanics I (last time!) - + **8.14** - Experimental Physics II - + **21F.052** - French Film Classics - + **18.100b** - Analysis I - -* Fall 2008 - + **8.05** - Quantum Mechanics II - + **24.118** - Paradox and Infinity - + **24.209** - Philosophy in Film - + **6.111** - Digital Systems Lab (FPGA Design) - -* Spring 2009 (planned) - + 8.06 - Quantum Mechanics III - + 6.945 - Adventures in Symbolic Programming - + 4.602 - Modern Art and Mass Culture - -Other interesting courses: - + 24.215 - Topics in the Philosophy of Science (fall) - + 21L.011 - The Film Experience (hass-d) - + 24.900 - Introduction to Linguistics (hass-d) - + 6.046J - Design and Analysis of Algorithms (requirements) - + 18.335J - Introduction to Numerical Methods (grad, summer) - + 18.125 - Real and Functional Analysis - + 18.101 - Analysis II - + 18.385j - Nonlinear Dynamics and Chaos - + 18.404j - Theory of Computation - + 18.565 - Recursion Theory - + 18.703 - Modern Algebra (spring) - + 18.701/702 - Algebra I/II (fall/spring) - + 18.901 - Topology - + 18.950 - Differential Geometry - + 8.261J - Introduction to Computational Neuroscience (fall) - + 8.292J - Fluid Physics (spring) - + 8.371J - Quantum Information Science (grad, spring) - + 8.594J - Introduction to Neural Networks (grad, fall) - + 8.284 - Modern Astrophysics (spring) - + 8.942 - Cosmology (grad, fall) - + 8.962 - General Relativity (grad, spring) - diff --git a/MIT Courses.page b/MIT Courses.page new file mode 100644 index 0000000..4c70d7f --- /dev/null +++ b/MIT Courses.page @@ -0,0 +1,84 @@ +==================== +Courses taken at MIT +==================== + +These are the courses I've taken and plan to take. I should +graduate in the spring of 2009 with a degree in Physics and a +humanities concentration in philosophy. + +* Fall 2004 + + **8.012** - Physics I: Mechanics + + **18.022** - Mulivariable Calc + + **12.000** - Mission 2008: Galapagos + + **3.091** - Intro to Solid State Chem + + **21H.601** - Islam, Middle East, and the West + +* IAP 2005 + + EMT Training + +* Spring 2005 + + **1.016** - Terrascope: Galapagos + + **7.013** - Biology + + **8.022** - Physics II: Electricity and Magnetism + + **24.02** - What is the Best Way to Live? + +* Fall 2005 + + **18.03** - Differential Equations + + **8.03** - Waves and Vibrations + + **8.033** - Relativity + + **17.31** - Science, Technology, and Public Policy + +* IAP 2006 + + **6.186** - Maslab (robotics competition) + +* Spring 2006 + + **8.04** - Quantum Mechanics I (failed) + + **8.044** - Statistical Mechanics (did poorly) + + **4.366** - Advanced Video + + **12.409** - Hands-on Astronomy + +* Fall 2006 + + **8.13** - Experimental Physics I + + **8.04** - Quantum I (failed) + + **8.351** - Computational Mechanics + +* Spring 2008 + + **8.04** - Quantum Mechanics I (last time!) + + **8.14** - Experimental Physics II + + **21F.052** - French Film Classics + + **18.100b** - Analysis I + +* Fall 2008 + + **8.05** - Quantum Mechanics II + + **24.118** - Paradox and Infinity + + **24.209** - Philosophy in Film + + **6.111** - Digital Systems Lab (FPGA Design) + +* Spring 2009 (planned) + + 8.06 - Quantum Mechanics III + + 6.945 - Adventures in Symbolic Programming + + 4.602 - Modern Art and Mass Culture + +Other interesting courses: + + 24.215 - Topics in the Philosophy of Science (fall) + + 21L.011 - The Film Experience (hass-d) + + 24.900 - Introduction to Linguistics (hass-d) + + 6.046J - Design and Analysis of Algorithms (requirements) + + 18.335J - Introduction to Numerical Methods (grad, summer) + + 18.125 - Real and Functional Analysis + + 18.101 - Analysis II + + 18.385j - Nonlinear Dynamics and Chaos + + 18.404j - Theory of Computation + + 18.565 - Recursion Theory + + 18.703 - Modern Algebra (spring) + + 18.701/702 - Algebra I/II (fall/spring) + + 18.901 - Topology + + 18.950 - Differential Geometry + + 8.261J - Introduction to Computational Neuroscience (fall) + + 8.292J - Fluid Physics (spring) + + 8.371J - Quantum Information Science (grad, spring) + + 8.594J - Introduction to Neural Networks (grad, fall) + + 8.284 - Modern Astrophysics (spring) + + 8.942 - Cosmology (grad, fall) + + 8.962 - General Relativity (grad, spring) + diff --git a/Test of Features b/Test of Features deleted file mode 100644 index 81c1662..0000000 --- a/Test of Features +++ /dev/null @@ -1,62 +0,0 @@ -========================= -Test of Git Wiki Features -========================= - -:Author: Bryan Newbold - -This document is intended to demonstrate some of the features present in -this wiki, or to make their failure obvious. - -.. image:: fig/bryanJello.jpg - :alt: bryan with jello - :width: 300 - -.. rubric:: LaTeX-Math - -this paragraph should contain a link_, an $\epsilon$ of inline math, and should be -followed by a full-on equation. - -.. _link: http://epsilon.org - -here is the equation: - -$$E = m c^2$$ - -this is in a comment:: - - .. |epsilon| raw:: latex - $\epsilon$ - .. raw:: latex - $$E = m c^2$$ - -another attempt at inline (:latex:`$\epsilon$`) followed by a full-on equation. - -:latex:`$$E = m c^2$$` - -and as a directive: - -.. latex:: - - $$-1 = e^{i\pi}$$ - -.. sidebar:: A Digression - - There can be stuff over here! - -What do tables look like? They're a little messed up in LaTeX for now. - -======== ================ ============== -A Number A Number Squared A Number Cubed -======== ================ ============== -1 1 1 -2 4 8 -3 9 27 -4 16 64 -5 25 125 -======== ================ ============== - -.. warning:: - - The end is neigh! - -That's all? diff --git a/Test of Features.page b/Test of Features.page new file mode 100644 index 0000000..81c1662 --- /dev/null +++ b/Test of Features.page @@ -0,0 +1,62 @@ +========================= +Test of Git Wiki Features +========================= + +:Author: Bryan Newbold + +This document is intended to demonstrate some of the features present in +this wiki, or to make their failure obvious. + +.. image:: fig/bryanJello.jpg + :alt: bryan with jello + :width: 300 + +.. rubric:: LaTeX-Math + +this paragraph should contain a link_, an $\epsilon$ of inline math, and should be +followed by a full-on equation. + +.. _link: http://epsilon.org + +here is the equation: + +$$E = m c^2$$ + +this is in a comment:: + + .. |epsilon| raw:: latex + $\epsilon$ + .. raw:: latex + $$E = m c^2$$ + +another attempt at inline (:latex:`$\epsilon$`) followed by a full-on equation. + +:latex:`$$E = m c^2$$` + +and as a directive: + +.. latex:: + + $$-1 = e^{i\pi}$$ + +.. sidebar:: A Digression + + There can be stuff over here! + +What do tables look like? They're a little messed up in LaTeX for now. + +======== ================ ============== +A Number A Number Squared A Number Cubed +======== ================ ============== +1 1 1 +2 4 8 +3 9 27 +4 16 64 +5 25 125 +======== ================ ============== + +.. warning:: + + The end is neigh! + +That's all? diff --git a/books/Genealogy of Morality b/books/Genealogy of Morality deleted file mode 100644 index 65f0357..0000000 --- a/books/Genealogy of Morality +++ /dev/null @@ -1,59 +0,0 @@ -============================ -On the Genealogy of Morality -============================ - -:by: Friedrich Nietzsche -:Translators: M. Clark and A. Swenson - -My impressions immediately after reading ----------------------------------------- -Overall, very angry and sporadic. Very libertarian. Has a distaste for the common man, especially the old or diseased. Doesn't stress youth (?) but that is exactly what he idolizes: passion without meaning or thought. Could be the translation? He writes strongly but acts as if he is not always emotionally attached. - -Section II, 23 -~~~~~~~~~~~~~~ -Notes that the Greeks would shift blame and **guilt** to the gods (page 65, lines 13-16), compared to Christ taking **punishment** but leaving guilt to the mortals. Similar to the secular blame on hereditary effects (affect!), genetics, fate, science?, misunderstanding. What does a guilt-free society look like? - ------------------- - -At an earlier point (Section I, 10) he talks about the most mighty society having no need for punishment, as the community simply absorbs the crime. Maybe for a brief empire, but it seems foolish in the long run... He notes banishment as original punishment, which is no longer viable. - -Section II, 18 -~~~~~~~~~~~~~~ - -| Nietzsche: "the will to power" -| Goethe: "instinct for freedom" - -Nietzsche says it's the same thing - -Nietzsche talks about the perversity of turning one's animal passion on one's self... it's tempting to say he is hawkish and trying at instigate war or violence, but technically he is only pointing out his opinion: despite colorful language a plan of action is left to the reader - if any action. This duplicitous language seems to be his big schtick: "what buttons can I push without touching them?" - -Section III, 5 -~~~~~~~~~~~~~~ -Nietzsche praises Wagner as a musician/oracle who pulls beauty out of thin air, echoing his earlier appreciation of "only that without history is definable" (paraphrase). - - - "... a kind of mouthpiece of the 'in itself' of things, a telephone of the beyond." - -Section III, 6 -~~~~~~~~~~~~~~ -Nietzsche compares interpretations of beauty. - -| Kant: "The beautiful is what pleases without interest" - -Nietzsche prefers Stendhal: "une promese de bonheur", or "a promise of happiness". - -Nietzsche cites statues of nude women as being interesting - -Section III, 18 -~~~~~~~~~~~~~~~ -Nietzsche calls the will to power "the strongest, most life-affirming drive, even if in the most cautious of doses" (page 98, line 1). Nietzsche claims that Christianity cam into being via "herd-formation" among the weak based on attempts to combat depression, such as "associations for mutual support, pauper-, invalid-, burial associations...". - -Section III, 28 -~~~~~~~~~~~~~~~ -Nietzsche closes with: "man would much rather will *nothingness* than *not* will!" - -Section I -~~~~~~~~~ -.. admonition:: TODO - - paraphrase section I on the origins of good/evil, good/bad diff --git a/books/Genealogy of Morality.page b/books/Genealogy of Morality.page new file mode 100644 index 0000000..65f0357 --- /dev/null +++ b/books/Genealogy of Morality.page @@ -0,0 +1,59 @@ +============================ +On the Genealogy of Morality +============================ + +:by: Friedrich Nietzsche +:Translators: M. Clark and A. Swenson + +My impressions immediately after reading +---------------------------------------- +Overall, very angry and sporadic. Very libertarian. Has a distaste for the common man, especially the old or diseased. Doesn't stress youth (?) but that is exactly what he idolizes: passion without meaning or thought. Could be the translation? He writes strongly but acts as if he is not always emotionally attached. + +Section II, 23 +~~~~~~~~~~~~~~ +Notes that the Greeks would shift blame and **guilt** to the gods (page 65, lines 13-16), compared to Christ taking **punishment** but leaving guilt to the mortals. Similar to the secular blame on hereditary effects (affect!), genetics, fate, science?, misunderstanding. What does a guilt-free society look like? + +------------------ + +At an earlier point (Section I, 10) he talks about the most mighty society having no need for punishment, as the community simply absorbs the crime. Maybe for a brief empire, but it seems foolish in the long run... He notes banishment as original punishment, which is no longer viable. + +Section II, 18 +~~~~~~~~~~~~~~ + +| Nietzsche: "the will to power" +| Goethe: "instinct for freedom" + +Nietzsche says it's the same thing + +Nietzsche talks about the perversity of turning one's animal passion on one's self... it's tempting to say he is hawkish and trying at instigate war or violence, but technically he is only pointing out his opinion: despite colorful language a plan of action is left to the reader - if any action. This duplicitous language seems to be his big schtick: "what buttons can I push without touching them?" + +Section III, 5 +~~~~~~~~~~~~~~ +Nietzsche praises Wagner as a musician/oracle who pulls beauty out of thin air, echoing his earlier appreciation of "only that without history is definable" (paraphrase). + + + "... a kind of mouthpiece of the 'in itself' of things, a telephone of the beyond." + +Section III, 6 +~~~~~~~~~~~~~~ +Nietzsche compares interpretations of beauty. + +| Kant: "The beautiful is what pleases without interest" + +Nietzsche prefers Stendhal: "une promese de bonheur", or "a promise of happiness". + +Nietzsche cites statues of nude women as being interesting + +Section III, 18 +~~~~~~~~~~~~~~~ +Nietzsche calls the will to power "the strongest, most life-affirming drive, even if in the most cautious of doses" (page 98, line 1). Nietzsche claims that Christianity cam into being via "herd-formation" among the weak based on attempts to combat depression, such as "associations for mutual support, pauper-, invalid-, burial associations...". + +Section III, 28 +~~~~~~~~~~~~~~~ +Nietzsche closes with: "man would much rather will *nothingness* than *not* will!" + +Section I +~~~~~~~~~ +.. admonition:: TODO + + paraphrase section I on the origins of good/evil, good/bad diff --git a/books/Gravity's Rainbow b/books/Gravity's Rainbow deleted file mode 100644 index 3dcddac..0000000 --- a/books/Gravity's Rainbow +++ /dev/null @@ -1,114 +0,0 @@ -================= -Gravity's Rainbow -================= - -:by: Thomas Pynchon - -Excellent German Words ----------------------- -These are some of my favorites from http://www.hyperarts.com/pynchon/gravity/extra/german.html - - -Weltschmerz - world-weariness -Leunahalluziationen - gasoline hallucination -Schweinheldfest - pig-hero festival -Purpurstoff - purple substance -Folgsamkeitfaktor - obedience factor -Versuchsanstalt - research institute, experimental station -Urstoff - primordial stuff -Kadavergehorsamkeit - corpse-like obedience, i.e., slavish obedience -Hinterhof - back-courtyard -Bohnenkaffee - pure coffee - -Rocket Limericks ----------------- -*(These are interspersed on pages 305-335)* - -| There once was a thing called a V-2 -| To pilot which you did not need to- -| You just pushed a button, -| And it would leave nuttin' -| But stiffs and big holes and debris, too. -| -| -| Ja, ja, ja, ja! -| In Prussia they never eat pussy! -| There ain't hardly cats enough, -| There's garbage and that's enough, -| So waltz me around again, Russky! -| -| There was a young fellow named Crockett, -| Who had an affair with a rocket. -| If you saw them out there -| You'd be tempted to stare, -| But if you ain't tried it, don't knock it! -| -| There was a young fellow named Hector, -| Who was fond of a launcher-erector. -| But the squishes and pops -| Of acute pressure drops -| Wrecked Hector's hydraulic connector. -| -| There once was a fellow named Moorehead, -| Who had an affair with a warhead. -| His wife moved away -| The very next day- -| She *was* always kind of a sorehead. -| -| There was a technician named Urban, -| Who had an affair with a turbine. -| "It's much nicer," he said, -| "Than a woman in bed, -| And it's sure as hell cheaper than bourbon!" -| -| There once was a fellow named Slattery -| Who was fond of the course-gyro battery. -| With that 50-volt shock, -| What was left of his cock -| Was all slimy and sloppy and spattery. -| -| There was a young fellow named Pope, -| Who plugged into an *os*-cillo-*scope*. -| The cyclical trace -| Of their carnal embrace -| Had a damn nearly infinite slope. -| -| There was a young fellow named Yuri, -| Fucked the nozzle right up its venturi. -| He had woes without cease -| From his local police, -| And a hell of a time with the jury -| -| There was a young man named McGuire, -| Who was fond of the pitch amplifier. -| But a number of shorts -| Left him covered with warts, -| And set half the bedroom on fire. -| -| There once was a fellow named Ritter, -| Who slept with a guidance transmitter. -| It shriveled his cock, -| Which fell off in his sock, -| And made him exceedingly bitter. -| -| There once was a fellow named Schroeder, -| Who buggered the vane servomotor. -| He soon grew a prong -| On the end of his schlong, -| And hired himself a promoter. -| -| There was a young man from Decatur, -| Who slept with a LOX generator. -| His balls and his prick -| Froze solid read quick, -| And his asshole a little bit later. diff --git a/books/Gravity's Rainbow.page b/books/Gravity's Rainbow.page new file mode 100644 index 0000000..3dcddac --- /dev/null +++ b/books/Gravity's Rainbow.page @@ -0,0 +1,114 @@ +================= +Gravity's Rainbow +================= + +:by: Thomas Pynchon + +Excellent German Words +---------------------- +These are some of my favorites from http://www.hyperarts.com/pynchon/gravity/extra/german.html + + +Weltschmerz + world-weariness +Leunahalluziationen + gasoline hallucination +Schweinheldfest + pig-hero festival +Purpurstoff + purple substance +Folgsamkeitfaktor + obedience factor +Versuchsanstalt + research institute, experimental station +Urstoff + primordial stuff +Kadavergehorsamkeit + corpse-like obedience, i.e., slavish obedience +Hinterhof + back-courtyard +Bohnenkaffee + pure coffee + +Rocket Limericks +---------------- +*(These are interspersed on pages 305-335)* + +| There once was a thing called a V-2 +| To pilot which you did not need to- +| You just pushed a button, +| And it would leave nuttin' +| But stiffs and big holes and debris, too. +| +| +| Ja, ja, ja, ja! +| In Prussia they never eat pussy! +| There ain't hardly cats enough, +| There's garbage and that's enough, +| So waltz me around again, Russky! +| +| There was a young fellow named Crockett, +| Who had an affair with a rocket. +| If you saw them out there +| You'd be tempted to stare, +| But if you ain't tried it, don't knock it! +| +| There was a young fellow named Hector, +| Who was fond of a launcher-erector. +| But the squishes and pops +| Of acute pressure drops +| Wrecked Hector's hydraulic connector. +| +| There once was a fellow named Moorehead, +| Who had an affair with a warhead. +| His wife moved away +| The very next day- +| She *was* always kind of a sorehead. +| +| There was a technician named Urban, +| Who had an affair with a turbine. +| "It's much nicer," he said, +| "Than a woman in bed, +| And it's sure as hell cheaper than bourbon!" +| +| There once was a fellow named Slattery +| Who was fond of the course-gyro battery. +| With that 50-volt shock, +| What was left of his cock +| Was all slimy and sloppy and spattery. +| +| There was a young fellow named Pope, +| Who plugged into an *os*-cillo-*scope*. +| The cyclical trace +| Of their carnal embrace +| Had a damn nearly infinite slope. +| +| There was a young fellow named Yuri, +| Fucked the nozzle right up its venturi. +| He had woes without cease +| From his local police, +| And a hell of a time with the jury +| +| There was a young man named McGuire, +| Who was fond of the pitch amplifier. +| But a number of shorts +| Left him covered with warts, +| And set half the bedroom on fire. +| +| There once was a fellow named Ritter, +| Who slept with a guidance transmitter. +| It shriveled his cock, +| Which fell off in his sock, +| And made him exceedingly bitter. +| +| There once was a fellow named Schroeder, +| Who buggered the vane servomotor. +| He soon grew a prong +| On the end of his schlong, +| And hired himself a promoter. +| +| There was a young man from Decatur, +| Who slept with a LOX generator. +| His balls and his prick +| Froze solid read quick, +| And his asshole a little bit later. diff --git a/books/Little Schemer b/books/Little Schemer deleted file mode 100644 index 394de5b..0000000 --- a/books/Little Schemer +++ /dev/null @@ -1,108 +0,0 @@ -============================ -The Little Schemer -============================ - -:by: Daniel Friedman and Matthias Felleisen -:Edition: Fourth (4rth) - -See also `Scheme `__. - -I read this book before starting on a scheme/physics project. I had programmed -in scheme previously as an algebra/analysis tool, but never really sat down -and got comfortable with the language. Working through all the examples -has made me *much* more comfortable with this style of programming. Despite -the humble tone and ambitions of the book I think I learned deeply. - -The first 7 chapters were very straight forward, the end of chapter 8 took -some more thought and I'm not sure how happy I am with the description of -collectors and continuations. - -For a better description of the Y-combinator, see these `course notes -`__. - -This book is followed by `The Seasoned Schemer `__ -and The Reasoned Schemer. - -Preface Definitions ------------------------- -This primitive function is required for most of the functions in the book:: - - (define atom? - (lambda (x) - (and (not (pair? x)) (not (null? x))))) - -Laws ------------------------ -Law of Car - The primitive *car* is defined only for non-empty lists. - -Law of Cdr - The primitive *cdr* is defined only for non-empty lists. The *cdr* of any - non-empty list is always another list. - -Law of Cons - The primitive *cons* takes two arguments. The second argument to *cons* - must be a list. The result is a list. - -Law of Null? - The primitive *null?* is defined only for lists. - -Law of Eq? - The primitive *eq?* takes two arguments. Each must be a non-numeric atom. - -Commandments ------------------------- - -The First Commandment - When recurring on a list of atoms, *lat*, ask two questions about it: - *(null? lat)* and **else**. When recurring on a number, *n*, ask two - questions about it: *(zero? n)* and **else**. - - When recurring on a list of S-expressions, *l*, ask three questions - about it: *(null? l)*, *(atom? (car l))*, and **else**. - -The Second Commandment - Use *cons* to build lists. - -The Third Commandment - When building a list, describe the first typical element, and then - *cons* it onto the natural recursion. - -The Fourth Commandment - Always change at least one argument while recurring. It must be changed to - be closer to termination. The changing argument must be tested in the - termination condition: - - when using *cdr*, test termination with *null?* and - - when using *sub1*, test termination with *zero?*. - -The Fifth Commandment - When building a value with +, always use 0 for the value of the terminating - line, for adding 0 does not change the value of an addition. - - When building a value with x, always use 1 for the value of the terminating - line, for multiplying by 1 does not change the value of a multiplication. - - When building a value with cons, always consider () for the value of the - terminating line. - -The Sixth Commandment - Simplify only after the function is correct. - - -The Seventh Commandment - Recur on the subpart that are of the same nature: - - * on the sublists of a list. - * on the subexpressions of an arithmetic expression. - -The Eighth Commandment - Use help functions to abstract from representations. - -The Ninth Commandment - Abstract common patterns with a new function. - -The Tenth Commandment - Build functions to collect more than one value at a time. - diff --git a/books/Little Schemer.page b/books/Little Schemer.page new file mode 100644 index 0000000..394de5b --- /dev/null +++ b/books/Little Schemer.page @@ -0,0 +1,108 @@ +============================ +The Little Schemer +============================ + +:by: Daniel Friedman and Matthias Felleisen +:Edition: Fourth (4rth) + +See also `Scheme `__. + +I read this book before starting on a scheme/physics project. I had programmed +in scheme previously as an algebra/analysis tool, but never really sat down +and got comfortable with the language. Working through all the examples +has made me *much* more comfortable with this style of programming. Despite +the humble tone and ambitions of the book I think I learned deeply. + +The first 7 chapters were very straight forward, the end of chapter 8 took +some more thought and I'm not sure how happy I am with the description of +collectors and continuations. + +For a better description of the Y-combinator, see these `course notes +`__. + +This book is followed by `The Seasoned Schemer `__ +and The Reasoned Schemer. + +Preface Definitions +------------------------ +This primitive function is required for most of the functions in the book:: + + (define atom? + (lambda (x) + (and (not (pair? x)) (not (null? x))))) + +Laws +----------------------- +Law of Car + The primitive *car* is defined only for non-empty lists. + +Law of Cdr + The primitive *cdr* is defined only for non-empty lists. The *cdr* of any + non-empty list is always another list. + +Law of Cons + The primitive *cons* takes two arguments. The second argument to *cons* + must be a list. The result is a list. + +Law of Null? + The primitive *null?* is defined only for lists. + +Law of Eq? + The primitive *eq?* takes two arguments. Each must be a non-numeric atom. + +Commandments +------------------------ + +The First Commandment + When recurring on a list of atoms, *lat*, ask two questions about it: + *(null? lat)* and **else**. When recurring on a number, *n*, ask two + questions about it: *(zero? n)* and **else**. + + When recurring on a list of S-expressions, *l*, ask three questions + about it: *(null? l)*, *(atom? (car l))*, and **else**. + +The Second Commandment + Use *cons* to build lists. + +The Third Commandment + When building a list, describe the first typical element, and then + *cons* it onto the natural recursion. + +The Fourth Commandment + Always change at least one argument while recurring. It must be changed to + be closer to termination. The changing argument must be tested in the + termination condition: + + when using *cdr*, test termination with *null?* and + + when using *sub1*, test termination with *zero?*. + +The Fifth Commandment + When building a value with +, always use 0 for the value of the terminating + line, for adding 0 does not change the value of an addition. + + When building a value with x, always use 1 for the value of the terminating + line, for multiplying by 1 does not change the value of a multiplication. + + When building a value with cons, always consider () for the value of the + terminating line. + +The Sixth Commandment + Simplify only after the function is correct. + + +The Seventh Commandment + Recur on the subpart that are of the same nature: + + * on the sublists of a list. + * on the subexpressions of an arithmetic expression. + +The Eighth Commandment + Use help functions to abstract from representations. + +The Ninth Commandment + Abstract common patterns with a new function. + +The Tenth Commandment + Build functions to collect more than one value at a time. + diff --git a/books/Seasoned Schemer b/books/Seasoned Schemer deleted file mode 100644 index 0bc6346..0000000 --- a/books/Seasoned Schemer +++ /dev/null @@ -1,139 +0,0 @@ -============================ -The Seasoned Schemer -============================ - -:by: Daniel Friedman and Matthias Felleisen -:Edition: First (1st) - -See also `Scheme `__. This book is a sequel -to `The Little Schemer`_; The Reasoned Schemer is a paralel exploration of -logical programming. - -One of the things I liked about learning a programming language this way, or -maybe just about scheme in general, is the seperation between the specification -and implementations. Usually when I start learning a new language I try to -break it as fast as possible and I am most interested in how certain little -tricky bits are handled (are the file handles cross platform? does it catch -infinite recursion? what kind of errors are thrown when? how big are the -primitives and simple objects/user defined data types?). These are the -imporant day to day issues and are a good basis for choosing a language to get -work done in, but it's kind of like searching for anti-aliasing in digital -photos or scanning the edges of a wall for painting mistakes. Sometimes the -big picture is the whole point and it's worth putting up with small flaws. - -.. _The Little Schemer: /k/books/littleschemer/ - -Issues/Omissions --------------------------- -The Y combinator function is never defined in this book, I had to copy it out of -`The Little Schemer`_; - - (define Y - (lambda (thing) - ((lambda (le) - ((lambda (f) (f f)) - (lambda (f) (le (lambda (x) ((f f) x)))))) - thing))) - -Also ``eqlist?``:: - - (define eqlist? - (lambda (a b) - (cond - ((and (null? a) (null? b)) #t) - ((or (null? a) (null? b)) #f) - ((and (atom? (car a)) (atom? (car b))) - (and (eqlist? (cdr a) (cdr b)))) - ((or (atom? (car a)) (atom? (car b))) #f) - (else (and (eqlist? (car a) (car b)) (eqlist? (cdr a) (cdr b))))))) - -MIT/GNU Scheme doesn't seem to have ``letcc`` or ``try``; I stuck with -``call-with-current-continuation``: - - (call-with-current-continuation (lambda (hook) ...) - ; is the same as - (letcc hook (...)) - - ; as noted in the book (p. 89) - (try x a b) - ; is the same as - (letcc success - (letcc x - (success a)) - b) - ; is the same as - (call-with-current-continuation - (lambda (success) - (begin - (call-with-current-continuation - (lambda (x) - (success a))) - b))) - -When reimplementing scheme at the end of the book, I'm kind of miffed that the -(letcc ...) definition basically just uses letcc, because magic North Pole -compasses seem like the most interesting part. - -Notes ------------------ -Y-bang is the "applicative-order imperative Y combinator":: - - (define Y-bang - (lambda (f) - (letrec - ((h (f (lambda (arg) (h arg))))) - h))) - -At one point I wondered:: - - Is there any language/interpreter which, when it runs into an undefined - value, lets you define it on the spot? Would be great for learners. - -MIT/GNU Scheme, of course, has this feature in the error REPL. But I never -noticed it. - -The Next 10 Commandments --------------------------- - -The Eleventh Commandment - Use additional arguments when a function needs to know what other - arguments to the function have been like so far. - -The Twelfth Commandment - Use (letrec ..) to remove arguments that do not change for - recursive applications. - -The Thirteenth Commandment - Use (letrec ...) to hide and protect functions. - -The Fifteenth Commandment - Use (let ...) to name the values of repeated expressions in a function - definition if they may be evaluated twice for one and same use of the - function. And use (let ...) to name the values of expressions (without - set!) that are re-evaluated every time a function is used. - -The Sixteenth Commandment - Use (set! ...) only with names define in (let ...)s - -The Seventeenth Commandment - Use (set! x ...) for (let ((x ..)) ..)) only if there is at least one - (lambda .. between it and the (let ..), or if the new value for x is a - function that refers to x. - -The Eighteenth Commandment - Use (set! x ...) only when the value that x refers to is no longer needed. - -The Nineteenth Commandment - Use (set! ...) to remember valuable things between two distinct uses of a - function. - -The Twentieth Commandment - When thinking about a value created with (letcc ...), write down the - function that is equivalent but does not forget. Then, when you use it, - remember to forget. - -**I love that last sentence!** - - - - diff --git a/books/Seasoned Schemer.page b/books/Seasoned Schemer.page new file mode 100644 index 0000000..0bc6346 --- /dev/null +++ b/books/Seasoned Schemer.page @@ -0,0 +1,139 @@ +============================ +The Seasoned Schemer +============================ + +:by: Daniel Friedman and Matthias Felleisen +:Edition: First (1st) + +See also `Scheme `__. This book is a sequel +to `The Little Schemer`_; The Reasoned Schemer is a paralel exploration of +logical programming. + +One of the things I liked about learning a programming language this way, or +maybe just about scheme in general, is the seperation between the specification +and implementations. Usually when I start learning a new language I try to +break it as fast as possible and I am most interested in how certain little +tricky bits are handled (are the file handles cross platform? does it catch +infinite recursion? what kind of errors are thrown when? how big are the +primitives and simple objects/user defined data types?). These are the +imporant day to day issues and are a good basis for choosing a language to get +work done in, but it's kind of like searching for anti-aliasing in digital +photos or scanning the edges of a wall for painting mistakes. Sometimes the +big picture is the whole point and it's worth putting up with small flaws. + +.. _The Little Schemer: /k/books/littleschemer/ + +Issues/Omissions +-------------------------- +The Y combinator function is never defined in this book, I had to copy it out of +`The Little Schemer`_; + + (define Y + (lambda (thing) + ((lambda (le) + ((lambda (f) (f f)) + (lambda (f) (le (lambda (x) ((f f) x)))))) + thing))) + +Also ``eqlist?``:: + + (define eqlist? + (lambda (a b) + (cond + ((and (null? a) (null? b)) #t) + ((or (null? a) (null? b)) #f) + ((and (atom? (car a)) (atom? (car b))) + (and (eqlist? (cdr a) (cdr b)))) + ((or (atom? (car a)) (atom? (car b))) #f) + (else (and (eqlist? (car a) (car b)) (eqlist? (cdr a) (cdr b))))))) + +MIT/GNU Scheme doesn't seem to have ``letcc`` or ``try``; I stuck with +``call-with-current-continuation``: + + (call-with-current-continuation (lambda (hook) ...) + ; is the same as + (letcc hook (...)) + + ; as noted in the book (p. 89) + (try x a b) + ; is the same as + (letcc success + (letcc x + (success a)) + b) + ; is the same as + (call-with-current-continuation + (lambda (success) + (begin + (call-with-current-continuation + (lambda (x) + (success a))) + b))) + +When reimplementing scheme at the end of the book, I'm kind of miffed that the +(letcc ...) definition basically just uses letcc, because magic North Pole +compasses seem like the most interesting part. + +Notes +----------------- +Y-bang is the "applicative-order imperative Y combinator":: + + (define Y-bang + (lambda (f) + (letrec + ((h (f (lambda (arg) (h arg))))) + h))) + +At one point I wondered:: + + Is there any language/interpreter which, when it runs into an undefined + value, lets you define it on the spot? Would be great for learners. + +MIT/GNU Scheme, of course, has this feature in the error REPL. But I never +noticed it. + +The Next 10 Commandments +-------------------------- + +The Eleventh Commandment + Use additional arguments when a function needs to know what other + arguments to the function have been like so far. + +The Twelfth Commandment + Use (letrec ..) to remove arguments that do not change for + recursive applications. + +The Thirteenth Commandment + Use (letrec ...) to hide and protect functions. + +The Fifteenth Commandment + Use (let ...) to name the values of repeated expressions in a function + definition if they may be evaluated twice for one and same use of the + function. And use (let ...) to name the values of expressions (without + set!) that are re-evaluated every time a function is used. + +The Sixteenth Commandment + Use (set! ...) only with names define in (let ...)s + +The Seventeenth Commandment + Use (set! x ...) for (let ((x ..)) ..)) only if there is at least one + (lambda .. between it and the (let ..), or if the new value for x is a + function that refers to x. + +The Eighteenth Commandment + Use (set! x ...) only when the value that x refers to is no longer needed. + +The Nineteenth Commandment + Use (set! ...) to remember valuable things between two distinct uses of a + function. + +The Twentieth Commandment + When thinking about a value created with (letcc ...), write down the + function that is equivalent but does not forget. Then, when you use it, + remember to forget. + +**I love that last sentence!** + + + + diff --git a/books/wanted books b/books/wanted books deleted file mode 100644 index 6c29a2e..0000000 --- a/books/wanted books +++ /dev/null @@ -1,53 +0,0 @@ -================================= -Wanted Books -================================= - -These are some books i'd love to own a copy of or at least read through -carefully. - -Technical ------------- - - * **Visual Complex Analysis** by Tristan Needham - * **Visualizing Data: Exploring and Explaining Data with the Processing Environment** by Ben Fry - * **General Theory of Relativity** by P. A.M. Dirac - * **Computability and Unsolvability** by Martin Davis - * **Mathematical Foundations of Quantum Mechanics** by John von Neumann - * **Real and Complex Analysis** by Walter Rudin - * **Art of Computer Programming** by Donald E. Knuth - * **Gravitation** by MTW - * **Euclid's Elements** - * **C Programming Language** by Brian W. Kernighan - * **Mathematical Physics** by Robert Geroch - -Math -~~~~~~~~~~~~~~ -(I haven't really looked in to most of these, just sound interesting) - - - * `On formally undecidable propositions of Principa Mathematica and related systems`:title:, by Kurt Godel. - * `Computability and Unsolvability`:title:, by Martin Davis. - * `Mathematical Foundations of Information Theory`:title:, by A.I. Khinchin. - * `Calculus of Variations with Applications to Physics and Engineering`:title:, by Robert Weinstock. - * `Relativity, Thermodynamics, and Cosmology`:title:, by Richard Tolman. - * `Mathematics Applied to Continuum Mechanics`:title:, by Lee Segel. - * `Optimization Theory and Applications`:title:, by Donald Pierre. - * `The Variational Principles of Mechanics`:title:, by Cornelius Lanczos. - * `Tensor Analysis for Physicists`:title:, by J.A. Schonten. - * `Investigations on the Theory of Brownian Movement`:title:, by Albert Einstein. - * `Great Experiments in Physics`:title:, ed. by ???. - * `Curvature and Homology`:title:, by Samuel Goldberd. - * `The Philosophy of Mathematics`:title:, by Stephan Korner. - * `The Various and Ingenious Machines of Agostino Ramelli`:title:, by A. Ramelli (!). - * `Experiments in Topology`:title:, by Stephan Barr. - -Novels ------------ - - * **Return From the Stars** by Stanislaw Lem - * **Mortal Engines** by Stanislaw Lem - -Other -------- - * **Pictures Showing What Happens on Each Page of Thomas Pynchon's Novel Gravity's Rainbow** by Zak Smith - diff --git a/books/wanted books.page b/books/wanted books.page new file mode 100644 index 0000000..6c29a2e --- /dev/null +++ b/books/wanted books.page @@ -0,0 +1,53 @@ +================================= +Wanted Books +================================= + +These are some books i'd love to own a copy of or at least read through +carefully. + +Technical +------------ + + * **Visual Complex Analysis** by Tristan Needham + * **Visualizing Data: Exploring and Explaining Data with the Processing Environment** by Ben Fry + * **General Theory of Relativity** by P. A.M. Dirac + * **Computability and Unsolvability** by Martin Davis + * **Mathematical Foundations of Quantum Mechanics** by John von Neumann + * **Real and Complex Analysis** by Walter Rudin + * **Art of Computer Programming** by Donald E. Knuth + * **Gravitation** by MTW + * **Euclid's Elements** + * **C Programming Language** by Brian W. Kernighan + * **Mathematical Physics** by Robert Geroch + +Math +~~~~~~~~~~~~~~ +(I haven't really looked in to most of these, just sound interesting) + + + * `On formally undecidable propositions of Principa Mathematica and related systems`:title:, by Kurt Godel. + * `Computability and Unsolvability`:title:, by Martin Davis. + * `Mathematical Foundations of Information Theory`:title:, by A.I. Khinchin. + * `Calculus of Variations with Applications to Physics and Engineering`:title:, by Robert Weinstock. + * `Relativity, Thermodynamics, and Cosmology`:title:, by Richard Tolman. + * `Mathematics Applied to Continuum Mechanics`:title:, by Lee Segel. + * `Optimization Theory and Applications`:title:, by Donald Pierre. + * `The Variational Principles of Mechanics`:title:, by Cornelius Lanczos. + * `Tensor Analysis for Physicists`:title:, by J.A. Schonten. + * `Investigations on the Theory of Brownian Movement`:title:, by Albert Einstein. + * `Great Experiments in Physics`:title:, ed. by ???. + * `Curvature and Homology`:title:, by Samuel Goldberd. + * `The Philosophy of Mathematics`:title:, by Stephan Korner. + * `The Various and Ingenious Machines of Agostino Ramelli`:title:, by A. Ramelli (!). + * `Experiments in Topology`:title:, by Stephan Barr. + +Novels +----------- + + * **Return From the Stars** by Stanislaw Lem + * **Mortal Engines** by Stanislaw Lem + +Other +------- + * **Pictures Showing What Happens on Each Page of Thomas Pynchon's Novel Gravity's Rainbow** by Zak Smith + diff --git a/film/French Classics b/film/French Classics deleted file mode 100644 index a2eecaa..0000000 --- a/film/French Classics +++ /dev/null @@ -1,59 +0,0 @@ -====================== -Classic French Films -====================== - -.. note:: started from the course 21f.053 by ed turk taught at MIT spring 2008 - -Pre and Post War ----------------- - -**Boudu sauve des eaux** ("Boudu saved from drowning") - | 1932, directed by Jean Renoir - | http://www.imdb.com/title/tt0022718/ - | http://en.wikipedia.org/wiki/Boudu_Saved_from_Drowning - -**L'Age d'or** ("The Golden Age") - | 1930, directed by Luis Bunuel - | http://www.imdb.com/title/tt0021577/ - | http://en.wikipedia.org/wiki/L'%C3%82ge_d'or - - Apparently you can see it free on youtube: - http://www.youtube.com/watch?v=lcasqBRzeeA - -**Le Jour se leve** ("Daybreak") - | 1939, directed by Marcel Carne - | http://www.imdb.com/title/tt0031514/ - | http://en.wikipedia.org/wiki/Le_Jour_se_l%C3%A8ve - -**Le Corbeau** ("The Raven") - | 1943, directed by Henri-Georges Clouzot - | http://www.imdb.com/title/tt0035753/ - | http://en.wikipedia.org/wiki/Le_Jour_se_l%C3%A8ve - -**La Belle et La Bete** ("Beauty and the Beast") - | 1946, directed by Jean Cocteau - | http://www.imdb.com/title/tt0038348/ - | http://en.wikipedia.org/wiki/Beauty_and_the_Beast_(1946_film) - -The New Wave --------------- - -**Cleo de 5 a 7** ("Cleo from 5 to 7") - | 1961, directed by Agnes Varda - | http://www.imdb.com/title/tt0055852/ - | http://en.wikipedia.org/wiki/Cl%C3%A9o_from_5_to_7 - -**Hiroshima mon Amour** - | 1959, directed by Alain Resnais - | http://www.imdb.com/title/tt0052893/ - | http://en.wikipedia.org/wiki/Hiroshima_Mon_Amour - -**Tirez sur le pianiste** ("Shoot the Piano Player") - | 1960, directed by Francois Truffaut - | http://www.imdb.com/title/tt0054389/ - | http://en.wikipedia.org/wiki/Shoot_the_Piano_Player - -**Pierrot le fou** - | 1965, directed by Jean-Luc Godard - | http://www.imdb.com/title/tt0059592/ - | http://en.wikipedia.org/wiki/Pierrot_le_fou diff --git a/film/French Classics.page b/film/French Classics.page new file mode 100644 index 0000000..a2eecaa --- /dev/null +++ b/film/French Classics.page @@ -0,0 +1,59 @@ +====================== +Classic French Films +====================== + +.. note:: started from the course 21f.053 by ed turk taught at MIT spring 2008 + +Pre and Post War +---------------- + +**Boudu sauve des eaux** ("Boudu saved from drowning") + | 1932, directed by Jean Renoir + | http://www.imdb.com/title/tt0022718/ + | http://en.wikipedia.org/wiki/Boudu_Saved_from_Drowning + +**L'Age d'or** ("The Golden Age") + | 1930, directed by Luis Bunuel + | http://www.imdb.com/title/tt0021577/ + | http://en.wikipedia.org/wiki/L'%C3%82ge_d'or + + Apparently you can see it free on youtube: + http://www.youtube.com/watch?v=lcasqBRzeeA + +**Le Jour se leve** ("Daybreak") + | 1939, directed by Marcel Carne + | http://www.imdb.com/title/tt0031514/ + | http://en.wikipedia.org/wiki/Le_Jour_se_l%C3%A8ve + +**Le Corbeau** ("The Raven") + | 1943, directed by Henri-Georges Clouzot + | http://www.imdb.com/title/tt0035753/ + | http://en.wikipedia.org/wiki/Le_Jour_se_l%C3%A8ve + +**La Belle et La Bete** ("Beauty and the Beast") + | 1946, directed by Jean Cocteau + | http://www.imdb.com/title/tt0038348/ + | http://en.wikipedia.org/wiki/Beauty_and_the_Beast_(1946_film) + +The New Wave +-------------- + +**Cleo de 5 a 7** ("Cleo from 5 to 7") + | 1961, directed by Agnes Varda + | http://www.imdb.com/title/tt0055852/ + | http://en.wikipedia.org/wiki/Cl%C3%A9o_from_5_to_7 + +**Hiroshima mon Amour** + | 1959, directed by Alain Resnais + | http://www.imdb.com/title/tt0052893/ + | http://en.wikipedia.org/wiki/Hiroshima_Mon_Amour + +**Tirez sur le pianiste** ("Shoot the Piano Player") + | 1960, directed by Francois Truffaut + | http://www.imdb.com/title/tt0054389/ + | http://en.wikipedia.org/wiki/Shoot_the_Piano_Player + +**Pierrot le fou** + | 1965, directed by Jean-Luc Godard + | http://www.imdb.com/title/tt0059592/ + | http://en.wikipedia.org/wiki/Pierrot_le_fou diff --git a/film/Good Movies b/film/Good Movies deleted file mode 100644 index 3e6c792..0000000 --- a/film/Good Movies +++ /dev/null @@ -1,78 +0,0 @@ -Good Movies -=========== - -I love all of these films in their own way: some because they cover such interesting topics, some because they beautifully made, and some because they have such a strong impact. - -.. note:: - This is just a start! - -Cream of the Crop ------------------ -* Brazil (1985, `imdb1 `_) -* Requiem for a Dream -* The Five Obstructions -* Rushmore -* Sympathy for Mr. Vengence (see `Vengeance Trilogy`_) -* Lost in Translation -* The Pianist - -Also Really Good ----------------- -* The Life Aquatic -* The Royal Tenenbaums (2001, `imdb2 `_) -* Hedwig and the Angry Inch -* Edward Scissorhands (1990) -* Eternal Sunshine of the Spotless Mind -* Amile -* Cowboy Bebop: The Movie -* Broken Flowers -* Life is Beautiful -* The Princess and the Warrior -* Sleeper -* American Beauty -* Fog of War - -Good and Interesting --------------------- -*Note everybody would love these movies, but if it sounds interesting at all i'd check them out* - -* Pi (1998, `imdb3 `_) -* Delicatessen (1991, `imdb4 `_) -* The City of Lost Children -* Kids -* The Conversation -* Akira - -.. _`Vengeance Trilogy`: - -* The Vengeance Trilogy - - - Oldboy (2003, `imdb5 `_) - - Sympathy for Mr. Vengeance (aka Buksuneun naui geot, 2002, `imdb6 `_) - - Lady Vengeance (aka Chinjeolhan geumjassi, 2005, `imdb7 `_) - -* The Animation Show -* American History X -* City of God -* Full Metal Jacket -* Dr. Death -* Secretary -* Spirited Away -* Waking Life -* Big Fish - -Basics ------- -*These are "classics" or "required viewing" movies (that I'm usually surprised if somebody hasn't seen) which I really like... some movies are just pop culture (Star Wars: not the greatest but you're kind of crazy not to watch them), these are also good on their own.* - -* Clockwork Orange -* Citizen Kane -* Lawrence of Arabia -* The Birds -* Akira -* Fargo -* Dr. Strangelove -* Schindler's List -* Pulp Fiction -* Run Lola Run -* Blade Runner diff --git a/film/Good Movies.page b/film/Good Movies.page new file mode 100644 index 0000000..3e6c792 --- /dev/null +++ b/film/Good Movies.page @@ -0,0 +1,78 @@ +Good Movies +=========== + +I love all of these films in their own way: some because they cover such interesting topics, some because they beautifully made, and some because they have such a strong impact. + +.. note:: + This is just a start! + +Cream of the Crop +----------------- +* Brazil (1985, `imdb1 `_) +* Requiem for a Dream +* The Five Obstructions +* Rushmore +* Sympathy for Mr. Vengence (see `Vengeance Trilogy`_) +* Lost in Translation +* The Pianist + +Also Really Good +---------------- +* The Life Aquatic +* The Royal Tenenbaums (2001, `imdb2 `_) +* Hedwig and the Angry Inch +* Edward Scissorhands (1990) +* Eternal Sunshine of the Spotless Mind +* Amile +* Cowboy Bebop: The Movie +* Broken Flowers +* Life is Beautiful +* The Princess and the Warrior +* Sleeper +* American Beauty +* Fog of War + +Good and Interesting +-------------------- +*Note everybody would love these movies, but if it sounds interesting at all i'd check them out* + +* Pi (1998, `imdb3 `_) +* Delicatessen (1991, `imdb4 `_) +* The City of Lost Children +* Kids +* The Conversation +* Akira + +.. _`Vengeance Trilogy`: + +* The Vengeance Trilogy + + - Oldboy (2003, `imdb5 `_) + - Sympathy for Mr. Vengeance (aka Buksuneun naui geot, 2002, `imdb6 `_) + - Lady Vengeance (aka Chinjeolhan geumjassi, 2005, `imdb7 `_) + +* The Animation Show +* American History X +* City of God +* Full Metal Jacket +* Dr. Death +* Secretary +* Spirited Away +* Waking Life +* Big Fish + +Basics +------ +*These are "classics" or "required viewing" movies (that I'm usually surprised if somebody hasn't seen) which I really like... some movies are just pop culture (Star Wars: not the greatest but you're kind of crazy not to watch them), these are also good on their own.* + +* Clockwork Orange +* Citizen Kane +* Lawrence of Arabia +* The Birds +* Akira +* Fargo +* Dr. Strangelove +* Schindler's List +* Pulp Fiction +* Run Lola Run +* Blade Runner diff --git a/film/To Watch b/film/To Watch deleted file mode 100644 index 59983cd..0000000 --- a/film/To Watch +++ /dev/null @@ -1,6 +0,0 @@ --------------- -Films To Watch --------------- - - * Children of Paradise - diff --git a/film/To Watch.page b/film/To Watch.page new file mode 100644 index 0000000..59983cd --- /dev/null +++ b/film/To Watch.page @@ -0,0 +1,6 @@ +-------------- +Films To Watch +-------------- + + * Children of Paradise + diff --git a/math/algebra b/math/algebra deleted file mode 100644 index 3e39ddb..0000000 --- a/math/algebra +++ /dev/null @@ -1,79 +0,0 @@ -==================== -Algebra -==================== - -.. note:: Most of the definitions and notation in the section are based on [rudin]_ or [meserve]_ - -.. list-table:: Closure of binary operators on given sets of numbers - - * - Operation name - - addition - - product - - subtraction - - division - - power - - root - * - Operation symbol - - :latex:`$a + b$` - - :latex:`$a\times b$` - - :latex:`$a-b$` - - :latex:`$\frac{a}{b}$` - - :latex:`$a^b$` - - :latex:`$\sqrt{\text{a}}$` - * - Positive Integers - - Y - - Y - - N - - N - - Y - - N - * - Positive rationals - - Y - - Y - - N - - Y - - Y - - N - * - Rationals (and zero) - - Y - - Y - - Y - - Y - - Y - - N - * - Reals wrt positive integers - - Y - - Y - - Y - - Y - - Y - - Y - * - Complex numbers - - Y - - Y - - Y - - Y - - Y - - Y - -Definitions -============= - -*involution* - to raise a number to a given power - -*evolution* - to take a given root of a number - -*associative* - :latex:`$(a+b)+c=a+(b+c)$` - -*comutative* - :latex:`$a+b=b+c$` - -*distributive* - :latex:`$(a+b)c=ac+bc$` - -.. [rudin] `Principles of Mathematical Analysis (3rd ed)`:title:, by Walter Rudin. McGraw-Hill, 1976 - -.. [meserve] `Fundamental Concepts of Algebra`:title:, by Bruce Meserve. diff --git a/math/algebra.page b/math/algebra.page new file mode 100644 index 0000000..3e39ddb --- /dev/null +++ b/math/algebra.page @@ -0,0 +1,79 @@ +==================== +Algebra +==================== + +.. note:: Most of the definitions and notation in the section are based on [rudin]_ or [meserve]_ + +.. list-table:: Closure of binary operators on given sets of numbers + + * - Operation name + - addition + - product + - subtraction + - division + - power + - root + * - Operation symbol + - :latex:`$a + b$` + - :latex:`$a\times b$` + - :latex:`$a-b$` + - :latex:`$\frac{a}{b}$` + - :latex:`$a^b$` + - :latex:`$\sqrt{\text{a}}$` + * - Positive Integers + - Y + - Y + - N + - N + - Y + - N + * - Positive rationals + - Y + - Y + - N + - Y + - Y + - N + * - Rationals (and zero) + - Y + - Y + - Y + - Y + - Y + - N + * - Reals wrt positive integers + - Y + - Y + - Y + - Y + - Y + - Y + * - Complex numbers + - Y + - Y + - Y + - Y + - Y + - Y + +Definitions +============= + +*involution* + to raise a number to a given power + +*evolution* + to take a given root of a number + +*associative* + :latex:`$(a+b)+c=a+(b+c)$` + +*comutative* + :latex:`$a+b=b+c$` + +*distributive* + :latex:`$(a+b)c=ac+bc$` + +.. [rudin] `Principles of Mathematical Analysis (3rd ed)`:title:, by Walter Rudin. McGraw-Hill, 1976 + +.. [meserve] `Fundamental Concepts of Algebra`:title:, by Bruce Meserve. diff --git a/math/integers b/math/integers deleted file mode 100644 index b946ce8..0000000 --- a/math/integers +++ /dev/null @@ -1,5 +0,0 @@ -==================== -Integers -==================== - -definition via Peano's Postulates: meserev 1-4 diff --git a/math/integers.page b/math/integers.page new file mode 100644 index 0000000..b946ce8 --- /dev/null +++ b/math/integers.page @@ -0,0 +1,5 @@ +==================== +Integers +==================== + +definition via Peano's Postulates: meserev 1-4 diff --git a/math/logic b/math/logic deleted file mode 100644 index 65ceba9..0000000 --- a/math/logic +++ /dev/null @@ -1,18 +0,0 @@ -======================= -Mathematical Logic -======================= - -.. note:: - Incomplete; in progress - -definition of induction: meserev 1-4 - -Proofs -=========== - -Indirect Proof: "reductio ad absurdum" - Show a paradox or impossibility in all cases by assuming the proposition - is false; then the proposition is true. - -Proof by elimination - Propose a complete set of propositions and remove all but one. diff --git a/math/logic.page b/math/logic.page new file mode 100644 index 0000000..65ceba9 --- /dev/null +++ b/math/logic.page @@ -0,0 +1,18 @@ +======================= +Mathematical Logic +======================= + +.. note:: + Incomplete; in progress + +definition of induction: meserev 1-4 + +Proofs +=========== + +Indirect Proof: "reductio ad absurdum" + Show a paradox or impossibility in all cases by assuming the proposition + is false; then the proposition is true. + +Proof by elimination + Propose a complete set of propositions and remove all but one. diff --git a/math/numbers b/math/numbers deleted file mode 100644 index 541d174..0000000 --- a/math/numbers +++ /dev/null @@ -1,54 +0,0 @@ -======================== -Numbers -======================== - -.. note:: - incomplete - -.. note:: - Most of the definitions and notation in the section are based on [rudin]_ or [meserve]_ - -.. contents:: - -*incommensurable* - objects are incommensurable when their ratio isn't rational - -Real Numbers -================== -The *real numbers* are defined via Dedakind cuts in [rudin]_, or [meserve]_ -(1-12). - -Complex Numbers -================== -The *complex numbers* are constructed as an ordered pair of real numbers. - -Algebraic and Transendental Numbers -=============================================== -*Algebraic numbers* are solutions of polynomials, such as x in -:latex:`$a_0 x^n + a_1 x^{n-1} + a_2 x^{n-2} + ... a_n = 0$`, where all a are -real numbers. *Transcendental numbers* are not solutions to any such -polynomials. - -All real numbers are either algebraic or transcendental. - -Some algebraic numbers aren't real (such as :latex:`$i = \sqrt{-1}$`). They -can be rational or irrational. All transcendental numbers are irrational; -some are not real. - -Exersize: is the square root of 5 algebraic or transcendental? - -e -======== -:latex:`$e = \lim_{x \rightarrow 0} (1+x)^{\frac{1}{x}}$` - -Infinities -================== -*aleph-zero* (:latex:`$\aleph_0$`) is the countably infinite set. - -Positive integers, integers, and rational numbers are all countably infinite. - -It is unproven that the real numbers are *aleph-one* (:latex:`$\aleph_1$`). - -.. [rudin] `Principles of Mathematical Analysis (3rd ed)`:title:, by Walter Rudin. McGraw-Hill, 1976 - -.. [meserve] `Fundamental Concepts of Algebra`:title:, by Bruce Meserve. diff --git a/math/numbers.page b/math/numbers.page new file mode 100644 index 0000000..541d174 --- /dev/null +++ b/math/numbers.page @@ -0,0 +1,54 @@ +======================== +Numbers +======================== + +.. note:: + incomplete + +.. note:: + Most of the definitions and notation in the section are based on [rudin]_ or [meserve]_ + +.. contents:: + +*incommensurable* + objects are incommensurable when their ratio isn't rational + +Real Numbers +================== +The *real numbers* are defined via Dedakind cuts in [rudin]_, or [meserve]_ +(1-12). + +Complex Numbers +================== +The *complex numbers* are constructed as an ordered pair of real numbers. + +Algebraic and Transendental Numbers +=============================================== +*Algebraic numbers* are solutions of polynomials, such as x in +:latex:`$a_0 x^n + a_1 x^{n-1} + a_2 x^{n-2} + ... a_n = 0$`, where all a are +real numbers. *Transcendental numbers* are not solutions to any such +polynomials. + +All real numbers are either algebraic or transcendental. + +Some algebraic numbers aren't real (such as :latex:`$i = \sqrt{-1}$`). They +can be rational or irrational. All transcendental numbers are irrational; +some are not real. + +Exersize: is the square root of 5 algebraic or transcendental? + +e +======== +:latex:`$e = \lim_{x \rightarrow 0} (1+x)^{\frac{1}{x}}$` + +Infinities +================== +*aleph-zero* (:latex:`$\aleph_0$`) is the countably infinite set. + +Positive integers, integers, and rational numbers are all countably infinite. + +It is unproven that the real numbers are *aleph-one* (:latex:`$\aleph_1$`). + +.. [rudin] `Principles of Mathematical Analysis (3rd ed)`:title:, by Walter Rudin. McGraw-Hill, 1976 + +.. [meserve] `Fundamental Concepts of Algebra`:title:, by Bruce Meserve. diff --git a/math/sets b/math/sets deleted file mode 100644 index 42eb831..0000000 --- a/math/sets +++ /dev/null @@ -1,47 +0,0 @@ -==================== -Sets -==================== - -.. note:: Most of the definitions and notation in the section are based on [rudin]_ or [meserve]_ - -Basics -============= -If every element :latex:`$a \in A$` is also :latex:`$a \in B$`, then we call -A a *subset* of B and write :latex:`$A \subset B$`. If there are elements of B -which are not elements of A, then we call A a *proper subset* of B. - -If :latex:`$A \supset B$` and :latex:`$B \supset A$` we write :latex:`$A = B$`; -otherwise :latex:`$A \neq B$`. - -The null or empty set, which has no elements, is a subset of all others. - -A relation on a space of sets S is something that can be definted as either -true or false (holding or not holding) for any binary pair in S. - -Binary Operators -================== -Binary operators defined on a set apply to any two elements of that set; order -may or may not be important. A set is *closed* with regards to a binary -operator if it contains the result of the binary operator. A set is *uniquely -defined* with regards to a binary operator if the result of the operator on two -elements of the set is unique from the results from all other pairs of -elements. - -Some equivalence relations are -:latex:`$\identity$` (NOTE: = with three lines) (*identity*); -:latex:`$\congruence$` (NOTE: = with tilde on top) (*congruence*; eg of -geometric figures); and -:latex:`$~$` (NOTE: tilde) (*similarity*; eg of geometric figures). - -Some properties of equivalence relations are - -*reflexive* - if :latex:`$a=a$` is true for all a -*symetric* - if :latex:`$a=b$` implies :latex:`$b=a$` -*transitive* - if :latex:`$a=b$` and :latex:`$b=c$` implies :latex:`$a=c$` - -.. [rudin] `Principles of Mathematical Analysis (3rd ed)`:title:, by Walter Rudin. McGraw-Hill, 1976 - -.. [meserve] `Fundamental Concepts of Algebra`:title:, by Bruce Meserve. diff --git a/math/sets.page b/math/sets.page new file mode 100644 index 0000000..42eb831 --- /dev/null +++ b/math/sets.page @@ -0,0 +1,47 @@ +==================== +Sets +==================== + +.. note:: Most of the definitions and notation in the section are based on [rudin]_ or [meserve]_ + +Basics +============= +If every element :latex:`$a \in A$` is also :latex:`$a \in B$`, then we call +A a *subset* of B and write :latex:`$A \subset B$`. If there are elements of B +which are not elements of A, then we call A a *proper subset* of B. + +If :latex:`$A \supset B$` and :latex:`$B \supset A$` we write :latex:`$A = B$`; +otherwise :latex:`$A \neq B$`. + +The null or empty set, which has no elements, is a subset of all others. + +A relation on a space of sets S is something that can be definted as either +true or false (holding or not holding) for any binary pair in S. + +Binary Operators +================== +Binary operators defined on a set apply to any two elements of that set; order +may or may not be important. A set is *closed* with regards to a binary +operator if it contains the result of the binary operator. A set is *uniquely +defined* with regards to a binary operator if the result of the operator on two +elements of the set is unique from the results from all other pairs of +elements. + +Some equivalence relations are +:latex:`$\identity$` (NOTE: = with three lines) (*identity*); +:latex:`$\congruence$` (NOTE: = with tilde on top) (*congruence*; eg of +geometric figures); and +:latex:`$~$` (NOTE: tilde) (*similarity*; eg of geometric figures). + +Some properties of equivalence relations are + +*reflexive* + if :latex:`$a=a$` is true for all a +*symetric* + if :latex:`$a=b$` implies :latex:`$b=a$` +*transitive* + if :latex:`$a=b$` and :latex:`$b=c$` implies :latex:`$a=c$` + +.. [rudin] `Principles of Mathematical Analysis (3rd ed)`:title:, by Walter Rudin. McGraw-Hill, 1976 + +.. [meserve] `Fundamental Concepts of Algebra`:title:, by Bruce Meserve. diff --git a/math/tensors b/math/tensors deleted file mode 100644 index d46810e..0000000 --- a/math/tensors +++ /dev/null @@ -1,74 +0,0 @@ -============================================ -Tensors, Differential Geometry, Manifolds -============================================ - -.. note:: Most of this content is based on a 2002 Caltech course taught by - Kip Thorn [PH237]_ - - -On a manifold, only "short" vectors exist. Longer vectors are in a space tangent to the manifold. - -There are points (:m:`$P$`), separation vectors (:m:`$\Delta \vector P$`), -curves (:m:`$Q(\zeta)$`), tangent vectors (:m:`$\delta P / \delta \zeta \equiv -\lim_{\Delta \zeta \rightarrow 0} \frac{ \vector{ Q(\zeta+\delta \zeta) - -Q(\zeta) } }{\delta \zeta}$`) - -Coordinates: :m:`$\Chi^\alpha (P)$`, where :m:`$\alpha = 0,1,2,3$`; -:m:`$Q(\Chi_0, \Chi_1, ...)$` - there is an isomorphism between points and coordinates - -Coordinate basis: :m:`$\vector{e_\alpha} \equiv \left( \frac{\partial -Q}{\partial \Chi^\alpha} \right$`) - - for instance, on a sphere with angles :m:`$\omega, \phi$`: - - :m:`$\vector{e_\phi} = \left( \frac{\partial Q(\phi, \theta)}{\partial \phi}\right)_\theta$` - -Components of a vector: - - :m:`$\vector{A} = \frac{\partial P}{\partial \Chi^\alpha }$` - -Directional Derivatives: consider a scalar function defined on a manifold \Psi(P) - :m:`$\partial_\vector{A} \Psi = A^\alpha \frac{\partial \Psi}{\partial \Chi^\alpha}$` - -Mathematicians like to say that the coordinate bases are actually directional derivatives - -Tensors ------------- - -A **tensor** :m:`$\bold{T}$` has a number of slots (called it's **rank**), takes a vector in each slot, and returns a real number. It is linear in vectors; -as an example for a rank-3 tensor: - -:m:`$$\bold{T} ( \alpha \vector{A} + \beta \vector{B}, \vector{C}, \vector{D}) = -\alpha \bold{T} (\vector{A}, \vector{C}, \vector{D}) + \beta \bold{T} -(\vector{B}, \vector{C}, \vector{D}) $$` - -Even a regular vector is a tensor: pass it a second vector and take the -inner product (aka dot product) to get a real. - -Define the **metric tensor** -:m:`$\bold{g}(\vector{A}, \vector{B}) = \vector{A} \cdot \vector{B}$`. The -metric tensor is rank two and symetric (the vectors A and B could be swapped -without changing the scalar output value) and is the same as the inner product. - -:m:`$$\Delta P \cdot \Delta P \equiv \Delta P^2 \equiv (length of \Delta P)^2 A \cdot B = 1/4[ (A+B)^2 - (A-B)^2 ]$$` - -Starting with individual vectors, we can construct tensors by taking the -product of their inner products with empty slots; for example - -:m:`$$\vector{A} \crossop \vector{B} \crossop \vector{C} (\_ ,\_ ,\_)$$` -:m:`$$\vector{A} \crossop \vector{B} \crossop \vector{C} (\vector{E}, \vector{F}, \vector{G}) = ( \vector{A} \cdot \vector{E})(\vector{B} \cdot \vector{F})(\vecotr{C} \cdot \vector{G}) $$` - -Spacetime --------------- - -Two types of vectors. - -Timelike: :m:`$\vector{\Delta P}$` - :m:`$(\vector{\Delta P})^2 = -(\Delta \Tau)^2$` - -Spacelike: :m:`$\vector{\Delta Q}$` - :m:`$(\vector{\Delta Q})^2 = +(\Delta S)^2$` - -Because product of "up" and "down" basis vectors must be a positive Kronecker -delta, and timelikes squared come out negative, the time "up" basis must be negative of the time "down" basis vector. diff --git a/math/tensors.page b/math/tensors.page new file mode 100644 index 0000000..d46810e --- /dev/null +++ b/math/tensors.page @@ -0,0 +1,74 @@ +============================================ +Tensors, Differential Geometry, Manifolds +============================================ + +.. note:: Most of this content is based on a 2002 Caltech course taught by + Kip Thorn [PH237]_ + + +On a manifold, only "short" vectors exist. Longer vectors are in a space tangent to the manifold. + +There are points (:m:`$P$`), separation vectors (:m:`$\Delta \vector P$`), +curves (:m:`$Q(\zeta)$`), tangent vectors (:m:`$\delta P / \delta \zeta \equiv +\lim_{\Delta \zeta \rightarrow 0} \frac{ \vector{ Q(\zeta+\delta \zeta) - +Q(\zeta) } }{\delta \zeta}$`) + +Coordinates: :m:`$\Chi^\alpha (P)$`, where :m:`$\alpha = 0,1,2,3$`; +:m:`$Q(\Chi_0, \Chi_1, ...)$` + there is an isomorphism between points and coordinates + +Coordinate basis: :m:`$\vector{e_\alpha} \equiv \left( \frac{\partial +Q}{\partial \Chi^\alpha} \right$`) + + for instance, on a sphere with angles :m:`$\omega, \phi$`: + + :m:`$\vector{e_\phi} = \left( \frac{\partial Q(\phi, \theta)}{\partial \phi}\right)_\theta$` + +Components of a vector: + + :m:`$\vector{A} = \frac{\partial P}{\partial \Chi^\alpha }$` + +Directional Derivatives: consider a scalar function defined on a manifold \Psi(P) + :m:`$\partial_\vector{A} \Psi = A^\alpha \frac{\partial \Psi}{\partial \Chi^\alpha}$` + +Mathematicians like to say that the coordinate bases are actually directional derivatives + +Tensors +------------ + +A **tensor** :m:`$\bold{T}$` has a number of slots (called it's **rank**), takes a vector in each slot, and returns a real number. It is linear in vectors; +as an example for a rank-3 tensor: + +:m:`$$\bold{T} ( \alpha \vector{A} + \beta \vector{B}, \vector{C}, \vector{D}) = +\alpha \bold{T} (\vector{A}, \vector{C}, \vector{D}) + \beta \bold{T} +(\vector{B}, \vector{C}, \vector{D}) $$` + +Even a regular vector is a tensor: pass it a second vector and take the +inner product (aka dot product) to get a real. + +Define the **metric tensor** +:m:`$\bold{g}(\vector{A}, \vector{B}) = \vector{A} \cdot \vector{B}$`. The +metric tensor is rank two and symetric (the vectors A and B could be swapped +without changing the scalar output value) and is the same as the inner product. + +:m:`$$\Delta P \cdot \Delta P \equiv \Delta P^2 \equiv (length of \Delta P)^2 A \cdot B = 1/4[ (A+B)^2 - (A-B)^2 ]$$` + +Starting with individual vectors, we can construct tensors by taking the +product of their inner products with empty slots; for example + +:m:`$$\vector{A} \crossop \vector{B} \crossop \vector{C} (\_ ,\_ ,\_)$$` +:m:`$$\vector{A} \crossop \vector{B} \crossop \vector{C} (\vector{E}, \vector{F}, \vector{G}) = ( \vector{A} \cdot \vector{E})(\vector{B} \cdot \vector{F})(\vecotr{C} \cdot \vector{G}) $$` + +Spacetime +-------------- + +Two types of vectors. + +Timelike: :m:`$\vector{\Delta P}$` + :m:`$(\vector{\Delta P})^2 = -(\Delta \Tau)^2$` + +Spacelike: :m:`$\vector{\Delta Q}$` + :m:`$(\vector{\Delta Q})^2 = +(\Delta S)^2$` + +Because product of "up" and "down" basis vectors must be a positive Kronecker +delta, and timelikes squared come out negative, the time "up" basis must be negative of the time "down" basis vector. diff --git a/math/topology b/math/topology deleted file mode 100644 index 6f03eee..0000000 --- a/math/topology +++ /dev/null @@ -1,81 +0,0 @@ -==================== -Topology -==================== - -.. warning:: Incomplete; in progress - -.. note:: Most of the definitions and notation in the section are based on [munkres]_ - -A *topological space* is a set for which a valid topology has been defined: the topology -determines which subsets of the topological space are open and closed. In this way the -concept of open and closed subsets on the real number line (such as :m:`$(0,1)$` and -:m:`$[1,2]$`) are generalized to arbitrary sets. - -Formally, a *topology* on a set :m:`$A$` is a collection :m:`$\mathcal{T}$` of -subsets of :m:`$A$` fufiling the criteria: - - 1. The empty set and the entire set :m:`$A$` are both in :m:`$\mathcal{T}$`. - - 2. The union of an arbitrary number of elements of :m:`$\mathcal{T}$` is - also in :m:`$\mathcal{T}$`. - - 3. The intersection of a finite number of elements of :m:`$\mathcal{T}$` is - also in :m:`$\mathcal{T}$`. - -If a subset :m:`$B$` of :m:`$A$` is a member of :m:`$\mathcal{T}$` then -:m:`$B$` is an open set under the topology :m:`$\mathcal{T}$`. - -*Coarseness* and *Fineness* are ways of comparing two topologies on the same space. -:m:`$\mathcal{T'}$` is finer than :m:`$\mathcal{T}$` if :m:`$\mathcal{T}$` -is a subset of :m:`$\mathcal{T'}$` (and :m:`$\mathcal{T}$` is coarser); -it is *strictly finer* if it is a proper subset (and :m:`$\mathcal{T}$` is -*strictly coarser*). Two sets are *comprable* if either :m:`$\mathcal{T\in T'}$` -or :m:`$\mathcal{T'\in T}$`. -*Smaller* and *larger* are somtimes used instead of finer and coarser. - -Topologies can be generated from a *basis*. - -TODO: Hausdorf - -Frequently Used Topologies -============================ - -*Standard Topology* - The standard topology on the real line is generated by the collection of all intervals - :m:`$$(a,b)=\{x|a`__* - -(no content) - -References ----------------- - -.. [PH237] `Gravitational Waves`:title: (aka ph237), a course taught by Kip Thorne at Caltech in 2002. See http://elmer.tapir.caltech.edu/ph237/ for notes and lecture videos. diff --git a/physics/general relativity.page b/physics/general relativity.page new file mode 100644 index 0000000..7fc29eb --- /dev/null +++ b/physics/general relativity.page @@ -0,0 +1,18 @@ +=========================== +General Relativity +=========================== + +.. warning:: This is a rough work in progress!! Likely to be factual errors, + poor grammar, etc. + +.. note:: Most of this content is based on a 2002 Caltech course taught by + Kip Thorn [PH237]_ + +*See also `math/tensors `__* + +(no content) + +References +---------------- + +.. [PH237] `Gravitational Waves`:title: (aka ph237), a course taught by Kip Thorne at Caltech in 2002. See http://elmer.tapir.caltech.edu/ph237/ for notes and lecture videos. diff --git a/physics/gravitational waves b/physics/gravitational waves deleted file mode 100644 index 5aa1744..0000000 --- a/physics/gravitational waves +++ /dev/null @@ -1,111 +0,0 @@ -======================= -Gravitational Waves -======================= - -.. warning:: This is a rough work in progress!! Likely to be factual errors, poor grammar, etc. - -.. note:: Most of this content is based on a 2002 Caltech course taught by - Kip Thorn [PH237]_ - -Raw Info ------------------ -Rank 4 Riemann tensors, will cover different gauge. -Waves are double integrals of curvature tensor... - - - -Gravitons as Quantum Particles ---------------------------------- -Invariance angles: (Spin of quantum particle) = :latex:`$2 pi$` / (invariance angle) - -Graviton has :latex:`$\pi$` invariance angle, so it is spin 2; photons have unique :latex:`$\arrow{E}$` vector, so invariance angle is :latex:`$2\pi$`, spin 1 - -Also describes spin by the group of Lorentz transformations which effect propagation. - -Two polarizations: cross and plus, corresponding to spin of particles aligning with or against propagation? (Ref: Eugene Vickner? reviews of modern physics) - -Waves' multipole order :latex:`$\geq$` spin of quantum = 2 for graviton ((??)) - -Waves don't propagate like E, because mass monopoles don't oscillate like charges. - -:latex:`$ h \approx \frac{G}{c^2} \frac{M_0}{r} + \frac{G}{c^3} \frac{M'_1}{r} + \frac{G}{c^4} \frac{M''_2}{r} + \frac{G}{c^4} \frac{S'_1}{r} + \frac{G}{c^5} \frac{S''_1}{r}$` -First term: mass can't oscillate -Second term: momentum can't oscillate -Third term: mass quadrupole moment dominates -Fourth term: angular momentum can't oscillate -Fifth term: current quadrupole - -Energy ----------------- - -Quick calculation: for a source with mass M, size L, period P, the quadrupole -moment :m:`$M_2 \approx M L^2$`, :m:`$h \approx 1/c^2` (Newtonian potential -energy) ???? - -h on the order of :m:`$10^{-22}$` - -Propagation ------------------ - -When wavelength much less than curvature of universe (background), then gravitational waves propagate like light waves: undergo red shifts, gravitational lensing, inflationary red shift, etc. - -Sources -------------- - -Inspirals of bodies into super-massive black holes - Eg, white dwarfs, neutron stars, small black holes. - Super-massive black holes are expected near the centers of galaxies. - Low frequencies (LISA); waveforms could hold data about spacetime curvature - local to the black hole. - Waveforms could be very difficult to predict. - -Binary black hole mergers - Broadband signals depending on masses. - -Neutron Star/Black hole mergers - Stellar mass objects existing in the main bodies of galaxies. - Higher frequencies (LIGO and AdvLIGO). - -Neutron Star/Neutron Star mergers - Have actual examples in our galaxy of these events; but final inspiral rate - is so low that we have must listen in other galaxies. Merger waves will - probably be lost in higher frequency noise, so can't probe local - gravitational curvature. - May observe "tails" of waves: scattering off of high curvature around the - binary. - -Pulsars (spinning neutron stars) - Known to exist in our galaxy. - -Spectrum ----------------- - -High Frequency: Above 1 Hz, LIGO (10 Hz to 1kHz), resonant bars - Small black holes (2 to 1k suns), neutron stars, supernovas - -Low frequency: 1Hz and lower, LISA (10^-4 Hz to 0.1 Hz), Doppler tracking of spacecraft - Massive black holes (300 to 30 million suns), binary stars - -Very Low Frequency: 10^-8 Hz, Pulsar timing (our clocks shifted by gwaves, average of distance pulsars are not over long periods) - -Extreme Low Frequency: 10^-16 Hz, Cosmic Microwave Background anisotropy - -Detectors ------------------ - -:m:`$\Delta L = h L ~ \leq 4 \times 10^{-16} \text{cm}$` - -LIGO (10 Hz to 1kHz) - Also GEO, VIRGO, TAMA (?), AIGO - -LISA (10e-4 Hz to 0.1 Hz) - -Resonant Bars -~~~~~~~~~~~~~~~ -First by Webber. -Currently in Louisiana State University (Allegro), University of West Australia (Niobe), CERN (Explorer), University of Padova (Auriga), and University of Rome (Nautilus) - -References ----------------- - -.. [PH237] `Gravitational Waves`:title: (aka ph237), a course taught by Kip Thorne at Caltech in 2002. See http://elmer.tapir.caltech.edu/ph237/ for notes and lecture videos. diff --git a/physics/gravitational waves.page b/physics/gravitational waves.page new file mode 100644 index 0000000..5aa1744 --- /dev/null +++ b/physics/gravitational waves.page @@ -0,0 +1,111 @@ +======================= +Gravitational Waves +======================= + +.. warning:: This is a rough work in progress!! Likely to be factual errors, poor grammar, etc. + +.. note:: Most of this content is based on a 2002 Caltech course taught by + Kip Thorn [PH237]_ + +Raw Info +----------------- +Rank 4 Riemann tensors, will cover different gauge. +Waves are double integrals of curvature tensor... + + + +Gravitons as Quantum Particles +--------------------------------- +Invariance angles: (Spin of quantum particle) = :latex:`$2 pi$` / (invariance angle) + +Graviton has :latex:`$\pi$` invariance angle, so it is spin 2; photons have unique :latex:`$\arrow{E}$` vector, so invariance angle is :latex:`$2\pi$`, spin 1 + +Also describes spin by the group of Lorentz transformations which effect propagation. + +Two polarizations: cross and plus, corresponding to spin of particles aligning with or against propagation? (Ref: Eugene Vickner? reviews of modern physics) + +Waves' multipole order :latex:`$\geq$` spin of quantum = 2 for graviton ((??)) + +Waves don't propagate like E, because mass monopoles don't oscillate like charges. + +:latex:`$ h \approx \frac{G}{c^2} \frac{M_0}{r} + \frac{G}{c^3} \frac{M'_1}{r} + \frac{G}{c^4} \frac{M''_2}{r} + \frac{G}{c^4} \frac{S'_1}{r} + \frac{G}{c^5} \frac{S''_1}{r}$` +First term: mass can't oscillate +Second term: momentum can't oscillate +Third term: mass quadrupole moment dominates +Fourth term: angular momentum can't oscillate +Fifth term: current quadrupole + +Energy +---------------- + +Quick calculation: for a source with mass M, size L, period P, the quadrupole +moment :m:`$M_2 \approx M L^2$`, :m:`$h \approx 1/c^2` (Newtonian potential +energy) ???? + +h on the order of :m:`$10^{-22}$` + +Propagation +----------------- + +When wavelength much less than curvature of universe (background), then gravitational waves propagate like light waves: undergo red shifts, gravitational lensing, inflationary red shift, etc. + +Sources +------------- + +Inspirals of bodies into super-massive black holes + Eg, white dwarfs, neutron stars, small black holes. + Super-massive black holes are expected near the centers of galaxies. + Low frequencies (LISA); waveforms could hold data about spacetime curvature + local to the black hole. + Waveforms could be very difficult to predict. + +Binary black hole mergers + Broadband signals depending on masses. + +Neutron Star/Black hole mergers + Stellar mass objects existing in the main bodies of galaxies. + Higher frequencies (LIGO and AdvLIGO). + +Neutron Star/Neutron Star mergers + Have actual examples in our galaxy of these events; but final inspiral rate + is so low that we have must listen in other galaxies. Merger waves will + probably be lost in higher frequency noise, so can't probe local + gravitational curvature. + May observe "tails" of waves: scattering off of high curvature around the + binary. + +Pulsars (spinning neutron stars) + Known to exist in our galaxy. + +Spectrum +---------------- + +High Frequency: Above 1 Hz, LIGO (10 Hz to 1kHz), resonant bars + Small black holes (2 to 1k suns), neutron stars, supernovas + +Low frequency: 1Hz and lower, LISA (10^-4 Hz to 0.1 Hz), Doppler tracking of spacecraft + Massive black holes (300 to 30 million suns), binary stars + +Very Low Frequency: 10^-8 Hz, Pulsar timing (our clocks shifted by gwaves, average of distance pulsars are not over long periods) + +Extreme Low Frequency: 10^-16 Hz, Cosmic Microwave Background anisotropy + +Detectors +----------------- + +:m:`$\Delta L = h L ~ \leq 4 \times 10^{-16} \text{cm}$` + +LIGO (10 Hz to 1kHz) + Also GEO, VIRGO, TAMA (?), AIGO + +LISA (10e-4 Hz to 0.1 Hz) + +Resonant Bars +~~~~~~~~~~~~~~~ +First by Webber. +Currently in Louisiana State University (Allegro), University of West Australia (Niobe), CERN (Explorer), University of Padova (Auriga), and University of Rome (Nautilus) + +References +---------------- + +.. [PH237] `Gravitational Waves`:title: (aka ph237), a course taught by Kip Thorne at Caltech in 2002. See http://elmer.tapir.caltech.edu/ph237/ for notes and lecture videos. diff --git a/physics/quantum/fermigas b/physics/quantum/fermigas deleted file mode 100644 index 0114b43..0000000 --- a/physics/quantum/fermigas +++ /dev/null @@ -1,51 +0,0 @@ -=============== -Fermi Gas -=============== - -Derivation of the Fermi Energy ---------------------------------- -Consider a crystal lattice with an electron gas as a 3 dimensional infinite -square well with dimensions :m:`$l_{x}, l_{y}, l_z$`. The wavefunctions of -individual fermions (pretending they are non-interacting) can be seperated -as :m:`$\psi(x,y)=\psi_{x}(x)\psi_{y}(y)\psi_{z}(z)$`. The solutions will be -the usual ones to the Schrodinger equation: - -:m:`$$\frac{-\hbar^2}{2m}\frac{d^2 \psi_x}{dx}=E_x \psi_x$$` - -with the usual wave numbers :m:`$k_x=\frac{\sqrt{2mE_x}}{\hbar}$`, and quantum -numbers satisfying the boundry conditions :m:`$k_x l_x = n_x \pi$`. The full -wavefunction for each particle will be: - -:m:`$$\psi_{n_{x}n_{y}n_{z}}(x,y,z)=\sqrt{\frac{4}{l_{x}l_{y}}}\sin\left(\frac{n_{x}\pi}{l_{x}}x\right)\sin\left(\frac{n_{y}\pi}{l_{y}}y\right)\sin\left(\frac{n_{z}\pi}{l_{z}}z\right)$$` - -and the associated energies (with :m:`$E = E_x + E_y + E_z$`): - -:m:`$$E_{n_{x}n_{y}n_z}=\frac{\hbar^{2}\pi^{2}}{2m}\left(\frac{n_{x}^{2}}{l_{x}^{2}}+\frac{n_{y}^{2}}{l_{y}^{2}}+\frac{n_{z}^{2}}{l_{z}^{2}}\right)=\frac{\hbar^2|\vec{k}|^2}{2m}$$` - -where :m:`$|\vec{k}|^2$` is the magnitude of the particle's k-vector in k-space. -This k-space can be imagined as a grid of blocks, each representing a possible -particle state (with a double degeneracy for spin). Positions on this grid have -coordinates :m:`$(k_{x},k_{y},k_z)$` corresponding to the positive integer -quantum numbers. These blocks will be filled -from the lowest energy upwards: for large numbers of occupying particles, -the filling pattern can be approximated as an expanding spherical shell with -radius :m:`$|\vec{k_F}|^2$`. - -Note that we're "over counting" the number of occupied states because the -"sides" of the quarter sphere in k-space (where one of the associated quantum -numbers is zero) do not represent valid states. These surfaces can be ignored -for very large N because the surface area to volume ratio is so low, but the -correction can be important. There will then be a second correction due to -removing the states along the individual axes twice (once for each -side-surface), u.s.w. - -The surface of this shell is called the Fermi surface and represents the most -excited states in the gas. The radius can be derived by calculating the total -volume enclosed: each block has volume :m:`$\frac{\pi^3}{l_x l_y -l_z}=\frac{\pi^3}{V}$` and there are N/2 blocks occupied by N fermions, so: - -:m:`$$\frac{1}{8}(\frac{4\pi}{3} |k_{F}|^{3})&=&\frac{Nq}{2}(\frac{\pi^{3}}{V})\\|k_{F}|&=&\sqrt{\frac{3Nq\pi^2}{V}}^3=\sqrt{3\pi^2\rho}^3$$` - -:m:`$\rho$` is the "free fermion density". The corresponding energy is: - -:m:`$$E_{F}=\frac{\hbar^{2}}{2m}|k_{F}|^{2}=\frac{\hbar^{2}}{2m}(3\rho \pi)^{2/3}$$` diff --git a/physics/quantum/fermigas.page b/physics/quantum/fermigas.page new file mode 100644 index 0000000..0114b43 --- /dev/null +++ b/physics/quantum/fermigas.page @@ -0,0 +1,51 @@ +=============== +Fermi Gas +=============== + +Derivation of the Fermi Energy +--------------------------------- +Consider a crystal lattice with an electron gas as a 3 dimensional infinite +square well with dimensions :m:`$l_{x}, l_{y}, l_z$`. The wavefunctions of +individual fermions (pretending they are non-interacting) can be seperated +as :m:`$\psi(x,y)=\psi_{x}(x)\psi_{y}(y)\psi_{z}(z)$`. The solutions will be +the usual ones to the Schrodinger equation: + +:m:`$$\frac{-\hbar^2}{2m}\frac{d^2 \psi_x}{dx}=E_x \psi_x$$` + +with the usual wave numbers :m:`$k_x=\frac{\sqrt{2mE_x}}{\hbar}$`, and quantum +numbers satisfying the boundry conditions :m:`$k_x l_x = n_x \pi$`. The full +wavefunction for each particle will be: + +:m:`$$\psi_{n_{x}n_{y}n_{z}}(x,y,z)=\sqrt{\frac{4}{l_{x}l_{y}}}\sin\left(\frac{n_{x}\pi}{l_{x}}x\right)\sin\left(\frac{n_{y}\pi}{l_{y}}y\right)\sin\left(\frac{n_{z}\pi}{l_{z}}z\right)$$` + +and the associated energies (with :m:`$E = E_x + E_y + E_z$`): + +:m:`$$E_{n_{x}n_{y}n_z}=\frac{\hbar^{2}\pi^{2}}{2m}\left(\frac{n_{x}^{2}}{l_{x}^{2}}+\frac{n_{y}^{2}}{l_{y}^{2}}+\frac{n_{z}^{2}}{l_{z}^{2}}\right)=\frac{\hbar^2|\vec{k}|^2}{2m}$$` + +where :m:`$|\vec{k}|^2$` is the magnitude of the particle's k-vector in k-space. +This k-space can be imagined as a grid of blocks, each representing a possible +particle state (with a double degeneracy for spin). Positions on this grid have +coordinates :m:`$(k_{x},k_{y},k_z)$` corresponding to the positive integer +quantum numbers. These blocks will be filled +from the lowest energy upwards: for large numbers of occupying particles, +the filling pattern can be approximated as an expanding spherical shell with +radius :m:`$|\vec{k_F}|^2$`. + +Note that we're "over counting" the number of occupied states because the +"sides" of the quarter sphere in k-space (where one of the associated quantum +numbers is zero) do not represent valid states. These surfaces can be ignored +for very large N because the surface area to volume ratio is so low, but the +correction can be important. There will then be a second correction due to +removing the states along the individual axes twice (once for each +side-surface), u.s.w. + +The surface of this shell is called the Fermi surface and represents the most +excited states in the gas. The radius can be derived by calculating the total +volume enclosed: each block has volume :m:`$\frac{\pi^3}{l_x l_y +l_z}=\frac{\pi^3}{V}$` and there are N/2 blocks occupied by N fermions, so: + +:m:`$$\frac{1}{8}(\frac{4\pi}{3} |k_{F}|^{3})&=&\frac{Nq}{2}(\frac{\pi^{3}}{V})\\|k_{F}|&=&\sqrt{\frac{3Nq\pi^2}{V}}^3=\sqrt{3\pi^2\rho}^3$$` + +:m:`$\rho$` is the "free fermion density". The corresponding energy is: + +:m:`$$E_{F}=\frac{\hbar^{2}}{2m}|k_{F}|^{2}=\frac{\hbar^{2}}{2m}(3\rho \pi)^{2/3}$$` diff --git a/physics/special relativity b/physics/special relativity deleted file mode 100644 index 37fd3e9..0000000 --- a/physics/special relativity +++ /dev/null @@ -1,56 +0,0 @@ -=========================== -Special Relativity -=========================== - -.. warning:: This is a rough work in progress!! Likely to be factual errors, - poor grammar, etc. - -.. note:: Most of this content is based on a 2002 Caltech course taught by - Kip Thorn [PH237]_ - -*See also `physics/general relativity`__* - -As opposed to general relativity, special relativity takes place in a *flat* -Minkowski space time: a 4-space with three spatial dimensions and one time -dimension. - -+----------------+--------------------+ -| Index notation | Variable | Type | -+----------------+--------------------+ -| `$x^0$`:m: | `$t$`:m: | Time | -| `$x^1$`:m: | `$x$`:m: | Spatial | -| `$x^2$`:m: | `$y$`:m: | Spatial | -| `$x^3$`:m: | `$z$`:m: | Spatial | -+----------------+--------------------+ - -Separations -------------- - -The separation `$(\Delta s)^2$`:m: between two events in space time, in a given -Lorentzian/inertial frame, is defined -as: - -:m:`$$ (\Delta s)^2 \equiv -(\Delta t)^2 + (\Delta x)^2 + (\Delta y)^2 + (\Delta z)^2 $$` - -or - -:m:`$$ (\Delta s)^2 \equiv -(\Delta x^0)^2 + \sum_{i,j} \delta_{ij} \Delta x^i \Delta x^j$$` - -where :m:`$\delta_{ij}$` is the Kronecker delta (unity or 1 when -:m:`$i=j$`; zero otherwise), and the indices i and j are over the spatial -dimensions 1,2,3 (corresponding to x,y,z). It can be shown that this separation -is Lorentz-invariant; the scalar value of separation between two events does -not depend on the inertial frame chosen. - -Note the negative sign in front of the time dimension. The are three types of -separations: **space-like** when :m:`$(\Delta s)^2 > 0$`, **null-** or -**light-like** when :m:`$(\Delta s)^2 = 0$`, and **time-like** when -:m:`$(\Delta s)^2 < 0$`. When dealing with time-like separations, ignore the -implication of an imaginary number. The difference in time :m:`$\Delta \Tau$` -is always real: :m:`($\Delta \Tau)^2= -(\Delta s)^2$`. - - -References ----------------- - -.. [PH237] `Gravitational Waves`:title: (aka ph237), a course taught by Kip Thorne at Caltech in 2002. See http://elmer.tapir.caltech.edu/ph237/ for notes and lecture videos. diff --git a/physics/special relativity.page b/physics/special relativity.page new file mode 100644 index 0000000..37fd3e9 --- /dev/null +++ b/physics/special relativity.page @@ -0,0 +1,56 @@ +=========================== +Special Relativity +=========================== + +.. warning:: This is a rough work in progress!! Likely to be factual errors, + poor grammar, etc. + +.. note:: Most of this content is based on a 2002 Caltech course taught by + Kip Thorn [PH237]_ + +*See also `physics/general relativity`__* + +As opposed to general relativity, special relativity takes place in a *flat* +Minkowski space time: a 4-space with three spatial dimensions and one time +dimension. + ++----------------+--------------------+ +| Index notation | Variable | Type | ++----------------+--------------------+ +| `$x^0$`:m: | `$t$`:m: | Time | +| `$x^1$`:m: | `$x$`:m: | Spatial | +| `$x^2$`:m: | `$y$`:m: | Spatial | +| `$x^3$`:m: | `$z$`:m: | Spatial | ++----------------+--------------------+ + +Separations +------------- + +The separation `$(\Delta s)^2$`:m: between two events in space time, in a given +Lorentzian/inertial frame, is defined +as: + +:m:`$$ (\Delta s)^2 \equiv -(\Delta t)^2 + (\Delta x)^2 + (\Delta y)^2 + (\Delta z)^2 $$` + +or + +:m:`$$ (\Delta s)^2 \equiv -(\Delta x^0)^2 + \sum_{i,j} \delta_{ij} \Delta x^i \Delta x^j$$` + +where :m:`$\delta_{ij}$` is the Kronecker delta (unity or 1 when +:m:`$i=j$`; zero otherwise), and the indices i and j are over the spatial +dimensions 1,2,3 (corresponding to x,y,z). It can be shown that this separation +is Lorentz-invariant; the scalar value of separation between two events does +not depend on the inertial frame chosen. + +Note the negative sign in front of the time dimension. The are three types of +separations: **space-like** when :m:`$(\Delta s)^2 > 0$`, **null-** or +**light-like** when :m:`$(\Delta s)^2 = 0$`, and **time-like** when +:m:`$(\Delta s)^2 < 0$`. When dealing with time-like separations, ignore the +implication of an imaginary number. The difference in time :m:`$\Delta \Tau$` +is always real: :m:`($\Delta \Tau)^2= -(\Delta s)^2$`. + + +References +---------------- + +.. [PH237] `Gravitational Waves`:title: (aka ph237), a course taught by Kip Thorne at Caltech in 2002. See http://elmer.tapir.caltech.edu/ph237/ for notes and lecture videos. diff --git a/physics/units b/physics/units deleted file mode 100644 index b1968f4..0000000 --- a/physics/units +++ /dev/null @@ -1,53 +0,0 @@ -====================== -Units -====================== - -.. contents:: - -SI Units --------------------- -The SI system uses meters-kilograms-seconds. It also defines the Coulomb as -a unit for measuring electric charge, which introduces redundant conversions -between mass-length-time units and the electric charge. - -cgs Units --------------------- -The cgs system uses centimeters-grams-seconds, and also defines electric charge -in terms of the fundamental quantities of mass, length, and time. The unit of -charge is "esu" or electrostatic unit. - -Natural Units --------------------- -Natural units are a system of units which replace (or re-scale) the usual mass, -length, and time bases with quantities which have "natural" (physical) -constants associated with them. The two constants usually chosen are the speed -of light (c) and Plank's constant (:m:`$\hbar$`); the gravitational constant -(G) is a possibility for the third constant/unit, but energy (in -electron-volts: eV) is often used instead because it gives more useful -relations and because there is no accepted theory of quantum gravity to unite -these three constants. See _`Plank Units` for more on using G as a unit. - -Working with natural units simplifies physical relations and equations because -many conversion factors drop out. - -Given the relations between cgs units (gm, cm, sec) and natural units (c, -:m:`$\hbar$` , eV), we can find the natural units of an arbitrary quantity -:m:`$[Q]=[gm]^{a}[cm]^{b}[sec]^{c}=[c]^{\alpha}[\hbar]^{\beta}[eV]^{\gamma}$`: - -:m:`$$(\alpha,\beta,\gamma)=\left(\begin{array}{ccc} -2 & 1 & 0\\ 0 & 1 & 1\\ 1 & -1 & -1\end{array}\right)\left(\begin{array}{c} a\\ b\\ c\end{array}\right)=(-2a+b,b+c,a-b-c)$$` - -or in reverse: - -:m:`$$(a,b,c)=\left(\begin{array}{ccc} 0 & 1 & 1\\ 1 & 2 & 2\\ -1 & -1 & -2\end{array}\right)\left(\begin{array}{c} \alpha\\ \beta\\ \gamma\end{array}\right)=(\beta+\gamma,\alpha+2\beta+\gamma,-\alpha-\beta-2\gamma)$$` - -Plank Units ----------------- -Plank units (defined by Plank soon after defining his constant :m:`$\hbar$`) are a version of _`Natural Units` using the gravitational constant G as the the -third unit (instead of the common measure of energy). When converted back into -mass-length-time units we get three quantities which define the "Plank Scale", -which may provide estimation of the domain where quantum gravity effects become -important (similar to how the speed of light and Plank's constant provide -estimation of when special relativistic and quantum mechanical effects become -important). - - diff --git a/physics/units.page b/physics/units.page new file mode 100644 index 0000000..b1968f4 --- /dev/null +++ b/physics/units.page @@ -0,0 +1,53 @@ +====================== +Units +====================== + +.. contents:: + +SI Units +-------------------- +The SI system uses meters-kilograms-seconds. It also defines the Coulomb as +a unit for measuring electric charge, which introduces redundant conversions +between mass-length-time units and the electric charge. + +cgs Units +-------------------- +The cgs system uses centimeters-grams-seconds, and also defines electric charge +in terms of the fundamental quantities of mass, length, and time. The unit of +charge is "esu" or electrostatic unit. + +Natural Units +-------------------- +Natural units are a system of units which replace (or re-scale) the usual mass, +length, and time bases with quantities which have "natural" (physical) +constants associated with them. The two constants usually chosen are the speed +of light (c) and Plank's constant (:m:`$\hbar$`); the gravitational constant +(G) is a possibility for the third constant/unit, but energy (in +electron-volts: eV) is often used instead because it gives more useful +relations and because there is no accepted theory of quantum gravity to unite +these three constants. See _`Plank Units` for more on using G as a unit. + +Working with natural units simplifies physical relations and equations because +many conversion factors drop out. + +Given the relations between cgs units (gm, cm, sec) and natural units (c, +:m:`$\hbar$` , eV), we can find the natural units of an arbitrary quantity +:m:`$[Q]=[gm]^{a}[cm]^{b}[sec]^{c}=[c]^{\alpha}[\hbar]^{\beta}[eV]^{\gamma}$`: + +:m:`$$(\alpha,\beta,\gamma)=\left(\begin{array}{ccc} -2 & 1 & 0\\ 0 & 1 & 1\\ 1 & -1 & -1\end{array}\right)\left(\begin{array}{c} a\\ b\\ c\end{array}\right)=(-2a+b,b+c,a-b-c)$$` + +or in reverse: + +:m:`$$(a,b,c)=\left(\begin{array}{ccc} 0 & 1 & 1\\ 1 & 2 & 2\\ -1 & -1 & -2\end{array}\right)\left(\begin{array}{c} \alpha\\ \beta\\ \gamma\end{array}\right)=(\beta+\gamma,\alpha+2\beta+\gamma,-\alpha-\beta-2\gamma)$$` + +Plank Units +---------------- +Plank units (defined by Plank soon after defining his constant :m:`$\hbar$`) are a version of _`Natural Units` using the gravitational constant G as the the +third unit (instead of the common measure of energy). When converted back into +mass-length-time units we get three quantities which define the "Plank Scale", +which may provide estimation of the domain where quantum gravity effects become +important (similar to how the speed of light and Plank's constant provide +estimation of when special relativistic and quantum mechanical effects become +important). + + diff --git a/reStructured Text b/reStructured Text deleted file mode 100644 index c624ded..0000000 --- a/reStructured Text +++ /dev/null @@ -1,19 +0,0 @@ -================ -ReStructuredText -================ - -reStructured text is a markup language commonly used in wikis (including -`Git Wiki`_) and software documentation. It strives to be readable in -its raw text -form, extensible, easy to write, and flexible in output. Writers -exist to output HTML, XHTML, LaTeX, and several other formats - -reStructured text is closely tied to the python community and is used -in the formating of PEPs. The most popular implementation is `docutils`_. - -I also have a cheatsheet_. - -.. _docutils: http://docutils.sourceforge.net/ -.. _Git Wiki: /k/gitwiki/ -.. _cheatsheet: /k/sheets/rst/ - diff --git a/reStructured Text.page b/reStructured Text.page new file mode 100644 index 0000000..c624ded --- /dev/null +++ b/reStructured Text.page @@ -0,0 +1,19 @@ +================ +ReStructuredText +================ + +reStructured text is a markup language commonly used in wikis (including +`Git Wiki`_) and software documentation. It strives to be readable in +its raw text +form, extensible, easy to write, and flexible in output. Writers +exist to output HTML, XHTML, LaTeX, and several other formats + +reStructured text is closely tied to the python community and is used +in the formating of PEPs. The most popular implementation is `docutils`_. + +I also have a cheatsheet_. + +.. _docutils: http://docutils.sourceforge.net/ +.. _Git Wiki: /k/gitwiki/ +.. _cheatsheet: /k/sheets/rst/ + diff --git a/sheets/rst b/sheets/rst deleted file mode 100644 index 4714fe3..0000000 --- a/sheets/rst +++ /dev/null @@ -1,127 +0,0 @@ -===================================================== - The reStructuredText_ Cheat Sheet: Syntax Reminders -===================================================== -:Info: See for introductory docs. -:Author: David Goodger -:Date: $Date: 2006-01-23 02:13:55 +0100 (Mon, 23 Jan 2006) $ -:Revision: $Revision: 4321 $ -:Description: This is a "docinfo block", or bibliographic field list - -Section Structure -================= -Section titles are underlined or overlined & underlined. - -Body Elements -============= -Grid table: - -+--------------------------------+-----------------------------------+ -| Paragraphs are flush-left, | Literal block, preceded by "::":: | -| separated by blank lines. | | -| | Indented | -| Block quotes are indented. | | -+--------------------------------+ or:: | -| >>> print 'Doctest block' | | -| Doctest block | > Quoted | -+--------------------------------+-----------------------------------+ -| | Line blocks preserve line breaks & indents. [new in 0.3.6] | -| | Useful for addresses, verse, and adornment-free lists; long | -| lines can be wrapped with continuation lines. | -+--------------------------------------------------------------------+ - -Simple tables: - -================ ============================================================ -List Type Examples -================ ============================================================ -Bullet list * items begin with "-", "+", or "*" -Enumerated list 1. items use any variation of "1.", "A)", and "(i)" - #. also auto-enumerated -Definition list Term is flush-left : optional classifier - Definition is indented, no blank line between -Field list :field name: field body -Option list -o at least 2 spaces between option & description -================ ============================================================ - -================ ============================================================ -Explicit Markup Examples (visible in the `text source `_) -================ ============================================================ -Footnote .. [1] Manually numbered or [#] auto-numbered - (even [#labelled]) or [*] auto-symbol -Citation .. [CIT2002] A citation. -Hyperlink Target .. _reStructuredText: http://docutils.sf.net/rst.html - .. _indirect target: reStructuredText_ - .. _internal target: -Anonymous Target __ http://docutils.sf.net/docs/ref/rst/restructuredtext.html -Directive ("::") .. image:: fig/biohazard.png -Substitution Def .. |substitution| replace:: like an inline directive -Comment .. is anything else -Empty Comment (".." on a line by itself, with blank lines before & after, - used to separate indentation contexts) -================ ============================================================ - -Inline Markup -============= -*emphasis*; **strong emphasis**; `interpreted text`; `interpreted text -with role`:emphasis:; ``inline literal text``; standalone hyperlink, -http://docutils.sourceforge.net; named reference, reStructuredText_; -`anonymous reference`__; footnote reference, [1]_; citation reference, -[CIT2002]_; |substitution|; _`inline internal target`. - -Directive Quick Reference -========================= -See for full info. - -================ ============================================================ -Directive Name Description (Docutils version added to, in [brackets]) -================ ============================================================ -attention Specific admonition; also "caution", "danger", - "error", "hint", "important", "note", "tip", "warning" -admonition Generic titled admonition: ``.. admonition:: By The Way`` -image ``.. image:: picture.png``; many options possible -figure Like "image", but with optional caption and legend -topic ``.. topic:: Title``; like a mini section -sidebar ``.. sidebar:: Title``; like a mini parallel document -parsed-literal A literal block with parsed inline markup -rubric ``.. rubric:: Informal Heading`` -epigraph Block quote with class="epigraph" -highlights Block quote with class="highlights" -pull-quote Block quote with class="pull-quote" -compound Compound paragraphs [0.3.6] -container Generic block-level container element [0.3.10] -table Create a titled table [0.3.1] -list-table Create a table from a uniform two-level bullet list [0.3.8] -csv-table Create a table from CSV data (requires Python 2.3+) [0.3.4] -contents Generate a table of contents -sectnum Automatically number sections, subsections, etc. -header, footer Create document decorations [0.3.8] -target-notes Create an explicit footnote for each external target -meta HTML-specific metadata -include Read an external reST file as if it were inline -raw Non-reST data passed untouched to the Writer -replace Replacement text for substitution definitions -unicode Unicode character code conversion for substitution defs -date Generates today's date; for substitution defs -class Set a "class" attribute on the next element -role Create a custom interpreted text role [0.3.2] -default-role Set the default interpreted text role [0.3.10] -title Set the metadata document title [0.3.10] -================ ============================================================ - -Interpreted Text Role Quick Reference -===================================== -See for full info. - -================ ============================================================ -Role Name Description -================ ============================================================ -emphasis Equivalent to *emphasis* -literal Equivalent to ``literal`` but processes backslash escapes -PEP Reference to a numbered Python Enhancement Proposal -RFC Reference to a numbered Internet Request For Comments -raw For non-reST data; cannot be used directly (see docs) [0.3.6] -strong Equivalent to **strong** -sub Subscript -sup Superscript -title Title reference (book, etc.); standard default role -================ ============================================================ diff --git a/sheets/rst.page b/sheets/rst.page new file mode 100644 index 0000000..4714fe3 --- /dev/null +++ b/sheets/rst.page @@ -0,0 +1,127 @@ +===================================================== + The reStructuredText_ Cheat Sheet: Syntax Reminders +===================================================== +:Info: See for introductory docs. +:Author: David Goodger +:Date: $Date: 2006-01-23 02:13:55 +0100 (Mon, 23 Jan 2006) $ +:Revision: $Revision: 4321 $ +:Description: This is a "docinfo block", or bibliographic field list + +Section Structure +================= +Section titles are underlined or overlined & underlined. + +Body Elements +============= +Grid table: + ++--------------------------------+-----------------------------------+ +| Paragraphs are flush-left, | Literal block, preceded by "::":: | +| separated by blank lines. | | +| | Indented | +| Block quotes are indented. | | ++--------------------------------+ or:: | +| >>> print 'Doctest block' | | +| Doctest block | > Quoted | ++--------------------------------+-----------------------------------+ +| | Line blocks preserve line breaks & indents. [new in 0.3.6] | +| | Useful for addresses, verse, and adornment-free lists; long | +| lines can be wrapped with continuation lines. | ++--------------------------------------------------------------------+ + +Simple tables: + +================ ============================================================ +List Type Examples +================ ============================================================ +Bullet list * items begin with "-", "+", or "*" +Enumerated list 1. items use any variation of "1.", "A)", and "(i)" + #. also auto-enumerated +Definition list Term is flush-left : optional classifier + Definition is indented, no blank line between +Field list :field name: field body +Option list -o at least 2 spaces between option & description +================ ============================================================ + +================ ============================================================ +Explicit Markup Examples (visible in the `text source `_) +================ ============================================================ +Footnote .. [1] Manually numbered or [#] auto-numbered + (even [#labelled]) or [*] auto-symbol +Citation .. [CIT2002] A citation. +Hyperlink Target .. _reStructuredText: http://docutils.sf.net/rst.html + .. _indirect target: reStructuredText_ + .. _internal target: +Anonymous Target __ http://docutils.sf.net/docs/ref/rst/restructuredtext.html +Directive ("::") .. image:: fig/biohazard.png +Substitution Def .. |substitution| replace:: like an inline directive +Comment .. is anything else +Empty Comment (".." on a line by itself, with blank lines before & after, + used to separate indentation contexts) +================ ============================================================ + +Inline Markup +============= +*emphasis*; **strong emphasis**; `interpreted text`; `interpreted text +with role`:emphasis:; ``inline literal text``; standalone hyperlink, +http://docutils.sourceforge.net; named reference, reStructuredText_; +`anonymous reference`__; footnote reference, [1]_; citation reference, +[CIT2002]_; |substitution|; _`inline internal target`. + +Directive Quick Reference +========================= +See for full info. + +================ ============================================================ +Directive Name Description (Docutils version added to, in [brackets]) +================ ============================================================ +attention Specific admonition; also "caution", "danger", + "error", "hint", "important", "note", "tip", "warning" +admonition Generic titled admonition: ``.. admonition:: By The Way`` +image ``.. image:: picture.png``; many options possible +figure Like "image", but with optional caption and legend +topic ``.. topic:: Title``; like a mini section +sidebar ``.. sidebar:: Title``; like a mini parallel document +parsed-literal A literal block with parsed inline markup +rubric ``.. rubric:: Informal Heading`` +epigraph Block quote with class="epigraph" +highlights Block quote with class="highlights" +pull-quote Block quote with class="pull-quote" +compound Compound paragraphs [0.3.6] +container Generic block-level container element [0.3.10] +table Create a titled table [0.3.1] +list-table Create a table from a uniform two-level bullet list [0.3.8] +csv-table Create a table from CSV data (requires Python 2.3+) [0.3.4] +contents Generate a table of contents +sectnum Automatically number sections, subsections, etc. +header, footer Create document decorations [0.3.8] +target-notes Create an explicit footnote for each external target +meta HTML-specific metadata +include Read an external reST file as if it were inline +raw Non-reST data passed untouched to the Writer +replace Replacement text for substitution definitions +unicode Unicode character code conversion for substitution defs +date Generates today's date; for substitution defs +class Set a "class" attribute on the next element +role Create a custom interpreted text role [0.3.2] +default-role Set the default interpreted text role [0.3.10] +title Set the metadata document title [0.3.10] +================ ============================================================ + +Interpreted Text Role Quick Reference +===================================== +See for full info. + +================ ============================================================ +Role Name Description +================ ============================================================ +emphasis Equivalent to *emphasis* +literal Equivalent to ``literal`` but processes backslash escapes +PEP Reference to a numbered Python Enhancement Proposal +RFC Reference to a numbered Internet Request For Comments +raw For non-reST data; cannot be used directly (see docs) [0.3.6] +strong Equivalent to **strong** +sub Subscript +sup Superscript +title Title reference (book, etc.); standard default role +================ ============================================================ diff --git a/software/MOSS b/software/MOSS deleted file mode 100644 index 4de6d23..0000000 --- a/software/MOSS +++ /dev/null @@ -1,98 +0,0 @@ -==== -MOSS -==== --------------------------------- -Many User Operating System Stuff --------------------------------- - -:Author: Bryan Newbold - -Moss is a vague concept I have for an operating-system-like-system that -attempts to realize some of the promises of distributed universal computing -and user management, continuation-based serializable programming, persistent -data accessibility, file and process versioning, central foreign function -management, and code/content distribution. It'll be easy! - -.. topic:: Implementation - - Moss would probably start as "stuff": middleware, userland applications, - utilities, and native shell and GUI interfaces. It could also be a - separate hosted virtual machine, a monolithic application, a kernel - extension, or ultimately run alone over a high performance shim host OS. - - Distribution would be self hosting and viral: users would replicate a copy - of the system from a friend instead of from a central server, patches - and applications would be distributed word-of-mouth, and trust networks - would form naturally via this distribution. Customization and feature sets - would be passed on, which makes it likely that a user would receive a - system already tweaked for their own needs and computing knowledge level. - - *Existing Projects:* Inferno, Xen, vmware, Java, GNU/* - -.. topic:: Universal, distributed file system - - The core of the system would be a universally accessible identity-based - operating system. Some authoritive domain would probably be required, but - public identity brokers would allow anonymous identities. "Strong - Cryptography" is a goal, allowing a user's content to be hosted/cached - on third party machines in an encrypted form. The real challenge of course - is a flexible crypto system than can be transitioned or upgraded if a flaw - is discovered without total data loss. - - My dream path would look something like:: - - /net/user@some.domain.tld/media/ledzep/tangerine.mp3 - - From the application end there would be no concept of "local" or "remote" - files to a particular machine, though perhaps some feedback on access time. - So, for instance, once tokens/authentication is handled, user utilities - like ``mv`` or ``cat`` could be applied, instead of ``scp`` or ``rcat``. - - Versioning, write locks, etc would have to be considered. - - *Existing projects:* OpenAFS, freeNet, ssh, kerberos, git - -.. topic:: Serializable Programs - - The state/continuation/environment of a running program or chain of - programs should be a "first level object": a bundle of data like any other - that can be transmitted, copied, and stored away for later. A user should - be able to drag an entire application running on a desktop computer - onto their laptop when then need to travel, or from laptop to workstation - if then need additional computing power. Distributed computing could be - implemented by bundling up applets that are shot off to a cluster or - higher performance computer for processing, and the result state of the - program would simply be bundled back to the requesting client. Such bundles - wouldn't be very large: data would be stored on the distributed filesystem, - which appears identical (*exactly?*) to every node on the network. - - Properly written, such a serializable system could also lead to performance - and power consumption savings by swapping idle programs and processes to - disk, or let low-usage nodes shift their processes off to other nodes - and power down. - - *Existing Projects:* Lisp, Stackless - -.. topic:: Foreign Function Management - - It would be nice to see a move away from the library model for shared - code to a more flexible/dynamic foreign function interface that would - allow any appropriate code to announce its availability to other - applications regardless of version, platform, coding language, etc. - This would be a high-level feature, not intended to replace kernel level - operations (read/write) but to make package/library management easier - (it doesn't matter if an image conversion function is coming from a video - editing package or libpng as long as it reads a raw array and returns - a binary stream). - - There's room for dynamic optimization here: if program - realizes it's native string manipulation library sucks for 5meg+ datasets - it could look through the library and see if there's a better one. - - *And,* this too could be distributed, allowing super easy access to - distributed computing resources; underutilized nodes could make their - functions available to nearby nodes, or a machine with tons of matrix - crunching silicon (eg high end video cards) could swap work units - with a machine with a dedicated crypto chip or 64bit+ processor. - - *Existing Projects:* Script-fu from the Gimp diff --git a/software/MOSS.page b/software/MOSS.page new file mode 100644 index 0000000..4de6d23 --- /dev/null +++ b/software/MOSS.page @@ -0,0 +1,98 @@ +==== +MOSS +==== +-------------------------------- +Many User Operating System Stuff +-------------------------------- + +:Author: Bryan Newbold + +Moss is a vague concept I have for an operating-system-like-system that +attempts to realize some of the promises of distributed universal computing +and user management, continuation-based serializable programming, persistent +data accessibility, file and process versioning, central foreign function +management, and code/content distribution. It'll be easy! + +.. topic:: Implementation + + Moss would probably start as "stuff": middleware, userland applications, + utilities, and native shell and GUI interfaces. It could also be a + separate hosted virtual machine, a monolithic application, a kernel + extension, or ultimately run alone over a high performance shim host OS. + + Distribution would be self hosting and viral: users would replicate a copy + of the system from a friend instead of from a central server, patches + and applications would be distributed word-of-mouth, and trust networks + would form naturally via this distribution. Customization and feature sets + would be passed on, which makes it likely that a user would receive a + system already tweaked for their own needs and computing knowledge level. + + *Existing Projects:* Inferno, Xen, vmware, Java, GNU/* + +.. topic:: Universal, distributed file system + + The core of the system would be a universally accessible identity-based + operating system. Some authoritive domain would probably be required, but + public identity brokers would allow anonymous identities. "Strong + Cryptography" is a goal, allowing a user's content to be hosted/cached + on third party machines in an encrypted form. The real challenge of course + is a flexible crypto system than can be transitioned or upgraded if a flaw + is discovered without total data loss. + + My dream path would look something like:: + + /net/user@some.domain.tld/media/ledzep/tangerine.mp3 + + From the application end there would be no concept of "local" or "remote" + files to a particular machine, though perhaps some feedback on access time. + So, for instance, once tokens/authentication is handled, user utilities + like ``mv`` or ``cat`` could be applied, instead of ``scp`` or ``rcat``. + + Versioning, write locks, etc would have to be considered. + + *Existing projects:* OpenAFS, freeNet, ssh, kerberos, git + +.. topic:: Serializable Programs + + The state/continuation/environment of a running program or chain of + programs should be a "first level object": a bundle of data like any other + that can be transmitted, copied, and stored away for later. A user should + be able to drag an entire application running on a desktop computer + onto their laptop when then need to travel, or from laptop to workstation + if then need additional computing power. Distributed computing could be + implemented by bundling up applets that are shot off to a cluster or + higher performance computer for processing, and the result state of the + program would simply be bundled back to the requesting client. Such bundles + wouldn't be very large: data would be stored on the distributed filesystem, + which appears identical (*exactly?*) to every node on the network. + + Properly written, such a serializable system could also lead to performance + and power consumption savings by swapping idle programs and processes to + disk, or let low-usage nodes shift their processes off to other nodes + and power down. + + *Existing Projects:* Lisp, Stackless + +.. topic:: Foreign Function Management + + It would be nice to see a move away from the library model for shared + code to a more flexible/dynamic foreign function interface that would + allow any appropriate code to announce its availability to other + applications regardless of version, platform, coding language, etc. + This would be a high-level feature, not intended to replace kernel level + operations (read/write) but to make package/library management easier + (it doesn't matter if an image conversion function is coming from a video + editing package or libpng as long as it reads a raw array and returns + a binary stream). + + There's room for dynamic optimization here: if program + realizes it's native string manipulation library sucks for 5meg+ datasets + it could look through the library and see if there's a better one. + + *And,* this too could be distributed, allowing super easy access to + distributed computing resources; underutilized nodes could make their + functions available to nearby nodes, or a machine with tons of matrix + crunching silicon (eg high end video cards) could swap work units + with a machine with a dedicated crypto chip or 64bit+ processor. + + *Existing Projects:* Script-fu from the Gimp diff --git a/software/bash b/software/bash deleted file mode 100644 index e3402fb..0000000 --- a/software/bash +++ /dev/null @@ -1,6 +0,0 @@ -================== -BASH -================== - -Job Control - The syntax for "job number" or "JOBSPEC" (when using ``kill`` or similar) is ``%4`` or ``%5``. diff --git a/software/bash.page b/software/bash.page new file mode 100644 index 0000000..e3402fb --- /dev/null +++ b/software/bash.page @@ -0,0 +1,6 @@ +================== +BASH +================== + +Job Control + The syntax for "job number" or "JOBSPEC" (when using ``kill`` or similar) is ``%4`` or ``%5``. diff --git a/software/debian b/software/debian deleted file mode 100644 index d7a047b..0000000 --- a/software/debian +++ /dev/null @@ -1,40 +0,0 @@ -=========================== -Debian Linux -=========================== - -See also `freebsd `_ and -`unix `_ tricks. - -Some gotchas from installing debian a few times: - - * To enable sshd in ubuntu install ``openssh-server`` - - * Massive ``ssh`` headache issues from around 2007-2008; make sure to check on - these. - - * ``git`` is not what you want; you want ``git-core`` - - * Python transition should be better, but I couldn't find a way. - To get to python 2.5 on etch, do something like:: - - Edit /usr/share/python/debian_defaults to this Code: - - # the default python version - default-version = python2.5 - # all supported python versions - supported-versions = python2.4, python2.5 - # formerly supported python versions - old-versions = python2.3 - # unsupported versions, including older versions - unsupported-versions = python2.3 - - Then sudo pycentral updatedefault python2.4 python2.5 - And change the symlink /usr/bin/python to point to python2.5 - - * Make sure to install things like bzip2, unzip, less, etc - - * ``bash`` by default takes a very long time to initialize because the - auto-completion scripts are loaded multiple times; disable this in - ``~/.bashrc``? - - * For building stuff you want build-essential diff --git a/software/debian.page b/software/debian.page new file mode 100644 index 0000000..d7a047b --- /dev/null +++ b/software/debian.page @@ -0,0 +1,40 @@ +=========================== +Debian Linux +=========================== + +See also `freebsd `_ and +`unix `_ tricks. + +Some gotchas from installing debian a few times: + + * To enable sshd in ubuntu install ``openssh-server`` + + * Massive ``ssh`` headache issues from around 2007-2008; make sure to check on + these. + + * ``git`` is not what you want; you want ``git-core`` + + * Python transition should be better, but I couldn't find a way. + To get to python 2.5 on etch, do something like:: + + Edit /usr/share/python/debian_defaults to this Code: + + # the default python version + default-version = python2.5 + # all supported python versions + supported-versions = python2.4, python2.5 + # formerly supported python versions + old-versions = python2.3 + # unsupported versions, including older versions + unsupported-versions = python2.3 + + Then sudo pycentral updatedefault python2.4 python2.5 + And change the symlink /usr/bin/python to point to python2.5 + + * Make sure to install things like bzip2, unzip, less, etc + + * ``bash`` by default takes a very long time to initialize because the + auto-completion scripts are loaded multiple times; disable this in + ``~/.bashrc``? + + * For building stuff you want build-essential diff --git a/software/firefox-tricks b/software/firefox-tricks deleted file mode 100644 index 7eae670..0000000 --- a/software/firefox-tricks +++ /dev/null @@ -1,16 +0,0 @@ -===================================== -Firefox Tricks -===================================== - -Backspace "Go Back" ----------------------- - -Go to ``about:config`` (as if it was a URL), search for "backspace", and set -``browser.backspace_action`` to ``0``. - -Extensions ----------------------- - -BugMeNot is great. - -Firebug is very useful but tends to be a resource hog. diff --git a/software/firefox-tricks.page b/software/firefox-tricks.page new file mode 100644 index 0000000..7eae670 --- /dev/null +++ b/software/firefox-tricks.page @@ -0,0 +1,16 @@ +===================================== +Firefox Tricks +===================================== + +Backspace "Go Back" +---------------------- + +Go to ``about:config`` (as if it was a URL), search for "backspace", and set +``browser.backspace_action`` to ``0``. + +Extensions +---------------------- + +BugMeNot is great. + +Firebug is very useful but tends to be a resource hog. diff --git a/software/freebsd-packages b/software/freebsd-packages deleted file mode 100644 index c58bea4..0000000 --- a/software/freebsd-packages +++ /dev/null @@ -1,63 +0,0 @@ -======================== -FreeBSD Packages -======================== - -These are the packages I typically install for a workstation; this is after selecting an "X windows kernel developer" base system with ``sshd``, linux binary support, and NTP configured:: - - bash - vim - xmms-wma - xmms-flac - xmms-faad2 - xmms - unzip - bzip2 - emacs - mplayer - pork - xpdf - ctorrent - teTeX - ipython-py25 - nginx - firefox - fluxbox - git - subversion - alpine - screen - python - vlc - xzgc - lyx - wget - e2fsprogs - gtkchtheme - -The following are large and/or "optional":: - - xfce - apache - py25-matplotlib - py25-scipy - py-numpy - gimp - mit-scheme - eclipse - pidgin - -The following are added by download:: - - java ("Diablo Latte" jdk from FreeBSD Foundation) - -Bulk Installation ------------------ - -``pkg_add`` will fail with a ``getcwd`` error if you try to install many -packages with the same command. Instead, once you have ``bash`` installed, -you want to do something like:: - - $ for i in `echo vim screen python blah blah blah`; do pkg_add -r $i; done - -Note that with many packages it's almost impossible to avoid installing X -windows; I think there's a flag for this somewhere. diff --git a/software/freebsd-packages.page b/software/freebsd-packages.page new file mode 100644 index 0000000..c58bea4 --- /dev/null +++ b/software/freebsd-packages.page @@ -0,0 +1,63 @@ +======================== +FreeBSD Packages +======================== + +These are the packages I typically install for a workstation; this is after selecting an "X windows kernel developer" base system with ``sshd``, linux binary support, and NTP configured:: + + bash + vim + xmms-wma + xmms-flac + xmms-faad2 + xmms + unzip + bzip2 + emacs + mplayer + pork + xpdf + ctorrent + teTeX + ipython-py25 + nginx + firefox + fluxbox + git + subversion + alpine + screen + python + vlc + xzgc + lyx + wget + e2fsprogs + gtkchtheme + +The following are large and/or "optional":: + + xfce + apache + py25-matplotlib + py25-scipy + py-numpy + gimp + mit-scheme + eclipse + pidgin + +The following are added by download:: + + java ("Diablo Latte" jdk from FreeBSD Foundation) + +Bulk Installation +----------------- + +``pkg_add`` will fail with a ``getcwd`` error if you try to install many +packages with the same command. Instead, once you have ``bash`` installed, +you want to do something like:: + + $ for i in `echo vim screen python blah blah blah`; do pkg_add -r $i; done + +Note that with many packages it's almost impossible to avoid installing X +windows; I think there's a flag for this somewhere. diff --git a/software/freebsd-tricks b/software/freebsd-tricks deleted file mode 100644 index bd36ff1..0000000 --- a/software/freebsd-tricks +++ /dev/null @@ -1,24 +0,0 @@ -===================================== -FreeBSD Tricks -===================================== - -See also `unix `_ and -`debian `_ tricks. - -Set User Shell ------------------------ -``bash`` isn't always installed, so the default user shell is ``sh``; after -``bash`` is installed, a user can change their login shell with the command: - -$ chsh -s /usr/local/bin/bash - -Burn an ISO image ------------------------ -To burn a CD-R, use ``burncd`` like so:: - -$ burncd -f /dev/acd0 data FILENAME.iso fixate - -Network Tools ----------------------- - -``iftop`` is great. diff --git a/software/freebsd-tricks.page b/software/freebsd-tricks.page new file mode 100644 index 0000000..bd36ff1 --- /dev/null +++ b/software/freebsd-tricks.page @@ -0,0 +1,24 @@ +===================================== +FreeBSD Tricks +===================================== + +See also `unix `_ and +`debian `_ tricks. + +Set User Shell +----------------------- +``bash`` isn't always installed, so the default user shell is ``sh``; after +``bash`` is installed, a user can change their login shell with the command: + +$ chsh -s /usr/local/bin/bash + +Burn an ISO image +----------------------- +To burn a CD-R, use ``burncd`` like so:: + +$ burncd -f /dev/acd0 data FILENAME.iso fixate + +Network Tools +---------------------- + +``iftop`` is great. diff --git a/software/functional programming b/software/functional programming deleted file mode 100644 index 4720280..0000000 --- a/software/functional programming +++ /dev/null @@ -1,52 +0,0 @@ -=================================== -Functional Programming -=================================== - -Recursion --------------- -**Partial** functions can recurse endlessly over a finite input. **Total** -functions will terminate/halt over a finite input. (TODO: check this -definition) - -Collectors --------------- -The collector concept/pattern/paradigm is the one I am least familiar with -in functional programming. - -My current understanding is that they essentially allow allow recursive -functions to maintain something like state by wrapping immutable functions -or variables in layer after layer of functions and just holding on to -the outermost layer. For instance, the typical way to write a ``length`` -function in python would be:: - ->>> def how-long(x): ->>> l = 0 ->>> while x.has_next() ->>> l = l+1; ->>> x.pop() ->>> return l - -Using recursion, we could do:: - ->>> def how-long-recurse(x): ->>> if x.has_next() ->>> x.pop() ->>> return how-long-recurse(x) + 1 ->>> else ->>> return 0 - -Using the collector paradigm, we could do:: - ->>> def add1(x): return a+1; ->>> def how-long-col(x, col): ->>> if x.has_next() ->>> return col(0) ->>> else ->>> x.pop() ->>> return how-long-col(x, lambda a: col(add1(a))) - -The first two ways, the plus one operation is actually executed at any given -time, while with the collector implementation we're really creating a -function step by step which will give the answer at the end when it is all -executed. - diff --git a/software/functional programming.page b/software/functional programming.page new file mode 100644 index 0000000..4720280 --- /dev/null +++ b/software/functional programming.page @@ -0,0 +1,52 @@ +=================================== +Functional Programming +=================================== + +Recursion +-------------- +**Partial** functions can recurse endlessly over a finite input. **Total** +functions will terminate/halt over a finite input. (TODO: check this +definition) + +Collectors +-------------- +The collector concept/pattern/paradigm is the one I am least familiar with +in functional programming. + +My current understanding is that they essentially allow allow recursive +functions to maintain something like state by wrapping immutable functions +or variables in layer after layer of functions and just holding on to +the outermost layer. For instance, the typical way to write a ``length`` +function in python would be:: + +>>> def how-long(x): +>>> l = 0 +>>> while x.has_next() +>>> l = l+1; +>>> x.pop() +>>> return l + +Using recursion, we could do:: + +>>> def how-long-recurse(x): +>>> if x.has_next() +>>> x.pop() +>>> return how-long-recurse(x) + 1 +>>> else +>>> return 0 + +Using the collector paradigm, we could do:: + +>>> def add1(x): return a+1; +>>> def how-long-col(x, col): +>>> if x.has_next() +>>> return col(0) +>>> else +>>> x.pop() +>>> return how-long-col(x, lambda a: col(add1(a))) + +The first two ways, the plus one operation is actually executed at any given +time, while with the collector implementation we're really creating a +function step by step which will give the answer at the end when it is all +executed. + diff --git a/software/gimp b/software/gimp deleted file mode 100644 index 97d7393..0000000 --- a/software/gimp +++ /dev/null @@ -1,19 +0,0 @@ -====================== -The Gimp -====================== - -How to Sharpen Photos ----------------------------- -First decompose the image into HSV: Colors/Compose.../Decompose. Select -"HSV" from the list and "Decompose to Layers". This will make a new image -(close the original). - -Select the "Value" layer for editing (so that colors aren't affected). The -"Unsharped Mask" filter is under Filters/Enhance. - -Radius is how many pixels to select, amount is the strength of the filter, -and threshold allows parts of the image to be ignored. - -After applying the filter go back to Colors/Compose.../Compose and select -HSV again to regenerate the color image. - diff --git a/software/gimp.page b/software/gimp.page new file mode 100644 index 0000000..97d7393 --- /dev/null +++ b/software/gimp.page @@ -0,0 +1,19 @@ +====================== +The Gimp +====================== + +How to Sharpen Photos +---------------------------- +First decompose the image into HSV: Colors/Compose.../Decompose. Select +"HSV" from the list and "Decompose to Layers". This will make a new image +(close the original). + +Select the "Value" layer for editing (so that colors aren't affected). The +"Unsharped Mask" filter is under Filters/Enhance. + +Radius is how many pixels to select, amount is the strength of the filter, +and threshold allows parts of the image to be ignored. + +After applying the filter go back to Colors/Compose.../Compose and select +HSV again to regenerate the color image. + diff --git a/software/git b/software/git deleted file mode 100644 index cd0da69..0000000 --- a/software/git +++ /dev/null @@ -1,7 +0,0 @@ -======================= -Git -======================= - -Quick tip: when you have ``.gitignore`` ignoring everything (with a ``*`` -entry), you need to use ``git-update-index --add FILE`` to actually add the -file, instead of just ``git-add FILE``. diff --git a/software/git.page b/software/git.page new file mode 100644 index 0000000..cd0da69 --- /dev/null +++ b/software/git.page @@ -0,0 +1,7 @@ +======================= +Git +======================= + +Quick tip: when you have ``.gitignore`` ignoring everything (with a ``*`` +entry), you need to use ``git-update-index --add FILE`` to actually add the +file, instead of just ``git-add FILE``. diff --git a/software/grub-boot b/software/grub-boot deleted file mode 100644 index 76c4f7b..0000000 --- a/software/grub-boot +++ /dev/null @@ -1,17 +0,0 @@ -================== -GRUB Boot -================== - -This is useful for, eg, installing debian over the network with no cd drive or -usb stick. - -Download the appropriate initrd.gz and linux kernels from whatever netboot -intallation location (two seperate files), and put them somewhere like -``/boot/install/``. Then edit ``/boot/grub/menu.lst`` and add an entry like:: - - title new install - root (hd0,0) - kernel /boot/install/linux ramdisk_size=128000 root=/dev/rd/0 rw - initrd /boot/install/initrd.gz - -Edit the ramdisk size, ramdisk device path, etc as needed. diff --git a/software/grub-boot.page b/software/grub-boot.page new file mode 100644 index 0000000..76c4f7b --- /dev/null +++ b/software/grub-boot.page @@ -0,0 +1,17 @@ +================== +GRUB Boot +================== + +This is useful for, eg, installing debian over the network with no cd drive or +usb stick. + +Download the appropriate initrd.gz and linux kernels from whatever netboot +intallation location (two seperate files), and put them somewhere like +``/boot/install/``. Then edit ``/boot/grub/menu.lst`` and add an entry like:: + + title new install + root (hd0,0) + kernel /boot/install/linux ramdisk_size=128000 root=/dev/rd/0 rw + initrd /boot/install/initrd.gz + +Edit the ramdisk size, ramdisk device path, etc as needed. diff --git a/software/matlab b/software/matlab deleted file mode 100644 index 20e7110..0000000 --- a/software/matlab +++ /dev/null @@ -1,39 +0,0 @@ -================== -Matlab -================== - -.. warning:: - Stub, just getting started - -`cyclismo.org `_ has a good tutorial. - -Matrix Syntax ------------------- -A = [1,2,3,4] - creates a new matrix -A(1) - selects the first element of a matrix, **zero-indexed** -B = [ [1,2,3], [4,5,6], [7,8,9] ] - creates a one dimensional matrix - -:: - - B = [ [1,2,3], - [4,5,6], - [7,8,9] ] - - creates a two dimensional matrix - -Matrix Operations ------------------- -``inv`` - inverts a square matrix - -Meta-Commands ------------------- -Placing a semicolon at the end of a line prevents the output from being printed to screen. - -``whos`` - Displays variables and their size -``format long``/``format short`` - Selects either 4 or 14 decimal place display diff --git a/software/matlab.page b/software/matlab.page new file mode 100644 index 0000000..20e7110 --- /dev/null +++ b/software/matlab.page @@ -0,0 +1,39 @@ +================== +Matlab +================== + +.. warning:: + Stub, just getting started + +`cyclismo.org `_ has a good tutorial. + +Matrix Syntax +------------------ +A = [1,2,3,4] + creates a new matrix +A(1) + selects the first element of a matrix, **zero-indexed** +B = [ [1,2,3], [4,5,6], [7,8,9] ] + creates a one dimensional matrix + +:: + + B = [ [1,2,3], + [4,5,6], + [7,8,9] ] + + creates a two dimensional matrix + +Matrix Operations +------------------ +``inv`` + inverts a square matrix + +Meta-Commands +------------------ +Placing a semicolon at the end of a line prevents the output from being printed to screen. + +``whos`` + Displays variables and their size +``format long``/``format short`` + Selects either 4 or 14 decimal place display diff --git a/software/pynsfs b/software/pynsfs deleted file mode 100644 index 08b726d..0000000 --- a/software/pynsfs +++ /dev/null @@ -1,150 +0,0 @@ -============================================= -Python Namespace File System -============================================= - -:Author: Bryan Newbold -:Date: July 2008 -:URL: http://git.bnewbold.net?p=pynsfs.git;a=summary - -.. contents:: - -This is an experimental implementation of a python namespace as a virtual -file system, implemented using the python bindings for fusefs on unix. - -At this point only the global namespace of the filesystem instance itself is -accessible, and only limited access is available to that. If anything goes -wrong it can cause a hard lock and system crash; don't leave it running and -don't try to write anything substantial. - -The source code can be checked out from the above URL. - -Features ---------------- -An example session goes like:: - - snark# ls /mnt/python/ - - snark# python nsfs.py /mnt/python/ - *** init complete - let's go! - - snark# cd /mnt/python/ - - snark# ls -l - total 6 - -r--r--r-- 1 root wheel 30 Dec 31 1969 DefaultStat - -r--r--r-- 1 root wheel 33 Dec 31 1969 DefaultStatVfs - -r--r--r-- 1 root wheel 19 Dec 31 1969 Fuse - -r--r--r-- 1 root wheel 30 Dec 31 1969 NamespaceFS - -r--r--r-- 1 root wheel 27 Dec 31 1969 NsfsFile - -r--r--r-- 1 root wheel 17 Dec 31 1969 StringIO - drwxr-xr-x 2 root wheel 0 Dec 31 1969 __builtins__ - -r--r--r-- 1 root wheel 4 Dec 31 1969 __doc__ - -r--r--r-- 1 root wheel 7 Dec 31 1969 __file__ - -r--r--r-- 1 root wheel 8 Dec 31 1969 __name__ - drwxr-xr-x 2 root wheel 0 Dec 31 1969 _find_fuse_parts - drwxr-xr-x 2 root wheel 0 Dec 31 1969 errno - drwxr-xr-x 2 root wheel 0 Dec 31 1969 fuse - -r--r--r-- 1 root wheel 29 Dec 31 1969 main - drwxr-xr-x 2 root wheel 0 Dec 31 1969 os - drwxr-xr-x 2 root wheel 0 Dec 31 1969 stat - -r--r--r-- 1 root wheel 24 Dec 31 1969 time - - snark# ls stat/ - ST_ATIME S_ENFMT S_IMODE S_ISDIR S_IWRITE - ST_CTIME S_IEXEC S_IREAD S_ISFIFO S_IWUSR - ST_DEV S_IFBLK S_IRGRP S_ISGID S_IXGRP - ST_GID S_IFCHR S_IROTH S_ISLNK S_IXOTH - ST_INO S_IFDIR S_IRUSR S_ISREG S_IXUSR - ST_MODE S_IFIFO S_IRWXG S_ISSOCK __builtins__ - ST_MTIME S_IFLNK S_IRWXO S_ISUID __doc__ - ST_NLINK S_IFMT S_IRWXU S_ISVTX __file__ - ST_SIZE S_IFREG S_ISBLK S_IWGRP __name__ - ST_UID S_IFSOCK S_ISCHR S_IWOTH - - snark# cat time - - - snark# echo " Hello Python" >> os/__name__ - - snark# cat os/__name__ - os Hello Python - - snark# rm time - - snark# ls - DefaultStat __builtins__ fuse - DefaultStatVfs __doc__ main - Fuse __file__ os - NamespaceFS __name__ stat - NsfsFile _find_fuse_parts - StringIO errno - - snark# ln __nameofos__ os/__name__ - ln: __nameofos__: No such file or directory - - snark# ln os/__name__ __nameofos__ - - snark# cat __nameofos__ - os Hello Python - - snark# cd .. - - snark# umount /mnt/python/ - -The root directory is the global namespace; modules are available as -subdirectories and all other objects are accessible as files. Strings can -be appended to; all other "files" are readonly and return their string -representation. "Files" can be deleted; "directories" can not. Hard links to -files are possible. - -Requirements ---------------- - -This was developed and has only been tested on FreeBSD 7.0 with Python 2.5.1 -version 0.2 of the python-fuse bindings. - -* `FUSE Filesystem`__ installed and configured on a compatible operating system -* Recent version of Python__ -* `FUSE Python Bindings`__ - -Once everything is installed and configured, the script can just be run -as root; no installation necessary. - -__ http://fuse.sourceforge.net/ -__ http://python.org -__ http://fuse.sourceforge.net/wiki/index.php/FusePython - -Usage --------------- -Try ``# python nsfs.py -h`` to get a list of general FUSE options. A simple -mount command would look like:: - - # python nsfs.py /mnt/python - -To unmount:: - - # umount /mnt/python - -I like to run in foreground, single threaded, with debug info:: - - # python nsfs.py -dsf /mnt/python - -Really only basic command line tools work because they don't check for many -attributes; try ``echo "blah" >> file``, ``cat file``, ``df -h``, ``ls -l`` etc. - -TODO ------------------------ -Functions taking simple arguments (or no arguments) could be implemented as -character devices; ``function_name.doc``, ``function_name.repr``, etc could -give meta-information. - -File of the form ``__thing__`` should be renamed ``.thing``. - -New files should be allowed and saved as strings. - -CHANGELOG ------------------------ - -July 28, 2008 - First implementation diff --git a/software/pynsfs.page b/software/pynsfs.page new file mode 100644 index 0000000..08b726d --- /dev/null +++ b/software/pynsfs.page @@ -0,0 +1,150 @@ +============================================= +Python Namespace File System +============================================= + +:Author: Bryan Newbold +:Date: July 2008 +:URL: http://git.bnewbold.net?p=pynsfs.git;a=summary + +.. contents:: + +This is an experimental implementation of a python namespace as a virtual +file system, implemented using the python bindings for fusefs on unix. + +At this point only the global namespace of the filesystem instance itself is +accessible, and only limited access is available to that. If anything goes +wrong it can cause a hard lock and system crash; don't leave it running and +don't try to write anything substantial. + +The source code can be checked out from the above URL. + +Features +--------------- +An example session goes like:: + + snark# ls /mnt/python/ + + snark# python nsfs.py /mnt/python/ + *** init complete + let's go! + + snark# cd /mnt/python/ + + snark# ls -l + total 6 + -r--r--r-- 1 root wheel 30 Dec 31 1969 DefaultStat + -r--r--r-- 1 root wheel 33 Dec 31 1969 DefaultStatVfs + -r--r--r-- 1 root wheel 19 Dec 31 1969 Fuse + -r--r--r-- 1 root wheel 30 Dec 31 1969 NamespaceFS + -r--r--r-- 1 root wheel 27 Dec 31 1969 NsfsFile + -r--r--r-- 1 root wheel 17 Dec 31 1969 StringIO + drwxr-xr-x 2 root wheel 0 Dec 31 1969 __builtins__ + -r--r--r-- 1 root wheel 4 Dec 31 1969 __doc__ + -r--r--r-- 1 root wheel 7 Dec 31 1969 __file__ + -r--r--r-- 1 root wheel 8 Dec 31 1969 __name__ + drwxr-xr-x 2 root wheel 0 Dec 31 1969 _find_fuse_parts + drwxr-xr-x 2 root wheel 0 Dec 31 1969 errno + drwxr-xr-x 2 root wheel 0 Dec 31 1969 fuse + -r--r--r-- 1 root wheel 29 Dec 31 1969 main + drwxr-xr-x 2 root wheel 0 Dec 31 1969 os + drwxr-xr-x 2 root wheel 0 Dec 31 1969 stat + -r--r--r-- 1 root wheel 24 Dec 31 1969 time + + snark# ls stat/ + ST_ATIME S_ENFMT S_IMODE S_ISDIR S_IWRITE + ST_CTIME S_IEXEC S_IREAD S_ISFIFO S_IWUSR + ST_DEV S_IFBLK S_IRGRP S_ISGID S_IXGRP + ST_GID S_IFCHR S_IROTH S_ISLNK S_IXOTH + ST_INO S_IFDIR S_IRUSR S_ISREG S_IXUSR + ST_MODE S_IFIFO S_IRWXG S_ISSOCK __builtins__ + ST_MTIME S_IFLNK S_IRWXO S_ISUID __doc__ + ST_NLINK S_IFMT S_IRWXU S_ISVTX __file__ + ST_SIZE S_IFREG S_ISBLK S_IWGRP __name__ + ST_UID S_IFSOCK S_ISCHR S_IWOTH + + snark# cat time + + + snark# echo " Hello Python" >> os/__name__ + + snark# cat os/__name__ + os Hello Python + + snark# rm time + + snark# ls + DefaultStat __builtins__ fuse + DefaultStatVfs __doc__ main + Fuse __file__ os + NamespaceFS __name__ stat + NsfsFile _find_fuse_parts + StringIO errno + + snark# ln __nameofos__ os/__name__ + ln: __nameofos__: No such file or directory + + snark# ln os/__name__ __nameofos__ + + snark# cat __nameofos__ + os Hello Python + + snark# cd .. + + snark# umount /mnt/python/ + +The root directory is the global namespace; modules are available as +subdirectories and all other objects are accessible as files. Strings can +be appended to; all other "files" are readonly and return their string +representation. "Files" can be deleted; "directories" can not. Hard links to +files are possible. + +Requirements +--------------- + +This was developed and has only been tested on FreeBSD 7.0 with Python 2.5.1 +version 0.2 of the python-fuse bindings. + +* `FUSE Filesystem`__ installed and configured on a compatible operating system +* Recent version of Python__ +* `FUSE Python Bindings`__ + +Once everything is installed and configured, the script can just be run +as root; no installation necessary. + +__ http://fuse.sourceforge.net/ +__ http://python.org +__ http://fuse.sourceforge.net/wiki/index.php/FusePython + +Usage +-------------- +Try ``# python nsfs.py -h`` to get a list of general FUSE options. A simple +mount command would look like:: + + # python nsfs.py /mnt/python + +To unmount:: + + # umount /mnt/python + +I like to run in foreground, single threaded, with debug info:: + + # python nsfs.py -dsf /mnt/python + +Really only basic command line tools work because they don't check for many +attributes; try ``echo "blah" >> file``, ``cat file``, ``df -h``, ``ls -l`` etc. + +TODO +----------------------- +Functions taking simple arguments (or no arguments) could be implemented as +character devices; ``function_name.doc``, ``function_name.repr``, etc could +give meta-information. + +File of the form ``__thing__`` should be renamed ``.thing``. + +New files should be allowed and saved as strings. + +CHANGELOG +----------------------- + +July 28, 2008 + First implementation diff --git a/software/ruby b/software/ruby deleted file mode 100644 index e64f73e..0000000 --- a/software/ruby +++ /dev/null @@ -1,67 +0,0 @@ -================== -Ruby -================== - -.. note:: This information is very rough, it's mostly my notes about what is - different about Ruby syntax compared to similar modern interpreted - pan-paradigm languages like Python. - -A unique intro to ruby is `"Why's Poignant Guide to Ruby"`__, a web-comic-y -short free online book by why the luck stiff. The more serious reference is -the "pickax" book. - -__ http://poignantguide.net/ - -Blocks ---------- -Blocks of code can be passed to functions, making ruby code more of a first -order data type. - -Ranges ----------- - ->>> 2..7 # => 2..7 ->>> (2..7).to_a # => [2, 3, 4, 5, 6, 7] ->>> (2...7).to_a # => [2, 3, 4, 5, 6] ->>> ('e'..'h').to_a # => ["e", "f", "g", "h"] - -Control Structures --------------------- -Can use ``if`` after a statement:: - ->>> a = c if c > b - -Along with the usual ``break`` and ``next``, there is ``redo`` which redoes -the current loop (initial conditions may have been changed). - - -Boolean Operators --------------------- -Anything that is not ``nill`` or ``false`` is true. To force interpretation -as boolean, use ``!!`` (not not):: - ->>> !!(nil) # => false ->>> !!(true) # => true ->>> !!('') # => true ->>> !!(0) # => true ->>> !!({}) # => true - - -Misc ----------------- -Can use nasty Perl style regular expression stuff:: - ->>> re1 = /\d+/ ->>> "There are 5 kilos of chunky bacon on the table!" =~ re1 # => 10, the index ->>> $~ # => # ->>> $~.pre_hash # => "There are " - -Also $1, $2, etc. - -The "splat operator", '*', either collects or expands extra arguments depending -on syntax (I think this is kind of icky):: - ->>> a, b = 1, 2, 3, 4 # a=1, b=2 ->>> a, *b = 1, 2, 3, 4 # a=1, b=[2,3,4] ->>> c, d = 5, [6, 7, 8] # c=5, d=[6,7,8] ->>> c, d = 5, *[6, 7, 8] # c=5, b=6 diff --git a/software/ruby.page b/software/ruby.page new file mode 100644 index 0000000..e64f73e --- /dev/null +++ b/software/ruby.page @@ -0,0 +1,67 @@ +================== +Ruby +================== + +.. note:: This information is very rough, it's mostly my notes about what is + different about Ruby syntax compared to similar modern interpreted + pan-paradigm languages like Python. + +A unique intro to ruby is `"Why's Poignant Guide to Ruby"`__, a web-comic-y +short free online book by why the luck stiff. The more serious reference is +the "pickax" book. + +__ http://poignantguide.net/ + +Blocks +--------- +Blocks of code can be passed to functions, making ruby code more of a first +order data type. + +Ranges +---------- + +>>> 2..7 # => 2..7 +>>> (2..7).to_a # => [2, 3, 4, 5, 6, 7] +>>> (2...7).to_a # => [2, 3, 4, 5, 6] +>>> ('e'..'h').to_a # => ["e", "f", "g", "h"] + +Control Structures +-------------------- +Can use ``if`` after a statement:: + +>>> a = c if c > b + +Along with the usual ``break`` and ``next``, there is ``redo`` which redoes +the current loop (initial conditions may have been changed). + + +Boolean Operators +-------------------- +Anything that is not ``nill`` or ``false`` is true. To force interpretation +as boolean, use ``!!`` (not not):: + +>>> !!(nil) # => false +>>> !!(true) # => true +>>> !!('') # => true +>>> !!(0) # => true +>>> !!({}) # => true + + +Misc +---------------- +Can use nasty Perl style regular expression stuff:: + +>>> re1 = /\d+/ +>>> "There are 5 kilos of chunky bacon on the table!" =~ re1 # => 10, the index +>>> $~ # => # +>>> $~.pre_hash # => "There are " + +Also $1, $2, etc. + +The "splat operator", '*', either collects or expands extra arguments depending +on syntax (I think this is kind of icky):: + +>>> a, b = 1, 2, 3, 4 # a=1, b=2 +>>> a, *b = 1, 2, 3, 4 # a=1, b=[2,3,4] +>>> c, d = 5, [6, 7, 8] # c=5, d=[6,7,8] +>>> c, d = 5, *[6, 7, 8] # c=5, b=6 diff --git a/software/sagemath b/software/sagemath deleted file mode 100644 index f01883f..0000000 --- a/software/sagemath +++ /dev/null @@ -1,23 +0,0 @@ -================== -SAGE Math Package -================== - -.. warning:: Under progress! - -This is a reference for the `sage `_ math package. - -Web Notebooks ------------------------------ -To start run ``notebook()`` from an interactive shell; passing a directory as an argument will store files there. Also try``sage_wiki()``! - -To get help on a ``cmd`` type ``cmd?`` in an cell and press the Escape key. - -Interactive Shell ------------------------------ -Instead of the usual python ``**`` you can use ``^`` like the rest of the world, at least from the notebook and shell; use the old operator in scripts? - -Prefacing with ``time`` gives processor time statistics; you can wrap a series of commands with ``t = cputime()`` and ``cputime(t)`` to get the sum of time statistics; ``walltime`` works similarly. - -The general trick for saving text representations of objects is to open a file dscriptor and write the ``str`` of the object to it. - -``save_session`` and ``load_session`` save all objects in the session to a ``.sobj`` file. diff --git a/software/sagemath.page b/software/sagemath.page new file mode 100644 index 0000000..f01883f --- /dev/null +++ b/software/sagemath.page @@ -0,0 +1,23 @@ +================== +SAGE Math Package +================== + +.. warning:: Under progress! + +This is a reference for the `sage `_ math package. + +Web Notebooks +----------------------------- +To start run ``notebook()`` from an interactive shell; passing a directory as an argument will store files there. Also try``sage_wiki()``! + +To get help on a ``cmd`` type ``cmd?`` in an cell and press the Escape key. + +Interactive Shell +----------------------------- +Instead of the usual python ``**`` you can use ``^`` like the rest of the world, at least from the notebook and shell; use the old operator in scripts? + +Prefacing with ``time`` gives processor time statistics; you can wrap a series of commands with ``t = cputime()`` and ``cputime(t)`` to get the sum of time statistics; ``walltime`` works similarly. + +The general trick for saving text representations of objects is to open a file dscriptor and write the ``str`` of the object to it. + +``save_session`` and ``load_session`` save all objects in the session to a ``.sobj`` file. diff --git a/software/scheme b/software/scheme deleted file mode 100644 index dda68f1..0000000 --- a/software/scheme +++ /dev/null @@ -1,85 +0,0 @@ -================== -Scheme -================== - -``mit-scheme`` with the ``scmutils`` package is assumed; the command -``mechanics`` starts in interactive edwin prompt. - -See also notes on `The Little Schemer `__. - -Scheme Implementations ------------------------ -Very partial list, mostly just the ones which are interesting to me. -Alexey Radul maintains a nice table of R5RS implementation details in various -packages on his `website `__. - -MIT/GNU Scheme - The 7.9.0 release (last stable as of 01/01/2009) is not R5RS compatible, - and is generally a pain in the ass to compile on new systems. The 9.0 - release should be easier to compile and distribute because it will use - a C compiler to bootstrap (true?). - -SCM - SCM is a fairly minimal, very small footprint R5RS-compatible - implementation. Apparently very portable and easy to compile. Includes - the Hobbit compiler. Part of the GNU project, maintained at MIT? - -SIOD - SIOD (scheme in one day) is a super small (75k binary?) Scheme - implementation. - -Coding in ``edwin`` ------------------------ - -..note: this section should be spun off as emacs. edwin is essentially a - scheme version of emacs. See this - `emacs cheatsheet `__ - -Common keyboard commands (usually 'M' is alt button, 'C' is ctrl, and 'S' is -meta/super/"windows"): - -========= ==================================================================== -C-x C-f Open a file, or create a new one -C-x C-s Save the file -C-x k Kill (close) a buffer -C-x C-c Exit the editor -C-g Abort a command -C-x C-e Evaluate the previous expression -M-z Evaluate the surrounding expression -M-o Evaluate the entire buffer (everything) -C-c C-c Kill evaluation after an error -C-y Paste (yank) -C-x 2 Split screen vertically -C-x 5 Split screen horizontally -C-x o Switch to next buffer window -C-x 1 Return to non-split screen -M-x Enter a command by name in minibuffer (use tab to complete) -C-x C-b Show buffer menu -C-x b Select buffer -C-x u Undo -C-y Paste -========= ==================================================================== - -Command in ``.edwin`` to set Super-TAB to autocomplete scheme variables:: - - (define-key 'Scheme #\s-tab 'scheme-complete-variable) - -Scope --------------- -``set!`` looks up a symbol name and permanently changes the first value it comes -across. ``let`` (and ``letrec``) create a new symbol with the given value. -But wait, you need a ``lambda`` block to make everything work? - -Environment/Interpreter Commands ------------------------------------ -``(disk-save filename)`` will save a binary microcode image; an existing -image can be specified with the ``--band`` option at runtime or with -``(disk-restore filename)`` from within the interpreter. Bands are also called -worlds. - -"First Class" ------------------- -"Procedures as first class objects" is one of the features commonly attributed -to scheme. What does that mean? SICP describes first class objects as those -that can be: named by variables, passed as arguments, returned as results, -and included in data structures. diff --git a/software/scheme.page b/software/scheme.page new file mode 100644 index 0000000..dda68f1 --- /dev/null +++ b/software/scheme.page @@ -0,0 +1,85 @@ +================== +Scheme +================== + +``mit-scheme`` with the ``scmutils`` package is assumed; the command +``mechanics`` starts in interactive edwin prompt. + +See also notes on `The Little Schemer `__. + +Scheme Implementations +----------------------- +Very partial list, mostly just the ones which are interesting to me. +Alexey Radul maintains a nice table of R5RS implementation details in various +packages on his `website `__. + +MIT/GNU Scheme + The 7.9.0 release (last stable as of 01/01/2009) is not R5RS compatible, + and is generally a pain in the ass to compile on new systems. The 9.0 + release should be easier to compile and distribute because it will use + a C compiler to bootstrap (true?). + +SCM + SCM is a fairly minimal, very small footprint R5RS-compatible + implementation. Apparently very portable and easy to compile. Includes + the Hobbit compiler. Part of the GNU project, maintained at MIT? + +SIOD + SIOD (scheme in one day) is a super small (75k binary?) Scheme + implementation. + +Coding in ``edwin`` +----------------------- + +..note: this section should be spun off as emacs. edwin is essentially a + scheme version of emacs. See this + `emacs cheatsheet `__ + +Common keyboard commands (usually 'M' is alt button, 'C' is ctrl, and 'S' is +meta/super/"windows"): + +========= ==================================================================== +C-x C-f Open a file, or create a new one +C-x C-s Save the file +C-x k Kill (close) a buffer +C-x C-c Exit the editor +C-g Abort a command +C-x C-e Evaluate the previous expression +M-z Evaluate the surrounding expression +M-o Evaluate the entire buffer (everything) +C-c C-c Kill evaluation after an error +C-y Paste (yank) +C-x 2 Split screen vertically +C-x 5 Split screen horizontally +C-x o Switch to next buffer window +C-x 1 Return to non-split screen +M-x Enter a command by name in minibuffer (use tab to complete) +C-x C-b Show buffer menu +C-x b Select buffer +C-x u Undo +C-y Paste +========= ==================================================================== + +Command in ``.edwin`` to set Super-TAB to autocomplete scheme variables:: + + (define-key 'Scheme #\s-tab 'scheme-complete-variable) + +Scope +-------------- +``set!`` looks up a symbol name and permanently changes the first value it comes +across. ``let`` (and ``letrec``) create a new symbol with the given value. +But wait, you need a ``lambda`` block to make everything work? + +Environment/Interpreter Commands +----------------------------------- +``(disk-save filename)`` will save a binary microcode image; an existing +image can be specified with the ``--band`` option at runtime or with +``(disk-restore filename)`` from within the interpreter. Bands are also called +worlds. + +"First Class" +------------------ +"Procedures as first class objects" is one of the features commonly attributed +to scheme. What does that mean? SICP describes first class objects as those +that can be: named by variables, passed as arguments, returned as results, +and included in data structures. diff --git a/software/server-setup b/software/server-setup deleted file mode 100644 index 58b419b..0000000 --- a/software/server-setup +++ /dev/null @@ -1,51 +0,0 @@ -========================================= -Generic Server Setup Tricks -========================================= - -See also `debian `_ and -`freebsd tricks `_. - -bind -------------- -You probably want to hide your bind verison name to prevent scanning and -attacks. Edit ``/etc/bind/named.conf`` or ``/etc/bind/named.conf.options`` -and add this line to the options block:: - - version "Withheld"; - -ntp ------------- -ntp servers listen on port 37. - -temboz ----------- -The temboz feed reader is started by:: - -$./temboz --server & - -in the appropriate directory. - - -File Hierarchy ------------------- -/srv/ - Root for server files, scripts, and databases - -/srv/http/ - Subdirectories for each virtual host live in this folder, out of which - static `HTTP `__ content is served. - -/srv/django/ - Django applications and their databases live in here. - -/srv/git/ - Bare git repositories are stored here; those with a file - ``git-daemon-export-ok`` get served up through a web interface and can be - publically cloned. - -/srv/ - SVN repository roots are stored in sub folder in here. - -/srv/python/ - Standalone python scripts and applications are stored in here (not Django - apps). diff --git a/software/server-setup.page b/software/server-setup.page new file mode 100644 index 0000000..58b419b --- /dev/null +++ b/software/server-setup.page @@ -0,0 +1,51 @@ +========================================= +Generic Server Setup Tricks +========================================= + +See also `debian `_ and +`freebsd tricks `_. + +bind +------------- +You probably want to hide your bind verison name to prevent scanning and +attacks. Edit ``/etc/bind/named.conf`` or ``/etc/bind/named.conf.options`` +and add this line to the options block:: + + version "Withheld"; + +ntp +------------ +ntp servers listen on port 37. + +temboz +---------- +The temboz feed reader is started by:: + +$./temboz --server & + +in the appropriate directory. + + +File Hierarchy +------------------ +/srv/ + Root for server files, scripts, and databases + +/srv/http/ + Subdirectories for each virtual host live in this folder, out of which + static `HTTP `__ content is served. + +/srv/django/ + Django applications and their databases live in here. + +/srv/git/ + Bare git repositories are stored here; those with a file + ``git-daemon-export-ok`` get served up through a web interface and can be + publically cloned. + +/srv/ + SVN repository roots are stored in sub folder in here. + +/srv/python/ + Standalone python scripts and applications are stored in here (not Django + apps). diff --git a/software/unix-tricks b/software/unix-tricks deleted file mode 100644 index 265609f..0000000 --- a/software/unix-tricks +++ /dev/null @@ -1,13 +0,0 @@ -===================================== -UNIX Tricks -===================================== - -See also `freebsd `_ and -`debian `_ tricks. - -Fork many processes with `xargs` ------------------------------------ -To fork off 10 instances of sleep with incremented lengths, 5 at a time:: - -$ seq 10 20 | xargs -n 1 -P 5 sleep - diff --git a/software/unix-tricks.page b/software/unix-tricks.page new file mode 100644 index 0000000..265609f --- /dev/null +++ b/software/unix-tricks.page @@ -0,0 +1,13 @@ +===================================== +UNIX Tricks +===================================== + +See also `freebsd `_ and +`debian `_ tricks. + +Fork many processes with `xargs` +----------------------------------- +To fork off 10 instances of sleep with incremented lengths, 5 at a time:: + +$ seq 10 20 | xargs -n 1 -P 5 sleep + diff --git a/software/vim b/software/vim deleted file mode 100644 index 76ffa24..0000000 --- a/software/vim +++ /dev/null @@ -1,38 +0,0 @@ -============ -It's vim! -============ - -Typical .vimrc ------------------- -Here's what a typical ``.vimrc`` looks like for me:: - - if has('syntax') && (&t_Co > 2) - syntax on - endif - - set history=50 - set wildmode=list:longest,full - set showmode - set showcmd - set smartcase - set shiftwidth=4 - set tabstop=4 - set shiftround - set expandtab - set autoindent - - autocmd BufRead *.py set smartindent cinwords=if,elif,else,for,while,try,except, finally,def,class - -Commands -------------- -I search and replace globally a lot:: - - :%s/before/after/g - -Tricks -------------- -I often want to pull a particular gnarly line or two from another file; here's -the command I use to grab three lines of context around 'phrase':: - - :r!grep -A 3 'phrase' ../otherfile.txt - diff --git a/software/vim.page b/software/vim.page new file mode 100644 index 0000000..76ffa24 --- /dev/null +++ b/software/vim.page @@ -0,0 +1,38 @@ +============ +It's vim! +============ + +Typical .vimrc +------------------ +Here's what a typical ``.vimrc`` looks like for me:: + + if has('syntax') && (&t_Co > 2) + syntax on + endif + + set history=50 + set wildmode=list:longest,full + set showmode + set showcmd + set smartcase + set shiftwidth=4 + set tabstop=4 + set shiftround + set expandtab + set autoindent + + autocmd BufRead *.py set smartindent cinwords=if,elif,else,for,while,try,except, finally,def,class + +Commands +------------- +I search and replace globally a lot:: + + :%s/before/after/g + +Tricks +------------- +I often want to pull a particular gnarly line or two from another file; here's +the command I use to grab three lines of context around 'phrase':: + + :r!grep -A 3 'phrase' ../otherfile.txt + diff --git a/tmp/Newcomb paradox b/tmp/Newcomb paradox deleted file mode 100644 index c7da22b..0000000 --- a/tmp/Newcomb paradox +++ /dev/null @@ -1,65 +0,0 @@ -================== -Newcomb's Dialemma -================== - -Newcomb's paradox was thought up by a researcher named Newcomb; it was first -explored and written up by Robert Nozick in the 1969 paper -"Newcomb's Problem and Two principles of Choice". - -The Situation -------------- -As narrated by an all knowing "predictor":: - - I am going to give you a choice. It is important to know that I really - pretty much know what you are going to do. I have been watching their whole - life and am additionally an immortal being; i've been doing this a long - time and always guess correctly. It's also important to know that I am - unbiased and don't care which decision you make, I have nothing to gain - either way. - - Here are two boxes: a large and a small. The small has a 10 shekel coin - in it (show everybody). The large one may or may not have a thousand - shekels in it; you don't know. Your choice is to either take only the - large box or to take both the large and small boxes. The twist is that - I already knew which decision you will make and decided whether or not - to put the $1000 in the large box or not based on that knowledge. - If I knew you would "two box", then I left the large box empty. If I knew - you would "one box" then I filled it. - -Dominance Mindset ------------------ -Regardless of what decision was made previously, and whether or not there -is anything in the large box, the person is better off taking both boxes; -either they will get just $10 (better than none) or $1010 (better -than $1000). So two-box. - -Trusting Mindset ----------------- -The predictor is pretty much always right so we can just ignore the -possibility that they are wrong. In this case, choosing to one-box -implies that the Predictor knew you would and you get $1000; -choosing to two-box implies that the predictor knew you would and you -only get $10. - -The predictor doesn't even have to be perfectly accurate; say they are -90%: -If you one-box, your expected value is $900. -If you two-box, your expected value is $110. - -Discussion ----------- -It's disputed whether this is a paradox, and there are many deeper arguments -that I don't have time to go into here. Ultimately, I am a one-boxer -though this is something of a minority position. - -Afterword ---------- -The person who taught me this paradox, Professor Augustin Rayo, a -two-boxer, then had this to add. He was talking with his one-boxing friend -and accused her of letting irrationality undermine her logic: she is so -optimistic that if a statement S is unprovable, but it would be nicer if S -was true than false, then she pretens that S is proven. So basically, even -though there is no rationalization, she will accept a statement "just -because it would be nice", and this isn't how logic works. To which she -replied "but wouldn't it be nice if it was?". - diff --git a/tmp/Newcomb paradox.page b/tmp/Newcomb paradox.page new file mode 100644 index 0000000..c7da22b --- /dev/null +++ b/tmp/Newcomb paradox.page @@ -0,0 +1,65 @@ +================== +Newcomb's Dialemma +================== + +Newcomb's paradox was thought up by a researcher named Newcomb; it was first +explored and written up by Robert Nozick in the 1969 paper +"Newcomb's Problem and Two principles of Choice". + +The Situation +------------- +As narrated by an all knowing "predictor":: + + I am going to give you a choice. It is important to know that I really + pretty much know what you are going to do. I have been watching their whole + life and am additionally an immortal being; i've been doing this a long + time and always guess correctly. It's also important to know that I am + unbiased and don't care which decision you make, I have nothing to gain + either way. + + Here are two boxes: a large and a small. The small has a 10 shekel coin + in it (show everybody). The large one may or may not have a thousand + shekels in it; you don't know. Your choice is to either take only the + large box or to take both the large and small boxes. The twist is that + I already knew which decision you will make and decided whether or not + to put the $1000 in the large box or not based on that knowledge. + If I knew you would "two box", then I left the large box empty. If I knew + you would "one box" then I filled it. + +Dominance Mindset +----------------- +Regardless of what decision was made previously, and whether or not there +is anything in the large box, the person is better off taking both boxes; +either they will get just $10 (better than none) or $1010 (better +than $1000). So two-box. + +Trusting Mindset +---------------- +The predictor is pretty much always right so we can just ignore the +possibility that they are wrong. In this case, choosing to one-box +implies that the Predictor knew you would and you get $1000; +choosing to two-box implies that the predictor knew you would and you +only get $10. + +The predictor doesn't even have to be perfectly accurate; say they are +90%: +If you one-box, your expected value is $900. +If you two-box, your expected value is $110. + +Discussion +---------- +It's disputed whether this is a paradox, and there are many deeper arguments +that I don't have time to go into here. Ultimately, I am a one-boxer +though this is something of a minority position. + +Afterword +--------- +The person who taught me this paradox, Professor Augustin Rayo, a +two-boxer, then had this to add. He was talking with his one-boxing friend +and accused her of letting irrationality undermine her logic: she is so +optimistic that if a statement S is unprovable, but it would be nicer if S +was true than false, then she pretens that S is proven. So basically, even +though there is no rationalization, she will accept a statement "just +because it would be nice", and this isn't how logic works. To which she +replied "but wouldn't it be nice if it was?". + diff --git a/tmp/SCUBA b/tmp/SCUBA deleted file mode 100644 index 84d1345..0000000 --- a/tmp/SCUBA +++ /dev/null @@ -1,83 +0,0 @@ -============ -SCUBA Diving -============ ---------------------------------------------- -Self Contained Underwater Breathing Apparatus ---------------------------------------------- - -SCUBA stands for "Self-Contained Underwater Breathing Apparatus". -One of the primary organization regulating recreational SCUBA diving is -PADI (the Professional Association of Diving Instructors). - -Equipment ---------- - -:BCD: The buoyancy control device is basically an inflatable live vest - that you can inflate using the regulator (or by mouth) to control - your buoyancy. Your buoyancy changes as you use up air (tank gets - lighter for same volume displaced), inhale/exhale, swim in water - of different temperature or salinity, or change depth: increased - pressure compresses any flexible air pockets, including the BCD - itself, neoprene foam, or a dry-suit. - Most BCDs have their own pressure hoses coming from the first stage - regulator that supply air. - Sometimes there is only one vent valve, which has to be at the - highest orientation or air will not vent out of the bladders. -:Tank: Most tanks are made of steel or aluminum and can store compressed - air of up to 3000psi. They are stored at pressure to prevent moisture - from leaking in. There is a valve built into the tank itself that - usually gets taken apart and repaired every two years. Tanks - can last for decades even with heavy use; they are pressure tested - for fatigue and leaks. -:Regulator: The first-stage regulator is connected to the tank and steps - the pressure down to about 250psi above the surrounding/ambient - pressure. Hoses carry air at this mid-level pressure to the second - stage regulator/mouthpiece, which steps the pressure down to - about what is in your lungs. Depending on the regulator they can - be stiff (you have to suck a bit to get air, but then it rushes - in with force) or very natural feeling (air comes very smoothly - on inhalation and doesn't press into your lungs). -:Alternate: These days almost everybody carries a second regulator mouthpiece - for emergencies. These are always on and ready to breath from, - but usually stiffer so they don't free-flow as often. -:Dive Computer: - A dive computer monitors time and depth to give you an accurate picture - of how much excess nitrogen is in a diver's bloodstream. By - continuously integrating they usually "give more time at depth" than - hand calculations using tables (which err towards safety). -:Dry Suit: A dry suit is a sealed and air tight, keeping the diver's skin dry. - Extra insulation is needed to give warmth underneath. Some dry - suits are made of compressed neoprene. - A dry suit has to be constantly adjusted with tank air just like - the BCD to maintain inflation and buoyancy. -:Wet Suit: Wet suits work on the principle of holding water against the skin: - a diver's body warms this water and stays cozy as long as water - flow is restricted enough. Even little bit too much flow through - wrist or ankle openings can be very cold. - - -Depths ------- -A PADI Open Water Diving course gives a recommended limit of 20m/60ft. -A "deep dive adventure course" gives a recommended limit of 30m/100ft, -and additional experience gives a limit of 40m/130ft. - -With careful decompression stops and enriched compressed air (higher oxygen -content) it's possible to reach depths of hundreds of meters. Sometimes -commercial divers will dive for many hours using surface supplied air, -then live at the surface in a compression chamber overnight between dives -to stay at the same pressure [*]_. - -History -------- -I'm pretty sure `Jacques Cousteau`_ invented the aqualung, which is the basis -for modern diving, but I'll have to check. - -.. _Jacques Cousteau: /k/jacquescousteau/ - -Flying ------- -After a regular no-decompression dive, wait at least 12 -hours before flying (or going to high altitude, eg over 300m). - -.. [*] Need a citation, heard this word of mouth diff --git a/tmp/SCUBA.page b/tmp/SCUBA.page new file mode 100644 index 0000000..84d1345 --- /dev/null +++ b/tmp/SCUBA.page @@ -0,0 +1,83 @@ +============ +SCUBA Diving +============ +--------------------------------------------- +Self Contained Underwater Breathing Apparatus +--------------------------------------------- + +SCUBA stands for "Self-Contained Underwater Breathing Apparatus". +One of the primary organization regulating recreational SCUBA diving is +PADI (the Professional Association of Diving Instructors). + +Equipment +--------- + +:BCD: The buoyancy control device is basically an inflatable live vest + that you can inflate using the regulator (or by mouth) to control + your buoyancy. Your buoyancy changes as you use up air (tank gets + lighter for same volume displaced), inhale/exhale, swim in water + of different temperature or salinity, or change depth: increased + pressure compresses any flexible air pockets, including the BCD + itself, neoprene foam, or a dry-suit. + Most BCDs have their own pressure hoses coming from the first stage + regulator that supply air. + Sometimes there is only one vent valve, which has to be at the + highest orientation or air will not vent out of the bladders. +:Tank: Most tanks are made of steel or aluminum and can store compressed + air of up to 3000psi. They are stored at pressure to prevent moisture + from leaking in. There is a valve built into the tank itself that + usually gets taken apart and repaired every two years. Tanks + can last for decades even with heavy use; they are pressure tested + for fatigue and leaks. +:Regulator: The first-stage regulator is connected to the tank and steps + the pressure down to about 250psi above the surrounding/ambient + pressure. Hoses carry air at this mid-level pressure to the second + stage regulator/mouthpiece, which steps the pressure down to + about what is in your lungs. Depending on the regulator they can + be stiff (you have to suck a bit to get air, but then it rushes + in with force) or very natural feeling (air comes very smoothly + on inhalation and doesn't press into your lungs). +:Alternate: These days almost everybody carries a second regulator mouthpiece + for emergencies. These are always on and ready to breath from, + but usually stiffer so they don't free-flow as often. +:Dive Computer: + A dive computer monitors time and depth to give you an accurate picture + of how much excess nitrogen is in a diver's bloodstream. By + continuously integrating they usually "give more time at depth" than + hand calculations using tables (which err towards safety). +:Dry Suit: A dry suit is a sealed and air tight, keeping the diver's skin dry. + Extra insulation is needed to give warmth underneath. Some dry + suits are made of compressed neoprene. + A dry suit has to be constantly adjusted with tank air just like + the BCD to maintain inflation and buoyancy. +:Wet Suit: Wet suits work on the principle of holding water against the skin: + a diver's body warms this water and stays cozy as long as water + flow is restricted enough. Even little bit too much flow through + wrist or ankle openings can be very cold. + + +Depths +------ +A PADI Open Water Diving course gives a recommended limit of 20m/60ft. +A "deep dive adventure course" gives a recommended limit of 30m/100ft, +and additional experience gives a limit of 40m/130ft. + +With careful decompression stops and enriched compressed air (higher oxygen +content) it's possible to reach depths of hundreds of meters. Sometimes +commercial divers will dive for many hours using surface supplied air, +then live at the surface in a compression chamber overnight between dives +to stay at the same pressure [*]_. + +History +------- +I'm pretty sure `Jacques Cousteau`_ invented the aqualung, which is the basis +for modern diving, but I'll have to check. + +.. _Jacques Cousteau: /k/jacquescousteau/ + +Flying +------ +After a regular no-decompression dive, wait at least 12 +hours before flying (or going to high altitude, eg over 300m). + +.. [*] Need a citation, heard this word of mouth diff --git a/tmp/Saccade b/tmp/Saccade deleted file mode 100644 index 85693c6..0000000 --- a/tmp/Saccade +++ /dev/null @@ -1,7 +0,0 @@ -Saccade -------- - -Saccades are small movements of the eye which generate a delta in our stream -of vision. Similar to the phenomena of "only seeing movement". - -(based on Jeff Hawkin's book "On Intelligence") diff --git a/tmp/Saccade.page b/tmp/Saccade.page new file mode 100644 index 0000000..85693c6 --- /dev/null +++ b/tmp/Saccade.page @@ -0,0 +1,7 @@ +Saccade +------- + +Saccades are small movements of the eye which generate a delta in our stream +of vision. Similar to the phenomena of "only seeing movement". + +(based on Jeff Hawkin's book "On Intelligence") diff --git a/tmp/Teaching CS b/tmp/Teaching CS deleted file mode 100644 index 2c21cc4..0000000 --- a/tmp/Teaching CS +++ /dev/null @@ -1,97 +0,0 @@ -==================================== -Notes on Teaching Computer Science -==================================== - -:author: Bryan Newbold - -.. note:: Incomplete, just a structure of starting topics - -.. contents:: - -In thinking about how to teach somebody new "how to program" or "about -computers", it seems like getting the rough big picture is the best first step. - - -Engineering and Scientific Philosophies ------------------------------------------ -keywords: computation, computability, hierarchy, interface, implementation - -In approaching computer science it is important to note an arbitrary division -of the field between "computation" and "computability" that has arisen over -the years. Similar to the "theory" vs "experiment" schisms in other scientific -fields like physics, "computation" puts emphasis on actually generating -hardware and software to run in the real world, while "computability" focuses -on what can be computed and generalizations of specific computations. Of course -they are two sides of the same coin and should be appreciated together. - -It is almost impossible to deal with computer systems (hardware or software) -without breaking them up into modules and layers. Perhaps more so than in any -other field, conceptual barriers are reflected in the actual design and -implementation of systems, which can make it hard to learn how things work -because their inner workings are shielded from view both literally and -figuratively. For example, a software developer writing a web browser doesn't -have to know about what kind of monitor the user is sitting in front of, -what kind of physical link to the internet they have (or even how this -connection is managed), the details of their computer architecture, how their -application is delegated computing resources, what kind of mouse is being used, -etc etc. - -A more formal example is the ethernet protocol, which is used to -pass data between nodes in a relatively unstructured network. The ethernet -protocol itself lies above the physical "link layer", which means the same -protocol can be used for wireless radio communications or with conducting -wires. It lies below any sort of higher network layers and far below the -"application layer", so large amounts of data can be streamed over it between -two nodes, or messages between dozens of nodes can be passed over it, or it -can be only one link in a very large web of interconnections. This flexibility -has made it ubiquitous and is the protocol most network devices use without -a hitch, but occasionally it's imperfections can lead to problems at higher -levels which are hard to track down. - -Turing Completeness ------------------------------------------ -keywords: finite state machine, deterministic - -Personal Computer Hierarchy ------------------------------------------ -keywords: CPU, RAM, hard disk, peripherals, network, BIOS, motherboard, - operating system, serial, parallel, interrupts, multicore, register - -UNIX Operating Systems ------------------------------------------ -keywords: file system, kernel, driver, threading, - -UNIX is the Latin of operating systems: there were operating systems that came -after, and the average user isn't running a UNIX operating system, but it's -design is simple, functional, and has represents the dominant paradigms for -modern (non-experimental or special use) operating systems. - -As some context, Microsoft Windows is not directly based on UNIX. Apple OSX -and subsequent versions is built on top of a UNIX core. Linux is an open source -implementation of UNIX. BSD was the free UC Berkeley distribution of UNIX which -has branched off into open source implementations like FreeBSD, OpenBSD, and -NetBSD. "UNIX" got started as a Bell Labs research project in the 70's (?) - - -The Internet ------------------------------------------ -keywords: IP (internet protocol), ARP, MAC, routing, servers, backbone, - protocol, email, http, html - - -Software Development Tools ------------------------------------------ -keywords: compiler, lexical analysis, library, language, interpreter - - -Data Formats, Structures, and Algorithms ------------------------------------------ -keywords: string, integer, bit, list, pointer, tree, sort, P/NP - - -Design Paradigms ------------------------------------------ -keywords: server/client, object oriented, wrappers, KISS, parallelization, - resource locking, serialization, buffer - - diff --git a/tmp/Teaching CS.page b/tmp/Teaching CS.page new file mode 100644 index 0000000..2c21cc4 --- /dev/null +++ b/tmp/Teaching CS.page @@ -0,0 +1,97 @@ +==================================== +Notes on Teaching Computer Science +==================================== + +:author: Bryan Newbold + +.. note:: Incomplete, just a structure of starting topics + +.. contents:: + +In thinking about how to teach somebody new "how to program" or "about +computers", it seems like getting the rough big picture is the best first step. + + +Engineering and Scientific Philosophies +----------------------------------------- +keywords: computation, computability, hierarchy, interface, implementation + +In approaching computer science it is important to note an arbitrary division +of the field between "computation" and "computability" that has arisen over +the years. Similar to the "theory" vs "experiment" schisms in other scientific +fields like physics, "computation" puts emphasis on actually generating +hardware and software to run in the real world, while "computability" focuses +on what can be computed and generalizations of specific computations. Of course +they are two sides of the same coin and should be appreciated together. + +It is almost impossible to deal with computer systems (hardware or software) +without breaking them up into modules and layers. Perhaps more so than in any +other field, conceptual barriers are reflected in the actual design and +implementation of systems, which can make it hard to learn how things work +because their inner workings are shielded from view both literally and +figuratively. For example, a software developer writing a web browser doesn't +have to know about what kind of monitor the user is sitting in front of, +what kind of physical link to the internet they have (or even how this +connection is managed), the details of their computer architecture, how their +application is delegated computing resources, what kind of mouse is being used, +etc etc. + +A more formal example is the ethernet protocol, which is used to +pass data between nodes in a relatively unstructured network. The ethernet +protocol itself lies above the physical "link layer", which means the same +protocol can be used for wireless radio communications or with conducting +wires. It lies below any sort of higher network layers and far below the +"application layer", so large amounts of data can be streamed over it between +two nodes, or messages between dozens of nodes can be passed over it, or it +can be only one link in a very large web of interconnections. This flexibility +has made it ubiquitous and is the protocol most network devices use without +a hitch, but occasionally it's imperfections can lead to problems at higher +levels which are hard to track down. + +Turing Completeness +----------------------------------------- +keywords: finite state machine, deterministic + +Personal Computer Hierarchy +----------------------------------------- +keywords: CPU, RAM, hard disk, peripherals, network, BIOS, motherboard, + operating system, serial, parallel, interrupts, multicore, register + +UNIX Operating Systems +----------------------------------------- +keywords: file system, kernel, driver, threading, + +UNIX is the Latin of operating systems: there were operating systems that came +after, and the average user isn't running a UNIX operating system, but it's +design is simple, functional, and has represents the dominant paradigms for +modern (non-experimental or special use) operating systems. + +As some context, Microsoft Windows is not directly based on UNIX. Apple OSX +and subsequent versions is built on top of a UNIX core. Linux is an open source +implementation of UNIX. BSD was the free UC Berkeley distribution of UNIX which +has branched off into open source implementations like FreeBSD, OpenBSD, and +NetBSD. "UNIX" got started as a Bell Labs research project in the 70's (?) + + +The Internet +----------------------------------------- +keywords: IP (internet protocol), ARP, MAC, routing, servers, backbone, + protocol, email, http, html + + +Software Development Tools +----------------------------------------- +keywords: compiler, lexical analysis, library, language, interpreter + + +Data Formats, Structures, and Algorithms +----------------------------------------- +keywords: string, integer, bit, list, pointer, tree, sort, P/NP + + +Design Paradigms +----------------------------------------- +keywords: server/client, object oriented, wrappers, KISS, parallelization, + resource locking, serialization, buffer + + diff --git a/tmp/Topics of Curiosity b/tmp/Topics of Curiosity deleted file mode 100644 index 6ef2976..0000000 --- a/tmp/Topics of Curiosity +++ /dev/null @@ -1,50 +0,0 @@ ---------------------- -Topics of Curiosity ---------------------- - -*or, list of future knowledge items* - -* United Nations -* List of International Treaties - - including signatories - -* Ethernet -* Benthic Biology -* Antarctica -* Kyoto Protocol -* Sensory Deprivation -* Beat Authors -* Harvey Mudd -* National Science Foundation - - And other US national science organizations - -* Iraq War - - Strategy, costs, political figures, history, technology, prospects, companies, etc. - -* Recycling -* Pollution sources in the United States -* US Education System -* US Judicial Branch -* Kennedy School of Government -* Democratic Party -* Republican Party -* Green Party -* Bob Dole -* Al Gore -* Obama -* Book Publishing -* Internet - - Power consumption, user numbers, global connectivity, core and backbone services - -* One Laptop Per Child - - Bundled knowledge, regions, implementation plans, new software concepts, connectivity - -* Paul Dirac -* LaTeX -* vim -* pykrete diff --git a/tmp/Topics of Curiosity.page b/tmp/Topics of Curiosity.page new file mode 100644 index 0000000..6ef2976 --- /dev/null +++ b/tmp/Topics of Curiosity.page @@ -0,0 +1,50 @@ +--------------------- +Topics of Curiosity +--------------------- + +*or, list of future knowledge items* + +* United Nations +* List of International Treaties + + including signatories + +* Ethernet +* Benthic Biology +* Antarctica +* Kyoto Protocol +* Sensory Deprivation +* Beat Authors +* Harvey Mudd +* National Science Foundation + + And other US national science organizations + +* Iraq War + + Strategy, costs, political figures, history, technology, prospects, companies, etc. + +* Recycling +* Pollution sources in the United States +* US Education System +* US Judicial Branch +* Kennedy School of Government +* Democratic Party +* Republican Party +* Green Party +* Bob Dole +* Al Gore +* Obama +* Book Publishing +* Internet + + Power consumption, user numbers, global connectivity, core and backbone services + +* One Laptop Per Child + + Bundled knowledge, regions, implementation plans, new software concepts, connectivity + +* Paul Dirac +* LaTeX +* vim +* pykrete diff --git a/tmp/artists b/tmp/artists deleted file mode 100644 index a7b9751..0000000 --- a/tmp/artists +++ /dev/null @@ -1,9 +0,0 @@ - -======= -Artists -======= - -* Kay Sage (1898-1963), American Surrealist Painter -* Yves Tanguy (1900-1955), French Surrealist Painter -* Hans Bellmer (1902-1975), French. "Die Puppe" series (dolls) -* Francis Picabia (1879-1953) French Painter diff --git a/tmp/artists.page b/tmp/artists.page new file mode 100644 index 0000000..a7b9751 --- /dev/null +++ b/tmp/artists.page @@ -0,0 +1,9 @@ + +======= +Artists +======= + +* Kay Sage (1898-1963), American Surrealist Painter +* Yves Tanguy (1900-1955), French Surrealist Painter +* Hans Bellmer (1902-1975), French. "Die Puppe" series (dolls) +* Francis Picabia (1879-1953) French Painter diff --git a/tmp/sql b/tmp/sql deleted file mode 100644 index 4936bc9..0000000 --- a/tmp/sql +++ /dev/null @@ -1,8 +0,0 @@ -=================================== -SQL: Structured Query Language -=================================== - - -SELECT ---------- -Eg, ``SELECT * From table_name``. ``DISTINCT`` returns no duplicates. diff --git a/tmp/sql.page b/tmp/sql.page new file mode 100644 index 0000000..4936bc9 --- /dev/null +++ b/tmp/sql.page @@ -0,0 +1,8 @@ +=================================== +SQL: Structured Query Language +=================================== + + +SELECT +--------- +Eg, ``SELECT * From table_name``. ``DISTINCT`` returns no duplicates. -- cgit v1.2.3