<?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: Ketan Patil</title>
    <description>The latest articles on DEV Community by Ketan Patil (@ketan_patil).</description>
    <link>https://dev.to/ketan_patil</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%2F467281%2F53b6a143-f199-4ef1-81ed-4ee5ead2093a.png</url>
      <title>DEV Community: Ketan Patil</title>
      <link>https://dev.to/ketan_patil</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/ketan_patil"/>
    <language>en</language>
    <item>
      <title>🌟 My Journey to Google as a Software Engineer (SWE-I)</title>
      <dc:creator>Ketan Patil</dc:creator>
      <pubDate>Thu, 26 Jun 2025 06:21:59 +0000</pubDate>
      <link>https://dev.to/ketan_patil/my-journey-to-google-as-a-software-engineer-swe-i-2d68</link>
      <guid>https://dev.to/ketan_patil/my-journey-to-google-as-a-software-engineer-swe-i-2d68</guid>
      <description>&lt;p&gt;It's been a rollercoaster of emotions, late-night coding sessions, interviews, and a lot of hope — but finally, I made it to Google as a Software Engineer-I. Here's how my journey unfolded.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;🛤️ The Application&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Like many aspiring Googlers, my journey started with a simple application on the Google Careers page. I found an open role that matched my experience and aspirations, and submitted my profile.&lt;/p&gt;

&lt;p&gt;📅 03-Apr-2025, 10:46 AM&lt;br&gt;
I received a call from a recruiter, who asked to schedule a quick 15-minute screening discussion. The call was scheduled for the same day from 2:00 to 2:15 PM.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;⚙️ Round 1: Screening (Rapid Fire)&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;💬 The first round was intense — a rapid-fire session with short questions covering:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Data Structures &amp;amp; Algorithms (DSA).&lt;/li&gt;
&lt;li&gt;Computer Networks.&lt;/li&gt;
&lt;li&gt;Web Technologies.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It tested not just depth but also the breadth of my understanding. It was fast-paced, but I kept my cool.&lt;/p&gt;

&lt;p&gt;📅 04-Apr-2025, 11:56 AM&lt;br&gt;
I got an update — I had cleared the screening round!&lt;/p&gt;

&lt;p&gt;The recruiter invited me for a 15-minute prep call the same day (3:15–3:30 PM) to explain the next steps.&lt;/p&gt;

&lt;p&gt;During this call:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;He gave an overview of the interview structure.&lt;/li&gt;
&lt;li&gt;Shared documents for preparation (though advised not to rely solely on them).&lt;/li&gt;
&lt;li&gt;Provided tips on what interviewers generally look for.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That conversation really helped me prepare strategically.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;💻 Round 2: Technical Interview&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;📅 10-Apr-2025, 2:15–3:00 PM&lt;/p&gt;

&lt;p&gt;This was a DSA-focused coding interview. I was asked a problem and had to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Discuss the optimal approach.&lt;/li&gt;
&lt;li&gt;Explain corner cases.&lt;/li&gt;
&lt;li&gt;Analyze time and space complexity.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I coded confidently and interacted well with the interviewer. He seemed impressed and nodded positively throughout.&lt;/p&gt;

&lt;p&gt;📌 Verdict: Strong Hire&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;🧠 Round 3: Technical (Dynamic Programming)&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;📅 29-Apr-2025, 2:30–3:15 PM&lt;/p&gt;

&lt;p&gt;This round focused on a dynamic programming problem.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;I approached the problem optimally.&lt;/li&gt;
&lt;li&gt;Explained the logic clearly and walked through a dry run.&lt;/li&gt;
&lt;li&gt;Due to time constraints, I couldn’t finish writing a bug-free version of the code.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;📌 Verdict: Hire&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;🏗️ Round 4: System Design&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;📅 06-May-2025, 2:00–2:45 PM&lt;/p&gt;

&lt;p&gt;The problem: Design an automated parking lot system.&lt;/p&gt;

&lt;p&gt;I structured the solution methodically:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Covered the key components.&lt;/li&gt;
&lt;li&gt;Discussed scalability and concurrency.&lt;/li&gt;
&lt;li&gt;Focused on real-world implementation aspects.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;📌 Verdict: Hire&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;💬 Round 5: Googliness Interview&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;📅 05-Jun-2025, 9:00–9:45 AM&lt;/p&gt;

&lt;p&gt;This round was delayed a bit due to scheduling issues but was one of the most interesting.&lt;/p&gt;

&lt;p&gt;This behavioral and culture-fit round tested:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Leadership traits.&lt;/li&gt;
&lt;li&gt;Collaboration mindset.&lt;/li&gt;
&lt;li&gt;Handling ambiguity and difficult situations.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;📌 Verdict: Hire&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;📞 The Call — and the Twist&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;📅 06-Jun-2025, 10:13 AM&lt;br&gt;
The recruiter called to inform me that all rounds went well. He asked:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;My location preference (Hyderabad vs. Gurugram).&lt;/li&gt;
&lt;li&gt;My notice period.&lt;/li&gt;
&lt;li&gt;Expected salary.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;He said he would discuss everything with the hiring manager and share the offer in 4–5 days.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;😞 The Setback&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;📅 13-Jun-2025, 11:00 AM&lt;br&gt;
Since I hadn’t heard back, I called the recruiter.&lt;/p&gt;

&lt;p&gt;The news hit me hard:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The hiring committee decided to put my application on hold.&lt;/li&gt;
&lt;li&gt;They liked my profile but chose another candidate who could join sooner.&lt;/li&gt;
&lt;li&gt;There was still a chance if a similar role opened up, but it wasn’t guaranteed.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I was heartbroken. After coming so far, it felt like I was just inches away — and then back to square one.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;🌈 The Comeback&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;📅 24-Jun-2025, 10:00 AM&lt;br&gt;
Out of the blue — the recruiter called again!&lt;/p&gt;

&lt;p&gt;“There’s a similar opening in a different team, and we’d like to go ahead with you,” he said.&lt;/p&gt;

&lt;p&gt;The same day, I received the offer letter.&lt;/p&gt;

&lt;p&gt;💥 I accepted it. And just like that — I became a Googler!&lt;/p&gt;




&lt;p&gt;🎉 Final Thoughts&lt;/p&gt;

&lt;p&gt;Getting into Google wasn't just about technical knowledge. It was about perseverance, preparation, and staying composed — even when things don’t go your way.&lt;/p&gt;

&lt;p&gt;To all those aspiring for similar roles: Don’t give up.&lt;br&gt;
Your story might also take a detour, but it’ll be worth it in the end.&lt;/p&gt;

&lt;p&gt;Hureeeyyyyy! 🎊&lt;br&gt;
See you on the other side of the Googleplex. 💻🚀&lt;/p&gt;




</description>
      <category>google</category>
    </item>
    <item>
      <title>Cyber Security Tools</title>
      <dc:creator>Ketan Patil</dc:creator>
      <pubDate>Sat, 11 Sep 2021 13:21:14 +0000</pubDate>
      <link>https://dev.to/ketan_patil/cyber-security-tools-4d17</link>
      <guid>https://dev.to/ketan_patil/cyber-security-tools-4d17</guid>
      <description>&lt;p&gt;It is very important to protect systems againts various cyber attacks. There are number of cyber attacks happening on the internet everyday. It is essential for every organization to keep IT environment secure, for that variouse important cyber security tools are used to ensure the security of orgnaization. Out of which 20 most commonly used tools are as follow:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. &lt;a href="https://www.wireshark.org/"&gt;Wireshark&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;Wireshark is a open source software which is use to monitor network traffic in real-time. It efficiently captures data packets and tries to display that packet data as detailed as possible. &lt;br&gt;
&lt;strong&gt;Advantages:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Free software&lt;/li&gt;
&lt;li&gt;Available for multiple platforms – Windows &amp;amp; UNIX&lt;/li&gt;
&lt;li&gt;Can see detailed information about packets within a network&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  2. &lt;a href="https://nmap.org/"&gt;Nmap&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;Nmap is open source free tool which IP packets to determine what hosts are available on the network, Services that are enabled, Operating systems and version of the hosts and many other aspects of network. &lt;br&gt;
&lt;strong&gt;Advantages:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Free and open source&lt;/li&gt;
&lt;li&gt;Powerful: capable to scan huge network &lt;/li&gt;
&lt;li&gt;Portable: Most operating systems are supported, including Linux, Microsoft Windows&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  3. &lt;a href="https://www.kali.org/"&gt;Kali Linux&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;It is the excellent penetration testing tool use by many organizations. This contains various security tools used for security auditing. Some of these tools are executable while some are command line based. &lt;br&gt;
&lt;strong&gt;Advantages:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Advanced Penetration Testing tools&lt;/li&gt;
&lt;li&gt;Open sourced&lt;/li&gt;
&lt;li&gt;provide more security &amp;amp; Stability&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  4. &lt;a href="https://www.openwall.com/john/"&gt;John the Ripper&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;This tool is used for testing password strength. This tool can quickly look for complex ciphers, encrypted logins, hash-type passwords and identify weak passwords. &lt;a href="https://www.varonis.com/blog/john-the-ripper/"&gt;Download and setup guide&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;Advantages:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Automates hash generation&lt;/li&gt;
&lt;li&gt;Makes it easier to run brute-force &lt;/li&gt;
&lt;li&gt;Automates work with sessions&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  5. &lt;a href="https://github.com/XCHADXFAQ77X/XERXES"&gt;Xerxes&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;Xerxes is the most powerful DOS tool.It provides the capacity to launch multiple independent attacks against several target sites without necessarily requiring a botnet.&lt;br&gt;
&lt;strong&gt;Advantages:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;TLS Support&lt;/li&gt;
&lt;li&gt;Multiprocessing support&lt;/li&gt;
&lt;li&gt;Multiple Attack vectors&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  6. &lt;a href="https://keepass.info/"&gt;KeePass&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;KeePass is a free open source password manager, which helps you to manage your passwords in a secure way. You can store all your passwords in one database, which is locked with a master key. So you only have to remember one single master key to unlock the whole database. Database files are encrypted using the best and most secure encryption algorithms like AES-256.&lt;br&gt;
&lt;strong&gt;Advantages:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Your information is protected by a very high level of encryption.&lt;/li&gt;
&lt;li&gt;You only have to remember one master password.&lt;/li&gt;
&lt;li&gt;You can use this single password to unlock a database that contains all your stored passwords.&lt;/li&gt;
&lt;li&gt;You can organize passwords into groups.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  7. &lt;a href="https://www.vipre.com/"&gt;VIPRE&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;VIPRE is one of the most widely used cyber security tools used to protect computers from malicious attacks, malware, and spam messages with no hassle. It helps to stay safe against new cyber threats and crimes.&lt;br&gt;
&lt;strong&gt;Advantages:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;It is quite effective against all kinds of viruses and provides 360-degree protection.&lt;/li&gt;
&lt;li&gt;Its scanning action is quite fast and less time taking.&lt;/li&gt;
&lt;li&gt;It has the ability to scan emails too, from viruses.&lt;/li&gt;
&lt;li&gt;It is reliable, easy-to-use, and provides excellent protection.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  8. &lt;a href="https://www.metasploit.com/"&gt;Metasploit&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;It is a Penetration testing software.It discovering vulnerabilities in the system. These penetration testing tools can examine the different security systems, including web-based apps, servers, networks, and so on.&lt;br&gt;
&lt;strong&gt;Advantages:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Open source.&lt;/li&gt;
&lt;li&gt;Supports large networks.&lt;/li&gt;
&lt;li&gt;GUI environment.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  9. &lt;a href="https://en.wikipedia.org/wiki/Cain_and_Abel_(software)"&gt;Cain and Abel&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;It is a password recovery tool for Microsoft Windows. It could recover many kinds of passwords using methods such as network packet sniffing, cracking various password hashes by using methods such as dictionary attacks, brute force.&lt;br&gt;
&lt;strong&gt;Advantages:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Have various supporting functionalities.&lt;/li&gt;
&lt;li&gt;Open source free software.&lt;/li&gt;
&lt;li&gt;Good start for all kinds of packet sniffing exercises&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  10. &lt;a href="https://www.tcpdump.org/"&gt;Tcpdump&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;It is an efficient packet sniffer security tools used to monitor and log TCP/IP traffic connected via a network. it is a command-based tool, it can efficiently define network security and the packet contents of system traffic. &lt;br&gt;
&lt;strong&gt;Advantages:&lt;/strong&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;It can save the captured packets in a file for an advanced analysis.&lt;/li&gt;
&lt;li&gt;Several configuration options are available&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  11. &lt;a href="https://cirt.net/Nikto2"&gt;Nikto&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;It is used to detect web vulnerabilities and take appropriate actions accordingly. The software contains a database that includes around 6400 different threats. Security professionals keep updating this database so that the users may easily identify the new vulnerabilities.&lt;br&gt;
&lt;strong&gt;Advantages:&lt;/strong&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Open source, Fast and portable.&lt;/li&gt;
&lt;li&gt;Easy to integrate in other penetration testing tools.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  12. &lt;a href="https://paros.soft112.com/"&gt;Paros Proxy&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;Paros Proxy is a Java-based security tool that contains a variety of other tools like vulnerability scanners, traffic recorder, web spider, etc. this tool helps to scan security tests for identifying web vulnerabilities and maintaining network activities in real-time.&lt;br&gt;
&lt;strong&gt;Advantages:&lt;/strong&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Web based light weight tool&lt;/li&gt;
&lt;li&gt;Protection And Security&lt;/li&gt;
&lt;li&gt;Anonymity When Using The Internet&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  13. &lt;a href="https://www.tenable.com/products/nessus"&gt;Nessus Professional&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;It is a vulnerability assessment tool created by Tenable Inc. that can search out various vulnerabilities in a network such as the denial of service vulnerabilities. It helps in finding vulnerabilities that might allow access to unauthorized users or the loss of sensitive information.&lt;br&gt;
&lt;strong&gt;Advantages:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;vulnerability scans on a regular basis and provides a full report.&lt;/li&gt;
&lt;li&gt;Understand the current threats and issues with current network devices.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  14. &lt;a href="https://www.aircrack-ng.org/"&gt;Aircrack-ng&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;Aircrack-ng is a tool that comes pre-installed in Kali Linux and is used for wifi network security and hacking. Aircrack is an all in one packet sniffer, WEP and WPA/WPA2 cracker, analyzing tool and a hash capturing tool. &lt;br&gt;
&lt;strong&gt;Advantages:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;To list all network interfaces.&lt;/li&gt;
&lt;li&gt;To Star a network interface at a specific channel.&lt;/li&gt;
&lt;li&gt;Free and open source&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  15. &lt;a href=""&gt;Tor&lt;/a&gt;
&lt;/h3&gt;

&lt;p&gt;Tor or &lt;strong&gt;The Onion Router&lt;/strong&gt; is a service created to allow people to anonymously browse the Internet. It is a decentralized system that allows users to connect through a network of relays rather than making a direct connection. The benefit of this method is that your IP address is hidden from the sites you visit by bouncing your connection from server to server at random.&lt;br&gt;
&lt;strong&gt;Advantages:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Free and portable&lt;/li&gt;
&lt;li&gt;Deep web access&lt;/li&gt;
&lt;li&gt;Hides information&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>cybersecurity</category>
      <category>security</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Data Mining</title>
      <dc:creator>Ketan Patil</dc:creator>
      <pubDate>Thu, 04 Feb 2021 08:36:28 +0000</pubDate>
      <link>https://dev.to/ketan_patil/data-mining-3cp0</link>
      <guid>https://dev.to/ketan_patil/data-mining-3cp0</guid>
      <description>&lt;h3&gt;
  
  
  What is data mining?
&lt;/h3&gt;

&lt;p&gt;Data mining is a process of extracting useful data from large set of raw data or process of discovering patterns in large data set. Data mining is also known as knowledge discovery in data. (KDD)&lt;/p&gt;

&lt;h3&gt;
  
  
  Use of data mining
&lt;/h3&gt;

&lt;p&gt;• Automatic summarization of data&lt;br&gt;
• Extracting useful information&lt;br&gt;
• Discovering patterns in raw data&lt;/p&gt;

&lt;h3&gt;
  
  
  Applications of data mining
&lt;/h3&gt;

&lt;p&gt;• Relational marketing&lt;br&gt;
• Fraud detection&lt;br&gt;
• Risk evaluation&lt;br&gt;
• Text mining&lt;br&gt;
• Web mining &lt;/p&gt;

&lt;h3&gt;
  
  
  Steps in data mining
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Data gathering and integration:&lt;/strong&gt; once the objectives and definition is identified, gathering of data begins as data comes from different sources therefore may requires integration. Data integration is a process of combining all gathered data into a single view.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Exploratory analysis:&lt;/strong&gt; This is a third phase of data mining process. In this process, integrated data is investigated and summarized in main characteristics. It helps to identify errors and understand pattern in data before any assumptions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Attribute Selection:&lt;/strong&gt; This is a process of selecting attributes for integrated and summarized data. Here attributes that are n little use are removed to cleanse dataset. Moreover, new required attributes are added which are obtained from original attributes.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--aMk2qHl---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/hdsp9xq3tlxkji59xtvk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--aMk2qHl---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/hdsp9xq3tlxkji59xtvk.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Model development and validation:&lt;/strong&gt; once high quality dataset with newly added attribute is obtained, models are developed. In this phase data is split into two subsets training and testing.&lt;br&gt;
Training set which is relatively small is use to identify learning model and testing set is use to access the accuracy model generated using training set.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Prediction and interpretation:&lt;/strong&gt; this is final process of data mining where developed models and implemented and used to achieve goals.&lt;/p&gt;

&lt;p&gt;Data mining process includes feedback cycles, represented by dotted arrow in figure. which indicates return in previous phase depending on outcome of subsequent phase.&lt;/p&gt;

&lt;h3&gt;
  
  
  Major issues in datamining:
&lt;/h3&gt;

&lt;p&gt;• Efficiency of data mining algorithm&lt;br&gt;
• Relational and complex types of data&lt;br&gt;
• Poor data quality&lt;br&gt;
• Presentation and visualization of mined data&lt;br&gt;
• Interactive mining of knowledge&lt;/p&gt;

&lt;h3&gt;
  
  
  Data mining tools:
&lt;/h3&gt;

&lt;p&gt;• &lt;a href="https://www.oracle.com/database/technologies/datawarehouse-bigdata/dataminer.html"&gt;Oracle data miner&lt;/a&gt;&lt;br&gt;
• &lt;a href="https://rapidminer.com/"&gt;Rapid miner&lt;/a&gt;&lt;br&gt;
• &lt;a href="https://www.ibm.com/in-en/products/spss-modeler"&gt;IBM SPSS modeller&lt;/a&gt;&lt;br&gt;
• &lt;a href="https://www.cs.waikato.ac.nz/ml/weka/"&gt;Weka&lt;/a&gt;&lt;br&gt;
• Many more...&lt;/p&gt;

&lt;p&gt;Hope you found it informative :)&lt;/p&gt;

</description>
      <category>datascience</category>
      <category>database</category>
      <category>beginners</category>
      <category>bigdata</category>
    </item>
    <item>
      <title>Chatbot for your website using Dialogflow</title>
      <dc:creator>Ketan Patil</dc:creator>
      <pubDate>Sun, 27 Dec 2020 09:17:08 +0000</pubDate>
      <link>https://dev.to/ketan_patil/chatbot-for-your-website-using-dialogflow-fc7</link>
      <guid>https://dev.to/ketan_patil/chatbot-for-your-website-using-dialogflow-fc7</guid>
      <description>&lt;p&gt;Chatbot is computer program which simulates human conversation through voice or text commands.&lt;br&gt;
Now days every website contains chatbot (virtual assistant) that can be available anytime for better user experience, improve customer services, user engagement and capturing interest.&lt;/p&gt;

&lt;p&gt;We are going to use Google’s dialogflow API for developing chatbot which include Following 5 simple steps.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; Create google project.&lt;/li&gt;
&lt;li&gt; Dialogflow setup and agent creation.&lt;/li&gt;
&lt;li&gt; Create intent (question answer tree) &lt;/li&gt;
&lt;li&gt; Integration&lt;/li&gt;
&lt;li&gt; Customization&lt;/li&gt;
&lt;/ol&gt;
&lt;h1&gt;
  
  
  1. Create google project.
&lt;/h1&gt;

&lt;p&gt;First you need to create google project. If you already have one then you can skip this step. You can create it from &lt;a href="https://console.developers.google.com/project" rel="noopener noreferrer"&gt;here&lt;/a&gt; as below.&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%2Fi%2F6ume4c349ikce18k3z2b.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%2Fi%2F6ume4c349ikce18k3z2b.png" alt="Alt Text" width="713" height="528"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h1&gt;
  
  
  2. Dialogflow setup and agent creation.
&lt;/h1&gt;

&lt;p&gt;Dialogflow is a natural language understanding platform that makes it easy to design and integrate chatbot. It is open source and free (Standard Edition).&lt;br&gt;
Go &lt;a href="https://dialogflow.cloud.google.com/" rel="noopener noreferrer"&gt;here&lt;/a&gt; and login using your gmail. After successful login you need to create agent for your chatbot using &lt;code&gt;create agent&lt;/code&gt; button.&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%2Fi%2Fuaye242mwxfhmmuzeeq5.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%2Fi%2Fuaye242mwxfhmmuzeeq5.png" alt="Alt Text" width="800" height="356"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;To create new agent, type name of agent, select language and time zone, select google project ID that we created in step 1.  And create your agent.&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%2Fi%2F62nctn6reuzyxgum35sl.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%2Fi%2F62nctn6reuzyxgum35sl.png" alt="Alt Text" width="800" height="319"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h1&gt;
  
  
  3. Create intent (Question answer tree)
&lt;/h1&gt;

&lt;p&gt;After agent creation, next step is to design question answer tree for chatbot. For that we need to create intent.&lt;br&gt;
When we create agent, two intent are created automatically which are &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Default Fallback Intent:&lt;/strong&gt; which is use when chatbot not able to recognise user question.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Default Welcome Intent:&lt;/strong&gt; to greet user when he starts conversation with chatbot.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Note that we can change chatbot response by editing these default intents.&lt;br&gt;
To create new intent click on &lt;code&gt;CREATE INTENT&lt;/code&gt; button,&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%2Fi%2Fd11ugyx4bqn9lv7h10ci.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%2Fi%2Fd11ugyx4bqn9lv7h10ci.png" alt="Alt Text" width="800" height="359"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Here I am creating a new intent named &lt;strong&gt;myself&lt;/strong&gt;, which will be use when user ask questions like &lt;br&gt;
&lt;em&gt;What is your name?&lt;/em&gt;&lt;br&gt;
&lt;em&gt;Tell me about yourself?&lt;/em&gt;&lt;br&gt;
&lt;em&gt;Who are you?&lt;/em&gt;&lt;br&gt;
In &lt;code&gt;training phrases&lt;/code&gt; field, you can add all possible questions that user can ask as below.&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%2Fi%2Focuh9zlogxkg7gtj79oz.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%2Fi%2Focuh9zlogxkg7gtj79oz.png" alt="Alt Text" width="716" height="499"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In the &lt;code&gt;responses&lt;/code&gt; field you can add response given by chatbot. We can add more than one reply to display verity of answers and to increase user interest. And click on &lt;code&gt;SAVE&lt;/code&gt; button to save the intent.&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%2Fi%2F4joavzew3pwqpsfvxl11.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%2Fi%2F4joavzew3pwqpsfvxl11.png" alt="Alt Text" width="724" height="588"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;There are other fields like &lt;code&gt;contexts&lt;/code&gt;, &lt;code&gt;events&lt;/code&gt;, &lt;code&gt;action and parameters&lt;/code&gt;, &lt;code&gt;fulfilment&lt;/code&gt;. I am keeping these fields empty. You can make use of them according to your requirement. &lt;br&gt;
We can create multiple intents to build complete question answer tree.&lt;br&gt;
We can make use of test console (on right side) to test our intent.&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%2Fi%2Fg098xl3cyzhyyxihlw69.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%2Fi%2Fg098xl3cyzhyyxihlw69.png" alt="Alt Text" width="800" height="326"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h1&gt;
  
  
  4. Integration
&lt;/h1&gt;

&lt;p&gt;After designing question answer tree using intents, now it is time to integrate chabot with website.&lt;br&gt;
Click on integrations option from vertical navigation bar. For web integration we are going to use &lt;strong&gt;Dialogflow Messenger&lt;/strong&gt;.&lt;br&gt;
To use Dialogflow Messenger, first enable it and get integration code by clicking on it.&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%2Fi%2F356wfzfwhllbuvd685ih.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%2Fi%2F356wfzfwhllbuvd685ih.png" alt="Alt Text" width="800" height="347"&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%2Fi%2Fe79l37gocpnd3ubb90tl.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%2Fi%2Fe79l37gocpnd3ubb90tl.png" alt="Alt Text" width="800" height="355"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Copy above code and paste it in your webpage html code. As below&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;html&amp;gt;
&amp;lt;head&amp;gt;
    &amp;lt;meta name="viewport" content="width-device-width, initial-scale=1"&amp;gt;
    &amp;lt;!-- dialogflow style bootsrap --&amp;gt;
    &amp;lt;script src="https://www.gstatic.com/dialogflow-console/fast/messenger/bootstrap.js?v=1"&amp;gt;&amp;lt;/script&amp;gt;
    &amp;lt;style&amp;gt;
        .text-center {
            margin: 0;
            padding:0;
            text-align: center;
            position: absolute;
            top: 50%;
            left:50%;
            transform: translateX(-50%) translateY(-50%);
        }           
    &amp;lt;/style&amp;gt;

&amp;lt;/head&amp;gt;
&amp;lt;body&amp;gt;
    &amp;lt;!-- center text in webpage --&amp;gt;
    &amp;lt;div class="text-center"&amp;gt;
        &amp;lt;h1&amp;gt;Chatbot Integration&amp;lt;/h1&amp;gt;
    &amp;lt;/div&amp;gt;
    &amp;lt;!-- This is the main code for chatbot  --&amp;gt;
    &amp;lt;!-- we can add more fields, refer: https://cloud.google.com/dialogflow/es/docs/integrations/dialogflow-messenger --&amp;gt;
    &amp;lt;df-messenger
        intent="WELCOME"
        chat-title="assistant"
        agent-id="15d0bf9a-1da9-487f-96a6-aa39f95ada63"
        language-code="en"
    &amp;gt;&amp;lt;/df-messenger&amp;gt;

&amp;lt;/body&amp;gt;

&amp;lt;/html&amp;gt;

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Before running make sure to Start a local HTTP server for that page. with a specific port. (I am using apache).&lt;br&gt;
Yup!!, you can see chat widget appear in right bottom corner, test it.&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%2Fi%2Feuupbkx0n87j323fnb9c.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%2Fi%2Feuupbkx0n87j323fnb9c.png" alt="Alt Text" width="732" height="431"&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%2Fi%2Fsedrq53tqpbl48muju83.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%2Fi%2Fsedrq53tqpbl48muju83.png" alt="Alt Text" width="736" height="515"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;But wait! How to customize style of chatbot?&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h1&gt;
  
  
  5. Customization
&lt;/h1&gt;

&lt;p&gt;You can customize the style of your chatbot by setting following css variables, &lt;a href="https://cloud.google.com/dialogflow/es/docs/integrations/dialogflow-messenger" rel="noopener noreferrer"&gt;know more&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%2Fi%2Fn91w6d406gunxq7b5md4.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%2Fi%2Fn91w6d406gunxq7b5md4.png" alt="Alt Text" width="790" height="437"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Example:&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;style&amp;gt;
            df-messenger {
            --df-messenger-bot-message: #bdfcbf;
            --df-messenger-button-titlebar-color: #7ec472;
            --df-messenger-chat-background-color: #fafafa;
            --df-messenger-font-color: black;
            --df-messenger-send-icon: #7ec472;
            --df-messenger-user-message: #7ec472;
            }  
&amp;lt;/style&amp;gt;

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You can customize various aspects for how the chat dialog appears and behaves. The &lt;code&gt;df-messenger&lt;/code&gt; HTML element has the following attributes:&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%2Fi%2Ffz18hcaz6hc6khclfnh7.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%2Fi%2Ffz18hcaz6hc6khclfnh7.png" alt="Alt Text" width="773" height="464"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Example:&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;df-messenger
        intent="WELCOME"
        chat-title="K2"
        agent-id="15d0bf9a-1da9-487f-96a6-aa39f95ada63"
        language-code="en"
&amp;gt;&amp;lt;/df-messenger&amp;gt;

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;After above css and html customization chatbot looks like,&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%2Fi%2Ffsorjzioul11222fj7rc.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%2Fi%2Ffsorjzioul11222fj7rc.png" alt="Alt Text" width="280" height="489"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Hurrey! This way you can integrate, customize dialogflow chatbot with your own website.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;NOTE:&lt;/strong&gt; You may face issue related to chatbot container hight like below.&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%2Fi%2Fw9ht5c3wgkmoqdy20k29.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%2Fi%2Fw9ht5c3wgkmoqdy20k29.png" alt="Alt Text" width="800" height="425"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;As there is no css variable mentioned in documentation to customize height, we need to add below code into head tag,&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;!-- Jquery CDN --&amp;gt;
    &amp;lt;script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"&amp;gt;&amp;lt;/script&amp;gt;
    &amp;lt;script&amp;gt;
        //To minimise the height of chatbox
        $(document).ready(function() {
            window.addEventListener('dfMessengerLoaded', function (event) {
            $r1 = document.querySelector("df-messenger");
            $r2 = $r1.shadowRoot.querySelector("df-messenger-chat");
            $r3 = $r2.shadowRoot.querySelector("df-messenger-user-input"); //for other mods
            var sheet = new CSSStyleSheet;
            // manage box height from here
            sheet.replaceSync( `div.chat-wrapper[opened="true"] { height: 450px }`);
            $r2.shadowRoot.adoptedStyleSheets = [ sheet ];
            });
        });
    &amp;lt;/script&amp;gt;

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;Hope this article help you!&lt;/em&gt;&lt;br&gt;
Important links:&lt;br&gt;
&lt;a href="https://dialogflow.cloud.google.com/" rel="noopener noreferrer"&gt;Dialogflow Documentation&lt;/a&gt;&lt;br&gt;
&lt;a href="https://cloud.google.com/dialogflow/es/docs/integrations/dialogflow-messenger" rel="noopener noreferrer"&gt;CSS and HTML Customization and integration&lt;/a&gt;&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>dialogflow</category>
      <category>webdev</category>
      <category>chatbot</category>
    </item>
    <item>
      <title>Cryptocurrency 💰</title>
      <dc:creator>Ketan Patil</dc:creator>
      <pubDate>Sun, 04 Oct 2020 14:03:27 +0000</pubDate>
      <link>https://dev.to/ketan_patil/cryptocurrency-1kp4</link>
      <guid>https://dev.to/ketan_patil/cryptocurrency-1kp4</guid>
      <description>&lt;h1&gt;
  
  
  What is cryptocurrency?
&lt;/h1&gt;

&lt;p&gt;Currency has been an integral part of our lives. Now days everyone is moving towards a digital eco-system, from investment to money transfer, everything is going paperless. newest and most secured addition to digital payment sector is cryptocurrency.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Cryptocurrency is an internet-based medium of exchange which uses cryptographical functions to conduct financial transactions which works on blockchain technology.&lt;/li&gt;
&lt;li&gt;The most important feature of a cryptocurrency is that it is not controlled by any central authority, the decentralized nature of the blockchain makes cryptocurrencies. &lt;/li&gt;
&lt;li&gt;Cryptocurrencies can be sent directly between two parties via the use of private and public keys. These transfers can be done with minimal processing fees, allowing users to avoid the fees charged by traditional financial institutions.&lt;/li&gt;
&lt;/ul&gt;

&lt;h1&gt;
  
  
  Types of cryptocurrency
&lt;/h1&gt;

&lt;p&gt;Bitcoin is the most popular cryptocurrency created in 2009 by &lt;code&gt;Satoshi Nakomoto&lt;/code&gt;. It used SHA-256 hashing algorithm to hash transactions.&lt;br&gt;
Another popular cryptocurrencies are as follow:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--iW9QIPbf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/t1wmyb0dbxrm94bybokk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--iW9QIPbf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/t1wmyb0dbxrm94bybokk.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  How it works?
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Zxd3b5Sa--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/hvqwscrc8gfr6f035yal.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Zxd3b5Sa--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/hvqwscrc8gfr6f035yal.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Consider &lt;code&gt;Alice&lt;/code&gt; wants to send bitcoins to &lt;code&gt;Bob&lt;/code&gt;.&lt;br&gt;
&lt;strong&gt;1&lt;/strong&gt;.&lt;code&gt;Alice&lt;/code&gt; first login into the bitcoin wallet using his unique private key.&lt;br&gt;
&lt;strong&gt;2&lt;/strong&gt;.After successful login &lt;code&gt;Alice&lt;/code&gt; sends bitcoins to bob using &lt;code&gt;Bob’s&lt;/code&gt; public key&lt;br&gt;
&lt;strong&gt;3&lt;/strong&gt;.Bitcoins sent by &lt;code&gt;Alice&lt;/code&gt; then added into &lt;code&gt;Bob's&lt;/code&gt; wallet without interference of third party and new block of the transaction is created.&lt;br&gt;
&lt;strong&gt;4&lt;/strong&gt;.This block of transaction contains information about transaction and hash key of previouse block of transaction.&lt;br&gt;
&lt;strong&gt;5&lt;/strong&gt;.This new block of cryptocurrency transaction is then appended to blockchain and gets updated to distributed ledgers.&lt;/p&gt;

&lt;h1&gt;
  
  
  Why Cryptocurrency?
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;1.We manage our transactions:&lt;/strong&gt;&lt;br&gt;
As no other parties involved in transaction of cryptocurrency. This means there’s less opportunity for funds to get diverted elsewhere without your knowing. As a result, this will help reduce and eliminate fraud risk.&lt;br&gt;
&lt;strong&gt;2.We can track our payments at any time:&lt;/strong&gt;&lt;br&gt;
Bank transactions get tracked over the few days. But in case of cryptocurrency we can track transactions by the second. This increases security for both the sender and receiver of the transaction.&lt;br&gt;
&lt;strong&gt;3.Transaction costs are affordable:&lt;/strong&gt;&lt;br&gt;
Cryptocurrencies like Bitcoin usually have low transaction fees compared to other currencies. Bank probably charges a higher transaction fee than Bitcoin. This is because there is no central authority governing these currencies. &lt;/p&gt;

</description>
      <category>security</category>
      <category>blockchain</category>
      <category>beginners</category>
    </item>
    <item>
      <title>ER Diagram to Relational Model Conversion</title>
      <dc:creator>Ketan Patil</dc:creator>
      <pubDate>Sun, 27 Sep 2020 12:19:50 +0000</pubDate>
      <link>https://dev.to/ketan_patil/er-diagram-to-relational-model-conversion-49ip</link>
      <guid>https://dev.to/ketan_patil/er-diagram-to-relational-model-conversion-49ip</guid>
      <description>&lt;p&gt;First step of any relational database design is to make ER Diagram for it and then convert it into relational Model.&lt;br&gt;
&lt;strong&gt;What is relational model ?&lt;/strong&gt;&lt;br&gt;
Relational Model represents how data is stored in database in the form of table.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--liQfHSZ5--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/mx40m07cezg9row5dyuu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--liQfHSZ5--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/mx40m07cezg9row5dyuu.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;br&gt;
Lets learn step by step how to convert ER diagram into relational model &lt;/p&gt;

&lt;h2&gt;
  
  
  1.Entity Set:
&lt;/h2&gt;

&lt;p&gt;Consider we have entity STUDENT in ER diagram with attributes Roll Number, Student Name and Class.&lt;br&gt;&lt;br&gt;
To convert this entity set into relational schema&lt;br&gt;
1.Entity is mapped as relation in Relational schema&lt;br&gt;
2.Attributes of Entity set are mapped as attributes for that Relation.&lt;br&gt;
3.Key attribute of Entity becomes Primary key for that Relation.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--TJrHoVsu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/3zlnpm2i6qrs2jfh8sk4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--TJrHoVsu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/3zlnpm2i6qrs2jfh8sk4.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  2.Entity set with multi valued attribute:
&lt;/h2&gt;

&lt;p&gt;Consider we have entity set Employee with attributes Employee ID, Name and Contact number.&lt;br&gt;
Here contact number is multivalued attribute as it has multiple values. as an employee can have more than one contact number for that we have to repeat all attributes for every new contact number. This will lead to data redundancy in table. &lt;br&gt;
Hence to convert entity with multivalued attribute into relational schema&lt;br&gt;
separate relation is created for multivalued attribute in which&lt;br&gt;
1.Key attribute and multivalued attribute of entity set becomes primary key of relation.&lt;br&gt;
2.Separate relation employee is created with remaining attributes.&lt;br&gt;
Due to this instead of repeating all attributes of entity now only one attribute is need to repeat. &lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--QTflaI5K--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/m4m82sryqpdetov7n0ps.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--QTflaI5K--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/m4m82sryqpdetov7n0ps.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  3.Entity set with Composite attribute:
&lt;/h2&gt;

&lt;p&gt;Consider entity set student with attributes Roll Number, Student Name and Class. here student name is composite attribute as it has further divided into First name, last name.&lt;br&gt;
In this case to convert entity into relational schema,&lt;br&gt;
composite attribute student name should not be include in relation but all parts of composite attribute are mapped as simple attributes for relation.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s---FRPwtIK--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/avw3mzi1m36fwyslyl6f.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s---FRPwtIK--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/avw3mzi1m36fwyslyl6f.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  4. 1:M (one to many) Relationship:
&lt;/h2&gt;

&lt;p&gt;Consider 1:M relationship set  enrolled exist between entity sets student  and course as follow,&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--b1tD2nSb--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/5nrh6o3g6a608w15jhx2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--b1tD2nSb--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/5nrh6o3g6a608w15jhx2.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;br&gt;
Attributes of entity set student are Roll no which is primary key, student name and class &lt;br&gt;
Attributes of entity set course are Course code which is primary key, Course name and duration &lt;br&gt;
And date of enroll is attribute of relationship set enroll.&lt;br&gt;
Here Enroll is 1:M relationship exist between entity set student and course which means that one student can enroll in multiple courses&lt;br&gt;
In this case to convert this relationship into relational schema,&lt;br&gt;
1.Separate relation is created for all participating entity sets (student and course)&lt;br&gt;
2.Key attribute of Many’s side entity set (course) is mapped as foreign key in one’s side relation(Student) &lt;br&gt;
3.All attributes of relationship set are mapped as attributes for relation of one’s side entity set (student) &lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--TrPGYHI6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/w06cf670gjaqhh2cq573.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--TrPGYHI6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/w06cf670gjaqhh2cq573.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  5. M:1 (many to one) Relationship:
&lt;/h2&gt;

&lt;p&gt;Consider same relationship set enroll exist between entity sets student and course . but here student is many side entity set while course is one side entity set. Which means many student can enroll in one course.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--0Y3Cn22h--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/kezcji5eev1sk9tqn8w7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--0Y3Cn22h--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/kezcji5eev1sk9tqn8w7.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;br&gt;
To convert this relationship set into relational schema, &lt;br&gt;
1.Separate relation is created for all participating entity sets.&lt;br&gt;
2.Key attribute of Many’s side entity set student is mapped as foreign key in one’s side relation &lt;br&gt;
3.All attributes of relationship set are mapped as attributes for one’s side relation course.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--va2uKNnX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/280htig9pdit6esis44g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--va2uKNnX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/280htig9pdit6esis44g.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  6. M:N (many to many) Relationship:
&lt;/h2&gt;

&lt;p&gt;Consider same relationship set  enrolled exist between entity sets student and course ,which means multiple student can enroll in multiple courses.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--GGZdD9Lx--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/9e2hipmk4by36xcqfomh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--GGZdD9Lx--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/9e2hipmk4by36xcqfomh.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;br&gt;
To convert this Relationship set into relational schema, &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Relationship set is mapped as separate relation &lt;/li&gt;
&lt;li&gt;Key attributes of participating entity sets are mapped as primary key for that relation&lt;/li&gt;
&lt;li&gt;Attribute of relationship set becomes simple attributes for that relation&lt;/li&gt;
&lt;li&gt;And separate relation is created for other participating entities
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ce7wPMUP--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/70hfkq7vvdv1ktce8b1c.png" alt="Alt Text"&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  7. 1:1 (one to one) Relationship:
&lt;/h2&gt;

&lt;p&gt;Consider same relationship set  enroll exist between entity sets student  and course ,which means one student can enroll in only one courses&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--uYpc6lSl--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/6zdypmsga3jqtlcjhytg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--uYpc6lSl--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/6zdypmsga3jqtlcjhytg.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;br&gt;
To convert this Relationship set into relational schema, &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Separate relation is created for all participating entity sets.&lt;/li&gt;
&lt;li&gt;Primary Key of Relation Student can be act as foreign key for relation Course
OR Primary Key of Relation Course act as foreign key for relation Student.
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--6SKBUfC6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/bmz3yc86f860d892ped8.png" alt="Alt Text"&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;h1&gt;
  
  
  EXAMPLE:
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--PWbtXUTW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/fc9uis8e8qt7rjd9gsxf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--PWbtXUTW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/fc9uis8e8qt7rjd9gsxf.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;a href="https://www.youtube.com/channel/UCmHDVz86B7liVP_cI8r_9JQ"&gt;View My Tutorials&lt;/a&gt;
&lt;/h4&gt;

</description>
      <category>database</category>
      <category>sql</category>
      <category>postgres</category>
      <category>beginners</category>
    </item>
    <item>
      <title>C/C++  Process Map</title>
      <dc:creator>Ketan Patil</dc:creator>
      <pubDate>Fri, 11 Sep 2020 10:49:03 +0000</pubDate>
      <link>https://dev.to/ketan_patil/c-c-process-map-242a</link>
      <guid>https://dev.to/ketan_patil/c-c-process-map-242a</guid>
      <description>&lt;p&gt;Most of us start learning of programming language with C/C++. C consider as grandfather of modern programming languages and some of them are running on c behind the scene.&lt;br&gt;
Remember your excitement of writing first ‘hello world!’ program in c, definitely this had been a great experience. but what exactly happens when we compiled and run our c program?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;COMPILATION:&lt;/strong&gt;&lt;br&gt;
On compiling c program, compiler compiles the source code file and outputs the binary code this binary code is contained in the file &lt;code&gt;Hello.o&lt;/code&gt; or &lt;code&gt;Hello.obj&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--sMPVLFz2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/m141hqxgip68othhxfbq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--sMPVLFz2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/m141hqxgip68othhxfbq.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;After this &lt;code&gt;linker&lt;/code&gt; links binary code of source code file and binary code contained in library. After successful linking, linker outputs program which has the name &lt;code&gt;Hello.exe&lt;/code&gt;. program is then saved to Disc.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s---G-Txmn2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/ouehweaobklootwe4hei.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s---G-Txmn2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/ouehweaobklootwe4hei.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;RUN:&lt;/strong&gt;&lt;br&gt;
Now when we run this program. OS loader loads program onto RAM for execution. Now this program has become process, process is a program under execution.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;WHAT IS PROCESS MAP ?&lt;/strong&gt;&lt;br&gt;
Process has five memory segments &lt;em&gt;DATA&lt;/em&gt;, &lt;em&gt;BSS&lt;/em&gt;, &lt;em&gt;CODE&lt;/em&gt; or &lt;em&gt;TEXT&lt;/em&gt;, &lt;em&gt;HEAP&lt;/em&gt; and &lt;em&gt;STACK&lt;/em&gt; this is collectively called as PROCESS MAP.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--fSkp-xLU--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/kpyl5ejhakf177wogob3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--fSkp-xLU--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/kpyl5ejhakf177wogob3.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Consider following code to understand use of individual memory segment&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--uOUga0wG--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/cnyxv86g2vz580h30wi2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--uOUga0wG--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/cnyxv86g2vz580h30wi2.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;DATA segment&lt;/strong&gt; : All static and global variables initialized to a NON- ZERO value go here. From  above code data segment will contain&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;int g_b = 5 and static int z = 2
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;BSS (Block Started By Symbol)&lt;/strong&gt; : All static and global variables initialized to a ZERO  go here. From  above code, BSS segment will contain,&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;int g_a and static int d=0
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;here we didn’t assign value of &lt;code&gt;g_a&lt;/code&gt; as 0 then how &lt;code&gt;g_a&lt;/code&gt; is come in BSS?, &lt;em&gt;comment your answer below.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;CODE / TEXT&lt;/strong&gt; : Binary code of all the functions we used in our code go here.&lt;br&gt;
It will contain binary code of functions &lt;code&gt;add()&lt;/code&gt;, &lt;code&gt;main()&lt;/code&gt; and &lt;code&gt;printf()&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;HEAP&lt;/strong&gt; :  Heap is use for dynamic memory allocations. in above code we didn’t made any dynamic memory allocation hence in our case heap memory remains empty.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;STACK&lt;/strong&gt; : It contains stackframe of the functions currently under execution. stackframe is a structure that holds all needed information during functions execution. stackframe has four parts as follow,&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--cK5QlcbV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/65gk1b8a23u397xv5d5m.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--cK5QlcbV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/65gk1b8a23u397xv5d5m.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Stackframe is created when function is called and then stackframe of respective function is pushed onto the stack.as we have three functions in above code hence three stackframes are created while program execution.&lt;/p&gt;

&lt;p&gt;In this way C program is compiled and run and after its execution process map looks like below:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--kWWsH2d4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/9lr74lhhtnm1yz0et37z.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--kWWsH2d4--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/9lr74lhhtnm1yz0et37z.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>c</category>
      <category>cpp</category>
    </item>
  </channel>
</rss>
