{"id":41,"date":"2008-09-13T11:09:07","date_gmt":"2008-09-13T16:09:07","guid":{"rendered":"http:\/\/www.knitbot.org\/blog\/2008\/09\/13\/apple-ical-fail\/"},"modified":"2008-09-13T11:09:07","modified_gmt":"2008-09-13T16:09:07","slug":"apple-ical-fail","status":"publish","type":"post","link":"http:\/\/www.knitbot.org\/blog\/2008\/09\/13\/apple-ical-fail\/","title":{"rendered":"Apple iCal:  FAIL"},"content":{"rendered":"<p>Even before there was an Internet that emphasized the value and<br \/>\npowerful reach of inter-machine resource sharing and interoperability,<br \/>\nthere was<br \/>\na basic concept that any given program ought to be able to use data<br \/>\nfiles generated by any other instance of the same program, run on<br \/>\nsimilar hardware.   All the user had to do was get the data<br \/>\nfrom one computer to the other.<\/p>\n<p>Apple&#8217;s calendaring &#8220;solution&#8221; breaks this most basic of understandings.<\/p>\n<p>I am an Apple fan &#8212; I heartily enjoy <span style=\"font-style: italic;\">using<\/span><br \/>\nmy computers to get stuff done, not having to continuously work<br \/>\non the computers themselves.   Apple is a leader in<br \/>\ndelivering seamless computing environments.  There are so many<br \/>\nthings that Apple has gotten<br \/>\nright with the hardware and the user environment.  But, sometimes<br \/>\nthe apparent drive to &#8220;own&#8221; the &#8220;user experience&#8221;, gets in the way of<br \/>\nthe actual user.  One such area is calendaring:  it takes<br \/>\nnothing away from iCal to say that I need it to play with others, and<br \/>\nyet the impediments to doing just that render it virtually<br \/>\nunusable.   Message to Apple:  making Mobile.me the only<br \/>\nway to sync my iCal across machines is NOT going to get me to subscribe<br \/>\nto Mobile.me, it&#8217;s more likely going to get me to stop using iCal.<\/p>\n<h2>A common calendar situation<\/h2>\n<p>I have a situation that I suspect is not all that unusual in the<br \/>\nworld:  <\/p>\n<p>I have<\/p>\n<ul>\n<li>a personal Apple MacOSX box;<\/li>\n<li>an Apple MacOSX box for work; and\n  <\/li>\n<li>a personal Apple iPhone.<\/li>\n<\/ul>\n<p>I need<\/p>\n<ul>\n<li>to be able to keep track of, and update,  my meetings<br \/>\nwherever I am (calendar) and\n  <\/li>\n<li>to share some versions of my calendar with a shared work calendar<br \/>\nserver<\/li>\n<\/ul>\n<h2>FAIL<\/h2>\n<p>Is this an unusual situation?  I can&#8217;t believe it is.  And<br \/>\nyet, I have no solution to doing the above seamlessly, with iCal.<br \/>\nThe fact that iCal has no inherent ability to share data with another<br \/>\nmachine, or even publish and subscribe to the same calendar on a remote<br \/>\nserver, makes it impossible to do the above without the intervention of<br \/>\na 3rd party service or purchased software.<\/p>\n<p>And even those are not so obvious, if you happen to share a few of the<br \/>\nprinciples I have:<\/p>\n<ul>\n<li>I won&#8217;t store quantities of personal data on my work machine, and<br \/>\nI certainly won&#8217;t make my work machine the primary for a personal<br \/>\napplication.  The machine belongs to my employer, and they have to<br \/>\nbe able to pull it back at any time.  I don&#8217;t care to be left high<br \/>\nand dry.<\/li>\n<li>I won&#8217;t store any employer data  (i.e., work information) on<br \/>\nmy personal machines.  (I don&#8217;t think I need to explain this)<\/li>\n<li>I won&#8217;t store quantities of my personal data on some 3rd party<br \/>\nremote server<\/li>\n<li>I won&#8217;t store any employer data on some 3rd party remote server<\/li>\n<li>I don&#8217;t have time to manually enter\/update the same data in 2<br \/>\ndifferent places\n  <\/li>\n<\/ul>\n<p>So &#8212; I&#8217;m not reflecting my calendars of Mobile.me or even Google<br \/>\nCalendars.  I won&#8217;t put all my calendar info on my work notebook<br \/>\n(only) and then have to sync my iPhone there.  <\/p>\n<h2>Trying to route around damage<br \/>\n<\/h2>\n<p>I have set up my own webdav server that both machines can access &#8212; but<br \/>\nthe fact that an iCal cannot both subscribe to a calendar and publish<br \/>\nit somehere means that  having my own server doesn&#8217;t provide me<br \/>\nwith an authoritative server that both Macs can access.  <\/p>\n<p>I tried keeping the 2 machines&#8217; calendar files in sync (using rsync),<br \/>\nand that works for the calendar data files.  However, apparently<br \/>\nthe calendars (particularly, those to which you subscribe) are stored<br \/>\nseparately in preferences, so that they are not properly sync&#8217;ed, and<br \/>\nyou get wierdness.  That last point is particularly<br \/>\nirritating:  even if Apple doesn&#8217;t care to provide the<br \/>\nfunctionality of sync&#8217;ing across Macs, by internalizing the data, they<br \/>\nare making impossible for me to find an alternative solution (rsync)<br \/>\nwithout getting into Apple-specific software development (digging<br \/>\nthrough preferences).  This is where they turn their backs on that<br \/>\nage-old premise of reasonably open computing:  that you can move<br \/>\ndata files from<br \/>\nmachine to machine, as long as you have reasonably similar instances of<br \/>\nthe software to work on them.<\/p>\n<p>I used to get away with using a 3rd device to be the &#8220;calendar of<br \/>\nrecord&#8221; &#8212; now my iPhone, previously a PalmOS PDA, and prior to that an<br \/>\nApple Newton (!).  That way, I could keep one calendar in sync<br \/>\nwith one machine AND have it everywhere wth me, even when away from my<br \/>\ncomputer.  Easy-peasy!  But, now I need to have a calendar<br \/>\nthat can sync (several times a day) to a shared work calendar, and the<br \/>\niPhone can&#8217;t do that.  <\/p>\n<h2>Where next?<\/h2>\n<p>So, I&#8217;m looking at spending $25\/machine to achieve something iCal<br \/>\nshould just be able to do.  Or, I can use another calendar program<br \/>\n(e.g., Sunbird), and lose all ability to integrate calendar items with<br \/>\nother applications.  Neither is an appealing prospect.<\/p>\n<p>Really, Apple &#8212; I think this is an instance where you need to Lead<br \/>\n(build the best calendaring app for your platform), Follow (make it<br \/>\neasy for other calendaring programs to be integrated applications) or<br \/>\nGet out of the<br \/>\nway (let me route around your damage).<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Even before there was an Internet that emphasized the value and powerful reach of inter-machine resource sharing and interoperability, there was a basic concept that any given program ought to be able to use data files generated by any other &hellip; <a href=\"http:\/\/www.knitbot.org\/blog\/2008\/09\/13\/apple-ical-fail\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[2,6,7],"tags":[],"class_list":["post-41","post","type-post","status-publish","format-standard","hentry","category-all","category-misc","category-net-working"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p7dQdt-F","_links":{"self":[{"href":"http:\/\/www.knitbot.org\/blog\/wp-json\/wp\/v2\/posts\/41","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.knitbot.org\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.knitbot.org\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.knitbot.org\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.knitbot.org\/blog\/wp-json\/wp\/v2\/comments?post=41"}],"version-history":[{"count":0,"href":"http:\/\/www.knitbot.org\/blog\/wp-json\/wp\/v2\/posts\/41\/revisions"}],"wp:attachment":[{"href":"http:\/\/www.knitbot.org\/blog\/wp-json\/wp\/v2\/media?parent=41"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.knitbot.org\/blog\/wp-json\/wp\/v2\/categories?post=41"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.knitbot.org\/blog\/wp-json\/wp\/v2\/tags?post=41"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}