<?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:blogger='http://schemas.google.com/blogger/2008' 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-6050379447656822479</id><updated>2018-09-17T06:13:03.631-04:00</updated><category term="Google+"/><category term="appengine hosting"/><category term="email rfc validation dumb gmail filtering"/><title type='text'>Bogo&#39;s Blog</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://blog.jamesbogosian.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default'/><link rel='alternate' type='text/html' href='http://blog.jamesbogosian.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default?start-index=26&amp;max-results=25'/><author><name>Bogo</name><uri>http://www.blogger.com/profile/13442129953284381926</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>36</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6050379447656822479.post-7757166006121338539</id><published>2011-08-24T10:59:00.004-04:00</published><updated>2011-08-29T13:57:03.124-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Google+"/><title type='text'>Translating Google+ Posts</title><content type='html'>I&#39;ve noticed a few people complaining that it&#39;s a pain to translate posts they see in Google+. I made a modified version of the Google Translate Bookmarklet that you can use. Drag &lt;a href=&quot;javascript:var t=((window.getSelection&amp;&amp;window.getSelection())||(document.getSelection&amp;&amp;document.getSelection())||(document.selection&amp;&amp;document.selection.createRange&amp;&amp;document.selection.createRange().text));var e=(document.charset||document.characterSet);if(t!=&#39;&#39;){window.open(&#39;http://translate.google.com/?text=&#39;+t+&#39;&amp;hl=en&amp;langpair=auto|en&amp;tbb=1&amp;ie=&#39;+e);}&quot;&gt;this link&lt;/a&gt; to your browser bar, highlight a block of text and click the bookmarklet. It will open a new window to a translate page auto-detecting the language and translated into English. If you&#39;d like another language you can tweak the parameter in the url in the bookmarklet.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Full contents of the bookmarklet for easier reading:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;javascript:var t=((window.getSelection&amp;amp;&amp;amp;window.getSelection())||(document.getSelection&amp;amp;&amp;amp;document.getSelection())||(document.selection&amp;amp;&amp;amp;document.selection.createRange&amp;amp;&amp;amp;document.selection.createRange().text));var e=(document.charset||document.characterSet);if(t!=&#39;&#39;){window.open(&#39;http://translate.google.com/?text=&#39;+t+&#39;&amp;amp;hl=en&amp;amp;langpair=auto|en&amp;amp;tbb=1&amp;amp;ie=&#39;+e);}&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Update&lt;/b&gt;: There&#39;s now an &lt;a href=&quot;https://chrome.google.com/webstore/detail/jfppgkomfopklagggkjiaddgndkgopgl&quot;&gt;official extension&lt;/a&gt; that works on individual posts.&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jamesbogosian.com/feeds/7757166006121338539/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6050379447656822479&amp;postID=7757166006121338539' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/7757166006121338539'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/7757166006121338539'/><link rel='alternate' type='text/html' href='http://blog.jamesbogosian.com/2011/08/translating-google-posts.html' title='Translating Google+ Posts'/><author><name>Bogo</name><uri>http://www.blogger.com/profile/13442129953284381926</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6050379447656822479.post-7857949277601381219</id><published>2011-05-23T12:23:00.000-04:00</published><updated>2011-05-23T12:23:00.227-04:00</updated><title type='text'>Remember how significant you are.</title><content type='html'>&lt;p&gt;Whenever you&#39;ve got a big problem, take a look at this image. Reflect on just how significant it is in the grand scheme of things.&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;http://1.bp.blogspot.com/-DgRlGZte5zw/Tdm3aAj5DyI/AAAAAAAAkdk/vmoJetDkPUU/s1600/HkWEf.jpg&quot; onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot;&gt;&lt;img style=&quot;margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 400px; height: 200px;&quot; src=&quot;http://1.bp.blogspot.com/-DgRlGZte5zw/Tdm3aAj5DyI/AAAAAAAAkdk/vmoJetDkPUU/s400/HkWEf.jpg&quot; border=&quot;0&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5609716468321685282&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Original: http://imgur.com/HkWEf&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jamesbogosian.com/feeds/7857949277601381219/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6050379447656822479&amp;postID=7857949277601381219' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/7857949277601381219'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/7857949277601381219'/><link rel='alternate' type='text/html' href='http://blog.jamesbogosian.com/2011/05/remember-how-significant-you-are.html' title='Remember how significant you are.'/><author><name>Bogo</name><uri>http://www.blogger.com/profile/13442129953284381926</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-DgRlGZte5zw/Tdm3aAj5DyI/AAAAAAAAkdk/vmoJetDkPUU/s72-c/HkWEf.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6050379447656822479.post-4661549442586489013</id><published>2011-05-06T13:20:00.000-04:00</published><updated>2011-05-06T13:20:00.793-04:00</updated><title type='text'>Still waiting for Diablo III</title><content type='html'>&lt;div&gt;I was going through my older blog posts today and I noticed something. It&#39;s been &lt;a href=&quot;http://blog.jamesbogosian.com/2008/06/diablo-iii.html&quot;&gt;almost three years since I posted&lt;/a&gt; that there will be a Mac version of Diablo III when it comes out for Windows, and there&#39;s &lt;a href=&quot;http://www.tomshardware.com/news/Diablo-3-Home-Stretch-Action-RPG-PC-Gaming-Jay-Wilson,12665.html&quot;&gt;still no official release date&lt;/a&gt;. Yikes.&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jamesbogosian.com/feeds/4661549442586489013/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6050379447656822479&amp;postID=4661549442586489013' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/4661549442586489013'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/4661549442586489013'/><link rel='alternate' type='text/html' href='http://blog.jamesbogosian.com/2011/05/still-waiting-for-diablo-iii.html' title='Still waiting for Diablo III'/><author><name>Bogo</name><uri>http://www.blogger.com/profile/13442129953284381926</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6050379447656822479.post-7775770628350756111</id><published>2011-05-04T11:38:00.001-04:00</published><updated>2011-05-22T21:29:38.763-04:00</updated><title type='text'>Laptop searches at the border</title><content type='html'>I know this is a pretty old issue but it&#39;s one that has bugged me since I first heard about it. The US Department of Homeland Security apparently has the right to &lt;a href=&quot;http://news.cnet.com/8301-13578_3-10004646-38.html&quot;&gt;seize your laptop&lt;/a&gt; or other electronics that are capable of carrying data when crossing the border. They can then take a full copy of your hard-drive. This invasion of privacy is all being done under the guise of protecting the country from criminals and terrorists.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The problem is that any moderately competent criminal or terrorist knows this is happening and won&#39;t carry their data with them now. It&#39;s incredibly easy to take your data, encrypt it, and make it accessible from any machine with a connection to the internet. Once they&#39;ve crossed the border they can grab a copy of the data and decrypt it. Even more so the data can be encrypted and &lt;a href=&quot;http://en.wikipedia.org/wiki/Steganography&quot;&gt;hidden in plain-sight&lt;/a&gt; for later access.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I assume the government knows this. Assuming this, why is the government doing it? Is it a dragnet for the stupid criminals, ones who pose no real threat to us because they&#39;re dumb enough to be caught by these tactics?&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jamesbogosian.com/feeds/7775770628350756111/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6050379447656822479&amp;postID=7775770628350756111' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/7775770628350756111'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/7775770628350756111'/><link rel='alternate' type='text/html' href='http://blog.jamesbogosian.com/2011/05/laptop-searches-at-border.html' title='Laptop searches at the border'/><author><name>Bogo</name><uri>http://www.blogger.com/profile/13442129953284381926</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6050379447656822479.post-4826184474860552892</id><published>2011-05-02T11:32:00.001-04:00</published><updated>2011-05-02T11:32:01.221-04:00</updated><title type='text'>Transferred my Domains to Hover</title><content type='html'>After the &lt;a href=&quot;http://mashable.com/2011/03/31/godaddy-ceo-elephant/&quot;&gt;recent kerfuffle&lt;/a&gt; over GoDaddy&#39;s CEO going elephant hunting I decided to look around for another registrar for my domains. I just happened to be listening to an episode of &lt;a href=&quot;http://twit.tv/twig&quot;&gt;TWiG&lt;/a&gt; (or &lt;a href=&quot;http://twit.tv/twit&quot;&gt;TWiT&lt;/a&gt;, I forget) and I caught an ad for &lt;a href=&quot;http://hover.com/&quot;&gt;hover.com&lt;/a&gt;.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The transfer process was extremely painless (at least on Hover&#39;s part). For some reason getting the authorization keys from GoDaddy was like pulling teeth. After requesting the transfer keys it took hours to receive the keys by email. It was also no picnic getting domains I bought through &lt;a href=&quot;http://www.google.com/a&quot;&gt;Google Apps&lt;/a&gt; transferred since each domain lived in it&#39;s own account at GoDaddy or Enom.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Hover has been generally awesome. The first time I had to call them for support I was shocked. No phone tree to get to a human. A &lt;i&gt;&lt;b&gt;human&lt;/b&gt;&lt;/i&gt; picked up the phone in two rings. They were super helpful fixing an issue I ran into transferring a few domains. When I checked my credit card statement today I noticed that they accidentally double-billed me for the domains that I had this trouble with. I sent them an email and within 4 hours (on a Sunday) had a response that they were going to credit me back. Their &lt;a href=&quot;http://twitter.com/hover&quot;&gt;Twitter account&lt;/a&gt; has also been &lt;a href=&quot;http://twitter.com/#!/hover/status/53858297702387712&quot;&gt;very responsive&lt;/a&gt; about &lt;a href=&quot;http://twitter.com/#!/hover/status/56046695779282945&quot;&gt;web site suggestions&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The Hover website is great. Buying and transferring domains is a piece of cake and there aren&#39;t 150 up-sell items that assault you on your way to checkout. If you have domains you want to move or are thinking of buying a new domain I highly recommend Hover.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;P.S. I also took the opportunity to move my blog to &lt;a href=&quot;http://blog.jamesbogosian.com/&quot;&gt;blog.jamesbogosian.com&lt;/a&gt;.&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jamesbogosian.com/feeds/4826184474860552892/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6050379447656822479&amp;postID=4826184474860552892' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/4826184474860552892'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/4826184474860552892'/><link rel='alternate' type='text/html' href='http://blog.jamesbogosian.com/2011/05/transferred-my-domains-to-hover.html' title='Transferred my Domains to Hover'/><author><name>Bogo</name><uri>http://www.blogger.com/profile/13442129953284381926</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6050379447656822479.post-291886802170374736</id><published>2009-03-07T13:22:00.006-05:00</published><updated>2009-03-07T13:36:45.235-05:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="email rfc validation dumb gmail filtering"/><title type='text'>EMail Filtering</title><content type='html'>Gmail provides a bunch of great ways to filter your e-mail.  One of the most accurate is to append a string to the end of your user name (i.e. myaccount+slashdot@gmail.com) when signing up for a service.  Gmail strips everything after the + when determining where to deliver a message, however it will still appear in the &quot;Delivered-To&quot; message header.  You can then run a search or create a filter by searching for &quot;deliveredto:myaccount+slashdot@gmail.com&quot;.  This allows you to set up auto labeling or other behaviors based on the origin of the e-mail, without having to know where the message might be coming &quot;From:&quot;.&lt;br /&gt;&lt;br /&gt;This is also useful for setting up forwarding between Gmail accounts.  Using this guarantees you can label forwarded e-mail because Delivered-To will always be the address you specified in the forwarding set up, even if the original e-mail was addressed To: a mailing list or you were originally BCCed.&lt;br /&gt;&lt;br /&gt;There&#39;s one big problem with this set up.  There are a lot of... misguided developers out there who set up their registration forms with bad e-mail validation.  I&#39;d say about 50% of the time I can&#39;t use this method because + is not a valid character in the form.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/E-mail_address#RFC_specification&quot;&gt;http://en.wikipedia.org/wiki/E-mail_address#RFC_specification&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I wish people would bother to follow standards.  Very annoying.</content><link rel='replies' type='application/atom+xml' href='http://blog.jamesbogosian.com/feeds/291886802170374736/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6050379447656822479&amp;postID=291886802170374736' title='13 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/291886802170374736'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/291886802170374736'/><link rel='alternate' type='text/html' href='http://blog.jamesbogosian.com/2009/03/email-filtering.html' title='EMail Filtering'/><author><name>Bogo</name><uri>http://www.blogger.com/profile/13442129953284381926</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>13</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6050379447656822479.post-775456853590175391</id><published>2009-02-24T20:24:00.000-05:00</published><updated>2009-02-24T20:24:00.446-05:00</updated><title type='text'>Twitter Account</title><content type='html'>I haven&#39;t been posting a lot here, and it&#39;s mainly because I don&#39;t have anything that long-winded to say :)&lt;br /&gt;&lt;br /&gt;I&#39;ve started using Twitter to post the random things throughout the day that I used to bundle up into a weekly post.  If you&#39;re interested, I&#39;m at &lt;a href=&quot;http://twitter.com/bogosian&quot;&gt;http://twitter.com/bogosian&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jamesbogosian.com/feeds/775456853590175391/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6050379447656822479&amp;postID=775456853590175391' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/775456853590175391'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/775456853590175391'/><link rel='alternate' type='text/html' href='http://blog.jamesbogosian.com/2009/02/twitter-account.html' title='Twitter Account'/><author><name>Bogo</name><uri>http://www.blogger.com/profile/13442129953284381926</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6050379447656822479.post-8929160704408104410</id><published>2009-01-05T12:11:00.002-05:00</published><updated>2014-07-26T08:14:48.840-04:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="appengine hosting"/><title type='text'>Personal Web Hosting with App Engine</title><content type='html'>A few days ago I got a notice from my hosting company that my year long contract has expiring soon.  I was using this hosting for three small websites that are 100% static and figured that there should be a cheaper way to get this done.&lt;br /&gt;&lt;br /&gt;My first instinct was to look at &lt;a href=&quot;http://aws.amazon.com/s3/&quot;&gt;Amazon S3&lt;/a&gt; as their storage and bandwidth rates are pretty good.  For my usage pattern I&#39;d be looking at paying pennies per month to host all three sites.  Unfortunately there&#39;s one fairly major flaw in web access to S3 that makes hosting an entire website there a non-starter.  There is no way currently to set up a S3 bucket to host a file from the root of the bucket (i.e. http://www.jamesbogosian.com/ cannot be set up to serve http://www.jamesbogosian.com/index.html).&lt;br /&gt;&lt;br /&gt;After thinking about it some more I realized that even though &lt;a href=&quot;http://code.google.com/appengine/&quot;&gt;Google App Engine&lt;/a&gt; is designed to host dynamic websites that it could be easily used to suit my needs.  Here are the steps that I took to get this working:&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Sign up for &lt;a href=&quot;http://www.google.com/a/&quot;&gt;Google Apps&lt;/a&gt; for the domain in question (jamesbogosian.com)&lt;/li&gt;&lt;li&gt;Log into App Engine and create a new application&lt;/li&gt;&lt;li&gt;Download all of the content from jamesbogosian.com and place it in a directory named &quot;static&quot;&lt;/li&gt;&lt;li&gt;Create an app.yaml file at the same level as the static directory that looks like &lt;a href=&quot;http://www.jamesbogosian.com/blogger/app-yaml.txt&quot;&gt;this one&lt;/a&gt; (replacing your app ID from step 2 on the first line)&lt;/li&gt;&lt;li&gt;Using appcfg.py from the App Engine SDK (&lt;a href=&quot;http://code.google.com/appengine/downloads.html&quot;&gt;download&lt;/a&gt; this if you haven&#39;t already), upload your &quot;application&quot; to appspot.com&lt;/li&gt;&lt;li&gt;Log into Google Apps control panel and select &quot;Add more services&quot;&lt;/li&gt;&lt;li&gt;Add your application to this domain by providing the app ID, and choose to host the &quot;application&quot; off of www.yourdomain.com&lt;/li&gt;&lt;li&gt;Add or edit the &quot;www&quot; CNAME on your domain to point to ghs.google.com&lt;/li&gt;&lt;li&gt;In most cases you will also want to redirect your naked domain (i.e. jamesbogosian.com) to www.  This is different for each domain registar / DNS set-up.  I use GoDaddy, and there was a small trick to get this working (I think)&lt;/li&gt;&lt;ol&gt;&lt;li&gt;In the GoDaddy Domain Management tool, set up the forwarding from http://yourdomain.com to http://www.yourdomain.com, as a 301 redirect&lt;/li&gt;&lt;li&gt;In the GoDaddy Total DNS Control and MX Records tool, change the A Record on your domain to point to 64.202.189.170 (this seems to be the way to get forwarding to actually work)&lt;/li&gt;&lt;/ol&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;Now, there are a few limitations worth noting:&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;There is a single file size limitation of one meg.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;There is a file count limitation of 1,000 files.  You can work around this by using the &lt;a href=&quot;http://code.google.com/p/googleappengine/source/browse/trunk/google/appengine/ext/zipserve/__init__.py&quot;&gt;zipserve&lt;/a&gt; module.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Spikes in traffic may currently be greeted with &lt;a href=&quot;http://code.google.com/appengine/articles/quotas.html&quot;&gt;quota&lt;/a&gt; errors, but if you&#39;re talking about doing real low-traffic hosting I&#39;d imagine that would never happen&lt;/li&gt;&lt;/ul&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jamesbogosian.com/feeds/8929160704408104410/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6050379447656822479&amp;postID=8929160704408104410' title='20 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/8929160704408104410'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/8929160704408104410'/><link rel='alternate' type='text/html' href='http://blog.jamesbogosian.com/2009/01/personal-web-hosting-with-app-engine.html' title='Personal Web Hosting with App Engine'/><author><name>Bogo</name><uri>http://www.blogger.com/profile/13442129953284381926</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>20</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6050379447656822479.post-3686157674282161779</id><published>2008-11-12T21:38:00.002-05:00</published><updated>2008-11-12T21:41:40.397-05:00</updated><title type='text'>Bailout or Bankruptcy?</title><content type='html'>&lt;div&gt;Robert Reich has an &lt;a href=&quot;http://robertreich.blogspot.com/2008/11/real-difference-between-bankruptcy-and.html&quot;&gt;excellent post on his blog&lt;/a&gt; asking the question on my mind, why don&#39;t we just let companies go bankrupt.  Chapter 11 is there for a reason.&lt;/div&gt;&lt;br /&gt;&lt;blockquote&gt;So why, exactly, is the Treasury substituting government bailouts for chapter 11? Even if you assume Wall Street&#39;s major banks and insurance giant AIG are so important to the national and global economy that they can&#39;t be allowed to fail, that doesn&#39;t mean they have to be bailed out. They could be reorganized under bankruptcy protection. True, their creditors, shareholders, and executives would take bigger hits than they&#39;re taking now that taxpayers are bailing them out. But they&#39;re the ones who took the risk. We didn&#39;t.&lt;/blockquote&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;This all makes me very sad.  &lt;a href=&quot;http://www.todaysbigthing.com/2008/11/12&quot;&gt;This dog makes me laugh&lt;/a&gt;.&lt;br /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jamesbogosian.com/feeds/3686157674282161779/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6050379447656822479&amp;postID=3686157674282161779' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/3686157674282161779'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/3686157674282161779'/><link rel='alternate' type='text/html' href='http://blog.jamesbogosian.com/2008/11/bailout-or-bankruptcy.html' title='Bailout or Bankruptcy?'/><author><name>Bogo</name><uri>http://www.blogger.com/profile/13442129953284381926</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6050379447656822479.post-828534916429697991</id><published>2008-11-11T20:46:00.001-05:00</published><updated>2008-11-11T20:46:01.037-05:00</updated><title type='text'>Special Comment - Prop 8</title><content type='html'>&lt;div&gt;I couldn&#39;t have said it better myself.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;object width=&quot;425&quot; height=&quot;344&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/hnHyy8gkNEE&amp;amp;hl=en&amp;amp;fs=1&quot;&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt;&lt;param name=&quot;allowscriptaccess&quot; value=&quot;always&quot;&gt;&lt;embed src=&quot;http://www.youtube.com/v/hnHyy8gkNEE&amp;amp;hl=en&amp;amp;fs=1&quot; type=&quot;application/x-shockwave-flash&quot; allowscriptaccess=&quot;always&quot; allowfullscreen=&quot;true&quot; width=&quot;425&quot; height=&quot;344&quot;&gt;&lt;/embed&gt;&lt;/object&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jamesbogosian.com/feeds/828534916429697991/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6050379447656822479&amp;postID=828534916429697991' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/828534916429697991'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/828534916429697991'/><link rel='alternate' type='text/html' href='http://blog.jamesbogosian.com/2008/11/special-comment-prop-8.html' title='Special Comment - Prop 8'/><author><name>Bogo</name><uri>http://www.blogger.com/profile/13442129953284381926</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6050379447656822479.post-5701633192046995541</id><published>2008-11-04T10:47:00.001-05:00</published><updated>2008-11-04T10:49:31.585-05:00</updated><title type='text'>Get out and VOTE</title><content type='html'>I don&#39;t really care who you vote for, &lt;a href=&quot;http://maps.google.com/vote&quot;&gt;just vote&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Ohh, and you can snag some &lt;a href=&quot;http://lifehacker.com/5075721/election-day-freebies-roundup&quot;&gt;free stuff&lt;/a&gt; too :)</content><link rel='replies' type='application/atom+xml' href='http://blog.jamesbogosian.com/feeds/5701633192046995541/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6050379447656822479&amp;postID=5701633192046995541' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/5701633192046995541'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/5701633192046995541'/><link rel='alternate' type='text/html' href='http://blog.jamesbogosian.com/2008/11/get-out-and-vote.html' title='Get out and VOTE'/><author><name>Bogo</name><uri>http://www.blogger.com/profile/13442129953284381926</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6050379447656822479.post-2342672492095200956</id><published>2008-09-23T21:47:00.000-04:00</published><updated>2008-09-23T21:48:43.422-04:00</updated><title type='text'>Wallstreet Bailout</title><content type='html'>&lt;p&gt;I want to move to Toledo to vote for this woman.&lt;/p&gt;&lt;br /&gt;&lt;object width=&quot;425&quot; height=&quot;344&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/S27yitK32ds&amp;hl=en&amp;fs=1&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt;&lt;/param&gt;&lt;embed src=&quot;http://www.youtube.com/v/S27yitK32ds&amp;hl=en&amp;fs=1&quot; type=&quot;application/x-shockwave-flash&quot; allowfullscreen=&quot;true&quot; width=&quot;425&quot; height=&quot;344&quot;&gt;&lt;/embed&gt;&lt;/object&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jamesbogosian.com/feeds/2342672492095200956/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6050379447656822479&amp;postID=2342672492095200956' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/2342672492095200956'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/2342672492095200956'/><link rel='alternate' type='text/html' href='http://blog.jamesbogosian.com/2008/09/wallstreet-bailout.html' title='Wallstreet Bailout'/><author><name>Bogo</name><uri>http://www.blogger.com/profile/13442129953284381926</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6050379447656822479.post-8566555229130176585</id><published>2008-09-21T22:38:00.002-04:00</published><updated>2008-09-21T22:42:21.320-04:00</updated><title type='text'>Privatize Profits, Socialize Losses</title><content type='html'>&lt;a href=&quot;http://ap.google.com/article/ALeqM5ioHc80xKMiATnqCpK0cDKJzk_nPQD93BEMTG0&quot;&gt;This&lt;/a&gt; just makes me ill.&lt;br /&gt;&lt;br /&gt;Let&#39;s deregulate.  Let&#39;s let the free market run the show.  Let&#39;s make insane profits.  We&#39;ll keep them all thanks.&lt;br /&gt;&lt;br /&gt;Ohh wait, we screwed up.  Now it&#39;s everyone&#39;s problem.</content><link rel='replies' type='application/atom+xml' href='http://blog.jamesbogosian.com/feeds/8566555229130176585/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6050379447656822479&amp;postID=8566555229130176585' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/8566555229130176585'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/8566555229130176585'/><link rel='alternate' type='text/html' href='http://blog.jamesbogosian.com/2008/09/privatize-profits-socialize-losses.html' title='Privatize Profits, Socialize Losses'/><author><name>Bogo</name><uri>http://www.blogger.com/profile/13442129953284381926</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6050379447656822479.post-9137930997432671724</id><published>2008-09-12T13:42:00.003-04:00</published><updated>2008-09-12T13:46:24.872-04:00</updated><title type='text'>Umbrella Today - Fail</title><content type='html'>I signed up for Umbrella Today? on Monday.  On Tuesday morning I got a text message to bring my umbrella to work and ended up carrying it, closed, throughout my commute both ways.  Now, granted it absolutely poured in the middle of the day but I did not &lt;span style=&quot;font-style: italic;&quot;&gt;need&lt;/span&gt; my umbrella at all.  Today I did not get a text message, however here&#39;s the current radar.&lt;br /&gt;&lt;br /&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://1.bp.blogspot.com/_lm-4C_pqLTA/SMqqsImAUaI/AAAAAAAABuY/JpE8910swUg/s1600-h/screenshot1.png&quot;&gt;&lt;img style=&quot;margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;&quot; src=&quot;http://1.bp.blogspot.com/_lm-4C_pqLTA/SMqqsImAUaI/AAAAAAAABuY/JpE8910swUg/s400/screenshot1.png&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5245192391224218018&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jamesbogosian.com/feeds/9137930997432671724/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6050379447656822479&amp;postID=9137930997432671724' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/9137930997432671724'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/9137930997432671724'/><link rel='alternate' type='text/html' href='http://blog.jamesbogosian.com/2008/09/umbrella-today-fail.html' title='Umbrella Today - Fail'/><author><name>Bogo</name><uri>http://www.blogger.com/profile/13442129953284381926</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_lm-4C_pqLTA/SMqqsImAUaI/AAAAAAAABuY/JpE8910swUg/s72-c/screenshot1.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6050379447656822479.post-4420146391163667514</id><published>2008-09-08T22:04:00.000-04:00</published><updated>2008-09-08T22:04:01.093-04:00</updated><title type='text'>Umbrella Today?</title><content type='html'>This morning I found an interesting little website called &lt;a href=&quot;http://umbrellatoday.com&quot;&gt;Umbrella Today?&lt;/a&gt;  The jist of the site is very simple, type in your zip code and it will tell you if you should be bringing an umbrella on your commute today.  Even better, they have an SMS service that will text you in the morning if an umbrella would be a good idea.  I obviously have no experience with this part of the service, so I&#39;ll report back in a few weeks.</content><link rel='replies' type='application/atom+xml' href='http://blog.jamesbogosian.com/feeds/4420146391163667514/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6050379447656822479&amp;postID=4420146391163667514' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/4420146391163667514'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/4420146391163667514'/><link rel='alternate' type='text/html' href='http://blog.jamesbogosian.com/2008/09/umbrella-today.html' title='Umbrella Today?'/><author><name>Bogo</name><uri>http://www.blogger.com/profile/13442129953284381926</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6050379447656822479.post-6459499640870109858</id><published>2008-09-02T22:15:00.000-04:00</published><updated>2008-09-02T22:15:01.071-04:00</updated><title type='text'>Using Google Code</title><content type='html'>I&#39;ve decided to start using &lt;a href=&quot;http://code.google.com/&quot;&gt;Google Code&lt;/a&gt; to host some of my little utility scripts that I find I use on multiple computers.  They&#39;re mainly python and shell scripts and can be found &lt;a href=&quot;http://code.google.com/p/bogos-utility-scripts/&quot;&gt;here&lt;/a&gt;.  Here&#39;s what&#39;s currently in there:&lt;br /&gt;&lt;br /&gt;ftp_upload.py - uploads a single file to a FTP server&lt;br /&gt;make_gallery.py - renames all of the files in a directory and optionally creates a set of thumbnails&lt;br /&gt;timemachine - performs a backup from a remote location using rsync, only downloading diffs and creating hard-links to previous files where appropriate&lt;br /&gt;&lt;br /&gt;One of the cool new features released on code.google.com is a RSS feed for the Subversion changes to a project.  For my little project it can be found at &lt;a target=&quot;_blank&quot; href=&quot;http://code.google.com/feeds/p/google-web-toolkit/svnchanges/basic&quot; title=&quot;http//code.google.com/feeds/p/bogos-utility-scripts/svnchanges/basic&quot;&gt;http://code.google.com/feeds/p/bogos-utility-scripts/svnchanges/basic&lt;/a&gt;.</content><link rel='replies' type='application/atom+xml' href='http://blog.jamesbogosian.com/feeds/6459499640870109858/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6050379447656822479&amp;postID=6459499640870109858' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/6459499640870109858'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/6459499640870109858'/><link rel='alternate' type='text/html' href='http://blog.jamesbogosian.com/2008/09/using-google-code.html' title='Using Google Code'/><author><name>Bogo</name><uri>http://www.blogger.com/profile/13442129953284381926</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6050379447656822479.post-5894366766705490046</id><published>2008-08-02T16:37:00.002-04:00</published><updated>2008-08-02T16:44:11.769-04:00</updated><title type='text'>Kindle Recommendations?</title><content type='html'>I recently came into the possession of an &lt;a href=&quot;http://www.amazon.com/kindle&quot;&gt;Amazon Kindle&lt;/a&gt;.  I have to say, I never really realized how this would change my reading habits.  As silly as it sounds being able to hold a book in one hand and flip the page with my thumb easily is quite different, especially with a baby in one arm :)&lt;br /&gt;&lt;br /&gt;The problem I&#39;m running into is that being the... frugal person that I am, I&#39;m trying to avoid buying books from Amazon.  I&#39;m a bit annoyed that I can&#39;t go to a library and get a book, even with DRM on it, and keep it for a few weeks while I read it.&lt;br /&gt;&lt;br /&gt;So, I&#39;m looking for some recommendations.  What are some classic books that I most likely missed reading while in high school (I didn&#39;t do any work) or college (I only took engineering and psychology classes).  I&#39;ve found two sites, &lt;a href=&quot;http://manybooks.net/&quot;&gt;manybooks.net&lt;/a&gt; and &lt;a href=&quot;http://www.feedbooks.com/&quot;&gt;feedbooks.com&lt;/a&gt; that have many public domain books available in Kindle format.</content><link rel='replies' type='application/atom+xml' href='http://blog.jamesbogosian.com/feeds/5894366766705490046/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6050379447656822479&amp;postID=5894366766705490046' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/5894366766705490046'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/5894366766705490046'/><link rel='alternate' type='text/html' href='http://blog.jamesbogosian.com/2008/08/kindle-recommendations.html' title='Kindle Recommendations?'/><author><name>Bogo</name><uri>http://www.blogger.com/profile/13442129953284381926</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6050379447656822479.post-1671344450636903845</id><published>2008-07-17T10:44:00.000-04:00</published><updated>2008-07-17T10:44:00.759-04:00</updated><title type='text'>Thank God for Gmail</title><content type='html'>I decided to run an experiment over the last month.  Instead of checking my spam folder in Gmail on a regular basis and emptying it I&#39;d let it build up over 30 days worth of spam (spam older than 30 days gets auto-purged).  I just checked back with the spam folder and it has reached a steady state of around 1,100 items or roughly 36 emails a day.  36 emails a day and I do take precautions using &lt;a href=&quot;http://www.spamgourmet.com/&quot;&gt;SpamGourmet&lt;/a&gt;.  I can&#39;t imagine what life would be like if all of this nonsense made it to my inbox...</content><link rel='replies' type='application/atom+xml' href='http://blog.jamesbogosian.com/feeds/1671344450636903845/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6050379447656822479&amp;postID=1671344450636903845' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/1671344450636903845'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/1671344450636903845'/><link rel='alternate' type='text/html' href='http://blog.jamesbogosian.com/2008/07/thank-god-for-gmail.html' title='Thank God for Gmail'/><author><name>Bogo</name><uri>http://www.blogger.com/profile/13442129953284381926</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6050379447656822479.post-5243634909169140318</id><published>2008-07-16T16:44:00.000-04:00</published><updated>2008-07-16T17:30:51.634-04:00</updated><title type='text'>FSJ iPocolypse</title><content type='html'>I was very sad last week to read what appears to be the &lt;a href=&quot;http://fakesteve.blogspot.com/2008/07/i-am-so-friggin-high-its-not-funny.html&quot;&gt;final Fake Steve Jobs blog post&lt;/a&gt;.  It&#39;s quite unfortunate too, as two days later the &quot;&lt;a href=&quot;http://www.msnbc.msn.com/id/25641886/&quot;&gt;iPocalypse&lt;/a&gt;&quot; hit.  If you&#39;ve been living under a rock for the last month, you might not know that July 11th, 2008 was the release date for the iPhone 3g as well as the firmware upgrade for the first-gen iPhones.&lt;br /&gt;&lt;br /&gt;Apparently Apple and/or AT&amp;amp;T were not aware that many people would want to purchase new iPhones and upgrade existing phones.  That&#39;s the only rational explaination as to why the activation servers virtually melted down for most of the day.  This left people at stores unable to play with their new phones once they bought them and, more annoyingly, those who already owned first-gen phones got caught mid-upgrade with a phone that would only dial 911 as the device could not be re-activated after the upgrade.&lt;br /&gt;&lt;br /&gt;Thankfully I had manually upgraded the night before and did not run into any of these issues, though apparently I upgraded with a pre-release or debug version of the firmware which was a bit glitchy.  I re-upgraded using the official firmware a day or two after the activation servers started responding again :)&lt;br /&gt;&lt;br /&gt;P.S.  Apple/AT&amp;amp;T, why did we have to re-activate a phone where the OS was being upgraded?  Seems silly to me.</content><link rel='replies' type='application/atom+xml' href='http://blog.jamesbogosian.com/feeds/5243634909169140318/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6050379447656822479&amp;postID=5243634909169140318' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/5243634909169140318'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/5243634909169140318'/><link rel='alternate' type='text/html' href='http://blog.jamesbogosian.com/2008/07/fsj-ipocolypse.html' title='FSJ iPocolypse'/><author><name>Bogo</name><uri>http://www.blogger.com/profile/13442129953284381926</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6050379447656822479.post-8400454986988585318</id><published>2008-07-14T09:22:00.000-04:00</published><updated>2008-07-14T09:22:00.356-04:00</updated><title type='text'>Open Source at Google</title><content type='html'>I&#39;ve noticed quite a few projects being open sourced lately that I thought I&#39;d point out:&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://code.google.com/p/protobuf/&quot;&gt;Protocol Buffers&lt;/a&gt;&lt;br /&gt;Protocol Buffers are a heavily used inside Google as a data interchange format.  They&#39;re beautiful.  Generated classes for C++, Java and Python that output very compact binary data that parses very quickly and can be backwards compatible across revisions of your data structure.  Here&#39;s the &lt;a href=&quot;http://google-opensource.blogspot.com/2008/07/protocol-buffers-googles-data.html&quot;&gt;blog post&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://code.google.com/p/googletest/&quot;&gt;Google C++ Testing Framework&lt;/a&gt;&lt;br /&gt;I don&#39;t know a whole lot about this since I don&#39;t write C++ but it sounds pretty cool.  Who wouldn&#39;t want to write &quot;death tests&quot;.  Here&#39;s the &lt;a href=&quot;http://google-opensource.blogspot.com/2008/07/google-test-come-try-our-google-c.html&quot;&gt;blog post&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://code.google.com/p/adwords-api-starterkit/&quot;&gt;AdWords API Starter Kit&lt;/a&gt;&lt;br /&gt;This project aims to help advertisers get started easier with the AdWords API (my manager played a big role in developing this).  There&#39;s a &lt;a href=&quot;http://adwordsapi.blogspot.com/2008/06/adwords-api-starter-kit-now-available.html&quot;&gt;blog post&lt;/a&gt; that explains it on the AdWords API Blog.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://code.google.com/p/browsersync/&quot;&gt;BrowserSync&lt;/a&gt;&lt;br /&gt;Unfortunately tools you use go out of support from the companies that built them.  Google&#39;s BrowserSync now falls into this category.  Thankfully the team has open sourced the project however there&#39;s still the minor sticking point of where will all of the data be synced to?  Here&#39;s the &lt;a href=&quot;http://google-opensource.blogspot.com/2008/07/open-sourcing-browser-sync.html&quot;&gt;blog post&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://code.google.com/p/precipitate/&quot;&gt;Precipitate&lt;/a&gt;&lt;br /&gt;If you&#39;re a Mac user, use Google Docs or Google Bookmarks and use Spotlight this will be of interest.  This tool will let you index Docs and Bookmarks and add that into your Spotlight index for easy searching of data on your computer and data at Google.  Here&#39;s the &lt;a href=&quot;http://googlemac.blogspot.com/2008/07/precipitate-search-your-local-and.html&quot;&gt;blog post&lt;/a&gt;.</content><link rel='replies' type='application/atom+xml' href='http://blog.jamesbogosian.com/feeds/8400454986988585318/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6050379447656822479&amp;postID=8400454986988585318' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/8400454986988585318'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/8400454986988585318'/><link rel='alternate' type='text/html' href='http://blog.jamesbogosian.com/2008/07/open-source-at-google.html' title='Open Source at Google'/><author><name>Bogo</name><uri>http://www.blogger.com/profile/13442129953284381926</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6050379447656822479.post-323096190710902409</id><published>2008-07-10T18:37:00.001-04:00</published><updated>2008-07-10T18:37:00.619-04:00</updated><title type='text'>Using Beryl on Linux</title><content type='html'>I recently decided to start using a Linux desktop at work in place of my MacBook Pro as my main computer (I now leave my MBP mainly at home).  Immediately I realized that I had grown very used to having nice looking windows and &lt;a href=&quot;http://www.youtube.com/watch?v=kKHXrpw43HA&quot;&gt;fancy effects&lt;/a&gt;.  After a bit of searching I turned up &lt;a href=&quot;http://www.beryl-project.org/&quot;&gt;Beryl&lt;/a&gt;.  Not only does Beryl beat OS X in the fancy effects department with it&#39;s &lt;a href=&quot;http://www.youtube.com/watch?v=G3p8IBNNd88&quot;&gt;windows catching on fire when you close them and 3D-spinning-cube desktop&lt;/a&gt;, it also provides some very useful features like:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;the ability to have a window stop moving once you&#39;ve dragged it up against the side of the screen&lt;/li&gt;&lt;li&gt;the ability to control the opacity of a window on the fly by holding down ALT and moving the mouse wheel&lt;/li&gt;&lt;li&gt;the &quot;AddHelper&quot; which can darken or completely black out the windows other than the active one on your screen to help concentration&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jamesbogosian.com/feeds/323096190710902409/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6050379447656822479&amp;postID=323096190710902409' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/323096190710902409'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/323096190710902409'/><link rel='alternate' type='text/html' href='http://blog.jamesbogosian.com/2008/07/using-beryl-on-linux.html' title='Using Beryl on Linux'/><author><name>Bogo</name><uri>http://www.blogger.com/profile/13442129953284381926</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6050379447656822479.post-2529451618477678277</id><published>2008-06-30T14:34:00.001-04:00</published><updated>2008-06-30T14:34:00.553-04:00</updated><title type='text'>Diablo III</title><content type='html'>Excellent news, &lt;a href=&quot;http://www.blizzard.com/diablo3/index.xml&quot;&gt;Diablo III&lt;/a&gt; will be &lt;a href=&quot;http://www.blizzard.com/diablo3/faq/#3_3&quot;&gt;available for both Windows and Mac&lt;/a&gt; at release date.  I can&#39;t wait.</content><link rel='replies' type='application/atom+xml' href='http://blog.jamesbogosian.com/feeds/2529451618477678277/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6050379447656822479&amp;postID=2529451618477678277' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/2529451618477678277'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/2529451618477678277'/><link rel='alternate' type='text/html' href='http://blog.jamesbogosian.com/2008/06/diablo-iii.html' title='Diablo III'/><author><name>Bogo</name><uri>http://www.blogger.com/profile/13442129953284381926</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6050379447656822479.post-1306870818231768570</id><published>2007-12-19T14:57:00.001-05:00</published><updated>2008-01-18T16:03:22.174-05:00</updated><title type='text'>Google User Research</title><content type='html'>&lt;p&gt;Interested in helping Google make our products better?  &lt;a href=&quot;http://www.google.com/usability&quot;&gt;Sign up for a usability study&lt;/a&gt;.  If you&#39;re chosen you can either come to a Google office to participate or do it remotely.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;When you sign up, use the referral code &quot;CandyCane&quot;.&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jamesbogosian.com/feeds/1306870818231768570/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6050379447656822479&amp;postID=1306870818231768570' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/1306870818231768570'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/1306870818231768570'/><link rel='alternate' type='text/html' href='http://blog.jamesbogosian.com/2007/12/google-user-research.html' title='Google User Research'/><author><name>Bogo</name><uri>http://www.blogger.com/profile/13442129953284381926</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6050379447656822479.post-503941606264768395</id><published>2007-12-04T16:09:00.001-05:00</published><updated>2007-12-04T16:10:27.405-05:00</updated><title type='text'>Here Comes Another Bubble</title><content type='html'>&lt;p&gt;Thanks to Matt Stone for sending me this.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;object height=&quot;355&quot; width=&quot;425&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/fi4fzvQ6I-o&amp;amp;rel=1&quot;&gt;&lt;param name=&quot;wmode&quot; value=&quot;transparent&quot;&gt;&lt;embed src=&quot;http://www.youtube.com/v/fi4fzvQ6I-o&amp;amp;rel=1&quot; type=&quot;application/x-shockwave-flash&quot; wmode=&quot;transparent&quot; height=&quot;355&quot; width=&quot;425&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jamesbogosian.com/feeds/503941606264768395/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6050379447656822479&amp;postID=503941606264768395' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/503941606264768395'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/503941606264768395'/><link rel='alternate' type='text/html' href='http://blog.jamesbogosian.com/2007/12/here-comes-another-bubble.html' title='Here Comes Another Bubble'/><author><name>Bogo</name><uri>http://www.blogger.com/profile/13442129953284381926</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6050379447656822479.post-8038375258907026222</id><published>2007-11-12T16:51:00.001-05:00</published><updated>2007-11-12T16:52:54.406-05:00</updated><title type='text'>Writers Strike</title><content type='html'>&lt;p&gt;Here&#39;s a great explanation of what the writer&#39;s strike is all about.  It seems to me that the writers are totally getting hosed here, and I really haven&#39;t heard anything from the studios to debate that.  I really hope this doesn&#39;t continue long enough to kill Lost for the season...&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;object width=&quot;425&quot; height=&quot;355&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/oJ55Ir2jCxk&amp;rel=1&amp;border=0&quot;&gt;&lt;/param&gt;&lt;param name=&quot;wmode&quot; value=&quot;transparent&quot;&gt;&lt;/param&gt;&lt;embed src=&quot;http://www.youtube.com/v/oJ55Ir2jCxk&amp;rel=1&amp;border=0&quot; type=&quot;application/x-shockwave-flash&quot; wmode=&quot;transparent&quot; width=&quot;425&quot; height=&quot;355&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.jamesbogosian.com/feeds/8038375258907026222/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6050379447656822479&amp;postID=8038375258907026222' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/8038375258907026222'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6050379447656822479/posts/default/8038375258907026222'/><link rel='alternate' type='text/html' href='http://blog.jamesbogosian.com/2007/11/writers-strike.html' title='Writers Strike'/><author><name>Bogo</name><uri>http://www.blogger.com/profile/13442129953284381926</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry></feed>