You know what makes me work even harder in a coffee shop? Leave your charger at home. You suddenly become more efficient since you know your time is limited. Assuming you're not on a thinkpad with a 9 cell battery.
Did this the other day and I had a productive 4-5 hours and called it a day. Was actually somewhat relived - as a freelancer - that my work day had a fixed limit after which you justifiable had to stop. Like leaving school in your childhood without the slightest concern.
This was similar to the approach I took early last year where I would go in 7 days a week but only spend 3-4 hours (conveniently the length of my charge) programming and sketching solutions. Interviewers wanted to laugh when I brought it up, but I really did find it productive. I'd leave the day stuck on some tasks, go about the rest of my day (outside the 3-4 hours) thinking about it and maybe quickly skimming docs when I wasn't doing anything else. At the start of the next day I easily banged out decent, working solutions in the first 30 minutes.
I guess social pressure won out in the end when even people close to me thought I wasn't doing anything. So finding myself in a similar situation to then, I stay for a few more hours (a little over the length of a charge and recharging to full; I don't take lunch breaks myself). I probably am more productive overall, but there's lots of factors to take into account (hopefully I got more skilled) and I'd say the biggest change is the more creative processes occuring in situ rather than strewn about the day. I also check my e-mails a little more often now ;-).
For me it's being on an airplane. The lack of wifi means I just stub things out as "TODO" when I don't know how to do them and move on. Then when I land I have a bunch of simple / googlable TODOs to knock off.