<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>iandouglas.com</title>
	<atom:link href="http://iandouglas.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://iandouglas.com</link>
	<description>senior web architect</description>
	<lastBuildDate>Tue, 13 Nov 2012 08:36:52 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>Using SendGrid&#8217;s Parse API to Email yourself a Trello card</title>
		<link>http://iandouglas.com/2012/11/11/using-sendgrids-parse-api-to-email-yourself-a-trello-card/</link>
		<comments>http://iandouglas.com/2012/11/11/using-sendgrids-parse-api-to-email-yourself-a-trello-card/#comments</comments>
		<pubDate>Sun, 11 Nov 2012 21:12:47 +0000</pubDate>
		<dc:creator>ian douglas</dc:creator>
				<category><![CDATA[howto]]></category>
		<category><![CDATA[misc]]></category>
		<category><![CDATA[webdev]]></category>

		<guid isPermaLink="false">http://iandouglas.com/?p=5030</guid>
		<description><![CDATA[This is a placeholder, I&#8217;ll add more content shortly. Nutshell: I used a free SendGrid developer account, a free Trello account, and a free Google App Engine account. I added a subdomain to iandouglas.com, set its MX record to point to mx.sendgrid.net, then modified a portion of py-trello to be appengine-compatible and answer to a [...]]]></description>
				<content:encoded><![CDATA[<p>This is a placeholder, I&#8217;ll add more content shortly.</p>
<p>Nutshell: I used a free <a href="http://hack.sendgrid.com">SendGrid developer account</a>, a free Trello account, and a free Google App Engine account. I added a subdomain to iandouglas.com, set its MX record to point to mx.sendgrid.net, then modified a portion of <a href="https://github.com/sarumont/py-trello">py-trello</a> to be appengine-compatible and answer to a POST operation that SendGrid would perform when receiving Email to any recipient at @mynewsubdomain.iandouglas.com using their <a href="http://sendgrid.com/docs/API%20Reference/Webhooks/parse.html">Parse API</a>. The appengine script then re-POST&#8217;s that information to Trello.</p>
<p>Why did I go through this? Two reasons:</p>
<p>1. Because I could.<br />
2. Because I found some crazy service who wanted to charge $10/month for a similar service, and all of this can be done totally free with a little work. Not that I&#8217;m against paying money for a valuable service, I&#8217;m just opposed to their particular model that costs what seems an awfully large amount of money for the limited usage they allowed.</p>
<p>https://github.com/iandouglas/email-trello</p>
<p>Please review the README.md file at GitHub for additional information.</p>
]]></content:encoded>
			<wfw:commentRss>http://iandouglas.com/2012/11/11/using-sendgrids-parse-api-to-email-yourself-a-trello-card/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Recruiters: Sass, Slime, Spam and Scorn</title>
		<link>http://iandouglas.com/2012/10/06/recruiters-sass-slime-spam-and-scorn/</link>
		<comments>http://iandouglas.com/2012/10/06/recruiters-sass-slime-spam-and-scorn/#comments</comments>
		<pubDate>Sat, 06 Oct 2012 21:38:19 +0000</pubDate>
		<dc:creator>ian douglas</dc:creator>
				<category><![CDATA[misc]]></category>
		<category><![CDATA[personal]]></category>
		<category><![CDATA[recruiters]]></category>

		<guid isPermaLink="false">http://iandouglas.com/?p=4967</guid>
		<description><![CDATA[I got a LinkedIn connection request this morning from a recruiter from Zynga, who said: Technical Recruiter at Zynga &#8211; *********@zynga.com or 415-603-**** Dont&#8217;; be so negative. And I don&#8217;t want to connect with you. Well for starters, I only &#8220;connect&#8221; on LinkedIn with people I&#8217;ve personally worked with in the past, know on a [...]]]></description>
				<content:encoded><![CDATA[<p>I got a LinkedIn connection request this morning from a recruiter from Zynga, who said:</p>
<blockquote><p>Technical Recruiter at Zynga &#8211; *********@zynga.com or 415-603-****<br />
Dont&#8217;; be so negative. And I don&#8217;t want to connect with you.</p></blockquote>
<p>Well for starters, I only &#8220;connect&#8221; on LinkedIn with people I&#8217;ve personally worked with in the past, know on a personal level, or a handful of recruiters who have actually placed me successfully at a job, or that I (gasp) respect. Secondly, why not send a LinkedIn InMail instead of a connection request that says you do NOT want to connect? <a href="https://twitter.com/iandouglas736/status/254630010961403904">I tweeted a response</a> that got some laughs from friends.</p>
<p>I admit I&#8217;m pretty harsh on recruiters, especially <a title="I made a promise to LinkedIn about recruiter spam" href="http://iandouglas.com/2012/06/13/i-made-a-promise-to-linkedin-about-recruiter-spam/">this open letter to LinkedIn</a>, and the <a title="Headhunters" href="http://iandouglas.com/headhunters/">entire section of my web site</a> dedicated to some of the worst recruiters/headhunters I&#8217;ve dealt with over the years. I get a chuckle whenever an interview candidate does their homework on me as the interviewer and they comment on my headhunter nightmares. I&#8217;ve even had recruiters reach out and say &#8220;Hey, I&#8217;m not trying to recruit you, just wanted to say I got a huge laugh at your headhunter nightmares, hopefully I never do that.&#8221;</p>
<p>I figured that I should take a few moments to actually explain why I&#8217;m so hard on recruiters who contact me.</p>
<p>My first dealings with recruiters was in the spring of 2000, when a recruiter in Los Angeles placed me quite successfully at a startup who, in the midst of the dot-com boom, paid to move me to the US from Canada, and it remains the longest time I&#8217;ve spent at any one job.</p>
<p>Once I got down to Los Angeles, you couldn&#8217;t even sneeze on the internet without recruiters trying to entice you away to some new &#8220;amazing opportunity&#8221;. Most of them didn&#8217;t even want to bother spending time to build a relationship with me as a potential recruit. And almost all of them say something along the lines of &#8220;I&#8217;m not that kind of recruiter&#8221;. If you&#8217;re not a typical recruiter, why are you trying to pitch me on a job opportunity in your second breath?</p>
<h2>There ARE Good Recruiters Out There</h2>
<p>Enter <a href="http://www.prosum.com/">Luis Rhee</a>. We met through dice.com in early 2006. Luis took several months, a nice lunch, and several phone calls to discuss my career goals, dislikes, and opportunities, and 5 months later placed me at a marketing agency where I was mentored by someone I still admire and respect to this day. Luis and I have remained in contact off and on over the years, and he&#8217;s one of the few recruiters that I call when I&#8217;m thinking about finding new work.</p>
<p>In fact, Luis and one other recruiter are the ONLY recruiters I trust to give out names of friends who are actively looking for work.</p>
<h2>Some Firms Don&#8217;t Update Their Info, Though</h2>
<p>Then there&#8217;s the recruiting agency, Workbridge/Jobscore, that placed me at SendGrid. They took their time, too, sort of, and it&#8217;s by far the best job in my career. Except they&#8217;ve reached out several times in the past 6 months trying to either recruit me <span style="text-decoration: underline;">away</span> from SendGrid, or haven&#8217;t updated their information to realize I&#8217;m no longer at Armor Games, and think I&#8217;m a viable contact there to try to pitch recruits for job openings at Armor Games. Either way, pretty slimy, and I&#8217;ve had to start tracking down upper management there to get them to knock it off.</p>
<p><script type="text/javascript">// <![CDATA[
google_ad_client = "ca-pub-1335093070283715"; /* id content, 300x250, created 4/26/10 */ google_ad_slot = "8498795251"; google_ad_width = 300; google_ad_height = 250;
// ]]&gt;</script><br />
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js">// <![CDATA[</p>
<p>// ]]&gt;</script></p>
<h2>Where&#8217;s The Beef?</h2>
<p>My biggest beef with recruiters? The opening statement on my LinkedIn profile CLEARLY states that I&#8217;m not looking for work, and to please avoid contacting me about new job opportunities. But that hasn&#8217;t stopped over 30 recruiters from sending me messages on LinkedIn asking if I&#8217;m open to a new opportunity. So I recently updated it, and I guess that&#8217;s what triggered the nastygram from someone at Zynga.</p>
<blockquote><p>Dear Recruiters: Guess what? I&#8217;m STILL not looking for work. Recruiting attempts will be met with scorn and ridicule and possibly some harshly-worded Tweets in your direction. Also, I only add people I know in real life or have worked with at a previous job, so please don&#8217;t try to &#8220;connect&#8221; claiming we&#8217;ve worked together before.</p>
<p>Also, I&#8217;m relocating out of California in the summer of 2013. Please don&#8217;t waste my time, or yours, trying to convince me to stay in California.</p></blockquote>
<h2>&#8220;I&#8217;m calling from Slimy McSlimerstein&#8217;s Slimy Recruiting Scumbags&#8230;&#8221;</h2>
<p>This past week at SendGrid, our office manager came by my desk and told me someone named &#8220;Andre&#8221; was trying to reach me. I know a few Andre&#8217;s, and asked her for more info, but she said the guy wouldn&#8217;t leave any additional information. Then he called back the next day saying that he was in the middle of talking to me and we got cut off, which is interesting since I was in a meeting at the time.</p>
<p>She thinks he tried calling again to reach out to another employee, starting the phone call with &#8220;Yeah, can I talk to ____, I have a quick PHP question for him.&#8221; And after one other failed attempt, tracked down this employee&#8217;s <span style="text-decoration: underline;">wife</span> online, and sent her a private Email claiming he was a friend of the employee and could he get a cell phone number to reach our employee.</p>
<p>I tweeted (<a href="https://twitter.com/iandouglas736/status/254254142606950400">here</a> and <a href="https://twitter.com/iandouglas736/status/254254250182451201">here</a>) about these recent events right around the time that someone, whose Twitter profile says she&#8217;s a recruiter, started following me. I said that these tactics were &#8220;slimy&#8221; and she replied with &#8220;<a href="https://twitter.com/SWBeddow/status/254260350604673025">ouch</a>&#8220;, but also favorited the tweet about this &#8220;Andre&#8221; guy trying to get private contact information. Then <a href="https://twitter.com/iandouglas736/status/254264442123075586">I tweeted</a> that a recruiter who follows me &#8220;favorited&#8221; that tweet, and the recruiter <a href="https://twitter.com/SWBeddow/status/254265188054876160">tweeted back</a> saying she hadn&#8217;t planned on contacting me, and only favorited it because she thought it was funny.</p>
<h2>In Their Defense</h2>
<p>It&#8217;s easy to get angry and frustrated when you don&#8217;t know everything about a particular business or industry. It&#8217;s easy to see get angry at bankers getting gazzilions in payoffs, benefits and retirements, as the bank closes its doors. It&#8217;s easy to get angry at politicians who cut funding to our favorite things like schools, or PBS. And it&#8217;s especially easy to get angry at recruiters who ignore your online profiles which clearly state things like &#8220;I&#8217;m not looking for work&#8221; or &#8220;I am not willing to relocate&#8221;. Or even more frustrated when a recruiter writes simply to ask for referrals for jobs, and wanting to scream &#8220;do your own job and find recruits!&#8221;</p>
<p>I actually debated starting a recruiting firm years ago, to do things differently. Build and foster relationships with the recruits, and businesses, use my own technical skills to srceen people, and use my networking and connections to help recruits find jobs they&#8217;re going to feel passionate about, not just finding them a paycheck so I get a commission. Then I sat down and really thought about what a day in the life of a headhunter must really be like, and decided to remain in programming.</p>
<p>Recently, I read that programmers and other technology related workers are some of the most private, secretive people who sometimes go out of their way to having private information on the Internet because they don&#8217;t want to be harassed about new job opportunities. Workers who focus on Marketing and Sales tend to make themselves as public as possible, where programmers hide behind pseudonyms and Email aliases that give nothing away.</p>
<p>It must be equally frustrating for recruiters to find quality people, especially these days when it seems that only tech companies are the ones struggling to find workers while other industries face massive layoffs and closures. And being unable to reach people has to make their jobs especially difficult.</p>
<h2>What&#8217;s A Company To Do? Use Recruiters Or Not?</h2>
<p>In this day and age though, for we the programmers, jobs are plenty. At SendGrid alone we currently have over <a href="http://sendgrid.com/jobs.html">30 open positions</a> we&#8217;re trying to fill. One of the biggest problems we have is geography. Our office in Anaheim isn&#8217;t easy to get to for all of the talent in West LA or Burbank areas. So we&#8217;ve been upping our own game, hiring in-house recruiters, and relying less on outside agencies to find potential candidates.</p>
<p>Should recruiting agencies go die in fire? Nah, I&#8217;m sure big corporations need them to attract people to less-than-glamorous jobs. But if you have a fun startup or small business, I would suggest you don&#8217;t waste your time: attend hackathons, sponsor them even. Get your name out there. Make your business about something people actually USE, and reach out to them. (We&#8217;ve lost count at SendGrid how many employees came from other companies who use SendGrid&#8217;s services) Continue to foster a strong trusting culture within your company and your employees will bring more than enough referrals.</p>
]]></content:encoded>
			<wfw:commentRss>http://iandouglas.com/2012/10/06/recruiters-sass-slime-spam-and-scorn/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Project Sputnik XPS13: Initial Impressions</title>
		<link>http://iandouglas.com/2012/09/04/project-sputnik-xps13-initial-impressions/</link>
		<comments>http://iandouglas.com/2012/09/04/project-sputnik-xps13-initial-impressions/#comments</comments>
		<pubDate>Tue, 04 Sep 2012 20:10:34 +0000</pubDate>
		<dc:creator>ian douglas</dc:creator>
				<category><![CDATA[devops]]></category>
		<category><![CDATA[project sputnik]]></category>
		<category><![CDATA[webdev]]></category>

		<guid isPermaLink="false">http://iandouglas.com/?p=4623</guid>
		<description><![CDATA[My XPS13 arrived today. While I hadn&#8217;t initially applied to Dell&#8217;s beta group for Project Sputnik, I&#8217;ve been pretty eager about it to the point of wanting to purchase a full-price XPS13 on which to test the software. The appeal of downloadable chef recipes to configure a box for programming different languages was too strong [...]]]></description>
				<content:encoded><![CDATA[<p>My <a href="http://www.dell.com/xps13">XPS13</a> arrived today. While I hadn&#8217;t initially applied to Dell&#8217;s beta group for <a href="http://www.ideastorm.com/Idea2SessionIdea?v=1336396592542&amp;id=a017000000hIx3bAAC">Project Sputnik</a>, I&#8217;ve been pretty eager about it to the point of wanting to purchase a full-price XPS13 on which to test the software. The appeal of downloadable chef recipes to configure a box for programming different languages was too strong to resist. My hesitation was the limitation of 4GB of RAM on the laptop, which is an <a href="https://twitter.com/IdeaStorm/status/242238029832519680">oft-asked upgrade</a>. Considering our production systems at <a href="http://sendgrid.com">work</a> are an older version of Ubuntu, until I figure out how the Sputnik &#8220;deploy to cloud&#8221; system is supposed to work, I&#8217;ll need a VM running on my box, and that&#8217;s going to need 2GB of the 4GB of RAM on the system. Not a showstopper, but definitely something that will come up whenever I&#8217;m using the laptop. Incidentally, I&#8217;m going to attempt to use the XPS13 for most of the month of September as my &#8220;daily driver&#8221; once I get it configured.</p>
<p>Edit: I had debated trying the Sputnik software on my XPS15-L501x since I have that dual-booting with Ubuntu 12.04 already, but the Optimus graphics in it are flaky at best, and it&#8217;s my wife&#8217;s &#8220;daily driver&#8221; so trying to come up with an alternative for her would be more difficult.</p>
<p>After contacting <a href="http://twitter.com/barton808">Barton George</a>, the lead on the project, and replying to some tweets by several people that they were not going to participate because of the cost of the laptop (c&#8217;mon, were you really expecting a <span style="text-decoration: underline;">free</span> laptop?), Barton wrote back and said he&#8217;d see if he could get me into the beta. A day or two later, I had the paperwork printed, signed, scanned, and sent back. Friday morning I got my coupon code and ordered my XPS13. Initially delivery date was the following Thursday even with &#8220;next business day&#8221; shipping. The next morning, Dell pinged me to up my delivery date to Wednesday. Yesterday, FedEx reported the XPS13 would arrive today by 3pm, and it arrived by 11am.</p>
<p>I won&#8217;t cover unboxing, as <a href="http://blog.mattwoodward.com/2012/08/dell-sputnik-ultrabook-initial.html">Matt Woodward did a great job with his</a>. Matt and I had never met prior to Sputnik, but his blog is full of great webdev&#8217;ery. Go check it out.</p>
<p>Before I powered on the XPS13, I plugged in a USB 2.0 pen drive with the Sputnik ISO installed per our instructions. I also plugged in a USB 3.0 drive enclosure with an SSD to back up the Windows 7 partition in case I wanted to dual-boot later, and powered on the laptop. I decided not to worry about Win7, unmounted the external drive, and tried to continue with the software installation., but the removal of the USB 3.0 SSD seems to have caused some internal issue (yay, Ubuntu&#8230; I&#8217;ve had similar issues on two other laptops), as installation crashed three times trying to get past the first two or three screens. I rebooted, didn&#8217;t hit F12 quick enough and Windows started booting. I powered off the laptop, powered it back on, mashed F12 a few times, which started the live image, and the installation program ran just fine.</p>
<p>I paused at the screen where I had to enter my username and password and wonder whether to encrypt the home folder in case I lose the XPS13. Anyone smart enough to use Linux will surely know how to remount the home folder anyway, or even easier: simply change my user password. Still, due diligence, right? As I was typing my information, I did notice that the keyboard felt quite warm around the IOP/KL; keys, and the laptop had been sitting completely idle. Lifting it up, it was warm underneath as well, and I confirmed that where it was sitting was not blocking any air vents. Hopefully that&#8217;s not indicative of other issues to come.</p>
<p>My initial thoughts, otherwise:</p>
<ul>
<li>Wow, this thing is light. Then again, I&#8217;ve lugged around 10lb+ laptops for the past several years.</li>
<li>Feels sturdy for the form factor. I envision myself picking this up by a corner off the desk a lot, and don&#8217;t feel like it&#8217;s going to crack under the weight.</li>
<li>The keys feel slippery; they&#8217;re comfortable to type on, but feel like they have a glossy finish. Maybe this will make me a faster typist?</li>
<li>The trackpad being tap-able AND clickable is a little annoying. A deep press on the trackpad seems to equate to a left-button click, but a very soft tap on the trackpad does the same. Not to mention there are dedicted &#8220;left/right&#8221; button areas at the bottom of the trackpad anyway. Apparently someone at Dell used to work for the Redundant Department of Redundancy.</li>
<li>It&#8217;s hard to tell if the fan is blowing because there&#8217;s a lawnmower running outside.</li>
<li>These stickers gotta go. I *know* I&#8217;m running a Dell XPS13 Ultrabook, I don&#8217;t need a reminder, and the Win7 and Intel i7 stickers, meh. On the flip side, if they&#8217;d shipped it with some custom &#8220;project sputnik&#8221; sticker to put on the lid, I&#8217;d be in heaven. I&#8217;m a bit of a sticker nut on my laptops.</li>
<li>Installation was fast, though would have been significantly faster if installing from my USB 3.0 key instead of USB 2.0. Not sure why that was recommended, but I followed instructions. Reboot was &#8220;holy crap&#8221; fast. Like, turn my head to write a few words here and I hear the Ubuntu drum beats telling me it&#8217;s time to log in.</li>
</ul>
<p>Per <a href="https://twitter.com/iandouglas736/status/242415631033573376">my tweet on the weekend</a>, the one thing I&#8217;m finding lacking so far is instructions on &#8220;what&#8217;s next&#8221; in terms of getting the actual Sputnik programmer profiles downloaded and chef&#8217;d. Installing the ISO on a Virtualbox VM this weekend had issues downloading chef per Dell&#8217;s instructions, but then again I felt like there was some significant &#8220;hunting&#8221; needed to find the github repos where the profiles (<a href="https://github.com/hh-cookbooks/sputnik">here</a> and <a href="https://github.com/sputnik/sputnik">here</a>) exist. It would have been nice, since the Sputnik PPAs were already added to the ISO image, if *something* were installed on the desktop like a &#8220;getting started&#8221; guide.</p>
<p><em>As far as disclaimers go, Dell has asked that beta participants disclose up front that we have received <span style="text-decoration: underline;">significant</span> discounts on the hardware as part of our beta program participation, and that we blog and tweet regularly about our experiences, within the guidelines of our non-disclosure contract.</em></p>
<p><script type="text/javascript">// <![CDATA[
google_ad_client = "ca-pub-1335093070283715"; /* id content, 300x250, created 4/26/10 */ google_ad_slot = "8498795251"; google_ad_width = 300; google_ad_height = 250;
// ]]&gt;</script><br />
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js">// <![CDATA[</p>
<p>// ]]&gt;</script></p>
]]></content:encoded>
			<wfw:commentRss>http://iandouglas.com/2012/09/04/project-sputnik-xps13-initial-impressions/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>I made a promise to LinkedIn about recruiter spam</title>
		<link>http://iandouglas.com/2012/06/13/i-made-a-promise-to-linkedin-about-recruiter-spam/</link>
		<comments>http://iandouglas.com/2012/06/13/i-made-a-promise-to-linkedin-about-recruiter-spam/#comments</comments>
		<pubDate>Wed, 13 Jun 2012 08:18:44 +0000</pubDate>
		<dc:creator>ian douglas</dc:creator>
				<category><![CDATA[webdev]]></category>

		<guid isPermaLink="false">http://iandouglas.com/?p=3848</guid>
		<description><![CDATA[I get spammed regularly and frequently by Ticketmaster / Live Nation via LinkedIn by someone named Natalie Kuperman (LinkedIn says she&#8217;s contact me a total of 16 times). I&#8217;ve asked her to stop, but I&#8217;m guessing that TM/LN have paid for some super premium account at LinkedIn which allows automated means to contact users in [...]]]></description>
				<content:encoded><![CDATA[<p>I get spammed regularly and frequently by Ticketmaster / Live Nation via LinkedIn by someone named Natalie Kuperman (LinkedIn says she&#8217;s contact me a total of 16 times). I&#8217;ve asked her to stop, but I&#8217;m guessing that TM/LN have paid for some super premium account at LinkedIn which allows automated means to contact users in bulk.</p>
<p>Trouble is, LinkedIn has no way to allow me to block her messages. Worst of all, the Emails that wind up in my Inbox have no way to report the user for spamming, I have to waste a few minutes of my time to log into LinkedIn to flag her message (and her account) as spam.</p>
<p>I sent the following text to LinkedIn: (oh, and I had to <strong>guess</strong> that the Email address was support@linkedin.com since they didn&#8217;t have an easy-to-find way to contact them on their site. What is this, 1995?)</p>
<blockquote><p>Hey support team,</p>
<p>I&#8217;ve asked this user (Natalie Kuperman) *repeatedly* to stop Emailing me. How do I blacklist them on LinkedIn or find a way to block them from seeing my profile, or get them kicked off of LinkedIn for spamming or whatever it&#8217;s going to take to get them to knock it off?</p></blockquote>
<p>Their response showed up about 38 hours later:</p>
<blockquote><p>Hi Ian,</p>
<p>Currently, we don’t have an option that allows you to block your profile from being seen by other LinkedIn members or messages from being sent from them. However, you might want to adjust the settings on your account to stop getting notifications. You can do this by going to this link:</p>
<p>https://www.linkedin.com/settings/?tab=email</p>
<p>If you have further questions, please feel free to let me know.</p>
<p>Regards,</p>
<p>Melvin<br />
LinkedIn Customer Service</p></blockquote>
<p>So if I understand Melvin correctly, changing this setting to &#8220;off&#8221; will only stop me from getting a copy of the LinkedIn Inbox message via Email. This doesn&#8217;t even fix the underlying problem since the next time I log into LinkedIn I&#8217;m still going to see their crappy spam. Or did he mean just to shut off ALL communication on the site?? Might as well just tell me to close my account.</p>
<p>Luckily, 48 hours and 2 minutes later, I got an Email asking if I&#8217;d like to fill out a survey about my support ticket. Oh, indeed I would. On the very last page, it gave the opportunity to write a few remarks. This was my little letter to LinkedIn, along with a promise that I would not only blog about my experience, but write Twitter messages every time I got recruiter spam.</p>
<blockquote><p>First, LinkedIn needs to add a link to the bottom of Emails being sent by other users to &#8220;report this as spam&#8221; so I don&#8217;t have to log into the web site to flag it or report it there. I should be able to do this via a link in the Email footer.</p>
<p>Secondly, LinkedIn NEEDS to have a way to allow users to block individuals from contacting them if there is no LinkedIn connection between them. I&#8217;m getting recruiter spam from the same person about once a month, and it appears to be some automated means because I&#8217;m sure a human being would be able to read a response of &#8220;stop contacting me&#8221; several times over and over and be a decent person and knock it off. I have never connected with this person via LinkedIn, so it&#8217;s not a direct &#8220;hey, just following up with you&#8221; kind of conversation. They are explicitly spamming me about once a month for the past ~6 months or more.</p>
<p>Thirdly, you&#8217;re technically breaking the law by NOT having a feature to allow this. In effect, you&#8217;re guilty of being accomplices to spammers who have found a way around the CanSpam act since I have no way to be removed from THEIR mailings.</p>
<p>Fourth, your representative told me that my ONLY recourse was to COMPLETELY shut off getting messages from ANYONE on LinkedIn. I find this completely unacceptable, and I might as well just shut down my account. I *want* to get messages from coworkers, past and present, as well as hearing about opportunities to share my expertise, but there HAS to be a way to block individuals when we are not &#8220;connected&#8221; on LinkedIn.</p>
<p>Your corporate response would be akin to calling the police to report harassing phone calls and them telling me to just disconnect my phone service.</p>
<p>I&#8217;ll also be blogging about this, and tweeting about my blog post every time this user continues to spam me until either their account is shut down, or you guys give individuals a way to block un-linked spammers.</p></blockquote>
<p>If I&#8217;m lucky, LinkedIn will fix the problem. Worst case, they see this blog post and close my account. Either way, I guess I win.</p>
]]></content:encoded>
			<wfw:commentRss>http://iandouglas.com/2012/06/13/i-made-a-promise-to-linkedin-about-recruiter-spam/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>name.com &#8212; shout out back at&#8217;cha</title>
		<link>http://iandouglas.com/2012/05/02/name-com-shout-out-back-atcha/</link>
		<comments>http://iandouglas.com/2012/05/02/name-com-shout-out-back-atcha/#comments</comments>
		<pubDate>Wed, 02 May 2012 16:48:44 +0000</pubDate>
		<dc:creator>ian douglas</dc:creator>
				<category><![CDATA[webdev]]></category>

		<guid isPermaLink="false">http://iandouglas.com/?p=3622</guid>
		<description><![CDATA[During scrum this morning, my phone kept buzzing that I&#8217;d been mentioned on Twitter. Over and over. Imagine my surprise when a simple exchange last night &#8212; asking if anyone had an affiliate link I could follow for a registrar, and replying to two colleagues (@timsegraves and @travisberry) who recommended name.com, that my simple tweet [...]]]></description>
				<content:encoded><![CDATA[<p>During scrum this morning, my phone kept buzzing that I&#8217;d been mentioned on Twitter. Over and over.</p>
<p>Imagine my surprise when a simple exchange last night &#8212; asking if anyone had an affiliate link I could follow for a registrar, and replying to two colleagues (<a href="https://twitter.com/#!/timsegraves">@timsegraves</a> and <a href="https://twitter.com/#!/travisberry">@travisberry</a>) who recommended name.com, that my simple tweet saying <a href="https://twitter.com/#!/iandouglas736/status/197551328493436929">&#8220;thanks, I&#8217;ll check out @namedotcom&#8221;</a> &#8211; would turn into this unexpected summary of me and my skills from name.com: (read them in reverse order)</p>
<p><a href="http://iandouglas.com/2012/05/02/name-com-shout-out-back-atcha/screenshot-at-2012-05-02-093611/" rel="attachment wp-att-3623"><img class="size-full wp-image-3623" title="Unexpected shout out from name.com on Twitter" src="http://iandouglas.com/wp-content/uploads/2012/05/Screenshot-at-2012-05-02-093611.png" alt="" width="500" height="795" /></a></p>
<p>Don&#8217;t think I&#8217;ve ever seen a company try so hard to win over a customer. Maybe I should hit them up for a discount, since I&#8217;ll be moving several dozen domain names from GoDaddy this week&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://iandouglas.com/2012/05/02/name-com-shout-out-back-atcha/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Why I backed Pebble at Kickstarter, along with 30,000+ others</title>
		<link>http://iandouglas.com/2012/04/18/why-i-backed-pebble-at-kickstarter-along-with-30000-others/</link>
		<comments>http://iandouglas.com/2012/04/18/why-i-backed-pebble-at-kickstarter-along-with-30000-others/#comments</comments>
		<pubDate>Wed, 18 Apr 2012 18:52:50 +0000</pubDate>
		<dc:creator>ian douglas</dc:creator>
				<category><![CDATA[mobile]]></category>
		<category><![CDATA[personal]]></category>

		<guid isPermaLink="false">http://iandouglas.com/?p=3453</guid>
		<description><![CDATA[I saw someone post about the Pebble Kickstarter project (I can&#8217;t remember if I saw it on Twitter or Google+) and without even watching the promo video, I immediately backed the project, my first Kickstarter pledge. I signed up for the Hacker Special, to gain access to the early SDK and one of the devices [...]]]></description>
				<content:encoded><![CDATA[<p><img class="alignleft" title="pebble smartwatch" src="http://s3.amazonaws.com/ksr/projects/111694/photo-full.jpg?1334081632" alt="" width="500" height="375" /> I saw someone post about the <a title="Pebble at Kickstarter" href="http://www.kickstarter.com/projects/597507018/pebble-e-paper-watch-for-iphone-and-android" target="_blank">Pebble Kickstarter project</a> (I can&#8217;t remember if I saw it on Twitter or Google+) and without even watching the promo video, I immediately backed the project, my first Kickstarter pledge. I signed up for the Hacker Special, to gain access to the early SDK and one of the devices in August before the September launch. When Kickstarter processed my payment, the funding round had 37 days to go and they had already hit $108,000 of their $100,000 goal. I was excited that they were already funded. I got about the 60th Hacker Special and the rest of the 100 they allocated sold out quickly.</p>
<p>Only a few days later, at the time of this writing, there are 31,516 backers (there were only 31,497 when I started writing the sentences above, that&#8217;s how quickly people are jumping on this!), and they&#8217;ve passed $4.5M in pledged funding, an average of $144 per pledge. It was interesting to read last night how Eric and his team went through the Y Combinator program to get started, but then fell flat on funding because <a href="http://go.bloomberg.com/tech-deals/2012-04-17-rejected-by-vcs-pebble-watch-raises-3-8m-on-kickstarter/" target="_blank">none of the VC&#8217;s wanted to back a hardware project</a>. Were those on the VC panel out of touch, or do they see something that 31,000 other people haven&#8217;t seen yet regarding the success? Or are they all kicking themselves for not funding this themselves after all?</p>
<p>The Pebble just makes sense. It has a lot of simple features, and none of the overbearing things that Sony or Motorola have had to overcome. Here are a few thoughts on why I backed the project:</p>
<p><strong>Battery Life</strong><br />
A simple e-ink display should last &#8220;7+ days&#8221; according to the developers. Frankly, I&#8217;m used to replacing a watch battery every year or so, and my current Casio watches are actually solar powered and may never need a new battery. While it&#8217;ll take some getting used to plugging in a watch to charge it, doing so once a week is not prohibitive.</p>
<p><strong>Simple OS stack</strong><br />
According to the project notes I&#8217;ve read, they&#8217;re using a low-footprint real-time OS. Their previous project, inPulse, uses FreeRTOS, and their SDK will be a simple C-based development environment similar to programming for Arduino. Frankly, I&#8217;m not interested in having a full Android stack on a watch. If you look at devices by Sony, Motorola and imWatch, you&#8217;ll see how thick they are, some of them are half an inch thick. And all of them, if I&#8217;ve read their notes properly, may last up to 24 hours on a charge.</p>
<p><strong>Simple UI: buttons</strong><br />
I don&#8217;t need a touch screen on my watch. It would add unnecessary complexity to the OS, expense on production, and really isn&#8217;t needed. The Pebble is meant to be a simple device. I&#8217;m happy with a 4-button control system.</p>
<p><strong>Style</strong><br />
I&#8217;m not that into fashion. I could give a rip about the multiple colors they produce. I&#8217;ll take the full black Pebble happily. But the Pebble design seems both modern and elegant at the same time. Simple is better.</p>
<p>I&#8217;m *really* looking forward to the Pebble. It&#8217;s a simple device, and that&#8217;s all a watch really needs to be. I don&#8217;t need a Dick Tracy device &#8212; my phone is a better tool for playing music, replying to SMS/Email, etc. All my watch needs to do is tell me the time, and display high priority notifications.</p>
<p>The enormous backing of the project <strong>clearly</strong> shows that there&#8217;s a market for smartwatches of some degree. I passed on the Sony and Motorola models, as well as the i&#8217;mWatch which I saw at Google IO last year, because I don&#8217;t believe a watch needs to run a full Android stack to be functional. If I&#8217;m going to reply to a text, I&#8217;ll use the phone itself; I don&#8217;t intend to listen to music from a watch; I don&#8217;t need games, etc., on the watch. I need it to tell me the time, it needs to keep good time without needing constant synchronization, and needs to have basic watch functions like an alarm and stopwatch. Everything else is candy.</p>
<p>My biggest requirement in a watch, frankly, is that it stays synced with NTP, which my Android phone handles for me, so updating the watch itself with a new time periodically to correct for drift is the biggest thing for me. And using it as a vibrating alarm clock instead of an obnoxious beeping alarm would be far better for me in the mornings. And if I have to charge the watch one night a week instead of wearing it to bed, then hey, that&#8217;s the morning I sleep in.</p>
<p>There are certainly trade offs with such a simple RTOS design, instead of a full Android stack, of course. Would it be handy to have full apps? I suppose it depends on the app, but I don&#8217;t envision myself reading Tweetdeck or doing web browsing or playing <a title="Crush the Castle, by Armor Games" href="https://play.google.com/store/apps/details?id=com.namcowireless.ctc&amp;hl=en" target="_blank">Crush The Castle</a> on a 144&#215;168 pixel screen. Trying to be &#8220;all things to all people&#8221; is why Sony, Motorola and imWatch have to charge outrageous money for their devices (granted, Sony recently put their device on sale for about $120, I wonder if in response to Pebble). The flip side is that chances are good that I&#8217;ll have to write apps both for the Pebble *and* Android to keep things sync&#8217;d between my devices.</p>
<p>When the project hit $1M in funding, they decided to make a design change and make the device waterproof. At $2M they announced that everyone would get access to the SDK early. At $3M they teased us that more news would be coming soon, and they pinged everyone again to let us know they are officially the most funded project on Kickstarter. Now that they&#8217;re up to $4.5M, it&#8217;ll be interesting to see what other changes they make.</p>
<p>How would I spend their money? Glad you asked.</p>
<p>Lots of people are asking for Bluetooth 4.0 which would give the Pebble far more reach in the market than restricting it to iOS and Android only. The team has even said they can&#8217;t support WP7 because WP7 doesn&#8217;t support the necessary Bluetooth functionality. That sounds fishy to me. BT4 would make the Pebble more generic for sending/receiving information.</p>
<p>Inductive charging would be amazing, but I imagine the batteries aren&#8217;t small enough to be practical.</p>
<p>Personally, I&#8217;d love to see them change to a micro USB charging port instead of their planned proprietary plug. In this day and age, it doesn&#8217;t make sense to spend money developing and maintaining proprietary plugs any more.</p>
<p>I&#8217;d love to be a beta tester for their SDK and Emulator to get a jump start on apps. Releasing the SDK in August for a September release will make developers feel rushed.</p>
<p>And I&#8217;d love to hear that they have plans for a marketplace for other watch bands (though they claim any 22mm watch band will fit). I&#8217;d love to hear more plans for their marketplace for downloading/buying apps for the watch.</p>
<p>And finally, I&#8217;d love for them to explain what the two metal contacts on the lower left edge of the Pebble are going to be used for. And to tell us how thick they expect the device will be.</p>
<p>(by the time I finished writing this, Pebble&#8217;s backers are up +200 to 31,706 in the time it took to write this simple blog article)</p>
]]></content:encoded>
			<wfw:commentRss>http://iandouglas.com/2012/04/18/why-i-backed-pebble-at-kickstarter-along-with-30000-others/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Android Security wakes the sleeping blogger</title>
		<link>http://iandouglas.com/2012/04/16/android-security-wakes-the-sleeping-blogger/</link>
		<comments>http://iandouglas.com/2012/04/16/android-security-wakes-the-sleeping-blogger/#comments</comments>
		<pubDate>Mon, 16 Apr 2012 16:35:28 +0000</pubDate>
		<dc:creator>ian douglas</dc:creator>
				<category><![CDATA[mobile]]></category>
		<category><![CDATA[aggregated]]></category>

		<guid isPermaLink="false">http://twitter.com/iandouglas736/statuses/191927800284987392</guid>
		<description><![CDATA[Android Users beware: This Scrum tool can output to Google Docs but adds the app developer AS AN EDITOR. #security! https://t.co/SXV1GQlB]]></description>
				<content:encoded><![CDATA[<p>Can't believe it's been so many months since I blogged last. Even quitting Facebook (<a href="https://plus.google.com/113763167140406107715/posts/QiSdg4ujKbc">link 1</a>, <a href="https://plus.google.com/113763167140406107715/posts/2SLucue6GDz">link 2</a>) wasn't enough to blog, but this one deserves a post.</p>

<p>Update, April 19, 2012:<br>
It seems that Google isn't showing my user review on the app. At best, they're holding it for human eyes to review since it was both a 1-star review and contained a URL back to this blog post. At worst, they mark those comments as spam so only the author of the comment can see it. Here's a screenshot of my comment:</p>

<p style="text-align: center;"><a href="http://iandouglas.com/2012/04/16/android-security-wakes-the-sleeping-blogger/screenshot-at-2012-04-19-123637/" rel="attachment wp-att-3464"><img class="size-medium wp-image-3464 aligncenter" title="Nobody but me can see my review?" src="http://iandouglas.com/wp-content/uploads/2012/04/Screenshot-at-2012-04-19-123637-300x204.png" alt="" width="300" height="204" /></a></p>
&nbsp;

<p>At <a href="http://sendgrid.com">work</a>, I'm the permanent scrum-master for my team, and was looking for tools that would help semi-automate the process, or at least provide a better way of taking notes to share with other teams than writing on a notepad and typing it up on my system afterward. <a href="http://thinkingserious.com">Elmer</a> was always much better at this using some tool that would generate nice notes based on markdown.</p>

<p><a title="stay away from this app!!" href="https://play.google.com/store/apps/details?id=com.ean.scrumtimer">Scrum Master Assistant</a>, on the surface, looks like a great tool. You can set up multiple kinds of meetings, add participants, add notes, new issues, it even has a timer so you can track who's a chatterbox during scrum to keep things running quickly and smoothly. They've recently added a "publish to Google Docs" feature which makes a pretty neat spreadsheet. I figured I'd test it out before our actual scrum meeting and could NOT believe what I saw.</p>

<p>In the settings, I had already told the app which Google account to use for publishing to Google Docs:</p>

<p><a href="http://iandouglas.com/2012/04/16/android-security-wakes-the-sleeping-blogger/sc20120416-105620/" rel="attachment wp-att-3421"><img class="aligncenter size-medium wp-image-3422" title="SC20120416-105620" src="http://iandouglas.com/wp-content/uploads/2012/04/SC20120416-105620-300x187.jpg" alt="" width="300" height="187" /></a></p>

<p>When you publish to Google Docs for the first time, the app prompts you for permission, which I would have expected:</p>

<p><a href="http://iandouglas.com/2012/04/16/android-security-wakes-the-sleeping-blogger/sc20120416-105627/" rel="attachment wp-att-3422"><img class="aligncenter size-medium wp-image-3422" title="SC20120416-105627" src="http://iandouglas.com/wp-content/uploads/2012/04/SC20120416-105627-300x187.jpg" alt="" width="300" height="187" /></a></p>

<p>A second prompt asked for access to Google Spreadsheets, which I also allowed.</p>

<p>Once published, I logged into Google Docs, and saw that the spreadsheet for my sample meeting, where I was the only attendee, had sharing permissions set to "only the people listed below" but to my horror saw that the app developer added THEMSELF as a shared person on the document. If that wasn't bad enough, they added themselves as an EDITOR to the document:</p>

<p><a href="http://iandouglas.com/2012/04/16/android-security-wakes-the-sleeping-blogger/screenshot-at-2012-04-16-110002/" rel="attachment wp-att-3423"><img class="aligncenter size-full wp-image-3423" title="Screenshot at 2012-04-16 11:00:02" src="http://iandouglas.com/wp-content/uploads/2012/04/Screenshot-at-2012-04-16-110002.png" alt="" width="342" height="174" /></a></p>

<p><a href="http://iandouglas.com/2012/04/16/android-security-wakes-the-sleeping-blogger/screenshot-at-2012-04-16-110008/" rel="attachment wp-att-3424"><img class="aligncenter size-medium wp-image-3424" title="Screenshot at 2012-04-16 11:00:08" src="http://iandouglas.com/wp-content/uploads/2012/04/Screenshot-at-2012-04-16-110008-300x276.png" alt="" width="300" height="276" /></a></p>

<p>I couldn't believe that the developer would pull such a blatant move. I immediately <a href="https://play.google.com/store/apps/details?id=com.ean.scrumtimer&amp;reviewId=10165753931568085562">left feedback on Google Play</a> and uninstalled the app. Then I reinstalled it to grab screenshots.</p>

<p>When you install the app, it tells you about the following permissions:</p>
<ul>
	<li>modify/delete USB storage</li>
	<li>take pictures and videos</li>
	<li>full internet access</li>
	<li>act as an account authenticator, use the authentication credentials of an account</li>
	<li>read contact data</li>
	<li>view network state</li>
	<li>discover known accounts</li>
</ul>
<p>On the surface, those permissions seem fine, given the published list of features of the application. Namely, it would use your contacts to add people to meetings, it could take a picture of who was at the meeting, needs Internet access to publish notes online, and needs access to your Google account to push to Google Docs. I suppose it needed access to your USB data in order to save notes to your device.</p>

<p>Version 1.3.3 of the app, published March 2, 2012, says it fixed a few defects and *removed* unnecessary user permissions. As of version 1.3.1, it said it was no long ad-supported yet maintains a full name of "Scrum Master Assistant (adware)", and added the Google Docs integration.</p>

<p>The Description of the app says this:</p>
<pre>**** No Ads ****
**** Publish reports to Google Docs (Beta) ****
**** Adapted for tablets ****

The application will help Scrum Masters at daily Scrums to gather
impediments and help team members stay focused, restrict the meeting
duration to 15 minutes. Every meeting is immediately followed by a
scrum report with all the collected issues and meeting details to
show who was too talkative.

Features
- Meeting duration timer and timer for every participant to keep
  everyone focused on agenda
- Participant details, photo can be imported from Phone Contacts.
  Contacts can be synchronized with Google contacts
- A photo can be also captured using a phone camera or taken from
  a picture gallery
- Collected Action items, issues can be shared via Google Docs or
  sent as Excel report to e-mail

Key words: Agile tool, Scrums, Daily Scrum, Standup, Scrum Master,
Meetings, Meeting Notes, Meeting Minutes</pre>

<p>There is NO notice anywhere within the app that tells you the dev is going to share every document with them. There's no disclosure of why they need access to USB storage.</p>

<p>How have no others users reported this yet??</p>]]></content:encoded>
			<wfw:commentRss>http://iandouglas.com/2012/04/16/android-security-wakes-the-sleeping-blogger/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>In retrospect, is Verizon the best carrier to launch the Galaxy Nexus?</title>
		<link>http://iandouglas.com/2011/12/07/in-retrospect-is-verizon-the-best-carrier-to-launch-the-galaxy-nexus/</link>
		<comments>http://iandouglas.com/2011/12/07/in-retrospect-is-verizon-the-best-carrier-to-launch-the-galaxy-nexus/#comments</comments>
		<pubDate>Wed, 07 Dec 2011 21:10:33 +0000</pubDate>
		<dc:creator>ian douglas</dc:creator>
				<category><![CDATA[mobile]]></category>

		<guid isPermaLink="false">http://iandouglas.com/?p=2901</guid>
		<description><![CDATA[Since the Nexus One in early 2010, I&#8217;ve been an Adroid advocate, especially when it came to Google&#8217;s &#8220;flagship&#8221; products of a pure Android experience. The simplicity of it was very appealing for those with a minimalist mindset: no carrier bloatware, nothing disabled, good (sometimes great) hardware, and sometimes drastic changes which pushed other manufacturers [...]]]></description>
				<content:encoded><![CDATA[<p>Since the Nexus One in early 2010, I&#8217;ve been an Adroid advocate, especially when it came to Google&#8217;s &#8220;flagship&#8221; products of a pure Android experience. The simplicity of it was very appealing for those with a minimalist mindset: no carrier bloatware, nothing disabled, good (sometimes great) hardware, and sometimes drastic changes which pushed other manufacturers to keep up. I dropped AT&amp;T (for a change) after being a customer for nearly a decade and switched to T-Mobile to get the Nexus One, and never looked back.</p>
<p>Lessons that I think Google has learned since the Nexus One:</p>
<ul>
<li>Heavy phones weren&#8217;t as desirable. The Samsung Nexus S, Nexus S 4G and Galaxy Nexus are all plastic cases and quite light compared to HTC&#8217;s Nexus One and its metal case. Granted, the Nexus One &#8220;felt&#8221; like a substantial phone.</li>
<li>Trackballs suck, but notification lights do not. The multi-color trackball on the Nexus One was great for notifications, but in the year I had the phone, I almost never used it. On the Nexus S, I don&#8217;t miss the trackball, but miss the notification light. Thankfully the Galaxy Nexus will have a notification light but I haven&#8217;t heard anywhere if it&#8217;s multi-colored or not.</li>
<li>Curved glass is nice. Yeah, maybe it feels better holding it to my face, but honestly, I haven&#8217;t seen other manufacturers step up on this one. Obviously not a *necessary* ground-breaking move by Samsung.</li>
<li>SD cards are so last year. While I was initially annoyed by the lack of SD card in my Nexus S, I get along fine without it. I have an rsync tool that I use to sync my phone wirelessly with a NAS drive at home. The Galaxy Nexus will take the internal storage one step further by removing all partitioning. The downside is that Linux and Mac users don&#8217;t have the &#8220;plug and play&#8221; capability over USB, but as long as my rsync tool keeps working, I won&#8217;t mind.</li>
<li>NFC is the future. For now, anyway. The latest Facebook app update includes NFC capabilities, and I read more about NFC uses every day. I&#8217;ve used NFC on my Nexus S exactly once: at Google I/O in May 2011.</li>
<li>Buying phones online was great for people with agoraphobia (fear of going outside), but it was too risky. The Nexus S was sold in Best Buy stores and later at Sprint stores with the Nexus S 4G revamp. The Galaxy Nexus sounds primed (no pun intended with the rumored device name) to sell at several carrier stores in the near future, as well as Best Buy and Radio Shack.</li>
</ul>
<p>Knowing all of that, and the latest buzz around the Galaxy Nexus, I need to ask: Was Verizon really the best choice to launch the Galaxy Nexus?</p>
<p>When the Nexus One was released in January 2010, it launched on T-Mobile with 3G capabilities but you could only buy it online, which was risky, and was a solid phone. Rumors of having it on all 4 of the major US carriers flourished, but only AT&amp;T picked it up, and it was quite a while after launch. Verizon and Sprint eventually admitted they weren&#8217;t going to carry the device. In December 2010, the Nexus S was released, and again only a T-Mobile version was launched; Sprint picked it up half a year later.</p>
<p>Verizon, aka &#8220;Big Red&#8221; has had a lot of news coverage about blocking tethering apps, installing permanent bloatware, and then it leaked that they were installing a few apps on the Galaxy Nexus, which is supposed to be entirely free of Carrier applications. I read a lot of &#8220;quit whining, it&#8217;s only 2 apps&#8221; on Engadget, but the truth is that this device wasn&#8217;t supposed to have ANY. Over the past few days, it was announced that Verizon and Google were at odds about Google Wallet on the Galaxy Nexus, and today the news broke that Verizon broke some federal rules about the spectrum deal from a few years ago when they blocked Google Wallet from working.</p>
<p>I was quick to criticize Google a few days ago over letting Verizon stipulate the terms of what is supposed to be a &#8220;pure&#8221; Android device, and that criticism still holds true for me. I don&#8217;t believe that Google should have to bow to anyone in that regard, and that the carriers need to just back off and let Google lead the charge. T-Mobile let them. Sprint let them. Yet Verizon is causing so many problems, it&#8217;s like they don&#8217;t WANT to release the device now.</p>
<p>Frankly, I was ready to pony up $300 of my dollars, plus a $50 ETF to T-Mobile, to switch my service to Verizon, plus pick up several of the accessories, but lately I&#8217;m regretting that decision and wondering whether to hold out for another carrier to carry the phone. If Sprint would allow the device on their network, I&#8217;d consider it, but not sure I&#8217;d want to stay with T-Mobile as they have poor coverage where I live. AT&amp;T isn&#8217;t even an option. They&#8217;d have to give me the phone for free including cell/data if they ever want me back as a customer.</p>
<p>I know that Google has some sort of &#8220;bidding&#8221; process where handset manufacturers compete for the rights to build the next Nexus device, but I wonder whether they do the same for carriers, and whether someone&#8217;s legal team is going after Verizon over the many delays of this product.</p>
<p>Given the pentaband radio support in the Galaxy Nexus, would it make more sense to just sell an unlocked device where you got to choose your carrier based on the SIM you insert? Should I pick up a Canadian model over the holidays and see which GSM carrier to use?</p>
<p><script type="text/javascript">// <![CDATA[
  google_ad_client = "ca-pub-1335093070283715"; /* id content, 300x250, created 4/26/10 */ google_ad_slot = "8498795251"; google_ad_width = 300; google_ad_height = 250;
// ]]&gt;</script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script></p>
]]></content:encoded>
			<wfw:commentRss>http://iandouglas.com/2011/12/07/in-retrospect-is-verizon-the-best-carrier-to-launch-the-galaxy-nexus/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Search and Replace in Bash script</title>
		<link>http://iandouglas.com/2011/07/28/search-and-replace-in-bash-script/</link>
		<comments>http://iandouglas.com/2011/07/28/search-and-replace-in-bash-script/#comments</comments>
		<pubDate>Thu, 28 Jul 2011 21:24:11 +0000</pubDate>
		<dc:creator>ian douglas</dc:creator>
				<category><![CDATA[devops]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[bash regex perl awk]]></category>

		<guid isPermaLink="false">http://iandouglas.com/?p=2697</guid>
		<description><![CDATA[Had a colleague ask me how to do in-line regular expression matching for a Bash shell script. Since Bash v3 only offers a regex matching check and not the full s/foo/bar/ syntax, I offered to look into other alternatives. My natural instinct was to look for a Perl cmdline regex parser, which works great if [...]]]></description>
				<content:encoded><![CDATA[<p>Had a colleague ask me how to do in-line regular expression matching for a Bash shell script. Since Bash v3 only offers a <a href="http://tldp.org/LDP/abs/html/bashver3.html#REGEXMATCHREF">regex matching check</a> and not the full s/foo/bar/ syntax, I offered to look into other alternatives.</p>
<p>My natural instinct was to look for a Perl cmdline regex parser, which works great if you&#39;re <a href="http://joseph.randomnetworks.com/2005/08/18/perl-oneliner-recursive-search-and-replace/">manipulating a file</a> and not shell variables.</p>
<p>In the end, since he only needed a simple search and replace, and not an actual regular express, this suffices:</p>
<p><code>#!/bin/bash<br />
	VAR1=&quot;foobar&quot;<br />
	VAR2=`echo $VAR1 | awk -v srch=&quot;foo&quot; -v repl=&quot;bar&quot; \<br />
	</code><span class="Apple-style-span" style="font-family: monospace; ">&nbsp; &nbsp;&#39;{ sub(srch,repl,$0); print $0 }&#39;`<br />
	</span><span class="Apple-style-span" style="font-family: monospace; ">echo $VAR1<br />
	</span><span class="Apple-style-span" style="font-family: monospace; ">echo $VAR2</span></p>
]]></content:encoded>
			<wfw:commentRss>http://iandouglas.com/2011/07/28/search-and-replace-in-bash-script/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Fixing NO_PUBKEY errors from Apt</title>
		<link>http://iandouglas.com/2011/07/13/fixing-no_pubkey-errors-from-apt/</link>
		<comments>http://iandouglas.com/2011/07/13/fixing-no_pubkey-errors-from-apt/#comments</comments>
		<pubDate>Wed, 13 Jul 2011 17:42:57 +0000</pubDate>
		<dc:creator>ian douglas</dc:creator>
				<category><![CDATA[devops]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[apt]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[gpg]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://iandouglas.com/?p=2659</guid>
		<description><![CDATA[I&#39;ve been ignoring a problem updating Diodon&#160;(a great clipboard manager) whenever Ubuntu&#39;s daily Update Manager tries to alert me of new software updates. I finally opened a shell prompt, ran &#34;apt-get update&#34; and got this error: W: GPG error: http://ppa.launchpad.net natty Release: The following signatures couldn&#39;t be verified because the public key is not available: [...]]]></description>
				<content:encoded><![CDATA[<p>I&#39;ve been ignoring a problem updating <a href="http://www.webupd8.org/2011/01/diodon-lightweight-clipboard-manager.html">Diodon</a>&nbsp;(a great clipboard manager) whenever Ubuntu&#39;s daily Update Manager tries to alert me of new software updates. I finally opened a shell prompt, ran &quot;apt-get update&quot; and got this error:</p>
<pre>W: GPG error: http://ppa.launchpad.net natty Release: The following 
signatures couldn&#39;t be verified because the public key is not 
available: NO_PUBKEY 751A20CF523884B2
</pre>
<p>Here&#39;s how to fix any NO_PUBKEY error in two simple steps:</p>
<pre>$ gpg --recv-keys 751A20CF523884B2
gpg: requesting key 523884B2 from hkp server keys.gnupg.net
gpg: /home/id/.gnupg/trustdb.gpg: trustdb created
gpg: key 523884B2: public key &quot;Launchpad PPA for Diodon Team&quot; 
imported
gpg: Total number processed: 1
gpg:               imported: 1  (RSA: 1)

$ gpg --armor --export 751A20CF523884B2 | sudo apt-key add -
OK</pre>
<div>Ta-da&#8230;&nbsp;</div>
<pre>$ sudo apt-get upgrade
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages will be upgraded:
  diodon
1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 55.4 kB of archives.
After this operation, 115 kB of additional disk space will be used.
Do you want to continue [Y/n]? y
</pre>
<div>Just have to replace &#8220;751A20CF523884B2&#8243; with whatever public key value that Apt is complaining about. You can also specify which GPG server to connect to when using the &#8211;recv-keys flag, but if you leave it off, I beleive it will just connect to their main pool of GPG databases.</div>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://iandouglas.com/2011/07/13/fixing-no_pubkey-errors-from-apt/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Elastic Path Software: out of the colo and into the cloud, with Google App Engine</title>
		<link>http://iandouglas.com/2011/05/05/elastic-path-software-out-of-the-colo-and-into-the-cloud-with-google-app-engine/</link>
		<comments>http://iandouglas.com/2011/05/05/elastic-path-software-out-of-the-colo-and-into-the-cloud-with-google-app-engine/#comments</comments>
		<pubDate>Thu, 05 May 2011 22:17:35 +0000</pubDate>
		<dc:creator>ian douglas</dc:creator>
				<category><![CDATA[devops]]></category>
		<category><![CDATA[webdev]]></category>
		<category><![CDATA[aggregated]]></category>
		<category><![CDATA[ecommerce]]></category>
		<category><![CDATA[google app engine]]></category>
		<category><![CDATA[google io]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://twitter.com/iandouglas736/statuses/66265310705102848</guid>
		<description><![CDATA[iandouglas736: RT @GoogleCode: Elastic Path Software: out of the colo and into the cloud, with Google App Engine. http://goo.gl/Okovv ^sk #io2011]]></description>
				<content:encoded><![CDATA[<p>Eddie Chan at <a href="http://www.elasticpath.com/">Elastic Path Software</a>&nbsp;got a <a href="http://goo.gl/Okovv">guest blog spot</a> on Google Code&#39;s blog as part of their &quot;<a href="http://googlecode.blogspot.com/search/label/Who%27s%20at%20Google%20I%2fO">Who&#39;s at IO</a>&quot; and wrote about what Elastic Path is up to with regards to moving your apps out of colocation facility and writing them as Google App Engine applications. This is one sandbox sessions I&#39;m looking forward to checking out while I&#39;m at IO.</p>
<p>While I&#39;m always interested in running apps &quot;in the cloud&quot; (and we seriously need <a href="http://twitter.com/#!/sween/status/26856523502190592">a new term for that</a>), I&#39;m not sure if I want to get into Java programming just yet. I remember attending an introductory &quot;This is Java, this is how it&#39;ll change the world&quot; evening session with some coworkers from QNX back in late 1996, but I guess I&#39;ve always enjoyed the rapid development cycle of scripted languages because I can make fast changes to code for testing without having to stop and compile anything.</p>
<p>I&#39;m currently in the process of moving a client from a built-by-me e-commerce buying portal to OScommerce because I have too much on my plate already to rebuild his inventory/sales system from scratch. I was hoping to have had the time/energy to rewrite the catalog system in Python and move him to G.A.E., but his needs outpaced my available freelance development time.</p>]]></content:encoded>
			<wfw:commentRss>http://iandouglas.com/2011/05/05/elastic-path-software-out-of-the-colo-and-into-the-cloud-with-google-app-engine/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Where is the Linux-native Amazon Kindle reader?</title>
		<link>http://iandouglas.com/2011/05/01/where-is-the-linux-native-amazon-kindle-reader/</link>
		<comments>http://iandouglas.com/2011/05/01/where-is-the-linux-native-amazon-kindle-reader/#comments</comments>
		<pubDate>Mon, 02 May 2011 05:33:59 +0000</pubDate>
		<dc:creator>ian douglas</dc:creator>
				<category><![CDATA[devops]]></category>
		<category><![CDATA[misc]]></category>
		<category><![CDATA[aggregated]]></category>
		<category><![CDATA[amazon]]></category>
		<category><![CDATA[drm]]></category>
		<category><![CDATA[kindle]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://twitter.com/iandouglas736/statuses/64925579606102016</guid>
		<description><![CDATA[iandouglas736: yay: Amazon's Kindle for PC running in Wine on Gentoo, now I can read my new Python books while in Linux where I do the development anyway]]></description>
				<content:encoded><![CDATA[<p>So I&#39;ve been digging into Python more and more, and upon <a href="http://jorgec.com">Jorge</a>&#39;s recommendation, I picked up a <a href="http://www.amazon.com/gp/product/B0043D2EF4/ref=as_li_ss_tl?ie=UTF8&amp;tag=ianw98-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399349&amp;creativeASIN=B0043D2EF4">Kindle edition of O&#39;Reilly&#39;s &quot;Learning Python&quot; by Mark Lutz</a>, as well as the &quot;<a href="http://www.amazon.com/gp/product/B002QX43ZC/ref=as_li_ss_tl?ie=UTF8&amp;tag=ianw98-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399349&amp;creativeASIN=B002QX43ZC">Pocket Reference</a>&quot; edition.</p>
<p>What boggles my mind, however, is that Amazon has an Android-compatible Kindle app, yet no native Linux app. Since I&#39;m much more comfortable doing development in Linux, I needed a way to read my Kindle book via Linux so I didn&#39;t have to squint at the 4&quot; screen of my Nexus S in order to read. Perhaps Google IO next week will surprise me with a free tablet, but I&#39;m not holding my breath.</p>
<p><a href="http://www.winehq.org/download/">Wine 1.3.x</a> to the rescue. While it&#39;s not the &#39;stable&#39; release for Ubuntu (at work) or Gentoo (on the laptop), it will allow you to run <a href="http://www.amazon.com/gp/feature.html/ref=kcp_pc_mkt_lnd?docId=1000426311">Amazon&#39;s PC application</a> which is a free download. And it works very well. Everything sync&#39;s up just fine, but I&#39;m still disappointed that Amazon, who seems to love Linux for their EC2 platform and other AWS services, would forego a native Kindle app.</p>
<p>&nbsp;</p>]]></content:encoded>
			<wfw:commentRss>http://iandouglas.com/2011/05/01/where-is-the-linux-native-amazon-kindle-reader/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google IO sessions in Google Calendar-compatible CSV</title>
		<link>http://iandouglas.com/2011/04/29/google-io-sessions-in-google-calendar-compatible-csv/</link>
		<comments>http://iandouglas.com/2011/04/29/google-io-sessions-in-google-calendar-compatible-csv/#comments</comments>
		<pubDate>Fri, 29 Apr 2011 16:36:44 +0000</pubDate>
		<dc:creator>ian douglas</dc:creator>
				<category><![CDATA[misc]]></category>
		<category><![CDATA[google io]]></category>

		<guid isPermaLink="false">http://iandouglas.com/?p=2190</guid>
		<description><![CDATA[Here you go, everyone. googleio.csv, 56k Open Google Calendar Add a new calendar if you want the sessions in a separate calendar, then go back to your main Google Calendar display Click the &#34;Add&#34; link at the bottom left, the one with the down-arrow icon, select &#34;import calendar&#34; from the submenu Select the file from [...]]]></description>
				<content:encoded><![CDATA[<p>Here you go, everyone. <a href="http://iandouglas.com/googleio.csv">googleio.csv</a>, 56k</p>
<ol>
<li>Open Google Calendar</li>
<li>Add a new calendar if you want the sessions in a separate calendar, then go back to your main Google Calendar display</li>
<li>Click the &quot;Add&quot; link at the bottom left, the one with the down-arrow icon, select &quot;import calendar&quot; from the submenu</li>
<li>Select the file from your local computer, and choose the calendar you wish to import into.</li>
</ol>
<p>Here&#39;s <a href="http://iandouglas.com/2011/04/27/google-io-session-datestimes-as-of-early-april-27-2011/">the other post</a> I wrote a few days ago with some auto-generated CSV&#39;s you can use to sort/scan for your favorite sessions.</p>
<p>See you at Google IO!</p>
<p>&nbsp; &nbsp; <script type="text/javascript">// <![CDATA[
  google_ad_client = "ca-pub-1335093070283715"; /* id content, 300x250, created 4/26/10 */ google_ad_slot = "8498795251"; google_ad_width = 300; google_ad_height = 250;
// ]]&gt;</script><script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script></p>
]]></content:encoded>
			<wfw:commentRss>http://iandouglas.com/2011/04/29/google-io-sessions-in-google-calendar-compatible-csv/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>In-line upgrading to Ubuntu 11.04 on my workstation at the office.</title>
		<link>http://iandouglas.com/2011/04/28/in-line-upgrading-to-ubuntu-11-04-on-my-workstation-at-the-office/</link>
		<comments>http://iandouglas.com/2011/04/28/in-line-upgrading-to-ubuntu-11-04-on-my-workstation-at-the-office/#comments</comments>
		<pubDate>Thu, 28 Apr 2011 18:07:52 +0000</pubDate>
		<dc:creator>ian douglas</dc:creator>
				<category><![CDATA[devops]]></category>
		<category><![CDATA[aggregated]]></category>

		<guid isPermaLink="false">http://twitter.com/iandouglas736/statuses/63665749822144512</guid>
		<description><![CDATA[iandouglas736: in-line upgrading to #ubuntu 11.04 on my workstation at the office. Says it'll take 9hrs to download. CDN failure?]]></description>
				<content:encoded><![CDATA[<p><meta content="text/html; charset=utf-8" http-equiv="content-type" />I love Debian&#39;s in-line upgrades, especially with how seamless Canonical has made it within Ubuntu. Still, I have to question the speed of their CDN when downloading 1800 packages is going to take 8 hours. Comcast and Speedtest.net have verified we have 10Mbit-15Mbit connectivity, so why all the slowness?</p>
<p><a href="http://iandouglas.com/wp-content/uploads/2011/04/Screenshot-Distribution-Upgrade.png"><img alt="" class="aligncenter size-full wp-image-2169" height="289" src="http://iandouglas.com/wp-content/uploads/2011/04/Screenshot-Distribution-Upgrade.png" title="Screenshot-Distribution Upgrade" width="374" /></a></p>
<p>One of my favorite features about World of Warcraft was the bittorrent client in their upgrade/installer software, allowing you to download patches in a fraction of the time. I don&#39;t understand why Ubuntu&#39;s installer can&#39;t parallelize the download process to use more of my available bandwidth by downloading from other sources.</p>
]]></content:encoded>
			<wfw:commentRss>http://iandouglas.com/2011/04/28/in-line-upgrading-to-ubuntu-11-04-on-my-workstation-at-the-office/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google IO Session dates/times (auto-generated!)</title>
		<link>http://iandouglas.com/2011/04/27/google-io-session-datestimes-as-of-early-april-27-2011/</link>
		<comments>http://iandouglas.com/2011/04/27/google-io-session-datestimes-as-of-early-april-27-2011/#comments</comments>
		<pubDate>Wed, 27 Apr 2011 16:46:03 +0000</pubDate>
		<dc:creator>ian douglas</dc:creator>
				<category><![CDATA[misc]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[webdev]]></category>
		<category><![CDATA[aggregated]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[google io]]></category>

		<guid isPermaLink="false">http://twitter.com/iandouglas736/statuses/63282771682013184</guid>
		<description><![CDATA[iandouglas736: RT @jeffthms: Session times and locations are hidden, just view the source of the session page to see them - http://bit.ly/gAkyah #io2011]]></description>
				<content:encoded><![CDATA[<p>I saw a <a href="http://twitter.com/jeffthms/status/63243154467471361">Twitter message</a> this morning:</p>
<blockquote>@jeffthms: Session times and locations are hidden, just view the source of the session page to see them - <a href="http://bit.ly/gAkyah ">http://bit.ly/gAkyah</a> #io2011</blockquote>
<p>... which is correct. View the source, look at the &#39;noscript&#39; tag for where the div tags are rendered, and voila, you see the day/time/room of every session.</p>
<p>So after some quick parsing during a coffee break this afternoon, here&#39;s a CSV file for everyone. Sort it however you want.</p>
<p><br />
	Update: April 28, 9am<br />
	The CSV file is now auto-generated when you click the link below, but only if I can scrape the dates/times from the Google IO &quot;Sessions&quot; page. If scraping fails, you&#39;ll get an old copy.</p>
<p>download:&nbsp;<a href="http://iandouglas.com/googleio.php">google io session schedule</a> (google.csv, ~48kb)</p>
<p><meta content="text/html; charset=utf-8" http-equiv="content-type" /></p>
<p>&nbsp;</p>
<p>Update: April 28, 6pm<br />
	Google released a <a href="http://goo.gl/Zxxtj">public schedule</a>&nbsp;today, but their schedule doesn&#39;t specify rooms, or &#39;level&#39; (101, 201, 301) of the sessions, so I reworked my scraper to build a better schedule.</p>
<p>download:&nbsp;<a href="http://iandouglas.com/giogrid.php">google io session grid by track/level/times</a>&nbsp;(google2.csv, ~8kb)<br />
	&nbsp;<br />
	&nbsp;</p>
<p>&nbsp; &nbsp; <script type="text/javascript">// <![CDATA[
  google_ad_client = "ca-pub-1335093070283715"; /* id content, 300x250, created 4/26/10 */ google_ad_slot = "8498795251"; google_ad_width = 300; google_ad_height = 250;
// ]]&gt;</script><script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script></p>
]]></content:encoded>
			<wfw:commentRss>http://iandouglas.com/2011/04/27/google-io-session-datestimes-as-of-early-april-27-2011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dare to Compare: Cloud Hosting vs Dedicated Hosting</title>
		<link>http://iandouglas.com/2011/04/25/dare-to-compare-cloud-hosting-vs-dedicated-hosting/</link>
		<comments>http://iandouglas.com/2011/04/25/dare-to-compare-cloud-hosting-vs-dedicated-hosting/#comments</comments>
		<pubDate>Tue, 26 Apr 2011 00:46:46 +0000</pubDate>
		<dc:creator>ian douglas</dc:creator>
				<category><![CDATA[devops]]></category>
		<category><![CDATA[webdev]]></category>
		<category><![CDATA[aggregated]]></category>

		<guid isPermaLink="false">http://twitter.com/iandouglas736/statuses/62678975524249600</guid>
		<description><![CDATA[iandouglas736: RT @sawjd22: interesting #cloud vs #dedicated hosting cost comparison http://chrischandler.name/the-real-cost-of-cloud-hosting]]></description>
				<content:encoded><![CDATA[My buddy <a href="http://twitter.com/sawjd22">Subash</a> re-tweeted an article he read about <a href="http://chrischandler.name/the-real-cost-of-cloud-hosting">the real cost of cloud hosting</a>. While there's nothing too surprising in the article when comparing basic hardware and data center costs to running on Amazon's EC2 platform, I'm curious how well you could compare those costs to Google App Engine.

Granted, there are more question marks when planning to use (or move to) App Engine for a web application, and that's partly why I'm headed to Google IO to learn more and maybe chat with the team. The fact that your app can scale "automagically" is both fascinating and scary to me, especially when (as far as I can tell) you are not notified of scaling, it just happens for you.

As the DevOps guy at my full time job, and managing our own EC2 clusters, it makes me all that more curious to figure out what it would take to move our entire infrastructure/code to Python and host it with G.A.E. to see what the costs would be. My buddy Jorge has rebuilt an online store and inventory system on App Engine plus using Amazon's "Route 53" for DNS service, and he says he has yet to pay a dime to Google for any of the traffic or bandwidth.]]></content:encoded>
			<wfw:commentRss>http://iandouglas.com/2011/04/25/dare-to-compare-cloud-hosting-vs-dedicated-hosting/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Upgraded my wife to a Sprint Epic 4G this morning</title>
		<link>http://iandouglas.com/2011/04/16/upgraded-my-wife-to-a-sprint-epic-4g-this-morning/</link>
		<comments>http://iandouglas.com/2011/04/16/upgraded-my-wife-to-a-sprint-epic-4g-this-morning/#comments</comments>
		<pubDate>Sat, 16 Apr 2011 18:18:15 +0000</pubDate>
		<dc:creator>ian douglas</dc:creator>
				<category><![CDATA[mobile]]></category>
		<category><![CDATA[aggregated]]></category>
		<category><![CDATA[customer service]]></category>
		<category><![CDATA[epic 4g]]></category>
		<category><![CDATA[google io]]></category>
		<category><![CDATA[nexus s]]></category>
		<category><![CDATA[tmobile]]></category>

		<guid isPermaLink="false">http://twitter.com/iandouglas736/statuses/59319709987901440</guid>
		<description><![CDATA[iandouglas736: Upgraded my wife to a Sprint Epic 4G this morning. bye bye @tmobile]]></description>
				<content:encoded><![CDATA[<p>My poor wife. Not only does she have to deal with me as a husband, she&#39;s got a 2.5yr old boy who loves dumping baby powder on everything at 7am when I&#39;m trying to get ready for work and drop him off at day care, plus a newborn baby boy who some days won&#39;t let her put him down. On top of all of this, she has to deal with T-Mobile.</p>
<p><a href="http://iandouglas.com/wp-content/uploads/2011/04/Screenshot-Twitter-@ian-douglas-Upgraded-my-wife-to-a-Spri-...-Google-Chrome.png"><img alt="" class="aligncenter size-full wp-image-2051" height="174" src="http://iandouglas.com/wp-content/uploads/2011/04/Screenshot-Twitter-@ian-douglas-Upgraded-my-wife-to-a-Spri-...-Google-Chrome.png" title="@iandouglas736" width="500" /></a></p>
<p><a href="http://iandouglas.com/wp-content/uploads/2011/04/Screenshot-Twitter-@Jorge-Velázquez-@iandouglas736-Nice-upgrad-...-Google-Chrome.png"><img alt="" class="aligncenter size-full wp-image-2052" height="177" src="http://iandouglas.com/wp-content/uploads/2011/04/Screenshot-Twitter-@Jorge-Velázquez-@iandouglas736-Nice-upgrad-...-Google-Chrome.png" title="@jorgesd" width="500" /></a></p>
<p>Let me back up a little.</p>
<p>I like T-Mobile. Let&#39;s make that clear. Their service is decent, call quality is good, and their Android phone selection is pretty great. And the fact that their spokeswoman, Carly, is also Canadian, y&#39;know, just icing on the cake.</p>
<p>What they DON&#39;T do well, however, is handle customer service when it comes to insurance.</p>
<p>Backing up a little more: in early 2010, my wife and I switched from AT&amp;T to T-Mobile after several years of AT&amp;T &quot;service&quot;. Or, as some might call it, &quot;serv..hello? hello?&quot; I got the HTC Nexus One as my first Android device, and my wife got a Motorola Cliq because she needs a physical keyboard on her phone. Over the years, we&#39;ve both been using Google services more and more, and the idea of sharing a calendar directly on our phones was extremely appealing. Unfortunately (for her), the Cliq was already close to end of life (EOL) but T-Mobile never told her that. They also sold her a $5/month insurance policy against loss/damage. A month later, she needed to get her Cliq replaced because the touch screen wasn&#39;t responsive. A few months later, she lost it, and T-Mobile told her to go through the insurance group, Assurion, to get a replacement. Assurion sent her a refurbished model with a broken keyboard. They replaced *that* one with one with another unresponsive touch screen. Finally, they had one that sorta-kinda worked, but the Android 2.1 update was just coming out and then her newest replacement phone started having serious lag/responsiveness issues.</p>
<p>We called T-Mobile, who told us that because THEY hadn&#39;t replaced the phones, they could only exchange the phone at a store for another refurbished unit, and that they&#39;d have to replace it in-store three times within 90 days to warranty getting an entirely different phone, but that <u>they</u> got to choose the model and couldn&#39;t guarantee it would have a keyboard. Or even be an Android phone. We tried in vain to argue with the customer service rep about how Assurion was sending out bad replacements, and they told us they couldn&#39;t do anything about that, and the replacement phones given through Assurion didn&#39;t count towards T-Mobiles 3-in-90-days replacement guarantee.</p>
<p>So why the heck were we paying T-Mobile $5 a month for insurance if they weren&#39;t counting those replacements?!</p>
<p>Bewildered, we gave up trying to argue our point. I tried to convince my wife at Christmas to let me get her a new phone. I had already written a review for <a href="http://www.androidpolice.com/2010/08/24/hands-on-review-of-sprints-samsung-epic-4g/" target="_blank">Sprint&#39;s Epic 4G for AndroidPolice.com</a>&nbsp;in August 2010, but she didn&#39;t want to spend the money at Christmas. Thankfully, Sprint ran a special through March and April this year where porting your number to Sprint with a new contract would give you a $125 credit to offset any ETF fee. Since her ETF with T-Mobile after one year was now only $100, we actually came out money ahead in that regard. So, we got her the Epic 4G, and she loves the AMOLED screen and the bigger keyboard. Now if we could only get Froyo/<a href="http://feedproxy.google.com/~r/androidcentral/~3/_lW_TBpp_bs/possible-about-screen-seems-confirm-epic-4g-gingerbread-build-testing" target="_blank">Gingerbread</a> on there for her without rooting it and going to CM 7...</p>
<p>Update: April 27: Speculation is that since Sprint is launching their Nexus S 4G on Mother&#39;s Day, May 8th, and Google IO is on the 10th, that maybe Google will be giving away the Nexus S 4G at IO2011. If that&#39;s the case, I might offload my T-Mobile phone, too, and switch to Sprint. If that IS the giveaway, and if it comes with 30 days of free service like the giveaways last year, it&#39;ll give me some time to see whether the Sprint version has better coverage than T-Mobile at home and office.</p>
]]></content:encoded>
			<wfw:commentRss>http://iandouglas.com/2011/04/16/upgraded-my-wife-to-a-sprint-epic-4g-this-morning/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Testing Code</title>
		<link>http://iandouglas.com/2011/04/13/testing-code/</link>
		<comments>http://iandouglas.com/2011/04/13/testing-code/#comments</comments>
		<pubDate>Wed, 13 Apr 2011 22:27:10 +0000</pubDate>
		<dc:creator>ian douglas</dc:creator>
				<category><![CDATA[devops]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[aggregated]]></category>

		<guid isPermaLink="false">http://twitter.com/iandouglas736/statuses/58295186345824257</guid>
		<description><![CDATA[iandouglas736: RT @jorgesd: Testing your code... http://t.co/5pXjK8a]]></description>
				<content:encoded><![CDATA[<p>Oh <u>man</u> do I want a 2&#39;x3&#39; poster of this...</p>
<p><img alt="" class="alignnone" height="360" src="http://i.imgur.com/y7Hm9.jpg" title="Testing Your Code" width="287" /></p>
]]></content:encoded>
			<wfw:commentRss>http://iandouglas.com/2011/04/13/testing-code/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How not to be secure: blogsvertise.com stores passwords in insecure ways</title>
		<link>http://iandouglas.com/2011/04/12/how-not-to-be-secure-blogsvertise-com-stores-passwords-in-insecure-ways/</link>
		<comments>http://iandouglas.com/2011/04/12/how-not-to-be-secure-blogsvertise-com-stores-passwords-in-insecure-ways/#comments</comments>
		<pubDate>Tue, 12 Apr 2011 20:12:48 +0000</pubDate>
		<dc:creator>ian douglas</dc:creator>
				<category><![CDATA[devops]]></category>
		<category><![CDATA[webdev]]></category>
		<category><![CDATA[advertising]]></category>
		<category><![CDATA[aggregated]]></category>
		<category><![CDATA[passwords]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://twitter.com/iandouglas736/statuses/57898987142905856</guid>
		<description><![CDATA[iandouglas736: was approached by blogsvertise.com to reactivate my acct, but see they're storing passwords in plaintext. #horrible #unacceptable #security]]></description>
				<content:encoded><![CDATA[<p>I was approached by blogsvertise.com recently to reactivate my account, because I let it die a slow, agonizing, forever-alone, kind of death.
<p>I figured writing occasional sponsored blog articles would give me some extra Starbucks money here and there, and after talking to "Melissa", and telling her why I'd left (I was flooded by irrelevant advertising ideas like lawnmowers) and what I'd need to make it worth my while, she reactivated my account, at which point their system sent me an Email:
<p><a href="http://iandouglas.com/wp-content/uploads/2011/04/Screenshot-Inbox-ian.douglas@iandouglas.com-Mozilla-Thunderbird.png"><img class="aligncenter size-full wp-image-2035" title="Blogsvertise stored my old password in plain text!" src="http://iandouglas.com/wp-content/uploads/2011/04/Screenshot-Inbox-ian.douglas@iandouglas.com-Mozilla-Thunderbird.png" alt="" width="551" height="454" /></a>
<p>I was stunned. Either they'd stored my password in plaintext, or they'd stored it using an encryption algorithm, both of which are a Bad Thing™. If their systems are compromised, your passwords are either immediately readable by the attackers, or they can see which encryption scheme is used and how to decrypt them.
<p>I wrote Melissa a scathing letter telling her that her development team needed to adhere to industry best practices of using hash/salt setups, and while waiting for her reply which never came, I got an Email from them saying I had a new advertisement to blog about: nurse uniforms.
<p>Thankfully, <a href="https://lastpass.com/index.php">LastPass</a> generates lovely 40-byte passwords for me full of uppercase and lowercase letters, numbers and punctuation (I couldn't tell you my Amazon password if you held a gun to my head), so I immediately logged into the blogsvertise.com web site, edited my profile, and changed my password to some random 40-byte password which I didn't save in my LastPass vault, so even if/when their systems get compromised, I won't ever have to care that someone knows one of my passwords.
<p>I'm looking forward to attending some of the OAuth2/OpenID sessions at Google IO to hear more about third-party authentication schemes so I don't have to register with so many other services for things.
<p>Then again, if blogging actually paid anything worthwhile in terms of advertising, I wouldn't have even bothered with blogsvertise.com in the first place. Too bad The Rubicon Project kicked out all of their small publishers in late 2009, I was making decent money with them.]]></content:encoded>
			<wfw:commentRss>http://iandouglas.com/2011/04/12/how-not-to-be-secure-blogsvertise-com-stores-passwords-in-insecure-ways/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Installing Gentoo on the Dell XPS15 &#8230; hopefully it&#8217;ll be a better low-power setup than ubuntu/win7</title>
		<link>http://iandouglas.com/2011/04/11/installing-gentoo-on-the-dell-xps15-hopefully-itll-be-a-better-low-power-setup-than-ubuntuwin7/</link>
		<comments>http://iandouglas.com/2011/04/11/installing-gentoo-on-the-dell-xps15-hopefully-itll-be-a-better-low-power-setup-than-ubuntuwin7/#comments</comments>
		<pubDate>Tue, 12 Apr 2011 06:16:02 +0000</pubDate>
		<dc:creator>ian douglas</dc:creator>
				<category><![CDATA[devops]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[aggregated]]></category>
		<category><![CDATA[dell xps15]]></category>
		<category><![CDATA[gentoo]]></category>

		<guid isPermaLink="false">http://twitter.com/iandouglas736/statuses/57688406985162752</guid>
		<description><![CDATA[iandouglas736: finally making some progress on installing #gentoo on the dell xps15 ... hopefully it'll be a better low-power setup than ubuntu/win7]]></description>
				<content:encoded><![CDATA[<p>Updated April 26</p>
<p>I&#39;ve been trying off and on for a few weeks, as I have free time with work and family (now with two kids), to install Gentoo on my Dell XPS15 laptop. Until recently, I had gotten the OS installed, including grub, in a tri-boot Gnetoo/Ubuntu 10.10/Windows 7 configuration, and Gentoo was smart enough to start in text mode with the framebuffer on, so I got a full 1920x1080 with small text, and very little running in terms of services.</p>
<p>And while I&#39;ve decided to install KDE on it (and finally got it working thanks to several tutorials I&#39;ll mention another time), I plan to keep the Gentoo setup mostly text-only as much as possible so it can be a (hopefully) very low-power setup. Even though I have the extended 9-cell battery, I&#39;m curious whether I can maintain a full day of coding in vim, browsing in elinks, and using my phone for Email while at Google IO in May, without needing to swap the battery for the spare 9-cell.</p>
<p>There weren&#39;t many gotchas when it came to getting Gentoo installed, however it&#39;s important to note that with the i5 processor, just about everything inside the laptop is Intel-based (wireless, bluetooth, framebuffer graphics, etc), and having the Intel/Nvidia &#39;hybrid&#39; graphics was challenge enough in Ubuntu to tell it not to run nvidia drivers.</p>
<p>Here are some placeholders for where I&#39;ll post my necessary configurations for anyone else attempting a Gentoo install on a similar rig:</p>
<ul>
	<li>/usr/src/linux/.config</li>
	<li>/etc/X11/xorg.conf</li>
	<li>/etc/make.conf</li>
	<li>/etc/wpa_supplicant/wpa_supplicant.conf</li>
	<li>/etc/conf.d/net.wlan0</li>
</ul>
<p>For what it&#39;s worth, WPA_supplicant works great for tethering from my Android phone, although I do need to issue an &quot;/etc/init.d/net.wlan0 restart&quot; whenever I need to switch wifi. Kind of a pain. I&#39;ll have to see if there&#39;s some auto-detection scheme to detect and change to another wifi setup if available. Obviously this is easy enough in KDE/etc, but I haven&#39;t found an easy way to do this via cmdline when in text mode.</p>
]]></content:encoded>
			<wfw:commentRss>http://iandouglas.com/2011/04/11/installing-gentoo-on-the-dell-xps15-hopefully-itll-be-a-better-low-power-setup-than-ubuntuwin7/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>I feel bad enough at Disneyland with ONE phone</title>
		<link>http://iandouglas.com/2011/03/28/i-feel-bad-enough-at-disneyland-with-one-phone/</link>
		<comments>http://iandouglas.com/2011/03/28/i-feel-bad-enough-at-disneyland-with-one-phone/#comments</comments>
		<pubDate>Mon, 28 Mar 2011 18:32:58 +0000</pubDate>
		<dc:creator>ian douglas</dc:creator>
				<category><![CDATA[misc]]></category>
		<category><![CDATA[aggregated]]></category>

		<guid isPermaLink="false">http://twitter.com/iandouglas736/statuses/52438042836873216</guid>
		<description><![CDATA[iandouglas736: I feel bad enough at @Disneyland with ONE phone http://t.co/ZsrCMA0]]></description>
				<content:encoded><![CDATA[<p>... let alone <a href="http://twitpic.com/4eczad">THIS</a> guy.</p>
<p><img alt="" height="533" src="http://s3.amazonaws.com/twitpic/photos/large/265984933.jpg?AWSAccessKeyId=AKIAJF3XCCKACR3QDMOA&amp;Expires=1304748988&amp;Signature=k0EBSs9vrCl%2FMHbjdC6pGIVNVCM%3D" width="400" /></p>
]]></content:encoded>
			<wfw:commentRss>http://iandouglas.com/2011/03/28/i-feel-bad-enough-at-disneyland-with-one-phone/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Here&#8217;s the town I grew up in</title>
		<link>http://iandouglas.com/2011/03/15/heres-the-town-i-grew-up-in/</link>
		<comments>http://iandouglas.com/2011/03/15/heres-the-town-i-grew-up-in/#comments</comments>
		<pubDate>Wed, 16 Mar 2011 00:09:15 +0000</pubDate>
		<dc:creator>ian douglas</dc:creator>
				<category><![CDATA[mobile]]></category>
		<category><![CDATA[aggregated]]></category>

		<guid isPermaLink="false">http://twitter.com/iandouglas736/statuses/47811630490324992</guid>
		<description><![CDATA[iandouglas736: Here's the town I grew up in: http://j.mp/gmk5Pr
... or at least a documentary made about the town that no longer exists.]]></description>
				<content:encoded><![CDATA[<p>Here&#39;s a flash movie/documentary that some guys made about the little town I grew up in, Pine Point, NWT. The town no longer exists, and this is a really great flashback.</p>
<p><meta content="text/html; charset=utf-8" http-equiv="content-type" /><a href="http://interactive.nfb.ca/#/pinepoint">http://interactive.nfb.ca/#/pinepoint</a></p>
<p>Having looked through it several times, I&#39;ve found pictures of my dad, my sister and I, and several friends. The Hyrniuk brothers who were part of the project were my next door neighbors.</p>
<p>Here&#39;s Richard Cloutier&#39;s site:&nbsp;<a href="http://pinepointrevisited.homestead.com/Pine_Point.html">http://pinepointrevisited.homestead.com/Pine_Point.html</a>&nbsp;Please forgive his crazy HTML layouts, etc., the guy has a disability which means he has to design and build the site using voice recognition software.</p>
<p><meta content="text/html; charset=utf-8" http-equiv="content-type" /></p>
]]></content:encoded>
			<wfw:commentRss>http://iandouglas.com/2011/03/15/heres-the-town-i-grew-up-in/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>I should have become a tax accountant</title>
		<link>http://iandouglas.com/2011/03/07/i-should-have-become-a-tax-accountant/</link>
		<comments>http://iandouglas.com/2011/03/07/i-should-have-become-a-tax-accountant/#comments</comments>
		<pubDate>Mon, 07 Mar 2011 19:39:56 +0000</pubDate>
		<dc:creator>ian douglas</dc:creator>
				<category><![CDATA[mobile]]></category>
		<category><![CDATA[aggregated]]></category>

		<guid isPermaLink="false">http://twitter.com/iandouglas736/statuses/44844750209159168</guid>
		<description><![CDATA[iandouglas736: I should have become a tax accountant, $350 for a 15 minute tax appointment. Last time we'll be going to Langwasser in Ontario, CA #ripoff]]></description>
				<content:encoded><![CDATA[<p>I hate tax season... We paid <a href="http://www.langwasser.com/">Karin Langwasser&#39;s office</a> $350 for a 15 minute tax appointment this year. (<a href="http://maps.google.com/maps/place?hl=en&amp;sugexp=ldymls&amp;xhr=t&amp;cp=11&amp;bav=on.2,or.r_gc.r_pw.&amp;biw=1142&amp;bih=1018&amp;um=1&amp;ie=UTF-8&amp;q=karin+langwasser&amp;fb=1&amp;gl=us&amp;hq=karin+langwasser&amp;hnear=Irvine,+CA&amp;cid=1085133962913991448">Google Place page</a>)</p>
<p>In the past, they handled my freelance business books, but I closed that down two years ago, and last year&#39;s tax prep bill was still $400 &quot;just in case they missed anything...&quot; Our tax prep representative this year had no good reason to explain why our bill was only $50 less, and told us we had to pay $350. &quot;That&#39;s just what we charge.&quot; That bill ate up what little refund we actually got back from the state this year, and then some.</p>
<p>But $350, <strong>really</strong>? A couple of W-2&#39;s, no itemization, no stock sales, etc., we were *literally* in their office for 35 minutes (we got there 20 minutes early for the appointment).</p>
<p>Next year we&#39;ll use H&amp;R Block or just buy TurboTax or something.</p>
]]></content:encoded>
			<wfw:commentRss>http://iandouglas.com/2011/03/07/i-should-have-become-a-tax-accountant/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Well, congrats Google, Android 2.3.3 broke *every* widget on my Nexus S, even your own</title>
		<link>http://iandouglas.com/2011/02/24/well-congrats-google-android-2-3-3-broke-every-widget-on-my-nexus-s-even-your-own/</link>
		<comments>http://iandouglas.com/2011/02/24/well-congrats-google-android-2-3-3-broke-every-widget-on-my-nexus-s-even-your-own/#comments</comments>
		<pubDate>Thu, 24 Feb 2011 22:59:32 +0000</pubDate>
		<dc:creator>ian douglas</dc:creator>
				<category><![CDATA[mobile]]></category>
		<category><![CDATA[aggregated]]></category>

		<guid isPermaLink="false">http://twitter.com/iandouglas736/statuses/40908714848423936</guid>
		<description><![CDATA[iandouglas736: Well, congrats Google, 2.3.3 broke *every* widget on my Nexus S, even those by Google.]]></description>
				<content:encoded><![CDATA[<p>I&#39;m a big fan of Android, there&#39;s never any doubting that. I especially love leaked OTA updates that I can manually download and install instead of waiting weeks for my IMEI to get through whatever process to trigger a download. I&#39;ve never understood that process and why it takes *weeks* to send an OTA. I bet there are less than 50,000 Nexus S units in the wild, and I can bulk-send 50,000 Emails in a day or two with an Email service, and I&#39;m sure pinging 50,000 phones with a &quot;go fetch the update and tell the user to upgrade&quot; message is less hassle.</p>
<p>But I manually downloaded the leaked OTA, installed it, and then realized that whatever the update was, broke EVERY widget I had installed on my phone. Even widgets by Google. Every widget I had, had to be removed and replaced. In the grand scheme of things, this is an annoyance, but your average home user isn&#39;t going to be thrilled about this.</p>
<p>And after deleting them,&nbsp;I couldn&#39;t even long-press on the home screen to put them back. Turns out the phone was busy doing something else. I finally left the phone alone for several minutes and tried again, and only then would it let me re-add the widgets. But after&nbsp;putting them back, a reboot of my phone took several MINUTES (again) to reload the data. &quot;My Coffee Card&quot; widget loaded its data in 24 seconds, Latitude in 42 seconds, and all other widgets (including Google Calendar and Google Places) took 183 seconds once the phone had booted. The only fix for the 3-minute delay was reinstalling the programs that created those widgets (SimiClock, a Calendar widget I forget the name of, and a &quot;folder&quot; organizer app which lets me make folder widgets to store apps), then reconfigure them all, and then put all of the widgets back.</p>
<p>After several more reboots, the phone finally settled down, but what a hassle. I <u>do</u> understand that the first reboot after a ROM upgrade on an Android device will take much longer, but it *shouldn&#39;t* break widgets without telling the user ahead of time, and certainly shouldn&#39;t take a few hours of 4-minute reboot cycles (1 minute to boot to home screen, 3 minutes to load widget data) to clear up the problem.</p>
<p><span class="Apple-style-span" style="color: rgb(51, 51, 51); font-family: 'Lucida Grande', Verdana, Arial, 'Bitstream Vera Sans', sans-serif; font-size: 11px; line-height: 18px; "><strong style="margin-top: 0px; margin-right: 0px; margin-bottom: 0.2em; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; outline-width: 0px; outline-style: initial; outline-color: initial; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: transparent; word-wrap: break-word; display: block; background-position: initial initial; background-repeat: initial initial; "></strong></span></p>
]]></content:encoded>
			<wfw:commentRss>http://iandouglas.com/2011/02/24/well-congrats-google-android-2-3-3-broke-every-widget-on-my-nexus-s-even-your-own/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Androidify&#8217;d myself</title>
		<link>http://iandouglas.com/2011/02/14/androidifyd-myself/</link>
		<comments>http://iandouglas.com/2011/02/14/androidifyd-myself/#comments</comments>
		<pubDate>Tue, 15 Feb 2011 07:18:15 +0000</pubDate>
		<dc:creator>ian douglas</dc:creator>
				<category><![CDATA[misc]]></category>
		<category><![CDATA[aggregated]]></category>

		<guid isPermaLink="false">http://twitter.com/iandouglas736/statuses/37410341646385152</guid>
		<description><![CDATA[iandouglas736: http://t.co/DPgESX6]]></description>
				<content:encoded><![CDATA[<p><img alt="" height="400" src="http://s3.amazonaws.com/twitpic/photos/large/241913664.png?AWSAccessKeyId=AKIAJF3XCCKACR3QDMOA&amp;Expires=1304749141&amp;Signature=FekP7MR0dUIEsfyUzL4VdHVYdBI%3D" width="400" /></p>
]]></content:encoded>
			<wfw:commentRss>http://iandouglas.com/2011/02/14/androidifyd-myself/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic page generated in 20.501 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2013-05-10 12:40:59 -->

<!-- Compression = gzip -->