Originally published on: 7/22/2007 8:17:04 PM
It struck me that keeping track of that stuff on Google Calendar would be a reasonably good way to centralize it and make it accessibly from any of the computers that I work on (Windows, Linux, Mac, etc.) without depending on software. So, I took a quick look at the PHP API for using GCal's information.
It requires the Zend Framework, so this was an opportunity to install that as well. The instructions on installing the Zend Framework were a bit vague. What it boils down to is this. The "Zend" directory inside the "library" needs to be on your "include_path" for PHP. On my Ubuntu development boxes, that means putting that Zend directory as "/usr/share/php/Zend" and the existing configuration picked it up.
I then grabbed the Calendar.php sample file. There's lots of stuff in there I'll (and you'll) want to change in it for ongoing use (like lots of the defaults). However, it works well to get up and running. I stripped all of the stuff at the end of the file (the stuff that wasn't inside a function), thus turning the Calendar.php file into more of a library to be included.
After including that file in my "createaccomplishment.php", I set up a really basic form for creating an entry.
Add Accomplishments Code: (View Highlighted Code)
I made a couple of changes to what would be a normal calendar entry.
Now, at first blush, I can't see how to specify a given calendar (and neither can lots of other people looking for it online). That would be better than a specific subject. Then, you could just search through your "Accomplishments" calendar, which would have nothing else on it. But, this will do to serve as a starting point.
Then, just to give a quick example, you can search for all appointments that contain our marker in them anywhere. It's crude, but it gets the job done.
Show Accomplishments Code:
Aside from the couple of things I'm looking for in the API, it looks like Zend's implementation of the API is relatively easy to work with and would make other kinds of tracking easy as well.
Once integrated into browser bookmarks or desktop widgets, commandline scripts or other places, it could make quickly noting down accomplishments really easy. Once they're stored, they can be retrieved by the variety of criteria that make sense:
Of course, what I *really* want is a system that lets me keep track of projects according to who I was employed by while working on it, what technologies were used, duration, who the client was, who the managers were, etc. That would make the various forms of resume's, skills inventories, chronologies, etc. that recruiters and other consulting firms are constantly looking for. Then, the fact that they all seem to ask for slightly different formats won't be a problem.
I could just export it by project, listed chronologically according to employer for one and by employer, listed chronologically by project for another, while turning "Target Corporation" into "retailer" and "Wells Fargo" into "financial institution" for still another. Similarly, I could query such a system for the actual number of months using XSLT, C#, Reporting Services or whatever else I've worked on instead of trying to do those calculations and adjust them constantly.
Being in the effective business of "wholesale" consulting, I tend to make more use of resumes and such project details than more "retail" consulting/freelancing consultants.
Does that exist out there somewhere?
I'll be happy to get more code
cheers !
ron
Thanks for explaining a bit about google calendar api and how to make it work.
I understood most of the part. But I am stuck at one thing. We have 3 calendars for our domain. One is default "Jay" and other two are "Booking" and "To do List".
I want to add Events to only Bookings calendar. How do I do it. If I add Events it only adds to default calendar. Any help will be appreciated.
Thanks
Jay