<?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: m19v</title>
    <description>The latest articles on DEV Community by m19v (@m19v).</description>
    <link>https://dev.to/m19v</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%2F704680%2Ffc4ed564-cc3a-495c-ac1c-e9baa88cd6cf.png</url>
      <title>DEV Community: m19v</title>
      <link>https://dev.to/m19v</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/m19v"/>
    <language>en</language>
    <item>
      <title>What is the difference between Docker Desktop and Rancher Desktop?</title>
      <dc:creator>m19v</dc:creator>
      <pubDate>Mon, 04 Mar 2024 07:47:33 +0000</pubDate>
      <link>https://dev.to/m19v/what-is-the-difference-between-docker-desktop-and-rancher-desktop-2coa</link>
      <guid>https://dev.to/m19v/what-is-the-difference-between-docker-desktop-and-rancher-desktop-2coa</guid>
      <description>&lt;p&gt;The difference between Docker Desktop and Rancher Desktop, especially to what extend Rancher Desktop uses docker features, plugins etc, is not trivial.&lt;/p&gt;

&lt;p&gt;E.g. the &lt;a href="https://docs.docker.com/scout/install/" rel="noopener noreferrer"&gt;Docker Scout CLI plugin&lt;/a&gt; comes pre-installed with Docker Desktop. But for Rancher Desktop it must be manually installed.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Does Rancher Desktop uses the same Docker Engine: Docker Server, Docker CLI and Rest API as Docker Desktop?&lt;/li&gt;
&lt;li&gt;Why I can not use some &lt;a href="https://docs.docker.com/reference/cli/docker/" rel="noopener noreferrer"&gt;docker commands&lt;/a&gt;, such as &lt;code&gt;docker init&lt;/code&gt;,&lt;code&gt;docker debug&lt;/code&gt; with Rancher Desktop? (It is not available as plugin.)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;P.S. General differences of Docker Desktop and Rancher Desktop explained in this &lt;a href="https://codeengineered.com/blog/2022/docker-desktop-vs-rancher-desktop/" rel="noopener noreferrer"&gt;article&lt;/a&gt; are clear.&lt;/p&gt;

</description>
      <category>docker</category>
      <category>discuss</category>
    </item>
    <item>
      <title>How to bind SonarLint with SonarQube in IntelliJ IDE</title>
      <dc:creator>m19v</dc:creator>
      <pubDate>Thu, 13 Apr 2023 21:27:36 +0000</pubDate>
      <link>https://dev.to/m19v/how-to-bind-sonarlint-with-sonarqube-in-intellij-ide-1pln</link>
      <guid>https://dev.to/m19v/how-to-bind-sonarlint-with-sonarqube-in-intellij-ide-1pln</guid>
      <description>&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;In this post, we are going to discuss the process of installing, configuring, and connecting SonarLint in IntelliJ IDE with the SonarQube server. Please note that this post does not cover the installation and configuration of SonarQube server.&lt;/p&gt;

&lt;h3&gt;
  
  
  Brief explanation of SonarLint and SonarQube
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;SonarLint&lt;/em&gt;&lt;/strong&gt; is an IDE extension that helps developers identify and resolve quality issues while writing code. It analyzes code for a variety of issues such as bugs, vulnerabilities, code smells and provides suggestions to fix them. It allows developers to resolve code quality issues early on in the development process and reduce the cost of maintenance.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;SonarQube&lt;/em&gt;&lt;/strong&gt; is an open-source tool which can be integrated with build tools, such as Jenkins, for continuous inspection and automatic static analysis of code quality to detect vulnerabilities, bugs and code smells in build process.&lt;/p&gt;

&lt;h3&gt;
  
  
  Why it's important to bind them in IntelliJ IDE
&lt;/h3&gt;

&lt;p&gt;Both SonarLint and SonarQube are technologies that perform code inspection and analysis to detect and resolve code quality issues. Nevertheless, they have different functionality scopes. SonarLint analyzes code while writing it in the IDE, providing instant feedback, while SonarQube is used in the build phase to continuously inspect and analyze the codebase.&lt;/p&gt;

&lt;p&gt;It is recommended to use both SonarLint and SonarQube tools together, where the SonarLint plugin installed in the IDE is connected to the SonarQube server, especially if multiple developers are involved in the development process. In addition to the benefits mentioned earlier, such as improving code quality and reducing maintenance costs, integrating SonarLint with SonarQube in the IDE also ensures compliance with coding standards and best practices within the development team. Moreover, it facilitates collaboration by providing a common platform for developers to maintain, collaborate and share settings on server side such as quality profiles, analysis settings and quality gates. Additionally optional notifications from SonarQube keep team informed of any quality gate status change.&lt;/p&gt;

&lt;h2&gt;
  
  
  Installing SonarLint plugin in IntelliJ IDE
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Go to the menu File → Settings → Plugins → Type “SonarLint” → Install and Restart IDE&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fi0qn58byjb7xaobv0fvp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fi0qn58byjb7xaobv0fvp.png" alt="1" width="800" height="273"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;After this step we can already use the SonarLint with default local rules. But we are going discuss how to bind SonarLint to SonarQube server in the next chapter.&lt;/p&gt;

&lt;h2&gt;
  
  
  Setting up SonarQube server
&lt;/h2&gt;

&lt;p&gt;In this step we are going to generate a SonarQube authentication token for SonarLint plugin in IntelliJ IDE &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Go to SonarQube → Open your Account/Profile Page → select Security tab&lt;/li&gt;
&lt;li&gt;Enter or select Name, Type (e.g. User token) and duration of the Expiry&lt;/li&gt;
&lt;li&gt;Generate and Copy authentication token&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwt1yvklbuyt91l4ulwhl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwt1yvklbuyt91l4ulwhl.png" alt="2" width="800" height="340"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Binding SonarLint with SonarQube
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Add new SonarQube Connection
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;In IntelliJ go to the menu File → Settings → Tools → SonarLint&lt;/li&gt;
&lt;li&gt;Select Settings tab → click on “+” sign to create new SonarQube connection&lt;/li&gt;
&lt;li&gt;In opened window give a Connection Name, Choose a Connection Type (e.g. SonarQube) and enter SonarQube URL&lt;/li&gt;
&lt;li&gt;Enable or disable proxy as you need and click Next&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffbs6ndgw57lzd6y0si66.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffbs6ndgw57lzd6y0si66.png" alt="3" width="800" height="445"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In opened window select Authentication type (e.g. Token) and paste your SonarQube authentication token from previous chapter in field Token and click Next&lt;/li&gt;
&lt;li&gt;In the next step check “Receive notification from SonarQube” if you wish to receive notification about Quality Gate status and click Next&lt;/li&gt;
&lt;li&gt;If everything was correct, you will see "Connection successfully created" in the next window and click Finish to save connection settings.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh49slvbx9khuq1c7xeb8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh49slvbx9khuq1c7xeb8.png" alt="4" width="800" height="603"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;So far we have managed to create a SonarQube connection in SonarLint plugin settings and successfully connect to SonarQube server.&lt;/p&gt;

&lt;h3&gt;
  
  
  Configure SonarLint Project Settings
&lt;/h3&gt;

&lt;p&gt;In this step we are going to add SonarQube Connection created in previous step and select specific SonarQube project, since SonarQube may have many projects.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In IntelliJ go to the menu File → Settings → Tools → SonarLint → Project Settings&lt;/li&gt;
&lt;li&gt;Select “Bind project to SonarQube”&lt;/li&gt;
&lt;li&gt;Select newly create SonarQube Connection in field Connection&lt;/li&gt;
&lt;li&gt;Search and select your project using “Search in list…” button (hint: to fetch project list from SonarQube server may take several seconds)&lt;/li&gt;
&lt;li&gt;Finally click “Update local storage” to download the settings and rules from SonarQube server&lt;/li&gt;
&lt;li&gt;You can track the progress of the update process in IntelliJ/SonarLint logs&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsyvga0ln0ve8wpoz89o7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsyvga0ln0ve8wpoz89o7.png" alt="5" width="800" height="438"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Congratulations, you have successfully bound the SonarLint plugin in IntelliJ IDE to the SonarQube server. You can now use the SonarLint plugin with SonarQube in IntelliJ IDE by e.g. simply opening a Java class and selecting "Analyze with SonarLint" from the context menu of editor.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;In this article, we learned how to install, configure and connect SonarLint plugin in IntelliJ IDE with the SonarQube server. By using SonarLint and SonarQube tools together developers can take the benefits of both to perform code inspection and analysis to detect and resolve code quality issues and reduce maintenance costs.&lt;/p&gt;

&lt;h2&gt;
  
  
  References
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;&lt;a href="[https://www.wikipedia.org/](https://www.wikipedia.org/)"&gt;Wikipedia&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="[https://community.sonarsource.com/](https://community.sonarsource.com/)"&gt;SonarSource Community&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>sonarlint</category>
      <category>sonarqube</category>
      <category>intellij</category>
    </item>
    <item>
      <title>How to add Giscus comments to Docusaurus</title>
      <dc:creator>m19v</dc:creator>
      <pubDate>Sun, 30 Oct 2022 21:03:08 +0000</pubDate>
      <link>https://dev.to/m19v/how-to-add-giscus-comments-to-docusaurus-439h</link>
      <guid>https://dev.to/m19v/how-to-add-giscus-comments-to-docusaurus-439h</guid>
      <description>&lt;h2&gt;
  
  
  Goal
&lt;/h2&gt;

&lt;p&gt;This post is a step-by-step description of how to add &lt;a href="https://giscus.app/" rel="noopener noreferrer"&gt;Giscus&lt;/a&gt;, a commenting system powered by GitHub Discussions, to a static website generated by Docusaurus.&lt;/p&gt;

&lt;h2&gt;
  
  
  Setup Giscus
&lt;/h2&gt;

&lt;p&gt;Follow the steps in the sections of the current chapter to set up Giscus and connect it to the GitHub discussions.&lt;/p&gt;

&lt;h3&gt;
  
  
  Enable GitHub discussion
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Create Github repository in your Github account where comments are stored in Discussion section.&lt;/li&gt;
&lt;li&gt;In the main page of created repository go to Settings. &lt;/li&gt;
&lt;li&gt;Under "Features" section, click "Set up discussions".&lt;/li&gt;
&lt;li&gt;Edit the template in "Start a new discussion" and click "Start discussion".&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Enable Giscus
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://github.com/apps/giscus" rel="noopener noreferrer"&gt;Configure&lt;/a&gt; giscus in your GitHub account.&lt;/li&gt;
&lt;li&gt;In Section "Repository access" add &lt;strong&gt;only&lt;/strong&gt; created repository from previous step to be accessed by giscus and click "Save".&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Get repository API key
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Login with GitHub account in &lt;a href="https://docs.github.com/en/graphql/overview/explorer" rel="noopener noreferrer"&gt;GraphQL API Explorer&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Use following query to fetch the id of created repository, discussion categories with its details (e.g. id and name). &lt;strong&gt;Note!&lt;/strong&gt; Replace

&lt;code&gt;owner&lt;/code&gt;

and

&lt;code&gt;name&lt;/code&gt;

with your GitHub account name and name of repository you created.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="err"&gt;query&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt; 
  &lt;/span&gt;&lt;span class="err"&gt;repository(owner:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"nameOfYourGitHubAccount"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="err"&gt;name:&lt;/span&gt;&lt;span class="s2"&gt;"nameOfCreatedRepository"&lt;/span&gt;&lt;span class="err"&gt;)&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="err"&gt;id&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="err"&gt;discussionCategories(first:&lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="err"&gt;)&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="err"&gt;edges&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="err"&gt;node&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
          &lt;/span&gt;&lt;span class="err"&gt;id&lt;/span&gt;&lt;span class="w"&gt;
          &lt;/span&gt;&lt;span class="err"&gt;name&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The result json object will be similar to:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"data"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"repository"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"id"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"R_kgDOIVqhTg"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"discussionCategories"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"edges"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
          &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
            &lt;/span&gt;&lt;span class="nl"&gt;"node"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
              &lt;/span&gt;&lt;span class="nl"&gt;"id"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"DIC_kwDOIVqhTs4CSSES"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
              &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Announcements"&lt;/span&gt;&lt;span class="w"&gt;
            &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
          &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
          &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
            &lt;/span&gt;&lt;span class="nl"&gt;"node"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
              &lt;/span&gt;&lt;span class="nl"&gt;"id"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"DIC_kwDOIVqhTs4CSSET"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
              &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"General"&lt;/span&gt;&lt;span class="w"&gt;
            &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
          &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
          &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
            &lt;/span&gt;&lt;span class="nl"&gt;"node"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
              &lt;/span&gt;&lt;span class="nl"&gt;"id"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"DIC_kwDOIVqhTs4CSSEV"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
              &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Ideas"&lt;/span&gt;&lt;span class="w"&gt;
            &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
          &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
          &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
            &lt;/span&gt;&lt;span class="nl"&gt;"node"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
              &lt;/span&gt;&lt;span class="nl"&gt;"id"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"DIC_kwDOIVqhTs4CSSEX"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
              &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Polls"&lt;/span&gt;&lt;span class="w"&gt;
            &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
          &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
          &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
            &lt;/span&gt;&lt;span class="nl"&gt;"node"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
              &lt;/span&gt;&lt;span class="nl"&gt;"id"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"DIC_kwDOIVqhTs4CSSEU"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
              &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Q&amp;amp;A"&lt;/span&gt;&lt;span class="w"&gt;
            &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
          &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
          &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
            &lt;/span&gt;&lt;span class="nl"&gt;"node"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
              &lt;/span&gt;&lt;span class="nl"&gt;"id"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"DIC_kwDOIVqhTs4CSSEW"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
              &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Show and tell"&lt;/span&gt;&lt;span class="w"&gt;
            &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
          &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Create Giscus component
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Install @giscus/react package
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npm i @giscus/react
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;Create Giscus Component, e.g. under

&lt;code&gt;/src/components/GiscusComponent&lt;/code&gt;

as follows:
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="nx"&gt;React&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;react&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="nx"&gt;Giscus&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;@giscus/react&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;useColorMode&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;@docusaurus/theme-common&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="k"&gt;export&lt;/span&gt; &lt;span class="k"&gt;default&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;GiscusComponent&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;colorMode&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;useColorMode&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;

  &lt;span class="k"&gt;return &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;Giscus&lt;/span&gt;    
      &lt;span class="nx"&gt;repo&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;nameOfYourGitHubAccount/nameOfCreatedRepository&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;
      &lt;span class="nx"&gt;repoId&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;idOfCreatedRepo&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;
      &lt;span class="nx"&gt;category&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;General&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;
      &lt;span class="nx"&gt;categoryId&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;IdOfDiscussionCategory&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;  &lt;span class="c1"&gt;// E.g. id of "General"&lt;/span&gt;
      &lt;span class="nx"&gt;mapping&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;url&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;                        &lt;span class="c1"&gt;// Important! To map comments to URL&lt;/span&gt;
      &lt;span class="nx"&gt;term&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Welcome to @giscus/react component!&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;
      &lt;span class="nx"&gt;strict&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;0&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;
      &lt;span class="nx"&gt;reactionsEnabled&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;1&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;
      &lt;span class="nx"&gt;emitMetadata&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;1&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;
      &lt;span class="nx"&gt;inputPosition&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;top&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;
      &lt;span class="nx"&gt;theme&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;colorMode&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;
      &lt;span class="nx"&gt;lang&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;en&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;
      &lt;span class="nx"&gt;loading&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;lazy&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;
      &lt;span class="nx"&gt;crossorigin&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;anonymous&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;
      &lt;span class="k"&gt;async&lt;/span&gt;
    &lt;span class="sr"&gt;/&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;  &lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Create BlogPostItem component
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Create BlogPostItem component to wrap blog posts with Giscus commenting system as follows:
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npm run swizzle &lt;span class="o"&gt;[&lt;/span&gt;theme name] &lt;span class="o"&gt;[&lt;/span&gt;component name] &lt;span class="nt"&gt;--&lt;/span&gt; &lt;span class="nt"&gt;--wrap&lt;/span&gt;

&lt;span class="c"&gt;# Example:&lt;/span&gt;
npm run swizzle @docusaurus/theme-classic BlogPostItem &lt;span class="nt"&gt;--&lt;/span&gt; &lt;span class="nt"&gt;--wrap&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This will create a BlogPostItem component under &lt;br&gt;
&lt;code&gt;src/theme&lt;/code&gt;. Edit &lt;code&gt;index.js&lt;/code&gt; as follows:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="nx"&gt;React&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;react&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;useBlogPost&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;@docusaurus/theme-common/internal&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="nx"&gt;BlogPostItem&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;@theme-original/BlogPostItem&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="nx"&gt;GiscusComponent&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;@site/src/components/GiscusComponent&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="nx"&gt;useIsBrowser&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;@docusaurus/useIsBrowser&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="k"&gt;export&lt;/span&gt; &lt;span class="k"&gt;default&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;BlogPostItemWrapper&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;props&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;metadata&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;isBlogPostPage&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;useBlogPost&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
  &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;isBrowser&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;useIsBrowser&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;

  &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;frontMatter&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;slug&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;title&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;metadata&lt;/span&gt;
  &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;enableComments&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;frontMatter&lt;/span&gt;

  &lt;span class="k"&gt;return &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="o"&gt;&amp;lt;&amp;gt;&lt;/span&gt;
      &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;BlogPostItem&lt;/span&gt; &lt;span class="p"&gt;{...&lt;/span&gt;&lt;span class="nx"&gt;props&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="sr"&gt;/&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;      &lt;span class="p"&gt;{(&lt;/span&gt;&lt;span class="nx"&gt;enableComments&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="nx"&gt;isBlogPostPage&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;
        &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;GiscusComponent&lt;/span&gt; &lt;span class="o"&gt;/&amp;gt;&lt;/span&gt;
      &lt;span class="p"&gt;)}&lt;/span&gt;
    &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;  &lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Note&lt;/strong&gt; that the &lt;code&gt;useBlogPost()&lt;/code&gt; Hook is used in BlogPostItem component to make activation of comments per blog post configurable. The key value &lt;code&gt;enableComments: true&lt;/code&gt;  must be added to your blog post &lt;code&gt;md&lt;/code&gt; file in order to activate commenting for it. E.g.:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nt"&gt;---&lt;/span&gt;
title: &lt;span class="s2"&gt;"Title of blog post"&lt;/span&gt;
authors: author
tags: &lt;span class="o"&gt;[&lt;/span&gt;keywordOne, keywordTwo]
enableComments: &lt;span class="nb"&gt;true&lt;/span&gt; &lt;span class="c"&gt;# for Gisqus&lt;/span&gt;
&lt;span class="nt"&gt;---&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I have enabled the comment function of current post in my &lt;a href="https://m19v.github.io/blog/how-to-add-giscus-to-docusaurus" rel="noopener noreferrer"&gt;page&lt;/a&gt;, which can be used as a demo. Feel free to hit the "Like" button if you found this post helpful, or post your question in the comment if you have one.&lt;/p&gt;

&lt;h2&gt;
  
  
  References
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://giscus.app/" rel="noopener noreferrer"&gt;giscus.app&lt;/a&gt;&lt;br&gt;&lt;br&gt;
&lt;a href="https://graphql.org/" rel="noopener noreferrer"&gt;graphql.org&lt;/a&gt;&lt;br&gt;&lt;br&gt;
&lt;a href="https://dev.to/melvnl/add-comment-system-to-your-static-site-with-giscus-482o"&gt;Add comment system to your static site with Giscus&lt;/a&gt;&lt;/p&gt;

</description>
      <category>docusaurus</category>
      <category>giscus</category>
      <category>blogging</category>
    </item>
    <item>
      <title>English-Tajik Computer Science Glossary |Истилоҳоти ингилисӣ-тоҷикии улуми роёна</title>
      <dc:creator>m19v</dc:creator>
      <pubDate>Fri, 05 Nov 2021 00:26:43 +0000</pubDate>
      <link>https://dev.to/m19v/istilokhoti-ulumi-kompiutieri-glossary-of-computer-science-eng-tjk-12a0</link>
      <guid>https://dev.to/m19v/istilokhoti-ulumi-kompiutieri-glossary-of-computer-science-eng-tjk-12a0</guid>
      <description>&lt;p&gt;Дар саҳифаи &lt;a href="https://m19v.github.io/docs/references/glossary/eng-tjk-computer-science-glossary" rel="noopener noreferrer"&gt;зерин&lt;/a&gt; истилоҳоти ингилисӣ-тоҷикии улуми роёна ва тавсифи онҳо ҷамъоварӣ мешавад, то ба омузанда дар фаҳмидани мавзуъҳои соҳаи улуми роёна кӯмак расонад.&lt;/p&gt;

&lt;p&gt;Cаҳифаи номбурда пайваста таҳрир, тасҳеҳ ва нав карда мешавад. Ҳамаи хонандагон метавонанд барои беҳтар кардани саҳифа саҳми худро гузоранд. Барои он шумо метавонед илова, эрод ва пешниҳодҳои худро дар шарҳ бинависед ва ё ба суроғаи электронии &lt;a href="mailto:mnineteenv@gmail.com"&gt;mnineteenv@gmail.com&lt;/a&gt; равона кунед.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Диққат!&lt;/strong&gt; Истифодаи истилоҳоти саҳифаи боло дар мақолаҳо ва корҳои илмӣ бидуни тасдиқи дурустии он бо мутахассиси соҳаи забоншиносӣ тавсия дода намешавад.&lt;/p&gt;

</description>
      <category>computerscience</category>
      <category>glossary</category>
    </item>
    <item>
      <title>Оё математика ихтироъ ва ё кашф шудааст?</title>
      <dc:creator>m19v</dc:creator>
      <pubDate>Mon, 01 Nov 2021 20:57:34 +0000</pubDate>
      <link>https://dev.to/m19v/az-silsilai-savolkhoi-khub-oio-matiematika-ikhtiro-va-io-kashf-shudaast-1pop</link>
      <guid>https://dev.to/m19v/az-silsilai-savolkhoi-khub-oio-matiematika-ikhtiro-va-io-kashf-shudaast-1pop</guid>
      <description>&lt;p&gt;Аз силсилаи саволҳои хуб: Оё математика ихтироъ ва ё кашф шудааст? &lt;br&gt;
Good Question Series: Is mathematics invented or discovered?&lt;/p&gt;

&lt;p&gt;Аз замонҳои қадим инсоният баҳсу мунозира доранд, ки оё математика ихтироъ шудааст ва ё онро инсоният кашф кард?&lt;/p&gt;

&lt;p&gt;Шумо шояд шунидаед, ки математика модар ё шоҳи тамоми илмҳост. Ва ё математикаро забони табиат ва ё коитон меноманд.&lt;/p&gt;

&lt;p&gt;Оё худи математика, қонунҳояш, теоремаҳои он ва ғ. ихтироъ шудаанд ва ё онҳо аз азал вуҷуд доштанду инсоният онҳоро баъдтар кашф кардааст? Оё мо мафҳумҳои математикаро барои фаҳмидани табиати атрофи худ, коинот офаридаем ва ё математика забони табиии худи коинот аст? Оё математика маҳсулоти интеллектуалии инсон мебошад ва ё офариниши илоҳӣ?&lt;/p&gt;

&lt;p&gt;Мисол агар аз оина берунро назар кунем, метавон шумораи дарахтонеро дид, ки он фарз кардем ба 19 баробар аст. Акнун як лаҳза тасаввур кунед инсоният ва дар баробари он математика вуҷуд надоранд ва касе нест, ки онҳоро шуморад, оё дар он ҳолат адади 19 вуҷуд дошта метавонад?&lt;/p&gt;

</description>
      <category>discuss</category>
    </item>
  </channel>
</rss>
