YODPS /

The principles

Less friction.
More working systems.

YODPS exists to make functions easier to develop, connect, test and understand.

01

Keep the function reusable.

Develop and debug C/C++ processing functions on a PC, then integrate the same logic on target hardware through platform-specific interfaces.

02

Keep data exchange simple.

Use plain C structures as the native payload format. Make serialization optional, and handle differences in alignment, layout and endianness at system boundaries.

03

Separate logic from transport.

Connect nodes through a uniform publish/subscribe model. Keep processing functions independent of the messaging backend.

04

Use live and recorded data together.

Acquire, process, visualize, record and replay through the same workflow. Mix desktop and target nodes for integration and closed-loop testing.

05

Make the system observable.

Expose raw data and function outputs through viewers, plots and traces so integration problems can be inspected and reproduced.

Read the original manifesto ↗