Feb 28, 2012  •  In Cool Tool Tuesdays, Entertainment, Geek, Movies, Star Wars

Cool Tool Tuesdays: Harmy’s STAR WARS “Despecialized Editions”

Welcome to today’s installment of Cool Tool Tuesdays, where I feature a favorite item from my life and spotlight it so that others who are not familiar with the product may also benefit from it. A cool tool can be any book, gadget, software, hardware, material, or website that I have personally tried and love.

Do you have any questions about today’s cool tool? Would you like an item featured in the future? Please leave a comment to this post, or send me a message via my contact form. Enjoy!


As with most Star Wars fans, I hate the various modifications that has been made to the original trilogy and I openly voice my opinion on the matter.

And unless you own the trilogy, in its unedited and original form (often in Laserdisc or VHS format), it can be difficult to relive the untainted masterpiece.

(Just in case you are wondering, I did once own Star Wars episodes IV-VI in VHS format. But it disappeared from my parents’ home while I was away at college. My parents swear they did not touch it, so we can only surmise that a visitor “borrowed” it. 🙁 I consider this one of the saddest losses of my life.)

There’s also the fact that technology has changed tremendously since 1977, when Episode IV was released. I don’t even know anyone who owns a VHS player anymore — how can we continue to enjoy the authentic version and ensure that future generations will have access to it too?

Where there’s a will, there’s a way.

Or, in this case, where there is Star Wars, there will be a devoted following of über geeks with tons of time and resources to spare. (Or at least lend for this good cause.)

A very dedicated fan who goes by the name “Harmy” at The Original Trilogy forums has painstakingly put together a very high quality cut of the entire trilogy, utilizing a wide variety of video sources as well as custom mattes. The result: nearly identical versions of the original theatrical releases of Episodes IV-VI in HD format!

Right now, Harmy’s Despecialized Editions are the best restorations of the original trilogy by far. Because it is a fan preservation, it does not technically infringe on copyright laws…but this also means that it cannot be bought or sold. What you can do is download the trilogy and enjoy it from your computer, or burn it onto a disc and enjoy it on your television.

Heck, it even comes with cover art for Blu-ray cases — you can print those out and geek out even more!

You can learn more about the “despecialized” version of each film at the following threads in The Original Trilogy forums:

Episode IV: A New Hope

Episode V: The Empire Strikes Back

Episode VI: Return of the Jedi

Screened.com also featured a special, behind-the-scenes article on Harmy and his project here. It’s worth reading as it tells the tales of fandom, dedication, and “rare examples of Internet dissatisfaction leading to something genuinely amazing and productive.”  :mrgreen:

Finding the actual download links to the movies can be a bit of a pain, but they can certainly be found if you know where to look. (And if you’re really having trouble, just let me know and I’ll help you out.)

Harmy says that the “despecialized project” is not quite over yet. An obvious perfectionist, he still sees minor glitches, and wants to work on certain scenes such as the Ben vs. Vader lightsaber duel, or the original hologram of Leia, both of which were recomposited in later edits of the film and given a very different look in the process.

We will certainly be waiting for the newer — ironic when you consider that the goal is to go back to the original — release of Harmy’s Despecialized Editions with great anticipation. But in the meantime, geeks everywhere thank this 23-year-old student for all his hard work.


ETA, 2/2013:
Ever since MegaUpload has been shut down in addition to many torrent sites, it has become increasingly harder to find these movies for download. If you are having trouble, please shoot me a message via my contact form and I will send you instructions.

ETA, 5/2013:
I believe that the latest version of the Despecialized movies is 2.1. Unfortunately, I only have the original versions, so if you are looking for the most updated, I’m sorry to say that I can’t help you. REPEAT: I do NOT have the 2.1, nor do I know where to get them.

ETA, 6/2013:
I have located the 2.1 version and am currently in process of obtaining it. (The download is divided into 41 different files, hosted on a server that only allows one download at a time, so it’s taking a while.) I will post an update once I am done downloading and compiling — I hope that I can provide an easier way to download this latest version as I did with the first. 🙂 If you wish, you can message me and I will let you know once I am done.

ETA, 7/2013:
I was able to obtain version 2.1 of Episode IV. (As far as I can tell, Harmy has yet to release subsequent versions of Episodes V or VI. Please correct me if I’m wrong.) Please shoot me a message and I’ll send you instructions on how you can get it.

ETA, 7/2013:
I’ve been getting too many requests and, as a result, my servers have been overloaded. I’m sorry to say that I can no longer provide anyone direct links to the movies. However, if you contact me, I can tell you how I got the movies.

You may also like:

Feb 27, 2012  •  In Art/Design, Cute, Entertainment, Geek, Star Wars

‘Star Wars’ + ‘Up’ = WIN

This mashup by illustrator James Hance (previously featured on this blog for his Wookie the Pooh pieces) is too adorable not to share.

Titled “Someone Who Loves You,” this sweet painting features Up‘s Carl Fredricksen and his wife Ellie as Han and Leia from Star Wars. Prints will be available Tuesday on Hance’s website.

Via io9.

You may also like:

Feb 27, 2012  •  In Aerin, Baby, Claire, Parenting, Personal

Hibachi FAIL

Yesterday, J suggested that we take both girls and — with the help of his parents — go have lunch at a Hibachi Steakhouse.

Before I go on, I should state that I do not particularly like taking my kids to “adult” places. If the locale is specifically marketed as a family-friendly establishment? Sure, let’s go for it! But otherwise, I am a firm believer that most patrons of restaurants, theaters, and such pay the markup for the experience, and have the right to get annoyed when children are ill-behaved, or when babies won’t stop crying.

(And although I am a mother myself, I personally would pay more for a child-free cabin if I were flying without my kids.)

But this time around, I honestly believed that Claire would be fascinated by the Hibachi style of cooking, just as she had loved the Liberty Science Center. As for Aerin? We figured that we could time it so that lunch could coincide with a nap, and that she could be peacefully sleeping in her carseat on an adjacent chair while the rest of the family were dined and entertained by a Hibachi chef.

As soon as the chef arrived and performed his first showy act — a hissing river of steam angrily rising from the stove — we realized we had made a big mistake.

Because Claire started BAWLING.

Not just tears and sobs. Hysterical, red-faced WAILING with tears streaming down her face.

J’s father immediately scooped her up from the high chair and embraced her in a hug while we all pitched in to help calm her down. We tried distracting her, as well as clapping and excitedly saying “Yay!!!” whenever the chef performed a new act. But no dice. Claire seemed to only grow more and more terrified of the scary Hibachi man and his bag of tricks. Eventually, J and his father had to take turns walking her around to other parts of the restaurant because every time that they attempted to return her to the table, she would start crying again.

I felt horrible for the chef and the nice old ladies who shared the table with us. HORRIBLE. I couldn’t apologize enough.

(I also couldn’t help but look on to a nearby table with envy, because a little boy who seemed a few months younger than Claire sat in his high chair, laughing and clapping and simply enthralled by the Hibachi cooking.)

As for Aerin? She decided that she didn’t want to nap at all and started crying too. I barely got to eat my food because I had to bounce her while pacing in order to keep her quiet.

However, I’m happy to report that the outing wasn’t a complete bust. After the chef left the table, we tried one last time to return Claire to the table and she started crying again. But right then, our waitress served us dessert — ice cream! — and once Claire had a spoonful, she immediately shut up.

This was Claire’s very first time having ice cream, and it was clear that the girl loved it. We gave her four flavors to try: chocolate, vanilla, strawberry, and green tea. And soon, it also became apparent that she had a favorite flavor: chocolate!

Claire loved the ice cream so much that she began to dance along to the music playing at the restaurant and J caught a bit via his phone:

Isn’t it funny how we don’t teach babies to dance and they all still move their bodies along to music? Whenever Claire starts shaking her little booty even just a bit, I can’t help but think back to this video from when she was 11 months old:

J and I think that the scary Hibachi chef continued to linger on Claire’s mind, because she randomly cried out in her sleep throughout the night. 🙁  Next time, we’ll be sure to remember that our firstborn is an overly shy, cautious little girl who tends to scare easily. 

You may also like:

Feb 25, 2012  •  In Aerin, Claire, Motherhood, Personal

Motherhood, Summed Up in a Dream

Last night, I dreamt that J and I were childless.

We dined out often. We frequently entertained, hosting epic game nights just like we used to. We traveled to places we have always wanted to visit together, but never got a chance to: Mexico, Hawaii, France, Italy, Germany…even Hong Kong and Korea! (Yes, we have never visited either places since we started dating!)

Sure, we still experienced fatigue and frustration from our careers. Sure, we were still somewhat restrained by our limited vacation days, budgets, and familial obligations. But this life was so different from what we have now. So carefree, and somewhat innocent.


(image source)

It was a good dream. No, it was a fantastic dream.

But when I woke up (to the sounds of Aerin crying), I was sad. Not because the dream had ended, but because I had missed my girls. Because while a life like that was a lot easier and nice to reminisce back on, I do not want it if it doesn’t include Claire and Aerin.

The grass may be greener on the other side, but sometimes, you still prefer your own lawn.

You may also like:

Feb 22, 2012  •  In Blogging, Personal

Sick, Sick, Sick!

The past few days have been utterly exhausting:

  • My father being in the hospital (Fortunately, he is now discharged and surgery is not required. Thank you for your thoughts and support!)
  • Claire got a throat infection
  • I’m sick too
  • Aerin is being extra, extra clingy towards me

Blogging will resume when my life returns to a semi-normal state!

You may also like:

Feb 20, 2012  •  In Personal

Asking for Some Prayers and Support…

Last night, my father was admitted to the hospital with severe abdominal pain. It turns out that the walls of his gall bladder have thickened and hardened from his Hepatitis B. The doctors are still not sure if he will need surgery. They have given him some pain meds but he is still in some discomfort. Additonally, they won’t let him eat or drink anything just in case he does need surgery, which is very frustrating considering that he has been here for almost a full day now.

My father has blood clotting problems that stem from his Hepatitis, so even a minor surgery can be risky. 🙁

I am currently writing this on my phone, at the hospital, while my father naps. Your prayers and support would be very appreciated…

You may also like:

Feb 18, 2012  •  In Art/Design, Geek, Toys, Web

Monopoly: Web Lover’s Edition

It is no secret that I am a huge fan of the classic board game Monopoly. So how could I not share this Web Lover’s Edition with my readers?

Via the Behance Network.

Just in case you’re interested (or really bored this Saturday evening), here are the other Monopoly editions I have written about in the past. Enjoy!

And, since we’re on the topic: The Shortest Possible Game of Monopoly

You may also like:

Feb 17, 2012  •  In Blogging, Entertainment, Funny, NYC, Sports, Twitter

Friday Brain Dump (Basketball Edition)

1. Did you know that you can embed Tweets?

Just mouseover the tweet I have embedded below. Notice that the tweet is “live,” meaning that all the links (such as the “Follow” button) clickable and functional.

Apparently I seem to be one of the last people on earth who did not know this feature existed. And if you too, are thinking, “THIS IS COMPLETELY NEW INFORMATION TO ME!”, here’s how you do it:

  1. From the Twitter webpage, mouseover the tweet you want to embed.
  2. Click on “Open” on the top right corner.
  3. Click on “Details” which should slide out directly beneath the tweet.
  4. Now, you will see an option to “Embed this Tweet” right under the tweet. And voilà! The following window should open:

While most people will want to use the HTML, the Shortcode option is a great one for those who are blogging from a platform — like WordPress.com — that allows Twitter shortcodes. (If you are a WordPress.org user, you can install the Modern Media Tweet Shortcode plugin to get the shortcode working.)

 

2. Scumbag Jeremy Lin

Yesterday, I chuckled over the following meme on Reddit:

And today, I saw that last night’s The Daily Show with Jon Stewart had a segment of a similar note, one that is full of corny Lin puns and sarcastic humor that is so classic of the comedic news show. Check it out yourself:

 

3. New York Knicks vs. Dallas Mavericks, February 19, 2012

J and I try our best to attend at least one Knicks game every season (if only they weren’t so expensive!), and this year’s visit to MSG will be this Sunday!

Needless to say, I am super stoked. I am crossing my fingers that this game will surpass the best NBA game I’ve attended so far (which was a Sixers vs. Lakers game in 2001, when they went to the Finals) and you know that I will be decked out in Jeremy Lin gear!

Sunday’s game is a nationally televised one (ABC), so I’m thinking of making a catchy sign. Any suggestions?

 

You may also like:

Feb 16, 2012  •  In Art/Design, Fonts, Geek, Infographics

Typography: Bold & Justified [Infographic]

This is hands-down the best infographic on typography I have ever seen. It’s too good and informative not to share. Enjoy! (Click to view large.)

Via COLOURlovers.

You may also like:

Feb 16, 2012  •  In Bloggy Thursdays, Geek, Tutorials, Twitter, WordPress

Bloggy Thursdays: Customizing the Twitter Widget Pro Plugin

Welcome to this installment of Bloggy Thursdays, where I share with my fellow bloggers tips and tutorials to maximize and better your blog. While I do not consider myself an expert, I do like to think that after 10+ years of blogging — in addition to my technical knowledge — I know more than the average blogger when it comes to making your blog more appealing to readers.

Do you have any comments, questions, or topics you’d like to see covered here? Please send me a message via my contact form. Enjoy!


A couple of weeks ago, Rachael, Really commented on my WordPress plugins post and asked me to detail how I got my Twitter widget to look the way it does. As I am always looking for new ideas and topics to cover in Bloggy Thursdays — as well as Cool Tool Tuesdays and Reverent Sundays — I couldn’t help but oblige. 🙂

(Before I go on any further, I should mention that this is another WordPress-specific tutorial. Sorry to all my non-WordPress blogger readers!)

First, download the Twitter Widget Pro plugin. What I like about this plugin is that it is a Twitter widget that is meant to be customized — this is apparent by its default, bare-bones look. However, with some creativity, you can get it to look practically any way you want.

Another great thing about Twitter Widget Pro is that it gives you tons of options as a widget even before you get into the CSS. This is how I set up the widget in the “Widgets” section of my WordPress admin:

Now, let’s get to the nitty gritty part!

When you download the Twitter Widget Pro plugin, you will notice that the plugin package comes with several files. You want to locate the file called wp-twitter-widget.php and open it in your favorite text/code editor.

Now this is the important part. You want to REPLACE lines 561-680 with the following: (Note: these lines are consistent with the most current version of Twitter Widget Pro, which is version 2.3.8. If you are working with another version, the line numbers may be different.)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
if ( empty( $args['title'] ) )
			$args['title'] = "Twitter: {$args['username']}";
 
		$args['title'] = apply_filters( 'twitter-widget-title', $args['title'], $args );
		$args['title'] = "<span class='twitterwidget twitterwidget-title'>{$args['title']}</span>";
		$widgetContent .= $args['before_title'] . $args['title'] . $args['after_title'];
		$widgetContent .= '
<ul>';
		if ( count( $tweets ) == 0 ) {
			$widgetContent .= '
<li class="wpTwitterWidgetEmpty">' . __( 'No Tweets Available', $this->_slug ) . '</li>
 
';
		} else {
			$count = 0;
			foreach ( $tweets as $tweet ) {
				// Set our "ago" string which converts the date to "# ___(s) ago"
				$tweet->ago = $this->_timeSince( strtotime( $tweet->created_at ), $args['showts'], $args['dateFormat'] );
				$entryContent = apply_filters( 'widget_twitter_content', $tweet->text );
				$widgetContent .= '
<li>';
				$widgetContent .= "
<div class='tweets'><span class='entry-content'>{$entryContent}</span></div>
<div class='twitter-bottom'>";
 
 				if ( !empty( $tweets[0] ) && !empty( $args['avatar'] ) ) {
				$widgetContent .= '
<div class="twitter-avatar">';
				$widgetContent .= $this->_getProfileImage( $tweets[0]->user, $args );
				$widgetContent .= '</div>
 
';
				}
 
				$widgetContent .= "
<div class='twitter-meta'><a href='http://twitter.com/{$tweet->user->screen_name}'><span style='font-size: 12px; font-weight: bold;'>@{$tweet->user->screen_name}</strong></a><span class='entry-meta'>";
				$widgetContent .= "<span class='time-meta'>";
				$linkAttrs = array(
					'href'	=> "http://twitter.com/{$tweet->user->screen_name}/statuses/{$tweet->id_str}"
				);
				$widgetContent .= $this->_buildLink( $tweet->ago, $linkAttrs );
				$widgetContent .= '</span>';
 
				if ( !empty( $tweet->in_reply_to_screen_name ) ) {
					$rtLinkText = sprintf( __( 'in reply to %s', $this->_slug ), $tweet->in_reply_to_screen_name );
					$widgetContent .=  ' <span class="in-reply-to-meta">';
					$linkAttrs = array(
						'href'	=> "http://twitter.com/{$tweet->in_reply_to_screen_name}/statuses/{$tweet->in_reply_to_status_id_str}",
						'class'	=> 'reply-to'
					);
					$widgetContent .= $this->_buildLink( $rtLinkText, $linkAttrs );
					$widgetContent .= '</span></div>
 
';
				}
 
				if ( 'true' == $args['showintents'] ) {
					$widgetContent .= ' <span class="intent-meta">';
					$lang = $this->_getTwitterLang();
					if ( !empty( $lang ) )
						$linkAttrs['data-lang'] = $lang;
 
					$linkText = __( '@ ', $this->_slug );
					$linkAttrs['href'] = "http://twitter.com/intent/tweet?in_reply_to={$tweet->id_str}";
					$linkAttrs['class'] = 'in-reply-to';
					$linkAttrs['title'] = 'Reply';
					$widgetContent .= $this->_buildLink( $linkText, $linkAttrs );
 
					$linkText = __( 'rt ', $this->_slug );
					$linkAttrs['href'] = "http://twitter.com/intent/retweet?tweet_id={$tweet->id_str}";
					$linkAttrs['class'] = 'retweet';
					$linkAttrs['title'] = 'Retweet';
					$widgetContent .= $this->_buildLink( $linkText, $linkAttrs );
 
					$linkText = __( '&hearts;', $this->_slug );
					$linkAttrs['href'] = "http://twitter.com/intent/favorite?tweet_id={$tweet->id_str}";
					$linkAttrs['class'] = 'favorite';
					$linkAttrs['title'] = 'Favorite';
					$widgetContent .= $this->_buildLink( $linkText, $linkAttrs );
					$widgetContent .= '</span>';
				}
 				$widgetContent .= '</span>';
				$widgetContent .= '</div>
</li>
 
';
 
				if ( ++$count >= $args['items'] )
					break;
			}
		}
 
		$widgetContent .= '</ul>
 
';
 
		if ( 'true' == $args['showfollow'] ) {
			$widgetContent .= '
<div class="follow-button">';
			$linkText = "@{$args['username']}";
			$linkAttrs = array(
				'href'	=> "http://twitter.com/{$args['username']}",
				'class'	=> 'twitter-follow-button',
				'title'	=> sprintf( __( 'Follow %s', $this->_slug ), "@{$args['username']}" ),
			);
			$lang = $this->_getTwitterLang();
			if ( !empty( $lang ) )
				$linkAttrs['data-lang'] = $lang;
 
			$widgetContent .= $this->_buildLink( $linkText, $linkAttrs );
			$widgetContent .= '</div>
 
';
		}
 
		if ( 'true' == $args['showXavisysLink'] ) {
			$widgetContent .= '
<div class="xavisys-link"><span class="xavisys-link-text">';
			$linkAttrs = array(
				'href'	=> 'http://xavisys.com/wordpress-plugins/wordpress-twitter-widget/',
				'title'	=> __( 'Brought to you by Xavisys - A WordPress development company', $this->_slug )
			);
			$widgetContent .= __( 'Powered by', $this->_slug );
			$widgetContent .= $this->_buildLink( 'WordPress Twitter Widget Pro', $linkAttrs );
			$widgetContent .= '</span></div>
 
';
		}
		$widgetContent .= '</div>
 
' . $args['after_widget'];
 
		if ( 'true' == $args['showintents'] || 'true' == $args['showfollow'] ) {
			wp_enqueue_script( 'twitter-widgets', 'http://platform.twitter.com/widgets.js', array(), '1.0.0', true );
 
			if ( ! function_exists( '_wp_footer_scripts' ) ) {
				// This means we can't just enqueue our script (fixes in WP 3.3)
				add_action( 'wp_footer', array( $this, 'add_twitter_js' ) );
			}
		}
		return $widgetContent;
	}

Even if you don’t know any PHP, you should be able to recognize some HTML lying within the code above. Pay particular attention to what comes after each instance of $widgetContent .= because that’s where the HTML is located.

The only things you may want to change are the symbols I used for Tweet Intents (reply, retweet, favorite). If you wish to do so, you can change them on lines 63, 69, and 75 above. Just replace what’s between the ‘ ‘ marks to get your desired effect.

Next, you want to add the following CSS. You can do this by pasting it to your style.css file, or create a new CSS file with the code and point to it in your theme.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
.tweets {
	overflow: hidden;
	display: block;
	margin: 10px -2px 0 -2px;
	padding: 6px 6px 6px 10px;
	background-color: #DDEEF6;
	-moz-border-radius: 6px;
	-khtml-border-radius: 6px;
	-webkit-border-radius: 6px;
	border-radius: 6px;
	list-style: none;
	font-family: Verdana, sans-serif;
	font-size: 11px;
	color: #565656;
}
 
.twitter-bottom {
	margin: 0;
	padding-top: 16px;
	background: url('/images/twitter-stem.png') no-repeat 22px 0;
}
 
.twitter-avatar {
	float: left;
	margin-right: 5px;
	padding: 1px;
	height: 34px;
}
 
.twitter-avatar img {
	margin-top: 2px;
	border: 4px solid #DDEEF6;
	width: 30px;
	height: 30px;
}
 
.twitter-meta {
	margin-top: 6px;
	font-size: 11px;
}
 
.intent-meta {
	float: right;
}
 
.intent-meta a:link, .intent-meta a:visited, .intent-meta a:active {
	color: #999999;
}
 
.intent-meta a:hover {
	text-decoration: none;
	color: #666666;
}

What you will probably want to change here are the colors. The background color of the widget (the light blue) can be found on line 6, and you will notice that I used the same color for the border around my avatar (line 32). The text color is on line 14, while the links colors are on lines 47 (regular link color) and 52 (mouseover link color).

The only thing that I ask is that should you choose to use a bubble stem like I did on mine, you host it on your own server. My stem image can be found at this URL, which you can download to use for yourself. And, of course, should you do so, you should change the URL on line 20. (If you decide not to use a stem, you can just delete that line.)

And that’s it! I know that seeing all this code can be intimating, but I promise that if you follow the instructions carefully, it isn’t that bad at all.

As always, please leave any questions you may have by commenting to this post, and I will try my best to answer them!


ETA: Commenter Mochi and Macarons asked that I provide the exact code to be replaced rather than the line numbers. I have decided that it would be easier to provide the edited version of the wp-twitter-widget.php file which can be downloaded here in ZIP format.

You may also like: