<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://aznot.com/index.php?action=history&amp;feed=atom&amp;title=UTOSC_2010</id>
	<title>UTOSC 2010 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://aznot.com/index.php?action=history&amp;feed=atom&amp;title=UTOSC_2010"/>
	<link rel="alternate" type="text/html" href="https://aznot.com/index.php?title=UTOSC_2010&amp;action=history"/>
	<updated>2026-04-17T03:07:00Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.41.0</generator>
	<entry>
		<id>https://aznot.com/index.php?title=UTOSC_2010&amp;diff=2187&amp;oldid=prev</id>
		<title>Kenneth: /* UTOSC 2010 - Python Full Meal Deal */</title>
		<link rel="alternate" type="text/html" href="https://aznot.com/index.php?title=UTOSC_2010&amp;diff=2187&amp;oldid=prev"/>
		<updated>2015-05-09T07:02:55Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;UTOSC 2010 - Python Full Meal Deal&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Subpage Table of Contents ==&lt;br /&gt;
&lt;br /&gt;
{{Special:PrefixIndex/{{PAGENAME}}/}}&lt;br /&gt;
&lt;br /&gt;
== UTOSC 2010 ==&lt;br /&gt;
&lt;br /&gt;
== Wireless ==&lt;br /&gt;
&lt;br /&gt;
 SLCC-OPEN&lt;br /&gt;
 OpenSource&lt;br /&gt;
 iaScqJ3k&lt;br /&gt;
&lt;br /&gt;
== Nmap ==&lt;br /&gt;
&lt;br /&gt;
Presenter - High School Senior?&lt;br /&gt;
&lt;br /&gt;
== Publishing with Open Source ==&lt;br /&gt;
&lt;br /&gt;
Presenter - Jerome S. Horowitz&lt;br /&gt;
&lt;br /&gt;
Latex and Tex&lt;br /&gt;
&lt;br /&gt;
TEX developed by Donald E. Knuth (1977).&lt;br /&gt;
&lt;br /&gt;
&amp;quot;typeset a book&amp;quot;?&lt;br /&gt;
&lt;br /&gt;
LATEX started by Leslie Lamport (1982).&lt;br /&gt;
&lt;br /&gt;
http://en.wikipedia.org/wiki/Typesetting&lt;br /&gt;
&lt;br /&gt;
Tools:&lt;br /&gt;
* Textmaker&lt;br /&gt;
* Kile&lt;br /&gt;
* Docbook&lt;br /&gt;
&lt;br /&gt;
== CLI Judo ==&lt;br /&gt;
&lt;br /&gt;
Presenter: Derek Carter &amp;quot;goozbach&amp;quot; (http://blog.friocorte.com/)&lt;br /&gt;
&lt;br /&gt;
Variable Tricks:&lt;br /&gt;
* RANDOM&lt;br /&gt;
* PS1&lt;br /&gt;
* PS2&lt;br /&gt;
&lt;br /&gt;
 echo ${RANDOM}   # number between 0 and MAXINT&lt;br /&gt;
 NUM=${RANDOM}&lt;br /&gt;
 let &amp;quot;NUM %= 500&amp;quot;&lt;br /&gt;
&lt;br /&gt;
PS1 is prompt&lt;br /&gt;
 PS1=[\u@\h \w]\$&lt;br /&gt;
&lt;br /&gt;
PS2 is the second level prompt, for when you don&amp;#039;t close a command&lt;br /&gt;
&lt;br /&gt;
 PS2=&amp;quot;secon level&amp;gt; &amp;quot;&lt;br /&gt;
 echo &amp;quot;my name is&lt;br /&gt;
&lt;br /&gt;
Install &amp;quot;Bash Completion&amp;quot; package to do other cool stuff&lt;br /&gt;
&lt;br /&gt;
bitlbee - irc interface to messaging networks (ie yahoo, jabber, etc)&lt;br /&gt;
&lt;br /&gt;
What did you use to record the .flv?&lt;br /&gt;
&lt;br /&gt;
tmux - alternative to screen command&lt;br /&gt;
&lt;br /&gt;
byobu - wrapper around screen does profiles, screens, status lines, etc&lt;br /&gt;
&lt;br /&gt;
pv - progress bar in your terminal (like cat) - works great for sha1sum&lt;br /&gt;
 pv big.iso | sha1sum&lt;br /&gt;
&lt;br /&gt;
Suggestion: add time to prompt so you know how long commands take&lt;br /&gt;
&lt;br /&gt;
todo - command based todo list&lt;br /&gt;
 alias td=todo.sh&lt;br /&gt;
 td add &amp;quot;make a presentation&amp;quot;&lt;br /&gt;
 td add &amp;quot;second&amp;quot;&lt;br /&gt;
 td list&lt;br /&gt;
 td do 1  # mark done&lt;br /&gt;
&lt;br /&gt;
found on: todo.txt - on git hub&lt;br /&gt;
&lt;br /&gt;
Customizations&lt;br /&gt;
 alias q=&amp;#039;exit&amp;#039;&lt;br /&gt;
 ll&lt;br /&gt;
 la&lt;br /&gt;
 ls&lt;br /&gt;
 redo=&amp;#039;sudo !!&amp;#039;&lt;br /&gt;
 wtf=dmesg&lt;br /&gt;
 ls -F  # adds identifiers / @ |&lt;br /&gt;
 please=&amp;#039;&amp;#039;&lt;br /&gt;
 thanks=&amp;#039;echo no prob&amp;#039;&lt;br /&gt;
 realias=&amp;#039;source ${HOME}/.bash_aliases&amp;#039;&lt;br /&gt;
 refunction=&amp;#039;source ${HOME}/.bash_functions&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Functions:&lt;br /&gt;
&lt;br /&gt;
mkcd (make dir and cd)&lt;br /&gt;
 mkcd () {&lt;br /&gt;
   mkdir -p -- &amp;quot;$@&amp;quot; &amp;amp;&amp;amp; cd -- &amp;quot;$@&amp;quot;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
pathmunge (add path to path)&lt;br /&gt;
 pathmunge () {&lt;br /&gt;
   if ! echo $PATH | grep -E -q &amp;quot;.....&lt;br /&gt;
&lt;br /&gt;
tricks = superuser.com&lt;br /&gt;
&lt;br /&gt;
Keybindings:&lt;br /&gt;
&lt;br /&gt;
 ~/.inputrc&lt;br /&gt;
 \C-t &amp;quot;say something!&amp;quot;    # control tab&lt;br /&gt;
&lt;br /&gt;
Library: bti - bash twitter idiocy&lt;br /&gt;
 echo &amp;quot;test &amp;quot; | bti --bash&lt;br /&gt;
&lt;br /&gt;
dent_promt.sh&lt;br /&gt;
  PROMPT_COMMAND=&amp;quot;history 1 | sed -e &amp;quot;....&amp;quot; | bti --bash&lt;br /&gt;
&lt;br /&gt;
 PROMPT_COMMAND=&amp;#039;echo dood&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Can be used for battery status, or current git branch&lt;br /&gt;
&lt;br /&gt;
Best practice:&lt;br /&gt;
 read_zork () {&lt;br /&gt;
   ....&lt;br /&gt;
 }&lt;br /&gt;
 PROMPT_COMMAND=read_zork&lt;br /&gt;
&lt;br /&gt;
SSH known_hosts destroy: null host keys&lt;br /&gt;
 host localhost .....&lt;br /&gt;
    strict... no?&lt;br /&gt;
    key file = /dev/null?&lt;br /&gt;
&lt;br /&gt;
xyzzy: how session was recorded&lt;br /&gt;
&lt;br /&gt;
terminator - gnome terminal splittable&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This whole presentation will be added to Git Hub&lt;br /&gt;
* &amp;quot;The Bashful Adventurer&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Recorded with ffmpeg to flv&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Traps:&lt;br /&gt;
 mytrap() {&lt;br /&gt;
   sleep 1&lt;br /&gt;
   echo -e &amp;quot;\nso you sent me a trap&amp;quot;&lt;br /&gt;
 }&lt;br /&gt;
 trap mytrap 0 1 2 5 15 19&lt;br /&gt;
 echo &amp;quot;send me traps&amp;quot;&lt;br /&gt;
 while true; do&lt;br /&gt;
   sleep 1&lt;br /&gt;
 done&lt;br /&gt;
&lt;br /&gt;
Dialog - cursive based dialog window&lt;br /&gt;
 dialog --title &amp;quot;input box&amp;quot; --clear &amp;quot;$@&amp;quot; \&lt;br /&gt;
  --inputbox &amp;quot;enter name&amp;quot; 16 51 2&amp;gt; $tempfile&lt;br /&gt;
 # --select&lt;br /&gt;
 # man dialog&lt;br /&gt;
 # /usr/share/doc/dialog&lt;br /&gt;
&lt;br /&gt;
GUI alternative to dialog - gtk based dialog - zenity&lt;br /&gt;
&lt;br /&gt;
KDE dialog has lots of cool widgets - kdialog&lt;br /&gt;
&lt;br /&gt;
Cheat at hangman:&lt;br /&gt;
 cat /usr/share/dict/words | tr -s &amp;#039;A-Z&amp;#039; &amp;#039;a-z&amp;#039; | sort | grep &amp;quot;^......$&amp;quot; | wc -l&lt;br /&gt;
 cat /usr/share/dict/words | tr -s &amp;#039;A-Z&amp;#039; &amp;#039;a-z&amp;#039; | sort | grep &amp;quot;^t.m..o$&amp;quot; | wc -l&lt;br /&gt;
&lt;br /&gt;
How to tell if a pipe fails&lt;br /&gt;
 cat /usr/share/dict/words | tr -s &amp;#039;A-Z&amp;#039; &amp;#039;a-z&amp;#039; | sort --gargle | grep &amp;quot;^t.m..o$&amp;quot; | wc -l&lt;br /&gt;
 echo ${PIPESTATUS}&lt;br /&gt;
&lt;br /&gt;
Stringet Bash:&lt;br /&gt;
 &lt;br /&gt;
Replatform Technologies - bash presentation - shows you the why on bash stringent&lt;br /&gt;
&lt;br /&gt;
== Torque - HPC for Home Use ==&lt;br /&gt;
&lt;br /&gt;
presenter: Stephen McQuary&lt;br /&gt;
&lt;br /&gt;
Adaptive computing - scheduling for super computers&lt;br /&gt;
&lt;br /&gt;
High Performance Computing - HPC&lt;br /&gt;
&lt;br /&gt;
MPI - Message Passing Interface&lt;br /&gt;
&lt;br /&gt;
Super computers - like IBM BlueGene/P&lt;br /&gt;
&lt;br /&gt;
JOBC - Just a Bunch of Computers (shouldn&amp;#039;t it be JOBC?)&lt;br /&gt;
&lt;br /&gt;
Computational Fluid Dynamics&lt;br /&gt;
&lt;br /&gt;
There is a problem called the &amp;quot;Embarrassingly Parallel Problems&amp;quot;.  These are best suited for parallelization.&lt;br /&gt;
&lt;br /&gt;
oggenc &amp;quot;wav&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Simple method with xargs&lt;br /&gt;
 # the P4 parallels the processes&lt;br /&gt;
 time ls *.wav | xargs -n1 -P4 oggenc -- quiet&lt;br /&gt;
&lt;br /&gt;
Torque: - based on Open PBS&lt;br /&gt;
&lt;br /&gt;
Moab is a proprietary scheduler&lt;br /&gt;
&lt;br /&gt;
pbs_server talks to pbs_mom(s)  (mother superior?)&lt;br /&gt;
&lt;br /&gt;
&amp;quot;wall time&amp;quot; is the max time a process can run before there is a problem&lt;br /&gt;
&lt;br /&gt;
clusterresources.com is the old name.  Download under /download/torque&lt;br /&gt;
&lt;br /&gt;
tmux - like screen&lt;br /&gt;
&lt;br /&gt;
htop - cool top program&lt;br /&gt;
&lt;br /&gt;
torque home - /var/spool/torque&lt;br /&gt;
&lt;br /&gt;
 /var/spool/torque/  - torque home&lt;br /&gt;
    /servername      - name / fqdn / ip&lt;br /&gt;
    /server_priv/nodes   - list nodes and cpu  (np number of processes)&lt;br /&gt;
&lt;br /&gt;
 pbs_server&lt;br /&gt;
 qstat&lt;br /&gt;
 pbsnodes&lt;br /&gt;
 pbs_mom&lt;br /&gt;
&lt;br /&gt;
dsh - dancer shell - run command on many systems&lt;br /&gt;
 ~/.dsh/machine.list&lt;br /&gt;
 dsh -a uptime&lt;br /&gt;
 alias dsha=dsh -a&lt;br /&gt;
 dsh.com - show machine_names&lt;br /&gt;
&lt;br /&gt;
 pbsnodes -l  # looser machines&lt;br /&gt;
&lt;br /&gt;
nfs:&lt;br /&gt;
 /share *.ac(rw,no_sub_tree_check,no_root_squash)&lt;br /&gt;
&lt;br /&gt;
submit.sh:&lt;br /&gt;
 #PBS ... commands directive&lt;br /&gt;
 #PBS -L nodes=1:ppn=1,walltime=00:02:00&lt;br /&gt;
 #PBS -N oggend_job&lt;br /&gt;
 cd $PBS_O_WORKER&lt;br /&gt;
 sleep 300&lt;br /&gt;
 echo hello world&lt;br /&gt;
&lt;br /&gt;
 qsub submit.sh&lt;br /&gt;
 qstat&lt;br /&gt;
 stat -a [name]&lt;br /&gt;
&lt;br /&gt;
moab - excellent scheduler (proprietary)&lt;br /&gt;
&lt;br /&gt;
 pbs_sched (fifo scheduler for dev)&lt;br /&gt;
 .o output&lt;br /&gt;
 .e error&lt;br /&gt;
&lt;br /&gt;
 qterm&lt;br /&gt;
 qstat -x&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;job&amp;quot; | qsub -l walltime=300 -N sleeptest&lt;br /&gt;
  # or is it 00:02:00?&lt;br /&gt;
&lt;br /&gt;
&amp;quot;avoided fail block&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 qstat&lt;br /&gt;
&lt;br /&gt;
 iftop - network monitor&lt;br /&gt;
&lt;br /&gt;
== Capturing Audio and Video on the Cheap ==&lt;br /&gt;
&lt;br /&gt;
Presenter: Clint Savage&lt;br /&gt;
&lt;br /&gt;
Purple Atom - purpleatom.com&lt;br /&gt;
&lt;br /&gt;
FreeSeeR&lt;br /&gt;
&lt;br /&gt;
Software:&lt;br /&gt;
* audacity&lt;br /&gt;
* gtkRecord my Desktop&lt;br /&gt;
* Istanbul&lt;br /&gt;
&lt;br /&gt;
Streaming:&lt;br /&gt;
* ice cast - shout cast&lt;br /&gt;
* ices2&lt;br /&gt;
* dark ice&lt;br /&gt;
&lt;br /&gt;
Video:&lt;br /&gt;
* vga2usb - epiphan.com $300&lt;br /&gt;
* scan converter / EZCap&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Video Editors: kdenlive, kino, pitivi&lt;br /&gt;
&lt;br /&gt;
Screen cap: istanbul, gtk-record my desktop&lt;br /&gt;
&lt;br /&gt;
GStreamer: gstreamer.freedesktop.org&lt;br /&gt;
&lt;br /&gt;
! is a pipe to Gstreamer&lt;br /&gt;
&lt;br /&gt;
Radio Shack wireless lapel Microphone $50 - best&lt;br /&gt;
&lt;br /&gt;
== Advanced Git ==&lt;br /&gt;
&lt;br /&gt;
git hub:&lt;br /&gt;
 git hub: advancedGit&lt;br /&gt;
 git &lt;br /&gt;
&lt;br /&gt;
 git init&lt;br /&gt;
 git add [file]&lt;br /&gt;
 git commit&lt;br /&gt;
&lt;br /&gt;
 git clone git://github.com/timcharper/advancedGit.git&lt;br /&gt;
 git clone http://github.com/timcharper/advancedGit.git&lt;br /&gt;
&lt;br /&gt;
Topics:&lt;br /&gt;
* Rebasing&lt;br /&gt;
* Hooks&lt;br /&gt;
* branching mixed up&lt;br /&gt;
* tab completion&lt;br /&gt;
* .gitignore&lt;br /&gt;
* ressurect / undo branch deletions&lt;br /&gt;
* interactive rebase&lt;br /&gt;
&lt;br /&gt;
Clean Commits - it all starts here&lt;br /&gt;
&lt;br /&gt;
alias to add and commit? - would not recommend to do, as the staging feature is really handy&lt;br /&gt;
 git commit -a&lt;br /&gt;
 aliases &amp;#039;git add -p&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Twitter: timcharper  (Tim C Harper)&lt;br /&gt;
&lt;br /&gt;
Getting branches mixed up:&lt;br /&gt;
 gitk --all  # history visualizer&lt;br /&gt;
 tig       # console purists&lt;br /&gt;
&lt;br /&gt;
 yum install git-gui&lt;br /&gt;
&lt;br /&gt;
 git co -b wip  # branch work in progress&lt;br /&gt;
&lt;br /&gt;
== Cucumber and Nagios ==&lt;br /&gt;
&lt;br /&gt;
Cucumber - http://cukes.info/ &lt;br /&gt;
:&amp;quot;Behavior Driven Development with elegance and joy&amp;quot;&lt;br /&gt;
&lt;br /&gt;
cucumber-nagios - http://auxesis.github.com/cucumber-nagios/&lt;br /&gt;
:&amp;quot;cucumber-nagios lets you describe how a system should work in natural language, and outputs whether it does in the Nagios plugin format&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 cucumber-nagios-gen&lt;br /&gt;
 cucumber-nagios-gen project utosc.com&lt;br /&gt;
 sudo gem bundle install  # install dependencies&lt;br /&gt;
&lt;br /&gt;
 cucumber-nagios-gen feature&lt;br /&gt;
&lt;br /&gt;
 bin/cucumber-nagios features/utosc.com/login.feature&lt;br /&gt;
 bin/cucumber-nagios features/utosc.com/login.feature --pretty&lt;br /&gt;
&lt;br /&gt;
 cucumber --require features features/utosc.com/login.feature&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Scenario: Visiting home page&lt;br /&gt;
 When I got to http://www.mcquay.me&lt;br /&gt;
 Then the request should succeed&lt;br /&gt;
 And I got to /register&lt;br /&gt;
 Then I should see &amp;quot;Required. 30&amp;quot;&lt;br /&gt;
 When I fill in &amp;quot;Username&amp;quot; # missing last bit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== UTOSC 2010 - Python Full Meal Deal ==&lt;br /&gt;
&lt;br /&gt;
See [[UTOSC 2010/Python Full Meal Deal]]&lt;br /&gt;
&lt;br /&gt;
== Automation ==&lt;br /&gt;
&lt;br /&gt;
Presenter: Jared Smith&lt;br /&gt;
&lt;br /&gt;
DHCP PXE TFTP&lt;br /&gt;
&lt;br /&gt;
Anaconda&lt;br /&gt;
&lt;br /&gt;
gen password with open ssl&lt;br /&gt;
&lt;br /&gt;
how to not reauto start install with Anaconda?  -- cobbler is the fix&lt;br /&gt;
&lt;br /&gt;
anaconda-ks.cfg create on install on RHEL based installs&lt;br /&gt;
&lt;br /&gt;
cobbler to configure&lt;br /&gt;
&lt;br /&gt;
koan - install for virt. env.&lt;br /&gt;
&lt;br /&gt;
puppet - config engine&lt;br /&gt;
&lt;br /&gt;
func - companion to puppet&lt;br /&gt;
* like dancer shell&lt;br /&gt;
* see cluster ssh&lt;br /&gt;
&lt;br /&gt;
&amp;quot;surprise is the opposite of engagement&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Buy &amp;#039;em cheap and stack &amp;#039;em deep&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Meat cloud computing&amp;quot; - where the install isn&amp;#039;t scripted or standardized&lt;br /&gt;
&lt;br /&gt;
Item potency - persistence?&lt;br /&gt;
&lt;br /&gt;
stage your changes?&lt;br /&gt;
&lt;br /&gt;
== Zenoss ==&lt;br /&gt;
&lt;br /&gt;
Presenter: Corey Edwards&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
Many have thought &amp;quot;I could build a better Nagios&amp;quot;, and many have failed. Turns out it&amp;#039;s a pretty difficult thing to get right and thus Nagios remains the defacto NMS.&lt;br /&gt;
&lt;br /&gt;
Zenoss may be the solution for you. It offers many advances over previous generation tools such as Nagios and Cacti. It&amp;#039;s simple to use, easily extensible and rich in features.&lt;br /&gt;
&lt;br /&gt;
In this presentation we will:&lt;br /&gt;
&lt;br /&gt;
* learn the benefits of Zenoss&lt;br /&gt;
* install Zenoss&lt;br /&gt;
* create custom templates&lt;br /&gt;
* set up monitoring for an example network&lt;br /&gt;
* write python scripts to interact directly with the Zenoss database&lt;br /&gt;
&lt;br /&gt;
Come learn how Zenoss can make your life easier.&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenoss: http://www.zenoss.com/&lt;br /&gt;
&lt;br /&gt;
Community Edition: http://community.zenoss.org/index.jspa&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zenoss is *ALL* web based!  Nice!&lt;br /&gt;
&lt;br /&gt;
Zenoss is written in Python&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Wordpress ==&lt;br /&gt;
&lt;br /&gt;
See [[wordpress]]&lt;br /&gt;
&lt;br /&gt;
== NEW ==&lt;/div&gt;</summary>
		<author><name>Kenneth</name></author>
	</entry>
</feed>