<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[tranquangphuc]]></title><description><![CDATA[Man's search for meaning]]></description><link>https://tranquangphuc.com</link><generator>RSS for Node</generator><lastBuildDate>Mon, 20 Apr 2026 10:11:08 GMT</lastBuildDate><atom:link href="https://tranquangphuc.com/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[The Birth of Git]]></title><description><![CDATA[In the early 2000s, the Linux kernel project needed a robust version control system. After outgrowing tools like CVS and the patch-and-email workflow, the kernel community turned to BitKeeper, a proprietary distributed version control system. BitKeep...]]></description><link>https://tranquangphuc.com/the-birth-of-git</link><guid isPermaLink="true">https://tranquangphuc.com/the-birth-of-git</guid><category><![CDATA[Git]]></category><category><![CDATA[history]]></category><dc:creator><![CDATA[Phuc Tran]]></dc:creator><pubDate>Sun, 13 Apr 2025 07:52:49 GMT</pubDate><enclosure url="https://cdn.hashnode.com/res/hashnode/image/upload/v1744533151035/3e0985cf-741d-4924-902b-c2a03db75698.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>In the <strong>early 2000s</strong>, the <strong>Linux kernel project</strong> needed a robust version control system. After outgrowing tools like <strong>CVS</strong> and the patch-and-email workflow, the kernel community turned to <strong>BitKeeper</strong>, a proprietary distributed version control system. <strong>BitKeeper</strong> was chosen for its <strong>impressive performance</strong> and ability to manage <strong>large-scale, distributed development</strong>—critical for a project as vast and collaborative as the Linux kernel.</p>
<p>However, in <strong>April 2005</strong>, everything changed. <strong>BitMover</strong>, the company behind BitKeeper, <strong>revoked free access</strong> to the Linux development community. The trigger for this decision was a dispute over <strong>reverse engineering</strong>: a developer connected to the Linux project was accused of attempting to reverse-engineer BitKeeper’s proprietary protocols in an effort to create an <strong>open-source client</strong>. This violated the agreement between BitMover and the kernel community. In response, BitMover pulled the plug on <strong>free access</strong>, citing concerns over <strong>trust</strong> and <strong>licensing violations</strong>. The Linux community, which had deeply integrated BitKeeper into its workflow, was suddenly without a reliable version control system.</p>
<p>Faced with this unexpected challenge, <strong>Linus Torvalds</strong>, the creator of Linux, was determined to find a solution. He needed a <strong>distributed version control system</strong> that could handle the scale of <strong>Linux kernel development</strong>. However, the available <strong>free systems</strong> didn’t meet his performance standards. Torvalds famously pointed out that existing systems required up to <strong>30 seconds</strong> to apply a patch and update associated metadata—something that would not scale to the kernel’s needs. With <strong>250 developers</strong> working on the kernel simultaneously, syncing patches in <strong>30-second intervals</strong> would be far too slow. His goal was clear: patching should take <strong>no longer than three seconds</strong>.</p>
<p>Rather than relying on existing tools, Torvalds made the bold decision to <strong>build his own version control system</strong>. In just <strong>10 days</strong>, he developed the foundation of what would become <strong>Git</strong>—a <strong>distributed, high-performance, and secure VCS</strong> designed from the ground up to handle <strong>collaborative development at scale</strong>.</p>
<p>Git’s development began on <strong>April 3, 2005</strong>. Linus announced the project on <strong>April 6</strong>, and by the next day, Git was already <strong>self-hosting</strong>. On <strong>April 18</strong>, Git’s first successful <strong>merge of multiple branches</strong> took place. By <strong>April 29</strong>, the system had met its performance goals, processing patches at an astonishing rate of <strong>6.7 patches per second</strong>. On <strong>June 16</strong>, Git successfully managed the <strong>Linux kernel 2.6.12 release</strong>.</p>
<p>While the early version of Git was <strong>raw</strong> and <strong>script-based</strong>, its architecture set the stage for something transformative. Within weeks of its official release in <strong>mid-April 2005</strong>, Git was already in use by kernel developers, replacing BitKeeper with a system that was <strong>faster, more flexible</strong>, and better suited to the needs of <strong>large-scale software projects</strong>.</p>
<h3 id="heading-from-necessity-to-universality">From Necessity to Universality</h3>
<p>Git didn’t just replace BitKeeper—it quickly outgrew it. Over the next few years, it evolved into a <strong>powerful, general-purpose version control system</strong>:</p>
<ul>
<li><p><strong>2005–2008</strong>: Git rapidly matured with contributions from the <strong>open-source community</strong>, new features, and <strong>improved usability</strong>.</p>
</li>
<li><p><strong>2008</strong>: The launch of <strong>GitHub</strong> made it easier than ever to <strong>collaborate</strong>, share code, and build communities around projects.</p>
</li>
<li><p><strong>2010s</strong>: Git became the <strong>de facto standard</strong> for version control, both in <strong>open-source</strong> and <strong>enterprise software development</strong>.</p>
</li>
<li><p><strong>Today</strong>: Git powers projects of all sizes, from <strong>personal side projects</strong> to <strong>massive codebases</strong> at companies like <strong>Google</strong>, <strong>Microsoft</strong>, <strong>Meta</strong>, and countless others.</p>
</li>
</ul>
<p>What started as a crisis turned into one of the most <strong>influential innovations</strong> in software development. <strong>Git</strong> didn’t just solve the immediate problem—it <strong>changed how developers work together</strong> and how software is built worldwide.</p>
<p>To celebrate two decades of Git, GitHub interviewed Linus himself to revisit the early days, explore the key design decisions behind Git’s lasting success, and discuss how it has forever changed software development.</p>
<div class="embed-wrapper"><div class="embed-loading"><div class="loadingRow"></div><div class="loadingRow"></div></div><a class="embed-card" href="https://youtu.be/sCr_gb8rdEI?si=u3lzsqEtewAbLVRv">https://youtu.be/sCr_gb8rdEI?si=u3lzsqEtewAbLVRv</a></div>
<p> </p>
<p>Transcript: <a target="_blank" href="https://github.blog/open-source/git/git-turns-20-a-qa-with-linus-torvalds/">Git turns 20: A Q&amp;A with Linus Torvalds - The GitHub Blog</a></p>
]]></content:encoded></item><item><title><![CDATA[Hi Hackers]]></title><description><![CDATA[I’m a Java Developer living in Vietnam since 1993.
I start this blog to share things I value most, my life experience, and something fun about programming.
I love to make friends and discuss any ideas.
We are all human, so disagreement is inevitable....]]></description><link>https://tranquangphuc.com/hi-hackers</link><guid isPermaLink="true">https://tranquangphuc.com/hi-hackers</guid><category><![CDATA[first post]]></category><dc:creator><![CDATA[Phuc Tran]]></dc:creator><pubDate>Mon, 15 Feb 2021 00:32:53 GMT</pubDate><content:encoded><![CDATA[<p>I’m a Java Developer living in Vietnam since 1993.</p>
<p>I start this blog to share things I value most, my life experience, and something fun about programming.</p>
<p>I love to make friends and discuss any ideas.</p>
<p>We are all human, so disagreement is inevitable. Please tell me if I make mistakes.</p>
<p>Enjoy!</p>
]]></content:encoded></item></channel></rss>