Roll your own dropbox

So I’ve had occasion recently to send out some slightly large .zip files to friends. The problem with doing this is, often the attachments end up too large for some mail server in the mix. The typical way these days around the problem is to use some sort of dropbox web application. Usually you upload your file to the dropbox site, and are presented with a link that you can email to your friend, which then allows them to download the file. Check out filedropper.com for a simple example of such an application.

Of course, I was bored, and don’t like the extra steps of having to archive my files to a zip, browse to a website, click upload, find the file I want, upload it, and delete the archive copy. Granted, there are some quicker solutions out there, but again, I was bored.

So I came up with a tiny solution that costs a few pennies and was fun. All you need is the OS X Automator program, a programming language of your choice (I picked ruby) and a module for interfacing with Amazon’s S3 service.

The procedure is simple. If I have time, and clean up the code enough, I might post it here. But here’s the basic workflow steps:

  1. Make an Automator workflow that takes a selected set of files (”Get Selected Items”) and creates an archive (”Create Archive”) out of them
  2. Pass that archive into a script (”Run Shell Script”) to upload the file to S3. Generate a filename for S3 by hashing some timestamp info, the filename, etc.
  3. Store the file on S3, and then output the full S3 url for capture by Automator.
  4. Use the Automator “New Mail Message” action, passing in the url as the content of the message
  5. Plan on manually addressing the message, filling out the body if you like.
  6. Now here’s what makes it convenient: save the workflow as an application. Drag the saved application to the Dock.

Now I have a droplet on the dock which I can drag any number of selected files to, which will upload to S3, and generate a new mail message with the download link in the message body.

I still need a scheduled job that cleans out old files from the bucket. But the process is fairly easy, works great, and was fun to come up with. Now I admit, for a small solution for use with friends, there’s really no reason to pick Amazon. I could probably just as easily upload to my website, and link from there. But hey, that’s not as “sexy”, right?

Tags: , , ,

My eye

DSC00406.JPG
So this is a bit of old news. I was going back through the files on my camera I haven’t pulled off in a few months, and found some pics of my eye when it got infected a couple months back. I don’t know why I’d think to share this, but oh well. Anyway, it swelled way up, these don’t even represent the worst of it. I ended up having to see an opthamologist to have the infected tissue cut out. He had to go in through the back of the eyelid. It was far worse to anticipate than the surgery was itself. So, if you ever wonder why I’ve got a little red spot on my right lower lid, it’s the remnants of this. It’s still got a little ways to go before it totally clears up.

Tags: ,

Keeping support focused

I was just browsing the automattic.com How We Work page and ran across this tidbit:

Everyone who joins, regardless of position, does support for their first three weeks.

Now, I’d probably kinda-hate doing that, but it seems like a possibly great idea for keeping good customer service at the heart of a company. I think it would also be tough for bigger, more traditional companies to pull off, but it’s an interesting concept still.

Tags: ,

What I’m up to

Been very busy with work lately. Here’s some things I’m up to.

  • Reading Design Patterns in Ruby by Russ Olsen
  • Settling into the Systems Engineering groups at work. I transferred from IT to Engineering a few months back, it’s shaping up well for me at this point.
  • Playing with the new MacBook Pro
  • Messing around on Twitter and Pownce
  • Posting some moronic photos to Flickr
  • Adding Gravatar support to my comments.
  • Trying to resist buying one of these. Thanks a lot, Brendan.
  • Toying with the Pownce API
  • And much , much more! Heh.

Getting better

I went back to jiu-jitsu class last night, having not gone in over a week or so due to the business trip. I thought I would just get mangled. Well, the second guy up for me, my friend Diego, did pretty much toy with me. He was also helpful and gave me tips on some easily correctible errors I was making. The real cool part of the night though was my first partner, Dave. Now, Dave and I are about as evenly matched as I can find in the classes. This is not to say we are actually evenly matched, it’s just, there’s not that many new people right now. So we rolled first, and for the first time, I pretty much maintained control the entire time. By maintained control, I mean, I either had or was transitioning to the dominant position most the time. It felt great! I was doing so well, he managed to compliment me during practice even, while we were going. Hopefully tonight will be fun as well.

Technorati Tags:

Mental Magic

Last night a few co-workers and I hopped over to the Pleasanton Regal theater to catch a flick. We saw “The Illusionist“, which fortunately, turned out to be pretty good. Good, but not great. I say “fortunately” because I managed to confuse the film with “The Prestige“, which though I’m sure vaguely similar in content, is in fact, an entirely different film. I realized this as, during the movie trailers, a promo for the real “Prestige” was shown. So for the next five minutes, I sat in flickering darkness, furiously scanning my brain to try and remember what movie we were indeed seeing. It wasn’t until Edward Nortan’s name came up in the opening credits that I figured it out. It’s a pretty funny experience sitting in the theater thinking “um, what movie am I about to see?”

And hopefully “The Prestige” will be better.