Skip to content

UX Prototyping & Protopie

  • Principles
    • Educational
    • Figma Integration
  • Patterns, Pitfalls, Ploys
    • Patterns
    • Pitfalls
    • Ploys
  • More …
    • People-Centered Design
    • Thinking about AI
  • Principles
    • Educational
    • Figma Integration
  • Patterns, Pitfalls, Ploys
    • Patterns
    • Pitfalls
    • Ploys
  • More …
    • People-Centered Design
    • Thinking about AI

Sending a message to another scene

Can you make something happen elsewhere?

For all the power of message sending, only the current scene is active at one time and there is (currently) no possibility of sending a message to a different scene.  Of course, that is unlikely to be your main intent, but it is easy to have a message that is sent to the current scene, or even to a Connect’d pie, and then to fall for the erroneous assumption that another scene in your pie also knows what these others know. When you implicitly make this assumption it can prove to be very challenging to uncover the flaw in your pie.

So, what should you do if you want another scene to know about events in another scene?  Variables are the solution – use ‘all scenes’ flag variables to indicate some event  and then when you jump to the relevant scene you can consult that variable and take steps to tweak the scene accordingly (and reset the flag variable in the process).

Use Components

It will often seem as though it will be faster to use individual elements than to use components, but in the end the time saving almost always goes the other way.

Working with Components

Use overridable variables in components

By using an overridable variable in your components you can have many instances of the component in your scene, but with different values for the same variable.

parseJson gives no error message

parseJson is.a very useful and powerful function, but it doesn't do all you might expect of it (yet, hopefully).

The wrong variable type

This pitfall is not a big deal, but it can waste you time as you try to track down why your variable seems to have the wrong value (or no value). It can also bite you in a formula where your variable is of the wrong type for the formula.

Distinctive initial variable values

It can sometimes be very helpful to use -99 and "null" for the initial values for your number and text variables.

Why use Protopie?

There are many prototyping tools out there, so what makes Protopie special – how is it different?

Keep trigger and response names visible

It is very important to annotate your code with what it is actually doing, but keeping the trigger and response names helps someone new to the project (or you in three month's time.

Use Variables

Use overridable variables in components

Sending a message to another scene

How to inspect variables inside a component

Distinctive initial variable values

Using the wrong mental model for Protopie

  • Welcome
  • What’s New?
  • About
  • Welcome
  • What’s New?
  • About

info@peoplecentereddesign.org

© 2026 David Gilmore