I used to play the piano a lot. And guitar, too. I may exaggerate, but I remember 6-8 continuous hours until my fingers had deeper grooves than level 7. Those who got the reference, you watched too many of those reviews!

I used to. Sigh.

Every time I pick up the guitar now, I feel like I am wasting time, and I may utilise the time somewhere else, like writing more code. Or write another article? This feeling has been constant since I started earning, and it is not diminishing, even when I tried to optimise my lifestyle to work a few freelance hours every day.

I wonder if you also have been thinking similarly about your hobbies.

Creating Accessible Apps for visionOS

I stumbled upon this WWDC session by Dan and Drew, which talks about creating accessible spatial experiences.

Create accessible spatial experiences - WWDC23 - Videos - Apple Developer
Learn how you can make spatial computing apps that work well for everyone. Like all Apple platforms, visionOS is designed for…

I have worked with the Accessibility Speech team, and I know how passionate and hardworking the folks are at Apple, giving their all to ensure everyone can use Apple products.

This week, I posted a small article on the VoiceOver gestures:

Exploring visionOS Accessibility: VoiceOver Gestures
As I continue to explore visionOS, I have been diving deeper into its accessibility features, specifically VoiceOver. VoiceOver is a gesture-based screen reader that lets you enjoy using your device without the need to see the screen. This is important for a vision-based device so that Apple Vision Pro is

It is like having a secret language that only you and your device understand! I wish I could attend the Developer Labs in Singapore next week and explore these gestures in person, but unfortunately, the available dates are at the end of the month.

Also, this post got featured in iOS Dev Weekly! 🥳 This motivates a whole series about creating accessible apps on visionOS!

Harmonising AI & Melodies: Crafting a Personalised Music App

Next week, yours truly is presenting at iOS Conf SG! I loved attending the conference in 2023 and manifested being on the stage, and it looks like it is happening sooner rather than later. 🥺

I discuss how I use different AI APIs, challenges faced, security concerns and making a server-driven AI agnostic system. I want the audience to start thinking about enhancing their app with the APIs, as we live in this ever-evolving AI world. If you are attending the conference, I hope to meet you at the conference soon. 👋🏾

A shoutout to RevenueCat for sponsoring the website and this newsletter! I have been an unofficial advocate since 2020, using it for personal and client apps. 

Their latest feature, Paywalls, helps you add paywalls in one line of code. I already used it at work, making it much quicker to iterate, edit, remotely configure and test your app's paywalls!

Quote of the Week

I have to be honest. I did not get a chance to read this week. The chilling weather pounced on me, leaving me wrapped in a blanket most of the time.

But I have been writing. A lot whenever I mustered the courage to leave the cosy environment. In my book, "Exploring Technical Writing", I start the chapter with a new quote. I found one to describe how I got a few writing assignments but got sick with COVID-19 and had to restart my life.

Just remember that whenever things feel bleak, all situations are temporary. It’s not your circumstance that determines your worth, it’s how you rise from the ashes after everything burns.
― Emily McIntire

Conclusion

One of my friends reached out to me, and we plan to check in with each other on how we grow and evolve this year. I still remember her words from last year, which helped me through the year, which I wrote about in my previous newsletter! I hope to find the archives of it and put the best parts in this one.

Like what I write, and want to support me? Check out my technical and experience books.

Have a great year ahead! 🎊

String Catalog

String Catalog - App Localization on Autopilot

Push to GitHub, and we'll automatically localize your app for 40+ languages, saving you hours of manual work.