About OOCSI
OOCSI is a message-based communication framework that connects clients across different platforms or programming languages. OOCSI allows to send, receive and broadcast messages with arbitrary content. OOCSI is a message-based communication framework that connects clients across different platforms or programming languages. OOCSI allows to send, receive and broadcast messages with arbitrary content.
The OOCSI mission is to create and maintain a simple systems-interaction fabric for use by designers. OOCSI has a bit of a history, check it out if you like. We also have some future plans.
What does âOOCSIâ mean?
Well, first of all, thsi is how you pronounce it: [oo:k:see] (rhymes with âoopsie!â) Fun, right? Do it again.
OOCSI was first an acronym for out of control for semantic interactivity, which is a nod to Kevin Kellyâs book âOut of Controlâ which is about designing (bio-technological) systems at large scale. The notion of designing systems and all implications of doing so in design were and still are interesting to us. Semantic interactivity is about the way we can communicate of the system with named (âsemanticâ) pieces of data and using them in interaction and interaction design. Later we started using a slightly different âunrollingâ of the acronym: Object-Oriented Communication for Semantic Interactivity which relates to the original vision of object-orientation applying to a system of communicating entities.
And yes, this explanation is way too long to be catchy, but we canât help it. OOCSI is what stuck with us over the years.
What is it?
OOCSI is a design prototyping middleware that allows âclientsâ across platforms and programming languages to communicate via a âserverâ (or âbrokerâ if you prefer middleware terminology). The design prototyping part is that OOCSI was developed specifically for use in design prototyping projects and fast iterations. That means, you can start really fast with OOCSI and get your clients communicate within minutes.
OOCSI has a lot of features that make connecting and communicating between OOCSI clients super easy and versatile. We recommend looking at the OOCSI tools which help with connectivity issues, but also simplify prototyping with OOCSI.
Oh, you want to know more? Great! On the about page we tell you more about the OOCSI mission and on the historical overview page you can read more about the history of the middleware from its roots in 2013 to the newest features and improvements in 2022.
On this website, we explain what the OOCSI system is, what features are available, how you can use it in design and what else you can try out. Also, we provide different types of learning resources that you can use to educate yourself or others about OOCSI. In the about section, we cover history and pointers on how to get started with an OOCSI server and a client library. If you are interested in the OOCSI protocol, for instance to implement a client on a platform that we donât yet support, we also explain that.
Getting started
Great, you want to try OOCSI! What do you need to do? Two steps:
- Locate an OOCSI server or run your own server
- Find the right client library and use it in your code
Server and client need to be on the same network, often on the Internet or in a local network. You will need the server IP address (something like 192.168.0.1
) or domain name (something like demo.oocsi.net
).
Learning about OOCSI (or teaching with it)
Check our learning resources and especially the videos. If you are a fellow teacher in Design, Architecture, Creative Technology, Computer Science or beyond, head over to the teaching resources. We would be happy about hearing how you use OOCSI in education. â¤ď¸
Contribute
The design and development of the OOCSI platform is a voluntary effort driven by design education and research need, and a healthy dose of curiosity. If you have ideas how we can make the middleware more reliable, scalable or more useful to you, let us know: open an issue in the main OOCSI issue tracker on GitHub or in the issue tracker of an OOCSI client library (see clients). The latter is great if you run into trouble with a specific client implementation.
License
All OOCSI technology, both server and client implementations, are licensed under permissive, open-source licenses: MIT and Apache 2.0. We value sharing of the technology in application to design and other domains, and we welcome contributions to the technology (on GitHub) and to the documentation.
The work on this website including examples, use-case and media, is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.
This documentation site was created by Mathias Funk, Industrial Design, Eindhoven University of Technology. Contact us for feedback, questions and support.