<?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>dustin.li</title>
	<atom:link href="http://dustin.li/feed/" rel="self" type="application/rss+xml" />
	<link>http://dustin.li</link>
	<description>جمل</description>
	<lastBuildDate>Fri, 27 Jan 2012 15:15:26 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>UMNR 2012</title>
		<link>http://dustin.li/2011/12/umnr-2012/</link>
		<comments>http://dustin.li/2011/12/umnr-2012/#comments</comments>
		<pubDate>Wed, 28 Dec 2011 12:59:12 +0000</pubDate>
		<dc:creator>lid</dc:creator>
				<category><![CDATA[Pub]]></category>

		<guid isPermaLink="false">http://dustin.li/?p=2904</guid>
		<description><![CDATA[We&#8217;re organizing the 1st UAE Meeting on Neurorehabilitation (UMNR) here at Khalifa University! Come hang out with all the cool people. It&#8217;s on March 9-10, 2011.]]></description>
			<content:encoded><![CDATA[<p>We&#8217;re organizing the <a href="http://www.umnr.org/" title="1st UAE Meeting on Neurorehabilitation (UMNR)">1st UAE Meeting on Neurorehabilitation (UMNR)</a> here at Khalifa University! Come hang out with all the cool people. It&#8217;s on March 9-10, 2011.</p>
]]></content:encoded>
			<wfw:commentRss>http://dustin.li/2011/12/umnr-2012/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Scooba: meh</title>
		<link>http://dustin.li/2011/12/scooba-meh/</link>
		<comments>http://dustin.li/2011/12/scooba-meh/#comments</comments>
		<pubDate>Mon, 19 Dec 2011 21:33:59 +0000</pubDate>
		<dc:creator>lid</dc:creator>
				<category><![CDATA[Pub]]></category>

		<guid isPermaLink="false">http://dustin.li/?p=2901</guid>
		<description><![CDATA[After correcting a minor incident of exploding capacitors, I was able to charge my Scooba 330 and set it free on the tile floors of my new apartment. In short: meh. While it&#8217;s really cool from a geeky perspective, it &#8230; <a href="http://dustin.li/2011/12/scooba-meh/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>After correcting a minor incident of exploding capacitors, I was able to charge my Scooba 330 and set it free on the tile floors of my new apartment. In short: meh. While it&#8217;s really cool from a geeky perspective, it just doesn&#8217;t do a great job. For example, it gets stuck on the transition from the tile to the marble. It doesn&#8217;t do a good job sucking the water back up (probably a defect/maintenance issue), leaving behind puddles as if someone had cleaned the floor with a dripping mop, getting an optimistic 30% of the water it layed down. It doesn&#8217;t self dock, requiring you to manually plug it in every time. It doesn&#8217;t do a great job of picking up hair off the floor. It looses traction quite a bit. There are no infrared sensors on its bumpers, causing it to slam into things at full speed. Its bumpers aren&#8217;t terribly sensitive, making it bash into things and spin its wheels, not realizing that it&#8217;s not moving. It requires maintenance of the brushes, vacuum port, and filter after every cleaning, and rinsing of both the dirty and clean tanks. I&#8217;ll keep using it because I&#8217;d never mop my own floors, but they could do much better&#8230; iRobot has released an updated Scooba but the reviews are also universally &#8220;meh&#8221;. In comparison, my Roomba 535 is awesome &#8211; requires almost no maintenance, and always gets back to its docking station on its own.</p>
]]></content:encoded>
			<wfw:commentRss>http://dustin.li/2011/12/scooba-meh/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>EC2 spot prices vs. reserved instances</title>
		<link>http://dustin.li/2011/12/ec2-spot-prices-vs-reserved-instances/</link>
		<comments>http://dustin.li/2011/12/ec2-spot-prices-vs-reserved-instances/#comments</comments>
		<pubDate>Mon, 19 Dec 2011 09:12:15 +0000</pubDate>
		<dc:creator>lid</dc:creator>
				<category><![CDATA[Pub]]></category>

		<guid isPermaLink="false">http://dustin.li/?p=2891</guid>
		<description><![CDATA[I wrote a stupid little script that was designed to figure out whether it is more cost effective to run my server on spot instances or on reserved instances. It calculates cumulative spot cost over the last 90 days and &#8230; <a href="http://dustin.li/2011/12/ec2-spot-prices-vs-reserved-instances/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I wrote a <a href="https://github.com/lid/EC2-Spot-Price-Value">stupid little script</a> that was designed to figure out whether it is more cost effective to run my server on spot instances or on reserved instances. It calculates cumulative spot cost over the last 90 days and also charts the spot price, and projects that cost to a full year.</p>
<p>My server must be up 100% and cannot tolerate downtime, so I can compare the projected cost to reserved instance cost. Historically, the spot price has been pretty stable (so stable that one commentator <a href="http://www.somic.org/2011/08/03/amazon-ec2-spot-instances-flop/">called the market a flop</a>) and almost equal to the reserved instance hourly price, without the overhead of the reserved instance one time fee. However, spot prices have been <a href="http://devblog.seomoz.org/2011/09/amazon-ec2-spot-request-volatility-hits-1000hour/">fluctuating greatly in the last few months</a> (Q3 2011) so it is now more efficient to buy a reserved instance (especially since <a href="http://aws.typepad.com/aws/2011/12/reserved-instance-options-for-amazon-ec2.html">Heavy Utilization instances became available</a>).</p>
<p><img src="https://secure.dustin.li/word/wp-content/uploads/chart-useast1b-Dec192011_opt.png" alt="" title="EC2 Spot Prices and Cumulative Cost for useast1b, December 19th 2011" width="506" height="264" class="aligncenter size-full wp-image-2892" /></p>
<p>If we project the cost of running a micro spot instance in us-east-1b for an entire year, we would have to pay $621.20/yr for CPU time. Compare the Heavy Utilization reserved micro instances in the same region, which would cost $100/33 + 365*24*$0.005 = $77.13 (3 year term). Yeah. I know which one I&#8217;ll be getting. </p>
]]></content:encoded>
			<wfw:commentRss>http://dustin.li/2011/12/ec2-spot-prices-vs-reserved-instances/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Moving a WordPress install to a subdomain</title>
		<link>http://dustin.li/2011/09/moving-a-wordpress-install-to-a-subdomain/</link>
		<comments>http://dustin.li/2011/09/moving-a-wordpress-install-to-a-subdomain/#comments</comments>
		<pubDate>Sat, 03 Sep 2011 14:44:57 +0000</pubDate>
		<dc:creator>lid</dc:creator>
				<category><![CDATA[Pub]]></category>

		<guid isPermaLink="false">http://dustin.li/?p=2822</guid>
		<description><![CDATA[Hi kids! Today we&#8217;re going to learn about moving WordPress to a subdomain. Why would you want to do that? Well, let&#8217;s say that you want to have SSL over the subdomain (only), or that you want the subdomain to &#8230; <a href="http://dustin.li/2011/09/moving-a-wordpress-install-to-a-subdomain/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>
Hi kids! Today we&#8217;re going to learn about moving WordPress to a subdomain. Why would you want to do that? Well, let&#8217;s say that you want to have SSL over the subdomain (only), or that you want the subdomain to be an internal address that no one else can access. This became an issue for me when I decided to transition to the <a href="http://www.cloudflare.com/" title="CloudFlare">CloudFlare</a> infrastructure, which supports SSL on a domain only if you pay them. I am way too cheap for that.
</p>
<p>
The obvious thing to do is to go into General Settings (<code>/wp-admin/options-general.php</code>) and modify the &#8220;WordPress address&#8221; to add the new subdomain. For example, mine originally read <code>https://dustin.li/word/</code>, but now reads <code>https://secure.dustin.li/word/</code>. After clearing caches, the <code>Log In</code> link on the blog now correctly directs to the secure subdomain for login, and I am able to see the administration dashboard on the subdomain. There is a problem, however: the public site does not reflect that you are logged in! This means that your users will not be able to use any features of being logged in, and you will not see the administrative features on the public site.
</p>
<p>
There is an easy fix for this, though. In your <code>wp-config.php</code> file, add a line like this:</p>
<blockquote><p>define(&#8216;COOKIE_DOMAIN&#8217;, &#8216;.dustin.li&#8217;);</p></blockquote>
<p>
<p>
This tells WordPress that your cookie should be set and read in the &#8220;.dustin.li&#8221; domain, which any of the subdomains in dustin.li (including secure.dustin.li and dustin.li itself) can read. Problem solved! Huzzah!</p>
]]></content:encoded>
			<wfw:commentRss>http://dustin.li/2011/09/moving-a-wordpress-install-to-a-subdomain/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>International money transfer from the UAE to the US</title>
		<link>http://dustin.li/2011/08/international-money-transfer-from-the-uae-to-the-us/</link>
		<comments>http://dustin.li/2011/08/international-money-transfer-from-the-uae-to-the-us/#comments</comments>
		<pubDate>Thu, 25 Aug 2011 21:20:08 +0000</pubDate>
		<dc:creator>lid</dc:creator>
				<category><![CDATA[Pub]]></category>

		<guid isPermaLink="false">http://dustin.li/?p=2795</guid>
		<description><![CDATA[I was once told that a good rule of thumb to calculate your salary in the UAE is to take your US salary and multiply it by 2-3. Add free housing (or a housing allowance), and decent benefits, and a &#8230; <a href="http://dustin.li/2011/08/international-money-transfer-from-the-uae-to-the-us/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>
I was once told that a good rule of thumb to calculate your salary in the UAE is to take your US salary and multiply it by 2-3. Add free housing (or a housing allowance), and decent benefits, and a standard 8.3% bonus at the end of each year. This means that most people here, from the labourers to the heads of departments, are sending money back to their home countries at some point. The poor, uneducated construction workers send money to their families on a regular basis as they work to pay off their expenses incurred just to get to this country. The white collar workers are more likely to stockpile their cash and transfer it out of the country when they leave on their plush repatriation allowances. Whatever the reason, expatriates in this country need a means to move money out of here.
</p>
<p>
We get a pretty good deal as US expats. In addition to controlling the world&#8217;s reserve currency (making it <a href="http://www.npr.org/blogs/money/2011/08/12/139583229/the-friday-podcast-why-the-world-still-needs-dollars">way cheaper for us to borrow money</a>), many countries, including the UAE, have pegged their currency to the US dollar. This may not always be good for business, but it&#8217;s great for expats who don&#8217;t have to worry about currency fluctuations and the resulting loss from the currency spreads.
</p>
<p>
I&#8217;ve obtained some of the exchange rates of banks and money changers around here and tabulated them below. I included all the fees charged to obtain a &#8220;bottom line&#8221;: how much money do you loose on a transaction of sizes $100, $1000, $10000, and $100000. I included several methods of exporting money including wire transfers, demand drafts, and straight up cash exchange (i.e. carry your cash to the US&#8230; but don&#8217;t forget to declare it!). Note that there are two types of wire transfers offered: SHA (&#8220;shared fees&#8221;), where the intermediary banks take a random cut of the money, and OUR (&#8220;our fees&#8221;), where the receiving bank receives all the money you originally wired. OUR carries a premium of 100 AED. It is not clear to me how much intermediary banks take, but I&#8217;ve heard numbers of 50 USD, plus the possibility of a percentage taken which can be a big deal. I think OUR is the way to go if you must do a wire transfer.
</p>
<p><iframe width='650' height='455' frameborder='0' src='https://docs.google.com/spreadsheet/pub?hl=en_US&#038;hl=en_US&#038;key=0AuiK4y2dXuqidFlVRnQ2RmRFWVRMN1poTENtWnVXaGc&#038;single=true&#038;gid=2&#038;range=A1%3AM16&#038;output=html&#038;widget=false'></iframe></p>
<p>
The numbers indicate that the best way to go is to exchange money for cash at a good rate here in the UAE and carry it to the US, unless you&#8217;re sending amounts of well over $100k. The SHA wires appear to have comparable fees as higher quantities are transferred, but they belie the previously discussed hidden intermediary bank fees. Shop around for a good exchange rate by calling the exchanges up. Here&#8217;s a <a href="http://visitabudhabi.ae/_data/global/files/mainlinks_documents/money%20exchange%20offices%20in%20abu%20dhabi-english.pdf">list of them in Abu Dhabi</a>.
</p>
<p>
Happy transferring!
</p>
<p>
<strong>Update</strong>: I am now using <a href="http://rakbankdirect.ae/wps/portal/home/transaction-accounts/evantage-account">RAKBANK&#8217;s Evantage account</a>, which gives you 1 free international transfer each month. For OUR transfers, they charge a 30 AED fee. I have verified that all the money makes it to the destination account for OUR transfers. For SHA transfers a $25 fee was taken out at the destination by the intermediary bank (Citibank), which is much greater 30 AED. The maximum transfer amount is 100,000 AED per day. The OUR transfers are still not as inexpensive as carrying cash over, but for security and convenience I prefer wiring.</p>
]]></content:encoded>
			<wfw:commentRss>http://dustin.li/2011/08/international-money-transfer-from-the-uae-to-the-us/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Installing NeoRouter on Lion</title>
		<link>http://dustin.li/2011/07/installing-neorouter-on-lion/</link>
		<comments>http://dustin.li/2011/07/installing-neorouter-on-lion/#comments</comments>
		<pubDate>Thu, 14 Jul 2011 14:04:00 +0000</pubDate>
		<dc:creator>lid</dc:creator>
				<category><![CDATA[Pub]]></category>

		<guid isPermaLink="false">http://dustin.li/?p=2786</guid>
		<description><![CDATA[NeoRouter 1.5.0 will not install on Mac OS X 10.7. The installer package searches for /dev/tun to verify that the TUN/TAP drivers are installed, but the search always fails in Lion. To work around this, I created a package with &#8230; <a href="http://dustin.li/2011/07/installing-neorouter-on-lion/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>
<a href="http://www.neorouter.com/downloads_nrfree.html#mac">NeoRouter 1.5.0</a> will not install on Mac OS X 10.7. The installer package searches for <code>/dev/tun</code> to verify that the TUN/TAP drivers are installed, but the search always fails in Lion. To work around this, I created a package with the check removed:
</p>
<ul>
<li><a href="http://dustin.li/software/neorouter.zip">NeoRouter 1.5.0 Client</a></li>
<li><a href="http://dustin.li/software/neorouter_151.zip">NeoRouter 1.5.1 Client</a></li>
</ul>
<p>
P.S. TUN/TAP is causing more kernel panics than it ought to (once every few days).</p>
]]></content:encoded>
			<wfw:commentRss>http://dustin.li/2011/07/installing-neorouter-on-lion/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>Can we trust CloudMagic?</title>
		<link>http://dustin.li/2011/07/cloudmagic/</link>
		<comments>http://dustin.li/2011/07/cloudmagic/#comments</comments>
		<pubDate>Sun, 10 Jul 2011 16:26:12 +0000</pubDate>
		<dc:creator>lid</dc:creator>
				<category><![CDATA[Pub]]></category>

		<guid isPermaLink="false">http://dustin.li/?p=2768</guid>
		<description><![CDATA[My Google Mail account is over 8 GB in size (thanks, attachment whores!), and includes over 70,000 conversations in my Inbox (ignoring the Archives). Unfortunately, this means that most search queries normally take 5-10 seconds, and this sucks, especially when &#8230; <a href="http://dustin.li/2011/07/cloudmagic/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.cloudmagic.com/"><img src="http://dustin.li/word/wp-content/uploads/mb-big-logo.png" alt="" title="CloudMagic logo" width="200" height="54" class="alignright size-full wp-image-2779" /></a>
<p>
My Google Mail account is over 8 GB in size (thanks, attachment whores!), and includes over 70,000 conversations in my Inbox (ignoring the Archives). Unfortunately, this means that most search queries normally take 5-10 seconds, and this sucks, especially when you&#8217;re searching your email for that crucial information and your co-worker is looking at your personal email over your shoulder. I thought Mail.app or Thunderbird would be a solution to this with a local, SSD-backed index, but those programs search even more aggravatingly slowly (guys, can we fix this please?).
</p>
<p>
Enter <a href="http://www.cloudmagic.com/" title="CloudMagic">CloudMagic</a>, an extension for Chrome and Firefox that downloads and indexes your mail your for you. It will also index your Google Docs, Spreadsheets, and has plenty of other shiny features, but I&#8217;ll let you watch <a href="http://www.youtube.com/watch?v=8RrH-cysl7E">their demo video with the disturbingly generic narrator</a> yourself. But can we trust this small company from Bangalore with our username and password? Will they misuse our data? Let&#8217;s take a look&#8230;
</p>
<p>
All Chrome extensions are distributed as .crx files, which are really just glorified .zip files with a little bit of Googley information tacked on. This lets us peruse some of the code of the extension, including the javascript and markup used to manage the extension&#8217;s basic functions. Poking around, the only interesting bit is where an innocuous-looking javascript file is downloaded from <code>https://www.cloudmagic.com/res/2_71_Beta/php/initapp.php</code> and used to inject a script into Gmail, Google Docs, and Google Calendar to provide a custom search box on those pages. There&#8217;s a good reason for this &#8211; if Google&#8217;s web interface changes, the company needs to be able to quickly update the script to prevent things from breaking, even if the Chrome Extension hasn&#8217;t been updated yet. Unfortunately, this is also a weakness &#8211; if the CloudMagic server ever gets compromised, replacing the script would allow an attacker to gain access our data as well. The question then becomes how much you trust CloudMagic to keep their server secure. Considering how big a target it is (thousands of Google accounts) and how small of a company it is, I&#8217;d rather play it safe and prevent the extension from loading any javascript remotely. A similar situation exists for the autoupdate mechanism, which allows the extension to update itself without any user intervention (and also passes a unique identifier to their website).
</p>
<p>
Another problem: you are required to enter your Google Account credentials into the extension preference page. This provides the extension with unlimited access to your account, and how much do you trust them with the password? Fortunately, this password appears to be stored locally only and is transmitted only over secure channels. A better alternative would be to use <a href="http://en.wikipedia.org/wiki/OAuth">OAuth</a>, wherein you give your password directly to Google, whose servers in turn provide an authentication token to the extension. The authentication token would only provide access limited to what is required by the extension.
</p>
<p>
Finally, there&#8217;s all the hidden code that&#8217;s compiled specifically for each platform via the <a href="http://en.wikipedia.org/wiki/NPAPI">NPAPI plugins</a>. The Google Chrome developer page says it best:
</p>
<blockquote><p>NPAPI is a really big hammer that should only be used when no other approach will work.<br />
Code running in an NPAPI plugin has the full permissions of the current user and is not sandboxed or shielded from malicious input by Google Chrome in any way. You should be especially cautious when processing input from untrusted sources, such as when working with content scripts or XMLHttpRequest.</p></blockquote>
<p></p>
<p>
There&#8217;s not much to find out or do here without the source code. However, we can look at the behavior of the extension with <a href="http://www.obdev.at/products/littlesnitch/index.html">Little Snitch</a> and <a href="http://www.charlesproxy.com/">Charles</a>. The result: the traffic between the extension and its website appears innocuous (just the aforementioned update queries and script requests). It seems that the NPAPI plugin is doing its business entirely locally.
</p>
<p>
I should acknowledge that Chrome and all other Chrome extensions also use an autoupdate mechanism, so many of the issues pointed out here also apply to that software. However, in many cases those plugins are completely open source and reviewable, have a larger user base, have less access to my data, or I simply trust the vendors more.
</p>
<p>
Let&#8217;s recap the potential security issues:
</p>
<ul>
<li>Remote Javascript injection</li>
<li>Autoupdates</li>
<li>No OAuth</li>
<li>&#8220;Public&#8221; NPAPI plugins</li>
</ul>
<p>
I&#8217;ve <a href="https://github.com/lid/Hardened-CloudMagic">modified the plugin</a> to solve some of these issues, but it&#8217;s no Panacea.</p>
]]></content:encoded>
			<wfw:commentRss>http://dustin.li/2011/07/cloudmagic/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>UAE climbing information</title>
		<link>http://dustin.li/2011/06/uae-climbing-information/</link>
		<comments>http://dustin.li/2011/06/uae-climbing-information/#comments</comments>
		<pubDate>Wed, 01 Jun 2011 20:39:23 +0000</pubDate>
		<dc:creator>lid</dc:creator>
				<category><![CDATA[Pub]]></category>

		<guid isPermaLink="false">http://dustin.li/?p=2731</guid>
		<description><![CDATA[I felt the need to collect the information I&#8217;ve been gathering about climbing in the UAE into one place. It&#8217;s been hard to find information about where to buy climbing gear, indoor climbing walls, etc. One geeky afternoon I threw &#8230; <a href="http://dustin.li/2011/06/uae-climbing-information/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I felt the need to collect the information I&#8217;ve been gathering about climbing in the UAE into one place. It&#8217;s been hard to find information about where to buy climbing gear, indoor climbing walls, etc. One geeky afternoon I threw together a Google Site with <a href="http://dustin.li/2011/04/maps-in-the-uae/">ever-so-useful maps</a> and more. </p>
<p>Check it out: <a href="http://uaeclimbing.dustin.li/">http://uaeclimbing.dustin.li/</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://dustin.li/2011/06/uae-climbing-information/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to install Ubuntu 11.04 on a Mac Mini</title>
		<link>http://dustin.li/2011/05/how-to-install-ubuntu-11-04-on-a-mac-mini/</link>
		<comments>http://dustin.li/2011/05/how-to-install-ubuntu-11-04-on-a-mac-mini/#comments</comments>
		<pubDate>Thu, 26 May 2011 12:43:39 +0000</pubDate>
		<dc:creator>lid</dc:creator>
				<category><![CDATA[Pub]]></category>

		<guid isPermaLink="false">http://dustin.li/?p=2720</guid>
		<description><![CDATA[DRAFT Hardware: MacMini4,1 (Mid-2010) Software: Ubuntu 11.04 64-bit (Natty Narwhal) The problem: booting with the CD gives bad graphics or a blank screen. The solution: when booting, hold down alt. Select the &#8220;Windows&#8221; CD, not the &#8220;EFI&#8221; CD. This will &#8230; <a href="http://dustin.li/2011/05/how-to-install-ubuntu-11-04-on-a-mac-mini/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><b>DRAFT</b></p>
<p>Hardware: MacMini4,1 (Mid-2010)<br />
Software: Ubuntu 11.04 64-bit (Natty Narwhal)</p>
<p>The problem: booting with the CD gives bad graphics or a blank screen.</p>
<p>The solution: when booting, hold down alt. Select the &#8220;Windows&#8221; CD, not the &#8220;EFI&#8221; CD. This will get you to a blankish purple screen with a fuzzy icon of a keyboard on the bottom. Press F6 (NB: this will not work with an Apple Wireless keyboard. Use a wired keyboard). Pick a language. Press the down key to select &#8220;<code>Install Ubuntu</code>&#8220;. Now press F6 again, and select <code>nomodeset</code> by using the arrow keys and the space bar. Press escape, and the menu should close. Towards the bottom of the screen there&#8217;s a boot line and a cursor&#8230; use the arrow keys to scroll left until you&#8217;re just left of &#8220;<code>quiet</code>&#8221; and &#8220;<code>splash</code>&#8221; (actually, you can delete those words). Type &#8220;<code>nomodeset xforcevesa</code>&#8220;. Press enter to boot. Wait. Keep waiting. Nothing&#8217;s happening? Keep waiting. It took about 5 minutes for my Mac Mini to move on, upon which it started whirring and clicking. Hurray!</p>
<p>Post-install: your system won&#8217;t boot, unless you edit the boot commands at grub. Add <code>nomodeset xforcevesa</code> again (press &#8216;e&#8217; when you&#8217;re at grub to edit a boot command). Once it boots, install the NVIDIA proprietary drivers. Edit <code>/etc/default/grub</code> to add <code>nomodeset noacpi reboot=acpi</code> in the appropriate place. Save the file, then run <code>update-grub</code>. Reboot. Your graphics may still suck. Run <code>nvidia-xconfig</code> and reboot. Are we there yet?</p>
]]></content:encoded>
			<wfw:commentRss>http://dustin.li/2011/05/how-to-install-ubuntu-11-04-on-a-mac-mini/feed/</wfw:commentRss>
		<slash:comments>22</slash:comments>
		</item>
		<item>
		<title>When it rains, it pours &#8211; what happens when the cloud disappears</title>
		<link>http://dustin.li/2011/04/when-it-rains-it-pours/</link>
		<comments>http://dustin.li/2011/04/when-it-rains-it-pours/#comments</comments>
		<pubDate>Mon, 25 Apr 2011 12:09:38 +0000</pubDate>
		<dc:creator>lid</dc:creator>
				<category><![CDATA[Geekage]]></category>
		<category><![CDATA[Pub]]></category>

		<guid isPermaLink="false">http://dustin.li/?p=2697</guid>
		<description><![CDATA[Update: It turns out that my website was not affected by the outage; just the Yottaa monitoring service. I was not in the one availability zone suffering from an outage. So much of what I wrote below was incorrect. Also, &#8230; <a href="http://dustin.li/2011/04/when-it-rains-it-pours/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><strong>Update:</strong> It turns out that my website was <i>not</i> affected by the outage; just the Yottaa monitoring service. I was not in the one availability zone suffering from an outage. So much of what I wrote below was incorrect. Also, they&#8217;ve posted a <a href="http://aws.amazon.com/message/65648/">detailed postmortem</a> which is a great bedtime read.
</p>
<p>For a few months now I&#8217;ve been cheering on Amazon as I&#8217;ve dived further into its cloud services. It has had excellent performance, little downtime, and is extremely affordable. But on the road to work today, I was listening to my Marketplace podcast, and a discussion of the reliability of cloud services took place, specifically pointing to Amazon&#8217;s recently massive outage which hit massive sites like Reddit and FourSquare. Wait, what? There was an outage?
</p>
<p>I have my cloud services set up to be monitored by external websites to alert me to exactly these kinds of problems. I double checked my inbox&#8230; nope, no alerts. Nothing in the RSS feeds either. Hmm&#8230; I logged into mon.itor.us, but after battling with the pretty awful user interface for half an hour, found out that history was capped at 24 hours. The event occurred 4 days ago. Great.</p>
<p>Then I checked <a href="http://www.yottaa.com/">Yottaa</a>, and it showed me this:
</p>
<p><img src="http://dustin.li/word/wp-content/uploads/Screen-shot-2011-04-25-at-3.41.57-PM.png" alt="" title="Server outage" width="950" height="380" class="aligncenter size-full wp-image-2698" /></p>
<p>Well that&#8217;s no good! <del datetime="2011-05-01T11:31:20+00:00">My website was offline between 04/21/2011 03:00 and 04/22/2011 15:00; 37 hours.</del> Oddly, it didn&#8217;t even register as an outage in Yottaa&#8217;s dashboard, nor did I get any alerts (apparently that&#8217;s not even an option)&#8230; well, Yotta&#8217;s got a beta label on their front page, so maybe it will get better. Ironically, the CSS wasn&#8217;t loading when I was using Yottaa&#8217;s site today. I seem to recall that Yottaa is hosted on Amazon&#8217;s servers&#8230;</p>
<p>I have a third monitoring service &#8211; Amazon CloudWatch. The last time I had an issue was when the server stopped responding due to a hardware failure. CloudWatch sent me an email that let me know with 10 minutes that the server was down, and I switched the site to a different server within an hour. Alas, no such email came for this incident&#8230; the server itself wasn&#8217;t suffering from a CPU or network fault, at least from the CloudWatch server&#8217;s perspective. In fact, it still isn&#8217;t clear what exactly went wrong&#8230; Amazon&#8217;s <a href="http://status.aws.amazon.com/">Service Health Dashboard</a> has noted that it was a problem with their storage backend, but CloudWatch shows successful disk I/O on my instance throughout the incident.</p>
<p>This outage could have been avoided if I had any redundancy for this website (the outage only badly affected one of the four data zones located in Virginia, where my stuff happens to be; if I had had another server on Amazon&#8217;s cloud in Japan or California or Ireland I would have been fine)). But I don&#8217;t, because I&#8217;m a cheap bastard and don&#8217;t care about the Internet&#8217;s feelings.</p>
<p>So despite Amazon&#8217;s first major outage, I&#8217;m sticking with them. They were sufficiently transparent during the process via their status updates and will hopefully produce an interesting post-mortem. I expect that they&#8217;ll learn a lot from their mistakes, and that websites that rely on Amazon will learn to implement some redundancy (though most of the impacted sites are startups that are as frugal as I am, so maybe not).</p>
]]></content:encoded>
			<wfw:commentRss>http://dustin.li/2011/04/when-it-rains-it-pours/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk: basic
Page Caching using disk: enhanced
Database Caching using disk: basic
Object Caching 662/779 objects using disk: basic

Served from: dustin.li @ 2012-02-05 00:48:04 -->
