<?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: Swapan</title>
    <description>The latest articles on DEV Community by Swapan (@swapanroy).</description>
    <link>https://dev.to/swapanroy</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%2F549314%2F7d704ce2-e9a1-49d7-b667-bc7da8ef1f3b.JPG</url>
      <title>DEV Community: Swapan</title>
      <link>https://dev.to/swapanroy</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/swapanroy"/>
    <language>en</language>
    <item>
      <title>Explained: Gesturejacking and Clickjacking</title>
      <dc:creator>Swapan</dc:creator>
      <pubDate>Thu, 04 Apr 2024 15:50:57 +0000</pubDate>
      <link>https://dev.to/swapanroy/explained-gesture-jacking-and-clickjacking-3j20</link>
      <guid>https://dev.to/swapanroy/explained-gesture-jacking-and-clickjacking-3j20</guid>
      <description>&lt;h4&gt;
  
  
  Gesturejacking vs Clickjacking :
&lt;/h4&gt;

&lt;p&gt;In these attacks, hacker trick users into doing unintended actions. Here's a breakdown of the three:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Gesturejacking&lt;/strong&gt;: Exploits keystrokes in hidden windows.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Clickjacking&lt;/strong&gt;: Uses invisible overlays on legitimate websites.&lt;/li&gt;
&lt;/ol&gt;

&lt;h4&gt;
  
  
  Clickjacking Explained:
&lt;/h4&gt;

&lt;p&gt;Clickjacking is also referred as a UI redress attack or user interface (UI) overlay attack, is a malicious technique in which an attacker leads a user into interacting with a concealed element on a web page. This deception is achieved by superimposing a concealed element over another element or by positioning it in a manner that escapes the user's notice. As a result, users may perform actions they did not intend to do, such as granting unauthorized permissions/initiating unintended actions/ disclosing sensitive information.&lt;/p&gt;

&lt;h4&gt;
  
  
  Gesturejacking (Cross-Window Forgery) Explained:
&lt;/h4&gt;

&lt;p&gt;Gesturejacking exploits a vulnerability in browsers where keystrokes in one window affect another, which is usually hidden in a window. &lt;br&gt;
Here's an example of a gesture jacking attack in HTML:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="cp"&gt;&amp;lt;!DOCTYPE html&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;html&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;head&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;title&amp;gt;&lt;/span&gt;Safe Website (Appears Safe)&lt;span class="nt"&gt;&amp;lt;/title&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/head&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;body&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;p&amp;gt;&lt;/span&gt;Press and hold Enter to continue!&lt;span class="nt"&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;iframe&lt;/span&gt; &lt;span class="na"&gt;src=&lt;/span&gt;&lt;span class="s"&gt;"attackersite.com#exploit"&lt;/span&gt; &lt;span class="na"&gt;style=&lt;/span&gt;&lt;span class="s"&gt;"display: none;"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&amp;lt;/iframe&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  Prevention Tips:
&lt;/h4&gt;

&lt;ol&gt;
&lt;li&gt;Update your browser regularly : Regularly updating your web browser is key safeguard against evolving security threats like gesture jacking, clickjacking, and clockjacking. &lt;/li&gt;
&lt;li&gt;Be cautious of unusual website behavior: Verify the website you intend to visit, remain vigilant for any unusual or suspicious behavior exhibited on the websites. Take note of unexpected prompts, urgent requests, or unfamiliar actions, and verify the legitimacy of the website before proceeding further.&lt;/li&gt;
&lt;li&gt;Consider anti-clickjacking extensions : Installing (reputable) browser extensions specifically designed to detect and prevent clickjacking attacks. These extensions add an extra layer of security.&lt;/li&gt;
&lt;li&gt;Implement User Input Sanitization (HTML5): In HTML5, leverage features such as input type attributes, pattern validation, and client-side scripting (e.g., JavaScript) to sanitize and validate user input directly in the browser. Use input types like "email," "tel," and "number" along with regular expressions (Regex) to ensure that user inputs conform to expected formats and prevent malicious input.&lt;/li&gt;
&lt;/ol&gt;

&lt;h4&gt;
  
  
  Mitigating Gesture Jacking in HTML/JavaScript:
&lt;/h4&gt;

&lt;p&gt;While directly controlling gesture jacking through HTML/JavaScript is challenging, you can take steps to minimize its impact:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Disabling Key Capture in iframes&lt;/strong&gt;: In case you have control over the server-side code or the embedding of iframes in your web pages, consider adding headers to iframes to disallow capturing keystrokes.
For example, in PHP:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;&lt;span class="nb"&gt;header&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;"Content-Security-Policy: frame-ancestors 'none'"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This header prevents the iframe from capturing keystrokes, reducing the risk of gesture jacking.&lt;/p&gt;

&lt;p&gt;In HTML&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;iframe src="example.com" sandbox="allow-scripts"&amp;gt;&amp;lt;/iframe&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Using the sandbox attribute with the value allow-scripts can restrict key events in iframes:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Use Content Security Policy (CSP): Adding a Content Security Policy can further enhance security by specifying which resources (such as scripts, stylesheets, and fonts) are allowed to be loaded / executed on your web page. One can configure CSP directives to block inline scripts and restrict the use of eval() functions, which can help mitigate the execution of malicious scripts that may be involved in gesture jacking attempts.
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;meta&lt;/span&gt; &lt;span class="na"&gt;http-equiv=&lt;/span&gt;&lt;span class="s"&gt;"Content-Security-Policy"&lt;/span&gt; &lt;span class="na"&gt;content=&lt;/span&gt;&lt;span class="s"&gt;"script-src 'self' 'unsafe-inline';"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  Conclusion and References:
&lt;/h4&gt;

&lt;p&gt;By staying updated, being cautious online, and practicing proper input validation along with sanitizating your code, one can significantly reduce the risk of falling victim to gesture jacking and clickjacking.&lt;/p&gt;

&lt;h4&gt;
  
  
  Please feel free to add/Suggest.
&lt;/h4&gt;

&lt;p&gt;References:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Gesture Jacking Explained: &lt;a href="https://portswigger.net/"&gt;PortSwigger&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Clickjacking Defense Strategies: &lt;a href="https://cheatsheetseries.owasp.org/cheatsheets/Clickjacking_Defense_Cheat_Sheet.html"&gt;OWASP Cheat Sheet&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>webdev</category>
      <category>cybersecurity</category>
      <category>html</category>
    </item>
    <item>
      <title>Comprehensive Cybersecurity Bootcamp: Securing the Digital World</title>
      <dc:creator>Swapan</dc:creator>
      <pubDate>Sat, 16 Mar 2024 19:01:28 +0000</pubDate>
      <link>https://dev.to/swapanroy/comprehensive-cybersecurity-bootcamp-securing-the-digital-world-49n6</link>
      <guid>https://dev.to/swapanroy/comprehensive-cybersecurity-bootcamp-securing-the-digital-world-49n6</guid>
      <description>&lt;h4&gt;
  
  
  Looking to get started in cybersecurity?  below is suggested curriculum with free resources.
&lt;/h4&gt;




&lt;h2&gt;
  
  
  Comprehensive Cybersecurity Bootcamp
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Module 1: Introduction to Cybersecurity
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Overview of cybersecurity concepts, threats, and attacks&lt;/li&gt;
&lt;li&gt;Introduction to cybersecurity roles and responsibilities&lt;/li&gt;
&lt;li&gt;Basic cybersecurity principles and best practices&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Free Resources:
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.coursera.org/learn/cyber-security-basics"&gt;Cybersecurity Basics - Coursera&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.netacad.com/courses/cybersecurity/cybersecurity-essentials"&gt;Cybersecurity Essentials - Cisco Networking Academy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.edx.org/course/introduction-to-cybersecurity"&gt;Introduction to Cybersecurity - edX&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Module 2: Network Security
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Understanding network vulnerabilities and attacks&lt;/li&gt;
&lt;li&gt;Introduction to firewalls, IDS/IPS, and network segmentation&lt;/li&gt;
&lt;li&gt;Secure network design principles&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Free Resources:
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.netacad.com/courses/intro-networking"&gt;Introduction to Networking - Cisco Networking Academy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.udemy.com/course/network-security-fundamentals/"&gt;Network Security Fundamentals - Udemy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.cybrary.it/catalog/cybersecurity/"&gt;Cybrary - Network Security Courses&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Module 3: Cyber Threat Intelligence
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Overview of threat intelligence and analysis&lt;/li&gt;
&lt;li&gt;Threat hunting techniques and tools&lt;/li&gt;
&lt;li&gt;Incident response and mitigation strategies&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Free Resources:
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.coursera.org/learn/threat-intelligence"&gt;Threat Intelligence - Coursera&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.cybrary.it/course/cyber-threat-intelligence/"&gt;Cyber Threat Intelligence - Cybrary&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.udemy.com/course/osint-open-source-intelligence/"&gt;Open Source Intelligence (OSINT) - Udemy&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Module 4: Cryptography
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Basics of encryption and decryption&lt;/li&gt;
&lt;li&gt;Cryptographic algorithms and protocols&lt;/li&gt;
&lt;li&gt;Secure communication and data protection&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Free Resources:
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.khanacademy.org/computing/computer-science/cryptography"&gt;Cryptography - Khan Academy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.udacity.com/course/cryptography-and-network-security--ud459"&gt;Cryptography and Network Security - Udacity&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://crypto101.io/"&gt;Crypto101 - Crypto101.io&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Module 5: Secure Software Development
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Secure coding practices and principles&lt;/li&gt;
&lt;li&gt;Application security testing (SAST, DAST, IAST)&lt;/li&gt;
&lt;li&gt;Secure DevOps and continuous security integration&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Free Resources:
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://owasp.org/www-project-secure-coding-practices/"&gt;Secure Coding Practices - OWASP&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.edx.org/professional-certificate/ubcx-software-development"&gt;Software Security - edX&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.coursera.org/specializations/secure-devops"&gt;Secure DevOps - Coursera&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Module 6: Cloud Security
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Introduction to cloud computing and security challenges&lt;/li&gt;
&lt;li&gt;Cloud security architecture and best practices&lt;/li&gt;
&lt;li&gt;Securing cloud services (IaaS, PaaS, SaaS)&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Free Resources:
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://cloudacademy.com/learning-paths/cloud-security-fundamentals-239/"&gt;Cloud Security Fundamentals - Cloud Academy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://cloud.google.com/blog/topics/trust-security/cloud-security-basics-learn-protect-your-business"&gt;Cloud Security Basics - Google Cloud&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.aws.training/Details/Curriculum?id=19837"&gt;AWS Security Fundamentals - AWS Training and Certification&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Module 7: Risk Management and Compliance
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Risk assessment methodologies (NIST, ISO, etc.)&lt;/li&gt;
&lt;li&gt;Compliance frameworks and standards (HIPAA, GDPR, etc.)&lt;/li&gt;
&lt;li&gt;Incident response planning and business continuity&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Free Resources:
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.sans.org/course/risk-management-fundamentals/"&gt;Risk Management Fundamentals - SANS Institute&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.compliancetraininggroup.com/"&gt;Compliance Training - Compliance Training Group&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.coursera.org/learn/introduction-to-risk-management"&gt;Introduction to Risk Management - Coursera&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Module 8: Ethical Hacking and Penetration Testing
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Introduction to ethical hacking concepts&lt;/li&gt;
&lt;li&gt;Penetration testing methodologies (white box, black box, gray box)&lt;/li&gt;
&lt;li&gt;Vulnerability assessment and management&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Free Resources:
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.cybrary.it/course/ethical-hacking/"&gt;Ethical Hacking - Cybrary&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.pentesteracademy.com/course?id=2"&gt;Penetration Testing - Pentester Academy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://opensecuritytraining.info/VulnerabilityManagement.html"&gt;Vulnerability Management - Open Security Training&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;This curriculum covers a comprehensive range of cybersecurity topics, from basic principles to advanced concepts like ethical hacking and risk management. It covers something for everyone.&lt;/p&gt;

&lt;p&gt;Add your favorate site or training link&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>cybersecurity</category>
      <category>career</category>
      <category>intermediate</category>
    </item>
    <item>
      <title>Powershell basics for Cybersecurity</title>
      <dc:creator>Swapan</dc:creator>
      <pubDate>Wed, 06 Dec 2023 19:49:06 +0000</pubDate>
      <link>https://dev.to/swapanroy/powershell-basics-for-cybersecurity-55p6</link>
      <guid>https://dev.to/swapanroy/powershell-basics-for-cybersecurity-55p6</guid>
      <description>&lt;p&gt;PowerShell is a scripting and automation framework that is widely used in cybersecurity for tasks such as log analysis, vulnerability scanning and incident response. PowerShell is primarily associated with Windows,but it's also becoming increasingly cross-platform with Linux and MacOS. &lt;/p&gt;

&lt;p&gt;In this PowerShell basics, I'll highlight aspects relevant to cybersecurity along with sample code.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. &lt;strong&gt;PowerShell Basics:&lt;/strong&gt;
&lt;/h3&gt;

&lt;h4&gt;
  
  
  a. &lt;strong&gt;Variables:&lt;/strong&gt;
&lt;/h4&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Variable assignment&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="nv"&gt;$name&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"John"&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;Write-Host&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Hello, &lt;/span&gt;&lt;span class="nv"&gt;$name&lt;/span&gt;&lt;span class="s2"&gt;!"&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  b. &lt;strong&gt;Arrays:&lt;/strong&gt;
&lt;/h4&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Array creation and iteration&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="nv"&gt;$fruits&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;@(&lt;/span&gt;&lt;span class="s2"&gt;"Apple"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Banana"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Orange"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="kr"&gt;foreach&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;$fruit&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kr"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$fruits&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="n"&gt;Write-Host&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$fruit&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;h4&gt;
  
  
  c. &lt;strong&gt;Functions:&lt;/strong&gt;
&lt;/h4&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Function definition and usage&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="kr"&gt;function&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nf"&gt;Greet&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="kr"&gt;param&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="n"&gt;string&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="nv"&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="n"&gt;Write-Host&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Hello, &lt;/span&gt;&lt;span class="nv"&gt;$name&lt;/span&gt;&lt;span class="s2"&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="n"&gt;Greet&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-name&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Alice"&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  d. &lt;strong&gt;Conditionals:&lt;/strong&gt;
&lt;/h4&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="c"&gt;# If-else statement&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="nv"&gt;$number&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;10&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="kr"&gt;if&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;$number&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;-gt&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;5&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="n"&gt;Write-Host&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"The number is greater than 5."&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="kr"&gt;else&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="n"&gt;Write-Host&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"The number is 5 or less."&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;h3&gt;
  
  
  2. &lt;strong&gt;PowerShell for Cross-Platform:&lt;/strong&gt;
&lt;/h3&gt;

&lt;h4&gt;
  
  
  a. &lt;strong&gt;Installing PowerShell on Linux:&lt;/strong&gt;
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;For Debian-based systems (e.g., Ubuntu):
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;  &lt;span class="nb"&gt;sudo &lt;/span&gt;apt-get update
  &lt;span class="nb"&gt;sudo &lt;/span&gt;apt-get &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;-y&lt;/span&gt; powershell
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;For Red Hat-based systems (e.g., CentOS):
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;  &lt;span class="nb"&gt;sudo &lt;/span&gt;yum &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;-y&lt;/span&gt; powershell
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  b. &lt;strong&gt;Running PowerShell on Linux:&lt;/strong&gt;
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;Open a terminal and type &lt;code&gt;pwsh&lt;/code&gt; to start PowerShell.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  3. &lt;strong&gt;PowerShell in Cybersecurity:&lt;/strong&gt;
&lt;/h3&gt;

&lt;h4&gt;
  
  
  a. &lt;strong&gt;Log Analysis:&lt;/strong&gt;
&lt;/h4&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Example: Analyzing Windows Security Event Logs&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="nv"&gt;$securityEvents&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Get-WinEvent&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-LogName&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;Security&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-MaxEvents&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;10&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="kr"&gt;foreach&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;$event&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kr"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$securityEvents&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="n"&gt;Write-Host&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Event ID: &lt;/span&gt;&lt;span class="si"&gt;$(&lt;/span&gt;&lt;span class="nv"&gt;$event&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;Id&lt;/span&gt;&lt;span class="si"&gt;)&lt;/span&gt;&lt;span class="s2"&gt; | Message: &lt;/span&gt;&lt;span class="si"&gt;$(&lt;/span&gt;&lt;span class="nv"&gt;$event&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;Message&lt;/span&gt;&lt;span class="si"&gt;)&lt;/span&gt;&lt;span class="s2"&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;h4&gt;
  
  
  b. &lt;strong&gt;Vulnerability Scanning:&lt;/strong&gt;
&lt;/h4&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Example: Checking for open ports using Test-NetConnection&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="nv"&gt;$computers&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;@(&lt;/span&gt;&lt;span class="s2"&gt;"192.168.1.100"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"192.168.1.101"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="kr"&gt;foreach&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;$computer&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kr"&gt;in&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$computers&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="nv"&gt;$result&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Test-NetConnection&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-ComputerName&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nv"&gt;$computer&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nt"&gt;-Port&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;80&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="n"&gt;Write-Host&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="nv"&gt;$computer&lt;/span&gt;&lt;span class="s2"&gt; | Port 80 open: &lt;/span&gt;&lt;span class="si"&gt;$(&lt;/span&gt;&lt;span class="nv"&gt;$result&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;TcpTestSucceeded&lt;/span&gt;&lt;span class="si"&gt;)&lt;/span&gt;&lt;span class="s2"&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;h4&gt;
  
  
  c. &lt;strong&gt;Incident Response:&lt;/strong&gt;
&lt;/h4&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Example: Collecting system information after an incident&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="nv"&gt;$systemInfo&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Get-WmiObject&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;Win32_ComputerSystem&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="nv"&gt;$processes&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;Get-Process&lt;/span&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="n"&gt;Write-Host&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"System Information:"&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;Write-Host&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Computer Name: &lt;/span&gt;&lt;span class="si"&gt;$(&lt;/span&gt;&lt;span class="nv"&gt;$systemInfo&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;Name&lt;/span&gt;&lt;span class="si"&gt;)&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;Write-Host&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Total Processes: &lt;/span&gt;&lt;span class="si"&gt;$(&lt;/span&gt;&lt;span class="nv"&gt;$processes&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;Count&lt;/span&gt;&lt;span class="si"&gt;)&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Sample Output:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;PS&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;C:\Users\ABC&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;Write-Host&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Computer Name: &lt;/span&gt;&lt;span class="si"&gt;$(&lt;/span&gt;&lt;span class="nv"&gt;$systemInfo&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;Name&lt;/span&gt;&lt;span class="si"&gt;)&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;Computer&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;Name:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;SWXXXXOY&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;PS&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;C:\Users\ABC&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;Write-Host&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Total Processes: &lt;/span&gt;&lt;span class="si"&gt;$(&lt;/span&gt;&lt;span class="nv"&gt;$processes&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;Count&lt;/span&gt;&lt;span class="si"&gt;)&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;Total&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;Processes:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;276&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;PS&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;C:\Users\ABC&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;These are simple examples, and in real-world scenarios, PowerShell scripts can be much more complex and tailored to specific cybersecurity tasks. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://learn.microsoft.com/en-us/training/paths/powershell/"&gt;Free Microsoft training&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Note: No affiliations here...&lt;/p&gt;

</description>
      <category>powershell</category>
      <category>beginners</category>
      <category>cybersecurity</category>
    </item>
    <item>
      <title>Cybersecurity frameworks</title>
      <dc:creator>Swapan</dc:creator>
      <pubDate>Mon, 23 Oct 2023 20:01:24 +0000</pubDate>
      <link>https://dev.to/swapanroy/cybersecurity-frameworks-comparison-4630</link>
      <guid>https://dev.to/swapanroy/cybersecurity-frameworks-comparison-4630</guid>
      <description>&lt;h2&gt;
  
  
  What is CyberSecurity framework?
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;A cybersecurity frameworks describes guidelines, and standards/plan designed for cybersecurity and it's associated risk management. The frameworks intent is to reduce an organization's exposure to exploits and vulnerabilities that cyber-criminals may use.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://www.nist.gov/"&gt;NIST's&lt;/a&gt; Cybersecurity Framework is widely recognized, but there are other cybersecurity frameworks and standards that organizations may tailor and use. Below is a comparison of some of these frameworks, along with their common vs differentiating factors.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Common Factors:&lt;/strong&gt; Most of the frameworks share a common  area of focus which includes risk management, protection of digital assets, data security and aligning cybersecurity with organizational goals. Framework provides a structured approach for enhancing cybersecurity, and can be tailored to an organization's needs and risk apetite.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Differentiating Factors:&lt;/strong&gt; The differences between the frameworks lie in the specific industry focus, level of prescriptiveness, and methodologies used. Some, like the NIST Framework and ISO/IEC 27001, are widely applicable across industries, while others, like HITRUST and CIS Controls, are more industry-specific. COBIT focuses on governance, while FAIR provides a unique quantitative risk analysis approach.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Framework / Standard&lt;/th&gt;
&lt;th&gt;URL&lt;/th&gt;
&lt;th&gt;Common Factors&lt;/th&gt;
&lt;th&gt;Differentiating Factors&lt;/th&gt;
&lt;th&gt;Example&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;NIST Cybersecurity Framework&lt;/td&gt;
&lt;td&gt;&lt;a href="https://www.nist.gov/cybersecurity-framework"&gt;NIST Cybersecurity Framework&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;- Risk-based approach - Core functions (Identify, Protect, Detect, Respond, Recover) - Tiered maturity model&lt;/td&gt;
&lt;td&gt;- Highly adaptable for various industries - Broadly recognized and used globally&lt;/td&gt;
&lt;td&gt;A manufacturing company uses NIST's framework to identify critical assets and vulnerabilities and develop a response plan for a potential cyberattack.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;CIS Controls (Center for Internet Security)&lt;/td&gt;
&lt;td&gt;&lt;a href="https://www.cisecurity.org/controls/"&gt;CIS Controls&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;- Prioritized cybersecurity best practices - Focus on reducing the attack surface - Mapped to other frameworks (e.g., NIST, ISO 27001)&lt;/td&gt;
&lt;td&gt;- More prescriptive in terms of specific controls - Targets specific security improvements&lt;/td&gt;
&lt;td&gt;A financial institution may implement CIS Controls to reduce its attack impact by applying specific controls e.g. network segmentation and privilege management(role based access).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;ISO/IEC 27001 (Information Security Management System)&lt;/td&gt;
&lt;td&gt;&lt;a href="https://www.iso.org/standard/54534.html"&gt;ISO/IEC 27001&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;- Comprehensive information security management system - Risk management-based approach - Internationally recognized&lt;/td&gt;
&lt;td&gt;- Highly structured and process-oriented&lt;/td&gt;
&lt;td&gt;A global IT services company seeks ISO 27001 certification to establish a comprehensive information security management system and to meet international security standards to gain projects/recogniation.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;COBIT (Control Objectives for Information and Related Technologies)&lt;/td&gt;
&lt;td&gt;&lt;a href="https://www.isaca.org/go/cobit"&gt;COBIT&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;- Governance framework for IT and cybersecurity - Aligns IT and business goals - Process improvement model&lt;/td&gt;
&lt;td&gt;- Strong focus on governance and control objectives - Tailored specially for IT management and governance&lt;/td&gt;
&lt;td&gt;A large corporation may use COBIT to ensure IT and business alignment by establishing governance practices and a maturity model for IT processes.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;HITRUST Common Security Framework (CSF)&lt;/td&gt;
&lt;td&gt;&lt;a href="https://hitrustalliance.net/hitrust-csf/"&gt;HITRUST CSF&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;- Healthcare-specific framework - Aligns with HIPAA and other healthcare regulations - Comprehensive controls for PHI protection&lt;/td&gt;
&lt;td&gt;- Specifically designed for the healthcare industry - Requires HITRUST certification&lt;/td&gt;
&lt;td&gt;A hospital may adopt HITRUST CSF to comply with HIPAA's security requirements and safeguard electronic health records (EHRs) effectively.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;CIS RAM (Center for Internet Security Risk Assessment Method)&lt;/td&gt;
&lt;td&gt;&lt;a href="https://www.cisecurity.org/risk-assessment/"&gt;CIS RAM&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;- Risk assessment methodology - Aligns with CIS Controls - Provides guidelines for identifying and mitigating security risks&lt;/td&gt;
&lt;td&gt;- Focused on risk assessment and mitigation - Works well in conjunction with other frameworks&lt;/td&gt;
&lt;td&gt;A financial institution may use CIS RAM to perform a risk assessment on its digital banking platform and then applies CIS Controls to mitigate identified risks.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;FAIR (Factor Analysis of Information Risk)&lt;/td&gt;
&lt;td&gt;&lt;a href="https://www.fairinstitute.org/"&gt;FAIR Institute&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;- Quantitative risk analysis methodology - Focus on understanding and managing information risk - Business-focused risk assessment&lt;/td&gt;
&lt;td&gt;- Unique for its quantitative risk analysis approach - Tailored for organizations looking for deep risk analysis&lt;/td&gt;
&lt;td&gt;A cybersecurity consulting firm may use FAIR to conduct a quantitative risk analysis for a financial client to assess the potential financial impact of a data breach accurately.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;OWASP (Open Web Application Security Project)&lt;/td&gt;
&lt;td&gt;&lt;a href="https://owasp.org/"&gt;OWASP&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;- Focus on web application security - Provides a Top Ten list of critical web application security risks - Offers tools and resources for developers and security professionals&lt;/td&gt;
&lt;td&gt;- Specialized in web application security - Primarily for developers and security professionals in the context of web application development&lt;/td&gt;
&lt;td&gt;A software development company may follow OWASP guidelines to identify and mitigate common web application security risks, such as SQL injection and cross-site scripting (XSS), during application development.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Please feel free to add ...&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>cybersecurity</category>
      <category>intermediate</category>
      <category>framework</category>
      <category>governance</category>
    </item>
    <item>
      <title>Harnessing Automation for Cybersecurity in 7 Steps</title>
      <dc:creator>Swapan</dc:creator>
      <pubDate>Thu, 12 Oct 2023 13:10:00 +0000</pubDate>
      <link>https://dev.to/swapanroy/harnessing-automation-for-cybersecurity-in-7-steps-3k43</link>
      <guid>https://dev.to/swapanroy/harnessing-automation-for-cybersecurity-in-7-steps-3k43</guid>
      <description>&lt;p&gt;&lt;a href="https://s2p1.ttsmaker-file.com/file/2023-12-07-054334_149887.mp3"&gt;Listen to Audio&lt;/a&gt;`&lt;/p&gt;

&lt;p&gt;&lt;code&gt;Note: Link opens in a different window&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Automation is a friend and a workhorse for cybersecurity, specifically with the process of identifying and responding to already known security vulnerability/threats/exploit .&lt;br&gt;
Below is a breakdown of the steps to achieve it:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Determine Your Detection Objectives&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Identify the specific security threats and/or malicious activities we aim to identify, encompassing malware, unauthorized access attempts, and insider threats.
Think about not letting anyone with out proper badge entering your office.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Choose and Deploy Specialized Threat Detection Tools&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Select and install security software and solutions that align with your organization's need. This encompasses systems such as &lt;a href="https://www.microsoft.com/en-us/security/business/security-101/what-is-siem"&gt;SIEM (Security Information and Event Management)&lt;/a&gt;, IDS/IPS (Intrusion Detection System/Intrusion Prevention System), and advanced threat detection platforms.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Collect and Merge Data&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Gather data from diverse sources, including system logs, network traffic, and endpoint information. Then, seamlessly integrate this data into your threat detection tools.
Think about tools like &lt;a href="https://logrhythm.com/"&gt;LogRhythm&lt;/a&gt;, &lt;a href="https://www.splunk.com/"&gt;Splunk&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Formulate Detection Rules and Signatures&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Craft unique detection rules, signatures, and use cases derived from known attack patterns and indicators of compromise (IoC).
Check out sources like - &lt;a href="https://attack.mitre.org/"&gt;MITRE ATT&amp;amp;CK&lt;/a&gt;, &lt;a href="https://www.snort.org/"&gt;Snort&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Leverage Machine Learning and AI&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Apply machine learning and artificial intelligence to pinpoint anomalies and novel threats. These technologies excel at identifying deviations from typical system behavior.
Check out sources like - &lt;a href="https://darktrace.com/"&gt;Darktrace&lt;/a&gt;, &lt;a href="https://cset.georgetown.edu/research-topic/cyberai/"&gt;CyberAI&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Automate Alerting and Notifications&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Configure automated alerting and notification mechanisms to promptly inform security team and/or incident response personnel when unusual activity is detected. 
Note: Have an &lt;a href="https://blog.isc2.org/isc2_blog/2021/06/business-continuity.html"&gt;Business Continuity/Disaster Recovery&lt;/a&gt; and Incident Response Plan Ready&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Automate Incident Analysis and Prioritization&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Streamline the initial analysis and prioritization of identified threats. Classify incidents based on their severity and potential impact.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Implement Response Automation&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Embed automated response measures for common threats. For instance, one can automate the isolation of compromised systems or the blocking of malicious IP addresses or use &lt;a href="https://www.threatintelligence.com/blog/network-segmentation"&gt;network segementaion&lt;/a&gt;. 
.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Sustain Ongoing Monitoring and Enhancement&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Continously monitor the "automated threat detection system" and ensure it remains current by adding new detection rules, AI models, and response protocols as required. Regularly scrutinize and address false positives and false negatives to refine accuracy.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;By following above steps, organizations may enhance their cybersecurity defenses, but important part is to keep the software and infrastructure updated to the latest patch and keep updating the defection rules/&lt;/p&gt;

</description>
      <category>ai</category>
      <category>beginners</category>
      <category>cybersecurity</category>
    </item>
    <item>
      <title>Cybersecurity Resources for beginners</title>
      <dc:creator>Swapan</dc:creator>
      <pubDate>Wed, 11 Oct 2023 19:26:51 +0000</pubDate>
      <link>https://dev.to/swapanroy/cybersecurity-resources-for-beginners-14p0</link>
      <guid>https://dev.to/swapanroy/cybersecurity-resources-for-beginners-14p0</guid>
      <description>&lt;h2&gt;
  
  
  Looking for cybersecurity resources to get started ?
&lt;/h2&gt;

&lt;h4&gt;
  
  
  Below are some of the sources providing quality information on security.
&lt;/h4&gt;

&lt;p&gt;Please add your fav...&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Cybersecurity Blogs and News Websites&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Websites like &lt;a href="https://www.darkreading.com/"&gt;Dark Reading&lt;/a&gt;, &lt;a href="https://krebsonsecurity.com/"&gt;Krebs on Security&lt;/a&gt;, and &lt;a href="https://thehackernews.com/"&gt;The Hacker News&lt;/a&gt; regularly publish articles and news on cybersecurity trends, including automation.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Cybersecurity Organizations&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Check out resources from reputable organizations like &lt;a href="https://www.nist.gov/"&gt;The National Institute of Standards and Technology (NIST)&lt;/a&gt;, &lt;a href="https://www.cisecurity.org/"&gt;The Center for Internet Security (CIS)&lt;/a&gt;, and &lt;a href="https://www.cisa.gov/"&gt;The Cybersecurity and Infrastructure Security Agency (CISA)&lt;/a&gt; for cybersecurity guidelines and best practices, some of which may relate to automation.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Cybersecurity Forums and Communities&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Platforms like &lt;a href="https://www.reddit.com/r/cybersecurity/"&gt;Reddit's /r/cybersecurity&lt;/a&gt; and &lt;a href="https://www.cybersecurityforum.org/"&gt;Cyber Security Forum&lt;/a&gt; often feature discussions and resources related to automation in cybersecurity.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Cybersecurity Research Papers and Journals&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Look into academic journals and research papers through platforms like &lt;a href="https://scholar.google.com/"&gt;Google Scholar&lt;/a&gt; to find in-depth studies on various aspects of cybersecurity automation.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Online Courses and Tutorials&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Websites like &lt;a href="https://www.coursera.org/"&gt;Coursera&lt;/a&gt;, &lt;a href="https://www.edx.org/"&gt;edX&lt;/a&gt;, and &lt;a href="https://www.cybrary.it/"&gt;Cybrary&lt;/a&gt; offer courses on cybersecurity, including automation topics.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;YouTube Channels&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;There are many YouTube channels dedicated to cybersecurity, such as &lt;a href="https://www.youtube.com/user/Hak5Darren"&gt;Hak5&lt;/a&gt; and &lt;a href="https://www.youtube.com/c/TheCyberMentor"&gt;The Cyber Mentor&lt;/a&gt;, which offer video tutorials and discussions on automation in cybersecurity.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Conferences and Webinars&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Many cybersecurity conferences and webinars cover automation topics. Keep an eye on events like &lt;a href="https://www.blackhat.com/"&gt;Black Hat&lt;/a&gt;, &lt;a href="https://www.defcon.org/"&gt;DEFCON&lt;/a&gt;, and &lt;a href="https://www.rsaconference.com/"&gt;RSA Conference&lt;/a&gt; for relevant sessions and presentations.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Remember to verify the credibility of the sources you explore and keep up-to-date with the latest trends and developments in cybersecurity automation to ensure the security of your systems and data.&lt;br&gt;
Happy Sharing :) &lt;/p&gt;

</description>
      <category>cybersecurity</category>
      <category>beginners</category>
      <category>information</category>
      <category>beginnerfriendly</category>
    </item>
    <item>
      <title>Demystifying Explainable Artificial Intelligence (XAI)</title>
      <dc:creator>Swapan</dc:creator>
      <pubDate>Tue, 10 Oct 2023 22:07:56 +0000</pubDate>
      <link>https://dev.to/swapanroy/demystifying-explainable-artificial-intelligence-xai-41lm</link>
      <guid>https://dev.to/swapanroy/demystifying-explainable-artificial-intelligence-xai-41lm</guid>
      <description>&lt;p&gt;Artificial Intelligence (AI) and machine learning are influencing our day to day decisions, there's a growing need for transparency and trust. The term "Explainable Artificial Intelligence" or XAI has been coined by DARPA (the Defence Advanced Research Project Agency) as a research initiative to unravel one of the critical shortcomings of AI.&lt;/p&gt;

&lt;p&gt;XAI is not just a buzzword; it's a set of processes and methods that allow human users to comprehend and trust the results and output created by machine learning algorithms. In this post, we'll delve into the world of XAI and why it's relevant in today's AI landscape.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Challenge of the AI Black Box
&lt;/h2&gt;

&lt;p&gt;Imagine people making a critical decision based on a suggestion generated by an AI system. It could be a medical diagnosis, a financial investment, or could even be a legal judgment. The AI system provides "the answer", but it does so as if it were pulling results from a black box. You see the output, but you have no insight into how the AI arrived at that conclusion. It's a challenge known as the "AI black box."&lt;/p&gt;

&lt;p&gt;The AI black box conundrum presents several problems:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Lack of Trust:&lt;/strong&gt; Users are hesitant to trust AI systems when they don't understand their decision-making processes. This lack of trust can hinder AI adoption.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Bias and Fairness:&lt;/strong&gt; AI algorithms can unintentionally perpetuate biases present in the training data. Without transparency, it's challenging to identify and mitigate these biases.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Compliance and Regulation:&lt;/strong&gt; In highly regulated industries, such as finance and healthcare, there's a need to demonstrate compliance with laws and regulations. An AI black box makes this task daunting.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h1&gt;
  
  
  Contrasting AI with XAI
&lt;/h1&gt;

&lt;h2&gt;
  
  
  What sets "conventional" AI apart from explainable AI?
&lt;/h2&gt;

&lt;p&gt;Explainable AI employs precise techniques and approaches to guarantee that every decision taken during the machine learning process can be tracked and clarified. In contrast, AI often produces outcomes through machine learning algorithms using historic data, books etc, yet the creators of AI systems may not possess a comprehensive understanding of how the algorithm arrived at that outcome. This creates challenges in verifying accuracy and results in a deficiency of oversight, responsibility, and the ability to conduct audits.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Role of XAI
&lt;/h2&gt;

&lt;p&gt;This is where Explainable AI, or XAI, comes into play. XAI is a framework designed to make AI models more interpretable, transparent, and ultimately trustworthy. It aims to answer questions like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Why did the AI make this decision?&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;What factors or data influenced the outcome?&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;How confident is the AI in its decision?&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;XAI techniques use a variety of methods to provide these answers, making AI more transparent and accountable. Here are a few common XAI techniques:&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Feature Importance:&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;XAI methods can reveal which features (variables) had the most significant influence on the AI's decision. This helps users understand the factors that led to a particular output.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Local Explanations:&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;For specific predictions or decisions, XAI provides localized explanations, highlighting the key factors contributing to that particular result.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Sensitivity Analysis:&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Sensitivity analysis assesses how changes in input data impact the AI's output. It demonstrates how robust the model is to variations in data.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Rule-Based Models:&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Some XAI approaches use rule-based models to create human-understandable decision rules. These models are inherently transparent.&lt;/p&gt;

&lt;h2&gt;
  
  
  Real-World Applications of XAI
&lt;/h2&gt;

&lt;p&gt;XAI is not just a theoretical concept; it's already finding applications in various domains:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Healthcare:&lt;/strong&gt; XAI is used to explain medical diagnoses, providing doctors with insights into the factors contributing to a patient's condition.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Finance:&lt;/strong&gt; In the world of finance, XAI helps explain risk assessment models, making them more transparent and compliant with regulations.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Legal:&lt;/strong&gt; XAI aids in legal decisions by providing explanations for judgments, enabling lawyers and judges to understand and validate AI-generated legal recommendations.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Autonomous Vehicles:&lt;/strong&gt; For self-driving cars, XAI can explain why the vehicle made a specific decision, enhancing safety and trust.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The Road Ahead
&lt;/h2&gt;

&lt;p&gt;Explainable Artificial Intelligence is not just a "good to have feature"; it's a necessity. As AI becomes more integrated into our lives, we need to ensure they are understandable, accountable, and most importantly trustworthy. XAI is the key to unlocking this potential, making AI more than just a black box of answers. It's about making AI a tool that empowers us with knowledge, transparency, and control. With XAI, we have the opportunity to harness the full potential of AI while keeping it aligned with our human values and expectations.&lt;/p&gt;

&lt;h3&gt;
  
  
  Reference: &lt;a href="https://www.ibm.com/topics/explainable-ai"&gt;https://www.ibm.com/topics/explainable-ai&lt;/a&gt;
&lt;/h3&gt;

</description>
      <category>ai</category>
      <category>xai</category>
    </item>
    <item>
      <title>AI Hallucination: Exploring the Frontiers of Creativity and Concern in Healthcare and Beyond.</title>
      <dc:creator>Swapan</dc:creator>
      <pubDate>Thu, 05 Oct 2023 21:58:12 +0000</pubDate>
      <link>https://dev.to/swapanroy/ai-hallucination-exploring-the-frontiers-of-creativity-and-concern-5f9h</link>
      <guid>https://dev.to/swapanroy/ai-hallucination-exploring-the-frontiers-of-creativity-and-concern-5f9h</guid>
      <description>&lt;p&gt;&lt;strong&gt;Introduction&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Artificial Intelligence (AI) has made inroads in various domains, revolutionizing the way we interact and use technology. One intriguing facet of AI is its ability to generate content that stretches the boundaries of creativity, a phenomenon often referred to as "AI hallucination." In this article, we delve into the concept of AI hallucination, exploring its applications and implications in healthcare and other domains.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Definition : AI Hallucination&lt;/strong&gt;&lt;br&gt;
An AI hallucination is when a generative AI model generates inaccurate information as if it were correct.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;AI Hallucination: A Brief Overview&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;AI hallucination is the ability of AI systems to produce content that is imaginative, creative, and sometimes indistinguishable from any human-generated content. It involves AI generating text, images, audio, and videos that appear real and authentic but are entirely fabricated.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;AI Hallucination in Healthcare&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;In healthcare, AI hallucination has shown immense promise and posed ethical challenges. Here are some key areas where it has made an impact:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Medical Imaging:&lt;/strong&gt; AI-powered systems can generate enhanced medical images, highlighting anomalies or areas of interest. For instance, AI algorithms can create detailed and colorful renditions of MRI scans, which could aid in diagnosis and treatment.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Drug Discovery:&lt;/strong&gt; AI models can generate new molecules with potential therapeutic properties. By simulating chemical structures and their interactions, AI could accelerate drug discovery by suggesting novel compounds for further study.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Patient Data Generation:&lt;/strong&gt; AI can generate synthetic patient data for research and testing purposes. While this aids in maintaining privacy, it raises concerns about the authenticity of data and its implications for research validity.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;AI Hallucination Beyond Healthcare&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;AI hallucination isn't limited to healthcare; it spans across various domains:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Art and Design:&lt;/strong&gt; AI-generated artwork, music compositions, and even poetry have gained recognition. Examples include the AI-generated "Portrait of Edmond de Belamy" and music composed by AI systems like OpenAI's MuseNet.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Content Creation:&lt;/strong&gt; AI-generated articles, stories, and social media posts are becoming increasingly prevalent. These can be used for automating content generation in marketing and journalism.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Entertainment:&lt;/strong&gt; Deepfake technology, a form of AI hallucination, has been used to create realistic-looking videos that place actors into scenes they were never part of, thus reshaping the entertainment industry.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;The flip side&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Dangers of Personal AI Provider&lt;/strong&gt;&lt;br&gt;
Unlike a human, doctor, who spends decades of formal studies to practice medicine, AI Provider, scans through the records of previously generated medical journals, articles, and books, understands patterns, and calls out remedies. If the remedies are taken as if without proper consultation with the provider the results could be devastating. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ethical Concerns&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;While AI hallucination offers exciting possibilities, it raises ethical concerns. Deepfakes can be used for misinformation or identity theft. In healthcare, synthetic data must be carefully regulated to prevent biases and ensure patient privacy.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;AI hallucination is a fascinating facet of AI, showcasing the machine's ability to mimic human creativity. In healthcare, it has the potential to revolutionize diagnostics and drug discovery. However, ethical considerations must guide its development and use. Beyond healthcare, AI hallucination is altering the landscape of art, entertainment, and content creation, underscoring both its potential and the need for responsible practices.&lt;/p&gt;

&lt;p&gt;As AI continues to evolve, understanding the implications of AI hallucination across diverse domains becomes increasingly important, balancing innovation with ethical responsibility.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>hallucination</category>
      <category>healthcare</category>
    </item>
    <item>
      <title>Writing a JIRA User Story with example</title>
      <dc:creator>Swapan</dc:creator>
      <pubDate>Tue, 06 Jun 2023 18:11:05 +0000</pubDate>
      <link>https://dev.to/swapanroy/writing-a-user-story-with-example-226n</link>
      <guid>https://dev.to/swapanroy/writing-a-user-story-with-example-226n</guid>
      <description>&lt;p&gt;&lt;strong&gt;We will use this problem statement:&lt;/strong&gt;&lt;br&gt;
Write business and technical tasks for a web portal and mobie application for &lt;em&gt;"Living Will"&lt;/em&gt; for the state of Georgia, USA with using blockchain and we follow JIRA pattern of writing a story.&lt;/p&gt;

&lt;p&gt;We will use Gherkin to write user story, in general we write only business purpose story, but it's good to write or add enabler (Technical task) to meet business needs.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Assumption&lt;/strong&gt;&lt;br&gt;
Portal and app exists&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Business User Story&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Title:&lt;/strong&gt; Create Living Will Document&lt;br&gt;
&lt;strong&gt;Description:&lt;/strong&gt; As a user in the state of Georgia, I want to create a Living Will document through the web portal or mobile application, so that I can legally specify my preferences in the event that I am unable to communicate my wishes.&lt;br&gt;
&lt;strong&gt;Acceptance Criteria:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Given I am a registered user in Georgia
When I access the web portal or mobile application
Then I should be able to initiate the creation of a Living Will document
And I should be guided through a series of questions to specify my preferences
And I should be able to save and submit the completed Living Will document
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Technical Task:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Title:&lt;/strong&gt; Implement Blockchain Integration for Living Will Documents&lt;br&gt;
&lt;strong&gt;Description:&lt;/strong&gt; As a developer, I need to integrate blockchain technology into the web portal and mobile application for the Living Will service in Georgia, so that the documents can be securely stored, tamper-proof, and accessible by authorized parties.&lt;br&gt;
&lt;strong&gt;Acceptance Criteria:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Given a Living Will document is created by a user
When the document is submitted
Then the document data should be encrypted and stored on the blockchain
And the blockchain transaction ID should be associated with the document for verification
And the document should only be accessible to authorized parties with proper authentication and authorization
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Non-Functional Requirements:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;em&gt;Security&lt;/em&gt;: The web portal and mobile application should employ secure authentication and data encryption mechanisms to protect user information and Living Will documents.&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Performance&lt;/em&gt;: The system should be able to handle a large number of concurrent users without significant degradation in response time or system availability.&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Scalability&lt;/em&gt;: The architecture should be designed to handle future growth and increased user load by scaling horizontally or vertically as needed.&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Reliability&lt;/em&gt;: The system should have high availability and minimal downtime to ensure that users can access and manage their Living Will documents at any time.&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Compliance&lt;/em&gt;: The solution should adhere to the relevant state laws and regulations for Living Will documents in Georgia, including data privacy and consent requirements.&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Usability&lt;/em&gt;: The web portal and mobile application should have an intuitive user interface, providing clear instructions and guidance to users throughout the process of creating and managing Living Will documents.&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Accessibility&lt;/em&gt;: The system should be accessible to users with disabilities, conforming to accessibility guidelines and standards.&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Maintainability&lt;/em&gt;: The codebase should be modular, well-documented, and maintainable to facilitate future enhancements, bug fixes, and system updates.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Please feel free to reach out or comment. &lt;/p&gt;

</description>
      <category>userstory</category>
      <category>webdev</category>
      <category>agile</category>
      <category>jira</category>
    </item>
    <item>
      <title>Machine learning -Gradient Boosting Algorithms / Ensemble learning</title>
      <dc:creator>Swapan</dc:creator>
      <pubDate>Tue, 05 Jul 2022 17:40:43 +0000</pubDate>
      <link>https://dev.to/swapanroy/boosting-algorithms-1jmb</link>
      <guid>https://dev.to/swapanroy/boosting-algorithms-1jmb</guid>
      <description>&lt;h3&gt;
  
  
  This post cover's Machine learning algorithms with examples.
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Topics covered :&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. What is Boosting ?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. What is a Boosting Algorithms ?&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Examples of Boosting Algorithm&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;For end to end implementation refer to : &lt;a href="https://www.kaggle.com/code/swapanroy/predicting-length-of-stay-w-boosting-algorithms/notebook?scriptVersionId=100100872"&gt;HealthCare Predicting Length of stay with boosting algorithms&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Git Hub to pull the code : &lt;a href="https://github.com/swapanroy/Predicting-Length-of-Stay-w-Boosting-algorithms"&gt;Github/swapanroy&lt;/a&gt; &lt;/p&gt;

&lt;h4&gt;
  
  
  1. What is Boosting ?
&lt;/h4&gt;

&lt;p&gt;Boosting ("&lt;strong&gt;&lt;em&gt;to Boost&lt;/em&gt;&lt;/strong&gt;", in english meaning &lt;em&gt;help or encourage to increase or improve&lt;/em&gt;.) is a method used in machine learning to improve machine models' predictive accuracy and performance.&lt;/p&gt;

&lt;h4&gt;
  
  
  2. What is a Boosting Algorithms ?
&lt;/h4&gt;

&lt;p&gt;Ensemble learning or boosting has become one of the most promising approaches in machine learning domain. The ensemble method is based on the principle of generating multiple predictions and average voting among individual classifiers.&lt;/p&gt;

&lt;p&gt;Two implementation of Boosting Algorithm&lt;/p&gt;

&lt;h4&gt;
  
  
  AdaBoost
&lt;/h4&gt;

&lt;p&gt;&lt;em&gt;AdaBoost or Adaptive Boosting&lt;/em&gt; is the Boosting ensemble model,a statistical classification meta-algorithm refers to a particular method of training a boosted classifier. The method automatically adjusts its parameters to the data based on the actual performance in the current iteration.&lt;/p&gt;

&lt;h4&gt;
  
  
  CATBoost
&lt;/h4&gt;

&lt;p&gt;&lt;em&gt;CATBoost&lt;/em&gt; - Provides a gradient boosting framework which among other features attempts to solve for Categorical features using a permutation driven alternative compared to the classical algorithm. Catboost calculates the residual of each data point and uses the model trained with other data. In this way, each data point gets different residual data. These data are evaluated as targets, and the training times of the general model are as many as the number of iterations. Since many models will be implemented by definition, this computational complexity seems very expensive and takes too much time.&lt;/p&gt;

&lt;h5&gt;
  
  
  Python implemenation will use Sklearn and Catboost library
&lt;/h5&gt;

&lt;h4&gt;
  
  
  Data Source: &lt;a href="https://www.kaggle.com/code/swapanroy/predicting-length-of-stay-w-boosting-algorithms/data?scriptVersionId=100100872"&gt;Kaggle- HealthCare data to predict length of stay&lt;/a&gt;
&lt;/h4&gt;

&lt;h4&gt;
  
  
  Key Libraries
&lt;/h4&gt;

&lt;h5&gt;
  
  
  Libraries needed for data Analysis
&lt;/h5&gt;

&lt;p&gt;&lt;code&gt;import pandas as pd&lt;br&gt;
import numpy as np&lt;/code&gt;&lt;/p&gt;
&lt;h5&gt;
  
  
  Libraries needed for models and visualization
&lt;/h5&gt;

&lt;p&gt;&lt;code&gt;import matplotlib.pyplot as plt&lt;br&gt;
import seaborn as sns&lt;/code&gt;&lt;/p&gt;
&lt;h5&gt;
  
  
  Libraries needed for pre-processing
&lt;/h5&gt;

&lt;p&gt;&lt;code&gt;from sklearn.preprocessing import LabelEncoder&lt;br&gt;
from sklearn.preprocessing import StandardScaler&lt;/code&gt;&lt;/p&gt;
&lt;h5&gt;
  
  
  Libraries needed for models
&lt;/h5&gt;

&lt;p&gt;&lt;code&gt;from sklearn.ensemble import AdaBoostClassifier&lt;br&gt;
from catboost import CatBoostClassifier, Pool&lt;br&gt;
from catboost.utils import get_confusion_matrix&lt;/code&gt;&lt;/p&gt;
&lt;h5&gt;
  
  
  Libraries needed for validation
&lt;/h5&gt;

&lt;p&gt;&lt;code&gt;from sklearn.metrics import confusion_matrix, classification_report, make_scorer, accuracy_score&lt;br&gt;
from sklearn.model_selection import cross_val_score, train_test_split&lt;/code&gt;`&lt;/p&gt;
&lt;h4&gt;
  
  
  Read data and pre-process data for models
&lt;/h4&gt;

&lt;p&gt;`df_train=pd.read_csv('../input/av-healthcare-analytics-ii/healthcare/train_data.csv',sep=',')&lt;/p&gt;

&lt;p&gt;'plt.figure(figsize=(20,5))&lt;br&gt;
x = sns.countplot(df_train['Stay'], order = df_train['Stay'].value_counts().index)&lt;br&gt;
for i in x.containers:&lt;br&gt;
 x.bar_label(i,)'&lt;/p&gt;
&lt;h4&gt;
  
  
  Merging Train and Test on multi dimention to pre-process data.
&lt;/h4&gt;

&lt;p&gt;&lt;code&gt;df_merge = [df_train, df_test]&lt;br&gt;
df_merge[0]&lt;/code&gt;&lt;/p&gt;
&lt;h4&gt;
  
  
  Binning
&lt;/h4&gt;

&lt;p&gt;&lt;code&gt;age_value = {'0-10': 0, '11-20': 1, '21-30': 2, '31-40': 3, '41-50': 4, '51-60': 5, '61-70': 6, '71-80': 7, '81-90': 8, '91-100': 9}&lt;br&gt;
stay_value = {'0-10': 0, '11-20': 1, '21-30': 2, '31-40': 3, '41-50': 4, '51-60': 5, '61-70': 6, '71-80': 7, '81-90': 8, '91-100': 9, 'More than 100 Days': 10}&lt;/code&gt;&lt;/p&gt;
&lt;h4&gt;
  
  
  Replacing Age and Stay with Int values
&lt;/h4&gt;

&lt;p&gt;&lt;code&gt;df_merge[0]['Age'] = df_merge[0]['Age'].replace(age_value.keys(), age_value.values())&lt;br&gt;
df_merge[0]['Stay'] = df_merge[0]['Stay'].replace(stay_value.keys(), stay_value.values())&lt;br&gt;
df_merge[1]['Age'] = df_merge[1]['Age'].replace(age_value.keys(), age_value.values())&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxpkm4zf36a2tat1u1v97.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxpkm4zf36a2tat1u1v97.jpg" alt="Boosting Algorithms" width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;
  
  
  Applying Adaboost classifier
&lt;/h4&gt;

&lt;p&gt;An AdaBoost classifier is a meta-estimator that begins by fitting a classifier on the original dataset and then fits additional copies of the classifier on the same dataset but where the weights of error classified instances are adjusted.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;ada_classifier = AdaBoostClassifier(n_estimators=5)
ada_classifier.fit(X_train, y_train)
pred_ada = ada_classifier.predict(X_test)

# Cross-validation
scores = cross_val_score(ada_classifier,X_test,y_test, cv=12)
print('Accuracy score',round(scores.mean() * 100,2))
print('Confusion Matrix\n',confusion_matrix(y_test, pred_ada))
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;Accuracy score 33.8&lt;/code&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Applying CatBoost - Gradient Algorithm
&lt;/h4&gt;

&lt;p&gt;Gradient boosting algorithm works by building simpler (weak) prediction models sequentially where each model tries to predict the error left over by the previous model. It find uses in search, recommendation systems, personal assistant, self-driving cars, weather prediction.&lt;/p&gt;

&lt;h5&gt;
  
  
  Important Parameters of CatBoost Model
&lt;/h5&gt;

&lt;ol&gt;
&lt;li&gt;iterations - It accepts integer specifying the number of trees to train. The default is 1000.&lt;/li&gt;
&lt;li&gt;learning_rate - It specifies the learning rate during the training process. The default is 0.03.&lt;/li&gt;
&lt;li&gt;l2_leaf_reg - It accepts float specifying coefficient of L2 regularization of a loss function. The default value is 3.&lt;/li&gt;
&lt;li&gt;loss_function - It accepts string specifying metric used during training. The gradient boosting algorithm will try to minimize/maximize loss function output depending on the situation.&lt;/li&gt;
&lt;li&gt;eval_metric - It accepts string specifying metric to evaluate on evaluation set given during training. It has the same options as that of loss_function.
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;model = CatBoostClassifier(iterations=1000,
                           learning_rate=0.3,
                           depth=10,
                           l2_leaf_reg = 3,
                           random_strength =2,
                           loss_function='MultiClass',
                           eval_metric='MultiClass')
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h5&gt;
  
  
  fitting model and predicting accuracy
&lt;/h5&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;model.fit(X_train,
          y_train,
          eval_set=eval_dataset,
          verbose=True)

print(model.get_best_score())
cm = get_confusion_matrix(model, eval_dataset)
print(cm)
predict_accuracy_on_test_set = (cm[0,0] + cm[1,1])/(cm[0,0] + cm[1,1]+cm[1,0] + cm[0,1])
ax = sns.heatmap(cm, linewidth=1)
plt.show()
print("catboost Acc : ", predict_accuracy_on_test_set)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;Accuracy : 0.40188104509483735&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;References: &lt;br&gt;
&lt;a href="https://scikit-learn.org/stable/modules/generated/sklearn.ensemble.AdaBoostClassifier.html"&gt;https://scikit-learn.org/stable/modules/generated/sklearn.ensemble.AdaBoostClassifier.html&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/catboost/catboost"&gt;https://github.com/catboost/catboost&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Photo by &lt;a href="https://unsplash.com/@jentheodore"&gt;Jen Theodore&lt;/a&gt; on Unsplash&lt;/p&gt;

</description>
      <category>adaboost</category>
      <category>catboost</category>
      <category>python</category>
      <category>sklearn</category>
    </item>
    <item>
      <title>Installing Hyperledger Fabric on windows and Deploy /Start chain code</title>
      <dc:creator>Swapan</dc:creator>
      <pubDate>Wed, 15 Jun 2022 21:35:41 +0000</pubDate>
      <link>https://dev.to/swapanroy/installing-hyperledger-fabric-on-windows-and-deploying-and-starting-chain-code-1pig</link>
      <guid>https://dev.to/swapanroy/installing-hyperledger-fabric-on-windows-and-deploying-and-starting-chain-code-1pig</guid>
      <description>&lt;h1&gt;
  
  
  Windows Installation
&lt;/h1&gt;

&lt;p&gt;Below are the instructions to intall and run chain code on a windows machine. &lt;br&gt;
For this installation, you should be prepared for some obstacles as installation on windows is not simple. &lt;/p&gt;

&lt;h4&gt;
  
  
  Pre-reqs
&lt;/h4&gt;

&lt;p&gt;• Docker (&lt;a href="https://docs.docker.com/desktop/windows/install/" rel="noopener noreferrer"&gt;https://docs.docker.com/desktop/windows/install/&lt;/a&gt;)&lt;br&gt;
• cURL (&lt;a href="https://curl.se/download.html" rel="noopener noreferrer"&gt;https://curl.se/download.html&lt;/a&gt;)&lt;br&gt;
• Go (&lt;a href="https://go.dev/dl/" rel="noopener noreferrer"&gt;https://go.dev/dl/&lt;/a&gt;)&lt;br&gt;
• Node.js (&lt;a href="https://nodejs.org/en/download/" rel="noopener noreferrer"&gt;https://nodejs.org/en/download/&lt;/a&gt;)&lt;br&gt;
• Git (&lt;a href="https://git-scm.com" rel="noopener noreferrer"&gt;https://git-scm.com&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;Download, if needed and check on each pre-requisite item &lt;/p&gt;

&lt;h4&gt;
  
  
  Validatation for pre-reqs
&lt;/h4&gt;

&lt;p&gt;Run command prompt in admin mode (cmd) check all installations &lt;/p&gt;

&lt;p&gt;cURL Version&lt;br&gt;
  &lt;a href="https://media.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%2Fmb04f1kt0bcrqagyztas.GIF" class="article-body-image-wrapper"&gt;&lt;img src="https://media.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%2Fmb04f1kt0bcrqagyztas.GIF" alt="Check cUrl Version"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;docker version &lt;br&gt;
 &lt;a href="https://media.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%2Fmaiqlzec86ni05p6cotz.GIF" class="article-body-image-wrapper"&gt;&lt;img src="https://media.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%2Fmaiqlzec86ni05p6cotz.GIF" alt="docker version"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;git version &lt;br&gt;
&lt;a href="https://media.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%2F1w9l9mt62sf5rls0l17w.GIF" class="article-body-image-wrapper"&gt;&lt;img src="https://media.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%2F1w9l9mt62sf5rls0l17w.GIF" alt="git version"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;go version&lt;br&gt;
&lt;a href="https://media.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%2F8rfj0lpz9520ypowu15f.GIF" class="article-body-image-wrapper"&gt;&lt;img src="https://media.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%2F8rfj0lpz9520ypowu15f.GIF" alt="go version"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Node version&lt;br&gt;
&lt;a href="https://media.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%2Fqgf0p6tw0aiz50jqsj3n.GIF" class="article-body-image-wrapper"&gt;&lt;img src="https://media.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%2Fqgf0p6tw0aiz50jqsj3n.GIF" alt="Node version"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;npm version &lt;br&gt;
&lt;a href="https://media.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%2Fukfdze4pk5djlqzxp27g.GIF" class="article-body-image-wrapper"&gt;&lt;img src="https://media.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%2Fukfdze4pk5djlqzxp27g.GIF" alt="npm version"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Let's proceed to install other items
&lt;/h3&gt;

&lt;p&gt;WSL (&lt;a href="https://docs.microsoft.com/en-us/windows/wsl/install" rel="noopener noreferrer"&gt;https://docs.microsoft.com/en-us/windows/wsl/install&lt;/a&gt;)&lt;br&gt;
Use this command to install Windows Subsystem for Linux (WSL) -  &lt;code&gt;wsl –install&lt;/code&gt;&lt;br&gt;
To update : WSL2 Linux kernel update package for x64 machines (&lt;a href="https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi" rel="noopener noreferrer"&gt;https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;Use this command to validate installation &lt;code&gt;wsl -l -v&lt;/code&gt;&lt;br&gt;
Check Windows Feature if it has been installed, do check the &lt;strong&gt;Virtual Machine Platform&lt;/strong&gt;, if not done set.&lt;/p&gt;

&lt;h5&gt;
  
  
  WSL and Virtual Machine Platform
&lt;/h5&gt;

&lt;p&gt;&lt;a href="https://media.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%2F2xgydfxhsg2i4320uukp.GIF" class="article-body-image-wrapper"&gt;&lt;img src="https://media.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%2F2xgydfxhsg2i4320uukp.GIF" alt="WSL"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Once done, log in Microsoft app store and download Ubantu and Windows Terminal &lt;br&gt;
Run Windows Terminal under Admin mode &lt;br&gt;
Below screen shows, how it looks after installation. &lt;br&gt;
Note: Open Windows Terminal in Admin mode&lt;br&gt;
&lt;a href="https://media.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%2Fz9srbj0gfqa2fax6e8yd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.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%2Fz9srbj0gfqa2fax6e8yd.png" alt="Ubantu and Windows Terminal installation"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Once Ubantu starts, it will ask for username and password. &lt;br&gt;
Ubantu is picky with user names.. just like Unix, it needs to start with lower case (&lt;a href="https://www.oreilly.com/library/view/practical-unix-and/0596003234/ch04s01.html" rel="noopener noreferrer"&gt;https://www.oreilly.com/library/view/practical-unix-and/0596003234/ch04s01.html&lt;/a&gt;) &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.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%2F8b85b2smh2viypnbvxd3.GIF" class="article-body-image-wrapper"&gt;&lt;img src="https://media.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%2F8b85b2smh2viypnbvxd3.GIF" alt="Ubantu"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.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%2F7rn0r75twb6306gqtkih.GIF" class="article-body-image-wrapper"&gt;&lt;img src="https://media.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%2F7rn0r75twb6306gqtkih.GIF" alt="User name and password"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Docker desktop app start
&lt;/h4&gt;

&lt;p&gt;Run docker under admin mode and under setting-&amp;gt; resources see that Ubantu is selected (First time users, will have to create docker hub ID)&lt;br&gt;
Make sure&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; WSL 2 is checked &lt;/li&gt;
&lt;li&gt; Ubantu is being referenced&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media.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%2Foa1v8xkvvo0e7pbxih60.GIF" class="article-body-image-wrapper"&gt;&lt;img src="https://media.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%2Foa1v8xkvvo0e7pbxih60.GIF" alt="Docker WSL check"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Enable Ubantu on docker container&lt;br&gt;
&lt;a href="https://media.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%2Fzmcrilm93bt90930hl0f.GIF" class="article-body-image-wrapper"&gt;&lt;img src="https://media.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%2Fzmcrilm93bt90930hl0f.GIF" alt="Enable Ubantu"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Installing Hyperledger Fabric and Binaries
&lt;/h4&gt;

&lt;p&gt;• Clone the hyperledger/fabric-samples repository.&lt;br&gt;
I’m installing Hyperledger fabric version &lt;strong&gt;2.2.0&lt;/strong&gt; &lt;br&gt;
&lt;code&gt;curl -sSL http://bit.ly/2ysbOFE | bash -s -- &amp;lt;fabric_version&amp;gt; &amp;lt;fabric-ca_version&amp;gt; &amp;lt;thirdparty_version&amp;gt;&lt;/code&gt;&lt;br&gt;
&lt;code&gt;curl -sSL http://bit.ly/2ysbOFE | bash -s -- 2.2.0 1.4.9 0.4.22&lt;/code&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Read this doc before you move ahead (&lt;a href="https://hyperledger-fabric.readthedocs.io/en/release-1.4/developapps/scenario.html" rel="noopener noreferrer"&gt;https://hyperledger-fabric.readthedocs.io/en/release-1.4/developapps/scenario.html&lt;/a&gt;)
&lt;/h4&gt;

&lt;p&gt;Read this doc to aid in testing (&lt;a href="https://hyperledger-fabric.readthedocs.io/en/release-2.2/test_network.html" rel="noopener noreferrer"&gt;https://hyperledger-fabric.readthedocs.io/en/release-2.2/test_network.html&lt;/a&gt;)&lt;br&gt;
&lt;code&gt;cd fabric-samples/test-network&lt;/code&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Step by step testing and running chain code
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media.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%2Fh5z95id3p2v3evnxxtio.GIF" class="article-body-image-wrapper"&gt;&lt;img src="https://media.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%2Fh5z95id3p2v3evnxxtio.GIF" alt="hyperledger fabric sample"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Probe the folder &lt;code&gt;ls&lt;/code&gt; &lt;br&gt;
&lt;a href="https://media.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%2Fkfx958v2b4dmdelkcwl9.GIF" class="article-body-image-wrapper"&gt;&lt;img src="https://media.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%2Fkfx958v2b4dmdelkcwl9.GIF" alt="Hyperledger Fabric -2"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Start the network with script file &lt;code&gt;./network.sh up&lt;/code&gt;&lt;br&gt;
Note: run &lt;code&gt;./network.sh down&lt;/code&gt; to take anything running down on docker. &lt;br&gt;
check existing processes running by using : &lt;code&gt;docker ps -a&lt;/code&gt;&lt;br&gt;
&lt;a href="https://media.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%2Fv3hikilrcn6bpfs7xyar.GIF" class="article-body-image-wrapper"&gt;&lt;img src="https://media.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%2Fv3hikilrcn6bpfs7xyar.GIF" alt="Hyperledger Fabric -3"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Create mychannel &lt;code&gt;./network.sh up createChannel&lt;/code&gt;&lt;br&gt;
&lt;a href="https://media.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%2Flgzcg578g2ay4dbqs9dm.GIF" class="article-body-image-wrapper"&gt;&lt;img src="https://media.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%2Flgzcg578g2ay4dbqs9dm.GIF" alt="Hyperledger Fabric -4"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Deploying the chain code &lt;code&gt;./network.sh deployCC -ccn basic -ccp ../asset-transfer-basic/chaincode-javascript -ccl javascript&lt;br&gt;
&lt;/code&gt;&lt;br&gt;
&lt;a href="https://media.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%2Fbmkrmevw9jf42cgupol2.GIF" class="article-body-image-wrapper"&gt;&lt;img src="https://media.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%2Fbmkrmevw9jf42cgupol2.GIF" alt="Hyperledger Fabric -5"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.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%2Ftxo16lt0q5mt1tapeudx.GIF" class="article-body-image-wrapper"&gt;&lt;img src="https://media.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%2Ftxo16lt0q5mt1tapeudx.GIF" alt="Hyperledger Fabric -6"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Docker container showing images created&lt;br&gt;
&lt;a href="https://media.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%2Fqmytnszwxiw1yis627uc.GIF" class="article-body-image-wrapper"&gt;&lt;img src="https://media.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%2Fqmytnszwxiw1yis627uc.GIF" alt="Hyperledger Fabric -7"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Note: in the end run &lt;code&gt;./network.sh down&lt;/code&gt; to stop process. Check docker's to confirm all processes are stopped..&lt;/p&gt;

</description>
      <category>blockchain</category>
      <category>hyperledgerfabric</category>
      <category>installation</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Translate to Braille</title>
      <dc:creator>Swapan</dc:creator>
      <pubDate>Thu, 16 Sep 2021 20:29:12 +0000</pubDate>
      <link>https://dev.to/swapanroy/translate-to-braille-1o79</link>
      <guid>https://dev.to/swapanroy/translate-to-braille-1o79</guid>
      <description>&lt;p&gt;In 2015, there were an &lt;strong&gt;estimated 253 million&lt;/strong&gt; people with visual impairment worldwide. Of these, &lt;strong&gt;36 million were blind&lt;/strong&gt; and a further 217 million had moderate to severe visual impairment (MSVI). Many blind people use Braille for reading purposes. &lt;br&gt;
Braille is the world's &lt;strong&gt;most popular tactile reading and writing system&lt;/strong&gt;.&lt;br&gt;
In the below program, I have shown a way to convert English to Braille, another program, I’m working on is to convert image to speech.&lt;br&gt;
&lt;strong&gt;&lt;em&gt;Program takes into account alphabets, numbers, puntuations and symbols.&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Created using Python 3.9 (Latest version) -download &lt;a href="https://www.python.org/downloads/windows/" rel="noopener noreferrer"&gt;here&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;
  
  
  Defining translation values based on Grade 1 Braille
&lt;/h3&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;   alphaBraille = ['⠁', '⠃', '⠉', '⠙', '⠑', '⠋', '⠛', 
   '⠓', '⠊', '⠚', '⠅', '⠇','⠍', '⠝', '⠕', '⠏', '⠟', '⠗', 
   '⠎', '⠞', '⠥', '⠧', '⠺', '⠭', '⠽', '⠵', ' ']
   numBraille = ['⠼⠁', '⠼⠃', '⠼⠉', '⠼⠙', '⠼⠑', '⠼⠋', 
   '⠼⠛', '⠼⠓', '⠼⠊', '⠼⠚']
   alphabet = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 
    'j', 'k', 'l', 'm','n', 'o', 'p', 'q', 'r', 's', 't', 
    'u', 'v', 'w', 'x', 'y', 'z', ' ']
   nums = ['1', '2', '3', '4', '5', '6', '7', '8', '9','0']
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;h3&gt;
  
  
  Logic
&lt;/h3&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;    if len(translateToBraille) &amp;gt; 0 : 
    for n in translateToBraille.lower():
        if n in alphabet:
            inputString += alphaBraille[alphabet.index(n)]
        elif n in nums:
            inputString += numBraille[nums.index(n)]
        elif n in puntuation:
            inputString += puntuationBraille[puntuation.index(n)]
        elif n in character:
            inputString += characterBraille[character.index(n)]
    print(inputString)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;h1&gt;
  
  
  To test our cases
&lt;/h1&gt;

&lt;p&gt;translateToBraille = 'This is good day &amp;amp; Tony what are you planning to do @ the mall ?'&lt;/p&gt;
&lt;h1&gt;
  
  
  Output
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://media.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%2Ffeb32ggm6keogym91wn1.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.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%2Ffeb32ggm6keogym91wn1.jpg" alt="output in braille shown in Visual Studio"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Code in &lt;a href="https://github.com/swapanroy" rel="noopener noreferrer"&gt;Github&lt;/a&gt;&lt;br&gt;
Reach me on my  &lt;a href="//www.twitter.com/royswapan"&gt;Twitter&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Note: Thanks to Paul for this photo via @unsplash 🎁 &lt;/p&gt;

&lt;p&gt;Other item to look into: &lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag__link"&gt;
  &lt;a href="/swapanroy" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F549314%2F7d704ce2-e9a1-49d7-b667-bc7da8ef1f3b.JPG" alt="swapanroy"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/swapanroy/currency-converter-with-python-9ef" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;Currency Converter with Python&lt;/h2&gt;
      &lt;h3&gt;Swapan ・ May 3 '21&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#python&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#ui&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#devjournal&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#forex&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;



&lt;div class="ltag__link"&gt;
  &lt;a href="/swapanroy" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F549314%2F7d704ce2-e9a1-49d7-b667-bc7da8ef1f3b.JPG" alt="swapanroy"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="/swapanroy/dictionary-using-api-calls-in-python-with-audio-pronunciation-3hjp" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;GUI Dictionary using api calls in python (with pronunciation)&lt;/h2&gt;
      &lt;h3&gt;Swapan ・ May 8 '21&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#python&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#dictonary&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#watercooler&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#vscode&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


</description>
      <category>python</category>
      <category>braille</category>
      <category>vscode</category>
    </item>
  </channel>
</rss>
