<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
    <title>Ramblings</title>
    <subtitle>Expore your mindset</subtitle>
    <link rel="self" type="application/atom+xml" href="https://daily.himvis.com/atom.xml"/>
    <link rel="alternate" type="text/html" href="https://daily.himvis.com"/>
    <generator uri="https://www.getzola.org/">Zola</generator>
    <updated>2026-01-19T00:00:00+00:00</updated>
    <id>https://daily.himvis.com/atom.xml</id>
    <entry xml:lang="en">
        <title>🔗Unbreakable OS for Edge AI</title>
        <published>2026-01-19T00:00:00+00:00</published>
        <updated>2026-01-19T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0289-unbreakable-os-for-edge-ai/"/>
        <id>https://daily.himvis.com/0289-unbreakable-os-for-edge-ai/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0289-unbreakable-os-for-edge-ai/">&lt;p&gt;An immutable distribution is an operating system or software environment
where the core system files are read-only and cannot be modified during runtime.
Any changes or updates are applied as a complete, &quot;atomic&quot; package rather than
patching individual files&lt;&#x2F;p&gt;
&lt;p&gt;In the context of Edge AI, this approach would become the standard for deploying
workloads in coming times.&lt;&#x2F;p&gt;
&lt;p&gt;Think of smart cameras in factories, autonomous drones, or remote
sensors—where manual maintenance is impossible.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Zero-configuration&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; drift, can help avoid &quot;snowflake&quot; (uniquely behaving) devices in fleet.
All edge nodes will be &lt;code&gt;bit-for-bit&lt;&#x2F;code&gt; identical.&lt;&#x2F;p&gt;
&lt;p&gt;Avoid bricking the remote devices in deep sea oil rig with &lt;em&gt;&lt;strong&gt;atomic&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; nature of OTA and
instant rollbacks.&lt;&#x2F;p&gt;
&lt;p&gt;Make OS as &lt;em&gt;&lt;strong&gt;read-only&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; appliance that has different update cadence than the AI models
and app workloads. This decouples AI apps from hardware and can update at faster
frequency than the OS, without worrying about breaking system-level drivers or libraries.&lt;&#x2F;p&gt;
&lt;p&gt;Immutable distros are going to be essential commodity for edge AI&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🤏🏻Robotic Tactile Blindness</title>
        <published>2026-01-12T00:00:00+00:00</published>
        <updated>2026-01-12T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0288-tactile-blindness/"/>
        <id>https://daily.himvis.com/0288-tactile-blindness/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0288-tactile-blindness/">&lt;p&gt;While vision AI is near-human, haptic (touch) feedback is the bottleneck.
Humanoids struggle to feel the difference between a loose bolt and a
cross-threaded one, leading to &lt;em&gt;&lt;strong&gt;production hallucinations&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; where the robot
thinks a task is done when it has actually failed.&lt;&#x2F;p&gt;
&lt;p&gt;In 2026, I think we will see a lot of improvements on haptic aspects of
robots.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>💡Unit of AI thought</title>
        <published>2026-01-09T00:00:00+00:00</published>
        <updated>2026-01-09T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0287-unit-of-ai-thought/"/>
        <id>https://daily.himvis.com/0287-unit-of-ai-thought/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0287-unit-of-ai-thought/">&lt;p&gt;While the cost per &quot;token&quot; (unit of AI thought) has &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.deloitte.com&#x2F;us&#x2F;en&#x2F;insights&#x2F;topics&#x2F;technology-management&#x2F;tech-trends&#x2F;2026&#x2F;ai-infrastructure-compute-strategy.html&quot;&gt;dropped approximately 280-fold since 2023&lt;&#x2F;a&gt;, total enterprise AI spending is skyrocketing.&lt;&#x2F;p&gt;
&lt;p&gt;This is because usage is exploding faster than prices are falling. In physical AI
however dynamics are a bit different where robots must do continuous inference unlike
LLM based chatbots who think when some text it fed into them. Physical agents must
think all the time they are active.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>📈💰📊Economics of Physical AI</title>
        <published>2026-01-08T00:00:00+00:00</published>
        <updated>2026-01-08T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0286-economics-of-physical-ai/"/>
        <id>https://daily.himvis.com/0286-economics-of-physical-ai/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0286-economics-of-physical-ai/">&lt;p&gt;&lt;em&gt;&lt;strong&gt;OpEx vs. CapEx&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;A robot might cost $20,000 to buy (CapEx),
but its cloud &quot;brain&quot; might cost $5,000&#x2F;month to run (OpEx).
Within 5 months, the software costs more than the machine.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Unit Economics&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;For Physical AI to be viable in logistics or retail,
the &quot;cost per task&quot; (e.g., picking a box) must be lower than human labor.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🏋️‍♂️Physical AI - Training challenges</title>
        <published>2026-01-07T00:00:00+00:00</published>
        <updated>2026-01-07T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0285-physical-ai-training-challenges/"/>
        <id>https://daily.himvis.com/0285-physical-ai-training-challenges/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0285-physical-ai-training-challenges/">&lt;p&gt;Large Language Models (LLMs) were trained on the entire internet&#x27;s text.
Physical AI on the other hand does not have a &quot;Physical Internet&quot; to learn from.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;3D Data Scarcity:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; There is a massive shortage of high-quality,
labeled 3D video and haptic (touch) data compared to text or 2D images or videos.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Physical Common Sense:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; Humans have intuition, e.g. they know that a glass will break if
dropped or that a heavy box requires more force to push. Teaching this &quot;intuitive physics&quot; to
AI requires a different kind of Model which holds a mental map of cause and effect
It is still work in progress.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🚧 Physical AI - Constraints</title>
        <published>2026-01-06T00:00:00+00:00</published>
        <updated>2026-01-06T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0284-physical-ai-constraints/"/>
        <id>https://daily.himvis.com/0284-physical-ai-constraints/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0284-physical-ai-constraints/">&lt;p&gt;Unlike LLM based products like chatbots which run on massive data-centers, embodied systems
must carry their &lt;code&gt;brain&lt;&#x2F;code&gt; with them. This creates severe constraints for such systems&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Performance:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; As noted in &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.deloitte.com&#x2F;us&#x2F;en&#x2F;insights&#x2F;topics&#x2F;technology-management&#x2F;tech-trends.html&quot;&gt;deloitte&#x27;s report on 2026 tech trends&lt;&#x2F;a&gt; Cost of running these embodies systems in higher than the cost to build the hardware&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Power:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; There can not carry power-stations on their bodies that can enable a trillion parameter LLM&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Latency:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; A robot must avoid colliding with the bird in a split second, there is no time to send data to cloud
and wait for instructions to follow. So it will need decentralized inferencing.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🤖🧠🇦🇮👾AI coding agents - Curdling effect</title>
        <published>2026-01-05T00:00:00+00:00</published>
        <updated>2026-01-05T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0283-ai-coding-agents-curdling-effect/"/>
        <id>https://daily.himvis.com/0283-ai-coding-agents-curdling-effect/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0283-ai-coding-agents-curdling-effect/">&lt;p&gt;Coding agents saw a rapid rise in 2025 and they are having a considerable
effect as well. They have eased out things like code completion, they are
better than usually what IDEs provided for TAB completion and auto-suggestions
AI coding agents can suggest full logical units instead of just API signature
or word completions.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;They have made easy coding tasks easier like above, but at the same time they
have also made hard coding tasks harder&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; e.g. code reviews. Reviewers are overloaded
more than before. Code generated with agents e.g. Claude Code and others is a lot more
volume than before and piling technical debt faster.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>𖥂🎮Embodied AI - Challenges</title>
        <published>2025-12-24T00:00:00+00:00</published>
        <updated>2025-12-24T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0282-embodied-ai-challenges/"/>
        <id>https://daily.himvis.com/0282-embodied-ai-challenges/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0282-embodied-ai-challenges/">&lt;p&gt;In recent years, LLMs have made AI center of attraction for once more. There are
cognitive tasks which are now feasible due to LLMs but where is my robot that
could sweep my floor, vacuum carpets, water the plants and likely other physical
task in and around the house?&lt;&#x2F;p&gt;
&lt;p&gt;Embodied AI, has its own unique challenges. There is not enough data for physical
AI to train on when compared to what we have for LLMs&lt;&#x2F;p&gt;
&lt;p&gt;Biological designs are optimized for functioning in physical world, Studying
bio designs and implementing the findings to robot designs needs a lot of work&lt;&#x2F;p&gt;
&lt;p&gt;Robots can generate commands using LLMs but the code snippets to achieve these are
pre-generated. However, for local awareness, robot must be capable for generating
these movement and sensing commands on the fly to perform a complex task. It must
also learn the best combination for doing it, so &lt;em&gt;&lt;strong&gt;training on the job&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; is must.&lt;&#x2F;p&gt;
&lt;p&gt;Learning from physical world is a huge limitation. The simulation infrastructure can
help the ecosystem a lot.&lt;&#x2F;p&gt;
&lt;p&gt;I would imagine a &lt;em&gt;&lt;strong&gt;RoboLLM&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; for autonomous robot command and operations in near term same as
LLMs like Claude, Gemini Llama are for generating text.&lt;&#x2F;p&gt;
&lt;p&gt;The day when autonomous drone will surpass skills of human pilots is not too distant. Like
AI mastered chess and Alpha go in last couple of decades, this is next frontier in the
third decade of 21st century&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🤖Embodied AI</title>
        <published>2025-12-23T00:00:00+00:00</published>
        <updated>2025-12-23T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0281-embodied-ai/"/>
        <id>https://daily.himvis.com/0281-embodied-ai/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0281-embodied-ai/">&lt;p&gt;Embodied AI is a term used for AI needed for robots e.g. humanoids. Recent advancements
in ML and Computer Vision has helped with significant breakthroughs in navigating and
perception using camera sensors and LiDAR. Machine learning has enables training-on-the-job
which has made them way better than pre-programmed robots.&lt;&#x2F;p&gt;
&lt;p&gt;Nvidia&#x27;s World foundation model e.g. &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.nvidia.com&#x2F;en-us&#x2F;ai&#x2F;cosmos&#x2F;&quot;&gt;Cosmos&lt;&#x2F;a&gt; are emerging technologies in physical AI space&lt;&#x2F;p&gt;
&lt;p&gt;In next few days we will explore more on &lt;em&gt;&lt;strong&gt;Embodied AI&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;, its scope, and its challenges.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>👁️Human LLM interface</title>
        <published>2025-12-22T00:00:00+00:00</published>
        <updated>2025-12-22T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0280-human-llm-interface/"/>
        <id>https://daily.himvis.com/0280-human-llm-interface/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0280-human-llm-interface/">&lt;p&gt;LLMs of today (2025) are well versed in text based interaction and human do not like to consume
text, its tedious. We like to consume information via other means e.g. images, videos, diagrams, slides etc.&lt;&#x2F;p&gt;
&lt;p&gt;as the saying goes&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;If a picture is worth thousand words, a &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;idearocketanimation.com&#x2F;4293-video-worth-1-million-words&#x2F;&quot;&gt;video is worth 1.8 million words&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;Currently, we are getting by using formatted text (markdown) formats, but I think this is not
optimal. Google&#x27;s Nano banana is onto something useful with image generation feature.&lt;&#x2F;p&gt;
&lt;p&gt;If LLMs are the next generational shift in computing platforms then the UI&#x2F;UX has to become appealing to humans.
in 2026 we might see more of these new ways for LLMs to interact with humans.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>💳 Upstream Contribution process is not effortless</title>
        <published>2025-12-12T00:00:00+00:00</published>
        <updated>2025-12-12T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0279-upstream-contribution-process-is-not-effortless/"/>
        <id>https://daily.himvis.com/0279-upstream-contribution-process-is-not-effortless/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0279-upstream-contribution-process-is-not-effortless/">&lt;p&gt;The process of getting a change accepted into a successful, high-quality open-source project
is often challenging and time-consuming.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;High Bar for Acceptance:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; To maintain quality, stability, and consistency, large
projects usually have strict guidelines for code style,
testing, documentation, and API compatibility.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;In-Depth Review Cycle:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; Your code will likely go through a rigorous review
by project maintainers and other contributors. They may request significant
rework or redesign of your feature to ensure it aligns with the project&#x27;s
long-term vision and serves the general community, not just your specific use case.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Delayed Benefit:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; While the long-term benefit is huge, the immediate use of
your change is delayed until it is officially merged and released.
If you need the feature right now, this delay can be a major disadvantage.&lt;&#x2F;p&gt;
&lt;p&gt;Now go and convince your boss about paying technical debt in advance&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🔋⚡Energy Abundance</title>
        <published>2025-12-11T00:00:00+00:00</published>
        <updated>2025-12-11T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0278-energy/"/>
        <id>https://daily.himvis.com/0278-energy/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0278-energy/">&lt;p&gt;The world consumes a massive amount of power, roughly 60 to 70 Terawatts of
average power (or around 1,500-1,700 Terawatt-hours (TWh) daily).
When considering all forms of primary energy (oil, gas, coal, renewables), with
electricity alone being around 74 TWh&#x2F;day.&lt;&#x2F;p&gt;
&lt;p&gt;The &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;news.mit.edu&#x2F;2011&#x2F;energy-scale-part3-1026&quot;&gt;Earth receives a massive amount of solar energy daily&lt;&#x2F;a&gt;, about 173,000 terawatts continuously, which
is over 10,000 times the world&#x27;s total energy use&lt;&#x2F;p&gt;
&lt;p&gt;If we focused enough on harnessing solar power, it will create energy abundance that will last forever.
We do not have to worry about AI data centers sucking all the power as it is a concern today.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Will next Supercomputer use RISC-V ?</title>
        <published>2025-12-10T00:00:00+00:00</published>
        <updated>2025-12-10T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0277-will-next-supercomputer-use-risc-v/"/>
        <id>https://daily.himvis.com/0277-will-next-supercomputer-use-risc-v/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0277-will-next-supercomputer-use-risc-v/">&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Approximate Period&lt;&#x2F;th&gt;&lt;th&gt;Predominant Architecture &#x2F; Design&lt;&#x2F;th&gt;&lt;th&gt;Key Characteristics&lt;&#x2F;th&gt;&lt;th&gt;Examples of CPU&#x2F;Processor Type&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;1960s - Late 1970s&lt;&#x2F;td&gt;&lt;td&gt;Early, Specialized Systems&lt;&#x2F;td&gt;&lt;td&gt;Highly innovative, compact designs, exploiting local parallelism like pipelining. Small number of processors.&lt;&#x2F;td&gt;&lt;td&gt;Custom, very fast, dedicated CPUs (e.g., in CDC 6600).&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Late 1970s - Early 1990s&lt;&#x2F;td&gt;&lt;td&gt;Vector Processors (The Cray Era)&lt;&#x2F;td&gt;&lt;td&gt;Focused on specialized vector processing (performing the same operation on many data points simultaneously) and small-scale shared-memory multiprocessing.&lt;&#x2F;td&gt;&lt;td&gt;Specialized Vector Processors (e.g., in Cray-1, Cray X-MP, NEC SX series).&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Early 1990s - Late 1990s&lt;&#x2F;td&gt;&lt;td&gt;Massively Parallel Processors (MPP) &amp;amp; RISC-based SMPs&lt;&#x2F;td&gt;&lt;td&gt;Shift to massive centralized parallelism using a large number of interconnected processors with distributed memory. The processors were often RISC (Reduced Instruction Set Computer) designs.&lt;&#x2F;td&gt;&lt;td&gt;RISC CPUs like SPARC (e.g., in Fujitsu K computer, CM-5), Alpha (e.g., in Cray T3D&#x2F;T3E), and PowerPC (e.g., in IBM SP systems).&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Early 2000s - Present&lt;&#x2F;td&gt;&lt;td&gt;Clustered Commodity Processors (x86 &amp;amp; Hybrid Systems)&lt;&#x2F;td&gt;&lt;td&gt;Dominance of massive distributed parallelism using clusters of high-volume, commercial off-the-shelf servers. Initially based on standard x86 CPUs, then augmented with accelerators.&lt;&#x2F;td&gt;&lt;td&gt;x86 CPUs (from Intel and AMD) + GPGPUs (e.g., Summit, Frontier) and later non-commodity many-core designs like IBM Power (e.g., Blue Gene, Summit).&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;Late 2010s - Present&lt;&#x2F;td&gt;&lt;td&gt;High-Efficiency Custom ARM Systems&lt;&#x2F;td&gt;&lt;td&gt;Focus on power-efficiency and high memory bandwidth with custom-designed processors based on open architectures, often integrating vector extensions directly into the CPU, minimizing the need for separate accelerators.&lt;&#x2F;td&gt;&lt;td&gt;Custom ARM CPUs (e.g., Fujitsu A64FX in Fugaku) and specialized Chinese processors (e.g., Sunway SW26010).&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;p&gt;We can see progression from custom -&amp;gt; PowerPC and SPARC -&amp;gt; x86 -&amp;gt; ARM over decades. I am predicting next supercomputer will use &lt;em&gt;&lt;strong&gt;RISC-V&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;What is your prediction?&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>📍autonomous endpoints</title>
        <published>2025-12-09T00:00:00+00:00</published>
        <updated>2025-12-09T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0276-autonomous-endpoints/"/>
        <id>https://daily.himvis.com/0276-autonomous-endpoints/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0276-autonomous-endpoints/">&lt;p&gt;Today we have massive fleets of simple telemetry devices in a
typical IoT deployment. These devices are instructed to collect
data and with zero or no pre-processing this data is siphoned to
a cloud location and poured into data lakes. Massive systems
operate on this data to come up with some intelligence that is
useful either for network itself or other services.&lt;&#x2F;p&gt;
&lt;p&gt;There is a shift coming.&lt;&#x2F;p&gt;
&lt;p&gt;On device decision making is showing some signs in networks. The
&lt;em&gt;&lt;strong&gt;autonomous endpoints&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; is a shift that is coming in for IoT
systems. End-point can make real-time decisions e.g. maintenance
predictive service quality management, video analytics and
a million other use cases.&lt;&#x2F;p&gt;
&lt;p&gt;We do not require a constant contact with cloud, it does not have
to ship massive amount of data, reducing network bandwidth load.
Reducing latency. This is music to the ears of Systems with tight
latency requirements&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>⏳Continuous Refactoring</title>
        <published>2025-12-08T00:00:00+00:00</published>
        <updated>2025-12-08T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0275-continuous-refactoring/"/>
        <id>https://daily.himvis.com/0275-continuous-refactoring/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0275-continuous-refactoring/">&lt;p&gt;Remember google&#x27;s &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;conversational-leadership.net&#x2F;google-free-time-policy&#x2F;&quot;&gt;20% free time policy&lt;&#x2F;a&gt;?
This idea spins the same concept but towards addressing technical debt&lt;&#x2F;p&gt;
&lt;p&gt;A dedicated, non-negotiable portion of every developer&#x27;s time (often 15-25%) is
reserved daily for debt, regardless of feature priority.&lt;&#x2F;p&gt;
&lt;p&gt;Unlike a dedicated sprint that is easy to cancel, this is an &lt;em&gt;&lt;strong&gt;immutable time&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; allocation.
It&#x27;s not a backlog item; it&#x27;s just part of the job. Developers are encouraged
to use this time to fix issues in the area of code they are currently working on&lt;&#x2F;p&gt;
&lt;p&gt;It ensures the debt is serviced continuously&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🙃Technical Debt as a Feature</title>
        <published>2025-12-05T00:00:00+00:00</published>
        <updated>2025-12-05T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0274-technical-debt-as-a-feature/"/>
        <id>https://daily.himvis.com/0274-technical-debt-as-a-feature/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0274-technical-debt-as-a-feature/">&lt;p&gt;Stop presenting technical debt as &lt;em&gt;&lt;strong&gt;maintenance&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; or &lt;em&gt;&lt;strong&gt;overhead&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; to the business&#x2F;product
owners. Instead, frame the repayment in terms of the new feature it is going to unlock.&lt;&#x2F;p&gt;
&lt;p&gt;Every tech debt item is reframed as a user story called a &quot;Feature Enabler&quot; or &quot;Risk Reducer&quot; Story.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Old:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; Refactor the legacy Security API.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;New:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; Enable Hardware enabled security API by replacing the legacy security API (Enables 4K video content playback
doubling the content library available to customers)&lt;&#x2F;p&gt;
&lt;p&gt;It translates engineering work into clear business outcomes
(speed, safety, scalability), making it easier for product
managers to prioritize next to new features.&lt;&#x2F;p&gt;
&lt;p&gt;Glass half empty suddenly becomes glass half full.&lt;&#x2F;p&gt;
&lt;p&gt;Reframing is powerful, use it to strengthen your story.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🥇Technical Debt Olympics</title>
        <published>2025-12-04T00:00:00+00:00</published>
        <updated>2025-12-04T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0273-technical-debt-olympics/"/>
        <id>https://daily.himvis.com/0273-technical-debt-olympics/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0273-technical-debt-olympics/">&lt;p&gt;Dedicate a specific, high-energy event (one or two-week &quot;sprint&quot;)
focused only on the most impactful technical debt.&lt;&#x2F;p&gt;
&lt;p&gt;It&#x27;s a break from feature work, more like a competition.&lt;&#x2F;p&gt;
&lt;p&gt;Teams compete to remove the most lines of dead&#x2F;bad code,
improve test coverage, or simplify the most complex modules,
with prizes, recognition, and public dashboards.&lt;&#x2F;p&gt;
&lt;p&gt;A bit of play also helps in boosting morale.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🌅 Sunsetting Legacy technology</title>
        <published>2025-12-03T00:00:00+00:00</published>
        <updated>2025-12-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0272-sunsetting-legacy-technology/"/>
        <id>https://daily.himvis.com/0272-sunsetting-legacy-technology/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0272-sunsetting-legacy-technology/">&lt;p&gt;Retiring old parts of codebase should be planned and formally processed not when
it starts to break and looks jaded but when its in good functioning condition. So
think about end-of-life dates and how it should be communicated to users.&lt;&#x2F;p&gt;
&lt;p&gt;Often such changes are wrapped under vague goals like &quot;modernizing&quot; which does
not set right expectations.&lt;&#x2F;p&gt;
&lt;p&gt;Apply a code tax to teams who still want to use and modify the code already
marked for end-of-life. This will enforce migration to new debt-free
architecture while time is still on your side.&lt;&#x2F;p&gt;
&lt;p&gt;It will provide strong incentive to prioritize refactoring, eventually
remove the high maintenance old code when the deadline is reached.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🚧 The &quot;Toll Booth&quot; for Code Quality</title>
        <published>2025-12-02T00:00:00+00:00</published>
        <updated>2025-12-02T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0271-the-toll/"/>
        <id>https://daily.himvis.com/0271-the-toll/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0271-the-toll/">&lt;p&gt;Implement an automated quality gate in the Continuous Integration&#x2F;Continuous Deployment (CI&#x2F;CD) pipeline
that measures the debt change for every pull request (PR).&lt;&#x2F;p&gt;
&lt;p&gt;The system automatically fails a PR if it increases the overall technical debt score
(e.g., adds complexity, reduces test coverage) above a certain threshold, forcing the
developer to clean up their own mess before merging.&lt;&#x2F;p&gt;
&lt;p&gt;This acts as a preventative measure, stopping the bleeding and dramatically
slowing the accumulation of new tech debt.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Technical Debt - OKRs</title>
        <published>2025-12-01T00:00:00+00:00</published>
        <updated>2025-12-01T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0270-technical-debt-okrs/"/>
        <id>https://daily.himvis.com/0270-technical-debt-okrs/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0270-technical-debt-okrs/">&lt;p&gt;Engineering talks about technical debt all the time, Is your business leadership
aware of it and its gravity?&lt;&#x2F;p&gt;
&lt;p&gt;Frame debt &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Objectives_and_key_results&quot;&gt;OKRs&lt;&#x2F;a&gt; as business outcomes&lt;&#x2F;p&gt;
&lt;p&gt;Instead of &lt;code&gt;Refactor module X&lt;&#x2F;code&gt;, write OKRs like:&lt;&#x2F;p&gt;
&lt;p&gt;&quot;Reduce average lead time for change in service &lt;code&gt;foo&lt;&#x2F;code&gt; from 5 days to 3 days.&quot;&lt;&#x2F;p&gt;
&lt;p&gt;&quot;Cut auth-related incidents from 4&#x2F;month to 1&#x2F;month.&quot;&lt;&#x2F;p&gt;
&lt;p&gt;Then engineer-level initiatives (refactoring, additional tests, New observability tasks)
are the levers to hit those OKRs.&lt;&#x2F;p&gt;
&lt;p&gt;Technical debt payment is now a means to a quantified business end.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🎭 Productivity Paradox</title>
        <published>2025-11-26T00:00:00+00:00</published>
        <updated>2025-11-26T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0269-productivity-paradox/"/>
        <id>https://daily.himvis.com/0269-productivity-paradox/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0269-productivity-paradox/">&lt;p&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;cs.stanford.edu&#x2F;people&#x2F;eroberts&#x2F;cs201&#x2F;projects&#x2F;productivity-paradox&#x2F;background.html&quot;&gt;The IT Productivity Paradox&lt;&#x2F;a&gt; states&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;As more investment is made in information technology, worker productivity may go down instead of up.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;In current times we should replace &lt;code&gt;information technology&lt;&#x2F;code&gt; with &lt;code&gt;Artificial Intelligence&lt;&#x2F;code&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;Does this paradox still hold?&lt;&#x2F;p&gt;
&lt;p&gt;What do you think?&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>⚠️📦 Feature Debt</title>
        <published>2025-11-25T00:00:00+00:00</published>
        <updated>2025-11-25T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0268-product-feature-debt/"/>
        <id>https://daily.himvis.com/0268-product-feature-debt/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0268-product-feature-debt/">&lt;p&gt;If the product feature are done in a way that prioritizes short term
goals over long term maintainability, I call it &lt;em&gt;&lt;strong&gt;feature debt&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;
since its in user experience layer.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;What does it look like?&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Quick Fixes&#x2F;Workarounds&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; which do not cohere with architecture and
product vision&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Feature creep&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; Continuously adding features without paying attention
to consolidation&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Incomplete Features&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; &lt;code&gt;good enough&lt;&#x2F;code&gt; but lack finesse and polish&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;No Deprecation policy&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; Keeping old features around forever, creating
multiple ways to do same thing.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;How does it manifest?&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;User is confused, learning curve is rising, discovering features is hard
resulting in cognitive overload.&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;Adding features is becoming astronomically expensive&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;Time to market is getting slower and slower.&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;&lt;strong&gt;How to manage it?&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Be intentional when incurring it, and create a plan to address it through
normal feature development process.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>💪 Trainings are worth every pennny</title>
        <published>2025-11-24T00:00:00+00:00</published>
        <updated>2025-11-24T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0267-trainings-are-always-worth-more-than-its-cost/"/>
        <id>https://daily.himvis.com/0267-trainings-are-always-worth-more-than-its-cost/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0267-trainings-are-always-worth-more-than-its-cost/">&lt;p&gt;Andy Grove&#x27;s book &quot;High Output Management&quot; has a chapter on training, that changed
my perspective.&lt;&#x2F;p&gt;
&lt;p&gt;You might wonder why professional training costs thousands of dollars per seat.
It is highly leveraged activity for leaders. Yes, imparting training is a hard job. Yes, it takes a lot of hours to prepare material for
the class and deliver the training.&lt;&#x2F;p&gt;
&lt;p&gt;If you put 10 hours into a training course for a group of 10 trainees resulting
in 1% improvement in performance of every trainee. They will work approx 2000 hours
each in one year totaling 20,000 hours for organization. 1% means 200 hours gain&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🌐 Time zones &amp; async participation</title>
        <published>2025-11-21T00:00:00+00:00</published>
        <updated>2025-11-21T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0266-time-zones-async-participation/"/>
        <id>https://daily.himvis.com/0266-time-zones-async-participation/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0266-time-zones-async-participation/">&lt;p&gt;Do you have weekly open calls covering engineering sync, triage, patch reviews, advocacy meeting?&lt;&#x2F;p&gt;
&lt;p&gt;If yes. Good. Keep at it.&lt;&#x2F;p&gt;
&lt;p&gt;Challenge however is timezones, one timezone does not fit all.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Improvement&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Rotate at least one recurring meeting to be Asia-friendly
or run a monthly call at a different time and explicitly
frame it as &quot;APAC Friendly community call&quot;&lt;&#x2F;p&gt;
&lt;p&gt;Meeting notes go to easily discovered places like &quot;Getting Involved&quot; page. It
will provide an opportunity to people in other timezones to chime in asynchronously
via mailing lists or other interaction platforms the project might have.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🔠 Conceptual complexity &amp; naming confusion</title>
        <published>2025-11-20T00:00:00+00:00</published>
        <updated>2025-11-20T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0265-conceptual-complexity-naming-confusion/"/>
        <id>https://daily.himvis.com/0265-conceptual-complexity-naming-confusion/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0265-conceptual-complexity-naming-confusion/">&lt;p&gt;Watch out for what users are confused about the project and community.&lt;&#x2F;p&gt;
&lt;p&gt;Is there a clear definition of the project? Are there questions around that being asked?&lt;&#x2F;p&gt;
&lt;p&gt;What’s the difference between &lt;code&gt;A&lt;&#x2F;code&gt; and &lt;code&gt;B&lt;&#x2F;code&gt;?&lt;&#x2F;p&gt;
&lt;p&gt;And are there multiple answers? If so, there is a problem with messaging. Fix it before
users start leaving the community.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Improvements&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;On the main docs and “Technical Overview” page, add a single, simple mental model&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;&quot;If you are coming from project &lt;code&gt;X&lt;&#x2F;code&gt;...&quot; guide explaining how this project
maps to what they already know.&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🖧 Infrastructure reliability &amp; communication when things break</title>
        <published>2025-11-19T00:00:00+00:00</published>
        <updated>2025-11-19T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0264-infrastructure-reliability-communication-when-things-break/"/>
        <id>https://daily.himvis.com/0264-infrastructure-reliability-communication-when-things-break/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0264-infrastructure-reliability-communication-when-things-break/">&lt;p&gt;A project will certainly face infrastructure related issues like &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;community.tmpdir.org&#x2F;t&#x2F;cloudflare-outage-on-november-18-2025&#x2F;1626&quot;&gt;cloudflare outage this week&lt;&#x2F;a&gt;, everyone knows, but
if expectations are not managed properly, this leaves user community with bad taste.&lt;&#x2F;p&gt;
&lt;p&gt;Being transparent about downtime and providing timely updates when things are down
goes long way in managing expectations.&lt;&#x2F;p&gt;
&lt;p&gt;Have a status page, a prominent one, that has link for git, downloads,
autobuilder, etc.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Why this matters for growth&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;For many users, project could be critical infra. If they perceive infra as fragile or opaquely managed, they will:&lt;&#x2F;p&gt;
&lt;p&gt;Build their own forks and mirrors,&lt;&#x2F;p&gt;
&lt;p&gt;or avoid contributing back because they feel the upstream is brittle.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Improvements&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Whenever there’s a major outage, show a banner on:&lt;&#x2F;p&gt;
&lt;p&gt;the main site,&lt;&#x2F;p&gt;
&lt;p&gt;docs site,&lt;&#x2F;p&gt;
&lt;p&gt;and maybe the GitHub mirror README.&lt;&#x2F;p&gt;
&lt;p&gt;Promote official instructions for setting up local mirrors&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🗑️ Documentation Staleness and content sprawl</title>
        <published>2025-11-18T00:00:00+00:00</published>
        <updated>2025-11-18T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0263-staleness-of-documentation-content-and-sprawl/"/>
        <id>https://daily.himvis.com/0263-staleness-of-documentation-content-and-sprawl/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0263-staleness-of-documentation-content-and-sprawl/">&lt;p&gt;You encounter messages e.g.&lt;&#x2F;p&gt;
&lt;p&gt;&quot;Outdated project planning pages&quot;&lt;&#x2F;p&gt;
&lt;p&gt;&quot;that FAQ + Technical FAQ need to be unified&quot;&lt;&#x2F;p&gt;
&lt;p&gt;References e.g. Cookbook... Tips and Tricks ...&lt;&#x2F;p&gt;
&lt;p&gt;What is the difference?&lt;&#x2F;p&gt;
&lt;p&gt;Search engine ranking documents related to old ( Even EOL )
releases higher and making them easily discoverable, leads new
users to mix of obsolete and valid documents&lt;&#x2F;p&gt;
&lt;p&gt;Should we wonder why things don&#x27;t work?&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🛫Onboarding: lots of doors, no obvious &#x27;front door&#x27;</title>
        <published>2025-11-17T00:00:00+00:00</published>
        <updated>2025-11-17T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0262-onboarding-lots-of-doors-no-obvious-front-door/"/>
        <id>https://daily.himvis.com/0262-onboarding-lots-of-doors-no-obvious-front-door/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0262-onboarding-lots-of-doors-no-obvious-front-door/">&lt;p&gt;If you are guardian of a project ask yourself&lt;&#x2F;p&gt;
&lt;p&gt;Do you have quick start, quick build document, newcomer checkpoints, vendors specific getting started guides?&lt;&#x2F;p&gt;
&lt;p&gt;Are there &quot;Getting Involved&quot; document, good-first-issues, contribution guide, mailing lists and meetings?&lt;&#x2F;p&gt;
&lt;p&gt;For a new person, that&#x27;s overwhelming, High cognitive load just to figure out what to read.&lt;&#x2F;p&gt;
&lt;p&gt;People bounce before they reach the step of &quot;I successfully built an image&quot; or &quot;I sent my first patch.&quot;&lt;&#x2F;p&gt;
&lt;p&gt;Have &lt;em&gt;&lt;strong&gt;one obvious front door for newcomers.&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🦾 Physical AI</title>
        <published>2025-11-14T00:00:00+00:00</published>
        <updated>2025-11-14T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0261-physical-ai/"/>
        <id>https://daily.himvis.com/0261-physical-ai/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0261-physical-ai/">&lt;p&gt;Physical AI is where autonomous machines become capable of perceiving and sensing physical world around them.
It is going to build &lt;code&gt;Robots-ng&lt;&#x2F;code&gt; (next-generation) with full autonomy. Autonomous Vehicles will be able to
process surrounding world in real time, improving their sensing accuracy. Factory floors can use it for
ensuring machines&#x2F;robots and humans can safely occupy the space and anomalies in automation are caught in
real time.&lt;&#x2F;p&gt;
&lt;p&gt;If this catches the steam it will be the most transformational change induced by AI thus far.&lt;&#x2F;p&gt;
&lt;p&gt;This is new Embedded World.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🤖 AI assisted emails</title>
        <published>2025-11-13T00:00:00+00:00</published>
        <updated>2025-11-13T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0260-ai-assisted-emails/"/>
        <id>https://daily.himvis.com/0260-ai-assisted-emails/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0260-ai-assisted-emails/">&lt;p&gt;Generative AI chatbots like ChatGPT, Claude.ai, Gemini are available like Google Search.
It is easy to use them and they can generate good responses, however, I am seeing that
sometimes information is wrong but written confidently, indicates its generated response
which has not been reviewed before sharing.&lt;&#x2F;p&gt;
&lt;p&gt;Using AI tools to enhance response is fine, giving the agency to answer on your behalf is
a bigger deal. I would suggest to use it to hone what you want to say and carefully review
the response before sending it.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>ϟ Coninuous Experimentation</title>
        <published>2025-11-12T00:00:00+00:00</published>
        <updated>2025-11-12T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0259-experimentation-is-lifeblood/"/>
        <id>https://daily.himvis.com/0259-experimentation-is-lifeblood/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0259-experimentation-is-lifeblood/">&lt;p&gt;When I was learning to play pool, I would aim to pocket the ball in one shot, while
a fellow play would assess and sometimes move closer to the hole instead. While it
looked dashing when you scored in one shot but if you look at the number of games,
my opponent won more.&lt;&#x2F;p&gt;
&lt;p&gt;In long run it matters to move towards the goal, however slow it maybe. For making
progress in creating new products, new knowledge, experiments are necessary. When we
look back the path will not be a straight line but zigzag but overall direction
will be what matters.&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;Be not afraid of moving slowly. Be afraid of standing still.
– Chinese Proverb&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>📡Communication tools - Noise to Signal</title>
        <published>2025-11-11T00:00:00+00:00</published>
        <updated>2025-11-11T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0258-communication-tools/"/>
        <id>https://daily.himvis.com/0258-communication-tools/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0258-communication-tools/">&lt;p&gt;Communications is key aspect of modern productivity, from mail delivery pigeons
to WhatsApp there has been a stream of new tools all. They have impacted
productivity profoundly. We use emails widely before we started
getting inundated with marketing material, needless forwards, overtime Noise
to signal ratio goes up and we still keep looking for useful information but
they become tool of collaborative time sink.&lt;&#x2F;p&gt;
&lt;p&gt;post-email world moved to messaging tools like slack, matrix, teams etc. however
these tools are not immune to increasing noise to signal ratio.&lt;&#x2F;p&gt;
&lt;p&gt;There should be high enough bar to interrupt someone and when it happens it
better be good.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>⛏  Always refining productivity tools</title>
        <published>2025-11-10T00:00:00+00:00</published>
        <updated>2025-11-10T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0257-always-refining-productivity-tools/"/>
        <id>https://daily.himvis.com/0257-always-refining-productivity-tools/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0257-always-refining-productivity-tools/">&lt;p&gt;There are two camps, one hardly change the tools used for achieving productivity. Same terminal, same browser, same desktop layout.
for decades.&lt;&#x2F;p&gt;
&lt;p&gt;Second camp is continuously looking to better the tools kitty with a better tool, change editors often, hopping Linux distributions,
change shells, terminals at a whim.&lt;&#x2F;p&gt;
&lt;p&gt;Both approaches have there strengths and weaknesses. Getting locked with environment provides a known working set of tools and can
build solutions using the reliable tools and knowing nook and corners of using them. On the other hand, changing tools frequently while
is investment of time in learning them, it has a potential of discovering a tool which can give 10x returns, but does that happen in
real life, rarely. One definitive positive is that one is always learning new tools and learning is good.&lt;&#x2F;p&gt;
&lt;p&gt;Which camp do you identify with?&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🤓 Everyone wants piece of AI</title>
        <published>2025-11-07T00:00:00+00:00</published>
        <updated>2025-11-07T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0256-everyone-wants-piece-of-ai/"/>
        <id>https://daily.himvis.com/0256-everyone-wants-piece-of-ai/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0256-everyone-wants-piece-of-ai/">&lt;p&gt;Everyone is announcing their forays with AI, Some talk about
how they are developing it, some about using it, some about building
tools on top of AI infrastructure and on and on.&lt;&#x2F;p&gt;
&lt;p&gt;Is AI helpful or not? Well it depends. It has helped me doing things I
am bad at, e.g. drawing, creating tables, building websites, writing correct grammar etc.
so where its important but not main critical task at hand, it has helped
to focus on the critical task.&lt;&#x2F;p&gt;
&lt;p&gt;It&#x27;s good that I am now &quot;mediocre&quot; at skills I was bad at before.
However, it does not make be equally better at things I am good at.
Perhaps it does not have the context that I have ( well maybe not yet )&lt;&#x2F;p&gt;
&lt;p&gt;So in its current state, I use AI tools to assist me in surrounding activities
to main tasks I am good at.&lt;&#x2F;p&gt;
&lt;p&gt;Maybe one day they will understand accountability, short-term&#x2F;long-term impacts
of decisions like humans do.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🏅 Perseverance</title>
        <published>2025-11-06T00:00:00+00:00</published>
        <updated>2025-11-06T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0255-perseverance/"/>
        <id>https://daily.himvis.com/0255-perseverance/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0255-perseverance/">&lt;p&gt;Something to note about the 2025 Nobel prize winners&lt;&#x2F;p&gt;
&lt;p&gt;Peace&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;María Corina Machado, the Venezuelan opposition leader, was awarded the prize for fighting dictatorship and promoting democracy in her country for nearly 25 years.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;Physics&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;The committee cited a series of experiments the physicists conducted in 1984 and 1985 that proved two principles of quantum mechanics on a scale visible to the human eye: “quantum mechanical tunnelling” and “energy quantisation in an electric circuit.”&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;Chemistry&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;Experiments that began in the 1980s and developed over the ensuing 15 years, the scientists developed frameworks using metals and organic molecules that contained cavities large enough for gases and other materials to flow through.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;Medicine&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;The researchers&#x27; work that won the Nobel Prize in Medicine started in 1995 with Shimon Sakaguchi&#x27;s initial discovery of regulatory T cells. This was followed by a key breakthrough in 2001 by Mary Brunkow and Fred Ramsdell who identified a related gene mutation, before Sakaguchi linked all the work together in 2003.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;Literature&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;Krasznahorkai’s first novel Sátántangó, published in 1985 (Satantango, 2012), which was a literary sensation in Hungary and the author’s breakthrough work&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;Economics&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;The 2025 Nobel laureates in economics began working on their award-winning research decades ago, with Joel Mokyr starting his economic history studies in the early 1970s and Philippe Aghion and Peter Howitt publishing their landmark &quot;creative destruction&quot; model in a 1992 paper&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;One common thread runs underneath all these great works - &lt;em&gt;&lt;strong&gt;Perseverance&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🐜 Lessons from anatomy of anthill</title>
        <published>2025-11-05T00:00:00+00:00</published>
        <updated>2025-11-05T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0254-lessons-from-anatomy-of-anthill/"/>
        <id>https://daily.himvis.com/0254-lessons-from-anatomy-of-anthill/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0254-lessons-from-anatomy-of-anthill/">&lt;p&gt;Anthills are a network of tunnels and mounds that provides shelter to an ant colony. There are several lessons we can learn&lt;&#x2F;p&gt;
&lt;p&gt;The build process of an anthill is fascinating, It is a &lt;em&gt;&lt;strong&gt;collaborative engineering&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; between different ants specializing in
different skills, some dig the soil, some transport the material out of the anthill, some are experts in building
mound structures&lt;&#x2F;p&gt;
&lt;p&gt;Strategic ventilation is used to maintain the temperature, warmer is winter and cooler in summer. This is done by
building multiple entry and exit points and chimneys for convection - A natural HVAC system - &lt;em&gt;&lt;strong&gt;structural design&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;No single ant designs the anthill. The structure emerges from simple rules followed by individual ants responding to
local conditions. Like a model for swarm intelligence or distributed systems in robotics and computer networks. - &lt;em&gt;&lt;strong&gt;decentralized decision-making&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Anthills can accommodate hundreds to millions of ants. The modular tunnel system expands as needed,
demonstrating organic growth patterns that adapt to population changes - &lt;em&gt;&lt;strong&gt;Scalable system Design&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🤫⃤  This can never happen..</title>
        <published>2025-11-04T00:00:00+00:00</published>
        <updated>2025-11-04T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0253-this-can-never-happen/"/>
        <id>https://daily.himvis.com/0253-this-can-never-happen/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0253-this-can-never-happen/">&lt;blockquote&gt;
&lt;p&gt;The devices are to be sold in US so why bother adding i18n support. A few months
later, the device is part of syndication program, it will be deployed in Italy&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;Code will never hit this condition and a crash report points to very location&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;We might have witnessed numerous such cases through out our career.&lt;&#x2F;p&gt;
&lt;p&gt;If we think this situation is impossible to happen, add an assertion to
prevent the impossible&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>𖦹 How curl used AI</title>
        <published>2025-11-03T00:00:00+00:00</published>
        <updated>2025-11-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0252-how-curl-used-ai/"/>
        <id>https://daily.himvis.com/0252-how-curl-used-ai/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0252-how-curl-used-ai/">&lt;p&gt;Curl maintainer &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;mastodon.social&#x2F;@bagder&#x2F;115241241075258997&quot;&gt;posted&lt;&#x2F;a&gt; about list of issues reported by community
found using AI-assisted tools. More than 100 fixes have landed in
curl as a result. The &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;joshua.hu&#x2F;llm-engineer-review-sast-security-ai-tools-pentesters&quot;&gt;tool-set&lt;&#x2F;a&gt; is deploying LLMs with security focus&lt;&#x2F;p&gt;
&lt;p&gt;I think, organizations should take a note of this and think about using LLMs
to help there engineering teams by building such custom tools to enhance productivity,
&lt;code&gt;vibe coding&lt;&#x2F;code&gt; will collect technical-debt at an alarming pace. Consider the cost to maintain that
code will be exponential with time.&lt;&#x2F;p&gt;
&lt;p&gt;Not a happy place to be in.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🚉 Open-source strategies - products and OSS</title>
        <published>2025-10-31T00:00:00+00:00</published>
        <updated>2025-10-31T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0251-opensource-strategies-products-and-oss/"/>
        <id>https://daily.himvis.com/0251-opensource-strategies-products-and-oss/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0251-opensource-strategies-products-and-oss/">&lt;p&gt;Open-source software is mostly developed by volunteers and they do their
best to meet the needs of contributors, and in some cases if code is so good.
Its makes the project a high quality software. A question about usability still
remains, it might not address a large user base because it made by power developers
for power users. Usability is another beast, there are many configuration knobs
which is way more than a general user might need.&lt;&#x2F;p&gt;
&lt;p&gt;If you are building a product, remember a keypoint, Open-source software will
be a platform providing a wide set of capabilities. You are building a product
which will solve a narrow set of user requirements and solve them well. This
will make an OSS platform strategy fuel products like no other, if the difference
is not understood, you might end up muddling product and platform, resulting in
neither.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🏭opensource strategies - enterprise user</title>
        <published>2025-10-30T00:00:00+00:00</published>
        <updated>2025-10-30T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0250-opensource-strategies-enterprise-user/"/>
        <id>https://daily.himvis.com/0250-opensource-strategies-enterprise-user/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0250-opensource-strategies-enterprise-user/">&lt;p&gt;Enterprises tend to be quite conservative and risk averse. There are also more process in place e.g. vulnerability
scans, code scans, security audits etc. Often requirements may vary from project to project due to sheer scale of
projects it might make sense to consider each project individually. They may also want to have flexibility of running
it on-premises, private, or public cloud.&lt;&#x2F;p&gt;
&lt;p&gt;Given this, having source-code in open-source is generally preferred as they can fix the problems themselves or
warm up the community in case you cease to exist. Secondly, given the stringent requirements they are in need of
fitting the architecture with right amount of customizations for which open-source might be best method in their mind.&lt;&#x2F;p&gt;
&lt;p&gt;A successful strategy here could be an open-core model. Where core of the project is available in public, serving
as enabler and add-on pieces are value add.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🧑‍🏫Open-Source strategies - Users</title>
        <published>2025-10-29T00:00:00+00:00</published>
        <updated>2025-10-29T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0249-opensource-strategies-users/"/>
        <id>https://daily.himvis.com/0249-opensource-strategies-users/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0249-opensource-strategies-users/">&lt;p&gt;An open-source strategy that is based on project&#x27;s &lt;em&gt;&lt;strong&gt;target audience&#x27;s priorities&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; is important.
A community of users might be interested in using a particular software but not interested in
getting it in source and building it themselves and deploying it for use. In such cases if
the strategy mandates creating source-code repositories on GitHub and letting the
user-base know about the release tags and expecting them to build and run, is bound to fail.&lt;&#x2F;p&gt;
&lt;p&gt;Even though the source is out there, if community is not consuming it in form it is published
the strategy did not work.&lt;&#x2F;p&gt;
&lt;p&gt;A simple tweak is to add a step to release process where the software is built and tested
upon release and resulting artifacts targeting various platforms are published as well.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>💠opensource strategies - Its anything but black and white</title>
        <published>2025-10-28T00:00:00+00:00</published>
        <updated>2025-10-28T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0248-opensource-strategies-its-anything-but-black-and-white/"/>
        <id>https://daily.himvis.com/0248-opensource-strategies-its-anything-but-black-and-white/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0248-opensource-strategies-its-anything-but-black-and-white/">&lt;p&gt;Open-source is interesting from product and business strategy point of view. People always ask
for a &lt;code&gt;cookie-cutter&lt;&#x2F;code&gt; approach to open-source, this approach is less than optimal. Open-source
strategy is highly subjective to business and goals it is trying to achieve. Identifying the
parameters is a key starting point. We will discuss more on parameters and key insights it
gives and modulates the Open-source policy.&lt;&#x2F;p&gt;
&lt;p&gt;How &lt;code&gt;tech-savvy&lt;&#x2F;code&gt; is the target end-user?&lt;&#x2F;p&gt;
&lt;p&gt;If developers are the audience, they might be more effective in consuming your products offering
where they understand the source-code and identify succinct integration points, some of them
might even want to modify your offering to fit their needs. Source-level engagement is the way
to go in such scenarios. Open-source processes have proven to be best in town for source based
collaboration. Don&#x27;t get me wrong, I did not say &lt;em&gt;&lt;strong&gt;put it out in public&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;, well not yet.
It can be using open-source collaboration tools, SaaS products for infrastructure to enable
the end users.&lt;&#x2F;p&gt;
&lt;p&gt;Should you opt to use public open source methods to host source-code?&lt;&#x2F;p&gt;
&lt;p&gt;Lets talk about it in next post!&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🧏Consider adding WHY.md</title>
        <published>2025-10-27T00:00:00+00:00</published>
        <updated>2025-10-27T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0247-consider-adding-why-md/"/>
        <id>https://daily.himvis.com/0247-consider-adding-why-md/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0247-consider-adding-why-md/">&lt;p&gt;A lot of open-source projects on GitHub and other hosting places have project documentation as part of
project. More now than before as Markdown format has enabled all of us to write clean documents.&lt;&#x2F;p&gt;
&lt;p&gt;Along with design documents and user manuals. There are commonly found documents e.g. README.md,
CONTRIBUTING.md, INSTALL.md, AUTHORS.md etc. these are very helpful
document for someone who is new to project and is onboarding to community.&lt;&#x2F;p&gt;
&lt;p&gt;Some projects do have additional documents touching on rationale and history of the project but its not
as common.&lt;&#x2F;p&gt;
&lt;p&gt;Consider adding a &lt;code&gt;WHY.md&lt;&#x2F;code&gt; for the project, this document describes reasons for the project to start and exist
today, why certain important decisions were made along the way ( e.g. choice of programming language ). An intrinsic
reason, the philosophy behind the project written by authors for starting the project.&lt;&#x2F;p&gt;
&lt;p&gt;Developers are not only looking for learning new things but also for reason and purpose. A well written
&#x27;WHY&#x27; appeals to the core of the human system. A well written &quot;WHY.md&quot; will take the project further than it would
be without it.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>⌨  Important aspects of software code</title>
        <published>2025-10-24T00:00:00+00:00</published>
        <updated>2025-10-24T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0246-important-aspects-of-software-code/"/>
        <id>https://daily.himvis.com/0246-important-aspects-of-software-code/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0246-important-aspects-of-software-code/">&lt;p&gt;When it comes to computer coding, algorithmic magic is important but
managing the complexity is more consequential for a a software project.
It is a huge deal for containing the cost of maitaining software.&lt;&#x2F;p&gt;
&lt;p&gt;I have seen programming &quot;gurus&quot; write super performant code that is hard
to understand for mere mortals. I have also seen obscure naming conventions,
almost no documentation or tests even. No matter, if this code was written
by an angel programmer, it will get stale over time and will need to be
maintained, most probably by someone other than who wrote it.&lt;&#x2F;p&gt;
&lt;p&gt;Lot of times programmers are interviewed using these hard puzzles and
one super efficient pattern or some other programming gem. Its not worth
it. Assessing the organizational skills might get a very productive engineer&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🥴 Scratch your own itch</title>
        <published>2025-10-23T00:00:00+00:00</published>
        <updated>2025-10-23T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0245-scratch-your-own-itch/"/>
        <id>https://daily.himvis.com/0245-scratch-your-own-itch/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0245-scratch-your-own-itch/">&lt;p&gt;A lot of times I get asked&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;I want to become open source programmer&#x2F;Embedded Linux programmer
Can you help me identify problems I should work on ?&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;I would tell them, to think about something that bothers them
in these areas. Then identify a problem statement and start working
on it. Most of OpenSource projects small of big were started this way.
They even are developed in this way.&lt;&#x2F;p&gt;
&lt;p&gt;You want to become a kernel programmer ?&lt;&#x2F;p&gt;
&lt;p&gt;A driver for my wierd USB stick does not perform well or has crashes.&lt;&#x2F;p&gt;
&lt;p&gt;OK now you have an itch to scratch.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>⚖️ Goal alignment</title>
        <published>2025-10-22T00:00:00+00:00</published>
        <updated>2025-10-22T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0244-goal-alignment/"/>
        <id>https://daily.himvis.com/0244-goal-alignment/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0244-goal-alignment/">&lt;p&gt;A swahili proverb says&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;A boat doesn&#x27;t go forward if each one is rowing their own way&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;Aligning the goals, coding standards, processes, and architecture direction
is essential for a project to move smoothly.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🗂️ Documentation as code</title>
        <published>2025-10-21T00:00:00+00:00</published>
        <updated>2025-10-21T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0243-documentation-as-code/"/>
        <id>https://daily.himvis.com/0243-documentation-as-code/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0243-documentation-as-code/">&lt;p&gt;Treats the documents like code, it elevates them closer to source of truth
make them easier to manage with the help of version source control system.
Same CI&#x2F;CD and tools and processess as code can be leveraged for docs too.&lt;&#x2F;p&gt;
&lt;p&gt;We get a documentation that is never out of sync, easy to review via pull
request mechanism like source code.&lt;&#x2F;p&gt;
&lt;p&gt;We get living documents which evolve along with code, not after it.&lt;&#x2F;p&gt;
&lt;p&gt;Spec driven development, will bring more focus towards docs as code too.
In future source code will be intermediate output not the source of truth.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🔡 Are you a generalist ?</title>
        <published>2025-10-20T00:00:00+00:00</published>
        <updated>2025-10-20T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0242-are-you-a-generalist/"/>
        <id>https://daily.himvis.com/0242-are-you-a-generalist/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0242-are-you-a-generalist/">&lt;p&gt;In tech industry a &lt;em&gt;&lt;strong&gt;generalist&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; is a person who gets experience in broad domain range
and knows a little-to-a-lot about many aspects e.g. products, infrastructure, UI&#x2F;UX
their breadth spans by &quot;what&quot; problems they handle.&lt;&#x2F;p&gt;
&lt;p&gt;In today&#x27;s tech world, someone who dives deep into a specialized domain but is
comfortable in many frameworks, languages and tools and can pick the right one for right job.
Their breadth spans &quot;How&quot; they solve the problem. They are deep specialists, you can loosely
call them &lt;em&gt;&lt;strong&gt;polyglots&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;A polyglot is more valuable than a generalist in todays world which operates
on deep tech stacks.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🫣 Hidden Complexity</title>
        <published>2025-10-17T00:00:00+00:00</published>
        <updated>2025-10-17T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0241-hidden-complexity/"/>
        <id>https://daily.himvis.com/0241-hidden-complexity/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0241-hidden-complexity/">&lt;p&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;qz.com&#x2F;sydney-opera-house-50th-anniversary-over-budget-1850944285&quot;&gt;&lt;em&gt;&lt;strong&gt;Sydney Opera House:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;a&gt; Planned projection was to take four years and cost $7 million AUD,
it required 14 years and over $100 million AUD. Architectural innovation outpaced
existing engineering know-how, and project managers &lt;em&gt;&lt;strong&gt;underestimated&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; the geometric
and structural complexity of the roof design.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.gihub.org&#x2F;connectivity-across-borders&#x2F;case-studies&#x2F;the-channel-tunnel&#x2F;&quot;&gt;&lt;em&gt;&lt;strong&gt;Eurotunnel:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;a&gt; This ambitious England–France project encountered massive cost overruns
and delays due to cross-border coordination difficulties, safety standards, and unforeseen
geological complications. Complexity emerged from &lt;em&gt;&lt;strong&gt;misaligned stakeholder incentives&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;
and the &lt;em&gt;&lt;strong&gt;difficulty of harmonizing multiple technical systems&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;These failures share a common thread: &lt;em&gt;&lt;strong&gt;leaders perceived challenges as linear and
controllable when, in reality, systems were nonlinear, interdependent, and dynamic.&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;
Hidden complexity not only derails projects but exposes the limits of human foresight
in managing modern systems.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🧶 Why we underestimate complexity ?</title>
        <published>2025-10-16T00:00:00+00:00</published>
        <updated>2025-10-16T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0240-why-we-underestimate-complexity/"/>
        <id>https://daily.himvis.com/0240-why-we-underestimate-complexity/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0240-why-we-underestimate-complexity/">&lt;p&gt;People consistently underestimate complexity because of a
combination of cognitive biases, mental shortcuts, and social
dynamics that favor simplicity and optimism. This tendency is
deeply rooted in how the human brain processes uncertainty, risk,
and information.&lt;&#x2F;p&gt;
&lt;p&gt;In fields like software development, policymaking, or business
strategy&lt;&#x2F;p&gt;
&lt;p&gt;Complexity grows exponentially with scale.&lt;&#x2F;p&gt;
&lt;p&gt;Yet people intuitively assume linear relationships: twice the
variables mean twice the work, not ten times more. This linear
thinking fails in nonlinear, interdependent systems, where small
changes multiply unpredictably.&lt;&#x2F;p&gt;
&lt;p&gt;Ultimately, we underestimate complexity because our minds are
wired for &lt;em&gt;efficiency, not accuracy&lt;&#x2F;em&gt;. Simplification, optimism, and
social conformity make life manageable — but in complex systems,
they also make surprisess inevitable.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🌐Information is not everything</title>
        <published>2025-10-15T00:00:00+00:00</published>
        <updated>2025-10-15T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0239-information-is-not-everything/"/>
        <id>https://daily.himvis.com/0239-information-is-not-everything/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0239-information-is-not-everything/">&lt;p&gt;We come across this term, &lt;code&gt;information revolution&lt;&#x2F;code&gt; or &lt;code&gt;information age&lt;&#x2F;code&gt; quite frequently
if information is gold and many have it. A few those who turn information into knowledge
make it platinum, and fewer make it priceless diamond when the knowledge is distilled
into wisdom.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🌀 Time for rolling releases has come</title>
        <published>2025-10-14T00:00:00+00:00</published>
        <updated>2025-10-14T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0238-time-for-rolling-releases-have-come/"/>
        <id>https://daily.himvis.com/0238-time-for-rolling-releases-have-come/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0238-time-for-rolling-releases-have-come/">&lt;p&gt;When it comes to software system distribution, there are primarily two mechanisms&lt;&#x2F;p&gt;
&lt;p&gt;Rolling Releases - System components are updated incrementally, install once, update forever&lt;&#x2F;p&gt;
&lt;p&gt;Time based Releases - Releases stay at locked versions for a given cadence, 3 months, 6-months, 4-years&lt;&#x2F;p&gt;
&lt;p&gt;Most of systems are exposed to internet these days and require to be plugged for known security issues
time based releases do provide hot-fixes to mitigate this.&lt;&#x2F;p&gt;
&lt;p&gt;Rolling releases are considered to be for &quot;adventurous kinds&quot;, since a common notion is that
they are unstable. But are they ?&lt;&#x2F;p&gt;
&lt;p&gt;With time there are systems like github, gitlab providing not only git SCMs but also CI systems, any
github project can easily add CI, the amount of testing happening at component level has gone up.
Distribution platforms also provide spins which test latest releases of components.&lt;&#x2F;p&gt;
&lt;p&gt;Rolling releases are more stable than yesterday and they are just getting better.&lt;&#x2F;p&gt;
&lt;p&gt;We should start seeing more and more products with rolling release distributions as their building blocks
to deliver product feature at a pace that users expect, rolling releases provide a rock-solid baseline&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🚮 80% container spend is wasted</title>
        <published>2025-10-13T00:00:00+00:00</published>
        <updated>2025-10-13T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0237-80-container-spend-is-wasted/"/>
        <id>https://daily.himvis.com/0237-80-container-spend-is-wasted/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0237-80-container-spend-is-wasted/">&lt;p&gt;Datadog publishes interesting document called &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.datadoghq.com&#x2F;state-of-cloud-costs&#x2F;&quot;&gt;state of cloud costs&lt;&#x2F;a&gt;
It shows various statistics about cloud operations. Interestingly
Something caught my attention, &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.datadoghq.com&#x2F;state-of-cloud-costs&#x2F;#4&quot;&gt;83% of container cost is wasted&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;
&lt;p&gt;It is a complex problem. It is hard to estimate resource requirements and some sort of autoscaling could help but
can get complicated.&lt;&#x2F;p&gt;
&lt;p&gt;I wonder if AI can help with dynamic scaling and improved esitmation accuracy. It will save a lot of money for
organizations.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🪑Empty chair theory</title>
        <published>2025-10-10T00:00:00+00:00</published>
        <updated>2025-10-10T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0236-always-leave-an-empty-chair/"/>
        <id>https://daily.himvis.com/0236-always-leave-an-empty-chair/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0236-always-leave-an-empty-chair/">&lt;p&gt;Empty chair theory was introduced by Jeff Bezos at Amazon, where every meeting
would have at least one empty chair. This chair is reserved for most important
person who is not in the room, when making business decisions.&lt;&#x2F;p&gt;
&lt;p&gt;The Customer&lt;&#x2F;p&gt;
&lt;p&gt;Bezos said:&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;This simple practice, which might seem small, became a key driving force behind Amazon’s growth into a global company. The empty chair was not just a physical object but a strong symbol that the customer must be at the center of every decision-making process.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;It emphasizes customer obsession&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Will this decision help solve the customer problem ?&lt;&#x2F;li&gt;
&lt;li&gt;Were the customer here today, what would be their opinion about the decision ?&lt;&#x2F;li&gt;
&lt;li&gt;Have we covered everything customer would have asked for ?&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;Such visual reinforcement technique can help garner empathy and perspective taking
thereby lower own biases and assumptions.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>📐 Measure or perish</title>
        <published>2025-10-09T00:00:00+00:00</published>
        <updated>2025-10-09T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0235-measure-or-perish/"/>
        <id>https://daily.himvis.com/0235-measure-or-perish/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0235-measure-or-perish/">&lt;p&gt;Without quantifiable metrics, it becomes difficult to prove the effectiveness and value of a process, a product&lt;&#x2F;p&gt;
&lt;p&gt;It calls for accountability, forcing individuals and organizations to take responsibility for their results
and to be transparent about their performance.&lt;&#x2F;p&gt;
&lt;p&gt;For any project or product to continue to exist and thrive in its environment, it must be able to measure its successes
and learn from its failures&lt;&#x2F;p&gt;
&lt;p&gt;Bake these into requirements and project success criteria&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>&lt;&#x2F;&gt; LLMs in Terminal</title>
        <published>2025-10-08T00:00:00+00:00</published>
        <updated>2025-10-08T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0234-llms-in-terminal/"/>
        <id>https://daily.himvis.com/0234-llms-in-terminal/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0234-llms-in-terminal/">&lt;p&gt;I have been using various LLMs e.g. Claude, ChatGPT, Gemini etc. in browser, but lately dived into playing with Claude code.&lt;&#x2F;p&gt;
&lt;p&gt;It was a completely different experience perhaps because I program using Terminal but, I could see it being a lot more useful&lt;&#x2F;p&gt;
&lt;p&gt;I read &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;community.tmpdir.org&#x2F;t&#x2F;claude-claude-code&#x2F;1534&#x2F;25&quot;&gt;Pragmatic Programmer&#x27;s newsletter&lt;&#x2F;a&gt;. It became a bit clear
The file-system access gives a unique advantage to Claude code. ChatGPT and Claude in the browser did not preserve memory between conversations also the context window is very small. With file-system access Claude Code can make notes to self, add up information.
It has both a state and memory. It can think in multiple conversation contexts.&lt;&#x2F;p&gt;
&lt;p&gt;This is going to be the way to develop AI apps.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🔭Vision and Goals</title>
        <published>2025-10-07T00:00:00+00:00</published>
        <updated>2025-10-07T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0233-vision-and-goals/"/>
        <id>https://daily.himvis.com/0233-vision-and-goals/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0233-vision-and-goals/">&lt;p&gt;How Long Do New year Resolutions Last? Well &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.forbes.com&#x2F;health&#x2F;mind&#x2F;new-years-resolutions-statistics&#x2F;&quot;&gt;50% do not last 3 months&lt;&#x2F;a&gt;
and 80% have lost it by 6 months mark.&lt;&#x2F;p&gt;
&lt;p&gt;There could be other reasons too, but understanding definition of goals is
a big reason.&lt;&#x2F;p&gt;
&lt;p&gt;Vision is inspirational, timeless and somewhat idealistic.&lt;&#x2F;p&gt;
&lt;p&gt;A goal is specific, time-bound, and measurable.&lt;&#x2F;p&gt;
&lt;p&gt;Vision answers &lt;code&gt;what&lt;&#x2F;code&gt; you want to achieve and &lt;code&gt;why&lt;&#x2F;code&gt;, and goals are the &lt;code&gt;how&lt;&#x2F;code&gt; you will get there.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>📢 Information Overload</title>
        <published>2025-10-06T00:00:00+00:00</published>
        <updated>2025-10-06T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0232-information-overload/"/>
        <id>https://daily.himvis.com/0232-information-overload/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0232-information-overload/">&lt;p&gt;Information is to brain as food it to body. It must be consumed in moderation. Information is
abundant and a click away, unlike few decades ago where one must get physical material like
books, journals, newspapers etc. which provided a required &lt;code&gt;slowness&lt;&#x2F;code&gt; even if it was unintended.
Like food which takes a long time to digest is considered good in diet. Internet has sorted
all information and made it readily available.&lt;&#x2F;p&gt;
&lt;p&gt;Its important that one measures the information consumed on daily bases. It&#x27;s important to
process this information, unprocessed information in mind is cause of anxiety and stress.&lt;&#x2F;p&gt;
&lt;p&gt;Pay attention to information that is coming indirectly, TV playing in home, even though you
are not watching it, smart speakers playing stuff, Radio in car etc. they all are contributing.&lt;&#x2F;p&gt;
&lt;p&gt;Time has come to treat information consumption akin to food. Take it in moderation, classify
it, if it is not digested in time, it is going to cause mental agony.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>⚡Effect of slow compiler on productivity</title>
        <published>2025-10-03T00:00:00+00:00</published>
        <updated>2025-10-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0231-effect-of-slow-compiler-on-productivity/"/>
        <id>https://daily.himvis.com/0231-effect-of-slow-compiler-on-productivity/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0231-effect-of-slow-compiler-on-productivity/">&lt;p&gt;Zig has started to use its own backend replacing LLVM and &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;mitchellh.com&#x2F;writing&#x2F;zig-builds-getting-faster&quot;&gt;ghostty is now compiling faster&lt;&#x2F;a&gt;
One can say what difference does it make if it takes 38s instead of 41s to compile
A slow compiler can significantly impact developer productivity in several ways.&lt;&#x2F;p&gt;
&lt;p&gt;Longer feedback loop e.g. making a change in couple of seconds but having to wait for a minute to compile
can kill momentum and divert focus.&lt;&#x2F;p&gt;
&lt;p&gt;It discourages frequent testing, this can result in bug-creep over time.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;code&gt;Context switch tax&lt;&#x2F;code&gt; increases, since mental focus is decreased and there is bigger chance of diverting attention&lt;&#x2F;p&gt;
&lt;p&gt;Less experimentation, Leads to less optimal code and more technical debt over time.&lt;&#x2F;p&gt;
&lt;p&gt;Cumulative time waste, Minutes lost per build add up across the day and if there are 1000s of developers it adds up fast.&lt;&#x2F;p&gt;
&lt;p&gt;Slow builds clogs CI systems. Blocked workflows result in delayed releases.&lt;&#x2F;p&gt;
&lt;p&gt;In short, it should not be looked in single dimension, the knock-on effect is serious.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🤔 Compiler Errors in the age of AI</title>
        <published>2025-10-02T00:00:00+00:00</published>
        <updated>2025-10-02T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0230-compiler-errors-in-the-age-of-ai/"/>
        <id>https://daily.himvis.com/0230-compiler-errors-in-the-age-of-ai/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0230-compiler-errors-in-the-age-of-ai/">&lt;p&gt;Language compilers have robust diagnostics reporting
mechanism, it tries to be human friendly and tries to
inform in easy to understand ways, well some of them
python backtraces are not the best example and neither
are some of C++ error message coming from compilers&lt;&#x2F;p&gt;
&lt;p&gt;You have to know the language syntax and semantics to
a certain degree and some understanding of compilers
as well. Interpreting compiler diagnostics is not
for everyone therefore.&lt;&#x2F;p&gt;
&lt;p&gt;Coding agents, can be useful, if it can understand the
diagnostics and explain the error with enlarged context
and maybe &lt;code&gt;Agentic mode&lt;&#x2F;code&gt; to autocorrect and apply the change&lt;&#x2F;p&gt;
&lt;p&gt;This would help save a lot of time wasted in stalled
CI pipelines due to mundane compilation errors which
happen due to some unrelated change&lt;&#x2F;p&gt;
&lt;p&gt;Modern compilers do suggest a possible fix in
some cases these days but not always.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🐌Code Agents - Sub-optimal code</title>
        <published>2025-10-01T00:00:00+00:00</published>
        <updated>2025-10-01T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0229-code-agents-sub-optimal-code/"/>
        <id>https://daily.himvis.com/0229-code-agents-sub-optimal-code/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0229-code-agents-sub-optimal-code/">&lt;p&gt;Coding agents are being developed rapidly. IDE&#x27;s like
VSCode provide robust integration for deploying them to
development environments. Someone showed me agent generated
code and pointed few inefficiencies.&lt;&#x2F;p&gt;
&lt;p&gt;It reminded me of early stage high-level language compilers
generating assembly code and how inefficient it looked
compared to handwritten assembly. A few decades later
we hardly look at what compilers generate.&lt;&#x2F;p&gt;
&lt;p&gt;It won&#x27;t take that long for coding agents to become experts.
After that we will never look at the generated code.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;github.blog&#x2F;ai-and-ml&#x2F;generative-ai&#x2F;spec-driven-development-using-markdown-as-a-programming-language-when-building-with-ai&#x2F;&quot;&gt;&lt;code&gt;Spec-as-code&lt;&#x2F;code&gt;&lt;&#x2F;a&gt; is the near future, long term future is
real time Natural language processing&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>👾Coding Agents and human overlap</title>
        <published>2025-09-30T00:00:00+00:00</published>
        <updated>2025-09-30T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0228-coding-agents-and-human-overlap/"/>
        <id>https://daily.himvis.com/0228-coding-agents-and-human-overlap/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0228-coding-agents-and-human-overlap/">&lt;p&gt;If you work on Open-Source, a lot of time is spent on reading code not written by you.
You might read the code for a day and then make one line change to fix a problem. The
time to learn and understand these codebases is significant.&lt;&#x2F;p&gt;
&lt;p&gt;With coding-agents being used to write code, the velocity of written line of code is
going to grow and maybe at a speed beyond human comprehension in given time. This gap
is ever-increasing and accelerating.&lt;&#x2F;p&gt;
&lt;p&gt;Until coding part is fully offloaded to AI agents, these kinds of problems at human
machine interaction point will be quite prominent and create &quot;debt&quot;&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🦾Plastic case instead of ceramic</title>
        <published>2025-09-29T00:00:00+00:00</published>
        <updated>2025-09-29T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0227-plastic-case-instead-of-ceramic/"/>
        <id>https://daily.himvis.com/0227-plastic-case-instead-of-ceramic/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0227-plastic-case-instead-of-ceramic/">&lt;p&gt;We know how power efficient ARM chips are. In fact, it has been a USP
for ARM based CPU designs.&lt;&#x2F;p&gt;
&lt;p&gt;The ARM chip was also designed to run at very low power.
Wilson explained that this was entirely a cost-saving measure
the team wanted to use a plastic case for the chip instead of
a ceramic one, so they set a &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=1jOJl8gRPyQ&amp;amp;t=508s&quot;&gt;maximum target of 1 watt&lt;&#x2F;a&gt; of power usage.&lt;&#x2F;p&gt;
&lt;p&gt;Tools for power estimation were primitive, designers knew it, so
not to overshoot power budget, they were conservative will every
design detail. Simplicity of design and low clock rate results in
actual power draw of 0.1 watts.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🕶️ Agentic AI - Intelligence and context</title>
        <published>2025-09-26T00:00:00+00:00</published>
        <updated>2025-09-26T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0226-agentic-ai/"/>
        <id>https://daily.himvis.com/0226-agentic-ai/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0226-agentic-ai/">&lt;p&gt;Coding Agents have improved vastly in the intelligence, recently
&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.techrepublic.com&#x2F;article&#x2F;openai-deepmind-icpc-2025-results&#x2F;&quot;&gt;OpenAI ChatGPT-5 got perfect scores on ICPC 2025&lt;&#x2F;a&gt;
This means agents are pretty good with horsepower, so what is missing
for autonomous programming agents ?&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Context&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt; (information about the problem at hand) is the second key
component for agents to be effective. Programming competitions are
mainly about horsepower, real world problems are more about context&lt;&#x2F;p&gt;
&lt;p&gt;A human programmer has different sources of context&lt;&#x2F;p&gt;
&lt;p&gt;Access to code, related documentation and instructions to build and run
is basic, but they also have understanding of architecture, code
organization, conventions, patterns, tribal knowledge floating around
in IRC, slack, E-mail, or other IMs, cafeteria (this one could be hard for
Agentic AI, but they can be made to listen and learn)&lt;&#x2F;p&gt;
&lt;p&gt;There is a lot to be done to build the context as it is a subjective issue
which makes it a bit harder.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🔳Two paths to 64-bit CPU</title>
        <published>2025-09-25T00:00:00+00:00</published>
        <updated>2025-09-25T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0225-two-paths-to-64-bit-cpu/"/>
        <id>https://daily.himvis.com/0225-two-paths-to-64-bit-cpu/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0225-two-paths-to-64-bit-cpu/">&lt;p&gt;Intel had put a lot of effort in a pure 64-bit architecture called &lt;code&gt;Itanium&lt;&#x2F;code&gt;
released first in 2001.
x86 was 32-bit architecture which was extended from 16-bit architecture which
was extended from 8-bit architecture. There was a lot of backward compatibility
and legacy to carry-on, Intel wanted to shed that weight off and if the new
architecture catches on no one would come close for many years to come.&lt;&#x2F;p&gt;
&lt;p&gt;AMD on the other hand came up with &lt;code&gt;Athlon-64&lt;&#x2F;code&gt; in 2003, which was extended from 32b-bit
x86, this meant that it would be backward compatible. 32bit apps would run
without needing to be recompiled and when OS (e.g. Windows) becomes 64bit native
32-bit apps will still keep running.&lt;&#x2F;p&gt;
&lt;p&gt;Intel has grossly misjudged the power of software, 64-bit native apps porting
would take 8 to 10 years, the &lt;code&gt;Itaniums&lt;&#x2F;code&gt; were power hungry, datacenters would not like
that.&lt;&#x2F;p&gt;
&lt;p&gt;In 2004 Intel pivoted and came out with EM64T, which was similar to Athlon-64 and
began the era of datacenter on x86_64 processors.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🤝 SLAs</title>
        <published>2025-09-24T00:00:00+00:00</published>
        <updated>2025-09-24T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0224-slas/"/>
        <id>https://daily.himvis.com/0224-slas/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0224-slas/">&lt;p&gt;SLAs ( Service Level Agreement ) are more important than we might think.&lt;&#x2F;p&gt;
&lt;p&gt;It helps estimation and predicting work.&lt;&#x2F;p&gt;
&lt;p&gt;Creates expectation framework and clear set of timelines&lt;&#x2F;p&gt;
&lt;p&gt;Helps processes and collaboration&lt;&#x2F;p&gt;
&lt;p&gt;No SLA is also an SLA, it&#x27;s just set by the customer in their own mind, and
you can never meet it.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🔂 Future Compilers</title>
        <published>2025-09-23T00:00:00+00:00</published>
        <updated>2025-09-23T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0223-future-compilers/"/>
        <id>https://daily.himvis.com/0223-future-compilers/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0223-future-compilers/">&lt;p&gt;Spec-driven development means the source of truth for software developement
not the source code itself written in some programming language. Source code
is an output artifact of specs. Here I think is a rough flow of a future code
compiler.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;future-compilers-using-specs-as-code-with-c-intermediate-code&quot;&gt;Future compilers using &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=8rABwKRsec4&quot;&gt;Specs as code&lt;&#x2F;a&gt; with C intermediate code&lt;&#x2F;h3&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #E1E4E8; background-color: #24292E;&quot;&gt;&lt;code data-lang=&quot;plain&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;LLM Code Generation Flow                         Traditional Compilation Pipeline&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;---------------------------------                ---------------------------------&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;Natural Language Spec                             C Source (*.c)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;        |                                              |&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;        v                                              v&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;  LLM generates draft C -------------------------.  Preprocessing&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;        |                                        :         |&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;        v                                        :         v&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;  Human review &amp;amp; refine (approve)                :   Lexical Analysis (tokens)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;        |                                        :         |&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;        &amp;#39;-------------------- dotted handoff ----:--&amp;gt; Parsing (AST)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;                                                 :         |&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;                                                 :   Semantic Analysis &amp;amp; IR Gen&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;                                                 :         |&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;                                                 :     Optimization (IR&#x2F;SSA)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;                                                 :         |&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;                                                 :     Code Generation&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;                                                 :         |&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;                                                 :       Assembly&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;                                                 :         |&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;                                                 :        Linking&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;                                                 :         |&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;                                                 &amp;#39;----&amp;gt; Executable Machine Code&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;strong&gt;Note:&lt;&#x2F;strong&gt; The dotted arrow indicates that the LLM does &lt;em&gt;not&lt;&#x2F;em&gt; replace the compiler; it produces C source that enters the normal toolchain at the &lt;strong&gt;C Source Code&lt;&#x2F;strong&gt; stage.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>⚙️ Compilers and LLMs</title>
        <published>2025-09-22T00:00:00+00:00</published>
        <updated>2025-09-22T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0222-compilers-and-llms/"/>
        <id>https://daily.himvis.com/0222-compilers-and-llms/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0222-compilers-and-llms/">&lt;p&gt;Parallel between Compiler Warnings&#x2F;Errors and LLM Hallucination Detection&lt;&#x2F;p&gt;
&lt;p&gt;Compilers analyze source code against strict syntax and semantic rules defined by programming language standards. When code violates these rules — for example, syntax errors or type mismatches — the compiler generates warnings or errors that prevent invalid code from compiling or at least notify the developer to potential issues.&lt;&#x2F;p&gt;
&lt;p&gt;This process is deterministic and rule based.&lt;&#x2F;p&gt;
&lt;p&gt;LLM Hallucination Detection:&lt;&#x2F;p&gt;
&lt;p&gt;LLM hallucinations occur when models generate outputs that are plausible-sounding but factually wrong, or unrelated to the input task. Unlike compilers, LLMs lack formal correctness rules and internal fact-checking mechanisms. Detecting hallucinations relies on probabilistic methods or feedback loops where generated outputs can be verified by additional tools or manual methods.&lt;&#x2F;p&gt;
&lt;p&gt;These detections are less strict and more heuristic, often flagging potential errors but not guaranteeing correctness.&lt;&#x2F;p&gt;
&lt;p&gt;Both are quality control tools, but compiler checks are formal and mandatory, while hallucination detection is probabilistic and contextual.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🐺 Nature inspired algorithms - Grey Wolf</title>
        <published>2025-09-19T00:00:00+00:00</published>
        <updated>2025-09-19T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0221-nature-inspired-algorithms-grey-wolf/"/>
        <id>https://daily.himvis.com/0221-nature-inspired-algorithms-grey-wolf/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0221-nature-inspired-algorithms-grey-wolf/">&lt;p&gt;Grey wolves have strict hierarchies in their packs&lt;&#x2F;p&gt;
&lt;p&gt;alpha: Leaders, Beta = Advisors, enforcers, Delta = hunters, Omega: Followers&lt;&#x2F;p&gt;
&lt;p&gt;When on hunt a coordinated plan to encircle, change and attack is carried out.&lt;&#x2F;p&gt;
&lt;p&gt;This is the inspiration for Grey Wolf Optimization algorithm.
&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.sciencedirect.com&#x2F;science&#x2F;article&#x2F;abs&#x2F;pii&#x2F;S0965997813001853&quot;&gt;Mirjalili et al. (2014)&lt;&#x2F;a&gt; introduced GWO as a population-based optimization algorithm.
Each &quot;wolf&quot; represents a candidate solution. It has been used for search
methods and training perceptrons and robot path planning.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🧠Nature inspired algorithms - Brain</title>
        <published>2025-09-18T00:00:00+00:00</published>
        <updated>2025-09-18T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0220-nature-inspired-algorithms-brain/"/>
        <id>https://daily.himvis.com/0220-nature-inspired-algorithms-brain/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0220-nature-inspired-algorithms-brain/">&lt;p&gt;Neural Networks are a common term nowadays. They are inspired by human brain’s neurons and synapses.
It is used in deep learning, computer vision, natural language processing.&lt;&#x2F;p&gt;
&lt;p&gt;Convolutional Neural Networks (CNNs) for image recognition mimic the layered processing of the visual cortex.&lt;&#x2F;p&gt;
&lt;p&gt;Ah the LLMs, is this the final frontier ?&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🦋 Nature inspired algorithms - Cellular Automata</title>
        <published>2025-09-17T00:00:00+00:00</published>
        <updated>2025-09-17T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0219-nature-inspired-algorithms-cellular-automata/"/>
        <id>https://daily.himvis.com/0219-nature-inspired-algorithms-cellular-automata/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0219-nature-inspired-algorithms-cellular-automata/">&lt;p&gt;Biological morphogenesis inspires cellular automata, where simple local rules
render a complex global pattern e.g. zebra stripes.&lt;&#x2F;p&gt;
&lt;p&gt;In software, traffic modeling, cryptography fields tend to derive some
inspiration from this natural phenomenon&lt;&#x2F;p&gt;
&lt;p&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Conway%27s_Game_of_Life&quot;&gt;Conway’s Game of Life&lt;&#x2F;a&gt;, implements emergent complexity built from simple rules&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🕷️ Nature inspired algorithms - spider webs</title>
        <published>2025-09-16T00:00:00+00:00</published>
        <updated>2025-09-16T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0218-nature-inspired-algorithms-spider-webs/"/>
        <id>https://daily.himvis.com/0218-nature-inspired-algorithms-spider-webs/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0218-nature-inspired-algorithms-spider-webs/">&lt;p&gt;Spider webs are very resilient:&lt;&#x2F;p&gt;
&lt;p&gt;A web can lose entire sections and still be functional.&lt;&#x2F;p&gt;
&lt;p&gt;Damages are contained in local area&lt;&#x2F;p&gt;
&lt;p&gt;Stress is uniformly distributed across the structure, maintains stability&lt;&#x2F;p&gt;
&lt;p&gt;Web has redundant radial and spiral connections, if one breaks load is routed elsewhere&lt;&#x2F;p&gt;
&lt;p&gt;Network Design:&lt;&#x2F;p&gt;
&lt;p&gt;Like multiple strands in a web, networks use multiple routes between nodes.&lt;&#x2F;p&gt;
&lt;p&gt;Localizing failure, Microservices architectures isolate failures so
one service crashing doesn’t collapse everything.&lt;&#x2F;p&gt;
&lt;p&gt;Load balancing spreads traffic so no single server or path is overwhelmed.&lt;&#x2F;p&gt;
&lt;p&gt;Dynamic rerouting protocols e.g. OSPF, BGP has self-heal&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>ོ ོ   ོ  ོ ོ   ོNature inspired algorithms - Finding Nemo</title>
        <published>2025-09-15T00:00:00+00:00</published>
        <updated>2025-09-15T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0217-nature-inspired-algorithms-finding-nemo/"/>
        <id>https://daily.himvis.com/0217-nature-inspired-algorithms-finding-nemo/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0217-nature-inspired-algorithms-finding-nemo/">&lt;p&gt;You might have watched the animation movie &quot;Finding Nemo&quot;, it has stunning graphic illustrations
of the fish schools, This animation uses a nature inspired algorith called &quot;Flocking Algorithms&quot;&lt;&#x2F;p&gt;
&lt;p&gt;Birds fly in flocks with perfect co-ordination&lt;&#x2F;p&gt;
&lt;p&gt;They don’t crash into each other.&lt;&#x2F;p&gt;
&lt;p&gt;They move in the same general direction.&lt;&#x2F;p&gt;
&lt;p&gt;They stay close together but not too close.&lt;&#x2F;p&gt;
&lt;p&gt;Craig Reynolds’ &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;cs.stanford.edu&#x2F;people&#x2F;eroberts&#x2F;courses&#x2F;soco&#x2F;projects&#x2F;2008-09&#x2F;modeling-natural-systems&#x2F;boids.html&quot;&gt;Boids&lt;&#x2F;a&gt; ( Bird OID objects) algorithm is the most popular implementation with 3 rules&lt;&#x2F;p&gt;
&lt;p&gt;Separation - Steer to avoid getting too close to neighbors.&lt;&#x2F;p&gt;
&lt;p&gt;Alignment - Steer toward the average heading of nearby boids.&lt;&#x2F;p&gt;
&lt;p&gt;Cohesion - Steer toward the average position of nearby boids.&lt;&#x2F;p&gt;
&lt;p&gt;This algorithm is also used in drone coordination, autonomous vehicles.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🐜🐜 Nature inspired algorithms</title>
        <published>2025-09-12T00:00:00+00:00</published>
        <updated>2025-09-12T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0216-nature-inspired-algorithms/"/>
        <id>https://daily.himvis.com/0216-nature-inspired-algorithms/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0216-nature-inspired-algorithms/">&lt;p&gt;Ants do not know global maps. They find food by:&lt;&#x2F;p&gt;
&lt;p&gt;Randomly exploring paths between the nest and food source.&lt;&#x2F;p&gt;
&lt;p&gt;Depositing pheromones on the ground as they move.&lt;&#x2F;p&gt;
&lt;p&gt;Following pheromone trails left by others (probabilistic choice).&lt;&#x2F;p&gt;
&lt;p&gt;Over time, shorter paths get reinforced because ants traveling them
return faster and deposit more pheromones, while longer paths evaporate.&lt;&#x2F;p&gt;
&lt;p&gt;This collective behavior enables ants to converge on the
shortest (or near-optimal) path to food&lt;&#x2F;p&gt;
&lt;p&gt;Routing, where dynamic re-configurations are frequent e.g.
mesh networks, Mobile ad-hoc networks, sensor networks, packet
routing, all use ant colony optimization algorithms to solve
the problem.&lt;&#x2F;p&gt;
&lt;p&gt;Nature has solved many things for us.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🌊There must be an easier way to do this</title>
        <published>2025-09-11T00:00:00+00:00</published>
        <updated>2025-09-11T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0215-there-must-be-an-easier-way-to-do-this/"/>
        <id>https://daily.himvis.com/0215-there-must-be-an-easier-way-to-do-this/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0215-there-must-be-an-easier-way-to-do-this/">&lt;p&gt;I have used several editors, but there always have been one to fall back to, changing this fall back editor
is a monumental change. I started with Emacs in school days and then switched to Vim when I started to do
embedded Linux at work, because vi was always there on those tiny boards one would ssh into, now I am in
transition to using Helix editor. These 3 changes have been a sea change in my code editing world.&lt;&#x2F;p&gt;
&lt;p&gt;I think these changes have been possible because there was a thought that would always come &quot;there must be
an easier way to do this&quot; whenever, I accomplished some uncanny looking editing task. Despite its side effects
e.g. time sink, it has propelled me to learn new things.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🐾Leave traces in code</title>
        <published>2025-09-10T00:00:00+00:00</published>
        <updated>2025-09-10T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0214-leave-traces-in-code/"/>
        <id>https://daily.himvis.com/0214-leave-traces-in-code/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0214-leave-traces-in-code/">&lt;p&gt;Computer systems are complex and various sub-system might be brought up in parallel. Imagine debugging such system&#x27;s boot process.
It&#x27;s almost like searching for a needle in haystack. Boot processes are special because there are few debug tools that can be used.
It gets better as the system boots into user space.&lt;&#x2F;p&gt;
&lt;p&gt;A good debug method&#x2F;help is to emit traces at certain events, these traces can be printed on to early devices available to system
e.g. console, serial port, terminals, this narrows down the problem area quickly and getting to root of problem becomes easier
and quicker.&lt;&#x2F;p&gt;
&lt;p&gt;Traces could be made dynamic where one can turn them to be more chatty at times and normal all other times.&lt;&#x2F;p&gt;
&lt;p&gt;This is how I saved my day today debugging a system that would not boot to a login shell&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>📚Vertical reading and horizontal reading</title>
        <published>2025-09-09T00:00:00+00:00</published>
        <updated>2025-09-09T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0213-vertical-reading-and-horizontal-reading/"/>
        <id>https://daily.himvis.com/0213-vertical-reading-and-horizontal-reading/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0213-vertical-reading-and-horizontal-reading/">&lt;p&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.theparisreview.org&#x2F;blog&#x2F;2019&#x2F;02&#x2F;08&#x2F;reading-in-the-age-of-constant-distraction&#x2F;&quot;&gt;Reading in the Age of Constant Distraction&lt;&#x2F;a&gt; talks about
challenges of long form reading and erosion of focus in the age of screens.&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;As reading materials—not just books, but newspapers, magazines, and ephemera—proliferated, more recent centuries saw the rise of reading “extensively”: we read these materials once, often quickly, and move on. Birkerts coins his own terms: the deep, devotional practice of “vertical” reading has been supplanted by “horizontal” reading, skimming along the surface.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;Books offer &lt;code&gt;vertical engagement&lt;&#x2F;code&gt; — a self-contained, coherent experience that the fragmented, screen-based world cannot replicate which we get
with extensive reading on social media, web or other places.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🖊 Writing code is easier than reading</title>
        <published>2025-09-08T00:00:00+00:00</published>
        <updated>2025-09-08T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0212-writing-code-is-easier-than-reading/"/>
        <id>https://daily.himvis.com/0212-writing-code-is-easier-than-reading/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0212-writing-code-is-easier-than-reading/">&lt;p&gt;Writing code needs learning language syntax. With AI agents even knowing syntax might not be
needed in coming future. Reading code is critical.&lt;&#x2F;p&gt;
&lt;p&gt;Why ?&lt;&#x2F;p&gt;
&lt;p&gt;You might not be the only one who wrote those millions of lines of code which forms the
complete system, if you need to make a change to system ( write code ), it will be crucial
to navigate different parts of system sources. Understanding a given code section would
need you jumping around call-sites, function definition, analyze side effects if not documented&lt;&#x2F;p&gt;
&lt;p&gt;See, the amount of effort one has to put in reading and understanding the code.&lt;&#x2F;p&gt;
&lt;p&gt;If attention is paid when writing the code, reading it can be helped.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🚀🚀🚀 OpenSource software and Agentic AI systems</title>
        <published>2025-09-05T00:00:00+00:00</published>
        <updated>2025-09-05T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0211-opensource-software-and-agentic-ai-programmers/"/>
        <id>https://daily.himvis.com/0211-opensource-software-and-agentic-ai-programmers/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0211-opensource-software-and-agentic-ai-programmers/">&lt;p&gt;AI is getting a lot of attention in code generation.&lt;&#x2F;p&gt;
&lt;p&gt;During pandemic, software development productivity went up considerably
however a new bottleneck arose in testing and validation, since there was
not enough automation and scale, so a lot of feature were spinning on
staging branches for longer than before.&lt;&#x2F;p&gt;
&lt;p&gt;In Open-Source project&#x27;s some patches are discussed
for weeks and months and in some case years before getting accepted. Why ?&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;Go slower in the small, so you can go faster in the large.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;Is it going to resurface with agentic AI systems ? Code generation accelerates, are
we going to produce software faster than we can test and validate it ?&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🗂️Will we run out of data?</title>
        <published>2025-09-04T00:00:00+00:00</published>
        <updated>2025-09-04T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0210-will-we-run-out-of-data/"/>
        <id>https://daily.himvis.com/0210-will-we-run-out-of-data/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0210-will-we-run-out-of-data/">&lt;p&gt;The &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;epoch.ai&#x2F;blog&#x2F;will-we-run-out-of-data-limits-of-llm-scaling-based-on-human-generated-data&quot;&gt;paper by epoch.ai&lt;&#x2F;a&gt; is interesting in many ways
but fundamentally asking a question&lt;&#x2F;p&gt;
&lt;p&gt;Have we eaten the internet?&lt;&#x2F;p&gt;
&lt;p&gt;It estimates&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;We estimate the stock of human-generated public text at around 300 trillion tokens. If trends continue, language models will fully utilize this stock between 2026 and 2032, or even earlier if intensely overtrained.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;Like any other resource it will deplete. So what would fuel AI growth in future?&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>📏No grand designs please</title>
        <published>2025-09-03T00:00:00+00:00</published>
        <updated>2025-09-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0209-no-grand-designs-please/"/>
        <id>https://daily.himvis.com/0209-no-grand-designs-please/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0209-no-grand-designs-please/">&lt;p&gt;There is a popular &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;xkcd.com&#x2F;927&#x2F;&quot;&gt;xkcd post on standards&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Why do we end up in these situations ?&lt;&#x2F;p&gt;
&lt;p&gt;One common reason is that we standardize before implementing. Specifications in theory
may have limitations that are revealed late in process and natural next step is to have
another standard to address it. There are popular terms e.g. &quot;code as standard&quot; which
tries to address this situation.&lt;&#x2F;p&gt;
&lt;p&gt;Standardize we must, but do it for existing practices.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🦿Lower the friction</title>
        <published>2025-09-02T00:00:00+00:00</published>
        <updated>2025-09-02T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0208-lower-the-friction/"/>
        <id>https://daily.himvis.com/0208-lower-the-friction/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0208-lower-the-friction/">&lt;p&gt;When I dropped sneakers with laces and replaces them with slip-ons, I have become
more regular on my daily walks. It&#x27;s very hard to make changes in self, mind comes
with all kind of hurdles, listen to them and see if you can keep removing them and
lowering the barrier.&lt;&#x2F;p&gt;
&lt;p&gt;In other words, think about reducing the friction, and it will tremendously improve
chance of success.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🛠 Productivity Tools</title>
        <published>2025-08-28T00:00:00+00:00</published>
        <updated>2025-08-28T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0207-productivity-tools/"/>
        <id>https://daily.himvis.com/0207-productivity-tools/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0207-productivity-tools/">&lt;p&gt;Think of your CI system, Defect tracking system, or SCM going away, you might
very well call it a day and go home.&lt;&#x2F;p&gt;
&lt;p&gt;What are real productivity tools?&lt;&#x2F;p&gt;
&lt;p&gt;If the tool goes away, does your work stop, if yes that is a productivity
tool&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🐛You should not salt a leech</title>
        <published>2025-08-27T00:00:00+00:00</published>
        <updated>2025-08-27T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0206-you-should-not-salt-a-leech/"/>
        <id>https://daily.himvis.com/0206-you-should-not-salt-a-leech/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0206-you-should-not-salt-a-leech/">&lt;p&gt;If a leech gets on to your leg while hiking, common suggestion is to run salt and remove it
quickly, however it causes leech to vomit due to distress. A good way to get it off is to use
your nails or credit-card to break the seal between the leech&#x27;s mouth and skin quickly,
so it can not vomit blood back into wound, it can cause infection.&lt;&#x2F;p&gt;
&lt;p&gt;Relate this to our reaction when we find a defect in our product. We can create panic
and try to fix it ASAP by taking some shortcuts on the way. This might fix the known problem
but open door for more if not considered thoroughly.&lt;&#x2F;p&gt;
&lt;p&gt;Understanding the extent of the issue and limitations of solution for addressing it should
help in making a good decision on how to address the problem.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>💳 Code creates debt</title>
        <published>2025-08-26T00:00:00+00:00</published>
        <updated>2025-08-26T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0205-code-creates-debt/"/>
        <id>https://daily.himvis.com/0205-code-creates-debt/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0205-code-creates-debt/">&lt;p&gt;The moment code is committed into repository, It starts to decay, and we have to spend
effort and time in maintaining it. With time this cost goes up. We should therefore
get engineers to build processes and tools to manage the maintenance.&lt;&#x2F;p&gt;
&lt;p&gt;True Value Lies in:&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Teamwork and Design:&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt;
The expertise, learning, and design thinking of the team provide much more
long-term value.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Problem Solving:&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt;
Helping others, clarifying requirements, and creatively addressing issues are
often more impactful.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Knowledge and Experience:&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt;
The ability to learn from past efforts and streamline future projects
is a source of ongoing value&lt;&#x2F;p&gt;
&lt;p&gt;Code is byproduct of these activities. The real value resides
in the solution, not the code&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🌟 AI Superstars</title>
        <published>2025-08-25T00:00:00+00:00</published>
        <updated>2025-08-25T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0204-ai-superstars/"/>
        <id>https://daily.himvis.com/0204-ai-superstars/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0204-ai-superstars/">&lt;p&gt;Companies in Silicon-valley are coming up with enormous &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;fortune.com&#x2F;2025&#x2F;06&#x2F;18&#x2F;metas-100-million-signing-bonuses-openai-staff-extreme-ai-talent-war&#x2F;&quot;&gt;offers to AI
researchers and experts&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;
&lt;p&gt;When we read about similar amounts being offered to NBA, NFL stars, we
are not as surprised.&lt;&#x2F;p&gt;
&lt;p&gt;These AI researchers and scientists may not be house-hold name or discussed on
ESPN but here they are.&lt;&#x2F;p&gt;
&lt;p&gt;Welcome to new world !&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>📜 Coders of future - LLM agents</title>
        <published>2025-08-22T00:00:00+00:00</published>
        <updated>2025-08-22T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0203-coders-of-future-llm-agents/"/>
        <id>https://daily.himvis.com/0203-coders-of-future-llm-agents/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0203-coders-of-future-llm-agents/">&lt;p&gt;Generative AI is being explored and shows promises of a great change to help
solve complex problems and some alarmists warn about its far and wide impact
on society.&lt;&#x2F;p&gt;
&lt;p&gt;So which type of problems is it going to solve effectively first?&lt;&#x2F;p&gt;
&lt;p&gt;I think it is going to be programming. Programming computers is done using
computer languages, which are consistent and follow a robust structure. It
is driven by logic. Give same input it will generate same output, in other
words it is deterministic. This makes programming a well-suited problem for
LLMs to hit out of park.&lt;&#x2F;p&gt;
&lt;p&gt;To be a programmer I think you will not need to learn C&#x2F;C++ Rust or python in
coming future, documentation&#x2F;specification to code is the new compiler and
its LLMs, new programming language is documentation&#x2F;writing.&lt;&#x2F;p&gt;
&lt;p&gt;Get knowing markdown ( .md )&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>💻🧠Disclosing AI tooling OSS contribution</title>
        <published>2025-08-21T00:00:00+00:00</published>
        <updated>2025-08-21T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0202-disclosing-ai-tooling-oss-contribution/"/>
        <id>https://daily.himvis.com/0202-disclosing-ai-tooling-oss-contribution/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0202-disclosing-ai-tooling-oss-contribution/">&lt;p&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;ghostty-org&#x2F;ghostty&#x2F;pull&#x2F;8289&quot;&gt;AI tooling must be disclosed for contributions&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;
&lt;p&gt;I think this will add needed context for reviewers and maintainers including
a future where AI will be in these roles as well, and maybe it will already
know AI generated code inherently. Right now there are humans
primarily in maintainers or reviewer roles and the human context is different
to machines so knowing this is important for performing the activities on
the contribution.&lt;&#x2F;p&gt;
&lt;p&gt;What do you think?&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🔎 Collaborative - Code Review</title>
        <published>2025-08-20T00:00:00+00:00</published>
        <updated>2025-08-20T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0201-collaborative-code-review/"/>
        <id>https://daily.himvis.com/0201-collaborative-code-review/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0201-collaborative-code-review/">&lt;p&gt;Code review is an important part of code development, various systems exist e.g. &lt;code&gt;Github&lt;&#x2F;code&gt; PR&#x27;s can be reviewed
inline, &lt;code&gt;gerrit&lt;&#x2F;code&gt; provided a rich code-review system and is used extensively as well. There are certain aspects
which these systems do not address well.&lt;&#x2F;p&gt;
&lt;p&gt;When code is proposed for review, if system can make it easier for code-reviewers to be stake-holders, not
only provide comments but also provide code fixes easily.&lt;&#x2F;p&gt;
&lt;p&gt;Keeping context of reviewed changes will help in incremental review, this makes it less tedious and more interesting.&lt;&#x2F;p&gt;
&lt;p&gt;It helps with resolving conflicts smartly &quot;diff of diffs&quot; shows only changes from last diff.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;tigerbeetle.com&#x2F;blog&#x2F;2025-08-04-code-review-can-be-better&#x2F;&quot;&gt;Brain from Jane Street&lt;&#x2F;a&gt; seems to achieve some it&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🙋Know the goals of an OpenSource project</title>
        <published>2025-08-19T00:00:00+00:00</published>
        <updated>2025-08-19T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0200-know-the-goals-of-an-opensource-project/"/>
        <id>https://daily.himvis.com/0200-know-the-goals-of-an-opensource-project/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0200-know-the-goals-of-an-opensource-project/">&lt;p&gt;There are so many Open-Source distributions, They all have certain underlying
goals, philosophies. Its essential to know them and consider them in making
choices of components for your products. An open-source project might have
lot of traction, community growth, does not mean if a part of it fits product&#x27;s
needs, it is the right choice. If project is headed in a direction which is
not inline with product, it is highly likely that this open-source component
will become the &lt;code&gt;achilles heel&lt;&#x2F;code&gt; in product during its life. e.g. which linux
distro to use as baseline for your product ? this decision should not be taken
lightly and least without understanding many factors, but please add another
metric to it, I am sure it will help in improving the quality of decision.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🌊 To Vibe Coders</title>
        <published>2025-08-18T00:00:00+00:00</published>
        <updated>2025-08-18T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0199-to-vibe-coders/"/>
        <id>https://daily.himvis.com/0199-to-vibe-coders/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0199-to-vibe-coders/">&lt;p&gt;Vibe-coding is on the rise, AWS has some &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;awslabs&#x2F;mcp&#x2F;blob&#x2F;main&#x2F;VIBE_CODING_TIPS_TRICKS.md&quot;&gt;tips and tricks&lt;&#x2F;a&gt; it enables more folks with programming tasks. However,
it is not a magic wand (well not yet), you have to understand what it is doing and
what you need.&lt;&#x2F;p&gt;
&lt;p&gt;Here are some best practices&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Always review, guide architecture; AI is a tool, not a substitute&lt;&#x2F;li&gt;
&lt;li&gt;&quot;Plan&quot; before &quot;Act&quot;; ensure features match client capability&lt;&#x2F;li&gt;
&lt;li&gt;Prompt with clear context, use tools, break tasks down&lt;&#x2F;li&gt;
&lt;li&gt;Create self-defined tests, CI&#x2F;CD, supplant with human validation&lt;&#x2F;li&gt;
&lt;li&gt;Up-to-date documentation perhaps collaborate with AI&lt;&#x2F;li&gt;
&lt;li&gt;Keep lean tooling&lt;&#x2F;li&gt;
&lt;li&gt;Consistent configurations&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🗣️ Building context - is all the difference</title>
        <published>2025-08-15T00:00:00+00:00</published>
        <updated>2025-08-15T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0198-building-context-is-all-the-difference/"/>
        <id>https://daily.himvis.com/0198-building-context-is-all-the-difference/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0198-building-context-is-all-the-difference/">&lt;p&gt;AI coding agents are everywhere. If you are embedded software engineer, you might be tempted to
ask away your problem directly &quot;Write a zephyr I2C driver for photo sensor on ESP32&quot; and the agent
will spit out the code. Often this code is wrong, it has used wrong register set, peripheral addresses
and HAL functions.&lt;&#x2F;p&gt;
&lt;p&gt;It is important to build a rich context before asking to write code.&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Feed the documentation, Technical Reference manuals, Specs, datasheets, User manuals pertaining to the hardware you are working on&lt;&#x2F;li&gt;
&lt;li&gt;Ask it questions adjacent to the problem, if answers are a bit off, provide feedback&lt;&#x2F;li&gt;
&lt;li&gt;Nudge it to think about alternatives&lt;&#x2F;li&gt;
&lt;li&gt;Point to online forums relevant to the MCU or software at hand if it is open source It&#x27;s even better&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;Now ask same question and see the difference.&lt;&#x2F;p&gt;
&lt;p&gt;I think Pareto principle applies here: 80% time in building the context, 20% time in generating&#x2F;reviewing&#x2F;applying code.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🔓Value worth 8.8 Trillion that we take for granted</title>
        <published>2025-08-14T00:00:00+00:00</published>
        <updated>2025-08-14T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0197-value-worth-8-8-trillion-that-we-take-for-granted/"/>
        <id>https://daily.himvis.com/0197-value-worth-8-8-trillion-that-we-take-for-granted/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0197-value-worth-8-8-trillion-that-we-take-for-granted/">&lt;p&gt;Harvard published a study in 2024 on &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;papers.ssrn.com&#x2F;sol3&#x2F;papers.cfm?abstract_id=4693148&quot;&gt;value of Open Source Software&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;
&lt;p&gt;The researchers use two valuation approaches - supply-side and demand-side analysis
to quantify the economic value of widely-used open source software.&lt;&#x2F;p&gt;
&lt;p&gt;The supply-side value of widely-used OSS is estimated at $4.15 billion
but the demand-side value is much larger at $8.8 trillion&lt;&#x2F;p&gt;
&lt;p&gt;Companies would need to spend 3.5 times more on software than they currently do
if OSS did not exist&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;96% of the demand-side value is created by only 5% of OSS developers&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt;, the value
distribution is extremely disproportionate.&lt;&#x2F;p&gt;
&lt;p&gt;If a country increased its Open source contribution by 1%, it results in 0.4% more
startups.&lt;&#x2F;p&gt;
&lt;p&gt;It highlights massive hidden economic value of open source software,
demonstrating that while OSS appears &quot;free,&quot; its economic impact is enormous&lt;&#x2F;p&gt;
&lt;p&gt;OSS is critical piece of digital infrastructure, it should be treated as
public infrastructure and governments should invest in it like they do
in other infrastructures.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>📌 Memoization</title>
        <published>2025-08-13T00:00:00+00:00</published>
        <updated>2025-08-13T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0196-memoization/"/>
        <id>https://daily.himvis.com/0196-memoization/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0196-memoization/">&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Memoization&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt; is used to solve dynamic programming problems. It&#x27;s a Top-Down
approach, where it solves a sub-problem and stores results in caches as they
are computed, then it checks the cache for existing before solving another
sub-problem and recursively solve all sub-problems to complete the full solution
to the problem.&lt;&#x2F;p&gt;
&lt;p&gt;This technique is quite powerful and can form as &lt;code&gt;build-once use everywhere&lt;&#x2F;code&gt; processes
Looking closely at processes and diving it into smaller steps and solving the step
while maximizing common steps can result in exponential improvements.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🦄 One man company</title>
        <published>2025-08-12T00:00:00+00:00</published>
        <updated>2025-08-12T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0195-one-man-company/"/>
        <id>https://daily.himvis.com/0195-one-man-company/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0195-one-man-company/">&lt;p&gt;Here is a thorough review of &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;community.tmpdir.org&#x2F;t&#x2F;book-review-company-of-one&#x2F;1544&quot;&gt;Company of One&lt;&#x2F;a&gt;
With recent advancements in AI, this enterprise of one is getting interesting. While this book talks about
growth, I am wondering if AI is going to make growth easy for it. Are we going to see a Billion dollar unicorn company
of one soon ? If yes how soon ?&lt;&#x2F;p&gt;
&lt;p&gt;I wonder !&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>📋Choosing a license for your open-source project</title>
        <published>2025-08-11T00:00:00+00:00</published>
        <updated>2025-08-11T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0194-choosing-a-license-for-your-open-source-project/"/>
        <id>https://daily.himvis.com/0194-choosing-a-license-for-your-open-source-project/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0194-choosing-a-license-for-your-open-source-project/">&lt;p&gt;Open-Source development model has proven itself over past couple of decades in creating
collaboration and developing software projects. It is good to understand Open-Source licensing.
License will help in defining the direction of project and convey the intent of the software
project.&lt;&#x2F;p&gt;
&lt;p&gt;There are enough resources out there, e.g. when you create new GitHub project, it offers a list of
license to choose.&lt;&#x2F;p&gt;
&lt;p&gt;It is good to understand why you want to do it in open-source. There are resources e.g.
&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;choosealicense.com&#x2F;&quot;&gt;choose a license&lt;&#x2F;a&gt;, which can help you express your
Open-sourcing needs.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Know what to OpenSource</title>
        <published>2025-08-08T00:00:00+00:00</published>
        <updated>2025-08-08T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0193-know-what-to-opensource/"/>
        <id>https://daily.himvis.com/0193-know-what-to-opensource/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0193-know-what-to-opensource/">&lt;p&gt;Open-Source has been successful, it does not mean everything should
be open sourced. Careful criteria for adopting a strategy for maintaining
the project should be put in place to decide it. These criteria will
depend upon your product plan. Open-Sourcing can take the project in
unintended directions and hamper the product plan. There are many
project maintainers who have come to realization that their project
was not ideal for Open-Sourcing at the time when it was done.&lt;&#x2F;p&gt;
&lt;p&gt;However, adopting open-source practices even if the code is developed
internally should always be a good option to consider.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🏗 OSS Characteristics</title>
        <published>2025-08-07T00:00:00+00:00</published>
        <updated>2025-08-07T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0192-opensource-software-mindset/"/>
        <id>https://daily.himvis.com/0192-opensource-software-mindset/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0192-opensource-software-mindset/">&lt;p&gt;We use and produce a lot of open-source software today. In fact more than
ever before.&lt;&#x2F;p&gt;
&lt;p&gt;Open-Source development process does not cater to product deadlines, it
aspires for best implementation resulting in meritocracy. This is strong
and fundamental reason for its success. There is other side of the coin
to consider as well. The quest for generalizing solution also makes it
a good platform to build upon. There is a clear distinction between
a product and platform, products will have narrow focus to solving the
problem at hand, so if we treat OSS in the same vein we will be making
a category mistake.&lt;&#x2F;p&gt;
&lt;p&gt;Weather it is a single library or a complex component like Operating System,
OSS inherently has platform characteristics&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>❎ Mistakes Worth Repeating</title>
        <published>2025-08-06T00:00:00+00:00</published>
        <updated>2025-08-06T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0191-mistakes-worth-repeating/"/>
        <id>https://daily.himvis.com/0191-mistakes-worth-repeating/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0191-mistakes-worth-repeating/">&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Don&#x27;t keep building the same flawed product, but do keep trying to innovate.&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;Don&#x27;t keep making the same tactical error at work, but do keep tackling hard problems.&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;Don&#x27;t keep trusting the same untrustworthy person, but do keep choosing to trust people.&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>👐Know your Open-Source dependencies</title>
        <published>2025-08-05T00:00:00+00:00</published>
        <updated>2025-08-05T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0190-know-your-opensource-dependencies/"/>
        <id>https://daily.himvis.com/0190-know-your-opensource-dependencies/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0190-know-your-opensource-dependencies/">&lt;p&gt;Open-Source is everywhere, its probably in your projects and products, way more than what you might think.
&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.intel.com&#x2F;content&#x2F;www&#x2F;us&#x2F;en&#x2F;developer&#x2F;articles&#x2F;guide&#x2F;the-careful-consumption-of-open-source-software.html#:~:text=Open%20source%20software%20is%20everywhere,of%20projects%20is%20rising%20rapidly.&quot;&gt;70 to 90% of software stack&lt;&#x2F;a&gt; is composed of Open-Source software. Yes its eye-opening. Often
we are focussed on the single application that is differentiating the product and that is right to have
higher priority, since it brings the revenue. However, knowing the size of ship on which this application
is thriving is as important.&lt;&#x2F;p&gt;
&lt;p&gt;Take an account of Open-Source dependencies will reveal risks e.g. one package which has lost its maintainer
which is heavily used by the application. Old and stale versions of other Open-Source packages.&lt;&#x2F;p&gt;
&lt;p&gt;It is not just the direct dependencies, but also indirect and transitive dependencies which will impact the
products.&lt;&#x2F;p&gt;
&lt;p&gt;Investing in creating this dependency picture will probably give quality information on the creating an effective
strategy around your products with respect to Open-Source which you do not maintain or own.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Why did git succeed ?</title>
        <published>2025-08-04T00:00:00+00:00</published>
        <updated>2025-08-04T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0189-why-did-git-succeed/"/>
        <id>https://daily.himvis.com/0189-why-did-git-succeed/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0189-why-did-git-succeed/">&lt;p&gt;Git has become synonymous to SCM (Source control Management), why?&lt;&#x2F;p&gt;
&lt;p&gt;It has Distributed concept which scales in amazing ways. Offline repositories
mean no need to be connected to internet all the time.&lt;&#x2F;p&gt;
&lt;p&gt;Operations like branching are fast, viewing history is fast because it is
all local. Use of SHA checksums on commits help ensure data integrity&lt;&#x2F;p&gt;
&lt;p&gt;There is no doubt on its technical design in its success, but there are
few others which can not be ignored.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;Linus&#x27;s factor:&lt;&#x2F;em&gt; Linus Torvalds started Linux Kernel project and git too.
His reputation certainly is a big factor.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;Timing:&lt;&#x2F;em&gt; It came at right time, when open-source scene was unfolding at fast
pace.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;GitHub Effect:&lt;&#x2F;em&gt; Git became accessible to a large user base with infrastructures
like GitHub, Gitlab etc.&lt;&#x2F;p&gt;
&lt;p&gt;So it is a combination of technical excellence, perfect timing
and ecosystem effects which created a virtuous cycle that made
Git the dominant choice for version control.&lt;&#x2F;p&gt;
&lt;p&gt;Success is never achieved alone.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🦙Value is on the edges - Examples</title>
        <published>2025-08-01T00:00:00+00:00</published>
        <updated>2025-08-01T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0188-value-is-on-the-edges-examples/"/>
        <id>https://daily.himvis.com/0188-value-is-on-the-edges-examples/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0188-value-is-on-the-edges-examples/">&lt;p&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;daily.himvis.com&#x2F;0187-value-is-on-the-edges&#x2F;&quot;&gt;Yesterday&#x27;s post&lt;&#x2F;a&gt; was about where does value in software ecosystem reside. Readers were curious
about some examples to the point. So today I will mention two cases. If we
look closely in open source software ecosystem there are few examples to
illustrate this&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Netscape Navigator&lt;&#x2F;strong&gt; Once one of the most valuable assets in web browsers,
Netscape eventually open-sourced its Navigator browser. The release faced
challenges such as missing proprietary components and complex internal dependencies.
This initiative ultimately led to the creation of the Mozilla project,
and Firefox as we know today. Netscape saw that browsers are the enablers for
internet not value adds but platforms to build upon.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Llama (LLMs)&lt;&#x2F;strong&gt; In 2023, Meta open-sourced some of its advanced AI
technology, which had previously been a closely guarded competitive asset. This
could help them improve the LLM faster than any closed source model because of
access to data is will achieve. Meta saw that the LLMs are enablers for them not
value add.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>༄ᨒ Value is on the edges</title>
        <published>2025-07-31T00:00:00+00:00</published>
        <updated>2025-07-31T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0187-value-is-on-the-edges/"/>
        <id>https://daily.himvis.com/0187-value-is-on-the-edges/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0187-value-is-on-the-edges/">&lt;p&gt;Software is like flowing water in a river, stalling stales it.
Its always changing and transforming at rapid pace. A question arises
about the value.&lt;&#x2F;p&gt;
&lt;p&gt;Where is the value in software ecosystem ?&lt;&#x2F;p&gt;
&lt;p&gt;It is always at the edge, The edge maybe expanding rapidly, what is
valuable today will become commodity tomorrow, but it will fuel the
value that the new edge will have.&lt;&#x2F;p&gt;
&lt;p&gt;Always look for collaborating at the core and differentiating at the
edge, and review your assertions daily&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🤖Programmers are AI</title>
        <published>2025-07-30T00:00:00+00:00</published>
        <updated>2025-07-30T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0186-programmers-are-ai/"/>
        <id>https://daily.himvis.com/0186-programmers-are-ai/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0186-programmers-are-ai/">&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Programming languages are structured text&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;There is a lot of data to train on openly available (open source code).&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;Programming languages express objectiveness unlike natural languages which are highly subjective and contextual.&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;80% of code is loops, such repetitions are easy for LLMs to generate&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;It is A perfect ball for LLMs to hit out of park. The advent of programming tools like
cursor, Claude code, Gemini CLI are bold indicators that, programming
is going to be an area that LLMs will soon excel in, how do we take
advantage of this towards productivity is going to be the difference&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>sunk-cost fallacy</title>
        <published>2025-07-29T00:00:00+00:00</published>
        <updated>2025-07-29T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0185-sunk-cost-fallacy/"/>
        <id>https://daily.himvis.com/0185-sunk-cost-fallacy/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0185-sunk-cost-fallacy/">&lt;p&gt;Many years ago, I learned a valuable lesson from an office mate about
dropping a book without finishing. This sounded bizarre at the beginning
why would you start reading a book that you won&#x27;t finish, however it
is quite useful as I have come to understand it over time.&lt;&#x2F;p&gt;
&lt;p&gt;When we start reading a book, we do not have enough data points to
calibrate our expectations, as pages pass by we start getting better
idea, and it might be in both directions - it is exceeding what I was hoping
for, or it is becoming a drag. With every page read, the
time investment is going up and becoming a reason to keep going. If
that is the sole main reason at any point of time. It is the right time
to drop it, we know abandoning it the right choice.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>When to use a new programming language - 2</title>
        <published>2025-07-28T00:00:00+00:00</published>
        <updated>2025-07-28T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0184-when-to-use-a-new-programming-language-2/"/>
        <id>https://daily.himvis.com/0184-when-to-use-a-new-programming-language-2/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0184-when-to-use-a-new-programming-language-2/">&lt;p&gt;We discussed using new programming languages in &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;daily.himvis.com&#x2F;0183-when-to-use-a-new-programming-language&#x2F;&quot;&gt;last post&lt;&#x2F;a&gt;
This took the view from learning perspective and new projects with
no legacy to worry about. However, that is rarely the case in professional
settings. One has to worry about existing components&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Interoperability&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt;, languages do provide foreign function interfaces (FFI) mechanisms
for handling data type conversions, allocations across language boundary etc.
how good and mature are they ?&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Build systems&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt;, can be tricky, some languages may have their own build systems tightly
integrated with. Can you assimilate it into existing build system?&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Ecosystem&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt;*, is a key piece, does it offer breadth of supporting packages, or will you
have to plan to re-implement some of existing functionality&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Package size&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt;, is important in general but more so in constrained systems, so knowing
the cost of size with new language is going to be important factor.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Tools&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt; are pillars for productivity, with single languages it is simpler, but with multiple languages involved can these tools offer support across language boundaries
stack-walk, throwing and catching exceptions, back-traces etc.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Skill-set&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt; upgrade should be easy, if you need to invest to overcome the learning curve
or is skill available externally to hire. This can be an important factor on bootstrapping
the new language into products.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>When to use a new programming language</title>
        <published>2025-07-24T00:00:00+00:00</published>
        <updated>2025-07-24T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0183-when-to-use-a-new-programming-language/"/>
        <id>https://daily.himvis.com/0183-when-to-use-a-new-programming-language/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0183-when-to-use-a-new-programming-language/">&lt;p&gt;New programming language keep appearing on the horizon and lot of tech journalists
cover them with passion. It creates an aura around them, you can love them hate them,
but you can not ignore them. Often a question arises when should I use it, so I can
be part of cool kids club.&lt;&#x2F;p&gt;
&lt;p&gt;Learning them as hobby is perhaps an easy intercept, write some cool sample code to
learn about internals of the language and tooling around it. With some introductory
knowledge try to find an interesting open source project using this language, and it
can be mutually beneficial where I learn some new stuff about the language and
contribute the code to the project. You can also see practically where this language
is used and quirks around it. It is a quick way to ramp up practical programming
skills.&lt;&#x2F;p&gt;
&lt;p&gt;If you are decision maker for a professional project around such decisions.
It is entirely different story. We will discuss more on it in future&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Demo power</title>
        <published>2025-07-23T00:00:00+00:00</published>
        <updated>2025-07-23T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0182-demos/"/>
        <id>https://daily.himvis.com/0182-demos/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0182-demos/">&lt;p&gt;You have a great idea. It is not getting traction. You have tried
to describe it, documented it, drawn it, talked in hallway with your
colleagues. Think of Demo.&lt;&#x2F;p&gt;
&lt;p&gt;Humans connect strongly at bio-mechanical level. That is why walking meditation
work better than sitting. Immense pleasure one feels from pottery. Digging dirt
in garden is exhausting but satisfactory at the end.&lt;&#x2F;p&gt;
&lt;p&gt;Demos are in same league, think of doing a little proof of concept, a demo
how it will work. Take a small example and code it down to demonstrate the
power of your idea. Observe how quickly people see it.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Don&#x27;t learn programming from youtube</title>
        <published>2025-07-22T00:00:00+00:00</published>
        <updated>2025-07-22T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0181-don-t-learn-programming-from-youtube/"/>
        <id>https://daily.himvis.com/0181-don-t-learn-programming-from-youtube/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0181-don-t-learn-programming-from-youtube/">&lt;p&gt;I like to watch YouTube for recreational purposes. There are informative videos on YouTube
and I do learn something watching them, but primary purpose is entertainment and a small
learning is a good side effect. There are awesome programmers on YouTube and watching them
program is like watching Olympics on TV and expecting to become a great athlete.
Conference talks and podcasts are also in similar category, they will give you some soft
skills but not the learning you might be expecting&lt;&#x2F;p&gt;
&lt;p&gt;I would rather invest time in a book. Type-in the code samples, try to compile them, there
will be errors and result in firsthand learning.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Pareto Principle</title>
        <published>2025-07-21T00:00:00+00:00</published>
        <updated>2025-07-21T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0180-pareto-principle/"/>
        <id>https://daily.himvis.com/0180-pareto-principle/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0180-pareto-principle/">&lt;p&gt;Pareto principle is famous 80&#x2F;20 rule suggesting 80% of results come from
20% causes, underscoring an unequal distribution of inputs and outputs.&lt;&#x2F;p&gt;
&lt;p&gt;However, there are cases where reversing this might make sense in long run
e.g. you have debugged the problem and found a way to &lt;code&gt;fix&lt;&#x2F;code&gt; it but you do
not understand the root cause. It might still need 80% effort to understand
the problem and real cause, but it results in learning that is worthwhile
time investment, which would result in unequal outputs in long run.&lt;&#x2F;p&gt;
&lt;p&gt;Can you think of more examples for reverse pareto principle?&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🤜🤛Building Better Software Through Collaboration</title>
        <published>2025-06-06T00:00:00+00:00</published>
        <updated>2025-06-06T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0179-building-better-software-through-collaboration/"/>
        <id>https://daily.himvis.com/0179-building-better-software-through-collaboration/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0179-building-better-software-through-collaboration/">&lt;p&gt;Open source software is everywhere, nowadays the process is being
used beyond software development as well. It is built upon
a solid corner-stone - Collaboration&lt;&#x2F;p&gt;
&lt;p&gt;Humility makes programmers better collaborators.
They write code as if the next person to maintain it might be a
complete stranger—because they often are, even if that stranger
is themselves six months later. They document their decisions,
choose clarity over cleverness, and resist the urge to show off
with unnecessarily complex solutions.&lt;&#x2F;p&gt;
&lt;p&gt;When discussing technical approaches, they advocate for their ideas
without becoming attached to them. They&#x27;re willing to abandon their
preferred solution if someone presents a better alternative,
understanding that the goal is shipping great software, not winning
technical arguments.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Learning from everyone</title>
        <published>2025-06-05T00:00:00+00:00</published>
        <updated>2025-06-05T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0178-learning-from-everyone/"/>
        <id>https://daily.himvis.com/0178-learning-from-everyone/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0178-learning-from-everyone/">&lt;p&gt;Great ideas can come from anywhere.&lt;&#x2F;p&gt;
&lt;p&gt;The intern who just joined might spot a bug that the senior architect missed.&lt;&#x2F;p&gt;
&lt;p&gt;The designer who &quot;doesn&#x27;t code&quot; might suggest an approach that elegantly solves a complex user experience problem.&lt;&#x2F;p&gt;
&lt;p&gt;Even error messages and failed deployments become teachers rather than sources of frustration.&lt;&#x2F;p&gt;
&lt;p&gt;This openness to learning extends beyond technical skills. As a result we actively seek feedback on our code,
knowing that fresh eyes often catch what tunnel vision misses. We participate in code reviews not as defensive
exercises, but as collaborative opportunities to improve.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🙈The Strength in Admitting Mistakes</title>
        <published>2025-06-04T00:00:00+00:00</published>
        <updated>2025-06-04T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0177-the-strength-in-admitting-mistakes/"/>
        <id>https://daily.himvis.com/0177-the-strength-in-admitting-mistakes/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0177-the-strength-in-admitting-mistakes/">&lt;p&gt;At one place, I remember there was something called &lt;strong&gt;&lt;strong&gt;Hall of shame&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt; which would
be talking about a code defect or product issue. The problematic part was that
it zoomed in on software engineers. If you are part of tightly-knit team and
understand the culture, this might feel normal fun part but if you are new to
team it can be quite damaging for fledgling relationships that might be underway
as new member on the team. It felt very personal.&lt;&#x2F;p&gt;
&lt;p&gt;When bugs appear in production, and they always do, It is perhaps better that
programmers doesn&#x27;t waste energy on blame or excuses. They focus on understanding
what went wrong, fixing it quickly, and implementing safeguards to prevent
similar issues. They share their mistakes with the team, turning personal
failures into collective learning opportunities. This approach builds trust
with colleagues and managers.&lt;&#x2F;p&gt;
&lt;p&gt;Teams know they can rely on such teammates to give honest estimates, raise
concerns early, and prioritize solving problems over protecting their
reputation.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>The Long Game</title>
        <published>2025-06-03T00:00:00+00:00</published>
        <updated>2025-06-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0176-the-long-game/"/>
        <id>https://daily.himvis.com/0176-the-long-game/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0176-the-long-game/">&lt;p&gt;Humble programmers play the long game. They invest time in fundamentals
rather than chasing every new trend. They mentor others, knowing that lifting
the entire team ultimately benefits everyone. Their decisions are based on
what&#x27;s best for the project and the users, not what looks impressive on their
resume.&lt;&#x2F;p&gt;
&lt;p&gt;In a field where imposter syndrome runs rampant and where the loudest voices
often get the most attention, choosing humility might seem counterintuitive.
But the humble programmer understands a fundamental truth:
&lt;strong&gt;&lt;strong&gt;the best code speaks for itself&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt;. The most valuable team members are
those who make everyone around them better.&lt;&#x2F;p&gt;
&lt;p&gt;Sometimes we are tempted to prove how smart we are through overly complex code
or dismissing someone else&#x27;s suggestion, remember that true expertise whispers while
ignorance shouts. In programming, as in life, a little humility goes a long way.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>The Paradox of Programming Knowledge</title>
        <published>2025-06-02T00:00:00+00:00</published>
        <updated>2025-06-02T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0175-the-paradox-of-programming-knowledge/"/>
        <id>https://daily.himvis.com/0175-the-paradox-of-programming-knowledge/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0175-the-paradox-of-programming-knowledge/">&lt;p&gt;&lt;em&gt;&lt;strong&gt;The Paradox of Programming Knowledge&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Recently, I was looking at old piece of bash shell code and figured out it was using
too many pipes, then I thought of looking at source code history and surprise who
wrote it! Me 8 years ago :)&lt;&#x2F;p&gt;
&lt;p&gt;Programming presents a unique challenge to the human ego. The more you learn,
the more you realize how much you don&#x27;t know. A junior developer might feel
confident after mastering their first language, but a seasoned programmer
understands that technology is an ever-expanding universe where expertise
in one area barely scratches the surface of what&#x27;s possible.&lt;&#x2F;p&gt;
&lt;p&gt;The humble programmer embraces this paradox. They&#x27;ve learned that saying
&quot;I don&#x27;t know&quot; isn&#x27;t a sign of weakness—it&#x27;s the first step toward finding
a solution. They approach each problem with curiosity rather than the
need to prove their intelligence.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🐎🛒Story of the chariot</title>
        <published>2025-05-30T00:00:00+00:00</published>
        <updated>2025-05-30T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0174-story-of-the-chariot/"/>
        <id>https://daily.himvis.com/0174-story-of-the-chariot/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0174-story-of-the-chariot/">&lt;p&gt;The sage Yama taught young Nachiketa: &quot;Know the Self as the master of the chariot,
and the body as the chariot itself. The intellect is the charioteer, and the mind
is the reins. The senses are the horses, and the objects of the senses are the paths they run on.&quot;&lt;&#x2F;p&gt;
&lt;p&gt;He continued: &quot;When the master lacks discrimination and the mind remains uncontrolled,
the senses run wild like unruly horses with a bad driver.
But when the master is wise and the mind is controlled, the senses become disciplined
like good horses with a skilled charioteer.&quot;&lt;&#x2F;p&gt;
&lt;p&gt;&quot;The person whose charioteer-intellect is always alert and whose reins-mind are firmly held,
reaches the end of the journey - the supreme goal.&quot;&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;The Modern Connection:&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;This ancient wisdom perfectly captures our modern productivity struggles.&lt;&#x2F;p&gt;
&lt;p&gt;We are the master of our &quot;chariot&quot; - our life and work. Our intellect is the charioteer
that should guide us, while our mind holds the reins of attention. But our senses
(notifications, social media, endless distractions) are like wild horses pulling us in
every direction.&lt;&#x2F;p&gt;
&lt;p&gt;Most productivity advice focuses on external systems - apps, techniques, schedules.
Perhaps the real solution lies in training our inner charioteer. When our intellect
is sharp and our mind disciplined, we naturally move toward our goals without being
dragged off course by every distraction.&lt;&#x2F;p&gt;
&lt;p&gt;The modern &quot;flow state&quot; that productivity experts talk about is simply what happens
when charioteer, reins, and horses work in perfect harmony - focused, effortless
forward progress.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>natural order of things</title>
        <published>2025-05-29T00:00:00+00:00</published>
        <updated>2025-05-29T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0173-natural-order-of-things/"/>
        <id>https://daily.himvis.com/0173-natural-order-of-things/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0173-natural-order-of-things/">&lt;p&gt;In the ancient forests of India, there lived a young student named Svetaketu who approached his teacher with great ambition. &quot;Master,&quot; he said, &quot;I wish to become the most productive person in all the land. Teach me the secrets of accomplishing great deeds.&quot;&lt;&#x2F;p&gt;
&lt;p&gt;The sage smiled and handed him two clay pots. &quot;Fill one with water from the river, but carry both.&quot;
Svetaketu hurried to the river, filled one pot completely, and rushed back, carrying the empty pot alongside it. Water sloshed everywhere, soaking his clothes and the ground. He arrived breathless, having spilled half the water.&lt;&#x2F;p&gt;
&lt;p&gt;&quot;Why did you give me two pots when I only needed one?&quot; Svetaketu asked, frustrated.&lt;&#x2F;p&gt;
&lt;p&gt;&quot;Fill them both this time, but walk slowly,&quot; the teacher instructed.&lt;&#x2F;p&gt;
&lt;p&gt;Svetaketu returned to the river, filled both pots, and walked carefully back. Not a drop was spilled, but it took him much longer.&lt;&#x2F;p&gt;
&lt;p&gt;&quot;Master, this makes no sense. When should I hurry and when should I go slowly?&quot;&lt;&#x2F;p&gt;
&lt;p&gt;The sage gestured toward a nearby tree. &quot;Watch the river flow around that fallen log. Does it struggle and splash trying to move the obstacle? Or does it simply find its way around?&quot;&lt;&#x2F;p&gt;
&lt;p&gt;&quot;It flows around naturally,&quot; Svetaketu observed.&lt;&#x2F;p&gt;
&lt;p&gt;&quot;The river accomplishes its greatest work—carving valleys, nourishing fields, reaching the ocean—not through frantic effort, but through steady, persistent flow. It never stops, never wastes energy fighting what cannot be moved, and always finds the most natural path.&quot;&lt;&#x2F;p&gt;
&lt;p&gt;The teacher continued: &quot;True productivity, my student, is not the frenzy of activity, but the wisdom of right action. Like the river, focus not on doing more, but on flowing naturally toward what truly matters. The one who understands this accomplishes everything without exhaustion, just as the sun rises each day without strain.&quot;&lt;&#x2F;p&gt;
&lt;p&gt;Svetaketu bowed, finally understanding that the greatest achievements come not from forcing outcomes, but from aligning one&#x27;s efforts with the natural order of things—working with purpose, patience, and wisdom rather than mere speed.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>How I use automation</title>
        <published>2025-05-28T00:00:00+00:00</published>
        <updated>2025-05-28T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0172-how-i-use-automation/"/>
        <id>https://daily.himvis.com/0172-how-i-use-automation/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0172-how-i-use-automation/">&lt;p&gt;I always look for repeating tasks in my daily life, if I am repeatedly typing a command several times a day
then I try to create aliases e.g. &#x27;e&#x27; for my editor of choice, it is much faster to type single letter than full editor
name. Autosuggestions, enabling command history, auto-completions are all kind of automations I use.&lt;&#x2F;p&gt;
&lt;p&gt;Some tasks are serially repeated e.g. compile, build image, test the image. These can be automated using scripts&lt;&#x2F;p&gt;
&lt;p&gt;Updating checkouts of all the projects that I am working on, is automated using systemd timers.&lt;&#x2F;p&gt;
&lt;p&gt;As a maintainer, I have several processes to process patches from developers, e.g. using patchwork tool commandline
interface to fetch the patches and update the status of the patches as they progress through my pipeline, all these
operations are done through single scripts e.g. a &lt;code&gt;meta git push&lt;&#x2F;code&gt; operation which pushes the changes to several
different branches and repository forks.&lt;&#x2F;p&gt;
&lt;p&gt;Automation helps a lot with clearing my mind of disruptions and focus on larger problem at hand&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Emacs - Software maintained for 50 years</title>
        <published>2025-05-27T00:00:00+00:00</published>
        <updated>2025-05-27T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0171-emacs-software-maintained-for-50-years/"/>
        <id>https://daily.himvis.com/0171-emacs-software-maintained-for-50-years/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0171-emacs-software-maintained-for-50-years/">&lt;p&gt;Emacs is a text editor and began its development in 1970s ( released in 1976 )
One reason that paved its way all along is its extensibility architecture&lt;&#x2F;p&gt;
&lt;p&gt;Emacs is built around a Lisp interpreter, making it less of a text editor and more of a programmable computing environment. Users can modify virtually any behavior, add new features, or completely transform the interface without touching the core. This means Emacs can evolve to meet new needs without requiring fundamental rewrites - it adapts rather than becomes obsolete.&lt;&#x2F;p&gt;
&lt;p&gt;The community continuously extends Emacs through packages and configurations. When new programming languages, workflows, or computing paradigms emerge, Emacs users create packages to support them. This distributed innovation means Emacs stays relevant across technological shifts - from terminal computing to GUI environments to modern web development.&lt;&#x2F;p&gt;
&lt;p&gt;A software that is not easily modifiable become stale sooner than we can imagine.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Software engineering Principles for long term</title>
        <published>2025-05-22T00:00:00+00:00</published>
        <updated>2025-05-22T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0170-software-engineering-principles-for-long-term/"/>
        <id>https://daily.himvis.com/0170-software-engineering-principles-for-long-term/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0170-software-engineering-principles-for-long-term/">&lt;p&gt;Here are some key principles for long-term planning in software engineering:&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Think in systems, not just features.&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; Design your architecture to be modular and extensible from the start,
anticipating that requirements will evolve and new integrations will be needed.
What seems like a simple feature today often becomes the foundation for complex
workflows tomorrow.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Invest heavily in developer experience and tooling.&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; The time spent building robust CI&#x2F;CD pipelines,
comprehensive testing frameworks, and clear documentation pays exponential dividends as your team and
codebase grow. These investments compound over months and years.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Plan for technical debt as a budget item, not an afterthought.&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; Allocate 15-20% of development time
specifically for refactoring, upgrading dependencies, and addressing architectural concerns.
Technical debt that goes unaddressed doesn&#x27;t disappear—it grows with interest.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Build observability into everything from day one.&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; Logging, monitoring, and tracing aren&#x27;t features
you can easily retrofit. Systems that can&#x27;t be observed can&#x27;t be debugged, optimized, or scaled effectively.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Design for the team you&#x27;ll have, not the team you have now.&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; Code that makes sense to your current
three-person team may be incomprehensible to the fifteen-person team you&#x27;ll have next year. Prioritize
clarity, consistency, and comprehensive onboarding materials.&lt;&#x2F;p&gt;
&lt;p&gt;The hardest part of long-term planning isn&#x27;t predicting the future—it&#x27;s building systems
resilient enough to adapt when your predictions inevitably prove wrong.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Open Source mindset is for long term</title>
        <published>2025-05-21T00:00:00+00:00</published>
        <updated>2025-05-21T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0169-open-source-mindset-is-for-long-term/"/>
        <id>https://daily.himvis.com/0169-open-source-mindset-is-for-long-term/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0169-open-source-mindset-is-for-long-term/">&lt;p&gt;Software products of today have 70% open-source components in them according to &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.linuxfoundation.org&#x2F;blog&#x2F;blog&#x2F;a-summary-of-census-ii-open-source-software-application-libraries-the-world-depends-on&quot;&gt;this report&lt;&#x2F;a&gt;. I encounter this commonly where a business leader says, they want to
use open-source because they do not want to pay for proprietary software. While open-source
will surely reduce the costs that is not the only value open source offers. You can reduce
the cost by buying alternative products, they do not have to be open source.&lt;&#x2F;p&gt;
&lt;p&gt;There is a need to have a mindset shift towards value of open-source, Long term, cost of
maintaining software outweighs the cost of procuring&#x2F;producing it and that is where open
source excels by having strong communities to rely on for developing new talent and support&lt;&#x2F;p&gt;
&lt;p&gt;Contributing to open-source that you use can be part of long term strategy, that will
help influence the software roadmap, hire the best talent, many contributors see open-source community
participation as vital part of their package.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;daily.bec-systems.com&#x2F;0171-what-ai-is-good-for&#x2F;&quot;&gt;&quot;Code is a liability, not an asset. Aim to have as little of it as possible.&quot;&lt;&#x2F;a&gt;
long term plan to not own code is a winning strategy and open-source development is the best process
to do it.&lt;&#x2F;p&gt;
&lt;p&gt;Ultimately, open-source is not just a mechanism for reducing cost, it is much more than that, enables
innovation, hones talent, builds supply chain resilience&lt;&#x2F;p&gt;
&lt;p&gt;Remember, there are no free lunches.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>👓Short-Term vs. Long-Term Vision</title>
        <published>2025-05-20T00:00:00+00:00</published>
        <updated>2025-05-20T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0168-short-term-vs-long-term-vision/"/>
        <id>https://daily.himvis.com/0168-short-term-vs-long-term-vision/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0168-short-term-vs-long-term-vision/">&lt;p&gt;The Lumière brothers&#x27; Cinématographe was a marvel creation of the time, it could be used as camera, printer, and projector
Unlike Edison&#x27;s Kinetoscope, which was a peep-show device for individual viewing, the Cinématographe projected images
onto a screen, enabling shared public experiences&lt;&#x2F;p&gt;
&lt;p&gt;The Lumière brothers themselves had a somewhat limited view of cinema&#x27;s long-term potential.
Louis Lumière famously believed cinema was &quot;an invention without a future&quot; and considered it a
temporary novelty. They eventually withdrew from the film exhibition business&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🗣 Effective Technical Leader</title>
        <published>2025-05-19T00:00:00+00:00</published>
        <updated>2025-05-19T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0167-technical-leaders/"/>
        <id>https://daily.himvis.com/0167-technical-leaders/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0167-technical-leaders/">&lt;p&gt;Technical leaders bridge the gap between high-level business strategy and
technical execution, guiding development teams while providing technical
expertise&lt;&#x2F;p&gt;
&lt;p&gt;The most effective technical leaders combine deep technical expertise with strong
communication skills and business acumen, enabling them to make decisions that
balance technical excellence with practical business outcomes.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Complex Vs simple</title>
        <published>2025-05-15T00:00:00+00:00</published>
        <updated>2025-05-15T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0166-complex-vs-simple/"/>
        <id>https://daily.himvis.com/0166-complex-vs-simple/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0166-complex-vs-simple/">&lt;p&gt;Its easy to create complexity, Its hard to keep simplicity&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Writing for future</title>
        <published>2025-05-14T00:00:00+00:00</published>
        <updated>2025-05-14T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0165-writing-for-future/"/>
        <id>https://daily.himvis.com/0165-writing-for-future/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0165-writing-for-future/">&lt;p&gt;I use to write letters ( well email drafts ) for my children which they can read on
their birthday, when they become same age when I wrote that letter.&lt;&#x2F;p&gt;
&lt;p&gt;I think, they are a good snapshot of time and my thought process of that time combined
with my experiences and other external factors.&lt;&#x2F;p&gt;
&lt;p&gt;Fluidity of time and self which keeps changing all the time.
I am hoping that it will be a different way to connect with them in future. Maybe I should
upgrade to making video memos :)&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Email Aliases</title>
        <published>2025-05-13T00:00:00+00:00</published>
        <updated>2025-05-13T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0164-email-aliases/"/>
        <id>https://daily.himvis.com/0164-email-aliases/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0164-email-aliases/">&lt;p&gt;We use email aliases for various reasons. A single person company
may have info@company.com, support@company.com and so on all redirected
to same person, however, it sets a different kind of expectation in
the mind of sender when its an alias or workgroup than an individual
email address. This can help get more objective answers and morever
aligned expectations.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🦥Slow and steady</title>
        <published>2025-05-12T00:00:00+00:00</published>
        <updated>2025-05-12T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0163-slow-and-steady/"/>
        <id>https://daily.himvis.com/0163-slow-and-steady/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0163-slow-and-steady/">&lt;p&gt;Everyone has different writing habits, some write for long hours
and some write in short stints. Some work early hours and some work
in breaks. If we look at some of great work
there is no single method that works better than others.&lt;&#x2F;p&gt;
&lt;p&gt;What they all do in common - &quot;Focus&quot;, degree of focus may vary but
focus is key element of all good work.&lt;&#x2F;p&gt;
&lt;p&gt;&quot;Good-enough&quot; is better than perfect. The schedules might vary, but
they all deliver on certain schedule.&lt;&#x2F;p&gt;
&lt;p&gt;We can hustle but &quot;Steady&quot; is important to produce quality work,
if we write for 5 minutes daily, that is 30 minutes in a week
and 25 hours in a year. One can write a lot in 25 hours.&lt;&#x2F;p&gt;
&lt;p&gt;Ultimately, quality of work is important and that is how a piece of
work will be measured in the end.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🍻Pair programming</title>
        <published>2025-05-08T00:00:00+00:00</published>
        <updated>2025-05-08T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0162-pair-programming/"/>
        <id>https://daily.himvis.com/0162-pair-programming/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0162-pair-programming/">&lt;p&gt;Pair programming is quite effective way to produce high quality code and reduce number
of bugs. It also results in knowledge sharing and team bonding. It is particularly useful
for onboarding new members on team.&lt;&#x2F;p&gt;
&lt;p&gt;Challenges are in finding compatible pairs, communication skills, mental fatigue due
to prolonged sessions. We can use screen sharing, collaborative editors, videos to reduce
need for being in same location.&lt;&#x2F;p&gt;
&lt;p&gt;With AI chatbots like Gemini, chatGPT, etc. we can use them as pair programming partners
or perhaps sounding boards for ideas, a lot of times, we meet with a friend of colleague
to brainstorm ideas, LLMs can be good at that sort of discussions.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🧑‍Learn from others&#x27; code</title>
        <published>2025-05-07T00:00:00+00:00</published>
        <updated>2025-05-07T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0161-learn-from-others-code/"/>
        <id>https://daily.himvis.com/0161-learn-from-others-code/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0161-learn-from-others-code/">&lt;p&gt;Learning by doing is definitely effective way to learn coding,
by reading code can offer another way to learn things a bit faster
In Open Source era its possible for all.&lt;&#x2F;p&gt;
&lt;p&gt;Read high-quality open source:
Projects e.g. Linux kernel if wanting to
learn system programming or C language. Home-assistant for python. There
are a lot of good projects a click away.&lt;&#x2F;p&gt;
&lt;p&gt;Study how experienced developers structure their code:
follow pull requests and see how seasoned developers are working
through their changesets as they make it ready for accepting in project&lt;&#x2F;p&gt;
&lt;p&gt;Contribute to open source to get feedback on your work:
Fix small things in a project you are studying and send the
code upstream, the reviews will teach you a lot.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🦘Overcoming Learning Plateau</title>
        <published>2025-05-06T00:00:00+00:00</published>
        <updated>2025-05-06T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0160-overcoming-learning-plateau/"/>
        <id>https://daily.himvis.com/0160-overcoming-learning-plateau/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0160-overcoming-learning-plateau/">&lt;p&gt;In order to overcome a learning plateau, a concious effort is required, some
ways could be&lt;&#x2F;p&gt;
&lt;p&gt;Break the monotony: Trying different learning resources, change in schedules, locations
using new tools can help, novelty can re-engage the brain&lt;&#x2F;p&gt;
&lt;p&gt;Break into chunks: You might be going through the motions and lacking focus on improving
specifics. Breaking down complex learnings into small pieces makes it easy to identify
focus areas.&lt;&#x2F;p&gt;
&lt;p&gt;Reset goals: Having new targets can provided needed clarity of direction and renew motivation&lt;&#x2F;p&gt;
&lt;p&gt;Feedback&#x2F;mentorship: Ask for feedback from friends, peers or trainers, engage with mentors and
ask for constructive criticism&lt;&#x2F;p&gt;
&lt;p&gt;Growth mindset: Abilities can be developed with dedication and hard-work, such a frame of mind
can help to see the plateau as an obstracle on the way and opportunity to learn&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🏴󠁢󠁪󠁰󠁬󠁿Reaching Learning Plateau</title>
        <published>2025-05-05T00:00:00+00:00</published>
        <updated>2025-05-05T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0159-reaching-learning-plateau/"/>
        <id>https://daily.himvis.com/0159-reaching-learning-plateau/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0159-reaching-learning-plateau/">&lt;p&gt;Skill acquisition process invariably hits a phase where progress seems to flatten out. It can be
frustrating and lead to lower motivation. Hitting a plateau is a normal part of learning though.
One must find strategies to overcome it.&lt;&#x2F;p&gt;
&lt;p&gt;Common Factors&lt;&#x2F;p&gt;
&lt;p&gt;Initial progress is rapid as basics are learned, but further improvements require focussing on
unexplored or nuanced or conflicted aspects. It can slow down the learning pace.&lt;&#x2F;p&gt;
&lt;p&gt;If learning becomes too easy, progress can stall due to lack of challenge&lt;&#x2F;p&gt;
&lt;p&gt;Using same technique for learning different things can lead to poor results&lt;&#x2F;p&gt;
&lt;p&gt;Intense learning regimen can lead to burnout and fatigue where it becomes hard to focus
and absorb new information&lt;&#x2F;p&gt;
&lt;p&gt;Fear, Uncertainty and Self-Doubt ( FUD ) can be detrimental to learning progress&lt;&#x2F;p&gt;
&lt;p&gt;Lack of feedback&#x2F;guidance can slow down as well, since it can help in prioritizing the focus
areas.&lt;&#x2F;p&gt;
&lt;p&gt;It needs deliberate effort to overcome these plateaus and regain the momentum.&lt;&#x2F;p&gt;
&lt;p&gt;We will discuss some strategies next time ..&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🐛 Tips for Effective Debugging</title>
        <published>2025-05-01T00:00:00+00:00</published>
        <updated>2025-05-01T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0158-tips-for-effective-debugging/"/>
        <id>https://daily.himvis.com/0158-tips-for-effective-debugging/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0158-tips-for-effective-debugging/">&lt;p&gt;Take notes as you debug to avoid repeating steps&lt;&#x2F;p&gt;
&lt;p&gt;Change one thing at a time to clearly observe effects&lt;&#x2F;p&gt;
&lt;p&gt;Document your findings even if they&#x27;re negative&lt;&#x2F;p&gt;
&lt;p&gt;Take breaks to allow your mind to process subconsciously&lt;&#x2F;p&gt;
&lt;p&gt;Ask for help when stuck - fresh eyes often see what you miss&lt;&#x2F;p&gt;
&lt;p&gt;Question assumptions about how the code should work&lt;&#x2F;p&gt;
&lt;p&gt;Focus on facts, not theories, until you have evidence&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🌡️ Measure</title>
        <published>2025-04-30T00:00:00+00:00</published>
        <updated>2025-04-30T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0157-measure/"/>
        <id>https://daily.himvis.com/0157-measure/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0157-measure/">&lt;p&gt;Peter Drucker said &quot;What gets measured gets managed&quot;, it means
if you want to improve something, you need to measure it and track its progress
By tracking progress, you can learn from your successes and failures, refining your approach over time.&lt;&#x2F;p&gt;
&lt;p&gt;Beware of overdoing it though&lt;&#x2F;p&gt;
&lt;p&gt;Focusing too much on specific metrics can lead to unintended consequences, such as prioritizing quantity over quality
inaccurate measurement can lead you astray, context might get you sidelined if it is not inline with business objectives&lt;&#x2F;p&gt;
&lt;p&gt;That is why I take micro benchmarks with a grain on salt&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>🐸Distro hopping</title>
        <published>2025-04-29T00:00:00+00:00</published>
        <updated>2025-04-29T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0156-distro-hopping/"/>
        <id>https://daily.himvis.com/0156-distro-hopping/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0156-distro-hopping/">&lt;p&gt;There are a plethora of Linux based Operating systems out there, each
one has some unique characteristics, largely they are doing similar
things. Linux distributions are just an example, this occurs in every walk
of life, you are surrounded with choices.
You might be tempted to try one after the other, which is
ok initially, however, if it is a constant churn, you may end up with
disruptions and derail productivity.&lt;&#x2F;p&gt;
&lt;p&gt;Should you just not hop distros ? Answer is not &quot;don&#x27;t do it&quot;, but know what
outcome you are looking for.&lt;&#x2F;p&gt;
&lt;p&gt;Discovering a better tool, a better workflow, Serene graphics etc.
If it incrementally adds to the toolbox, and thoughtfully adding removing
tools, tweaking processes, this is immensely helpful in adapting to
growing changes in your area of work or personal learning.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>📋 Hidden advantage of writing down task lists</title>
        <published>2025-04-28T00:00:00+00:00</published>
        <updated>2025-04-28T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0155-hidden-advantage-of-writing-down-todo-lists/"/>
        <id>https://daily.himvis.com/0155-hidden-advantage-of-writing-down-todo-lists/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0155-hidden-advantage-of-writing-down-todo-lists/">&lt;p&gt;We receive tasks, Action items over emails, meetings, phone calls
it is important to process them into a dedicated list using
some software tools like Trello or even simple lists work. If we
try to remember them in active memory, we are bound to forget
some, have unprocessed information, suc📋h half cooked information
causes huge amount of stress.&lt;&#x2F;p&gt;
&lt;p&gt;Act of writing it down, actively offloads it and organizes into
a list with a pointer marked in memory, It reduces stress and
gives you objective view of your task lists at hand.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Easy vs simple</title>
        <published>2025-04-25T00:00:00+00:00</published>
        <updated>2025-04-25T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0154-easy-vs-simple/"/>
        <id>https://daily.himvis.com/0154-easy-vs-simple/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0154-easy-vs-simple/">&lt;p&gt;Easy is not simple, sometimes we think doing same task again and again is simple but actually its not
It has to have very small cognitive overload to do, you can do new things without jumping many hoops.
Something is easy because its close by, it still eat up the cycles like it did last time, so its easy
but not simple.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Quick builds</title>
        <published>2025-04-24T00:00:00+00:00</published>
        <updated>2025-04-24T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0153-quick-builds/"/>
        <id>https://daily.himvis.com/0153-quick-builds/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0153-quick-builds/">&lt;p&gt;We are always looking for a quick feedback cycles, Software builds are
one aspect where productivity is greatly enhanced with reduced build
time. Software however has been exploding in past couple of decades, which
means it takes longer to build. Hardware has been getting faster too, but
software is leaving it behind.&lt;&#x2F;p&gt;
&lt;p&gt;Software in future can not be built monolithic, it will not scale.&lt;&#x2F;p&gt;
&lt;p&gt;Independent Components which can be built and tested and distributed on its own
can help and no I do not mean use docker to distribute every little app.&lt;&#x2F;p&gt;
&lt;p&gt;Components themselves have to be more granular with their dependencies and be
able to consume the dependencies in binary form.&lt;&#x2F;p&gt;
&lt;p&gt;Components have to make incremental builds as first class citizens. One line change
in a source file should recompile just one file and incrementally link with already
semi-prelinked libraries and be able to assemble into a payload that can run on
a pre-built OS.&lt;&#x2F;p&gt;
&lt;p&gt;Build from source should be first class citizen, but it should be on demand. Defaults
should be to consume built artifacts.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Which Open Source project will succeed</title>
        <published>2025-04-23T00:00:00+00:00</published>
        <updated>2025-04-23T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0152-which-open-source-project-will-succeed/"/>
        <id>https://daily.himvis.com/0152-which-open-source-project-will-succeed/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0152-which-open-source-project-will-succeed/">&lt;p&gt;One who solves Real Problems and Delivers Continuous Value thrive&lt;&#x2F;p&gt;
&lt;p&gt;Sometimes we hear an open source project started because the developer wanted
to address own itch. Under the hood, it is driven with solving a problem&lt;&#x2F;p&gt;
&lt;p&gt;Successful open source projects address a genuine need or solve a significant problem
for a defined user base. This inherent utility attracts initial users and developers
who are motivated by the software&#x27;s value.&lt;&#x2F;p&gt;
&lt;p&gt;Successful projects consistently deliver updates, fix bugs, and evolve to meet the
changing needs of their users. This continuous delivery of value keeps the project
relevant and encourages ongoing engagement from both users and contributors.
Stagnating projects, on the other hand, may have unclear goals, fail to maintain the
software, or no longer align with user requirements, causing users and potential
contributors to look for alternatives.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>📝Writing Reviews</title>
        <published>2025-04-22T00:00:00+00:00</published>
        <updated>2025-04-22T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0151-writing-reviews/"/>
        <id>https://daily.himvis.com/0151-writing-reviews/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0151-writing-reviews/">&lt;p&gt;We come across reviews on lot of services, maps, travel websites, restaurants, airlines. One
change among others that internet has made easy to do is write reviews. It is compounded by
social media platforms to provide the reach.&lt;&#x2F;p&gt;
&lt;p&gt;Writing good and effective reviews can be powerful in making the change in the service
or product one is interacting with. In one scenario, you had an awesome experience therefore you wrote
a review, but most reviews are written when product or service does not live up to expectation.
It is challenging to remain objective in such situations, however effectiveness of review will depend
upon how informative and insightful the review is. Being specific, honest, friendly, and describing likely outcomes
that others are bound to experience if the situation is not changed. Highlighting uniqueness
or your personal experience can be very informative to others.&lt;&#x2F;p&gt;
&lt;p&gt;Take a break, distance yourself from the experience and then write the review&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Iterative development</title>
        <published>2025-04-21T00:00:00+00:00</published>
        <updated>2025-04-21T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0150-iterative-development/"/>
        <id>https://daily.himvis.com/0150-iterative-development/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0150-iterative-development/">&lt;p&gt;A seemingly small error in steering direction at origin San Francisco, if not corrected,
a ship headed to Hawaii can end up in Japan, with time the distance error keeps getting larger.
Similar things can be seen in Software development when monolithic development happens one wrong
variable can change the product significantly, so getting timely feedback and incorporating it
can act as much-needed offset.&lt;&#x2F;p&gt;
&lt;p&gt;The iterative approach in software development empowers teams to build complex systems incrementally.
By breaking down the project into smaller, manageable iterations, developers can deliver working
software frequently, gather valuable feedback along the way, and adapt to evolving requirements.
This cyclical process of planning, designing, building, testing, and evaluating fosters continuous improvement,
reduces risks associated with large, monolithic development cycles, and ultimately leads to a more robust
and user-centric product. Each iteration adds tangible value, ensuring the project stays aligned with
stakeholder needs and market demands.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Ritual of making tea</title>
        <published>2025-04-18T00:00:00+00:00</published>
        <updated>2025-04-18T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0149-ritual-of-making-tea/"/>
        <id>https://daily.himvis.com/0149-ritual-of-making-tea/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0149-ritual-of-making-tea/">&lt;p&gt;This year I wanted to reduce&#x2F;eliminate caffeine intake. My major sources were
coffees and tea that I would have daily. One of hardest thing to do is to break
a habit. I could drop few cups with a lot of struggle until mind would come back
with vengeance. I did see that it is not the coffee or tea but the process of making
the tea, which you are used to as well. So a fix was to still follow the process
of making a tea, same rituals, but use herbal tea instead. This worked !!&lt;&#x2F;p&gt;
&lt;p&gt;Surprisingly, its April and new year resolution is still holding up :)&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Congnitive Overload</title>
        <published>2025-04-17T00:00:00+00:00</published>
        <updated>2025-04-17T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0148-congnitive-overload/"/>
        <id>https://daily.himvis.com/0148-congnitive-overload/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0148-congnitive-overload/">&lt;p&gt;Too much information and all at once overwhelms us.&lt;&#x2F;p&gt;
&lt;p&gt;While it can push your learning limits and promote deeper processing if managed
It hinders learning, decision-making, increases error rate, and stress&lt;&#x2F;p&gt;
&lt;p&gt;Being selective about information one wants to consume, can be helpful.
It is similar to physical diet planning&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Git branches</title>
        <published>2025-04-16T00:00:00+00:00</published>
        <updated>2025-04-16T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0147-git-branches/"/>
        <id>https://daily.himvis.com/0147-git-branches/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0147-git-branches/">&lt;p&gt;Do you know how expensive is a git branch ?&lt;&#x2F;p&gt;
&lt;p&gt;It is around 50 bytes.&lt;&#x2F;p&gt;
&lt;p&gt;A branch is simply just a pointer to a specific commit.
When you create a new branch, Git doesn&#x27;t copy all the files or the
entire history. It simply creates a new pointer that initially
points to the same commit your current branch is on.&lt;&#x2F;p&gt;
&lt;p&gt;Imagine a book with many bookmarks. Each bookmark represents a branch,
and it points to a specific page (commit). Adding a new bookmark is a
very quick and inexpensive operation.&lt;&#x2F;p&gt;
&lt;p&gt;I use git branches to keep work-in-progress activity, in commits
add notes to remember the context&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Long term productivity</title>
        <published>2025-04-15T00:00:00+00:00</published>
        <updated>2025-04-15T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0146-long-term-productivity/"/>
        <id>https://daily.himvis.com/0146-long-term-productivity/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0146-long-term-productivity/">&lt;p&gt;Initial ease is not a good indicator of long term productivity&lt;&#x2F;p&gt;
&lt;p&gt;Overtime systems are bound to get complicated as complexity unfolds&lt;&#x2F;p&gt;
&lt;p&gt;Upfront costs for a system that saves you long term grind could save
you money.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Learnings of Open-source maintainer - Geist</title>
        <published>2025-04-14T00:00:00+00:00</published>
        <updated>2025-04-14T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0145-learnings-of-open-source-maintainer-geist/"/>
        <id>https://daily.himvis.com/0145-learnings-of-open-source-maintainer-geist/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0145-learnings-of-open-source-maintainer-geist/">&lt;p&gt;Past few posts has been about certain qualities found in good maintainers of
Open-Source software. If we zoom out, as we see these qualities from a broader
application we can start making connections to other aspects of life where
these qualities are essential. Working on making improvements on them is going
to help not only the software maintenance but also your own life experience.&lt;&#x2F;p&gt;
&lt;p&gt;So become a maintainer of your lived experiences.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Learnings of Open-source maintainer - Communication 📡</title>
        <published>2025-04-11T00:00:00+00:00</published>
        <updated>2025-04-11T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0144-learnings-of-open-source-maintainer-communication/"/>
        <id>https://daily.himvis.com/0144-learnings-of-open-source-maintainer-communication/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0144-learnings-of-open-source-maintainer-communication/">&lt;p&gt;Of all the maintainer qualities we have discussed, communication is the most important.&lt;&#x2F;p&gt;
&lt;p&gt;When there are conflicts - clear communication can help resolve it.&lt;&#x2F;p&gt;
&lt;p&gt;When constructive feedback is required on a change - Clear communication can make it happen without derailing.&lt;&#x2F;p&gt;
&lt;p&gt;When something needs to be delegated - precise communication can keep it crisp.&lt;&#x2F;p&gt;
&lt;p&gt;When re-iterating project vision - wellformed communication can help.&lt;&#x2F;p&gt;
&lt;p&gt;When discussing goal and timelines - Accurate communication would be helpful&lt;&#x2F;p&gt;
&lt;p&gt;This is the most important skill and good news is it can be developed.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Learnings of Open-source maintainer - Consistency</title>
        <published>2025-04-10T00:00:00+00:00</published>
        <updated>2025-04-10T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0143-learnings-of-open-source-maintainer-consistency/"/>
        <id>https://daily.himvis.com/0143-learnings-of-open-source-maintainer-consistency/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0143-learnings-of-open-source-maintainer-consistency/">&lt;p&gt;Being a maintainer is not leading from front but its about being there
A community can rely upon the maintainer so
Regular availability is very important, There are different styles, some
like IRC, some are consistent with emails on mailing lists and some hold
office hours, some have regular open calls with developers etc.&lt;&#x2F;p&gt;
&lt;p&gt;They are highly reliable in maintaining the project&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Learnings of Open-source maintainer - Time management</title>
        <published>2025-04-09T00:00:00+00:00</published>
        <updated>2025-04-09T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0142-learnings-of-open-source-maintainer-time-management/"/>
        <id>https://daily.himvis.com/0142-learnings-of-open-source-maintainer-time-management/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0142-learnings-of-open-source-maintainer-time-management/">&lt;p&gt;Maintenance involves many tasks, and it might not be your only responsibility
More often maintainers take the role because they like it, and it is part of
their hobby or time outside other responsibilities like day job which pays
the bills.&lt;&#x2F;p&gt;
&lt;p&gt;Balancing maintenance with other responsibilities is an important measure
of how good of a maintainer one can be.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Learnings of Open-source maintainer - Vision</title>
        <published>2025-04-08T00:00:00+00:00</published>
        <updated>2025-04-08T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0141-learnings-of-open-source-maintainer-vision/"/>
        <id>https://daily.himvis.com/0141-learnings-of-open-source-maintainer-vision/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0141-learnings-of-open-source-maintainer-vision/">&lt;p&gt;Among all conflicting asks on project maintainers, they have to keep
an eye beyond the horizon. Software projects are like flowing river
they keep moving forward with the help of contributions. The path
the project charters along is guided by decisions that maintainers along
with the community make. Think of Linux kernel project accepting rust
programming language as an option, such decisions are made to keep
future in mind, they may create a bit of upheaval in present and many
community members may see it as distraction. Sometimes unpopular
decisions must be taken by maintainers to shape the future and hope
it turns out as expected.&lt;&#x2F;p&gt;
&lt;p&gt;Guiding the project&#x27;s evolution while respecting its core purpose
and not ignoring what came before them is a core virtue of a maintainer.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Learnings of Open-source maintainer - Resilience</title>
        <published>2025-04-07T00:00:00+00:00</published>
        <updated>2025-04-07T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0140-learnings-of-open-source-maintainer-resilience/"/>
        <id>https://daily.himvis.com/0140-learnings-of-open-source-maintainer-resilience/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0140-learnings-of-open-source-maintainer-resilience/">&lt;p&gt;If there is a security flaw in the project you maintain you are in hot seat
There are certain directions that are being pursued for project and are
being criticized. Community wants to utilize new tools and pushing you
towards making the decision. Don&#x27;t get me wrong it is a thankless job (most of the time)&lt;&#x2F;p&gt;
&lt;p&gt;Handling criticism and project challenges without burning out is the key&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Learnings of Open-source maintainer - Empathy</title>
        <published>2025-04-04T00:00:00+00:00</published>
        <updated>2025-04-04T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0139-learnings-of-open-source-maintainer-empathy/"/>
        <id>https://daily.himvis.com/0139-learnings-of-open-source-maintainer-empathy/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0139-learnings-of-open-source-maintainer-empathy/">&lt;p&gt;People join a community to have good experience and learn, if they do not see
the value for time, sooner or later they will leave the project eventually. It
is therefore important to understand contributors&#x27; perspectives and create
a welcoming environment.&lt;&#x2F;p&gt;
&lt;p&gt;Often times maintainers are seasoned developers, it is easy to forget the
newbie experience once they might have had. However, with fresher&#x27;s mindset
maintainers can easily navigate the problems a new contributor might be
having and lend a helping hand. This will help in nurturing a community
that ultimately will cradle the project.&lt;&#x2F;p&gt;
&lt;p&gt;Empathy helps in building a healthier, more collaborative, and
ultimately more successful open-source project by fostering strong
relationships within the community and ensuring the project effectively
serves its users.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Learnings of Open-source maintainer - Conflict resolution</title>
        <published>2025-04-03T00:00:00+00:00</published>
        <updated>2025-04-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0138-learnings-of-open-source-maintainer-conflict-resolution/"/>
        <id>https://daily.himvis.com/0138-learnings-of-open-source-maintainer-conflict-resolution/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0138-learnings-of-open-source-maintainer-conflict-resolution/">&lt;p&gt;In healthy communities, there is momentum and members are passionate to make contributions to effect change.
It often involves diverse contributors with varying opinions and approaches. This can lead to conflicts.
These could be due to design changes being proposed, Implementation details, different developers solving similar problem using
different methods. There has to be an effective way to handle conflicts in timely fashion, stalemates are bad
and hinder projects progress and can drive users away from projects.&lt;&#x2F;p&gt;
&lt;p&gt;So conflict resolution strategies are important, some common ones are&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Code of conduct enforcement:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; provides a clear framework for addressing unacceptable behavior, promoting a more inclusive and respectful environment.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Consensus-Building and Voting:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; Contributors engage in discussions using mailing lists, issue trackers, Pull Requests reviews, forums, if consensus can not be reached then voting maybe held.
PR reviews can help make the conflicts granular and help solve.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Mediation:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; Mediation by experienced and respected members of the community with certain social skills can sometimes help, they may not be maintainers, but an effective
maintainer would know when to seek out such help.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Documentations:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; Clearly documentation reduces ambiguity and helps in conflict prevention. CONTRIBUTING.md file can be used for decision-making process outline and set correct expectations.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Piece-mealing changes:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; Offer gradual integration process e.g. &lt;code&gt;next&lt;&#x2F;code&gt; branch etc.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Forking:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; I think this is last resort. Sometimes that is the only way to move forward at the cost of fragmentation. Sometimes fragmentation can spark more innovation, you never know.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Learnings of Open-source maintainer - Decision-making</title>
        <published>2025-04-02T00:00:00+00:00</published>
        <updated>2025-04-02T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0137-learnings-of-open-source-maintainer-decision-making/"/>
        <id>https://daily.himvis.com/0137-learnings-of-open-source-maintainer-decision-making/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0137-learnings-of-open-source-maintainer-decision-making/">&lt;p&gt;On average We make &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;hbr.org&#x2F;2023&#x2F;12&#x2F;a-simple-way-to-make-better-decisions&quot;&gt;33000 to 35000&lt;&#x2F;a&gt; daily, some of them
conscious and some subconscious. A sheer volume of decisions to make can lead to fatigue and make it hard to choose even
simple choices. Some of the decisions are trivial and some might be more significant.&lt;&#x2F;p&gt;
&lt;p&gt;Open Source maintainers are faced with tough decisions more frequently than normal developers.
A conflicting feature is proposed, There is a flame-war over a spaces Vs tabs or language runtimes
a change is trivial but hard to test. Push back on a completely valid change due to project strategy,
Release is broken, hold it or ship it. New technology is looming, adopt it or leave it etc. etc.&lt;&#x2F;p&gt;
&lt;p&gt;A project&#x27;s success will substantially depend a lot on decision-making capabilities of its maintainers.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Learnings of Open-source maintainer - Patience</title>
        <published>2025-04-01T00:00:00+00:00</published>
        <updated>2025-04-01T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0136-learnings-of-open-source-maintainer-patience/"/>
        <id>https://daily.himvis.com/0136-learnings-of-open-source-maintainer-patience/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0136-learnings-of-open-source-maintainer-patience/">&lt;p&gt;Project maintainer&#x27;s have to wear multiple hats. Successful Open-Source projects
are managed by a healthy community. A healthy community must have steady infusion of new
members. Onboarding new member requires mentoring. Maintainers are experienced in
project and can be good mentors. Willingness to help newcomers and work through
the challenging they face could result in them sticking with the project and become
contributors and influence the project and who knows maybe future maintainers.&lt;&#x2F;p&gt;
&lt;p&gt;Mentoring requires patience.&lt;&#x2F;p&gt;
&lt;p&gt;Difficult problems could require more iterations to get the desired code quality and design
This means to keep working with contributors by giving them feedback and nudging them
in right direction to achieve the goal. This could be frustrating for contributors and
maintainers at the same time.&lt;&#x2F;p&gt;
&lt;p&gt;Reviewing&#x2F;guiding requires patience&lt;&#x2F;p&gt;
&lt;p&gt;It is a good virtue to work on.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Learnings of Open-source maintainer - Delegation</title>
        <published>2025-03-31T00:00:00+00:00</published>
        <updated>2025-03-31T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0135-learnings-of-open-source-maintainer-delegation/"/>
        <id>https://daily.himvis.com/0135-learnings-of-open-source-maintainer-delegation/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0135-learnings-of-open-source-maintainer-delegation/">&lt;p&gt;Open-Source have been a successful software development process in past few decades.
It is interesting to learn what goes on under the hood. A common role is a maintainer
or a team of maintainers at the helm of a project shephard&#x27;ing the code contributions
and guiding project evolution. A maintainer&#x27;s role is intersection of technological
prowess, leadership, mentor, manager, marketer, it requires some unique skills. I will
talk about some of the critical skills in the series that follow.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Delegation:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Delegation is something that is not easy skill, it makes one vulnerable as the trust is
delegated, authority is delegated, thereby your deliverables are not under your
control anymore. A lot of maintainer&#x27;s struggle with delegating because it is not an easy
skill.&lt;&#x2F;p&gt;
&lt;p&gt;Delegation is in nature. Living organisms delegate all the time, a single celled organisms
does everything by oneself, but multi-celled organisms have effective delegation mechanism
Similarly, if a project has to grow and scale, the maintainer&#x27;s have to device an effective
delegation mechanism.&lt;&#x2F;p&gt;
&lt;p&gt;One size does not fit all. So the delegation methods will vary from project to project
and maintainer to maintainer.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Piecemeal&#x27;ing code - part 4</title>
        <published>2025-03-28T00:00:00+00:00</published>
        <updated>2025-03-28T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0134-piecemeal-ing-code-part-4/"/>
        <id>https://daily.himvis.com/0134-piecemeal-ing-code-part-4/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0134-piecemeal-ing-code-part-4/">&lt;p&gt;In last few &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;daily.himvis.com&#x2F;0131-piecemeal-ing-code&#x2F;&quot;&gt;posts&lt;&#x2F;a&gt; &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;daily.himvis.com&#x2F;0132-piecemeal-ing-code-continued&#x2F;&quot;&gt;this&lt;&#x2F;a&gt; &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;daily.himvis.com&#x2F;0133-piecemeal-ing-code-part-3&#x2F;&quot;&gt;week&lt;&#x2F;a&gt; I talked about strategies around incrementally pushing code to large repositories with many contributors.&lt;&#x2F;p&gt;
&lt;p&gt;One mantra that helps to keep things in perspective is&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;tip of trunk should always be releasable&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Workout every needed tool, every criterion, every process backwards from here.
You will realize &lt;code&gt;piece-mealing&lt;&#x2F;code&gt; code is also an important cog in this wheel&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Piecemeal&#x27;ing code - part 3</title>
        <published>2025-03-27T00:00:00+00:00</published>
        <updated>2025-03-27T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0133-piecemeal-ing-code-part-3/"/>
        <id>https://daily.himvis.com/0133-piecemeal-ing-code-part-3/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0133-piecemeal-ing-code-part-3/">&lt;p&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;daily.himvis.com&#x2F;0132-piecemeal-ing-code-continued&#x2F;&quot;&gt;yesterday&lt;&#x2F;a&gt; we talked on feature flag strategy for code assimilation. One another strategy is refactoring if needed.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Prepare the Codebase:&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt; If the existing codebase is tightly coupled or difficult to work with, consider refactoring the relevant parts before integrating the new code. This can make the integration process smoother and reduce the risk of introducing bugs.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Piecemeal Refactoring too:&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt; Perform refactoring in small, incremental steps, ensuring that tests are run after each step to maintain functionality.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Piecemeal&#x27;ing code - continued</title>
        <published>2025-03-26T00:00:00+00:00</published>
        <updated>2025-03-26T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0132-piecemeal-ing-code-continued/"/>
        <id>https://daily.himvis.com/0132-piecemeal-ing-code-continued/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0132-piecemeal-ing-code-continued/">&lt;p&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;daily.himvis.com&#x2F;0131-piecemeal-ing-code&#x2F;&quot;&gt;yesterday&lt;&#x2F;a&gt; we talked on strategy around getting code assimilated into large
fast moving codebases with a lot of contributors. Strategy under discussion is about piece mealing the changesets
We will talk about some tricks to achieve this&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Feature Flags&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Control Rollout:&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt; Use feature flags to deploy the new code to production but keep it disabled for most users.
This allows for controlled rollout to a small subset of users for testing and feedback before making it widely available.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Easy Rollback:&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt; Feature flags provide a quick and easy way to disable or roll back the new functionality if any issues are discovered in production.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Piecemeal&#x27;ing code</title>
        <published>2025-03-25T00:00:00+00:00</published>
        <updated>2025-03-25T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0131-piecemeal-ing-code/"/>
        <id>https://daily.himvis.com/0131-piecemeal-ing-code/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0131-piecemeal-ing-code/">&lt;p&gt;Rarely do we write code from scratch these days. Systems are complex.
Often we instrument a feature requiring changes in more than one place
in the system&lt;&#x2F;p&gt;
&lt;p&gt;&quot;Piece-mealing&quot; is quite effective strategy for absorbing these changes
into the system codebase. First and foremost, it is additional to comprehensive
design thinking, it does not replace it but augment it. Once you are
ready to make changes this thinking forces you to organize the changes into
collection of small change-sets&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Changes that are enabling the feature but are inert otherwise&lt;&#x2F;li&gt;
&lt;li&gt;Those changes which can be tested together as a set, and regressed with the system&lt;&#x2F;li&gt;
&lt;li&gt;Changes interfacing with other systems&lt;&#x2F;li&gt;
&lt;li&gt;Feature itself&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;This can help make smaller digestible changes incrementally without destabilizing
the system&lt;&#x2F;p&gt;
&lt;p&gt;Yes there will be no big-bang and not many diving catches but isn&#x27;t that all we
aspire for ?&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Measure reuse</title>
        <published>2025-03-24T00:00:00+00:00</published>
        <updated>2025-03-24T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0130-measure-reuse/"/>
        <id>https://daily.himvis.com/0130-measure-reuse/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0130-measure-reuse/">&lt;p&gt;A good project design results in good parts of reuse in future projects.
It is carefully designed, a lot of thought is put into defining baseline
and building blocks. You have done everything that would make it a good
candidate for maximum reuse.&lt;&#x2F;p&gt;
&lt;p&gt;Second project happens and inches towards completion and it is time to
review and there is a feeling in room that it took too long, as if it
was designed ground up, we thought we will be able to reuse the baseline
set with first project.&lt;&#x2F;p&gt;
&lt;p&gt;What happened ?&lt;&#x2F;p&gt;
&lt;p&gt;We forget. So if it was not documented first time around the goal posts
will be shifted.&lt;&#x2F;p&gt;
&lt;p&gt;Did clear measure of reuse happen ?&lt;&#x2F;p&gt;
&lt;p&gt;Perhaps new problems got project stalled and perceptions changed ?&lt;&#x2F;p&gt;
&lt;p&gt;We get used to and easily forget the prior condition particularly if
it was worse, e.g. your build times were 18 hours which were reduced
to 3 hours, but now if adding new platform adds another hour, it may
be construed that build time is worsened by 1 hour. So objective
measurement is essential.&lt;&#x2F;p&gt;
&lt;p&gt;Reuse is not just material, i.e. source-code, it also is know-how,
processes. Did you consider this?&lt;&#x2F;p&gt;
&lt;p&gt;No one is having as much context as you if you were involved in first
project, its incumbent upon you to keep the teams informed on these
metrics. If not communicated well, it can impair decision-making where
you may throw the baby with bath water.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>The &#x27;NIH&#x27; Syndrome</title>
        <published>2025-03-21T00:00:00+00:00</published>
        <updated>2025-03-21T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0129-the-nih-syndrome/"/>
        <id>https://daily.himvis.com/0129-the-nih-syndrome/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0129-the-nih-syndrome/">&lt;p&gt;Not Invented Here - NIH is commonly heard term in a lot of organizations,
ever wondered why NIH happens ?&lt;&#x2F;p&gt;
&lt;p&gt;NIH is a product of organization culture&lt;&#x2F;p&gt;
&lt;p&gt;Communication happens mainly inside the group, gives rise to insulated culture&lt;&#x2F;p&gt;
&lt;p&gt;False sense of self-reliance&lt;&#x2F;p&gt;
&lt;p&gt;Lack of trust in other groups products&lt;&#x2F;p&gt;
&lt;p&gt;Fear of being found out, can not reveal problems&lt;&#x2F;p&gt;
&lt;p&gt;Solid demarcation boundaries around the teams almost indicative of status and pride (often false)&lt;&#x2F;p&gt;
&lt;p&gt;Leaders must watch out for NIH syndrome fervently.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Improving Collaboration - Keep it human centric</title>
        <published>2025-03-20T00:00:00+00:00</published>
        <updated>2025-03-20T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0128-improving-collaboration-keep-it-human-centric/"/>
        <id>https://daily.himvis.com/0128-improving-collaboration-keep-it-human-centric/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0128-improving-collaboration-keep-it-human-centric/">&lt;p&gt;We are surrounded by machines. In knowledge economy, computing machines are essential
It is quite easy to forget for whom it is meant for when we are trying to improve collaboration&lt;&#x2F;p&gt;
&lt;p&gt;It is for humans !&lt;&#x2F;p&gt;
&lt;p&gt;If the process is draining the humans then it has failed. Therefore, designing the process
is subjective, it is important to understand how the users of the process sees it.&lt;&#x2F;p&gt;
&lt;p&gt;A simple question - Is it helping me do my job? Is it adding to the complexities on the
name of collaboration scalability.&lt;&#x2F;p&gt;
&lt;p&gt;As a process designer, one might not see the picture clearly from user&#x27;s perspective, so think
about how can you reach out to them and understand their perspective&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Improving Collaboration - Feeback</title>
        <published>2025-03-19T00:00:00+00:00</published>
        <updated>2025-03-19T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0127-improving-collaboration-feeback/"/>
        <id>https://daily.himvis.com/0127-improving-collaboration-feeback/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0127-improving-collaboration-feeback/">&lt;p&gt;Effective collaboration is not possible without feedback. It
is an important consideration while setting up processes or
infrastructures for collaboration&lt;&#x2F;p&gt;
&lt;p&gt;Clear code review process with guidelines for steer reviewer&#x27;s focus&lt;&#x2F;p&gt;
&lt;p&gt;Automated testing, CI for quick technical feedback&lt;&#x2F;p&gt;
&lt;p&gt;Schedule post-mortems, retrospectives for process level insights&lt;&#x2F;p&gt;
&lt;p&gt;Asynchronous feedback - Issue trackers, shared documentation tool&lt;&#x2F;p&gt;
&lt;p&gt;Feedback should have formal mechanisms like metrics etc. and informal
mechanisms e.g. pair programming sessions&lt;&#x2F;p&gt;
&lt;p&gt;Good feedback loops ensure safe environment for constructive criticism&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Improving Collaboration - Communication</title>
        <published>2025-03-18T00:00:00+00:00</published>
        <updated>2025-03-18T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0126-improving-collaboration-communication/"/>
        <id>https://daily.himvis.com/0126-improving-collaboration-communication/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0126-improving-collaboration-communication/">&lt;p&gt;Setup multiple communication channels.&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Establish multiple ways to communicate (GitHub discussions, Discord, mailing lists)&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;A lot of time, methods of communications keep changing in their effectiveness, IRC was
once the only way but many other tools e.g. slack, Matrix etc. have come along offering
novel features. Evaluate what community needs and deploy.&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;It is important to document decisions and discussions publicly&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;This is very important to build trust and open communication in project&#x27;s culture&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Setup regular synchronous meetings for complex topics&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;This can get things done faster&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Improving Collaboration - Governance</title>
        <published>2025-03-17T00:00:00+00:00</published>
        <updated>2025-03-17T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0125-improving-collaboration-governance/"/>
        <id>https://daily.himvis.com/0125-improving-collaboration-governance/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0125-improving-collaboration-governance/">&lt;p&gt;Defining decision flow is crucial along with what responsibilities assigned to individuals. A transparent and
clear contribution process will go long way to set the project for scale, as the community grows so will
contributions, but it will only work well if process is well-defined.&lt;&#x2F;p&gt;
&lt;p&gt;A clear and transparent process for becoming a maintainer can be helpful in rewarding long time
community contributors who are willing to take the roles.&lt;&#x2F;p&gt;
&lt;p&gt;As the project grows, there will be more conflicting points and having a group of people help
navigate through such situations can result in the best outcome. Creating provisions for defining
a technical steering committee could be a good decision to implement.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Improving Collaboration - Streamlined Contribution Process</title>
        <published>2025-03-14T00:00:00+00:00</published>
        <updated>2025-03-14T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0124-improving-collaboration-streamlined-contribution-process/"/>
        <id>https://daily.himvis.com/0124-improving-collaboration-streamlined-contribution-process/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0124-improving-collaboration-streamlined-contribution-process/">&lt;p&gt;Contributions are cornerstones on which collaboration builds. A community
comes together and fills in with different kinds of contributions to stand
a project. It is important to have a well documented contribution process
and guidelines which helps new and seasoned contributors&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Triage the issues and especially mark &quot;good first issues&quot;, this is a way
to engage new contributors who might be learning the project&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;Add templates for reporting issues, users may know a lot about the problem
they are facing, a template would guide them organize the report and fill
the information in consistent way&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;Continuous Integration and testing which is run on every contribution and
feedback is provided on the pull requests&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;Evolving contribution guidelines which are simple to follow&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Improving Collaboration</title>
        <published>2025-03-13T00:00:00+00:00</published>
        <updated>2025-03-13T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0123-improving-collaboration/"/>
        <id>https://daily.himvis.com/0123-improving-collaboration/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0123-improving-collaboration/">&lt;p&gt;Here are key strategies to enhance open source collaboration:&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Welcoming Community:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;New contributors would come to a project out of interest, but they will
stick if the community is welcoming, they feel time worth spent in
the project community. It is a very high bar to meet.&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Code of conduct that sets expectations for behavior&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;Quick and kind response to issues and pull requests goes long way&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;Recognize and thank contributors for their work&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;Host regular community calls or forums for discussion&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>why complexity increases over time ?</title>
        <published>2025-03-12T00:00:00+00:00</published>
        <updated>2025-03-12T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0122-why-complexity-increases-over-time/"/>
        <id>https://daily.himvis.com/0122-why-complexity-increases-over-time/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0122-why-complexity-increases-over-time/">&lt;p&gt;Software complexity tends to increase over time, there are many reasons for this, some of them are as follows&lt;&#x2F;p&gt;
&lt;p&gt;Features are added to meet user needs, but less or no attention to outdated features which can be removed&lt;&#x2F;p&gt;
&lt;p&gt;Shortcuts taken during development to meet deadlines can cause higher technical-debt&lt;&#x2F;p&gt;
&lt;p&gt;Projects needs to evolve into directions which were not anticipated in original design&lt;&#x2F;p&gt;
&lt;p&gt;Original design drifts as quick fixes and workaround accumulate&lt;&#x2F;p&gt;
&lt;p&gt;Knowledge is lost due to team turnover, understanding of original decisions vanishes&lt;&#x2F;p&gt;
&lt;p&gt;Supporting multiple platforms than initially anticipated&lt;&#x2F;p&gt;
&lt;p&gt;Keeping dependencies updated while maintaining compatibility results in added complexity&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>controlling complexity</title>
        <published>2025-03-11T00:00:00+00:00</published>
        <updated>2025-03-11T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0121-controlling-complexity/"/>
        <id>https://daily.himvis.com/0121-controlling-complexity/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0121-controlling-complexity/">&lt;p&gt;Dijkstra said &quot;Simplicity is prerequisite for reliability.&quot;&lt;&#x2F;p&gt;
&lt;p&gt;Remember good software engineering aims to control complexity.&lt;&#x2F;p&gt;
&lt;p&gt;Prioritize to solve the problem you have to solve rather than one you
want to solve, this will avoid introducing unnecessary code into codebase
thus keeping control over complexity.&lt;&#x2F;p&gt;
&lt;p&gt;Interfaces should not be allowed to be modified but maybe extended. Adding
such simple rules can keep complexity in check.&lt;&#x2F;p&gt;
&lt;p&gt;If building layers, think about how to build structural integrity in lower
layers.&lt;&#x2F;p&gt;
&lt;p&gt;&quot;Developers are drawn to complexity like moths to a flame, frequently with the same result.&quot; - Neal Ford&lt;&#x2F;p&gt;
&lt;p&gt;We need to keep this in mind and build processes to check it.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Little things matter</title>
        <published>2025-03-10T00:00:00+00:00</published>
        <updated>2025-03-10T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0120-little-things-matter/"/>
        <id>https://daily.himvis.com/0120-little-things-matter/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0120-little-things-matter/">&lt;p&gt;Recently, meta published a &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;ebpf.foundation&#x2F;case-study-metas-strobelight-leverages-ebpf-to-reduce-cpu-cycles-and-server-demands-by-up-to-20&#x2F;&quot;&gt;case study&lt;&#x2F;a&gt; claiming to reduce
CPU usage by ~20%, which is quite impressive. One thing to note is&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;15,000 servers’ worth of annual capacity savings from a single one-character code change.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;This was in C++ code, where a std::vector was resulting in array copies because it was
using &lt;code&gt;auto&lt;&#x2F;code&gt; keyword to declare the vector, turning this into a reference ( using auto&amp;amp; ) resulted into
avoiding the duplication.&lt;&#x2F;p&gt;
&lt;p&gt;&quot;It was a one-character commit, which, after it was shipped to production, equated to an estimated 15,000 servers in capacity savings per year,&quot; said Rome.&lt;&#x2F;p&gt;
&lt;p&gt;Sometimes small things can have profound impact, and it happens a lot.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Simplify until it can not be</title>
        <published>2025-03-07T00:00:00+00:00</published>
        <updated>2025-03-07T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0119-simplify-until-it-can-not-be/"/>
        <id>https://daily.himvis.com/0119-simplify-until-it-can-not-be/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0119-simplify-until-it-can-not-be/">&lt;p&gt;Simplify until it can not be simplified any longer, at this point either
you have perfected it or it has become more complex and brittle, evaluate
carefully&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Algorithmic thinking</title>
        <published>2025-03-04T00:00:00+00:00</published>
        <updated>2025-03-04T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0117-algorithmic-thinking/"/>
        <id>https://daily.himvis.com/0117-algorithmic-thinking/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0117-algorithmic-thinking/">&lt;p&gt;Algorithmic thinking is type of approach to problem-solving by breaking problem down to smaller chunks that are connected logically. It tries to develop a process which is
efficient, repeatable and precise. If you adopt algorithmic thinking as cognitive framework it can be broadly applied to not only computer science but general problems
as well. It helps you navigate complexity but transforming the problem into manageable tasks.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Always refactor the code</title>
        <published>2025-03-04T00:00:00+00:00</published>
        <updated>2025-03-04T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0118-always-refactor-the-code/"/>
        <id>https://daily.himvis.com/0118-always-refactor-the-code/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0118-always-refactor-the-code/">&lt;p&gt;Writing new software is always exciting, adding new features, even
solving a hard bug provides immense satisfaction. However, every line
of code that is added today becomes part of technical debt next moment
after its committed.&lt;&#x2F;p&gt;
&lt;p&gt;Keeping technical debt in check is essential for a project to have a
long life and evolve. Finding ways to address technical debt should
be high priority task. One simple technique that can help is to
refactor the code. Refactoring as you go and piece meal it. Grand
refactoring can get the attention however, it is quite disruptive. Therefore,
whenever there is an opportunity to refactor while implementing a
new feature, consider adding it as code improvement &quot;Do XYX while here&quot;&lt;&#x2F;p&gt;
&lt;p&gt;Its iterative and when you look back after a year of practice you
might have refactored more code than you would think.&lt;&#x2F;p&gt;
&lt;p&gt;As a good byproduct this helps reduce &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;daily.himvis.com&#x2F;0116-complexity-paradox&#x2F;&quot;&gt;complexity&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Complexity Paradox</title>
        <published>2025-03-03T00:00:00+00:00</published>
        <updated>2025-03-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0116-complexity-paradox/"/>
        <id>https://daily.himvis.com/0116-complexity-paradox/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0116-complexity-paradox/">&lt;p&gt;As we continue to solve hard problems using software engineering, we create
complex systems in order to simplify things, (&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;daily.himvis.com&#x2F;0107-programming-abstractions&#x2F;&quot;&gt;think of abstractions&lt;&#x2F;a&gt;). In order
to continue solving the harder problems, we must strive to simplify these
complex systems. There is a fine line between complexity and simplicity, and this
is the art that separates great software engineers from the rest.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Code review practices - Tooling</title>
        <published>2025-02-28T00:00:00+00:00</published>
        <updated>2025-02-28T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0115-code-review-practices-tooling/"/>
        <id>https://daily.himvis.com/0115-code-review-practices-tooling/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0115-code-review-practices-tooling/">&lt;p&gt;Tooling is critical for review processes, use tools to foster collaboration
and add value to review process, sometimes review process becomes heavy-handed
and lest it starts to lose objectivity. You can easily tell when there are
stale reviews pending forever or having increase in nudges or there
is rubber-stamping going on.&lt;&#x2F;p&gt;
&lt;p&gt;Choosing a code review tool should not be taken lightly since it will define
a lot about projects success, they tend to become the fulcrum of developer
activity.&lt;&#x2F;p&gt;
&lt;p&gt;Leave aside liking for github, gitlab, gittea, gerrit, phabricator or some other
tool that you are comfortable with. Set clear goals and analyse nature of project
and evaluate what fits the best. Developing your own tool is last thing to consider&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Code review practices - Learning and collaboration</title>
        <published>2025-02-27T00:00:00+00:00</published>
        <updated>2025-02-27T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0114-code-review-practices-learning-and-collaboration/"/>
        <id>https://daily.himvis.com/0114-code-review-practices-learning-and-collaboration/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0114-code-review-practices-learning-and-collaboration/">&lt;p&gt;Use code review as mentoring opportunity&lt;&#x2F;p&gt;
&lt;p&gt;Have a plan to onboard multiple reviewers to spread the know-how&lt;&#x2F;p&gt;
&lt;p&gt;The review standard we discussed earlier should not be set in stone but
treated as living document, which is discussed regularly and improved upon.&lt;&#x2F;p&gt;
&lt;p&gt;Encourage detailed PR descriptions to communicate authors approach and thinking&lt;&#x2F;p&gt;
&lt;p&gt;Create a safe environment, where questioning and mistakes are embraced as learning opportunities&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Code review practices - Standard approach</title>
        <published>2025-02-26T00:00:00+00:00</published>
        <updated>2025-02-26T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0113-code-review-practices-standard-approach/"/>
        <id>https://daily.himvis.com/0113-code-review-practices-standard-approach/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0113-code-review-practices-standard-approach/">&lt;p&gt;Set clear code reviewing standards, helps every other reviewer and sets clear
expectations from both submitters and reviewers&lt;&#x2F;p&gt;
&lt;p&gt;Maintain a review checklist (GitHub has easy way to pre-populate PRs with a template)&lt;&#x2F;p&gt;
&lt;p&gt;Define clear review turnaround times&lt;&#x2F;p&gt;
&lt;p&gt;Add automation as much as possible to do some review tasks, e.g. build failures,
format checkers, running unit tests&lt;&#x2F;p&gt;
&lt;p&gt;Document standard for blocking a PR merge&lt;&#x2F;p&gt;
&lt;p&gt;Make the review standard document visible to everyone on the team touching the code&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Code review practices - Constructive feedback</title>
        <published>2025-02-25T00:00:00+00:00</published>
        <updated>2025-02-25T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0112-code-review-practices-constructive-feedback/"/>
        <id>https://daily.himvis.com/0112-code-review-practices-constructive-feedback/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0112-code-review-practices-constructive-feedback/">&lt;p&gt;Providing objective feedback on the code is very effective outcome, at times
you may find the code to have some obvious issues that might irritate you as
reviewer, however it is important to be specific about feedback and provide it
in a constructive way. e.g. Instead of &quot;This code is horrible&quot; saying something
like &quot;consider refactoring the additions into a separate function to make it more
readable&quot;&lt;&#x2F;p&gt;
&lt;p&gt;Point out what was good in reivew before pointing shortcomings&lt;&#x2F;p&gt;
&lt;p&gt;Provide information e.g. URLS, pointers to manpages etc. when suggesting changes&lt;&#x2F;p&gt;
&lt;p&gt;Follow a line of questioning e.g. have you considered approach A... instead of saying
&quot;You forgot A&quot;, it should be about the code not the person.&lt;&#x2F;p&gt;
&lt;p&gt;Mark essential changes from optional suggestions clearly.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Code review practices - Review in logical sets</title>
        <published>2025-02-24T00:00:00+00:00</published>
        <updated>2025-02-24T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0111-code-review-practices-review-in-logical-sets/"/>
        <id>https://daily.himvis.com/0111-code-review-practices-review-in-logical-sets/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0111-code-review-practices-review-in-logical-sets/">&lt;p&gt;Instead of looking at code sequentially, club it together into logicaly changesets&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Look at architecture and design&lt;&#x2F;li&gt;
&lt;li&gt;Review from business logic viewpoint&lt;&#x2F;li&gt;
&lt;li&gt;Look for performance issues&lt;&#x2F;li&gt;
&lt;li&gt;Security problems&lt;&#x2F;li&gt;
&lt;li&gt;Code formatting, naming conventions styles (ideally first pass can be checked with tools automatically)&lt;&#x2F;li&gt;
&lt;li&gt;Examine testing pieces&lt;&#x2F;li&gt;
&lt;li&gt;Look for documentation&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;Hopefully this will catch more issues and provide effective feedback&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Code review practices - Keep it small</title>
        <published>2025-02-21T00:00:00+00:00</published>
        <updated>2025-02-21T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0110-code-review-practices-keep-it-small/"/>
        <id>https://daily.himvis.com/0110-code-review-practices-keep-it-small/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0110-code-review-practices-keep-it-small/">&lt;p&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;daily.himvis.com&#x2F;0109-code-review-practices&#x2F;&quot;&gt;Yesterday&lt;&#x2F;a&gt; we talked about code-reviews, today its about point #1
why small, focused code reviews are important.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Cognitive Load:&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt; Reviewing 500+ lines of code in one go can get tiring. Smaller reviews allow the reviewer to
focus on logic deeply and consider edge cases and hidden problems more effectively. Complex changes are better made
into small digestible chunks can yield more quality in review.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Effectiveness:&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt; Its Easier to spot bugs in small changes. Comments can be more thorough.&lt;&#x2F;p&gt;
&lt;p&gt;When large PRs are unavoidable, document the changes specifically any non-obvious decisions,
detailed commit messages to establish context, consider specific areas which require deeper look.
Break down into multiple commits. Add links to tickets, document dependencies&lt;&#x2F;p&gt;
&lt;p&gt;In the end, it is in your best interest to get best out of the review, so help the reviewer to help you&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Code review practices</title>
        <published>2025-02-20T00:00:00+00:00</published>
        <updated>2025-02-20T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0109-code-review-practices/"/>
        <id>https://daily.himvis.com/0109-code-review-practices/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0109-code-review-practices/">&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Start with small, focused reviews. Keep pull requests (PRs) ideally under 500 lines of code. Large changes are harder to review thoroughly.&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;Review code in layers (logically organized) rather than line-by-line.&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;Provide constructive, targeted feedback.&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;Set clear expectations and standards.&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;Create a collaborative learning environment.&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Looking into AI future</title>
        <published>2025-02-19T00:00:00+00:00</published>
        <updated>2025-02-19T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0108-looking-into-future/"/>
        <id>https://daily.himvis.com/0108-looking-into-future/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0108-looking-into-future/">&lt;p&gt;We are over-estimating AI in our next 5-year predictions,
but we are underestimating AI in our next 15-year predictions&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Programming Abstractions</title>
        <published>2025-02-18T00:00:00+00:00</published>
        <updated>2025-02-18T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0107-programming-abstractions/"/>
        <id>https://daily.himvis.com/0107-programming-abstractions/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0107-programming-abstractions/">&lt;p&gt;&lt;strong&gt;&lt;strong&gt;A case for abstractions&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Abstractions are quite useful to manage complexity by hiding implementation details
and presenting simple interfaces. If they are well-designed, they can enable higher order
concepts, enabling collaboration at scale, since everyone won&#x27;t be required to understand
every tiny details behind the abstraction. It can reduce cognitive tax, make it easy maintaining
software. It can respond to changes by encapsulating functionality behind the stable interfaces&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;A case against abstractions&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;&lt;code&gt;Poorly designed abstractions&lt;&#x2F;code&gt; can introduce more complexity, create obscurity with unnecessary layers
Every layer of abstraction added carries performance cost in function calls, memory overhead. &lt;code&gt;Leaky abstractions&lt;&#x2F;code&gt; - Those that fail to fully hide their implementations, may add to cognitive overload
since developers have top understand both the interface and the implementation. &lt;code&gt;Over-abstractions&lt;&#x2F;code&gt;
can lead to bloat, trying to handle too much, over-generalization, can lead to increased load
of maintenance&lt;&#x2F;p&gt;
&lt;p&gt;Finding the sweet spot is real engineering !&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Secure software</title>
        <published>2025-02-17T00:00:00+00:00</published>
        <updated>2025-02-17T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0106-secure-software/"/>
        <id>https://daily.himvis.com/0106-secure-software/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0106-secure-software/">&lt;p&gt;Security in software systems is very important more so in this connected
world. We have a lot of software that predates connected world. Naturally
it might have made design choices with the requirements of the time. Modern
times demands on system security are very different. We see that there are
two approaches seen for security, first approach is to layer security on
top as separate layer which can provide a layer on top of legacy software
however this may not be the right approach for new software.&lt;&#x2F;p&gt;
&lt;p&gt;Secure is in the design, making choices at every step of process, tools,
infrastructure, programming paradigms etc. all that paves
way towards secure systems is scalable approach. It should not be an after
-thought.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Write code for humans not machines</title>
        <published>2025-02-14T00:00:00+00:00</published>
        <updated>2025-02-14T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0105-write-code-for-humans-not-machines/"/>
        <id>https://daily.himvis.com/0105-write-code-for-humans-not-machines/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0105-write-code-for-humans-not-machines/">&lt;p&gt;Humans use programming languages to express logic and algorithmic
constructs to the computing machines, there are high level languages
which have revolutionized interacting with computers and solving
complex problems. It&#x27;s easy to associate programming languages as
medium to communicate with computers. If we look it from another
vantage point they actually communicate with humans too, we have
to revisit the code for many reasons, fixing defects, adding new
features, just learning a new codebase. If the program is written
in a human-readable fashion it becomes easy to grasp and understand
it. There are few things to consider when writing code.&lt;&#x2F;p&gt;
&lt;p&gt;Use self-explaining variable names and be consistent in naming
conventions no i, j, etc. please.&lt;&#x2F;p&gt;
&lt;p&gt;Break-down code into smaller logical units, compilers are smart
to optimize it&lt;&#x2F;p&gt;
&lt;p&gt;Don&#x27;t write comments instead try to see if code is explaining what
its doing. Comments go out of sync with logic as the code is
changed over time.&lt;&#x2F;p&gt;
&lt;p&gt;Have a consistent writing style, it is easy for humans to recognize
patterns and grasp it quicker.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Think more code less</title>
        <published>2025-02-13T00:00:00+00:00</published>
        <updated>2025-02-13T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0104-think-more-code-less/"/>
        <id>https://daily.himvis.com/0104-think-more-code-less/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0104-think-more-code-less/">&lt;p&gt;Writing a lot of code is commonly a measure of good software engineer, however, I think in coming
times a good software engineer will be one who spends most of the time thinking about not writing code&lt;&#x2F;p&gt;
&lt;p&gt;There are millions of open source components on GitHub and other SCM hosting open source. Finding
an appropriate component to fit into the design will be more effective than coding one. The Open Source
component will provide documentation, community help, moreover, it will be digested by LLMs which
can be used creatively to enhance it further to your match your use case.&lt;&#x2F;p&gt;
&lt;p&gt;Source code that is written today will be obsolete in 5 to 7 years, the solution building however will
provide long term value. In coming years writing code can be done by a coding buddy agent based on
some LLM&lt;&#x2F;p&gt;
&lt;p&gt;If you are software engineer then spend more time thinking about not writing code&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Outline is hard</title>
        <published>2025-02-12T00:00:00+00:00</published>
        <updated>2025-02-12T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0103-outline-is-hard/"/>
        <id>https://daily.himvis.com/0103-outline-is-hard/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0103-outline-is-hard/">&lt;p&gt;Writers will share this often that creating table of content is the hardest
part of writing a book. Table of content provides the needed guardrails for
what follows, if it is done well the content flows lucidly and a great work
is created.&lt;&#x2F;p&gt;
&lt;p&gt;In software, thinking about the architecture, interaction points, tools
documentation, testing, build infrastructure, choice of programming language
is similar to table of content creation loosely. If done well project will be a success&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Deeper in stack, more time to spend</title>
        <published>2025-02-11T00:00:00+00:00</published>
        <updated>2025-02-11T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0102-deeper-in-stack-more-time-to-spend/"/>
        <id>https://daily.himvis.com/0102-deeper-in-stack-more-time-to-spend/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0102-deeper-in-stack-more-time-to-spend/">&lt;p&gt;It is important to consider where in stack the change is being made.
Deeper in stack means it will likely be used by more components.
This means it will be hard to rip it apart if needed, the changes
to it will require extra efforts. It can also impact the whole product
quality more than something in a leaf component.&lt;&#x2F;p&gt;
&lt;p&gt;Know the dependency graph of your products and identify the components
w.r.t. there location in chain and assign appropriate severity to
issues pertaining to them.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Leave the code better than you found</title>
        <published>2025-02-10T00:00:00+00:00</published>
        <updated>2025-02-10T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0101-leave-the-code-better-than-you-found/"/>
        <id>https://daily.himvis.com/0101-leave-the-code-better-than-you-found/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0101-leave-the-code-better-than-you-found/">&lt;p&gt;Often, we work on existing codebases more than writing complete new software from
scratch. While implementing new features or fixing defects, we come across places
with&lt;&#x2F;p&gt;
&lt;p&gt;TO-DO&lt;&#x2F;p&gt;
&lt;p&gt;Typos&lt;&#x2F;p&gt;
&lt;p&gt;Ambiguous comment&lt;&#x2F;p&gt;
&lt;p&gt;logical error&lt;&#x2F;p&gt;
&lt;p&gt;You can ignore it and continue with what you are supposed to do. Side-step it
if it comes in your way and build logic around it, however, if you do that, you
might have come close to improve the quality of code.&lt;&#x2F;p&gt;
&lt;p&gt;It is good to open a tracker defect and even better to fix it&lt;&#x2F;p&gt;
&lt;p&gt;&quot;While here fix XYZ ....&quot;&lt;&#x2F;p&gt;
&lt;p&gt;Modern SCMs like git have concept of change sets, where you can create independent
commit for this particular change and yet propose it as part of change set meant
for what you are working on.&lt;&#x2F;p&gt;
&lt;p&gt;It effectively reduces technical debt.&lt;&#x2F;p&gt;
&lt;p&gt;Leave things better than you found it is a good practice to build in teams with
a bit of assume responsibility a lot can be achieved.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Laying the strong bedrocks</title>
        <published>2025-02-07T00:00:00+00:00</published>
        <updated>2025-02-07T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0100-laying-the-strong-bedrocks/"/>
        <id>https://daily.himvis.com/0100-laying-the-strong-bedrocks/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0100-laying-the-strong-bedrocks/">&lt;p&gt;Connectivity is a basic requirement for Software systems which are designed today. A connected system means heightened security risk, due to enlarged
exposed surface to external systems. With time, some weakness will be found,
and the software update would be required.&lt;&#x2F;p&gt;
&lt;p&gt;A connected system need to respond to wider network it is part of interactions. The network is not static, new protocols are being
added, new kind of systems are needed to be communicated with, therefore
a connected system will need new features to remain relevant and provide
the value in a networked system.&lt;&#x2F;p&gt;
&lt;p&gt;Therefore, update system is an integral part of the system design, ignore
it on your own peril. Lay the founding stone for how you will update the
system in field.&lt;&#x2F;p&gt;
&lt;p&gt;Should it be symmetrical or asymmetrical flash map?&lt;&#x2F;p&gt;
&lt;p&gt;How granular should be updated ? Full image, partition, a single file.&lt;&#x2F;p&gt;
&lt;p&gt;Before working on putting together the distribution, have a plan for
your updater. If the updater is slapped on as an afterthought, it will
be a pain-point forever.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Architecture before code</title>
        <published>2025-02-06T00:00:00+00:00</published>
        <updated>2025-02-06T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0099-architecture-before-code/"/>
        <id>https://daily.himvis.com/0099-architecture-before-code/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0099-architecture-before-code/">&lt;p&gt;Computer programming is exciting in some sense like a computer game or puzzle
it gives us the instant gratification kick. This could hurry us to the coding part
earlier than it could be optimal. We can easily narrow down solution approaches
and limit our thinking to the approach we have taken in code. Therefore, it is a
good practice to take a step back and think about the problem and architect the
answers on maybe traditional pencil and paper or drawing boards.&lt;&#x2F;p&gt;
&lt;p&gt;Spending time to think about solution abstractly before getting down to write code
can help us do better at design and architecting scalable solutions.&lt;&#x2F;p&gt;
&lt;p&gt;Writing code might be the last activity in development process you want to schedule&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Constraints can bring best</title>
        <published>2025-02-05T00:00:00+00:00</published>
        <updated>2025-02-05T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0098-constraints-can-bring-best/"/>
        <id>https://daily.himvis.com/0098-constraints-can-bring-best/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0098-constraints-can-bring-best/">&lt;p&gt;You might be reading a lot about DeepSeek these days, one aspect that strikes more than often is constraints, This LLM uses GRPO instead of PPO, GRPO (Group Relative Policy Optimization) and PPO (Proximal Policy Optimization) are both machine learning algorithms used in reinforcement learning. GRPO requires less computation&lt;&#x2F;p&gt;
&lt;p&gt;Deepseek used mixed precision training which means it uses less precision which will
demand less compute&lt;&#x2F;p&gt;
&lt;p&gt;If we put ourselves under constraints, we think for alternative solutions which could
be better than de facto.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Treat documentation as code if not better</title>
        <published>2025-02-04T00:00:00+00:00</published>
        <updated>2025-02-04T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0097-treat-documentation-as-code-if-not-better/"/>
        <id>https://daily.himvis.com/0097-treat-documentation-as-code-if-not-better/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0097-treat-documentation-as-code-if-not-better/">&lt;p&gt;Documentation is the API, in code-speak, for your software to be used, so it should have same rigors
as codebase.&lt;&#x2F;p&gt;
&lt;p&gt;If we do not push untested code commits, we should not commit outdated or ambiguous documentation&lt;&#x2F;p&gt;
&lt;p&gt;If we use version control for codebase, we should use one for documentation too&lt;&#x2F;p&gt;
&lt;p&gt;If we have review process e.g. &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;docs.github.com&#x2F;en&#x2F;pull-requests&#x2F;collaborating-with-pull-requests&#x2F;proposing-changes-to-your-work-with-pull-requests&#x2F;about-pull-requests&quot;&gt;Github PRs&lt;&#x2F;a&gt; for code, we should have one for documentation too&lt;&#x2F;p&gt;
&lt;p&gt;If we have CI for code, we should have CI for documentation as well, so we can catch broken links, formatting etc.&lt;&#x2F;p&gt;
&lt;p&gt;Keep documentation as close as possible to the codebase, your future self and teams will thank you
for setting up first class documentation development workflow.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>What does your System Design reflect ?</title>
        <published>2025-02-03T00:00:00+00:00</published>
        <updated>2025-02-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0096-what-does-your-system-design-reflect/"/>
        <id>https://daily.himvis.com/0096-what-does-your-system-design-reflect/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0096-what-does-your-system-design-reflect/">&lt;p&gt;System design is core element of any product and essential of its evolution. Initially
design is consistent and follows common practices since team is small and the decisions
follow unsaid guidelines which provides needed conherence and design philosophy for adding
new features.&lt;&#x2F;p&gt;
&lt;p&gt;However, as it scales, the teams become bigger and diverse and maybe physically in different
timezones. Challenges become evidently harder with scale. The design might start becoming
incoherent due to lack of discipline, documentations, training etc.&lt;&#x2F;p&gt;
&lt;p&gt;Design should not only be the document but it should also accompany the language, design
patterns, common technology principles and some such guardrails to help someone new on
project design.&lt;&#x2F;p&gt;
&lt;p&gt;Many times the system design slowly starts to reflect the organization structure. If it
reaches that point, it has become rotten.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Use physical work for your own good</title>
        <published>2025-01-31T00:00:00+00:00</published>
        <updated>2025-01-31T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0095-use-physical-work-for-your-own-good/"/>
        <id>https://daily.himvis.com/0095-use-physical-work-for-your-own-good/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0095-use-physical-work-for-your-own-good/">&lt;p&gt;Read if you are a knowledge worker. Both physical and cognitive work
can be satisfying, but physical labor often provides more immediate
tangible satisfaction&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Visible results:&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt; Physical work produces concrete, observable outcomes that provide immediate feedback and sense of accomplishment&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Deeper Engagement:&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt; Using our hands activates rich sensory feedback systems, releasing dopamine and endorphins through movement.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Evolutionary alignment:&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt; Humans evolved performing physical tasks, making manual work feel naturally rewarding.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Reduce Stress:&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt; Physical activity reduces cortisol and anxiety more directly than mental work.&lt;&#x2F;p&gt;
&lt;p&gt;Pickup some hobby maybe gardening, wood-working, playing a musical instrument, knitting,
sewing ...&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Empathize</title>
        <published>2025-01-30T00:00:00+00:00</published>
        <updated>2025-01-30T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0094-empathize/"/>
        <id>https://daily.himvis.com/0094-empathize/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0094-empathize/">&lt;p&gt;You might be in a setup where people work on things you are responsible for,
remember that you are also responsible for very people who are working on these things.
They are also important in some other people&#x27;s lives. Therefore, they may have
a bad day, an off day, ask them &quot;How are you today ?&quot;, trying to notice other people&#x27;s
emotions can help you and them immensely.&lt;&#x2F;p&gt;
&lt;p&gt;It is a win-win&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Power of asking why</title>
        <published>2025-01-29T00:00:00+00:00</published>
        <updated>2025-01-29T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0093-power-of-asking-why/"/>
        <id>https://daily.himvis.com/0093-power-of-asking-why/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0093-power-of-asking-why/">&lt;p&gt;Asking why is fascinating since it gets to the human curiosity, it helps us understand
root causes. Keep asking &quot;why&quot; as you drill down a problem. You will be able to address
the root of the problem rather than just the surface level symptoms.&lt;&#x2F;p&gt;
&lt;p&gt;It also develops critical thinking by examining assumptions and challenging status-quo&lt;&#x2F;p&gt;
&lt;p&gt;so ask&lt;&#x2F;p&gt;
&lt;p&gt;&quot;Why do we do it this way?&quot;&lt;&#x2F;p&gt;
&lt;p&gt;Instead of&lt;&#x2F;p&gt;
&lt;p&gt;&quot;we have always done it this way&quot;&lt;&#x2F;p&gt;
&lt;p&gt;Its &quot;why&quot; all the way down to clarity :)&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Simple is not easy - 2</title>
        <published>2025-01-28T00:00:00+00:00</published>
        <updated>2025-01-28T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0092-simple-and-easy-2/"/>
        <id>https://daily.himvis.com/0092-simple-and-easy-2/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0092-simple-and-easy-2/">&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Simple but not easy:&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Running a marathon (just keep running forward, but requires immense endurance)&lt;&#x2F;li&gt;
&lt;li&gt;Losing weight (eat less, move more - but takes significant discipline)&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Easy but not simple:&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Using a smartphone (complex technology made accessible through user-friendly design)&lt;&#x2F;li&gt;
&lt;li&gt;Making instant noodles (involves several chemical processes, but just add hot water)&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Simple and easy:&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Drawing a straight line&lt;&#x2F;li&gt;
&lt;li&gt;Counting to ten&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Neither simple nor easy:&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Learning a new language&lt;&#x2F;li&gt;
&lt;li&gt;Performing brain surgery&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;The distinction matters, otherwise it can lead to underestimating challenges or
overcomplicate solutions.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>simple in not easy</title>
        <published>2025-01-27T00:00:00+00:00</published>
        <updated>2025-01-27T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0091-simple-in-not-easy/"/>
        <id>https://daily.himvis.com/0091-simple-in-not-easy/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0091-simple-in-not-easy/">&lt;p&gt;Often times, we use easy and simple interchangeably, however they are not same.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Easy is relative:&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt; I might find rock climbing hard, you might find it easy, you see ?
It is relative, me not knowing piano does not make it hard.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Easy is nearby:&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt; Something that is physically close or handy. It does not mean its simple.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Easy is familiar:&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt; I might know C programming language and say it is easy
because its within my skill set. It does not mean its simple.&lt;&#x2F;p&gt;
&lt;p&gt;Simple is&lt;&#x2F;p&gt;
&lt;p&gt;How can we fix problem in it if we need to ?&lt;&#x2F;p&gt;
&lt;p&gt;How can we enhance it if we need to ?&lt;&#x2F;p&gt;
&lt;p&gt;Does it do what it is supposed to ?&lt;&#x2F;p&gt;
&lt;p&gt;Is it reliable ?&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Communication with clarity</title>
        <published>2025-01-24T00:00:00+00:00</published>
        <updated>2025-01-24T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0090-communication-with-clarity/"/>
        <id>https://daily.himvis.com/0090-communication-with-clarity/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0090-communication-with-clarity/">&lt;p&gt;When we are expert on some subject-matter, it is easy to assume a
baseline know-how in our audience. This assumption can be a major
reason for not being effectively communicating. At work or social
settings we may have to work with people from varied backgrounds
and expertise. If we are clear and concise in our communication
this can go far and wide in bringing everyone to same page. Products
involve a lot of different functions, even though it is software
product, everyone on product team may not be a software expert,
knowing this can help one to be mindful when writing or speaking
such that it uses effective means and avoids ambiguity.&lt;&#x2F;p&gt;
&lt;p&gt;If my mom understands what I do in enough details, I know I have
stepped forward in illuminating her and become better on adding
clarity to my communication style.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Vocabulary building</title>
        <published>2025-01-23T00:00:00+00:00</published>
        <updated>2025-01-23T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0089-vocabulary-building/"/>
        <id>https://daily.himvis.com/0089-vocabulary-building/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0089-vocabulary-building/">&lt;p&gt;English is my second language even though I learned it along with my
primary language, it was not spoken at home or community as much.&lt;&#x2F;p&gt;
&lt;p&gt;Vocabulary has always been an interesting aspect to improve, since
words in different languages may have different representations, so
having a good vocabulary is a good asset to have.&lt;&#x2F;p&gt;
&lt;p&gt;I do find &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.nytimes.com&#x2F;column&#x2F;learning-word-of-the-day&quot;&gt;Word of the Day&lt;&#x2F;a&gt; quite good and am regular at reading it daily.&lt;&#x2F;p&gt;
&lt;p&gt;Secondly when I encounter a new word, I try to find its meanings and how
it can be used in different contexts, google search is good at giving all
this information just searching for &quot;&lt;word&gt; meaning&quot; does the job.&lt;&#x2F;p&gt;
&lt;p&gt;Thirdly, I try to intentionally use that word at least once on that day
in general conversations, I have been able to retain a lot more words
this way.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>power of demo</title>
        <published>2025-01-22T00:00:00+00:00</published>
        <updated>2025-01-22T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0088-power-of-demo/"/>
        <id>https://daily.himvis.com/0088-power-of-demo/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0088-power-of-demo/">&lt;p&gt;Demos are used to dip toes into uncharted areas. They are good
for sensing possibilities for products. Demos are also effective
in communicating ideas. Seeing is believing, when we see something
practical, we get a different kind of convincing compared to presenting
ideas on paper or presentations. Demos were expensive to build and
also involved logistics when presenting them. These days it has become
a lot easier due to excellent networking tools like meeting software,
online streaming software, a demo can be done more effectively.
It can bring different teams together and communicate the idea clearly.&lt;&#x2F;p&gt;
&lt;p&gt;Development teams sometimes miss the point of demos, since demos are
throw-away work which may not fit into development ethos. However, if
they are viewed as design activity then it is easier to justify them
in development teams too.&lt;&#x2F;p&gt;
&lt;p&gt;Demos could make you understand more about the idea and its internal
and external limitations quickly.&lt;&#x2F;p&gt;
&lt;p&gt;What is your next demo ?&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Software debugging Techniques</title>
        <published>2025-01-21T00:00:00+00:00</published>
        <updated>2025-01-21T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0087-software-debugging-techniques/"/>
        <id>https://daily.himvis.com/0087-software-debugging-techniques/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0087-software-debugging-techniques/">&lt;p&gt;Debugging involves finding defects in existing code and is part of every software developer&#x27;s
regular activities. There are several ways to do debugging&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Use debugging tools:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; There is a set of software tools aimed at helping with debugging activity
source level debugger, tracers, profilers, scanners, dumpers ...&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;log based ( printf ) debugging:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; Age old mechanism of putting markers in code to print&#x2F;capture state information
is very effective, it does not require external programs to monitor the program execution.
It can run almost like it would run in production. This has been used in several software projects like
Linux kernel, zephyr etc., there are levels of diagnostics to print, so it can be made more effective
This is still very effective way of debugging.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Skill to succeed in world filled with AI</title>
        <published>2025-01-17T00:00:00+00:00</published>
        <updated>2025-01-17T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0086-skill-to-succeed-in-world-filled-with-ai/"/>
        <id>https://daily.himvis.com/0086-skill-to-succeed-in-world-filled-with-ai/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0086-skill-to-succeed-in-world-filled-with-ai/">&lt;p&gt;AI is here to stay, maybe not in the form we see it today, it will get smarter
and there will be certain activities it will be able to help us with. It might
be that it will perform far better on raw intelligence than humans.&lt;&#x2F;p&gt;
&lt;p&gt;So what do we do ?&lt;&#x2F;p&gt;
&lt;p&gt;Well, I think asking questions is the skill that will still be required.
so get creative asking questions, connect dots, how unrelated facts are connected
by being non-conventional maybe&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Sometimes get bored too</title>
        <published>2025-01-16T00:00:00+00:00</published>
        <updated>2025-01-16T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0085-sometimes-get-bored-too/"/>
        <id>https://daily.himvis.com/0085-sometimes-get-bored-too/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0085-sometimes-get-bored-too/">&lt;p&gt;Sometimes we hear this phrase often &lt;code&gt;&quot;I am bored :(&quot;&lt;&#x2F;code&gt; especially from younger folks and children.
Boredom, though often seen as unpleasant, actually serves several valuable purposes in our lives.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Deep Thinking&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Feeling bored, mind begins to wander, this leads to unexpected connections and creative insights.
Our brains enter reflective state which fosters original thinking when there is no frequent stimulation.
Many great ideas in history have emerged while &quot;doing nothing&quot;&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Introspection&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Boredom creates space for self-reflection. Examining own thoughts and feeling results in better understanding
of self and thus better life choices.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Cognitive rest&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Boredom provides much needed cognitive rest, giving our brains time to process information and
recover from the constant barrage of stimuli we face daily.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Motivation&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Boredom can become a catalyst for taking action when we are bored with current situation e.g. learning new
skills, pursuing different experiences, solving issues that we have parked for long.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Developing values&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Regular exposure to boredom helps develop patience and the ability to self-regulate, children who learn
to deal with boredom become resilient adults and find meaning in adversity.&lt;&#x2F;p&gt;
&lt;p&gt;Don&#x27;t worry if you are getting bored, see how it can help you out with the opportunity it offers. I know
it is hard. In this hyper-connected world with social media, 24 hour entertainment, we actually might have to
intentionally schedule some time to get bored in daily life. It will serve us good.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Discomfort is good</title>
        <published>2025-01-15T00:00:00+00:00</published>
        <updated>2025-01-15T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0084-discomfort-is-good/"/>
        <id>https://daily.himvis.com/0084-discomfort-is-good/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0084-discomfort-is-good/">&lt;p&gt;Humanity has worked relentless to secure resources and increasing
comfort, from hunter-gatherers where most of the time was spent in security food, agriculture brought
the riches of producing enough food to not worry about it. This led to immense growth in human
knowledge, and gave many other advancements, new inventions, which in turn enriched the human life
and experience. This has led to increased comfort, I believe today is better than yesterday and tomorrow
will be better than today when it comes to amenities for life.&lt;&#x2F;p&gt;
&lt;p&gt;Its ironic, but I do think that a bit of discomfort it required.&lt;&#x2F;p&gt;
&lt;p&gt;Feeling a bit of hunger is good for us.&lt;&#x2F;p&gt;
&lt;p&gt;Taking a cold shower once a while, is good.&lt;&#x2F;p&gt;
&lt;p&gt;Staying without A&#x2F;C or heating once in a while, is good.&lt;&#x2F;p&gt;
&lt;p&gt;It will put us in a zone where learning happens, build resilience, regulate emotions
gratitude, empathy, prevent stagnation, improve mental and physical health and so on ...&lt;&#x2F;p&gt;
&lt;p&gt;Challenges push us to strive for betterment, fostering a growth mindset.&lt;&#x2F;p&gt;
&lt;p&gt;What do you think ?&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Move things to beginning of pipeline in Development chain</title>
        <published>2025-01-14T00:00:00+00:00</published>
        <updated>2025-01-14T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0083-on-development-chain/"/>
        <id>https://daily.himvis.com/0083-on-development-chain/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0083-on-development-chain/">&lt;p&gt;A development pipeline involves several tasks to perform, broadly around
design, development, testing and deployment. We can draw a timeline of code
flight as it goes through these steps. If a changeset fails anywhere in the
pipeline its taken out and placed at the beginning of the pipeline, this seems
a very simple process and results in good quality.&lt;&#x2F;p&gt;
&lt;p&gt;There is an interesting fact with the timeline, cost of dropping a changeset
gets higher as it travels the pipeline, for example of a changeset gets dropped
just before the last step, it is way more expensive than if it got dropped at
the first stage, imagine a defect escaping the whole pipeline and showing up
at customers, it can be way more expensive.&lt;&#x2F;p&gt;
&lt;p&gt;Therefore, trying to move a lot of these validation steps closer to start of
pipeline makes it more efficient and reduces cost and disruption. If we find
a regression in deployed product, we can create a testcase with exact setting
and validate that whenever a release happens in the future. This will take care of
the problem, however can it be optimized ? Yes, if we can reduce the problem to
a component and write a unit test for it, then we do not require elaborate system
tests to ensure the regression does not happen again. Since it moves to a
component and hopefully a small test case, saves not only time but also resources
to run it.&lt;&#x2F;p&gt;
&lt;p&gt;General tendency to move towards beginning of pipeline helps naturally in
speeding up these tasks and results in faster time to deploy with good quality.&lt;&#x2F;p&gt;
&lt;p&gt;Always think of moving these steps towards the beginning of pipeline and you
will benefit.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Don&#x27;t leave warnings behind</title>
        <published>2025-01-13T00:00:00+00:00</published>
        <updated>2025-01-13T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0082-don-t-leave-warnings-behind/"/>
        <id>https://daily.himvis.com/0082-don-t-leave-warnings-behind/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0082-don-t-leave-warnings-behind/">&lt;p&gt;Existing codebases invariably have some compiler diagnostics, warnings or notes
which linger over for ages. These are valuable suggestions when considering
technical debt and code hygiene in general. It becomes worse as we add more code, use
different compiler-toolchain, port it to new architecture.&lt;&#x2F;p&gt;
&lt;p&gt;These messages are quite valuable, it can hint at doing better on data structure choices
prepare for future compiler upgrade, since this warning might turn into error as
compiler gets stricter. Sometimes it can point at outright bug. We deploy many
expensive tools for code analysis e.g. static checkers etc. but the compilers diagnostic
system is a poor man&#x27;s static checker, if paid attention to, can result in significant
value extraction.&lt;&#x2F;p&gt;
&lt;p&gt;On a lesser note, it speeds up compiling speed, since compiler does not have to indulge
with system I&#x2F;O and on large codebases this can be a good time savings.&lt;&#x2F;p&gt;
&lt;p&gt;Tools get better with time, we should plan towards taking advantage of what they offer
we do look keenly on optimizations since that can improve the performance of software product
likewise we should prioritize addressing diagnostics for paying the technical debt.&lt;&#x2F;p&gt;
&lt;p&gt;Maybe organize special events to attract attention towards it, have teams prioritize it
but do not ignore it.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Solving a problem or solving a business problem</title>
        <published>2025-01-10T00:00:00+00:00</published>
        <updated>2025-01-10T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0081-solving-a-problem-or-solving-a-business-problem/"/>
        <id>https://daily.himvis.com/0081-solving-a-problem-or-solving-a-business-problem/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0081-solving-a-problem-or-solving-a-business-problem/">&lt;p&gt;As engineers or developers, we see problems more than others, there is a
high chance of skew in prioritizing what to solve first. The kind of problems
could be&lt;&#x2F;p&gt;
&lt;p&gt;This is challenging, let me bump it to top of my priority list.&lt;&#x2F;p&gt;
&lt;p&gt;This is boring, let me take care of it tomorrow.&lt;&#x2F;p&gt;
&lt;p&gt;Seems easy but uninteresting, I do not learn anything.&lt;&#x2F;p&gt;
&lt;p&gt;It is a regression, moreover I did not introduce it.&lt;&#x2F;p&gt;
&lt;p&gt;All these are personal inputs, however, the customer priority could
be entirely in reverse order.&lt;&#x2F;p&gt;
&lt;p&gt;The challenging problem above could be a nice to have, boring problem
could be blocking them, easy problem could make the biggest performance
improvement for deployed product, regression could be a deployment blocker.&lt;&#x2F;p&gt;
&lt;p&gt;Effective engineers always solve customer problems.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Communicating complexity with simplicity</title>
        <published>2025-01-09T00:00:00+00:00</published>
        <updated>2025-01-09T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0080-communicating-complexity-with-simplicity/"/>
        <id>https://daily.himvis.com/0080-communicating-complexity-with-simplicity/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0080-communicating-complexity-with-simplicity/">&lt;p&gt;Humans relate with stories and stories should be simple. However, we
might be dealing with quite a lot of complexity to make things work
and if it is not communicated timely and appropriately, it can cause
wrong decisions. However, it is not a cakewalk to communicate complexity
in easy terms either, however we can try to build a framework to help
out.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Surface complexity&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; is visible to everyone and hence easier to communicate
on collection, data can be represented in graphs easily.&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;APIs and their usage&lt;&#x2F;li&gt;
&lt;li&gt;Direct Outputs&lt;&#x2F;li&gt;
&lt;li&gt;User interactions&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;Documentation is the key for &lt;em&gt;&lt;strong&gt;under the hood complexity&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;, document the &quot;Iceberg Effect&quot;, what users see is tip of iceberg so make it clear.&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Multiple layers underneath providing the handling routines&lt;&#x2F;li&gt;
&lt;li&gt;Infrastructure&lt;&#x2F;li&gt;
&lt;li&gt;Security&lt;&#x2F;li&gt;
&lt;li&gt;Performance&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;Collect Metrics for &lt;em&gt;&lt;strong&gt;measuring impact&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Volume of value flowing through your functional part.&lt;&#x2F;li&gt;
&lt;li&gt;Error recovery mechanisms helping to provide seamless business value&lt;&#x2F;li&gt;
&lt;li&gt;How much time you are saving through complex technologies you are dealing with&lt;&#x2F;li&gt;
&lt;li&gt;How is it helping in managing product risk&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;I mentioned human connection through stories above. So build these stories
through data e.g.&lt;&#x2F;p&gt;
&lt;p&gt;&quot;When user clicks that button, how it fans out an army of threads handled by
your system securely, providing fallbacks on errors, predictably fetching the
desired response, saving 3 hours of work&quot;&lt;&#x2F;p&gt;
&lt;p&gt;If you have a particular use case you can apply such a template and build
a compelling story to communicate your complexity.&lt;&#x2F;p&gt;
&lt;p&gt;Want to discuss more ?&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Plan to pay technical debt</title>
        <published>2025-01-08T00:00:00+00:00</published>
        <updated>2025-01-08T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0079-plan-to-pay-technical-debt/"/>
        <id>https://daily.himvis.com/0079-plan-to-pay-technical-debt/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0079-plan-to-pay-technical-debt/">&lt;p&gt;The very moment we write code for a project, we start collecting some sort of technical debt
since some decisions start to be frozen in time and rest of project development will be
dependent upon it.&lt;&#x2F;p&gt;
&lt;p&gt;Initial development of any project is fastest and that is also the period when groundwork for
rate of technical debt is happening unknowingly. A choice of programming language, the community
might be moving in a given direction which you are not following closely, decided to use
certain IDE or tool, which is on its way to be EOL&#x27;ed as a better version has come along etc.&lt;&#x2F;p&gt;
&lt;p&gt;Therefore, it is very important to have a plan to address technical debt along with project plan
from very beginning. As the project progresses, needed adjustments are made according to situations
It becomes a living document for the life of project.&lt;&#x2F;p&gt;
&lt;p&gt;Some examples&lt;&#x2F;p&gt;
&lt;p&gt;Are you using Open Source components ?&lt;&#x2F;p&gt;
&lt;p&gt;You might need to have a plan to upstream your changes have a plan for upgrading the OSS component&lt;&#x2F;p&gt;
&lt;p&gt;Upgrading your host build OS ?&lt;&#x2F;p&gt;
&lt;p&gt;If you are using Linux for build systems, they have a life-time, a good plan would be to have a plan
to upgrade your distro or use some container technology&lt;&#x2F;p&gt;
&lt;p&gt;Are you adding &lt;code&gt;TODO&lt;&#x2F;code&gt; in your source code ?&lt;&#x2F;p&gt;
&lt;p&gt;&lt;code&gt;TODO&#x27;s&lt;&#x2F;code&gt; are usually direct additions to technical debt, at least they are called out. Monitor the number
and have a plan to address them.&lt;&#x2F;p&gt;
&lt;p&gt;Are there workarounds, duplicate code, some other common anti-patterns, have a plan to identify them
and address them&lt;&#x2F;p&gt;
&lt;p&gt;And so on ...&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Rewrite or fix and improve</title>
        <published>2025-01-07T00:00:00+00:00</published>
        <updated>2025-01-07T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0078-rewrite-or-fix-and-improve/"/>
        <id>https://daily.himvis.com/0078-rewrite-or-fix-and-improve/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0078-rewrite-or-fix-and-improve/">&lt;p&gt;A common problem we often see in software development world is rewrite or improve and maintain
existing implementation.&lt;&#x2F;p&gt;
&lt;p&gt;Rewrite, certainly is an option, but it should be not taken lightly, teams change, people move.
It is possible that a lot of &quot;why it is done this way&quot; know-how goes away over time. Newer team
members may then bias towards rewriting that reading the code and understanding it. As a developer
that is an appealing option. We may add more reasons like &quot;we will use new programming language&quot;
and &quot;modernize the software&quot;, &quot;it will be better for hiring new developers&quot; ...&lt;&#x2F;p&gt;
&lt;p&gt;All these are good arguments, but they should be quantified and discussed in detail. All of these
assertions are subjective gains. We should bring a product mindset also into picture. Most of
the time rewrites are not user visible, so any regression will upset the user since they may care
less if it is written in X or Y or if you can debug it better than before. Stakes are high, it is
a purely technical debt work.&lt;&#x2F;p&gt;
&lt;p&gt;Improving upon existing implementation may have become very costly, knowledge base and communities
might have disappeared, these could play towards rewrite as well.&lt;&#x2F;p&gt;
&lt;p&gt;We should respect what came before us. Understanding &quot;why&quot; beneath a project can give enough
objectivity in making a good decision when it comes to rewrite or not.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Programming languages with package managers</title>
        <published>2025-01-06T00:00:00+00:00</published>
        <updated>2025-01-06T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0077-programming-languages-with-package-managers/"/>
        <id>https://daily.himvis.com/0077-programming-languages-with-package-managers/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0077-programming-languages-with-package-managers/">&lt;p&gt;In past few decades new programming languages have sprouted and have been
adopted with varied success think of go, rust, javascript, python etc.
they have addressed core questions e.g. programming paradigm changes but
one salient feature they all have included in the feature set is a package
management system which is backed by a package repository.&lt;&#x2F;p&gt;
&lt;p&gt;Adding package manager as integrated part of language enables developers
with a unified development system which is more of less platform independent
this also helps writing portable code. It encourages software reuse, as
the packages are published, they are easily available for using via the
language package managers, this accelerates development.&lt;&#x2F;p&gt;
&lt;p&gt;It does pose a problem where it conflicts with system&#x27;s package manager
especially on Linux distributions. Linux systems are built using independent
components and package managers e.g. rpm, dpkg are core piece of a
distribution, Not only it installs&#x2F;removes&#x2F;updates packages, it also managers
states e.g. first time installation changes and what to change in system on
removal. These package managers pre-dates the integrated packages managers
how to package rust or go packages as a distribution or release engineer
is quite a challenge. On the other hand it makes developer&#x27;s life a lot
better.&lt;&#x2F;p&gt;
&lt;p&gt;This is also forcing to rethink the package management strategies and
using image based updates instead of package based update mechanisms&lt;&#x2F;p&gt;
&lt;p&gt;In the future, we will see a better interoperation between these two schemes.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Build once</title>
        <published>2024-12-24T00:00:00+00:00</published>
        <updated>2024-12-24T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0076-build-once/"/>
        <id>https://daily.himvis.com/0076-build-once/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0076-build-once/">&lt;p&gt;There are mainly two ways to consume software, prebuilt and source forms.
Both have advantages and downsides.&lt;&#x2F;p&gt;
&lt;p&gt;Consuming only prebuilts hinder&#x27;s customizations and can be a downside when
targetted at customized hardware since it may not run all optimized for the
target.&lt;&#x2F;p&gt;
&lt;p&gt;Distributing as source overcomes above problem and can be customized to core
but it requires to re-create the build environment and maintain it for the life
of products.&lt;&#x2F;p&gt;
&lt;p&gt;Software projects have become growing in lines of code at a fast pace in recent
years, &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;eklausmeier.goip.de&#x2F;blog&#x2F;2024&#x2F;01-24-lines-of-code-of-various-open-source-projects&quot;&gt;Linux Kernel has ~35M lines, Chrome is around 30M lines&lt;&#x2F;a&gt; and
&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.phoronix.com&#x2F;news&#x2F;LLVM-Record-Growth-2021&quot;&gt;LLVM is growing at 10% year over year&lt;&#x2F;a&gt;
It becomes challanging to distribute it as source and expect every user to
compile own copy as they may not have systems powerful enough to do so. Therefore
recommending to build everything from source as default may not be optimal for
developers on the other hand it might be a requirement for products. So we
need systems where reuse of binary build artifacts is reliable at the same
time if one needs to build a package&#x2F;component from source it should not be
a herculean task either.&lt;&#x2F;p&gt;
&lt;p&gt;A system could be put together from binary artifacts if a standard profile is
used, but when customizations are added, the system could be smart to only rebuild
the pieces which are absolutely needed to be rebuilt including the dependencies.
A slice of the system is rebuilt not whole system.&lt;&#x2F;p&gt;
&lt;p&gt;Size of software will keep growing, we need smart ways to build, distribute, consume
and develop it.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Insightfulness in software</title>
        <published>2024-12-23T00:00:00+00:00</published>
        <updated>2024-12-23T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0075-insightfulness-in-software/"/>
        <id>https://daily.himvis.com/0075-insightfulness-in-software/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0075-insightfulness-in-software/">&lt;p&gt;How many programming languages, different data structures
and algorithms, common programming paradigms and patterns does one understands?
All these are part
of knowlege system that is a must for becoming a good software developer. They
can be learnt at schools, trainings, labs, implementations, debugging etc.&lt;&#x2F;p&gt;
&lt;p&gt;However, there is another aspect to software development which is as important
its discernment&lt;&#x2F;p&gt;
&lt;p&gt;For instance chosing right tools, this requires one to understand strenghts and weaknesses
of different tools and technologies e.g. programming languages, hosting solutions
code editors etc. Deeper undertanding of business needs and user requirements enables
to prioritize and decide effectively. Breakdown complex engineering pieces into
simple understandable artifacts which can be used to communicate amongst engineering
and non-engineering functional teams. When there are options of choices, if we
can assess its risks and benefits and manage uncertainity around the choice then it
will be the best option of the choices at hand.&lt;&#x2F;p&gt;
&lt;p&gt;Thomas Jefferson said&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;Wisdom is knowing what to do next. Skill is knowing how to do it. Virtue is doing it&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Investing in building trust</title>
        <published>2024-12-20T00:00:00+00:00</published>
        <updated>2024-12-20T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0074-finding-investor/"/>
        <id>https://daily.himvis.com/0074-finding-investor/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0074-finding-investor/">&lt;p&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;daily.himvis.com&#x2F;0073-innovating-from-within&#x2F;&quot;&gt;Yesterday&lt;&#x2F;a&gt; we had discussion about innovating from with-in, there
is another pearl of wisdom from Eric when he was asked&lt;&#x2F;p&gt;
&lt;p&gt;What is the best piece of advice you ever received?&lt;&#x2F;p&gt;
&lt;p&gt;His answer:&lt;&#x2F;p&gt;
&lt;p&gt;&lt;code&gt;Find the investors who want to invest in you, not only in your business.&lt;&#x2F;code&gt;&lt;&#x2F;p&gt;
&lt;p&gt;That fundamentally speaks for building trust. Plans change, times change
and trust is what can sail you through good and bad patches.&lt;&#x2F;p&gt;
&lt;p&gt;Investing in building trust can be single best things one
could do with their given time.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Innovating from within</title>
        <published>2024-12-19T00:00:00+00:00</published>
        <updated>2024-12-19T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0073-innovating-from-within/"/>
        <id>https://daily.himvis.com/0073-innovating-from-within/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0073-innovating-from-within/">&lt;p&gt;Cisco &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.bloomberg.com&#x2F;news&#x2F;articles&#x2F;2019-04-18&#x2F;u-s-refused-his-visa-eight-times-now-zoom-ceo-is-a-billionaire&quot;&gt;acquired Webex in 2007 for whopping $3.2B&lt;&#x2F;a&gt; and along with the products
they got the mind of &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Eric_Yuan&quot;&gt;Eric Yuan&lt;&#x2F;a&gt; as well.
Eric is founding engineer of WebEx and grew it from 0 to wherever it was when Cisco
acquired it. A question comes to mind -&lt;&#x2F;p&gt;
&lt;p&gt;Why Cisco could not build Zoom ?&lt;&#x2F;p&gt;
&lt;p&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.adammendler.com&#x2F;interviews&#x2F;eric-yuan-founder-ceo-zoom&quot;&gt;Eric Said&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;
&lt;p&gt;&quot;I got to this point in life by never giving up on my inspiration — which
has always been to build a video communications
solution that people will love. This has been a long-time passion of mine.
I was born in mainland China. I first envisioned Zoom while I was a college
student in China in the late ‘80s, and would take over 10-hour (each way)
train rides to visit my girlfriend (now my wife). My desire for an easier
way to see her face-to-face without the arduous travel became the impetus
for my long path from student to entrepreneur. In 1997 I immigrated to San Jose, CA
and secured a position as one of the founding engineers at a small start-up called Webex.
I stayed with Webex for the next 14 years, and proudly grew the team I managed from 10 engineers
to more than 800 worldwide, and contributed to revenue growth from $0 to more than $800M.
In speaking with Webex customers, I realized that the solution suffered from some
deep flaws due to its older architecture, particularly a lack of usability,
reliability, and video quality. Simply put, it was hard to use and it didn’t work.
I knew that Cisco needed to rebuild Webex from the ground up – from the back-end architecture
to the user interface to the sales model. I told Cisco leadership, but they didn’t listen.
I struck out on my own in 2011, and, fortunately, dozens of Webex’s most talented and
visionary engineers soon joined me. Together we spent the next two years building
Zoom 1.0, a unified video and web conferencing software that ran seamlessly across mobile,
desktop devices, and conference room systems. Since then we’ve developed the product into
the best video communications software in the world and built a global team of over 1,100
passionate people.&quot;&lt;&#x2F;p&gt;
&lt;p&gt;Sometimes, it&#x27;s needed to be done ground-up, fresh, new ideas augured with
prior learnings and experiences.&lt;&#x2F;p&gt;
&lt;p&gt;As a leader, listening is most effective skill. Learn to find intrinsic motivations
of people and channel them.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>crash or not</title>
        <published>2024-12-18T00:00:00+00:00</published>
        <updated>2024-12-18T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0072-crash-or-not/"/>
        <id>https://daily.himvis.com/0072-crash-or-not/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0072-crash-or-not/">&lt;p&gt;In software programming sometimes we are faced with situations
where we can write logic to recover from an unexpected situation
or simply crash the program&lt;&#x2F;p&gt;
&lt;p&gt;We see often patches submitted to projects (GNU Glibc comes to mind)
to add a check for an error condition and try to emit an error
message and continue. Some developers have the view that it should
crash if it has entered an unknown state because a program which
is in bad state can do more damages then a crashed program. There
can be a parent program which can be used to do data recovery and
restart if needed.&lt;&#x2F;p&gt;
&lt;p&gt;Other argument goes, sending a human-readable message is good
because it can be used by the users of library or program to take
action. It is good to recover and only die gracefully. The recovery
can be quite complex logic and change the data in uncertain ways.
It might have abused resources (memory&#x2F;io&#x2F;CPU) etc.&lt;&#x2F;p&gt;
&lt;p&gt;So there is no one way, it will depend upon what the software
program is supposed to do and the constrained where it is to operate.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Assertions and errors</title>
        <published>2024-12-17T00:00:00+00:00</published>
        <updated>2024-12-17T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0071-assertions-and-errors/"/>
        <id>https://daily.himvis.com/0071-assertions-and-errors/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0071-assertions-and-errors/">&lt;p&gt;Assertions are checks for things which should never happen. We add
them at places where we think &quot;this is impossible to happen ...&quot;
unless we have that mindset we will not place them correctly, since
the program is well tested so assertions might appear redundant.
Sometimes we have &quot;debug&quot; build and &quot;release&quot; build where among
other things assertions might be turned off citing a reason that
they will only trigger with a bug and testing would have eliminated
bug during development&#x2F;testing cycles therefore they are redudant
in production builds.&lt;&#x2F;p&gt;
&lt;p&gt;We are assuming testing finds every possible defect that can happen in
field. In reality this is never the case.&lt;&#x2F;p&gt;
&lt;p&gt;They do have some overhead yes but the benefits outweighs the overhead.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Use automation in personal and professional workflows</title>
        <published>2024-12-13T00:00:00+00:00</published>
        <updated>2024-12-13T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0070-use-automation-in-personal-workflows/"/>
        <id>https://daily.himvis.com/0070-use-automation-in-personal-workflows/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0070-use-automation-in-personal-workflows/">&lt;p&gt;Look closely at the daily task list and calendar, there is a certain number
of repeated elements. They may follow different cadence e.g. some tasks repeat
daily, some weekly, some maybe fortnightly or monthly. Some of these tasks will
be exact repeat but there is a class of tasks which are close enough to repeating
but is not exactly same.&lt;&#x2F;p&gt;
&lt;p&gt;Sometimes a large portion of productive time during day is consumed by these
tasks and if we do not take care of these they tend to increase over time and
we all have 24 hours per day. They can really overwhelm us and we might get that
feeling of running at 300 miles but being on a treadmill.&lt;&#x2F;p&gt;
&lt;p&gt;Automation can come to rescure, we should seriously evaluate automation tools
and workflows for our schedule and tasks and deploy them to freeup time during
the work-day.&lt;&#x2F;p&gt;
&lt;p&gt;e.g. I maintain few projects in Open-Source, therefore a repeated task is to
review and accept pull requests. One can not automate it completely, however
it can be divided into multiple tasks, e.g. running builds, testing, validating
formats etc. are fairly scriptable, and they can run on demand whenever a pull
request is raised.&lt;&#x2F;p&gt;
&lt;p&gt;It can improve the quality of submission and the time you will have to spend to
review the pull will not be repeated as often and thereby give back some of
the time that would have been required to babysit the submission until it is
accepted.&lt;&#x2F;p&gt;
&lt;p&gt;Automate Automate Automate !&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Open-source as process for product and platform&#x2F;technology</title>
        <published>2024-12-12T00:00:00+00:00</published>
        <updated>2024-12-12T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0069-open-source-as-process-for-product-and-platform-technology/"/>
        <id>https://daily.himvis.com/0069-open-source-as-process-for-product-and-platform-technology/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0069-open-source-as-process-for-product-and-platform-technology/">&lt;p&gt;Open-source has been a successful development process in past few decades
we have seen major changes in software industry adopting Open-source has
become a predominant way of doing software development.&lt;&#x2F;p&gt;
&lt;p&gt;Identifying the technology building blocks and deploying Open-Source
development model would be highly effective process.&lt;&#x2F;p&gt;
&lt;p&gt;Open-Source development model as process could be a good fit for product
development. It&#x27;s important to understand that process is what is in
focus here. Key elements of &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;daily.himvis.com&#x2F;0036-on-strategy-8&#x2F;&quot;&gt;Innersource&lt;&#x2F;a&gt; has been well adopted in industry. This is complemented
by collaboration tools available today can help bring the best practices
to fruition.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Opensource in context of product and platform&#x2F;technology - Example</title>
        <published>2024-12-11T00:00:00+00:00</published>
        <updated>2024-12-11T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0068-opensource-in-context-of-product-and-platform-technology-example/"/>
        <id>https://daily.himvis.com/0068-opensource-in-context-of-product-and-platform-technology-example/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0068-opensource-in-context-of-product-and-platform-technology-example/">&lt;p&gt;We talked about &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;daily.himvis.com&#x2F;0066-a-case-for-opensource-in-product-and-platform-technology&#x2F;&quot;&gt;products and technologies&lt;&#x2F;a&gt; and &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;daily.himvis.com&#x2F;0067-opensource-in-context-of-product-and-platform-technology&#x2F;&quot;&gt;how opensource fits&lt;&#x2F;a&gt; in
this context. You might be wondering if there are real world scenarios playing out
in this realm successfully.&lt;&#x2F;p&gt;
&lt;p&gt;Taking a closer look at any Android product, it is using Linux for kernel technology&lt;&#x2F;p&gt;
&lt;p&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.truenas.com&#x2F;&quot;&gt;TrueNAS&lt;&#x2F;a&gt; products uses &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;openzfs.org&#x2F;wiki&#x2F;Main_Page&quot;&gt;OpenZFS&lt;&#x2F;a&gt; file-system technology&lt;&#x2F;p&gt;
&lt;p&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;engineering.roku.com&#x2F;you-need-a-build-system&quot;&gt;Roku&lt;&#x2F;a&gt; products use &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.yoctoproject.org&#x2F;&quot;&gt;Yocto Project&lt;&#x2F;a&gt; as build technology&lt;&#x2F;p&gt;
&lt;p&gt;There will be a lot more examples out there for sure.&lt;&#x2F;p&gt;
&lt;p&gt;Do you know more ?&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Opensource in context of product and platform&#x2F;technology</title>
        <published>2024-12-10T00:00:00+00:00</published>
        <updated>2024-12-10T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0067-opensource-in-context-of-product-and-platform-technology/"/>
        <id>https://daily.himvis.com/0067-opensource-in-context-of-product-and-platform-technology/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0067-opensource-in-context-of-product-and-platform-technology/">&lt;p&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;daily.himvis.com&#x2F;0066-a-case-for-opensource-in-product-and-platform-technology&#x2F;&quot;&gt;Yesterday&lt;&#x2F;a&gt; We discussed product and technology and their relationship and constraints. Considering open-source as process for developing products might
be suboptimal since it might put harder constraints, you might have to give up
on other approaches. If open-source is the process for a product, it gives rise to
tension between product and technology needs which might end if one giving in or
both have to compromise.&lt;&#x2F;p&gt;
&lt;p&gt;Open-source works great for technology development as it lays good foundation for
composable systems, offers vast learning avenues for developers and becoming
contributors. It also provides a bedrock for experimentation for different approaches
a product can take. It helps in building key aspect of products which is &quot;what to build&quot;&lt;&#x2F;p&gt;
&lt;p&gt;Nowadays, open-source projects have logos, cool names, dedicated conferences, which can make
us think of them as products, but it is important to understand that they are technologies.&lt;&#x2F;p&gt;
&lt;p&gt;Therefore, a successful product understands the line between products and technologies
enabling the products.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Product and platform&#x2F;technology</title>
        <published>2024-12-09T00:00:00+00:00</published>
        <updated>2024-12-09T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0066-a-case-for-opensource-in-product-and-platform-technology/"/>
        <id>https://daily.himvis.com/0066-a-case-for-opensource-in-product-and-platform-technology/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0066-a-case-for-opensource-in-product-and-platform-technology/">&lt;p&gt;Products are built using technology or platforms. They are more than just
technology.&lt;&#x2F;p&gt;
&lt;p&gt;A product focus is on solving particular problem&lt;&#x2F;p&gt;
&lt;p&gt;It needs user trainings, supply-chains.&lt;&#x2F;p&gt;
&lt;p&gt;Certain performance goal, assurances, support ecosystem etc.&lt;&#x2F;p&gt;
&lt;p&gt;A technology on the other hand can offer a broader set to solve many
problems, may not offer everything a product pipeline requires but
can act as a cog in the wheel.&lt;&#x2F;p&gt;
&lt;p&gt;A technology is an enabler from a product perspective.&lt;&#x2F;p&gt;
&lt;p&gt;Once we have that clarified, we can have a clear demarcation between
products and technology and their forcing functions.&lt;&#x2F;p&gt;
&lt;p&gt;With product, it is important to identify user needs and simplify
the good way to use it. Therefore, a technology may be portable
across multiple platforms e.g. Linux, Windows, Mac etc. does
not mean, product should use all its capabilities. It may confuse
the users or reduce the quality of product experience, say if the
product was cloud hosted. Therefore, products carve out a slice of
technology to build itself.&lt;&#x2F;p&gt;
&lt;p&gt;Next time we will talk about Open-Source in perspective of Products
and technology, stay tuned !&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Zero inbox rule</title>
        <published>2024-12-06T00:00:00+00:00</published>
        <updated>2024-12-06T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0065-zero-inbox-rule/"/>
        <id>https://daily.himvis.com/0065-zero-inbox-rule/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0065-zero-inbox-rule/">&lt;p&gt;We have many distractions in daily life and a lot of them are digital distractions
apps dings on the mobile phone, beeps on laptop, beeps on home appliances and so on.
They also follow into your work if you are using these equipments at work, if you
are a knowledge worker, they become detrimental to your productivity. Some
micro-tweaks can help to live among the barrage of distractions.&lt;&#x2F;p&gt;
&lt;p&gt;Email is still one of the most important tool that is in use for work. We subscribe
to various mailing lists, groups for information and participation. Tasks and updates
are asynchronously shared over email. Overtime we get overwhelmed by the inbox. We
try to arrange it into folders and apply sophisticated rules to move emails around
into offline folders, it works as expected. With time the offline folders start growing
in unread email count overtime.&lt;&#x2F;p&gt;
&lt;p&gt;I follow two rules&lt;&#x2F;p&gt;
&lt;ol&gt;
&lt;li&gt;Everyday Zero out the inbox, that means every email is processed, some are deleted
without reading&lt;&#x2F;li&gt;
&lt;li&gt;Shutdown the email client. Bring it up and process the emails in 2 or 3 batches during the day.&lt;&#x2F;li&gt;
&lt;&#x2F;ol&gt;
&lt;p&gt;At the end of the day there are no unread messages left in inbox. This gives an immense
sense of &quot;done&quot; that you can work on what needs to be done that you read in those emails&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>quantify or perish</title>
        <published>2024-12-05T00:00:00+00:00</published>
        <updated>2024-12-05T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0064-quantify-or-perish/"/>
        <id>https://daily.himvis.com/0064-quantify-or-perish/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0064-quantify-or-perish/">&lt;p&gt;Sometimes we find ourselves in situations where you feel that your message is
important but it&#x27;s not being heard or understood as it must.&lt;&#x2F;p&gt;
&lt;p&gt;It could be that&lt;&#x2F;p&gt;
&lt;p&gt;gravity of the problem is not well understood&lt;&#x2F;p&gt;
&lt;p&gt;Solution proposed is abstract&lt;&#x2F;p&gt;
&lt;p&gt;No matter how compelling it could seem to you, if not communicated correctly
the problem is not solved.&lt;&#x2F;p&gt;
&lt;p&gt;We tend to underestimate the benefits of things which are not visible, if a tree
fell in forest and I did not see it then did it really fall ?&lt;&#x2F;p&gt;
&lt;p&gt;However, if we quantize the problem than we get a lot more ears, if you are
working on a technology that is enabling products in your company, find creative
ways to quantize the revenue share of these technologies in the product sales.&lt;&#x2F;p&gt;
&lt;p&gt;This provides an alternative reasoning framework to think of your work. You
become part of revenue generation than being part of &quot;cost-center&quot;&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Pin pointing the problems</title>
        <published>2024-12-04T00:00:00+00:00</published>
        <updated>2024-12-04T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0063-pin-pointing-the-problems/"/>
        <id>https://daily.himvis.com/0063-pin-pointing-the-problems/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0063-pin-pointing-the-problems/">&lt;p&gt;Often times when we have a problem, we try our best to
describe it to others but then we maybe describing it
vaguely or completely wrong. That is understandable because
understanding the problem is hard in first place, let alone
if we are in middle of it.&lt;&#x2F;p&gt;
&lt;p&gt;This is a very important consideration whenever we do
solution engineering. Are we solving customer&#x27;s problem
per what they described or what you understood about the
problem?&lt;&#x2F;p&gt;
&lt;p&gt;Sometimes we wonder why a particular project is gaining steam
among developers or is being used to derive solutions in products&lt;&#x2F;p&gt;
&lt;p&gt;If we take a step back and analyze we will see that it may
not be written in fanciest of programming languages or hosted on
most accessible place or following all the modern software development
methods like CI&#x2F;CD etc. But it might be solving a user problem&lt;&#x2F;p&gt;
&lt;p&gt;Do you know of such projects ? I am sure you do.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Oratory skills</title>
        <published>2024-12-03T00:00:00+00:00</published>
        <updated>2024-12-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0062-spoken-communication/"/>
        <id>https://daily.himvis.com/0062-spoken-communication/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0062-spoken-communication/">&lt;p&gt;Cicero one of marquee orators believed that appealing to emotions of
audience is far more effective than logic and scientific reasoning.&lt;&#x2F;p&gt;
&lt;p&gt;As per Plutarch, Demosthenes had &quot;an inarticulate and stammering
pronunciation&quot; that he overcame by speaking with pebbles in his
mouth and by repeating verses when running or out of breath.
He also practiced speaking in front of a large mirror&lt;&#x2F;p&gt;
&lt;p&gt;Adlai Stevenson said&lt;&#x2F;p&gt;
&lt;p&gt;&quot;Do you remember that in classical times when Cicrero had finished
speaking, the people said, &#x27;how well he spoke&#x27; - but when Demosthenes
had finished speaking, the people said, &#x27;Lets march&#x27;?&quot;&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Cost of maintenance</title>
        <published>2024-12-02T00:00:00+00:00</published>
        <updated>2024-12-02T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0061-cost-of-maintenance/"/>
        <id>https://daily.himvis.com/0061-cost-of-maintenance/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0061-cost-of-maintenance/">&lt;p&gt;Often we add a feature or service to enhance products or fix defects to
service them in field. In software products the process will often result
in additions to existing software by&lt;&#x2F;p&gt;
&lt;p&gt;lines of code&lt;&#x2F;p&gt;
&lt;p&gt;Additional tests&lt;&#x2F;p&gt;
&lt;p&gt;Additional deployment and QA checks&lt;&#x2F;p&gt;
&lt;p&gt;New dependencies&lt;&#x2F;p&gt;
&lt;p&gt;Since software components depend upon each other, even in steady state
software gets rotten, it&#x27;s like standing water vs flowing water.&lt;&#x2F;p&gt;
&lt;p&gt;Strategies to lock down software often result in it not being serviceable
for long and shortening the product life cycle.&lt;&#x2F;p&gt;
&lt;p&gt;Another strategy is to pay attention towards cost of maintenance of software
over the deemed life cycle of the product ahead of time and plan for it.
e.g.&lt;&#x2F;p&gt;
&lt;p&gt;Do we need to upgrade Linux kernel ?&lt;&#x2F;p&gt;
&lt;p&gt;Do we need to upgrade the whole Distribution ?&lt;&#x2F;p&gt;
&lt;p&gt;Are we fine with just upgrading the application that is our service ?&lt;&#x2F;p&gt;
&lt;p&gt;This can result in a robust plan which does not bleed money into
upkeep of the products and at the same time prolonging the life of products
even beyond its estimated life.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Quality Vs Quantity</title>
        <published>2024-11-26T00:00:00+00:00</published>
        <updated>2024-11-26T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0060-quality-vs-quantity/"/>
        <id>https://daily.himvis.com/0060-quality-vs-quantity/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0060-quality-vs-quantity/">&lt;p&gt;Traditionally productivity is defined as &#x27;output &#x2F; input&#x27;, however
productivity is not always about quantity, quality matters too. In fields
like Software engineering, debate between quality and quantity is
nuanced.&lt;&#x2F;p&gt;
&lt;p&gt;We might be tempted to measure productivity by sheer lines of code written
however, more lines of code can result in faster technical debt accumulation
and more bugs per line. On the other hand, high quality code is well tested
cleanly written, maintained and well documented. It can solve difficult
problems with relatively minimal complexity.&lt;&#x2F;p&gt;
&lt;p&gt;Writing fewer, more robust lines of code which is thoroughly tested and
keeping bigger picture in mind for scalability is far more valuable than
spinning out more features, which can result in more problems than they solve.&lt;&#x2F;p&gt;
&lt;p&gt;Most successful software teams strike a delicate balance,
maintaining high standards of code quality while still delivering
meaningful functionality at a steady, sustainable pace.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Output Vs Outcome</title>
        <published>2024-11-25T00:00:00+00:00</published>
        <updated>2024-11-25T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0059-output-vs-outcome/"/>
        <id>https://daily.himvis.com/0059-output-vs-outcome/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0059-output-vs-outcome/">&lt;p&gt;Output is immediate, tangible results whereas outcome is long term impact or consequence of action&lt;&#x2F;p&gt;
&lt;p&gt;Output focuses on specifics e.g. a specific product, feature etc. outcome is focussed on qualitative changes and improvements&lt;&#x2F;p&gt;
&lt;p&gt;Output tend to be quantitative and concrete whereas outcome is observed over a long period of time&lt;&#x2F;p&gt;
&lt;p&gt;Output represents immediate visible results of effort, outcomes on other hand reflects value of significance of initial output&lt;&#x2F;p&gt;
&lt;p&gt;Output is narrow in scope, outcome is wider and comprehensive&lt;&#x2F;p&gt;
&lt;p&gt;Output → Immediate Result&lt;&#x2F;p&gt;
&lt;p&gt;Output → Process → Outcome → Broader Impact&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Write code to compile</title>
        <published>2024-11-06T00:00:00+00:00</published>
        <updated>2024-11-06T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0058-write-code-to-compile/"/>
        <id>https://daily.himvis.com/0058-write-code-to-compile/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0058-write-code-to-compile/">&lt;p&gt;A lot of times we write the code and throw it at the compiler and see what it comes up
with, if it complains, we try to silence the diagnostics, warnings are simply ignored,
errors are worked with, at times they are &lt;em&gt;workarounds&lt;&#x2F;em&gt; with &lt;em&gt;TODO&lt;&#x2F;em&gt; in code doing just
that. Once compiled, we take the binaries to target and execute them, if they run into
problems, we throw a debugger and trace the code execution path until the error is hit we
apply some other &lt;em&gt;fixes&lt;&#x2F;em&gt; to get by. A pointer is null, so we add a null check before
accessing the content pointed by it. This gets rid of the segfault. These practices do
work to some extent, but they cause issues too.&lt;&#x2F;p&gt;
&lt;p&gt;Remember compilers and debuggers are software programs too, they may have their own bugs
and at times own extensions to language and common working processes. Lot of times there
is undefined behavior in language specifications which may not be called out by compiler&lt;&#x2F;p&gt;
&lt;p&gt;Coding to the compiler is less than ideal, instead code the logic using language constructs
and specifications, trace the logic with other means instead of debuggers. Use the tools
but to do what they are intended to do. They are not the tools to teach how to program
or design software.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Tools for tasks</title>
        <published>2024-11-05T00:00:00+00:00</published>
        <updated>2024-11-05T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0057-tools-for-tasks/"/>
        <id>https://daily.himvis.com/0057-tools-for-tasks/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0057-tools-for-tasks/">&lt;p&gt;We learn a wide variety of tools to help us with various tasks.
It does take a while to find out which tools are optimal for a task
or a class of tasks. If we use wrong tool for wrong task, it can be
quite inefficient to accomplish the task. Software engineering tasks
in the same vein have tools which accomplish them better than other
A lot of what an experienced software developer brings to table is this
invaluable knowledge of &quot;what works&quot;, There is a downside as well, as
you build software solutions and experience these tools, you develop
certain affinity towards using them, and it can lead to a bias where
you may use them for doing other tasks where they may not be suited
and as you do more and more, the confirmation bias keeps getting stronger
too, so it is good to keep an open options open for other tools which
might be more suited for the given task as hand.&lt;&#x2F;p&gt;
&lt;p&gt;How many times we hear programming language wars on internet. However,
an experienced engineer knows that programming languages are like tools
in kitty, use the right one for right job. Knowing a bunch of them is
useful and makes you effective, but your impact becomes manifold if you
know &quot;when to use it&quot;&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Developers and builders</title>
        <published>2024-11-04T00:00:00+00:00</published>
        <updated>2024-11-04T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0056-developers-and-builders/"/>
        <id>https://daily.himvis.com/0056-developers-and-builders/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0056-developers-and-builders/">&lt;p&gt;Developer and Build Engineer roles often overlap, especially in smaller teams,
but they serve distinct purposes and have unique responsibilities in
software development:&lt;&#x2F;p&gt;
&lt;p&gt;In smaller teams they collaborate on CI&#x2F;CD to integrate new code smoothly into
build process, troubleshoot issues related to dependencies, build breaks etc.&lt;&#x2F;p&gt;
&lt;p&gt;Key Differences&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Focus on Code vs. Process:&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt; Developers are focused on the functionality
and quality of the code, while Build Engineers concentrate on the efficiency,
reliability, and maintainability of the build and deployment process.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Development Cycle:&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt; Developers primarily work on code creation and
implementation; Build Engineers focus on deployment and ensuring code
is correctly compiled, linked, and packaged.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Tool-sets:&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt; While there maybe some overlap in tools they use, there focus
might be different, e.g. developers might care a lot of IDEs, development tools,
scanners, linters, language servers etc. and programming languages to use. Build
engineers might not prioritize different programming languages, since it will
complicate builds, They may consider dependencies, correct rebuilds of all affected
sources at higher priority&lt;&#x2F;p&gt;
&lt;p&gt;It is important to understand these key differences. Workflows that are good for
enhancing developer productivity may differ from build engineers. They may
be working on taking care of same codebase, although different aspects of project.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Deleting code</title>
        <published>2024-11-01T00:00:00+00:00</published>
        <updated>2024-11-01T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0055-deleting-code/"/>
        <id>https://daily.himvis.com/0055-deleting-code/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0055-deleting-code/">&lt;p&gt;A regular output of productivity in software is lines of code. We
talk about how many lines of code someone writes on average per day.&lt;&#x2F;p&gt;
&lt;p&gt;But a converse question I ask.&lt;&#x2F;p&gt;
&lt;p&gt;How many lines of code did you remove today ?&lt;&#x2F;p&gt;
&lt;p&gt;A lot of software, Open Source or otherwise, we come to touch today
has a large body of code already. Typically, more code is added to
implement a new feature or property. While doing so, we come across&lt;&#x2F;p&gt;
&lt;p&gt;&lt;code&gt;Dead code&lt;&#x2F;code&gt; - It once was used but not any longer&lt;&#x2F;p&gt;
&lt;p&gt;&lt;code&gt;Unused code&lt;&#x2F;code&gt; - It was added in anticipation at one point of time&lt;&#x2F;p&gt;
&lt;p&gt;&lt;code&gt;Duplicate code&lt;&#x2F;code&gt; - It was not known there was an implementation available&lt;&#x2F;p&gt;
&lt;p&gt;&lt;code&gt;Commented-out code&lt;&#x2F;code&gt; - This is kept for reference, but it adds to distraction more than help&lt;&#x2F;p&gt;
&lt;p&gt;&lt;code&gt;Sub-optimal code&lt;&#x2F;code&gt; - First pass, left over from POC made into product&lt;&#x2F;p&gt;
&lt;p&gt;All of this code is candidate for adding negative number of lines
to codebase. However, we do not plan this along with the feature that
will require to travel through these code paths. As a result we keep
on adding and over time complexity gets us.&lt;&#x2F;p&gt;
&lt;p&gt;Code cleanliness should be part of culture, if developer sees an opportunity
to remove code, there should be an easy process for this to become a sub-task
in current task at hand. It should be celebrated.&lt;&#x2F;p&gt;
&lt;p&gt;Removing &quot;unneeded&quot; code can help reduce &lt;code&gt;bugs-per-line-of-code&lt;&#x2F;code&gt;,
improve compilation speeds, ensure that a program is easy to read, maintain,
and understand, especially for other developers who may work on it later&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Enablers</title>
        <published>2024-10-31T00:00:00+00:00</published>
        <updated>2024-10-31T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0054-enablers/"/>
        <id>https://daily.himvis.com/0054-enablers/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0054-enablers/">&lt;p&gt;There are two aspects broadly in any product organization&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;The products itself&lt;&#x2F;li&gt;
&lt;li&gt;Enabling technologies to support it&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;If you are part of former, it&#x27;s easy to quantize the effort since it can be directly related to
revenue of the product. However, if you are part of latter, then it&#x27;s quite hard to demonstrate the
value of enabling pieces since there is a degree of separation between the revenue and the enabling
technologies, therefore, it&#x27;s likely that such areas can go under-funded as they are seen purely as
cost centers.&lt;&#x2F;p&gt;
&lt;p&gt;So think about ways to quantify the impact an enabling technology is having on your product offerings&lt;&#x2F;p&gt;
&lt;p&gt;Are you a compiler engineer in a Semi-conductor organization, think of ways how a small optimization
pass can up the sales of the chip it&#x27;s going to optimize for.&lt;&#x2F;p&gt;
&lt;p&gt;If you are part of Operating Systems team at a hardware product company, think of ways, how OS feature
can squeeze more performance out of the hardware&lt;&#x2F;p&gt;
&lt;p&gt;If you are part of developer experience organization, think about how using certain tool is bumping
the developer productivity.&lt;&#x2F;p&gt;
&lt;p&gt;Simple proven co-relations can go long way in putting enabling tech at the forefront instead of
being there &lt;code&gt;to keep the lights on&lt;&#x2F;code&gt;&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Best Practices for Writing Good Commit message</title>
        <published>2024-10-30T00:00:00+00:00</published>
        <updated>2024-10-30T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0053-best-practices-for-writing-good-commit-message/"/>
        <id>https://daily.himvis.com/0053-best-practices-for-writing-good-commit-message/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0053-best-practices-for-writing-good-commit-message/">&lt;p&gt;&lt;em&gt;&lt;strong&gt;Keep it Short and Descriptive:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Start with a brief summary of the change (ideally 50 characters or fewer).&lt;&#x2F;p&gt;
&lt;p&gt;For example, &quot;busybox: Fix memory leak in inittab applet.&quot; is better than “Fixing bug that caused login issues due to inittab utility by upgrading busybox to latest.”&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Use the Imperative voice:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Write as if you’re instructing the code to do some action&lt;&#x2F;p&gt;
&lt;p&gt;&quot;Add login feature,&quot; &quot;Update documentation,&quot; &quot;Remove deprecated API.&quot;&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Explain Why, Not Just What:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;For non-trivial changes, provide a longer explanation in the body of commit message.&lt;&#x2F;p&gt;
&lt;p&gt;Why did you make this change? What problem does it solve?&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Separate the Subject from the Body:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Use the first line as a short summary, then include additional details below if needed.
Keep lines within the body at 72 characters or fewer for readability.&lt;&#x2F;p&gt;
&lt;p&gt;Remember consistency is the key. Creating a commit message template and better yet
making it a pre-commit hook to pre-populate commit message can go a long way.&lt;&#x2F;p&gt;
&lt;p&gt;Writing good commit messages might seem trivial, but it makes a big difference in keeping
a project organized, comprehendable, and maintainable, which pays off as
the codebase grows.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Writing good commit messages</title>
        <published>2024-10-29T00:00:00+00:00</published>
        <updated>2024-10-29T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0052-writing-good-commit-messages/"/>
        <id>https://daily.himvis.com/0052-writing-good-commit-messages/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0052-writing-good-commit-messages/">&lt;p&gt;It is crucial for effective collaboration, maintaining the code
overtime and understanding the code in general. Well written commit
messages help the team (and future self) quickly grasp the context&lt;&#x2F;p&gt;
&lt;p&gt;What changes were made&lt;&#x2F;p&gt;
&lt;p&gt;Why these changes were needed&lt;&#x2F;p&gt;
&lt;p&gt;How they fit into larger scheme of project&lt;&#x2F;p&gt;
&lt;p&gt;Most of the software development happens in geographically dispersed
scenario these days. Code Reviewers might not be in same floor
to peek over the cubicle. Descriptive commit messages can provide
needed context to allow team members to know what has been done
without digging into code, this becomes important in large teams
where people may work on different parts of the project.&lt;&#x2F;p&gt;
&lt;p&gt;Clear, consistent messages reduce back-and-forth communication, allowing developers to follow each other&#x27;s work and avoid unnecessary duplication of effort.&lt;&#x2F;p&gt;
&lt;p&gt;Git commit messages are also historical record of a project’s development. By writing clear, meaningful messages, developers can see how and why the project evolved over time.&lt;&#x2F;p&gt;
&lt;p&gt;It can be invaluable in understanding why decisions were made, especially for people who join the project later. Well-documented commits can provide insight into past choices, making it easier for newcomers to ramp up on the project.&lt;&#x2F;p&gt;
&lt;p&gt;Consistent messages with standardized formats make it easier to &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;YoeDistro&#x2F;yoe-distro&#x2F;blob&#x2F;master&#x2F;CHANGELOG.md&quot;&gt;auto-generate changelogs&lt;&#x2F;a&gt; and documentation, making releases and version management smoother.&lt;&#x2F;p&gt;
&lt;p&gt;What makes a good commit messsage?&lt;&#x2F;p&gt;
&lt;p&gt;Let us discuss tomorrow&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>We need immutable systems</title>
        <published>2024-10-28T00:00:00+00:00</published>
        <updated>2024-10-28T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0051-we-need-immutable-systems/"/>
        <id>https://daily.himvis.com/0051-we-need-immutable-systems/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0051-we-need-immutable-systems/">&lt;p&gt;Many of us know systems which are &lt;code&gt;not touched because they should always work&lt;&#x2F;code&gt;.
Software is getting into critical infrastructures at an accelerated pace, train
systems, aviation, energy systems, power distribution systems, satellites, everything is
using software and a lot of it. If we follow the same philosophy to &lt;code&gt;not touch them because they should always work&lt;&#x2F;code&gt;, they quickly become insecure and in a
connected world more vulnerable.&lt;&#x2F;p&gt;
&lt;p&gt;If we mull over the question - why do we not touch such high stake systems ?
We can see few reasons&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Deployment states are not reflective of inputs that are source control managed
this could happen if the system has runtime configurations dependent upon
system state.&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;We are not confident of rolling back to a known prior state.&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;The system images are not reproducible&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;One can say we got containers, but if we examine a little more, we realize
that they are built upon current non-deterministic systems as baseline
that itself limits this approach.&lt;&#x2F;p&gt;
&lt;p&gt;So we need to re-think how we build these systems afresh.&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Hash the inputs&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;Build on non-networked systems&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;All configuration changes happen during build instead of deployment&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;Given same inputs, the output is reproducible irrespective of time, build machines, and infrastructure&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;These systems tend to be flexible adding to learning curve and every deployment looks unique
which can offer challenges of its own, therefore it should be made re-usable and shared templates
can help.&lt;&#x2F;p&gt;
&lt;p&gt;Do we have such build infrastructures ?&lt;&#x2F;p&gt;
&lt;p&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.yoctoproject.org&#x2F;&quot;&gt;Yocto Project&lt;&#x2F;a&gt;, &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;nixos.org&#x2F;&quot;&gt;Nix and NixOS&lt;&#x2F;a&gt; are looking promising !!&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Know if your OSS project is losing steam</title>
        <published>2024-10-25T00:00:00+00:00</published>
        <updated>2024-10-25T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0050-know-if-your-oss-project-losing-steam/"/>
        <id>https://daily.himvis.com/0050-know-if-your-oss-project-losing-steam/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0050-know-if-your-oss-project-losing-steam/">&lt;p&gt;Open Source communities are hard to build and unlike 20 years ago,
there is a lot of competition with millions of projects on github&#x2F;gitlab and new ones popping up everyday&lt;&#x2F;p&gt;
&lt;p&gt;It can be concerning if your open-source community might be losing momentum.&lt;&#x2F;p&gt;
&lt;p&gt;How do you know ?&lt;&#x2F;p&gt;
&lt;p&gt;Here are some important signs, putting measures for each one of these could give realistic view.&lt;&#x2F;p&gt;
&lt;ol&gt;
&lt;li&gt;Reduced Contributions - Fewer pull requests, reduced number of bug reports&lt;&#x2F;li&gt;
&lt;li&gt;Lower engagement on communication channels - Slow down on mailing list traffic, discord, IRC, getting quieter&lt;&#x2F;li&gt;
&lt;li&gt;Development Jam - Delay in releases, increase in backlog&lt;&#x2F;li&gt;
&lt;li&gt;Departing key contributors&lt;&#x2F;li&gt;
&lt;li&gt;No successor plan&lt;&#x2F;li&gt;
&lt;li&gt;Decline in number of new users&lt;&#x2F;li&gt;
&lt;li&gt;Outdated documentation&lt;&#x2F;li&gt;
&lt;li&gt;Lower attendance at events&lt;&#x2F;li&gt;
&lt;li&gt;Lack of funding or sponsorship&lt;&#x2F;li&gt;
&lt;li&gt;No clear roadmap&lt;&#x2F;li&gt;
&lt;&#x2F;ol&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;What You Can Do&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Hold events, push for a new release, and engage on forums&#x2F;social media. It may help re-ignore engagement.&lt;&#x2F;p&gt;
&lt;p&gt;Make contributing easier by improving documentation, creating beginner-friendly tasks, and acknowledging contributions.&lt;&#x2F;p&gt;
&lt;p&gt;Ensure that the core team has a succession plan and shares the responsibility of maintaining the project.&lt;&#x2F;p&gt;
&lt;p&gt;Being proactive in identifying and addressing these warning signs can help before it is too late.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Positively inclined</title>
        <published>2024-10-24T00:00:00+00:00</published>
        <updated>2024-10-24T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0049-positively-inclined/"/>
        <id>https://daily.himvis.com/0049-positively-inclined/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0049-positively-inclined/">&lt;p&gt;If you work on software then you would agree that there are bugs everywhere,
more code you peruse more bugs you see. Impelled by our negativity bias, this
can make us propagate the negative sentiment to others via social media or
other means. Human-beings tend to attract towards strong emotions negative o
positive, perhaps due to our social makings. So such postings can get quite
a bit of traction.&lt;&#x2F;p&gt;
&lt;p&gt;We also know that software is running many systems from small sensors to planes.
So something must be working. In fact, more is working than what is broken. So
choose to be positively inclined. This can make us more collaborative, see
these bugs as opportunities to make things better, moreover it can keep us
adaptable in fast changing world of software engineering.&lt;&#x2F;p&gt;
&lt;p&gt;So share your problem-solving stories e.g. You saw this bug and how you fixed it
more, this may also inspire someone else who is surrounded by broken software as well.&lt;&#x2F;p&gt;
&lt;p&gt;A small contribution to culture of progress&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Ground-up or Top-down</title>
        <published>2024-10-23T00:00:00+00:00</published>
        <updated>2024-10-23T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0048-ground-up-or-top-down/"/>
        <id>https://daily.himvis.com/0048-ground-up-or-top-down/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0048-ground-up-or-top-down/">&lt;p&gt;When building Linux Distributions, you will be faced with two approaches - ground-up and top-down&lt;&#x2F;p&gt;
&lt;p&gt;Each has its own advantages and use cases depending on the goals and constraints of the project&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Ground-up&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt; is mimimal by default, you have hight control, every component can be fine-tuned for optimizing function of your distribution. Installs what you need means it is lightweight and has lower surface area for security cover. It requires high level of
expertise, understanding dependencies, compiling techniques, configuring systems, handling incompatibilities. Yocto project, buildroot, linux-from-scratch are some
well-known opensource projects to use for this approach.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Top-down&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt; approach starts with fully-featured Linux distribution and then removes or customizes components to meet specific needs. It&#x27;s quicker to implement but might have more overhead due to pre-installed components. Derivative distributions e.g.
debian-based or fedara-based for particular usecase comes under top-down approach.&lt;&#x2F;p&gt;
&lt;p&gt;There is a &lt;em&gt;new approach&lt;&#x2F;em&gt; to assembling distributions which has  declarative configuration, reproducibility, atomic upgrades, and isolation as core principles which are highly
desired devops and clound environments or other &lt;code&gt;Infrastructure as Code&lt;&#x2F;code&gt; environments.
NixOS is one such distribution, complemented with a prebuilt Nix store and powerful
package manager &lt;code&gt;Nix&lt;&#x2F;code&gt;, makes it a compelling choice. But it does have a steep learning curve.&lt;&#x2F;p&gt;
&lt;p&gt;Use a &lt;code&gt;ground-up&lt;&#x2F;code&gt; approach when control, performance, and a minimal system are priorities, especially in constrained environments.
Use a &lt;code&gt;top-down&lt;&#x2F;code&gt; approach when time-to-deployment and ease of use are key, especially in general-purpose or large-scale deployments where a base system can be stripped or expanded.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Rolling releases</title>
        <published>2024-10-22T00:00:00+00:00</published>
        <updated>2024-10-22T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0047-rolling-releases/"/>
        <id>https://daily.himvis.com/0047-rolling-releases/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0047-rolling-releases/">&lt;p&gt;A rolling release is a software development model where updates are continuously delivered rather than in large, fixed version releases or time-based releases. Instead of waiting for a new major version (e.g., version 2.0 after version 1.0), the software is continuously updated with new features, bug fixes, security patches as they become ready.&lt;&#x2F;p&gt;
&lt;p&gt;I have been using ArchLinux as my daily driver which uses this model.
Recently moved the webserver also on an Archlinux OS, update the
distributions once a week and optionally reboot if kernel is updated otherwise continue. My workstation has been rolling on ArchLinux
since 2016 and hope that webserver continues with the streak as well.&lt;&#x2F;p&gt;
&lt;p&gt;Usually its said that rolling release is preferred by developers who
want cutting-edge software and are ready for frequent upgrade&#x2F;reboots,
requires more active maintenance, which is true but if I calculate
total time spent on maintenance on a rolling release it is far less
than maintaining time-based releases lets say Ubuntu, consider
time I will spend upgrading from 22.04 to 24.04, its perhaps double the
amount I need to spend on Archlinux in that two year period.&lt;&#x2F;p&gt;
&lt;p&gt;Rolling releases are also informing me regularly of technical cruft I collect
as a result I collect less, it keeps the system nimble.&lt;&#x2F;p&gt;
&lt;p&gt;Overall, it looks to have simplified the process.&lt;&#x2F;p&gt;
&lt;p&gt;We grow from being infant to toddler to teenager and adult in a
continual manner, we do not freeze ourselves to be an 8-year-old for
next 5 years and suddenly become a teenager one fine day,
so life itself seems to be following a rolling release model and hence a
natural process. If we can get a process which reflects
nature, its already tested and tried, we only need to ensure that
right kind of guardrails are in place for it to work effectively&lt;&#x2F;p&gt;
&lt;p&gt;Keep Rolling !&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Productivity Hacks</title>
        <published>2024-10-21T00:00:00+00:00</published>
        <updated>2024-10-21T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0046-productivity-hacks/"/>
        <id>https://daily.himvis.com/0046-productivity-hacks/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0046-productivity-hacks/">&lt;p&gt;In last two decades a lot of productivity related software apps, books, and
articles have been published, they all tell you about cool hacks to shore
up productivity, we have seen techniques from &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;zettelkasten.de&#x2F;overview&#x2F;&quot;&gt;zettelkasten&lt;&#x2F;a&gt; to knowledge
management systems to time management schemes.&lt;&#x2F;p&gt;
&lt;p&gt;They do not tell one thing however&lt;&#x2F;p&gt;
&lt;p&gt;You still need to do the hard-work to get things done. These auxiliary systems
will not solve that problem, the hard thinking for the content of your email,
newsletters, your talk at conference, the chapters of your book, paragraphs
of your next blog post.&lt;&#x2F;p&gt;
&lt;p&gt;There is a disconnect between the consumers and producers of the productivity
content, consumers think it will do the work too. It would be good if every
such book or article has a preface, letting readers level set the expectations&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>News - Recommended based on your interests</title>
        <published>2024-10-18T00:00:00+00:00</published>
        <updated>2024-10-18T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0045-news-recommended-based-on-your-interests/"/>
        <id>https://daily.himvis.com/0045-news-recommended-based-on-your-interests/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0045-news-recommended-based-on-your-interests/">&lt;p&gt;I have been using a search engine&#x27;s news portal, and It has recommendations turned on.
Slowly it has turned into a clickbait. To a point where I am not sure if these are
really my interests or are they being slowly made as my interests.&lt;&#x2F;p&gt;
&lt;p&gt;Some examples below&lt;&#x2F;p&gt;
&lt;p&gt;The 2024 winners of XYZ prize ...&lt;&#x2F;p&gt;
&lt;p&gt;You can now use ... here&#x27;s how ...&lt;&#x2F;p&gt;
&lt;p&gt;10 apps I use to supercharge productivity ...&lt;&#x2F;p&gt;
&lt;p&gt;This SF company went belly up ...&lt;&#x2F;p&gt;
&lt;p&gt;This is what happens when you let yourself be driven instead of driving.&lt;&#x2F;p&gt;
&lt;p&gt;So here is a habit tweak I did, open &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;perplexity.ai&quot;&gt;perplexity&lt;&#x2F;a&gt; and ask it&lt;&#x2F;p&gt;
&lt;p&gt;Show me today&#x27;s top news in my zip code&lt;&#x2F;p&gt;
&lt;p&gt;Show me top business news in the USA&lt;&#x2F;p&gt;
&lt;p&gt;And whatever I want to know ....&lt;&#x2F;p&gt;
&lt;p&gt;Exercise your volition or be ready to feed your brain with unwanted thoughts&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>FOSS Guardrails: Contribution Policy</title>
        <published>2024-10-17T00:00:00+00:00</published>
        <updated>2024-10-17T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0044-foss-guardrails-contribution-policy/"/>
        <id>https://daily.himvis.com/0044-foss-guardrails-contribution-policy/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0044-foss-guardrails-contribution-policy/">&lt;p&gt;When drafting an open-source contribution policy, there are several key considerations to
ensure the policy aligns with the organization&#x27;s objectives, legal requirements, and community
expectations. Here are some important factors to consider, I present them in form of
questions to get you going ?&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Goals and Open Source Strategy&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;*&lt;&#x2F;p&gt;
&lt;p&gt;Are you trying to drive innovation ?&lt;&#x2F;p&gt;
&lt;p&gt;Are you trying to attract talent ?&lt;&#x2F;p&gt;
&lt;p&gt;Are you trying to gain visibility in the community ?&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;&lt;strong&gt;Scope of Contribution&lt;&#x2F;strong&gt;&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Should contributions be limited to specific domains relevant to the company’s products?&lt;&#x2F;p&gt;
&lt;p&gt;Is there broader encouragement for all open-source engagement?&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Legal and IP Considerations&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Are you sure that contributions don’t compromise the company’s proprietary code, patents, or trade secrets?&lt;&#x2F;p&gt;
&lt;p&gt;What licenses are allowed under which contributions can be made (e.g., GPL, MIT, Apache) ?&lt;&#x2F;p&gt;
&lt;p&gt;Are the terms of licenses reviewed and approved by legal team ?&lt;&#x2F;p&gt;
&lt;p&gt;Do you need a Contributor License Agreement (CLA) ?&lt;&#x2F;p&gt;
&lt;p&gt;What are CLA signing process for outbound contributions for various projects ?&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Internal Approval Process&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Have you defined a clear internal workflow for approving contributions ?
This may involve legal, management, or engineering oversight to ensure compliance with company policies.&lt;&#x2F;p&gt;
&lt;p&gt;Who is authorized to make contributions ?&lt;&#x2F;p&gt;
&lt;p&gt;Who owns contributions made during work hours or using company resources ?&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Security and Quality&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;How do you ensure contributions are meeting project-specific quality standards ?&lt;&#x2F;p&gt;
&lt;p&gt;Do you have peer-reviews, static code scans, security scans policy to execute before making contributions ?&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Training and Awareness&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;How do you plan to train teams on these practices and processes&lt;&#x2F;p&gt;
&lt;p&gt;Is there a plan to promote a culture of open-source engagement by encouraging employees to
contribute to relevant projects and join open-source communities ?&lt;&#x2F;p&gt;
&lt;p&gt;How do you promote responsible engagement in open-source communities, adherence to Code Of conduct?&lt;&#x2F;p&gt;
&lt;p&gt;Is it important to contribute value rather than just extracting benefits ?&lt;&#x2F;p&gt;
&lt;p&gt;Are the contributions meaningful and of use to the open-source ecosystem ?&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Transparency&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Is your policy &lt;code&gt;Upstream First Policy&lt;&#x2F;code&gt; ?&lt;&#x2F;p&gt;
&lt;p&gt;What is the criteria for contributions to be publicly shared in forums or conferences ?&lt;&#x2F;p&gt;
&lt;p&gt;If an internal project is to be open sourced, Do you have a structured process in place for review, legal clearance, and proper documentation?&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Recognition&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;How do you plan to recognize employees for their contributions to open-source projects?&lt;&#x2F;p&gt;
&lt;p&gt;Are you considering allowing dedicated time (e.g., 20% of work hours) to contribute to open source as part of regular work?&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Collaboration&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;&lt;&#x2F;p&gt;
&lt;p&gt;How do you plan to engage with other companies, foundations, or open-source projects ?&lt;&#x2F;p&gt;
&lt;p&gt;If the company participates in industry standards bodies (e.g., Linux Foundation), how engagements with such groups will be handled ?&lt;&#x2F;p&gt;
&lt;p&gt;If you answer these questions, you can create a well-rounded and compliant open-source contribution policy
to support both business and the wider open-source community.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>FOSS Guardrails: Security protocols and processes</title>
        <published>2024-10-16T00:00:00+00:00</published>
        <updated>2024-10-16T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0043-foss-guardrails-security-protocols-and-processes/"/>
        <id>https://daily.himvis.com/0043-foss-guardrails-security-protocols-and-processes/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0043-foss-guardrails-security-protocols-and-processes/">&lt;p&gt;We used to have devices running embedded software but never connected to other
computers or networked in any way, however, this has changed in past decade or two
with internet, the default designs are online first. This poses a security risk
of sizeable proportions, Open-source has a very robust mechanism to address security
vulnerabilities, therefore build upon the existing vulnerability management
systems for Open-Source&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Ensure a process to regularly monitor and patch vulnerabilities in FOSS components.&lt;&#x2F;li&gt;
&lt;li&gt;Create internal security workgroups and mailing lists.&lt;&#x2F;li&gt;
&lt;li&gt;If you maintain open-source components, setup provisions for reporting vulnerabilities.&lt;&#x2F;li&gt;
&lt;li&gt;Collaborate with the respective open-source component communities.&lt;&#x2F;li&gt;
&lt;li&gt;Integrate open-source security into broader security framework at your organization.&lt;&#x2F;li&gt;
&lt;li&gt;Incident response plans should include open-source.&lt;&#x2F;li&gt;
&lt;li&gt;Deploy tools to collect and monitor information about CVEs.&lt;&#x2F;li&gt;
&lt;li&gt;Make security as preliminary criteria for making choices for OS, Build systems, tools.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;Security should be in every part of what you do, not an afterthought.
If ignored or implemented as add-on it can result in
loss of feature velocity, unhappy developers, and diminished quality&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>OpenSource Guardrails: License compliance</title>
        <published>2024-10-15T00:00:00+00:00</published>
        <updated>2024-10-15T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0042-foss-guardrails-license-compliance/"/>
        <id>https://daily.himvis.com/0042-foss-guardrails-license-compliance/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0042-foss-guardrails-license-compliance/">&lt;p&gt;It is important and can be a show-stopper, so creating good guidelines is an important part
of Open-source strategy&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Use tools to scan Open-source codebases used in products to create license maps&lt;&#x2F;li&gt;
&lt;li&gt;Ensure that licenses of various Opens-source components are used together in a compatible manner&lt;&#x2F;li&gt;
&lt;li&gt;Select tools for software composition analysis to help automate the compliance check process&lt;&#x2F;li&gt;
&lt;li&gt;Create a document on various licenses and how they are supposed to be used as part of overall
OSS strategy. It is a living document, which reflect the changes as they happen in community&lt;&#x2F;li&gt;
&lt;li&gt;Make license compliance automated as much as possible and part of CI systems&lt;&#x2F;li&gt;
&lt;li&gt;Create internal communication channels for developer reach-out.&lt;&#x2F;li&gt;
&lt;li&gt;Maintain a record of open-source license usage&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;Make it seamless part of workflow&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>OpenSource Guardrails - Governance</title>
        <published>2024-10-14T00:00:00+00:00</published>
        <updated>2024-10-14T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0041-on-software-3/"/>
        <id>https://daily.himvis.com/0041-on-software-3/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0041-on-software-3/">&lt;p&gt;Governance ensures that the use, contribution, and management of FOSS
align with the company&#x27;s strategic objectives, legal requirements, and
operational standards.&lt;&#x2F;p&gt;
&lt;p&gt;Establishing an open source governance committee is crucial fundamental
step, It includes stakeholders from legal, security, compliance, engineering
development, and management teams.&lt;&#x2F;p&gt;
&lt;p&gt;This team is tasked with&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Establishing the FOSS policies and ensuring the adherence to them&lt;&#x2F;li&gt;
&lt;li&gt;Review and approve inbound and outbound open-source&lt;&#x2F;li&gt;
&lt;li&gt;Stay actively engaged on legal and industry changes w.r.t. open-source&lt;&#x2F;li&gt;
&lt;li&gt;Build a training plans for teams according to their needs.&lt;&#x2F;li&gt;
&lt;li&gt;Build bridges to connect teams with open-source communities.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;It may establish further teams e.g. an open-source Council to review and approve
outbound contributions and license compliance guidelines.&lt;&#x2F;p&gt;
&lt;p&gt;A successful Governance model will act as joining fabric between various teams
and act as catalyst to improve team efficiency, A failed one will insert itself
as an enforcer and reduce product velocity. Teams producing and consuming
open-source will notice it both ways.&lt;&#x2F;p&gt;
&lt;p&gt;Measuring success of such a team is not that hard.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Define OpenSource Guardrails</title>
        <published>2024-10-11T00:00:00+00:00</published>
        <updated>2024-10-11T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0040-on-software-2/"/>
        <id>https://daily.himvis.com/0040-on-software-2/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0040-on-software-2/">&lt;p&gt;OpenSource software (FOSS) has become an appealing option for various
IT infrastructures, offering companies access to plethora of tools and
other software at minimal cost. However, without proper oversight, this
can introduce risks such as security, licensing and policy. To mitigate
these risks organizations should establish clear guidelines for.&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Governance Framework&lt;&#x2F;li&gt;
&lt;li&gt;License Compliance&lt;&#x2F;li&gt;
&lt;li&gt;Security protocols and processes&lt;&#x2F;li&gt;
&lt;li&gt;Inner source&lt;&#x2F;li&gt;
&lt;li&gt;Contribution policy&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;What does your organizations OSS framework look like ?&lt;&#x2F;p&gt;
&lt;p&gt;In subsequent posts, We will discuss each one of above list
in detail.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Know your OpenSource (FOSS) consumption</title>
        <published>2024-10-10T00:00:00+00:00</published>
        <updated>2024-10-10T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0039-on-software-1/"/>
        <id>https://daily.himvis.com/0039-on-software-1/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0039-on-software-1/">&lt;p&gt;In a &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.linuxfoundation.org&#x2F;blog&#x2F;blog&#x2F;a-summary-of-census-ii-open-source-software-application-libraries-the-world-depends-on&quot;&gt;2022 study by Linux Foundation&lt;&#x2F;a&gt;, It is estimated that 70-90% of any given piece of modern software contains open source components&lt;&#x2F;p&gt;
&lt;p&gt;Did you know that ?&lt;&#x2F;p&gt;
&lt;p&gt;If not then you know now that FOSS is the crown-jewel not other way around.
You can gain a lot by using FOSS effectively, you might write
the best quality code, follow all good practices for the 30% but imagine if you did the same for the
70%, it will move the needle a lot more in your favor.&lt;&#x2F;p&gt;
&lt;p&gt;Have a strategy to know all OSS components that the product depend upon. There is a category of tools
called Software Composition Analyzers (SCA) tools
which can build these manifests or some build systems like Yocto Project have this information
included on day you start using it.&lt;&#x2F;p&gt;
&lt;p&gt;Now, if you have the dependency graph, you will see some of the following&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Multiple FOSS components providing same functionality e.g. libtinyxml2, libxml2
they maybe pulled by different components, but it would be good if you could just use one
XML parser in the Software stack for the product.&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;Some components might be out of policy, Have a plan to address this effectively.&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;Some components are pulled into stack but are effectively unused, came in via over-dependencies&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;Sometimes default features might enable more than required features e.g. zstd, xz, lzma dependencies
are they all used in products ? if not disable them, this can also reduce the number of dependencies&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;Finally consider changes to your applications to use common libraries and tools from FOSS, build a
recommendation catalog and make it available to the software teams.&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;Find out the bottlenecks, e.g. a FOSS component that has ceased to develop, or a new replacement is
in place. Have strategy to remove such bottlenecks, they can cause a lot of grief in due course&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;Find the core FOSS dependencies that are absolutely critical for the products and find ways to help
keep these FOSS projects healthy for your own good.&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;
&lt;p&gt;Have a plan to address security vulnerabilities, sooner than later. It will be required immediately
after release.&lt;&#x2F;p&gt;
&lt;p&gt;A strategy to reduce surface area of FOSS dependencies and then going all in to support their
health is an effective strategy that will save you millions of dollars over life of products.&lt;&#x2F;p&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Decoding Silos</title>
        <published>2024-10-09T00:00:00+00:00</published>
        <updated>2024-10-09T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0038-on-strategy-10/"/>
        <id>https://daily.himvis.com/0038-on-strategy-10/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0038-on-strategy-10/">&lt;p&gt;Software organizations are not immune to silos, despite their
deep technological focus. I have heard silos being attributed to
be a people trait, but is it ? Or is it organizational culture trait ?&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Communication Silos:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; A product marketing campaign is created without
consulting the software engineering team. It promises features which
are not deliverable in stipulated time. Outcome is a tarnished brand
and unhappy customers. Remember Kodak ?&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Organizational Silos:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; In large software engineering and product organizations
teams drift away giving rise to lack of understanding about what other
teams might be working on. You get duplicate efforts, inefficient use of
resources e.g. cloud VMs doing same base builds of SDKs for two different
teams.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Information Silos:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; Every functional team uses different tools to track
and manage their activities causing fragmentation which can lead to poor
view of operations and hinder decision-making.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Product Silos:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; Different departments work independently, each developing
their own operating systems e.g. This lack of collaboration leads to a disjointed
product offering, allowing competitors foot in the door. Remember how Nokia
fell behind at onset of smartphone era?&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Data Silos:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; Organizations often face challenges when different teams use
separate apps and systems, leading to inconsistent or duplicate data within
the organization. This can result in reduced collaboration, inefficiencies,
and data integrity problems.&lt;&#x2F;p&gt;
&lt;p&gt;Do you see silos around you ?&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Beware of Shortcuts</title>
        <published>2024-10-08T00:00:00+00:00</published>
        <updated>2024-10-08T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0037-on-strategy-9/"/>
        <id>https://daily.himvis.com/0037-on-strategy-9/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0037-on-strategy-9/">&lt;p&gt;Taking shortcuts in software development might save time in the short run,
but it often leads to technical debt and headaches down the road.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Skipping tests:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; Commonly, ignored if its not part of delivery, which often is case
ignoring documentation: Common phrase goes by &quot;code is documentation&quot;, are you being
true to this ? have you spent time in writing legible code that it does not require
to be documented ? Interfaces will need to be documented.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Hardcoding values:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; Seems to work for this project, this device, what happens when
this code is to work on the next device or next product in pipeline?&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;Employing a fix in wrong component&#x2F;place:&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt; This is a quick-fix due to time pressure,
don&#x27;t worry we will fix it in &lt;em&gt;rightway&lt;&#x2F;em&gt; but not now, the right fix involves changes
in multiple places and interacting with others. So ask, When will the right fix happen ?&lt;&#x2F;p&gt;
&lt;p&gt;These kinds of practices can cause bugs, make future updates difficult
and harm scalability.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;em&gt;Remember:&lt;&#x2F;em&gt; quality code is built on strong foundations.
Invest time in doing it right the first time—your future
self (and your team!) will thank you&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>InnerSource: Applying Open Source Practices in Enterprises</title>
        <published>2024-10-07T00:00:00+00:00</published>
        <updated>2024-10-07T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0036-on-strategy-8/"/>
        <id>https://daily.himvis.com/0036-on-strategy-8/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0036-on-strategy-8/">&lt;p&gt;In one of &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;daily.himvis.com&#x2F;0024-on-code-7&#x2F;&quot;&gt;previous&lt;&#x2F;a&gt; posts I promised to write about Innersource.
Today let&#x27;s discuss Innersource&lt;&#x2F;p&gt;
&lt;p&gt;In the rapidly evolving world of software development, collaboration
and transparency are key. This is where InnerSource comes into picture,
bringing the best practices from the open-source community into private
companies. InnerSource refers to the adoption of open-source methods
such as sharing code, peer review, and collaborative development
within the walls of an organization.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;how-innersource-works&quot;&gt;How InnerSource Works&lt;&#x2F;h3&gt;
&lt;p&gt;In a typical InnerSource environment, internal teams are encouraged to
contribute to code bases across the company, even if they aren&#x27;t part
of the original project. This mirrors the way open-source projects
welcome contributions from anyone, provided they adhere to the
established guidelines.&lt;&#x2F;p&gt;
&lt;p&gt;For example, a developer in the security team might contribute to a
user-interface project if they have expertise or ideas that could
improve the product. The code is usually stored in accessible
repositories, making it easy for developers to find and contribute.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;key-benefits-of-innersource&quot;&gt;Key Benefits of InnerSource&lt;&#x2F;h3&gt;
&lt;h4 id=&quot;cross-team-collaboration&quot;&gt;Cross-Team Collaboration:&lt;&#x2F;h4&gt;
&lt;p&gt;By opening up codebases to different teams
InnerSource breaks down silos within organizations, fostering
cross-functional collaboration.&lt;&#x2F;p&gt;
&lt;h4 id=&quot;improved-code-quality&quot;&gt;Improved Code Quality:&lt;&#x2F;h4&gt;
&lt;p&gt;With more eyes on the code, peer review becomes
more robust, leading to better-quality software. Different teams can
spot potential issues that the original developers may have missed.&lt;&#x2F;p&gt;
&lt;h4 id=&quot;faster-innovation&quot;&gt;Faster Innovation:&lt;&#x2F;h4&gt;
&lt;p&gt;InnerSource encourages faster innovation by promoting
the reuse of existing code. Teams don’t need to start from scratch—they
can leverage code that’s already written and adapt it to their needs.&lt;&#x2F;p&gt;
&lt;h4 id=&quot;developer-empowerment&quot;&gt;Developer Empowerment:&lt;&#x2F;h4&gt;
&lt;p&gt;Developers are encouraged to contribute wherever
they feel they can make an impact, enhancing job satisfaction and
fostering a culture of ownership.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;challenges-of-innersource&quot;&gt;Challenges of InnerSource&lt;&#x2F;h3&gt;
&lt;p&gt;Adopting InnerSource isn’t without challenges. It requires a cultural shift
where teams feel comfortable sharing code and receiving feedback. Managing
the process of accepting contributions, reviewing code, and handling conflicts
between teams also requires new workflows and governance models.&lt;&#x2F;p&gt;
&lt;p&gt;InnerSource allows enterprises to tap into the collaborative spirit of
open source, enhancing both productivity and code quality. By encouraging
transparency and knowledge sharing across teams, companies can foster
innovation and create a more cohesive development culture.&lt;&#x2F;p&gt;
&lt;p&gt;If you&#x27;re interested in making the leap to InnerSource, start by identifying
a few pilot projects and gradually scale the initiative as teams grow more
comfortable with the process.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Unintended opensource forks</title>
        <published>2024-10-04T00:00:00+00:00</published>
        <updated>2024-10-04T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0035-on-strategy-7/"/>
        <id>https://daily.himvis.com/0035-on-strategy-7/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0035-on-strategy-7/">&lt;p&gt;When an organization wants to use open-source software, a common
practice is to take a release and start working with it, initially
testing out on upstream&#x27;s supported platforms and tested configurations.
Team learns about the project, its design and inner workings. Up until
here it&#x27;s all fine. Next step is to add a new feature, or port it to
work on the company designed hardware. Team starts to make changes.&lt;&#x2F;p&gt;
&lt;p&gt;That&#x27;s the fork in the road !!&lt;&#x2F;p&gt;
&lt;p&gt;The moment when change is committed to local repository
without upstream being involved or engaged
you have created a fork of upstream project, perhaps an unintended one.
It also means that you are now competing with the changes of other
developers in that community because they may make conflicting changes
in same area touched by your teams, or re-architect, do major code
reorganization, change APIs ...&lt;&#x2F;p&gt;
&lt;p&gt;You have two choices&lt;&#x2F;p&gt;
&lt;p&gt;Create a hard fork which never merges upstream, the cost of maintaining
it increases exponentially with time&lt;&#x2F;p&gt;
&lt;p&gt;or&lt;&#x2F;p&gt;
&lt;p&gt;Engage with project upstream, make a case for the changes you want to do,
negotiate and listen to community feedback on your proposal. While it may
seem moving slowly, your changes experiencing more vetting, sometimes
negative feedback etc. may make you conclude it as waste of time and resort
to option 1, but in long run the payback of this time spent doing it with
upstream results in lower cost, improved feature velocity and above all
happy developers and happy customers&lt;&#x2F;p&gt;
&lt;p&gt;Watch out for these invisible forks fervently, before you walk down them
too far.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Picasso&#x27;s Bulls</title>
        <published>2024-10-03T00:00:00+00:00</published>
        <updated>2024-10-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0034-on-strategy-6/"/>
        <id>https://daily.himvis.com/0034-on-strategy-6/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0034-on-strategy-6/">&lt;p&gt;Over time a lot of software has been written, and a common theme has
emerged on building on top of existing softwar,e or we shall say reuse, some examples
include Ruby on Rails, React, Angular, Flutter, Electron, Bootstrap, tailwind CSS, etc.
These frameworks have become complex and requires quite a bit of learning and have
life of their own, while websites can still be made using PHP or good old LAMP stack
with some good guidelines in place, they can be quick to develop and fast to perform.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.artyfactory.com&#x2F;art_appreciation&#x2F;animals_in_art&#x2F;pablo_picasso.htm&quot;&gt;Pablo Picasso&#x27;s Bull&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;
&lt;p&gt;See how design simplifies from lithograph 1 through 11, it tells us creativity does
not necessarily express by adding more, but sometimes subtracting and simplifying.
Key is to find the balance between complexity and simplicity.&lt;&#x2F;p&gt;
&lt;p&gt;There is no substitute for well-thought-out constraints in using tools, infrastructure
and programming language features to use. Natural outcome is simplicity, Even if initial
design is complex as you iterate is fine if the tendency is to simplify, if this holds
you will win eventually.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Reducing software maintenance cost</title>
        <published>2024-10-02T00:00:00+00:00</published>
        <updated>2024-10-02T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0033-on-strategy-5/"/>
        <id>https://daily.himvis.com/0033-on-strategy-5/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0033-on-strategy-5/">&lt;p&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;daily.himvis.com&#x2F;0032-on-strategy-4&#x2F;&quot;&gt;Yesterday&lt;&#x2F;a&gt; I mentioned that 70% of total cost of software products over its
lifetime is maintenance, so how can you reduce this cost, Using open-source
software components and keeping them up-to-date in the projects can ward off
creeping technical debt which can become unsurmountable quickly if left alone.&lt;&#x2F;p&gt;
&lt;p&gt;Are you aware of all the dependencies your product depend upon ?&lt;&#x2F;p&gt;
&lt;p&gt;Do you have a plan to update these dependencies in timely fashion ?&lt;&#x2F;p&gt;
&lt;p&gt;Do you have a good process to assess the health of these dependencies over lifetime of product ?&lt;&#x2F;p&gt;
&lt;p&gt;Are you ready to participate in keeping these dependencies in good shape ?&lt;&#x2F;p&gt;
&lt;p&gt;A little effort now can result in huge benefits in longer run.&lt;&#x2F;p&gt;
&lt;p&gt;Treating software like a living organism can have many benefits.&lt;&#x2F;p&gt;
&lt;p&gt;What is your software product maintenance plan ?&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Maintenance is costlier than development</title>
        <published>2024-10-01T00:00:00+00:00</published>
        <updated>2024-10-01T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0032-on-strategy-4/"/>
        <id>https://daily.himvis.com/0032-on-strategy-4/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0032-on-strategy-4/">&lt;p&gt;Many organizations do not realize that initial development and design costs are
a fraction of total cost of the product over its lifetime. In some studies it
is said that 70% of the cost could be in maintenance. Defining maintenance cost
for software products is harder due to dynamic nature and fast paced delivery
mechanisms deployed in software products. A &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.researchgate.net&#x2F;publication&#x2F;221408114_Distribution_of_Cost_over_the_Application_Lifecycle_-_a_Multi-case_Study&quot;&gt;paper&lt;&#x2F;a&gt; has interesting study, if you
were to develop and maintain an enterprise application for 5 years life cycle
21% of cost is incurred for design and development, rest 79% goes towards
maintenance.&lt;&#x2F;p&gt;
&lt;p&gt;At the onset, many of our decision get biased towards ease of development, faster
turnaround time for developers, which in itself is a essential, however, it
should be considered with wider view of cost of full life of product, so you
may ask questions like, are we using correct developer workflow, continuous
integration infrastructure, talent pool, community support, tools, ecosystem
richness, 3rd party software support.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Gratitude</title>
        <published>2024-09-30T00:00:00+00:00</published>
        <updated>2024-09-30T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0031-on-strategy-3/"/>
        <id>https://daily.himvis.com/0031-on-strategy-3/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0031-on-strategy-3/">&lt;p&gt;Yesterday I was driving on local roads, and I read this
inspirational quote on the changeable letter signboard
outside the local church&lt;&#x2F;p&gt;
&lt;p&gt;&lt;code&gt;Remember the day when you prayed for things you have today?&lt;&#x2F;code&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Usually I do not pay a lot of attention to these quotes. But
this one stuck with me as I introspected, how I have been on
the gratitude scale lately.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Room for failure</title>
        <published>2024-09-27T00:00:00+00:00</published>
        <updated>2024-09-27T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0030-on-strategy-2/"/>
        <id>https://daily.himvis.com/0030-on-strategy-2/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0030-on-strategy-2/">&lt;p&gt;WL Gore, the makers of Gore-Tex has a unique cultural tradition&lt;&#x2F;p&gt;
&lt;p&gt;When a project does not work out, they celebrate it with a beer or champagne
just like they would do if it succeeded.&lt;&#x2F;p&gt;
&lt;p&gt;What does this do?&lt;&#x2F;p&gt;
&lt;p&gt;It reinforces that making mistakes and failing is integral part
of creative process. It prepares them for embracing and learning
from mistakes, fostering a culture of innovation, resilience and
continuous improvement.&lt;&#x2F;p&gt;
&lt;p&gt;There is a lot of learning that gets washed away when mistakes
are ignored, punished, demeaned, ridiculed, feared .....&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Language</title>
        <published>2024-09-26T00:00:00+00:00</published>
        <updated>2024-09-26T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0029-on-strategy-1/"/>
        <id>https://daily.himvis.com/0029-on-strategy-1/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0029-on-strategy-1/">&lt;p&gt;In his iconic works &lt;code&gt;Tractatus&lt;&#x2F;code&gt;, Austrian philosopher Ludwig Wittgenstein said&lt;&#x2F;p&gt;
&lt;p&gt;&quot;the limits of my language are the limits of my world&quot;&lt;&#x2F;p&gt;
&lt;p&gt;It can be interpreted like this - human experience is more than what we can express in
words&lt;&#x2F;p&gt;
&lt;p&gt;or&lt;&#x2F;p&gt;
&lt;p&gt;It can be interpreted like this - anything that is not expressed in logic and language is meaningless
since we do not understand it.&lt;&#x2F;p&gt;
&lt;p&gt;There always will be nuance to anything we encounter.&lt;&#x2F;p&gt;
&lt;p&gt;What is your interpretation ?&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Open Source mindset</title>
        <published>2024-09-25T00:00:00+00:00</published>
        <updated>2024-09-25T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0028-on-code-11/"/>
        <id>https://daily.himvis.com/0028-on-code-11/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0028-on-code-11/">&lt;p&gt;Linux came on the Operating Systems scene during last decade of 20th century,
how many new operating systems have come after ?&lt;&#x2F;p&gt;
&lt;p&gt;RISCV instruction set (ISA) came around 2015 as 5th Generation of RISC ISA from University of California
Berkley, ( 4th Generation went into MIPS architecture ), this would be the last ISA
we will use for CPU designs for foreseabale future.&lt;&#x2F;p&gt;
&lt;p&gt;Zephyr Real-Time Operating System (RTOS) came around 2015-2016, this has been gaining
on all Microcontroller software and I think this will be the RTOS we will have for
a good while into future.&lt;&#x2F;p&gt;
&lt;p&gt;First GNU Compiler collection and then LLVM project came and no one writes new compilers
anymore.&lt;&#x2F;p&gt;
&lt;p&gt;What is common in all of the above ?&lt;&#x2F;p&gt;
&lt;p&gt;They all are open source software. If done well, OpenSource methodology builds a
solid foundation on which we can stand on and build new things.&lt;&#x2F;p&gt;
&lt;p&gt;Think open do open !!&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Software automation workflows</title>
        <published>2024-09-24T00:00:00+00:00</published>
        <updated>2024-09-24T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0027-on-code-10/"/>
        <id>https://daily.himvis.com/0027-on-code-10/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0027-on-code-10/">&lt;p&gt;If you are repeating a task more than once in a week don&#x27;t worry so much but if
the task is repeated daily, you must consider options to automate it, if not
all perhaps some parts of it. Repeated tasks wear you down and push you into
realm of pseudo productivity. Therefore, look hard at utilizing some automation
to help.&lt;&#x2F;p&gt;
&lt;p&gt;Write filters for email to sort it automatically into different
buckets can help you go through the inbox more effectively.&lt;&#x2F;p&gt;
&lt;p&gt;If you are a developer use cron jobs&lt;&#x2F;p&gt;
&lt;p&gt;save sessions, so they can be reconstructed on single command&lt;&#x2F;p&gt;
&lt;p&gt;build pipelines for tasks which should execute serially&lt;&#x2F;p&gt;
&lt;p&gt;Write webhooks which are listening when you push the code and can run various jobs&lt;&#x2F;p&gt;
&lt;p&gt;Any interrupt you can save yourself from will improve your focus and hence
productivity, it might sound a lot of time to write the scripts but in long run
it will save a lot of time with compound interest.&lt;&#x2F;p&gt;
&lt;p&gt;Automate automate automate !&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Package managers</title>
        <published>2024-09-23T00:00:00+00:00</published>
        <updated>2024-09-23T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0026-on-code-9/"/>
        <id>https://daily.himvis.com/0026-on-code-9/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0026-on-code-9/">&lt;p&gt;Managed package ecosystems accelerate developer productivity manifolds
and promotes reuse. Here below is a small list of languages having package
management strategies, some of them like go, cargo can do building&#x2F;testing
and dependency management.&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;python - PyPI (pip)&lt;&#x2F;li&gt;
&lt;li&gt;Ruby - Rubygems&lt;&#x2F;li&gt;
&lt;li&gt;PHP - Composer&lt;&#x2F;li&gt;
&lt;li&gt;Rust - Cargo&lt;&#x2F;li&gt;
&lt;li&gt;Go - Go modules&lt;&#x2F;li&gt;
&lt;li&gt;JavaScript = NPM&#x2F;Yarn&lt;&#x2F;li&gt;
&lt;li&gt;Elixir - Hex&lt;&#x2F;li&gt;
&lt;li&gt;...&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Productivity Tools for Developers</title>
        <published>2024-09-20T00:00:00+00:00</published>
        <updated>2024-09-20T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0025-on-code-8/"/>
        <id>https://daily.himvis.com/0025-on-code-8/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0025-on-code-8/">&lt;p&gt;We see a lot of discussions on internet on recommending productivity
tools for doing X software in Y framework&#x2F;language etc. How many have
really used these tools and techniques to realize the gains ?&lt;&#x2F;p&gt;
&lt;p&gt;Watch out for discussions where tools are prescribed for developers,
but developer is left out. For effective developments tools are key
that unlocks the potential of the developer. Every organization make
sweeping recommendation e.g. centrally deployed tools for every dev&lt;&#x2F;p&gt;
&lt;p&gt;If it was approached keeping developer at the center of the equation
things will be different.&lt;&#x2F;p&gt;
&lt;p&gt;Focus on unlocking the developers potential by developers themselves&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Compound developer productivity by code reuse</title>
        <published>2024-09-19T00:00:00+00:00</published>
        <updated>2024-09-19T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0024-on-code-7/"/>
        <id>https://daily.himvis.com/0024-on-code-7/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0024-on-code-7/">&lt;p&gt;Before sourcecode management tools like gitlab, github, where did
developers keep their coding pearls of wisdom? mostly on their home
directory. I have seen 9 different implementations of &lt;code&gt;strlen&lt;&#x2F;code&gt; function
which computes length of a string in the same organization.&lt;&#x2F;p&gt;
&lt;p&gt;Enabling collaborative tools can foster code reuse by easing discovery
and result in productivity improvements.&lt;&#x2F;p&gt;
&lt;p&gt;If you use gitlab or github or similar SCM tools these days,
I would suggest to set default visibility of new project to be
&lt;code&gt;public&lt;&#x2F;code&gt; instead of &lt;code&gt;private&lt;&#x2F;code&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;This one tweak can make sea of difference by making code discoverable
across your organization. It is also called &lt;code&gt;innersource&lt;&#x2F;code&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Don&#x27;t worry, when I say &lt;code&gt;public&lt;&#x2F;code&gt; I do not mean open to public, its
visible within your organization. Doing things in open is another good
thing. Its OpenSource development model, More on that some other
day !&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Case for package management in programming languages</title>
        <published>2024-09-18T00:00:00+00:00</published>
        <updated>2024-09-18T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0023-on-code-6/"/>
        <id>https://daily.himvis.com/0023-on-code-6/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0023-on-code-6/">&lt;p&gt;You might have wondered why some programming languages like go, python
rust go as far to include package management, buildtools, etc. as part
of ecosystem. All when we have distributions already having package
management at the core.&lt;&#x2F;p&gt;
&lt;p&gt;There are several benefits of doing this, it promotes&lt;&#x2F;p&gt;
&lt;p&gt;Software reuse.
Version control
Dependency management
Consistency across environments
Easy installation
Promote modularity
Fosters community and ecosystem&lt;&#x2F;p&gt;
&lt;p&gt;It significantly improves efficiency, stability, and security and
automates mundane tasks like dependency management, reduces errors.&lt;&#x2F;p&gt;
&lt;p&gt;A key difference is that it is developer productivity focussed mindset&lt;&#x2F;p&gt;
&lt;p&gt;Reduce the friction, adoption follows.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Concurrency and parallelism are not same</title>
        <published>2024-09-17T00:00:00+00:00</published>
        <updated>2024-09-17T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0022-on-code-5/"/>
        <id>https://daily.himvis.com/0022-on-code-5/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0022-on-code-5/">&lt;p&gt;Concurrency and parallelism are beautiful advanced programming concepts.
Hardware continues to evolve and pack more and more compute units made
available to software, concurrency and parallelism are essential for
writing high-performance code. However, I have seen these terms used and
misused, sometimes conflated to mean same.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;code&gt;Concurrency&lt;&#x2F;code&gt; is managing multiple tasks that are in progress but not
necessarily running&#x2F;executing them at same time. Think of asyncio, threading
event loops.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;code&gt;Parallelism&lt;&#x2F;code&gt; refers to performing many computations simultaneously, a good
fit for big data processing, machine learning models. Think of python&#x27;s
multiprocessing feature.&lt;&#x2F;p&gt;
&lt;p&gt;Understanding thread safety, deadlocks, race conditions, and synchronization
mechanisms (like semaphores and mutexes) is crucial when working with
concurrent or parallel systems.&lt;&#x2F;p&gt;
&lt;p&gt;Human mind can visualize two threads maybe three threads running and the
complexity with each thread added becomes exponentially difficult to track.&lt;&#x2F;p&gt;
&lt;p&gt;These are complex and highly prone to errors, therefore modern programming
languages have tried to provide concurrency handling as part of language
think of go programming language.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>writing business plan is harder than writing code</title>
        <published>2024-09-16T00:00:00+00:00</published>
        <updated>2024-09-16T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0021-on-code-4/"/>
        <id>https://daily.himvis.com/0021-on-code-4/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0021-on-code-4/">&lt;p&gt;Writing business plan is a process of crystallizing
the thoughts that we have in mind into a document which
can communicate the body of work clearly and concisely.&lt;&#x2F;p&gt;
&lt;p&gt;There is never enough market research, never enough
capital, we can not predict future. However, these are key
ingredients of a business plan. How do you write a good
business plan then with limited information in a dynamic
environment which is changing every day.&lt;&#x2F;p&gt;
&lt;p&gt;We would like to do it all, however, a business plan
will ask you to cut down on things you want to do. How
do you deal with the dilemma ?&lt;&#x2F;p&gt;
&lt;p&gt;In some ways a good business plan will drive us towards
clarity of thought and quality of focus on core ideas
which matter. We will have to be strategic, creative
collaborative, and laser sharp focussed.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Code is last</title>
        <published>2024-09-13T00:00:00+00:00</published>
        <updated>2024-09-13T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0020-on-code-3/"/>
        <id>https://daily.himvis.com/0020-on-code-3/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0020-on-code-3/">&lt;p&gt;Whenever a new project is started, we have a tendency
to read the problem hastily and get on to the computer
and start coding it. This is a mistake, it forces the
mind into a narrow thinking. We easily forget the
big picture, resulting in bad design and suboptimal
solution.&lt;&#x2F;p&gt;
&lt;p&gt;Coding can give instant gratification to our mind, but
we should be seeking delayed gratification for best
results.&lt;&#x2F;p&gt;
&lt;p&gt;It is best to think about the problem at abstract level
and build a big picture and a design before you write
a single line of code.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Compiler is your friend</title>
        <published>2024-09-12T00:00:00+00:00</published>
        <updated>2024-09-12T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0019-on-code-2/"/>
        <id>https://daily.himvis.com/0019-on-code-2/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0019-on-code-2/">&lt;p&gt;How do you see the tools when developing software ?
We write correct language primitives and syntax
to represent the program logic. To get best out
of the compiler, you can help it so it can help you
back by generating best code for your program.&lt;&#x2F;p&gt;
&lt;p&gt;Remember, compilers are also software, it is given
a algorithms coded in a language say C&#x2F;C++ and it
has to compile it with in a reasonable time and
system constraints. Compilers use heuristics often
to perform code transformations. If it is not
able to compute a transformation confidently and
within time, it will resort to more conservative
strategy, because its number one job is to generate
correct code, not fast code.&lt;&#x2F;p&gt;
&lt;p&gt;However, if you provide hints via your program then
it can do a lot better job and generate better code.
e.g. inline keyword, Pragmas, data alignment,
vectorization hints etc. This helps compiler understand
a lot more about your code than just the syntax
and logic and do a better job.&lt;&#x2F;p&gt;
&lt;p&gt;Like any other, communication is the key here.
Find ways to communicate better with the tool
and in return you will get better code generation.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Code and readability</title>
        <published>2024-09-11T00:00:00+00:00</published>
        <updated>2024-09-11T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0018-on-code-1/"/>
        <id>https://daily.himvis.com/0018-on-code-1/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0018-on-code-1/">&lt;p&gt;I have seen fabulous computer programmers, who can code any hard
problem at hand. However, I have seen few whose code can be
understood easily by others and perhaps given enough time interval
by themselves too.&lt;&#x2F;p&gt;
&lt;p&gt;While code is meant to be understood by machine in the end, its often
misconstrued term, it should be written to be understood by humans.&lt;&#x2F;p&gt;
&lt;p&gt;There is code that has comments isn&#x27;t that enough for humans ?&lt;&#x2F;p&gt;
&lt;p&gt;No it isn&#x27;t. Overtime, comments can easily go out of sync with
program logic and become irrelevant and hurt the readability
instead of helping.&lt;&#x2F;p&gt;
&lt;p&gt;Writing lucid code is an art.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Friction</title>
        <published>2024-09-10T00:00:00+00:00</published>
        <updated>2024-09-10T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0017-friction/"/>
        <id>https://daily.himvis.com/0017-friction/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0017-friction/">&lt;p&gt;I wanted to develop a habit to go for a daily walk, and I will
always find a reason to skip more often than not, then I decided
to give fewer reasons to my mind. e.g. no need to wear
sports-wear, no need to stick to a time-slot, no need to cover certain
distance. It came down to time spent on tying the laces. I bought
the slip-on shoes and that did it !&lt;&#x2F;p&gt;
&lt;p&gt;Friction is amount of pre-work one needs to do in order to use
something they want to use. If we wonder what will make your
open-source project garner more users or more contributors, the
answer is simple,&lt;&#x2F;p&gt;
&lt;p&gt;&quot;reduce the friction&quot; for someone to use the project&lt;&#x2F;p&gt;
&lt;p&gt;&quot;reduce the friction&quot; for someone to make a contribution&lt;&#x2F;p&gt;
&lt;p&gt;&quot;reduce the friction&quot; for someone to file a bug-report&lt;&#x2F;p&gt;
&lt;p&gt;&quot;reduce the friction&quot; for someone to build your project&lt;&#x2F;p&gt;
&lt;p&gt;Fill in the activities specific to your project.&lt;&#x2F;p&gt;
&lt;p&gt;Reducing friction is central piece from project adoption to
self-improvements and anything we do.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Biases</title>
        <published>2024-09-09T00:00:00+00:00</published>
        <updated>2024-09-09T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0016-lawyer-and-judge/"/>
        <id>https://daily.himvis.com/0016-lawyer-and-judge/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0016-lawyer-and-judge/">&lt;p&gt;The investments which turned out to be good, I remember vividly and inherently
take credit for them however, the ones which did not turn out to be so good,
mind has compressed them and shoved into a dark corner of memory, and its
looking for buyers for them, finding someone else to blame for the losses
and tag it. This is a continuous process.&lt;&#x2F;p&gt;
&lt;p&gt;We are an awesome lawyer for own self but turn into a harsh judge for others.
Biases are always at play, knowing just this would make a sea of difference.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Moving Mind</title>
        <published>2024-09-06T00:00:00+00:00</published>
        <updated>2024-09-06T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0015-moving-mind/"/>
        <id>https://daily.himvis.com/0015-moving-mind/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0015-moving-mind/">&lt;p&gt;A famous Koan goes like this:&lt;&#x2F;p&gt;
&lt;p&gt;Sitting outside the monastery Two monks were arguing about the flapping flag&lt;&#x2F;p&gt;
&lt;p&gt;First one said, &quot;Look, the flag is moving&quot;
Second one said, &quot;No, the wind is moving&quot;&lt;&#x2F;p&gt;
&lt;p&gt;Sitting inside the monastery zen master happens to be listening and said&lt;&#x2F;p&gt;
&lt;p&gt;&quot;Not the flag, Not the wind, Mind is moving&quot;&lt;&#x2F;p&gt;
&lt;p&gt;It tells us what we perceive as &quot;moving&quot; is actually a mental construct.
Sometimes, we see different parts and interpret it in different ways which
might give rise to arguments and conflicts. Like the junior monks we get
fixated on ideas and concepts and stop to seek more.&lt;&#x2F;p&gt;
&lt;p&gt;In computer programming world, how many times have you seen endless debates
on choosing right programming language.
C is better than C++, rust will eradicate all memory related bugs,
Golang is so simple to learn ...&lt;&#x2F;p&gt;
&lt;p&gt;Use right tool for right job is what Zen master would say I think.&lt;&#x2F;p&gt;
&lt;p&gt;What is your assertion ?&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Its Easy to start - But is it?</title>
        <published>2024-09-05T00:00:00+00:00</published>
        <updated>2024-09-05T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0014-its-easy-to-start/"/>
        <id>https://daily.himvis.com/0014-its-easy-to-start/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0014-its-easy-to-start/">&lt;p&gt;I have come across this saying quite often&lt;&#x2F;p&gt;
&lt;p&gt;&lt;code&gt;it&#x27;s easy to start but hard to finish.&lt;&#x2F;code&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Asking a bit deeper why is that so ? we will find that
when we say &quot;it&#x27;s easy to start&quot;, it means we have not planned for the outcome.
when we say &quot;hard to finish&quot;, it means the outcomes we got are not what we
expected.&lt;&#x2F;p&gt;
&lt;p&gt;Then there is converse of it, where we do not start as we get consumed by
pre-work, analysis-paralysis. It&#x27;s never ready to start. You might have that
dream project in mind, starting a blog on eco-travel, start your own podcast
make origami videos, coding live-streams and so on. Asking a bit deeper, what is
stopping you ? Underlying any answer one may come up with the underlying reality
is most probably our own fear of being judged.&lt;&#x2F;p&gt;
&lt;p&gt;So ask yourself you are your own best judge, don&#x27;t let anyone have that
leverage on you.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Lost Art of Asking Questions - Saying No</title>
        <published>2024-09-04T00:00:00+00:00</published>
        <updated>2024-09-04T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0013-asking-questions-10/"/>
        <id>https://daily.himvis.com/0013-asking-questions-10/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0013-asking-questions-10/">&lt;p&gt;We do not say no often, it is in our DNA to build collaborations
and communities, therefore any ask upon us is seen as an opportunity
to build the collaboration or social connection by our mind. However,
this has a chance of &quot;spreading us thin&quot;, if not done mindfully, therefore
say &quot;I don&#x27;t&quot; instead of &quot;I can&#x27;t&quot;&lt;&#x2F;p&gt;
&lt;p&gt;Maintaining Open-source software provides a fertile ground for this case.
There are several instances where a maintainer&#x27;s time is demanded onto
something that&#x27;s not planned by the maintainer. An email or a change-set
which is being pinged for review, another commit, which regresses and
needs to be redone, a build is broken due to external dependencies. A
new cool architecture support is to be added. There are N number of
things that can lay their hand on your time if you are not careful about
what you want to commit for.&lt;&#x2F;p&gt;
&lt;p&gt;Choose to say &#x27;No&#x27; more often than saying &#x27;yes&#x27;, it&#x27;s not rude. Believe me.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Lost Art of Asking Questions - Evermore important today</title>
        <published>2024-09-03T00:00:00+00:00</published>
        <updated>2024-09-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0012-asking-questions-9/"/>
        <id>https://daily.himvis.com/0012-asking-questions-9/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0012-asking-questions-9/">&lt;p&gt;Digital age brought the internet revolution and made knowledge
spread easily, everyone carries mobile phones in pockets today
which makes it available at fingertips. With advancements on AI
and advent of LLMs, a flurry of chatbots like chatGPT are making
this information even more pertinent, The chatbots are ultimate
&#x27;know-int-all&#x27; but there is a one big condition for its effective
use, one must know what to ask. Asking good quality questions
therefore is even more important than before&lt;&#x2F;p&gt;
&lt;p&gt;As carl Sagan says, &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.goodreads.com&#x2F;quotes&#x2F;538156-there-are-naive-questions-tedious-questions-ill-phrased-questions-questions-put&quot;&gt;there are no dumb questions&lt;&#x2F;a&gt; there surely
are questions which open up the curious mind and there are questions
which are to win an argument or the answers one already knows
for, Ask questions that can provide a framework to organize the
unknown.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Lost Art of Asking Questions - Who drives the conversation?</title>
        <published>2024-08-30T00:00:00+00:00</published>
        <updated>2024-08-30T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0011-asking-questions-8/"/>
        <id>https://daily.himvis.com/0011-asking-questions-8/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0011-asking-questions-8/">&lt;p&gt;At a conference or fireside chats and discussions, one person is
and expert who answers everything and other person is performing
journalistic duties by asking questions. Have you observed who
controls the narrative in the conversation ?&lt;&#x2F;p&gt;
&lt;p&gt;It might feel good to be the Subject Matter Expert who knows the
deeper secrets in the field, but It is always questions that
hold power in a conversation, even the experts have to follow
the line of questions. Imbibing humble questioning with honest
curiosity can make a huge difference in a casual small talk and
a deeper, more meaningful conversation.&lt;&#x2F;p&gt;
&lt;p&gt;Practice what questions will you ask today.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Lost Art of Asking Questions - The Broken Build Problem.</title>
        <published>2024-08-29T00:00:00+00:00</published>
        <updated>2024-08-29T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0010-asking-questions-7/"/>
        <id>https://daily.himvis.com/0010-asking-questions-7/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0010-asking-questions-7/">&lt;p&gt;Assume a large software team and a developer commits a piece of code which
breaks the build inadvertently, build failure is notices by several developers
on team however nobody takes action or raises the issue on shared communication
channels.&lt;&#x2F;p&gt;
&lt;p&gt;Each developer assumes that others either do not see this build failure as
significant issue or they believe that someone else will address it. This
results in no one takes responsibility thinking&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;I might be stepping on someone elses toes&lt;&#x2F;li&gt;
&lt;li&gt;Complaining over something trivial&lt;&#x2F;li&gt;
&lt;li&gt;Pointing out the obvious&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;It can result in significant loss of productivity cascading into delays in
testing, missing deadlines, downstream projects relying on this build
also failing&lt;&#x2F;p&gt;
&lt;p&gt;Sounds familiar ?&lt;&#x2F;p&gt;
&lt;p&gt;This is called pluralistic ignorance.&lt;&#x2F;p&gt;
&lt;p&gt;Why does this happen?&lt;&#x2F;p&gt;
&lt;p&gt;Humans are biased towards social conformity
Fear of repercussions
Misinterpreting non-verbal communication&lt;&#x2F;p&gt;
&lt;p&gt;It can have significant impacts in all walks of life.&lt;&#x2F;p&gt;
&lt;p&gt;What are some cases you are reminded of about pluralistic ignorance ?&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Lost Art of Asking Questions - Working with in constraints.</title>
        <published>2024-08-28T00:00:00+00:00</published>
        <updated>2024-08-28T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0009-asking-questions-6/"/>
        <id>https://daily.himvis.com/0009-asking-questions-6/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0009-asking-questions-6/">&lt;p&gt;There is a limit to resources, therefore ever-increasing demand for resources
is not sustainable. With software engineer&#x27;s hat on How many times
we wish to have a infinitely fast computer to build the software. But there is a
strange beauty of creativity that gets unfurled through human mind when
thinking a solution with in constraints.&lt;&#x2F;p&gt;
&lt;p&gt;Keith Jarrett – The Köln Concert is one of the most iconic solo piano
performances in jazz history, recorded live on January 24, 1975,
at the Cologne Opera House. The story behind it is as remarkable as
the music itself.&lt;&#x2F;p&gt;
&lt;p&gt;Jarrett, exhausted from a lack of sleep and suffering from severe
back pain, was faced with a subpar piano that was small, out of tune,
and intended only for rehearsals. Despite these challenges, he decided
to perform. What followed was a mesmerizing improvisation, blending
classical, jazz, and blues influences.&lt;&#x2F;p&gt;
&lt;p&gt;The concert, originally thought to be a failure due to the
circumstances, turned out to be a masterpiece. The recording became
a bestseller, and its emotional depth and spontaneous creativity
continue to captivate listeners worldwide.&lt;&#x2F;p&gt;
&lt;p&gt;Therefore, always ask for constraints one will need to operate with in
to solve the problem at hand&lt;&#x2F;p&gt;
&lt;p&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=skkiVoI7sBk&quot;&gt;Keith Jarrett – The Köln Concert&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Lost Art of Asking Questions - Don&#x27;t ask don&#x27;t get.</title>
        <published>2024-08-27T00:00:00+00:00</published>
        <updated>2024-08-27T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0008-asking-questions-5/"/>
        <id>https://daily.himvis.com/0008-asking-questions-5/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0008-asking-questions-5/">&lt;p&gt;Why do we hold back our questions?&lt;&#x2F;p&gt;
&lt;p&gt;In human conversations, we exchange information and learn from each other
secondly, improve interpersonal relations and some image building
exercise. All these objectives can be achieved by asking thoughtful questions.&lt;&#x2F;p&gt;
&lt;p&gt;Are we self-consumed that thought of asking question does not come easily ?&lt;&#x2F;p&gt;
&lt;p&gt;Do we care enough that we want to ask questions ?&lt;&#x2F;p&gt;
&lt;p&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;hbr.org&#x2F;podcast&#x2F;2018&#x2F;05&#x2F;ask-better-questions&quot;&gt;Ask Better Questions&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Lost Art of Asking Questions - Henrietta Leavitt&#x27;s yardstick to the universe.</title>
        <published>2024-08-26T00:00:00+00:00</published>
        <updated>2024-08-26T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0007-asking-questions-4/"/>
        <id>https://daily.himvis.com/0007-asking-questions-4/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0007-asking-questions-4/">&lt;p&gt;If I asked you, Have you heard of Edwin hubble?, most like yes would be the answer, however if I asked
you who is Henrietta Leavitt ? what would you say?&lt;&#x2F;p&gt;
&lt;p&gt;Henrietta Leavitt, worked at Harvard College Observatory as &quot;Computer&quot;, yes they were called &quot;computers&quot;
because they did complex calculations manually as this was era before computers. They were trying to map the
stars in sky and it was believed that Milky way Galaxy is all we have in entire universe.&lt;&#x2F;p&gt;
&lt;p&gt;She observed, that these stars varied in brightness like beacons every 30 days or &lt;code&gt;dim-&amp;gt;bright-&amp;gt;dim&lt;&#x2F;code&gt;
then she observed, brighter the star slower it blinked. So frequency of blinking told how bright a
star was. If you knew how bright it is then you can see how dim it can appear from distance in space
and this can be used to calculate the distance of this star.&lt;&#x2F;p&gt;
&lt;p&gt;Leavitt&#x27;s Law or the period-luminosity relationship, gave astronomers a standard candle to measure
the distance to other galaxies. By knowing the period of a Cepheid variable, astronomers could
determine how bright it was and how far away it was, allowing them to measure distances up to
10 million light years. It became known as the &quot;yardstick to the universe&quot;&lt;&#x2F;p&gt;
&lt;p&gt;This was used by Hubble to find out that Andromeda is another galaxy as big as Milky way and today
we know there are 100 billion galaxies.&lt;&#x2F;p&gt;
&lt;p&gt;Speculatively she seems to have asked&lt;&#x2F;p&gt;
&lt;p&gt;What is the relationship between a star&#x27;s brightness and its distance from Earth?&lt;&#x2F;p&gt;
&lt;p&gt;How can we use variable stars to measure distances in the universe?&lt;&#x2F;p&gt;
&lt;p&gt;What are the characteristics of variable stars?&lt;&#x2F;p&gt;
&lt;p&gt;What are the underlying principles governing the behavior of Cepheid variables?&lt;&#x2F;p&gt;
&lt;p&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;wwnorton.com&#x2F;books&#x2F;Miss-Leavitts-Stars&#x2F;&quot;&gt;Miss Leavitt&#x27;s Stars&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Lost Art of Asking Questions - Go Concurrency Model</title>
        <published>2024-08-23T00:00:00+00:00</published>
        <updated>2024-08-23T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0006-asking-questions-3/"/>
        <id>https://daily.himvis.com/0006-asking-questions-3/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0006-asking-questions-3/">&lt;p&gt;Sometimes, line of questioning a problem can get narrower and narrower and heavens forbid into a rat-hole
therefore we must consider broader scope and alternatives to fuel out-of-box thinking&lt;&#x2F;p&gt;
&lt;p&gt;what if ?
what else ?
what may ?&lt;&#x2F;p&gt;
&lt;p&gt;Sometimes, this can lead to amazing outcomes. Golang&#x27;s concurrency model is one of the best in
programming world because its simple, scalable and resource eficient.
This concurrency model is inspired by Tony Hoare&#x27;s  Communicating Sequential Processes (CSP),
which emphasizes message passing for communication between processes rather than shared memory and locks&lt;&#x2F;p&gt;
&lt;p&gt;CSP concept was introduced in 1978 and book detailing it came out in 1985, Occam Language used it heavily
during 90s, Golang&#x27;s author&#x27;s questioned traditional threading models and questioned its short-coming that
they are too low level, programmers have to combine this with something like shared memory to build
usable theading primitives, which means they have to pay attention to low level implementation, CSP
offered the alternative approach.&lt;&#x2F;p&gt;
&lt;p&gt;Challenging the status-quo and sometimes revisiting the ancient with fresh outlook can result in
wonderful results.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;swtch.com&#x2F;~rsc&#x2F;thread&#x2F;&quot;&gt;Bell Labs and CSP Threads&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Lost Art of Asking Questions - Neti Neti</title>
        <published>2024-08-22T00:00:00+00:00</published>
        <updated>2024-08-22T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0005-asking-questions-2/"/>
        <id>https://daily.himvis.com/0005-asking-questions-2/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0005-asking-questions-2/">&lt;p&gt;One of the interesting techniques used in &lt;code&gt;Upanishads&lt;&#x2F;code&gt; is &lt;code&gt;neti neti&lt;&#x2F;code&gt;, this is an expression in
Sanskrit language which means &lt;code&gt;not this, not that&lt;&#x2F;code&gt;, It is a sustained negative investigation technique also
found in other philosophical frameworks. This can be a powerful tool for deep questioning it deploys
brains capacity to discern effectively. It can be used to narrow down the problem by removing the
redundant information and debunking incorrect assertions therefore arrive at information which may
otherwise escape the decision-maker&#x27;s mind.&lt;&#x2F;p&gt;
&lt;p&gt;What did you reject today ?&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Lost Art of Asking Questions</title>
        <published>2024-08-21T00:00:00+00:00</published>
        <updated>2024-08-21T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0004-asking-questions-1/"/>
        <id>https://daily.himvis.com/0004-asking-questions-1/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0004-asking-questions-1/">&lt;p&gt;We are going through information revolution, here knowledge work is fundamental building
block, cognitive skills are driving this. Leadership has to evolve to drive this wave,
innovation is not happening because there is a genius who have all the answers, advent of
AI driven chatbots have made that redundant anyway. Skills like effective listening,
humility, collaboration, empathy, honest deep questioning are critical elements of
leadership in this new world.&lt;&#x2F;p&gt;
&lt;p&gt;Get together to formulate thoughtful questions rather than answers. We may not have
formal training especially in high-tech industry to a skillful at questions but we
can learn as we go.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>OpenSource and Art</title>
        <published>2024-08-20T00:00:00+00:00</published>
        <updated>2024-08-20T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0003-opensource-is-art/"/>
        <id>https://daily.himvis.com/0003-opensource-is-art/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0003-opensource-is-art/">&lt;p&gt;Closed source is like a painting which no one will see, Open source is the Art
that all get to see, appreciate, and criticize and some of it will become
masterpieces.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Doubt</title>
        <published>2024-08-19T00:00:00+00:00</published>
        <updated>2024-08-19T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0002-doubt/"/>
        <id>https://daily.himvis.com/0002-doubt/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0002-doubt/">&lt;p&gt;Albert Einstein debated Niels Bohr using light-filled box mental experiment on his
understanding of quantum mechanics, when Bohr died, someone noticed on the chalk board
in Bohr&#x27;s study room a drawing of the light-filled box. Challenge oneself to understand
things deeply, and keep doubting till the end.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>Introduction</title>
        <published>2024-08-14T00:00:00+00:00</published>
        <updated>2024-08-14T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Unknown
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://daily.himvis.com/0001-intro/"/>
        <id>https://daily.himvis.com/0001-intro/</id>
        
        <content type="html" xml:base="https://daily.himvis.com/0001-intro/">&lt;p&gt;Deluge of information and technology can weaken inner voice&lt;&#x2F;p&gt;
&lt;p&gt;Explore your internal compass&lt;&#x2F;p&gt;
&lt;p&gt;This newsletter provides tips each weekday to help you in the journey to explore your mindset&lt;&#x2F;p&gt;
</content>
        
    </entry>
</feed>
