For this post I decided to make a video that goes into how to use the Block Bindings API coming out in WordPress 6.5. The most important feature? It works with the Advanced Custom Fields plugin*, which was incredibly helpful when building out the new SiteCare site.
*the big asterisk being, ACF’s image field does not work with the API. That’s because it passes an Image ID to WordPress (not matter how you set the field’s output), whereas the only relevant options the Image block accepts are URL. I believe this is because it’s a static block, so it can’t go out and dynamically find what ID is tied to an image. I’m not sure, though.
Still, it’s exciting stuff! Especially since it works within the Query block. Here’s all you have to do to connect a Paragraph’s content attribute to an ACF field inside the WordPress Code Editor:
Super simple. I don’t believe you have to enable the REST API in your ACF field group either.
You can check out this awesome blog post that goes into depth on how to use the new APIs. There’s also a GitHub issue surrounding the new APIs you should check out.
There are so many drafts I have for blog posts, but enough time usually elapses before I publish them (due to interest, tweaking, or forgetfulness) that sometimes the “point” is lost to time.
For example, I started writing a blog post about how Notion Calendar has made my task management workflow better, noting that, because I can now see events and multiple databases in one view, I could break away from the traditional Notion “best practice” of having only one database for all my tasks. I also surmised that this marked a shift in Notion’s implementation, where it might start doing a better job at aggregating content for you.
This past week, Notion released their new “Home” feature, which shows all your tasks in one view. Similar to Notion Calendar, except this database aggregates content from multiple other databases. It’s a great feature, and speaks to Notion’s understanding that, hey! You probably shouldn’t, or even cannot, have all your tasks (across databases, teams, projects) in one database. It makes more sense to separate them out.
I might still publish that blog post, but there’s many examples of stuff like that where, if I wait long enough, things change so rapidly that what I wrote is lost to time.
Because of that, I want to lean into my constant tinkering (and ADHD) and start writing blog posts about the weird stuff I explored or tinkered with during the week. It’s more timely and doesn’t require polish, especially since a lot of ideas are half explored.
With that in mind, this past week I set out to make an Apple Shortcut to the new Home view in Notion (since you can’t get to it through a home screen widget), when I noticed something: Notion had added two new actions to its Apple Shortcuts integration.
Where previously, the extent of Notion’s Shortcut support maxed out at “open a page,” they now have two new options: Create a database page, and Open Notion AI.
Man, what could I do with that Open Notion AI shortcut? I don’t even know what to do with Notion AI in general; I would love to use Notion AI more, but I’m not sure I have a good use-case for it. I really like the idea of my workspace becoming an information system that can be conversed with using Notion Q&A.
In practice, I’ve had little luck with Notion Q&A. Asking it to find any common threads in my Lectio Divina database yielded it replying “sorry, I didn’t find anything.” Asking it for more general (ChatGPT-esque) queries also shows an “I’m sorry” message:
Which, I get it! Q&A is designed to return information from my workspace, not from the internet. But here’s why I’m disappointed by this limitation: in order to use Notion AI (and therefore Notion Q&A) in my workspace, I’d have to pay for me and my wife, which comes to about $20/month. ChatGPT also offers a “plus” version for $20/month, and so does Copilot, and so does Gemini… it’s basically the industry price right now.
I haven’t tested Copilot Pro or whatever “pro” version of Gemini it’s called now, but from what I’ve heard, each solution’s Enterprise versions can search your entire tenant (email, files, notes) and compile information based off of what’s in it (Microsoft’s version of this is $30/month, in addition to your M365 subscription, FWIW). Heck, Gemini Free does that with your Gmail. If I’m going to spend similar money on Notion AI, while I don’t need it to have all those “integrations,” I’d at least like it to have the basics offered by free Copilot and Gemini: the ability to create images, answer historical questions, have access to plugins, search the internet, etc.
That was a tangent. I’m very happy to see these actions in Shortcuts. It looks like the AI one might still be under development, as I couldn’t get it to work:
However, I’ve already used Notion’s “Create a database page” to make a “Quick Add” notes shortcut. I was hoping this would also be enough to get me off of the Nautomate app (which is lovely! But another thing to pay for), but it’s not: Nautomate does so much more.
For example, I have a few Notion Automations for things like automatically updating the date of old tasks to “today,” so overdue tasks are always shown on my calendar. The problem with these automations is that they only run based on a trigger, such as “when a property is changed.” There is no “run this at a time” trigger– so, if I forget to update a property on a task, the automation doesn’t run. There will be days where I’m missing tasks that haven’t been moved from earlier in the week, and I’ll only see them show up if I remember to modify something. That’s… a big problem.
My hacky solution? I use Shortcuts to run an automation every morning (at like 12am) that updates one dummy task’s property via Nautomate– which then updates the rest of the tasks. Sweet!
Okay, there’s a lot more I messed with (a new Photomator workflow used as the Featured Image on this post, Block Bindings in the WordPress 6.5 beta, leaning into the Notion All Tasks view), but I’ll share some of those findings next week. I’ll leave you with another Notion “finally,” the ability to rearrange tabs in its desktop app:
While I’m still on the lookout for the best note taking app, every time I try a new app, I always return to Notion if I find I’m not satisfied with it. This happened before when I still used Evernote– I kept trying to move away from Evernote but it wasn’t worth it (until, you know, Evernote tanked their app). I think I keep coming back to Notion because it gives me a lot to experiment with, and there are a near endless combination of ways to put blocks together to make something cool.
One night last week I pondered to myself, “can I replicate DayOne functionality in Notion?” So I spent an hour tinkering, which resulted in my Simple Journal Notion template. This is the first Notion template published on the Notion Template Gallery, which is pretty neat!
Notion Template
Journal Template
A Notion template for journaling, daily notes, or other timely matters. Features an “on this day” feature.
This template is cool because it is simple: and that’s key when it comes to journaling. I tried to make the UI as unobtrusive as possible, and easy to navigate on mobile. The template is also neat because it has an “on this day” and “on this date” feature. Meaning, it will surface entries of yours from dates past (for example, if today is February 21, it will show posts from February 21 in years past), or days past (today’s a Wednesday? It will show all posts made on a Wednesday).
I’ve already modified my own personal template to include something called “Journeys.” These are entries that are all in one document, which helps give a nice timeline of events without the hassle of opening up multiple entries.
Another modification I want to add: AI generated entry summaries. Maybe I’ll add that when I sign up for Notion AI, someday. I’m also curious and want to see how Notion Q&A will work with this; frankly, that’s the primary reason I’m (currently) using Notion to journal.
Anyway, go check out the template and make it your own! Let me know your thoughts, and any ideas for improvements you may have, in the comments.
It’s been a while since I’ve had the opportunity to build ACF blocks (I took a break to learn how to build blocks with React), but I got to make some in a recent project I worked on. I was pleasantly surprised at how much easier it was to use ACF blocks, especially with the advent of ACF integrating with block.json. However, I still assumed that the integration with WordPress’ growing list of block supports was lacking. Turns out, not so much.
Previously, if I wanted my block to support padding, margin, colors, or anything else Gutenberg supported natively, I had to check and generate those styles myself. Maybe I just never knew about this. Yeah, it’s silly I didn’t know this sooner. But! While researching this article and trying to back-track how I figured out how to do this, my resolve was strengthened: WordPress’ documentation is so horribly disorganized and all over the place, it’s challenging to put pieces of an idea together.
Hopefully, having all their different articles linked in one place will be helpful to someone. Here’s the quick and easy way I found to have ACF support basically all styles Gutenberg generates for it. This includes padding, margin, colors, fonts, classes, and anchors.
Stick this in your ACF block’s PHP file (probably render.php):
As ACF’s website explains, I’m including the $is_preview variable (one of a few PHP variables that are available in the ACF block render callback) to determine if I should render the outer tag in the Editor. This is because, inside the Editor, Gutenberg already provides the block’s wrapping element with its generated styles. If you render the block attributes twice, you’ll get twice the padding, margin, and styles.
As a bonus, here are some additional block supports I typically use in my block.json. These aren’t listed publicly, since they’re experimental, but they’re definitely helpful:
There are plenty of articles about what is new in iOS 17 and macOS 14, but I want to do something different. Here, I’ll go over some of my favorite features that have made a tangible difference in how I use my devices on a day-to-day basis.
System
Journaling Suggestions (in Day One)
No, not the new Journal app— as nice as it is, it lacks some significant features, such as search or an iPad app. No, the true star of the show here is the Journaling Suggestions API that lets apps like Diarly and Day One (my preferred app) use the headline feature of the Journal app: the ability to create entries based on activities your phone tracks.
Saying “Siri” instead of Hey Siri
One item in a long line of many smaller improvements, being able to say “Siri” instead of “Hey Siri” has been great. I enabled this on our HomePods as soon as it was available. I haven’t found that it accidentally activates (at least, not more than normal, which is already not that much), and it’s just delightful. In an age where other assistants are degrading their experiences, actually useful new features like this are appreciated.
StandBy
This is just fun and makes my phone more useful! I have a MagSafe charging stand from Anker, and StandBy turns my phone into a smart-display showcasing notifications, photos, and calendar events. It makes me wish I could run this software on something like a Nest Hub.
Autocorrect, Grammar, and Dictation
Apple’s new autocorrection engine is good now. Great, even. Powered by a transformer model (the “t” in GPT), this engine is good enough to know context, and good enough to actually spell and even suggest swear words(!). It’s great, and I’ve found it’s far more helpful than it is a nuisance. The only glitch I’ve run into is that some apps don’t really support text completion (Ulysses and DayOne have problems), or words will autocomplete to a sentence when I hit “space” to start writing a new word.
Communication
Video chat reactions
It’s goofy. It’s unnecessary. It’s loads of fun. Being able to end a work chat with two thumbs up and some fireworks is just great. I’ve run into that issue therapists face with unnecessary reactions to things, but I found it to be funny in my sessions and not at all awkward.
Live Voicemail
If Apple is unwilling to build in technology to block spam calls, this is the next best thing: I get a call from an unknown number, tap “Voicemail,” and watch as the call gets sent to voicemail with a live text transcription of what the caller is saying. Is it something important? I pick it up. I’m old enough to remember answering machines, and it’s about time that functionality came to the iPhone. If any unknown number calls me, I send them straight to voicemail. Occasionally, it’s a legitimate call, which means I can answer in that moment. Otherwise, I ignore it (or, more frequently, they hang up immediately).
FaceTime on AppleTV
This is a sleeper feature I’ve used a lot. From chatting with friends, to therapy sessions, to Christmas get-togethers– being able to video chat from my TV with what looks like a full camera crew is simply incredible. In the past, I’ve set up a cinema camera, ATEM, laptop, and Zoom for Christmas calls during COVID-19. Now? I stick my iPhone on a tripod with a MagSafe holder and call it a day. You can do this through FaceTime or Zoom, too.
Music
SharePlay in the car
If you’re connected to your car via Bluetooth or CarPlay, Apple Music will give you the option to “SharePlay” with others in the car, giving users the ability to control and contribute to the queue. The best part? They don’t have to have a subscription to join in, since it uses the host’s plan.
(Is your car not detected as a car via Bluetooth? Go to the Settings app → Bluetooth → tap the “i” next to your Bluetooth device → Device Type → choose “Care Stereo”)
Favorite Songs
I can mark songs as favorites and have them show up in my “Favorite Songs” playlist. Previously, I made a “smart playlist” for songs I marked as “loved,” but now I don’t have to use that, and this solution is more “native.”
Collaborative Playlists
“Finally!” I used this feature on Spotify all the time. Now my wife and I can make mixtapes for roadtrips together. The only downside is that converting an existing playlist seems to make an entirely new playlist, deleting the original in the process. This means that your playlist’s “recently added” order might get messed up, and if you previously downloaded your playlist, you’ll have to go in and download it again.
Apps + System
Reminders
Sections and Grocery list sorting were added. The former allows you to have a Things 3 or Trello style interface, which is wonderful for organizing tasks within a list. The latter uses AI to move grocery list items into automatically generated sections.
Autofill Verification Code improvements
iOS 17 brought two great improvements to the tedious process of autofill verification codes (you know, those “text me a code to sign in” prompts?). Now, codes can be filled in from Mail, and codes you receive via text can be deleted after you use them.
Widgets on iPadOS Lock Screen
This came to iPhone last year, so it’s great to see it here on iPad. Apple did some cool stuff with this too, where landscape views get a stacked widget view on the left-hand side.
Offline Maps
Another “finally,” in that I can “finally” delete Google Maps from my phone, as offline maps were the only reason I used it. I will say, I love Apple’s implementation, with one slight nitpick: on a recent trip to Vancouver, I forgot to download offline maps (my carrier doesn’t work in Canada) and tried to download them while on the road. Apple Maps was going to re-download every map I had already downloaded again to download the new area, whereas Google Maps happily downloaded just the area I selected.
Sharing
Shared AirTags
The option to share AirTags is spectacular, if not just because it can stop those pesky “this AirTag has been following you” notifications. Like, yeah Apple, that’s my wife’s keys.
Shared Passwords
This feature let me cancel my 1Password subscription. Apple did good here– you can create groups to share your passwords with. You can create multiple groups and share them with different sets of people, too. And thanks to the iCloud Passwords extensions, you can use iCloud Passwords in any Chromium browser (like Arc!).
Again, I’m really impressed with Apple here. This product works on basically everything but Linux and Android, and it’s pretty comprehensive, also having excellent support for Passkeys (which you can also share)!
Things I don’t like
While there’s a few things I wish would have made it into this release, there’s really only one new feature that drives me mad:
The new PDF experience in Notes
It seems like this update has made it harder for me to markup documents (on Mac, at least). I also feel like I was previously better able to open, edit, and view the document in Preview on Mac and save it back to Notes (rather than using the modal Markup experience); now it saves a copy elsewhere when editing. I’ve also found that my markup can shift places when trying to share a document out of Notes. It’s quite weird and a poor implementation of an otherwise very useful feature.
Overall, these are fairly minor features, but they have a considerable impact on the daily use and enjoyment of my devices. If the next version of iOS 18 is filled with minor tweaks like this, I’d be thrilled!
Of course, there are many, many, many more features Apple has added (and continues to add) to iOS 17, such as Linked notes, Stolen Device Protection, Stickers, Safari Profiles… it’s a lot. You can see a complete list of changes on Apple’s website and in this PDF provided by Apple.
If you’re so inclined, I’d love to hear what features you’ve enjoyed most in iOS 17!
As I’ve been trying out every note-taking app there is to try for my review series, I’ve recognized a pattern in me: none of the apps out there are scratching the “itch” I have. Instead, many apps seem to have the same basic idea, just executed differently.
Obsidian and Bear have wholly different philosophies, but at the end of the day, all these apps do is make it easy to access and search many files at once.
What I’ve found is that none of these apps, or their different philosophies, don’t actually help me. Instead, I’ve found that I serve them instead of them serving me; “if I just use enough tags, I’ll have the information I want.” “If I use the PARA method, I can find everything easily!” “Let me try this way of organizing, it will help me later! …after I update all my old notes.”
And as I switch between Apple Notes, Craft, Bear, Obsidian – you name it – all I’ve learned is that my information is still difficult to find. Not only that, but now it’s scattered across multiple apps.
As I move between all the apps and further fracture my stored knowledge, I’ve come to wonder… do I know what I want?
Figuring Out What I Want
This is the main crux of the issue. What I’ve been searching and pining for is a note-taking solution that helps me store and surface knowledge easily. The idea being, given the right context, information that I need appears when I need it.
This can take a few forms: context can be a calendar event, a date, a project, people I’m talking to, etc.
Most note-taking apps seem to be good at only storing your information. They’re not good at fast input (with exception), they’re not good at surfacing the right content when you need it, they’re not good at organizing your information. These tools simply store knowledge and put the onus on you to organize it.
For people who understand this, Obsidian seems to be the “best” app. This tool has everything you need to organize your information. There are folders. You can backlink. Forward link. Tag. Add properties. Data view. Spaces. Plugins! The whole nine yards. And as someone who thoroughly enjoys metadata, this is heaven! But what I’ve found over the course of my use of Obsidian is that the “flexibility” becomes overwhelming and burdensome. As I “plan for the future,” I need to make sure I’m adding the right tags to your notes, putting things in the right folder, linking to the appropriate document… whew! I’m no longer focused on capturing ideas or information.
On the flip side, Apple Notes has folders and tags. That’s about it! Notes float past you in a reverse chronological feed, all in a single list. Almost the complete opposite of Obsidian’s monolithic set of methods available for organization. But, Apple Notes has a significant lack of formatting options. Formatting is a great way to organize thoughts and information inside the note. For me, as a programmer, I need things like inline code snippets, callouts, and basically more options than the body, list, header, quote, monostyle, and block quote styles available. Obsidian really shines here.
But okay. Notion has all of those things too, and its file hierarchy is closer to Apple Notes; you have folders and databases. Oh, and you can automate stuff! And there are rich templates, powerful integrations… well, but every so often the blocks Notion provides can be too simple and too complex at the same time. Notion has no opinion on how you should structure your content, so it does nothing and everything very poorly.
I could go on. I might! Importantly, though, do you see the pattern above? I’m so focused on finding ways to organize my thoughts that I don’t actually save or store anything. And the things I do save are now all fragmented across different apps.
This is the important conclusion I came to: in the year 2024, where we can generate life-like images with MidJourney v6 and GPT is spamming – er, writing – tons of articles for Google… why am I spending so much time organizing my notes? No, really? These are computers. At a simple level, computers are great at detecting patterns. Why do I need to tag or store my notes in specific folders? Why do I only have a certain set of formatting tools available? Why can’t I use any type of date format (2024-10-22 v 10/22/24) and have the computer still know what I’m talking about?
I mean, there are influencers who are completely generated by AI out there, and they’re convincing millions of people. Why can’t my computer organize a note.
I mean, there are influencers who are completely generated by AI out there, and they’re convincing millions of people. Why can’t my computer organize a note.
I mean, there are influencers who are completely generated by AI out there, and they’re convincing millions of people. Why can’t my computer organize a note.
This led me to finally understand what I had been searching for all these years: a place to just dump stuff that then shows up right when I need it later.
The moment of realization came when I saw the demo for New Computer’s Dot announcement. In case you missed it, Dot looks to be a system that can take in any information, transform it to what you require, then proactively surface it based on your interactions with the app.
I mean, look at that example above. The user shares an image of a recipe, in another language, and Dot converts the recipe into a well formatted note, translates it, categorizes it, and summarizes it. I could cry.
I mean, look at that example above. The user shares an image of a recipe, in another language, and Dot converts the recipe into a well formatted note, translates it, categorizes it, and summarizes it. I could cry.
I mean, look at that example above. The user shares an image of a recipe, in another language, and Dot converts the recipe into a well formatted note, translates it, categorizes it, and summarizes it. I could cry.
Seeing the whole demo (and you should really check it out) really put words to what I was looking for. Just dump information in and let the computer figure it out. Later in the demo, the user is seen talking to Dot about a quiz and expresses that they are stressed. Dot recalled a recipe the user put in earlier and suggested the user try making it to bring her comfort.
Now, people who are far less pedantic than I am, like my wife, have already experienced a far less complex version of this system: make a note in Apple notes, don’t even bother titling it or throwing it in a folder, and then just search for it. And, you know what? Search in Apple Notes is actually quite good. Excellent, in fact. Search in many apps is pretty good, but I think Apple Notes does it the best.
Anyway. I found myself spending so much time organizing and worrying about which structure is best, which structure is the most flexible, transferable, and will last the test of time; which structure would be the easiest to maintain. Being concerned about all of that made me realize I wasn’t getting anywhere. My ideal personal knowledge management system? One I don’t have to fiddle with.
The right tool for the job
Here’s another folly I found in my search: I wanted my note-taking app (or was it my personal knowledge management system?) to contain everything I found. And this makes sense, right? If it’s supposed to be my second brain, my PKM should contain everything my brain has.
There’s just one thing wrong with that: I found myself trying to shoehorn a text-input system into a database of links, images, videos, articles, highlights– you name it. You know, the Notion effect. Why have more app when one app plenty? And uh, as great as Notion is, as powerful as Obsidian is: they are great at text, and not much else.
For example: I made a database in Notion to store links I was interested in, based on Casey Newton’s idea. I even made an Apple Shortcut that I could share links to and let it populate the database. Just for funsies, I even connected it to my Daily Notes database so I could see, every day, what links I saved. Hold your applause, you can just crown me the productivity king!
This wasn’t the easiest setup. I created a custom database in Notion, a few automations in Notion, and even made an Apple Shortcut that connected to Notion so I could share a link to that Shortcut and the Shortcut would take a screenshot too and…
The reality is that I spent so much time building and managing this system with tools that weren’t built for this specific use case. I found that I, once again, spent so much time managing things and not enough time appreciating it. You know what was built for something like this? Raindrop. And uh, it’s really good. The workflow? I share a link to Raindrop and call it a day.
This got me thinking about all the other things I’ve tried to shoehorn into note-taking apps or productivity solutions. Sketches. Task management. Blog posts. This article? I wrote it in Ulysses (It started in Pages but that made me cry). On an iPad. And uh, wow. Having all the correct formatting options available to me, for blogging, is great. It’s a document I won’t go back to edit, so why should it be in my always accessible notes app? (Thanks to Paul Thurrott for inspiring me to keep it simple and use regular documents for blog posts.)
There are so many note-taking apps on the iPad alone that Apple has made a whole collection for all the different types.
There are so many note-taking apps on the iPad alone that Apple has made a whole collection for all the different types.
There are so many note-taking apps on the iPad alone that Apple has made a whole collection for all the different types.
Using the right tool for the job is important. I’ve found that I go back to Notion when I need to combine a project’s tasks and the need to time track in a specific way. Using Ulysses for writing has been… oh man. Absolutely incredible. YNAB for our budgeting makes more sense than a confusing Google Sheet. Frame.io instead of Google Drive for sharing videos. The list goes on.
Thinking like this lifts the burden of what I expect in a note app: so what if it can’t hold a database? So what if it doesn’t have all the formatting I want? Notes are meant to be text. Maybe some media. They’re meant to be messy. Let the other apps and services take care of the more structured and formatted data.
AI to the rescue
Since I started drafting this document, Notion came out with their Q&A feature. It’s quite amazing– at least, from the looks of it. I don’t know as I don’t have access to it. But, at least conceptually, this is the correct path that starts us on the journey of chucking crap into a system and letting the computer figure it out. Which is good, in Notion’s case, because I get lost in the hierarchy and I can’t find stuff anyway.
Notion’s Q&A demo showing the ability to “ask” your workspace questions.
Notion’s Q&A demo showing the ability to “ask” your workspace questions.
Notion’s Q&A demo showing the ability to “ask” your workspace questions.
But this also shows what AI is capable of. I’ve actually been working on some GPT-powered Shortcuts that have been helping me organize my thoughts. I’ll share those soon.
Don’t worry about the tool
Just use Apple Notes.
Just use Apple Notes.
Just use Apple Notes.
Anyway, all that rambling above, just to say this: I spend too much time worrying about the tools. About data portability. About the future of an app. About new features coming down the road. In reality, how much of this matters? How much of what I save will I really need? How much of the “future proofing” I do is actually necessary?
Allow me to envy my wife really quick: she just sticks stuff in Apple Notes. In Reminders. In her email. It’s certainly chaotic to someone like me who wants the 747 when all she wants is a Prius. But you know what? She gets from A to B. While I’m still on the runway figuring out the control panel, she’s driving down the highway (and doing it very efficiently, too!) She doesn’t pour over every little feature she might need. She doesn’t even use all the features that are available in those simple apps. While she’s making our budget in Notes and the calculator app, I’m sitting over here thinking of how I’d build the same thing in Notion or Sheets. This isn’t a knock on my wife. Far from it: she doesn’t care. And she shouldn’t! Normal people shouldn’t. I have a problem.
So, all this to say, I know better what I want from my tools. I know better what I require. And I’m becoming okay with letting things be messy. After all, thoughts and ideas are messy. Computers certainly help make things more efficient, but if you’re not careful, they can suck all your time away from what matters. We are someday soon approaching our AI utopia where computers can help us like they do in Star Trek. That day isn’t here yet– but man, is it ever close! For now, just use what “feels” right and gets the job done. And it’s okay if it’s in more than one app.
2023 was a year where my wife and I were able to look at and examine many of the parts that make up who we are— together and individually. Religion, faith, relationships, boundaries, desires, politics, beliefs, and even gender.
Why do we believe what we do? How much of what we believe is truly of ourselves? If we’re so right, why are other people okay with believing other things? God hasn’t smitten them. If anything, they seem to be prospering. They seem to have the happiness and joy I was promised but lack.
Starting the year by learning that a lot of the “bad people” we had been told were external to our bubble were actually hanging out in our camp (mostly those in authority), everything shattered and all these and other questions came tumbling down. Every single part of what made me and Moriah up, everything that had formed us, every piece of material someone in authority had told us was one thing, had been torn open and needed to be searched, disassembled, and deconstructed. After all, if the people who shaped our worldview got whole parts of our belief structure wrong, what else was wrong?
As I dove deeper into what made me tick, it turned out that a lot of what was at the core of “us” was wrapped in or founded on fear. Fear of judgement. Fear of losing people. Fear of people judging us. Fear of going to hell. Fear of doing the wrong thing. Fear of understanding things the wrong way. Fear of doing the right thing at the wrong time. Fear of the unknown. Fear of being known and rejected. Fear that “others” (beliefs, people) would come in and wreck things. Fear that we would lose the culture! Fears that kept us in our comfort zone and afraid to move beyond.
Discovering that the leaders and institutions, of whom we trusted for moral guidance, were not just the ones pedaling these fears, but also were actively wrong in so many other ways, made us wonder if the God they told us about was real. If the country we were told to love was real. If all the homosexuals really were evil. If the people around us loved us for us, or just because we followed the rules so well.
Reaffirming my conviction, bringing these questions and observations up to others has them respond with fear. I’m met with “have you been praying?” “Have you been reading the Bible?” “I hope you’re right about all this…” I’ve done all the “right things,” and all I’ve been left with is burn out and more questions. Questions that led to more questions and more discovery. And after a bit, I had disassembled a lot of my beliefs, my comforts, my morals, my politics, my preconceptions… everything, and I was very much without an identity. A nomad, wandering through the wilderness. Almost starting from scratch. Not feeling at home anywhere, finding it hard to identify with and trust the institutions I grew up feeling comfort and belonging in.
This was overwhelming. It IS overwhelming. Incredibly overwhelming. And it’s barely just started. It brought on depression and rocky conversations between me and Moriah. Good things felt empty, supposed highlights of life tasted bland. It was something that, try as I might, couldn’t be ignored, and couldn’t be run away from.
But all of this just revealed what was already true: I had no personal identity. In a weird way, this brought some comfort: finding one’s self and one’s beliefs is what growing up is all about. And knowing that Moriah and I were 2,400 miles away from our comforts, literally having a “desert experience,” did bring some balm to my soul. This is the adventure, and we are supposed to be here.
God brought us out and away from everyone else. I’m 100% certain about that. Because of that, I have 100% confidence that the journey Moriah and I are on right now is something he’s permitted… and we can’t ever go too far from his grasp.
I didn’t know who I was, but I was finally sure about where I was. Lost, in a desert, finding who I was.
Knowing this revealed another thing about me, more on the creative side: all my efforts to create stuff were for other people. Like, I was making videos because “that’s what I did.” I took pictures because I was good at it. I coded in my spare time to keep me competitive against… the world? And hey… these aren’t inherently bad things.
But in this case I was pulling from a well that was dry, trained to give of myself because that’s “just the right thing to do.” Grinding away because that was my role. Doing it alone because… well, I was the only “part of the body” that could do it! I wrapped my identity in my capabilities, which led to burnout in a lot of areas. I’m definitely not the only one who’s felt this, either.
If I wanted to do the things I loved, I needed to learn how to enjoy things, how to make things for me. I don’t see how I can learn, grow, and thrive if all I did was make stuff for others. And don’t get me started on social media… I can’t work for an algorithm, competing for attention against millions of other people. I can’t let the fact that “what I’ve made has probably been done before” define what I do. I can’t make something because it’s just what I do. It’s exhausting. And plus, I don’t know what I actually like.
Okay, so for this year I want to refine me. Not make a “new” me. Because of all of the above, I’m trying to not focus on surface level goals, like making 5 short films, losing 30lbs, spending only 2 days a week on social media, etc., because it’s “the right thing to do.”
Instead, I’m going to try and focus on the parts of me below the surface. The parts that make me tick. The parts that will make me want to make short films and, as a result, spend less time on social media. I want to find the spark, instead of working to keep the spark from long ago protected and alive. I need to let that go, and let go of the idea that I am what I make.
Instead, I should seek answers to these questions: what do I like? What do I want to make? What do I need? Ultimately, who am I? I feel like once I know those answers, I’ll be able to contribute to the world in meaningful ways.
In the depths of the identity crisis, it was easy to fall into cynicism. There was a lot of pessimism. A lot of anger. There still is! But, as good as it was to let those feelings happen, wallowing in them led to depression and extracted energy. I want 2024 to be different.
We’re tired. We’re empty. We’re lonely. But we are far from the only ones (just listen to Half Alive, AJR, Gungor, Jess Ray…). So for this next year we want to be the change we want to see… and a lot of that change starts in the heart.
Obsidian CEO Steph Ango wrote it best in his blog post, which you can read here. I want to choose to be an optimist:
The life of a pessimist is easy but dreary. The life of an optimist is hard but exciting. Pessimism is easy because it costs nothing. Optimism is hard because it must be constantly reaffirmed. In the face of a hostile, cynical world, it takes effort to show that positivity has merit.
Steph Ango
I want to add something to this: I don’t want to be a blind optimist, thinking the world is better than it really is. I’ve been that before, and I’m pretty sure that’s what led me to being more pessimistic: I looked to reaffirm my conviction but came away hurt and isolated.
Instead, I want the negativity of the world to influence my optimism: in the face of how bad everything can be (and is), if it weren’t for all the good that, as being a part of Creation and an Image Bearer, is embedded in each and every single person, the world would be far worse. It is the relentless pursuit of those choosing to do good that brings hope and light to others.
So like, all of this is a lot, right?
There’s a balancing act to be had in validating the anger and frustration I have, while not wallowing in it, while acknowledging it sucks, while appreciating the process. It’s a lot to hold at once. I’m nowhere near finished either. But if I’ve learned anything in this whole process, it’s that even if I break the rules, go outside my comfort zone, or deconstruct everything, I’m learning who I am, and I’m finding who my people are. I’m confronting my fears.
The new year is supposed to bring in the new and replace the old. But a new year isn’t truly the start of something new, it’s another day like any other. Just as important as the day before it and the day to come. Incrementing the number on a year doesn’t really change anything, and waiting for a new year to start can result in a lot of lost time. Just because the year went the way it did, and there were days upon weeks upon months where “nothing happened,” doesn’t mean everything was lost.
I want 2024 to be a year where I continue examining myself, where I set boundaries on things that control me, where I fight pessimism, where I reject fear, and where I find out who I am. More importantly, I want my heart to be softened and more empathetic. We’re all struggling. I want to run towards people who need love and care rather than being afraid I’m messing with some sort of divine punishment, making sure everything is on the up-and-up, or that the person is following the rules (like, if they broke the rules, they get what they deserve, right?). Just like anything else good, it will take active effort, patience, and help from others.
Using Apple Shortcuts, AirPlay 2, iPhones, and Apple Music, I made a display of album artwork that, when tapped with an iPhone, will play that album across all our smart speakers.
Introduction
My wife and I just moved into a new place, and we made it a point to really invest in making it something more special than the previous place we lived in. You know, “do it right” from the beginning.
Previously, I had seen an apartment tour from Nikias, in which he shared some awesome ideas, one of which caught my attention: he set up a wall of album art that, when an album was tapped with a phone, would cause that album to play on his smart speakers.
It’s a great idea, though I would have wanted a more in-depth overview of how he did it. As I experimented around with the idea, I figured out his method, and now the 100 pack of NFC tags I bought could finally be put to good use.
Planning the idea
To start, Moriah and I spent a night creating a list of albums we enjoy listening to. Since this idea has been in our minds for a while (along with having music nights, an idea from Paul Thurrott), we had already been cultivating albums we enjoy, which made this a fairly easy task.
A very long list of albums we both really enjoy.
After we came up with a list of albums that were both enjoyable and artsy, I went online to find the album art covers. I used Google Images (I tried other solutions to no avail) to find high resolution pictures— ideally, something at about 3000×3000 pixels. However, most of the photos I found were well below that, sometimes as low as 600×600. Some were pixelated at that size, which meant somebody upscaled an 160×160 image without increasing the quality.
Since I was going to be printing those images out, I needed to make sure they were high quality (around 3000×3000). I used Photomator’s ML Upscale feature to triple the size of each image; while it wasn’t perfect, and the result was a bit “smoother” than I wanted, the images looked a lot better!
Lana Del Ray’s Born to Die album was especially small at 640×640 (left). But upscaled to 1920×1920 (right), it looks much better! On paper you wouldn’t notice how smooth everything is.
Lana Del Ray’s Born to Die album was especially small at 640×640 (left). But upscaled to 1920×1920 (right), it looks much better! On paper you wouldn’t notice how smooth everything is.
Lana Del Ray’s Born to Die album was especially small at 640×640 (left). But upscaled to 1920×1920 (right), it looks much better! On paper you wouldn’t notice how smooth everything is.
I put in a 1-hour photo request at our nearest Walmart. Unfortunately the only sizes they had available to print were 8×8″ and 4×4″ (a Vinyl album cover is 12.5″ and a CD album cover is 4.75″), but for the sake of art, these sufficed! I put in an order for 8″ and 4″ photo frames at Amazon (links to what I bought below). Since the dimensions were smaller than I wanted, I opted for frames that had thicker borders instead of border-less frames. I also had to make sure the smaller frames had the same size borders as the larger frames in order to not look disproportionate.
While I was waiting for the prints, I decided to figure out how I might lay these albums out on the wall. It’s interesting looking back at this after having finished the project, as what we ended with was neither the layout or the wall we thought we would go with. But anyway, I used Apple’s Freeform app to get an approximation for how the albums might be laid out. I knew the dimensions and sizes wouldn’t be right, but the app allowed Moriah and I to experiment around with ideas!
When I got the prints, Moriah went through and trimmed any white from the prints and I went through and unwrapped the frames and taped the NFC tags to the bottom right side of the images using double-sided tape.
Now that I had the actual frames in hand, I experimented around with some layouts by placing the frames on the floor. This helped me realize that we needed to put these on another–larger–wall, and that we could even get a more abstract with the design:
We settled on the more spread out and random look. I began working on mounting the frames to the wall. While there are certainly better methods to put a design like this on the wall (wires, tracks, hiring a professional), I decided to “transpose” the design I made on the floor to the wall using Velcro command strips and a level. I had originally started to use pushpins, but the frames ended up being very wobbly, and I didn’t want to risk them falling off as we tapped the albums. The Velcro command strips proved to work well: I could place the album on the wall and get a good idea of where I wanted it, take off the tape, stick it to the wall, then work on leveling it. Ultimate creative freedom.
And… voilà!
Programming the albums
Now that the albums were mounted on the wall, I needed to program them. There are a few different methods for doing so, and there are others if you’re not using an iOS device. Since this is an iPhone and Apple Music house, I’ll present those options below (all options programmed on iOS 17.2).
If you’re using Spotify or an Android device, you’ll have to switch up the steps or find another solution. Sorry 😔
I’ll be using the Shortcuts app for all my “programming”. Additionally, I’ll be programming the Shortcut not to just play the music I want, but I’ll also make sure it plays on all our HomePods and that the volume is set really low (just in case any speakers were left at a really high volume).
Before you decide which method is best for you, download my Shortcut:
Shortcut Engine
Play Album From NFC
Takes in an album name and then plays a matching iTunes song on Apple Music on the speakers you choose.
This is the method used in the video shared at the beginning, and it’s the most seamless way to use the feature– once it’s set up. If you’re the only one enjoying your albums, and you don’t have 18+ albums to program, this is the method for you!
Pros
Does not require interacting with your device or tapping on the screen; the Shortcut can run without interaction from the user.
Cons
Each album has to be programmed manually on each user’s device.
If you want to re-program your NFC tag, you have to do it for each user.
Adding albums means building another Shortcut automation for each user.
Steps
Download and customize the Shortcut above.
Open the Shortcuts app.
Go to the Automation tab.
Tap the “+” button in the top right.
Scroll down and tap NFC.
Tap “Scan” and scan your NFC tag. Name it!
Change the selected option to “Run Immediately” and disable “Notify When Run”.
Tap Next, then tap New Blank Automation.
Add “Text” as an action, then enter the album’s name (or iTunes/Apple Music URL).
Add “Run Shortcut” as an action, then find the Play Album From NFC Shortcut you downloaded.
The Text and Shortcut actions should be connected. Tap “Done” and try tapping your phone to the NFC tag!
Method 2: Shortcut + NFC Tools
This is a method I used before I found an easier way to accomplish the same thing. Basically, it involves making a Shortcut for each album you want, then using the NFC Tools app to program each NFC tag to run that Shortcut. This is the worst way to do this, as you’d need to make a new Shortcut for every album, and then share each Shortcut with each person you wanted to give access to play the albums.
Method 3: ONE Shortcut + NFC Tools
This is the method I went with! This method allowed me to make one Shortcut and program each NFC tag once. The best part is that if I want to change how my speakers are set up, or add any additional functionality (like changing the lights), I update the Shortcut and share it. I don’t have to reprogram any tags. Another perk: if I want to add an additional album to our collection, I don’t have to program it on Moriah’s phone too. I just program the NFC tag and the Shortcut will already know what to do.
Pros
“Simplest” shortcut
Easy to deploy (send one Shortcut to friends)
Easy to update NFC tags (no reprogramming)
Add additional albums without updating each friend’s phone
Cons
Requires tapping on a notification to run the Shortcut
Needs another Shortcut if you want to play anything but an album (playlist, song)
Steps
Download and customize the Shortcut above.
Download the NFC Tools app.
Open NFC Tools and tap “Write”.
Tap “Add Record” and scroll to the bottom and tap “Shortcut”.
Enter the Shortcut name exactly as it appears in the Shortcuts app (It should be Play Album From NFC).
Under “Input,” enter the album name. Typically entering the album name and artist (such as Currents by Tame Impala) is the most reliable method. However, you can also find the album’s URL in the iTunes or Apple Music app and put that in there too.
Tap “OK” and then tap “Write.” Tap your phone to the NFC tag.
Conclusion
I’m very happy with this. We have a wall filled with things we like, and it’s not just decorative: it serves a purpose, and brings a tactile experience to something that’s usually very digital and theoretical. My wife and I will definitely be adding to this collection– if not with more albums, with our own custom playlists and seasonal songs!
What’s great about Shortcut method #3 mentioned above is that it can be customized and updated for each individual. If Moriah wants her music louder than I do, she can change her Shortcut and the functionality will still work. I’m also thinking that maybe I’ll make another Shortcut that just takes in Apple Music URLs, so that we only need one Shortcut to play albums, artists, playlists, or songs.
Do you have any ideas on how you’ll use this? Did you try building something similar? Let me know in the comments!
Resources
Don’t want to read my life’s story, but you do want to know what I used? Here’s my list of resources:
In my last article on coding with an iPad, I wrote about an (admittedly) complicated way to set up a VSCode server to use so that I could code from my iPad.
Since then, my main beast of a MacBook Pro (2019 16”, 64GB RAM, 1TB SSD) died due to bad memory sectors, and it was either “fix it for $700” or “get $690 in credit.” So, I decided to make the jump (and my wife lovingly supported me switching) to a 12.9” iPad Pro M1. It has been my main computer for about a month now, and it’s been great! Well, flawed, but great. That’s another article.
But anyway, because of my dead laptop, and because the nature of my work is writing code, I gained some serious incentive to improve my server setup. The ultimate trigger was when 3 power outages happened at my home in one week, which meant my old Windows laptop would shut down and not turn back on. A fact I would only realize when I was out of the house, leaving me dead in the water. The machine that showed itself to be more reliable? My Raspberry Pi 4.
The Idea
I had originally tried to build my dev server on the Raspberry Pi, but LocalWP and DevKinsta didn’t have arm64 versions of their software. And the LAMP stack was pretty limited… I was running into problems where I couldn’t change the default /www/ directory, install multiple separate instances (so I could have completely separate WordPress sites), or access certain directories over SSH. All problematic, all harder to deal with than my current setup, and figuring out how to fix it would take too long. So I stuck with my old Windows laptop.
But then I had an idea… could I run Docker on my Pi? Well, apparently, yes!
Okay, interesting. I had used Docker in the past but I had some issues when it came to volumes, networking, all that stuff. It was just too complicated, especially when LocalWP and DevKinsta exist. But, I knew WordPress had a Docker image, and I knew I just needed a dockerfile YAML config. If I could figure out how to set that up, maybe I could figure out a solution.
I had Googled this all before and couldn’t seem to get anywhere. After being frustrated that technology couldn’t work for me and I was instead its slave, a lightbulb went off… why not try to have technology work for me and use ChatGPT to build me a custom docker-compose file? It couldn’t be worse than what I currently had, which was nothing.
The Execution
And uh, it worked VERY well. ChatGPT not only made me a working file, but it told me how to use it. I only had to make a few changes, like switching from using mySQL to using MariaDB, but it was literally a drop in replacement. After some testing, I dropped the file onto my Pi and it worked flawlessly. I tinkered within ChatGPT a little more: “Make the database save to a volume.” “Add a volume for the wp-content folder.” It obliged. I Googled around a little bit and made it so the script would always start up if the machine shut down.
Within an hour or two, I had a file and directory structure I could use to quickly whip up WordPress instances! It’s much easier to use than LocalWP too, with one of the benefits being that I could set my own ports to something I could remember.
So, sweet! I cloned the template I made, set the ports to something I could remember, and set up WordPress. Importantly, I set up the site from the Pi’s Tailscale IP, not localhost. That way the site would create itself in a manner where I could access it wherever I was. I cloned down some of my GitHub projects and added some demo data. It worked! Restarting the device also successfully brought the sites back up without me having to intervene.
The one thing I haven’t added (but might in the future) is an admin interface for the database, but I’m not doing any content development (it’s just demo data from FakerPress), I’m not too concerned.
What hasn’t changed
For this server setup I’m still using Tailwind, Ubuntu, and Tmux. On my iPad I’m using VSCode’s web app and the amazing Secure ShellFish app, which integrates with Tmux. I’m also experimenting with using Secure ShellFish and Runestone to offer a native iPad editing experience, as part of an exploration in more native iPad experiences.
Why’s that? Well, as great as VSCode is, even on the M1 iPad it can still lose connection when switching between apps. I have also had some major issues with it and my Magic Keyboard, where CMD+Tabbing between apps would sometimes lose keyboard focus in VSCode. Fixing it would require either detaching and reattaching the keyboard, reloading the window, or selecting another file in the list, going back to the file I was in, and then selecting the code editor. It definitely made it hard to stay focused on what I was doing.
One last haggle with coding on the iPad: I use the Web Inspector app to access dev tools in Safari. When I reload the page, the fly-out window doesn’t stay open. Additionally, the fly-out window cannot be resized. Instead, it’s stuck at like 85% of the page’s height, which means I can’t see anything when it’s open. It’s not ideal.
Summary
I’m very happy with this new setup. It’s simpler, more reliable, and easier to use. All good things!
You must be logged in to post a comment.