<?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-6124489411137620600</id><updated>2012-01-30T04:42:46.071-05:00</updated><category term='ethics'/><category term='pirates'/><category term='moped'/><category term='pearl jam'/><category term='buffy'/><category term='spinners'/><category term='books'/><category term='development'/><category term='gun-kata'/><category term='i&apos;m a terrible roommate'/><category term='privacy'/><category term='cartoons'/><category term='birds'/><category term='devil rays'/><category term='tigers'/><category term='summer'/><category term='trains'/><category term='Halloween'/><category term='parking'/><category term='kite'/><category term='genious'/><category term='drawings'/><category term='balk'/><category term='fatties'/><category term='greetings'/><category term='opera'/><category term='2008'/><category term='red bulls'/><category term='baseball'/><category term='guac'/><category term='pinball'/><category term='soccer'/><category term='java'/><category term='feminism'/><category term='holiday'/><category term='graphics'/><category term='nullus'/><category term='erotica'/><category term='indians'/><category term='cats'/><category term='clinton'/><category term='zoning'/><category term='giuliani'/><category term='obama'/><category term='astros'/><category term='little league'/><category term='fascists'/><category term='INI'/><category term='i&apos;m an idiot'/><category term='rockies'/><category term='statistics'/><category term='chomsky'/><category term='paranormal'/><category term='johan'/><category term='nuts'/><category term='google'/><category term='poopy'/><category term='bikes'/><category term='space'/><category term='reflection'/><category term='dips of the world'/><category term='CFL'/><category term='vaudeville'/><category term='softball'/><category term='harper&apos;s'/><category term='efficiency'/><category term='Alien'/><category term='reds'/><category term='umpires'/><category term='christmas'/><category term='gold'/><category term='advertising'/><category term='currency'/><category term='fascism'/><category term='wines'/><category term='angels'/><category term='valleycats'/><category term='electricity'/><category term='gore'/><category term='salmon'/><category term='paper airplanes'/><category term='santana'/><category term='charity'/><category term='world cup'/><category term='little house on the prairie'/><category term='salt'/><category term='nerves'/><category term='physics'/><category term='guns'/><category term='yankees'/><category term='shoes'/><category term='gay'/><category term='radio'/><category term='stencils'/><category term='baby-sitters club'/><category term='gossip girl'/><category term='fanfic'/><category term='cubs'/><category term='napkins'/><category term='pork'/><category term='prospect park'/><category term='music'/><category term='goodies'/><category term='fuuuuuuck'/><category term='propaganda'/><category term='words'/><category term='diamondbacks'/><category term='wood'/><category term='scorekeeping'/><category term='coffee'/><category term='tea'/><category term='recliners'/><category term='text messages'/><category term='phillies'/><category term='interleague'/><category term='axwax'/><category term='street art'/><category term='IQ'/><category term='fuck the yankees'/><category term='simpsons'/><category term='library'/><category term='A Round Of Applause'/><category term='ibb'/><category term='vote for pedro'/><category term='psychology'/><category term='scrabulous'/><category term='white sox'/><category term='web 2.0'/><category term='No Shit Sherlock Holmes'/><category term='litter box'/><category term='parachute'/><category term='willie randolph'/><category term='nerds'/><category term='cities'/><category term='scrabble'/><category term='glavine'/><category term='tacos'/><category term='Brooklyn'/><category term='blogs'/><category term='exercise'/><category term='cryptic'/><category term='racism'/><category term='ESPN'/><category term='nationals'/><category term='video games'/><category term='shit'/><category term='ringtone'/><category term='language'/><category term='trades'/><category term='branston pickle'/><category term='all-star'/><category term='bees'/><category term='puppy'/><category term='geometry'/><category term='get rich quick'/><category term='compliments'/><category term='on-air talent'/><category term='geography'/><category term='balls'/><category term='rap'/><category term='puns'/><category term='candy'/><category term='color-blindness'/><category term='nate'/><category term='cyclones'/><category term='cleaning'/><category term='capitalism'/><category term='quackle'/><category term='clay davis'/><category term='wide stance'/><category term='media'/><category term='top chef'/><category term='geogramy'/><category term='SNY'/><category term='beach'/><category term='comics'/><category term='the wire'/><category term='knuckler'/><category term='environment'/><category term='photos'/><category term='comptrollers'/><category term='stickers'/><category term='barbecue'/><category term='python'/><category term='bjork'/><category term='internet'/><category term='dog weight growth'/><category term='dodgers'/><category term='buckley'/><category term='dickings'/><category term='wave'/><category term='flamewar'/><category term='penis thievery'/><category term='science'/><category term='doubledays'/><category term='women'/><category term='turkey'/><category term='idea'/><category term='pitching'/><category term='cigars'/><category term='birthday'/><category term='vacation'/><category term='tickets'/><category term='open thread'/><category term='politics'/><category term='tattoo'/><category term='wii'/><category term='connecticut for lieberman'/><category term='padres'/><category term='dog'/><category term='scores'/><category term='geomaphy'/><category term='C#'/><category term='world series'/><category term='economics'/><category term='red sox'/><category term='3D'/><category term='knickerbockers'/><category term='food'/><category term='baseball nooby'/><category term='history'/><category term='dollhouse'/><category term='wiffleball'/><category term='religion'/><category term='corgi'/><category term='braves'/><category term='financial advice'/><category term='traffic'/><category term='mariners'/><category term='marlins'/><category term='pitching and catching'/><category term='jammers'/><category term='drugs'/><category term='mets'/><category term='giants'/><title type='text'>Baseball Nooby</title><subtitle type='html'>I'm a noob at basically everything.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default?start-index=101&amp;max-results=100'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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>474</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6124489411137620600.post-1342754798780330103</id><published>2011-12-09T08:21:00.001-05:00</published><updated>2011-12-09T08:25:00.937-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='gold'/><title type='text'>Goldistocks</title><content type='html'>In re &lt;a href="http://baseballn00b.blogspot.com/2010/05/velvet-goldline.html"&gt;this post&lt;/a&gt;, there actually is a simple way to bet against gold, which is by buying a gold short fund like &lt;a href="http://finance.yahoo.com/echarts?s=DGZ+Interactive#symbol=DGZ;range=2y"&gt;DGZ&lt;/a&gt;. Which if I had done it in May of last year, I'd be down to like 55% of my investment.But that means it's a perfect time to buy, right?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-1342754798780330103?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/1342754798780330103/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=1342754798780330103' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1342754798780330103'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1342754798780330103'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2011/12/in-re-this-post-there-actually-is.html' title='Goldistocks'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-7053747162628128068</id><published>2011-07-20T08:52:00.000-04:00</published><updated>2011-07-20T08:52:01.609-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='geomaphy'/><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><category scheme='http://www.blogger.com/atom/ns#' term='geogramy'/><category scheme='http://www.blogger.com/atom/ns#' term='geography'/><category scheme='http://www.blogger.com/atom/ns#' term='geometry'/><title type='text'>Icosahedron of the Day</title><content type='html'>It's this icosahedron right here:&amp;nbsp;&lt;a href="http://www.ngdc.noaa.gov/mgg/fliers/04mgg02.html"&gt;http://www.ngdc.noaa.gov/mgg/fliers/04mgg02.html&lt;/a&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-7053747162628128068?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/7053747162628128068/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=7053747162628128068' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/7053747162628128068'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/7053747162628128068'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2011/07/icosahedron-of-day.html' title='Icosahedron of the Day'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-6768873004782308590</id><published>2011-05-04T15:40:00.000-04:00</published><updated>2011-05-04T15:40:03.661-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='internet'/><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><title type='text'>Good enough or worse than not at all</title><content type='html'>I was reminded recently of an idea mentioned in an xkcd mouseover text: to keep yourself from being distracted by crap on the internet, put a 30-second delay before opening up a new webpage. I searched and someone had wroten a &lt;a href="http://forums.xkcd.com/viewtopic.php?f=11&amp;amp;t=68794"&gt;little script to do that&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I don't know if I screwed something up installing it or whatever, but the script appears to work erratically: sometimes correctly, sometimes showing a countdown on its icon but not obscuring the page, and sometimes having no effect at all.&lt;br /&gt;&lt;br /&gt;The upshot being, the anti-distraction mechanism &lt;b&gt;itself&lt;/b&gt; ends up replicating the "slot machine" sort of dynamic that makes things like web forums, Twitter feeds, and news sites so distracting in the first place. Being able to instantly check Reddit for new stories whenever you want is habit-forming, but only being able to do so 10% of the time is even worse!&lt;br /&gt;&lt;br /&gt;Anyway, just found that amusing or whatever.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-6768873004782308590?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/6768873004782308590/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=6768873004782308590' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/6768873004782308590'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/6768873004782308590'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2011/05/good-enough-or-worse-than-not-at-all.html' title='Good enough or worse than not at all'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-1806453286671796971</id><published>2011-04-27T23:14:00.000-04:00</published><updated>2011-04-27T23:14:16.422-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='space'/><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><title type='text'>Celestiality</title><content type='html'>I wanted to be able to generate random but plausible &lt;a href="http://en.wikipedia.org/wiki/Celestial_sphere"&gt;celestial spheres&lt;/a&gt;&amp;nbsp;of stars visible to the naked eye from the vantage point of a solar system like ours, situated in an arm of a spiral galaxy.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I grabbed all the stars in ESA's &lt;a href="http://www.rssd.esa.int/Hipparcos/"&gt;Hipparcos&lt;/a&gt; catalogue with apparent magnitudes below 6, which comes to a little over 5000 stars. Mapped out on a sphere according to apparent magnitude and color they look like:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-pVuRmdE2Ro8/TbjRT1rGabI/AAAAAAAAAfM/vwH3McdgKVU/s1600/sol.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="Stars visible by naked eye from Earth" border="0" src="http://3.bp.blogspot.com/-pVuRmdE2Ro8/TbjRT1rGabI/AAAAAAAAAfM/vwH3McdgKVU/s1600/sol.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;That's a sinusoidal projection of the whole sphere, as would be seen from inside of it (on the Earth, for example). I sanity-checked it by filtering out all but the stars of the Big Dipper and made sure it dipped in the right orientation and hemisphere.&lt;br /&gt;&lt;br /&gt;Plotting their absolute magnitudes versus their color index looks like this:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-RkYMjfLckn8/TbjNuHYSWVI/AAAAAAAAAfA/ho6l5_pB-sU/s1600/scatter.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="Plot of each visible star's absolute magnitude versus color index" border="0" height="210" src="http://1.bp.blogspot.com/-RkYMjfLckn8/TbjNuHYSWVI/AAAAAAAAAfA/ho6l5_pB-sU/s320/scatter.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;The hunk on the left is made of stars on the &lt;a href="http://en.wikipedia.org/wiki/Main_sequence"&gt;main sequence&lt;/a&gt;, and the other splotch of giants, with a spattering of others. Most of the stars around us are red dwarrows, but since they're too small and dim to see with the naked eye, I don't even care about those.&lt;br /&gt;&lt;br /&gt;A histogram (excuse the rotation and scaled-up x-axis) looks like:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-8EyLMsy2li0/TbjPqyiRpEI/AAAAAAAAAfE/zrDpzVtdfOE/s1600/hist.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="Histogram of visible stars' magnitudes and colors" border="0" height="195" src="http://4.bp.blogspot.com/-8EyLMsy2li0/TbjPqyiRpEI/AAAAAAAAAfE/zrDpzVtdfOE/s320/hist.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;I smoothened that out to make a probability distribution (scaled up, and apologies for yet another axis rotation):&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-B6lTHtysM44/TbjQQNQ40uI/AAAAAAAAAfI/3lvSZa3tCJ4/s1600/smooth.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="Distribution for randomly generating stars of different magnitudes and colors" border="0" src="http://2.bp.blogspot.com/-B6lTHtysM44/TbjQQNQ40uI/AAAAAAAAAfI/3lvSZa3tCJ4/s1600/smooth.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;You can't see it, but outside the main globs there are big regions of "off-white" (grays 253 and 254) where there are small but nonzero probabilities of finding stars.&lt;br /&gt;&lt;br /&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;One thing I had not expected was that even without rendering a "milky way," the visible stars are noticeably more prevalent closer to the galactic disk. So I also found a&amp;nbsp;&lt;a href="http://www.soest.hawaii.edu/gmt/gmt/doc/gmt/html/man/fitcircle.html"&gt;best fit great circle&lt;/a&gt;&amp;nbsp;and recorded each star's angular distance from that. Plotting those on the z-axis gives:&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-OvbakDVdb98/TbjSgUtxbtI/AAAAAAAAAfQ/v1kRP3JgOxU/s1600/3d.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="Distance of stars from galactic disk versus magnitude and color index" border="0" height="203" src="http://4.bp.blogspot.com/-OvbakDVdb98/TbjSgUtxbtI/AAAAAAAAAfQ/v1kRP3JgOxU/s320/3d.png" style="cursor: move;" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;You sort of need to move it around to tell what's going on, but basically stars are more likely to be near the disk, and more so if they're brighter and whiter. I didn't even try to quantify this any better, just fudged it.&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;So I generate 6000 (or however many) stars with color and magnitude selected according to my smoothified histogram. Each star gets a random distance within visibility range (because my initial sample only included stars of a given color close enough to be visible to the naked eye, I can't create any too far away to see without throwing off the distribution) and is either randomly rotated away from the galactic plane or rotated according to a normal distribution, more likely the latter the brighter and whiter it is.&lt;br /&gt;&lt;br /&gt;Results shown on the right, alongside plots of the Hipparcos data set on the left (and as shown above).&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-iCOFJl2lZgM/TbjVc281dzI/AAAAAAAAAfU/GJR1220y2xQ/s1600/compare.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="Plots of empirical and randomly generated star distributions" border="0" height="320" src="http://4.bp.blogspot.com/-iCOFJl2lZgM/TbjVc281dzI/AAAAAAAAAfU/GJR1220y2xQ/s320/compare.png" width="317" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;The results aren't too bad, though that lowest-probability shade in my smootherized histogram is too dark: it should probably be like gray 254.9 or something.&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;Finally the whole thing gets a random rotation from the galactic plane, and the results might look something like this:&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-cupOUR7w-Uo/TbjWPyvjo3I/AAAAAAAAAfY/8blSLVcSLWQ/s1600/random.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="Random starscape" border="0" src="http://1.bp.blogspot.com/-cupOUR7w-Uo/TbjWPyvjo3I/AAAAAAAAAfY/8blSLVcSLWQ/s1600/random.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;So pretty good! Next step (after tweaking the distance-from-galactic-plane function) would be generating some realistic views from a planet according to axial tilt and times of day and season. And then inventing constellations?&lt;br /&gt;&lt;br /&gt;Also maybe the possibility of a perspective from outside a galactic arm? Though how likely is that, if you're looking from a class G or K main sequence star?&lt;br /&gt;&lt;br /&gt;I don't know. I think it's cool though.&lt;br /&gt;&lt;br /&gt;&lt;a href="https://github.com/tps12/Celestiality"&gt;Source here&lt;/a&gt;, requires &lt;a href="http://www.pygame.org/"&gt;pygame&lt;/a&gt;, &lt;a href="http://numpy.scipy.org/"&gt;numpy&lt;/a&gt;, and &lt;a href="http://matplotlib.sourceforge.net/"&gt;matplotlib&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-1806453286671796971?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/1806453286671796971/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=1806453286671796971' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1806453286671796971'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1806453286671796971'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2011/04/celestiality.html' title='Celestiality'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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://3.bp.blogspot.com/-pVuRmdE2Ro8/TbjRT1rGabI/AAAAAAAAAfM/vwH3McdgKVU/s72-c/sol.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6124489411137620600.post-5370772757181575995</id><published>2011-04-23T11:09:00.000-04:00</published><updated>2011-04-23T11:09:26.553-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='bikes'/><title type='text'>Sight Gag</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: left;"&gt;Had this idea the other day, not sure if it's been done.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-q6IWEi9popg/TbLrDRSudlI/AAAAAAAAAe8/_03e4-Axuu0/s1600/bike_mirror.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="Car air freshener hanging from a helmet-mounted bike mirror" border="0" src="http://1.bp.blogspot.com/-q6IWEi9popg/TbLrDRSudlI/AAAAAAAAAe8/_03e4-Axuu0/s1600/bike_mirror.jpg" /&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/6124489411137620600-5370772757181575995?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/5370772757181575995/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=5370772757181575995' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/5370772757181575995'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/5370772757181575995'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2011/04/sight-gag.html' title='Sight Gag'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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://1.bp.blogspot.com/-q6IWEi9popg/TbLrDRSudlI/AAAAAAAAAe8/_03e4-Axuu0/s72-c/bike_mirror.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6124489411137620600.post-1999464095651502304</id><published>2011-04-07T07:57:00.000-04:00</published><updated>2011-04-07T07:57:22.263-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><title type='text'>Software Idea</title><content type='html'>You enter the ingredients list and nutritional information of a food product, like what's printed on the package. The system looks up the nutritional data for each individual ingredient. That information, plus the inequalities implied by the order of the ingredients list, allows it to solve for the relative quantities of each ingredient (giving ranges where an exact amount can't be determined, such as for ingredients with no measured nutritional value).&lt;br /&gt;&lt;br /&gt;Basically I want to reverse engineer this here granola.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-1999464095651502304?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/1999464095651502304/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=1999464095651502304' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1999464095651502304'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1999464095651502304'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2011/04/software-idea.html' title='Software Idea'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-4224569168563087310</id><published>2011-02-13T10:28:00.000-05:00</published><updated>2011-02-13T10:28:13.524-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><title type='text'>31337 is Prime</title><content type='html'>Did not know that.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-4224569168563087310?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/4224569168563087310/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=4224569168563087310' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/4224569168563087310'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/4224569168563087310'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2011/02/31337-is-prime.html' title='31337 is Prime'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-1363924515745261147</id><published>2011-01-11T22:07:00.000-05:00</published><updated>2011-01-11T22:07:07.259-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='No Shit Sherlock Holmes'/><title type='text'>Unicode Joke?</title><content type='html'>Am I crazy or does &lt;a href="http://www.fileformat.info/info/unicode/char/221b/index.htm"&gt;Unicode character 221B&lt;/a&gt; look like a Sherlock Holmes pipe?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-1363924515745261147?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/1363924515745261147/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=1363924515745261147' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1363924515745261147'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1363924515745261147'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2011/01/unicode-joke.html' title='Unicode Joke?'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-7482208155021432151</id><published>2010-11-11T21:37:00.000-05:00</published><updated>2010-11-11T21:37:19.970-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fascists'/><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>Obama the Leftist</title><content type='html'>&lt;a href="http://c4ss.org/content/4820"&gt;Righteous rant&lt;/a&gt; from Kevin Carson:&lt;br /&gt;&lt;blockquote&gt;Obama lied when he said, "There is not a rich America, and a poor America….&amp;nbsp; We are one nation, one people."&lt;br /&gt;&lt;br /&gt;...&lt;br /&gt;&lt;br /&gt;The Iraqi worker is my fellow countryman.&amp;nbsp; The American plutocrat is my enemy.&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-7482208155021432151?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/7482208155021432151/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=7482208155021432151' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/7482208155021432151'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/7482208155021432151'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/11/obama-leftist.html' title='Obama the Leftist'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-1755541362710378060</id><published>2010-11-03T08:53:00.000-04:00</published><updated>2010-11-03T08:53:42.712-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><category scheme='http://www.blogger.com/atom/ns#' term='bikes'/><title type='text'>Hate This</title><content type='html'>I love bike lanes, but this &lt;a href="http://www.streetsblog.org/2010/11/02/illegal-parking-in-brooklyn-heights-scenes-from-the-placard-orgy/"&gt;shrill denunciation&lt;/a&gt; of people parking in bike lanes during church is ridiculous: it's Sunday morning; you're not commuting; and church aside traffic is generally light. So just grow a pair and take the damn lane.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In addition, cycling advocates are done no favors by spandexed hobbyists exhorting cops to write parking tickets to old ladies in church hats. Bike lanes should be about safe transportation infrastructure, not staking out territory for yuppies.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-1755541362710378060?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/1755541362710378060/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=1755541362710378060' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1755541362710378060'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1755541362710378060'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/11/hate-this.html' title='Hate This'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-7283447447631678366</id><published>2010-10-30T16:58:00.000-04:00</published><updated>2010-10-30T16:58:40.492-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='python'/><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><title type='text'>Polygons on a Sphere</title><content type='html'>It's this shape:&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_Hil2fKhgQ50/TMyFS503mLI/AAAAAAAAAeI/BFGOGGPUk_I/s1600/poly.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="Convex polygon with no holes." border="0" src="http://4.bp.blogspot.com/_Hil2fKhgQ50/TMyFS503mLI/AAAAAAAAAeI/BFGOGGPUk_I/s1600/poly.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;And a couple of instances of them go around a sphere in different directions (the blue dot shows the orientation, which is different from the direction of travel, and the red dot is the centroid):&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_Hil2fKhgQ50/TMyFR58rvxI/AAAAAAAAAeA/h6cR27QCPMo/s1600/polys.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="174" middle="" near="" of="" polygons="" projection."="" src="http://2.bp.blogspot.com/_Hil2fKhgQ50/TMyFR58rvxI/AAAAAAAAAeA/h6cR27QCPMo/s320/polys.png" the="" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Far from the center of the projection, they get distorted:&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_Hil2fKhgQ50/TMyFSiX7uxI/AAAAAAAAAeE/3TelKAkLql0/s1600/distorted.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="Polygons distorted near the edge of the projection." border="0" height="174" src="http://1.bp.blogspot.com/_Hil2fKhgQ50/TMyFSiX7uxI/AAAAAAAAAeE/3TelKAkLql0/s320/distorted.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;When one wraps around to the other side of the projection it gets all screwy, but I couldn't get a screen cap.&lt;br /&gt;&lt;br /&gt;Same &lt;a href="http://github.com/tps12/Why-So-Spherious"&gt;repository&lt;/a&gt; as last time, now additionally depends on &lt;a href="http://trac.gispython.org/lab/wiki/Shapely"&gt;Shapely&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-7283447447631678366?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/7283447447631678366/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=7283447447631678366' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/7283447447631678366'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/7283447447631678366'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/10/polygons-on-sphere.html' title='Polygons on a Sphere'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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/_Hil2fKhgQ50/TMyFS503mLI/AAAAAAAAAeI/BFGOGGPUk_I/s72-c/poly.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6124489411137620600.post-5320349844169458800</id><published>2010-10-20T08:20:00.000-04:00</published><updated>2010-10-20T08:20:31.145-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='religion'/><category scheme='http://www.blogger.com/atom/ns#' term='science'/><title type='text'>Weak</title><content type='html'>&lt;i&gt;Contra&lt;/i&gt; &lt;a href="http://xkcd.com/808/"&gt;xkcd&lt;/a&gt;, I'm sure thousands of corporations are helmed by people who seek guidance in prayer, horoscopes, tarot, &amp;amp;c. and doing just fine.&lt;br /&gt;&lt;br /&gt;Most of these ideas don't even theoretically make sense ("health care cost reduction" isn't a market anyone can "make a killing in," which is why governments have to step in; I believe remote viewing is supposed to require people at the remote location; if the military were using hexes then they would probably keep quiet about it, and they have certainly at least tried it; and I don't think anybody would expect "crystal energy" to be energy in the sense of the physics term "energy").&lt;br /&gt;&lt;br /&gt;And in any case, just because "capitalism" is "profit-focused" doesn't mean that individual firms succeed in discovering every possible path towards maximizing profits. Ruthlessness doesn't imply omniscience.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-5320349844169458800?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/5320349844169458800/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=5320349844169458800' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/5320349844169458800'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/5320349844169458800'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/10/weak.html' title='Weak'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-1171741279554858572</id><published>2010-10-19T10:29:00.000-04:00</published><updated>2010-10-19T10:29:38.437-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='economics'/><category scheme='http://www.blogger.com/atom/ns#' term='fascists'/><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>Dollar? I never even &amp;c.</title><content type='html'>&lt;a href="http://www.eschatonblog.com/2010/10/currency-gibberish.html"&gt;Via Atrios&lt;/a&gt;, I knew that it was widely believed that the US would&amp;nbsp;&lt;b&gt;not&lt;/b&gt;&amp;nbsp;act to &lt;a href="http://www.cnbc.com/id/39727927"&gt;devalue the dollar&lt;/a&gt;, but I was also under the impression that the context of that position was that, while a falling dollar would be (potentially) beneficial to our economy, there are some number of reasons against trying to pursue those ends. I didn't realize Geithner's position was actually in the opposite direction, that we need to do all we can to &lt;b&gt;strengthen&lt;/b&gt;&amp;nbsp;the dollar.&lt;br /&gt;&lt;br /&gt;I mean fair enough, some people are in the "let's try anything" camp while others are more towards the "let's not mess with anything and see how it shakes out" side of things. "Let's take whatever people in the 'try anything' camp suggest and run in the opposite direction" seems so pointlessly sadistic as to be off the reservation entirely.&lt;br /&gt;&lt;br /&gt;You camp on a reservation right.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-1171741279554858572?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/1171741279554858572/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=1171741279554858572' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1171741279554858572'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1171741279554858572'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/10/dollar-i-never-even.html' title='Dollar? I never even &amp;c.'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-2365829610152601958</id><published>2010-10-10T17:20:00.000-04:00</published><updated>2010-10-10T17:20:23.513-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='python'/><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><title type='text'>Livin' on a Sphere</title><content type='html'>I've been mucking about trying to get something that looks something like &lt;a href="http://focus.aps.org/story/v21/st20"&gt;what's described here&lt;/a&gt;, but on the surface of a sphere (not about to try modeling any kind of actual fluid dynamics, just trying to mimic the behavior).&lt;br /&gt;&lt;br /&gt;I used a sinusoidal projection so each screen pixel represents about the same area of the sphere. It took me way too long to figure out I should be using regular old vectors in &lt;b&gt;R&lt;/b&gt;&lt;sup&gt;3&lt;/sup&gt; instead of muddling through with latitudes and longitudes.&lt;br /&gt;&lt;br /&gt;Brighter green points are heavier, and the blue point is their weighted average. The red point repels the green points and moves to the blue point whenever the green ones slow down sufficiently.&lt;br /&gt;&lt;br /&gt;So this is early in a cycle, when the red point has recently moved to the weighted average location:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_Hil2fKhgQ50/TLImUswNCpI/AAAAAAAAAd8/KPef_w5bWOA/s1600/close.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="Early in cycle, origin of impulse close to center of points." border="0" height="174" src="http://3.bp.blogspot.com/_Hil2fKhgQ50/TLImUswNCpI/AAAAAAAAAd8/KPef_w5bWOA/s320/close.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;And this is later on in a (later) cycle, as the repelled points are converging towards the antipode:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_Hil2fKhgQ50/TLImUfXIvmI/AAAAAAAAAd4/RZuw--Yscqw/s1600/far.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="Later in the cycle, new center far from origin of impulse." border="0" height="174" src="http://4.bp.blogspot.com/_Hil2fKhgQ50/TLImUfXIvmI/AAAAAAAAAd4/RZuw--Yscqw/s320/far.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Source&amp;nbsp;&lt;a href="http://github.com/tps12/Why-So-Spherious"&gt;here&lt;/a&gt; ("Heat2.py" is shown, but there's other related crap in there), requires &lt;a href="http://numpy.scipy.org/"&gt;Numpy&lt;/a&gt; and &lt;a href="http://www.pygame.org/"&gt;pygame&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-2365829610152601958?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/2365829610152601958/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=2365829610152601958' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/2365829610152601958'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/2365829610152601958'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/10/livin-on-sphere.html' title='Livin&apos; on a Sphere'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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://3.bp.blogspot.com/_Hil2fKhgQ50/TLImUswNCpI/AAAAAAAAAd8/KPef_w5bWOA/s72-c/close.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6124489411137620600.post-2862373175271871206</id><published>2010-10-09T19:29:00.000-04:00</published><updated>2010-10-09T19:29:54.304-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nullus'/><title type='text'>Preview of my Master's Thesis</title><content type='html'>The phrase "&lt;a href="http://en.wikipedia.org/wiki/I_Am_Not_a_Human_Being"&gt;I am not a human being&lt;/a&gt;" is a restatement of "no homo," QED, I rest my case, nullus.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-2862373175271871206?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/2862373175271871206/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=2862373175271871206' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/2862373175271871206'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/2862373175271871206'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/10/preview-of-my-masters-thesis.html' title='Preview of my Master&apos;s Thesis'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-1293254847312646703</id><published>2010-10-07T16:32:00.000-04:00</published><updated>2010-10-07T16:32:05.921-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fascists'/><title type='text'>The Means are the Ends</title><content type='html'>Ezra can't understand why anyone would want to &lt;a href="http://voices.washingtonpost.com/ezra-klein/2010/10/conservatives_want_the_unemplo.html"&gt;require people to pass a drug test&lt;/a&gt; to collect unemployment: but it's not about the drugs, it's about the test itself, and making people submit to it.&lt;br /&gt;&lt;br /&gt;The proposed policy differs from Carl Paladino's proposal to put welfare recipients in prison in degree rather than kind. There is no rational motivation, no goal to be accomplished, beyond the stigmatization and restriction of liberty imposed by the enforcement mechanism itself.&lt;br /&gt;&lt;br /&gt;It's also blatantly unconstitutional, but when has that ever stopped the police state.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-1293254847312646703?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/1293254847312646703/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=1293254847312646703' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1293254847312646703'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1293254847312646703'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/10/means-are-ends.html' title='The Means are the Ends'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-5465573049438655331</id><published>2010-10-02T17:57:00.000-04:00</published><updated>2010-10-02T17:57:32.641-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='comptrollers'/><category scheme='http://www.blogger.com/atom/ns#' term='words'/><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><title type='text'>Out of Comptrol</title><content type='html'>I didn't know &lt;a href="http://www.worldwidewords.org/nl/mghp.htm#N2"&gt;that&lt;/a&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;"controller" comes from "counter roller," meaning I guess that "to control" comes from "to counter-roll";&lt;/li&gt;&lt;li&gt;"comptroller" is a misspelling of the same word, "born of ignorance and continued in darkness" (that's what she said); and&lt;/li&gt;&lt;li&gt;the "P" is silent.&lt;/li&gt;&lt;/ol&gt;What I'm still not clear on is whether "the 'P' is silent" means that you're supposed to say "com'troller" because you wouldn't say the "P" in French (would you? I have no idea), or whether you're just supposed to ignore the ignorance-born/darkness-continued–ness of it and say "controller."&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-5465573049438655331?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/5465573049438655331/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=5465573049438655331' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/5465573049438655331'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/5465573049438655331'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/10/out-of-comptrol.html' title='Out of Comptrol'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-7646383353269401151</id><published>2010-09-29T15:01:00.000-04:00</published><updated>2010-09-29T15:01:21.119-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='science'/><category scheme='http://www.blogger.com/atom/ns#' term='nuts'/><title type='text'>Questions for the Anti-Vaccination Community</title><content type='html'>&lt;div&gt;&lt;ul&gt;&lt;li&gt;Sometimes adults have to get a new immune system and so they get their vaccinations again. But they never go autistic, AFAIK.&lt;/li&gt;&lt;li&gt;Pets (dogs and cats, possibly ferrets in some places) get vaccinations. How come they never turn autistic? Retarded yes, but not autistic.&lt;/li&gt;&lt;li&gt;QED, I rest my case.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-7646383353269401151?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/7646383353269401151/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=7646383353269401151' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/7646383353269401151'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/7646383353269401151'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/09/questions-for-anti-vaccination.html' title='Questions for the Anti-Vaccination Community'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6124489411137620600.post-2708383479267395702</id><published>2010-09-29T09:19:00.001-04:00</published><updated>2010-09-29T09:20:05.095-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><title type='text'>More Dorkiness</title><content type='html'>I've adapted the code from &lt;a href="http://baseballn00b.blogspot.com/2010/09/your-ways-are-numbered.html"&gt;the other day&lt;/a&gt; to use real-valued characteristics, the Euclidean distance in characteristic space representing the probability of agents interacting. And I added some histograms to the display:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_Hil2fKhgQ50/TKM6z0od5GI/AAAAAAAAAdk/BlPj1bbiZjo/s1600/early.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="Early in the simulation, few connections between sites and traits very spread out" border="0" height="250" src="http://1.bp.blogspot.com/_Hil2fKhgQ50/TKM6z0od5GI/AAAAAAAAAdk/BlPj1bbiZjo/s320/early.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;They converge on a &lt;a href="http://en.wikipedia.org/wiki/Liberalism"&gt;wishy-washy moderate consensus&lt;/a&gt; pretty quickly, so there's a distance threshold in there to keep everything from joining together right away:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_Hil2fKhgQ50/TKM60rL0opI/AAAAAAAAAdo/gDXSeuj89cs/s1600/late.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="Later in the simulation, more connections and traits clustered around 0.5" border="0" height="250" src="http://4.bp.blogspot.com/_Hil2fKhgQ50/TKM60rL0opI/AAAAAAAAAdo/gDXSeuj89cs/s320/late.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;a href="http://github.com/tps12/culture"&gt;Source here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-2708383479267395702?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/2708383479267395702/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=2708383479267395702' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/2708383479267395702'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/2708383479267395702'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/09/more-dorkiness.html' title='More Dorkiness'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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://1.bp.blogspot.com/_Hil2fKhgQ50/TKM6z0od5GI/AAAAAAAAAdk/BlPj1bbiZjo/s72-c/early.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6124489411137620600.post-918591524126923401</id><published>2010-09-27T17:29:00.000-04:00</published><updated>2010-09-27T17:29:55.851-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><title type='text'>Your Ways Are Numbered</title><content type='html'>Have been thinking lately about simulating how cultural values change in a population.&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;sup&gt;1&lt;/sup&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;sup&gt;&lt;/sup&gt;&lt;/span&gt;The general approach I was considering was an agent-based model where each agent's "values" are represented by a set of &lt;i&gt;n&lt;/i&gt;&amp;nbsp;real numbers in [0,1]: basically each dimension is like one of those&amp;nbsp;&lt;a href="http://www.worldvaluessurvey.org/"&gt;survey&lt;/a&gt; questions that's a statement like "everyone should have access to clean drinking water," with answers ranging from "strongly disagree" to "strongly agree," and "neutral" in the middle (0.5).&lt;br /&gt;&lt;br /&gt;And when two agents had a lot in common with one another values-wise (i.e., were nearby in &lt;i&gt;n&lt;/i&gt;-dimensional space), then they would be more likely to move closer together. So starting with a randomly generated population, you'd see different subgroups start to coalesce into one or more distinct cultures with shared values (and eventually reducing to a single consensus culture if the simulation ran long enough).&lt;br /&gt;&lt;br /&gt;Which as I poked around looked a lot like what was done in &lt;a href="http://www-personal.umich.edu/~axe/research/Dissemination.pdf"&gt;this 1997 paper&lt;/a&gt;&amp;nbsp;(PDF) by Robert Axelrod (nullus), &lt;i&gt;The Dissemination&lt;/i&gt;&amp;nbsp;(nullus) &lt;i&gt;of Culture&lt;/i&gt;. He puts his agents on a grid and only lets them potentially interact with grid neighbors. It's neat.&lt;br /&gt;&lt;br /&gt;Here's a Python implementation, with visualization in &lt;a href="http://www.pygame.org/"&gt;PyGame&lt;/a&gt;&amp;nbsp;(I inverted Axelrod's color coding so more similar sites are connected by darker lines, which strikes me as more intuitive):&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;import random&lt;br /&gt;&lt;br /&gt;import pygame&lt;br /&gt;from pygame.locals import *&lt;br /&gt;&lt;br /&gt;class Simulation:&lt;br /&gt;&lt;br /&gt;    WIDTH = 640&lt;br /&gt;    HEIGHT = 480&lt;br /&gt;&lt;br /&gt;    LINE = 4&lt;br /&gt;&lt;br /&gt;    DRAW_FRAMES = 1000&lt;br /&gt;&lt;br /&gt;    def __init__(self, dimensions):&lt;br /&gt;        self.dimensions = dimensions&lt;br /&gt;        self.grid_size = min(self.WIDTH/(self.dimensions[0] + 1),&lt;br /&gt;                             self.HEIGHT/(self.dimensions[1] + 1))&lt;br /&gt;        self.bg_rect = pygame.Rect(max(0, (self.WIDTH - (self.dimensions[0] + 1) * self.grid_size) / 2),&lt;br /&gt;                                   max(0, (self.HEIGHT - (self.dimensions[1] + 1) * self.grid_size) / 2),&lt;br /&gt;                                   (self.dimensions[0] + 1) * self.grid_size,&lt;br /&gt;                                   (self.dimensions[1] + 1) * self.grid_size)&lt;br /&gt;&lt;br /&gt;        self.sites = [[[random.randint(1,10) for i in range(5)]&lt;br /&gt;                       for y in range(self.dimensions[1])]&lt;br /&gt;                      for x in range(self.dimensions[0])]&lt;br /&gt;&lt;br /&gt;    def background(self, screen):&lt;br /&gt;        screen.fill((255,255,255), self.bg_rect)&lt;br /&gt;&lt;br /&gt;    def similarity(self, p1, p2):&lt;br /&gt;        return sum(c1 == c2 for c1, c2 in zip(p1, p2))/float(len(p1))&lt;br /&gt;&lt;br /&gt;    def color(self, p1, p2):&lt;br /&gt;        gray = 255 - int(self.similarity(p1, p2) * 255)&lt;br /&gt;        return (gray, gray, gray)&lt;br /&gt;&lt;br /&gt;    def lines(self, screen):&lt;br /&gt;        for x in range(self.dimensions[0]):&lt;br /&gt;            for y in range(self.dimensions[1]):&lt;br /&gt;                start = (self.bg_rect.left + (x+1) * self.grid_size,&lt;br /&gt;                         self.bg_rect.top + (y+1) * self.grid_size)&lt;br /&gt;                if x &amp;lt; self.dimensions[0] - 1:&lt;br /&gt;                    end = (start[0] + self.grid_size, start[1])&lt;br /&gt;                    color = self.color(self.sites[x][y], self.sites[x+1][y])&lt;br /&gt;                    pygame.draw.line(screen, color, start, end, self.LINE)&lt;br /&gt;                if y &amp;lt; self.dimensions[1] - 1:&lt;br /&gt;                    end = (start[0], start[1] + self.grid_size)&lt;br /&gt;                    color = self.color(self.sites[x][y], self.sites[x][y+1])&lt;br /&gt;                    pygame.draw.line(screen, color, start, end, self.LINE)&lt;br /&gt;&lt;br /&gt;    def random_site(self):&lt;br /&gt;        return (random.randint(0, len(self.sites)-1),&lt;br /&gt;                random.randint(0, len(self.sites[0])-1))&lt;br /&gt;&lt;br /&gt;    def random_neighbor(self, site):&lt;br /&gt;        x,y = site&lt;br /&gt;        neighbors = []&lt;br /&gt;        if x &amp;gt; 0:&lt;br /&gt;            neighbors.append((x-1,y))&lt;br /&gt;        if x &amp;lt; len(self.sites)-1:&lt;br /&gt;            neighbors.append((x+1,y))&lt;br /&gt;        if y &amp;gt; 0:&lt;br /&gt;            neighbors.append((x,y-1))&lt;br /&gt;        if y &amp;lt; len(self.sites[0])-1:&lt;br /&gt;            neighbors.append((x,y+1))&lt;br /&gt;        return random.sample(neighbors, 1)[0]&lt;br /&gt;&lt;br /&gt;    def interact(self, active, neighb):&lt;br /&gt;        different = [i for i in range(len(active))&lt;br /&gt;                     if active[i] != neighb[i]]&lt;br /&gt;        if len(different) &amp;gt; 0:&lt;br /&gt;            i = random.sample(different, 1)[0]&lt;br /&gt;            active[i] = neighb[i]&lt;br /&gt;&lt;br /&gt;    def try_event(self):&lt;br /&gt;        active = self.random_site()&lt;br /&gt;        neighb = self.random_neighbor(active)&lt;br /&gt;        active_site = self.sites[active[0]][active[1]]&lt;br /&gt;        neighb_site = self.sites[neighb[0]][neighb[1]]&lt;br /&gt;        if random.random() &amp;lt; self.similarity(active_site, neighb_site):&lt;br /&gt;            self.interact(active_site, neighb_site)&lt;br /&gt;    &lt;br /&gt;    def run(self):&lt;br /&gt;        pygame.init()&lt;br /&gt;&lt;br /&gt;        screen = pygame.display.set_mode((self.WIDTH,self.HEIGHT), HWSURFACE)&lt;br /&gt;        pygame.display.set_caption('Sites')&lt;br /&gt;&lt;br /&gt;        done = False&lt;br /&gt;        n = 0&lt;br /&gt;        while not done:&lt;br /&gt;            for event in pygame.event.get():&lt;br /&gt;                if event.type == QUIT:&lt;br /&gt;                    done = True&lt;br /&gt;                elif event.type == KEYDOWN:&lt;br /&gt;                    if event.key == K_ESCAPE:&lt;br /&gt;                        done = True&lt;br /&gt;&lt;br /&gt;            self.try_event()&lt;br /&gt;            n += 1&lt;br /&gt;            if n &amp;gt; self.DRAW_FRAMES:&lt;br /&gt;                &lt;br /&gt;                self.background(screen)&lt;br /&gt;                self.lines(screen)&lt;br /&gt;&lt;br /&gt;                pygame.display.flip()&lt;br /&gt;                &lt;br /&gt;                n = 0&lt;br /&gt;&lt;br /&gt;if __name__ == '__main__':&lt;br /&gt;    Simulation((10,10)).run()&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;sup&gt;1&lt;/sup&gt;&amp;nbsp;For &lt;a href="http://bay12games.com/dwarves/"&gt;extremely nerdy&lt;/a&gt; reasons.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-918591524126923401?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/918591524126923401/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=918591524126923401' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/918591524126923401'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/918591524126923401'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/09/your-ways-are-numbered.html' title='Your Ways Are Numbered'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6124489411137620600.post-6647688688260294012</id><published>2010-09-23T08:13:00.000-04:00</published><updated>2010-09-23T08:13:00.964-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='media'/><title type='text'>Recaps off to ya!</title><content type='html'>I thought Dave was about to go in a different direction when &lt;a href="http://gabrieldelahaye.tumblr.com/post/1167625166/quite-possibly-the-most-insufferable-quote-i-have-ever"&gt;he cut down&lt;/a&gt; recapping television.&lt;br /&gt;&lt;br /&gt;I hate to have to point this out, but while Mr. Delahaye attacks a blogger for "compar[ing] [them]sel[ves] to DERRIDA and BARTHES" (his caps), the quoted party he's rebutting actually makes a point of saying that he means "&lt;b&gt;not&lt;/b&gt; to compare [him]self to anybody" (emphasis mine).&lt;br /&gt;&lt;br /&gt;He rests his case, I'm sure.&lt;br /&gt;&lt;br /&gt;But my real objection is that actually recapping is pretty interesting as a genre: it's something of such obviously little value that it only could have found a foothold in a digital context, and yet it evidently has enough appeal that there are not only sites devoted entirely to recapping that manage to scrape by, but there are more than a few non-recap sites that include recaps nonetheless to bolster their hit stats.&lt;br /&gt;&lt;br /&gt;And from what I've seen of recaps (and as the &lt;i&gt;Observer&lt;/i&gt;&amp;nbsp;piece appeared to be arguing), the more popular ones tend to be not just plays-by-play of television episodes' plots, but rather those that delve into analysis and deconstruction of the sort which I believe Derrida would approve.&lt;br /&gt;&lt;br /&gt;The story of television recaps on the internet is that in a medium without (as many) gatekeepers, there exists a public appetite for analyzing popular culture, an appetite that is largely unanticipated and wholly unsatisfied by the corporate producers of said culture.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-6647688688260294012?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/6647688688260294012/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=6647688688260294012' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/6647688688260294012'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/6647688688260294012'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/09/recaps-off-to-ya.html' title='Recaps off to ya!'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-3796037972855608591</id><published>2010-09-16T08:35:00.000-04:00</published><updated>2010-09-16T08:35:00.724-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='economics'/><category scheme='http://www.blogger.com/atom/ns#' term='fascists'/><title type='text'>Consistency Check</title><content type='html'>One not infrequently encounters defenses of so-called "sweatshop" labor that proclaim that factories thus described are only able to find employees because they represent the "best available option" for residents of their localities.&lt;br /&gt;&lt;br /&gt;Consequently, goes this line of argument, any bleeding-heart's personal boycott (or public campaign exhorting widespread boycott) of companies using these types of facilities is counterproductive, making the lives of the workers the would-be do-gooder claims to be looking out for worse off by hurting their employers.&lt;br /&gt;&lt;br /&gt;It strikes me that for a moral&amp;nbsp;person who truly believes this, it should not be enough to stop at "don't boycott" as a response to sweatshops: indeed, there is a moral obligation to actively seek out and prefer sweatshop products over alternatives, and to agitate for others to do the same.&lt;br /&gt;&lt;br /&gt;The purchase of "fair trade," artisanal, or other "humanely manufactured" items takes food from the mouths of those who need it most to line the pockets of well-heeled hobbyists and lazy union "workers."&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-3796037972855608591?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/3796037972855608591/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=3796037972855608591' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/3796037972855608591'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/3796037972855608591'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/09/consistency-check.html' title='Consistency Check'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-1436780294728911040</id><published>2010-09-15T08:31:00.000-04:00</published><updated>2010-09-15T08:38:33.367-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='dog weight growth'/><title type='text'>Prancis Weight Chart</title><content type='html'>I forgot to post this earlier, but we recorded Prancis's weight until he reached what appears to be his full size, about 70 pounds. We always wanted to know how big he was going to be based on his weight at different ages growing up, and there just wasn't a lot of data out there, so this is our contribution to the public knowledge base.&lt;br /&gt;&lt;br /&gt;&lt;img src="https://spreadsheets.google.com/oimg?key=0AicRGmtf6vQTcHU0M2tBRWZiVDVWZzBpNVc3OGFnR0E&amp;amp;oid=11&amp;amp;zx=ql6spf6jhvj7" /&gt;&lt;br /&gt;&lt;br /&gt;He was born in early November 2008 (we say the 4th in honor of Obama's election, but we don't really know), neutered on May 30th, 2009, and he's half Great Pyrenees and half &lt;a href="http://en.wikipedia.org/wiki/Lurcher"&gt;lurcher&lt;/a&gt; (in his case, saluki and Bergian shepherd).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-1436780294728911040?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/1436780294728911040/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=1436780294728911040' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1436780294728911040'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1436780294728911040'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/09/prancis-weight-chart.html' title='Prancis Weight Chart'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-5897170392078629089</id><published>2010-09-05T12:01:00.000-04:00</published><updated>2010-09-05T12:01:12.049-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fascists'/><title type='text'>Occam's Razor</title><content type='html'>Not sure why anyone ever thought Obama was anything other than the &lt;a href="http://www.eschatonblog.com/2010/09/table.html"&gt;neo-liberal centrist&lt;/a&gt; he always claimed to be and acted like.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-5897170392078629089?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/5897170392078629089/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=5897170392078629089' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/5897170392078629089'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/5897170392078629089'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/09/occams-razor.html' title='Occam&apos;s Razor'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-8246639714660000692</id><published>2010-09-02T10:18:00.000-04:00</published><updated>2010-09-02T10:21:08.962-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fatties'/><title type='text'>Fat of the Land</title><content type='html'>A blogger at &lt;em&gt;Feministe&lt;/em&gt; &lt;a href="http://www.feministe.us/blog/archives/2010/09/01/fat-and-health/"&gt;responds&lt;/a&gt; to a typical argument against the conflation of weight and poor health. Monica's position is that tracking average weight (or BMI) of populations is useful from a public health standpoint. Thus the &lt;em&gt;Jezebel&lt;/em&gt; party line against "fat shaming" is potentially harmful to the extent that it complicates addressing the genuine public health issue regarded as an obesity epidemic.&lt;br /&gt;&lt;br /&gt;The arguments are typical of this topic, and they go past each other. The "obesity" epidemic is actually a poverty epidemic shaded by bad food policy. Corporations, as they always do,&amp;nbsp;use its prominence in the public consciousness to push their products: we all know that there is this problem called "obesity" which threatens our society, so do your part by buying our snake oil.&lt;br /&gt;&lt;br /&gt;&lt;em&gt;Jezebel&lt;/em&gt; is primarily concerned in this case with media and marketing&amp;nbsp;messages aimed at women. They are on perfectly solid ground warning consumers off marketing narratives that conflate a public health crisis with&amp;nbsp;individual morality as expressed by&amp;nbsp;participation in the&amp;nbsp;fitness and diet industries. And while the personal responsibility narrative hurts the middle class consumers &lt;em&gt;Jezebel&lt;/em&gt; is looking out for, it does a further&amp;nbsp;disservice by obscuring the extreme income inequality at the root of&amp;nbsp;our society's&amp;nbsp;obesity crisis, so perhaps they do good in that sense as well, if inadvertantly.&lt;br /&gt;&lt;br /&gt;In any case, defending the "overweight is unhealthy" &lt;em&gt;status quo&lt;/em&gt; is neither necessary at this point nor particularly likely to result in meaningful progress against the poverty-based obesity problem. Middle class tolerance of fatness is a project that does not in any way conflict with correcting the market and policy failures that cause and maintain massive economic inequality.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-8246639714660000692?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/8246639714660000692/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=8246639714660000692' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/8246639714660000692'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/8246639714660000692'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/09/fat-of-land.html' title='Fat of the Land'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-1250778121928525220</id><published>2010-08-31T07:46:00.000-04:00</published><updated>2010-08-31T07:46:30.948-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='bees'/><category scheme='http://www.blogger.com/atom/ns#' term='nuts'/><title type='text'>Bees Nuts</title><content type='html'>Remember when all the bees were DYING? What happened with that?&lt;br /&gt;&lt;br /&gt;And/or killer bees.&lt;br /&gt;&lt;br /&gt;Basically there are always bees feasting at our window boxes, and I need to know if I'm the planet's savior or a public menace.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-1250778121928525220?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/1250778121928525220/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=1250778121928525220' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1250778121928525220'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1250778121928525220'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/08/bees-nuts.html' title='Bees Nuts'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-7261217346565703497</id><published>2010-07-22T10:31:00.000-04:00</published><updated>2010-07-22T10:31:50.008-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='economics'/><category scheme='http://www.blogger.com/atom/ns#' term='fascists'/><title type='text'>But don't they realize inflation isn't an issue right now?!?</title><content type='html'>Moderate&amp;nbsp;liberal Matt Yglesias &lt;a href="http://yglesias.thinkprogress.org/2010/07/opportunistic-disinflation/"&gt;starting to radicalize&lt;/a&gt;?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-7261217346565703497?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/7261217346565703497/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=7261217346565703497' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/7261217346565703497'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/7261217346565703497'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/07/but-dont-they-realize-inflation-isnt.html' title='But don&apos;t they realize inflation isn&apos;t an issue right now?!?'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-7331539660981339432</id><published>2010-06-13T19:02:00.000-04:00</published><updated>2010-06-13T19:02:00.765-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='buffy'/><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><category scheme='http://www.blogger.com/atom/ns#' term='fascists'/><title type='text'>Nerd Alert</title><content type='html'>Having only watched &lt;em&gt;Buffy&lt;/em&gt; years after it aired, I'm totally oblivious to conventional wisdom along the lines of &lt;a href="http://www.feministe.us/blog/archives/2010/06/11/how-come-its-never-joss-fault-the-scapegoating-of-female-creators-in-pop-culture/"&gt;the sixth season being terrible, and that being attributed to Marti Noxon&lt;/a&gt;. I liked that season and didn't know anything about Noxon, though she always seemed good on DVD commentary tracks, and I've noticed her name in the credits for other shows I enjoy somewhat.&lt;br /&gt;&lt;br /&gt;Do agree that it is disconcerting when one's fellow fans appear to Totally Miss The Point of something. The endless parade of homophobic, sexist, and just generally reactionary comments in the letters section of the &lt;em&gt;Buffy&lt;/em&gt; comics really threw me for a loop, but then again it's baffling to me that someone approaching the show from an explicitly feminist perspective didn't like season six, so there's no accounting for taste, is there.&lt;br /&gt;&lt;br /&gt;We all want the people we admire and care about to like the same things we like, but more often than not, they don't. And likewise we'd like all the people who do like the things we like to be admirable and care-worthy people, and to like those things for the same reasons. But they also don't!&lt;br /&gt;&lt;br /&gt;And it's okay, and at the end of the day there's no reason why any random fan of whatever thing you're a fan of is going to be any more or less likely to be a good or decent person than any random person who isn't a fan of that thing, but in any case "season six was good" is doubtlessly&amp;nbsp;a stronger debating position than "season six was terrible but it wasn't Marti Noxon's fault," and so I do recommend giving that season another chance.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-7331539660981339432?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/7331539660981339432/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=7331539660981339432' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/7331539660981339432'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/7331539660981339432'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/06/nerd-alert.html' title='Nerd Alert'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-8999036869189668533</id><published>2010-05-26T07:03:00.000-04:00</published><updated>2010-05-26T07:03:30.454-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>Startup Idea</title><content type='html'>Social networking for municipal politicians. The site would notify all of your friends when you actually became mayor.&lt;br /&gt;&lt;br /&gt;Alternatively: political system in which leaders are selected based on who goes to a place the most.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-8999036869189668533?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/8999036869189668533/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=8999036869189668533' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/8999036869189668533'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/8999036869189668533'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/05/startup-idea.html' title='Startup Idea'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-4233782993508460329</id><published>2010-05-18T16:03:00.000-04:00</published><updated>2010-05-18T16:03:43.571-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='gold'/><category scheme='http://www.blogger.com/atom/ns#' term='fascists'/><title type='text'>Velvet Goldline</title><content type='html'>&lt;a href="http://www.eschatonblog.com/2010/05/goldine.html"&gt;Via Atrios&lt;/a&gt;, it's hard to understand what could be motivating Anthony Weiner to &lt;a href="http://www.philly.com/philly/blogs/attytood/Becks_city_of_gold_continues_to_unravel.html"&gt;speak out against Glenn Beck's promotion of Goldline&lt;/a&gt;, other than a genuine concern for the people being scammed.&lt;br /&gt;&lt;br /&gt;I don't see any political upside, and I don't think the words of a Jewish Democrat from New York are going to carry much weight with people who are already stockpiling gold against the coming New World Order.&lt;br /&gt;&lt;br /&gt;So good on him!&lt;br /&gt;&lt;br /&gt;Also, relatedly, it actually is probably a good idea to invest in non-gold, right? I have no idea how that even works if you don't have any gold to sell in the first place.&amp;nbsp;How does short-selling work, and can you do it with commodities? Is that what futures contracts&amp;nbsp;are?&lt;br /&gt;&lt;br /&gt;(This is purely a hypothetical question, by the way, since obviously I have TONS of gold, just loads of the stuff, they call me the Midas Dutch, &amp;amp;c.)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-4233782993508460329?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/4233782993508460329/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=4233782993508460329' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/4233782993508460329'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/4233782993508460329'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/05/velvet-goldline.html' title='Velvet Goldline'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-4792438204530713042</id><published>2010-05-07T10:35:00.000-04:00</published><updated>2010-05-07T10:35:52.633-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><title type='text'>All Debate on Actual Programming Methodologies Completely Aside</title><content type='html'>The term "code smell" is really gross. Using it as a compound noun ("&lt;em&gt;x&lt;/em&gt; is a code smell"), as seems to be the convention, is even worse. It is a language smell.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-4792438204530713042?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/4792438204530713042/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=4792438204530713042' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/4792438204530713042'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/4792438204530713042'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/05/all-debate-on-actual-programming.html' title='All Debate on Actual Programming Methodologies Completely Aside'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-6505649493955718671</id><published>2010-04-28T07:25:00.000-04:00</published><updated>2010-04-28T07:25:00.719-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><title type='text'>Programming Language Nitpick</title><content type='html'>Many computer languages sport built-in keywords for logical truth values: &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;.TRUE.&lt;/span&gt; and &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;.FALSE.&lt;/span&gt; or &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;true&lt;/span&gt; and &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;false&lt;/span&gt; or whatnot. In every such language I'm aware of, these are used in comparisons: you have a logical expression and you are comparing it to the value &lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;TRUE&lt;/span&gt;.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The problem is that the English words "true" and "false" are adjectives, not nouns: the semantics of a comparison are that you are taking one thing and comparing it to another thing, but "true" isn't a thing, it's a description of a thing. (This is why an expression like "&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;if (true == a)&lt;/span&gt;" looks backwards, despite being perfectly legal.)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Boolean keywords should be named "&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;truth&lt;/span&gt;" and "&lt;span class="Apple-style-span"  style="font-family:'courier new';"&gt;falsehood&lt;/span&gt;" to more accurately convey their usage.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-6505649493955718671?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/6505649493955718671/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=6505649493955718671' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/6505649493955718671'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/6505649493955718671'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/04/programming-language-nitpick.html' title='Programming Language Nitpick'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-8294843848580662040</id><published>2010-04-26T09:38:00.000-04:00</published><updated>2010-04-26T09:38:17.810-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fascists'/><title type='text'>Green Teez Nutz</title><content type='html'>I love Thomas Friedman's &lt;a href="http://www.eschatonblog.com/2010/04/amazingly-everybody-agrees-with-me.html"&gt;green tea party&lt;/a&gt; suggestion, which reminds me of Gregg Easterbrook's prediction that &lt;a href="http://www.washingtonmonthly.com/features/2004/0409.easterbrook.html"&gt;Dubya would fix global warming&lt;/a&gt;. How do people who follow politics for a living manage to be completely oblivious to what Republicans actually believe?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-8294843848580662040?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/8294843848580662040/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=8294843848580662040' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/8294843848580662040'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/8294843848580662040'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/04/green-teez-nutz.html' title='Green Teez Nutz'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-8773172016560412593</id><published>2010-03-25T09:59:00.000-04:00</published><updated>2010-03-25T09:59:55.887-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>The Perfect Recess</title><content type='html'>It's possible &lt;a href="http://www.eschatonblog.com/2010/03/chief-justice-roberts-johnson-is-right.html"&gt;Obama just doesn't care all that much&lt;/a&gt; about the NLRB.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-8773172016560412593?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/8773172016560412593/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=8773172016560412593' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/8773172016560412593'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/8773172016560412593'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/03/perfect-recess.html' title='The Perfect Recess'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-6053268350052474314</id><published>2010-03-19T07:50:00.000-04:00</published><updated>2010-03-19T07:50:00.228-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='dog'/><category scheme='http://www.blogger.com/atom/ns#' term='books'/><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><title type='text'>Prancis Bookmarks</title><content type='html'>&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_Hil2fKhgQ50/S6KgVdSPzyI/AAAAAAAAAcc/ULgvx8JFLXg/s1600-h/bookmarks.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img alt="Prancis bookmarks" border="0" height="320" src="http://3.bp.blogspot.com/_Hil2fKhgQ50/S6KgVdSPzyI/AAAAAAAAAcc/ULgvx8JFLXg/s320/bookmarks.jpg" width="221" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Mark your territory!&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-6053268350052474314?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/6053268350052474314/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=6053268350052474314' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/6053268350052474314'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/6053268350052474314'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/03/prancis-bookmarks.html' title='Prancis Bookmarks'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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://3.bp.blogspot.com/_Hil2fKhgQ50/S6KgVdSPzyI/AAAAAAAAAcc/ULgvx8JFLXg/s72-c/bookmarks.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6124489411137620600.post-7974280949061902941</id><published>2010-03-18T10:49:00.002-04:00</published><updated>2010-03-18T10:53:37.843-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video games'/><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><title type='text'>No Accounting For Taste</title><content type='html'>I played a game demo on the recommendation of &lt;i&gt;Braid&lt;/i&gt; creator Jonathon Blow, and I had to go back to &lt;a href="http://braid-game.com/news/?p=681"&gt;his blog post&lt;/a&gt; to make sure I hadn't missed some ironic meta-type joke. It's just time-wasting busy-work like sudoku, not interesting in the least...but I suppose that's how many people feel about crosswords. Or reading!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-7974280949061902941?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/7974280949061902941/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=7974280949061902941' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/7974280949061902941'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/7974280949061902941'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/03/no-accounting-for-taste.html' title='No Accounting For Taste'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-144221207168403850</id><published>2010-03-15T14:41:00.000-04:00</published><updated>2010-03-15T14:41:17.778-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cryptic'/><category scheme='http://www.blogger.com/atom/ns#' term='harper&apos;s'/><title type='text'>Harper's Puzzle Update</title><content type='html'>I've still been working through the &lt;a href="http://baseballn00b.blogspot.com/2009/10/puzzling.html"&gt;old &lt;i&gt;Harper's&lt;/i&gt; puzzles&lt;/a&gt;. I've gotten up to, but haven't yet printed out the puzzle for, my birth month of June 1979. I had to skip one or two because their pages weren't scanned as part of the online archives,&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;sup&gt;1&lt;/sup&gt;&lt;/span&gt; so that's around forty puzzles in a little over four months.&lt;br /&gt;&lt;br /&gt;They've been a pretty good mix of difficulties: though the easiest ones feel considerably easier than contemporary puzzles ever seem to get, there have been a couple that have taken me a while to crack.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;&lt;sup&gt;1&lt;/sup&gt; Extra frustrating, because those must be the ones that are &lt;b&gt;so fun&lt;/b&gt;&amp;nbsp;that somebody just had to rip the thing out of the Official&amp;nbsp;&lt;i&gt;Harper's&lt;/i&gt;&amp;nbsp;Archive Copy before it could be scanned. Ah well.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-144221207168403850?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/144221207168403850/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=144221207168403850' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/144221207168403850'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/144221207168403850'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/03/harpers-puzzle-update.html' title='Harper&apos;s Puzzle Update'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-3909315096647043811</id><published>2010-03-12T09:35:00.000-05:00</published><updated>2010-03-12T09:35:54.187-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><title type='text'>Some Notes on Data Binding Windows Forms</title><content type='html'>Two things I discovered, submitted into the e-ther for the benefit of future googlers.&lt;br /&gt;&lt;ol&gt;&lt;li&gt;If you want to drive the state of some radio buttons from a presentation model (or "view model"), put each of them in its own panel. In WPF you have to assign them each a different group name, but the principle is the same: you're disabling the automatic radio button logic so you can handle it in your model (i.e., it is up to you to enforce exclusivity).&lt;/li&gt;&lt;li&gt;If you have a data-bound list box and you want to be able to change the selection in your presentation model and have it reflected in the control (and why not!), you have to bind "SelectedIndex" rather than "SelectedValue". Once I figured this out I could understand why—if you bind to a path or have "ValueMember" set then different list items can have the same value so setting is ambiguous—but it wasn't obvious what was going wrong at first so I thought I'd put it out there.&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-3909315096647043811?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/3909315096647043811/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=3909315096647043811' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/3909315096647043811'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/3909315096647043811'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/03/some-notes-on-data-binding-windows.html' title='Some Notes on Data Binding Windows Forms'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-5196059225144331284</id><published>2010-03-09T14:00:00.000-05:00</published><updated>2010-03-09T14:00:00.862-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fascists'/><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>Bad Financial Reform Worse Than No Financial Reform</title><content type='html'>I agree with &lt;a href="http://www.sadlyno.com/archives/29081.html"&gt;Brad on financial regulation&lt;/a&gt;.&amp;nbsp;It's a problem that the majority of Democratic politicians really don't see these economic issues as anything other than political balancing acts: don't piss off Wall Street or taxpayers or union members too much and the rest will work itself out.&lt;br /&gt;&lt;br /&gt;This contingent does not understand what went wrong in the first place, because the financial crisis was a direct refutation of their world view. And by all appearances they are sticking to their guns: save the banks, calm everyone down, and the rest will work itself out. Ergo, they are unlikely to do anything to prevent further crises.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-5196059225144331284?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/5196059225144331284/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=5196059225144331284' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/5196059225144331284'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/5196059225144331284'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/03/bad-financial-reform-worse-than-no.html' title='Bad Financial Reform Worse Than No Financial Reform'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-6673893406707850595</id><published>2010-03-09T11:15:00.000-05:00</published><updated>2010-03-09T11:28:17.334-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video games'/><title type='text'>Video Game Industry Self-Parody Watch</title><content type='html'>A magazine for women gamers is running a &lt;a href="http://www.gamesetwatch.com/2010/03/miranda_makeup_tutorial_for_ma.php"&gt;makeup tutorial&lt;/a&gt;. Like how to get the look of some character from a video game? Amazing.&lt;br /&gt;&lt;br /&gt;I would call it a tonedeaf misread of the magazine's target audience, but clicking through, it seems the "magazine for women gamers" is actually just PR for a "gamer model" agency. I.e., the actual target audience is the dudes who hire "booth babes." Hilarious, in any case.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-6673893406707850595?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/6673893406707850595/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=6673893406707850595' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/6673893406707850595'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/6673893406707850595'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/03/video-game-industry-self-parody-watch.html' title='Video Game Industry Self-Parody Watch'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-3766822231173344224</id><published>2010-03-09T08:07:00.000-05:00</published><updated>2010-03-09T08:07:00.458-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fascism'/><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>Real Talk</title><content type='html'>Yglesias on &lt;a href="http://yglesias.thinkprogress.org/archives/2010/03/politics-in-china.php"&gt;why the US will never risk experimenting with democracy&lt;/a&gt;. Oops, I meant China, why &lt;b&gt;China&lt;/b&gt;&amp;nbsp;won't risk democracy.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-3766822231173344224?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/3766822231173344224/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=3766822231173344224' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/3766822231173344224'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/3766822231173344224'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/03/real-talk.html' title='Real Talk'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-8553134350478821082</id><published>2010-03-06T10:17:00.000-05:00</published><updated>2010-03-06T10:17:06.815-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>"Ramming It Through"</title><content type='html'>The GOP of yore would never have dreamed of running against Democrats for "ramming their agenda through" over Republican objections. "Vote for us because the other guys are too strong" is the kind of pitch I expect from &lt;b&gt;Democrats&lt;/b&gt;. But one can hope!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-8553134350478821082?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/8553134350478821082/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=8553134350478821082' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/8553134350478821082'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/8553134350478821082'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/03/ramming-it-through.html' title='&quot;Ramming It Through&quot;'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-3397505751084638616</id><published>2010-02-25T18:39:00.000-05:00</published><updated>2010-02-25T18:39:33.110-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><category scheme='http://www.blogger.com/atom/ns#' term='fascists'/><title type='text'>Why Require Licenses for Virtual Windows Installs?</title><content type='html'>At work I'm trying to do more testing on virtual machines, and I've run into the thing where you have to "activate" a virtual Windows install, but you can't just use the key you used for your real system because Microsoft will think you upgraded or replaced your system and stop recognizing the real one (or something: I'm not exactly sure how it plays out).&lt;br /&gt;&lt;br /&gt;It appears that technically you need a separate Windows license for each virtual machine you run. Which I totally understand from a technical perspective—if your OS's licensing is linked to the hardware it runs on and you run it on virtual hardware then you need to license it for the virtual hardware—but not at all from a business standpoint.&lt;br /&gt;&lt;br /&gt;So it would all make sense, except that apparently newer versions of the OS allow you to run some fixed number of virtual installs (like ten or something) on the same license as the host OS. Whatever effort was required to implement that feature presumably exceeded the effort it would have taken to allow &lt;b&gt;any&lt;/b&gt;&amp;nbsp;number of virtual machines to run on a machine under a single host's license.&lt;br /&gt;&lt;br /&gt;I literally cannot imagine a single reason for limiting the number of virtual installations of an OS under a single host's license. How is running a zillion copies of Windows on the same hardware going to cheat Microsoft out of anything?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-3397505751084638616?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/3397505751084638616/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=3397505751084638616' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/3397505751084638616'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/3397505751084638616'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/02/why-require-licenses-for-virtual.html' title='Why Require Licenses for Virtual Windows Installs?'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6124489411137620600.post-7995002315679336402</id><published>2010-02-23T10:32:00.001-05:00</published><updated>2010-02-23T11:24:56.097-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='IQ'/><title type='text'>Car Handling and Human Intelligence</title><content type='html'>I had this idea that measuring an automobile's "handling" ability is sort of like measuring a person's intelligence. It's a kind of nebulous concept that summarizes stuff like turning radius, brake sensitivity, center of mass, and a whole bunch of other known and unknown characteristics.&lt;br /&gt;&lt;br /&gt;Car experts could probably create a strict ordering for the handling of different models just by driving them, and from that you could fit the results to a curve and come up with a single metric for how well a car handles, a "general handling factor," &lt;i&gt;h&lt;/i&gt;.&lt;br /&gt;&lt;br /&gt;In talking about intelligence I've had a lot of debates break down to something along the lines of "&lt;i&gt;g&lt;/i&gt;&amp;nbsp;(or IQ) is real" vs. "&lt;i&gt;g&lt;/i&gt;&amp;nbsp;is not real," and I think this analogy reveals how those sides are talking past each other: &lt;i&gt;h&lt;/i&gt;&amp;nbsp;is pretty clearly "real" in that it represents a real property of a car and it would be useful to us in talking about cars and comparing different cars to one another.&lt;br /&gt;&lt;br /&gt;On the other hand, &lt;i&gt;h&lt;/i&gt; doesn't correspond to any single physical component of the car's construction: you can't just pop out one "handling mechanism" and replace it with a new one. And a statement like "this car corners well because it has a high &lt;i&gt;h&lt;/i&gt;&amp;nbsp;factor" ends up sounding kind of incoherent: it's probably sort of true, because cornering ability and handling are going to correlate very highly, but it implies a causal mechanism that isn't there. I think that's the problem of "reification" that people complain about when it comes to &lt;i&gt;g&lt;/i&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-7995002315679336402?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/7995002315679336402/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=7995002315679336402' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/7995002315679336402'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/7995002315679336402'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/02/car-handling-and-human-intelligence.html' title='Car Handling and Human Intelligence'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-476499296137937170</id><published>2010-02-03T17:30:00.001-05:00</published><updated>2010-02-03T17:45:58.511-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>Not Buying It</title><content type='html'>&lt;a href="http://digbysblog.blogspot.com/2010/02/naming-names-by-digby-so-palin-is.html"&gt;Via digby&lt;/a&gt;, Andrew Sullivan &lt;a href="http://andrewsullivan.theatlantic.com/the_daily_dish/2010/02/palin-emanuel-pot-kettle.html"&gt;wonders&lt;/a&gt; whether Sarah Palin's son Trig is named for the medical shorthand for the technical name for Down Syndrome, Trisomy-g. I would like to see a citation for "Tri-g" used in such a manner. Google hasn't provided anything except other bloggers repeating Sullivan's musings.&lt;br /&gt;&lt;br /&gt;It's also weird that he's still pushing the "Trig isn't Sarah's" theory. I don't understand how both rumors could be true.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Update&lt;/b&gt;: Yeah, I'm calling this a hoax. The only thing I found with "Trisomy-g" and "Tri-g" on the same page that didn't refer directly to Palin was at&amp;nbsp;&lt;a href="http://slangrn.com/definition/tri-21"&gt;http://slangrn.com/definition/tri-21&lt;/a&gt;, basically a medical Urban Dictionary clone. I didn't see a way to tell how recently the "tri-g" tag was added to the entry, but I'm going to chalk it up to Jukt Micronics style hi-jinx.&lt;br /&gt;&lt;br /&gt;Andrew Sullivan['s ghostblogger] either got played by a right-wing &lt;i&gt;agent-provocateur&lt;/i&gt;, or is acting as one on his own behalf. At best it's a distraction, at worst it can function as a your-side's-just-as-bad rejoinder to criticism of "birther" conspiracies on the right.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-476499296137937170?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/476499296137937170/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=476499296137937170' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/476499296137937170'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/476499296137937170'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/02/not-buying-it.html' title='Not Buying It'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-1126770042418857650</id><published>2010-01-27T08:23:00.001-05:00</published><updated>2010-01-27T08:23:00.138-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='books'/><category scheme='http://www.blogger.com/atom/ns#' term='language'/><title type='text'>Bad Review, A Zillion Years Later</title><content type='html'>I recently finished &lt;i&gt;A Frolic of His Own&lt;/i&gt; and looked up reviews on the excellent Gaddis Annotations, which featured &lt;a href="http://draft.blogger.com/goog_1264558987972"&gt;one from the &lt;i&gt;Times&lt;/i&gt; Book Review&lt;/a&gt;:&lt;br /&gt;&lt;blockquote&gt;Other obstacles seem gratuitous, even perverse...[T]here seems little excuse for subjecting the reader to 50 pages of verbatim, tiresomely repetitious testimony in one of Oscar’s legal depositions.&lt;br /&gt;&lt;/blockquote&gt;While I can imagine that a lot of people did find the deposition scene tedious—all they want is blood and gore and her hand unbuttoning his trousers—I am really astounded that the reviewer thought there was "little excuse" for the scene in question.&lt;br /&gt;&lt;br /&gt;It's not "one of" Oscar's depositions, it's the only deposition in the novel. It happens early on: the two lawyers in the scene appear for the first time, in their only scene together, and the whole remainder of the plot refers back to this encounter as the reader learns new things about each of them. And it's not the testimony that's repetitious, but the lawyers' constant objections and rebuttals, which take on a Laurel and Hardy type quality.&lt;br /&gt;&lt;br /&gt;In any case, I think the deposition scene is literally essential to the novel.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-1126770042418857650?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/1126770042418857650/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=1126770042418857650' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1126770042418857650'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1126770042418857650'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/01/bad-review-zillion-years-later.html' title='Bad Review, A Zillion Years Later'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-8839300300924519021</id><published>2010-01-26T14:19:00.003-05:00</published><updated>2010-01-26T14:40:32.103-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='media'/><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>Occamize It!</title><content type='html'>&lt;a href="http://voices.washingtonpost.com/ezra-klein/2010/01/whatever_happened_to_making_de.html"&gt;Ezra Klein doesn't understand&lt;/a&gt; why the administration would do something like call for a discretionary spending freeze without getting something in exchange. I think Matt Yglesias's &lt;a href="http://yglesias.thinkprogress.org/archives/2010/01/maybe-ben-bernanke-is-a-conservative-republican.php"&gt;speculation regarding Ben Bernanke&lt;/a&gt; from a few days ago might be relevant here.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;It is not outside the realm of possibility that Obama just genuinely is a fiscal conservative who worries more about potential future inflation than current unemployment. Our last Democratic president thought trimming the deficit in a recession was a good idea on the merits.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-8839300300924519021?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/8839300300924519021/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=8839300300924519021' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/8839300300924519021'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/8839300300924519021'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/01/occamize-it.html' title='Occamize It!'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-8214553268055432795</id><published>2010-01-16T10:19:00.000-05:00</published><updated>2010-01-16T10:19:00.062-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='cryptic'/><category scheme='http://www.blogger.com/atom/ns#' term='axwax'/><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><title type='text'>AxWax Source</title><content type='html'>Source and Eclipse project files for the &lt;a href="http://baseballn00b.blogspot.com/2010/01/cryptic-thing.html"&gt;cryptic crossword&lt;/a&gt; thing &lt;a href="http://code.google.com/p/axwax/"&gt;available here&lt;/a&gt;. You can now sign in with a Google account and have it save your progress.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-8214553268055432795?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/8214553268055432795/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=8214553268055432795' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/8214553268055432795'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/8214553268055432795'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/01/axwax-source.html' title='AxWax Source'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-1564744453520520043</id><published>2010-01-07T08:02:00.003-05:00</published><updated>2010-01-15T17:35:46.801-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='cryptic'/><category scheme='http://www.blogger.com/atom/ns#' term='axwax'/><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>Cryptic Thing</title><content type='html'>I cobbled together a little (barely) interactive crossword puzzle engine. Here's a link to the puzzle I did a couple months ago, &lt;a href="http://ax-wax.appspot.com/#solve=/agZheC13YXhyHgsSF0JhcnJlZFJlY3Rhbmd1bGFyUHV6emxlGOkHDA/"&gt;Transportation Alternatives&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;It has some rendering problems, especially on IE, and there isn't any way to save your progress or check your answers yet, but the highlighting and everything seem to work okay, so I thought I'd link to it.&lt;br /&gt;&lt;br /&gt;The interface is &lt;a href="http://code.google.com/webtoolkit/"&gt;GWT&lt;/a&gt;&amp;nbsp;which is very cool and fun. And sort of mind-blowing in that it even exists at all, let alone works as well as it does.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Update&lt;/b&gt;: changed puzzle link.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-1564744453520520043?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/1564744453520520043/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=1564744453520520043' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1564744453520520043'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1564744453520520043'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/01/cryptic-thing.html' title='Cryptic Thing'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-1973105368437138893</id><published>2010-01-01T17:19:00.000-05:00</published><updated>2010-01-01T17:19:05.562-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='parking'/><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>2010 NYC Alternate Side Parking Google Calendar</title><content type='html'>&lt;span style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;a href="http://www.google.com/calendar/feeds/cp160109il7aps1kggpo0f0e44@group.calendar.google.com/public/basic"&gt;2010 NYC Alternate Side Parking&lt;/a&gt; Google calendar.&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-1973105368437138893?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/1973105368437138893/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=1973105368437138893' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1973105368437138893'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1973105368437138893'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2010/01/2010-nyc-alternate-side-parking-google.html' title='2010 NYC Alternate Side Parking Google Calendar'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-8150507625444293973</id><published>2009-12-30T15:43:00.000-05:00</published><updated>2009-12-30T15:43:22.619-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Brooklyn'/><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>Nimbyism as Environmentalism</title><content type='html'>Atrios on &lt;a href="http://www.eschatonblog.com/2009/12/nimbyism-masquerading-as.html"&gt;nimbyism masquerading as environmentalism&lt;/a&gt;. I think there's some of this going on in the Gowanus Canal Superfund debate: certainly the popular pro-Superfund &lt;a href="http://ecobrooklyn.com/gowanus-canal-super-fund-dont/"&gt;poster featuring a whale&lt;/a&gt;, of all things, seems to be trying a little too hard. I mean, they are on the right side anyway, but I'm just saying.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-8150507625444293973?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/8150507625444293973/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=8150507625444293973' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/8150507625444293973'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/8150507625444293973'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/12/nimbyism-as-environmentalism.html' title='Nimbyism as Environmentalism'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-5888450179300229390</id><published>2009-12-16T07:24:00.000-05:00</published><updated>2009-12-16T07:24:00.456-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>Check Your Premises</title><content type='html'>Brad &lt;a href="http://www.sadlyno.com/archives/27188.html"&gt;wonders why&lt;/a&gt; we pay so much money for such crappy health care. I think he's wondering rhetorically, as it were, but I do think it's worth spelling out an answer. Which is that to the extent that "we" do indeed tolerate this state of affairs, it's because "we" derive positive value from the suffering of the underclass: the existence of an enormous number of miserable poor people is the sole remaining component of the American dream.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-5888450179300229390?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/5888450179300229390/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=5888450179300229390' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/5888450179300229390'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/5888450179300229390'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/12/check-your-premises.html' title='Check Your Premises'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-5837992237893399769</id><published>2009-11-30T08:56:00.001-05:00</published><updated>2009-12-02T08:19:22.449-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fascism'/><category scheme='http://www.blogger.com/atom/ns#' term='economics'/><category scheme='http://www.blogger.com/atom/ns#' term='drugs'/><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>The Drug War Requires a Police State</title><content type='html'>Interesting thought experiment by Kevin Carson considering &lt;a href="http://c4ss.org/content/1472"&gt;how the War on Drugs would fare&lt;/a&gt; in a society in which the Fourth and Fifth Amendments to the US Constitution were respected according to their plain meaning and spirit. "Not well" is the short version.&lt;br /&gt;&lt;br /&gt;Carson concludes:&lt;br /&gt;&lt;blockquote&gt;If you want the Drug War, you must sacrifice the Bill of Rights and the due process rights of the accused, and submit to a police state in which you have no rights or protections whatsoever.&lt;/blockquote&gt;I would tend to put this the other way round, that the Drug War (like its antecedents, including Prohibition) exists because of its impact on due process rights: if drugs didn't exist they'd need to be invented, because the same rights that are essential to democracy are obstacles to capitalism.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-5837992237893399769?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/5837992237893399769/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=5837992237893399769' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/5837992237893399769'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/5837992237893399769'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/11/drug-war-requires-police-state.html' title='The Drug War Requires a Police State'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-1452072297225281836</id><published>2009-11-30T08:02:00.001-05:00</published><updated>2009-11-30T09:10:09.537-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cryptic'/><category scheme='http://www.blogger.com/atom/ns#' term='harper&apos;s'/><title type='text'>Six Down, Something Like 300 To Go</title><content type='html'>As &lt;a href="http://baseballn00b.blogspot.com/2009/10/puzzling.html"&gt;I mentioned earlier&lt;/a&gt;, I went back and tried Richard Maltby's first &lt;i&gt;Harper's&lt;/i&gt;&amp;nbsp;crossword. It was pretty easy! I've since printed out and solved five others.&lt;br /&gt;&lt;br /&gt;The clues seem easier than in current puzzles. I do like that some of the interesting recurring puzzle varieties (dedicated dodecahedron, diametricode, righTangles) were in use right from the start.&lt;br /&gt;&lt;br /&gt;At the same time, it seems like the clues in the older puzzles are not quite as "fair" as in his present-day puzzles. That was actually something that prompted me to look up older Maltby crosswords when I wanted more than one puzzle a month and found the ones on offer from the UK too UK-centric, while&amp;nbsp;&lt;a href="http://www.thenation.com/directory/bios/frank_w_lewis"&gt;Frank Lewis's&lt;/a&gt; for the &lt;i&gt;Nation&lt;/i&gt;&amp;nbsp;strike me as insufficiently &lt;a href="http://en.wikipedia.org/wiki/Derrick_Somerset_Macnutt"&gt;Ximenean&lt;/a&gt;. But yeah, so one of these first few Maltby clues included "Change livers (6)," which is easy enough, but which he would never use today.&lt;br /&gt;&lt;br /&gt;But yeah, fun, in any case. I subscribed to &lt;i&gt;Harper's&lt;/i&gt; somewhere around 2002 and haven't finished every puzzle since then, though I've given pretty much all of them the old college "try." So I have about three hundred to catch up to that point. That's what, two years' worth? Maybe I should ration them.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-1452072297225281836?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/1452072297225281836/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=1452072297225281836' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1452072297225281836'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1452072297225281836'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/11/six-down-something-like-300-to-go.html' title='Six Down, Something Like 300 To Go'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-889592241706404004</id><published>2009-11-20T09:48:00.000-05:00</published><updated>2009-11-20T09:48:52.226-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='books'/><title type='text'>Literary Mashups?</title><content type='html'>I was thinking the other day that it would be cool to get some Project Gutenberg texts, typeset them nicely in some free document processor, make a cool cover image and then put them up for sale at one of those digital print-on-demand sites. Or even just have a series of classics printed up for your personal library. There must be people doing stuff like that, right?&lt;br /&gt;&lt;br /&gt;And then I was wondering, does anyone take advantage of any of the copylefted or public domain texts out there and actually modify them significantly? Like adding a whole bunch of illustrations, or even changing the plot or removing characters. Instead of trying to ban &lt;i&gt;Huck Finn&lt;/i&gt;&amp;nbsp;from school libraries, conservatives should be publishing their own rewrites where Huck does the right thing and turns Jim over to the authorities.&lt;br /&gt;&lt;br /&gt;Anyway, keep an eye out for my upcoming masterpiece, &lt;i&gt;10,000 Leagues Under Ulysses&lt;/i&gt;, featuring stills from &lt;i&gt;Lady Frankenstein&lt;/i&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-889592241706404004?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/889592241706404004/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=889592241706404004' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/889592241706404004'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/889592241706404004'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/11/literary-mashups.html' title='Literary Mashups?'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6124489411137620600.post-8626417546375306511</id><published>2009-11-13T13:13:00.001-05:00</published><updated>2009-11-13T14:23:37.253-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='books'/><title type='text'>Wow</title><content type='html'>Found this &lt;a href="http://www.librarything.com/work/35551/reviews/4763591"&gt;review of &lt;i&gt;The Recognitions&lt;/i&gt;&lt;/a&gt;:&lt;br /&gt;&lt;blockquote&gt;When carefully and thoughtfully read a rich bounty of rewards awaits the attentive reader. I have had many intimate moments with this work when, perhaps sitting in a coffee shop, I'll be involved in a particularly frustrating piece of dialogue and I'll laugh out loud at Gaddis' razor-sharp eye for the frailty of human interactions...&lt;br /&gt;&lt;/blockquote&gt;Too perfect. I suppose furious masturbation does technically qualify as an "intimate moment."&lt;br /&gt;&lt;br /&gt;Razor-sharp eye indeed.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-8626417546375306511?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/8626417546375306511/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=8626417546375306511' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/8626417546375306511'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/8626417546375306511'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/11/wow.html' title='Wow'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-4569726451581745906</id><published>2009-11-05T07:50:00.000-05:00</published><updated>2009-11-05T07:50:00.433-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='food'/><title type='text'>Pointless Satire</title><content type='html'>This JSF op-ed about how &lt;a href="http://online.wsj.com/article/SB10001424052748703574604574499880131341174.html"&gt;we should eat dogs&lt;/a&gt; is pretty silly. I think anyone who's ever really thought about the taboos surrounding which animals we'll eat and which we won't has come to the same conclusion, that it's to a large extent arbitrary with very little basis in reason or any kind of absolute ethical standard. But who cares?&lt;br /&gt;&lt;br /&gt;Foer tries to imply that the meat of all the animals euthanized in shelters goes to waste, but then he immediately acknowledges that in actuality a lot of those bodies are turned into feed for other animals. He calls that an "inefficient and bizarre middle step," but of course it isn't: our pets and livestock have to eat &lt;b&gt;something&lt;/b&gt;, after all, so why &lt;b&gt;not&lt;/b&gt; give them the stuff we don't want?&lt;br /&gt;&lt;br /&gt;And it's not like if someone found an unidentified &lt;b&gt;cow&lt;/b&gt; wandering along the side of the highway, turned it over to animal control, and nobody claimed it, that it would then be chopped up into hamburger and sold at the supermarket. We're not nearly as careful about monitoring the health of the animals we eat as we should be, but we certainly don't consume "strays" of any species, and I doubt any (perfectly legal!) puppy mill comes anywhere close to satisfying the standards for farms raising animals for human consumption.&lt;br /&gt;&lt;br /&gt;Finally, Foer avoids the almost obligatory "Chinese restaurant" jokes, but only just barely. I have no idea what I'm talking about and will gladly retract if I am wrong, but I am going to go ahead anyway and call bullshit on this little factoid: "the Sino-Korean character for 'fair and proper' (yeon) literally translates into 'as cooked dog meat is delicious.'" Sure it is. The Filipino recipe for dog stew that begins with slaughtering instructions is also way out of line, again for obvious reasons.&lt;br /&gt;&lt;br /&gt;But yeah, anyway, retarded essay. The old rule of thumb, that any piece of satire that has to include the phrase "modest proposal" in its title or subtitle is not worth the reader's time, holds up once again.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-4569726451581745906?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/4569726451581745906/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=4569726451581745906' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/4569726451581745906'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/4569726451581745906'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/11/pointless-satire.html' title='Pointless Satire'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-891260333713103559</id><published>2009-10-29T12:07:00.000-04:00</published><updated>2009-10-29T12:07:28.635-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cryptic'/><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><title type='text'>Puzzling!</title><content type='html'>I was paroozing some crossword-related discussion boards, specifically wondering if the fact that I only ever do Richard Maltby's puzzles in &lt;i&gt;Harper's&lt;/i&gt;&amp;nbsp;means I'm really just a fan of Maltby's rather than cryptics in general.&lt;br /&gt;&lt;br /&gt;I have definitely been completely frustrated trying to solve English cryptics (which require quite a bit of general knowledge), and also found the clues in Frank Lewis's &lt;i&gt;Nation&lt;/i&gt;&amp;nbsp;offerings to follow the cryptic "rules" much less strictly than I was used to, though maybe they were just going over my head.&lt;br /&gt;&lt;br /&gt;In any case, someone mentioned that Maltby started setting puzzles for &lt;i&gt;Harper's&lt;/i&gt;&amp;nbsp;in January 1976, and he prefaced the first one with a nice little &lt;a href="http://harpers.org/archive/1976/01/page/0077"&gt;introduction to cryptics&lt;/a&gt;&amp;nbsp;(subscribers-only link, images posted below) that even includes his "mental repunctiation" refrain.&amp;nbsp;So I'm going to try that one and see whether he had that style from the beginning.&lt;br /&gt;&lt;br /&gt;Also! it appears that Stephen Sondheim wrote puzzles for &lt;i&gt;New York&lt;/i&gt;! Weird! They did a blog post with &lt;a href="http://nymag.com/anniversary/40th/crosswords/45747/"&gt;his first three&lt;/a&gt;. Apparently he is credited with developing the "US style" of cryptic. I am going to try those out as well.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_Hil2fKhgQ50/Sum3U02U6xI/AAAAAAAAAbk/k-4vPchu3CU/s1600-h/0077.gif" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img alt="Introduction to cryptics" border="0" src="http://3.bp.blogspot.com/_Hil2fKhgQ50/Sum3U02U6xI/AAAAAAAAAbk/k-4vPchu3CU/s200/0077.gif" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;a href="http://4.bp.blogspot.com/_Hil2fKhgQ50/Sum3Wo0SEQI/AAAAAAAAAbs/wgTtb4WCVyg/s1600-h/0078.gif" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img alt="Introduction to cryptics page 2" border="0" src="http://4.bp.blogspot.com/_Hil2fKhgQ50/Sum3Wo0SEQI/AAAAAAAAAbs/wgTtb4WCVyg/s200/0078.gif" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_Hil2fKhgQ50/Sum3XqC9LRI/AAAAAAAAAb0/aka9jqbT54M/s1600-h/0079.gif" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img alt="Cryptic puzzle" border="0" src="http://3.bp.blogspot.com/_Hil2fKhgQ50/Sum3XqC9LRI/AAAAAAAAAb0/aka9jqbT54M/s200/0079.gif" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-891260333713103559?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/891260333713103559/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=891260333713103559' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/891260333713103559'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/891260333713103559'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/10/puzzling.html' title='Puzzling!'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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://3.bp.blogspot.com/_Hil2fKhgQ50/Sum3U02U6xI/AAAAAAAAAbk/k-4vPchu3CU/s72-c/0077.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6124489411137620600.post-3933682335857608129</id><published>2009-10-27T07:29:00.001-04:00</published><updated>2009-10-27T07:29:00.666-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cryptic'/><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><title type='text'>PUZZLE</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_Hil2fKhgQ50/SuYHK1fhtFI/AAAAAAAAAbU/qTaygi8RjEM/s1600-h/ta.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_Hil2fKhgQ50/SuYHK1fhtFI/AAAAAAAAAbU/qTaygi8RjEM/s320/ta.png" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: x-large;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;TRANSPORTATION ALTERNATIVES&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;i&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;By Travis Scholtens&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;Eight answers from the Across clues must first be altered before they can be entered in the diagram. Naturally, word lengths are omitted for these clues.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="text-indent: 0.5in;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;When the diagram is completed, the entry at 15A will be a familiar slogan describing the alteration.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-indent: 0.5in;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;Altered entries are common words and contain no proper nouns. Clued answers include one proper noun. 27A is an alternate spelling. As always, mental repunctuation of a clue is the key to its solution. The solution to the &lt;/span&gt;&lt;a href="http://baseballn00b.blogspot.com/2008/10/cryptic-crossword.html"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;last puzzle&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt; appears after the jump.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; page-break-after: avoid; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt; font-variant: small-caps;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;across&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&amp;nbsp;&amp;nbsp; 1.&amp;nbsp; After being fixed, paler cat is calmer&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&amp;nbsp;&amp;nbsp; 5.&amp;nbsp; Shows are inside: second-rate, front of stage (5)&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&amp;nbsp;&amp;nbsp; 9.&amp;nbsp; Sounds likely to be grounds for a lawsuit (5)&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt; 10.&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;st1:city&gt;&lt;st1:place&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;Bordeaux&lt;/span&gt;&lt;/span&gt;&lt;/st1:place&gt;&lt;/st1:city&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt; cartel broken up&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt; 11.&amp;nbsp; World government players regarded to be intact&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt; 13.&amp;nbsp; Speaker czar&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt; 14.&amp;nbsp; Ovation less enthusiastic, initially: bravo! (3)&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt; 15.&amp;nbsp; &lt;/span&gt;&lt;i&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;See instructions&lt;/span&gt;&lt;/i&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt; (3,4,3)&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt; 18.&amp;nbsp; Frolicked in reversible scarlet cloak&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt; 20.&amp;nbsp; Old pie goes bad, becomes water molecule, e.g. (6)&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt; 22.&amp;nbsp; Chats about gym class, love, urges (6)&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt; 24.&amp;nbsp; Sweet drink from bar at center thrown back&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt; 25.&amp;nbsp; Pains leave shore with fore moved aft (4)&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt; 26.&amp;nbsp; Alarming contents of NASCAR in German&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt; 27.&amp;nbsp; Sore on eyelid in crust (yellow) (4)&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt; 28.&amp;nbsp; Put into concrete form, a nice rant goes off the rails&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;br clear="all" /&gt;&lt;/span&gt; &lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;  &lt;/span&gt;&lt;br /&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt; font-variant: small-caps;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;down&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&amp;nbsp;&amp;nbsp; 2.&amp;nbsp; Beginning of novel buried amidst property claim sheets (5)&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&amp;nbsp;&amp;nbsp; 3.&amp;nbsp; Core shown in bas-relief (3)&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&amp;nbsp;&amp;nbsp; 4.&amp;nbsp; Overjoyed to be part of a family with no head (6)&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&amp;nbsp;&amp;nbsp; 5.&amp;nbsp; Buffets for smokes (5)&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&amp;nbsp;&amp;nbsp; 6.&amp;nbsp; Audible shaft moisture to perform again (4)&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&amp;nbsp;&amp;nbsp; 7.&amp;nbsp; Everybody else up late? (2,2)&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&amp;nbsp;&amp;nbsp; 8.&amp;nbsp; Convenience store blends test puree (9)&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt; 10.&amp;nbsp; Lions missing a thousand toy bricks (4)&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt; 11.&amp;nbsp; Great places mix up oxtail soup with no lox (7)&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt; 12.&amp;nbsp; Until death preserves Iberian diacritic (5)&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt; 13.&amp;nbsp; Thoroughly hinder packaging record with missing note (6)&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt; 16.&amp;nbsp; Not pro game: without me, it's a Cuban line dance (5)&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt; 17.&amp;nbsp; Wide awake right after beer (5)&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt; 19.&amp;nbsp; Project beginnings of each movie in theater (4)&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt; 21.&amp;nbsp; Write new leader (leader of English colony) (4)&lt;/span&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: 11pt;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt; 23.&amp;nbsp; Tails-up nickels are evil (3)&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: medium;"&gt;&lt;span class="Apple-style-span" style="font-size: 15px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-left: 22.3pt; mso-layout-grid-align: none; tab-stops: right 16.5pt left 22.15pt; text-autospace: none; text-indent: -22.3pt;"&gt;&lt;span style="font-size: medium;"&gt;&lt;span style="font-size: 15px;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size: medium;"&gt;&lt;span style="font-size: 15px;"&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;SOLUTION TO LAST PUZZLE&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_Hil2fKhgQ50/SuYNpSDp8bI/AAAAAAAAAbc/hXVJ8sX9YoA/s1600-h/dss.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_Hil2fKhgQ50/SuYNpSDp8bI/AAAAAAAAAbc/hXVJ8sX9YoA/s200/dss.png" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;NOTES FOR "DIRTY SCRABBLE":&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;i&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;The 7-letter words cannot be found in the Scrabble dictionary because they are examples of NAUGHTY BINGOES.&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;i&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;Note: * indicates anagram.&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;div&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;ACROSS: 1. fart(h)ing; 7. bri(T)e; 8. homophone, Tory; 10. hidden; 11. hidden; 12. two mngs.; 15. first letters; 17. *; 19. two mngs. -ski; 21. *; 22. NY-ET; 23. wog(G)(N)ish*&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: Times, 'Times New Roman', serif;"&gt;DOWN: 2. ars-E; 3. *; 4. ite(M); 5. *; 6. dip-S-hit; 7. ba(zoo)ms; 9. le-O; 13. homophone; 14. hidden; 16. B-row; 18. hidden, 20. *&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-3933682335857608129?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/3933682335857608129/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=3933682335857608129' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/3933682335857608129'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/3933682335857608129'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/10/puzzle.html' title='PUZZLE'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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://1.bp.blogspot.com/_Hil2fKhgQ50/SuYHK1fhtFI/AAAAAAAAAbU/qTaygi8RjEM/s72-c/ta.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6124489411137620600.post-39386721782957863</id><published>2009-10-23T13:13:00.000-04:00</published><updated>2009-10-23T13:13:21.975-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><title type='text'>I Wonder</title><content type='html'>When Microsoft named the &lt;a href="http://msdn.microsoft.com/en-us/library/system.threading.threadpool.queueuserworkitem.aspx"&gt;ThreadPool.QueueUserWorkItem&lt;/a&gt; method, did they name it that way so it would sound like you were talking about something involving a "pool cue" when you said it aloud?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-39386721782957863?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/39386721782957863/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=39386721782957863' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/39386721782957863'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/39386721782957863'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/10/i-wonder.html' title='I Wonder'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-2015937895972322675</id><published>2009-10-21T10:49:00.000-04:00</published><updated>2009-10-21T10:49:21.600-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Brooklyn'/><category scheme='http://www.blogger.com/atom/ns#' term='food'/><title type='text'>Bodega</title><content type='html'>This is by my house:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_Hil2fKhgQ50/St8e6skwWGI/AAAAAAAAAbM/CLRZ_F_ekJA/s1600-h/Image024.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="Bodega called 'Food Inc.'" border="0" src="http://4.bp.blogspot.com/_Hil2fKhgQ50/St8e6skwWGI/AAAAAAAAAbM/CLRZ_F_ekJA/s400/Image024.jpg" /&gt;&lt;/a&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/6124489411137620600-2015937895972322675?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/2015937895972322675/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=2015937895972322675' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/2015937895972322675'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/2015937895972322675'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/10/bodega.html' title='Bodega'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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/_Hil2fKhgQ50/St8e6skwWGI/AAAAAAAAAbM/CLRZ_F_ekJA/s72-c/Image024.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6124489411137620600.post-5802365190680244967</id><published>2009-10-19T11:59:00.000-04:00</published><updated>2009-10-19T11:59:52.181-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fascism'/><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>"Privatized" Utilities</title><content type='html'>Love it: phone companies still cater to the needs of shareholders rather than those of the public, but when it comes to their communications with the government, well &lt;a href="http://harpers.org/archive/2009/10/hbc-90005867"&gt;that's a state secret&lt;/a&gt; or something. State capitalism's privatization of public services once again gives ordinary citizens the worst of both worlds.&lt;br /&gt;&lt;br /&gt;I also love love love the argument that any sort of conversation should remain private in the context of defending the telecoms from charges of eavesdropping on their customers.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-5802365190680244967?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/5802365190680244967/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=5802365190680244967' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/5802365190680244967'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/5802365190680244967'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/10/privatized-utilities.html' title='&quot;Privatized&quot; Utilities'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-4246084951366938022</id><published>2009-09-30T13:10:00.000-04:00</published><updated>2009-09-30T13:10:34.929-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='coffee'/><category scheme='http://www.blogger.com/atom/ns#' term='capitalism'/><category scheme='http://www.blogger.com/atom/ns#' term='bikes'/><title type='text'>Cycling Mugs</title><content type='html'>I spent all morning on &lt;a href="http://www.zazzle.com/aroundofapplause/gifts?cg=196381232871820496"&gt;these&lt;/a&gt;:&lt;br /&gt;&lt;br /&gt;&lt;embed flashvars="feedId=117767341359013028" height="300" src="http://www.zazzle.com/utl/getpanel?zp=117767341359013028" type="application/x-shockwave-flash" width="450" wmode="transparent"&gt;&lt;/embed&gt;&lt;br /&gt;&lt;br /&gt;The minimum pixel size option on Google image search is a tremendous boon to the casual zazzler.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-4246084951366938022?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/4246084951366938022/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=4246084951366938022' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/4246084951366938022'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/4246084951366938022'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/09/cycling-mugs.html' title='Cycling Mugs'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-3392450134205385890</id><published>2009-09-28T11:53:00.000-04:00</published><updated>2009-09-28T11:53:00.183-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='propaganda'/><title type='text'>Listen to the Rich Guy</title><content type='html'>&lt;a href="http://robert.snaplog.com/"&gt;Robert&lt;/a&gt; had shared this Joel Spolsky essay on &lt;a href="http://www.joelonsoftware.com/items/2009/09/23.html"&gt;"duct-tape programmers"&lt;/a&gt; the other day, and it was sort of bugging me. In searching for it again, I found that it's already received its share of criticism.&lt;br /&gt;&lt;br /&gt;It did make me wonder what made Spolsky so willing to promote Jamie Zawinski's advice despite a lot of it appearing to me to be pretty badly misguided. And I guess it has to be because, whatever happened to Netscape later on, he got his zillions of dollars, making him a success by the only meaningful metric of capitalism. And therefore someone whose wisdom should be respected.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-3392450134205385890?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/3392450134205385890/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=3392450134205385890' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/3392450134205385890'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/3392450134205385890'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/09/listen-to-rich-guy.html' title='Listen to the Rich Guy'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-2471649095043632176</id><published>2009-09-25T16:45:00.000-04:00</published><updated>2009-09-25T16:45:06.102-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='media'/><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>Finally!</title><content type='html'>Terrible piece in the &lt;i&gt;Times&lt;/i&gt;&amp;nbsp;about &lt;a href="http://www.nytimes.com/2009/09/25/nyregion/25comptroller.html"&gt;next Tuesday's runoff for comptroller&lt;/a&gt;. "Sparks finally fly," but not word one about whether any of the candidates' spark-emitting accusations might have some validity.&lt;br /&gt;&lt;br /&gt;Sadly not unusual when it comes to political reporting, but weird in light of the fact that the same reporter profiled each of candidates &lt;a href="http://www.nytimes.com/2009/09/24/nyregion/24liu.html"&gt;John Liu&lt;/a&gt; and &lt;a href="http://www.nytimes.com/2009/09/24/nyregion/24yassky.html"&gt;David Yassky&lt;/a&gt; in yesterday's edition. Those are good articles! Very informative! And yet from today's piece you'd think the &lt;i&gt;Times&lt;/i&gt;&amp;nbsp;couldn't care less about informing voters, four days before they go to the polls.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-2471649095043632176?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/2471649095043632176/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=2471649095043632176' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/2471649095043632176'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/2471649095043632176'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/09/finally.html' title='Finally!'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-3246268622078104088</id><published>2009-09-22T10:11:00.000-04:00</published><updated>2009-09-22T10:11:40.937-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rap'/><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>And in More Mixtape Non-News</title><content type='html'>I never listened to Lil' Wayne's "rock" stuff when it was coming out. How did nobody tell me about his take on an "End of the World as We Know It"/"We Didn't Start the Fire"–style laundry list of modern evils, "Politics"?&lt;br /&gt;&lt;br /&gt;&lt;object height="344" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/5Y76sq5anjY&amp;hl=en&amp;fs=1&amp;"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/5Y76sq5anjY&amp;hl=en&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;blockquote&gt;Love, hate, size, race, grime, grace, lip injection, lethal injection, lip injection&lt;br /&gt;Lethal injection, your assumption, economical destruction, breast reduction, police corruption&lt;br /&gt;Love, hate, size, race, grime, grace, crime rate, lip injection, lethal injection&lt;br /&gt;Lip injection, lethal injection, breast reduction, police corruption, your assumption&lt;br /&gt;Economical destruction, breast reduction, police corruption, your assumption, economical destruction&lt;br /&gt;&lt;/blockquote&gt;Amazing.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-3246268622078104088?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/3246268622078104088/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=3246268622078104088' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/3246268622078104088'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/3246268622078104088'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/09/and-in-more-mixtape-non-news.html' title='And in More Mixtape Non-News'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-1459014554851609833</id><published>2009-09-18T13:41:00.000-04:00</published><updated>2009-09-18T13:41:29.989-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='dips of the world'/><title type='text'>Dips of the Woooooorld</title><content type='html'>The French Dip, which is actually a roast beef sandwich that you DIP.&lt;br /&gt;&lt;br /&gt;Invented by France, hence the name.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-1459014554851609833?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/1459014554851609833/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=1459014554851609833' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1459014554851609833'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1459014554851609833'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/09/dips-of-woooooorld.html' title='Dips of the Woooooorld'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6124489411137620600.post-2942091455154707254</id><published>2009-09-18T10:10:00.000-04:00</published><updated>2009-09-18T10:10:00.252-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='dips of the world'/><title type='text'>Dips of the World!</title><content type='html'>Artichoke Dip, coming to us from Middle America.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-2942091455154707254?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/2942091455154707254/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=2942091455154707254' title='9 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/2942091455154707254'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/2942091455154707254'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/09/dips-of-world_18.html' title='Dips of the World!'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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>9</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6124489411137620600.post-2965847514875850075</id><published>2009-09-17T20:45:00.003-04:00</published><updated>2009-09-17T20:45:37.506-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='dips of the world'/><title type='text'>Dips of the World</title><content type='html'>Dips of the World.&lt;br /&gt;&lt;br /&gt;Guacamole of Mexico.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-2965847514875850075?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/2965847514875850075/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=2965847514875850075' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/2965847514875850075'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/2965847514875850075'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/09/dips-of-world.html' title='Dips of the World'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6124489411137620600.post-2675712445016238352</id><published>2009-09-17T10:27:00.000-04:00</published><updated>2009-09-17T10:27:32.066-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='parking'/><category scheme='http://www.blogger.com/atom/ns#' term='fascism'/><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><title type='text'>Google Fails Me!</title><content type='html'>My &lt;a href="http://baseballn00b.blogspot.com/2009/09/okay-now-im-really-done.html"&gt;street cleaning program&lt;/a&gt; appears to be working just fine, except for the fact that for some reason Google never sent me either of my SMS reminders this morning. I looked at the calendar and they're set up and everything; I just never got the message. And it worked perfectly on Monday!&lt;br /&gt;&lt;br /&gt;It cost me a $115 ticket for double parking, though thankfully my neighbor alerted me before they could tow my car.&lt;br /&gt;&lt;br /&gt;Clearly, I'll need a text-messaging system more robust than reminders in Google calendars. AppEngine will let me set up cron jobs (nullus), which I should then be able to use to trigger a message via Zeep.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-2675712445016238352?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/2675712445016238352/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=2675712445016238352' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/2675712445016238352'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/2675712445016238352'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/09/google-fails-me.html' title='Google Fails Me!'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-8231880565298307187</id><published>2009-09-08T10:55:00.001-04:00</published><updated>2009-09-08T11:05:09.888-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='python'/><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>Another SMS Thing</title><content type='html'>I keep track of my checking account balance and track all my bills in a sparsely populated spreadsheet, with a row for each calendar day and a column for each category of credit or debit (paycheck, transfer to savings, gas bill, ATM, &amp;amp;c.). The resulting balance is tracked in the rightmost column.&lt;br /&gt;&lt;br /&gt;My practice has been, when withdrawing money from an ATM machine, to pocket a paper receipt until such time as I find myself before my computer and may record the transaction.&lt;br /&gt;&lt;br /&gt;So I made another &lt;a href="http://code.google.com/appengine/"&gt;App Engine&lt;/a&gt; service that lets me enter ATM withdrawals into a database,&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_Hil2fKhgQ50/SqZl51srPbI/AAAAAAAAAa0/iPxZ2iepU70/s1600-h/atthem.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="Withdrawals web app showing a $101.75 withdrawal on 2009-09-03" border="0" src="http://3.bp.blogspot.com/_Hil2fKhgQ50/SqZl51srPbI/AAAAAAAAAa0/iPxZ2iepU70/s320/atthem.PNG" /&gt;&lt;/a&gt;,&lt;/div&gt;&lt;br /&gt;and publishes monthly accounts as XML,&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_Hil2fKhgQ50/SqZnbLwSdoI/AAAAAAAAAa8/fQxI_H_txtw/s1600-h/atthemxml.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="XML listing same withdrawal" border="0" src="http://3.bp.blogspot.com/_Hil2fKhgQ50/SqZnbLwSdoI/AAAAAAAAAa8/fQxI_H_txtw/s320/atthemxml.PNG" /&gt;&lt;/a&gt;,&lt;/div&gt;&lt;br /&gt;which are then consumed by Google spreadsheets' ImportXML() function:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_Hil2fKhgQ50/SqZnbLwSdoI/AAAAAAAAAa8/fQxI_H_txtw/s1600-h/atthemxml.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;/a&gt;&lt;a href="http://3.bp.blogspot.com/_Hil2fKhgQ50/SqZneiCwonI/AAAAAAAAAbE/K6b0qzXq30Q/s1600-h/atthemsheet.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="Withdrawal shown in spreadsheet" border="0" src="http://3.bp.blogspot.com/_Hil2fKhgQ50/SqZneiCwonI/AAAAAAAAAbE/K6b0qzXq30Q/s320/atthemsheet.PNG" /&gt;&lt;/a&gt;.&lt;/div&gt;&lt;br /&gt;I called it "A.T.Them," and once I had it working, I added an endpoint to handle &lt;a href="http://www.zeepmobile.com/"&gt;Zeep&lt;/a&gt; operations. Now when I withdraw money, I can decline the offer of a paper receipt, saving some trees, and text "atthem 61.50" or whatever and it will pop up right in my spreadsheet.&lt;br /&gt;&lt;br /&gt;I can't figure out how to post the source without Blogger mangling the HTML, but it's all trivial in any case. One note is that ImportXML() doesn't do any kind of authentication, so the monthly lists of all my ATM withdrawals are not protected by anything beyond my keeping the URI's at which they may be found a secret.&lt;br /&gt;&lt;br /&gt;Likewise (and this vulnerability, such as it is, applies equally to any Zeep service), someone who knew the URI that handles Zeep requests and my Zeep subscriber ID could impersonate "atthem" messages and populate my spreadsheet with junk. It's easy enough to add some sort of challenge and response to Zeep operations, but I didn't bother.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-8231880565298307187?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/8231880565298307187/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=8231880565298307187' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/8231880565298307187'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/8231880565298307187'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/09/another-sms-thing.html' title='Another SMS Thing'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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://3.bp.blogspot.com/_Hil2fKhgQ50/SqZl51srPbI/AAAAAAAAAa0/iPxZ2iepU70/s72-c/atthem.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6124489411137620600.post-3754845802422340919</id><published>2009-09-07T10:02:00.000-04:00</published><updated>2009-09-07T10:02:37.028-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='spinners'/><category scheme='http://www.blogger.com/atom/ns#' term='cyclones'/><category scheme='http://www.blogger.com/atom/ns#' term='baseball'/><category scheme='http://www.blogger.com/atom/ns#' term='bikes'/><title type='text'>Cyclones vs. Spinners</title><content type='html'>Sarah and I biked down to Coney Island yesterday for the Cyclones' final regular-season game. Playoff slots had already been determined, so there wasn't anything at stake, which might have been why both teams kept putting in new pitchers. It was weird.&lt;br /&gt;&lt;br /&gt;Carlos Beltran was playing for Brooklyn on rehab. He had a solid hit for his second at-bat, and some good if unspectactular fielding, but I think he struck out swinging a couple times. Not really a big hitting day for anyone, actually, with a really strong wind coming in off the water.&lt;br /&gt;&lt;br /&gt;Ultimately an exciting game, with Brooklyn attempting a rally in the ninth but unable to overcome the 4-2 deficit. We were glad we brought sweaters, and didn't stick around for the fireworks show scheduled for ninety minutes later.&lt;br /&gt;&lt;br /&gt;The ride down was fun, it was our first time going down into Brooklyn from the new neighborhood, which really just means we take Bedford down and then go West on Caton Ave where before we would have been going East on it. I think next time I'm going to stay on Bedford and take Church instead; maybe it was just West Indian Day Parade traffic last night, but I think Caton is usually pretty crazy.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-3754845802422340919?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/3754845802422340919/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=3754845802422340919' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/3754845802422340919'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/3754845802422340919'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/09/cyclones-vs-spinners.html' title='Cyclones vs. Spinners'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-2934251857540090041</id><published>2009-09-04T11:47:00.000-04:00</published><updated>2009-09-04T11:47:56.570-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='parking'/><category scheme='http://www.blogger.com/atom/ns#' term='python'/><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><title type='text'>Okay, Now I'm Really Done</title><content type='html'>Finished porting my street cleaning reminder program to Python for AppEngine, where it seems to be working fine. One unfortunate thing about moving the original desktop C# 3.5 code to ASP.NET 2.0 was that I had to replace all my nice Linq queries with regular loops, so being able to make use of Python features like tuples and list comprehensions was enjoyable.&lt;br /&gt;&lt;br /&gt;Here is the code, with my personal identification information removed, and which I hereby release into the public domain:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;import cgi&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;from google.appengine.api import users&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;from google.appengine.ext import webapp&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;from google.appengine.ext.webapp.util import run_wsgi_app&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;import gdata.service&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;import gdata.calendar&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;import gdata.calendar.service&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;import atom.service&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;import gdata.alt.appengine&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;import string&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;import time&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;class Cleanendar(webapp.RequestHandler):&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;def __init__(self):&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;manager = CalendarManager()&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;self.commands = { 'n': manager.north, 's': manager.south, '': manager.clear }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;def post(self):&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;if self.request.get('event') == 'MO':&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;if self.request.get('uid') == MY_ZEEP_UID:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;self.response.headers['Content-Type'] = 'text/plain'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;self.response.out.write(self.process_command(self.request.get('body').lower()))&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;self.response.clear()&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;self.response.set_status(400)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;def process_command(self, body):&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;if body in self.commands:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;self.commands[body]()&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;return ''&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;else:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;return 'Bad command [' + body + ']'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;class CalendarManager:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;def __init__(self):&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;self.service = self.get_service()&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;(self.calendar, hcalendar) = self.get_calendars(self.service)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;self.id = self.calendar.id.text.split('/')[-1]&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;self.holidays = self.get_events(hcalendar.id.text.split('/')[-1])&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;self.prefix = 'Cleanendar: '&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;self.begin = time.strptime(time.strftime('%Y%m%d', time.localtime()) + '1230', '%Y%m%d%H%M')&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;self.end = time.strptime(time.strftime('%Y%m%d', time.localtime()) + '1400', '%Y%m%d%H%M')&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;self.daynames = ['Mo','Tu','We','Th','Fr','Sa','Su']&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;def get_service(self):&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;service = gdata.calendar.service.CalendarService(MY_GOOGLE_ID, MY_GOOGLE_PW, MY_APP_ID)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;service.ProgrammaticLogin()&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;return service&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;def get_calendars(self, service):&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;feed = service.GetAllCalendarsFeed()&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;calendar = None&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;holidays = None&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;for i, c in enumerate(feed.entry):&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;if c.title.text == "Cleanendar":&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;calendar = c&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;elif c.title.text == "2009 NYC Alternate Side Parking":&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;holidays = c&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;return (calendar, holidays)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;def north(self):&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;self.set_days([0,3])&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;def south(self):&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;self.set_days([1,4])&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;def clear(self):&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;events = self.get_events(self.id)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;for i, e in enumerate(events.entry):&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;if e.title.text.startswith(self.prefix):&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;self.service.DeleteEvent(e.GetEditLink().href)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;def set_days(self, days):&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;self.clear()&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;self.add_event(self.make_event(self.begin, "Move car", days))&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;self.add_event(self.make_event(self.end, "Move back", days))&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;def get_events(self, id):&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;return self.service.GetCalendarEventFeed('/calendar/feeds/' + id + '/private/full')&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;def make_event(self, t, desc, days):&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;event = gdata.calendar.CalendarEventEntry()&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;event.title = atom.Title(text=self.prefix + 'Street cleaning')&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;event.content = atom.Content(text=desc)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;event.recurrence = self.make_recurrence(t, days)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;event.reminder = self.make_reminder()&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;return event&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;def add_event(self, event):&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;return self.service.InsertEvent(event, '/calendar/feeds/' + self.id + '/private/full')&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;def make_recurrence(self, t, days):&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;data = ('DTSTART;TZID=UTC;VALUE=DATE-TIME:' + time.strftime('%Y%m%dT%H%M%S', t) + '\r\n' +&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;'DURATION:PT5M\r\n' +&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;'RRULE:FREQ=WEEKLY;BYDAY=' + string.join([self.daynames[d] for d in days], ',') + ';' +&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;'UNTIL=' + time.strftime('%Y', t) + '1231\r\n' +&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;'EXDATE:' + string.join([time.strftime('%Y%m%d', d) + time.strftime('T%H%M%S', t) for d in self.make_exclusions(days)], ',') + '\r\n')&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;return gdata.calendar.Recurrence(text=data)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;def make_exclusions(self, days):&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;e = []&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;for i, h in enumerate(self.holidays.entry):&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;for t in [time.strptime(w.start_time, '%Y-%m-%d') for w in h.when]:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if t.tm_wday in [0,3]:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;e.append(t)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;return e&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;def make_reminder(self):&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;return gdata.calendar.Reminder(minutes=10, method='sms')&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New'; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;application = webapp.WSGIApplication([('/', Cleanendar)],&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; debug=True)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;def main():&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;run_wsgi_app(application)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;if __name__ == "__main__":&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;main()&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-2934251857540090041?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/2934251857540090041/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=2934251857540090041' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/2934251857540090041'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/2934251857540090041'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/09/okay-now-im-really-done.html' title='Okay, Now I&apos;m Really Done'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-6612605070586596169</id><published>2009-09-03T09:40:00.002-04:00</published><updated>2009-09-03T10:20:28.118-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='parking'/><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>Victory!</title><content type='html'>&lt;a href="http://www.zeepmobile.com/"&gt;Zeep&lt;/a&gt; did indeed do what I wanted, and I found a site that &lt;a href="http://www.aspspider.com/"&gt;hosts ASP.NET for free for 90 days&lt;/a&gt;, so I can now set my street cleaning days from my phone!&lt;br /&gt;&lt;br /&gt;So if I have it set for the South side of the street (reminding me to move the car on Tuesdays and Fridays), my calendar looks like this:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_Hil2fKhgQ50/Sp_DG5Lmp_I/AAAAAAAAAak/EL6_yZ3v1lE/s1600-h/south.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="Week from a Google calendar showing reminders to move the car on Tuesday and Friday" border="0" src="http://3.bp.blogspot.com/_Hil2fKhgQ50/Sp_DG5Lmp_I/AAAAAAAAAak/EL6_yZ3v1lE/s320/south.PNG" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;And then I go somewhere and when I come back I park on the North side. So I text "cleander n" to 88147, and the reminders jump to Mondays and Thursday, (excluding any day in the green holiday calendar):&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_Hil2fKhgQ50/Sp_DknHTYeI/AAAAAAAAAas/Q_nH3h0ccHM/s1600-h/north.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="Same week with reminders to move the car on Thursday, with none on Monday because of Labor Day" border="0" src="http://3.bp.blogspot.com/_Hil2fKhgQ50/Sp_DknHTYeI/AAAAAAAAAas/Q_nH3h0ccHM/s320/north.PNG" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Zeep recognizes my phone number and uses the "cleander" string to route everything following it to my ASP.NET page in an HTTP POST request.&lt;br /&gt;&lt;br /&gt;When the message gets to my site, the "n" or "s" populate the calendar with reminders on the appropriate days, an empty text clears the calendar completely (useful for going on vacation), and anything else will result in an error response.&lt;br /&gt;&lt;br /&gt;I've saved "cleander n" and "cleander s" as message templates on my phone, so now any time I park it's just a few quick clicks.&lt;br /&gt;&lt;br /&gt;Of course it will all fall apart in 90 days when my AspSpider account is deleted, but in the meantime maybe I'll be able to find some other free hosting option: all I need is to be able to run some sort of code in response to a POST request; the code is in C# right now, but it's short, and Google has APIs for Python and PHP and Java and whatnot as well, so I should be able to find something that works.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Update:&lt;/b&gt;&amp;nbsp;Okay, Google's &lt;a href="http://code.google.com/appengine/"&gt;AppEngine&lt;/a&gt; will totally do what I need. I'll try it out tonight. It's fun and amusing to cobble together a baroque solution like this all to accomplish something that would take no effort at all if stupid T-Mobile would let me run a program on my phone in the first place. but also sort of depressing that I have to.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Update Deuce:&lt;/b&gt;&amp;nbsp;This makes me feel a little better...apparently I'd have to do something similar on the Apple phone, as &lt;a href="http://www.google.com/search?q=iphone+calendar+api"&gt;they don't provide a calendar API&lt;/a&gt;. Android does, but &lt;a href="http://caustiq.esoteriq.org/nb/archives/2009/01/28/index.html"&gt;it's undocumented&lt;/a&gt;, though I would assume they make syncing with Google Calendars pretty easy so maybe it's less work. Palm &lt;a href="http://developer.palm.com/index.php?option=com_content&amp;amp;view=article&amp;amp;id=1751"&gt;gets it right&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-6612605070586596169?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/6612605070586596169/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=6612605070586596169' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/6612605070586596169'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/6612605070586596169'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/09/victory.html' title='Victory!'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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://3.bp.blogspot.com/_Hil2fKhgQ50/Sp_DG5Lmp_I/AAAAAAAAAak/EL6_yZ3v1lE/s72-c/south.PNG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6124489411137620600.post-6956814321322847474</id><published>2009-09-02T09:35:00.001-04:00</published><updated>2009-09-02T14:46:31.834-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='parking'/><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><title type='text'>Nerdery</title><content type='html'>So after being stymied (is that anti-Semitic?) in my &lt;a href="http://baseballn00b.blogspot.com/2009/06/boo.html"&gt;attempt to run an alternate-side parking reminder&lt;/a&gt; program on my phone, I finally decided to just write a desktop version:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_Hil2fKhgQ50/Sp5o7y7UETI/AAAAAAAAAac/o6orpKGF5So/s1600-h/sos.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="Window for selecting side of street" border="0" src="http://4.bp.blogspot.com/_Hil2fKhgQ50/Sp5o7y7UETI/AAAAAAAAAac/o6orpKGF5So/s320/sos.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;It sets up recurring events for the beginning and end of street cleaning hours, with an SMS reminder 10 minutes before, and excluding any days listed on a user-specified "holidays" calendar.&lt;br /&gt;&lt;br /&gt;So, almost fine. I'll still need to remember to run the program after I get home and park my car, whereas with the mobile application I could have done it right from the phone. But text reminders and not having to set alarms twice a day on street cleaning days gets me 80% of what I wanted.&lt;br /&gt;&lt;br /&gt;Something I definitely want to look into is the possibility of using an &lt;a href="http://www.zeepmobile.com/"&gt;SMS web gateway&lt;/a&gt;&amp;nbsp;to control a similar program running on a web server. I don't know if there are any free web hosts that allow you to run .NET or Python programs...you'd think that kind of thing would be &lt;i&gt;de riguer&lt;/i&gt; in this day'n'age, but you could fill a wikipedia with what I don't know about internets hostering.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Update:&lt;/b&gt;&amp;nbsp;I forgot to specify that when I wrote "sets up recurring events" that I meant it adds them to a Google calendar. That's where I got the idea to exclude holidays, because there's already a public calendar I subscribe to with all the street cleaning holidays. I also neglected to include the name of the project, which is "Cleanendar" and makes perfect sense.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-6956814321322847474?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/6956814321322847474/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=6956814321322847474' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/6956814321322847474'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/6956814321322847474'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/09/nerdery.html' title='Nerdery'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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/_Hil2fKhgQ50/Sp5o7y7UETI/AAAAAAAAAac/o6orpKGF5So/s72-c/sos.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6124489411137620600.post-573593248416514009</id><published>2009-08-31T12:06:00.000-04:00</published><updated>2009-08-31T12:06:32.768-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='dog'/><category scheme='http://www.blogger.com/atom/ns#' term='cats'/><category scheme='http://www.blogger.com/atom/ns#' term='wood'/><category scheme='http://www.blogger.com/atom/ns#' term='litter box'/><title type='text'>Dog-Proofing the Litter Box</title><content type='html'>I was googling around for info on keeping dogs out of the kitty litter a little while ago and ended up at a site that sells &lt;a href="http://www.pfprivy.com/models.html"&gt;covered cat boxes&lt;/a&gt; that dogs can't get into. They're sort of expensive, and a little more complicated that what we'd need since Prancis is big enough that he could be foiled by something pretty simple. Here's what I came up with:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_Hil2fKhgQ50/SpvweQG1STI/AAAAAAAAAZM/atLBCwBl-pE/s1600-h/litterbox.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="Computer model of litter box cover" border="0" src="http://4.bp.blogspot.com/_Hil2fKhgQ50/SpvweQG1STI/AAAAAAAAAZM/atLBCwBl-pE/s320/litterbox.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;It's not to scale, but there's the general idea...a little doorway for the cats and an interior wall to keep Prancis away from the goodies. (The litter box on the inside is a model I found on the web.)&lt;br /&gt;&lt;br /&gt;I got the wood cut to size at the wood store and put it together with drywall screws because they are the best.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_Hil2fKhgQ50/SpvyGw9PMEI/AAAAAAAAAZU/mc5EDLovV9w/s1600-h/100_1361.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="One side and top" border="0" src="http://4.bp.blogspot.com/_Hil2fKhgQ50/SpvyGw9PMEI/AAAAAAAAAZU/mc5EDLovV9w/s200/100_1361.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_Hil2fKhgQ50/SpvyJFe9gzI/AAAAAAAAAZc/2LvY-LG8Mg0/s1600-h/100_1362.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="Two sides and top" border="0" src="http://3.bp.blogspot.com/_Hil2fKhgQ50/SpvyJFe9gzI/AAAAAAAAAZc/2LvY-LG8Mg0/s200/100_1362.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_Hil2fKhgQ50/SpvyMm4YnVI/AAAAAAAAAZk/IS25yavBjEo/s1600-h/100_1363.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="Three sides and top" border="0" src="http://4.bp.blogspot.com/_Hil2fKhgQ50/SpvyMm4YnVI/AAAAAAAAAZk/IS25yavBjEo/s200/100_1363.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_Hil2fKhgQ50/SpvyO1XoQvI/AAAAAAAAAZs/eIQHNzSxUgU/s1600-h/100_1365.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="Four sides and top" border="0" src="http://1.bp.blogspot.com/_Hil2fKhgQ50/SpvyO1XoQvI/AAAAAAAAAZs/eIQHNzSxUgU/s200/100_1365.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;They wouldn't do curved cuts, so I had to get a jigsaw (racist).&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_Hil2fKhgQ50/Spvzur74PnI/AAAAAAAAAaU/Z8E2z3z6g2M/s1600-h/100_1424.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="Box with internal wall visible" border="0" src="http://4.bp.blogspot.com/_Hil2fKhgQ50/Spvzur74PnI/AAAAAAAAAaU/Z8E2z3z6g2M/s200/100_1424.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_Hil2fKhgQ50/SpvzWHOhBSI/AAAAAAAAAZ0/fmDGWIINZzM/s1600-h/100_1426.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="Doorway cut" border="0" src="http://3.bp.blogspot.com/_Hil2fKhgQ50/SpvzWHOhBSI/AAAAAAAAAZ0/fmDGWIINZzM/s200/100_1426.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;And here it is set up:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_Hil2fKhgQ50/SpvzorniDjI/AAAAAAAAAaM/cneOJOYDnkw/s1600-h/100_1433.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="Covered litter box" border="0" src="http://2.bp.blogspot.com/_Hil2fKhgQ50/SpvzorniDjI/AAAAAAAAAaM/cneOJOYDnkw/s320/100_1433.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;The Colonel (and hence Lucy) can get in:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_Hil2fKhgQ50/SpvzZuGRwsI/AAAAAAAAAZ8/ZuHuNo6C8p0/s1600-h/100_1438.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="The Colonel stepping into the box" border="0" src="http://1.bp.blogspot.com/_Hil2fKhgQ50/SpvzZuGRwsI/AAAAAAAAAZ8/ZuHuNo6C8p0/s320/100_1438.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;But Prancis cannot:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_Hil2fKhgQ50/SpvzdVgjc8I/AAAAAAAAAaE/to8ZuvJkhxA/s1600-h/100_1434.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="Prancis looks at the opening" border="0" src="http://2.bp.blogspot.com/_Hil2fKhgQ50/SpvzdVgjc8I/AAAAAAAAAaE/to8ZuvJkhxA/s320/100_1434.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;I still need to sand and paint it. The inside should be glossy white for ease of cleaning. Not sure what we'll do with the outside.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-573593248416514009?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/573593248416514009/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=573593248416514009' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/573593248416514009'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/573593248416514009'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/08/dog-proofing-litter-box.html' title='Dog-Proofing the Litter Box'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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/_Hil2fKhgQ50/SpvweQG1STI/AAAAAAAAAZM/atLBCwBl-pE/s72-c/litterbox.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6124489411137620600.post-8624390129198124406</id><published>2009-08-18T11:08:00.000-04:00</published><updated>2009-08-18T11:08:41.988-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='soccer'/><category scheme='http://www.blogger.com/atom/ns#' term='trains'/><category scheme='http://www.blogger.com/atom/ns#' term='red bulls'/><title type='text'>Red Bulls!</title><content type='html'>&lt;a href="http://www.eschatonblog.com/2009/08/supertrains-to-stadium.html"&gt;Via Atrios&lt;/a&gt;, one can now take &lt;a href="http://www.nj.com/news/index.ssf/2009/07/nj_officials_launch_rail_servi.html"&gt;NJ Transit to Giants stadium&lt;/a&gt;. I should go watch some soccer!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-8624390129198124406?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/8624390129198124406/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=8624390129198124406' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/8624390129198124406'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/8624390129198124406'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/08/red-bulls.html' title='Red Bulls!'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-6893324687488009694</id><published>2009-08-14T11:37:00.000-04:00</published><updated>2009-08-14T11:37:39.134-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video games'/><title type='text'>Nice</title><content type='html'>I did enjoy &lt;a href="http://xkcd.com/623/"&gt;this joke&lt;/a&gt;, despite it relying sort of overmuch on childhood nostalgia. But well done, in any case. Which also reminds me of &lt;a href="http://www.gamesetwatch.com/2009/08/pioneering_firstperson_rpg_mid.php"&gt;this game&lt;/a&gt; I read about the other day that sounds like it might be in sort of a similar vein. Being vague here so as to prevent spoiling the comic.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-6893324687488009694?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/6893324687488009694/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=6893324687488009694' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/6893324687488009694'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/6893324687488009694'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/08/nice.html' title='Nice'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-7893473234932972336</id><published>2009-08-11T15:45:00.000-04:00</published><updated>2009-08-11T15:45:33.048-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>What Digby Said</title><content type='html'>&lt;a href="http://digbysblog.blogspot.com/2009/08/surprise-by-digby-mark-karlin-writes-in.html"&gt;What Digby said&lt;/a&gt;:&lt;br /&gt;&lt;blockquote&gt;If these Democrats had spent less time gossiping about what Clinton really did with Monica or handwringing about Gore's "lies" and more time analyzing how those spectacles unfolded, they wouldn't be caught flat footed today. But they didn't because they blamed Clinton for being "weak" and Gore for being "inauthentic" as if those were the real problems. I'm sure it made them feel very confident that it couldn't happen to them.&lt;/blockquote&gt;Though actually I had been surprised with how well the Obama administration was doing in this regard, right up until the health insurance reform lunacy. My guess is that the economic crisis had media types genuinely unsure of the future, to the point where they were less willing to undermine a president who seemed to be trying to make things better, even if he was a Democrat. Now that we're on more familiar ground, it's back to business as usual.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-7893473234932972336?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/7893473234932972336/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=7893473234932972336' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/7893473234932972336'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/7893473234932972336'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/08/what-digby-said.html' title='What Digby Said'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-5004218400516516524</id><published>2009-08-02T12:42:00.000-04:00</published><updated>2009-08-02T12:42:56.638-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='baseball'/><category scheme='http://www.blogger.com/atom/ns#' term='rap'/><title type='text'>Baseball Sex</title><content type='html'>Man, it's been forever since I downloaded mix tapes...now Gucci Mane is everywhere? With OJ Da Juiceman?&lt;br /&gt;&lt;br /&gt;But&amp;nbsp;&lt;a href="http://www.youtube.com/watch?v=tYMXw3pNUJ0"&gt;Lil Wayne's "Baseball Sex"&lt;/a&gt;&amp;nbsp;was basically designed in a laboratory to appeal specifically to me.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-5004218400516516524?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/5004218400516516524/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=5004218400516516524' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/5004218400516516524'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/5004218400516516524'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/08/baseball-sex.html' title='Baseball Sex'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-531256861770809404</id><published>2009-07-27T15:19:00.001-04:00</published><updated>2009-07-27T15:19:00.328-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fascists'/><title type='text'>The Victim-Blaming Impulse</title><content type='html'>Excellent post from Amanda on &lt;a href="http://pandagon.net/index.php/site/the_cops_work_for_you/#When:18:39:00Z"&gt;abusive police&lt;/a&gt;. Especially this passage:&lt;br /&gt;&lt;blockquote&gt;Victim blamers are often also telling a story about how they personally will never be...arrested unfairly for doing something totally legal. To blame Gates for being stupid is to say, "&lt;b&gt;I&lt;/b&gt; would never get arrested for breaking into my house, because &lt;b&gt;I&lt;/b&gt; have the sort of self-preservation instincts that this man is clearly missing." People enjoy the illusion of having more mastery of the world than they do, because it makes them feel safe, but it also contributes to an atmosphere where victim-blaming can flourish, particularly in situations that are loaded with racial or gender politics.&lt;/blockquote&gt;I think this is hugely significant. And also tragic, because it's a reaction basically rooted in the recognition of just how horrible it would be to find oneself in a victim's situation, i.e., empathy. Ideally we'd be able to channel that initial identification with the victim toward something more constructive.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-531256861770809404?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/531256861770809404/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=531256861770809404' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/531256861770809404'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/531256861770809404'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/07/victim-blaming-impulse.html' title='The Victim-Blaming Impulse'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-2399405749460814051</id><published>2009-07-27T10:12:00.000-04:00</published><updated>2009-07-27T10:12:18.204-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='yankees'/><category scheme='http://www.blogger.com/atom/ns#' term='cyclones'/><title type='text'>Cyclones @ Yankees</title><content type='html'>Well we finally made it to the Ballpark at St George on Staten Island, which was as awesome as advertised. The seats along the third base side have the best views of the harbor. Crazy thunderstorms prompted two separate rain delays, neither of which were called when it was actually raining...very bush league, guys.&lt;br /&gt;&lt;br /&gt;Great game, though. The Yankees came back against an early Cyclones lead, but couldn't quite overcome the Brooklyn powerhouse. Wish it hadn't run so long that the ferries were on their hourly schedule by the end, but what can you do.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-2399405749460814051?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/2399405749460814051/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=2399405749460814051' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/2399405749460814051'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/2399405749460814051'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/07/cyclones-yankees.html' title='Cyclones @ Yankees'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-6021211490487509117</id><published>2009-07-24T13:17:00.000-04:00</published><updated>2009-07-24T13:17:00.235-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tickets'/><category scheme='http://www.blogger.com/atom/ns#' term='yankees'/><category scheme='http://www.blogger.com/atom/ns#' term='cyclones'/><title type='text'>Barcode Question</title><content type='html'>You know when you buy tickets to something, or check in for a flight, online, and they send you an Url you can click on to print your tickets out at home? And then you bring in the ticket and they scan the barcode? The tickets are full page deals, which seems like such a waste: can I print 2- or 4-to-a-page and still have them scan?&lt;br /&gt;&lt;br /&gt;May try a few mini tickets in Staten Island just to check.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-6021211490487509117?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/6021211490487509117/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=6021211490487509117' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/6021211490487509117'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/6021211490487509117'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/07/barcode-question.html' title='Barcode Question'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-6067456301180861145</id><published>2009-07-24T11:17:00.000-04:00</published><updated>2009-07-24T11:17:00.273-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>Setup Error</title><content type='html'>I have been working on this stupid bug like all week: one of my programs would occaisionally pop up a window entitled "Setup Error," with the contents "Failed to load resources from resource file. Please check your Setup" and then disappear when the window was dismissed: no exceptions to catch, no other clue as to what might be wrong.&lt;br /&gt;&lt;br /&gt;It's evidently a &lt;a href="http://www.google.com/search?q=&amp;quot;setup+error&amp;quot;+resources"&gt;symptom that can arise&lt;/a&gt; under several different circumstances: I found several people who saw it when causing an infinite recursion, or when running an application on a machine with certain third-party anti-virus software installed. I didn't find anything that sounded like my circumstances, so I record them here in hopes that frustrated searchers might be helped along.&lt;br /&gt;&lt;br /&gt;My setup and architecture were as follows:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;.NET Framework 1.1;&lt;/li&gt;&lt;li&gt;One UI event handler hides the main form and creates another form, displayed in its own Get/Translate/Dispatch message loop until it's closed;&lt;/li&gt;&lt;li&gt;The new form creates a &lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;System.Windows.Forms&lt;/span&gt; timer;&lt;/li&gt;&lt;li&gt;At which point, certain calls (the two I found were &lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;System.Threading.Thread.Start()&lt;/span&gt; and the overloaded &lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;System.Xml.XmlDocument.Load()&lt;/span&gt; that takes a URI string; the one taking a &lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;TextReader&lt;/span&gt; worked fine) cause the "Setup Error" when made from the timer elapsed event handler.&lt;/li&gt;&lt;/ul&gt;Also, the "Setup Error" only occurred when running a Release build, either from Windows or from Visual Studio "Without Debugging."&lt;br /&gt;&lt;br /&gt;I'm still not sure exactly what I was doing wrong, or whether I was encountering a bug in the framework. I refactored the code to get rid of my inner message loop and it seems to have fixed things, so I assume that the implementation of the forms timer somehow relies on its only being maintained by the built-in message loop...but in such a way that causes only certain other methods to fail? It's a mystery.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-6067456301180861145?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/6067456301180861145/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=6067456301180861145' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/6067456301180861145'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/6067456301180861145'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/07/setup-error.html' title='Setup Error'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-831214232787015942</id><published>2009-07-24T08:09:00.001-04:00</published><updated>2009-07-24T08:09:00.451-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fascists'/><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>Please Save Us from the Liberals</title><content type='html'>Some of the commentary around the Skip Gates arrest regarding how much benefit of the doubt to give the police officer has been pretty absurd. But Bob Somerby's hints towards &lt;a href="http://dailyhowler.com/dh072309.shtml"&gt;police apologia&lt;/a&gt; are positively risible:&lt;br /&gt;&lt;blockquote&gt;Gates is wealthy, affluent—famous, influential. Officer Crowley quite plainly is not—which forms part of a famous old American story.&lt;/blockquote&gt;As if Gates had demanded "do you know who I am?" of a surly counter clerk at Au Bon Pain, rather than the armed officer of the law standing in his foyer.&lt;br /&gt;&lt;br /&gt;Teasing his upcoming Friday post, Somerby opts for verbal irony:&lt;br /&gt;&lt;blockquote&gt;Guess what, kids? Upper-class people, of whatever race, often have trouble respecting working-class people.&lt;/blockquote&gt;And cops "often have trouble" acknowledging the rights of (let alone respecting) anybody without a badge. And I will grant in a heartbeat that we wouldn't have heard word one about this injustice had the victim not been a Harvard professor, but that's an argument for &lt;b&gt;more &lt;/b&gt;scrutiny of law enforcement, not less.&lt;br /&gt;&lt;br /&gt;And then this:&lt;br /&gt;&lt;blockquote&gt;(Persistently, this has harmed progressive interests.)&lt;/blockquote&gt;Again, this is part of the teaser for Somerby's Friday post, so I can't really say exactly how his argument for this point will go. But from the content of this post, it sure looks like it might be along the lines of clueless limousine liberals who don't have time for the concerns of the working class. Which is normally the kind of nonsense that Somerby is so good at taking apart, so it's especially annoying to see inklings of it here.&lt;br /&gt;&lt;br /&gt;A reminder: Democrats, and liberals, do great with the working class. It's those of the suburban &lt;b&gt;middle&lt;/b&gt; class who like to defend their Republican voting habits by claiming that progressives are out-of-touch elitist snobs; the voters who seek out "safe neighborhoods" with "good schools" and worry about "personal responsibility," and vote Republican because John Kerry looks French. Those people are out of Democrats' reach, for what should be obvious reasons.&lt;br /&gt;&lt;br /&gt;One set of people that liberals &lt;b&gt;could&lt;/b&gt;&amp;nbsp;do better with are those on the left who see things like Democrats turning a blind eye towards police thuggery as a reason to vote third-party or stay home. Somerby is an all likelihood correct that "progressive interests" don't have anything to do with resisting abuse of authority; to which I say, to hell with progressive interests, and to hell with liberals who side with the bullying cop over the rich professor because it will play in Peoria.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-831214232787015942?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/831214232787015942/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=831214232787015942' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/831214232787015942'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/831214232787015942'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/07/please-save-us-from-liberals.html' title='Please Save Us from the Liberals'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-7134164085154954650</id><published>2009-07-23T17:17:00.000-04:00</published><updated>2009-07-23T17:28:39.760-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cyclones'/><category scheme='http://www.blogger.com/atom/ns#' term='rap'/><title type='text'>Having not been to a Cyclones game (yet!) this summer...</title><content type='html'>...I have no idea whether, or in what capacity, the team may have made use of Jay-Z's &lt;a href="http://www.youtube.com/watch?v=QftcJtvLr8g"&gt;"Brooklyn (Go Hard)"&lt;/a&gt;, but now that I'm thinking about it, it seems like an ideal stadium chant.&lt;br /&gt;&lt;br /&gt;Of course immediately you run into the problem of, with the "Brooklyn, we go hard" chant and then "Brooklyn" spelled out over it, is doing that as a group in an audience setting really something that is rhythmically within the grasp of your average baseball fan?&lt;br /&gt;&lt;br /&gt;And then of course I realized that minor league baseball was probably not the sport for which Jay-Z intended the song to function as a cheer, and I looked up the lyrics and he even mentions how he's going to "bring the Nets" in a verse of the song.&lt;br /&gt;&lt;br /&gt;So I'm an idiot basically, but also I hope they've been playing the song at KeySpan.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-7134164085154954650?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/7134164085154954650/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=7134164085154954650' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/7134164085154954650'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/7134164085154954650'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/07/having-not-been-to-cyclones-game-yet.html' title='Having not been to a Cyclones game (yet!) this summer...'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-1371113984269053468</id><published>2009-07-21T10:11:00.000-04:00</published><updated>2009-07-21T10:14:15.301-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='economics'/><category scheme='http://www.blogger.com/atom/ns#' term='fascists'/><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>The Capitalist Solution to Health Care: More Money for Capitalsts</title><content type='html'>The apologists for capitalism really are &lt;a href="http://digbysblog.blogspot.com/2009/07/who-says-right-is-out-of-ideas-by-digby.html"&gt;beyond parody&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I will quibble with digby's implication that this has anything to do with a misplaced faith in markets &lt;i&gt;per se&lt;/i&gt;; there's nothing inherently absurd about insurance insurance (and it sort of exists in, e.g., auto policies that include coverage for collisions with uninsured drivers), and if there were sufficient demand for those kinds of policies then insurance companies would offer them.&lt;br /&gt;&lt;br /&gt;That's not good enough for the likes of Cato, however, who aren't happy unless the very maximum amount of wealth is being extracted from the populace and funneled into corporate coffers. The crisis of the medically at-risk being insufficiently covered by rapacious insurance companies becomes the opportunity for those selfsame insurers to squeeze out one more drop of blood. Such is the nature of capitalism: markets are a means to an end, but it is the end—the continued ascendancy of the capitalist class—that is paramount, and when markets aren't getting the job done they are dropped to the side without a second thought.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-1371113984269053468?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/1371113984269053468/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=1371113984269053468' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1371113984269053468'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1371113984269053468'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/07/capitalist-solution-to-health-care-more.html' title='The Capitalist Solution to Health Care: More Money for Capitalsts'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-7674023572768815297</id><published>2009-07-15T17:19:00.000-04:00</published><updated>2009-07-15T17:19:00.357-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='dog'/><category scheme='http://www.blogger.com/atom/ns#' term='video games'/><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><title type='text'>My Afternoon on the Internet</title><content type='html'>I have a recurring idea that it would be sweet to make some sort of 2D platform type game but with &lt;b&gt;really awesome character animation&lt;/b&gt;, like if not actually rotoscoped then approaching rotoscope-caliber.&lt;br /&gt;&lt;br /&gt;Sometimes I even start trying to animate a walk cycle before I remember that making awesome character animation is actually &lt;b&gt;really difficult&lt;/b&gt;, and if you can pull it off then it is pretty much enough to carry a &lt;a href="http://en.wikipedia.org/wiki/Prince_of_Persia_(1989_video_game)"&gt;hit&lt;/a&gt; &lt;a href="http://www.thewayoftheninja.org/"&gt;game&lt;/a&gt;. I have literally wanted to do something along these lines since I was making crappy games on the Mac using &lt;a href="http://www.lysator.liu.se/~ingemar/sat.html"&gt;Ingemar's Sprite Animation Toolkit&lt;/a&gt;. And it haunts me yet!&lt;br /&gt;&lt;br /&gt;The latest incarnation of this lunacy was an idea I had, while walking the dog, that there should be a game where the player is a dog, but only it's &lt;b&gt;animated totally awesome&lt;/b&gt;&amp;nbsp;and you can sit down and gallop and stuff and it looks like the movements of an actual dog, albeit 2D and lo-res. Amazing right!&lt;br /&gt;&lt;br /&gt;And actually there is a &lt;a href="http://en.wikipedia.org/wiki/Dog's_Life"&gt;game where you're a dog&lt;/a&gt;, but it's 3D and for the Playstation Deuce and the character animation is not even that good. (No disrespect, the animators did a great job, but it looks like they didn't use motion capture, so it's both not quite realistic and damned impressive that it looks as realistic as it does.)&lt;br /&gt;&lt;br /&gt;And &lt;b&gt;thus&lt;/b&gt;&amp;nbsp;did I find myself searching for visual references regarding the canine walk cycle, which led me to &lt;a href="http://cal.vet.upenn.edu/projects/saortho/chapter_91/91mast.htm#normals"&gt;this link&lt;/a&gt;, and &lt;b&gt;damn&lt;/b&gt;. That page is huge! And loaded with diagrams! And very heavily footnoted!&lt;br /&gt;&lt;br /&gt;And then I scrolt up to the top of the page and it was chapter &lt;b&gt;ninety-one&lt;/b&gt;! Of what?!? A textbook with the &lt;a href="http://cal.vet.upenn.edu/projects/saortho/index.html"&gt;best cover graphic ever&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-7674023572768815297?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/7674023572768815297/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=7674023572768815297' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/7674023572768815297'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/7674023572768815297'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/07/my-afternoon-on-internet.html' title='My Afternoon on the Internet'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-1748355052160777308</id><published>2009-07-15T07:28:00.000-04:00</published><updated>2009-07-15T07:28:38.649-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><title type='text'>If only Netflix had been around during college</title><content type='html'>Just remembering all those all-night bull sessions spent debating which &lt;i&gt;Meatballs&lt;/i&gt;&amp;nbsp;sequel was most Lynchian.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_Hil2fKhgQ50/Sl29Dye3wGI/AAAAAAAAAYs/5zJGO4Ragnw/s1600-h/eraserhead.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="Netflix recommendations window suggesting that 'Meatballs 4' and season one of 'Coach' are similar to 'Eraserhead'" border="0" src="http://2.bp.blogspot.com/_Hil2fKhgQ50/Sl29Dye3wGI/AAAAAAAAAYs/5zJGO4Ragnw/s400/eraserhead.png" /&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/6124489411137620600-1748355052160777308?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/1748355052160777308/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=1748355052160777308' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1748355052160777308'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1748355052160777308'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/07/if-only-netflix-had-been-around-during.html' title='If only Netflix had been around during college'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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://2.bp.blogspot.com/_Hil2fKhgQ50/Sl29Dye3wGI/AAAAAAAAAYs/5zJGO4Ragnw/s72-c/eraserhead.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6124489411137620600.post-1230896790868843850</id><published>2009-07-14T08:23:00.001-04:00</published><updated>2009-07-14T08:43:09.398-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>Personal Virtue as a Poor Substitute for Political Change</title><content type='html'>&lt;a href="http://www.justseeds.org/blog/2009/07/we_cant_buy_our_way_to_change.html"&gt;Via&lt;/a&gt; the &lt;i&gt;Just Seeds&lt;/i&gt;&amp;nbsp;blog, a great article summing up &lt;a href="http://www.orionmagazine.org/index.php/articles/article/4801/"&gt;the flaws inherent in the personal virtue model of social change&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Not a new idea by any means, but one that I've always found interesting and thought-provoking. I've always liked &lt;a href="http://www.nytimes.com/2003/11/02/magazine/02QUESTIONS.html"&gt;Noam Chomsky's succinct rejoinder&lt;/a&gt; along these lines:&lt;br /&gt;&lt;blockquote&gt;Q: [H]ow can you justify living a bourgeois life and driving a nice car?&lt;br /&gt;&lt;br /&gt;A: ... When I go to visit peasants in southern Colombia, they don't want me to give up my car. They want me to help them.&lt;/blockquote&gt;Just so. It's an obvious point, but so easy to lose track of in our culture, even once you're aware of the dynamic at work.&lt;br /&gt;&lt;br /&gt;And it really is a distraction, as &lt;a href="http://www.feministing.com/archives/015463.html"&gt;teeth-gnashing over one's contribution to gentrification&lt;/a&gt;, for example, ends up being "white guilt" of the most pointless sort: you either waste your time twisting yourself into knots, trying to explain how you're actually &lt;b&gt;not&lt;/b&gt;&amp;nbsp;part of the problem; or you shrug your shoulders and resign yourself to being an irredeemable oppressor, and thus liberated from any responsibility to change the system.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-1230896790868843850?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/1230896790868843850/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=1230896790868843850' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1230896790868843850'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/1230896790868843850'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/07/via-just-seeds-great-article-summing-up.html' title='Personal Virtue as a Poor Substitute for Political Change'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-5731659337417002985</id><published>2009-07-13T22:18:00.000-04:00</published><updated>2009-07-13T22:18:52.333-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='dog'/><title type='text'>Dog Walk Conversation</title><content type='html'>"How much did you pay for that dog?"&lt;br /&gt;&lt;br /&gt;"He's from a shelter, so nothing."&lt;br /&gt;&lt;br /&gt;"What's his name, German shepherd?"&lt;br /&gt;&lt;br /&gt;"Uh, it's Prancy."&lt;br /&gt;&lt;br /&gt;"Okay, Fancy. Don't bite me."&lt;br /&gt;&lt;br /&gt;"Oh, he doesn't bite."&lt;br /&gt;&lt;br /&gt;"Yes he does."&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-5731659337417002985?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/5731659337417002985/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=5731659337417002985' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/5731659337417002985'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/5731659337417002985'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/07/dog-walk-conversation.html' title='Dog Walk Conversation'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-8260166034118312711</id><published>2009-07-13T10:32:00.000-04:00</published><updated>2009-07-13T10:32:20.227-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mets'/><category scheme='http://www.blogger.com/atom/ns#' term='reds'/><category scheme='http://www.blogger.com/atom/ns#' term='santana'/><category scheme='http://www.blogger.com/atom/ns#' term='food'/><title type='text'>Calorie Labeling</title><content type='html'>Ezra has an anecdote about how a restaurant labeling its menu items with calorie counts would have &lt;a href="http://voices.washingtonpost.com/ezra-klein/2009/07/calorie_labling_in_action.html"&gt;changed his lunch order&lt;/a&gt;. At the Mets game Saturdy we noticed that the roving food vendors now wear buttons advertising the calorie counts of their wares. It was a welcome bit of information, and did lead one of our number away from the fallacious "not sure if I could eat a whole hot dog, maybe just a soft pretzel" line of thinking.&lt;br /&gt;&lt;br /&gt;The game, by the way, was great, and we all had a blast on our first visits to Citi Field. Santana was amazing, and though for the most of the game he didn't leave the rest of the Mets defense with much to do (probably a good thing), we did get to see a double play in the latter innings. And though rain threatened from about the seventh inning stretch on, it held off until we were on the way home.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-8260166034118312711?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/8260166034118312711/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=8260166034118312711' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/8260166034118312711'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/8260166034118312711'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/07/calorie-labeling.html' title='Calorie Labeling'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-6990620860613381518</id><published>2009-06-26T16:45:00.000-04:00</published><updated>2009-06-26T16:45:51.095-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><title type='text'>Boo</title><content type='html'>The program I wanted to write for my phone was simple: I wanted to be able to select which side of the street my car was parked on, and have it add alarms to the calendar reminding me to move my car for street cleaning on the appropriate days of the coming week.&lt;br /&gt;&lt;br /&gt;It was easy! And it runs perfectly in the Nokia emulator, but when I tried running it on my actual phone...SecurityException!&lt;br /&gt;&lt;br /&gt;And basically I'm screwed, as it seems &lt;a href="http://blogs.forum.nokia.com/index.php?op=ViewArticle&amp;amp;blogId=32927&amp;amp;articleId=379&amp;amp;"&gt;T-Mobile locks everything down&lt;/a&gt;...no "third party" access to user data (such as the calendar) at all.&lt;br /&gt;&lt;br /&gt;Of course, I'm not even a "third party," I'm the &lt;b&gt;second&lt;/b&gt;&amp;nbsp;party, the owner of the phone. How annoying.&lt;br /&gt;&lt;br /&gt;Needless to say, my next telephone will run Lunix.&lt;br /&gt;&lt;br /&gt;And my code I hereby release into the public domain:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;package street;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;import java.util.*;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;import javax.microedition.midlet.*;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;import javax.microedition.lcdui.*;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;import javax.microedition.pim.*;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;/**&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;* @author Travis&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;*/&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;public class StreetCleaning extends MIDlet implements ItemStateListener {&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;public void startApp() {&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Form form = new Form("Street Cleaning");&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;options = new ChoiceGroup(null, Choice.EXCLUSIVE);&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;options.append("North (Mon/Thu)", null);&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;options.append("South (Tue/Fri)", null);&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;options.append("None", null);&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;form.append(options);&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;form.setItemStateListener(this);&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Display.getDisplay(this).setCurrent(form);&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;ChoiceGroup options;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;static final String summary = "Move car";&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;public void itemStateChanged(Item item) {&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;PIM pim = PIM.getInstance();&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;String reminders = pim.listPIMLists(PIM.EVENT_LIST)[4];&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Calendar today = Calendar.getInstance();&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;try {&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;EventList events = (EventList)pim.openPIMList(PIM.EVENT_LIST, PIM.READ_WRITE, reminders);&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// get rid of existing notices&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;for (Enumeration items = events.items(); items.hasMoreElements(); ) {&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Event event = (Event)items.nextElement();&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (event.getString(Event.SUMMARY, PIMItem.ATTR_NONE).equals(summary))&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;events.removeEvent(event);&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// select days of week based on side of street&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;int[] days;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;int side = options.getSelectedIndex();&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (side == 0) {&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;days = new int[2];&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;days[0] = Calendar.MONDAY;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;days[1] = Calendar.THURSDAY;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;else if (side == 1) {&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;days = new int[2];&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;days[0] = Calendar.TUESDAY;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;days[1] = Calendar.FRIDAY;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;else&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;days = new int[0];&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;for (int i = 0; i &amp;lt; days.length; i++) {&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// set alarms for next coming weekday&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;int apart = days[i] - today.get(Calendar.DAY_OF_WEEK);&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (apart &amp;lt; 0 ||&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;apart == 0 &amp;amp;&amp;amp; today.get(Calendar.HOUR_OF_DAY) &amp;gt; 10)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;apart += 7;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// first event&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Calendar day = Calendar.getInstance();&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;day.setTime(new Date(day.getTime().getTime() + apart * 24 * 3600 * 1000));&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;day.set(Calendar.HOUR_OF_DAY, 8);&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;day.set(Calendar.MINUTE, 20);&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;day.set(Calendar.SECOND, 0);&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;day.set(Calendar.MILLISECOND, 0);&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Event event = events.createEvent();&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;event.addDate(Event.START, PIMItem.ATTR_NONE, day.getTime().getTime());&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;event.addInt(Event.ALARM, PIMItem.ATTR_NONE, 1);&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;event.addString(Event.SUMMARY, PIMItem.ATTR_NONE, summary);&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;events.importEvent(event).commit();&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;// second event&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;day.set(Calendar.HOUR_OF_DAY, 9);&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;day.set(Calendar.MINUTE, 50);&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;event = events.createEvent();&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;event.addDate(Event.START, PIMItem.ATTR_NONE, day.getTime().getTime());&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;event.addInt(Event.ALARM, PIMItem.ATTR_NONE, 1);&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;event.addString(Event.SUMMARY, PIMItem.ATTR_NONE, summary);&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;events.importEvent(event).commit();&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;catch (PIMException ex) {&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Display.getDisplay(this).setCurrent(new Alert(ex.getMessage()));&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;destroyApp(false);&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;notifyDestroyed();&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;public void pauseApp() {&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;public void destroyApp(boolean unconditional) {&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;span style="font-size: small;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-6990620860613381518?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/6990620860613381518/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=6990620860613381518' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/6990620860613381518'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/6990620860613381518'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/06/boo.html' title='Boo'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-6324472557477467738</id><published>2009-06-26T08:07:00.001-04:00</published><updated>2009-06-26T16:47:23.706-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><title type='text'>New Level of Nerddom</title><content type='html'>Somehow both &lt;a href="http://twitter.com/party_boys"&gt;Andrew and Dmitry&lt;/a&gt; were under the impression that, back when Andrew and Jay and I all had Palms III, I had actually written software for it to track my expenses. I did have a program like that, but I sure didn't write it.&lt;br /&gt;&lt;br /&gt;I can't remember if I ever actually tried setting up a Palm development environment; at the time my only computers were a beige Mac and a couple PC's running Slackware, so it's quite possible there wasn't anything available, or available for free. I am pretty sure I had a Palm simulator for the Mac, but I think I only used it to play Parking Lot.&lt;br /&gt;&lt;br /&gt;In any case, I just downloaded NetBeans and the Nokia S40 platform SDK. :( I want to write a program that sets my alarm clock for street cleaning. :((((((((((((((&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-6324472557477467738?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/6324472557477467738/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=6324472557477467738' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/6324472557477467738'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/6324472557477467738'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/06/new-level-of-nerddom.html' title='New Level of Nerddom'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-4531849294389852589</id><published>2009-06-23T09:23:00.000-04:00</published><updated>2009-06-23T09:23:40.444-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video games'/><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><title type='text'>Gaming System</title><content type='html'>&lt;span style="font-family: Arial; font-size: small;"&gt;&lt;span class="Apple-style-span" style="font-size: 13px;"&gt;Two single-button controllers and a 4-color, 3x1 display. Looks &lt;a href="http://www.gamesetwatch.com/2009/06/thumb_stadium_eight_games_usin.php"&gt;pretty fun&lt;/a&gt;!&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-4531849294389852589?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/4531849294389852589/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=4531849294389852589' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/4531849294389852589'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/4531849294389852589'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/06/gaming-system.html' title='Gaming System'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-4649469639197593049</id><published>2009-06-19T11:31:00.000-04:00</published><updated>2009-06-19T11:31:54.205-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><title type='text'>Herack Oboover</title><content type='html'>I have not yet gotten to the &lt;a href="http://harpers.org/archive/2009/06/hbc-90005235"&gt;Obama-as-Hoover article&lt;/a&gt; in the current &lt;i&gt;Harper's&lt;/i&gt;&amp;nbsp;(I am weirdly fastidious about reading each issue completely, and in strict order, though on&amp;nbsp;occasion&amp;nbsp;I do read "Findings" without having finished the crossword), but this sounds very accurate to me:&lt;br /&gt;&lt;blockquote&gt;Obama’s failure would be unthinkable. And yet the best indications now are that he will fail, because he will be unable—indeed he will refuse—to seize the radical moment at hand.&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-4649469639197593049?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/4649469639197593049/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=4649469639197593049' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/4649469639197593049'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/4649469639197593049'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/06/herack-oboover.html' title='Herack Oboover'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-770822123649240834</id><published>2009-06-17T08:03:00.000-04:00</published><updated>2009-06-17T08:03:37.434-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='3D'/><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><title type='text'>Nerdiest Thing Ever?</title><content type='html'>&lt;a href="http://retinalrivalry.blogspot.com/2009/06/frak-yes.html"&gt;3D slideshow&lt;/a&gt; of a concert of music from &lt;i&gt;Battlestar Galactica&lt;/i&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-770822123649240834?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/770822123649240834/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=770822123649240834' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/770822123649240834'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/770822123649240834'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/06/nerdiest-thing-ever.html' title='Nerdiest Thing Ever?'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-926191266884254510</id><published>2009-06-15T13:36:00.000-04:00</published><updated>2009-06-15T13:36:33.842-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><category scheme='http://www.blogger.com/atom/ns#' term='bikes'/><title type='text'>Homemade Cargo Bike</title><content type='html'>Saw this just now walking the dog:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_Hil2fKhgQ50/SjaE7SQ51AI/AAAAAAAAAYk/QsS-wpr8MOk/s1600-h/Image023.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="Cargo bike made with a shopping cart" border="0" src="http://3.bp.blogspot.com/_Hil2fKhgQ50/SjaE7SQ51AI/AAAAAAAAAYk/QsS-wpr8MOk/s400/Image023.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;It's a slightly modified shopping cart strapped to the front fork with hose clamps. The two front wheels are each attached to forks as well, also connected to the basket with hose clamps. I didn't think to inspect the headset, but I guess there must be a stem in there to hold it together, but with no bars other than the handle of the shopping cart.&lt;br /&gt;&lt;br /&gt;So not only useful, but also welding-free and completely reversible.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-926191266884254510?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/926191266884254510/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=926191266884254510' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/926191266884254510'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/926191266884254510'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/06/homemade-cargo-bike.html' title='Homemade Cargo Bike'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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://3.bp.blogspot.com/_Hil2fKhgQ50/SjaE7SQ51AI/AAAAAAAAAYk/QsS-wpr8MOk/s72-c/Image023.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6124489411137620600.post-2953843209719672806</id><published>2009-05-29T08:53:00.001-04:00</published><updated>2009-05-29T08:53:43.042-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nerds'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>All Side Effect</title><content type='html'>Pretty sure this fails to conform to the intended use of properties:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: blue;"&gt;int&lt;/span&gt; _alarmEventCount = 0;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style="color: blue;"&gt;public int&lt;/span&gt; alarm { &lt;span style="color: blue;"&gt;set&lt;/span&gt; { _alarmEventCount += 1; } }&lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;Not my code, but by a coworker who is good, so I'm sure there's a logical reason how it came about.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-2953843209719672806?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/2953843209719672806/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=2953843209719672806' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/2953843209719672806'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/2953843209719672806'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/05/all-side-effect.html' title='All Side Effect'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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-6124489411137620600.post-4082192154249226877</id><published>2009-05-28T08:16:00.000-04:00</published><updated>2009-05-28T08:16:04.864-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video games'/><title type='text'>Hair Clipping Issues</title><content type='html'>This is stupid. There is an ultimate fighting video game coming out that &lt;a href="http://www.gamesetwatch.com/2009/05/ufc_2009_cuts_fighter_due_to_h.php"&gt;cut a character&lt;/a&gt; because they couldn't figure out how to render his hair. Which, fine, maybe if you didn't take something like hair physics into account early in the project, then you get to the character models and can't figure out a way to make it look non-stupid.&lt;br /&gt;&lt;br /&gt;But then they tried to get the actual guy to cut his hair, so they could give the character model short hair. Why not just give the character model a haircut? People would understand.&lt;br /&gt;&lt;br /&gt;And up until that point I'm giving the game studio the benefit of the doubt, because I can understand how that could be a kind of unforeseen wrench in the works for which there's not an obviously ideal solution. But it turns out their game also can't show people fighting in a left-handed stance...so they show everyone as right-handed! Seriously that is like making a baseball game and realizing your engine can't handle bats so they just render everyone with golf clubs.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6124489411137620600-4082192154249226877?l=baseballn00b.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://baseballn00b.blogspot.com/feeds/4082192154249226877/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6124489411137620600&amp;postID=4082192154249226877' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/4082192154249226877'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6124489411137620600/posts/default/4082192154249226877'/><link rel='alternate' type='text/html' href='http://baseballn00b.blogspot.com/2009/05/hair-clipping-issues.html' title='Hair Clipping Issues'/><author><name>tps12</name><uri>http://www.blogger.com/profile/17835159324328838489</uri><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></feed>
