Tumgik
wekwerth · 12 years
Text
Sending Chargify Events to Campfire with IronWorker
At Librato, we rely heavily on Campfire and it's pretty tricked out. We have a bot that can do anything from ship code to produce images of cute kittens. All our infrastructure and code is instrumented to send alerts to the Campfire "Ops" room. What I felt was missing was Campfire notifications of Chargify events, for instance when a user upgrades or a credit card transaction fails. 
I checked the Chargify API docs and found the documentation on webhooks. It sounded clear enough. Campfire's API also seemed fairly straightforward. That said, I had no idea how to tie the two together.
Then I stumbled upon Travis' (iron.io) blogpost "One webhook to rule them all". We have been working with Travis and iron.io for a while and I knew that IronWorker and IronMQ were cool products but I never thought of IronWorker in the context of bridging web applications. An ingenious thought really - an intermediary service that enables you to take the output of any webhook and do whatever you please with it. 
That's if you know how to code.
Well.. I know enough to be dangerous so I thought I'd give it a try. Turns out it wasn't that hard. Not only was most of the code written, I also had Travis on IM to do the real work. 
Setting up IronWorker
First thing I needed was an iron.io account. It's free to sign up. 
The way this works is: you write the worker code then upload it to iron.io with a ruby app they provide. To get this all running I needed the IronWorker gem. 
sudo gem install iron_worker_ng
Then I cloned the IronWorker examples - I use Github's Mac client so it was cloned at a click of a button in Github. The repo is here:
https://github.com/iron-io/iron_worker_examples
Travis had already copied the content of the github_to_hipchat_webhook_worker folder (in the ruby_ng folder) into chargify_to_campfire_webhook_worker so that we had something to start with. All I had to do was edit the _config.yml file (it's under /ruby) and add my iron.io credentials near the top (ignore the rest).
I edited the chargify_to_campfire_webhook_worker.rb content slightly to change the output format. 
The rest is explained in the README.md:
cd into the chargify_to_campfire_webhook_worker folder and
Copy or rename the webhook_config_example.yml to webhook_config.yml and edit it to set the Campfire credentials.
Upload the worker to iron.io by running `upload.rb` in the directory and follow the instruction it prints. Or translated: copy the URL it spits out at the end and paste it into the Chargify webhook URL form which is under settings/webhooks when logged in to Chargify.
To test the configuration (save the webhook settings first) I used the "Send a Test Webhook" button. You can check the worker status and logs in IronWorker at http://hud.iron.io to ensure it ran successfully.
More importantly - you can see the results in the Campfire room!
Any time I changed anything, I just went through the same process: upload, test, check. Really awesome!
0 notes
wekwerth · 12 years
Photo
Tumblr media
In SSD heaven with my MacBook Pro
SSD sweetness
After varios failed attempts I am finally there: no spinning drives in my MacBook. 
It was a painful and admittedly more expensive endeavour than budgeted but the result is exquisite: Extremely fast boot up, apps load a lot faster, my MacBook is quieter, and my fear that my HD would die on me any day now is assuaged.
I decided to go with OWC 240GB Mercury Electra™ 3G SSD 2.5" Serial-ATA 9.5mm Solid State Drive which I acquired for $350 and I just saw on their web site that they are now selling for $299 - how unfortunate for me... anyway... I went with that drive as it avoids the whole problem of TRIM support. 
I spent some time researching TRIM on Mac OS X and found some cunning ways to enable TRIM support for cheaper drives via the command line but felt it was more prudent to go with a drive that doesn't need it. That way I didn't have to be concerned about OS upgrades that could potentially reverse my TRIM settings. 
0 notes
wekwerth · 12 years
Text
Split System and Data drives.. it SHOULD work..
.. but apparently not for me. 
The principle is symple: a fast SSD for the system and applications, a slower rotating drive for the home directory and all my data.
I used the OWC data doubler kit to replace the original hard-drive with a 60GB SSD and the optical drive with a 320GB HD. To set the drives up I used Carbon Copy Cloner to pull the data from the original drive, changed the home directory location in my system preferences and <presto> all done.
It actually worked. The machine booted a lot faster (A LOT), apps load a lot (A LOT) faster. But every now and then the system would beachball me... to a point where I reverted back to the original drive (yes, the one that is making noises and I am fearing will crash on me). 
As I am curious by nature and persistent (read: he never learns.. sigh..) I gave it another go. This time I did a clean Lion install on the SSD and copied the apps I needed. Yes, it's cleaner but also a pain in the butt because every app will ask you for license codes, registration information, passwords - in short - things I didn't think I would ever need again. 
That worked well for a while. Until I had to use Terminal for some things. My .bashrc threw some errors and as I am curious by nature and persistent I tried to fix them.. and no, the errors didn't actually stop me from doing what I needed to do.
Part of the problem was that a script didn't like the fact that my home directory was on "Macintosh HD" with a space in it. So rather than changing the script, I changed the HD name to one without spaces. It fixed the .bashrc errors. And brought back the beachballing. 
So I'm back to the original hard drive again. Have I given up? No. I am curious and persistent. I have ordered a 240GB SSD and plan on testing a new strategy: 
Clean Lion install on the new SSD and then use the Migration Assitant to pull everything over. Why? I realized that my current configuration doesn't actually have a recovery partition. The only way to get that is to do a clean Lion install. So I figured I might as well go down the path Apple would like me to and use their tools.. We will see. 
0 notes
wekwerth · 13 years
Text
Fresh install is always a scary move
I'm at the Apple store hoping a genius can tell me why my Mac keeps beach-balling me, spontaneously rebooting or simply freezing.
Maybe I was in denial but the recommendation was the obvious one: clean install of Lion.
My first thought: all my settings and configurations will be gone. 2nd thought: did I save all my license keys?
I guess I will see - I told them to go ahead. It was just too frustrating to work with a slow machine and this is a necessary step before digging into hardware triage.
Yikes.
0 notes
wekwerth · 13 years
Text
Just learned a new technical term: "beachballing"
Turns out that when my Mac freezes, taunting me with that spinning rainbow wheel as if to say "I work, see? I can make the wheel spin. But you can't do ANYTHING!".. well.. I learned from OWC tech support yesterday that that is called beachballing.
That's my new favorite term.
Update: just found this.. how fitting: http://xkcd.com/961/
0 notes
wekwerth · 13 years
Text
My attempt to restore a data (non system) disk from Time Machine
The original hard drive in my MacBook Pro was starting to make some weird noises so  I decided to replace it. I have all my data backed up on Time Machine so I thought I would just pop the drive in, boot in recovery mode and restore the new drive from Time Machine. 
It wasn't quite that simple. After formatting the disk I went to the "restore from Time Machine" menu but it only lets you restore system drives - no sign of my data drive. 
After some reasearch on the Interweb I booted in normal mode, started Time Machine and opened the new drive in my Finder. I went back in time to the last good back up and selected everything to restore. 
A few hours later Time Machine was done but the dock and desktop picture weren't restored. I restarted the computer to no avail. That didn't give me a lot of confidence that all the other data had been transferred correctly. I have to add here that I had moved my home directory to the data. In hindsight that may have been part of the problem.  
I ended up taking apart an external drive I have, installing my old hard drive in it and connecting it to my MacBook via USB. I moved the home directory to the boot (SSD) drive, wiped my new drive again for safety sake, and then used Carbon Copy Cloner to transfer all the data from the old drive to the new one. 
Worked like a charm. On the next reboot my MacBook looked as if I had never changed anything.
Lessons learned: the next time I need to restore a data drive I will move the home directory first and then do a full restore from the last full backup.
0 notes
wekwerth · 13 years
Text
Did the SSD install mess up my MacBook Pro?
Replacing the optical drive with an SSD had a great effect - apps start A LOT faster than before and I can actually use VMWare Fusion now without having to go out and get several coffees while it loads.
I use a 60gig SSD for system and apps and have left all my data on the 250gig harddrive.
The first issue I faced was that Spotlight couldn't deal with the SSD and the mds process ran out of control. Turning off indexing on the SSD didn't fully solve the problem though. I still get occasional moments where my MacBook Pro just sits and spins the rainbow wheel of death.. for a few minutes (maybe just one).. and then everything just resumes. 
I have no idea what causes it. I think it only happens after I have put the MacBook to sleep and resumed it a few times. Today I noticed that backblaze's bztransmit process was using tons of CPU and memory but I don't think that's what causes the momentary freeze. 
I'd love to get some ideas on how I can hone in on the cause of the problem.
0 notes
wekwerth · 13 years
Text
WYSIWYG A/B testing for landing pages
I tried out two services that claim to make A/B testing really easy:
Optimizely and Visual Website Optimizer (VWO)
My objective: create different landing pages for an ad and test their effectiveness.
Both apps provide a WYSIWYG interface to edit text, images and styles of existing web pages - it looks like magic really. Save the changes, add some java script and you can start your A/B test. Easy, right?
I started with VWO - it has a great intro video and intuitive UI. I started editing a page - first I replaced an image (no problem at all) then I wanted to edit the text... this is where things fell apart. The editor didn't work well on my site that has a dark background with white or gray text. When I clicked on "preview" all my text got duplicated. I tried this a couple of times (starting from scratch) then gave up.
Then I tried Optimizely. It seemed to work better with my dark background. Editing in HTML didn't change colors, it just did what it was supposed to. Changing the image was a breeze.
There was one thing I couldn't figure out in either of the apps: how to remove the underline of a link. I tried editing the source and adding <span style="text-decoration:none;"> but neither app reacted to that. I managed to change the link color and style but the line prevails.
Anyway, back to Optimizely. I finished the design of my new page variant and saved it. So far so good. Next step - start the test. This is where Optimizely falls short - you can't actually test the service without signing up with a credit card. That's a no-no for me. The objecitve isn't to just create a page variant, it's actually more about the A/B testing. I don't like adding a credit card even if there's a 30 day trial.
So back to VWO. I worked around the text duplicating issue by editing the entire text in html only. I managed to save the edits and am not required to add a credit card until I actually do some real A/B testing. All I need to do now is add the code snippet. I was happy to see that they have an asynchronous option too (although still in beta). 
I need to wait until the code is pushed before I can report more. 
UPDATE:  Turns out the asynchronous VWO javascript screwed up how some of my pages worked so I am now going to limit the code to my landing pages. 
0 notes
wekwerth · 13 years
Text
mds process out of control
figured out that the mds process spinning out of control has to do with my new SSD..  excluded it from spotlight and it seems better now
0 notes
wekwerth · 13 years
Text
Day to Day with Google ChromeOS and the CR-48 Netbook
When evaluating the Chrome Netbook you have to take two things into consideration - the OS is an integral part of the user experience but if the hardware isn't good, it reflects on the overall satisfaction.
The Netbook hardware could be better.
When I open the lid, the OS boots up in seconds as advertised. That said, the network takes a lot longer to connect which renders the Netbook useless. The real boot time should be measured in time to usability, not time to seeing flashy lights.
The screen also flickers precariously when just opened - it's not a big deal but it doesn't instill confidence either.
Recenty I had to write up a meeting report and decided to use the Chrome Netbook. I love Google Docs and have no problem using it as a word processor.
When writing my report, on numerous occasions the mouse would jump to what seemed a random place in the page. I probably touched the touch-pad with the palm of my hand or something. That's not necessarily an excuse though - it never happens with my MacBook. I don't have to pay attention to where I am writing text on my MacBook - it writes where I expect it to write. With the Netbook I have to pay attention.
The search button started to drive me nuts. Google decided to replace the CAPS lock with a search button that opens a new tab. I didn't realize how deeply ingrained the urge was to hit the CAPS lock button... I have changed my settings so that it acts like CAPS lock again.
On the upside - I figured out some neat tricks to save web sites to pdf and then to Google docs and to capture screen images and copy and paste them into an email. The battery life is really great - I took the Netbook to work one day and deliberately left the power supply at home - not a problem.
Could I use it as a work computer? I think the answer would have to be not yet. Why? Because I am confident that Google docs or Zoho will evolve to provide more advanced features that will wean me from Excel, that Avery will add features that allow me to edit or create images without the need of an app, etc. etc. In fact it's more than that - I believe that SaaS apps will provide features that boxed software will never be able to provide.
0 notes
wekwerth · 13 years
Photo
Tumblr media
Wow - I have a Chrome OS Netbook... Yay ..?
To my utter surprise I came home yesterday and found a big box in my front hall. I had totally forgotten that I had volunteered to test the Chrome OS Netbook and didn't really believe that I would actually get one. And there it was.
Sleek matte black design, 12" screen, full size keyboard. Setting it up took minutes - all I needed was my GMail account and Google pulled all my info (bookmarks, etc.) from... hey, how did they do that? I didn't think I had sharing or sync enabled... hmmm
Anyway. So now I have a device that is basically an Internet terminal. Being limited to just a browser spurs creativity - you have to think out of the box to get simple things done.
First of all, you need to make sure you are always on a network - the Netbook includes Wifi and 100MB of free data/month or unlimited data @ $9.99/mo with Verizon - not that bad really (100MB doesn't get you very far).
I like to keep receipts so after going through the very simple Verizon set up process I thought I would keep a copy of the confirmation page. So how do I do that on Chrome OS? You can't really print - unless there's a "Windows PC available" - seriously??? How about just allowing me to print to pdf? Couldn't find that option.
This is going to be interesting. My setup is a little convoluted in the Google sense - aside from my GMail account I have several Google Apps accounts and keeping them separate is difficult on a normal PC (I use different browsers).
After the initial excitement of getting a shiny (or rather matte) new tech toy I just have to take a step back and ask myself some more existential questions.. such as: Why is Google pushing Chrome OS if they have Android?
Update: My buddy German pointed me to this great plugin: Send to Google Docs. Promises to do exactly what I was looking for before.
0 notes
wekwerth · 15 years
Photo
Tumblr media
Faxes ain't goin' nowhere... But it is time to upgrade
Even technophiles and geeks will have to admit that faxing is not dead - in fact it looks as if it will never die. As strange as it may seem to generation X (or is it Y or Z now?), there is still an established hard core user base that will just not let go.
So one day even you, the technologically super-advanced will be faced with the question: "So what's your fax number?"
Luckily, there are solutions for that, and they are pretty much all web based. eFax was probably one of the first out there. But when they cancelled their free service YEARS ago, they lost me as a customer. Not because I didn't like their service but because I didn't like their business model.
A lot of the software-as-a-service companies forget that there are users like me, who see value in their offering but probably use it very rarely. I'm not going to pay $20 a month just so that I can send or receive a fax 5 times a year.
Enter Trustfax - I now pay $30 per year which covers more faxes than I will ever need (sending and receiving) and if I ever have to send more, I can top up my account.
Here's what I love about it: I can send faxes directly from the web interface or I can send an email with an attachment, like a pdf, and Trustfax takes care of well.. the faxing. I can check the log on my web dashboard and I get an email receipt. 
As we are all riding the green wave: aside from saving paper because I now receive faxes in my email inbox, I can also ditch my fax machine, thereby saving one more device that needs ink cartridges that are (obviously) not the same as my other printers...
There is one enhancement I would like to see: they should add the sound of a dialing modem.. just for old times sake!
In case you wondered: this is NOT a sponsored post. I just like writing about services or companies that I find useful. Sometimes it is not product features that convince me but the business model. Listen up all you SaaS companies out there.
0 notes
wekwerth · 15 years
Text
A Fresh Look at Personal Finance Software: Mint.com
In March I blogged about my quest to find an alternative to Quicken in the post "Can I finally kick out Quicken?". At the time I compared Quicken to Moneydance - a cheaper and yet great alternative for personal finance management.
And then it struck me - I am SO OLD SCHOOL! What am I doing using traditional software if
there is a beautiful Software-as-a-Service solution out there called Mint.com? If you can get over the fear of having all your financial information floating in cyberspace, this is absolutely the way to go.Why? Because you don' t have to remember to log in to every account you own every time - Mint does it for you. I set up my Mint with 7 accounts - savings, investment, credit cards, you name it, Mint can take it.
What I love about it is that I can just log in at any moment and get a snapshot of my financial situation. No fussing around required - it just works.
What I don't like that much is the limited report capabilities. I can see a nice pie chart of what I spent in any given month but I miss my column graphs that show me how little cash flows in opposed to the huge amounts that flow out on a month by month basis. That said, who am I to complain about a product that is completely free? How do they survive you may ask? According to a forum post: "By showing our customers special offers that can save them money. When users accept an offer from the "Offers" page, Mint makes money from the referral."
Perhaps this is an opportunity for Mint to make some extra cash: a "pro" version that speaks to graph and report fanatics like me. I would definitely spend $20/year on a service like that. I just read that Mint may have another business model in mind - detecting spending trends. Read more in the Techcrunch post titled "Mint Joins The World Economic Forum, Knows That You've Cut Back On Starbucks"
It is no surprise that Quicken followed suit rapidly with an also free offering
named Quicken Online. I decided to compare both by tracking my small business financials. Turns out that Quicken shows incredible consistency in providing buggy software. This time it was a simple, two account setup - Bank of America and Paypal. Transactions that Mint showed (and that actually existed) did not appear in Quicken Online. One advantage that Quicken could have leveraged - integration with other Intuit products - was sorely ignored. One can only download transactions in csv format. I was hoping that I could export all my transactions and import them into my quicken app to do some reporting. No such luck.
Oh well... Nice try Intuit but Mint is the clear winner.
0 notes
wekwerth · 15 years
Text
A Virtualization Convert - Parallels vs VMware Fusion
I met a guy at a party not long ago who works for VMware. We had a lively discussion as I have
been a Parallels user for over a year now and just upgraded to their 4.0 version.
This guy did not let loose and convinced me to give VMware's competitive product "Fusion" another try. I have to add that I actually tried the two about a year ago. Although Fusion seemed faster (which my ultrageek CTO at the time confirmed through in-depth tests) it lacked the Mac-ish user friendliness, so I stuck with Parallels.
Inspired by the party-guy's passion I downloaded VMware Fusion 2.0.1 and contemplated the consequences of messing with my tried and trusted setup.
After making sure I had enough hard drive space and convincing myself I couldn't really do too much damage as I was protected by fantastic Time Machine back up technology, I installed
Fusion. Here's where I hit my first snag: the new Parallels format is not compatible with VMware's import tool. Not a problem of course: all I had to do was retrieve the old format from Time Machine. With hard disk space getting thin I managed to retrieve the image and convert it to the Fusion format with the free tools provided by VMware.
The transition was remarkably uneventful... really, really smooth. When I launched Fusion I found a clean and easy to use interface - a big improvement to when I first tested it. After configuring all the options I started the VM for the first time. It went through automatic configuration routines, installed the VMware tools, similar to what happens with Parallels and after another reboot I was up and running.
Virtual Machines tend to hog a lot of processor and memory resources. Every time I launched Parallels, working on Mac apps turned into a pain (although watching a colorful ball turn can be so much fun...). I won't say it is blazing fast with Fusion but it does seem that a) Windows is running faster and b) Mac apps are still performant enough to not drive me nuts.
All in all, I must say: I'm a convert. I'm sticking to VMware Fusion.
0 notes
wekwerth · 16 years
Text
Keeping my Mac and Google in Sync - Spanning Sync
Undoubtedly synchronization is hard. That's probably why so many companies get it wrong. I love Macs but iSync is not one of the apps that deserves praise.
My objective was simple - ensure that all the relevant data on my Mac is backed up on the web and with relevant data I mean contacts, calendar, email and if possible docs as well but that's a 2nd in priority. I went through multiple hand-held devices (Nokia, Sony-Ericsson, Palm, Blackberry, etc.) that synchronized OK with iSync but I caught myself holding my breath every time I would initiate a sync.
I also tried .mac (before it turned into me.com) to see if Apple could hold their promise of a happy synchronized world. They couldn't - not back then. I gave up on .mac but decided to give it another try when it morphed into MobileMe. The promise of "Exchange for the common person" was too much of a draw. I must say I am in awe.
It works... Apple certainly got their act together on this one. I can actually sync contacts and calendar items over the air with my iPhone, MacBook and me.com account. I LOVE it.
That said
- I'm still locked into my pretty Apple world. I still need integration with Google. I use GMail a lot, privately and at work, so integration with Google is important. Specifically, I need my Google work calendar to sync with my Mac - I'm not too worried about contacts right now and email integration works fine.
That's where Spanning Sync comes in. They really know their stuff. Setting up multiple calendars is a breeze (I have 4 for some reason...) and I have had none of the common synchronization problems such as duplicate entries, entries disappearing and things like that.
I have not installed the beta of 2.0 that promises synchronization of contacts as well - mainly because I wanted to sort out my MobileMe setup first. I think I will wait until it is officially released for a change. I certainly will upgrade though - I like not having to manage multiple contact databases across disparate systems. My initial focus was on the calendar though so now I have a seamless sync with Google via Spanning Sync and as long as one of my Macs is switched on (laptop or desktop) also a seamless sync across my many Apple gadgets with MobileMe. It would be great to have a server version of Spanning Sync that takes care of synchronizing Google and MobileMe in the cloud - maybe I should suggest it to them...
If you want to try it out click on the link below - that way you can save some money if you decide to buy it.
0 notes
wekwerth · 16 years
Text
Stop Motion Video on a Mac - Take II
In my last post I described how I set up a stop-motion video "surveillance" system - the objective is to document the construction of new school buildings.
Overall it has gone pretty well so far. You can see the results on the Chabot Elementary contstruction update page. Here's a quick summary of experiences:
Imagecaster is doing a great job managing the cameras. It would be great if I could not only determine the time of day it is active but also the day of the week. Right now we have to manually delete all the pictures taken over the week-end where there is no activity. There also seems to be a minor but - I am managing two cameras on one computer (two instances of ImageCaster) and sometimes ImageCaster crosses over images from one camera into the other camera's folder. Again - something a manual edit can take care of quickly.
Logmein has been a god sent as I had to log in remotely many times to fix or adjust things. I even got technical support despite using the free version.
I needed to adjust the parameters for Quicktime a few times to adjust the resolution of the movies. After a month, the movies were approaching 100MB in size. After altering some parameters I managed to reduce the size to under 30MB with acceptable quality.
Automator rocks and so does AppleScript - this is coming from someone who last programmed in 1989 (in Assembler!). I'll include some code samples at the end of the post.
There are two other technologies I haven't mentioned that I needed to make this happen:
Ethernet over power lines
FTP client
Ethernet over Power Lines One of the rooms that hosts a computer and two cameras did not have Internet access. I tried Wifi but the room was out of reach. The solution was Ethernet over power. After a bit of resea
rch I found the Panasonic HD-PLC Ethernet Adapter Starter Pack. I had read about Ethernet over power lines before but never tried it. I don't generally read manuals so I just plugged the two devices in and it worked! I had Intenet access instantly. This was a really simple solution and cost around $80.
FTP Client After I had managed to pull together all the technology to create the images and the movies, I still needed software to upload the movies to the web server. A pre-requisite here was the ability to automate the
process with scripts. For this task I used Transmit3 by Panic.com. Transmit has great scripting capabilities and also prewritten scripts - I used one to back up all the individual photos onto the server. I asked for free licenses for my non-profit project a
nd was granted one - thanks to the people at Panic!
One FTP client that I couldn't get to start on 10.4 but works fine on 10.5 is Cyerduck. It is also scriptable and seems very full featured but as I couldn't get it to run on OS 10.4 I used Transmit.
The Code For those who are interested: here are the scripts I used within Automator. The first one is to convert images into a stop-motion movie:
-- AppleScript to get Quicktime to create the stop motion movie-- This is to avoid that the script times out:with timeout of 10000 seconds -- Quicktime actions: tell application "QuickTime Player" activate -- point quicktime to the first file and define the frames per second (fps) open image sequence "Macintosh HD:Users:UserName:Pictures:picture1.jpg" frames per second 6 -- export movie in a format more suitable for the web. I played around with Quicktime and saved the configuration settings in a file export front document to "Macintosh HD:Users:UserName:Movies:movie1.mov" as QuickTime movie using settings "Macintosh HD:Users:UserName:Movies:ExportSettings" replacing yes -- instead of a file you can also type e.g.: using settings preset "Lan/Intranet" close front document saving no end tellend timeouttell application "QuickTime Player" to quit
Here's the script that uploads the video to the web server:
-- Using Transmit from Panic.com to upload movie files to the web server-- This is to avoid that the script times out:with timeout of 2000 seconds -- Transmit actions: tell application "Transmit" -- Prevent interactive alerts from popping up during script execution set SuppressAppleScriptAlerts to true -- Create a new session window for the script set theDoc to (make new document at end) -- send commands to the frontmost document window tell current session of theDoc -- Connect to password protected server connect to "mydomain.org" as user "login" with password "password" with connection type FTP using port 21 with initial path "/media" -- Set your stuff listing to "~/Movies" folder and upload .mov file set your stuff to "~/Movies" upload item "movie1.mov" with resume mode replace end tell end tellend timeouttell application "Transmit" to quit
Yes, it's that simple!
0 notes
wekwerth · 16 years
Text
A WebCam, an iBook and Stop Motion Video
I volunteered for a project at my kids elementary school: record the historic remodeling of the school with web cams.
The idea is to end up with a stop motion video that compresses the construction work of many months into a few minutes of video.
It goes without saying that the budget needs to be kept at a minimum so I decided to use as much equipment as possible from the school inventory and beg for the rest.
The school owns many iBooks so I started with that as a basis. Given their age, they still run on Mac OS 10.4 which restricts the other parameters: the software and the cameras to use.
After a bit of research I learned that there are some versions of Logitech webcams that plug and play with Mac - in fact it was astonishing to see that there are hardly any 3rd party cameras that are good quality iSight replacements.
The camera I decided on was the QuickCam® Pro for Notebooks, listed at USD99.99. I checked with Logitech and after a little trouble getting hold of the right person, found a very generous soul that sponsored all the cameras I needed!
On the software front I tried multiple applications. The one I liked most was ImageCaster by Econ Technologies. It works great on the Mac and has all the features I needed to record images at pre-set intervals. It can even create a web page for you.
Econ Technologies also were very generous and provided the licenses I need for the school project for free.
ImageCaster manages taking all the individual images and dumping them in a folder, I was still stuck with how to convert them all into a movie. I tried iLife applications - loading the pictures into iPhoto and then using iMovie to grab them and make them into a movie. It worked fine but I wanted to automate the process and it just didn't seem elegant enough.
Then I learned that QuickTime Pro had a very simple feature called "Open an Image Sequence" - Just what I needed. Not only is it simple - all you do is point to the first picture of a series - you can also set the frame rate (how many frames, or in this case pictures, per second). I also learned that Quicktime is scriptable! Not that I knew how to script but I sensed it would come in handy.
Putting it all together So I had all the pieces, now I needed them all to work in harmony. Setting up ImageCaster was a breeze. I could define what folder I wanted the images to be loaded into. I decided after some tests that I would go with one picture every 5 minutes. Then the hard part started - automating the process of converting them to a movie and loading the movie to a web server.
I decided to play around with Automator and Script Editor. Automator is basically a
graphically oriented way of programming and very well integrated with Mac applications. It also allows you to include custom scripts - something I needed to control Quicktime Pro. After some initial problems due to my lack of programing skills it actually turned out to be really easy (thanks to some big help from capitalj on the macosxhints forum).
The script literally only consists of opening QuickTime, pointing it to the right start file and then closing it... it is that easy. Automator made the rest really simple - copying files from one location to the other for example. Best of all, it allows you to save the script as an iCal plugin which in turn provides an easy way to schedule the events in the Apple calendar.
So my test setup was complete: - ImageCaster records images from the Logitech camera every 5 minutes into a folder on the local hard drive of an iBook - An iCal event triggers a workflow (created with Automator and Script Editor) twice a day that has QuickTime create a 12 fps (frames per second) movie out of all the files in the folder, then grabs the movie file and overwrites the moive file on the web server.
That's how it works in my test setup. I'm keeping my fingers crossed that it works as smoothly in the real life implementation.
0 notes