{"id":70553,"date":"2025-11-16T03:01:00","date_gmt":"2025-11-15T17:01:00","guid":{"rendered":"https:\/\/www.rjmprogramming.com.au\/ITblog\/?p=70553"},"modified":"2025-11-17T05:21:02","modified_gmt":"2025-11-16T19:21:02","slug":"camera-pinch-tutorial","status":"publish","type":"post","link":"https:\/\/www.rjmprogramming.com.au\/ITblog\/camera-pinch-tutorial\/","title":{"rendered":"Camera Pinch Tutorial"},"content":{"rendered":"<div style=\"width: 230px\" class=\"wp-caption alignnone\"><a target=\"_blank\" href=\"http:\/\/www.rjmprogramming.com.au\/Mac\/iPhone\/camera_pinch.jpg\" rel=\"noopener\"><img decoding=\"async\" style=\"border: 15px solid pink;\" alt=\"Camera Pinch Tutorial\" src=\"http:\/\/www.rjmprogramming.com.au\/Mac\/iPhone\/camera_pinch.gif\" title=\"Camera Pinch Tutorial\"  style=\"float:left;\"  \/><\/a><p class=\"wp-caption-text\">Camera Pinch Tutorial<\/p><\/div>\n<p>Further to the recent <a title='New Temporary Folder Arrangements PHP Primer Tutorial' href='#ntfaphppt'>New Temporary Folder Arrangements PHP Primer Tutorial<\/a> we think, perhaps, we can explain &#8230;<\/p>\n<blockquote>\n<p>Nala! Luna!  <a target=\"_blank\" href=\"http:\/\/www.rjmprogramming.com.au\/Mac\/rolling.mov\" rel=\"noopener\">Is there something going on with summer grasses?!<\/a><\/p>\n<\/blockquote>\n<p>We saw our first stink bug of the summer season!  Yayyyyy!  Now, we know we may have offended some gardeners out there, but we find it comforting seeing any of &#8230;<\/p>\n<ol>\n<li>Stink Bugs &#8230; the sighting was of a Bronze Orange Bug <a target=\"_blank\" title='Bronze Orange Bug information from Wikipedia ... thanks' href='https:\/\/en.wikipedia.org\/wiki\/Musgraveia_sulciventris' rel=\"noopener\">sulciventris<\/a><\/li>\n<li>Christmas Beetles &#8230; <a target=\"_blank\" title='Christmas Beetle information from Wikipedia ... thanks' href='https:\/\/en.wikipedia.org\/wiki\/Christmas_beetle' rel=\"noopener\">Anoplognathus pallidicollis<\/a><\/li>\n<li>Bogong Moths &#8230; <a target=\"_blank\" title='Bogong Moth information from Wikipedia ... thanks' href='https:\/\/en.wikipedia.org\/wiki\/Bogong_moth' rel=\"noopener\">Agrotis infusa<\/a><\/li>\n<\/ol>\n<p> &#8230; as a reminder of our eastern Australian summers and that they are still around!  Yayyyyy!  Because it is a little concerning how little happens on the car windscreen these days insect wise compared to the nineties and into the noughties.<\/p>\n<p>Huh?!  Thanks, Nala, Luna!  You&#8217;ve finished in <a target=\"_blank\" href=\"http:\/\/www.rjmprogramming.com.au\/Mac\/rolling.mov\" rel=\"noopener\">the summer grasses<\/a>?!  And yes, you want to get to the point?   Yes, and you&#8217;ve been watching Skippy &#8230;<\/p>\n<p><iframe loading=\"lazy\" width=\"560\" height=\"315\" src=\"https:\/\/www.youtube.com\/embed\/4dXOTFvVWkQ?si=keLxDJ3_t1AbZYUE\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/p>\n<p> &#8230; summer reruns, perhaps?!   Huh?!<\/p>\n<p>Yes &#8230; well &#8230; there you go.  Yes, we wanted to &#8230; um &#8230; point out &#8230; in terms of photographic technique &#8230; in terms of the digital realm &#8230; shall we say &#8230; <\/p>\n<blockquote><p>\nOkay, Skip &#8230; getting there\n<\/p><\/blockquote>\n<p> &#8230; let&#8217;s just say &#8230;<\/p>\n<blockquote><p>\nIsn&#8217;t the pinch gesture on the Camera app just &#8220;the bee&#8217;s knees&#8221;?\n<\/p><\/blockquote>\n<p>And yes, Skip, <a target=\"_blank\" title='?' href='https:\/\/www.google.com\/search?q=do+bees+have+knees&#038;rlz=1C5OZZY_en&#038;oq=do+bees+have+knees&#038;gs_lcrp=EgZjaHJvbWUyCQgAEEUYORiABDIHCAEQABiABDIICAIQABgWGB4yCAgDEAAYFhgeMggIBBAAGBYYHjIICAUQABgWGB4yCAgGEAAYFhgeMggIBxAAGBYYHjIICAgQABgWGB4yDQgJEAAYhgMYgAQYigXSAQg1NTY0ajBqN6gCALACAA&#038;sourceid=chrome&#038;ie=UTF-8' rel=\"noopener\">bees have knees<\/a> &#8230; before you complain!   Sheeesshhh!<\/p>\n<p>Photographing insects &#8230;<\/p>\n<ul>\n<li>has to have gotten more convenient being out and about with a Camera app, whether that be iOS or Android or whattevvvvvvvveeeerrrr &#8230; with the ease of pinch gesture usage when shaping to take the photo &#8230; and yet &#8230;<\/li>\n<li>in the Single Lens Reflex dominance days (of Photography) we&#8217;d have had &#8230;\n<ol>\n<li>much much longer telephoto and\/or zoom lenses<\/li>\n<li>tripods<\/li>\n<li>shutter clickers (from a distance)<\/li>\n<li>perhaps more patience<\/li>\n<li>perhaps darkroom enlargement opportunities<\/li>\n<\/ol>\n<p> &#8230; counteracting that convenience <font size=1>&#8230; but yes, you can <a target=\"_blank\" title='?' href='https:\/\/www.google.com\/search?q=iphone+tripod&#038;rlz=1C5OZZY_en&#038;oq=iphone+tripod&#038;gs_lcrp=EgZjaHJvbWUqCggAEAAYsQMYgAQyCggAEAAYsQMYgAQyBwgBEAAYgAQyBwgCEAAYgAQyBwgDEAAYgAQyBwgEEAAYgAQyBwgFEAAYgAQyBwgGEAAYgAQyBwgHEAAYgAQyBwgIEAAYgAQyBwgJEAAYgATSAQg0NzY0ajBqN6gCALACAA&#038;sourceid=chrome&#038;ie=UTF-8' rel=\"noopener\">accessorize<\/a>?!<\/font><\/li>\n<\/ul>\n<p>One thing is for sure, and that is that you should not feel alone delving into the <a target=\"_blank\" title='Citizen Science' href='https:\/\/www.google.com\/search?q=citizen+science&#038;rlz=1C5OZZY_en&#038;oq=citizen+science&#038;gs_lcrp=EgZjaHJvbWUyCQgAEEUYORiABDIHCAEQABiABDIHCAIQABiABDIHCAMQABiABDIHCAQQABiABDIHCAUQABiABDIHCAYQABiABDIHCAcQABiABDIHCAgQABiABDIHCAkQABiABNIBCDQxMTFqMGo3qAIAsAIA&#038;sourceid=chrome&#038;ie=UTF-8' rel=\"noopener\">Citizen Science<\/a> scene.  It is growing<font size=1> &#8230; and practising fiercely <audio title='Young magpie' style=display:inline; controls><source src='\/Mac\/iPhone\/magpie_practice.m4a' type='audio\/mp4'><\/source><\/audio><\/a><\/font>.<\/p>\n<p><!--p>You can also see this play out at WordPress 4.1.1's <a target=\"_blank\" href='\/\/www.rjmprogramming.com.au\/ITblog\/camera-pinch-tutorial\/' rel=\"noopener\">Camera Pinch Tutorial<\/a>.<\/p-->\n<hr>\n<p id='ntfaphppt'>Previous relevant <a target=\"_blank\" title='New Temporary Folder Arrangements PHP Primer Tutorial' href='\/\/www.rjmprogramming.com.au\/ITblog\/new-temporary-folder-arrangements-php-primer-tutorial\/' rel=\"noopener\">New Temporary Folder Arrangements PHP Primer Tutorial<\/a> is shown below.<\/p>\n<div style=\"width: 230px\" class=\"wp-caption alignnone\"><a target=\"_blank\" href=\"http:\/\/www.rjmprogramming.com.au\/HTMLCSS\/do_away_with_the_boring_bits.php\" rel=\"noopener\"><img decoding=\"async\" style=\"border: 15px solid pink;\" alt=\"New Temporary Folder Arrangements PHP Primer Tutorial\" src=\"http:\/\/www.rjmprogramming.com.au\/HTMLCSS\/tmp_changes.jpg\" title=\"New Temporary Folder Arrangements PHP Primer Tutorial\"  style=\"float:left;\"  \/><\/a><p class=\"wp-caption-text\">New Temporary Folder Arrangements PHP Primer Tutorial<\/p><\/div>\n<p>Things around here have come to a &#8220;<a target=\"_blank\" title='Pretty pass' href='https:\/\/www.google.com.au\/search?q=charlotte+pass&#038;biw=1067&#038;bih=554&#038;source=lnms&#038;tbm=isch&#038;sa=X&#038;ved=0ahUKEwjamLWJo7_MAhUFoJQKHVzBAe0Q_AUIBygC' rel=\"noopener\">pretty pass<\/a>&#8221; &#8230;<\/p>\n<ul>\n<li>primer tutorials that are not first in the thread<\/li>\n<li>presenting the tidying arrangements first<\/li>\n<\/ul>\n<p>Nala! Luna!  <a target=\"_blank\" href=\"http:\/\/www.rjmprogramming.com.au\/Mac\/rolling.mov\" rel=\"noopener\">Is there something going on with summer grasses?!<\/a><\/p>\n<p>Yes, this transitioning from <i>\/tmp<\/i> to <i>\/home\/rjmprogr<\/i> has us trying not to rush, because rushing can be associated with places where you assume &#8230;<br \/>\n<iframe loading=\"lazy\" width=\"560\" height=\"315\" src=\"https:\/\/www.youtube.com\/embed\/svkgOsr7pUc?si=H7mNg_nWFUaOVnGQ\" title=\"YouTube video player\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><br \/>\n &#8230; rather than prepare and study.  Besides, Akela said no!<\/p>\n<p>Why choose <i>\/home\/rjmprogr<\/i> ?<\/p>\n<ol>\n<li>it can be read and written to by the RJM Programming web server username &#8230; and yet &#8230;<\/li>\n<li>cannot be referenced by users surfing the net &#8230; being lower down the directory tree than the <i>\/home\/rjmprogr\/public_html<\/i> which corresponds to our Apache Document Root folder<\/li>\n<li>it can be read and written to by the cPanel username &#8230; meaning &#8230;<\/li>\n<li>our web server&#8217;s main functioning <i>crontab<\/i> scheduling can reference it, like with yesterday&#8217;s <a title='New Temporary Folder Arrangements Tidying Tutorial' href='#ntfatt'>New Temporary Folder Arrangements Tidying Tutorial<\/a><\/li>\n<\/ol>\n<p>And so, today, building on the themes of yesterday&#8217;s <a title='New Temporary Folder Arrangements Tidying Tutorial' href='#ntfatt'>New Temporary Folder Arrangements Tidying Tutorial<\/a> we &#8230;<\/p>\n<ul>\n<li><a target=\"_blank\" href=\"http:\/\/www.rjmprogramming.com.au\/PHP\/Geographicals\/diff.php?one=http:\/\/www.rjmprogramming.com.au\/HTMLCSS\/do_away_with_the_boring_bits.php------GETME\" rel=\"noopener\">changed<\/a> <a target=\"_blank\" href=\"http:\/\/www.rjmprogramming.com.au\/HTMLCSS\/do_away_with_the_boring_bits.php------GETME\" rel=\"noopener\">do_away_with_the_boring_bits.php<\/a> <a target=\"_blank\" href=\"http:\/\/www.rjmprogramming.com.au\/HTMLCSS\/do_away_with_the_boring_bits.php\" rel=\"noopener\">web application<\/a> &#8230; and &#8230;<\/li>\n<li><a target=\"_blank\" href=\"http:\/\/www.rjmprogramming.com.au\/PHP\/Geographicals\/diff.php?one=http:\/\/www.rjmprogramming.com.au\/HTMLCSS\/legend_via_map.php-------------GETME\" rel=\"noopener\">changed<\/a> <a target=\"_blank\" href=\"http:\/\/www.rjmprogramming.com.au\/HTMLCSS\/legend_via_map.php-------------GETME\" rel=\"noopener\">legend_via_map.php<\/a> <a target=\"_blank\" href=\"http:\/\/www.rjmprogramming.com.au\/HTMLCSS\/legend_via_map.php\" rel=\"noopener\">web application<\/a><\/li>\n<\/ul>\n<p> &#8230; as our first PHP foray into this work.<\/p>\n<p>More to come regarding <i>\/home\/rjmprogr<\/i> as our new &#8220;temporary file place of preference&#8221; for sure.<\/p>\n<p><!--p>You can also see this play out at WordPress 4.1.1's <a target=\"_blank\" href='\/\/www.rjmprogramming.com.au\/ITblog\/new-temporary-folder-arrangements-php-primer-tutorial\/' rel=\"noopener\">New Temporary Folder Arrangements PHP Primer Tutorial<\/a>.<\/p-->\n<hr>\n<p id='ntfatt'>Previous relevant <a target=\"_blank\" title='New Temporary Folder Arrangements Tidying Tutorial' href='\/\/www.rjmprogramming.com.au\/ITblog\/new-temporary-folder-arrangements-tidying-tutorial\/' rel=\"noopener\">New Temporary Folder Arrangements Tidying Tutorial<\/a> is shown below.<\/p>\n<div style=\"width: 230px\" class=\"wp-caption alignnone\"><a target=\"_blank\" href=\"http:\/\/www.rjmprogramming.com.au\/Linux\/crontab_new_tmp.gif\" rel=\"noopener\"><img decoding=\"async\" style=\"border: 15px solid pink;\" alt=\"New Temporary Folder Arrangements Tidying Tutorial\" src=\"http:\/\/www.rjmprogramming.com.au\/Linux\/crontab_new_tmp.gif\" title=\"New Temporary Folder Arrangements Tidying Tutorial\"  style=\"float:left;\"  \/><\/a><p class=\"wp-caption-text\">New Temporary Folder Arrangements Tidying Tutorial<\/p><\/div>\n<p>We&#8217;ve had one public and three private dedicated virtual servers running our <a target=\"_blank\" title=\"Apache\" href='https:\/\/www.apache.org\/' rel=\"noopener\">Apache<\/a>\/PHP\/MySql web server here at RJM Programming.  The last two have us transitioning from one <a target=\"_blank\" title='AlmaLinux' href='https:\/\/almalinux.org\/' rel=\"noopener\">AlmaLinux<\/a> web server to another.  What could be different?  Well <font size=1>(readers who resist reading blog posting titles)<\/font> security measures move on with a lot of upgrades and migrations in web server &#8220;land&#8221; these days.  On ours, the use of &#8230;<\/p>\n<p><code><br \/>\n\/tmp<br \/>\n<\/code><\/p>\n<p> &#8230; <font color=blue>as per<\/font> &#8230;<\/p>\n<p><code><br \/>\n# df -k \/<br \/>\nFilesystem     1K-blocks     Used Available Use% Mounted on<br \/>\n\/dev\/vda1      103019024 58818836  38940980  61% \/<br \/>\n# df -k \/tmp<br \/>\nFilesystem     1K-blocks  Used Available Use% Mounted on<br \/>\n\/dev\/loop0       4054752  1108   3843932   1% <font color=blue>\/tmp<\/font><br \/>\n#<br \/>\n<\/code><\/p>\n<p> &#8230; have in the last AlmaLinux web server incarnation become more contentious in that the RJM Programming web server username (as distinct from the administrator of <a target=\"_blank\" title='cPanel information from Wikipedia, thanks' href='https:\/\/en.wikipedia.org\/wiki\/CPanel' rel=\"noopener\">cPanel<\/a> username) is unable to write to this <i>\/tmp<\/i> for the first time.  This is a little bit of a peeve for us, as we have written quite a bit of PHP that uses it to read and write from, as it&#8217;s temporary storage &#8220;place of choice&#8221;.<\/p>\n<p>There&#8217;s no way we are going to rush to remedy this, but, today, after <sup>self-<\/sup>ruling out, after discussion with our web hosters, <a target=\"_blank\" title='Crazy Domains' href='http:\/\/www.crazydomains.com.au' rel=\"noopener\">Crazy Domains<\/a>, the thought of changing any file permissions here, we&#8217;re starting, sort of at the back end of the issue, fixing for the future &#8230;<\/p>\n<ul>\n<li><a target=\"_blank\" title='crontab information from computerhope ... thanks' href='http:\/\/www.computerhope.com\/jargon\/c\/cron.htm' rel=\"noopener\">crontab<\/a>  # ie. scheduled &#8230;<\/li>\n<li>file tidying (after PHP action) processes<\/li>\n<\/ul>\n<p>You can glean what we did via watching today&#8217;s tutorial animated GIF presentation, but the gist of it involved &#8230; <\/p>\n<ul>\n<li>in RJM Programming cPanel&#8217;s Terminal window &#8230;<br \/>\n<code><br \/>\ncrontab -l | grep '\/tmp'<br \/>\n<\/code><br \/>\n &#8230; and copy into a text buffer &#8230;<\/li>\n<li>back in the macOS MacBook Air desktop application woooorrrrllllddd paste into a TextWrangler editor new file &#8230; and then &#8230;<\/li>\n<li>for relevant records substitute <i>\/tmp<\/i> for <i>\/home\/rjmprogr<\/i> (as our new choice of place to act as <i>the temporary storage &#8220;place of choice&#8221;<\/i> and which we successfully road tested when we presented the <a target=\"_blank\" href='https:\/\/www.rjmprogramming.com.au\/ITblog\/message-board-one-liners-aesthetics-tutorial\/' title='Message Board One Liners Aesthetics Tutorial' rel=\"noopener\">Message Board One Liners Aesthetics Tutorial<\/a> (with <a target=\"_blank\" href=\"http:\/\/www.rjmprogramming.com.au\/PHP\/Geographicals\/diff.php?one=http:\/\/www.rjmprogramming.com.au\/PHP\/prepend\/prepend.php-GETME\" rel=\"noopener\">it&#8217;s, early days, changed prepend.php<\/a>) thread of blog postings)<\/li>\n<li>change the minutes field 10 less for all such records<\/li>\n<li>copy this into a buffer<\/li>\n<li>back at  RJM Programming cPanel&#8217;s Terminal window &#8230;<br \/>\n<code><br \/>\ncrontab -e<br \/>\n<\/code><br \/>\n &#8230; ours uses the great <i>vi<\/i> editor where we get to the end character and type &#8220;i&#8221; for insert in order to Paste (via top menu) into the crontab file &#8230; followed by &#8220;wq&#8221; to save (with all being well will result in &#8230;<\/p>\n<blockquote><p>\ncrontab: installing new crontab\n<\/p><\/blockquote>\n<p>)\n<\/li>\n<li>readying ourselves for either &#8220;tidying up&#8221; requirement into the future<\/li>\n<\/ul>\n<p>Over to you &#8230; PHP!<\/p>\n<p>If this was interesting you may be interested in <a title='Click here to see topics in which you might be interested' href='#d70528' onclick='var dv=document.getElementById(\"d70528\"); dv.innerHTML = \"&lt;iframe width=670 height=600 src=\" + \"https:\/\/www.rjmprogramming.com.au\/ITblog\/tag\/crontab\" + \"&gt;&lt;\/iframe&gt;\"; dv.style.display = \"block\";'>this<\/a> too.<\/p>\n<div id='d70528' style='display: none; border-left: 2px solid green; border-top: 2px solid green;'><\/div>\n<hr>\n<p>If this was interesting you may be interested in <a title='Click here to see topics in which you might be interested' href='#d70543' onclick='var dv=document.getElementById(\"d70543\"); dv.innerHTML = \"&lt;iframe width=670 height=600 src=\" + \"https:\/\/www.rjmprogramming.com.au\/ITblog\/tag\/php\" + \"&gt;&lt;\/iframe&gt;\"; dv.style.display = \"block\";'>this<\/a> too.<\/p>\n<div id='d70543' style='display: none; border-left: 2px solid green; border-top: 2px solid green;'><\/div>\n<hr>\n<p>If this was interesting you may be interested in <a title='Click here to see topics in which you might be interested' href='#d70553' onclick='var dv=document.getElementById(\"d70553\"); dv.innerHTML = \"&lt;iframe width=670 height=600 src=\" + \"https:\/\/www.rjmprogramming.com.au\/ITblog\/tag\/insect\" + \"&gt;&lt;\/iframe&gt;\"; dv.style.display = \"block\";'>this<\/a> too.<\/p>\n<div id='d70553' style='display: none; border-left: 2px solid green; border-top: 2px solid green;'><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Further to the recent New Temporary Folder Arrangements PHP Primer Tutorial we think, perhaps, we can explain &#8230; Nala! Luna! Is there something going on with summer grasses?! We saw our first stink bug of the summer season! Yayyyyy! Now, &hellip; <a href=\"https:\/\/www.rjmprogramming.com.au\/ITblog\/camera-pinch-tutorial\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12,18,30,37],"tags":[89,2082,169,183,4444,3829,5329,336,450,564,5325,626,631,5328,796,931,945,3482,5327,1304,5326,1498],"class_list":["post-70553","post","type-post","status-publish","format-standard","hentry","category-elearning","category-hardware","category-photography","category-tutorials","tag-app","tag-biology","tag-bug","tag-camera","tag-camera-app","tag-citizen-science","tag-director-tree","tag-directory","tag-folder","tag-hierarchy","tag-insect","tag-ios","tag-iphone","tag-lens","tag-mobile-app","tag-photography","tag-pinch","tag-single-lens-reflex","tag-stink-bug","tag-tree","tag-tripod","tag-zoom"],"_links":{"self":[{"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/posts\/70553"}],"collection":[{"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/comments?post=70553"}],"version-history":[{"count":14,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/posts\/70553\/revisions"}],"predecessor-version":[{"id":70673,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/posts\/70553\/revisions\/70673"}],"wp:attachment":[{"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/media?parent=70553"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/categories?post=70553"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.rjmprogramming.com.au\/ITblog\/wp-json\/wp\/v2\/tags?post=70553"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}