XOD is a Visual Programming Language for Arduino, Raspberry Pi, and other Maker Boards

When you think about visual programming on the Raspberry Pi or Arduino board, Scratch may come to mind, but some developers have decided to create their own visual programming language working for Arduino, Raspberry Pi, and other boards. Meet XOD, pronounced ksəud.

Click to Enlarge

The developers explains their used “functional reactive programming principles and added graphical functionality”. XOD is comprised of “nodes” that represents either some physical device like a sensor, motor, or relay, or some operation such as addition, comparison, or text concatenation, which you can link together through inputs and outputs to create a program, and XOD IDE will compile the resulting diagram to create and upload a binary program to Arduino, Raspberry Pi, etc… You can also convert a XOD diagram into a node with inputs and outputs to use it in another diagram, so the language is scalable.

The developers are now looking for testers to play with XOD private alpha, but XOD language, IDE, and library sources code will be released on Github once launched. You can register with your email address on their website, if you are interested in participating in the test program.

Support CNX Software! Donate via PayPal or cryptocurrencies, become a Patron on Patreon, or buy review samples

Subscribe
Notify of
guest
16 Comments
oldest
newest
boudyka
boudyka
3 years ago

Nooooooooooooooooooooo keep the drag and drop macro designers away from the Pi….the whole point was to learn coding skills, which are being lost in droves.

We struggle to employ people who knows how to code at the cli, it becomes just a gui designers code which isn’t portable, and ties businesses to vertical market application providers, change the application and we lose the staff and left holding the baby,

Learn C++ Learn C# Learn C even, Learn Scripting (any), Learn a programming skill, not how to avoid learning the code.

Erlit
3 years ago

Hi, I’m Mihail, XOD founder. Your comment has smiled all our team =) But if seriously. Why do you so negative about more easy-going experience with Pi and Arduino programming. More people who would never even started programming have an instrument to try. We are trying to make not another mickey mouse visual programming language, but really powerful open-source environment based of functional programming principles.

Michael J
Michael J
3 years ago

Negative opinions that visual programming will ruin people’s programming skills is not real. Because one can’t program if don’t know how to program, so people still need programming skills.The reason why visual programming is because there is no need to write already written codes-it is wastage of time. Visual programming makes programming more efficient and funny. I do agree with the project, it is awesome.

R.E.
R.E.
3 years ago

boudyka – Visual programming IS programming; allowing the developer to focus on the logic, rather than syntax.

gicho
gicho
3 years ago

Functional programming (reactive, dataflow, …) is much different than typical imperative one. Tools like XOD will help young people to avoid being brain-damaged by imperative legacy (sorry for us who didn’t had this luck 30 years ago and had to start with basic/assembly…) Thinking in flows allow different level of abstraction and helps separate functional logic (algoritm) from data structures and dependencies. Nothing against C# or C++ – in recent standard revisions C++ gained “functional programming” support. Still it does not force this style but this has some positive aspects too. I will definitely check the tool (XOD) when it… Read more »

Erlit
3 years ago

@gicho XOD programs are stored in regular JSON files. And each module is stored in its own file. The JSONs are pretty-printed. So XOD project source files are quite diff/git-friendly. It’s quite hard to understand what the program do if you’d look at the JSON alone, but it’s suitable to perform mass-refactoring. We used to sed -i from time to time when data structure had to change. Furthermore, there is a CLI that lets you perform some actions (transpile, publish, install) from the terminal without even running visual IDE. It should make XOD suitable for server environments. Interop is done… Read more »

Occam
Occam
3 years ago

Probably 80% of the code written for microcontrollers is amenable to this type of development tool. For the remaining 20% if XOD supports creation of custom nodes, 80% of the remaining 20% is probably amenable.

Occam
Occam
3 years ago

Visual programming is not new and has been used in the real world for decades so solve real production problems. I’ve seen LabView used to build very complicated control systems.

Erlit
3 years ago

@Occam
Right, so we never claimed to be the first. We just trying to realize in XOD good balance of modern developer’s tools and concepts, but still provide it with easy going learning curve.

Occam
Occam
3 years ago

My response was intended for the nay sayers poo pooing VD out of hand.

Occam
Occam
3 years ago

No sure if it’s already in XOD, but a very useful module would be a code block with inputs and output(s) where developer could write code using a scripting language, like a subset of JavaScript, when needed.

I currently use a very powerful visual development environment called Boomi to create very complex system integrations.

Erlit
3 years ago

@Occam
Yes, we are going to provide this feature

Occam
Occam
3 years ago

Great I signed up for alpha.

gicho
gicho
3 years ago

Did anyone received this “private alpha”? I signed last month but got nothing. On their site it is written “private alpha in progress”. I am wondering if I have to sign again?

Damian
Damian
3 years ago

I’m waiting for this alpha, it’s a great idea for boost our programming productivity and for do it a little more fun. Congratulations and thanks for give us your work open source.

Solution Clinic
Solution Clinic
3 years ago

@boudyka Hi I do a lot of projects and have three companies. I do not have the time nor the interest in learning another language, I just want to get some projects done fast without the whole “start at the bottom of all things” – thing! Bin there – done that – to often to count. If we want to produce a versatile product we`ll hire programmers like you wo love to mess with code. We love to do things fast and simple, but this will never effect the programmers market, cause they will always be essential when doing serious… Read more »

Advertisements