<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Arthur Van Siclen on Medium]]></title>
        <description><![CDATA[Stories by Arthur Van Siclen on Medium]]></description>
        <link>https://medium.com/@arthurofbabylon?source=rss-3afecef24601------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/1*UFED7F4heogwj8gq3WBntA@2x.jpeg</url>
            <title>Stories by Arthur Van Siclen on Medium</title>
            <link>https://medium.com/@arthurofbabylon?source=rss-3afecef24601------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Tue, 28 Apr 2026 18:28:51 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@arthurofbabylon/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com" rel="hub"/>
        <item>
            <title><![CDATA[Writing Tools + Apple Intelligence]]></title>
            <link>https://medium.com/minimal-notes/writing-tools-apple-intelligence-22b4e94cbae0?source=rss-3afecef24601------2</link>
            <guid isPermaLink="false">https://medium.com/p/22b4e94cbae0</guid>
            <category><![CDATA[large-language-models]]></category>
            <category><![CDATA[ai]]></category>
            <category><![CDATA[apple]]></category>
            <category><![CDATA[llm]]></category>
            <category><![CDATA[apple-intelligence]]></category>
            <dc:creator><![CDATA[Arthur Van Siclen]]></dc:creator>
            <pubDate>Sat, 15 Nov 2025 13:17:11 GMT</pubDate>
            <atom:updated>2025-11-18T17:32:35.178Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/960/0*usbfr-arTlLWCq0B.png" /></figure><p>At Minimal we deliberately took our time to decide how we would integrate generative AI. There is a lot of hype, and we wanted to let the dust settle before building Large Language Models (LLMs) into our writing app.</p><p>Quality is one of our critical values. When embracing a “less is more” philosophy, a lower volume necessitates higher standards and refined execution. Our writers often have just a handful of active notes — that is not something that we can pollute with endless iterations. While <a href="https://effectivefaith.medium.com/notions-biggest-problem-will-never-be-solved-e-f-shorts-90eff8316360?ref=blog.minimal.app">some apps</a> encourage more and more “content,” that is not a strategy that will work for our community of writers. (Indeed, the word “content” is a pejorative, and “more content” is even worse.)</p><p>We needed to find a way to integrate LLMs that makes writers’ notes better, instead of simply producing more and more notes. We’ve landed on a strategy that fulfills our goal.</p><p>In the coming days writers will see a new button on the formatting panel for activating Writing Tools. Writing Tools is <a href="https://www.apple.com/apple-intelligence/?ref=blog.minimal.app">Apple Intelligence</a>’s on-device way to summarize, proof-read, rewrite, and adjust tone. It is built deep inside of <a href="https://developer.apple.com/documentation/uikit/using-textkit-2-to-interact-with-text?ref=blog.minimal.app">TextKit</a>, and it is both <a href="https://support.apple.com/guide/iphone/apple-intelligence-and-privacy-iphe3f499e0e/ios?ref=blog.minimal.app">secure</a> and high-performance.</p><p>This minimalist approach to working with LLM’s and AI offers a lot of advantages:</p><ul><li>As Apple makes its models better Minimal automatically benefits from these improvements</li><li>Using Writing Tools does not produce new notes (more “content”), keeping writers’ notes list clean and focused</li><li>Writing Tools revolves around real purpose</li><li>The feature stays out of the way unless directly engaged</li></ul><p>To use Writing Tools, tap or click the Writing Tools button on the formatting keyboard or by long-pressing/right-clicking selected text.</p><p>Important details:</p><ul><li>Writing Tools are available on Apple’s latest hardware and iOS 18.2+ in most regions.</li><li>Edits can be undone with the undo button, command-z (Mac, iPad), or shaking the device (iPhone).</li><li>Code blocks, block and pull quotes, folders, and links are all exempt from auto-edits; to apply Writing Tools to these parts of your text you will need to specifically highlight them.</li></ul><p>We do see more opportunity to integrate LLM’s into our app, but we will wait until we have validated utility for our writers before implementing our ideas, and we will never force AI down our community’s throat.</p><p>(We’re exploring other ideas including right-click-to-summarize, converting the <a href="https://minimal.app/?ref=blog.minimal.app#note-lifetime">Note Lifetime feature</a> from one of sudden death to a gradual decay by way of progressive summarization, advanced search that leans into the powerful chips of Apple’s newest hardware, and integrations with <a href="https://chatgpt.com/?ref=blog.minimal.app">ChatGPT</a> and <a href="https://claude.ai/?ref=blog.minimal.app">Claude</a>. If you have strong ideas for us, please get in touch.)</p><p>We are excited to hear about how you’re using this powerful new feature. Keep an eye out for Minimal 1.22 in the <a href="https://apps.apple.com/app/id1442727443?ref=blog.minimal.app">App Store</a> and on TestFlight, and let us know what new patterns emerge in your writing and notetaking.</p><p>(PS — We wrote this the old-fashioned way: by typing on a computer. One Writing Tools proof-read pass showed 12 typos or errors, but we left them in.)</p><p><em>Originally published at </em><a href="https://blog.minimal.app/ai-writing-tools/"><em>https://blog.minimal.app</em></a><em> on November 15, 2025.</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=22b4e94cbae0" width="1" height="1" alt=""><hr><p><a href="https://medium.com/minimal-notes/writing-tools-apple-intelligence-22b4e94cbae0">Writing Tools + Apple Intelligence</a> was originally published in <a href="https://medium.com/minimal-notes">Minimal | Notes</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Details: App Switcher + Keyboard Input Accessory Views]]></title>
            <link>https://medium.com/minimal-notes/details-app-switcher-keyboard-input-accessory-views-ff447b596e9f?source=rss-3afecef24601------2</link>
            <guid isPermaLink="false">https://medium.com/p/ff447b596e9f</guid>
            <category><![CDATA[apple]]></category>
            <category><![CDATA[ios]]></category>
            <category><![CDATA[swift]]></category>
            <category><![CDATA[code]]></category>
            <category><![CDATA[design]]></category>
            <dc:creator><![CDATA[Arthur Van Siclen]]></dc:creator>
            <pubDate>Wed, 11 Jan 2023 09:03:02 GMT</pubDate>
            <atom:updated>2023-01-11T09:03:02.130Z</atom:updated>
            <content:encoded><![CDATA[<p>Sometime during iOS 15 or iOS 16, the visibility of the iOS keyboard stopped controlling the visibility of input accessory views. The effect is out-of-place, floating elements visible while switching between apps. (See Figure 1.)</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*f2z80BYB_62K35TRFh5Hzw.jpeg" /><figcaption><strong>Figure 1. App Switcher.</strong> The left image shows the floating keyboard accessory view that normally sits above the iOS keyboard, the middle image highlights the offending floating element, and the right image displays the correct behavior.</figcaption></figure><p>The fix is easy: listening to scene lifecycle changes. Specifically, we’re intereseted in <em>UISceneDidEnterBackgroundNotification</em> and <em>UISceneWillEnterForegroundNotification</em>. (Apple’s documentation <a href="https://developer.apple.com/documentation/uikit/app_and_environment/managing_your_app_s_life_cycle">here</a>.)</p><p><strong>Objective-C:</strong></p><pre>- (void)listenForSceneLifecycleChanges {<br>    [[NSNotificationCenter defaultCenter] addObserver:self<br>                                             selector:@selector(hideKeyboardForSceneLifecycle)<br>                                                 name:UISceneDidEnterBackgroundNotification<br>                                               object:NULL];<br>    [[NSNotificationCenter defaultCenter] addObserver:self<br>                                             selector:@selector(showKeyboardForSceneLifecycle)<br>                                                 name:UISceneWillEnterForegroundNotification<br>                                               object:NULL];<br>}<br>- (void)hideKeyboardForSceneLifecycle {<br>    self.formattingKeyboard.hidden = YES;<br>}<br>- (void)showKeyboardForSceneLifecycle {<br>    self.formattingKeyboard.hidden = NO;<br>}</pre><p><strong>Swift:</strong></p><pre>func listenForSceneLifecycleChanges() {<br>    NotificationCenter.default.addObserver(self, selector: #selector(hideKeyboardForSceneLifecycle), name: UIScene.didEnterBackgroundNotification, object: nil)<br>    NotificationCenter.default.addObserver(self, selector: #selector(showKeyboardForSceneLifecycle), name: UIScene.willEnterForegroundNotification, object: nil)<br>}<br><br>func hideKeyboardForSceneLifecycle() {<br>    formattingKeyboard.isHidden = true<br>}<br><br>func showKeyboardForSceneLifecycle() {<br>    formattingKeyboard.isHidden = false<br>}</pre><p>For tools we use every day, the details matter. Each interaction adds up. Small, joyous moments turn into an overall feeling of joy when we next encounter the tool. Flaws have a similar effect, negating the beautiful details (at best) or introducing friction (at worst).</p><p>For <a href="https://minimal.app">Minimal</a>, this type of attention to detail pushes the app into the category of delightful tools. There’s a reason Minimal is loved by so many writers (despite seeing a fraction of the downloads we see with other, higher-volume-by-download apps), and I’m confident that getting the small, boring, everyday details right plays a significant role in improving customer retention and boosting writer delight.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*4Wf7TNcDUGBxBLpAZ_kAbw.png" /></figure><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=ff447b596e9f" width="1" height="1" alt=""><hr><p><a href="https://medium.com/minimal-notes/details-app-switcher-keyboard-input-accessory-views-ff447b596e9f">Details: App Switcher + Keyboard Input Accessory Views</a> was originally published in <a href="https://medium.com/minimal-notes">Minimal | Notes</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Case study: Building a profitable app in 30 days]]></title>
            <link>https://medium.com/design-bootcamp/building-a-profitable-app-in-30-days-4935a4b55bfb?source=rss-3afecef24601------2</link>
            <guid isPermaLink="false">https://medium.com/p/4935a4b55bfb</guid>
            <category><![CDATA[design]]></category>
            <category><![CDATA[ios-app-development]]></category>
            <category><![CDATA[product-design]]></category>
            <category><![CDATA[ios]]></category>
            <category><![CDATA[software-development]]></category>
            <dc:creator><![CDATA[Arthur Van Siclen]]></dc:creator>
            <pubDate>Wed, 06 Oct 2021 20:28:02 GMT</pubDate>
            <atom:updated>2021-10-09T23:50:03.623Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*1jWuYgImh-W9HjJMvooWcA.jpeg" /><figcaption><a href="https://apps.apple.com/us/app/shape-lucid-dreaming/id1577026266">Shape</a> is a lucid dreaming app for iOS.</figcaption></figure><p>I just built <a href="https://apps.apple.com/us/app/shape-lucid-dreaming/id1577026266">Shape</a>, a lucid dreaming app for iPhone. It took 30 days to design the app, build it, produce the audio guides, and ship it in the App Store. Here’s how I did it.</p><h3>Design Phase</h3><p>Lucid dreaming is the art of awakening within the dreamworld. Once aware of the nature of the dream, it’s easy to control it. You can fly, overcome fears, learn new skills, anything. I learned to lucid dream many years ago and improved my technique while studying yoga (dreams are especially important in the Tibetan yoga traditions). I knew I wanted to create a lucid dreaming app because it would help people proactively work with their mind, even if they’re not interested in meditation.</p><p>I wasn’t sure what a lucid dreaming app should look like, and that’s a good thing. Defining problems and solutions too early is the most common design error, so it’s healthy to let ideas stay unformed for a while. I let a few months pass with this vague concept in the back of my mind. I didn’t write anything down, I just let the idea sit there while I worked on other things and rock climbed.</p><p>Then one inspired day I opened Figma and drew some sketches of the app. I like to start with low-fidelity sketches, but for some reason I went straight into visual design and formed a motif.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*KEir5ETvPQCpB9oLvFxsqA.jpeg" /></figure><p>I liked this idea of foreground gradients that subtly change — I’ve never seen that before in a software interface, so I knew it would be distinctive and eye-catching. (While animated <em>background</em> gradients are totally a thing, <em>foreground</em> or <em>active</em> element gradients are pretty rare, it seems.)</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*pzFz-a0NjQpNviNmkVQY0g.jpeg" /></figure><p>Earlier in the day I had looked at some package that arrived in the mail and noticed a monospace typeface. This typeface made me think the package was kind of fake, like something out of a sci-fi film. It seemed appropriate for an app that was designed to make people question whether or not their experience is real, so I went into my notes app and looked for my list of favorite typefaces, and saw <a href="https://www.jetbrains.com/lp/mono/">JetBrains Mono</a>. I thought something like “damn, what a typeface” and knew this needed inclusion in the app.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*hWv5d-1iXiYBltEPDZ5sZQ.jpeg" /><figcaption>Shape’s type system, showcasing 6 sizes/weights of JetBrains Mono.</figcaption></figure><p>One fortunate thing about being a designer who also writes code is that I can make decisions early and save immense volumes of engineering resources. In this case, I went full-on with system features and minimized custom functionality/interfaces in order to trim down the engineering phase to the bare minimum. The result isn’t just an easier-to-build app, but also an easier-to-use app. Perfect. <em>(Side note: when the simplest solution is also the cheapest solution, you know you’re on the right path.)</em></p><p>To sum up the design phase…</p><ul><li>The feature set was discovered with months of passive ideation</li><li>The brand and visual design was laid out in a half-day’s Figma session</li><li>The app’s flow was quickly refined with an awareness of iOS system frameworks (I decided to do what’s simplest, writing the least amount of code)</li></ul><h3>Build Phase</h3><p>To build the app, I need to do two things: write the code that makes it work, and craft the audio guides that constitute the lucid dreaming coach.</p><p>I decided to use SwiftUI to build this app, because I wanted to understand this new paradigm better. I love Objective-C and continue to write a lot of code in Objective-C, but I like to kill multiple birds with single stones and the easiest way to do that is to always be learning. I had previously created some home screen widgets in SwiftUI, so I wasn’t totally frightened.</p><p><a href="https://designcode.io">Design+Code</a>’s SwiftUI courses were an amazing resource for learning SwiftUI. I went through several of them, and had a blast. Many of the features from those courses were relatively applicable to the lucid dreaming app, and I’ve always founds that immediately applying lessons and techniques from tutorials into one’s own work to be the best way to solidify them and take ownership.</p><p>After about ten days I had learned the basics of SwiftUI and built a portion of the lucid dreaming app. With ten more days, the app was basically complete. What remained was the audio content.</p><h3>Crafting Audio Guides</h3><p>I had previously created audio for my app <a href="https://apps.apple.com/us/app/timeless-meditation/id1183067514">Timeless</a>, so I was no stranger to the process. I knew how to record, how to edit the tracks, and how to convert the audio files into the ideal format for delivery. My girlfriend is a voice actor — so we have a home studio that’s an inspiring space for recording sessions.</p><p>My background is actually in teaching yoga, not crafting apps, so designing the lucid dreaming training was exactly the kind of thing I am suited for. I’ve taught meditation to in-person and remote audiences, and many of the techniques carry over to teaching other things.</p><p>Each day for about ten days I drove into the mountains, walked into the boulder fields, drank some coffee, read my book, and as inspiration landed wrote the transcripts for the audio guides. Then I went bouldering. When I got home, I recorded what I had written, tried it out, and refined it.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*9NKtRudpIvwaonPzzAYFzQ.jpeg" /><figcaption>The author en route to the boulder fields of Rocky Mountain National Park.</figcaption></figure><h3>Shipping Shape</h3><p>I’m terrible at launching the things I create. I indulge in that phase of perfecting things, like a craftsman in a workshop delighting in the creation. But it’s not fair to other people — they need this app. And from a business perspective, just ship. Ship early. Ship often. Get it out there.</p><p>The key for me was understanding this one fact: I can optimize this app now, for my current mindset… or I can optimize this app later when I learn more from real people using it. That latter option is just so obviously superior that it’s now fairly easy to save features and improvements for versions 2, 3, 4, and 5.</p><p><a href="https://apps.apple.com/us/app/shape-lucid-dreaming/id1577026266">Download Shape and learn to lucid dream.</a> If you’re interested in writing, meditation, or tea, check out the other apps I design and build <a href="https://arthurvansiclen.com">right here</a>.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=4935a4b55bfb" width="1" height="1" alt=""><hr><p><a href="https://medium.com/design-bootcamp/building-a-profitable-app-in-30-days-4935a4b55bfb">Case study: Building a profitable app in 30 days</a> was originally published in <a href="https://medium.com/design-bootcamp">Bootcamp</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Shape’s Lightweight Design System]]></title>
            <link>https://medium.com/minimal-notes/shapes-lightweight-design-system-76527e0372dc?source=rss-3afecef24601------2</link>
            <guid isPermaLink="false">https://medium.com/p/76527e0372dc</guid>
            <category><![CDATA[ios]]></category>
            <category><![CDATA[design]]></category>
            <category><![CDATA[design-thinking]]></category>
            <category><![CDATA[lucid-dreaming]]></category>
            <category><![CDATA[iphone]]></category>
            <dc:creator><![CDATA[Arthur Van Siclen]]></dc:creator>
            <pubDate>Wed, 22 Sep 2021 19:53:29 GMT</pubDate>
            <atom:updated>2021-09-22T19:53:29.901Z</atom:updated>
            <content:encoded><![CDATA[<p><em>Shape is a lucid dreaming app for iPhone and iPad, helping people wake up within their dreams.</em></p><p>—</p><p>In crafting Shape’s design system, simplicity was at the forefront of my mind. I wanted this build phase to go quickly (1 month), and I knew that a simple set of rules and a limited quiver would allow for the greatest agility and speed of execution. I also knew that Shape’s design needed to evoke the dreamworld — this would be key to inspiring people to really give the app a try.</p><p>I settled on a series of gradients that animate so slowly that the changes are almost imperceptible, with a monospace typeface reminiscent of science fiction, and an absence of in-app symbols to further evoke Shape’s dream-like quality.</p><p><em>(This essay displays static gradients — to see the full effect of animated gradients please </em><a href="https://shapedream.co"><em>download Shape</em></a><em>.)</em></p><h4>Key Screens</h4><p>Here are the four most important visual experiences within Shape: the introductory tutorial slide, the dream guide audio controls, the dream journal, and an example settings screen.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*PM7kKjoWva2fI9o6AMdXhA.jpeg" /><figcaption>More than a settings screen, the am-i-dreaming preferences also strengthen the brand and provide practical guidance.</figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*aTnLEtF3JENApd4Nx8nT8g.jpeg" /><figcaption>The intro slides are the most important visual experience in the app. Everyone sees these screens, and they are the first point that Shape begins to build trust and inspire dreamers.</figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*ZaEOJDuvTexDHKColTSeUQ.jpeg" /><figcaption>The audio player is as simple as possible while providing full control over audio playback. Upon completing one guide, dreamers can press a button to start playing the next.</figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*VUdsOM9H20kcUXry0r6PCQ.jpeg" /><figcaption>A dream journal designed for nighttime. The always-dark display is gentle on the eyes. Always-uppercased text encourages dreamers to embrace typos and mistakes and focus on rapidly recording their dreams.</figcaption></figure><h4>Visual Elements</h4><p>These components make up the interactive visual elements.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*0xeA5OJwOhT0y3auWJTpaw.jpeg" /><figcaption>Tab bar devoid of icons to reduce overall symbolism within the Shape app.</figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*cTyVCwP9f3G1TteDw6BB6Q.jpeg" /><figcaption>Primary button in use throughout the Shape app for performing important actions, making in-app purchases, and enabling key features.</figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*H3n0InRibPN7bruqCcubmw.jpeg" /><figcaption>Lucidity toggle showing the inactive and active states. In the dream journal, dream entries can be marked as lucid.</figcaption></figure><h4>Typeface and Font Styles</h4><p>The type system is elegant. Shape has 6 sizes/weights/levels-of-emphasis and they all scale with <a href="https://developer.apple.com/documentation/uikit/uifont/scaling_fonts_automatically">Apple’s Dynamic Type</a>. The typeface is <a href="https://www.jetbrains.com/lp/mono/">JetBrains Mono</a>, which evokes a dreamlike unreality, further strengthening Shape’s ever-changing motif.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*0E9agh8S51NjA9B4TrE5SA.jpeg" /><figcaption>JetBrains Mono in all six of Shape’s font styles.</figcaption></figure><p><em>(While type is generally all uppercased, we do plan for a variant that uses sentence case in some instances to address readability and accessibility.)</em></p><h4>Changing Gradients</h4><p>The gradients are one of my favorite elements of the design system. To accomplish that subtle, slow, almost imperceptible animation, the hue rotates around the 360° spectrum. Within the app, the gradient colors are chosen semi-randomly.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*f5JU-yM1z70_Y9J2Pi4l9A.jpeg" /><figcaption>To see the gradients animate, <a href="https://shapedream.co">download Shape</a>.</figcaption></figure><h4>The Role of Symbols</h4><p>Shape is a lucid dreaming app, and within the dreamworld symbols have this outsize weight. In order to respect that quality and avoid interfering with dreamers’ personal experiences, I opted to minimize symbols within the Shape app. Icons only appear where they are truly supportive.</p><p>In software design, I believe that icons are either overused or poorly selected. When I encounter an icon-rich visual experience, I tend to ignore everything. When the icons are instead reserved for the most important actions, my attention automatically goes there. It’s a form of hierarchy.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*iN5BoCyxIqZGbEA3twRXGw.jpeg" /><figcaption>Shape uses SF symbols and keeps their application sparse.</figcaption></figure><h4>Regarding SwiftUI</h4><p>This is my first full SwiftUI app, and I want to acknowledge something fresh and remarkable: for the first time, the design system (its rules, recommendations, and resources) lives almost entirely in the codebase. SwiftUI is semantic in this very human way. So “human” that code composition even follows certain human language patterns like mimicry and imprecise heuristics. It’s ideal for a built-in design system that just works.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*--WcI5VfB78GKi2twWWMow.png" /><figcaption>The gradients’ hue rotation animation is a standardized view modifier.</figcaption></figure><p>Halfway through the build phase, I was surprised to stumble upon a wonderful benefit of such a simple design system: an ease of process that makes everything feel almost already accomplished by the time I sit down to get to work.</p><p>That’s the power of simplicity — instead of spending time and effort to decide how to work with the system, the system allows for creations to come forth…not unlike the contents of a dream appearing in the mind.</p><p><em>Thanks for diving in to Shape’s design. My name is </em><a href="https://arthurvansiclen.com"><em>Arthur Van Siclen</em></a><em>, and I crafted Shape alongside other meditation-inspired apps designed to improve self-awareness, open the mind, and help us achieve our most beautiful aspirations.</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=76527e0372dc" width="1" height="1" alt=""><hr><p><a href="https://medium.com/minimal-notes/shapes-lightweight-design-system-76527e0372dc">Shape’s Lightweight Design System</a> was originally published in <a href="https://medium.com/minimal-notes">Minimal | Notes</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[My Journey Learning to Lucid Dream]]></title>
            <link>https://medium.com/@arthurofbabylon/my-journey-learning-to-lucid-dream-8bd0113a5756?source=rss-3afecef24601------2</link>
            <guid isPermaLink="false">https://medium.com/p/8bd0113a5756</guid>
            <category><![CDATA[therapy]]></category>
            <category><![CDATA[sleeping]]></category>
            <category><![CDATA[sleep]]></category>
            <category><![CDATA[meditation]]></category>
            <category><![CDATA[lucid-dreaming]]></category>
            <dc:creator><![CDATA[Arthur Van Siclen]]></dc:creator>
            <pubDate>Wed, 22 Sep 2021 19:49:33 GMT</pubDate>
            <atom:updated>2023-11-16T18:27:38.461Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*4fWzbXMa6sb7Yd5qWm3MFQ.jpeg" /></figure><p><em>This story now lives at Shape’s website, </em><a href="https://www.shapedream.co/lucid-dreaming/my-journey-learning-to-lucid-dream"><em>right here</em></a><em>.</em></p><p>I began to lucid dream as a teenager sent off to boarding school. It was a perfect learning environment: since the world around me was so controlled and defined, I felt powerless over my external experience. At the same time, my inner life was just beginning to blossom. If I wanted adventure, I had to find it within my own mind.</p><blockquote>I willfully lifted myself into the sky, like Peter Pan, understanding that my imagination and confidence form the boundary of what is possible.</blockquote><p>One day my art teacher, Cecil, taught our class yoga nidra. In yoga nidra, the practitioner falls asleep yet remains fully aware. He called it a relaxation exercise and only years later did I understand the context of what we had practiced as yoga or meditation. We all lay down on our backs, arms extended, and followed Cecil’s instructions as our conscious minds moved deep into the hidden layers of our unconscious and subconscious. It was amazing.</p><p>Later that night, no longer in a meditative state but just going about strict, boarding-school life, I had a series of epiphanies about who I am, why I do the things I do, and how I can better control myself. It was clear to me that the ideal lever in the complex cogs of personal growth and self discipline is enhanced self awareness. Without the momentary glimpse into the depths of the mind that yoga nidra had provided, I would not have made such fast progress.</p><p>The first two things I did in my pursuit of lucid dreaming was purchase Stephen LaBerge’s book, Lucid Dreaming, and start a dream journal.</p><p>I was perfectly disciplined in making contributions to my dream journal. As the pages filled, my ability to recall dreams became stronger and stronger until I was remembering four or five dreams each night, in vivid detail.</p><p>While it was a hassle to wake up and record dreams so often, losing maybe an hour of sleep each night, it was worth it. This discipline single-handedly increased the fidelity of the dreamworld and made it possible to attain some level of familiarity. As my habit of performing state tests and questioning reality was ingrained, becoming lucid in the dream world became inevitable.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*BOGA8q4uKO0ZzwxvhuZnVA.jpeg" /></figure><blockquote>Without the momentary glimpse into the depths of the mind that falling asleep while remaining conscious provided, I would not have made such fast personal progress.</blockquote><p>I had been hyping up this goal of mine for weeks, maybe months, and was taken aback by the qualities of my first lucid dream. It felt so ordinary. It felt normal, as if being conscious in the dream world is how life might naturally be. It was not so exciting, but typical.</p><p>When I woke up in my dormitory bed I felt this mixture of excitement for what I had accomplished, and an expected coolness. I kept writing down my dreams, I further ingrained the habit of questioning if I was dreaming, and moved on.</p><p>I had a series of lucid dreams where I quickly woke up after becoming lucid. I was too excited — I needed to stay calm, but I didn’t know how.</p><p>Then in one lucid dream, upon becoming lucid, I felt a sudden impulse to look deeper into the dreamscape and watch details emerge and the definitions and textures deepen. This was the key to remaining lucid: immediately upon realizing that this is a dream, strengthen and engage the dream world by paying very close attention to every detail.</p><p>In that same dream I went flying for the first time. I willfully lifted myself into the sky, like Peter Pan, understanding that my imagination and confidence form the boundary of what is possible.</p><p>Shortly thereafter I had a sexual experience while lucid dreaming, and learned a valuable lesson: indulging desires in the dream world comes along with all of their real-life consequences. I felt personally embarrassed with myself for being so narrow in the application of my will, as if I had missed the whole reason I was learning to lucid dream due to one simple impulse. Flying was more fulfilling. Facing fears was more fulfilling. Cultivating self-awareness was more fulfilling.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*UYV6txEDaLhl0iwCbHiJ3g.jpeg" /></figure><p>After developing some proficiency in lucid dreaming and exploring what’s possible, it quickly became evident that the real benefit of lucid dreaming is neither exciting nor glamorous. The best part is just being more self aware.</p><p>Most of our personal problems lie at the periphery of our conscious experience. Lucid dreaming — and improved awareness of dreamtime in general — brings these challenges and insights to a conscious level, making it easier to evolve in the ways we want to.</p><p>Every gardener can attest to this truth: just being aware of a problem oftentimes solves it.</p><p>I gradually stopped practicing lucid dreaming, although continued to have flashes of lucidity. I think I was tired of writing down so many dreams, and as my interest waned, my attention shifted elsewhere. One of the keys to lucid dreaming is really wanting to do it — an intention is half of the battle. From an intention, our attention points toward the goal and then it’s almost inevitable that we succeed, especially with something so imaginative and perspective-oriented as lucid dreaming.</p><p>Years later I began studying yoga with my teacher, N, at a small, Buddhist university in the US. We were studying dream yoga, and N told me and the class after reading from a sutra or ancient text, that karma is impacted 10 or 100 times more in a dream than in waking life. We can clear out karma, or form new karma, particularly when we are conscious in the dream world. So if one is to awaken in the dream world, they’re advised to meditate, as progress is sped up 10 or 100 fold.</p><p>Over the next few weeks I again had lucid dreams, and I followed my teacher’s advice. Meditating in the dream world felt incredible — not just amazingly joyous, but also fulfilling and profound, as if there was nothing better one could possibly do.</p><p>Now I am retraining myself to lucid dream.</p><p>I feel like life is shorter than ever before. Days pass, and then months pass, and I don’t want to squander these few moments of being awake and present on planet earth. Our lives are remarkable and wondrous, but they are short. Lucid dreaming allows me to move through life more slowly, to make the most out of each day (or night), to be maximally present.</p><p>As I build up the tools and techniques to lucid dream, I’m surprised at how much easier the whole process has become. Part of it is that my yoga and meditation practice has made working with the substance of the mind easier. But mostly, approaching lucid dreaming again with a fresh perspective — with a beginner’s mind, and with a little bit of confidence — makes everything more clear and obvious.</p><p>My main techniques are as follows…</p><p>1 / Write down dreams every night. At least one, but ideally all of them. One trick here is to remain motionless immediately upon waking up — once we move our bodies, we shake off the residue of the dreamworld.</p><p>2 / Question reality and perform state tests. I built an iPhone app with Am-I-Dreaming reminders, and I receive between 1 and 4 reminders randomly each day. Each time I get a reminder, or each time I experience some oddity in the world around me, I perform a state test. For state tests, I look at text twice and see if it has changed, or I try to fly, or I try to change some feature of the environment using my imagination.</p><p>3 / Deepen awareness by meditating.</p><p>4 / Before falling asleep, perform a resolve-strengthening exercise like forming a <em>sankalpa</em> (Sanksrit: “determination” or “intention”). This helps dream recall and also induces lucid dreaming.</p><p>5 / In the middle of the day, practice yoga nidra. This is the most consistent way to induce a lucid dream.</p><p>Thanks for tuning in to my journey with lucid dreaming. I hope that it serves your personal journey and inspires you to go deeper.</p><p><em>If you’re curious about lucid dreaming and want to dive in, try out </em><a href="https://shapedream.co"><em>the app I crafted specifically for lucid dreaming</em></a><em>. I use it every day and every night, and I’d love to share it with anyone interested. If you have any tips for me as I enhance my lucid dreaming technique, write me </em><a href="https://arthurvansiclen.com"><em>here</em></a><em>.</em></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*YWaknwja3_VA1TNBsxCx7w.jpeg" /></figure><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=8bd0113a5756" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Building Collaborative Notes]]></title>
            <link>https://medium.com/minimal-notes/building-collaborative-notes-a2fcc57074de?source=rss-3afecef24601------2</link>
            <guid isPermaLink="false">https://medium.com/p/a2fcc57074de</guid>
            <category><![CDATA[apple]]></category>
            <category><![CDATA[collaboration]]></category>
            <category><![CDATA[ios]]></category>
            <category><![CDATA[mac]]></category>
            <category><![CDATA[design]]></category>
            <dc:creator><![CDATA[Arthur Van Siclen]]></dc:creator>
            <pubDate>Thu, 27 May 2021 15:34:41 GMT</pubDate>
            <atom:updated>2021-10-20T17:51:49.701Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*kFr64YEdDrCHvcW0q0QTRw.jpeg" /></figure><blockquote>This story now lives at <a href="https://blog.minimal.app">Minimal’s blog</a>. To read it over there, follow <a href="https://blog.minimal.app/building-collaborative-notes/">this link</a>.</blockquote><p>It’s hard to design and build collaborative software. Everything is tied together, so a small change in one place has far reaching impact.</p><p>It’s also extremely valuable. We’re a social species. Think back to your most memorable meals, favorite travel destinations, and biggest personal breakthroughs. Chances are all of these experiences are significant because of the people you’re sharing them with. Our digital lives are the same.</p><p>Designing Minimal’s collaborative writing has been full of great challenges and triumphs. I’m thrilled about the outcome. The journey of designing and building was just as fulfilling.</p><p>This brief essay illuminates the process of crafting a collaborative writing experience for <a href="https://minimal.app">Minimal | Writing + Notes</a>. It should be useful for designers, engineers, and anyone interested in how things come together.</p><p>Enjoy.</p><h3>Cloud Sync</h3><p>Before setting out to build collaborative notes, Minimal already had a robust Cloud Sync system in place. This allowed individual writers to sync notes across their devices. As a writer makes changes on their iPhone, they can trivially pick up where they left off on an iPad and Mac without any hurdle. It’s seamless.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*InLK8Dk0-kQRzlY6LlT8yA.png" /><figcaption><strong>Our goal: different people contributing to the same note.</strong> As Writer-A (red iPhone) makes edits, Writer-B (blue iPhone) can see the edits appear as fading rectangles. An intelligent banner at the top indicates the state of the collaboration.</figcaption></figure><p>Fortunately, the code for Cloud Sync was well-written. Because it was descriptive and abstract, it was possible to build collaboration directly on top of this personal Cloud Sync layer.</p><p>I read through Apple’s <a href="https://developer.apple.com/documentation/cloudkit">CloudKit documentation</a> and roughly understood that we needed to support multiple <a href="https://developer.apple.com/documentation/cloudkit/ckdatabase">databases</a> (both a private database and a shared database), and multiple <a href="https://developer.apple.com/documentation/cloudkit/ckrecordzone">record zones</a> and <a href="https://developer.apple.com/documentation/cloudkit/ckrecord">record types</a> (one type to embody the shared properties of a note, and another to embody personal properties of a note that sync only for the individual).</p><p>So I spent about two days simplifying and abstracting the code, massaging Cloud Sync into a content-agnostic sync engine that could handle any data type, and any number of participants. The code actually became smaller, more readable, and more powerful.</p><p>A useful metaphor might be found in kitchen utensils. Instead of having a unique tool for every task, most of the things in our kitchen can handle multiple jobs. Our pot can boil water for pasta, or produce soup. A spoon can stir a Negroni, or help with eating ice cream. When we extended the Cloud Sync layer to support collaborative writing, we cleaned out and simplified our metaphorical kitchen equipment, leading to fewer functions that could accomplish more.</p><h3>Invite Collaborators</h3><p>For inviting collaborators, I decided to use <a href="https://developer.apple.com/documentation/uikit/uicloudsharingcontroller">Apple’s cloud sharing controller</a>. It readily handles most of the edge cases (and there are a lot of edge cases!), allowing writers to start inviting collaborators with the least amount of custom code and custom interactions. This approach also provides a familiar interface, allowing people to adopt the new feature with ease.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*3RZI94a-SS_4ZH7fWtVhfA.png" /><figcaption>Apple’s Cloud Sharing Controller for inviting collaborators and managing shared notes.</figcaption></figure><p>I added a note title, a descriptive sharing image, and a <a href="https://minimal.app/#join-collaboration">fallback url</a> for new writers who have not yet installed Minimal. I also crafted this contextual invite success message as writers join new collaborations.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*h2W2hmssKfvIQnBi44Y4Bw.png" /><figcaption><strong>When writers join a collaborative note they’re met by this screen.</strong> The interaction accomplishes two jobs: it provides context, and it grants the app a buffer to finish syncing the note before the writer dives in.</figcaption></figure><p>It’s a delightful experience. If my brother invited me to plan a ski trip to Japan in a collaborative note, you bet I’d download that app right away, and I’d probably even start a paid subscription.</p><h3>Simultaneous Edit</h3><p>Addressing conflict when multiple people make changes at the same time is by far the hardest problem to solve. There are two avenues of solutions: providing feedback to writers as their notes evolve, and harmoniously resolving conflict so that multiple people can write at once.</p><p>For feedback and clarity, I placed a banner at the top of the screen that indicates the state of the collaboration.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*tgXSAv0ErcrYza3qf1wXnw.png" /><figcaption><strong>The collaboration status banner provides contextual clues.</strong> If there is one collaborator, the banner includes initials. When a writer starts typing, the banner reads, “is typing…” preceded by the writer’s initials.</figcaption></figure><p>Most of the time, this banner clarifies if a note is collaborative and visible to other people. I think of this as a security feature, or a warning that the note is a shared space.</p><p>When someone starts typing, the banner glows and gently pulses, letting the writer know someone is actively working in the space with them.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*xHAg-LwjXDYEPiCCZ8emog.png" /><figcaption>The banner’s drop shadow gently pulses, subtly drawing attention to the fact that someone is actively contributing to the note.</figcaption></figure><p>Typically in software products this kind of banner appears and then disappears to let people know of state changes. For example, connecting to Bluetooth devices on the iPhone or iPad throws a pill-shaped banner that goes away after about 3 seconds. What we’re doing here with a <em>persistent</em> pill-shaped banner is a bit of a violation of standards, but it provides such useful information that I think the deviation is worth it.</p><h3>Resolve Conflict</h3><p>Resolving conflict as multiple people make edits at the same time is a major technical hurdle. It’s the most computer-sciency thing I’ve done yet. I loved working through challenge after challenge until the whole thing came together.</p><p>In gist, this is how conflict resolution works.</p><p>As a note evolves, we keep a simple version history. Specifically, we observe the last ubiquitously synced expression (the version of the note that landed on the cloud and presumably went out to all other devices, or will soon go out to all other devices), the most recent expression on our device, and the proposed expression coming in through the cloud.</p><p>Then we use the <a href="https://en.wikipedia.org/wiki/Longest_common_subsequence_problem">longest common subsequence</a> to create a story of changes or a “diff story” to describe how the note is evolving.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*DHXAqraHKyJ43uSINsc4ow.png" /><figcaption><strong>Longest common subsequence.</strong> Writer-A inserts <strong>123</strong> and Writer-B inserts <strong>456</strong>. The longest common subsequence is the alphabet.</figcaption></figure><p>Here’s the most common conflict: if Person-A inserts “123” and then gets a sync event from Person-B, it looks like Person-B deleted “123.” With the story of changes, however, we know that in fact Person-B’s sync landed for Person-A before Person-B received Person-A’s insertion of “123.” So we keep the “123,” invalidating Person-B’s purported deletion, and move on.</p><p>The problem described above is the most common conflict. There are others, and the longest common subsequence and the “story of changes” that it powers provide the solution for just about any conflict I could imagine. It’s powerful. Amazingly, it’s an uncommon case of sophisticated mathematics significantly impacting the human experience with few layers in between.</p><p>This story-of-changes approach to finding truthfulness in a collaborative space is similar to the technique anthropologists use to define a culture’s belief system. Anthropologists watch a culture evolve, and pay particular attention to deviations. The deviations and the responses they solicit illuminate the edges of a culture.</p><h3>Incoming Sync</h3><p>As sync events arrive, we show the change landing with a beautiful fading rectangle around the new text. The rectangle gradually fades away, creating this wave-like pattern. Writers watch their collaboration take shape.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*InLK8Dk0-kQRzlY6LlT8yA.png" /><figcaption>As Writer-A (red iPhone) makes edits, Writer-B (blue iPhone) can see the edits appear as fading rectangles.</figcaption></figure><h3>Real Impact</h3><p>While collaboration is a blast to design and build, it also has real impact. Writers have crafted multi-writer essays, planned trips, composed grocery lists, organized projects, and more.</p><p>I’m amazed by the technical breadth required of this new feature — from human design to software architecture and computer science. This amazement and delight surfaces every time I realize that other people in the world are out there using it.</p><p>Collaborative writing multiplies Minimal’s value, similar to how a meal tastes better in the company of loved ones. As a gardener might describe it, it’s not the parts that matter — it’s the relationships between parts that define a system and bring it to life.</p><p>Collaborative writing just made Minimal more lively, fun, and useful.</p><p>Download <a href="https://minimal.app">Minimal for Mac, iPhone, iPad, and Apple Watch right here</a>. To join the beta, follow <a href="https://minimal.app/#beta">this link</a>. To read about our design principles, <a href="https://minimal.app/design">tap here</a>.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=a2fcc57074de" width="1" height="1" alt=""><hr><p><a href="https://medium.com/minimal-notes/building-collaborative-notes-a2fcc57074de">Building Collaborative Notes</a> was originally published in <a href="https://medium.com/minimal-notes">Minimal | Notes</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Rounded Corners in the Apple Ecosystem]]></title>
            <link>https://medium.com/minimal-notes/rounded-corners-in-the-apple-ecosystem-1b3f45e18fcc?source=rss-3afecef24601------2</link>
            <guid isPermaLink="false">https://medium.com/p/1b3f45e18fcc</guid>
            <category><![CDATA[iphone]]></category>
            <category><![CDATA[design]]></category>
            <category><![CDATA[apple]]></category>
            <category><![CDATA[technology]]></category>
            <category><![CDATA[tech]]></category>
            <dc:creator><![CDATA[Arthur Van Siclen]]></dc:creator>
            <pubDate>Tue, 02 Jun 2020 21:57:09 GMT</pubDate>
            <atom:updated>2021-10-20T17:50:08.782Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*sD7uhsoLKGysbm8eAjbb0g.jpeg" /></figure><blockquote>This story now lives at <a href="https://blog.minimal.app">Minimal’s blog</a>. To read it over there, follow <a href="https://blog.minimal.app/rounded-corners-in-the-apple-ecosystem/">this link</a>.</blockquote><p>If you look closely, you’ll rarely find a sharp corner in any Apple product. From the HomePod, to keyboard buttons, to elements in Apple’s own apps, the shapes are so smoothly-rounded that it’s not apparent where the straight lines end and the rounding of the corners begin.</p><h4>The Squircle</h4><p>There’s a term for this. It’s called a <em>squircle</em>, a cross between a circle and square. Unlike more typically rounded rectangles where the corner exhibits a perfect semi-circle, squircles have a more squished shape. The rounding does not suddenly begin, instead the curve starts deep within the straight line and gradually grows into a visible curve (as shown in Figure 1.1).</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*U5hnYFjMwwvdervz86Q4Bw.jpeg" /><figcaption><strong>Figure 1.0</strong> The third, combined object emphasizes the effect. The visible blue part is what gets “shaved off” to create the smoother, softer corners.</figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*q78y01STziN_ATqZnW-V9Q.jpeg" /><figcaption><strong>Figure 1.1 </strong>The squircle (red shape) begins to round deeper in the straight line than the plain rounded rectangle (blue shape).</figcaption></figure><p>While rounded rectangles have a constant corner radius, the corner radius of a squircle decreases or tightens as the curve deepens, and then symmetrically expands again on the other side of the curve.</p><p>(The mathematics behind this shape are <a href="https://www.figma.com/blog/desperately-seeking-squircles/">well worth a read</a>.)</p><h4>The Effect</h4><p>A complete lack of sharp edges and sudden transitions eradicates the manufactured feel that we’re so used to in mass-produced goods. Instead of reminding us of industrial supply chains, automobile production, and chemical laboratories, these softer shapes evoke succulents, pine trees, and rocks that have tumbled through mountain streams. There’s an <em>organic</em> quality that just feels healthy and warm.</p><p>Beyond this aesthetic/tactile effect, there’s also a pragmatic optimization. For example, driving on winding mountain roads should in theory be safer and more comfortable with gradual changes in curvature.</p><h4>In The Wild</h4><p>I became curious as to just how ubiquitous this squircle shape is in the Apple Ecosystem, so I started photographing everything I could and overlaying shapes over the images (see Figure 2.2). I looked at the HomePod where the squircle is exceptionally obvious, and I also looked at the iPad, the keys on the new iPad keyboard, the Apple Watch, and the purchase buttons in the Apple TV, Apple News, and Apple Music apps. As it turns out, the squircle is everywhere.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*_HZWwAsm-bAzIzN1Zij2DA.jpeg" /><figcaption><strong>Figure 2.0 </strong>HomePod. Every imaginable lighting condition fails to show a sharp edge.</figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*F_fkYJgDKiO6VadDLHTjOA.jpeg" /><figcaption><strong>Figure 2.1 </strong>iPad Keyboard</figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*JfUGyBe3tGGaDNlhQodFQg.jpeg" /><figcaption><strong>Figure 2.2 </strong>A typical rounded rectangle overlaid upon a silhouetted iPad. Notice the ears hanging off (pink) where the rounded rectangle sticks out past the iPad’s squircular shape.</figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*oBIEr0OSVLqPtKwpc3Hy9Q.jpeg" /><figcaption><strong>Figure 2.3 </strong>Control center, appearance controls, and the Apple News+ subscription pitch. Notice that despite being in violation of Apple’s guidelines for in-app purchases according to App Review, the “Get Started” button does exhibit the squircle.</figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*aI0rGEyMEXJqV7kztrqnvg.jpeg" /><figcaption><strong>Figure 2.4 </strong>The squircle debuted on iPhone with a newer, gentler app icon shape in iOS 7.</figcaption></figure><p>The HomePod is my favorite example. Unlike most speakers that are meant to remain hidden away, the HomePod is designed to sit visibly in a room almost as decoration. Like a hand-made ceramic artifact, the HomePod is beautiful to look at in every lighting condition. The key here is this shape — no matter how the light falls on the device the viewer cannot pick out a sharp edge.</p><p>The effort to use curvature as a means of softening a product is not new. <a href="https://piethein.com/superellipse/">Piet Hein deployed the squircle</a> in Stockholm in 1959 to solve traffic problems. Most visibly, <a href="https://en.wikipedia.org/wiki/Zaha_Hadid">Zaha Hadid’s architectural style</a> centrally utilizes softly rounded shapes to evoke nature and make new constructions feel futuristic.</p><p>What’s notable about the squircle is just how simple it is. This ultra-round shape can be deployed across a suite of products — digital or physical — without altering the underlying principles or necessarily doing complex mathematics. Apple did exactly this for its hardware and software interfaces. As a result, the entire Apple ecosystem feels friendlier, more accessible, and more delightful.</p><p>I felt inspired to write this story while integrating the squircle into our app, <a href="https://minimal.app">Minimal | Notes</a>. Take a look. If you’re a designer or iOS developer interested in bringing the squircle into the things you’re creating, check out <a href="https://medium.com/@arthurofbabylon/a-smooth-corner-radius-in-ios-54b80aa2d372">these simple instructions</a>.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=1b3f45e18fcc" width="1" height="1" alt=""><hr><p><a href="https://medium.com/minimal-notes/rounded-corners-in-the-apple-ecosystem-1b3f45e18fcc">Rounded Corners in the Apple Ecosystem</a> was originally published in <a href="https://medium.com/minimal-notes">Minimal | Notes</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[A Smooth Corner Radius in iOS]]></title>
            <link>https://medium.com/@arthurofbabylon/a-smooth-corner-radius-in-ios-54b80aa2d372?source=rss-3afecef24601------2</link>
            <guid isPermaLink="false">https://medium.com/p/54b80aa2d372</guid>
            <category><![CDATA[apps]]></category>
            <category><![CDATA[swift]]></category>
            <category><![CDATA[objective-c]]></category>
            <category><![CDATA[design]]></category>
            <category><![CDATA[ios]]></category>
            <dc:creator><![CDATA[Arthur Van Siclen]]></dc:creator>
            <pubDate>Tue, 02 Jun 2020 21:54:27 GMT</pubDate>
            <atom:updated>2020-06-02T22:02:02.342Z</atom:updated>
            <content:encoded><![CDATA[<p>I remember looking at an Apple interface, comparing it to the things I was creating, and feeling a bit miffed that Apple’s designs were even rounder and warmer than mine. Once I learned about this shape called a squircle and figured out <a href="https://medium.com/minimal-notes/rounded-corners-in-the-apple-ecosystem-1b3f45e18fcc">just what was going on</a>, I knew I had to integrate this ultra-round shape into the products I build.</p><p>I started with <a href="https://minimal.app">Minimal | Notes</a> — our notes app that is designed to evoke the experience of a real notebook. It’s a perfect candidate for the squircle, and I found the process of incorporating this shape surprisingly easy.</p><p>Here’s an exagerated depiction of what’s going on:</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*U5hnYFjMwwvdervz86Q4Bw.jpeg" /><figcaption><strong>Figure 1.0</strong> In the rightmost image, the blue is what gets “shaved off” to soften the corners.</figcaption></figure><h4>Make It Work</h4><p>To accomplish this, I did two things. I used Figma’s Corner Smoothing<em> </em>tool in every image that makes its way into the Minimal app (visible in Figure 1.1).</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*al7_ktpkQ2I-n9aXEd9Yww.png" /><figcaption><strong>Figure 1.1</strong> Figma’s Corner Smoothing tool.</figcaption></figure><p>I also created a UIKit-generated bezier path that incorporates Apple’s corner rounding math. It didn’t take long, and Minimal became squircle-rich. You can see the code below, which works with any instance of UIView or UIView subclass.</p><pre>// Create a mask layer.<br>CAShapeLayer *maskLayer = [CAShapeLayer new];<br>maskLayer.frame = self.bounds;</pre><pre>// Define our path, capitalizing on UIKit&#39;s corner rounding magic.<br>UIBezierPath *newPath = [UIBezierPath bezierPathWithRoundedRect:self.bounds cornerRadius:self.layer.cornerRadius];</pre><pre>maskLayer.path = newPath.CGPath;</pre><pre>// Apply the mask.<br>self.layer.mask = maskLayer;</pre><h4>Outcome</h4><p>I’m quite pleased with how it turned out. When I do side-by-side comparisons, the interfaces that incorporate the squircle come out feeling softer, warmer, and friendlier.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*NeZNSNO7J7Drm4p4UCw8Fw.jpeg" /><figcaption><strong>Figure 1.2</strong> It’s subtle, but the image on the right has softer corners and feels more friendly.</figcaption></figure><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*bWhtpUX5-uwPq2-d9Zh1gQ.jpeg" /><figcaption><strong>Figure 1.3 </strong>Again, it’s subtle, but the image on the right has softer corners, making this most important visual feature feel more round and thus more alive.</figcaption></figure><p>If you’d like to read more about the squircle, check out <a href="https://medium.com/minimal-notes/rounded-corners-in-the-apple-ecosystem-1b3f45e18fcc">this story about Rounded Corners in the Apple Ecosystem</a> and <a href="https://www.figma.com/blog/desperately-seeking-squircles/">this behind-the-scenes look at some of the math</a> that makes the squircle, well, squircular.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=54b80aa2d372" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Community-Sourced Approach to Translating the Minimal | Notes App]]></title>
            <link>https://medium.com/minimal-notes/community-sourced-approach-to-translating-the-minimal-notes-app-617503c5551f?source=rss-3afecef24601------2</link>
            <guid isPermaLink="false">https://medium.com/p/617503c5551f</guid>
            <category><![CDATA[ios]]></category>
            <category><![CDATA[apps]]></category>
            <category><![CDATA[community]]></category>
            <category><![CDATA[technology]]></category>
            <category><![CDATA[writing]]></category>
            <dc:creator><![CDATA[Arthur Van Siclen]]></dc:creator>
            <pubDate>Thu, 05 Mar 2020 21:48:31 GMT</pubDate>
            <atom:updated>2021-10-20T17:49:08.393Z</atom:updated>
            <content:encoded><![CDATA[<h4>Making Minimal accessible + beautiful in more languages.</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*kX5hQ0M6RjsoXMdV98gYYA.jpeg" /><figcaption>Minimal has a strong community of beta testers. There are hundreds of notetakers around the world, some writing in Minimal for more than an hour every day. I’m confident that together, we can help Minimal feel beautiful and accessible in more languages.</figcaption></figure><blockquote>This story now lives at <a href="https://blog.minimal.app">Minimal’s blog</a>. To read it over there, follow <a href="https://blog.minimal.app/community-sourced-approach-to-translating-the-minimal-notes-app/">this link</a>.</blockquote><p>While a large portion of the iPhone, iPad, and Mac userbase speak English, most do not. Even for those who do speak English, many would prefer to write (and think) in their native language.</p><p>Minimal is all about language. It’s a writing app. It needs to be internationalized and localized so that everyone feels at home.</p><p>But <em>how</em> we translate matters too. We’re taking a novel approach to translating our app so we can foster community while improving the experience of writing in Minimal.</p><h4>Community-Based Translations</h4><p>The typical approach to translating an app is to hire a service. We’d send them our words and phrases in English with contextual screenshots, and they’d send back the exact files we need for the translations to appear live in the app.</p><p>Per the recommendation of the iOS community <a href="https://twitter.com/arthurofbabylon/status/1223679790403604482?s=21">on Twitter</a>, however, we’re taking a different path. We’ve invited our community of beta testers to translate and participate in the design of Minimal in their native language. There are several principles here:</p><ol><li><strong>Reduce long-term overhead.</strong> We’d like to institute a translation system that runs on its own, without continual management.</li><li><strong>Increase quality.</strong> We want the translations to be high-quality and relevant. The language of a product defines the product, and we want Minimal’s definition to originate from real notetakers.</li><li><strong>Foster community.</strong> Translating is an opportunity to bridge cultural divides. I’m confident that I’ll discover entirely new use-patterns, enabling me to become a better designer and engineer. I imagine the notetakers who help translate Minimal will increasingly appreciate writing in an app that they helped bring to form.</li></ol><h4>More Personally…</h4><p>On a personal level, this community-based approach to translation helps me attack one of my biggest life goals right now: to build and create not as an individual but as a community.</p><p>In ecology, we learn about the “edge effect,” the profusion of biodiversity when two distinct ecosystems converge. For example, there are more species and more relationships when one ecosystem bleeds into another, like a forest transitioning into a meadow, or on the bank of a river.</p><p>The same “edge effect” pattern occurs in design and engineering. By building as a community, we tap into edge effects to create better, more beautiful technology.</p><p>As my ecology/gardening teacher taught me: “integrate rather than separate.” This is exactly what we’re doing with Minimal’s community-based translation system.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*ClhEk5bg-0QrIDI898lzkA.jpeg" /><figcaption>From English to Italian.</figcaption></figure><h4>How the System Works</h4><p>The first iteration of Minimal’s translation system is lightweight:</p><ul><li>We use cloud-hosted spreadsheets for the most important languages.</li><li>Each word or phrase has its own row.</li><li>The spreadsheet is divided into the following columns: the phrase in English, the phrase in the target language, and in a third column space for comments and questions.</li></ul><p>Each row is color-coded to connote translation progress: blue (awaiting translation), green (updated translation), yellow (question), orange/red (problem). This allows multiple people to contribute, without the need for complex rules. It also allows me to know when changes have been made and then pull them into Minimal.</p><p>You can see our translation hub right here: <a href="https://minimal.app/#translate">Minimal | Translate</a>.</p><p>We’ve tested in Italian, thanks to a generous and thoughtful notetaker living in Tuscany. The system works — adding a language’s translations into the Minimal app takes just a few steps. Importantly, incorporating improvements is not daunting.</p><p>It’s thrilling to watch Minimal come to life in Italian, and I can’t wait for more languages to arrive in the app. Please feel free to contribute your translations by following <a href="https://minimal.app/#translate">this link</a>, and be sure to join the Minimal | Notes private beta <a href="https://minimal.app">right here</a>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*UUEPSvtP238JF4GsLGVN8g.jpeg" /><figcaption>Thanks for joining us on Minimal’s journey 🖤</figcaption></figure><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=617503c5551f" width="1" height="1" alt=""><hr><p><a href="https://medium.com/minimal-notes/community-sourced-approach-to-translating-the-minimal-notes-app-617503c5551f">Community-Sourced Approach to Translating the Minimal | Notes App</a> was originally published in <a href="https://medium.com/minimal-notes">Minimal | Notes</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Building Minimal | Notes]]></title>
            <link>https://medium.com/minimal-notes/building-minimal-notes-7cd3334df899?source=rss-3afecef24601------2</link>
            <guid isPermaLink="false">https://medium.com/p/7cd3334df899</guid>
            <category><![CDATA[ios]]></category>
            <category><![CDATA[writing]]></category>
            <category><![CDATA[minimalism]]></category>
            <category><![CDATA[software]]></category>
            <category><![CDATA[design]]></category>
            <dc:creator><![CDATA[Arthur Van Siclen]]></dc:creator>
            <pubDate>Wed, 05 Feb 2020 23:21:01 GMT</pubDate>
            <atom:updated>2021-10-20T17:48:03.749Z</atom:updated>
            <content:encoded><![CDATA[<h4>My journey as an indie developer crafting my favorite notes app</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*UjmHmeZOGvZIpmU4cO3Cdg.jpeg" /></figure><blockquote>This story now lives at <a href="https://blog.minimal.app">Minimal’s blog</a>. To read it over there, follow <a href="https://blog.minimal.app/building-minimal-notes/">this link</a>.</blockquote><p>I’m a software developer, and yet I delight in coarse technology. I love a comfortable pair of pants, paper that prevents ink bleed, a table that doesn’t wobble, and a sharp knife for cutting vegetables and fish. Maybe I love this coarse technology because I learn the lesson firsthand, over and over again as I write code: simple is powerful. Simplicity allows us to focus on the most important features while making things so, so easy to use.</p><p>When I Iooked at the existing notes apps, I realized that nothing felt like a notebook. Apple Notes, Simple Notes, Evernote, Bear, and Notion all feel to me more like big binders, filing cabinets, or entire desks. There’s a lot of utility there, but there’s also a lot of noise. Sometimes all I want is a notebook, and I found myself craving the beauty of a blank page.</p><p>When sitting down to design and build Minimal I returned again and again to the sensation of a brand new notebook. When I have a fresh, empty notebook and a nice pen I feel liberated and powerful. There’s a quality of freshness: this new notebook can become anything and help me accomplish my wildest aspirations.</p><p>In building Minimal, one of the loftier goals is to honor the spacious beauty of a blank page or a brand new notebook. Perhaps less philosophically, I want to make a notes app that is as simple and easy as a real notebook. I believe it will help thinkers and doers take action in important ways.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*35w8RVKvGYXB5WLzgyuWNw.jpeg" /><figcaption>One of Minimal’s App Store screenshots. Via <a href="https://minimal.app">Minimal | Notes</a>.</figcaption></figure><p>The Note Lifetime is Minimal’s most unique feature. It was difficult to design: the idea of letting notes die is mostly new for software. The closest analogy might be auto-archive in an email app, and a real life expression could be throwing away scribbles on scrap paper, or ceremonially burning a journal. For the Note Lifetime, I leaned into two core design principles: clarity — making cause and effect very clear to the notetaker — and ensuring the notetaker is in total control.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*zByADV94GyZ4C0JM1J1HxQ.jpeg" /><figcaption>Minimal on Mac, iPhone, and iPad. Minimal’s Cloud Sync is one of my favorite features to build.</figcaption></figure><p>Building Minimal demands a holistic effort on my part. I’m a one man team, diving deep in design, engineering, business strategy, and marketing.</p><p>Sometimes I’m sitting at a desk, but as many readers surely know from experience going for walks tends to yield the most elegant solutions to any sort of problem, technical or creative.</p><p>There’s also a lot of programming.</p><p>I wanted Minimal to use a blend of Markdown formatting features because these simple rules closely mirror how a notetaker writes with real pen and paper. When writing in a notebook, most people find one or two use-patterns that work really well and lean into them, again and again. Markdown facilitates this flow.</p><p>At the very beginning I put myself through a crash course in Regular Expressions, or “Regex” for short. The book <a href="https://www.indiebound.org/search/book?keys=Mastering+Regular+Expressions">Mastering Regular Expressions</a> by Jeffrey E.F. Friedl was paramount to understanding how it works. I recommend anyone with a mild interest in mathematics read this book, for it deals with how to create workable, logical maps of a system — particularly human language. It’s mind-blowing to extrapolate principles from that book beyond the world of programming.</p><p>The two most difficult bits of code in Minimal so far have been the Markdown parser (built from scratch using Regular Expressions) and Cloud Sync (built on top of Apple’s iCloud, or CloudKit). These experiences are super fun for me — I’m more of a designer/strategist, so what I felt getting into such technical code is what I imagine a gardener feels when they put their hands in the soil, or what a foreman experiences when they get to do some of the execution: oddly refreshing.</p><p>Another major challenge is balancing powerful features with a spacious design. Everyone expects to be able to export PDFs or HTML, easily reorganize notes, share notes with friends and team members, and more. Some features/notetaker-needs get esoteric. My task as the designer is to place these tools where they will be easily discovered the moment they’re needed, and otherwise let them stay out of the way. I imagine Minimal can continually improve here.</p><p>For a great app, it’s important to intimately explore Apple’s human interface guidelines and support as many system features as possible: handoff, shortcuts, spotlight indexing, contextual menus, key commands, drag and drop, multiple windows… A lot of these use-patterns are not widely known, yet for those who are familiar they quickly become necessities. I use them often and now expect them in any real app.</p><p>Minimal is made entirely in Objective-C. I know Swift and sometimes write in Swift, but I love Objective-C’s clarity. For me, there’s just no ambiguity.</p><p>Our Mac app is made with Catalyst. The convenience of a single codebase is a non-starter (especially for a one man team), and I’m confident Minimal’s Mac app will improve as Catalyst improves: very rapidly. It’s already a beautiful app that I love writing in, and I expect it to only get better.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*0vmsNDo0QRPsruF_Vkga4A.jpeg" /><figcaption>Minimal’s iMessage experience is sleek. Notetakers can get a feel for the note mid-conversation before diving in.</figcaption></figure><p>I use Minimal everyday.</p><p>I have one note pinned to the top titled “Today.” This note contains my most important and pressing tasks and goals. Some are todos that I delight in checking off, like bug fixes or life chores. Others are more general aspirations that remain relevant day after day, like “Take nature walks” or “Morning meditation.”</p><p>I have a note or two dedicated to each of my projects. At the top are immediate tasks or related readings. Going down the note we encounter things like bugs, feature wishlists, and marketing ideas.</p><p>Then there’s notes for anything that might come up: book recommendations, grocery lists, packing lists, hiking trails near Mexico City. And this is where one of my favorite features shines: the Note Lifetime. I have my Note Lifetime set to 7 days, so a week after I last edit a note I get a notification reminding me that the note is about to die. I’ll review the note and then decide to either act on it, keep the note around for another 7 days, or let it go.</p><p>Turning on the Note Lifetime was scary at first, but after using it for months now I can’t imagine not having it. It keeps my notebook clean and tidy, and consequently makes my life more spacious and organized as well.</p><p>I don’t think we realize how contextual everything in our lives is. After a week has passed, many of the things in our notebooks are no longer relevant. It’s important to set ourselves free to keep moving and stay present. If it’s important, we act on it. If it’s not important, we let it go.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*eJxU7bwd-_ngmtNqdH6Frw.jpeg" /></figure><p>Anyone can download Minimal via Apple’s TestFlight by visiting <a href="http://www.minimal.app">www.minimal.app</a>. To get Minimal on Mac, just email me and I’ll send it your way.</p><p>Minimal is <a href="https://apps.apple.com/us/app/minimal-notes/id1442727443">live right now</a> in Australia and New Zealand. I’m testing business models and on-boarding while getting a general picture of how real users experience it. Soon, Minimal will be live all around the world.</p><p>Minimal needs two big features: photos support and collaborative notes. Both are doable. A notebook really should support every language too — that’s in the works.</p><p>I expect I’ll be pressured to build tagging and folders, yet I’m reluctant. Real notebooks don’t have these, and I think it’s one of the reasons they’re so delightful. Of course, the notetaker is the boss — if pressure mounts I plan to relent.</p><p>Minimal certainly needs to be presented to the notetakers who will come to value it. I’d like to hire an artist (any recommendations?) and I’d love to showcase Minimal in front of my favorite communities: blogs and newsletters, podcasts, Apple-related publications, and more general design-oriented publications. If anyone is interested in helping present Minimal, please get in touch.</p><p>I’m pleased with how this process has gone so far (I am learning a lot!), and I’m excited to see Minimal continue to unfold. Every step of the process is exciting, terrifying, and filled with challenges I try to open myself up to.</p><p>If anyone is curious, excited, or willing to give feedback, please write in. I read everything and love hearing from notetakers.</p><p>Please remember that you can always use Minimal for free in the beta program at <a href="http://www.minimal.app">www.minimal.app</a>.</p><p>Thanks everyone. 🖤</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=7cd3334df899" width="1" height="1" alt=""><hr><p><a href="https://medium.com/minimal-notes/building-minimal-notes-7cd3334df899">Building Minimal | Notes</a> was originally published in <a href="https://medium.com/minimal-notes">Minimal | Notes</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
    </channel>
</rss>