<?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>DEV Community: muhadmr</title>
    <description>The latest articles on DEV Community by muhadmr (@muhadmr).</description>
    <link>https://dev.to/muhadmr</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%2F1013746%2F06759bbf-e616-44c1-9c92-db94a601ee0f.jpg</url>
      <title>DEV Community: muhadmr</title>
      <link>https://dev.to/muhadmr</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/muhadmr"/>
    <language>en</language>
    <item>
      <title>https://pgaleone.eu/ai/coding/2025/01/26/using-ai-for-coding-my-experience/</title>
      <dc:creator>muhadmr</dc:creator>
      <pubDate>Tue, 28 Jan 2025 06:00:11 +0000</pubDate>
      <link>https://dev.to/muhadmr/httpspgaleoneeuaicoding20250126using-ai-for-coding-my-experience-29m4</link>
      <guid>https://dev.to/muhadmr/httpspgaleoneeuaicoding20250126using-ai-for-coding-my-experience-29m4</guid>
      <description></description>
    </item>
    <item>
      <title>Adding Existing SSH Key to git via command line</title>
      <dc:creator>muhadmr</dc:creator>
      <pubDate>Wed, 20 Sep 2023 06:54:39 +0000</pubDate>
      <link>https://dev.to/muhadmr/adding-existing-ssh-key-to-git-via-command-line-32a4</link>
      <guid>https://dev.to/muhadmr/adding-existing-ssh-key-to-git-via-command-line-32a4</guid>
      <description>&lt;h2&gt;
  
  
  My environment
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;windows 11&lt;/li&gt;
&lt;li&gt;using git extension with git bash&lt;/li&gt;
&lt;li&gt;ssh key was generated using PuttyGen&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Problem
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;cannot push because of permission issue
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;λ git push --set-upstream origin main
git@gitlab.com: Permission denied (publickey).
fatal: Could not read from remote repository.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Solution
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Add the existing key to git&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;use ssh-add to add key, however, ssh-add requires ssh-agent to be running. (if in linux running  &lt;code&gt;eval "$(ssh-agent -s)"&lt;/code&gt; will allow next command ssh-agent to be executed directly, but on windows the command is not recognized)&lt;br&gt;
&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;λ  eval "$(ssh-agent -s)"
'eval' is not recognized as an internal or external command,
operable program or batch file.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;so we need to get the ssh-agent socket and pid info
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;λ ssh-agent
SSH_AUTH_SOCK=/tmp/ssh-YKsmNCSnWFXo/agent.837; export SSH_AUTH_SOCK;
SSH_AGENT_PID=838; export SSH_AGENT_PID;
echo Agent pid 838;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;next, set the environment. Note the SSH_AUTO_SOCK and SSH_AGENT_PID must be the same as above
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;λ set SSH_AUTH_SOCK=/tmp/ssh-YKsmNCSnWFXo/agent.837
λ set SSH_AGENT_PID=838
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;now use the command ssh-add to add new key
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;λ ssh-add c:\Keys\newKey
Identity added: c:\Keys\newKey
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;&lt;p&gt;however, my other key is generated using puttygen with old openssh format. so I need to convert the key to new format.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;run puttygen and select the conversions menu -&amp;gt; export openssh key (force new format)&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--TjU1QmKt--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/d4dc7b4y74v4z6tffkbu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--TjU1QmKt--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/d4dc7b4y74v4z6tffkbu.png" alt="Image description" width="792" height="566"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;then run the ssh-add again
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;λ ssh-add c:\Keys\gitprivatekey-new
Identity added: c:\Keys\gitprivatekey-new
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;then run git push again
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;λ git push --set-upstream origin main
Enumerating objects: 2370, done.
Counting objects: 100% (2370/2370), done.
Delta compression using up to 12 threads
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;use the command ssh-add -l to list existing identities
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;λ ssh-add -l
2048 SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx user1 (RSA)
2048 SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx rsa-key(RSA)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;done&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>git</category>
      <category>windows</category>
      <category>sshagent</category>
    </item>
    <item>
      <title>Modular Monolith links</title>
      <dc:creator>muhadmr</dc:creator>
      <pubDate>Fri, 18 Aug 2023 09:13:03 +0000</pubDate>
      <link>https://dev.to/muhadmr/modular-monolith-links-5ebc</link>
      <guid>https://dev.to/muhadmr/modular-monolith-links-5ebc</guid>
      <description>&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://github.com/kgrzybek/modular-monolith-with-ddd#11-purpose-of-this-repository"&gt;Modular Monolith with DDD&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://codewithmukesh.com/blog/modular-architecture-in-aspnet-core/"&gt;Modular Architecture in ASP.NET Core – Building Better Monoliths&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://www.thinktecture.com/en/asp-net-core/modular-monolith/"&gt;Modular Monoliths With ASP.NET Core – Pragmatic Architecture&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://www.milanjovanovic.tech/blog/modular-monolith-communication-patterns"&gt;Modular Monolith Communication Patterns&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
    </item>
    <item>
      <title>Dev Links</title>
      <dc:creator>muhadmr</dc:creator>
      <pubDate>Fri, 11 Aug 2023 09:04:33 +0000</pubDate>
      <link>https://dev.to/muhadmr/dev-links-570i</link>
      <guid>https://dev.to/muhadmr/dev-links-570i</guid>
      <description>&lt;p&gt;Following are some interesting links:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://www.sitepoint.com/introduction-css-grid-layout-module/"&gt;Learn Grid&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://www.telerik.com/blogs/aspnet-core-basics-tag-helpers"&gt;ASP.net Core Tag Helpers&lt;/a&gt; *we can have CUSTOM taghelper too&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://community.perfplanet.com/latest"&gt;Web Performance&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://c4model.com"&gt;C4 Model for documenting software architecture&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Database&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.red-gate.com/simple-talk/blogs/beginners-guide-to-mysql-replication-part-1/"&gt;MySQL Replication&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Blogs, Podcasts, etc for Developers&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://samestuffdifferentday.net/"&gt;Same stuff different day&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://www.alvinashcraft.com"&gt;Morning Dew&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://leaddev.com"&gt;The home of engineering leadership&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Some open source .Net software to look out for&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://www.envoyproxy.io/"&gt;Envoy - API Gateway&lt;/a&gt; *proxy, load balancing, for microservices&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://dateo-software.de/blog/improve-your-applications-observability-with-custom-health-checks"&gt;Open Telemetry for Observation&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>webdev</category>
      <category>beginners</category>
      <category>programming</category>
      <category>tutorial</category>
    </item>
  </channel>
</rss>
