<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>patali.dev</title>
    <link>https://patali.dev/</link>
    <description>Recent content on patali.dev</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Thu, 01 Jan 2026 12:21:30 +0530</lastBuildDate>
    <atom:link href="https://patali.dev/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>2025 - Wrapped</title>
      <link>https://patali.dev/posts/2025-wrapped/</link>
      <pubDate>Thu, 01 Jan 2026 12:21:30 +0530</pubDate>
      <guid>https://patali.dev/posts/2025-wrapped/</guid>
      <description>&lt;p&gt;2025 was a year of reset. At the start of the year, I felt stuck in a time loop, personally and professionally stagnant. After months of brooding and honest conversations with my spouse, Sneha, and a few close friends, I realised my mind was craving a more challenging environment. It’s a feeling that has been brewing for years, and this was the year I finally addressed it.&lt;/p&gt;&#xA;&lt;p&gt;&amp;ndash;&lt;/p&gt;&#xA;&lt;h2 id=&#34;socialisation-and-seeking-mentorship&#34;&gt;Socialisation and Seeking Mentorship&lt;/h2&gt;&#xA;&lt;p&gt;For the last 15 years, I focused so intensely on work that I neglected my social life. While my colleagues are great friends, my &amp;ldquo;heads down, sleeves rolled up&amp;rdquo; approach meant my social circle rarely expanded beyond a small group in Bangalore and that too thanks to Sathya.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Experiments in Multitouch and three.js</title>
      <link>https://patali.dev/posts/mtwebviz/</link>
      <pubDate>Sun, 14 Dec 2025 12:21:30 +0530</pubDate>
      <guid>https://patali.dev/posts/mtwebviz/</guid>
      <description>&lt;h2 id=&#34;hahahugoshortcode28s0hbhb&#34;&gt;&lt;div style=&#34;position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;&#34;&gt;&#xA;      &lt;iframe allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen&#34; loading=&#34;eager&#34; referrerpolicy=&#34;strict-origin-when-cross-origin&#34; src=&#34;https://www.youtube.com/embed/5JcSu7h-I40?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0&#34; style=&#34;position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;&#34; title=&#34;YouTube video&#34;&gt;&lt;/iframe&gt;&#xA;    &lt;/div&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;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.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Yantra v0.1</title>
      <link>https://patali.dev/posts/yantra-alpha_v01/</link>
      <pubDate>Sat, 29 Nov 2025 06:30:00 +0000</pubDate>
      <guid>https://patali.dev/posts/yantra-alpha_v01/</guid>
      <description>&lt;p&gt;&lt;img src=&#34;https://patali.dev/demo-workflow.jpg&#34; alt=&#34;Yantra workflow screenshot&#34;&gt;&lt;/p&gt;&#xA;&lt;h1 id=&#34;journey-so-far-and-v01-alpha-announcement&#34;&gt;Journey so far and v0.1 alpha announcement&lt;/h1&gt;&#xA;&lt;p&gt;It&amp;rsquo;s been close to 4 weeks since I last &lt;a href=&#34;https://patali.dev/posts/yantra-workflow-automation&#34;&gt;wrote&lt;/a&gt; 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.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Understanding Yantra&#39;s DAGs: Why Workflows in Yantra Are Graphs</title>
      <link>https://patali.dev/posts/yantra-workflow-workflow-is-a-dag/</link>
      <pubDate>Sun, 02 Nov 2025 07:30:00 +0000</pubDate>
      <guid>https://patali.dev/posts/yantra-workflow-workflow-is-a-dag/</guid>
      <description>&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;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&amp;#39;s a succinct overview of Yantra&amp;#39;s node execution process.&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;At its core, Yantra represents workflows as Directed Acyclic Graphs (DAGs). Let&amp;rsquo;s explore exactly what that means and why this design choice is crucial .&lt;/p&gt;&#xA;&lt;h3 id=&#34;what-is-a-dag&#34;&gt;What Is a DAG?&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;Directed&lt;/strong&gt;: Data flows in one direction (node A → node B)&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Acyclic&lt;/strong&gt;: No loops back to previous nodes (no infinite cycles)&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Graph&lt;/strong&gt;: Nodes (tasks) connected by edges (data flow)&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;why-not-just-a-list&#34;&gt;Why Not Just a List?&lt;/h3&gt;&#xA;&lt;p&gt;Because real workflows aren&amp;rsquo;t linear. Consider a typical DevOps automation:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Building Yantra: A Visual Workflow Automation Engine</title>
      <link>https://patali.dev/posts/yantra-workflow-automation/</link>
      <pubDate>Sun, 02 Nov 2025 06:30:00 +0000</pubDate>
      <guid>https://patali.dev/posts/yantra-workflow-automation/</guid>
      <description>&lt;p&gt;&lt;img src=&#34;https://patali.dev/yantra_splash.jpg&#34; alt=&#34;Yantra splash demo&#34;&gt;&lt;/p&gt;&#xA;&lt;h1 id=&#34;the-inspiration-from-cartoons-to-media-processing-libraries-to-real-problems&#34;&gt;The Inspiration: From Cartoons to media processing libraries to Real Problems&lt;/h1&gt;&#xA;&lt;p&gt;Growing up, I was fascinated by Tom&amp;rsquo;s and Wile E. Coyote&amp;rsquo;s elaborate contraptions that set up impossibly complex chain reactions. The end result was usually Jerry or the Road Runner outwitting them, but it wasn&amp;rsquo;t the fault of the machine itself. I even attempted a few times to set up my own Rube Goldberg machine. I was thinking the other day that I find some DevOps tasks fun for exactly the same reason. The magic is how the chain comes together and ultimately produces some result. It&amp;rsquo;s fun to see the chain reaction in action.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Gion Street - Kyoto, Japan</title>
      <link>https://patali.dev/photos/16_gion_street/</link>
      <pubDate>Mon, 28 Apr 2025 00:00:00 +0000</pubDate>
      <guid>https://patali.dev/photos/16_gion_street/</guid>
      <description></description>
    </item>
    <item>
      <title>A stroll through the inner streets - Osaka, Japan</title>
      <link>https://patali.dev/photos/15_a_stroll/</link>
      <pubDate>Sat, 26 Apr 2025 00:00:00 +0000</pubDate>
      <guid>https://patali.dev/photos/15_a_stroll/</guid>
      <description></description>
    </item>
    <item>
      <title>Takoyaki Store - Osaka, Japan</title>
      <link>https://patali.dev/photos/14_takoyaki_store/</link>
      <pubDate>Sat, 26 Apr 2025 00:00:00 +0000</pubDate>
      <guid>https://patali.dev/photos/14_takoyaki_store/</guid>
      <description></description>
    </item>
    <item>
      <title>Shibuya crossing - Tokyo, Japan</title>
      <link>https://patali.dev/photos/17_shibuya_crossing/</link>
      <pubDate>Thu, 24 Apr 2025 00:00:00 +0000</pubDate>
      <guid>https://patali.dev/photos/17_shibuya_crossing/</guid>
      <description></description>
    </item>
    <item>
      <title>Mt Fujiyama - Lake Kawaguchiko, Japan</title>
      <link>https://patali.dev/photos/13_mt_fujiyama/</link>
      <pubDate>Mon, 21 Apr 2025 00:00:00 +0000</pubDate>
      <guid>https://patali.dev/photos/13_mt_fujiyama/</guid>
      <description></description>
    </item>
    <item>
      <title>Surya Kiran Aerobatic Team - Bengaluru, India</title>
      <link>https://patali.dev/photos/10_aero_india_2025/</link>
      <pubDate>Fri, 14 Feb 2025 00:00:00 +0000</pubDate>
      <guid>https://patali.dev/photos/10_aero_india_2025/</guid>
      <description></description>
    </item>
    <item>
      <title>Hiking with friends - Black Forest, Germany</title>
      <link>https://patali.dev/photos/11_german_black_forest/</link>
      <pubDate>Thu, 17 Oct 2024 00:00:00 +0000</pubDate>
      <guid>https://patali.dev/photos/11_german_black_forest/</guid>
      <description></description>
    </item>
    <item>
      <title>No mans land - Ladakh, India</title>
      <link>https://patali.dev/photos/08_ladkhi_valleys/</link>
      <pubDate>Thu, 04 Jul 2024 00:00:00 +0000</pubDate>
      <guid>https://patali.dev/photos/08_ladkhi_valleys/</guid>
      <description></description>
    </item>
    <item>
      <title>Wild horses - Ladakh, India</title>
      <link>https://patali.dev/photos/09_ladhki_wild_horses/</link>
      <pubDate>Thu, 04 Jul 2024 00:00:00 +0000</pubDate>
      <guid>https://patali.dev/photos/09_ladhki_wild_horses/</guid>
      <description>&lt;p&gt;Visited the company headquarters in December. It was peak winter time in northern Sweden.&#xA;We encountered heavy snowfall started on our way to a friend&amp;rsquo;s house. It was quite magical and scary.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Tibetian Market - Leh, India</title>
      <link>https://patali.dev/photos/07_leh_markets/</link>
      <pubDate>Mon, 01 Jul 2024 00:00:00 +0000</pubDate>
      <guid>https://patali.dev/photos/07_leh_markets/</guid>
      <description></description>
    </item>
    <item>
      <title>Toorji&#39;s Stepwell - Jodhpur, India</title>
      <link>https://patali.dev/photos/06_jaipur_ghats/</link>
      <pubDate>Thu, 14 Dec 2023 00:00:00 +0000</pubDate>
      <guid>https://patali.dev/photos/06_jaipur_ghats/</guid>
      <description></description>
    </item>
    <item>
      <title>Hawa Mahal - Jaipur, India</title>
      <link>https://patali.dev/photos/04_jaipur_hawa_mahal/</link>
      <pubDate>Mon, 11 Dec 2023 00:00:00 +0000</pubDate>
      <guid>https://patali.dev/photos/04_jaipur_hawa_mahal/</guid>
      <description></description>
    </item>
    <item>
      <title>Turquoise waters - Nusa Penida Island, Indonesia</title>
      <link>https://patali.dev/photos/03_bali_beaches/</link>
      <pubDate>Thu, 18 May 2023 00:00:00 +0000</pubDate>
      <guid>https://patali.dev/photos/03_bali_beaches/</guid>
      <description>&lt;p&gt;Incredible views from every nook and corner of Bali.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Zoomies - Bengaluru, India</title>
      <link>https://patali.dev/photos/02_zoomies/</link>
      <pubDate>Sat, 18 Feb 2023 00:00:00 +0000</pubDate>
      <guid>https://patali.dev/photos/02_zoomies/</guid>
      <description>&lt;p&gt;Family&amp;rsquo;s day out at an orchard. Baloo and Tux had a blast. They found a mud patch and decided it was time for a spa session.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Through a snow storm - Skellefteå, Sweden</title>
      <link>https://patali.dev/photos/01_snow_storm/</link>
      <pubDate>Fri, 02 Dec 2022 00:00:00 +0000</pubDate>
      <guid>https://patali.dev/photos/01_snow_storm/</guid>
      <description>&lt;p&gt;Visited the company headquarters in December. It was peak winter time in northern Sweden.&#xA;We encountered heavy snowfall started on our way to a friend&amp;rsquo;s house. It was quite magical and scary.&lt;/p&gt;</description>
    </item>
    <item>
      <title>TP-Link Archer T4U v3 on Ubuntu 20.04</title>
      <link>https://patali.dev/posts/tp-link-archer-t4u-v3-on-ubuntu-20-04/</link>
      <pubDate>Sun, 26 Apr 2020 06:30:00 +0000</pubDate>
      <guid>https://patali.dev/posts/tp-link-archer-t4u-v3-on-ubuntu-20-04/</guid>
      <description>&lt;p&gt;To help with my work I recently installed Ubuntu 20.04 on my home computer. 20.04 is surprisingly snappy, crisp and stable on my home computer (Ryzen 7 1700, 32GB 3200Mhz DDR4, GTX 1080, NVME drives). However I hit upon an interesting problem with a USB WiFi dongle that I use TP-LINK Archer T4U v3, It did not work out of the box. So as expected I had to look at the self compiling of drivers route.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Enable/Disabling Firebase Crashlytics on runtime in Android</title>
      <link>https://patali.dev/posts/enable-disabling-firebase-crashlytics-on-runtime/</link>
      <pubDate>Tue, 25 Feb 2020 06:30:00 +0000</pubDate>
      <guid>https://patali.dev/posts/enable-disabling-firebase-crashlytics-on-runtime/</guid>
      <description>&lt;p&gt;Recently I integrated Firebase&amp;rsquo;s Crashlytics solution into one of our main Android products. It&amp;rsquo;s fairly easy to integrate, just 4 steps as per Crashlytics&amp;rsquo;s documentation &lt;a href=&#34;https://firebase.google.com/docs/crashlytics/get-started?platform=android&#34;&gt;here&lt;/a&gt;. But as with any reporting system there involves the issue of privacy and data collection problem. Always important to inform the user if you are collecting any information and also request for their consent to do so. By default Crashlytics&amp;rsquo;s behavior is to start reporting on every crash. So instead if you want to setup an opt-in process then all you have to do is&lt;/p&gt;</description>
    </item>
    <item>
      <title>Synergy with SSL on Raspberry Pi 4</title>
      <link>https://patali.dev/posts/syngery-with-ssl-on-raspberry-pi-4/</link>
      <pubDate>Sat, 22 Feb 2020 06:30:00 +0000</pubDate>
      <guid>https://patali.dev/posts/syngery-with-ssl-on-raspberry-pi-4/</guid>
      <description>&lt;p&gt;End of 2019 my daily driver 2015 MacBook Pro was beginning to show signs of ageing. Especially when I’m running multiple IDE’s, terminal emulators and browsers running in the background. Also two monitors (Laptop’s built in and an external 1080p monitor) was just not enough. I had to constantly switch between IDE and system monitoring and IRC/Slack clients. But driving more than two monitors would be next to impossible on it. However the processor inside is pretty decent for my current requirement of Android and web development. To solve this dilemma of to upgrade or not upgrade I decided to make a pros and cons list&lt;/p&gt;</description>
    </item>
    <item>
      <title>About</title>
      <link>https://patali.dev/about/</link>
      <pubDate>Thu, 19 Dec 2019 18:30:00 +0000</pubDate>
      <guid>https://patali.dev/about/</guid>
      <description>&lt;p&gt;Hi, I&amp;rsquo;m Sharath Patali. For the last 15 years, I&amp;rsquo;ve focused on creating software systems and frameworks for multi-touch hardware, mobile technologies, distributed systems, and other tech that genuinely fascinates me. Also got an invaluable opportunity to help build a company from it&amp;rsquo;s early startup phase all the way through to its acquistion. Welcome to my personal website, where I&amp;rsquo;ll share my experiments, code, and anything else I find fun.&lt;/p&gt;</description>
    </item>
    <item>
      <title>The valley that inspired Tokein to created Rivendell -  Lauterbrunnen, Switzerland</title>
      <link>https://patali.dev/photos/20_the_valley/</link>
      <pubDate>Sat, 06 Jul 2019 00:00:00 +0000</pubDate>
      <guid>https://patali.dev/photos/20_the_valley/</guid>
      <description></description>
    </item>
    <item>
      <title>Views from Jungfrau Train - Lauterbrunnen, Switzerland</title>
      <link>https://patali.dev/photos/19_views_from/</link>
      <pubDate>Sat, 06 Jul 2019 00:00:00 +0000</pubDate>
      <guid>https://patali.dev/photos/19_views_from/</guid>
      <description></description>
    </item>
    <item>
      <title>An evening with friends - Montreux, Switzerland</title>
      <link>https://patali.dev/photos/18_an_evening/</link>
      <pubDate>Thu, 04 Jul 2019 00:00:00 +0000</pubDate>
      <guid>https://patali.dev/photos/18_an_evening/</guid>
      <description></description>
    </item>
    <item>
      <title>Mt. Matterhorn - Zermatt, Switzerland</title>
      <link>https://patali.dev/photos/12_matterhorn/</link>
      <pubDate>Wed, 23 Aug 2017 00:00:00 +0000</pubDate>
      <guid>https://patali.dev/photos/12_matterhorn/</guid>
      <description></description>
    </item>
  </channel>
</rss>
