How to get Microsoft and eBay to pay for 10-percent of your new Canon Rebel T2i DSLR

March 1st, 2010
If, like me, you’re excited about the new Canon Rebel T2i DSLR1 and plan to buy one when the price falls a bit, and you’re in the USA, you’re in luck. Though I expect all stores will sell the camera at exactly its MSRP2 for months, I’ve found a way to chop that price down by about 10%.

Ram - Bing

Remember Microsoft Bing? The search engine that Microsoft will pay you to use? That’s step 1.

  1. Go to www.bing.com, sign in or create a “windows live”3 account, then search using bing for popular product lines like “ram” or “xbox”.
  2. Look at the top of the search results for a “Bing cashback” link to eBay like the one I’ve annotated above. Click the words “Bing cashback”.
  3. You’ll be taken to eBay. There’ll be a banner at the top of the page telling you that you’ll get an 8% “Bing cashback” if you purchase the item using eBay’s “Buy it now” link and if you pay via paypal. The key thing to note here is that the cashback happens regardless what item you buy at eBay, it doesn’t have to be RAM or XBox. In your case, search eBay for a Canon T2i.
  4. In your search results, click the “Buy it now” tab to filter your search to only show items that can be purchased using that method.
Ebay Order Details
I wonder how Microsoft cashback actually works. Does the money come from Microsoft? From the participating store (eBay in this case)? Maybe it’s just money rained down by the universe as a reward to people for continuing to go through the motions of participating in the market economy as the walls crumble around us.
Unless you want a gray market product, I’d advise you to be wary of any vendor with less than 99% positive feedback, or who is located overseas, or who doesn’t explicitly state the list of items included in the unopened box and that it comes with a Canon USA Warranty. But there are plenty of legitimate physical camera and electronics stores who use eBay as their internet storefront, and they’re listing the camera for the same price as Amazon and B&H.

Microsoft’s cashback takes a while. But a month or so after your purchase, they’ll deposit the cashback value directly to your paypal account. eBay has their own sort of cashback program going on, called “eBay Bucks”. For your purchase, you’ll earn 2% of its value in eBay Bucks, which can be used for future transactions. So within a month or two after your purchase, you’ll have received 10% of the total in Bing Cashback and eBay bucks.

Ebay Order Details-1

I’m sure if you can wait six months a better deal will come along. Maybe the Canon T2i will be available at Dell Small Business store and you’ll be able to get %15 off buy using a coupon. But if, like me, you’re ready now to replace your several-generations-old DSLR, this is probably not a bad way to go.

  1. At least in part due to its HD video capabilities []
  2. $799 for the body, $899 for the body in a kit with lens []
  3. The terms “windows” and “live” are meaningless Microsoftian buzzwords that are completely unrelated to this context. But the marketing folk at Redmond are only satisfied when those words are platered on top of every product. []

Where Tortillas come from (@ Poquito Mas)

February 22nd, 2010

This restaurant scares me

February 21st, 2010
If the Rainforest Cafe menu was written with a sicker sense of humor they’d have a Soma Screwdriver I could order to go along with the Huxley-inspired pizza.

Posted via email from Zach’s posterous

American Gothic

February 21st, 2010
 Mg 1423

Is the Volvo C30 this decade’s AMC Gremlin?

February 17th, 2010

It certainly seems that way to me, having only seen one in person from behind. That rear window looks so familiar.

I don’t think of that comparison as a necessarily unflattering one.

Posted via email from Zach’s posterous

EPA should not list combined ratings for upcoming electric vehicles

February 15th, 2010
I’ve been reading up on the Chevy Volt, Nissan Leaf, and other electric cars. It seems the EPA is trying to figure out how to rate such cars for their efficiency. Unfortunately, perhaps due to the desire of automakers wishing to impress consumers with big numbers that relate to current labels, they’re leaning towards relating the efficiency of electric vehicles in miles per gallon or combined ratings that try to reduce the efficiencies or range of multiple methods of energy storage into single numbers that are difficult to entangle into real information.

This next paragraph is going to sound like a grade-school mathematics word problem, but bear with me. The Chevy Volt has an electric motor and a battery. When the battery is depleted, a gas generator kicks in to power the electric motor and extend the range. Chevy says their battery will power 40-miles of driving. So a person who drives less than 40-miles a day might only use gas on rare occasions. So for that person, a displayed rating of 40-miles-per-charge would be the most useful rating. For a person who regularly takes a 400 mile drive from Los Angeles to San Francisco, 90% of their drive would be powered by the generator. For them, the number they’d need to see would be how may miles-per-gallon they’d get. The EPA’s current label design would fail to communicate anything of use to either the people in these examples.

Instead, they’re doing some kind of weird combined rating that relates to kilowatt-hours used per 100 miles of travel. This awards the Chevy Volt a rating of 236 mpg. Sounds impressive, but that’s not a number that relates to one’s experience of using the car. I typically drive less than 100 miles a week. If I were in the market for an electric vehicle, I’d use zero gallons of gas most weeks. ∞ mpg?

 Files Mini-E-Sticker
Here’s the EPA draft label, for the BMW Mini-E. That car can travel 156 miles on a single charge. It’d be much more useful if that range were just printed on the label, rather than “33kW-hr/100 miles (equivalent to 102 MPG)”.

EPA, if you’re listening, please label electric cars as follows. Show the distance the car can go on a single battery charge. If the vehicle switches to another fuel when the battery is depleted, then separately show the distance it can go on that fuel along with the size of that fuel tank. Nice and simple. 2 big numbers (distance ranges), one small number (size of secondary fuel tank). The car manufacturers wouldn’t be able to tout awesomely high miles-per-gallon ratings, but it’d be a more honest and intelligible way to rate methods of propulsion that use fuel not measured by the gallon.

iTunes sharing over the internet using Back to my Mac and ssh port forwarding

February 8th, 2010

I was at work the other week, doing a repetitive task of the sort that provides an opportunity to listen to music. I’d recently purchased an album and had stored it in the iTunes library on my home computer, but had not yet loaded the new songs onto my iPhone. There had to be a way to make iTunes at home share its music to my work computer so that I could listen to the new music. A few internet searches turned up some interesting information as well as a solution.

The crippled feature to be healed and exploited

Apple’s iTunes software has the ability to share selected playlists or entire libraries of music to other computers on a local network running iTunes. This means that if you have a large collection of music on your desktop computer, you can browse and listen to music from its library from a different room, streamed to your laptop. Or if you work in an office, and your coworkers have iTunes running on their machines and set to share, their shared libraries will automatically appear in the left column of iTunes running on your machine and you can play from them. It all works very seamlessly, on a local network. Possibly due to agreements made between apple and the recording industry, the sharing feature only works between computers on a local network, not between computers on the internet at large.

How iTunes sharing works

When a user tells iTunes to enable sharing in that application’s preferences, iTunes advertises that service on port 3689 of the local network using “Bonjour“, the name for Apple’s implementation of the Zeroconf standard. Bonjour is used by iTunes, iPhoto, and other applications to advertise and to find servers on a local network, such as within a home or office.

If a copy of iTunes is running on any other computers that are on the local network, those instances of iTunes will notice the advertisement of an iTunes share on the network, and will display the name of that iTunes share in the left column of the window. The user can then click that shared Library and play songs from it on their computer. The playlists and songs stream over the network from the sharer to the sharee. Unfortunately in my case, iTunes running on my laptop at work couldn’t see the iTunes share served from my computer at home, because my home computer is miles away and not connected to the same local network as my laptop.

Bringing the remote network closer

The following link pointed the way to a solution:1

REMOTE ITUNES SHARING

I recognized a familiar Unix trick in their tip: Port forwarding over a secure shell connection. Of course! If one could make a secure shell connection (abbreviated in the command “ssh”) to a remote computer, one could then do what’s called “port forwarding”, and forward all communications on a port on the remote machine to a port on the local machine. This would transport both the advertisement of the iTunes share and the actual sharing itself from the remote network to the local network. I’d never actually executed port forwarding over ssh before, but I’d heard of it, and between their example and the man page for the ’ssh’ command, it all became clear. The tip first requires that one knows the IP address of the remote computer, and then shows the command to connect to the remote machine, grab any communications on port 3689 (the port used by iTunes sharing), transport it encrypted to the local machine, and repeat it on port 36890 of the local machine. The command looks like this (hover your mouse over any portion of the command to see an explanation of that portion):

$ ssh -fNL *:36890:127.0.0.1:3689 USER@REMOTE-HOST

After that command successfully concludes, the iTunes share on the remote computer will be accessible to computers on the local network, except they won’t be able to see that it’s there. The second command in their document uses OS X’s built-in “dns-sd” command to advertise that there is an iTunes share on port 36890 of the local computer. It is this advertisement that will make the iTunes share appear in the sidebars of any copy of iTunes running on the network:

$ dns-sd -R "Remote iTunes" _daap._tcp local 36890 &

I was confident that this would all work, but for one snag. Like most people, my home computer only has an address on its local network, it doesn’t have its own internet address. The computer is connected to a router. The router has an IP address on the internet and an IP address on the local network and uses what’s called “Network Address Translation” to distribute connections from the outside internet to all the computers on the local network. If I tried to connect to the IP address of my home connection, I’d be connecting to the router, not my home computer with its trove of music. Luckily a solution was within reach.

Locating the remote computer using Back to My Mac

I recently purchased a “MobileMe” subscription, which includes a service called “Back to my Mac“. I’ll let Apple’s marketing folk, who’ve obviously seen Buckaroo Banzai, explain “Back to My Mac” for me:

Wherever you go, there’s your Mac.

Back to My Mac puts any Mac OS X Leopard- or Snow Leopard-based Mac you use within easy reach. MobileMe finds your remote Mac computers over the Internet and displays them in the Finder on the Mac you’re using. So you can connect from anywhere with just a click. Edit and save documents, open applications, and move folders. With Back to My Mac Screen Sharing, you can control your remote Mac as though you’re sitting in front of it.

I have been using the Back to My Mac service to copy files to and from my remote computer from work, and to occasionally take control of my home computer’s screen from work. The service must be punching through the router using port-forwarding and registering a temporary domain name for my home computer which can be accessed from the outside internet. I figured that if I could find out this domain name, it would be worth a try to use it to connect from work to the home computer and set up ssh port forwarding of the iTunes share. A search turned up this article:

10.5: How to use ssh using ‘Back to My Mac’

The writer of that article explains exactly how to determine the Back to My Mac domain name at which one can find their remote computer. When I tried the first method described, it did not work. As it turns out, that method works for short computer names, but my home computer’s name is long, and Back to My Mac truncates it and adds a few random (?) numbers when assigning the domain name. The second method they mention does work. I can easily determine the name assigned to my remote machine by choosing “Shell > New Remote Connection…” in the Terminal application’s menubar. In the “New Remote Connection” window that appears, I choose ’ssh’ in the service column and my remote computer’s name in the ‘Server’ column. There, in the field at the bottom of the New Remote Connection window will appear the command for making a ssh connection to my home computer. It’s not the same ssh connection command that will be used to do port forwarding, but the last portion of it does show me the exact domain name that will resolve to my home computer.

Victory

Whenever I feel the mood, I can now run the following two commands and then sit at work listening to streaming music stored on my home computer:

$ ssh -fNL :36890:127.0.0.1:3689 myComputerName.myMobileMeID.members.mac.com.

$ dns-sd -R "Zach's Remote iTunes FTW" _daap._tcp local 36890 &



Thanks Y’all

Thank yous are due to the writers of:
  1. All the solutions written below involve the use of the Terminal application and the command-line. If you’ve never played with such, give it a shot. Stop kvetching and open /Applications/Utilities/Terminal. You paid for a Unix operating system when you bought your Mac, you might as well try exploring some of its inner awesomeness. []

FCP howto: Use Batch Export to create a directory of still frames from a bin of clips

February 3rd, 2010

If you’ve got a bunch of clips in a Final Cut Pro Browser window, and you’d like to quickly generate a still frame for each clip, you can use the “Still Image” feature of FCP’s ancient “Batch Export” feature to automate much of the process. Here’s how:

Rt Overlays (Ignored By Utest)
1. Choose a representative frame in each clip. (Click any of these images to see them nice and big.

Making Stills From Fcp Step 2
2. Send the clips to FCP’s Batch Export feature and bring up its “Settings” window.

Exporting Stills From Fcp Step 3
3. Choose the destination for the exported files and set Batch Export to create still images.

The result will be a folder full-resolution PNG images, each named after its parent clip, deposited in the chosen destination folder.

I often end up processing directories full of such uncompressed images further using the excellent command-line Imagemagick utilities using the tcsh shell’s1 “foreach” command to iterate through all the images.2 It generally goes a little something like this:

$ tcsh3
% cd directory_of_images4
% foreach foo (*.png)5
foreach? convert -geometry 330x800 "$foo" "$foo:r.jpg"6
foreach? rm "$foo"7
foreach? end8

The result of this command is a set of JPEG-compressed images, one per clip selected in step 2, each resized proportionally to fit within a 330×800 rectangle.

  1. This is also easy to do with OS X’s default bash shell, but I’m more fluent in tcsh. []
  2. You may prefer GraphicConverter, Photoshop, or MS Paint. Imagemagick combined with the command line is mad fast for both image transformations and automatically renaming files. []
  3. Switching to the tcsh for this because I have yet to internalize Bash's foreach syntax. []
  4. If you're unfamiliar with command lines and shells, please note that the "%" character here represents the tcsh command-prompt, the "$" in the previous line represents the typical Bash command-prompt. Don't type these characters in your commands, they're just here for show. []
  5. "foo" is a placeholder of my choosing. There's nothing special about the string "foo". You can replace it with anything you like, such as "image", "placeholder", or "your_mom". Just make sure to use the same string in place of all the "$foo" commands below. []
  6. Each time tcsh iterates through your commands, it will replace the string "$foo" with the filename of an image from the set chosen by "*.png", which is every file in the directory ending in ".png". Adding a ":r" to "$foo" indicates that tcsh should expand the filename but leave off the period and filename extension –in this case "$foo:r.jpg" removes ".png" from the file and adds ".jpg" in its place. The quotes around "$foo" are optional if your filenames do not contain spaces or special characters. []
  7. Removing the original png file because all I ever wanted were the tiny JPEGs. []
  8. One more note from Captain Obvious: If you try to copy and paste any of these commands, be sure not to copy and paste the superscript numbers that lead to these footnotes. []

assistant editor Unix tricks

January 25th, 2010
It’s time to take apart some Final Cut Pro xml and add some newly received VFX clips to the VFX database. One of these days, I’ll explain all of these steps and how they might be useful in other workflows. For now, enjoy a look at a relaxing vacation from graphical user interfaces and mouse-clicks; A trip to the Terminal. If you have any Unix or XML knowledge, there might be something of interest in here.

Assistant-2:20100125 CAB$ xmlstarlet sel -t -m "//children/clip"\
-v "name" -o "," \
-v "out - in" -o "," -v "in" -o "," -v "out" -o ","\
-v "media/video/track/clipitem/start" -o "," \
-v "media/video/track/clipitem/end" -o ","\
-v "media/video/track/clipitem/file/timecode/frame" -o ","\
-v "media/video/track/clipitem/file/name" -o ","\
-v "media/video/track/clipitem/file/timecode/string" -o ","\
-v "media/video/track/clipitem/file/timecode/reel/name"\
-n 20100123_vfx_received.xml | tee 20100123_vfx_received.csv

52A-2_01_VFX_v1,178,0,178,0,178,,52A-2_01_VFX_v1.mov,,
52A-2_02_VFX_v1,141,0,141,0,141,,52A-2_02_VFX_v1.mov,,
52B-2_01_VFX_v1,152,0,152,0,152,,52B-2_01_VFX_v1.mov,,
53-3A_01_VFX_v4,307,0,307,0,307,,53-3A_01_VFX_v4.mov,,
54-3A_01_VFX_v1,188,0,188,0,188,,54-3A_01_VFX_v1.mov,,
C100_C016_0920LS_03_VFX_v1,102,0,102,0,102,,C100_C016_0920LS_03_VFX_v1.mov,,
C102_C011_0903RU_03_VFX_v1,79,0,79,0,79,,C102_C011_0903RU_03_VFX_v1.mov,,
C102_C011_0903RU_04_VFX_v4,256,0,256,0,256,,C102_C011_0903RU_04_VFX_v4.mov,,
C102_C011_0903RU_05_VFX_v2,200,0,200,0,200,,C102_C011_0903RU_05_VFX_v2.mov,,
C102_C011_0903RU_06_VFX_v2,147,0,147,0,147,,C102_C011_0903RU_06_VFX_v2.mov,,

Assistant-2:20100125 CAB$ cd thumbs/
Assistant-2:thumbs CAB$ tcsh
[Assistant-2:additions/20100125/thumbs] CAB% foreach foo (*.png)
foreach? convert -geometry 330x800 "$foo" "$foo:r.jpg"
foreach? rm "$foo"
foreach? end
[Assistant-2:additions/20100125/thumbs] CAB%

The starting point is a bin of clips in an FCP project. I’ve exported that bin as FCP XML, and have also batch exported the clips inside it as stills (to PNG, the default). The commands above are the meat of the process. Then the comma-separated-value list of clips I generate with the xmlstarlet command gets imported into an openoffice (or Excel) spreadsheet (a step I’ve ommitted here), and is massaged into a csv format for import into a Filemaker Pro database of VFX clips. Finally I import the thumbnails for each clip into the database. Fun stuff, pretty much.

The theme of Tampa Intl Airport: Beware Falling Artwork

January 7th, 2010
I didn’t see any artwork fall on anyone at the Tampa International Airport today, but the art sure looked ominous.

See the full gallery on posterous

Posted via email from Zach’s posterous


Bad Behavior has blocked 303 access attempts in the last 7 days.