Fixing the No such file or directory message while upgrading Oh My Zsh

This is the answer you’ve been looking for. Ever since I installed Oh My Zsh on my Mac, I’ve been greeted by the following message whenever I launch Terminal:

[Oh My Zsh] Would you like to check for updates?
Type Y to update oh-my-zsh: Y
/bin/sh: /tools/upgrade.sh: No such file or directory

I never really cared about it, thinking I’d eventually upgrade the whole thing. Except that today when I did try to upgrade I received this message:

You already have Oh My Zsh installed. You'll need to remove ~/.oh-my-zsh if you want to install

A quick internet search for updating zshell led me to the answer deep within the oh-my-zsh git page.

The quick solution is to add export ZSH=$HOME/.oh-my-zsh to your ~/.zshrc file. Save and then source ~/.zshrc. Answer Y to update and everything should work perfectly.

iPhone-related domains for sale

I’ve got a number of iPhone-related domains that I haven’t developed. If you’re interested in any of them, drop me a line with the domain you want and your best offer to domains4sale [at] red66 [dot] com.

  • best-iphone-apps.com
  • i-dropped-my-iphone.com
  • ihponestuff.com
  • iphneaccessories.com
  • iphnefix.com
  • iphonaccesories.com
  • iphonfix.com
  • iphonplans.com
  • myihpone.com
  • myiphne.com
  • my-iphone-apps.com
  • my-iphone-sucks.com
  • stripteasr.com

Dropbox vs Google Drive Pricing – Round 1

Google - Buy Storage

Google Drive is finally out and looking like a viable alternative to crowd favorite Dropbox. Although we’re sure to see a swift response from Dropbox, let’s look at the current storage plans offered by both:

Storage Dropbox Google Drive
Free 2 GB
+16 GB in referrals
5 GB
25 GB n/a $2.49/m
$29.88/yr
25 GB for Gmail
50 GB $9.99/m
$99/yr
+32 GB in referrals
n/a
100 GB $19.99/m
$199/yr
+32 GB in referrals
$4.99/m
$59.88/yr
25 GB for Gmail
200 GB n/a $9.99/m
$119.88/yr
25 GB for Gmail
1 TB $795/yr for 5 users
Team Edition
$599.88/yr for 1 user

How to Get 22GB of Free Storage Space on Dropbox

Follow these five easy steps to max out your free Dropbox account with 22GB of free storage space.

1. Open a Dropbox account

Just by creating a free Dropbox account you’ll get 2GB of free disk space plus an additional 250MB if you use my (or someone else’s) referral link.

Total so far: 2.25GB

2. Use your .edu email address to double your referral bonuses

20120309-83ebtg45ax64xjs81wfussu9r8.preview.pngIf you have a .edu email address, simply provide it to Dropbox at https://www.dropbox.com/edu and your referral bonuses will double to 500GB, giving you a chance to earn 16GB of free space.

Doing this will also retroactively double your free space from any referrals done previous to linking your .edu email address.

3. Use your referral code to get extra free space

Once you’ve created your Dropbox account and linked your .edu email address you’re ready to start inviting your friends, acquaintances and random folks to join the fun.

Find your referral code and give it your friends, add it to your signature, or even use it on an AdWords campaign. Anyone who signs up with your code will also get an additional 250MB of free space.

Total so far: 18.25GB

4. Complete the Dropbox questionnaire for an additional 890MB

20120309-m5up1wfm9pgurg9rw1g958nw22.preview.pngSimply connect your Twitter and Facebook accounts to Dropbox, follow @Dropbox on Twitter, tweet about it and answer one question for an additional 640MB of free space (128MB for each action, so you don’t need to them all if you don’t feel like it).

Then finish the seven steps of the getting started guide to earn an additional 250MB of free space.

Total so far: 19.14GB

5. Test the Dropbox Camera Upload Beta for an additional 3GB

If you’re feeling a little adventurous, give the Dropbox Camera Upload Beta a try and earn up to 3GB of additional free space.

This used to give you 5GB of free space but as the Beta has evolved and become more stable, new testers now earn just 3GB of free space.

The Dropbox Camera Upload Beta will automatically grab photos and videos from any camera/SD card/phone you connect to your computer and add them to a Dropbox folder. For every 500MB of photos you add, Dropbox will add 500MB of free space to your account (up to a total of 3GB).

Total so far: 22.14GB

So, there you go: just over 22GB of free online storage space in Dropbox, available on all your computers, phones and tablets as well as anywhere you have an internet connection.

What do you think? Feel free to leave a comment with your Dropbox referral link

Thoughts on Twitter Censorship

As the entire blogosphere probably knows by now, Twitter has announced that they will censor tweets on a per-country basis when requested by said countries.

Censorship requests will be tracked and made public via Chilling Effects.

Twitter’s rationale for this move is that otherwise, countries would simply outlaw or bring down Twitter within their territories, whereas with this new policy only the offending tweets will be removed (and only within the offended countries).

Transparently reporting every censorship request would theoretically place Twitter outside the fallout zone and put the blame squarely in the offending parties.

But put yourself in Joe Totalitarian’s shoes for a second. Would you want your censorship requests filed and openly available for all the world to see?

While Germany might not mind going on the record censoring pro-Nazi tweets, totalitarian regimes would much rather go nuclear on Twitter under the lame-but-all-inclusive excuse of “people were using Twitter to plot against the legitimate government” than asking Twitter to selectively censor all tweets with the word “democracy” in them.

Twitter’s move may open the door for more transparency in modern democracies; what it will do for those countries were freedom of speech really needs a helping hand remains to be seen.

[also available on my Google+ page: https://plus.google.com/114204703228150089266/posts/7eK8WSWhpQe]

3 ways to use Google as a dictionary

Use these quick hacks to use Google as a dictionary.

1. If you only want a quick word definition, prepend your Google search with define:

For instance, https://encrypted.google.com/search?q=define:animal will give you a quick dictionary definition, followed by normal search results.

Use define:search-term to get a quick dictionary definitionDefine animal  Google Search

2. If you want a more complete definition (encyclopedic, almost), you need to enable Google’s dictionary mode using one of these methods:

a. Use the following URL to access Google:

http://www.google.com/search?tbs=dfn:1

and enter the word you’re looking for into the search box.

You can also add your search term directly to the URL, thus:

http://www.google.com/search?tbs=dfn:1&q=animal

adding &q=search-term to your URL.

b. Add the following search engine to Google Chrome (there are similar ways to add it to Firefox):

Open the Chrome Preferences | Manage Search Engines page at: chrome://settings/searchEngines

(or right click inside the Google search box and select Add as Search Engine…)

and use the following values:

Name: Google Dictionary

Keyword: d

URL: http://www.google.com/search?tbs=dfn:1&q=%s

Add a custom search engine to your browser to quickly get dictionary definitionsAdd Dictionary Search Engine

Now, whenever you want to search for a word, simply type d in your address bar, press tab and enter the word you’re looking for.

Google is chuck full of information, if you know how to ask.Animal  Google Search

3. If you’re using Chrome, you may also install the Google Dictionary extension, available from the Chrome Web Store. Once installed, you can simply double-click any word on a web page and you’ll get a pop-up with the definition.

Double-click any word to get its definition.NewImage
Or click the toolbar for any other word.NewImage

So there you go, three cool ways to expand your vocabulary. What about you? Do you have any tips on using Google? Leave your comment below and share this article with your friends.

 

76 iPad apps for kids, as recommended by Robert Scoble’s Google+ readers

If you’re looking for some great iPad apps to keep your kids entertained, look no further than this list of recommended titles.

Over on Google+, Robert Scoble asked his followers about what apps their kids were using… I’ve compiled the list with descriptions, screen shots and direct links to the iTunes store for your convenience – and added a few of my favorites. Check the original article for comments and reasons for each title.

Continue reading

Let me show you how French Coffee makes your brain happier (and other statistical lies)

Lies, damned lies and statistics (about TEDTalks)

In a brilliantly tongue-in-cheek analysis, Sebastian Wernicke turns the tools of statistical analysis on TEDTalks, to come up with a metric for creating “the optimum TEDTalk” based on user ratings. How do you rate it? “Jaw-dropping”? “Unconvincing”? Or just plain “Funny”?

[download tedPad here]

Share it with your friends or comment below. You can also continue the conversation on Google+.

Integrating Buffer into your iPad Twitter workflow

Frustrated that you can’t use Buffer from within your media consumption apps? Zite? Instapaper?

Read on to learn how to integrate Buffer into your info-pr0n apps for easy one-click, queued tweets.

Buffer is a web service that lets you schedule your tweets so they are published at pre-set times throughout the day.
Buffer schedules your tweets

I regularly read Zite and Flipboard in the morning and retweet anything I find interesting. At night, it’s time for Instapaper. While browsing throughout the day I use the Buffer bookmarklet to make sure my tweets go into my publish queue. No such luck when using Zite, Flibpoard or Instapaper since they’re not integrated with Buffer.

So I end up publishing a ton of info early in the morning and late at night, which may not be the best approach.

How can I use Buffer from within Zite, Instapaper and Flipboard if it’s not integrated into them?

I’ve found a nice workaround using a web service called IFTTT (ifttt.com – If This, Then That) that allows you to create a workflow using a number of web apps, such as Delicious, Instapaper, Gmail, etc. [Hit me up for invites if you want to try it.]

The idea is to create a one-click workflow that allows you to share content through your Buffer queue without having to re-format e-mails, copy, paste or any extra steps you might be needing at the moment.

ifttt puts the internet to work for you by creating tasks that fit this simple structure:Using IFTTT to integrate Buffer with your iPad twitter workflowThink of all the things you could do if you were able to define any task as: when something happens (this) then do something else (that).

My IFTTT setup:

I’ve created two tasks that solve the Buffer issue for Zite and Instapaper.

I’ve connected IFTTT to my Delicious account, my Instapaper account and my Gmail account.

There’s 3 bits of magic that help make this happen:

  1. Instapaper offers an RSS feed of your liked items.
  2. Zite posts to your Delicious account using a via:zite tag.
  3. Buffer offers you an email address where you can send your tweets to queued.

Now, on IFTTT create two tasks:

1. Send Delicious bookmarks from Zite to Buffer:

if [there's a new bookmark tagged via:zite in your Delicious account] then [send an e-mail with the bookmark from your Gmail account to Buffer's e-mail address]

Now all you need to do to share articles from within the Zite app is click on the Save to Delicious button.

2. Send liked Instapaper items to Buffer:

Using IFTTT to integrate Buffer with your iPad twitter workflowUse a New feed item from channel to check your Instapaper Liked Items feed.

if [there are new items on your Instapaper liked feed] then [send an e-mail with the article from your Gmail account to Buffer's e-mail address].

You’ll find your Instapaper Liked Items feed at the bottom of your Instapaper Liked page, where it says This folder’s RSS.

Just like any article in Instapaper and off it goes into your Buffer queue (please note that Instapaper takes a while to refresh your RSS feed, so this may not be instantaneous – not that it matters, since you’re queuing them for later anyway).

In both cases, set the e-mail’s subject to the title of the bookmark/article ({{title}}) and the body to the url ({{url}}). You can edit to your liking to add additional info to your tweets.

For Flipboard, we can take advantage that Buffer’s email address begins with “add” and the emails are formatted in a way that plays nice with Buffer. Simply select Email Link, begin typing “add” until autocomplete shows the Buffer address (usually at the top) and send away. (The reason I don’t use this same approach with Zite is that Zite truncates the article title when e-mailing).

There you go. Buffer integrated with my most-used info-pr0n apps. Sweet.

Use this link to create your own Buffer account and receive one extra tweet space in your buffer: http://bufferapp.com/r/e32e1

How do you integrate Buffer into your daily workflow? Let me know in the comments.

And if you enjoyed this post, please retweet it and follow me on Twitter @cgranier.

Creating a Shortcode for the Organize Series WordPress Plugin

Insert this code into your WordPress functions.php file (or custom_functions.php if you’re using Thesis like I am) to enable a quick way to display a series of articles created with the Organize Series plugin.

function get_thumb_series( $atts ) {
	extract( shortcode_atts( array(
		'ser_id' => false
	), $atts ) );
	if ('ser_id' == false){
		return false;
	}
 	global $post, $orgseries;
	$series_post = array();
	$posts_in_series = array();
	$settings = $orgseries->settings;
	$ser = $atts['ser_id'];
	$result = '<div class="episode-list">';
		$series_post = get_objects_in_term($ser, 'series'); 
		$posts_in_series = get_series_order($series_post, 0, $ser, FALSE);
		foreach($posts_in_series as $seriespost) { 
				$result .= token_replace(stripslashes($settings['series_post_list_post_template']), 'other', $seriespost['id'], $ser_ID);
		}
		$result .= '</div>';
		return $result;
}
add_shortcode( 'get-ts', 'get_thumb_series' );

Usage

On any post or page (and possibly anywhere else) where you want to list a particular series, enter the following shortcode:

[get-ts ser_id='n']

where n is the ID of the series you want to display (you can find this in the Manage Series admin page).

So, for instance, if you want to display a list of posts contained in a series with ID=10, you’d enter the following in the text of the post or page:

[get-ts ser_id='10']

Why and How did I do this

I’m using the wonderful Organize Series plugin on a site I’m working on to display hundreds of TV episodes together in a logical arrangement. As part of my CMS strategy, I needed a way to display the content of a series on a page that is not a part of the series.

Suppose you have all the episodes of “The Big Bang Theory” organized in a series so that you can jump from one to the next in a logical order and not be constrained by a blog’s chronological ordering system. If you want to create a page with additional info about the show, there’s no clear way to add the episode list to the page. This Shortcode will allow you to do just that.

The Organize Series plugin includes a file filled with useful functions (orgSeries-template-tags.php in the plugin’s folder). Figuring out how to put all that info to good use was a bit harder, since Organize Series now keeps all their support forums behind a pay-wall. The Internet Archive’s Wayback Machine solved that by letting me look at some older pages from back when the support forums where open.

Further help came from Aaron Jorbin’s post on WordPress Shortcodes – A how to by example.

The nice thing about this Shortcode is that you can edit the output to suit your needs. The reason I called the function get_thumb_series is that I originally wanted to generate a list of episodes with a thumbnail next to each one. I still haven’t done that, but there’s nothing keeping you from changing the function to return whatever it is you need. I’m currently using the default functions within orgSeries-template-tags.php (and the function itself is an abridged version of get_series_posts()), but will eventually add my own to return just the information I need about every episode (thumbnails, air dates, duration, etc).

I’ll add links to example pages once the site goes live. In the meantime, let me know if this article was helpful to you and feel free to post any fixes or updates.

Digital Video Strategy