{"id":3022,"date":"2023-06-05T21:14:49","date_gmt":"2023-06-06T01:14:49","guid":{"rendered":"https:\/\/michaelrowe01.com\/?p=3022"},"modified":"2023-06-05T21:14:52","modified_gmt":"2023-06-06T01:14:52","slug":"wwdc-2023-day-1-platform-state-of-the-union","status":"publish","type":"post","link":"https:\/\/michaelrowe01.com\/index.php\/blog\/wwdc-2023-day-1-platform-state-of-the-union\/","title":{"rendered":"WWDC 2023 &#8211; Day 1 &#8211; Platform State of the Union"},"content":{"rendered":"\n<p>Time to get into the details\u2026\u00a0Ok, this is a just a post of my raw notes, no real analysis.  I am looking forward to starting all the sessions tomorrow. But tonight I still have to watch the Design Awards.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Darian Adler &#8211; VP of Internet Technologies and Privacy<\/li>\n\n\n\n<li>Language, Frameworks, Tools, and Services come together to make a Platform<\/li>\n\n\n\n<li>Over 300 frameworks on Apple\u2019s products.&nbsp;<\/li>\n\n\n\n<li>Interesting to see Apollo Reddit app on their main screen<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"660\" height=\"371\" data-id=\"3026\" src=\"https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-05-at-16.41.41-2.png?resize=660%2C371&#038;ssl=1\" alt=\"\" class=\"wp-image-3026\" srcset=\"https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-05-at-16.41.41-2.png?resize=1024%2C576&amp;ssl=1 1024w, https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-05-at-16.41.41-2.png?resize=300%2C169&amp;ssl=1 300w, https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-05-at-16.41.41-2.png?resize=768%2C432&amp;ssl=1 768w, https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-05-at-16.41.41-2.png?resize=1536%2C864&amp;ssl=1 1536w, https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-05-at-16.41.41-2.png?w=1920&amp;ssl=1 1920w, https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-05-at-16.41.41-2.png?w=1320&amp;ssl=1 1320w\" sizes=\"auto, (max-width: 660px) 100vw, 660px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"660\" height=\"371\" data-id=\"3025\" src=\"https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-05-at-17.13.48-2.png?resize=660%2C371&#038;ssl=1\" alt=\"\" class=\"wp-image-3025\" srcset=\"https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-05-at-17.13.48-2.png?resize=1024%2C576&amp;ssl=1 1024w, https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-05-at-17.13.48-2.png?resize=300%2C169&amp;ssl=1 300w, https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-05-at-17.13.48-2.png?resize=768%2C432&amp;ssl=1 768w, https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-05-at-17.13.48-2.png?resize=1536%2C864&amp;ssl=1 1536w, https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-05-at-17.13.48-2.png?w=1920&amp;ssl=1 1920w, https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-05-at-17.13.48-2.png?w=1320&amp;ssl=1 1320w\" sizes=\"auto, (max-width: 660px) 100vw, 660px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"660\" height=\"371\" data-id=\"3024\" src=\"https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-05-at-17.14.34-2.png?resize=660%2C371&#038;ssl=1\" alt=\"\" class=\"wp-image-3024\" srcset=\"https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-05-at-17.14.34-2.png?resize=1024%2C576&amp;ssl=1 1024w, https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-05-at-17.14.34-2.png?resize=300%2C169&amp;ssl=1 300w, https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-05-at-17.14.34-2.png?resize=768%2C432&amp;ssl=1 768w, https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-05-at-17.14.34-2.png?resize=1536%2C864&amp;ssl=1 1536w, https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-05-at-17.14.34-2.png?w=1920&amp;ssl=1 1920w, https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-05-at-17.14.34-2.png?w=1320&amp;ssl=1 1320w\" sizes=\"auto, (max-width: 660px) 100vw, 660px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"660\" height=\"371\" data-id=\"3023\" src=\"https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-05-at-17.24.03-2.png?resize=660%2C371&#038;ssl=1\" alt=\"\" class=\"wp-image-3023\" srcset=\"https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-05-at-17.24.03-2.png?resize=1024%2C576&amp;ssl=1 1024w, https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-05-at-17.24.03-2.png?resize=300%2C169&amp;ssl=1 300w, https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-05-at-17.24.03-2.png?resize=768%2C432&amp;ssl=1 768w, https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-05-at-17.24.03-2.png?resize=1536%2C864&amp;ssl=1 1536w, https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-05-at-17.24.03-2.png?w=1920&amp;ssl=1 1920w, https:\/\/i0.wp.com\/michaelrowe01.com\/wp-content\/uploads\/2023\/06\/Screenshot-2023-06-05-at-17.24.03-2.png?w=1320&amp;ssl=1 1320w\" sizes=\"auto, (max-width: 660px) 100vw, 660px\" \/><\/figure>\n<\/figure>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Swift and SwiftUI\n<ul class=\"wp-block-list\">\n<li>Holly Borla &#8211; Engineering Manager<\/li>\n\n\n\n<li>New kind of API &#8211; Swift Macros, i.e. annotations\n<ul class=\"wp-block-list\">\n<li>Generates code in Xcode&nbsp;<\/li>\n\n\n\n<li>You can expand Macros to see what they will do.<\/li>\n\n\n\n<li>All macros provide custom feedback in Xcode<\/li>\n\n\n\n<li>Attached Macros, allows you to add functionality to your existing code, like @AddAsync to your function.&nbsp; Will expand during debugging your code so you can see what it does.<\/li>\n\n\n\n<li>Many of the new APIs will use Macros<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Can now do bidirectional interoperability with C++<\/li>\n\n\n\n<li>SwiftUI &#8211; updates\n<ul class=\"wp-block-list\">\n<li>New support for Pi Charts<\/li>\n\n\n\n<li>Expanded MapKit support<\/li>\n\n\n\n<li>Animation updates\n<ul class=\"wp-block-list\">\n<li>Auto transfer gesture velocity to animation<\/li>\n\n\n\n<li>.spring(duration:, bounce:)&nbsp;<\/li>\n\n\n\n<li>Animation in Symbols are now supported<\/li>\n\n\n\n<li>Animation Phase<\/li>\n\n\n\n<li>Full support for Key Framing<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>DataFlow &#8211; getting simpler, you will only have to deal with @State and @Environment\n<ul class=\"wp-block-list\">\n<li>You can use @Observable on a call (using annotation), it will set up for you, and you don\u2019t need to use @State<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>CoreData is now SwiftData.\n<ul class=\"wp-block-list\">\n<li>Uses Annotation with @Model macro and @Query.<\/li>\n\n\n\n<li>Update your widget with same @Query so now you can introduce data in classes<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>App Experiences \u2014 Johnathan\n<ul class=\"wp-block-list\">\n<li>WidgetKit\n<ul class=\"wp-block-list\">\n<li>Make your app more glanceable and usable.<\/li>\n\n\n\n<li>Minor updates to become available in new iPhone standby mode<\/li>\n\n\n\n<li>Available on iPad and MacDesktop<\/li>\n\n\n\n<li>New Widget Architecture allows for continuity&nbsp;<\/li>\n\n\n\n<li>Identify Background, and padding<\/li>\n\n\n\n<li>Add buttons or toggles allow for interactivity for your widget<\/li>\n\n\n\n<li>Can see widget timeline in Xcode previews\u2026 (this may help me fix my own app\u2019s widget issue)<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>AppIntents\n<ul class=\"wp-block-list\">\n<li>If you wrap your intent in an app shortcut it will show up next to your app in the shortcut app<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>TipKit\n<ul class=\"wp-block-list\">\n<li>Feature discovery in your app, allows your to educate your users.<\/li>\n\n\n\n<li>You can create simple targeting to functionality.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>AirDrop\n<ul class=\"wp-block-list\">\n<li>Tap share sheet between devices and that passes data between devices.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Hardware Features\n<ul class=\"wp-block-list\">\n<li>Gaming\n<ul class=\"wp-block-list\">\n<li>Easier than every to port games to Mac\n<ul class=\"wp-block-list\">\n<li>It evaluates your existing game via emulation environment<\/li>\n\n\n\n<li>Cover and compile shaders &#8211; via Metal Shader converter (supported in Xcode and on Windows)<\/li>\n\n\n\n<li>MetalFX allows for straightforward porting of code<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Camera\n<ul class=\"wp-block-list\">\n<li>AVCapture\n<ul class=\"wp-block-list\">\n<li>Zero Shutter Lag, Overlapping Captures, Deferred Processing (move Deep Fusion into the background)<\/li>\n\n\n\n<li>Later this year &#8211; Volume Shutter buttons<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>HDR capable displays will increase photography improvements information on displays.&nbsp; There is no industry standard for photos, so Apple has been working with industry to create ISO HDR standard for photos.<\/li>\n\n\n\n<li>Video Conferencing\n<ul class=\"wp-block-list\">\n<li>Reactions etc. added in the camera app by default. But you can capture that it is being used to update things your app<\/li>\n\n\n\n<li>Screen Capture Kit &#8211; allows for better screen sharing (just share the 2 apps you want)<\/li>\n\n\n\n<li>Added external camera support with iPad and tvOS<\/li>\n\n\n\n<li>Continuity Camera can be used easily in the code.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>WatchOS\n<ul class=\"wp-block-list\">\n<li>containerBackground, Pagination, ToolBarItem, and Navigation Split View, and new Spring Animation. IF you are using SwiftUI it will be automatic for you<\/li>\n\n\n\n<li>New custom workout API<\/li>\n\n\n\n<li>New core motion API &#8211; for swing analysis (like golf or tennis)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Values\n<ul class=\"wp-block-list\">\n<li>Chris Fleizach Sr. Manager Accessibility\n<ul class=\"wp-block-list\">\n<li>1.3 B people with disabilities around the world.<\/li>\n\n\n\n<li>Added ability to detect doors in magnifier app.<\/li>\n\n\n\n<li>Animation and flashing lights sensitive &#8211;\n<ul class=\"wp-block-list\">\n<li>Pause Animated Images &#8211; stops animation in animated GIFs<\/li>\n\n\n\n<li>Dim Flashing Lights &#8211; will darken screen automatically when flashing lights occur (automatically if you use AVFoundation) &#8211; Apple Open Source this algorithm<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>VisionOS has tons of Accessibility features built in from the start<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Katie &#8211; Privacy\n<ul class=\"wp-block-list\">\n<li>Privacy prompt improvements. Like Add only permission for Calendars.&nbsp; Photos have new picker&nbsp;<\/li>\n\n\n\n<li>App Privacy &#8211; help users to show how you protect their data.\n<ul class=\"wp-block-list\">\n<li>For Third Party SDKs &#8211; Privacy Manifests &#8211; this will be combined for a summary&nbsp;<\/li>\n\n\n\n<li>Supply Chain Signatures for third party SDKs to validate it was signed correctly<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Communication Safety\n<ul class=\"wp-block-list\">\n<li>This was added to messages in iOS15<\/li>\n\n\n\n<li>It is now available across the entire platform&nbsp; &#8211; Sensitivity Content Framework, added blurring too.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Chris Markiewicz &#8211; App Store\n<ul class=\"wp-block-list\">\n<li>Merchandizing UI for improved exposure in StoreKit<\/li>\n\n\n\n<li>Can add subscription store view easily and it works across all platforms.<\/li>\n\n\n\n<li>Will automatically determine version to show the user<\/li>\n\n\n\n<li>SKAdNetwork &#8211; for measuring downloads based on Advertising, can now measure reengagement.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Tools\n<ul class=\"wp-block-list\">\n<li>Ken Orr &#8211; Sr. Mgr Xcode and Swift Playgrounds\n<ul class=\"wp-block-list\">\n<li>Xcode &#8211;\n<ul class=\"wp-block-list\">\n<li>Code completion will use surrounding code for prioritization, will also automatically define symbols for your assets<\/li>\n\n\n\n<li>Previews &#8211; using swift Macros<\/li>\n\n\n\n<li>Works across all UI Frameworks<\/li>\n\n\n\n<li>Git Staging is integrated in Xcode<\/li>\n\n\n\n<li>Can see unpushed commits<\/li>\n\n\n\n<li>Testing &#8211;\n<ul class=\"wp-block-list\">\n<li>Redesign of test report, includes video recording of test results with navigation timeline.<\/li>\n\n\n\n<li>Can show accessibility frames<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Xcode cloud\n<ul class=\"wp-block-list\">\n<li>Have improved workflows<\/li>\n\n\n\n<li>Added tester notes for test flight<\/li>\n\n\n\n<li>Linker speed increased<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Deep dive into Vision OS\n<ul class=\"wp-block-list\">\n<li>Michael &#8211; VP\n<ul class=\"wp-block-list\">\n<li>Fundamentals &#8211; actions create&nbsp;<\/li>\n\n\n\n<li>Windows<\/li>\n\n\n\n<li>volume<\/li>\n\n\n\n<li>spaces<\/li>\n\n\n\n<li>Dedicated full space<\/li>\n\n\n\n<li>SwiftUI and UIKit, for UI<\/li>\n\n\n\n<li>RealityKit for visual and spatial audio<\/li>\n\n\n\n<li>AR Kit for objects<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<ul class=\"wp-block-list\">\n<li>With SwiftUI you can add depth or a 3d Object for layering. Vision Apps can then separate those depth objects<\/li>\n\n\n\n<li>Using .offset(z: value)<\/li>\n\n\n\n<li>Creating a Volume in SwiftUI<\/li>\n\n\n\n<li>And SwiftUI renders thru RealityKit<\/li>\n\n\n\n<li>Ornaments are for controls and toolbars<\/li>\n<\/ul>\n\n\n\n<ul class=\"wp-block-list\">\n<li>For full scenes &#8211; you want to use RealityKit\n<ul class=\"wp-block-list\">\n<li>Automatically adjusts to lighting conditions<\/li>\n\n\n\n<li>Can also create portals into 3D Scenes&nbsp;<\/li>\n\n\n\n<li>Dynamic Foveation &#8211; uses eye tracking to focus processing power on the area the user is actually looking&nbsp;<\/li>\n\n\n\n<li>IBL &#8211; Image Based Lighting object for customizing lighting effects<\/li>\n\n\n\n<li>Material X is shader for environment<\/li>\n\n\n\n<li>Can add attachments to 3d Objects<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<ul class=\"wp-block-list\">\n<li>ARKit &#8211; allows objects to interact with the real world\n<ul class=\"wp-block-list\">\n<li>Always running &#8211; persistence and world mapping is automatically handled for you<\/li>\n\n\n\n<li>Plane Estimation<\/li>\n\n\n\n<li>Scene ??<\/li>\n\n\n\n<li>Image Anchoring<\/li>\n\n\n\n<li>World Tracking&nbsp;<\/li>\n\n\n\n<li>Skeletal Hand Tracking<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Accessibility\n<ul class=\"wp-block-list\">\n<li>People with physical or motor issue can use eyes, or voice<\/li>\n\n\n\n<li>Can use finger, arm or head for selection<\/li>\n\n\n\n<li>Supports VoiceOver information&nbsp;<\/li>\n\n\n\n<li>Dynamic Type, Reduced Transparency and Accessibility UX features are available<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<ul class=\"wp-block-list\">\n<li>These Busca-Aegeria &#8211; development tools\n<ul class=\"wp-block-list\">\n<li>Xcode has it all in it.<\/li>\n\n\n\n<li>Simulator has multiple scenes for lighting<\/li>\n\n\n\n<li>MacVirtual Display&nbsp;<\/li>\n\n\n\n<li>Reality Composer Pro &#8211; to import and organize 3D Objects and integrates in Xcode for development workflow<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Jason &#8211; Tour\n<ul class=\"wp-block-list\">\n<li>Demo of Reality Composer Pro<\/li>\n\n\n\n<li>Test Flight will be available on the device from the start<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Unity &#8211; using their tools on top of RealityKit\n<ul class=\"wp-block-list\">\n<li>They can coexist int he share space&nbsp;<\/li>\n\n\n\n<li>Ralph from Unity\n<ul class=\"wp-block-list\">\n<li>Can bring over Unity work and reimagine it for VisionPro\n<ul class=\"wp-block-list\">\n<li>Demo of What the Golf<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Additional Features\n<ul class=\"wp-block-list\">\n<li>Goals &#8211; Use Features and Preserve Privacy<\/li>\n\n\n\n<li>Virtual Sound should behave as if it is real in the room.&nbsp; There is a realtime spatial audio and rendering.<\/li>\n\n\n\n<li>User Input is private by design.<\/li>\n\n\n\n<li>Sharing and Collaboration, can use share play to share any window on FaceTime call.<\/li>\n\n\n\n<li>Personas are in 3d for other VisionPro users\u2026<\/li>\n\n\n\n<li>Spacial Personas, will show them in the same space (outside of the window).\n<ul class=\"wp-block-list\">\n<li>Will be available as a developer preview later this year<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<ul class=\"wp-block-list\">\n<li>What\u2019s next\n<ul class=\"wp-block-list\">\n<li>Start design, developing, and testing, Vision dev kit will be available later this month.<\/li>\n\n\n\n<li>To see how your app works, there will be a visionPro lab in US this will be in Cupertino, in Germany is in M\u00fcnchen.&nbsp;<\/li>\n\n\n\n<li>Band new Appstore&nbsp;<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Time to get into the details\u2026\u00a0Ok, this is a just a post of my raw notes, no real analysis. I am looking forward to starting all the sessions tomorrow. But tonight I still have to watch the Design Awards.<\/p>\n","protected":false},"author":1,"featured_media":0,"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":"","footnotes":""},"categories":[2,3],"tags":[217,257,687,688,404,682,428,680],"class_list":["post-3022","post","type-post","status-publish","format-standard","hentry","category-blog","category-personal-softwareandit","tag-ios","tag-macos","tag-platforms","tag-sotu","tag-tvos","tag-visionos","tag-watchos","tag-wwdc23"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/michaelrowe01.com\/index.php\/wp-json\/wp\/v2\/posts\/3022","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=3022"}],"version-history":[{"count":1,"href":"https:\/\/michaelrowe01.com\/index.php\/wp-json\/wp\/v2\/posts\/3022\/revisions"}],"predecessor-version":[{"id":3027,"href":"https:\/\/michaelrowe01.com\/index.php\/wp-json\/wp\/v2\/posts\/3022\/revisions\/3027"}],"wp:attachment":[{"href":"https:\/\/michaelrowe01.com\/index.php\/wp-json\/wp\/v2\/media?parent=3022"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/michaelrowe01.com\/index.php\/wp-json\/wp\/v2\/categories?post=3022"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/michaelrowe01.com\/index.php\/wp-json\/wp\/v2\/tags?post=3022"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}