<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Aegis-Specter</title>
    <description>The latest articles on Forem by Aegis-Specter (@aegisspecter).</description>
    <link>https://forem.com/aegisspecter</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3687322%2F9cb7c784-5a25-46a3-8cf2-95036ec42007.jpg</url>
      <title>Forem: Aegis-Specter</title>
      <link>https://forem.com/aegisspecter</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/aegisspecter"/>
    <language>en</language>
    <item>
      <title>🤔 I Got Tired of Typing Git Commands… So I Built My Own One-Command Git Tool in Python</title>
      <dc:creator>Aegis-Specter</dc:creator>
      <pubDate>Mon, 12 Jan 2026 13:30:31 +0000</pubDate>
      <link>https://forem.com/aegisspecter/i-got-tired-of-typing-git-commands-so-i-built-my-own-one-command-git-tool-in-python-4m8f</link>
      <guid>https://forem.com/aegisspecter/i-got-tired-of-typing-git-commands-so-i-built-my-own-one-command-git-tool-in-python-4m8f</guid>
      <description>&lt;p&gt;As a student learning programming, I noticed something small but annoying&lt;/p&gt;

&lt;p&gt;Every time I worked on a project, I had to type the same Git commands again and again&lt;/p&gt;

&lt;p&gt;The thought came to mind is “What if I could push everything with just one command?”&lt;/p&gt;

&lt;p&gt;Then comes the "gpush"&lt;/p&gt;

&lt;h2&gt;
  
  
  🚀 &lt;strong&gt;What does gpush do?&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;With a single command it automatically executes:&lt;/p&gt;

&lt;p&gt;1.Checks if Git is installed&lt;/p&gt;

&lt;p&gt;2.Verifies you’re inside a Git repository&lt;/p&gt;

&lt;p&gt;3.Detects the current branch&lt;/p&gt;

&lt;p&gt;4.Pulls the latest changes&lt;/p&gt;

&lt;p&gt;5.Adds all modified files&lt;/p&gt;

&lt;p&gt;6.Asks for a commit message&lt;/p&gt;

&lt;p&gt;7.Commits and pushes safely&lt;/p&gt;

&lt;p&gt;8.Stops immediately if an error occurs&lt;/p&gt;

&lt;p&gt;All with clear terminal output and basic error handling.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;*********************************************
[INFO] Checking Git installation...
*********************************************
*********************************************
[INFO] Checking if inside a Git repository...
*********************************************
*********************************************
[INFO] Current branch: main
*********************************************
*********************************************
[INFO] Pulling latest changes...
*********************************************
[ERROR] Git pull failed (possible merge conflict)
There is no tracking information for the current branch.
Please specify which branch you want to merge with.
See git-pull(1) for details.

    git pull &amp;lt;remote&amp;gt; &amp;lt;branch&amp;gt;

If you wish to set tracking information for this branch you can do so with:

    git branch --set-upstream-to=origin/&amp;lt;branch&amp;gt; main
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;br&gt;
**&lt;/p&gt;

&lt;p&gt;Making terminal output readable&lt;br&gt;
**&lt;/p&gt;

&lt;p&gt;I added a simple border system so each step is clear.This made debugging much easier and the output cleaner.&lt;/p&gt;

&lt;p&gt;**&lt;/p&gt;

&lt;h2&gt;
  
  
  🛠️ The core idea (simplified)
&lt;/h2&gt;

&lt;p&gt;**&lt;/p&gt;

&lt;p&gt;At the heart of the script is a helper function that runs shell commands and stops safely on errors.&lt;/p&gt;

&lt;p&gt;Instead of letting things fail silently, the script exits immediately if something goes wrong (like merge conflicts or missing upstream branches).&lt;/p&gt;

&lt;p&gt;That one design choice saved me a lot of confusion.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Small tools build real confidence.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;**&lt;/p&gt;

&lt;h2&gt;
  
  
  💬 Final thoughts
&lt;/h2&gt;

&lt;p&gt;**&lt;/p&gt;

&lt;p&gt;If you’re learning programming and feel guilty about not “coding everything from scratch” — don’t.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Understanding, modifying, and improving code is real programming.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Start small. Build tools for yourself.&lt;br&gt;
That’s how it actually begins.&lt;/p&gt;

&lt;p&gt;**&lt;/p&gt;

&lt;h2&gt;
  
  
  🔗 Source code
&lt;/h2&gt;

&lt;p&gt;**&lt;/p&gt;

&lt;p&gt;You can find the full script here:&lt;br&gt;
👉 GitHub: &lt;a href="https://github.com/Aegis-Specter/git_auotmation" rel="noopener noreferrer"&gt;https://github.com/Aegis-Specter/git_auotmation&lt;/a&gt;&lt;/p&gt;

</description>
      <category>automation</category>
      <category>git</category>
      <category>python</category>
      <category>showdev</category>
    </item>
    <item>
      <title>Day 01: 60 days Networking Topics</title>
      <dc:creator>Aegis-Specter</dc:creator>
      <pubDate>Sun, 04 Jan 2026 05:20:53 +0000</pubDate>
      <link>https://forem.com/aegisspecter/day-01-60-days-networking-topics-36b3</link>
      <guid>https://forem.com/aegisspecter/day-01-60-days-networking-topics-36b3</guid>
      <description>&lt;p&gt;Today I started by learning what is a network and the OSI layers and some basic information about IP, MAC, UDP, TCP and uploaded my notes in git hub with the tips I used to learn. Actually I am a self learning person learning from resources like chatgpt gemini, so feel free to correct me if I'm wrong. I uploaded two notes what is network and OSI layers. &lt;a href="https://github.com/Aegis-Specter/Networking_Notes" rel="noopener noreferrer"&gt;https://github.com/Aegis-Specter/Networking_Notes&lt;/a&gt; . There is also an a file called Abbreviations file which will be updated eventually I learn.&lt;/p&gt;

</description>
      <category>networking</category>
      <category>beginners</category>
      <category>learning</category>
    </item>
    <item>
      <title>60 days Networking concepts</title>
      <dc:creator>Aegis-Specter</dc:creator>
      <pubDate>Sat, 03 Jan 2026 12:42:07 +0000</pubDate>
      <link>https://forem.com/aegisspecter/60-days-networking-concepts-41n4</link>
      <guid>https://forem.com/aegisspecter/60-days-networking-concepts-41n4</guid>
      <description>&lt;p&gt;Recently inspired by my friend in posting challenge. So i started a 60 days Networking concepts. I created a git repo for the notes &lt;a href="https://github.com/Aegis-Specter/Networking_Notes" rel="noopener noreferrer"&gt;https://github.com/Aegis-Specter/Networking_Notes&lt;/a&gt; and there's txt file called Networking topics index. So daily posts starting on 3rd jan 2026 as Day 00. &lt;/p&gt;

</description>
      <category>networking</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Lyra: The Command line Assistant</title>
      <dc:creator>Aegis-Specter</dc:creator>
      <pubDate>Sat, 03 Jan 2026 04:50:53 +0000</pubDate>
      <link>https://forem.com/aegisspecter/lyra-the-command-line-assistant-14a0</link>
      <guid>https://forem.com/aegisspecter/lyra-the-command-line-assistant-14a0</guid>
      <description>&lt;p&gt;I coded the skeleton and the main loop for the assistant. The reason to choose a CLI assistant over a voice or an AI assistant is due to my hardware limitations. I have a plan to include features like opening apps, running python scripts,managing files, taking control of the OS(I have lubuntu), monitoring features and later to understand human language. Here is the link to view my code in Github &lt;a href="https://github.com/Aegis-Specter/Lyra" rel="noopener noreferrer"&gt;https://github.com/Aegis-Specter/Lyra&lt;/a&gt; and finally I'm eager to get guidance and corrections(if any)  &lt;/p&gt;

</description>
      <category>python</category>
      <category>beginners</category>
      <category>student</category>
      <category>learning</category>
    </item>
    <item>
      <title>Encryption and Decryption program</title>
      <dc:creator>Aegis-Specter</dc:creator>
      <pubDate>Wed, 31 Dec 2025 10:27:49 +0000</pubDate>
      <link>https://forem.com/aegisspecter/encryption-and-decryption-program-33p7</link>
      <guid>https://forem.com/aegisspecter/encryption-and-decryption-program-33p7</guid>
      <description>&lt;p&gt;This is a simple python program for encrypting and decrypting for text only and later for both text and file check out the code &lt;a href="https://github.com/Aegis-Specter/Encryption-program" rel="noopener noreferrer"&gt;https://github.com/Aegis-Specter/Encryption-program&lt;/a&gt;&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>learning</category>
      <category>github</category>
      <category>python</category>
    </item>
  </channel>
</rss>
