<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
    <title>Machine Mind</title>
    <subtitle>Practical notes on software architecture, backend engineering, cloud systems, Rust, Java, and developer tooling.</subtitle>
    <link rel="self" type="application/atom+xml" href="https://saumilpgithubio.vercel.app/atom.xml"/>
    <link rel="alternate" type="text/html" href="https://saumilpgithubio.vercel.app"/>
    <generator uri="https://www.getzola.org/">Zola</generator>
    <updated>2026-06-28T00:00:00+00:00</updated>
    <id>https://saumilpgithubio.vercel.app/atom.xml</id>
    <entry xml:lang="en">
        <title>Colophon: how this site is built</title>
        <published>2026-06-28T00:00:00+00:00</published>
        <updated>2026-06-28T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Saumil Patel
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://saumilpgithubio.vercel.app/notes/site-colophon/"/>
        <id>https://saumilpgithubio.vercel.app/notes/site-colophon/</id>
        
        <content type="html" xml:base="https://saumilpgithubio.vercel.app/notes/site-colophon/">&lt;p&gt;This site is a static, dependency-light technical publication.&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Generator:&lt;&#x2F;strong&gt; &lt;a rel=&quot;noopener nofollow noreferrer external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.getzola.org&quot;&gt;Zola&lt;&#x2F;a&gt; — a single fast Rust binary, no Node build pipeline.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Templates:&lt;&#x2F;strong&gt; custom &lt;a rel=&quot;noopener nofollow noreferrer external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;keats.github.io&#x2F;tera&#x2F;&quot;&gt;Tera&lt;&#x2F;a&gt; partials and macros.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Styles:&lt;&#x2F;strong&gt; a hand-written SCSS design system compiled by Zola, driven by CSS custom properties (light + dark).&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Search:&lt;&#x2F;strong&gt; &lt;a rel=&quot;noopener nofollow noreferrer external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;pagefind.app&quot;&gt;Pagefind&lt;&#x2F;a&gt; — a fully static search index generated after the build.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Interactions:&lt;&#x2F;strong&gt; a few tiny vanilla-JS modules (theme toggle, copy-code, mobile nav, search, TOC) — no framework.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Hosting:&lt;&#x2F;strong&gt; GitHub Pages, built and deployed by GitHub Actions.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;No client-side framework, no CDN dependency, no external analytics.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Dev machine setup for Flutter App development</title>
        <published>2024-11-16T00:00:00+00:00</published>
        <updated>2024-11-16T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Saumil Patel
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://saumilpgithubio.vercel.app/blog/dev-machine-setup-for-flutter/"/>
        <id>https://saumilpgithubio.vercel.app/blog/dev-machine-setup-for-flutter/</id>
        
        <summary type="html">&lt;p&gt;&lt;img src=&quot;&#x2F;img&#x2F;2024&#x2F;dev-machine-setup-flutter-osx&#x2F;macOs-dev-machine-setup.webp&quot; alt=&quot;Flutter on macOS&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; &#x2F;&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Setting up &lt;a rel=&quot;noopener nofollow noreferrer external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;flutter.dev&#x2F;&quot;&gt;Flutter&lt;&#x2F;a&gt; on macOS can be staightforward process when using &lt;a rel=&quot;noopener nofollow noreferrer external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;brew.sh&#x2F;&quot;&gt;Homebrew&lt;&#x2F;a&gt;, a popular package manager for macOS. Flutter, a powerful open-source UI software development toolkit by Google, enables developers to build natively compiled mobile, web, and desktop applications from a single codebase. In this guide, we’ll walk you through the necessary steps to install and configure Flutter on macOS system using Homebrew. Additionally, we will cover the installation of essential tools like Android Studio and Xcode, update Ruby, and set up CocoaPods to ensure a smooth development experience.</summary>
        
    </entry>
    <entry xml:lang="en">
        <title>Learning to fly with Rust</title>
        <published>2024-04-01T00:00:00+00:00</published>
        <updated>2024-04-01T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Saumil Patel
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://saumilpgithubio.vercel.app/blog/app-on-flyio/"/>
        <id>https://saumilpgithubio.vercel.app/blog/app-on-flyio/</id>
        
        <summary type="html">&lt;p&gt;&lt;img src=&quot;&#x2F;img&#x2F;2024&#x2F;app-on-flyio&#x2F;rust_in_hotair_balloon.webp&quot; alt=&quot;Rust in Flyio&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; &#x2F;&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Recently I updated my blog-site with &lt;a rel=&quot;noopener nofollow noreferrer external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.getzola.org&#x2F;&quot;&gt;&lt;strong&gt;Zola&lt;&#x2F;strong&gt;&lt;&#x2F;a&gt;, and then I started thinking to host Rust application on cloud providers. There are multiple CSPs ( &lt;em&gt;Cloud Service Providers&lt;&#x2F;em&gt; ) enabling Rust enthusiasts Developers (also known as “Rustaceans”) to host web-apps on cloud.</summary>
        
    </entry>
    <entry xml:lang="en">
        <title>Zola quickstart</title>
        <published>2024-03-19T00:00:00+00:00</published>
        <updated>2024-03-23T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Saumil Patel
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://saumilpgithubio.vercel.app/blog/intro-to-zola-ssg/"/>
        <id>https://saumilpgithubio.vercel.app/blog/intro-to-zola-ssg/</id>
        
        <summary type="html">&lt;p&gt;This post is one of the first one after a long time, I am evaluating &lt;strong&gt;&lt;a rel=&quot;noopener nofollow noreferrer external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.getzola.org&#x2F;&quot;&gt;&lt;code&gt;Zola&lt;&#x2F;code&gt;&lt;&#x2F;a&gt;&lt;&#x2F;strong&gt; as replacement of Jekyll, and thought of creating a blog for step-by-step site building.&lt;&#x2F;p&gt;
&lt;p&gt;Whether you like Rust and SSG or you do not know any of these, if you wish to create a website or a blog, &lt;code&gt;Zola&lt;&#x2F;code&gt; is made for you! We are going to discover here the basic concepts.&amp;hellip;
&lt;&#x2F;p&gt;
</summary>
        
    </entry>
    <entry xml:lang="en">
        <title>Automatic ID generation in Apache Solr</title>
        <published>2015-02-16T00:00:00+00:00</published>
        <updated>2015-02-16T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Saumil Patel
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://saumilpgithubio.vercel.app/blog/unique-id-generation-in-solr/"/>
        <id>https://saumilpgithubio.vercel.app/blog/unique-id-generation-in-solr/</id>
        
        <summary type="html">&lt;p&gt;I have been working on Apache Solr for last few months, and have been recieving requirements to speed up query process. As part of the investigation, i found out as retrieved documents’ unique id generation contributes query processing.And hence i have decided to add this post.&amp;hellip;
&lt;&#x2F;p&gt;
</summary>
        
    </entry>
    <entry xml:lang="en">
        <title>XML Schema Design Patterns</title>
        <published>2015-02-09T00:00:00+00:00</published>
        <updated>2015-02-09T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Saumil Patel
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://saumilpgithubio.vercel.app/blog/xml-schema-design-patterns/"/>
        <id>https://saumilpgithubio.vercel.app/blog/xml-schema-design-patterns/</id>
        
        <summary type="html">&lt;p&gt;This might be one of the old topic - specially when lot of developers are working with RESTful Services, but i would like to point out couple of pros and cons.&lt;&#x2F;p&gt;
&lt;p&gt;As most of the developers know, XML schema is very powerful, but they lack object-orientation, and are intended to capture a data model rather than an object model. In last one and half decades, there has been few tools available to architects and developers to be able to make use off some of the object orientation principles - like polymorphism for flexibility. But ultimately the whole point of the services must be general enough that it can communicate across languages. Hence i have attempted to put together some information around some of the very well known Design patterns.&amp;hellip;
&lt;&#x2F;p&gt;
</summary>
        
    </entry>
    <entry xml:lang="en">
        <title>Curried Function in Java</title>
        <published>2015-01-31T00:00:00+00:00</published>
        <updated>2015-01-31T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Saumil Patel
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://saumilpgithubio.vercel.app/blog/currying-function-in-java/"/>
        <id>https://saumilpgithubio.vercel.app/blog/currying-function-in-java/</id>
        
        <summary type="html">&lt;p&gt;&lt;strong&gt;Currying&lt;&#x2F;strong&gt; is a technique of transforming a function with multiple arguments into a function with just single argument. The single argument is the value of the first argument from the original function and it returns another single argument function. This in turn would take the second original argument and itself return another single argument function. This kind of chaining continues over the arguments of the original. The last in the chain will have access to all the arguments and so can do whatever it needs to do.&amp;hellip;
&lt;&#x2F;p&gt;
</summary>
        
    </entry>
    <entry xml:lang="en">
        <title>Quick Apache Solr Setup</title>
        <published>2015-01-31T00:00:00+00:00</published>
        <updated>2015-01-31T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Saumil Patel
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://saumilpgithubio.vercel.app/blog/quick-solr-setup/"/>
        <id>https://saumilpgithubio.vercel.app/blog/quick-solr-setup/</id>
        
        <summary type="html">&lt;p&gt;&lt;img src=&quot;&#x2F;img&#x2F;2015&#x2F;quick-solr-setup&#x2F;solr-header-image.webp&quot; alt=&quot;Solr&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; &#x2F;&gt;&lt;&#x2F;p&gt;
&lt;p&gt;It has been long time since I started with setup&#x2F;configuration related blog post. This post provides steps for setting up developer machine for &lt;strong&gt;&lt;a rel=&quot;noopener nofollow noreferrer external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;solr.apache.org&#x2F;&quot;&gt;Apache Solr&lt;&#x2F;a&gt;&lt;&#x2F;strong&gt;. Apache Solr is an opensource search engine written in Java, from the Apache Lucene project - with many powerful &lt;a rel=&quot;noopener nofollow noreferrer external&quot; target=&quot;_blank&quot; href=&quot;http:&#x2F;&#x2F;lucene.apache.org&#x2F;solr&#x2F;features.html&quot;&gt;features&lt;&#x2F;a&gt;.</summary>
        
    </entry>
    <entry xml:lang="en">
        <title>Closures in Java</title>
        <published>2015-01-23T00:00:00+00:00</published>
        <updated>2015-01-23T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Saumil Patel
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://saumilpgithubio.vercel.app/blog/closures-in-java/"/>
        <id>https://saumilpgithubio.vercel.app/blog/closures-in-java/</id>
        
        <summary type="html">&lt;p&gt;Working on last few projects, i’ve realized that use of closures can come really handy in day-to-day work.
Can you imagine writing loops after loops to extract or collect properties from list of custom objects? It can be tiring and painful. And hence, I have decided to add this post - mainly to point out couple of situations where introduction to closures can really ease this pain.&amp;hellip;
&lt;&#x2F;p&gt;
</summary>
        
    </entry>
</feed>
