Notes from a perpetual student

Hi, Welcome to my blog. I'm Sharath Patali, a lifelong tech enthusiast, builder and creative tinkerer across code, hardware, and art.


Latest posts

Dec 14, 2025

Experiments in Multitouch and three.js

I started my career because of that one famous TED talk (the one linked above) on multi-touch user interfaces by Jeff Han. The way he presented his experiments and solutions, the sheer awesomeness of simultaneous multiple inputs in user interfaces, it had such a profound effect on my young brain that it kickstarted a latent need to build things from scratch. I went deeper and found a group called NUIGroup, a forum with people from all over the world experimenting and finding ways to build multitouch hardware on their own. Learning from that group, I built a multitouch screen using a projector, camera, and infrared lasers. Simultaneously, I joined a group of people developing SDKs for building apps with multitouch UX. I was one of the core contributors to the PyMT project, which later evolved into Kivy.org. I learned so much being part of that group, thanks to some amazing people and mentors.

Nov 29, 2025

Yantra v0.1

Yantra workflow screenshot

Journey so far and v0.1 alpha announcement

It’s been close to 4 weeks since I last wrote about Yantra. Within a week I wanted to wrap up the project, clean it up and then make the repo public. In a classic case of chasing the next interesting project to do, I got distracted with electronics and began 3 separate projects (Will write about it in the future). I was also apprehensive about sharing the code as I kept finding edge cases that I wanted to fix before release. It was an endless cycle of fixing and testing. So I finally had to take a call and release it in whatever state it is in.

Nov 2, 2025

Understanding Yantra's DAGs: Why Workflows in Yantra Are Graphs

NOTE: I asked Claude to help me distill this topic from my notes, and it did such a fine job that I hardly made any changes. I left this explanation in place because it's a succinct overview of Yantra's node execution process.

At its core, Yantra represents workflows as Directed Acyclic Graphs (DAGs). Let’s explore exactly what that means and why this design choice is crucial .

What Is a DAG?

  • Directed: Data flows in one direction (node A → node B)
  • Acyclic: No loops back to previous nodes (no infinite cycles)
  • Graph: Nodes (tasks) connected by edges (data flow)

Why Not Just a List?

Because real workflows aren’t linear. Consider a typical DevOps automation:

Latest photos

16_gion_street.jpg 15_a_stroll.jpg 14_takoyaki_store.jpg