<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8214932147906650442</id><updated>2011-09-12T15:37:35.380-07:00</updated><category term='regex grep'/><title type='text'>Politics, Robotics and Linux</title><subtitle type='html'>At the moment I am most passionate about politics, robotics and linux. So if you like any of this stuff come and read!!!</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>45</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-7274719129140770370</id><published>2011-09-12T12:08:00.001-07:00</published><updated>2011-09-12T15:37:35.386-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='regex grep'/><title type='text'>Searching code for a string not in the comments...</title><content type='html'>Every few months I need to search my code for a string but there are a bunch of references to that code in the comments and I want a regex that will remove those for me. I forget how to do it so every few months I have to figure it out again, well hopefully I will remember when I put it here:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&gt;cat example.txt&lt;br /&gt;&lt;br /&gt;token asdf asdf                      @OK&lt;br /&gt;asdf token asdf                      @OK&lt;br /&gt;//token                              @BAD&lt;br /&gt;asdf token asdf // asdf token asdf   @OK&lt;br /&gt;// This is a token                   @BAD&lt;br /&gt;/some/dir/token                      @OK&lt;br /&gt;aaa token try again                  @OK&lt;br /&gt;aaa token try again                  @OK&lt;br /&gt;aaaa token try again                 @OK&lt;br /&gt;&lt;br /&gt;&gt;egrep '^.?([^/][^/])*token' example.txt&lt;br /&gt;&lt;br /&gt;token asdf asdf                      @OK&lt;br /&gt;asdf token asdf                      @OK&lt;br /&gt;asdf token asdf // asdf token asdf   @OK&lt;br /&gt;aaaatoken try again                  @OK&lt;br /&gt;aaa token try again                  @OK&lt;br /&gt;aaaa token try again                 @OK&lt;br /&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-7274719129140770370?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/7274719129140770370/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2011/09/searching-code-for-string-not-in.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/7274719129140770370'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/7274719129140770370'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2011/09/searching-code-for-string-not-in.html' title='Searching code for a string not in the comments...'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-1231853147663534567</id><published>2011-04-21T14:11:00.000-07:00</published><updated>2011-04-21T14:14:03.632-07:00</updated><title type='text'>USB3 Speeds</title><content type='html'>I &lt;a href="http://photography-on-the.net/forum/showthread.php?t=980975"&gt;read this little post&lt;/a&gt; about USB3 speeds that I found very interesting since I am working on designing USB3 hubs.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;COUNTERPOINT&lt;br /&gt;by Chris Karr, Director, Software/Firmware Engineering of the Branded Products Group at Western Digital Corporation (and previous author of SpeedTools (QuickBench, ZoneBench, etc.),&lt;br /&gt;&lt;br /&gt;I read your article and have some feedback about your Key Insight #1. I strongly disagree that USB 3.0 is slower than eSATA, per se. eSATA is limited to 3 Gb/sec whereas USB 3.0 is a 5 Gb/sec interface. They both use 8b/10b encoding so they are both 80% efficient on paper. (Transport protocol overhead further reduces real world data transfer rates and this overhead varies by bus interface type.) We expect USB 3.0 to be able to crack 400 Megabinary bytes per second (MiB/sec) with the right setup. eSATA will likely never crack 275 MiB/sec unless/until they move to 6 Gb.&lt;br /&gt;&lt;br /&gt;The limiting factor with USB 3.0 storage devices to date has been the 3 Gb SATA backend of the first generation of USB 3.0 to SATA bridge chips. The 3 Gb SATA interface limits the potential of the 5 Gb Superspeed USB interface. Plus, converting from SATA protocol to USB protocol adds a bit of additional overhead.&lt;br /&gt;&lt;br /&gt;That said, there are two basic approaches to actually deliver max speed over USB SuperSpeed with a bridged SATA solution, neither of which, to my knowledge, have yet been done:&lt;br /&gt;1) Put two 3 Gb SATA ports on the back end of the USB bridge and connect two SATA devices which can saturate both of the SATA busses (think two SandForce-based SSD's in a RAID 0).&lt;br /&gt;2) Make a bridge chip with a USB 3.0 front end and a 6 Gb SATA backend and stuff a 500 MiB/sec enterprise-class 6 Gb SSD or RAM drive behind it.&lt;br /&gt;&lt;br /&gt;You will need a very powerful PCI bus (aka Gen 2 running off north-bridge, etc.) to get the best numbers, but we believe USB 3.0 can reach at least 400 MiB/sec once the other system bottlenecks are resolved. Of course, with a single HDD all this comparison stuff doesn’t mean much because they just aren’t fast enough to be meaningfully bottlenecked by either SATA or SuperSpeed USB.&lt;br /&gt;&lt;br /&gt;Lastly, look for well-designed integrated USB 3.0 host controllers coming in the near future to further boost USB max data transfer rates.&lt;br /&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-1231853147663534567?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/1231853147663534567/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2011/04/usb3-speeds.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/1231853147663534567'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/1231853147663534567'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2011/04/usb3-speeds.html' title='USB3 Speeds'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-353666396552190497</id><published>2011-04-06T18:52:00.000-07:00</published><updated>2011-04-06T18:56:11.768-07:00</updated><title type='text'>Preserving code formatting in blog posts</title><content type='html'>In my last post I needed to keep the format of the code snippets. I found this very useful tool that will keep the formatting for you and and generate the raw HTML for it:&lt;br /&gt;&lt;br /&gt;http://www.manoli.net/csharpformat/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-353666396552190497?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/353666396552190497/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2011/04/preserving-code-formatting-in-blog.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/353666396552190497'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/353666396552190497'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2011/04/preserving-code-formatting-in-blog.html' title='Preserving code formatting in blog posts'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-4108697616114053777</id><published>2011-04-06T18:08:00.000-07:00</published><updated>2011-04-06T18:58:34.816-07:00</updated><title type='text'>Vim Visual Selection Tricks</title><content type='html'>&lt;!-- code formatted by http://manoli.net/csharpformat/ --&gt;&lt;br /&gt;&lt;style type="text/css"&gt;&lt;br /&gt;.csharpcode, .csharpcode pre&lt;br /&gt;{&lt;br /&gt; font-size: small;&lt;br /&gt; color: black;&lt;br /&gt; font-family: Consolas, "Courier New", Courier, Monospace;&lt;br /&gt; background-color: #ffffff;&lt;br /&gt; /*white-space: pre;*/&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;.csharpcode pre { margin: 0em; }&lt;br /&gt;&lt;br /&gt;.csharpcode .rem { color: #008000; }&lt;br /&gt;&lt;br /&gt;.csharpcode .kwrd { color: #0000ff; }&lt;br /&gt;&lt;br /&gt;.csharpcode .str { color: #006080; }&lt;br /&gt;&lt;br /&gt;.csharpcode .op { color: #0000c0; }&lt;br /&gt;&lt;br /&gt;.csharpcode .preproc { color: #cc6633; }&lt;br /&gt;&lt;br /&gt;.csharpcode .asp { background-color: #ffff00; }&lt;br /&gt;&lt;br /&gt;.csharpcode .html { color: #800000; }&lt;br /&gt;&lt;br /&gt;.csharpcode .attr { color: #ff0000; }&lt;br /&gt;&lt;br /&gt;.csharpcode .alt &lt;br /&gt;{&lt;br /&gt; background-color: #f4f4f4;&lt;br /&gt; width: 100%;&lt;br /&gt; margin: 0em;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;.csharpcode .lnum { color: #606060; }&lt;br /&gt;&lt;/style&gt;&lt;br /&gt;&lt;pre class="csharpcode"&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="rem"&gt;# VISUAL SELECTION TRICKS:&lt;/span&gt;&lt;br /&gt;  &lt;span class="rem"&gt;# You can use filters and vim's execution mode.to do some powerful things.&lt;/span&gt;&lt;br /&gt;  &lt;span class="rem"&gt;# A filter is any standard UNIX program (sort, awk, grep, cut, paste, sed ...) that can read from stdin and write to stdout.&lt;/span&gt;&lt;br /&gt;  &lt;span class="rem"&gt;# Vim's execution mode lets you read in or replace text with the output of a program. If you make a visual selection (say,&lt;/span&gt;&lt;br /&gt;  &lt;span class="rem"&gt;# using V or C-V), and hit :, your command prompt will immediately be :'&amp;lt;,'&amp;gt;, which means "Apply whatever command follows&lt;/span&gt;&lt;br /&gt;  &lt;span class="rem"&gt;# to the lines included in the visual selection." At this point, you can write !foo to replace the text with the output of&lt;/span&gt;&lt;br /&gt;  &lt;span class="rem"&gt;# program foo.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;  &lt;span class="rem"&gt;# For example, to sort the text by the python column, select it, hit :, and enter !sort -k5. The whole command will look like&lt;/span&gt;&lt;br /&gt;    :&lt;span class="str"&gt;'&amp;lt;,'&lt;/span&gt;&amp;gt;!sort -k5&lt;br /&gt;  &lt;span class="rem"&gt;# Running it will produce:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;       a  b  cd  1  p&lt;br /&gt;       b  b  cd  2  y&lt;br /&gt;       c  b  cd  3  t&lt;br /&gt;       d  b  cd  4  h&lt;br /&gt;&lt;br /&gt;  &lt;span class="rem"&gt;# Results in:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;       d  b  cd  4  h&lt;br /&gt;       a  b  cd  1  p&lt;br /&gt;       c  b  cd  3  t&lt;br /&gt;       b  b  cd  2  y&lt;br /&gt;&lt;br /&gt;  &lt;span class="rem"&gt;# For more complex tasks, awk is your friend. A command like&lt;/span&gt;&lt;br /&gt;    :&lt;span class="str"&gt;'&amp;lt;,'&lt;/span&gt;&amp;gt;!awk &lt;span class="str"&gt;'{ print $1, $3, $2, $4, $5 }'&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;a cd b 1 p&lt;br /&gt;b cd b 2 y&lt;br /&gt;c cd b 3 t&lt;br /&gt;d cd b 4 h&lt;br /&gt;&lt;br /&gt;  &lt;span class="rem"&gt;# will flip the second and third columns (but note that inter-column spacing is collapsed).&lt;/span&gt;&lt;br /&gt;  &lt;span class="rem"&gt;# To do maths on a column, try something like&lt;/span&gt;&lt;br /&gt;    :&lt;span class="str"&gt;'&amp;lt;,'&lt;/span&gt;&amp;gt;!awk &lt;span class="str"&gt;'{ sub($4, $4*2+1); print }'&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;       a  b  cd  3  p&lt;br /&gt;       b  b  cd  5  y&lt;br /&gt;       c  b  cd  7  t&lt;br /&gt;       d  b  cd  9  h&lt;br /&gt;&lt;br /&gt;  &lt;span class="rem"&gt;# Could get the same result with perl if there is only one column of numbers:&lt;/span&gt;&lt;br /&gt;    :&lt;span class="str"&gt;'&amp;lt;,'&lt;/span&gt;&amp;gt;!perl -pe &lt;span class="str"&gt;'s/\d+/$&amp;amp;*2+1/e'&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;  &lt;span class="rem"&gt;# To flip the visual selection just select the rows and then:&lt;/span&gt;&lt;br /&gt;    :&lt;span class="str"&gt;'&amp;lt;,'&lt;/span&gt;&amp;gt;!tac&lt;br /&gt;&lt;br /&gt;       d  b  cd  4  h&lt;br /&gt;       c  b  cd  3  t&lt;br /&gt;       b  b  cd  2  y&lt;br /&gt;       a  b  cd  1  p&lt;br /&gt;&lt;br /&gt;  &lt;span class="rem"&gt;# This pipes the lines through the unix 'reverse cat' program.&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;These ideas were taken from here:&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://stackoverflow.com/questions/5561249/how-to-flip-a-visual-selection-in-vim"&gt;http://stackoverflow.com/questions/5561249/how-to-flip-a-visual-selection-in-vim&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Sand here:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://stackoverflow.com/questions/3752785/what-can-you-execute-on-visually-selected-text-in-vim"&gt;http://stackoverflow.com/questions/3752785/what-can-you-execute-on-visually-selected-text-in-vim&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-4108697616114053777?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/4108697616114053777/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2011/04/some-new-interesting-vim-tricks-with.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/4108697616114053777'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/4108697616114053777'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2011/04/some-new-interesting-vim-tricks-with.html' title='Vim Visual Selection Tricks'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-8496284471090237265</id><published>2011-03-05T12:11:00.000-08:00</published><updated>2011-03-05T13:17:52.274-08:00</updated><title type='text'>My switch from the 3Gs iPhone to Android (Samsung EPIC on Sprint)</title><content type='html'>I just got my first android phone, the Samsung EPIC 4G through Sprint. There are many reasons why I chose this specific Android phone but here were a few of my requirements:&lt;div&gt;&lt;ul&gt;&lt;li&gt;Physical keyboard (although I am also very impressed with Swype)&lt;/li&gt;&lt;li&gt;Front facing camera which will allow for video conferencing&lt;/li&gt;&lt;li&gt;At least a 1Ghz processor (The GPU helps out a lot as well)&lt;/li&gt;&lt;li&gt;AMOLED screen (Not technically a requirement but if you have ever seen it you will understand)&lt;/li&gt;&lt;li&gt;Android OS 2.2 (Froyo) -- Sprint actually just retracted this update but it should be back soon.&lt;/li&gt;&lt;li&gt;Faster network (4G)&lt;/li&gt;&lt;li&gt;Stop paying any more Apple taxes&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;Some may wonder why I didn't go with the new iphone. Well, I wanted a physical keyboard and I wanted the ability to create scripts on my phone so that I could get my phone to do exactly what I wanted it to do.  Sprint seems to be a much better user experience so far as well, with or without 4G. As it turns out my wife was already on Sprint so our cash flow will also be much improved ($0.20 per text? c'mon AT&amp;amp;T). &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I was tempted to wait for this summer as to let my contract with AT&amp;amp;T lapse. There will certainly be newer phones introduced by then as well, but I figured life is too short. Also the fees for ending the contract were not that bad and Sprint had some pretty good incentives that more than made up for it.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Is there anything I will miss about my iPhone? Honestly I don't think so. Some may miss iTunes but I never really got into iTunes that much anyway. I almost always stream my music (&lt;a href="http://www.slacker.com/"&gt;Slacker&lt;/a&gt;) anyway so the network is much more important to me.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Upside surprises&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;The network just seems much much snappier than AT&amp;amp;T even when I am on 3G.&lt;/li&gt;&lt;li&gt;The screen is amazing when I set it next to my old phone the iPhone seems downright dull. When I look at my Picasa pictures on the EPIC using there "gallery" app it is like looking at the pictures for the first time. I have never seen my pictures looking so good!&lt;/li&gt;&lt;li&gt;Integration with all the Google tools is excellent. &lt;/li&gt;&lt;li&gt;Swype virtual keyboard is much more usable than I ever thought it could be. It makes me question my requirement for a physical keyboard it is that good. If you are not planning to write scripts on your phone you may really not need the physical keyboard, maybe.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Downside surprises&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;The keyboard keys are a little bit too flush. I wish everyone that made physical keyboards would use the raised keys like on Blackberry's. I find myself looking at the keys a bit too much trying to find where my fingers are exactly. I was thinking about adding a dot of super glue to all the keys so that I could really feel them but I am not sure there is enough clearance. &lt;/li&gt;&lt;li&gt;I wish the four buttons at the bottom of the phone were physical keys as well so I wouldn't have to look at them to push them.&lt;/li&gt;&lt;li&gt;I find it a bit frustrating to get help with things. For instance one of the reasons I got the phone was so that I could send certain incoming calls directly to voice mail (you know who you are, jk :). If you search the intertubes you can find lots of people talking about it, but it seems like my phone does not have the option. I am not sure if it is the Android OS 2.1 or Sprints front end or what but the slight differences are a bit frustrating. On the other hand I know that eventually I will get it working where as with the iPhone I would never be able to fix it because of the closed nature of the phone. &lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;My following posts will describe in more details my attempts to script up my phone.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-8496284471090237265?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/8496284471090237265/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2011/03/my-switch-from-3gs-iphone-to-android.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/8496284471090237265'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/8496284471090237265'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2011/03/my-switch-from-3gs-iphone-to-android.html' title='My switch from the 3Gs iPhone to Android (Samsung EPIC on Sprint)'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-3022606923844798865</id><published>2010-05-25T21:48:00.000-07:00</published><updated>2010-05-25T22:23:00.620-07:00</updated><title type='text'>Is DropBox a usefull tool?</title><content type='html'>hmm.... In a word, yes! I feel like I am a little late to this party but what a productivity booster &lt;a href="https://www.dropbox.com/referrals/NTc0MzU2OTE5"&gt;DropBox&lt;/a&gt; can be. The greatest thing about Dropbox is that it acts like a folder on your drive and everything you put in there gets synced. Now you might not think that is so great since you would have to store all your configuration files in some random folder but all you really have to do is move your important files to the sync folder and then create a symbolic link to them from the original location. Pretty darn simple and very effective. Now I can have one .vimrc file, one plugin directory, one .alias file and all my different machines can use it!&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Here is a snippet from my notes that shows you how simple this really is:&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;  SYNCING MY FILES VIA THE CLOUD (DROPBOX)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;    Once dropbox is installed I ran these commands on my myth box and things were backedup and synced&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;      mv hlp Dropbox/HOME&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;      ln -s ~/Dropbox/HOME/hlp/ hlp&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;      mv bin Dropbox/HOME&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;      ln -s ~/Dropbox/HOME/bin/ bin&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;      mv web Dropbox/HOME&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;      ln -s ~/Dropbox/HOME/web/ web&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;      mv .vimrc Dropbox/HOME&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;      ln -s ~/Dropbox/HOME/.vimrc/ .vimrc&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;      mv .tcshrc Dropbox/HOME&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;      ln -s ~/Dropbox/HOME/.tcshrc/ .tcshrc&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;      mv .alias Dropbox/HOME&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;      ln -s ~/Dropbox/HOME/.alias/ .alias&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;    On other linux machines I will have to diff these files and see if there is any way to easily merge them&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;      tkdiff ~/Dropbox/HOME/hlp/ hlp&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;      tkdiff ~/Dropbox/HOME/bin/ bin&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;      tkdiff ~/Dropbox/HOME/web/ web&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;      tkdiff ~/Dropbox/HOME/.vimrc/ .vimrc&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;      tkdiff ~/Dropbox/HOME/.tcshrc/ .tcshrc&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;      tkdiff ~/Dropbox/HOME/.alias/ .alias&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Use&lt;a href="https://www.dropbox.com/referrals/NTc0MzU2OTE5"&gt; this link&lt;/a&gt; to sign up and you get an additional 250MB of storage.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-3022606923844798865?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/3022606923844798865/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2010/05/is-dropbox-usefull-tool.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/3022606923844798865'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/3022606923844798865'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2010/05/is-dropbox-usefull-tool.html' title='Is DropBox a usefull tool?'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-8977465729605205875</id><published>2010-05-08T14:35:00.000-07:00</published><updated>2010-05-08T14:41:31.244-07:00</updated><title type='text'>Chaning startup programs on windows 7</title><content type='html'>&lt;div style="font-size: large; font-weight: bold;"&gt;&lt;b&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="color:navy;"&gt;Through System Configuration&lt;/span&gt;&lt;/span&gt;&lt;/b&gt; &lt;/div&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="color:red;"&gt;NOTE:&lt;/span&gt;&lt;/b&gt; &lt;i&gt;Using the Selective Startup option in  System Configuration (msconfig), you can enable or disable startup  programs. You will need to be logged into an &lt;b&gt;administator&lt;/b&gt;  account, or provide the administrator password to open System  Configuration&lt;/i&gt;.&lt;blockquote&gt;&lt;b&gt;&lt;span style="font-size:100%;"&gt;1.&lt;/span&gt;&lt;/b&gt; Open the  Start Menu.&lt;blockquote&gt;A) In the search line, type &lt;b&gt;msconfig&lt;/b&gt; and  press &lt;b&gt;Enter&lt;/b&gt;. (See screenshot below) &lt;blockquote&gt;&lt;a href="http://www.sevenforums.com/attachments/tutorials/2167d1231221579-startup-programs-change-start_menu_msconfig.jpg" rel="Lightbox_12757" id="attachment2167"&gt;&lt;img title="Startup Programs -  Change-start_menu_msconfig.jpg" src="http://www.sevenforums.com/attachments/tutorials/2167d1231221579t-startup-programs-change-start_menu_msconfig.jpg" class="thumbnail" alt="Startup Programs -  Change-start_menu_msconfig.jpg" style="margin: 2px;" border="0" /&gt;&lt;/a&gt;&lt;br /&gt; &lt;/blockquote&gt;B) Go to step 3.&lt;br /&gt;&lt;/blockquote&gt;&lt;b&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="color:red;"&gt;OR&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size:100%;"&gt;2.&lt;/span&gt;&lt;/b&gt;  Open the&lt;a href="http://www.sevenforums.com/tutorials/262-control-panel-view-home-all-items.html" target="_blank"&gt;&lt;b&gt; &lt;u&gt;Control Panel (All items view)&lt;/u&gt;&lt;/b&gt;&lt;/a&gt; and  click on the &lt;b&gt;Administrative Tools&lt;/b&gt; icon, then click on &lt;b&gt;System  Configuration&lt;/b&gt;. Close the Control Panel and Administrative Tools  windows.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size:100%;"&gt;3.&lt;/span&gt;&lt;/b&gt; If prompted, click on &lt;b&gt;Continue&lt;/b&gt;  for the UAC prompt, or type in the administrator's password.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size:100%;"&gt;4.&lt;/span&gt;&lt;/b&gt; Click on the &lt;b&gt;Startup&lt;/b&gt; tab. (See screenshot  below)&lt;br /&gt;&lt;div style="width: 100%;"&gt; &lt;div style="font-style: italic;  color: rgb(153, 102, 51); margin: 8px auto 0px; font-weight: bold;  font-size: small; padding: 5px; background-color: rgb(255, 242, 170);  border-left: 4px solid rgb(202, 202, 0); border-top: 1px solid rgb(202,  202, 0); border-right: 1px solid rgb(202, 202, 0);"&gt; &lt;img title="Tip" class="inlineimg" src="http://www.sevenforums.com/images/tipsmall.png" alt="Tip" align="absmiddle" border="0" height="16" width="20" /&gt;   Tip&lt;/div&gt;  &lt;div style="padding: 4px; background: none repeat scroll right bottom  rgb(255, 255, 225); border-left: 4px solid rgb(202, 202, 0);  border-right: 1px solid rgb(202, 202, 0); border-bottom: 1px solid  rgb(202, 202, 0); margin: 0px auto 8px;"&gt;If you look under the &lt;b&gt;Location&lt;/b&gt;  column for the &lt;b&gt;Start Item&lt;/b&gt;, you will see the registry location  for it that you can use to remove the startup item using METHOD FOUR  below instead.&lt;/div&gt; &lt;/div&gt;&lt;blockquote&gt;&lt;a href="http://www.sevenforums.com/attachments/tutorials/2160d1231220077-startup-programs-change-system_configuration_startup_tab.jpg" rel="Lightbox_12757" id="attachment2160"&gt;&lt;img title="Startup Programs -  Change-system_configuration_startup_tab.jpg" src="http://www.sevenforums.com/attachments/tutorials/2160d1231220077t-startup-programs-change-system_configuration_startup_tab.jpg" class="thumbnail" alt="Startup Programs -  Change-system_configuration_startup_tab.jpg" style="margin: 2px;" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;b&gt;&lt;span style="font-size:100%;"&gt;5. &lt;span style="color:blue;"&gt;To  Disable a Startup Program -&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;blockquote&gt;A) Select a  listed startup program and uncheck it. (See screenshot above)&lt;br /&gt;&lt;br /&gt;B) Repeat to disable anymore listed startup programs.&lt;br /&gt;&lt;/blockquote&gt;&lt;b&gt;&lt;span style="font-size:100%;"&gt;6. &lt;span style="color:blue;"&gt;To Enable a Startup Program -&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;blockquote&gt;A)  Select a listed startup program and check it. (See screenshot below  step 4)&lt;br /&gt;&lt;br /&gt;B) Repeat to enable anymore listed startup programs.&lt;br /&gt;&lt;/blockquote&gt;&lt;b&gt;&lt;span style="font-size:100%;"&gt;7. &lt;span style="color:blue;"&gt;To Disable All Listed Startup Programs -&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;blockquote&gt;A)  Click on the &lt;b&gt;Disable all&lt;/b&gt; button. (See screenshot below step 4)&lt;br /&gt;&lt;br /&gt;B) Go to step 9.&lt;br /&gt;&lt;/blockquote&gt;&lt;b&gt;&lt;span style="font-size:100%;"&gt;8. &lt;span style="color:blue;"&gt;To Enable All Listed Startup Programs -&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;blockquote&gt;A)  Click on the &lt;b&gt;Enable all&lt;/b&gt; button. (See screenshot below step 4)&lt;br /&gt; &lt;/blockquote&gt;&lt;b&gt;&lt;span style="font-size:100%;"&gt;9.&lt;/span&gt;&lt;/b&gt; Click on &lt;b&gt;Apply&lt;/b&gt;.  (See screenshot below step 4)&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size:100%;"&gt;10.&lt;/span&gt;&lt;/b&gt;  Click on the &lt;b&gt;Boot&lt;/b&gt; tab, then check the &lt;b&gt;Make all boot settings  permanent &lt;/b&gt;box and click on &lt;b&gt;OK&lt;/b&gt;. (See screenshot below)&lt;blockquote&gt;&lt;a href="http://www.sevenforums.com/attachments/tutorials/71528d1273254573-startup-programs-change-boot-1.jpg" rel="Lightbox_12757" id="attachment71528"&gt;&lt;img title="Startup Programs -  Change-boot-1.jpg" src="http://www.sevenforums.com/attachments/tutorials/71528d1273254573t-startup-programs-change-boot-1.jpg" class="thumbnail" alt="Startup Programs - Change-boot-1.jpg" style="margin: 2px;" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;b&gt;&lt;span style="font-size:100%;"&gt;11.&lt;/span&gt;&lt;/b&gt;  Click on &lt;b&gt;Yes&lt;/b&gt;. (See screenshot below)&lt;blockquote&gt;&lt;a href="http://www.sevenforums.com/attachments/tutorials/71529d1273254573-startup-programs-change-boot-2.jpg" rel="Lightbox_12757" id="attachment71529"&gt;&lt;img title="Startup Programs -  Change-boot-2.jpg" src="http://www.sevenforums.com/attachments/tutorials/71529d1273254573t-startup-programs-change-boot-2.jpg" class="thumbnail" alt="Startup Programs - Change-boot-2.jpg" style="margin: 2px;" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;b&gt;&lt;span style="font-size:100%;"&gt;12.&lt;/span&gt;&lt;/b&gt;  Click on the &lt;b&gt;Restart&lt;/b&gt; button to apply. (See screenshot below)&lt;br /&gt; &lt;b&gt;&lt;span style="color:red;"&gt;WARNING:&lt;/span&gt;&lt;/b&gt; &lt;i&gt;This will restart your  computer immediately. Save and close anything that you are working on  first&lt;/i&gt;.&lt;blockquote&gt;&lt;a href="http://www.sevenforums.com/attachments/tutorials/2161d1231220084-startup-programs-change-restart.jpg" rel="Lightbox_12757" id="attachment2161"&gt;&lt;img title="Startup Programs -  Change-restart.jpg" src="http://www.sevenforums.com/attachments/tutorials/2161d1231220084t-startup-programs-change-restart.jpg" class="thumbnail" alt="Startup Programs - Change-restart.jpg" style="margin: 2px; width: 300px; height: 137px;" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-8977465729605205875?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/8977465729605205875/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2010/05/chaning-startup-programs-on-windows-7.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/8977465729605205875'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/8977465729605205875'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2010/05/chaning-startup-programs-on-windows-7.html' title='Chaning startup programs on windows 7'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-2420260304745976786</id><published>2010-03-29T20:47:00.001-07:00</published><updated>2010-03-29T20:47:31.101-07:00</updated><title type='text'>VIM TIPS</title><content type='html'>&lt;div&gt;VIM TIPS&lt;/div&gt;&lt;div&gt;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp; You can substitute the search string for upper and lower case ( &lt;a href="http://vim.wikia.com/wiki/Switching_case_of_characters"&gt;http://vim.wikia.com/wiki/Switching_case_of_characters&lt;/a&gt;&amp;nbsp;):&lt;/div&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; :%s/\(foobar\)/\L\1/gc &lt;/div&gt;&lt;div&gt;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&lt;/div&gt;&lt;br&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-2420260304745976786?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/2420260304745976786/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2010/03/vim-tips.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/2420260304745976786'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/2420260304745976786'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2010/03/vim-tips.html' title='VIM TIPS'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-8936161972078948609</id><published>2010-03-29T12:33:00.001-07:00</published><updated>2010-03-29T12:33:49.223-07:00</updated><title type='text'>PERFORCE TIPS:</title><content type='html'>&lt;div&gt;PERFORCE TIPS:&lt;/div&gt;&lt;div&gt;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp;&lt;/div&gt;&lt;div&gt;# USEFULL ALIASES:&lt;br&gt;&amp;nbsp; # PERFORCE SHORTCUTS&lt;br&gt;&amp;nbsp; alias p4_client echo `p4 info | perl -ne &amp;#39;s/Client name: (.*)$/print $1/e&amp;#39;`&lt;br&gt;&amp;nbsp; alias p4_changes p4 changes -c `p4_client`&lt;/div&gt;&lt;div&gt;&amp;nbsp; alias myp4v p4v -c `p4_client` -u ${USER} -p ${P4PORT}&lt;br&gt;&lt;br&gt;&lt;/div&gt;&lt;br&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-8936161972078948609?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/8936161972078948609/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2010/03/perforce-tips.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/8936161972078948609'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/8936161972078948609'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2010/03/perforce-tips.html' title='PERFORCE TIPS:'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-5239540582256131469</id><published>2010-01-18T11:36:00.000-08:00</published><updated>2010-01-18T11:40:01.860-08:00</updated><title type='text'>Microsoft is sooo 1980s....</title><content type='html'>I mean really how come one of the oldest email clients around (outlook) does not even include instant messaging??? Yah know... I mean ... Really is it that difficult? I mean whateva... Microsoft rocks... NOT!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-5239540582256131469?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/5239540582256131469/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2010/01/microsoft-is-sooo-1980s.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/5239540582256131469'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/5239540582256131469'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2010/01/microsoft-is-sooo-1980s.html' title='Microsoft is sooo 1980s....'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-4862492739515431783</id><published>2009-10-29T21:30:00.001-07:00</published><updated>2009-10-29T21:30:48.990-07:00</updated><title type='text'>Google Sidewiki entry by Stephen</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;&lt;p&gt;This is a really great company!&lt;/p&gt;in reference to: &lt;a href='http://proasix.com/'&gt;&lt;a href='http://proasix.com/'&gt;http://proasix.com/&lt;/a&gt;&lt;/a&gt; (&lt;a href='http://www.google.com/sidewiki/entry/117956649471569180949/id/2IE4R_NLwNc7SOQ9Lwvpv2I8AU0'&gt;view on Google Sidewiki&lt;/a&gt;)&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-4862492739515431783?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/4862492739515431783/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2009/10/google-sidewiki-entry-by-stephen.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/4862492739515431783'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/4862492739515431783'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2009/10/google-sidewiki-entry-by-stephen.html' title='Google Sidewiki entry by Stephen'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-1441570508592747697</id><published>2009-09-25T08:31:00.000-07:00</published><updated>2009-09-25T08:33:36.248-07:00</updated><title type='text'>How to colorize any text based output</title><content type='html'>I found this little tidbit the other day. Very useful for highlighting simulation output warnings and errors:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://winterstorm.ca/hilite"&gt;http://winterstorm.ca/hilite&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-1441570508592747697?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/1441570508592747697/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2009/09/how-to-colorize-any-text-based-output.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/1441570508592747697'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/1441570508592747697'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2009/09/how-to-colorize-any-text-based-output.html' title='How to colorize any text based output'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-2996690002625116944</id><published>2009-09-23T22:25:00.000-07:00</published><updated>2009-09-23T22:28:15.439-07:00</updated><title type='text'>Extract prices from craiglist</title><content type='html'>#!/usr/bin/perl&lt;br /&gt;# This is a script that will help me search craigslist and extract&lt;br /&gt;# price information and average the data to get what the going&lt;br /&gt;# price of an item is&lt;br /&gt;#&lt;br /&gt;#   Example:&lt;br /&gt;#;    ~/bin/cl_get_prices.pl -string=2006 -string=maxima&lt;br /&gt;#;    ~/bin/cl_get_prices.pl -string=2003 -string=maxima -cities=dallas&lt;br /&gt;#;    ~/bin/cl_get_prices.pl -string=2003 -string=maxima -verb=4&lt;br /&gt;#;    ~/bin/cl_get_prices.pl -string=ps3 -string=80gb -verb=4&lt;br /&gt;#;    ~/bin/cl_get_prices.pl -string=ps3 -string=80gb -trim=.333&lt;br /&gt;#;    ~/bin/cl_get_prices.pl -string=ps3 -string=60gb -trim=.2 -filter_on_title=1&lt;br /&gt;#&lt;br /&gt;# I think I am going to give three outputs. Mean, Median and Trimmed Mean.&lt;br /&gt;# This way if there is outlier data it will be easy to spot in the Mean&lt;br /&gt;# value.&lt;br /&gt;&lt;br /&gt;use strict;&lt;br /&gt;use Getopt::Long;&lt;br /&gt;use List::Util qw(sum);&lt;br /&gt;use Statistics::Descriptive;&lt;br /&gt;use List::MoreUtils qw(uniq);&lt;br /&gt;&lt;br /&gt;my @item_prices;&lt;br /&gt;my $delay_between_searches = 5;&lt;br /&gt;&lt;br /&gt;# Define the arguments&lt;br /&gt;my %opts = ();&lt;br /&gt;&amp;amp;usage unless &amp;amp;GetOptions(\%opts, 'help'&lt;br /&gt;  ,'strings=s@'&lt;br /&gt;  ,'cities=s@'&lt;br /&gt;  ,'trim=s'&lt;br /&gt;  ,'filter_on_title=s'&lt;br /&gt;  ,'min=s'&lt;br /&gt;  ,'max=s'&lt;br /&gt;  ,'verbosity=i'&lt;br /&gt;);&lt;br /&gt;if ( @{opts{strings}} eq 0 ) { die " NO SEARCH STRING WAS GIVEN"; }&lt;br /&gt;unless ( exists ${opts{cities}} ) {&lt;br /&gt;  push( @{$opts{cities}}, 'austin' );&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;$opts{trim} = .25 unless ( exists $opts{trim} );&lt;br /&gt;$opts{min} = "" unless ( exists $opts{min} );&lt;br /&gt;$opts{max} = "" unless ( exists $opts{max} );&lt;br /&gt;$opts{verbosity} = 3 unless ( exists $opts{verbosity} );&lt;br /&gt;&lt;br /&gt;foreach my $city ( @{$opts{cities}} ) {&lt;br /&gt;  &amp;amp;get_item_prices( \@item_prices, \@{$opts{strings}}, $city, $opts{min}, $opts{max}, $opts{filter_on_title} );&lt;br /&gt;  sleep( $delay_between_searches );&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;@item_prices = sort {$a &lt;=&gt; $b } @item_prices;&lt;br /&gt;@item_prices = uniq @item_prices;&lt;br /&gt;my $stat = Statistics::Descriptive::Full-&gt;new();&lt;br /&gt;$stat-&gt;add_data(@item_prices);&lt;br /&gt;$Statistics::Descriptive::Tolerance = 1e-10;&lt;br /&gt;my $mean = $stat-&gt;mean();&lt;br /&gt;my $var  = $stat-&gt;variance();&lt;br /&gt;my $tm   = $stat-&gt;trimmed_mean($opts{trim});&lt;br /&gt;my $std  = $stat-&gt;standard_deviation();&lt;br /&gt;&lt;br /&gt;print "Prices: @item_prices\n";&lt;br /&gt;printf "Statistics: Mean: %10.4f  Var: %10.4f  Std Dev: %10.4f  Trimmed mean: %10.4f\n", $mean, $var , $std , $tm  ;&lt;br /&gt;print "". scalar( @item_prices ) . " ITEMS WERE FOUND\n";&lt;br /&gt;print "lowest:\t\t$item_prices[0]\n";&lt;br /&gt;print "highest:\t$item_prices[$#item_prices]\n";&lt;br /&gt;print "Mean:\t\t" . sum( @item_prices )/@item_prices ."\n";&lt;br /&gt;print "Median:\t\t" . $item_prices[@item_prices/2] ."\n";&lt;br /&gt;print "Trim Mean:\t" . $tm ."\n";&lt;br /&gt;&lt;br /&gt;sub get_item_prices {&lt;br /&gt;  my ( $item_prices_ref, $strings_ref, $city, $min, $max, $filter_on_title ) = @_;&lt;br /&gt;  my $wget="http://$city.craigslist.org/search/sss?query=";&lt;br /&gt;  my $str_cat = "";&lt;br /&gt;  foreach my $str ( @$strings_ref ) {&lt;br /&gt;    $wget .= "$str_cat$str";&lt;br /&gt;    $str_cat = "+";&lt;br /&gt;  }&lt;br /&gt;  my $html = `wget -q -O - $wget`;&lt;br /&gt;  print $html . "\n" if $opts{verbosity} &gt; 6;&lt;br /&gt;  my @chunks = split /(&lt;\/?p&gt;\s*)+/,$html;&lt;br /&gt;&lt;br /&gt;  # Filter out everything but the titles&lt;br /&gt;  my $num_chunks = scalar @chunks;&lt;br /&gt;  for ( my $idx = $num_chunks-1; $idx &gt;= 0; $idx-- ) {&lt;br /&gt;    delete $chunks[$idx] unless $chunks[$idx] =~ m/^......\s-\s/;&lt;br /&gt;    print "$idx|$chunks[$idx]\n" if $opts{verbosity} &gt; 4;&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;  # Clean up the title and do additional filtering on the title&lt;br /&gt;  my $num_chunks = scalar @chunks;&lt;br /&gt;  for ( my $idx = $num_chunks-1; $idx &gt;= 0; $idx-- ) {&lt;br /&gt;    my $rm_item = 0;&lt;br /&gt;    $chunks[$idx] =~ s/^.+html"&gt;//;&lt;br /&gt;    $chunks[$idx] =~ s/&amp;gt;//gs;&lt;br /&gt;    $chunks[$idx] =~ s/&amp;lt;//gs;&lt;br /&gt;    $chunks[$idx] =~ s/ / /gs;&lt;br /&gt;    $chunks[$idx] =~ s/&lt;[^&gt;]*&gt;//gs;&lt;br /&gt;    if ( $filter_on_title eq "1" ) {&lt;br /&gt;      foreach my $str ( @$strings_ref ) {&lt;br /&gt;        if ( $chunks[$idx] !~ m/$str/i ) {&lt;br /&gt;          $rm_item = 1;&lt;br /&gt;        }&lt;br /&gt;      }&lt;br /&gt;    }&lt;br /&gt;    delete $chunks[$idx] unless $rm_item == 0;&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;  # Extract price information from the titles&lt;br /&gt;  @chunks = sort @chunks;&lt;br /&gt;  foreach my $chunk (@chunks) {&lt;br /&gt;    if ( $chunk ne "" ) {&lt;br /&gt;      print "    $chunk\n" if $opts{verbosity} &gt; 3;&lt;br /&gt;      my @words = split(' ', $chunk);&lt;br /&gt;      foreach my $word (@words) {&lt;br /&gt;        if ( $word =~ m/^\$/) {&lt;br /&gt;          $word =~ s/(\$|,)//g ;&lt;br /&gt;          if ( $word =~ m/^\d+$/ ) {&lt;br /&gt;            push(@$item_prices_ref, $word);&lt;br /&gt;          }&lt;br /&gt;        }&lt;br /&gt;      }&lt;br /&gt;    }&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-2996690002625116944?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/2996690002625116944/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2009/09/extract-prices-from-craiglist.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/2996690002625116944'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/2996690002625116944'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2009/09/extract-prices-from-craiglist.html' title='Extract prices from craiglist'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-8449925120166523753</id><published>2009-06-10T15:25:00.000-07:00</published><updated>2009-06-12T19:57:01.904-07:00</updated><title type='text'>HOTO: Create html "snapshot" from your gvim editor</title><content type='html'>Here is my .vimrc snippet that allows me to quickly save off a file in an HTML format with all of the syntax highlighting, etc..&lt;br /&gt;&lt;br /&gt;The function is not working.. :( will have to work on it more later...&lt;br /&gt;&lt;pre&gt;&lt;p style="FONT: 10pt courier; COLOR: #0000a0"&gt;&lt;br /&gt;" Settings for :TOhtml&lt;br /&gt;let html_number_lines=1&lt;br /&gt;let html_use_css=1&lt;br /&gt;let use_xhtml=1&lt;br /&gt;&lt;br /&gt;""function not working&lt;br /&gt;"function! MyToHtml()&lt;br /&gt;"  normal :colorscheme default&lt;br /&gt;"  normal :TOhtml&lt;br /&gt;"  normal :colorscheme torte&lt;br /&gt;"endfunction&lt;br /&gt;"nmap &amp;lt;Leader&amp;gt;html :call MyToHtml()&lt;br /&gt;nmap &amp;lt;Leader&amp;gt;html :TOhtml&amp;lt;CR&amp;gt;zR :w! ~/tmp/&amp;lt;C-R&amp;gt;%&amp;lt;CR&amp;gt; :q!&amp;lt;CR&amp;gt;&lt;br /&gt;nmap &amp;lt;Leader&amp;gt;print :colorscheme default&amp;lt;CR&amp;gt; :TOhtml&amp;lt;CR&amp;gt;zR :w! ~/tmp/&amp;lt;C-R&amp;gt;%&amp;lt;CR&amp;gt; :q!&amp;lt;CR&amp;gt;zR:colorscheme torte&amp;lt;CR&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-8449925120166523753?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://cslife.wordpress.com/2008/12/01/save-vim-syntax-highlighting-to-html/' title='HOTO: Create html &amp;quot;snapshot&amp;quot; from your gvim editor'/><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/8449925120166523753/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2009/06/hoto-create-html-from-your-gvim-editor.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/8449925120166523753'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/8449925120166523753'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2009/06/hoto-create-html-from-your-gvim-editor.html' title='HOTO: Create html &amp;quot;snapshot&amp;quot; from your gvim editor'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-3286093944554770454</id><published>2009-06-08T11:22:00.000-07:00</published><updated>2009-06-12T19:57:01.904-07:00</updated><title type='text'>COLRM - Discovered a fun new tool!</title><content type='html'>It seems amazing to me that no matter how long I work in the world of Linux I am still to this day finding little tools to help my productivity. There are many different ways to remove certain columns of information from a text file but I just discovered&lt;a href="http://books.google.com/books?id=2Et--84HIkwC&amp;amp;pg=RA1-PA559&amp;amp;lpg=RA1-PA559&amp;amp;dq=example+colrm&amp;amp;source=bl&amp;amp;ots=ISi6uEnYOU&amp;amp;sig=0Sl3Ub0_tIyFbByFNmaJidhWiGc&amp;amp;hl=en&amp;amp;ei=ZFotSszfH5ryswPB8vCiCw&amp;amp;sa=X&amp;amp;oi=book_result&amp;amp;ct=result&amp;amp;resnum=4"&gt; colrm &lt;/a&gt;( colrm first_col [second_col] ) which is a tool to do specifically that task. I am not sure how it does this behind the scenes so I am not sure how well it works if performance is critical but for a hackey little side thing it seems to do very well.&lt;br /&gt;&lt;br /&gt;Here is an example where I removed columns 87 to the end and from column 1 to 69 leaving just column data from 70 to 86:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;p style="FONT: 10pt courier; COLOR: #0000a0"&gt;&lt;br /&gt;&gt; cat ~/tmp/max_data.out  colrm 87  colrm 1 69 &gt; ~/tmp/max_data2.out&lt;br /&gt;&lt;/p&gt;&lt;/pre&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-3286093944554770454?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://oreilly.com/linux/command-directory/cmd.csp?path=c/colrm' title='COLRM - Discovered a fun new tool!'/><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/3286093944554770454/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2009/06/colrm-discovered-fun-new-tool.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/3286093944554770454'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/3286093944554770454'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2009/06/colrm-discovered-fun-new-tool.html' title='COLRM - Discovered a fun new tool!'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-4886550880827147844</id><published>2009-06-05T15:54:00.000-07:00</published><updated>2009-06-12T19:57:01.904-07:00</updated><title type='text'>A better unit conversion script (h2b b2h h2d d2h)</title><content type='html'>So I have been trying to get a robust unit conversion script for a while and I have had a few different solutions but I always had some troubles with them. bc is the calculator tool that comes with most linux distributions and is pretty widely available and is very good at doing the conversions but it too had some difficulties if the string containing the numbers was not formatted just right. So I use a small Perl wrapper script to do the formatting and then pass it on to bc. This seems to be working very well for me now.  You can see the code below. &lt;br /&gt;&lt;br /&gt;I also have some vim commands that call this script and allow me to do do conversions right from within vim (will add this vim code later). I also have some csh alias commands that I will add later as well. &lt;br /&gt;&lt;br /&gt;It has proven to be very powerful and has improved my coding and debugging efficiency. Hope someone else finds it useful.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;##### FILE: bc_conversion.pl ######&lt;br /&gt;&lt;pre&gt;&lt;p style="font: 10pt courier; color: #0000A0;"&gt;&lt;br /&gt;#!/usr/local/bin/perl -w&lt;br /&gt;#   Use the bc function to do conversions..&lt;br /&gt;#&lt;br /&gt;##                 | check if called properly&lt;br /&gt;#if ($#ARGV &gt;= 0) {&lt;br /&gt;if ($#ARGV &lt; 2) {&lt;br /&gt;    print "   Usage: $0 &lt;input_base&gt; &lt;output_base&gt; &lt;formula&gt; \n"              ;&lt;br /&gt;    print "   used to wrap bc so you can set the base input and output \n"    ;&lt;br /&gt;    print "   in order to do conversions. For example to convert binary \n"   ;&lt;br /&gt;    print "   to hex, run the following command: \n"                          ;&lt;br /&gt;    print "   bc_wrapper.sh 2 16 1001_1011 \n"                                ;&lt;br /&gt;    print "   RESULT: 9B \n"                                                          ;&lt;br /&gt;    exit&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;$ARGV[2] =~ s/_//g;&lt;br /&gt;$ARGV[2] =~ tr/a-z/A-Z/;&lt;br /&gt;&lt;br /&gt;# The following is a csh command that tells the tool bc the output base type,&lt;br /&gt;# the input base type and the expression to run.&lt;br /&gt;my $cmd = "bc &lt;&lt; EOF \&lt;br /&gt;obase=$ARGV[1];      \&lt;br /&gt;ibase=$ARGV[0];      \&lt;br /&gt;$ARGV[2];            \&lt;br /&gt;quit;                \&lt;br /&gt;EOF";&lt;br /&gt;&lt;br /&gt;#print "  $cmd \n";&lt;br /&gt;#system("$cmd") == 0 or die "system $cmd failed: $?";&lt;br /&gt;my $result = `$cmd`;&lt;br /&gt;# Make the result easier to read by inserting underscores&lt;br /&gt;if ( ( $ARGV[1] eq "2" ) || ( $ARGV[1] eq "16" ) ) {&lt;br /&gt;  $result = reverse $result;&lt;br /&gt;  $result =~ s/(\w{4})/$1_/g;&lt;br /&gt;  $result = reverse $result;&lt;br /&gt;  $result =~ s/^_//g;&lt;br /&gt;}&lt;br /&gt;print "$result";&lt;br /&gt;&lt;/pre&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-4886550880827147844?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/4886550880827147844/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2009/06/better-unit-conversion-script-h2b-b2h.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/4886550880827147844'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/4886550880827147844'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2009/06/better-unit-conversion-script-h2b-b2h.html' title='A better unit conversion script (h2b b2h h2d d2h)'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-4139683579678768456</id><published>2009-06-05T15:45:00.000-07:00</published><updated>2009-06-12T19:57:01.905-07:00</updated><title type='text'>My faster little find script</title><content type='html'>I have been using this script for a long time. It certainly could be improved but it has proved invaluable.&lt;br /&gt;&lt;br /&gt;##### FILE: find.pl #####&lt;br /&gt;&lt;pre&gt;&lt;p style="font: 10pt courier; color: #0000A0;"&gt;&lt;br /&gt;#!/usr/local/bin/perl -w&lt;br /&gt;use strict;&lt;br /&gt;use Getopt::Long;&lt;br /&gt;use Pod::Usage;&lt;br /&gt;&lt;br /&gt;my $cmdLine = "rerunRegressionResults.pl @ARGV \n";&lt;br /&gt;&lt;br /&gt;my $dateStamp=`date +'%Y-%m-%d-%H%M'`; chomp($dateStamp);&lt;br /&gt;my $output = "";&lt;br /&gt;my $help = 0;&lt;br /&gt;my $grep = "";&lt;br /&gt;my $displayOnly = 0;&lt;br /&gt;my $noGrep = 0;&lt;br /&gt;my $noVim = 0;&lt;br /&gt;my $vimCmd = "";&lt;br /&gt;my $dryRun = 0;&lt;br /&gt;my $cmd = "";&lt;br /&gt;my @fileNames;&lt;br /&gt;my $replaceWithSpace = "~";  # Default is to replace all ~ with spaces.&lt;br /&gt;my $arg = "";&lt;br /&gt;my $verbosity = "";&lt;br /&gt;my $endFind = "";&lt;br /&gt;my @strings;&lt;br /&gt;my $grepArg = "";&lt;br /&gt;my $findRslt = "";&lt;br /&gt;my $findRsltFound = 0;&lt;br /&gt;my $endGrep = "";&lt;br /&gt;my @dirs;&lt;br /&gt;my @findRslts;&lt;br /&gt;my @nots;&lt;br /&gt;my @ands;&lt;br /&gt;my @prunes;&lt;br /&gt;my @sqlResults;&lt;br /&gt;my @outputList;&lt;br /&gt;&lt;br /&gt;my $ok = GetOptions(&lt;br /&gt;  'displayOnly|do'        =&gt; \$displayOnly,&lt;br /&gt;  'noVim|nv'              =&gt; \$noVim,&lt;br /&gt;  'vimCmd|vc=s'           =&gt; \$vimCmd,&lt;br /&gt;  'dryRun|dr'             =&gt; \$dryRun,&lt;br /&gt;  'dirs=s@'               =&gt; \@dirs,&lt;br /&gt;  'output=s'              =&gt; \$output,&lt;br /&gt;  'endGrep|eg=s'          =&gt; \$endGrep,&lt;br /&gt;  'fileNames|fn=s@'       =&gt; \@fileNames,&lt;br /&gt;  'noGrep|ng'             =&gt; \$noGrep,&lt;br /&gt;  'arg=s'                 =&gt; \$arg,&lt;br /&gt;  'verbosity=s'           =&gt; \$verbosity,&lt;br /&gt;  'endFind|ef=s'          =&gt; \$endFind,&lt;br /&gt;  'strings=s@'            =&gt; \@strings,&lt;br /&gt;  'grepArg|ga=s'          =&gt; \$grepArg,&lt;br /&gt;  'nots=s@'               =&gt; \@nots,&lt;br /&gt;  'ands=s@'               =&gt; \@ands,&lt;br /&gt;  'prunes=s@'             =&gt; \@prunes,&lt;br /&gt;  'replaceWithSpace=s'    =&gt; \$replaceWithSpace,&lt;br /&gt;  'help'                  =&gt; \$help&lt;br /&gt;);&lt;br /&gt;  if ( !$ok ) { die; }&lt;br /&gt;&lt;br /&gt;  pod2usage(1) if $help;&lt;br /&gt;&lt;br /&gt;  push ( @strings , @ARGV );&lt;br /&gt;  if ( ( @strings == 0 ) &amp;&amp; ( @fileNames == 0 ) ) { die "  NO SEARCH STRING OR FILE NAME GIVEN!!! "; }&lt;br /&gt;&lt;br /&gt;  # Decide the defaults:&lt;br /&gt;  if ( @fileNames == 0 ) {&lt;br /&gt;      $fileNames[0] = "*";&lt;br /&gt;    } else {&lt;br /&gt;      if ( @strings == 0 ) { $strings[0] = $fileNames[0]; }&lt;br /&gt;    }&lt;br /&gt;  if ( @dirs     == 0 )  {.&lt;br /&gt;    $dirs[0]  = "$ENV{'PWD'}";.&lt;br /&gt;  }&lt;br /&gt;  if ( $vimCmd   eq "" ) { $vimCmd = "/usr/local/bin/gvim"; }&lt;br /&gt;  if ( $arg      eq "" ) { $arg  = ""; }&lt;br /&gt;  if ( $endFind  eq "" ) { $endFind  = ""; }&lt;br /&gt;  #if ( $grepArg  eq "" ) { $grepArg  = " -n -I -i -C 3 "; }&lt;br /&gt;  if ( $grepArg  eq "" ) { $grepArg  = " -n -I -i "; }&lt;br /&gt;  if ( $output   eq "" ) { $output   = "~/tmp/find_$strings[0].rslt" }&lt;br /&gt;&lt;br /&gt;  # Start to build up the find argument&lt;br /&gt;&lt;br /&gt;  foreach ( @prunes )    { $arg .= " -not \\( -type d -name \"*$_*\" -prune \\) " }&lt;br /&gt;  foreach ( @ands )      { $arg .= " -name \"*$_*\" " }&lt;br /&gt;  foreach ( @nots )      { $arg .= " -not -name \"*$_*\" " }&lt;br /&gt;  if ( @fileNames &gt; 1 )  { $arg .= " \\( "; }&lt;br /&gt;  foreach my $index (0..$#fileNames) {&lt;br /&gt;    if ( $index &gt; 0 )    { $arg .= " -o "; }&lt;br /&gt;    $arg .= " -name \"*$fileNames[$index]*\" ";&lt;br /&gt;  }&lt;br /&gt;  if ( @fileNames &gt; 1 ) { $arg  .= " \\) "; }&lt;br /&gt;&lt;br /&gt;  # Create the comands and execute&lt;br /&gt;  foreach my $string ( @strings ) {&lt;br /&gt;    if ( $replaceWithSpace  ne "" ) { $string  =~ s/$replaceWithSpace/ /g; }&lt;br /&gt;    $cmd = "find @dirs $arg $endFind -follow ";&lt;br /&gt;    $cmd .= " -print0 | xargs -0 grep $grepArg '$string' $endGrep" unless $noGrep;&lt;br /&gt;    print "  $cmd \n" unless $verbosity eq "quiet";&lt;br /&gt;    $findRslt = qx"$cmd" unless ( $dryRun );&lt;br /&gt;    if ( $findRslt =~ m/[a-z]/i ) {&lt;br /&gt;      $findRsltFound++;&lt;br /&gt;      push ( @outputList , $findRslt );&lt;br /&gt;    }&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;  if ( ( $findRsltFound &lt; 1 ) &amp;&amp; ( ! $dryRun ) ) {.&lt;br /&gt;    die "  !ERROR! ---&gt; \"$strings[0]\" not found in dir(s) @dirs \n";.&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;  # Generate my output&lt;br /&gt;  if ( $displayOnly ) {&lt;br /&gt;    print @outputList;&lt;br /&gt;  } else {&lt;br /&gt;    open OUT_FILE, "&gt; $output" or die "cant open $output : $!";&lt;br /&gt;    print OUT_FILE @outputList;&lt;br /&gt;    close OUT_FILE;&lt;br /&gt;    #print @outputList;&lt;br /&gt;    unless ( $noVim ) {&lt;br /&gt;      my $cmd3;&lt;br /&gt;      my $gvimSearch = "";&lt;br /&gt;      # The search +/ does not work if using --remote in vim!!! SUCKS&lt;br /&gt;      $gvimSearch = " +\"/$strings[0]\" " unless ( $vimCmd =~ m/remote/ );&lt;br /&gt;      $cmd3 = "csh -c \"$vimCmd $output $gvimSearch \"";&lt;br /&gt;      print "  $cmd3 \n";&lt;br /&gt;      system("$cmd3") == 0 or die "system $cmd3 failed: $?" unless ( $dryRun );&lt;br /&gt;    }&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;__END__&lt;br /&gt;&lt;br /&gt;=head1 NAME&lt;br /&gt;&lt;br /&gt;find.pl help&lt;br /&gt;&lt;br /&gt;=head1 SYNOPSIS&lt;br /&gt;&lt;br /&gt;find [options]&lt;br /&gt;  Options:&lt;br /&gt;    -help             This help message&lt;br /&gt;    -dirs             Directory to search*&lt;br /&gt;    -output           Alternative output filename&lt;br /&gt;    -type             Find's type (default = "-type f")&lt;br /&gt;    -endGrep|eg       Additional grep arguments&lt;br /&gt;    -fileNames|fn     File Name (default = "*")&lt;br /&gt;    -arg              Additional find Arguments&lt;br /&gt;    -endFind|ef       Additional find Arguments for the end of find command&lt;br /&gt;    -strings          Strings grep will use to search*&lt;br /&gt;    -grepArg|ga       Alternative grep arguments (default = " -n -I -i -C 3 ")&lt;br /&gt;    -nots             Additional find logic*&lt;br /&gt;    -ands             Additional find logic*&lt;br /&gt;    -prunes           Trims directories from search&lt;br /&gt;    -displayOnly|do   Does not generate a file&lt;br /&gt;    -fno              Search for the file name only (no grep)&lt;br /&gt;    -noVim|nv         Do not open output file with vim&lt;br /&gt;    -dryRun|dr        Run the script but print the commands do not actually run them&lt;br /&gt;&lt;br /&gt;  Examples:&lt;br /&gt;&lt;br /&gt;    find.pl stringtofind&lt;br /&gt;    find.pl -fn filetofind stringtofind&lt;br /&gt;    find.pl -string stringtofind -fa "-maxdepth 1"&lt;br /&gt;    find.pl -s stringtofind -fa "-maxdepth 1"&lt;br /&gt;    find.pl stringtofind -fa "-maxdepth 1"&lt;br /&gt;    find.pl stringtofind -prune directorynottosearch&lt;br /&gt;    find.pl stringtofind -not log&lt;br /&gt;    find.pl string_with_spaces -replaceWithSpace _&lt;br /&gt;&lt;br /&gt;=cut&lt;br /&gt;&lt;/pre&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-4139683579678768456?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/4139683579678768456/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2009/06/my-faster-little-find-script.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/4139683579678768456'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/4139683579678768456'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2009/06/my-faster-little-find-script.html' title='My faster little find script'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-87221659485351439</id><published>2009-06-05T15:34:00.000-07:00</published><updated>2009-06-12T19:57:01.905-07:00</updated><title type='text'>Faster editting of linux script files</title><content type='html'>If you are like me you want to open your scripts quickly without having to find where they are and then opening it up. Use my little vich.pl script to automatiically find and open the script with one command:&lt;br /&gt;&lt;br /&gt;##### FILE: vich.pl #####&lt;br /&gt;&lt;pre&gt;&lt;p style="font: 10pt courier; color: #0000A0;"&gt;&lt;br /&gt; #!/usr/local/bin/perl -w&lt;br /&gt;use strict;&lt;br /&gt;my $whichOutput = qx` which $ARGV[0]; `;&lt;br /&gt;$whichOutput =~ s/\s+$//;&lt;br /&gt;stat($whichOutput);&lt;br /&gt;print "Readable\n" if -r _;&lt;br /&gt;print "Writable\n" if -w _;&lt;br /&gt;print "Executable\n" if -x _;&lt;br /&gt;print "Setuid\n" if -u _;&lt;br /&gt;print "Setgid\n" if -g _;&lt;br /&gt;print "Sticky\n" if -k _;&lt;br /&gt;print "Text\n" if -T _;&lt;br /&gt;print "Binary\n" if -B _;&lt;br /&gt;if ( ( $whichOutput =~ m/^\// ) &amp;&amp; ( -T $whichOutput ) ) {&lt;br /&gt;  qx`gvim -geometry 100x50 $whichOutput `;&lt;br /&gt;} else {&lt;br /&gt;  my $myoutput = "~/tmp/vich.out";&lt;br /&gt;  open OUT_FILE, "&gt; $myoutput" or die "cant open $myoutput : $!";&lt;br /&gt;  print OUT_FILE $whichOutput;&lt;br /&gt;  close OUT_FILE;&lt;br /&gt;  qx`gvim -geometry 100x50 $myoutput `;&lt;br /&gt;}&lt;br /&gt;##########################################&lt;br /&gt;# END OF FILE&lt;br /&gt;##########################################&lt;br /&gt;&lt;/pre&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;Make an alias:&lt;br /&gt;&gt; alias vich vich.pl&lt;br /&gt;&lt;br /&gt;Now instead of doing:&lt;br /&gt;&lt;br /&gt;&gt; which myscript&lt;br /&gt;/usr/bin/myscript&lt;br /&gt;&gt; vim /usr/bin/myscript&lt;br /&gt;&lt;br /&gt;you can just do:&lt;br /&gt;&lt;br /&gt;&gt; vich myscript&lt;br /&gt;&lt;br /&gt;Just a little thing to speed things up..&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-87221659485351439?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/87221659485351439/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2009/06/faster-editting-of-linux-script-files.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/87221659485351439'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/87221659485351439'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2009/06/faster-editting-of-linux-script-files.html' title='Faster editting of linux script files'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-6425668581496655191</id><published>2009-06-05T15:10:00.000-07:00</published><updated>2009-06-12T19:57:01.905-07:00</updated><title type='text'>Make your config files very flexible (w/ Perl eval)</title><content type='html'>I have to make my config files flexible so that I can allow my users a lot of options and even override functions. I can do this by making my config file "eval"-able. Meaning that the config file is actually Perl code that can be interpreted by the calling Perl script. &lt;br /&gt;&lt;br /&gt;Most of the code was taken from:&lt;br /&gt;&lt;br /&gt;http://www.usenix.org/publications/perl/perl13.html&lt;br /&gt;&lt;br /&gt;Here is my proof of concept code:&lt;br /&gt;&lt;br /&gt;##### FILE: evalConfigExample.pl #####&lt;br /&gt;&lt;pre&gt;&lt;p style="font: 10pt courier; color: #0000A0;"&gt;&lt;br /&gt;#!/usr/bin/perl -w&lt;br /&gt;# Filename: evalConfigFileExample.pl&lt;br /&gt;# This is a proof of concept script to show how one can use a perl script as a config.&lt;br /&gt;# file. This allows much more freedom when declaring a configuration file. One can&lt;br /&gt;# call functions, redefine functions and generally do anything that you could.&lt;br /&gt;# normally do in a regular perl script. Ex:&lt;br /&gt;#; ~/bin/evalConfigFileExample.pl -file ~/bin/evalConfigFileExample.cfg&lt;br /&gt;&lt;br /&gt;use Getopt::Long;&lt;br /&gt;use Data::Dumper;&lt;br /&gt;use Pod::Usage;&lt;br /&gt;&lt;br /&gt;my $page_info ;&lt;br /&gt;my %opts = ();&lt;br /&gt;my $ok = GetOptions(\%opts,&lt;br /&gt;                    'file=s',&lt;br /&gt;                    'help'&lt;br /&gt;);&lt;br /&gt;if ( !$ok ) { die; }&lt;br /&gt;pod2usage(1) if (exists ( $opts{help} ) );&lt;br /&gt;&lt;br /&gt;sub printer {&lt;br /&gt;  print "In Perl prog\n";&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;sub hello_world {&lt;br /&gt;  print "Calling hello_world from eval'd config file!\n";&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;sub parse_cfg {&lt;br /&gt;  my($file) = @_;&lt;br /&gt;  delete($INC{$file});&lt;br /&gt;  eval('require("$file")');&lt;br /&gt;  die "*** Failed to eval() file $file:\n$@\n" if ($@);&lt;br /&gt;  print ("VENDOR = $VENDOR \n");&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;printer();&lt;br /&gt;parse_cfg( $opts{file} );&lt;br /&gt;print ("VENDOR = $VENDOR \n");&lt;br /&gt;printer();&lt;br /&gt;&lt;br /&gt;##########################################&lt;br /&gt;# END OF FILE&lt;br /&gt;##########################################&lt;br /&gt;&lt;/pre&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;##### FILE: evalConfigExample.cfg #####&lt;br /&gt;&lt;pre&gt;&lt;p style="font: 10pt courier; color: #0000A0;"&gt;&lt;br /&gt;#evalConfigFileExample.cfg&lt;br /&gt;$VENDOR = "Sun";&lt;br /&gt;$HARDWARE = "Sparc";&lt;br /&gt;$OS = "Solaris";&lt;br /&gt;$VERSION = "2.5";&lt;br /&gt;$HOSTNAME = `/bin/hostname`;&lt;br /&gt;$PSCMD = "/usr/bin/ps -ef";&lt;br /&gt;hello_world();&lt;br /&gt;&lt;br /&gt;sub printer {&lt;br /&gt;  print "In required file\n";&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;##########################################&lt;br /&gt;# END OF FILE&lt;br /&gt;##########################################&lt;br /&gt;&lt;/pre&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;The output should look like this:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;p style="font: 10pt courier;"&gt;&lt;br /&gt;&gt; evalConfigFileExample.pl -file evalConfigFileExample.cfg&lt;br /&gt;In Perl prog&lt;br /&gt;Subroutine printer redefined at evalConfigFileExample.cfg line 9.&lt;br /&gt;Calling hello_world from eval'd config file!&lt;br /&gt;VENDOR = Sun&lt;br /&gt;VENDOR = Sun&lt;br /&gt;In required file&lt;br /&gt;&lt;/pre&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-6425668581496655191?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.usenix.org/publications/perl/perl13.html' title='Make your config files very flexible (w/ Perl eval)'/><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/6425668581496655191/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2009/06/make-your-config-files-very-flexible-w.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/6425668581496655191'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/6425668581496655191'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2009/06/make-your-config-files-very-flexible-w.html' title='Make your config files very flexible (w/ Perl eval)'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-5570859262581340169</id><published>2009-02-01T21:41:00.000-08:00</published><updated>2009-06-12T19:57:01.905-07:00</updated><title type='text'></title><content type='html'>Check out this picture!&lt;a href="http://4.bp.blogspot.com/__DxuVZE1uUw/SYaHmCXLn4I/AAAAAAAAHe0/WVLqbf1JZL0/s1600-h/IMG_8012.jpg"&gt;&lt;img style="CLEAR: both; FLOAT: left; MARGIN: 0px 10px 10px 0px" alt="" src="http://4.bp.blogspot.com/__DxuVZE1uUw/SYaHmCXLn4I/AAAAAAAAHe0/WVLqbf1JZL0/s320/IMG_8012.jpg" border="0" /&gt;&lt;/a&gt;&lt;div style='clear:both; text-align:LEFT'&gt;&lt;a href='http://picasa.google.com/blogger/' target='ext'&gt;&lt;img src='http://photos1.blogger.com/pbp.gif' alt='Posted by Picasa' style='border: 0px none ; padding: 0px; background: transparent none repeat scroll 0% 50%; -moz-background-clip: initial; -moz-background-origin: initial; -moz-background-inline-policy: initial;' align='middle' border='0' /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-5570859262581340169?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/5570859262581340169/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2009/02/check-out-this-picture.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/5570859262581340169'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/5570859262581340169'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2009/02/check-out-this-picture.html' title=''/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/__DxuVZE1uUw/SYaHmCXLn4I/AAAAAAAAHe0/WVLqbf1JZL0/s72-c/IMG_8012.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-7250993551197127743</id><published>2007-10-14T20:46:00.000-07:00</published><updated>2009-06-12T19:57:01.905-07:00</updated><title type='text'>Vimperator -- vimified browsing (at last)</title><content type='html'>I have found the coolest productivity tool since vim. &lt;a href="http://www.google.com/url?sa=t&amp;amp;ct=res&amp;amp;cd=1&amp;amp;url=http%3A%2F%2Fvimperator.mozdev.org%2F&amp;amp;ei=GOgSR9qDEYTeeoHB9ZIL&amp;amp;usg=AFQjCNFXl4T4towwx_Dry3NA4QMCJCXMfA&amp;amp;sig2=U9NiXVtlnFx9tbdHkuGFmQ"&gt;Vimperator!&lt;/a&gt; This allows you to do modal browsing much in the same way that vim does. The greatest thing is that it allows you to write maps (keybindings) that can dramatically improve your productivity on the web. What is so great about modal editing and browsing? You don't have to use that pesky mouse as much anymore. Your fingers stay near home row more often and allow you to control almost everything from they keyboard.&lt;br /&gt;&lt;br /&gt;Here is a &lt;a href="http://www.google.com/url?sa=t&amp;amp;ct=res&amp;amp;cd=2&amp;amp;url=http%3A%2F%2Fwww.linux.com%2Ffeature%2F114419&amp;amp;ei=JOYSR8_CCqjkepSg_J0L&amp;amp;usg=AFQjCNGSL0o8LAxVfGmUK9xJ5AN2SGSOrg&amp;amp;sig2=R6jsjFgjnru9Mv1HLuHt3Q"&gt;link &lt;/a&gt;from linux.com that has a somewhat decent discussion about it. I am sure there will be many more articles written bout this great tool. Here is the &lt;a href="http://www.google.com/url?sa=t&amp;amp;ct=res&amp;amp;cd=4&amp;amp;url=http%3A%2F%2Fvimperator.cutup.org%2F&amp;amp;ei=GOgSR9qDEYTeeoHB9ZIL&amp;amp;usg=AFQjCNHd2qisp6udTaRVimNLA0sYhIApXg&amp;amp;sig2=LOMzv1DbjUDZWBuBMaabNA"&gt;offical wiki&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;It is only at version 0.52 as of this writing so I am sure there are improvements to come but it already has vastly sped up my surfing. One vim like feature I would like to see is the visual mode for selecting things. Your mappings and customizations  (like vimrc file) are stored in a file named vimperator. Here is what my vimperatorrc file looks like so far:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;&lt;br /&gt;set activate=quickmark,paste&lt;br /&gt;set nobeep&lt;br /&gt;set complete=sbfh&lt;br /&gt;set defsearch=google&lt;br /&gt;set guioptions=&lt;br /&gt;set maxhints=1000&lt;br /&gt;set preload&lt;br /&gt;set previewheight=20&lt;br /&gt;set showmode&lt;br /&gt;set showstatuslinks&lt;br /&gt;set showtabline=2&lt;br /&gt;set titlestring=Vimperator Dev&lt;br /&gt;set verbose=9&lt;br /&gt;set wildmode=list:full&lt;br /&gt;&lt;br /&gt;" start MozRepl&lt;br /&gt;js &lt;&lt;eof if="" in="" components="" net="" mozlab="" 1="" eof="" restart="" vimperator="" map=""&gt;&lt;c-r&gt;   :restart&lt;cr&gt;&lt;br /&gt;&lt;br /&gt;" select next/previous tab&lt;br /&gt;map &lt;right&gt; gt&lt;br /&gt;map &lt;left&gt;  gT&lt;br /&gt;map ,src :source ~/.vimperatorrc&lt;cr&gt;&lt;br /&gt;&lt;br /&gt;" move current tab left/right&lt;br /&gt;map &lt;s-right&gt; :tabmove! +1&lt;cr&gt;&lt;br /&gt;map &lt;s-left&gt;  :tabmove! -1&lt;cr&gt;&lt;br /&gt;&lt;br /&gt;" move up and down one page&lt;br /&gt;map &lt;c-j&gt; &lt;c-f&gt;&lt;br /&gt;map &lt;c-k&gt; &lt;c-b&gt;&lt;br /&gt;&lt;br /&gt;" Tab maps&lt;br /&gt;map &lt;c-n&gt; :tabopen&lt;cr&gt;&lt;br /&gt;map &lt;c-l&gt; :tabnext&lt;cr&gt;&lt;br /&gt;map &lt;c-h&gt; :tabprevious&lt;cr&gt;&lt;br /&gt;&lt;br /&gt;" backward and forward&lt;br /&gt;map gk :back&lt;cr&gt;&lt;br /&gt;map gj :forward&lt;cr&gt;&lt;br /&gt;&lt;br /&gt;map &lt;c-x&gt; :quit&lt;cr&gt;&lt;br /&gt;&lt;br /&gt;echo .vimperatorrc sourced&lt;br /&gt;&lt;br /&gt;" vim: ft=vimperator sw=2 sts=2&lt;br /&gt;&lt;br /&gt;&lt;/cr&gt;&lt;/c-x&gt;&lt;/cr&gt;&lt;/cr&gt;&lt;/cr&gt;&lt;/c-h&gt;&lt;/cr&gt;&lt;/c-l&gt;&lt;/cr&gt;&lt;/c-n&gt;&lt;/c-b&gt;&lt;/c-k&gt;&lt;/c-f&gt;&lt;/c-j&gt;&lt;/cr&gt;&lt;/s-left&gt;&lt;/cr&gt;&lt;/s-right&gt;&lt;/cr&gt;&lt;/left&gt;&lt;/right&gt;&lt;/cr&gt;&lt;/c-r&gt;&lt;/eof&gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-7250993551197127743?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/7250993551197127743/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2007/10/vimperator-vimified-browsing-at-last.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/7250993551197127743'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/7250993551197127743'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2007/10/vimperator-vimified-browsing-at-last.html' title='Vimperator -- vimified browsing (at last)'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-7885882378594897813</id><published>2006-07-13T09:26:00.000-07:00</published><updated>2009-06-12T19:57:01.906-07:00</updated><title type='text'>New Job</title><content type='html'>&lt;div xmlns="http://purl.org/atom/ns#"&gt;      &lt;p&gt;I gave my resignation to Sigmatel on Monday. I will be doing the same kind of work  (pre-silicon verification) but as a contractor/consultant at Analog Devices here in Austin. They are a pretty good company and they are starting to use some of the newer verification methodologies so I will be helping them bring this up. Should be very exciting. The world of verification is getting very exciting!&lt;/p&gt;      &lt;p&gt;        Read more at        &lt;a href="http://blog.360.yahoo.com/blog-ak1S0bEib6OOWSb_tz.geaZOci2R1Q--?cq=1&amp;amp;p=14"&gt;blog.360.yahoo.com/blog...&lt;/a&gt;      &lt;/p&gt;    &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-7885882378594897813?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/7885882378594897813/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2006/07/new-job.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/7885882378594897813'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/7885882378594897813'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2006/07/new-job.html' title='New Job'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-7134585559175076358</id><published>2006-06-23T00:59:00.000-07:00</published><updated>2009-06-12T19:57:01.906-07:00</updated><title type='text'>CNN.com - Study: Earth 'likely' hottest in 2,000 years - Jun 22, 2006</title><content type='html'>&lt;div xmlns="http://purl.org/atom/ns#"&gt;      &lt;p&gt;First to add a comment to this news. I just wanted to test to see how adding a new comment to a page would look. Hopefully this will motivate people to do something about global warming.&lt;/p&gt;      &lt;p&gt;        Read more at        &lt;a href="http://www.cnn.com/2006/TECH/science/06/22/global.warming.ap/index.html"&gt;www.cnn.com/2006/TECH/s...&lt;/a&gt;      &lt;/p&gt;    &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-7134585559175076358?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/7134585559175076358/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2006/06/cnncom-study-earth-hottest-in-2000.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/7134585559175076358'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/7134585559175076358'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2006/06/cnncom-study-earth-hottest-in-2000.html' title='CNN.com - Study: Earth &amp;#39;likely&amp;#39; hottest in 2,000 years - Jun 22, 2006'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-470920125248696250</id><published>2006-06-23T00:39:00.000-07:00</published><updated>2009-06-12T19:57:01.906-07:00</updated><title type='text'>Simpy and GoogleAdSense</title><content type='html'>&lt;div xmlns="http://purl.org/atom/ns#"&gt;      &lt;p&gt;Simpy adds GoogleAdSense to users pages. This is simpy amazing! There are such incredible synergies happening here with all the Web2.0 stuff. You can now make money off the links that you create. You will not become a millionare from this but it does encourage people to make links and tags more relevant. Keep watching this space for more Web2.0 magic!&lt;/p&gt;      &lt;p&gt;        Read more at        &lt;a href="http://www.simpy.com/3p"&gt;www.simpy.com/3p&lt;/a&gt;      &lt;/p&gt;    &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-470920125248696250?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/470920125248696250/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2006/06/simpy-and-googleadsense.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/470920125248696250'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/470920125248696250'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2006/06/simpy-and-googleadsense.html' title='Simpy and GoogleAdSense'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-4427577942133114711</id><published>2006-06-23T00:22:00.000-07:00</published><updated>2009-06-12T19:57:01.906-07:00</updated><title type='text'>Simpy - tagging, social bookmarking and personal search engine</title><content type='html'>&lt;div xmlns="http://purl.org/atom/ns#"&gt;      &lt;p&gt;I find this social bookmarking tool to really be a nice experience. It also can import my delicious bookmarks.&lt;/p&gt;      &lt;p&gt;        Read more at        &lt;a href="http://www.simpy.com/"&gt;www.simpy.com/&lt;/a&gt;      &lt;/p&gt;    &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-4427577942133114711?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/4427577942133114711/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2006/06/simpy-tagging-social-bookmarking-and.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/4427577942133114711'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/4427577942133114711'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2006/06/simpy-tagging-social-bookmarking-and.html' title='Simpy - tagging, social bookmarking and personal search engine'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-89023380964950267</id><published>2006-06-06T22:25:00.000-07:00</published><updated>2009-06-12T19:57:01.906-07:00</updated><title type='text'>Windows Re-imaged</title><content type='html'>So my Windows XP laptop provided by work was slow as a dog and I didn't care what was on the local hard drive so I had IT re-image the whole thing.  It is almost like a new machine again. It is really funny how badly that the machine gets bogged down after time. No viruses, no trojens it just plain got slow. Anyway so after getting it back I had the fun task of deciding which tools where the most neccissary and installing them. Here is the list and the order in which I installed them:&lt;br /&gt;&lt;br /&gt;1. Opera - Favorite Browser&lt;br /&gt;2. Firefox - Second Favorite Browser&lt;br /&gt;3. Google Desktop - Productivity Tool (I really like the side bar with auto-hide)&lt;br /&gt;4. Cygwin - *nix tools for windows (makes windows barable)&lt;br /&gt;5. gvim - The best text editor in the universe&lt;br /&gt;6. gaim - Protocal agnostic istant measanger client, yahoo, gmail, aol,etc&lt;br /&gt;7. nvu - WYSIWYG web page tool (simplistic and open source)&lt;br /&gt;8. Real VNC - Desktop sharing system (I do everything through VNC)&lt;br /&gt;&lt;br /&gt;And thats it! These I believe are the essential tools to get just about anything done that you need to. Most of these tools are open source. Now if I could just wrap all these up in some sort of windows packaging system like linux distrobutions already have than I could wipe my drive clean on a quarterly basis and always have a fast responsive machine. We can all dream can't we?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-89023380964950267?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/89023380964950267/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2006/06/windows-re-imaged.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/89023380964950267'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/89023380964950267'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2006/06/windows-re-imaged.html' title='Windows Re-imaged'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-3251519726509723957</id><published>2005-10-19T13:21:00.000-07:00</published><updated>2009-06-12T19:57:01.906-07:00</updated><title type='text'>Laugh Break</title><content type='html'>Courtroom Quotations&lt;br /&gt;The following quotations are taken from official court records across the nation, showing how funny and embarrassing it is that recorders operate at all times in courts of law, so that even the slightest inadvertence is preserved for posterity.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "Was that the same nose you broke as a child?"&lt;br /&gt;Witness: "I only have one, you know."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "Now, Mrs. Johnson, how was your first marriage terminated?"&lt;br /&gt;Witness: "By death."&lt;br /&gt;Lawyer: "And by whose death was it terminated?"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Accused, Defending His Own Case: "Did you get a good look at my face when I took your purse?"&lt;br /&gt;The defendant was found guilty and sentenced to ten years in jail.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "What is your date of birth?"&lt;br /&gt;Witness: "July 15th."&lt;br /&gt;Lawyer: "What year?"&lt;br /&gt;Witness: "Every year."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "Can you tell us what was stolen from your house?"&lt;br /&gt;Witness: "There was a rifle that belonged to my father that was stolen from the hall closet."&lt;br /&gt;Lawyer: "Can you identify the rifle?"&lt;br /&gt;Witness: "Yes. There was something written on the side of it."&lt;br /&gt;Lawyer: "And what did the writing say?"&lt;br /&gt;Witness: "'Winchester'!"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "What gear were you in at the moment of the impact?"&lt;br /&gt;Witness: "Gucci sweats and Reeboks."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "Can you describe what the person who attacked you looked like?"&lt;br /&gt;Witness: "No. He was wearing a mask."&lt;br /&gt;Lawyer: "What was he wearing under the mask?"&lt;br /&gt;Witness: "Er...his face."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "This myasthenia gravis -- does it affect your memory at all?"&lt;br /&gt;Witness: "Yes."&lt;br /&gt;Lawyer: "And in what ways does it affect your memory?"&lt;br /&gt;Witness: "I forget."&lt;br /&gt;Lawyer: "You forget. Can you give us an example of something that you've forgotten?"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "How old is your son, the one living with you?"&lt;br /&gt;Witness: "Thirty-eight or thirty-five, I can't remember which."&lt;br /&gt;Lawyer: "How long has he lived with you?"&lt;br /&gt;Witness: "Forty-five years."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "What was the first thing your husband said to you when he woke that morning?"&lt;br /&gt;Witness: "He said, 'Where am I, Cathy?'"&lt;br /&gt;Lawyer: "And why did that upset you?"&lt;br /&gt;Witness: "My name is Susan."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "Sir, what is your IQ?"&lt;br /&gt;Witness: "Well, I can see pretty well, I think."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "Did you blow your horn or anything?"&lt;br /&gt;Witness: "After the accident?"&lt;br /&gt;Lawyer: "Before the accident."&lt;br /&gt;Witness: "Sure, I played for ten years. I even went to school for it."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "Trooper, when you stopped the defendant, were your red and blue lights flashing?"&lt;br /&gt;Witness: "Yes."&lt;br /&gt;Lawyer: "Did the defendant say anything when she got out of her car?"&lt;br /&gt;Witness: "Yes, sir."&lt;br /&gt;Lawyer: "What did she say?"&lt;br /&gt;Witness: "'What disco am I at?'"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "Doctor, before you performed the autopsy, did you check for a pulse?"&lt;br /&gt;Witness: "No."&lt;br /&gt;Lawyer: "Did you check for blood pressure?"&lt;br /&gt;Witness: "No."&lt;br /&gt;Lawyer: "Did you check for breathing?"&lt;br /&gt;Witness: "No."&lt;br /&gt;Lawyer: "So, then it is possible that the patient was alive when you began the autopsy?"&lt;br /&gt;Witness: "No."&lt;br /&gt;Lawyer: "How can you be so sure, Doctor?"&lt;br /&gt;Witness: "Because his brain was sitting on my desk in a jar."&lt;br /&gt;Lawyer: "But could the patient have still been alive nevertheless?"&lt;br /&gt;Witness: "Yes, it is possible that he could have been alive and practicing law somewhere."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "How far apart were the vehicles at the time of the collision?"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "And you check your radar unit frequently?"&lt;br /&gt;Officer: "Yes, I do."&lt;br /&gt;Lawyer: "And was your radar unit functioning correctly at the time you had the plaintiff on radar?"&lt;br /&gt;Officer: "Yes, it was malfunctioning correctly."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "What happened then?"&lt;br /&gt;Witness: "He told me, he says, 'I have to kill you because you can identify me.'"&lt;br /&gt;Lawyer: "Did he kill you?"&lt;br /&gt;Witness: "No."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "Now sir, I'm sure you are an intelligent and honest man--"&lt;br /&gt;Witness: "Thank you. If I weren't under oath, I'd return the compliment."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "You were there until the time you left, is that true?"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "So you were gone until you returned?"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "The youngest son, the 20 year old, how old is he?"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "Were you alone or by yourself?"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "How long have you been a French Canadian?"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Witness: "He was about medium height and had a beard."&lt;br /&gt;Lawyer: "Was this a male or a female?"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "Mr. Slatery, you went on a rather elaborate honeymoon, didn't you?"&lt;br /&gt;Witness: "I went to Europe, sir."&lt;br /&gt;Lawyer: "And you took your new wife?"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "I show you Exhibit 3 and ask you if you recognize that picture."&lt;br /&gt;Witness: "That's me."&lt;br /&gt;Lawyer: "Were you present when that picture was taken?"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "Were you present in court this morning when you were sworn in?"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "Do you know how far pregnant you are now?"&lt;br /&gt;Witness: "I'll be three months on November 8."&lt;br /&gt;Lawyer: "Apparently, then, the date of conception was August 8?"&lt;br /&gt;Witness: "Yes."&lt;br /&gt;Lawyer: "What were you doing at that time?"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "How many times have you committed suicide?"&lt;br /&gt;Witness: "Four times."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "Do you have any children or anything of that kind?"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "She had three children, right?"&lt;br /&gt;Witness: "Yes."&lt;br /&gt;Lawyer: "How many were boys?"&lt;br /&gt;Witness: "None."&lt;br /&gt;Lawyer: "Were there girls?"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "You don't know what it was, and you didn't know what it looked like, but can you describe it?"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "You say that the stairs went down to the basement?"&lt;br /&gt;Witness: "Yes."&lt;br /&gt;Lawyer: "And these stairs, did they go up also?"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "Have you lived in this town all your life?"&lt;br /&gt;Witness: "Not yet."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: (realizing he was on the verge of asking a stupid question) "Your Honor, I'd like to strike the next question."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "Do you recall approximately the time that you examined the body of Mr. Eddington at the Rose Chapel?"&lt;br /&gt;Witness: "It was in the evening. The autopsy started about 8:30pm."&lt;br /&gt;Lawyer: "And Mr. Eddington was dead at the time, is that correct?"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "What is your brother-in-law's name?"&lt;br /&gt;Witness: "Borofkin."&lt;br /&gt;Lawyer: "What's his first name?"&lt;br /&gt;Witness: "I can't remember."&lt;br /&gt;Lawyer: "He's been your brother-in-law for years, and you can't remember his first name?"&lt;br /&gt;Witness: "No. I tell you, I'm too excited." (rising and pointing to his brother-in-law) "Nathan, for heaven's sake, tell them your first name!"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "Did you ever stay all night with this man in New York?"&lt;br /&gt;Witness: "I refuse to answer that question.&lt;br /&gt;Lawyer: "Did you ever stay all night with this man in Chicago?"&lt;br /&gt;Witness: "I refuse to answer that question.&lt;br /&gt;Lawyer: "Did you ever stay all night with this man in Miami?"&lt;br /&gt;Witness: "No."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "Doctor, did you say he was shot in the woods?"&lt;br /&gt;Witness: "No, I said he was shot in the lumbar region."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "What is your marital status?"&lt;br /&gt;Witness: "Fair."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "Are you married?"&lt;br /&gt;Witness: "No, I'm divorced."&lt;br /&gt;Lawyer: "And what did your husband do before you divorced him?"&lt;br /&gt;Witness: "A lot of things I didn't know about."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "And who is this person you are speaking of?"&lt;br /&gt;Witness: "My ex-widow said it.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "How did you happen to go to Dr. Cherney?"&lt;br /&gt;Witness: "Well, a gal down the road had had several of her children by Dr. Cherney and said he was really good."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "Doctor, how many autopsies have you performed on dead people?"&lt;br /&gt;Witness: "All my autopsies have been performed on dead people."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "Were you acquainted with the deceased?"&lt;br /&gt;Witness: "Yes sir."&lt;br /&gt;Lawyer: "Before or after he died?"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "Mrs. Jones, is your appearance this morning pursuant to a deposition notice which I sent to your attorney?"&lt;br /&gt;Witness: "No. This is how I dress when I go to work."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The Court: "Now, as we begin, I must ask you to banish all present information and prejudice from your minds, if you have any."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "Did he pick the dog up by the ears?"&lt;br /&gt;Witness: "No."&lt;br /&gt;Lawyer: "What was he doing with the dog's ears?"&lt;br /&gt;Witness: "Picking them up in the air."&lt;br /&gt;Lawyer: "Where was the dog at this time?"&lt;br /&gt;Witness: "Attached to the ears."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "When he went, had you gone and had she, if she wanted to and were able, for the time being excluding all the restraints on her not to go, gone also, would he have brought you, meaning you and she, with him to the station?"&lt;br /&gt;Other Lawyer: "Objection. That question should be taken out and shot."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "And lastly, Gary, all your responses must be oral. Ok? What school do you go to?"&lt;br /&gt;Witness: "Oral."&lt;br /&gt;Lawyer: "How old are you?"&lt;br /&gt;Witness: "Oral."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "What is your relationship with the plaintiff?"&lt;br /&gt;Witness: "She is my daughter."&lt;br /&gt;Lawyer: "Was she your daughter on February 13, 1979?"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "Now, you have investigated other murders, have you not, where there was a victim?"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "Now, doctor, isn't it true that when a person dies in his sleep, in most cases he just passes quietly away and doesn't know anything about it until the next morning?"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "And what did he do then?"&lt;br /&gt;Witness: "He came home, and next morning he was dead."&lt;br /&gt;Lawyer: "So when he woke up the next morning he was dead?"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "Did you tell your lawyer that your husband had offered you indignities?"&lt;br /&gt;Witness: "He didn't offer me nothing. He just said I could have the furniture."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "So, after the anesthesia, when you came out of it, what did you observe with respect to your scalp?"&lt;br /&gt;Witness: "I didn't see my scalp the whole time I was in the hospital."&lt;br /&gt;Lawyer: "It was covered?"&lt;br /&gt;Witness: "Yes, bandaged."&lt;br /&gt;Lawyer: "Then, later on...what did you see?"&lt;br /&gt;Witness: "I had a skin graft. My whole buttocks and leg were removed and put on top of my head."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "Could you see him from where you were standing?"&lt;br /&gt;Witness: "I could see his head."&lt;br /&gt;Lawyer: "And where was his head?"&lt;br /&gt;Witness: "Just above his shoulders."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "Do you drink when you're on duty?"&lt;br /&gt;Witness: "I don't drink when I'm on duty, unless I come on duty drunk."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "Any suggestions as to what prevented this from being a murder trial instead of an attempted murder trial?"&lt;br /&gt;Witness: "The victim lived."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "The truth of the matter is that you were not an unbiased, objective witness, isn't it? You too were shot in the fracas."&lt;br /&gt;Witness: "No, sir. I was shot midway between the fracas and the naval."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Lawyer: "Officer, what led you to believe the defendant was under the influence?"&lt;br /&gt;Witness: "Because he was argumentary, and he couldn't pronunciate his words."&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-3251519726509723957?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/3251519726509723957/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2005/10/laugh-break.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/3251519726509723957'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/3251519726509723957'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2005/10/laugh-break.html' title='Laugh Break'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-8953508842063549880</id><published>2005-09-29T11:00:00.000-07:00</published><updated>2009-06-12T19:57:01.907-07:00</updated><title type='text'>The Web-based Office will have its day | Web 2.0 Explorer | ZDNet.com</title><content type='html'>A while back I made a case for why I thought &lt;a href="http://stephenmeckley.blogspot.com/2004/04/yahoo-rules.html"&gt;Yahoo Mail ruled &lt;/a&gt;and now Yahoo is &lt;a href="http://whatsnew.mail.yahoo.com/"&gt;updating the tool&lt;/a&gt;. I have signed up for the beta test but have not been able to try it as of yet. The word on the net is that this thing rocks! Many of the reasons I cited for why Yahoo rocks would hold true for any application and with the &lt;a href="http://www.onlamp.com/pub/a/onlamp/2005/06/09/rails_ajax.html"&gt;advancements&lt;/a&gt; in &lt;a href="http://www.rubyonrails.org/"&gt;frameworks&lt;/a&gt; (&lt;a href="http://en.wikipedia.org/wiki/AJAX"&gt;AJAX&lt;/a&gt; and &lt;a href="http://www.onlamp.com/pub/a/onlamp/2005/01/20/rails.html"&gt;Ruby on Rails &lt;/a&gt;as two examples) to make this easier to design and build I believe this is the begging of a &lt;a href="http://slashdot.org/articles/05/09/29/000223.shtml?tid=126"&gt;huge movement&lt;/a&gt;. Time will only tell but my gut says this is going to be as fun a ride. Microsoft better watch out as these tools will be much more OS independent and has the chance to finally upset the apple cart for M$. Hold on tight!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-8953508842063549880?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://blogs.zdnet.com/web2explorer/index.php?p=20' title='The Web-based Office will have its day | Web 2.0 Explorer | ZDNet.com'/><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/8953508842063549880/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2005/09/web-based-office-will-have-its-day-web.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/8953508842063549880'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/8953508842063549880'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2005/09/web-based-office-will-have-its-day-web.html' title='The Web-based Office will have its day | Web 2.0 Explorer | ZDNet.com'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-7016312638308320652</id><published>2005-08-19T11:43:00.000-07:00</published><updated>2009-06-12T19:57:01.907-07:00</updated><title type='text'>Nanotube Sheets</title><content type='html'>&lt;a href="http://msnbcmedia.msn.com/j/msnbc/Components/Photos/050816/050816_nanotube_hmed5p.hlarge.jpg"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 320px; CURSOR: hand" alt="" src="http://msnbcmedia.msn.com/j/msnbc/Components/Photos/050816/050816_nanotube_hmed5p.hlarge.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;The number of &lt;a href="http://msnbc.msn.com/id/8976160/"&gt;applications &lt;/a&gt;(&lt;a href="http://www.physorg.com/news5890.html"&gt;another link&lt;/a&gt;) people have already thought of for this is stuff is simply amazing. If there ever was a disruptive technology this certainly seems to be it. I mean where can't you use this stuff. Amazing!&lt;br /&gt;I can remember first reading about buckminster fully's (sp) wounderful invention/discovery of the then called bucky tube in a 1985 issue of Popular Science and thinking this is going to change the world! I just wonder how long it will be until I can buy something using these sheets. At the time I can remember them talking about the buckey balls as the primary intrest and sort of mentioning the the buckey tube almost in passing. Ever since that article it has been the buckey tube on center stage.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-7016312638308320652?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://msnbc.msn.com/id/8976160/' title='Nanotube Sheets'/><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/7016312638308320652/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2005/08/nanotube-sheets.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/7016312638308320652'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/7016312638308320652'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2005/08/nanotube-sheets.html' title='Nanotube Sheets'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-5092060492212333987</id><published>2005-08-16T13:26:00.000-07:00</published><updated>2009-06-12T19:57:01.907-07:00</updated><title type='text'>Dwight History (My Hometown)</title><content type='html'>&lt;p align="left"&gt;&lt;a href="http://sunrisedancer.com/radicalreader/library/diana/images/photo05.jpg"&gt;&lt;img style="FLOAT: right; MARGIN: 0px 0px 10px 10px; WIDTH: 320px; CURSOR: hand" alt="" src="http://sunrisedancer.com/radicalreader/library/diana/images/photo05.jpg" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Some pictures of the &lt;a onclick="return top.js.OpenExtLink(window,event,this)" href="http://sunrisedancer.com/radicalreader/library/diana/dianaillus05.asp" target="_blank"&gt;windmill&lt;/a&gt; on the Oghton property and the &lt;a href="http://sunrisedancer.com/radicalreader/library/diana/dianaillus04.asp"&gt;Oghton home&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;You can see some of these &lt;a href="http://community.webshots.com/album/424660391vGqEyv"&gt;same pictures&lt;/a&gt; that I took about 9 months ago. Interesting to see how things change.&lt;br /&gt;&lt;br /&gt;Some interesting (in my totally unbiased opinion) &lt;a href="http://sunrisedancer.com/radicalreader/library/diana/diana02.asp"&gt;history about Dwight &lt;/a&gt;and the &lt;a href="http://sunrisedancer.com/radicalreader/library/diana/diana10.aspv"&gt;Oghton's&lt;/a&gt; can be read here.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;As it turns out my mother took piano lessons with Diana Oghton and they played in the same piano recitals.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-5092060492212333987?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://sunrisedancer.com/radicalreader/library/diana/diana02.asp' title='Dwight History (My Hometown)'/><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/5092060492212333987/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2005/08/dwight-history-my-hometown.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/5092060492212333987'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/5092060492212333987'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2005/08/dwight-history-my-hometown.html' title='Dwight History (My Hometown)'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-5562916820068129525</id><published>2005-06-24T13:45:00.000-07:00</published><updated>2009-06-12T19:57:01.907-07:00</updated><title type='text'>Ronald Dumsfeld</title><content type='html'>&lt;a href="http://photos1.blogger.com/blogger/909/356/1600/ronald_dumbsfield_WEST_SIYYYDE.jpg"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://photos1.blogger.com/blogger/909/356/320/ronald_dumbsfield_WEST_SIYYYDE.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;The man that is in charge of the death and mayhem ensuing in Iraq shows us his roots and where he gained his "from the streets" like diplomacy....&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;"WEST SIYYYDE!!!!"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;My apologies to anyone who might be offended by my assertions that rummy knows anything about the plight of the inner city youth.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-5562916820068129525?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/5562916820068129525/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2005/06/ronald-dumsfeld.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/5562916820068129525'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/5562916820068129525'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2005/06/ronald-dumsfeld.html' title='Ronald Dumsfeld'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-691647937603927985</id><published>2004-10-29T14:38:00.000-07:00</published><updated>2009-06-12T19:57:01.907-07:00</updated><title type='text'>1000 years</title><content type='html'>I have lived 1000 years.&lt;br /&gt;&lt;br /&gt;I will live 1000 more&lt;br /&gt;&lt;br /&gt;and still know nothing.&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-691647937603927985?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/691647937603927985/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2004/10/1000-years.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/691647937603927985'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/691647937603927985'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2004/10/1000-years.html' title='1000 years'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-8941908676738725690</id><published>2004-07-04T23:46:00.000-07:00</published><updated>2009-06-12T19:57:01.907-07:00</updated><title type='text'>Michael Moore adds to the discourse</title><content type='html'>&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-8941908676738725690?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.michaelmoore.com/words/latestnews/mikeinthenews/index.php?id=61' title='Michael Moore adds to the discourse'/><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/8941908676738725690/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2004/07/michael-moore-adds-to-discourse.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/8941908676738725690'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/8941908676738725690'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2004/07/michael-moore-adds-to-discourse.html' title='Michael Moore adds to the discourse'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-3966077628222016468</id><published>2004-06-05T20:55:00.000-07:00</published><updated>2009-06-12T19:57:01.907-07:00</updated><title type='text'>GameBoy Embedded Development</title><content type='html'>  I read about a wonderful development platform for embedded projects (NewScientist May 1  Pg. 26) based on the Game Boy Advance portable gaming system.  The great thing about this platform is the price.  For about $70 you can get a device with all this:&lt;br /&gt;&lt;br /&gt;	 &lt;br /&gt;&lt;br /&gt;2001 Game Boy Advance&lt;br /&gt;&lt;br /&gt;Screen size:	240*160 - 2.9"&lt;br /&gt;&lt;br /&gt;Screen type: Colour 8 or 16bit&lt;br /&gt;&lt;br /&gt;CPU: 32bit ARM7&lt;br /&gt;&lt;br /&gt;CPU Clock:	16.78MHz&lt;br /&gt;&lt;br /&gt;Video RAM: 96kB&lt;br /&gt;&lt;br /&gt;Working RAM: 32k + 256k&lt;br /&gt;&lt;br /&gt;Power: 2AA - 80mA&lt;br /&gt;&lt;br /&gt;Sound: 4ch stereo + 2pcm&lt;br /&gt;&lt;br /&gt;Keys: 6 + Control pad&lt;br /&gt;&lt;br /&gt;Link Port: &lt;2MHz, Bootloader&lt;br /&gt;&lt;br /&gt;Cartarige slot: 3V multiplexed bus&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  It is great to have this many features and power but figuring out how to get a development system based on the GBA might seem like a lot of work that would outweigh the benefits of this cheep hardware.  However, for about $160 this work has already been done for you with the &lt;a href="http://www.charmedlabs.com/productsmain.htm"&gt;Xport 2.0&lt;/a&gt;.  This might seem like a lot of money for a development system but if you look at the costs for any other development system for an embedded processor it will cost at least this much and in the end you don’t get all the features that come with the GBA.  One could create this development system on your own but why when it would end up costing as much to have prototype board made and would take months of development time.  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  I have recently purchased a GBA from my fiancée’s little brother who had upgraded to the Game Boy Advanced SP.  The Xport 2.0 works on the SP as well but I think is overkill and has fewer input buttons.  I also like the fact that the GBA uses standard batteries so I won’t have to worry about buying expensive replacement batteries from Nintendo.  I can also have a pair of batteries in the charger at the same time as I am using another pair in the GBA unit so that I can continually use the GBA.  The &lt;a href="http://www.ednmag.com"&gt;EDN&lt;/a&gt; article &lt;a href="http://www.e-insite.net/ednmag/index.asp?layout=article&amp;amp;articleId=CA193186"&gt;&lt;i&gt;Gaming as Serious Business&lt;/i&gt;&lt;/a&gt; describes potential and actual applications of the Game Boy as an embedded system.&amp;nbsp;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  Stay tuned for further information on the progress of this project.&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-3966077628222016468?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.charmedlabs.com/' title='GameBoy Embedded Development'/><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/3966077628222016468/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2004/06/gameboy-embedded-development.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/3966077628222016468'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/3966077628222016468'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2004/06/gameboy-embedded-development.html' title='GameBoy Embedded Development'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-3385903199622353033</id><published>2004-06-01T14:53:00.000-07:00</published><updated>2009-06-12T19:57:01.908-07:00</updated><title type='text'>I am geek</title><content type='html'>I just found out about ctags for vi today and it made me the happiest person on earth!  I am geek!  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-3385903199622353033?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/3385903199622353033/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2004/06/i-am-geek.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/3385903199622353033'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/3385903199622353033'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2004/06/i-am-geek.html' title='I am geek'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-8149423643772972639</id><published>2004-05-30T21:11:00.000-07:00</published><updated>2009-06-12T19:57:01.908-07:00</updated><title type='text'>Some New Info</title><content type='html'>I have been busy lately!  It has been a good busy.  I finally got a job.  I am working for SigmaTel.  They are a semiconductor company here in Austin.  I had another offer in California as a Contractor making a little bit more but the cost of living probably would have ate up the difference.  The offer in California would have been just north of San Fran near the Nappa Valley area.  NICE, right!  Well, I wanted a full time position.  I just do not enjoy interviewing.  Life is full of choices, you know.  It would have been quite an experience I am sure.  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The other big news in my life is that I proposed to Christine.  I am still waiting for an answer but I am hopeful.  JK :)  She said yes.  It was a pretty interesting proposal that I will go into more at a later date.  She will be moving to Austin in a couple of months.  She was able to transfer with her company to do her stuff in the southwest.  :)  So as you can geuss life is pretty good.  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-8149423643772972639?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/8149423643772972639/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2004/05/some-new-info.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/8149423643772972639'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/8149423643772972639'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2004/05/some-new-info.html' title='Some New Info'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-3887667062849079340</id><published>2004-04-06T12:45:00.000-07:00</published><updated>2009-06-12T19:57:01.908-07:00</updated><title type='text'>Yahoo Rules</title><content type='html'>Why Yahoo Mail Rules:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;- Integrated into my homepage along with all my other links and information that I use &lt;br /&gt;&lt;br /&gt;- Same interface available worldwide&lt;br /&gt;&lt;br /&gt;- It automatically scans all attachments and downloads for viruses without having to purchase or download additional software and updates to every box that you own or will use.&lt;br /&gt;&lt;br /&gt;- Will be my address for the rest of my life regardless of who my ISP is&lt;br /&gt;&lt;br /&gt;- FREE (as in beer)&lt;br /&gt;&lt;br /&gt;- Very, very little spam makes it into my inbox&lt;br /&gt;&lt;br /&gt;- No software running on your machine&lt;br /&gt;&lt;br /&gt;  - Impervious to simple buffer overflow hacks and attacks&lt;br /&gt;&lt;br /&gt;  - No software to update ever&lt;br /&gt;&lt;br /&gt;  - OS independence!!!&lt;br /&gt;&lt;br /&gt;- Address book is not on your local machine and therefore if your machine is compromised it will not spread to everyone you know&lt;br /&gt;&lt;br /&gt;- Much less obtrusive advertising than other free email providers (mail.com)&lt;br /&gt;&lt;br /&gt;- Not owned by a predatory monopolist (hotmail.com)&lt;br /&gt;&lt;br /&gt;- It just works!  You don't have to know anything about computers.  Isn't that what everyone really wants out of a tool  (mac)?&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Why Yahoo Mail Sucks:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;- It might be a bit slower than other locally run email programs especially if you are trying to access your email through a low bandwidth connection.&lt;br /&gt;&lt;br /&gt;- There are potentially more privacy concerns with storing all your email on a remote server.  However a novice or even intermediate computer user will probably leave themselves more open to privacy concerns than having them stored on yahoo's servers&lt;br /&gt;&lt;br /&gt;- They are not saints and you still have to watch out for changes in there User Agreements.  Like humans every company has the potential for great acts of evil and great acts of goodness.  No company is always one or the other (except for Microsoft).&lt;br /&gt;&lt;br /&gt;- Formatting of the messages is more limited&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;For my personal use I find that the positives far outweigh the negatives.  I am almost always on a broadband connection so execution speed is not a problem for me.  The limited formatting does not bother me.  In fact I am a big fan of straight text emails as opposed to HTML emails.  It’s a big waste of space if you ask me.  Include the URL in the text if you must have some HTML.  I am already running a browser so it will take me less time to click on a link than to have browser software running in addition to my email client.  Those are my thoughts on Yahoo Mail.&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-3887667062849079340?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/3887667062849079340/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2004/04/yahoo-rules.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/3887667062849079340'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/3887667062849079340'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2004/04/yahoo-rules.html' title='Yahoo Rules'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-3851922423710044070</id><published>2004-03-27T18:11:00.000-08:00</published><updated>2009-06-12T19:57:01.908-07:00</updated><title type='text'>Democracy Now! | Headlines for March 26, 2004</title><content type='html'>&lt;a href="http://www.democracynow.org/article.pl?sid=04/03/26/1551235"&gt;Democracy Now! | Headlines for March 26, 2004&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-3851922423710044070?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.democracynow.org/article.pl?sid=04/03/26/1551235' title='Democracy Now! | Headlines for March 26, 2004'/><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/3851922423710044070/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2004/03/democracy-now-headlines-for-march-26.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/3851922423710044070'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/3851922423710044070'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2004/03/democracy-now-headlines-for-march-26.html' title='Democracy Now! | Headlines for March 26, 2004'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-5048272881384761910</id><published>2004-03-10T09:30:00.000-08:00</published><updated>2009-06-12T19:57:01.908-07:00</updated><title type='text'>Imagine a World...</title><content type='html'>Imagine how different our world would be if the person that the majority of Americans had wanted to be president the 2000 election had become our president...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I started thinking about this again after I read an article about another &lt;a href="http://www.cnn.com/2004/ALLPOLITICS/03/10/recount/index.html"&gt;recount &lt;/a&gt;in Florida where Dick Gephardt beat Kerry 2-1! Bush won in Florida by 537 votes. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The next scary thing to think about is the fact that with some electronic voting machines (one of which I voted on yesterday) there is no capability for a recount because there is &lt;a href="http://www.verifiedvoting.org/"&gt;NO PAPER TRAIL&lt;/a&gt;! This is a very scary situation in which hackers could very easily decide an election and nobody will ever know what happened. I made a stink about this at the polling station (probably not the right venue) and then went home and wrote to the Secretary and to the paper asking them to fix this problem. And they say Window$ has security holes!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I would ask anyone that votes on eletronic voting machines to write their Secreatary of State to demand that there votes be verifiable.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-5048272881384761910?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/5048272881384761910/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2004/03/imagine-world.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/5048272881384761910'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/5048272881384761910'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2004/03/imagine-world.html' title='Imagine a World...'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-1986295113058127419</id><published>2004-03-02T20:28:00.000-08:00</published><updated>2009-06-12T19:57:01.908-07:00</updated><title type='text'>Now Time For Some FUN!</title><content type='html'>Well it seems as if the primary is all but wrapped up. Now its time for some fun! Its time to get president Bush out of Washington. To quote a bumper sticker I saw the other day:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;"Save the environment: Plant a bush back in Texas!"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I received notification of a chance to help do just that and I signed up to volunteer with moveon.org. I would encourage others to do the same. I know that many of you do not have as much free time as I do but I would ask you to give what you can. You can volunteer at the following link &lt;a href="http://www.moveon.org/pac/pledge/?id=-3126228-MqNDrCFbBTfbnXPySvNynA "&gt;http://www.moveon.org/pac/pledge/?id=-3126228-MqNDrCFbBTfbnXPySvNynA &lt;/a&gt;. Please help get the US back to the people or at the very least away from Bush.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Here is an interesting link I &lt;a href="http://www.wheresgeorge.com/"&gt;site&lt;/a&gt; I found today.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-1986295113058127419?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/1986295113058127419/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2004/03/now-time-for-some-fun.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/1986295113058127419'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/1986295113058127419'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2004/03/now-time-for-some-fun.html' title='Now Time For Some FUN!'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-7649944641790723261</id><published>2004-03-01T18:46:00.000-08:00</published><updated>2009-06-12T19:57:01.909-07:00</updated><title type='text'>Needed: oscilloscope</title><content type='html'>I am in desperate need of an oscilloscope. I have done as much debugging as I can with my DMM and I am stuck in my tracks until I can get an oscilloscope to debug my problems. My part not willing to go into ISP (In System Programming) mode so I cannot program it. I have checked all the connections and the oscillator and everything seems fine so I think that it must be either the 12V programming power supply (of which I have tried three different ones now) has to much ripple, not enough instantaneous turn on current or the reset pulse is flaky. Any one of these at the very minimum requires an analog scope and ideally would have a digital storage scope to debug. I have access to one old analog scope at the &lt;a href="http://www.robotgroup.org/"&gt;Austin Robot Club &lt;/a&gt;on Thursdays for about a half hour but if I am going to make any progress I need to find a way to get more time on a scope. If anyone can help please let me know where I can get some time on a scope or a place where they sell used scopes for a decent price I would appreciate it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-7649944641790723261?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/7649944641790723261/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2004/03/needed-oscilloscope.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/7649944641790723261'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/7649944641790723261'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2004/03/needed-oscilloscope.html' title='Needed: oscilloscope'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-5067757039773414015</id><published>2004-03-01T18:36:00.000-08:00</published><updated>2009-06-12T19:57:01.909-07:00</updated><title type='text'>Qualcomm Interview</title><content type='html'>The interview went really well. It was much more technical than I thought it was going to be. I had thought that I was just going to be talking to someone from HR but it turned out to be one of the managers! The project they are hiring for is adding additional functionality to there 3G wireless chips. They want to add video and some other things and need to do more verification if they add in all the features they want. That's were I come in. They do not want to fly my in for an interview until I have heard back from IBM. DOH! No bargaining there I guess. Anyway they seemed pretty interested and they had three positions open. The market is DEFINITELY getting better!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-5067757039773414015?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/5067757039773414015/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2004/03/qualcomm-interview.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/5067757039773414015'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/5067757039773414015'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2004/03/qualcomm-interview.html' title='Qualcomm Interview'/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-4147992893883631967</id><published>2004-02-29T22:47:00.000-08:00</published><updated>2009-06-12T19:57:01.909-07:00</updated><title type='text'></title><content type='html'>If anyone would like to add comments or dispute anything that I say here I encourage you to write me and I will add you to the post list.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I have so many things that I would like to talk about but first of all I would like to give out a few links:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;On &lt;a href="http://buzzflash.com/"&gt;Buzzflash&lt;/a&gt; there are a bunch of good commentaries but I especially like the &lt;a href="http://www.buzzflash.com/contributors/04/02/con04079.html"&gt;synopsis of the lies Bush &lt;/a&gt;has told.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Also &lt;a href="http://www.commondreams.org/"&gt;Commondreams.org&lt;/a&gt; has many great articles.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;If you can't tell I am a real fan of giving common people a voice to express themselves and the internet is a great medium for this.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;On to the news of the day. I am ecstatic to read that Iraq has, what on the surface seems to be, a tremendous &lt;a href="http://www.washingtonpost.com/wp-dyn/articles/A17535-2004Feb29.html"&gt;new constitution&lt;/a&gt;. Although it is only temporary hopefully it will be representative of what the people in Iraq will decide that they want for themselves. I find it truly amazing that the same administration that gave us The Patriot Act was able to muster such a progressive and open government! If Bush wins again perhaps I will move to Iraq in order to have more freedoms. ;) &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Other news of the day (actually yesterday) was the democratic debate. I am proud to say that I had thought that Edwards was my man very early in the race. I am surprised that others also began to see what I saw. Typically anyone that I would pick would have not ever been considered by the majority. I am really glad DENNIS J. KUCINICH has stayed in there as well because he stays true to what he believes and is not afraid to drive the discussions to what he feels is important. Like many third party candidates I think his views are a little extreme for the majority of the public. The reason that these "True Americans" will have a hard time getting into an office of power is because they challenge the machine that is our government. They will never allow them to be true contenders as long as they promise to disrupt. That is part of the reason that I think Edwards is a good choice. I think he is a decent compromise in his political views and is a very electable guy. I am tired of the divisiveness that Bush's righteousness and corporate entitlement agenda has promoted. I very much want to see someone more middle of the road so we can begin to have meaningful discussions again instead of mean divisiveness. Anyway I am sure I will have more to say on the race later.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;In other news the Israel's supreme court on Sunday ordered the suspension of building work on a section of the West Bank &lt;a href="http://iafrica.com/news/worldnews/306068.htm"&gt;separation barrier&lt;/a&gt;. I am very upset that the Israeli government is trying to grab more land like a game of &lt;a href="http://www.well.com/user/mmcadams/gointro.html"&gt;"Go"&lt;/a&gt; but with the absence of any leadership from the world power I feel that putting up a wall in their own territory may be a temporary solution to end the bloodshed. The best solution would have been to continue the talks that almost lead to a solution with the previous administration. Short of that I think that this might be a short term fix until we can get someone in there that knows the meaning of the word diplomacy.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The misguided use of the patriot act for today &lt;a href="http://www.securityfocus.com/news/8136"&gt;is this article&lt;/a&gt; where a man created a small virus that he sent to his friends and infected 21 users. It had very little hope of spreading much further and in the article it even states that the crime was already covered by a pre-patriot law. But because of this wondrous thing they call The Patriot Act they can now additionally charge him with being a CYBERTERRORIST! This is outrageous and it totally misdirects attention away from the true dangers of cyberterrorism that we are becoming more and more vulnerable to everyday.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I guess I can kiss that defense company job (if not my ass) goodbye. Well that is it for me today.  I need to get some sleep. Hopefully I will still be around to write some more of my thoughts.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;PS I almost forgot to mention that I have a phone interview with Quallcom tommorow! The job is in San Diago. I will tell you how it went tommorow. Wish me luick!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-4147992893883631967?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/4147992893883631967/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2004/02/if-anyone-would-like-to-add-comments-or.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/4147992893883631967'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/4147992893883631967'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2004/02/if-anyone-would-like-to-add-comments-or.html' title=''/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-4018140174729397842</id><published>2004-02-24T08:58:00.000-08:00</published><updated>2009-06-12T19:57:01.909-07:00</updated><title type='text'></title><content type='html'>I just got an interview with IBM for Thursday at 2:00pm !!!! I will be interviewing for a verification engineer position in the STI PowerPC group. This is one of the highest security groups at IBM (highly sensitive intellectual property). I need to go get ready for it!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-4018140174729397842?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/4018140174729397842/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2004/02/i-just-got-interview-with-ibm-for.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/4018140174729397842'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/4018140174729397842'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2004/02/i-just-got-interview-with-ibm-for.html' title=''/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8214932147906650442.post-1283322814048516797</id><published>2004-02-23T18:46:00.000-08:00</published><updated>2009-06-12T19:57:01.909-07:00</updated><title type='text'></title><content type='html'>My first post! Wewhew!!! Well Currently I am waiting for my soldering iron to warm up and so I thought I would get one of these blog sites. I am working on my MCU (microcontroller) programmer. I am using an 8051 based MCU that has embedded flash so that you can reprogram it on your end system board which is ISP (In System Programming). The specific part I am using right now is the 89c51rd2 from phillips. I have to get back to soldering.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8214932147906650442-1283322814048516797?l=stephenmm.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://stephenmm.blogspot.com/feeds/1283322814048516797/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://stephenmm.blogspot.com/2004/02/my-first-post-wewhew-well-currently-i.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/1283322814048516797'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8214932147906650442/posts/default/1283322814048516797'/><link rel='alternate' type='text/html' href='http://stephenmm.blogspot.com/2004/02/my-first-post-wewhew-well-currently-i.html' title=''/><author><name>stephenmm</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
