My photography workflow
August 16th, 2011

In light of my recent brush with total data loss, I took a good hard look at my photography workflow to try and make it more efficient (and safer). The workflow I had in place ran something along the lines of:

1. Shoot images
2. Get home and import images to laptop
3. Check images have imported
4. Put a copy of images elsewhere
5. Wipe camera memory card (As needed)
6. Select and work on images (Which can take anything from a night to months depending on the project)
7. Once happy with images, import them to lightroom catalogue which lives on the drobo
8. Periodically delete images from laptop
9. Occasionally run out an up to date copy of the lightroom catalogue to an external drive

Here’s a very crude diagram representing the steps. There’s probably a better way of showing this, and there’s certainly a better looking way, but it’s late and I am tried. Areas in green represent times when the images are ‘safely’ being stored somewhere. When these green zones end it is representative of either deletion or hardware failure, with the time the media may exist on that medium quantified above:

There are a couple of problems with this workflow:

There’s very little automation
People are forgetful/lazy and I am no exception. I often forgot or skipped step 4 (A backup step), particularly for small projects. This is particularly dangerous when you see what step 5 consists of (Wiping the memory card). Once those images are gone from the memory card they only exist on my laptop. If it were to get lost, stolen, or broken they would be gone for good.

There’s not enough redundancy
As stated above, if I skip or forget step 4, once the card is wiped, the next chance my photos have a chance of being in more than one place is once they are copied to my drobo, and even that duplication will only last for as long as I leave them on my laptop. The startling lack of redundancy in the entire workflow is a disaster waiting to happen.

There’s not enough urgency
Inbetween shooting the images and ‘securing’ the images on the RAID array many months can pass. The backing up process (not that it is much of a backing up process) comes at the end of the chain when it should start as soon as possible. My data shouldn’t be exposed to risk for as long as it is.

Part of the reason for this is not just to do with me being lazy, but with my reluctance to engage with my image repository, with good reason… My Lightroom catalogue is gargantuan. There are numerous threads and posts on the internet discussing how big a lightroom catalogue can get, with it not being uncommon to have them reach the hundreds of thousands of images. Mine is around 30,000 images and it is feeling sluggish, particularly when accumulating metadata for me to search on. A few months ago I tried to operate on a per project basis, generating a new catalogue for each project/client, but this fast became messy, especially when trying to pull together examples of my work across a range of projects. Barbarically, this 30,000 total includes dud images that are of no use or value.

With this workflow rethink I set out to address the following problems:
-The lack of redundancy and the high level of risk my photos are exposed to.
-The archiving/distribution of my images in Lightroom to improve accessibility.
-The quality of the images that are ultimately stored, reducing duds.

So with that in mind, here’s the rethought workflow:
1. Shoot images
2. If particularly far from home, copy images to iPad
3. Get home and import images to laptop
4. Check images have imported
5. Backup to Livedrive of laptop automatically starts
6. Backup to time machine drive automatically starts
7. Wipe camera memory card (As needed)
8. Wipe iPad (If applicable/as needed)
9. Select and work on images (Still anything from hours to months)
10. Once happy with images, import them to appropriate lightroom catalogue which lives on the drobo
11. Backup to Livedrive of drobo automatically starts
12. Periodically delete images from laptop

The difference between the two diagrams is very noticeable. There’s a lot more green, which means I’m going to sleep easier at night. The number of layers means there’s a lot more time between things going wrong in which the problem can be fixed. There’s also been a shift in where the backing up process starts. The new flow no longer waits until work on a project is complete to make the data safe, instead securing offsite both the raw files and the processed ones. Now, when my drobo fails (for real this time), I should have time to source a replacement and grab my backup from livedrive.

There are two additional pieces of hardware for this rethink, the iPad and the time machine drive. The iPad is particularly redundant (meant in the nicest possible way) as it only serves to duplicate data for a few hours, or at most, days.

The iPad camera connection kit costs £25 and let’s you plug an SD card straight in. For the D90 at least the iPad will store RAW files (but display/utilise JPGs for apps/email). Deleting the images is a bit more cumbersome, as irritatingly, there is no ‘delete all’ option in the native iOS UI. Instead you have to mark the images and then delete them. I have found that tapping and holding an image, then dragging a finger over the rest in a zig zag pattern is a relatively quick way of selecting the images in bulk. You can clear a few hundred images in a couple of minutes. Another way, is to plug the iPad in to the computer and delete the images that show up in the mounted portion of the drive. I found I had to plug my iPad in to a windows machine I don’t sync with to get the drive to mount (I got that tip off Mikemurphy).

The time machine drive is actually the old 500GB which my drobo had filled up. After a quick format and the purchase of an external drive enclosure it was ready to go.

The real key to this new workflow isn’t just the fact that backup is brought to the front, it’s the fact it’s automated. Aside from failing to plug in the time machine drive, I can’t forget to back up anymore. And even if I do, providing I have Internet connectivity, livedrive will carry the data offsite for me. The only problem I can see here is extended trips abroad, with patchy Internet access and no time machine drive. In the past I have taken a laptop and small external drive with me, duplicating each days worth of photos across both and storing them in separate locations. This system has worked well, and I am considerably more religious about making those daily back ups when on the road.

In regard to the lightroom catalogues I’ve decided to have one catalogue per year. This means the the number of images in the catalogue will be finite, as dictated by January 1st. I’ve broken the old monster catalogue down and my new catalogues are as follows:

Year Photos Catalogue size Notes
2006 10 31MB NB: There are several hundred images for 2006 which pre-date my Lightroom usage
2007 589 1.65GB A mixture of JPG and RAW
2008 660 3.15GB The year I started shooting mainly RAW files
2009 2,122 11.69GB With university over, photography filled all free time
2010 3,210 31.37GB A new (higher resolution) camera, hence the 2/3rd file size increase for only 1/3rd image increase
2011 (1,326) (16.07GB) Figures to date

Aside from nicely illustrating my desire to capture an increasing number of images as time goes on, these catalogues are a lot easier to work with. Note, I don’t set out with the goal to beat last years total, it’s just sort of happening on it’s own. It’s looking like this year may be the start of my plateau. Sorting in to the above catalogues also served as effective spring cleaning measure, deleting nearly two thirds of my library, consisting of those images considered too similar/uninspirational/less than perfect. Things could further be improved by archiving every year on to an external drive, this is something a giant catalogue just wouldn’t allow.

So that’s my new process. It’s a lot better than the old one, and I’m lucky I had the scare of losing everything, without actually doing so. If you’re the kind of person who hoards data and memories (or work) on drives and machines, I’d urge you to think about how much you would lose if x, y AND z all broke tomorrow.

Popularity: 11% [?]




The day I lost it all
August 12th, 2011

A few weekends ago I went to Paris on what should have been a relaxing weekend away… The trip however was overshadowed by the feeling that I had just wiped out 99% of my photos, with only a few hundred of “my absolute best” backed up. As I trudged to the airport I wondered how I had let myself get in to such a mess.

It all started in about 2008, when I was getting sick of having photos across several external drives, any of which could fail at any given moment. I decided to buy a drobo, which is a user friendly mirrored RAID array. With the drobo I could safely amalgamate all my existing external drives in to one unit, which would protect me against single drives failing. Brilliant!

Drobo software

There is however an obvious problem with this: When the drobo unit itself fails/is destroyed, everything is gone. Fully aware of this risk, I got my self an offsite/online backup solution called mozy. All the important files on my drobo would also be uploaded onto the mozy servers, and if the worst happened i would be able to download my files from the cloud. I figured I was set and started uploading my media to the mozy servers, knowing full well it would take a few weeks for the initial upload.

Mozy backup

For a few months the system worked well. After the slow process of that initial commit (which took about 2 months!) the incremental backups made everything much quicker.

Mozy - Backed up

Then one day, for a reason I forget, I unplugged my drobo from my computer for a while. I continued to use the computer in this time, and when I plugged the drobo drive back in mozy started doing a fresh commit instead of an incremental backup. After some digging in their forum, and some emails to their support, it seemed the system wasn’t set up to deal with temporary volumes (like external hard drives). I dont know if this is still the case, but for me, at the time, it was a deal breaker. Very annoyed, I sent a strongly worded email, demanded compensation for my wasted time and cancelled my mozy subscription, vowing to look in to an alternative backup solution ‘soon’.

Years passed.

In those years the drobo soldiered on like a trooper. A drive failed and it didn’t bat an eyelid. I performed one or two routine upgrades to expand capacity and all the while I invested more and more data in to this single point of failure. Every time the thought of an online backup came in to my head it was always put on the to do list. It was a big job to compare them all, make sure they did what I wanted, test them and finally commit to one. I wanted to be able to dedicate an appropriate amount of time to such a decision! There was however never an ‘appropriate’ amount of time to look in to it. In the world of offsite backups, even a hastily made ‘wrong’ decision is better than no decision.

Drobo pie

So here’s how it all went wrong: My drobo was running low on space, so I’d just bought a fresh TB HDD to swap with one of the old 500GB ones. Knowing that the drobo usually takes a weekend to rebuild/transfer parity data to a new drive I’d held off for a weekend I knew I wouldn’t use it, as it can sometimes get quite sluggish during a rebuild. The morning I was due to fly to Paris I opened the chassis, ejected the 500GB drive and positioned the 1TB. Each bay in the drobo has a spring loaded clasp which securely fastens the drive in place. I pushed the drive in, the clasp sprang shut and all the lights went off briefly before flickering back on, all red. I’ve since reasoned that the power lead must have been teetering on the edge of conductivity, and the jolt from the closing spring caused it to temporarily disconnect.

So there I was, about to catch a plane, and staring at a bank of red lights which represented a total annihilation of my digital presence. Photos, video projects, university work, music…. You name it. I tried the age old adage of turning it off and on again. The feedback I received from the status lights indicted “This drive has failed and needs to be replaced” on all 4 drives.

The river of expletives ran fast and furiously, forming a waterfall in record time, culminating on my floor in a foul pool of stagnant words.

I put everything down and left for the airport. My head swimming with thoughts as to how often and how many of my files I had be backed up in the last few years. The numbers were depressingly low on both counts.

I tried to forget about it, and did a semi decent job of enjoying my time in Paris. Every once in a while I’d take a photo I really liked and it was like twisting a knife as the thought of “Where will this photo go when I get home” haunted me.

Upon my return I plugged the unit in, and this time the lights were slightly different. Three were solid red, with one blinking red, which suggests that “3 drives are low on space, and one has failed”. So the state of affairs was as follows:

Location Drive Reported Status My data investment
Bay 1 New 1TB drive “Low on space” Empty
Bay 2 Old 500GB drive “Failed” Full
Bay 3 Old 500GB drive “Low on space” Full
Bay 4 Old 1TB drive “Low on space” Full
Ejected Old 500GB drive Unknown Full

I figured the best thing to do was to put the old drive back into bay 1 and hope drive 2 rebuilt itself. Alas, it didn’t work, and every light was still some degree of red. I poured over the forums/FAQs looking for any glimmer of hope. This was my best bet – “I added a new drive and my Drobo device doesn’t seem to see it. What should I do?”

After ejecting all my drives and reseating them all the lights weren’t red anymore. They were flashing orange/green to indicate they were rebuilding.

Screen shot 2011-08-05 at 22.55.32

It was alive. The drobo was repairing the damaged drive. It took an agonisingly long time to show up when I plugged it in to a computer, but as soon as it mounted I knew my data was safe.

For now.

I immediately moved all my project files to a portable drive as the drobo rebuilt, then upgraded to that terabyte drive. Each rebuild took around 2 days.

Having been given a second chance, offsite backup became my top priority. After sending out a few feelers I did what I should have done long ago, and went on a recommendation from a friend. Livedrive is now my offsite backup provider. They have a number of options, and I’ve opted for their backup + ‘briefcase’ plan. I can back up an ‘unlimited’ amount of data and store up to 5TB in a folder shared between machines. When compared to the 3.2GB limit of my current dropbox account I become giddy at the thought.

Livedrive

I’m still in the process of setting up livedrive the way I want it, but it wouldn’t be at all unfeasible to store all of my files across all my machines in the cloud (as Alex does) and enjoy access to them regardless of where I am.

So this is a very lengthy blog post telling you to ask yourself: If my laptop/external drive/whatever was to break today, how much would I lose? If you chose to go with livedrive, here’s my referral link ;)

Because even if you have 5 redundant drives on your property, you never know when rioters might decide to set fire to your flat live on national television :(

Screen shot 2011-08-08 at 21.22.01

Popularity: 9% [?]




Facebook, now with faces! (Still sparse on books)
July 6th, 2011

So in what might seem to be a backlash against Google+ (though in reality is something which will have been brewing for a while) Facebook have announced they’re adding video chat to their ecosystem:
http://www.facebook.com/videocalling

The installation process is clunkier than Google+ (which just works) but I think the video quality on FB is better.

I am of the opinion that both seem inferior to Apple’s Facetime in terms of the wider user experience. Having to video conferencing/chat while tethered to a computer, even a laptop, is like being forced to use a landline after having had a mobile. With Facetime on the mobile device it’s right there when you need it, not at home where you need-to-arrange-a-time-to-make-sure-everyone-is-at-their-computer-with-a-glass-of-water-and-have-that-interesting-thing-they-want-to-show-you-to-hand.

The social networks (though it is with some reservations I put Google+ under this umbrella, as it has yet to prove itself) will need to put this feature in their mobile applications for people to really start using it. That said, video chat is the future that every ‘forward thinking’ tech company seems to be pushing for, but few consumers actually want. When it comes to sci-fi tech we want teleporters, flying personal transport (cars/hoverbikes/hoverboards) and replicators. I don’t want to be able to see how amazing your holiday destination is, I want to beam right over and have a Mojito too. I don’t even like mint, but I want to have the option of moaning about it on the other side of the world within 30 seconds. Everyone needs to stop dicking about with webcams and get on with it.

The facebook video platform is powered by skype, a company which is currently being bought by Microsoft. Considering Microsoft took an equity stake and solidified advertising contracts with facebook a number of years ago, it’s looking like their relationship is growing ever more solid. It’s an excellent alliance to help Microsoft gain something over google online, as facebook is THE dominating power on the (Western) social web right now, a party google desperately wants in on.

While google+ is generally getting positive feedback (unlike GoogleWave and Buzz) it’s got a long way to go before it catches up with facebook. If any social networking site can do it, this could be the one, but right now the only thing that might topple facebook is their own momentum. They seem most vulnerable to tripping over their own feet as they race to stay ahead. They came close earlier this year after exposing a little too much personal data and quickly backpeddled. Another poorly thought out move of that nature could see the company landing in some legal hot water. At least they’re in bed with a partner who’s no stranger to such things.

As a side though, I’m not so sure the Microsoft/Nokia purchase will help them stop the runaway train that occurs when glass meets aluminium and is garnished with the silhouette of a certain fruit, but MS is trying their darnedest to fight every tech battle going.

In their favour, my Xbox360* is still working.

(*My second, replacement Xbox360)

Popularity: 10% [?]




xkcd
June 13th, 2011

A geeky naming convention would avoid problems like this:
Server name

Popularity: 11% [?]




What’s in a name?
March 8th, 2011

When i was about 12 or so, and just starting to ‘get into’ computers, i thought about how many kinds of computers a person (and by person i mean massive nerd) might want/need to have. I came to the conclusion that it would be more than one, deciding five was a good number.

The five computers i decided you’d need were:
A laptop, a fast one for when you need to set up a mobile power house.
A tower, essentially a home server, big on storage (and grunt), doubling up as a gaming machine.
A laptop, a not so fast but highly portable, for when you need to get some light weight work done.
A compact computer, to serve media to the TV, likely streamed from the “big on storage” tower above. A very basic box.
A server, for hosting and web tinkering, always on, accessible to the world.

I decided on this around 1998 and without knowing it, my overactive young mind had anticipated the netbook revolution and media centers like the apple TV.

Now it’s not uncommon for a collection of similar items to get names assigned to them, so as to make differentiation easier (Unique identifiers are very useful things like that). I can’t remember if my naming convention came first and I worked the computers into it or if i imagined the computers first and the naming convention happened to work out nicely. Regardless, the convention is exactly the kind of thing you’d expect a 12 year old boy to come up with: My computers are named after Thunderbirds.

Thunderbird1 It’s a rocket, slevt, like a laptop and it’s fast. My Macbook Pro is T1, also my primary computing device.
Thunderbird2 Like the ship, it’s a large machine, designed to store whatever you wish. My DROBO is T2. It’s not quite a full blown gaming machine like i anticipated, but at 2.2TB of storage (and growing) it sure is a big on storage.
Thunderbird3 Another rocket, but one that likes to travel a lot (In the TV show, it goes into space) My highly portable Advent 4211/netbook is T3.
Thunderbird4 It’s small and specialised to hit the waves, or in this analogy stream media. My mac mini is in the process of becoming T4 after being replaced as my primary computer.
Thunderbird5 You can probably see where this is going. Thunderbird 5 sits in space, it’s remote. If i had a dedicated web server, it would be called T5. As it is i consider my shared/managed hosting to be T5.

Now the convention does fall down in places, technically Thunderbird 4 lives inside Thunderbird 2 and doing that with computers is just silly, but for the most part, it holds together, and it holds together well. Both the rockets are laptops, thanks to their slim profile, the server is a 24/7 space station, the size and function of the Thunderbird matches nicely with what each machine does. What more could you want from a naming convention i hear you ask? Well for one, i do have more devices than fit into this schema. One thing my young self failed to anticipate was just how quickly mobile devices would mature.

When I was 12, your average mobile phone looked something like this. The Matrix was released in 1999, and in school, the phone in this film was considered to be the hottest handset on the block. Mainly because it shot the microphone down your face. A friend of mine acquired one (A Nokia 8110) a number of years after, as the film was being butchered by its sequels, and it was quite a beast. From what i remember, the charger alone was pushing a kilogram. The saddest thing though was that the mic slider didn’t actually work like in the film. Their handset had been modified. Nokia realised this was the only thing people cared about, and refined the model into, the nokia 7110 (Nokia’s own naming conventions boggle the mind, as do Nikon with their DSLR camera range, but i digress. Immensely). The point of this paragraph is to say that i missed a trick, and my naming convention is not particularly extensible, to mobile devices, or any additional computers i may have. Now watch as i segue this blog post beautifully back on track…

My lack of extensibility got me thinking further. I have a friend who names his computers after elements, not much room for growth with that system (Unless you’re in the habit of creating new elements between winning noble prizes), but it’s got enough scope that the names available will almost certainly outnumber personal computing devices. The thing i liked about my own naming convention was that the original Thunderbird was able to map so closely to the corresponding computer’s function. I asked and my suspicions were confirmed, my friend hadn’t quite gone as OCD with his naming convention. While the machine known as Rubidium would react rather violently with water, this was simply a coincidence, and the element name had nothing to do with the machines function. I performed a quick interogation of a few geeky friends to see what other conventions were kicking about:


Naming convention Notes/comments
Thunderbirds Original Thunderbird’s spec loosely matched to computer
Cities Named alphabatically based on aquisition with the potential to loop through again with new names every 27th machine.
Alcoholic beverages (It amuses me that this one is from the corporate banking world)
Teenage mutant hero turtles “I like the fact that to my arty friends i can pretend they’re named after renaissance artists and seem all cool and cultured”
Elements Where the atomic mass also forms part of the static IP
80s cartoon characters “My server is greyskull, it’s mostly He-Man characters”
Seasame Street characters “To be honest, any TV show / cartoon with ‘enough’ characters would do i.e. Simpsons or South Park etc”
Lord of the rings characters / Planets from Star Wars (This system classified devices in the home / servers respectively)
Minerals and Spices “In my department internally computers were named after minerals, and externally by spices so my workstation was halite, and the staging server we used was called staranise”
Tube stations (Interesting, i think there’s something in the zones/lines that could be added to this)

I think it’s safe to assume that you have to be pretty geeky to get to the stage where you need to have a naming conventions, and as a result, there are some massively geeky naming conventions. The fact that i’ve written all this (and the fact that i STILL think it’s quite interesting) probably makes me the biggest geek of them all :(

Thanks to those who took part in my very brief survey. Leave a comment or @the_defiance me if you have an interesting one of your own to add to my sexy bordered table! People are coming up with new ways to make office tech departments more nonsensical all the time…

“Guys, Cookiemonster is full and Big Bird is still in the shop. Can we PLEASE get Kermit back in the green before Miss.Piggy explodes?!”

Popularity: 15% [?]




Facebook ‘Like’ buttons – Something just doesn’t add up
January 24th, 2011

Facebook ‘like’ buttons have popped up all over the web. However not all is as it seems with those little one click wonders… the cake is a numbers lie. I’m doing some digging around for a project and the number you see attached to the button most certainly isn’t the number of people that have clicked that button. The number you see is usually inflated, possibly several times over.

If you’re trying to return these result via the API it’s important to know what you’re getting, and try to appreciate why there are differences.

Let’s take a page with a like button, for sake of our example, the IMDB page for “The King’s speech”. You’d like to think they have a pretty decent implementation of the like button seeing as they were one of the early adopters and fb liked to use them as an example in their documentation. Running the URL through the “Facebook URL linter” tells you what facebook thinks of the pages metadata. It breaks out the opengraph tags (<meta property=”og:type” />) and puts them in a nice table:

http://developers.facebook.com/tools/lint?url=http%3A%2F%2Fwww.imdb.com%2Ftitle%2Ftt1504320%2F

This linter is a handy way of checking you’ve implemented your OG tags correctly/in a way facebook can understand.

The bit i’m particularly interested in at the moment is towards the bottom of that page, the ‘like’ button. At time of writing, the like button says it has “11,395 likes”. These are live links, so it will have changed when you click on it. Immediately below this button is a link to the page as seen by the Graph API: https://graph.facebook.com/?ids=http://www.imdb.com/title/tt1504320/.

Right now, this link states bold as brass that the page has 1,239 likes, or nearly a tenth of what it ‘should’ according to the button. If you go via the restserver.php script you get a much more helpful breakdown of what’s going on: http://api.facebook.com/restserver.php?method=links.getStats&urls=http://www.imdb.com/title/tt1504320/

Which returns:
<share_count>3450</share_count>
<like_count>3099</like_count>
<comment_count>4846</comment_count>
<total_count>11395</total_count>

So that’s where the number on the button comes from! It’s actually a combination of likes, shares and comments. No wonder it’s such a big number! At least now we know how it’s made.

Those of you good at countdown will realise that these numbers can’t be arranged to generate the 1,239 likes as reported by the graph API. So what’s that number got to do with anything? Well, according to this lengthy (but excellent) post on the matter, this is the actual number of people who have liked the link, as reported by the automatically created fanpage for the link in question.

Why the discrepancy? Could it be to do with some of these referring to ‘share’ links that can also be included on webpages? I wish I knew. Don’t try to understand facebook logic, that’s impossible. Instead… only try to realize the truth: There is no logic.

If you can explain it for me with a comment or email it would be much appreciated. Also if you know which API call will return a set of IDs/usernames of those who have liked a button on a 3rd party site I would be even more appreciative, as that’s what i was originally trying to do when i got sucked into this wild goose chase.

Popularity: 19% [?]




Facebook Developer Garage London – Jan 2011
January 20th, 2011

(This is a version of an email that was sent round Candi London as part of my role as their Social Media Developer. It’s duplicated here for those who might find it useful, and to keep it on my own records. If you’re not a developer, or interested in development, the rest of this post really won’t be worth reading… NB: This is what i took away from the event, and may not be 100% accurate. If in doubt, it’s best to seek information from official facebook documentation (where available))

Last night I attended my first facebook developer garage event Here are some of the main things covered concerning changes to the facebook platform:

-3rd party IDs replacing UIDs
http://developers.facebook.com/blog/post/431
Previously, FB happily issued the unique ID of users so that applications could target content at individuals walls and the like. Some rogue developers had discovered a market to sell these UIDs for spam purposes. To combat the selling of FB UIDs, facebook are looking to replace them with a new kind of unique number, generated from a combination of the user ID and your application ID. These would be useless for sale (unless somebody cracks the generation algorithm). The switch over is still being worked through, but is reported to be ‘coming soon’.

-GET vs POST
A bit of a rushed point, but potentially a very important one. To avoid private data (like the above 3rd party access token) being left in the URL, all session data is going to be sent/requested via POST. This change was said to be coming into effect March 10th, but I’ve been unable to find any official documentation on this. Depending on how existing applications are handling REQUEST data, this could be what facebook refer to as “A breaking change”.

-Geo targeting content
It was said that the graph API (not to be confused with the open graph protocol!) can be used to deliver content based on geographic location. Again, documentation is sparse, and the point was rushed (the speaker was running overtime) but I think this is to do with the ability to filter a status update via region, so I think this is just a programmatic way of doing what is supported natively on the status update field.

-Test user API
http://developers.facebook.com/docs/test_users/
FB has beta released an API just to churn out test users. There are some limitations on them (for obvious reasons they can’t like pages, or post on real users walls, but they can interact with other test users). Not sure if this is going to be more useful than a manually created test user account, but fb is said to be looking to delete those once this test user API is made officially. By then they hopefully will have implemented the ability to create them via the fb developer UI rather than having to write your own scripts to generate and manage them.

-No more FBML (By the end of 2011:Q1… supposedly)
http://developers.facebook.com/roadmap
According to the “canvas and page tab“ section of the roadmap, FBML will no longer be an option for new apps by the end of this quarter. This will coincide with full support of iframed apps in tabs. It’s worth nothing that this was originally meant to happen at the end of last year, but has been pushed back. As a result, this vague date is still susceptible to change. Once this change occurs, from what I can gather there will be a freeze on the FBML tags and existing FBML applications. There will be no further support, but they should still continue to work (providing they are working when the freeze occurs). Unsure of how cut and dry this freeze/transition period will be, or how much time there will be to play with iframe tabbed applications before they become mandatory. More details as I get them. This should mean that all documentation produced by facebook moving forward should be relating to new methods/in the new style, which has (touch wood) been a lot better than previous efforts on documentation. (I still think they’d do well to open it up as a wiki though).

-Updated beginners guide
http://developers.facebook.com/docs/guides/canvas
This page has recently been updated to try and wrangle the basics of app development into a concise guide. It’s worth a re-skim just to quash any past misconceptions or gospel truths you might have held about app development. I’ll be reading it now, as I’m pretty sure my knowledge of the platform has been heavily bastardised over the years by numerous hacks and workarounds. It’s important to remember how to get hacky, but also important to know the ‘preferred’ way of doing things, just in case a known workaround has been rendered obsolete or (gasp) come to be officially supported.

UPDATE:
The slides from the original presentation by @Iskandar are now online. Well worth checking out for a number of additional points I forgot to note/cover/weren’t particularly important to my current projects.

The event was well worth the ticket price (£7), for the content alone (there were additional talks, but i have only covered the tech points here), but also for the fact that it’s easy to drink and eat more than £7 worth of beer and pizza. Given London prices, you’ll have made your money back after your first gulp ;)

Popularity: 16% [?]




2010 – My year in photos
January 1st, 2011

A (mostly) visual review of my 2010:

Jan

-Enjoyed playing in the snow.
-Moved into a new flat.
-Went to pro photographers rights demonstration.

Morris
Obstacles
Impromptu flat warming
Bobble hat


Feb

-Generally tried to stay warm, but sometimes ventured outside to play with traffic.

Through the flames
LOOK RIGHT
Traffic


Mar

-Left my job after 18 fun filled months.
-Pottered about London/London zoo inbetween jobs.

Decode
Gherkin (From St.Helens Place)
Heron Tower - WIP
Butterfly
Rope
Yellow poison dart frog


Apr

-Started new job.
-Had fun watching marathon runners trundle past the flat.
-Did some headshots for a friend.

Cocktails!
Running on empty
3 Lions
Richard Branson
Camilla
Camilla


May

-Got older.
-Enjoyed the start of good weather.
-Played with a newborn.

Birthday MESS
New watch
Just dandy
Say hi to baby Aden


June

-Got asked to shoot 2 weddings by friends (most of the photos aren’t online, that’s up to the couples :) ).
-Did very little else but prepare and process wedding photos.

Hands
The spectacle of sleep
Here comes the bride


July

-Tried to make the most of the weather by getting OUTSIDE.
-Went to a stag do.
-Ate too much free ice cream at the Ben and Jerry’s sundae festival.

St.Pauls
A sunset for two
Game on
Into the light
Tub
Feeds da cow


Aug

-More socialsing and outdoorsness.

Shhh, sleepin'
RIG
Draped


Sep

-Shot some friends in a stage show.
-Went to Marrakech.




Looking up
Palace Badii
Koutoubia mosque
Menu
Ever get the feeling you're being watched?


Oct

-Went to a rally to protest against potential cuts to science funding.
-Shot a friends acoustic set.
-Got a new camera!
-Set up a facebook fanpage to try and force myself to upload work more regularly/get feedback.

Science is vital
Back to the (s)tone age
Her good side
Mid song
New camera


Nov

-Shot a French Soirée.
-Went to Seville (and scandalously haven’t uploaded any photos to flickr yet!).
-Saw Nadal serve up a storm.
-Started a new job (Yes, again…)

Camilla Matthias
Lucy
A poem
Smoke?!



Tennis time

Arf?!


Dec

-Head shots for a friend.
-Kitten shots for a friend.
-New computer to replace my loyal (but horribly slow) mac mini.
-Another play in the snow.
-Put together a snow video.
-An early Christmas morning bike ride.

Lucy
Lucy
Teeny claws!
Small kitten, big armchair
New hardware
He wasn't the first
I could have sworn I saw a faun

Slow snow from stuart on Vimeo.

Westminster Bridge
The Tate Modern (Millenium Bridge)
The London Eye (South Bank)
City hall


So that was that. I certainly managed to come good on my 2009 new years resolutions. A few more popped into my head though:

-Watch 100 films over the course of the year
I read about an online chum doing this and thought i’d give it a go. It was surprisingly harder than I thought it would be to watch 2 movies a week and do everything else i usually do, but here they are. I had more relaxed rules than Billy, the films could be ones i had seen before, and i’d guesstimate somewhere between a third and a half of them were. So how do you know i’m not cheating and padded it out with films i know but didn’t actually watch? You don’t, but if i were going to cheat i’d have put some considerably better films in there. Have you ever seen Tank Girl? Don’t bother. I had hoped IMDB would have an API so i could pull some stats on these and work out how many hours i’ve spent watching them. Sadly they don’t, so i’ll have to guesstimate it to be about 200 hours, or a little over 8 solid days of film watching. That’s a lot of days. I won’t be doing this again next year, by the autumn it started to feel more like a chore than anything else. I did watch some great new films though, but i think i’ll just stick to recommendations to watch as and when from here on.


-Learn to solve a rubik’s cube
Decided to ask for one for my birthday, along with a book on solving it. It only takes a few days to learn the patterns/tricks. I can do one in a little over 5 minutes, which is about 5 minutes off the world record. Now those guys are smart/fast.


-Carry on logging expenses
At the start of 2009 i began logging my expenses, and managed to do it for a whole year:
ixpense(d)it
It has become such second nature to me i forgot to mention it as a resolution… but i carried on. When you log your spending with the level of OCD that i do you have a very insightful asset. I’ve now got two years worth of train tickets, lunches, shopping sprees, presents, charitable donations… everything. Now that i can compare this year to last i see that my outgoings went up by quite a bit. Buying cameras, laptops and not living at home will do that. Luckily, moving jobs isn’t all bad, and my income went up to cover the extra spending. After much analysis i’m starting to think it might be most cost effective to live at home. I will need another few years of data before i publish these findings though.

I didn’t start doing this because i needed to budget, i just figured it couldn’t hurt to keep tabs and it makes for handy reference at times. Being able to look at how much holiday x or y costs has helped me (and other people) plan how much money to change up. It’s also nice to know how much money is there if i had to find it/felt the urge to save more. Filtering down by category, i can see the ridiculous amount i’d save if i stopped drinking and the similarly large wodge of cash that i’d get back if i made my own lunch. Currently i quite like drinking and eating out, but it’s nice to know if push came to shove, that money is pretty easy to retain.

The app is called ixpensit and it’s handled updates and different handsets without a problem. It even lets you email your data as a .csv file, which is good for backing up and if you wanted to do your own graphs off of it. There’s a free version too, i think it limits you to 30 transactions so it’s very much just there to get a taste.


Conclusion:
As suspected, 2010 didn’t really top 2009. It was certainly a very busy year, maybe too busy, or busy in the wrong way. Either way, i preferred 2009, so 2011 needs to be more like that. Maybe i’m just getting old and grumpy (grumpier) though.

My photography got a bit better, mainly through a keener eye on how to process images, but it’s not made enough progress for my liking. I am hard to please like that. It’s good though, the day i stop spotting problems will be the day i no longer feel the need to improve, so if that ever happens you can have a ride on my yacht, because by that point i would probably have to be the best photographer in the universe. There was a flash under the Christmas tree, so that may yield some interesting experiments. It should also make macro photography a bit more accessible to me.

I didn’t travel nearly as much in 2010, and while my trip to Seville was planned and organised in a week, and lovely as it was (and it really is a very lovely place i want to revisit) it didn’t manage to knock a shuttle launch in Florida off my mind. They were very different trips, Seville was by far the tastier and more relaxing. Florida was buzz buzz buzz, and that wasn’t just the wildlife. This year, providing work clears my holiday request, i’m hoping to hit 3 continents, two of which i have never set foot on. Then there will only be two left i’ve not been to! (Though i don’t much fancy going to Antartica, pituresque as it can be… it’s a bit desolate. Iceland is much more appealing).

For 2011… the resolutions are pretty simple:
-Keep pushing the photography, even if it’s just to maintain the standard it’s at, but hopefully improve it. The new camera is already helping with that as i’ve got a lot more flexibility with it.
-Take (and pass) a driving test… because not being able to rent cars is starting to be a pain.
(-Given that i moved job twice in 2010 i should probably make a resolution to not quit this one… I shouldn’t really have to make a resolution about that though! Quitting jobs is not something i particularly enjoy anyway!)

I guess it’ll be another 365 days before i can mark myself!

Popularity: 21% [?]




Christmas morning in the capital
December 26th, 2010

I went into London on Christmas morning. It would seem not many others did.

Full set here.

City hall

Picadilly circus

The Tate Modern (Millenium Bridge)

The London Eye (South Bank)

St.Pauls

London Bridge station

London Bridge

London Bridge

Bank

Trafalgar square

The National Gallery (Trafalgar square)

Westminter (South Bank)

Westminster Bridge

The Mall

Popularity: 10% [?]




dis.gust.ed
December 17th, 2010

Delicious is a social bookmarking web service for storing, sharing, and discovering web bookmarks. Or perhaps I should say it was a social bookmarking web service… Yahoo bought them in 2005, and last night it emerged they intend to shut the service down.

http://techcrunch.com/2010/12/16/is-yahoo-shutting-down-del-icio-us/

They want to focus on what they consider their core products, as stated by the CEO to be: Search, email, the homepage, mobile and advertising.

Last time I checked, every single one of those ‘strengths’ was synonymous with the g word. The same word that’s been granted access to the Oxford Dictionary. I don’t remember the last time somebody said they were going to Yahoo something.

Yahoo also acquired flickr, the photo sharing site, in 2005. Clearly somebody had the good sense to spot the social shift in the web and make these acquisitions, presumably with the intention of growing into that space but instead they were left to stagnate. The Facemashbook launched in 2004 and now Zuck’s the second youngest billionaire in the USA, with no clear rival (in the Western world) to his service, so clearly there’s some mileage in this space and Yahoo were IN this space at the same time facebook was rising to dominate it. The funny thing is, they’re STILL making social acquisitions but it’s as if they’ve written off the motherland and are trying to get their foot in the door elsewhere. Out of their last 5 acquisitions to date, 3 were social media based, and 2 of those were outside of the USA, in Jordan and Indonesia:
http://en.wikipedia.org/wiki/List_of_acquisitions_by_Yahoo!

It’s clear Yahoo have seen Google get bigger and better at the things they themselves used to be good at, taken it to heart, and decided to try and claw their way back in instead of running off to frolic in the wide open field that is the social web. I’m sure facebook would play nice, they a need a new net giant friend given their on-going scuffles with the big G (http://www.highposition.net/article/google-and-facebook-butt-heads/4562673).

Google have shown that they don’t seem to understand what people want out of social projects. Buzz and Wave were both a disaster (though I quite liked Buzz). Google are made up of engineers, they do highly functional products like search, email, browsers, ‘phones’ and most recently, cloud based operating systems. Are these things fun? Not really, to steal a phrase “They just work”. Social projects need to be fun more than they need to be useful. The ones that are both are the real hits. Yahoo could have been focusing on developing the great social products they bought for the last FIVE YEARS, but instead it sounds like they’ve been infighting about which direction to move the company. A civil tug of war at a corporate level is not pretty, and it seems like the laggards are winning as they’ve also made redundancies on the flickr team earlier this week.

*slow clap*

Way to ignore an opportunity for so long guys, and even more insultingly, spit in its face because “it’s not working”. It was working fine, that’s probably why you bought it. Thing is you have to keep innovating on it… these things aren’t just heirlooms you acquire and expect to retain their value.

There’s an even longer rant about it from this photographer:
http://thomashawk.com/2010/12/an-open-letter-to-carol-bartz-ceo-yahoo-inc.html

Good luck Yahoo, watch out though, I’ve just had an amazing idea that’s going to knock you out of the game for good. I will be starting work on a project I’ve codenamed “web portale“ this weekend. People go to a page and click on links and stuff. It’s going to be immense.

Popularity: 16% [?]