About once a year, my wife and I go to a driving range and remind ourselves of all those golf muscles that we don't use the other 364 days of the year. Inevitably, my first few swings result in nothing but a "whiff", and perhaps the ball falls off the tee. Then I usually manage to bounce a ball along the ground for a few dozen yards, before I finally manage to connect with one.
That's about where C2DM compatibility is with Deacon right now. The last few evenings I've been reading about C2DM development and hacking away at a little code for it. A new branch in the repository, c2dm-compat, is the temporary home for the results of those efforts. If you're interested in this facet of Deacon, I hope you'll check out the branch - or even the commit - and offer any wisdom or suggestions you may have in the form of comments. I've never written a C2DM-powered app, nor do I have time to set up an AppEngine backend for testing, so I'm pretty much working off the documentation and whatever nuggets of wisdom can be gleaned from the Chrome-to-phone example.
If you're a GitHub user, please make any comments or suggestions right on the applicable commit page (for now, that's commit f334e13, but that will change). If you're not on GitHub, consider the comment form for this post your "suggestion box"! To make C2DM compatibility in Deacon work well, I'm going to need your help.
And in the mean time, maybe I'll spring for a golf lesson or two.
Thinking back on the last month or so, I'm reminded of a scene from the film Batman Begins, after the destruction of Gotham is thwarted and the camera pans across the newly-rendered wreckage. My office has seemed a bit like this scene recently!
A week or so after school finished, the [admittedly-aftermarket] solid state disk in my trusty HP laptop went haywire, taking my development environment (which was about as comfortable as my favorite pair of jeans) with it. In order to get back up and running - and back to work at my new job - I replaced the hard drive and band-aided a new system together. But a long-term solution was needed, so I set about spec'ing a new machine.
A few weeks, a few out-of-town trips, and a few hours' worth of work later, my laptop is back to 100% and getting used to sharing my work table with a speedy new desktop. And as of tonight, I've got the Deacon project loaded back up and running in Eclipse. I committed a few documentation tweaks tonight, while the experience of ridding my JUnit console of "Java.Language.RuntimeException: Stub!" was fresh in my mind. Keep an eye out for more soon!