Thought Pieces
Storyboarding 360 degree immersive experiences requires a different approach to traditional media…
Some people create beautiful perspective illustrations to visualise and storyboard their virtual reality designs And it’s tempting to think you’re not a strong designer if you’re not doing that too…
Planning out a linear VR experience requires thinking about where the viewers attention might be. Thinking about the focal points…
In traditional cinema, TV, or even the more modern phone screen, there’s limited screen real-estate. But removing that limitation creates a design problem…
Let’s not pretend the importance of prompt engineering is ubiquitous. The most prevalent power of generative AI is in the way it adapts to us, not the other way around…
A deep dive into carefully considered date formatting, line length and general typography attributes of filenames…
Rapid authoring tools like Articulate Storyline and Evolve Authoring make sharing projects possible across a team of non-programmers, but your design must often adapted to the limited range of possibilities the tool allows…
Projects
-

Ink
An Obsidian plugin that adds hand writing and drawing as embeds directly within each note.
-

Project Browser
An Obsidian plugin that provides a card layout of your files in each folder organised by state.
-

Interaction Stripper
A Penpot plugin that enables bulk removal of interactions across selected boards.
-

Focus for Trello
A browser plugin that restyles Trello boards for better focus.
-

Google Keep Import
An Obsidian plugin that enables easy import of Google Keep notes.
Technical Articles
Using flexbox to get space-between your elements when there’s many but aligning to one side when there’s few can be counter-intuitive…
Javascript console logs are are something React Native developers are very familiar with, but sometimes you need to log from native code…
A head scratching bug with sending requests on the iOS 18.4 simulator…
Common reasons why Meta’s XR Simulator in Unity might by crashing or freezing…
When building a code mirror 6 or Obsidian embed, it won’t get highlighted like other text selections by default. But it’s possible…
Sometimes it’s hard to know why an Android mobile device isn’t being detected by your computer for development…
Embed’s in Obsidian often have shortened paths, so how do you get the full path when manipulating them with a plugin?…
Building a bottom aligned chat interface with CSS when you don’t need more complex components…
Why do so many forms on websites require the user to drag and expand large text areas if they need more space. Just auto-resize them!…
