{"id":2397,"date":"2022-01-01T17:21:04","date_gmt":"2022-01-01T22:21:04","guid":{"rendered":"https:\/\/michaelrowe01.com\/?p=2397"},"modified":"2022-12-15T06:46:01","modified_gmt":"2022-12-15T11:46:01","slug":"2022-code-and-cloud","status":"publish","type":"post","link":"https:\/\/michaelrowe01.com\/index.php\/personal-softwareandit\/2022-code-and-cloud\/","title":{"rendered":"2022 &#8211; Code and Cloud"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Well, made it thru to another year.  2022 seems to be starting with the same hope and courage of 2021, let&#8217;s hope it ends on a better note.  <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"660\" height=\"384\" data-attachment-id=\"2398\" data-permalink=\"https:\/\/michaelrowe01.com\/index.php\/personal-softwareandit\/2022-code-and-cloud\/attachment\/screen-shot-2022-01-01-at-17-12-06\/\" data-orig-file=\"https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2022\/01\/Screen-Shot-2022-01-01-at-17.12.06.png?fit=1480%2C861&amp;ssl=1\" data-orig-size=\"1480,861\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Screen-Shot-2022-01-01-at-17.12.06\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2022\/01\/Screen-Shot-2022-01-01-at-17.12.06.png?fit=660%2C384&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2022\/01\/Screen-Shot-2022-01-01-at-17.12.06.png?resize=660%2C384&#038;ssl=1\" alt=\"\" class=\"wp-image-2398\" srcset=\"https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2022\/01\/Screen-Shot-2022-01-01-at-17.12.06.png?resize=1024%2C596&amp;ssl=1 1024w, https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2022\/01\/Screen-Shot-2022-01-01-at-17.12.06.png?resize=300%2C175&amp;ssl=1 300w, https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2022\/01\/Screen-Shot-2022-01-01-at-17.12.06.png?resize=768%2C447&amp;ssl=1 768w, https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2022\/01\/Screen-Shot-2022-01-01-at-17.12.06.png?w=1480&amp;ssl=1 1480w, https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2022\/01\/Screen-Shot-2022-01-01-at-17.12.06.png?w=1320&amp;ssl=1 1320w\" sizes=\"auto, (max-width: 660px) 100vw, 660px\" \/><figcaption>From Apple&#8217;s Xcode Cloud Website<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">I&#8217;ve been working on a Card Tracking app for a few years.  It started as a project to hope me learn CoreData, I then pivoted to learn SwiftUI, and finally, I have pivoted again to use it to learn about <a href=\"https:\/\/developer.apple.com\/xcode-cloud\/\" target=\"_blank\" rel=\"noreferrer noopener\">Xcode Cloud<\/a>.  If you don&#8217;t know what that is, I highly recommend you check out the sessions from 2021&#8217;s WWDC.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Basically, Xcode Cloud is Apple&#8217;s CI\/CD service for Xcode.  (CI\/CD is continuous integration \/ continuous delivery).  This type of tool chain is used in many agile development shops to delivery new functions to customers as quickly as possible.  The basic idea is, whenever new code is checked into your source repository the system will build, test, and delivery it as far as you define.  In my case I would like to deliver a new build of my card tracking app to testers via TestFlight whenever I deliver new code.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This process is pretty easy, assuming you correctly define your build process.  Currently I am able to have the system automatically build both my iOS and macOS apps and then attempt to post them to TestFlight.  I say &#8220;Attempt&#8221; since for some reason the technique I use to auto-increment my builds is not being recognized.  Xcode Cloud uses it&#8217;s own build number (CI_BUILD_NUMBER), and I can&#8217;t find a way to override it with the value I generate from my info.plist.  It seems the only I can get this to work is to switch using a new release number; which would then allow for Xcode Cloud to take over the build number.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Well, made it thru to another year. 2022 seems to be starting with the same hope and courage of 2021, let&#8217;s hope it ends on a better note. I&#8217;ve been working on a Card Tracking app for a few years. It started as a project to hope me learn CoreData, I then pivoted to learn [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":2400,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_wp_convertkit_post_meta":{"form":"-1","landing_page":"0","tag":"0","restrict_content":"0"},"hide_page_title":"","_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[3],"tags":[24,446,593],"class_list":["post-2397","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-personal-softwareandit","tag-app","tag-xcode","tag-xcode-cloud"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Michael Rowe\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/michaelrowe01.com\/index.php\/personal-softwareandit\/2022-code-and-cloud\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Random Thoughts | A blog about things that interest me.\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"2022 \u2013 Code and Cloud | Random Thoughts\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/michaelrowe01.com\/index.php\/personal-softwareandit\/2022-code-and-cloud\/\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/michaelrowe01.com\/wp-content\/uploads\/2019\/04\/img_0391.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/michaelrowe01.com\/wp-content\/uploads\/2019\/04\/img_0391.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"3088\" \/>\n\t\t<meta property=\"og:image:height\" content=\"2316\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2022-01-01T22:21:04+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2022-12-15T11:46:01+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"2022 \u2013 Code and Cloud | Random Thoughts\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/michaelrowe01.com\/wp-content\/uploads\/2019\/04\/img_0391.jpg\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/michaelrowe01.com\\\/index.php\\\/personal-softwareandit\\\/2022-code-and-cloud\\\/#article\",\"name\":\"2022 \\u2013 Code and Cloud | Random Thoughts\",\"headline\":\"2022 &#8211; Code and Cloud\",\"author\":{\"@id\":\"https:\\\/\\\/michaelrowe01.com\\\/index.php\\\/author\\\/michaelrowe\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/michaelrowe01.com\\\/#organization\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/michaelrowe01.com\\\/wp-content\\\/uploads\\\/2022\\\/01\\\/Screen-Shot-2022-01-01-at-17.12.06-2.png?fit=1480%2C861&ssl=1\",\"width\":1480,\"height\":861},\"datePublished\":\"2022-01-01T17:21:04-05:00\",\"dateModified\":\"2022-12-15T06:46:01-05:00\",\"inLanguage\":\"en-US\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/michaelrowe01.com\\\/index.php\\\/personal-softwareandit\\\/2022-code-and-cloud\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/michaelrowe01.com\\\/index.php\\\/personal-softwareandit\\\/2022-code-and-cloud\\\/#webpage\"},\"articleSection\":\"Personal - Software and IT, App, xcode, Xcode cloud\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/michaelrowe01.com\\\/index.php\\\/personal-softwareandit\\\/2022-code-and-cloud\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/michaelrowe01.com#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/michaelrowe01.com\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/michaelrowe01.com\\\/index.php\\\/category\\\/personal-softwareandit\\\/#listItem\",\"name\":\"Personal - Software and IT\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/michaelrowe01.com\\\/index.php\\\/category\\\/personal-softwareandit\\\/#listItem\",\"position\":2,\"name\":\"Personal - Software and IT\",\"item\":\"https:\\\/\\\/michaelrowe01.com\\\/index.php\\\/category\\\/personal-softwareandit\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/michaelrowe01.com\\\/index.php\\\/personal-softwareandit\\\/2022-code-and-cloud\\\/#listItem\",\"name\":\"2022 &#8211; Code and Cloud\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/michaelrowe01.com#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/michaelrowe01.com\\\/index.php\\\/personal-softwareandit\\\/2022-code-and-cloud\\\/#listItem\",\"position\":3,\"name\":\"2022 &#8211; Code and Cloud\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/michaelrowe01.com\\\/index.php\\\/category\\\/personal-softwareandit\\\/#listItem\",\"name\":\"Personal - Software and IT\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/michaelrowe01.com\\\/#organization\",\"name\":\"Michael Rowe\",\"description\":\"A blog about things that interest me.\",\"url\":\"https:\\\/\\\/michaelrowe01.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/michaelrowe01.com\\\/wp-content\\\/uploads\\\/2024\\\/11\\\/IMG_0120.jpeg?fit=1024%2C1024&ssl=1\",\"@id\":\"https:\\\/\\\/michaelrowe01.com\\\/index.php\\\/personal-softwareandit\\\/2022-code-and-cloud\\\/#organizationLogo\",\"width\":1024,\"height\":1024},\"image\":{\"@id\":\"https:\\\/\\\/michaelrowe01.com\\\/index.php\\\/personal-softwareandit\\\/2022-code-and-cloud\\\/#organizationLogo\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/michaelrowe01.com\\\/index.php\\\/author\\\/michaelrowe\\\/#author\",\"url\":\"https:\\\/\\\/michaelrowe01.com\\\/index.php\\\/author\\\/michaelrowe\\\/\",\"name\":\"Michael Rowe\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/michaelrowe01.com\\\/index.php\\\/personal-softwareandit\\\/2022-code-and-cloud\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/23f6c08c7576fa07e47f582da2eb7619aeb556ceddf53a274fdb9069926e5bc1?s=96&r=g\",\"width\":96,\"height\":96,\"caption\":\"Michael Rowe\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/michaelrowe01.com\\\/index.php\\\/personal-softwareandit\\\/2022-code-and-cloud\\\/#webpage\",\"url\":\"https:\\\/\\\/michaelrowe01.com\\\/index.php\\\/personal-softwareandit\\\/2022-code-and-cloud\\\/\",\"name\":\"2022 \\u2013 Code and Cloud | Random Thoughts\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/michaelrowe01.com\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/michaelrowe01.com\\\/index.php\\\/personal-softwareandit\\\/2022-code-and-cloud\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/michaelrowe01.com\\\/index.php\\\/author\\\/michaelrowe\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/michaelrowe01.com\\\/index.php\\\/author\\\/michaelrowe\\\/#author\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/michaelrowe01.com\\\/wp-content\\\/uploads\\\/2022\\\/01\\\/Screen-Shot-2022-01-01-at-17.12.06-2.png?fit=1480%2C861&ssl=1\",\"@id\":\"https:\\\/\\\/michaelrowe01.com\\\/index.php\\\/personal-softwareandit\\\/2022-code-and-cloud\\\/#mainImage\",\"width\":1480,\"height\":861},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/michaelrowe01.com\\\/index.php\\\/personal-softwareandit\\\/2022-code-and-cloud\\\/#mainImage\"},\"datePublished\":\"2022-01-01T17:21:04-05:00\",\"dateModified\":\"2022-12-15T06:46:01-05:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/michaelrowe01.com\\\/#website\",\"url\":\"https:\\\/\\\/michaelrowe01.com\\\/\",\"name\":\"Random Thoughts\",\"description\":\"A blog about things that interest me.\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/michaelrowe01.com\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"2022 \u2013 Code and Cloud | Random Thoughts","description":"","canonical_url":"https:\/\/michaelrowe01.com\/index.php\/personal-softwareandit\/2022-code-and-cloud\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/michaelrowe01.com\/index.php\/personal-softwareandit\/2022-code-and-cloud\/#article","name":"2022 \u2013 Code and Cloud | Random Thoughts","headline":"2022 &#8211; Code and Cloud","author":{"@id":"https:\/\/michaelrowe01.com\/index.php\/author\/michaelrowe\/#author"},"publisher":{"@id":"https:\/\/michaelrowe01.com\/#organization"},"image":{"@type":"ImageObject","url":"https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2022\/01\/Screen-Shot-2022-01-01-at-17.12.06-2.png?fit=1480%2C861&ssl=1","width":1480,"height":861},"datePublished":"2022-01-01T17:21:04-05:00","dateModified":"2022-12-15T06:46:01-05:00","inLanguage":"en-US","mainEntityOfPage":{"@id":"https:\/\/michaelrowe01.com\/index.php\/personal-softwareandit\/2022-code-and-cloud\/#webpage"},"isPartOf":{"@id":"https:\/\/michaelrowe01.com\/index.php\/personal-softwareandit\/2022-code-and-cloud\/#webpage"},"articleSection":"Personal - Software and IT, App, xcode, Xcode cloud"},{"@type":"BreadcrumbList","@id":"https:\/\/michaelrowe01.com\/index.php\/personal-softwareandit\/2022-code-and-cloud\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/michaelrowe01.com#listItem","position":1,"name":"Home","item":"https:\/\/michaelrowe01.com","nextItem":{"@type":"ListItem","@id":"https:\/\/michaelrowe01.com\/index.php\/category\/personal-softwareandit\/#listItem","name":"Personal - Software and IT"}},{"@type":"ListItem","@id":"https:\/\/michaelrowe01.com\/index.php\/category\/personal-softwareandit\/#listItem","position":2,"name":"Personal - Software and IT","item":"https:\/\/michaelrowe01.com\/index.php\/category\/personal-softwareandit\/","nextItem":{"@type":"ListItem","@id":"https:\/\/michaelrowe01.com\/index.php\/personal-softwareandit\/2022-code-and-cloud\/#listItem","name":"2022 &#8211; Code and Cloud"},"previousItem":{"@type":"ListItem","@id":"https:\/\/michaelrowe01.com#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/michaelrowe01.com\/index.php\/personal-softwareandit\/2022-code-and-cloud\/#listItem","position":3,"name":"2022 &#8211; Code and Cloud","previousItem":{"@type":"ListItem","@id":"https:\/\/michaelrowe01.com\/index.php\/category\/personal-softwareandit\/#listItem","name":"Personal - Software and IT"}}]},{"@type":"Organization","@id":"https:\/\/michaelrowe01.com\/#organization","name":"Michael Rowe","description":"A blog about things that interest me.","url":"https:\/\/michaelrowe01.com\/","logo":{"@type":"ImageObject","url":"https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2024\/11\/IMG_0120.jpeg?fit=1024%2C1024&ssl=1","@id":"https:\/\/michaelrowe01.com\/index.php\/personal-softwareandit\/2022-code-and-cloud\/#organizationLogo","width":1024,"height":1024},"image":{"@id":"https:\/\/michaelrowe01.com\/index.php\/personal-softwareandit\/2022-code-and-cloud\/#organizationLogo"}},{"@type":"Person","@id":"https:\/\/michaelrowe01.com\/index.php\/author\/michaelrowe\/#author","url":"https:\/\/michaelrowe01.com\/index.php\/author\/michaelrowe\/","name":"Michael Rowe","image":{"@type":"ImageObject","@id":"https:\/\/michaelrowe01.com\/index.php\/personal-softwareandit\/2022-code-and-cloud\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/23f6c08c7576fa07e47f582da2eb7619aeb556ceddf53a274fdb9069926e5bc1?s=96&r=g","width":96,"height":96,"caption":"Michael Rowe"}},{"@type":"WebPage","@id":"https:\/\/michaelrowe01.com\/index.php\/personal-softwareandit\/2022-code-and-cloud\/#webpage","url":"https:\/\/michaelrowe01.com\/index.php\/personal-softwareandit\/2022-code-and-cloud\/","name":"2022 \u2013 Code and Cloud | Random Thoughts","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/michaelrowe01.com\/#website"},"breadcrumb":{"@id":"https:\/\/michaelrowe01.com\/index.php\/personal-softwareandit\/2022-code-and-cloud\/#breadcrumblist"},"author":{"@id":"https:\/\/michaelrowe01.com\/index.php\/author\/michaelrowe\/#author"},"creator":{"@id":"https:\/\/michaelrowe01.com\/index.php\/author\/michaelrowe\/#author"},"image":{"@type":"ImageObject","url":"https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2022\/01\/Screen-Shot-2022-01-01-at-17.12.06-2.png?fit=1480%2C861&ssl=1","@id":"https:\/\/michaelrowe01.com\/index.php\/personal-softwareandit\/2022-code-and-cloud\/#mainImage","width":1480,"height":861},"primaryImageOfPage":{"@id":"https:\/\/michaelrowe01.com\/index.php\/personal-softwareandit\/2022-code-and-cloud\/#mainImage"},"datePublished":"2022-01-01T17:21:04-05:00","dateModified":"2022-12-15T06:46:01-05:00"},{"@type":"WebSite","@id":"https:\/\/michaelrowe01.com\/#website","url":"https:\/\/michaelrowe01.com\/","name":"Random Thoughts","description":"A blog about things that interest me.","inLanguage":"en-US","publisher":{"@id":"https:\/\/michaelrowe01.com\/#organization"}}]},"og:locale":"en_US","og:site_name":"Random Thoughts | A blog about things that interest me.","og:type":"article","og:title":"2022 \u2013 Code and Cloud | Random Thoughts","og:url":"https:\/\/michaelrowe01.com\/index.php\/personal-softwareandit\/2022-code-and-cloud\/","og:image":"https:\/\/michaelrowe01.com\/wp-content\/uploads\/2019\/04\/img_0391.jpg","og:image:secure_url":"https:\/\/michaelrowe01.com\/wp-content\/uploads\/2019\/04\/img_0391.jpg","og:image:width":3088,"og:image:height":2316,"article:published_time":"2022-01-01T22:21:04+00:00","article:modified_time":"2022-12-15T11:46:01+00:00","twitter:card":"summary","twitter:title":"2022 \u2013 Code and Cloud | Random Thoughts","twitter:image":"https:\/\/michaelrowe01.com\/wp-content\/uploads\/2019\/04\/img_0391.jpg"},"aioseo_meta_data":{"post_id":"2397","title":null,"description":null,"keywords":[],"keyphrases":{"focus":[],"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":"","og_custom_url":null,"og_article_section":null,"og_article_tags":[],"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":"{\"article\":{\"articleType\":\"BlogPosting\"},\"course\":{\"name\":\"\",\"description\":\"\",\"provider\":\"\"},\"faq\":{\"pages\":[]},\"product\":{\"reviews\":[]},\"recipe\":{\"ingredients\":[],\"instructions\":[],\"keywords\":[]},\"software\":{\"reviews\":[],\"operatingSystems\":[]},\"webPage\":{\"webPageType\":\"WebPage\"}}","pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":"-1","robots_max_videopreview":"-1","robots_max_imagepreview":"large","priority":null,"frequency":"default","local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":null,"created":"2022-01-01 22:05:02","updated":"2025-06-04 00:22:15","seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/michaelrowe01.com\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/michaelrowe01.com\/index.php\/category\/personal-softwareandit\/\" title=\"Personal - Software and IT\">Personal - Software and IT<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t2022 \u2013 Code and Cloud\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/michaelrowe01.com"},{"label":"Personal - Software and IT","link":"https:\/\/michaelrowe01.com\/index.php\/category\/personal-softwareandit\/"},{"label":"2022 &#8211; Code and Cloud","link":"https:\/\/michaelrowe01.com\/index.php\/personal-softwareandit\/2022-code-and-cloud\/"}],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2022\/01\/Screen-Shot-2022-01-01-at-17.12.06-2.png?fit=1480%2C861&ssl=1","jetpack_shortlink":"https:\/\/wp.me\/p2aMa8-CF","jetpack-related-posts":[],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/michaelrowe01.com\/index.php\/wp-json\/wp\/v2\/posts\/2397","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/michaelrowe01.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/michaelrowe01.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/michaelrowe01.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/michaelrowe01.com\/index.php\/wp-json\/wp\/v2\/comments?post=2397"}],"version-history":[{"count":2,"href":"https:\/\/michaelrowe01.com\/index.php\/wp-json\/wp\/v2\/posts\/2397\/revisions"}],"predecessor-version":[{"id":2402,"href":"https:\/\/michaelrowe01.com\/index.php\/wp-json\/wp\/v2\/posts\/2397\/revisions\/2402"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/michaelrowe01.com\/index.php\/wp-json\/wp\/v2\/media\/2400"}],"wp:attachment":[{"href":"https:\/\/michaelrowe01.com\/index.php\/wp-json\/wp\/v2\/media?parent=2397"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/michaelrowe01.com\/index.php\/wp-json\/wp\/v2\/categories?post=2397"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/michaelrowe01.com\/index.php\/wp-json\/wp\/v2\/tags?post=2397"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}