<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" version="2.0">

<channel>
	<title>tail -f findings.out</title>
	
	<link>http://dancingpenguinsoflight.com</link>
	<description />
	<lastBuildDate>Fri, 25 Jan 2013 03:34:59 +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>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/dancingpenguinsoflight" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="dancingpenguinsoflight" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Setting up nested style templates in iReport and JasperReports</title>
		<link>http://dancingpenguinsoflight.com/2013/01/setting-up-nested-style-templates-in-ireport-and-jasperreports/</link>
		<comments>http://dancingpenguinsoflight.com/2013/01/setting-up-nested-style-templates-in-ireport-and-jasperreports/#comments</comments>
		<pubDate>Fri, 25 Jan 2013 03:34:59 +0000</pubDate>
		<dc:creator>shuckins</dc:creator>
				<category><![CDATA[iReport]]></category>
		<category><![CDATA[JasperReports]]></category>
		<category><![CDATA[Reporting]]></category>

		<guid isPermaLink="false">http://dancingpenguinsoflight.com/?p=2077</guid>
		<description><![CDATA[Style templates are a great way to abstract style definitions that are shared across a report out to an external file. This makes them easier to maintain and understand of course, but once your report library grows you will likely &#8230; <a href="http://dancingpenguinsoflight.com/2013/01/setting-up-nested-style-templates-in-ireport-and-jasperreports/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p><a title="JasperReports documentation on style templates" href="http://jasperreports.sourceforge.net/sample.reference/templates/index.html">Style templates</a> are a great way to abstract style definitions that are shared across a report out to an external file. This makes them easier to maintain and understand of course, but once your report library grows you will likely consider setting up one or a small number of shared style templates, probably with particular styles per report in sub templates.</p>
<p>The master template file, let&#8217;s call it shared_styles.jrtx, might look something like this:</p>
<pre>&lt;?xml version="1.0"?&gt;
&lt;!DOCTYPE jasperTemplate
 PUBLIC "-//JasperReports//DTD Template//EN"
 "http://jasperreports.sourceforge.net/dtds/jaspertemplate.dtd"&gt;
&lt;jasperTemplate&gt;
 &lt;style name="Default" isDefault="true" fontName="Circus"/&gt;
 &lt;style name="distinct" forecolor="#A0A0A0" backcolor="#FFFFFF" \
vAlign="Middle" fontSize="13" isBold="true" isItalic="true"/&gt;
 &lt;/style&gt; 
&lt;/jasperTemplate&gt;</pre>
<p>And let&#8217;s imagine a single sub-template, sprocket_styles.jrtx:</p>
<pre>&lt;?xml version="1.0"?&gt;
&lt;!DOCTYPE jasperTemplate
 PUBLIC "-//JasperReports//DTD Template//EN"
 "http://jasperreports.sourceforge.net/dtds/jaspertemplate.dtd"&gt;
&lt;jasperTemplate&gt;
 &lt;template&gt;&lt;![CDATA[shared_styles.jrtx]]&gt;&lt;/template&gt; 
 &lt;style name="quiet" backcolor="#FFFFCC" fontSize="8" \
  forecolor="#CCCCCC"/&gt;
&lt;/jasperTemplate&gt;</pre>
<p>For this to work, you need to add the directory containing these two jrtx files to the classpath that is passed to jasperreports.</p>
<p>You can also add this directory to the classpath in iReport (Preferences), and both will load the styles appropriately. This approach lets you keep your styles separate and easy to work with, and it even minimizes the change required for each report to incorporate style templates: you only need to add a style reference to the appropriate sub-template for the report, and it will load the shared one.</p>
    ]]></content:encoded>
			<wfw:commentRss>http://dancingpenguinsoflight.com/2013/01/setting-up-nested-style-templates-in-ireport-and-jasperreports/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Evading UUID woes when upgrading to iReport 4.6</title>
		<link>http://dancingpenguinsoflight.com/2013/01/evading-uuid-woes-when-upgrading-to-ireport-4-6/</link>
		<comments>http://dancingpenguinsoflight.com/2013/01/evading-uuid-woes-when-upgrading-to-ireport-4-6/#comments</comments>
		<pubDate>Wed, 23 Jan 2013 23:30:02 +0000</pubDate>
		<dc:creator>shuckins</dc:creator>
				<category><![CDATA[iReport]]></category>
		<category><![CDATA[Reporting]]></category>
		<category><![CDATA[JasperReports]]></category>
		<category><![CDATA[OS X]]></category>

		<guid isPermaLink="false">http://dancingpenguinsoflight.com/?p=2062</guid>
		<description><![CDATA[If you get this sort of nonsense as soon as you create a new report in iReport 4.6 (important caveat: and after having been running an older version like 4.1): com.jaspersoft.jasperserver.api.JSExceptionWrapper: org.xml.sax.SAXParseException: cvc-complex-type.3.2.2: Attribute &#8216;uuid&#8217; is not allowed to appear &#8230; <a href="http://dancingpenguinsoflight.com/2013/01/evading-uuid-woes-when-upgrading-to-ireport-4-6/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>If you get <a title="Jasper Community topic on this issue" href="http://community.jaspersoft.com/questions/542856/ireport-460-disabling-uuid-propertie-generation" target="_blank">this sort of nonsense</a> as soon as you create a new report in iReport 4.6 (important caveat: and after having been running an older version like 4.1):</p>
<blockquote><p>com.jaspersoft.jasperserver.api.JSExceptionWrapper: org.xml.sax.SAXParseException: cvc-complex-type.3.2.2: Attribute &#8216;uuid&#8217; is not allowed to appear in element &#8216;jasperReport&#8217;.</p></blockquote>
<p>Then you simply need to update your classpath with the new and shiny jars that came with your recently upgraded iReport. The steps below are written with OS X in mind, but the process should be fairly similar on other platforms.</p>
<ol>
<li>Open iReport Preferences (Cmd + ,)</li>
<li>Classpath tab</li>
<li>Note any jar files with iReport in their path having versions older than what you are running</li>
<li>Add Jar -&gt; /Applications/iReport_4.6.0.app<strong>**</strong></li>
<li>Select any jar files that match the old ones above, add them</li>
<li>Remove the old versions</li>
</ol>
<p><strong>**</strong> Important side note: In a perfect world, you would be able to open that .app file in iReport and navigate its perfectly reasonable contents. This not being that world: open a terminal and run this:</p>
<blockquote><p>ln -s /Applications/iReport_4.6.0.app/Contents/Resources/\ ireport/ireport/modules/ext /Applications/iReport_4.6.0_ext</p></blockquote>
<p>That will create a shortcut you can select, taking you to where all the new jars live. When you are done your classpath should look something like this:</p>
<p><a href="http://dancingpenguinsoflight.com/2013/01/evading-uuid-woes-when-upgrading-to-ireport-4-6/classpath/" rel="attachment wp-att-2063"><img class="alignnone size-full wp-image-2063" alt="classpath" src="http://dancingpenguinsoflight.com/wp-content/uploads/2013/01/classpath.png" width="488" height="307" /></a></p>
<p>Save, close and restart iReport for good measure, and create a new report. No UUID errors! And: no errors opening files created in older versions of iReport.</p>
<p>Caveat emptor: When you modify any of the aforementioned templates and save them, a uuid property will be added to at least the jasperReport element. Not a big deal for me so far, but if you open the saved file in an older version of iReport for some report you might get an error. Let me know if you try!</p>
    ]]></content:encoded>
			<wfw:commentRss>http://dancingpenguinsoflight.com/2013/01/evading-uuid-woes-when-upgrading-to-ireport-4-6/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Changing your name in iPad mail accounts</title>
		<link>http://dancingpenguinsoflight.com/2012/08/changing-your-name-in-ipad-mail-accounts/</link>
		<comments>http://dancingpenguinsoflight.com/2012/08/changing-your-name-in-ipad-mail-accounts/#comments</comments>
		<pubDate>Tue, 14 Aug 2012 05:30:01 +0000</pubDate>
		<dc:creator>shuckins</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Mobile]]></category>

		<guid isPermaLink="false">http://dancingpenguinsoflight.com/?p=2055</guid>
		<description><![CDATA[When adding a second Gmail account to my iPad recently, I needed to differentiate the two accounts clearly. I decided on &#8220;Gmail &#8211; &#8221; followed by the beginning of the account name. All well and good so far. However, a &#8230; <a href="http://dancingpenguinsoflight.com/2012/08/changing-your-name-in-ipad-mail-accounts/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>When adding a second Gmail account to my iPad recently, I needed to differentiate the two accounts clearly. I decided on &#8220;Gmail &#8211; &#8221; followed by the beginning of the account name. All well and good so far. However, a friend pointed out that this name was showing up as my name in emails sent from my iPad. Not what I was going for.</p>
<p>As it turns out, what I needed to set to keep things clear is Account Description. When adding a new account, the Account Name (shown as your name in outgoing mail) is set to the Account Description value by default. To change the Name, go to Settings -&gt; Mail, Contacts, Calendars. Then under Accounts select the desired account, then click the Account line on the next screen as well. Here you can change Name and Description independently:</p>
<p><a href="http://dancingpenguinsoflight.com/wp-content/uploads/2012/08/account-settings.png"><img class="alignnone size-full wp-image-2057" title="account-settings" src="http://dancingpenguinsoflight.com/wp-content/uploads/2012/08/account-settings.png" alt="" width="549" height="321" /></a></p>
    ]]></content:encoded>
			<wfw:commentRss>http://dancingpenguinsoflight.com/2012/08/changing-your-name-in-ipad-mail-accounts/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Transfering Google-synced iPad Notes between accounts</title>
		<link>http://dancingpenguinsoflight.com/2012/04/transfering-google-synced-ipad-notes-between-accounts/</link>
		<comments>http://dancingpenguinsoflight.com/2012/04/transfering-google-synced-ipad-notes-between-accounts/#comments</comments>
		<pubDate>Fri, 20 Apr 2012 03:24:17 +0000</pubDate>
		<dc:creator>Samuel Huckins</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Desktop]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Mobile]]></category>

		<guid isPermaLink="false">http://dancingpenguinsoflight.com/?p=2042</guid>
		<description><![CDATA[The short path to transferring iPad Notes between Google accounts: Create a Notes label in your new Gmail Connect the old and new Gmail to a mail client that allows multiple accounts and transferring messages between them Transfer all messages &#8230; <a href="http://dancingpenguinsoflight.com/2012/04/transfering-google-synced-ipad-notes-between-accounts/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<h3><strong>The short path to transferring iPad Notes between Google accounts:</strong></h3>
<ol>
<li>Create a Notes label in your new Gmail</li>
<li>Connect the old and new Gmail to a mail client that allows multiple accounts and transferring messages between them</li>
<li>Transfer all messages in the old Gmail&#8217;s Notes folder to the new Gmail&#8217;s Notes folder (Gmail labels are manifested as folders in Evolution)</li>
<li>Turn off Notes sync with the old Google account on the iPad</li>
<li>Turn on Notes sync with the new Google account</li>
</ol>
<h3><strong>The longer tale<br />
</strong></h3>
<p>The iPad Notes application has the ability to sync your notes to Google, Yahoo and other accounts, along with iCloud. While dealing with the ramifications of changing to a new primary Google account, I needed to get all my notes moved over. During this process, I learned some interesting things about Notes and Gmail in particular.</p>
<div id="attachment_2045" class="wp-caption alignright" style="width: 187px"><a href="http://dancingpenguinsoflight.com/wp-content/uploads/2012/04/diff.png"><img class=" wp-image-2045 " title="diff" src="http://dancingpenguinsoflight.com/wp-content/uploads/2012/04/diff.png" alt="" width="177" height="166" /></a><p class="wp-caption-text">Line-wise diffs only</p></div>
<p>When you sync your iPad notes with a Google account, notes appear as email messages with a newly created label applied called &#8220;Notes&#8221;. While the view on the iPad is a continuous document, modifications to notes actually show up as new messages in the same conversation under the Notes label. This provides the perk of a primitive diff view for your notes since the changes are shown in a different color.</p>
<p>Update: After some additional testing, I cannot discern the pattern of how these notes are updated as messages in Gmail. I have several that definitely show diffs and threaded conversations as evidenced by the image above (purple text was the first form; black was the most recent update). But this next test shows no such markup or evidence of what were definitely multiple messages:</p>
<div id="attachment_2048" class="wp-caption aligncenter" style="width: 505px"><a href="http://dancingpenguinsoflight.com/wp-content/uploads/2012/04/testnotes.png"><img class="size-full wp-image-2048" title="testnotes" src="http://dancingpenguinsoflight.com/wp-content/uploads/2012/04/testnotes.png" alt="" width="495" height="200" /></a><p class="wp-caption-text">Test synced note showing no signs of diffs or multiple messages despite the disparate update times...</p></div>
<p>Nice-to-have optional features aside, seeing as these notes are nothing more than emails with an intuitive label, transferring them to a new Google account got pretty simple. First though, I was unhappily reminded that Gmail does not allow you to forward more than one message at a time. To get around this, I set up both Gmail accounts within the desktop Evolution client. Then it was simply a matter of going to the old Notes folder, selecting all, Copy to Folder, navigate to the new account&#8217;s Notes folder, done. Be aware that you should first create a Notes label in the new Gmail account since it won&#8217;t exist before you sync notes from an iPad with the account. (And while we are on that topic, be aware that you have to quit and restart Evolution for it to pick up new folders.)</p>
    ]]></content:encoded>
			<wfw:commentRss>http://dancingpenguinsoflight.com/2012/04/transfering-google-synced-ipad-notes-between-accounts/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Handy Excel Tip: Open workbook in new instance</title>
		<link>http://dancingpenguinsoflight.com/2011/05/handy-excel-tip-open-workbook-in-new-instance/</link>
		<comments>http://dancingpenguinsoflight.com/2011/05/handy-excel-tip-open-workbook-in-new-instance/#comments</comments>
		<pubDate>Sun, 29 May 2011 21:04:50 +0000</pubDate>
		<dc:creator>Samuel Huckins</dc:creator>
				<category><![CDATA[Desktop]]></category>
		<category><![CDATA[Office]]></category>
		<category><![CDATA[efficiency]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[spreadsheet]]></category>

		<guid isPermaLink="false">http://dancingpenguinsoflight.com/?p=1924</guid>
		<description><![CDATA[I&#8217;ve written before about using Excel for some remote data collection and analysis tasks. One thing that often annoyed me in such situations was the inability to utilize multiple monitors. Whenever I wanted to break out a sheet, or especially &#8230; <a href="http://dancingpenguinsoflight.com/2011/05/handy-excel-tip-open-workbook-in-new-instance/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>I&#8217;ve <a title="Web data in Excel" href="http://dancingpenguinsoflight.com/2009/07/pulling-data-into-excel-from-web-queries/" target="_blank">written</a> <a title="Web queries with dynamic parameters in Excel" href="http://dancingpenguinsoflight.com/2010/07/excel-web-query-urls-with-dynamic-parameters/" target="_blank">before</a> about using Excel for some remote data collection and analysis tasks. One thing that often annoyed me in such situations was the inability to utilize multiple monitors. Whenever I wanted to break out a sheet, or especially when opening a new workbook, I found there is no way in default Excel to open the item in a new instance. It would always open in the same window, severely limiting potentially useful layout arrangements.</p>
<p>As is unfortunately common with Windows improvements&#8230; there&#8217;s a registry modification to solve it. All credit goes to OnlineTechTips: <a target="_blank" title="How a new instance of Excel 2007 workbooks" href="http://www.online-tech-tips.com/ms-office-tips/how-to-open-a-new-instance-of-excel-2007-workbooks/">this article</a> got me fixed up quickly.</p>
<p>Basically you just download <a target="_blank" href="http://www.online-tech-tips.com/wp-content/uploads/Excel_New_Instance.zip">a zip file</a>, extract the contents, and rename the file whose title indicates the behavior you&#8217;d like in place. After this you just double click to run the file. This is a very convenient way to provide a fix, much easier than following descriptions of where in the registry tree to find what entries and what values to set them as. One of them even adds the option to open in a new Excel window to the right click context menu.</p>
    ]]></content:encoded>
			<wfw:commentRss>http://dancingpenguinsoflight.com/2011/05/handy-excel-tip-open-workbook-in-new-instance/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Charlie Sheen is a long way from philosophy– but the journey is winning</title>
		<link>http://dancingpenguinsoflight.com/2011/05/charlie-sheen-is-a-long-way-from-philosophy-but-the-journey-is-winning/</link>
		<comments>http://dancingpenguinsoflight.com/2011/05/charlie-sheen-is-a-long-way-from-philosophy-but-the-journey-is-winning/#comments</comments>
		<pubDate>Wed, 25 May 2011 19:52:13 +0000</pubDate>
		<dc:creator>Samuel Huckins</dc:creator>
				<category><![CDATA[Amusing]]></category>
		<category><![CDATA[Web Applications]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Wikipedia]]></category>

		<guid isPermaLink="false">http://dancingpenguinsoflight.com/?p=2014</guid>
		<description><![CDATA[After reading about an interesting phenomenon witnessed in a cartoon by Randall xkcd I decided to see how true it was that you could get to Philosophy from most any Wikipedia term via a reasonable number of clicks (here the &#8230; <a href="http://dancingpenguinsoflight.com/2011/05/charlie-sheen-is-a-long-way-from-philosophy-but-the-journey-is-winning/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>After reading about an interesting phenomenon witnessed in a cartoon by Randall xkcd I decided to see how true it was that you could get to Philosophy from most any Wikipedia term via a reasonable number of clicks (here the devil waits, no doubt). The principle:</p>
<div style="width: 500px; border: 2px solid #aaa; background-color: rgb(158, 198, 208); padding: 10px 5px; margin-left: 80px;">
<blockquote style="padding: 0em;"><p>If you take any article, click on the first link in the article text not in parentheses or italics, and then repeat, you will eventually end up at &#8220;Philosophy&#8221;.</p></blockquote>
<div class="credit" align="right"><small>&mdash;<cite><a target="_blank" href="http://xkcd.com/903/">Book of XKCD, Chapter 903 (See alt tag)</a></cite></small></div>
</div>
<p>Being a good citizen of the Internet I started my search with the article on Charlie Sheen, hopeful that I was a mere two or three hops from my beloved Ivory Tower description. The truth, it turns out, is far more amusing. Follow the clicktrain:</p>
<ul>
<li>Step 1: <a title="Wikipedia: Charlie Sheen" target="_blank" href="http://en.wikipedia.org/wiki/Charlie_Sheen">Charlie sheen</a> -> Martin sheen -> Stage name -> Pseudonym -> Name -></li>
<li>Step 6: Noun -> Linguistics -> Human -> Taxonomically -> Science -></li>
<li>Step 11: Knowledge -> Facts -> Information -> Finite -> Mathematics -></li>
<li>Step 16: Quantity -> Property -> Modern philosophy -></li>
<li>Step 19. <strong><em><span style="color:red;">Philosophy</span></em></strong></li>
</ul>
<p>Now of course I have to write a script to facilitate exploring distances between terms in Wikipedia. After more important projects&#8230;</p>
    ]]></content:encoded>
			<wfw:commentRss>http://dancingpenguinsoflight.com/2011/05/charlie-sheen-is-a-long-way-from-philosophy-but-the-journey-is-winning/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Show all available documents to new Google Apps – Docs users</title>
		<link>http://dancingpenguinsoflight.com/2011/05/show-all-available-documents-to-new-google-apps-docs-users/</link>
		<comments>http://dancingpenguinsoflight.com/2011/05/show-all-available-documents-to-new-google-apps-docs-users/#comments</comments>
		<pubDate>Sun, 15 May 2011 01:55:52 +0000</pubDate>
		<dc:creator>Samuel Huckins</dc:creator>
				<category><![CDATA[Web Applications]]></category>
		<category><![CDATA[Docs]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://dancingpenguinsoflight.com/?p=1950</guid>
		<description><![CDATA[At my job we use Google Docs (via Google Apps) for internal collaborative documents and archives. One big issue with this platform is that when new folks are hired/given accounts and they go to view &#8220;All documents&#8221;&#8211; lo, and behold! &#8230; <a href="http://dancingpenguinsoflight.com/2011/05/show-all-available-documents-to-new-google-apps-docs-users/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p><a href="http://dancingpenguinsoflight.com/wp-content/uploads/2011/05/gdocs-logo.png"><img class="alignright size-full wp-image-1992" title="gdocs-logo" src="http://dancingpenguinsoflight.com/wp-content/uploads/2011/05/gdocs-logo.png" alt="" width="151" height="150" /></a>At my job we use Google Docs (via Google Apps) for internal collaborative documents and archives. One big issue with this platform is that when new folks are hired/given accounts and they go to view &#8220;All documents&#8221;&#8211; lo, and behold! it is empty. That&#8217;s right, if you go to &#8220;All items&#8221; and select Visibility -&gt; YOURCOMPANY under More options as the filter, you will still only get &#8220;No items matched your selections&#8221;. This despite there potentially being thousands of documents that should fit your criterion.<br />
<span id="more-1950"></span><br />
As it happens these views only get populated based on creation or modification dates. In other words, new users only get to see documents that are modified or created after their account was created. By &#8220;see&#8221; I only mean visibility of the existence of documents in the Docs index interfaces and searches. The user can still view a document directly if they are sent a direct link (assuming they have permission). But the fact that you can&#8217;t even see documents you have permission to see in searches until they are modified is just insane. Google support verified this was a &#8220;feature&#8221;, and their reasoning is that in larger organizations new employees might be overwhelmed by a huge list of documents, things would be too hard to find. So the solution is to make it difficult to find anything!</p>
<p>Until the time when Google realizes this is annoying and silly, here&#8217;s a quick and easy (albeit not permanent) hack for this situation. <a title="Google Help on making collections" href="http://docs.google.com/support/bin/answer.py?answer=68486" target="_blank">Create a new collection</a> (helpful: name = creation date) and <a title="Google Help on adding docs to a collection" href="http://docs.google.com/support/bin/answer.py?hl=en&amp;answer=68491&amp;topic=15197" target="_blank">add all current documents</a> to it. This step counts as a modification to all the documents, and thus they will then appear in the list of all docs! The annoying bit is that next time you make a user you have to do the same thing.</p>
<p>This hack might not be feasible if you have high hundreds or especially thousands of documents, I am sorry to say. As far as I can tell you can&#8217;t drag more than 40-60 of them at once or it throws an error. If you do it in chunks it works fine though.</p>
<p>Lastly, perhaps you dislike messy lists of things you no longer need and want to remove the previous collection when a new user comes on and you create a new one. If you do that by simply deleting the collection you will also <a title="Google Help on deleting collection" href="http://docs.google.com/support/bin/answer.py?hl=en&amp;answer=68487&amp;topic=15197" target="_blank">delete all documents in the collection</a>! Really Google? You couldn&#8217;t add a damned checkbox to confirm the removal of child documents or just the collection container? Anyway, if you really care that much then there is a way. Click on one document, hold Shift and click on another document slightly past the bottom of your screen (after scrolling). This should be a reasonable number for your chunk size. Then hover over one of the selected documents, click Actions on the right, and click Organize. Here you can select the new collection to add them to it and deselect the old one so they aren&#8217;t in it. Once you are done going through all your docs the old collection should be empty and you can remove it safely. My approach is to create them with a name based on the date and just never remove them. If your users heavily leverage collections you might need to reconsider this.</p>
    ]]></content:encoded>
			<wfw:commentRss>http://dancingpenguinsoflight.com/2011/05/show-all-available-documents-to-new-google-apps-docs-users/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Bag of useful Bash aliases and functions</title>
		<link>http://dancingpenguinsoflight.com/2011/05/bag-of-useful-bash-aliases-and-functions/</link>
		<comments>http://dancingpenguinsoflight.com/2011/05/bag-of-useful-bash-aliases-and-functions/#comments</comments>
		<pubDate>Sun, 15 May 2011 01:10:23 +0000</pubDate>
		<dc:creator>Samuel Huckins</dc:creator>
				<category><![CDATA[CLI]]></category>
		<category><![CDATA[Bash]]></category>
		<category><![CDATA[efficiency]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://dancingpenguinsoflight.com/?p=1968</guid>
		<description><![CDATA[Here are a number of assorted aliases and functions for Bash that I&#8217;ve made in the last few months and found to be useful. Enjoy! Sysadminish These two print the current value of the swappiness parameter and tail recent syslog &#8230; <a href="http://dancingpenguinsoflight.com/2011/05/bag-of-useful-bash-aliases-and-functions/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Here are a number of assorted aliases and functions for Bash that I&#8217;ve made in the last few months and found to be useful. Enjoy!<br />
<span id="more-1968"></span></p>
<h2>Sysadminish</h2>
<p>These two print the current value of the <a title="Article on kernel swappiness" href="http://www.linuxvox.com/2009/10/what-is-the-linux-kernel-parameter-vm-swappiness/" target="_blank">swappiness parameter</a> and tail recent syslog messages:</p>
<div class="codecolorer-container bash blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #7a0874; font-weight: bold;">alias</span> <span style="color: #007800;">swappy</span>=<span style="color: #ff0000;">&quot;sudo /sbin/sysctl vm.swappiness&quot;</span><br />
<span style="color: #7a0874; font-weight: bold;">alias</span> <span style="color: #007800;">sysl</span>=<span style="color: #ff0000;">&quot;sudo tail /var/log/syslog&quot;</span></div></td></tr></tbody></table></div>
<p>This converts unix timestamps (e.g. 1305401097) that you might find in logfiles to a more easily readable date format:</p>
<div class="codecolorer-container bash blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">function</span> fromunixtime <span style="color: #7a0874; font-weight: bold;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #c20cb9; font-weight: bold;">perl</span> <span style="color: #660033;">-e</span> <span style="color: #ff0000;">&quot;require 'ctime.pl'; print &amp;ctime($1);&quot;</span><br />
<span style="color: #7a0874; font-weight: bold;">&#125;</span></div></td></tr></tbody></table></div>
<p>The first is simply a quick way to check internet connectivity. Next are some super short ping aliases to avoid Ctrl+c all the time when you just need to verify that something responds. Pass them a URL to get one or three ping attempts:</p>
<div class="codecolorer-container bash blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #7a0874; font-weight: bold;">alias</span> <span style="color: #007800;">pingoo</span>=<span style="color: #ff0000;">&quot;ping -c 3 www.google.com&quot;</span><br />
<span style="color: #7a0874; font-weight: bold;">alias</span> <span style="color: #007800;">p1</span>=<span style="color: #ff0000;">&quot;ping -c 1 &quot;</span><br />
<span style="color: #7a0874; font-weight: bold;">alias</span> <span style="color: #007800;">p3</span>=<span style="color: #ff0000;">&quot;ping -c 3 &quot;</span></div></td></tr></tbody></table></div>
<p>Pass a webpage URL and it will download the source to a file named after the domain (if you&#8217;re passing a root page, e.g. http://www.cnn.com/) or the page name (e.g. contact.html):</p>
<div class="codecolorer-container bash blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">function</span> getsrc <span style="color: #7a0874; font-weight: bold;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #c20cb9; font-weight: bold;">wget</span> <span style="color: #007800;">$1</span> <span style="color: #660033;">-O</span> <span style="color: #000000; font-weight: bold;">`</span><span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;$1&quot;</span> <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">sed</span> <span style="color: #ff0000;">'s/\/$//'</span> <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">awk</span> -F<span style="color: #000000; font-weight: bold;">/</span> <span style="color: #ff0000;">'{print $NF }'</span><span style="color: #000000; font-weight: bold;">`</span><br />
<span style="color: #7a0874; font-weight: bold;">&#125;</span></div></td></tr></tbody></table></div>
<p>Sometimes you just need a big file. It doesn&#8217;t have to be interesting or contain any cosmological insights, but it does need to be a certain size. Pass that size in megabytes and this will give you just that, via a file full of zeroes:</p>
<div class="codecolorer-container bash blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">function</span> fakefile <span style="color: #7a0874; font-weight: bold;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #c20cb9; font-weight: bold;">perl</span> <span style="color: #660033;">-e</span> <span style="color: #ff0000;">&quot;print '0' x 1024 x 1024 x $1&quot;</span> <span style="color: #000000; font-weight: bold;">&gt;</span> <span style="color: #007800;">$1</span>-MB-fake-file.txt<br />
<span style="color: #7a0874; font-weight: bold;">&#125;</span></div></td></tr></tbody></table></div>
<p>This handy one extracts all email addresses in a file and gives you a unique sorted list:</p>
<div class="codecolorer-container bash blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #7a0874; font-weight: bold;">alias</span> <span style="color: #007800;">findallemails</span>=<span style="color: #ff0000;">&quot;perl -wne'while(/[\w\.]+@[\w\.]+\w+/g){print <span style="color: #000099; font-weight: bold;">\&quot;</span>$&amp;<span style="color: #000099; font-weight: bold;">\n</span><span style="color: #000099; font-weight: bold;">\&quot;</span>}' &quot;</span><br />
<span style="color: #000000; font-weight: bold;">function</span> findemails <span style="color: #7a0874; font-weight: bold;">&#123;</span><br />
&nbsp; &nbsp; findallemails <span style="color: #007800;">$1</span> <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">sort</span> <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">uniq</span><br />
<span style="color: #7a0874; font-weight: bold;">&#125;</span></div></td></tr></tbody></table></div>
<h2>Listing and searching</h2>
<p>When you invoke <a title="Post on ack-grep" href="http://dancingpenguinsoflight.com/2008/09/ack-grep-but-better/" target="_blank">ack-grep</a> it&#8217;s case-sensitive by default. It also ignores certain files and directories, based on their nature in some cases and in all cases where it doesn&#8217;t know what the filetype is. This incantation removes those limitations and is shorter to boot:</p>
<div class="codecolorer-container bash blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #7a0874; font-weight: bold;">alias</span> <span style="color: #007800;">ack</span>=<span style="color: #ff0000;">&quot;ack-grep -i -u&quot;</span></div></td></tr></tbody></table></div>
<p>This series allows you to list only directories or only files. You can pass a directory to list the contents or it will use the current directory as default:</p>
<div class="codecolorer-container bash blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #666666; font-style: italic;"># Feeds file and directory filtered listers:</span><br />
<span style="color: #000000; font-weight: bold;">function</span> lister <span style="color: #7a0874; font-weight: bold;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #c20cb9; font-weight: bold;">ls</span> <span style="color: #660033;">-l</span> <span style="color: #000000; font-weight: bold;">`</span><span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #ff0000;">&quot;$1&quot;</span> == <span style="color: #ff0000;">''</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span>; <span style="color: #000000; font-weight: bold;">then</span> <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">'.'</span>; <span style="color: #000000; font-weight: bold;">else</span> <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;$1&quot;</span>; <span style="color: #000000; font-weight: bold;">fi</span><span style="color: #000000; font-weight: bold;">`</span><br />
<span style="color: #7a0874; font-weight: bold;">&#125;</span><br />
<span style="color: #666666; font-style: italic;"># List only directories:</span><br />
<span style="color: #000000; font-weight: bold;">function</span> lsd <span style="color: #7a0874; font-weight: bold;">&#123;</span><br />
&nbsp; &nbsp; lister <span style="color: #007800;">$1</span> <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">egrep</span> <span style="color: #ff0000;">'^d'</span><br />
<span style="color: #7a0874; font-weight: bold;">&#125;</span><br />
<span style="color: #666666; font-style: italic;"># More memorable version:</span><br />
<span style="color: #7a0874; font-weight: bold;">alias</span> <span style="color: #007800;">lsdirs</span>=lsd<br />
<span style="color: #666666; font-style: italic;"># List only files:</span><br />
<span style="color: #000000; font-weight: bold;">function</span> lsf <span style="color: #7a0874; font-weight: bold;">&#123;</span><br />
&nbsp; &nbsp; lister <span style="color: #007800;">$1</span> <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">egrep</span> <span style="color: #660033;">-v</span> <span style="color: #ff0000;">'^d'</span><br />
<span style="color: #7a0874; font-weight: bold;">&#125;</span><br />
<span style="color: #666666; font-style: italic;"># More memorable version:</span><br />
<span style="color: #7a0874; font-weight: bold;">alias</span> <span style="color: #007800;">lsfiles</span>=lsf</div></td></tr></tbody></table></div>
<h2>Media and Fun</h2>
<p>These two require <a title="Man page for identify" href="http://cf.ccmr.cornell.edu/cgi-bin/w3mman2html.cgi?identify%281%29" target="_blank">identify</a> be installed, part of <a title="ImageMagick CLI" href="http://www.imagemagick.org/script/command-line-tools.php" target="_blank">ImageMagick</a>. Install the imagemagick package for your system first. Pass the filename of an image and the first will provide a range of information while the second will just provide the resolution:</p>
<div class="codecolorer-container bash blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #7a0874; font-weight: bold;">alias</span> <span style="color: #007800;">imginfo</span>=<span style="color: #ff0000;">&quot;identify -format '-- %f -- <span style="color: #000099; font-weight: bold;">\n</span>Type: %m<span style="color: #000099; font-weight: bold;">\n</span>Size: %b bytes<span style="color: #000099; font-weight: bold;">\n</span>Resolution: %wpx x %hpx<span style="color: #000099; font-weight: bold;">\n</span>Colors: %k'&quot;</span><br />
<span style="color: #7a0874; font-weight: bold;">alias</span> <span style="color: #007800;">imgres</span>=<span style="color: #ff0000;">&quot;identify -format '%f: %wpx x %hpx<span style="color: #000099; font-weight: bold;">\n</span>'&quot;</span></div></td></tr></tbody></table></div>
<p>Examples:<br />
<a href="http://dancingpenguinsoflight.com/wp-content/uploads/2011/05/imginfo.png"><img class="alignright size-full wp-image-1978" title="imginfo" src="http://dancingpenguinsoflight.com/wp-content/uploads/2011/05/imginfo.png" alt="" width="655" height="145" /></a><br />
Sometimes you just need to jack in. Or at least fill your screen with impressive looking output:</p>
<div class="codecolorer-container bash blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #7a0874; font-weight: bold;">alias</span> <span style="color: #007800;">rmatrix</span>=<span style="color: #ff0000;">'echo -ne &quot;\e[31m&quot; ; while true ; do echo -ne &quot;\e[$(($RANDOM % 2 + 1))m&quot; ; tr -c &quot;[:print:]&quot; &quot; &quot; &lt; /dev/urandom | dd count=1 bs=50 2&gt; /dev/null ; done'</span><br />
<span style="color: #7a0874; font-weight: bold;">alias</span> <span style="color: #007800;">gmatrix</span>=<span style="color: #ff0000;">'echo -ne &quot;\e[32m&quot; ; while true ; do echo -ne &quot;\e[$(($RANDOM % 2 + 1))m&quot; ; tr -c &quot;[:print:]&quot; &quot; &quot; &lt; /dev/urandom | dd count=1 bs=50 2&gt; /dev/null ; done'</span></div></td></tr></tbody></table></div>
<p><a href="http://dancingpenguinsoflight.com/wp-content/uploads/2011/05/matrix.png"><img class="alignright size-full wp-image-1981" title="matrix" src="http://dancingpenguinsoflight.com/wp-content/uploads/2011/05/matrix.png" alt="" width="572" height="300" /></a></p>
<div style="clear: both;"></div>
    ]]></content:encoded>
			<wfw:commentRss>http://dancingpenguinsoflight.com/2011/05/bag-of-useful-bash-aliases-and-functions/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Great iPad Apps</title>
		<link>http://dancingpenguinsoflight.com/2011/05/great-ipad-apps/</link>
		<comments>http://dancingpenguinsoflight.com/2011/05/great-ipad-apps/#comments</comments>
		<pubDate>Mon, 09 May 2011 00:44:22 +0000</pubDate>
		<dc:creator>Samuel Huckins</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[tablet]]></category>

		<guid isPermaLink="false">http://dancingpenguinsoflight.com/?p=1935</guid>
		<description><![CDATA[I purchased an iPad 2 recently and have really been impressed with the versatility of the platform. I keep finding new uses for it, including some that are new roles instead of replacements for more limited options. I don&#8217;t have &#8230; <a href="http://dancingpenguinsoflight.com/2011/05/great-ipad-apps/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p><a href="http://dancingpenguinsoflight.com/wp-content/uploads/2011/05/ipad.jpg"><img class="alignright size-full wp-image-1944" title="ipad" src="http://dancingpenguinsoflight.com/wp-content/uploads/2011/05/ipad.jpg" alt="" width="161" height="141" /></a>I purchased an iPad 2 recently and have really been impressed with the versatility of the platform. I keep finding new uses for it, including some that are new roles instead of replacements for more limited options. I don&#8217;t have the bandwidth for a full review of the iPad 2 and all its great features. But I did end up going on a bit of an app spree, so I&#8217;d like to share some of the more interesting ones I&#8217;ve found so far.<br />
<span id="more-1935"></span></p>
<ul>
<li><a href="http://flipboard.com/" target="_blank">Flipboard</a>: This has become my favorite news application on any platform. You provide RSS feeds (or select from pre-entered sites) and Flipboard generates a digital magazine style view of the articles, complete with images and cleaned up typography. You can slide the item up to view the original article, email articles and share with various social networks from within the app as well. I&#8217;ve been surprised how much faster I can get through my daily news. One big complaint: get with it guys, add Read It Later support!</li>
<li><a href="http://readitlaterlist.com/blog/2010/06/introducing-read-it-later-for-ipad/" target="_blank">Read It Later</a>:  Lovely interface to read through your Read It Later list. There&#8217;s a  flipboardesque style view available for an additional cost, which was a  little disappointing. I do love RIL though, so I&#8217;ll probably fork over  another few bucks to support them as well. [<strong>Update, 2011-05-09</strong>: I <em>highly</em> recommend buying the Digest view, and anything I said about it  disparagingly can be safely ignored. Aside from turning your list into a  great Flipboard view, it figures out categories for you, and does a  fine job. Good form, Peter.]</li>
<li><a href="http://www.9to5mac.com/64551/meet-terra-ipad-browser-with-tabbed-full-screen-and-offline-browsing/" target="_blank"><del datetime="2011-05-11T19:28:05+00:00">Terra</del></a>: An alternate web browser. I started using this because of the very intuitive and useful gesture navigation. Two fingers swiped left or right takes you back and forward in your browsing history and three fingers is used to switch between tabs. This greatly speeds up browser use. There are plenty of other cool features as well! [<strong>UPDATE, 2011-05-11</strong>: <a href="http://forums.macrumors.com/showthread.php?t=1145275">Apple has apparently told Readdle</a> to remove Terra from the AppStore. Sure, there's some duplication with Safari, but everyone I've shown it to thinks it's a clearly improved experience. Curmudgeons.]</li>
<li><a href="http://blogs.adobe.com/conversations/2010/04/hey_weve_launched_an_ipad_app.html" target="_blank">Adobe Ideas</a>: A drawing app that makes your art a little more&#8230; artistic. It smoothes out lines and curves, so your shaky squiggles look a bit more intentional. Not bursting at the seams with features, but great for some quick brainstorming and illustrations.</li>
<li><a href="http://blog.ted.com/2010/10/14/introducing-the-ted-ipad-app/" target="_blank">TED</a>:  Awesome free app to view all current TED talks. Easy to search and get  summaries at a glance. I&#8217;m watching a lot more of these now!</li>
<li><a href="http://www.tuaw.com/2010/05/25/tchess-pro-for-ipad-is-very-very-good/" target="_blank">tChess Pro</a>:  Very full-featured and well-made chess application. You can use it to  learn via the decent AI, move analysis, gameplay instructions, hints and  other features. There are a variety of views, angles and appearances so  you can view the board however you see fit. You can even email games  back and forth and move the board around with gestures!</li>
<li><a href="http://www.brians-brain.org/projects/flickr-frame.html" target="_blank">FlickrFrame</a>: You provide your Flickr credentials and select a set or other criteria and FlickrFrame pulls up a full-screen slideshow of your images. Rotation speed and animation are configurable, so it makes a great photo frame from your iPad.</li>
<li><a href="http://itunes.apple.com/us/app/netflix/id363590051?mt=8" target="_blank">Netflix</a>: Not as full-featured as you might wish, a cause of <a href="http://www.hackingnetflix.com/2011/03/netflix-updates-ipad-app-your-thoughts.html">some complaints</a>, but it still works wonderfully to stream from your instant queue, search for items, etc. And the iPad form factor definitely works out very well for a mobile movie center.</li>
<li><a href="http://itunes.apple.com/us/app/speedtest-net-mobile-speed/id300704847?mt=8" target="_blank">Speed Test</a>:  Just what you might think: easy and quick way to view your current  download and upload rates. Good for checking on the go or verifying home  network speeds.</li>
<li><a href="http://itunes.apple.com/us/app/the-weather-channel-max-for/id364252504?mt=8" target="_blank">TWC Max+</a>: Was just looking for a simple weather app, but this was free so I gave it a shot. Turns out it&#8217;s pretty great! It provides current radar and other usual weather fare for as many locations as you&#8217;d like to configure. Alerts and some (rather useless) social media stuff is available as well.</li>
<li><a href="http://itunes.apple.com/us/app/coder-cheat-sheets/id427177167?mt=8" target="_blank">CoderCheat</a>: Free app providing a number of helpful and commonly used programming reference/cheat sheets. It doesn&#8217;t have a huge variety of languages, but even with just CSS, HTML, Javascript, MySQL, PHP, Python and Regex it was sure good enough for free!</li>
</ul>
    ]]></content:encoded>
			<wfw:commentRss>http://dancingpenguinsoflight.com/2011/05/great-ipad-apps/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Fast and easy bluetooth management on Ubuntu</title>
		<link>http://dancingpenguinsoflight.com/2011/02/fast-and-easy-bluetooth-management-on-ubuntu/</link>
		<comments>http://dancingpenguinsoflight.com/2011/02/fast-and-easy-bluetooth-management-on-ubuntu/#comments</comments>
		<pubDate>Sun, 27 Feb 2011 22:16:21 +0000</pubDate>
		<dc:creator>Samuel Huckins</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Desktop]]></category>
		<category><![CDATA[bluetooth]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://dancingpenguinsoflight.com/?p=1908</guid>
		<description><![CDATA[I wanted to connect the conveniently svelte Apple wireless keyboard and mouse to my Ubuntu media server. I don&#8217;t often have issues connecting peripherals to my Ubuntu systems these days, so I naively assumed this would be a walk in &#8230; <a href="http://dancingpenguinsoflight.com/2011/02/fast-and-easy-bluetooth-management-on-ubuntu/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>I wanted to connect the conveniently svelte <a target="_blank" title="Apple wireless keyboard" href="http://www.apple.com/keyboard/">Apple wireless keyboard</a> and mouse to my Ubuntu media server. I don&#8217;t often have issues connecting peripherals to my Ubuntu systems these days, so I naively assumed this would be a walk in park. Well, it could have been, but I did not find the royal road on my first attempt. <a target="_blank" title="Installing blueman" href="http://www.siamnet.org/Wiki/Ubuntu-AppleBluetoothKeyboard">Here&#8217;s the right way</a>.<br />
<span id="more-1908"></span><br />
Install blueman (assumes you are on 10.04):</p>
<div class="codecolorer-container bash blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">bash</span> <span style="color: #660033;">-c</span> <span style="color: #ff0000;">&quot;echo 'deb http://ppa.launchpad.net/blueman/ppa/ubuntu lucid main' &gt;&gt; /etc/apt/sources.list&quot;</span><br />
<span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">apt-key adv</span> <span style="color: #660033;">--keyserver</span> keyserver.ubuntu.com <span style="color: #660033;">--recv-keys</span> 951DC1E2<br />
<span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">apt-get update</span> <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> <span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">apt-get install</span> blueman</div></td></tr></tbody></table></div>
<p>Now go to System -> Preferences -> Bluetooth Manager. This should bring up a handy utility:<br />
<a href="http://dancingpenguinsoflight.com/wp-content/uploads/2011/02/bluetooth-manager.png"><img src="http://dancingpenguinsoflight.com/wp-content/uploads/2011/02/bluetooth-manager.png" alt="" title="bluetooth-manager" width="502" height="382" class="aligncenter size-full wp-image-1910" /></a><br />
For the mouse:</p>
<ul>
<li>Right click on entry</li>
<li>Select Pair, passcode by default is &#8220;0000&#8243;</li>
<li>Once paired, right click again and select Connect to Input Service</li>
</ul>
<p>And keyboard:</p>
<ul>
<li>Right click on entry</li>
<li>Select Pair, didn&#8217;t ask for a passcode</li>
<li>Once paired, right click again and select Connect to Input Service</li>
</ul>
<p>After these easy steps both devices started working flawlessly. As it should be.</p>
    ]]></content:encoded>
			<wfw:commentRss>http://dancingpenguinsoflight.com/2011/02/fast-and-easy-bluetooth-management-on-ubuntu/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
