home *** CD-ROM | disk | FTP | other *** search
/ db.tidbits.com / db.tidbits.com.tar / db.tidbits.com / getbits.acgi?tbart=07556.orig < prev    next >
Text File  |  2010-09-23  |  51KB  |  819 lines

  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
  2.         "http://www.w3.org/TR/html4/loose.dtd">
  3.  
  4. <html lang="en">
  5. <head>
  6.     <meta http-equiv="content-type" content="text/html;charset=utf-8">
  7.     <meta http-equiv="Content-Language" content="en">
  8.     <title>TidBITS : iPhoto 4: The Potential Remains</title>
  9.  
  10.     <meta name="title" content="TidBITS : iPhoto 4: The Potential Remains">
  11.     <meta name="description" content="TidBITS is a free email and Web publication covering the Macintosh Internet community.">
  12.     <link rel="image_src" href="/images/tblogo9.gif" />
  13.     <meta name="keywords" content="Apple, Mac, Macintosh, Mac OS, Mac OS X, newsletter, Internet, analysis, reviews, technology, news, TidBITS, TidBITS Talk, Engst">
  14.     <link rel="Help" href="http://www.tidbits.com/about/about-tidbits.html" title="About TidBITS">
  15.     <link rel="Search" href="http://www.tidbits.com/search/" title="Search All TidBITS Content">
  16.     <link rel="Author" href="http://www.tidbits.com/about/contact-info.html" title="Contact Information">
  17.     <link rel="Contents" href="tb-issues/" title="TidBITS Issue Archive">
  18.     <link rel="alternate" type="application/rss+xml" href="http://db.tidbits.com/feeds/tidbits.rss" title="TidBITS Full Text Feed">
  19.     <link rel="alternate" type="application/rss+xml" href="http://db.tidbits.com/commentfeeds/firehose.xml" title="TidBITS Full Comments Feed">
  20.  
  21.     <link rel="stylesheet" href="/tidbits_2010_001.css" type="text/css">
  22.     <LINK rel="stylesheet" type="text/css" media="print" href="/tb-new-print.css">
  23.     <script src="/javascript/tb.js" type="text/javascript"></script>
  24.     <meta name="viewport" content="width:940">
  25.     <script type='text/javascript' src='http://db.tidbits.com/ads/delivery/spcjs.php?id=2'></script>
  26.     <script src="/javascript/prototype.js" type="text/javascript"></script>
  27. <script src="/javascript/scriptaculous.js" type="text/javascript"></script>
  28. <script src="/js-global/FancyZoom.js" type="text/javascript"></script>
  29. <script src="/js-global/FancyZoomHTML.js" type="text/javascript"></script>
  30. <script type="text/javascript"  src="http://api.recaptcha.net/js/recaptcha_ajax.js"></script>
  31.  
  32. </head>
  33. <body onLoad="setupZoom()">
  34. <!-- popup query -->
  35. <div id="big_ole_background" style="display:none"> </div>
  36. <div id="tipbits_enclosure_preview" style="display:none">
  37. <div class="tearoffbox_wide_container">
  38. <div class="tearoffbox_wide_tips">
  39.  
  40. <div class="tip_display">
  41. <div class="preview">
  42. <h6><span id="p_tips_title"></span></h6>
  43. <p id="p_tips_text"></p>
  44. <p>Visit <a href="javascript:void(0)" id="p_url"><span id="p_label"></span></a></p>
  45. <p class="credit">Submitted by <span id="p_reader"></span></p>
  46. <p><input type="submit" value="Back" name="preview_tip" onClick="preview_box('ts','tipbits_enclosure_preview'); return false;"></p>
  47. </div>
  48. </div>
  49. <div class="tearoffbox_wide_bottom_tips">
  50. </div>
  51.  
  52. </div><!-- end tearoffbox_wide_tips -->
  53. </div><!-- end tearoffbox_wide_container for tips-->
  54. <!-- end tearoff box wide -->
  55. </div><!-- end enclosure -->
  56.  
  57. <div class="popup_box_with_captcha" id="ts" style="display:none">
  58.     <div id="popup_box_thanks" style="display:none" onClick="close_popup_thanks('popup_box_thanks', 'ts')"><br>Thanks for submitting your tip! All submissions are moderated by an editor before appearing online. We've reset the form so you can enter another tip. Or you can close the tip submission box.    <div class="x_close" id="thanks_upper_right"><a href="javascript:void(0)" onmousedown="close_popup_thanks('popup_box_thanks', 'ts'); return true;">Close</a></div></div>
  59.     <div class="tip_box_format">
  60.     <div id="ts_innards" onClick="close_popup_thanks('popup_box_thanks', 'ts')">
  61.         <div class="tip_box_head">TipBITS Submission</div>
  62.         <div class="tip_box_form">        
  63.                 
  64.             <div class="tbf_row" id="ts_message_box" style="display:none">
  65.                 <div class="tbf_wide"><div class="tbf_alert" id="ts_top_message"></div></div>
  66.             </div>
  67.             <div class="spacer"></div>
  68.  
  69.             <form action="foobar.cgi" method="get" name="submit_tip">
  70.  
  71.             <div class="tbf_row"><div class="tbf_wide_extra_top not_bold">Please submit only technical tips that will help other TidBITS readers better use their Macs, iPhones, and related software and hardware. All product announcements should be sent to <a href="mailto:releases@tidbits.com">releases@tidbits.com</a>.</div></div>
  72.             <div class="spacer"></div>
  73.             <div class="tbf_row">
  74.                 <div class="tbf_left">Tip title<span class="required_field">*</span></div><div class="tbf_right"><input type="text" value="" id="tip_title_id" name="tip_title" tabindex="1"></div>
  75.             </div>
  76.             <div class="spacer"></div>
  77.             <div class="tbf_row">
  78.                 <div class="tbf_left">Your tip<span class="required_field">*</span></div><div class="tbf_right"><textarea name="tip_text" rows="3" cols="40" tabindex="2"></textarea></div>
  79.             </div>
  80.             <div class="spacer"></div>
  81.             <div class="tbf_row">
  82.                 <div class="tbf_left">URL</div><div class="tbf_right"><input type="text" value="" name="tip_link_url" tabindex="3"><span class="tip_description"><br>Enter the URL to a Web page that supports your tip.</span></div>
  83.             </div>
  84.             <div class="spacer"></div>
  85.             <div class="tbf_row">
  86.                 <div class="tbf_left">Linked text</div><div class="tbf_right"><input type="text" value="" name="tip_link_label" tabindex="4"><span class="tip_description"><br>Enter the name of the page linked above.</span></div>
  87.             </div>
  88.             <div class="spacer"></div>
  89.             <div class="tbf_row">
  90.                 <div class="tbf_left">Your name<span class="required_field">*</span></div><div class="tbf_right"><input type="text" value="" name="tip_reader_name" tabindex="5"></div>
  91.             </div>
  92.             <div class="spacer"></div>
  93.             <div class="tbf_row">
  94.                 <div class="tbf_left">Your email<span class="required_field">*</span></div><div class="tbf_right"><input type="text" value="" name="tip_reader_email" tabindex="6"></div>
  95.             </div>
  96.             <div class="spacer"></div>
  97.             <div class="spacer"></div>
  98.                 <div class="tbf_wide"><span class="fine_print"><span class="required_field">* indicates required fields</span></span></div>
  99.             <div class="spacer"></div>
  100.             <div class="tbf_row">
  101.                 <div class="tbf_wide_extra_top"><span class="fine_print">To help us avoid automated posts and spam, please enter the words below.</span></div>
  102.             </div>
  103.             <div class="spacer"></div>
  104.             <div class="tbf_row">
  105.                 <div class="tbf_wide"><div id="ts_recaptcha"></div></div>
  106.             </div>
  107.             <div class="spacer"></div>
  108.             <div class="tbf_row">
  109.                 <div class="tbf_wide"><input type="submit" value="Preview Your Tip" name="preview_tip" onClick="fill_preview('tipbits_enclosure_preview', 'ts', this.form); return false;" tabindex="7"> <input type="submit" value="Send Us Your Tip!" name="submit_this_tip" onClick="handle_tip_submission('ts', '', this.form, 'tip'); return false;" tabindex="8"></div>
  110.             </div>
  111.             <div class="spacer"></div>
  112.             <div class="tbf_row">
  113.                 <div class="tbf_wide"><span class="fine_print">When you submit a tip, you give us permission to use it. Read <a href="javascript:void(0)" onClick="generic_show_hide('tip_terms')">our terms</a> for more details. All submissions are reviewed before publication.</span></div>
  114.             </div>
  115.             
  116.             <div class="tbf_row" id="tip_terms" style="display: none">
  117.                 <div class="tbf_wide"><span class="fine_print">Our terms: By submitting a tip, you agree to assign TidBITS Publishing Inc., a non-exclusive, worldwide, perpetual license to reproduce, publish, and distribute your tip in connection with the TidBITS Web site and associated products in any media. You agree that you created the content you submitted, and that you have the right to assign us this license. You give us permission to use your name, but your email address won't be publicly displayed or shared. We review all submissions before publication, and reserve the right to select which submissions we feel are appropriate for our readers and to edit those we publish.</span></div>
  118.             </div>
  119.             <div class="spacer"></div>
  120.             </form>
  121.         </div><!-- end tip_box_form -->
  122.     </div><!-- end tip box innards -->
  123.     </div><!-- end tip box format -->
  124.     
  125.     <div class="x_close" id="ts_upper_right"><a href="javascript:void(0)" onmousedown="HidePopupContent('ts', 'ts', ''); return true;">Close</a></div>
  126.     
  127. </div><!-- end tip_submit box-->
  128.  
  129. <div class="popup_box_with_captcha" id="article_reference" style="display:none"><div class="article_ref_format"><textarea style="width:350px; height:100px;" name="article_ref" id="article_ref_box"></textarea></div>    <div class="x_close" id="article_reference_upper_right"><a href="javascript:void(0)" onmousedown="HidePopupContent('article_reference', 'article_reference', ''); return true;">Close</a></div>
  130. </div>
  131.  
  132. <div class="popup_box_with_captcha" id="comm" style="display:none">
  133.     <div class="tip_box_format">
  134.     <div id="comment_thanks" style="display:none" onClick="close_popup_thanks('comment_thanks', 'comm')"><br>Thanks for submitting a comment! Please check your email for a link that, when clicked, will verify that you're a real person and cause your comment to appear immediately. <div class="x_close" id="comment_upper_right"><a href="javascript:void(0)" onmousedown="close_popup_thanks('comment_thanks', 'comm'); return true;">Close</a></div></div>
  135.     <div id="comm_innards" onClick="close_popup_thanks('comment_thanks', 'comm')">
  136.         <div class="tip_box_head" id="comm_headline">Post a Comment</div>
  137.         <div class="tip_box_form">        
  138.                 
  139.             <div class="tbf_row" id="comm_message_box" style="display:none">
  140.                 <div class="tbf_wide"><div class="tbf_alert" id="comm_top_message"></div></div>
  141.             </div>
  142.             <div class="spacer"></div>
  143.  
  144.             <form action="foobar.cgi" method="get" name="post_comment" id="post_comment">
  145.             <input type="hidden" name="comment_nest" value=''>
  146.             <input type="hidden" name="comment_id" value=''>
  147.             <input type="hidden" name="article_id" value='6167'>
  148.             <input type="hidden" name="edit" value=''>
  149.             <div class="tbf_row">
  150.                 <div class="tbf_left">In reply to</div>
  151.                 <div class="tbf_right">
  152.                     <div id="cb_quoted_row">
  153.                         <div class='cb_open_quote'>“</div>
  154.                         <div id="cb_quoted"></div>
  155.                         <div class='cb_close_quote'>”</div>
  156.                     </div>
  157.                     <div class="spacer"></div>
  158.                 </div>
  159.             </div>
  160.             <div class="spacer"></div>
  161.  
  162.             <div class="tbf_row">
  163.                 <div class="tbf_left" style="padding-top:0">Your comment</div>
  164.                 <div class="tbf_right"><textarea tabindex="1" name="cb_item_add" id="cb_item_add" rows="4" cols="50" onKeyDown="count_insert('cb_item_add','cb_char_count')"></textarea><br><div class="cb_char_count" id="cb_add_count">Remaining characters: <span id="cb_char_count">0</span></div></div>
  165.             </div>
  166.             <div class="spacer"></div>            
  167.  
  168.             <div class="tbf_row">
  169.                 <div class="tbf_left">Your name</div><div class="tbf_right" style="margin-top:8px"><input tabindex="2" type="text" value="" name="cb_add_name" id="cb_add_name" style="margin-top: -4px"></div>
  170.             </div>
  171.             <div class="spacer"></div>
  172.             
  173.             <div class="tbf_row">
  174.                 <div class="tbf_left">Your email</div><div class="tbf_right"><input tabindex="3" type="text" name="cb_add_email" id="cb_add_email"></div>
  175.             </div>
  176.             <div class="spacer"></div>
  177.             
  178.             <div class="tbf_row">
  179.                 <div class="tbf_left"> </div><div class="tbf_right"><input id="comm_post_comment" tabindex="4" type="submit" value="Post Comment" name="submit_this_comment" style="width:100px; float:right" onClick="cb_post_submit(); return false;"></div>
  180.             </div>
  181.             <div class="spacer"></div>
  182.             
  183.             <div class="tbf_row" id="comment_terms">
  184.                 <div class="tbf_wide"><span class="fine_print">Our terms: We reserve the right to edit or delete any comment, so please post thoughtfully. We use your email address <i>only</i> to send you a one-time verification message confirming that you posted this comment. We also store your address to allow you to verify using other Web browsers in the future. For more info, see our <a href="http://db.tidbits.com/privacy.html">privacy policy</a>.</span></div>
  185.             </div>
  186.             <div class="spacer"></div>
  187.  
  188.             </form>
  189.         </div><!-- end comm_form -->
  190.     </div><!-- end comm box innards -->
  191.     </div><!-- end comm box format -->
  192.     
  193.     <div class="x_close" id="comm_upper_right"><a href="javascript:void(0)" onmousedown="HidePopupContent('comm', 'comm', ''); return true;">Close</a></div>
  194.     
  195. </div><!-- end comm_submit box-->
  196.  
  197.  
  198. <!-- start mainbody -->
  199. <div id="mainbody">
  200.  
  201. <!-- start header -->
  202. <div id="header">
  203.  
  204.  
  205.  
  206.     <div id="tblogo">
  207.     <a href="/"><img src="/images/tblogo20_01.gif" alt="TidBITS: Apple News for the Rest of Us" width="177" height="84" border="0"></a>
  208.  
  209.     </div><!-- end tblogo -->
  210.  
  211.  
  212. <!-- leaderboard ad -->
  213. <div id="top_banner">
  214. <script type='text/javascript'><!--// <![CDATA[
  215.     OA_show(3);
  216. // ]]> --></script><noscript><a target='_blank' href='http://db.tidbits.com/ads/delivery/ck.php?n=TBe5f7021'><img border='0' alt='' src='http://db.tidbits.com/ads/delivery/avw.php?zoneid=3&n=TBe5f7021'></a></noscript>
  217. </div><!-- end top_banner style -->
  218. <!-- end leaderboard ad -->
  219.  
  220.  
  221. </div><!-- end header  -->
  222.  
  223.  
  224. <!-- start content_container -->
  225. <div id="content_container">
  226.  
  227.  
  228. <!-- begin leftcolumn -->
  229. <div id="leftcolumn">
  230.  
  231. <!-- begin leftnav /left navigation -->
  232. <div>
  233.     <ul class="leftnav">
  234.         <!-- start search -->
  235.         <li class="topcorner">
  236.             <form action="http://db.tidbits.com" method="POST" name="search_form"><input type="hidden" name="advanced_search" value=''><input type="text" name="search_text" size="8" maxlength="70" value="Search" onFocus="this.value=''" onBlur="if (this.value == '') { this.value = 'Search'; }"> <span style="margin: 0 5px 0 5px; vertical-align: -2px"><span style="vertical-align: -2px"><input type="image" name="submit_search" src="/images/go_search_button.gif"></span>  <img src="/images/adv_search_button.gif" title="Click for Advanced Search" onClick="var f = document.search_form; f.search_text.value =''; f.advanced_search.value = '1'; f.submit();"></span></form>
  237.         </li>
  238.     </ul>
  239. </div>
  240. <!-- end search -->
  241.  
  242. <!-- Get TidBITS box (temp) -->
  243. <div>
  244.     <ul class="leftnav">
  245.         <li class="gettb"><strong>Get TidBITS via...</strong></li>
  246.     
  247.         <li><a href="http://www.tidbits.com/list" title="Subscribe via email" class="gettb">Email <img src="/images/gettb_button_email.gif" width="12" height="12" border="0" class="nav_img" alt="Email subscription options"></a></li>
  248.         <li><a href="/feeds/tidbits.rss" title="Subscribe via RSS" class="gettb">RSS <img src="/images/feed-icon-12x12.gif" width="12" height="12" border="0" class="nav_img" alt="Subscribe via RSS"></a></li>
  249.         <li><a href="http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=276986548" title="Subscribe to the podcast" class="gettb">Podcast <img src="/images/feed-icon-12x12_podcast.gif" width="12" height="12" border="0" class="nav_img" alt="Subscribe to the postcast"></a></li>
  250.         <li><a href="http://www.twitter.com/TidBITS" title="Get Article Updates via Twitter" class="gettb">Twitter <img src="/images/feed_icon_12x12_twitter.png" width="12" height="12" border="0" class="nav_img" alt="Get Article Updates via Twitter"></a></li>
  251.         <li><a href="http://www.facebook.com/pages/TidBITS/195314925519" title="Go to the TidBITS Page at Facebook" class="gettb">Facebook <img src="/images/feed_icon_12x12_facebook.gif" width="12" height="12" border="0" class="nav_img" alt="Go to the TidBITS Page at Facebook"></a></li>
  252.     </ul>
  253. </div>
  254. <!-- end Get TidBITS box -->
  255.     
  256.     <ul class="leftnav">
  257.         <li><a href="/" class="tabhead">TidBITS Home</a></li>
  258.  
  259.         <li><a href="javascript:void(0)" title="Sections" class="tabhead" onClick="return showhide('articleslist')">Sections <span id="articleslist_triangle"><img src="/images/nav_triangle_open.gif" width="9" height="9" border="0" class="navtriangle" id="articleslist_tri_image" alt="Click to show or hide the contents of this section."></span></a></li>
  260.     
  261.     
  262.     </ul>
  263.  
  264. <div id="articleslist" style="display: none"><ul class="leftnav"><li><a href="/section/business" >Business Apps</a></li>
  265. <li><a href="/section/entertainment" >Entertainment</a></li>
  266. <li><a href="/section/links" >External Links</a></li>
  267. <li><a href="/section/home" >Home Macs</a></li>
  268. <li><a href="/section/inside" >Inside TidBITS</a></li>
  269. <li><a href="/section/iphone-ipad-ipod" >iPhone iPad iPod</a></li>
  270. <li><a href="/section/fun" >Just for Fun</a></li>
  271. <li><a href="/section/macs" >Macs & Mac OS X</a></li>
  272. <li><a href="/section/creative" >Media Creation</a></li>
  273. <li><a href="/section/net" >Networking</a></li>
  274. <li><a href="/section/opinion" >Opinion</a></li>
  275. <li><a href="/section/support" >Problem Solving</a></li>
  276. <li><a href="/section/security" >Safe Computing</a></li>
  277. <li><a href="/section/tech" >Tech News</a></li>
  278. <li><a href="/section/watchlist" >Watchlist</a></li>
  279. </ul></div>
  280.  
  281. <div>
  282. <ul class="leftnav">
  283.     <li><a href="javascript:void(0)" onClick="return showhide('stafflist')" title="Staff" class="tabhead">Staff <span id="stafflist_triangle"><img src="/images/nav_triangle_closed.gif" width="9" height="9" border="0" class="navtriangle" id="stafflist_tri_image" alt="Click to show or hide the contents of this section."></span></a></li>
  284. </ul>
  285. </div>
  286.  
  287. <div id="stafflist" style="display:block"><ul class="leftnav"><li><a href="/author/Adam+C+Engst" title="Adam Engst, Publisher">Adam Engst</a></li>
  288.     <li><a href="/author/Tonya+Engst" title="Tonya Engst, Editor in Chief">Tonya Engst</a></li>
  289.     <li><a href="/author/Jeff+Carlson" title="Jeff Carlson, Managing Editor">Jeff Carlson</a></li>
  290.     <li><a href="/author/Joe+Kissell" title="Joe Kissell, Senior Editor">Joe Kissell</a></li>
  291.     <li><a href="/author/Glenn+Fleishman" title="Glenn Fleishman, Contributing Editor">Glenn Fleishman</a></li>
  292.     <li><a href="/author/Mark+Anbinder" title="Mark Anbinder, Contributing Editor">Mark H. Anbinder</a></li>
  293.     <li><a href="/author/Matt+Neuburg" title="Matt Neuburg, Contributing Editor">Matt Neuburg</a></li>
  294.     <li><a href="/author/Rich+Mogull" title="Rich Mogull, Contributing Editor">Rich Mogull</a></li>
  295.     <li><a href="/author/Lex+Friedman" title="Lex Friedman, Staff Writer">Lex Friedman</a></li>
  296.     </ul>
  297.     </div>
  298.  
  299. <div>
  300. <ul class="leftnav">
  301.  
  302.     <li><a href="javascript:void(0)" title="Issues" class="tabhead" onClick="return showhide('issuelist')">Weekly Issues <span id="issuelist_triangle"><img src="/images/nav_triangle_closed.gif" width="9" height="9" border="0" class="navtriangle" id="issuelist_tri_image" alt="Click to show or hide the contents of this section."></span></a></li>
  303. </ul>
  304. </div>
  305.  
  306. <div id="issuelist" style="display:none"><ul class="leftnav"><li><div class="special"><form method="post" action="noaction.cgi" onsubmit="return false" id="issue_search_form" name="issue_search_form">Issue # <input type="text" onkeydown="if (event.keyCode == 13) { redirect_issue(this.form); }" id="issue_searchvalue" name="issue_number" style="width:35px; height: 10px"> <input onclick="redirect_issue(this.form)" type="image" name="submit_search" src="/images/go_search_button_blk.gif"></form></div></li><li><A HREF="/issue/722" >#722, 22 Mar 04</A></li>
  307. <li><A HREF="/issue/721" >#721, 15 Mar 04</A></li>
  308. <li><A HREF="/issue/720" >#720, 08 Mar 04</A></li>
  309. <li><A HREF="/issue/719" >#719, 01 Mar 04</A></li>
  310. <li><A HREF="/issue/718" >#718, 23 Feb 04</A></li>
  311. <li><A HREF="/issue/717" >#717, 16 Feb 04</A></li>
  312. <li><A HREF="/issue/716" >#716, 09 Feb 04</A></li>
  313. <li><A HREF="/issue/715" >#715, 02 Feb 04</A></li>
  314. <li><A HREF="/issue/714" >#714, 26 Jan 04</A></li>
  315.  
  316.  
  317. <li><a href="/backissues">Back Issues</a></li></ul></div>
  318.  
  319.  
  320. <div>
  321. <ul class="leftnav">
  322.  
  323.     <li><a href="/tidbitstalk" title="TidBITS Talk" class="tabhead">TidBITS Talk</a></li>
  324. </ul>
  325. </div>
  326.  
  327.  
  328.  
  329. <div>    
  330. <ul class="leftnav">
  331.     <li><a href="javascript:void(0)" onClick="return showhide('abouttidbits')" title="About TidBITS" class="tabhead">About TidBITS <span id="abouttidbits_triangle"><img src="/images/nav_triangle_closed.gif" width="9" height="9" border="0" class="navtriangle" id="abouttidbits_tri_image" alt="Click to show or hide the contents of this section."></span></a></li>
  332. </ul>
  333. </div>
  334.  
  335. <div id="abouttidbits" style="display:none">
  336. <ul class="leftnav"><li><a href="/about.html" title="About TidBITS">About Us</a></li><li><a href="/account.html" title="Account Help">Account Help</a></li><li><a href="/advertising.html" title="Advertise with TidBITS!">Advertise</a></li><li><a href="/contact.html" title="Contact Info">Contact</a></li><li><a href="/copyright.html" title="Copyright Terms">Copyright</a></li>
  337. </ul>
  338. </div>
  339.  
  340. <div>
  341. <ul class="leftnav">
  342. <li class="bottom"> </li>
  343. </ul>
  344. </div>
  345. <!-- end leftnav/left navigation -->
  346.  
  347. <!-- making sure nav elements hide/show before page loads --><script type="text/javascript"><!--
  348.     showhide('articleslist','show'); 
  349. // --></script>
  350.  
  351. <!-- begin sponsor_sidebox -->
  352.  
  353. <div class="sponsor_sidebox">
  354.  
  355. <ul>
  356.  
  357. <li><a href="http://nuance.com/dragon/mac">Nuance</a></li>
  358.  
  359. <li><a href="http://www.thedatarescuecenter.com/">The Data Rescue Center</a></li>
  360.  
  361. <li><a href="http://www.webcrossing.com/">Web Crossing</a></li>
  362.  
  363. <li><a href="http://www.usefulfruit.com/tb">Useful Fruit</a></li>
  364.  
  365. <li><a href="http://macte.ch/conf_tidbits">MacTech Conference</a></li>
  366.  
  367. <li><a href="http://www.tidbits.com/about/support/contributors.html">Readers Like You!</a></li>
  368.  
  369. <li><a href="http://markspace.com/bits?source=tidbits">Mark/Space</a></li>
  370.  
  371. <li><a href="http://crashplan.com/ref/tidbits.html">CrashPlan</a></li>
  372.  
  373. <li><a href="http://www.smithmicro.com/tidbits">Smith Micro</a></li>
  374.  
  375. <li><a href="http://www.smilesoftware.com/">Smile</a></li>
  376.  
  377. <li><a href="http://www.econtechnologies.com/tb">Econ Technologies</a></li>
  378.  
  379. </ul><div class='sponsor_sidebox_bottom'> </div>
  380. </div>
  381.  
  382.  
  383. <!-- end sponsor_sidebox -->
  384.  
  385.  
  386. </div> <!-- end leftcolumn div -->
  387.  
  388. <!-- end left column -->
  389.  
  390.  
  391. <!-- begin centercolumn_border -->
  392.  
  393. <div id="centercolumn_border">
  394.  
  395. <div class="center_top">Thoughtful, detailed coverage of the Mac, iPhone, and iPad, plus the best-selling <a href="http://www.takecontrolbooks.com/?pt=TB-TAGLINE" style="color:yellow">Take Control</a> ebooks.</div>
  396.  
  397. <!-- begin centercolumn -->
  398. <div id="centercolumn">
  399.  
  400.  
  401.  
  402. <!-- begin rightcolumn_container -->
  403. <div id="rightcolumn_container">
  404.  
  405. <!-- begin rightcolumn -->
  406.     <!-- rightcolumn is embedded within centercolumn so featured text wraps around it -->
  407.     <div id="rightcolumn">
  408.  
  409. <p class="top"> </p>
  410.  
  411.  
  412.  
  413.  
  414.  
  415.  
  416.  
  417.  
  418.  
  419.  
  420. <!-- Watchlist items -->
  421. <div class="tearoffbox_wide_container">
  422. <div class="tearoffbox_wide_watchlist">
  423. <p class="tearoffbox_wide_top_watchlist"> </p>
  424.  
  425. <h6><a href="/section/watchlist">TidBITS Watchlist</a></h6>
  426. <ul>
  427.  
  428. <LI><a href="/article/11622">DEVONthink and DEVONnote 2.0.4</a></LI>
  429.  
  430. <LI><a href="/article/11620">Security Update 2010-006</a></LI>
  431.  
  432. <LI><a href="/article/11619">TinkerTool 4.2</a></LI>
  433.  
  434. <LI><a href="/article/11618">Mailplane 2.2</a></LI>
  435.  
  436. <LI><a href="/article/11617">Pro Applications Update 2010-02</a></LI>
  437.  
  438. <LI><a href="/article/11611">Dialectic 1.7</a></LI>
  439.  
  440. <LI><a href="/article/11604">Transmit 4.1.1</a></LI>
  441.  
  442. <LI><a href="/article/11603">MarsEdit 3.1.1</a></LI>
  443.  
  444. <LI><a href="/article/11600">Savescreenie 2.0</a></LI>
  445.  
  446. <LI><a href="/article/11598">1Password 3.4.1</a></LI>
  447.  
  448. </ul>
  449.  
  450. <div class="tearoffbox_wide_bottom_watchlist"> </div>
  451.  
  452. </div><!-- end tearoffbox_wide -->
  453.  
  454. </div><!-- end tearoffbox_wide_container for watchlist items -->
  455.  
  456. <!-- begin tearoff box wide -->
  457.  
  458. <div class="tearoffbox_wide_container">
  459. <div class="tearoffbox_wide_tips">
  460.  
  461. <div class="tip_display">
  462. <div class="tips_sponsor_logo">
  463.  
  464. </div>
  465. <h6>Move the Dock Quickly</h6>
  466. <p><p>You may find it convenient to move the position of the Dock when working in certain programs or with certain files. Rather than choosing a different position from the Dock preferences pane or using a submenu in the Apple menu's Dock submenu, you can move your Dock to a different screen edge merely by Shift-dragging the separator that divides the application and document sections.</p></p>
  467. <p>Visit <a href="http://blog.pluckytree.org/2008/12/20-leopard-tricks-and-some-oldies.html">plucky tree</a></p>
  468. </div>
  469.  
  470. <div class="tearoffbox_wide_bottom_tips">
  471. <div style="padding-bottom:35px"><div class="tip_display" style="float:left"><p><br><a href="/tipbits/131">Link to this tip</a></p></div><div class="tip_display" style="float:right; width:150px">
  472. <p class="credit">Submitted by<br>cricket</p>
  473. </div></div>
  474.  
  475. </div>
  476.  
  477. <div class="tearoffbox_wide_tips_submit">
  478. <form method="post" onsubmit="return false" id="tipbits_form" name="tipbits_form" action="noaction.cgi"><p><a href="javascript:void(0)" onmousedown="ShowTipBox('ts','ts_recaptcha', 50, 'tip_title_id'); return true;">Share your own tip!</a> | <a href="javascript:void(0)" onClick="generic_show_hide('search_tipbits'); document.tipbits_form.tipbits_searchvalue.focus()">Search TipBITS</a></p>
  479. <p style="display:none" id="search_tipbits"><input type="text" onkeydown="if (event.keyCode == 13) { search_tipbits('tipbits_searchvalue'); }" id="tipbits_searchvalue" name="tipbits_searchvalue"> <a href="javascript:void(0)" onClick="search_tipbits('tipbits_searchvalue')">Search</a></p></form>
  480. </div>
  481. <div class="tearoffbox_wide_bottom_tips_submit">
  482.  
  483. </div>
  484.  
  485. </div><!-- end tearoffbox_wide_tips -->
  486. </div><!-- end tearoffbox_wide_container for tips-->
  487. <!-- end tearoff box wide -->
  488.  
  489.  
  490.  
  491. <!-- begin 300 x 250 ad -->
  492.  
  493. <div id="content_ad_square">
  494. <script type='text/javascript'><!--// <![CDATA[
  495.     OA_show(5);
  496. // ]]> --></script><noscript><a target='_blank' href='http://db.tidbits.com/ads/delivery/ck.php?n=TB7671f69'><img border='0' alt='' src='http://db.tidbits.com/ads/delivery/avw.php?zoneid=5&n=TB7671f69'></a></noscript>
  497. </div><!-- end 300 x 250 ad -->
  498.  
  499. <!-- TBTalk items -->
  500. <div class="tearoffbox_wide_container">
  501.  
  502. <div class="tearoffbox_wide_p">
  503. <p class="tearoffbox_wide_top_p"> </p>
  504.  
  505. <h5>Recent TidBITS Talk Discussions</h5>
  506. <ul>
  507.  
  508. <LI><a href="http://emperor.tidbits.com/webx?50@@.3cf95241">Alternatives to MobileMe for syncing calendars between iPad/Mac</a> (1 message)</LI>
  509.  
  510. <LI><a href="http://emperor.tidbits.com/webx?50@@.3cf94dbb">Free anti-virus for the Mac</a> (20 messages)</LI>
  511.  
  512. <LI><a href="http://emperor.tidbits.com/webx?50@@.3cf934e6">iTunes 10 syncing iPod Touch 4.1</a> (2 messages)</LI>
  513.  
  514. <LI><a href="http://emperor.tidbits.com/webx?50@@.3cf92a22">Thoughts about Ping</a> (16 messages)</LI>
  515.  
  516. </ul>
  517.  
  518. <div class="tearoffbox_wide_bottom_p"> </div>
  519.  
  520. </div><!-- end tearoffbox_wide -->
  521.  
  522. </div><!-- end tearoffbox_wide_container for TBtalk items -->
  523.  
  524. <!-- start takecontrol_ad -->
  525. <script type='text/javascript'><!--// <![CDATA[
  526.     OA_show(7);
  527. // ]]> --></script><noscript><a target='_blank' href='http://db.tidbits.com/ads/delivery/ck.php?n=TBe46d56f'><img border='0' alt='' src='http://db.tidbits.com/ads/delivery/avw.php?zoneid=7&n=TBe46d56f'></a></noscript><!-- end takecontrol_ad -->
  528.  
  529. <!-- begin tearoff box 2 -->
  530.  
  531. <div class="tearoffbox_wide_container">
  532.  
  533. <div class="tearoffbox_wide_p">
  534. <p class="tearoffbox_wide_top_p"> </p>
  535.  
  536. <h5>Related Articles</h5>
  537. <ul>
  538. <li><a href="/article/8100">iPhoto 5: New Features Abound, Limitations Remain</a> (09 May 05)</li>
  539.  
  540. </ul>
  541.  
  542. <p class="tearoffbox_wide_bottom_p"> </p>
  543.  
  544. </div><!-- end tearoffbox_wide -->
  545. </div><!-- end tearoffbox_wide_container -->
  546.  
  547. <!-- end tearoff box 2 -->
  548.  
  549.  
  550. <!-- begin tearoff box for series -->
  551.  
  552. <div class="tearoffbox_wide_container">
  553.  
  554. <div class="tearoffbox_wide_p">
  555. <p class="tearoffbox_wide_top_p"> </p>
  556.  
  557. <h5>Other articles in the series <a href="/series/1236">All About iPhoto</a></h5>
  558. <ul>
  559. <li><a href="/article/8173">iPhoto 5.0.3 Fixes Bugs</a> (18 Jul 05)</li>
  560. <li><a href="/article/8106">iPhoto 5.0.2 Freeze on Launch in Tiger</a> (16 May 05)</li>
  561. <li><a href="/article/8100">iPhoto 5: New Features Abound, Limitations Remain</a> (09 May 05)</li>
  562. <li><a href="/article/7763">iPhoto 4.0.3 Released</a> (09 Aug 04)</li>
  563. <li><a href="/article/7603">iPhoto 4.0.1 Fixes Bugs</a> (29 Mar 04)</li>
  564. <li><a href="/article/7190">Adam's iPhoto 2 Visual QuickStart Guide Available</a> (19 May 03)</li>
  565. <li><a href="/article/7060">iPhoto 2 Steps into the Frame</a> (03 Feb 03)</li>
  566. <li><a href="/article/6910">iPhoto Power Techniques</a> (19 Aug 02)</li>
  567. <li><a href="/article/6857">iPhoto Book Now Available</a> (01 Jul 02)</li>
  568. <li><a href="/article/6820">Do More with iPhoto 1.1.1</a> (13 May 02)</li>
  569. <li><a href="/article/6683">iPhoto Joins the iFold</a> (07 Jan 02)</li>
  570.  
  571. </ul>
  572.  
  573. <p class="tearoffbox_wide_bottom_p"> </p>
  574.  
  575. </div><!-- end tearoffbox_wide -->
  576. </div><!-- end tearoffbox_wide_container -->
  577.  
  578. <!-- end tearoff box -->
  579.  
  580.  
  581.  
  582.  
  583. <!-- begin tearoff box 1 -->
  584.  
  585. <div class="tearoffbox_wide_container">
  586.  
  587. <div class="tearoffbox_wide">
  588. <p class="tearoffbox_wide_top"> </p>
  589.  
  590. <h5>Published in <a href="/issue/718">TidBITS 718</a>.<br><a href="http://www.tidbits.com/list">Subscribe</a> to our weekly email edition.</h5>
  591. <ul>
  592. <li><A HREF="/article/7548">Security Update 2004-02-23 Available</A></li>
  593. <li><A HREF="/article/7549">Interarchy 7.0 Adds Tabs, Improves Interface</A></li>
  594. <li><A HREF="/article/7550">iSight 1.0.2 Software Released</A></li>
  595. <li><A HREF="/article/7551">Apple Adds More RSS Syndication Feeds</A></li>
  596. <li><A HREF="/article/7552">Adam Interviewed on The User Group Report</A></li>
  597. <li><A HREF="/article/7553">Apple: Debt-Free and Flush with Cash</A></li>
  598. <li><A HREF="/article/7554">Austin Indie Bands Shared via iTunes</A></li>
  599. <li><A HREF="/article/7555">Solving AppleWorks Corruption Problems</A></li>
  600. <li><A HREF="/article/7557">Hot Topics in TidBITS Talk/23-Feb-04</A></li>
  601.  
  602. </ul>
  603.  
  604. <p class="tearoffbox_wide_bottom"> </p>
  605.  
  606. </div><!-- end tearoffbox_wide -->
  607. </div><!-- end tearoffbox_wide_container -->
  608.  
  609. <!-- end tearoff box 1 -->
  610.  
  611.  
  612.  
  613.  
  614.  
  615.  
  616.  
  617. <div id="rightcolumn_bottom">
  618.  
  619. </div>
  620.  
  621.     </div><!-- end rightcolumn -->
  622.  
  623.  
  624. </div><!-- end rightcolumn_container -->
  625.  
  626.  
  627.  
  628. <!-- featured articles -->
  629.  
  630. <div id="center_ajax_sub" class="instapaper_body">
  631.  
  632. <!-- google_ad_section_start -->
  633.  
  634.  
  635.  
  636.  
  637.  
  638.  
  639.  
  640.  
  641.  
  642.  
  643.  
  644.  
  645.  
  646.  
  647.  
  648.  
  649.  
  650.  
  651.  
  652.  
  653. <!-- issue, article, or series -->
  654.  
  655.     
  656.     
  657.     
  658.     
  659.     
  660.         
  661.     <!-- show article(s) -->
  662.     <div class="article"><a name="6167"></a>
  663.     
  664. <!-- comment initialization routine as needed -->
  665. <div class="popup_box_with_captcha" id="hc_6167" style="display: none">
  666.     <div class="tip_box_format">
  667.     <div id="hc_innards_alt_6167" style="display: none">
  668.             <div class="tbf_row">
  669.                 <div class="tbf_wide_80" id="hc_small_response_6167"></div><div class="x_close_row" id="hc_upper_right1_6167"><a href="javascript:void(0)" onmousedown="HidePopupContent('hc_6167', 'hc', '6167'); return true;">Close</a></div>
  670.  
  671.             </div>
  672.     </div>
  673.     <div id="hc_innards_6167">
  674.         <div class="tip_box_form">        
  675.             <form action="foobar.cgi" method="get" name="check_human_6167">
  676.             <div class="tbf_row">
  677.                 <div class="tbf_wide_80" id="hc_rc_6167">To help us avoid automated posts and misuse of our site, please enter the words below.</div><div class="x_close_row" id="hc_upper_right2_6167"><a href="javascript:void(0)" onmousedown="HidePopupContent('hc_6167', 'hc', '6167'); return true;">Close</a></div>
  678.  
  679.             </div>
  680.             <div class="spacer"></div>
  681.             <div class="tbf_row" id="hc_message_box_6167" style="display:none">
  682.                 <div class="tbf_wide"><div class="tbf_alert" id="hc_top_message_6167"></div></div>
  683.             </div>
  684.             <div class="spacer"></div>
  685.             <div class="tbf_row">
  686.                 <div class="tbf_wide"><div id="hc_recaptcha_6167"></div></div>
  687.             </div>
  688.             <div class="spacer"></div>
  689.             <div class="tbf_row">
  690.                 <div class="tbf_wide"><input type="submit" value="Submit" name="submit_this_tip" onClick="handle_tip_submission('hc', '6167', this.form, this.form.submit_type.value); return false;"><input name="calling_routine" type="hidden"><input type="hidden" name="getbits" value="7556"><input type="hidden" name="author_id"><input type="hidden" name="submit_type" value=""></div>
  691.             </div>
  692.             <div class="spacer"></div>
  693.             </form>
  694.         </div><!-- end tip_box_form -->
  695.     </div><!-- end hum box innards -->
  696.     </div><!-- end tip box format -->
  697. </div><!-- end tip_submit box-->
  698.  
  699.  
  700.  
  701.         
  702.         
  703.         <!-- specific article details here -->
  704.         
  705.         
  706.             
  707.         
  708.     
  709.         <article_link><script type="text/javascript">open_if_linked('')</script></article_link>
  710.         
  711.         <div class="featured_meta"><div class="meta_article">23 Feb 2004 | <a href="/article/7556?print_version=1">Print <span class="shift_up"><img src="/images/printer_icon.gif" alt="Printer-Friendly Version of This Article" border="0" width="9" height="10"></span></a></div></div>
  712.  
  713.         <H2>iPhoto 4: The Potential Remains</H2>
  714.  
  715.         <p class="byline">by <a href="/author/Adam%20C.%20Engst">Adam C. Engst</a> <a href="javascript:void(0)" onClick="document.check_human_6167.submit_type.value='email'; document.check_human_6167.author_id.value='6'; ShowTipBox('hc_6167', 'hc_recaptcha_6167')"><span class="shift_down"><img src="/images/gettb_button_email.gif" height="12" width="12" border="0" alt="Send Email to Author"></span></a></P>
  716.  
  717.         <!-- article text -->
  718.         
  719.         <div id="article_box_6167"><P>Let's not beat around the bush. iPhoto 4 is better than iPhoto 2 in almost every way, and its performance is so much improved that if you currently use iPhoto 2, you should immediately ante up $50 for iLife '04 or, if you've been hankering for one anyway, a new Mac. On the other hand, if you rely on other programs to import, organize, and edit your photos, iPhoto 4 doesn't offer enough new to warrant the cost of iLife '04 on its own.</P><P><<A HREF="http://www.apple.com/iphoto/">http://www.apple.com/iphoto/</A>></P><P><STRONG>What's New and Improved?</STRONG> The iPhoto engineers deserve credit for speeding up iPhoto to such a great extent that it's impossible to quantify the performance improvements. Scrolling through a large iPhoto library no longer produces the spinning pizza of death, switching between modes happens nearly instantly, resizing the window fluidly is actually possible, and basically everything else works at a totally acceptable speed. The only actions I've found poky are occasional slowdowns between drawing a pixelated image and the final smooth one (mostly with very large photos) and occasional odd delays when Control-clicking albums to edit them.</P><P>Rendezvous-based photo sharing is probably iPhoto 4's sexiest feature, since many people wish to share photos with other people on their local network (but not the Internet), and it indeed works well for enabling someone to view and copy your photos. However, photo sharing is read-only; the other person cannot edit your photos, change titles or keywords, or use your images to build a book. For those activities, the photo must be copied locally first.</P><P>Perhaps my favorite new feature in iPhoto is photo ratings - a 1 to 5 star rating system that mimics the one in iTunes. Although I can't imagine someone expending the effort of distinguishing between a really lousy picture (that was somehow good enough to avoid being deleted) with 1 star and a somewhat lousy picture with 2 star, the higher star ratings simplify separating out your favorite images from the many plebeian pictures that have mostly documentary value.</P><P>iPhoto 4's addition of smart albums makes photo ratings useful. A smart album, like a smart playlist in iTunes (sensing a trend here?) populates itself automatically with photos that match the criteria you set. So, you could easily create a smart album that selects your favorite photos (4 or 5 stars), or even your favorite vacation photos (4 or 5 stars for photos taken during specific date ranges or in specific film rolls). iPhoto 4 includes some built-in smart albums that collect photos taken in each of the last four years, over the last few months, and the last few imports.</P><P>Smart albums can construct themselves according to a number of criteria, but as much as they're cool and useful, they suffer from one major problem - the need for manually created metadata. When you import a CD, iTunes automatically looks up the CD's title, artist, track names, and more from the Gracenote CDDB; any smart playlists you create use that information, along with metadata that iTunes generates automatically, like play count and last played dates. The only metadata you must assign manually is rating, although you can edit a track's ID3 tags if you desire. In iPhoto, by contrast, you must enter manually almost all the metadata you'll use with a smart album, and people are notoriously bad about adding metadata.</P><P>Part of the reason I'm bullish about ratings is that they're easier to apply than other types of metadata, thanks to omnipresent keyboard shortcuts (Command-1 through Command-5). These and other keyboard shortcuts work even when you're viewing a slideshow in iPhoto 4, so you can rotate, delete, and rate photos while watching, and you can do it all from the keyboard if you don't want to display the new slideshow controls. (Ironically, iTunes lacks these keyboard shortcuts, and I find myself using utilities to rate songs from the keyboard because of that.) Speaking of slideshows, iPhoto 4 can finally use an entire iTunes playlist instead of repeating just a single song (a painfully obvious failing that persisted into iPhoto 2), and they also provide a choice of Keynote-inspired transitions between slides.</P><P>People pining for a selective import in iPhoto (like Apple's Image Capture utility provides) will still be disappointed, but in iPhoto 4 selective import would be welcome primarily for quick imports of only a few select images from a large memory card. In earlier versions, many people (myself included) avoided iPhoto's all-or-nothing import to ensure that each film roll contained only related images. iPhoto 4 lets you create new film rolls from selected photos, and you can also drag photos from one film roll to another. It's a great feature, since film rolls are in many ways iPhoto's best organizational feature.</P><P>Along with these major features, iPhoto offers a number of smaller, but no less welcome, changes. You can now edit the titles, comments, or dates of a set of photos simultaneously, which makes fixing improperly dated photos a breeze and definitely makes adding metadata easier. A new Sepia button gives photos that old-time look. A new Collage book theme looks attractive, and Apple can now deliver books and prints to addresses in Japan and according to the iLife product manager, in several European countries starting 18-Mar-04. .Mac members now have the choice of a number of new HomePage themes (though I'd like to see some more elegant designs), and even better, iPhoto can now replace a HomePage album, so you need not login to .Mac to make changes (although iPhoto re-uploads the entire set of photos rather than just the changed photos or titles).</P><P><<A HREF="http://www.apple.com/ilife/iphoto/books.html">http://www.apple.com/ilife/iphoto/books.html</A>></P><P><STRONG>What's Still Missing?</STRONG> All that sounds great, so what's my beef with iPhoto 4? As soon as I saw the very first version of iPhoto, I was impressed, because Apple clearly understood what a consumer-level photo management program needed to do. But as much as iPhoto covered the necessary ground on paper, the application itself continues to suffer from glaring holes that have been painfully obvious from day one. I'm undoubtedly more familiar with iPhoto than just about anyone, since I've actually tested every function in every version of the program while writing my iPhoto Visual QuickStart Guide books, but the complaints I'm about to list aren't just my pet peeves, they're also the concerns I've heard from hundreds of iPhoto users in email and at talks I've given.</P><P>(As an aside, for amusing evidence that even Apple understands the importance of at least some these features, iPhoto's Help until today contained a document called "What's new in iPhoto 3" (it currently retains that title, but the content has been updated for iPhoto 4). There was no external release of iPhoto 3, of course, so this document must have been a wish list or been left over from a version left for the future. You can read the original text in TidBITS Talk.)</P><P><<A HREF="http://db.tidbits.com/getbits.acgi?tlkmsg=20081">http://db.tidbits.com/getbits.acgi?tlkmsg=20081</A>></P><P>For many people, iPhoto 2's abysmal performance with thousands of photos required the creation of multiple iPhoto Library folders. Other people rely on multiple libraries to separate unrelated photos (work and personal pictures, for instance). iPhoto 2 provided only the most half-hearted capabilities for creating and switching among iPhoto Library folders. It was saved by a hidden Mac OS X shortcut: if you Command-Option-drag a file to any application on the Dock, that application will attempt to open the file, even if it's not that application's file. In iPhoto 2, if you Command-Option-dragged an iPhoto Library folder to iPhoto's icon, iPhoto would switch to that folder. Unfortunately, since the iPhoto team wasn't aware of this shortcut, they managed to break it in iPhoto 4. Now the best way to switch among iPhoto Library folders is via Brian Webster's free iPhoto Library Manager utility. Unfortunately, there's no easy way to merge iPhoto libraries; the best approach is probably to burn photos to a CD or DVD and import them (thus retaining keywords, which doesn't happen when copying photos via photo sharing) again from disc.</P><P><<A HREF="http://homepage.mac.com/bwebster/iphotolibrarymanager.html">http://homepage.mac.com/bwebster/ iphotolibrarymanager.html</A>></P><P>iPhoto Library Manager also provides a clumsy workaround for another glaring iPhoto 4 omission: the capability to share an iPhoto Library among multiple users of the same Mac. This points out a limitation in the concept of iPhoto 4's Rendezvous photo sharing as well. The problem is that for couples, photos are usually a shared resource to which either person can add titles, keywords, comments, or ratings. But iPhoto 4 doesn't make it easy for two people to work on the same set of photos from multiple accounts or multiple Macs. There are workarounds that involve external or network volumes (explained with detailed steps in "Take Control of Sharing Files in Panther") or changing permissions constantly (which is what iPhoto Library Manager does), but this should be built in to iPhoto. Apple is responsible for breaking everything apart for multiple users in Mac OS X; it's their responsibility to make sharing data between those users easy.</P><P><<A HREF="http://www.tidbits.com/takecontrol/panther/sharing.html">http://www.tidbits.com/takecontrol/panther/ sharing.html</A>></P><P>Perhaps the most troubling omission in iPhoto 4 is that it still provides no method of exporting metadata you create, which is yet another reason many people don't bother putting the effort in. Think about it - more so than any other data you create, you want your photos to last forever. They'll be even more important to you in 50 years than they are now, and you should be able to pass them along to your children or to institutional archives when you die. Ignoring the silly question of whether Apple will update iPhoto for the rest of time, the near term answer to this problem is an export capability that lets users retain any metadata they've applied.</P><P>Where should this metadata live? There's a specification called EXIF (Exchangeable Image File) that many digital cameras use to store metadata in the JPEG files they create. Perhaps there are technical concerns surrounding the use of EXIF data, but on the face of things, Apple could use it for storing titles, ratings, and more.</P><P><<A HREF="http://www.kodak.com/global/en/service/tib/tib4317.shtml">http://www.kodak.com/global/en/service/tib/ tib4317.shtml</A>></P><P>Smart albums are useful, but for many people who have become accustomed to hierarchical filing systems such as used by the Finder, iPhoto's lack of hierarchical albums is bedeviling. Sure, you can concoct a smart album to hold all your vacation photos, but you can't have a Vacation Photos album that contains sub-albums for each vacation. iPhoto has done a good job of mimicking iTunes; perhaps it should look at the Finder next.</P><P>There's one final omission made all the more egregious by comparison with the Finder. Perhaps the primary point of a graphical interface is direct manipulation of objects, yet iPhoto still refuses to allow direct naming of photos or film rolls, as you do with files and folders in the Finder or with songs in iTunes. Instead, you must select the item in question and then enter the name in the info pane. You can apply ratings directly, through a hierarchical contextual menu, but adding keywords and changing dates must also be done at arm's length from the actual target of the action.</P><P><STRONG>Development Sloppiness</STRONG> -- Apple fixed a number of bugs in iPhoto 2 that I ran across while writing about it, but they've managed to introduce an entirely new crop that you may find irritating. If you set the option to place most recent photos at top, creating or modifying film rolls reverses that setting until you open and close iPhoto's Preferences window. Control-clicking a photo in a separate image-editing window displays a contextual menu of editing commands, of which Sepia is always disabled. (Ironically, in iPhoto 2, Enhance was always disabled in that menu, though it works now.) If you duplicate a photo that you've edited in any way other than rotating (and sometimes even rotating), duplicates made of that photo do not get "copy" appended to their titles, making identification of the duplicates hard. You can delete photos from the Last Months and Last Rolls albums just as you would from the Photo Library, except for dragging to the Trash album, which works only from the Photo Library. And lastly, if you select any album, iPhoto shows you the amount of disk space the album takes up... except for the one album whose physical size on disk matters most: the Trash. (Work around this by selecting all the photos in the Trash album; the info pane then shows you the amount of disk space used by the selection.)</P><P>These aren't subtle bugs - I've found them merely by monkeying through iPhoto's interface while updating my iPhoto book, and I can't believe any of them would be hard to fix. Perhaps we'll see a 4.0.1 release that will fix these bugs, though I'm not holding my breath, since there was no 2.0.1 to fix the similarly obvious bugs in iPhoto 2. Looking forward to the next major release of iPhoto, I'm more than happy to do this with a feature-complete beta release so I can report the bugs directly to Apple for fixing rather than telling the world about them in the release version and attempting to come up with workarounds for my book.</P><P>In the end, I'm left frustrated by iPhoto because it constantly displays glimpses of greatness that are then promptly undercut by obviously missing features and boneheaded bugs. I expect better from Apple, and as I've done with the last two major releases of iPhoto, I'll hold out hope that a full year of development time will allow the iPhoto team to make great strides for iPhoto 5.</P><!-- iPhoto 4: The Potential Remains Adam C. Engst --></div>
  720.         
  721.  
  722.         <!-- end article text -->
  723.     
  724.         
  725.         <!-- PayBITS -->
  726.         
  727.  
  728.         
  729. <p> </p><div class="sponsorbox">
  730. <div class="sponsortext"><A HREF="http://macte.ch/conf_tidbits"><IMG SRC="http://db.tidbits.com/images/badges/mactech-twitter-icon-48x48.jpg" ALT="" HEIGHT="50" WIDTH="50" BORDER="0" ALIGN="left"></A>MacTech Conference, for IT Pros and Apple developers, is Nov 3-5,<br />in Los Angeles. The 3-day event is packed with sessions & evening<br />activities. Learn from the best. Meet and spend time with peers.<br />TidBITS readers save $50 at <<a href="http://macte.ch/conf_tidbits">http://macte.ch/conf_tidbits</a>>!</div>
  731. </div>
  732. <div class="sponsorbox_bottom"> </div>
  733.  
  734.  
  735.         <!-- comments section -->
  736.         
  737.         <!-- end comment show-->
  738.         
  739.         <!-- end comments section -->
  740.  
  741.  
  742.         <!-- end article loop details -->
  743.         
  744.         
  745.  
  746.         
  747.     </div><!-- end show article -->
  748.     
  749.     
  750.  
  751.  
  752. <!-- article_plus end -->
  753. <!--
  754. </DIV>
  755. --><!-- end main_column DIV -->
  756.  
  757.  
  758. <!-- google_ad_section_end -->
  759.  
  760. </div><!-- end center AJAX insert -->
  761.  
  762. <!-- TipBITS Search Results Lozenge -->
  763. <div id="tipbits_results_loz" style="display:none">
  764. <form method="post" onsubmit="return false" id="tipbits_form_loz" name="tipbits_form_loz" action="noaction.cgi">
  765. <div class="tip_footer">
  766. <p id="search_tipbits_loz"><input type="text" onkeydown="if (event.keyCode == 13) { search_tipbits('tipbits_searchvalue_loz', 'tipbits_results_loz'); }" id="tipbits_searchvalue_loz" name="tipbits_searchvalue_loz"> <a href="javascript:void(0)" onClick="search_tipbits('tipbits_searchvalue_loz', 'tipbits_results_loz')">Search</a></p>
  767. </div>
  768. <div class="tip_footer_bottom">
  769.  </div>
  770. </form>
  771. </div><!-- end TipBITS Search Results lozenge -->
  772.  
  773.  
  774.  
  775.  
  776. <!-- begin footer -->
  777. <div id="footer">
  778.  
  779. <div id="qr_tag_right"><div id="qr_tag_image"><img src="http://db.tidbits.com/tags/7556.png"></div><div id="qr_tag_text"><a href="http://db.tidbits.com/article/10616">What's this image?</a></div></div>
  780. <p>Special thanks to <a href="http://www.forest.net/">digital.forest</a>, our
  781. Web and mailing list host.</p>
  782. <p>Unless otherwise noted, this article is copyright © 2004 <a href="/author/Adam%20C.%20Engst">Adam C. Engst</a></p>
  783. <p>TidBITS is copyright © 2010 TidBITS Publishing Inc.</p>
  784. <p>Reuse governed by <a href="http://www.tidbits.com/terms/">Creative Commons License</a>.</p>
  785.  
  786. <p><a href="/about.html" title="About TidBITS">About TidBITS</a> | <a href="/account.html" title="Account Help">Account Help</a> | <a href="/advertising.html" title="Advertise with TidBITS!">Advertise with TidBITS!</a> | <a href="/contact.html" title="Contact Info">Contact Info</a> | <a href="/copyright.html" title="Copyright Terms">Copyright Terms</a></p>
  787.  
  788. </div><!-- end footer -->
  789.  
  790.  
  791. </div> <!-- end centercolumn -->
  792.  
  793. <div class="center_bottom"> </div>
  794.  
  795. </div> <!-- end centercolumn_border -->
  796.  
  797.  
  798. </div> <!-- end content_container -->
  799.  
  800. </div> <!-- end mainbody -->
  801.  
  802.  
  803. <script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
  804. </script>
  805. <script type="text/javascript">
  806. _uacct = "UA-276924-3";
  807. urchinTracker();
  808. </script>
  809. <script type="text/javascript"
  810. src="http://tidbitscom.skimlinks.com/api/skimlinks.js"></script>
  811. <script type="text/javascript">
  812. var skimlinks_pub_id = '2559X585851';
  813. var skimlinks_domain = 'go.tidbits.com';
  814. skimlinks();
  815. </script>
  816. </body>
  817. </html>
  818.  
  819.