<?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: Yireobong William</title>
    <description>The latest articles on DEV Community by Yireobong William (@ygwilliams4).</description>
    <link>https://dev.to/ygwilliams4</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%2F1200329%2F13064dea-7a1f-43ac-a07e-c8301101ac0e.jpg</url>
      <title>DEV Community: Yireobong William</title>
      <link>https://dev.to/ygwilliams4</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/ygwilliams4"/>
    <language>en</language>
    <item>
      <title>Understanding Browser Architecture: A brief overview</title>
      <dc:creator>Yireobong William</dc:creator>
      <pubDate>Fri, 05 Apr 2024 13:19:49 +0000</pubDate>
      <link>https://dev.to/ygwilliams4/understanding-browser-architecture-a-brief-overview-2b8f</link>
      <guid>https://dev.to/ygwilliams4/understanding-browser-architecture-a-brief-overview-2b8f</guid>
      <description>&lt;p&gt;Web browsers play a vital role in our everyday lives as they serve as the primary means of accessing the internet which helps in making communication easier and faster, keeping us well-informed, and providing entertainment. They could easily pass as the most used piece of software. Of course, we are familiar with the major web browsers, including Google's Chrome, which, according to statistics, is the most used web browser in the world. Others include Mozilla's Firefox, Microsoft's Edge, Apple's Safari, Opera web browser, and the list goes on. This article aims to enlighten you on the intricate workings of the web browser, unraveling what goes on under the hood and how the web browser achieves its functionality.&lt;/p&gt;

&lt;p&gt;The main functionality of a web browser is to fetch resources, which are mostly HTML files with style sheets and some JavaScript scripts, and then proceed to display the information in an understandable way for end users. This goal is achieved by the collaboration of various components in the web browser, including the user interface, the rendering engine, the JavaScript engine, networking components, data storage, and browser plugins/extensions.&lt;/p&gt;

&lt;p&gt;The roles of the various components are as follows;&lt;/p&gt;

&lt;p&gt;User Interface&lt;/p&gt;

&lt;p&gt;The user interface, as the name suggests, refers to the visual components that end users see and interact with. This includes the address bar, search buttons, bookmark buttons, and various other components on the browser screen. The user interface differs across various browsers, but it is usually simple and easy to use.&lt;/p&gt;

&lt;p&gt;The Rendering Engine&lt;/p&gt;

&lt;p&gt;The rendering engine deals with the processing of acquired HTML/XML files into visually pleasing layouts for end users. HTML files mostly consist of tags and other components that, if displayed as is, would be unappealing to the average user. As such, the rendering engine processes them alongside the attached CSS file (if any) and presents to you the beautiful website you see on the screen. Different browsers make use of different rendering engines; for example, Google Chrome and Opera use Blink, Mozilla Firefox uses Gecko, while Chrome and Safari use Webkit.&lt;/p&gt;

&lt;p&gt;The Browser Engine &lt;/p&gt;

&lt;p&gt;It is fair to refer to this component as the powerhouse of the web browser as it functions as a middleman between the user interface, the rendering engine, and other browser components. It ensures that inputs from the user, such as typing in a web address or clicking a link, are accurately relayed and trigger the appropriate feedback. A fast and efficient browser engine ensures that web pages load smoothly and quickly, thereby enhancing the user experience.&lt;/p&gt;

&lt;p&gt;Javascript Engine(Interpreter)&lt;/p&gt;

&lt;p&gt;As we all know, JavaScript is the language of the web. It enables developers to create websites with dynamic content, interactive features, and visually appealing animations. It wouldn't make sense if browsers didn't come with JavaScript interpreters. The JavaScript interpreter is the component of the browser that parses and executes JavaScript code embedded on web pages. The interpreted results are generated and forwarded to the rendering engine for appropriate action.&lt;/p&gt;

&lt;p&gt;Networking Components&lt;/p&gt;

&lt;p&gt;These refer to the components involved in network communications using protocols such as HTTPS and FTP. They are responsible for tasks like resolving web addresses into IP addresses, establishing network connections, making HTTP requests to web servers, fetching required resources like HTML/CSS files, and relaying them to the rendering engine for proper rendering/display.&lt;/p&gt;

&lt;p&gt;Data Storage&lt;/p&gt;

&lt;p&gt;You might be wondering what data storage has to do with web browsers, but hear me out. Your web browser stores minute amounts of data. Browsers make use of three storage mechanisms: localStorage, sessionStorage, and cookies. localStorage stores data that is persistent (remains in the browser memory even after being refreshed or closed) and can only be accessed by client-side JavaScript, not by the server. sessionStorage is similar to localStorage except that data stored here isn't persistent. Data stored in cookies are persistent; they can be configured to be accessed only by the server and not by client-side JavaScript. Cookies help inform websites about the user, enabling the websites to personalize the user experience. In addition, some cookies are necessary for security purposes, such as authentication cookies.&lt;/p&gt;

&lt;p&gt;Browser Plugins/Extensions&lt;/p&gt;

&lt;p&gt;Plugins or browser extensions refer to non-standalone software that can be added to web browsers for extra functionality. Plugins are generally created using web-based technologies like JavaScript. Web browser plugins can add or remove content from websites, such as blocking intrusive ads or allowing users to edit content on web pages. With plugins, one can easily add new features to a web browser.&lt;/p&gt;

&lt;p&gt;Understanding browser architecture not only enriches our comprehension of the digital realm but also empowers us to navigate the vast landscape of the internet with greater insight and efficiency. &lt;/p&gt;

&lt;p&gt;Feel free to drop your thoughts in the comment section.&lt;br&gt;
Thank you.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>beginners</category>
      <category>learning</category>
      <category>website</category>
    </item>
    <item>
      <title>Exploring the mechanics of internet connectivity</title>
      <dc:creator>Yireobong William</dc:creator>
      <pubDate>Mon, 25 Mar 2024 21:00:58 +0000</pubDate>
      <link>https://dev.to/ygwilliams4/exploring-the-mechanics-of-internet-connectivity-36de</link>
      <guid>https://dev.to/ygwilliams4/exploring-the-mechanics-of-internet-connectivity-36de</guid>
      <description>&lt;p&gt;In modern society, we all make use of the internet in our daily lives, whether for work or pleasure. From watching Netflix to researching on Google to playing fun online games with friends and family. But have you ever slowed down and wondered how it actually works behind the scenes? Well, today we'll be exploring how the internet actually pulls off the great feat of connecting the whole world in what could be called a global village. Let's dive right into it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is the Internet?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Before delving into what the internet is all about, we need to understand what a network is. A network is the connection of two or more devices, enabling communication between them and the sharing of data, information, and other resources.&lt;br&gt;
The internet, which began as ARPANET, was developed in the late 1960s by the United States Department of Defense as a means of creating a decentralized communication network capable of withstanding a nuclear attack.&lt;br&gt;
Today the internet is used by more than 2 billion of the world's population, it facilitates communication, provides quick access to a wide array of information and resources that previously would take years to gather, enhances entertainment in the form of video games, movies and the likes. businesses and brands also make use of the internet in order to reach their target audience and enhance sales. these among others are the various roles the internet plays in the modern world.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;An overview of how the internet operates.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The internet operates under a set of standard protocols that govern how information is exchanged between connected devices and computer systems. At its core, the internet consists of a network of interconnected routers responsible for directing traffic throughout the entire ecosystem.&lt;br&gt;
Data isn't transferred in bulk as one might assume, but rather broken down into tiny bits called packets. This enhances the speed and efficiency of data transfer. The IP and TCP protocols play vital roles in this process. Internet Protocol (IP) ensures that packets reach the correct address, while the Transmission Control Protocol (TCP) ensures that packets are transmitted in the correct order and reliably.&lt;br&gt;
Other protocols include the Domain Name System (DNS),Hypertext Transfer Protocol (HTTP), Secure Socket Layer (SSL), Transport Layer Security (TLS) and a bunch of others.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Protocols and Why They Are Necessary&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Protocols are sets of rules and standards that define how information is shared between various devices and systems.&lt;br&gt;
These protocols exist to maintain consistency across the network. For example, a web browser developed by Company A can communicate freely and efficiently with a web server developed by Company B, provided they both adhere to the standard protocols.&lt;br&gt;
The most common protocols and their roles include Internet Protocol (IP), Transmission Control Protocol (TCP), User Datagram Protocol (UDP), Domain Name System (DNS), and many others.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Basic terminologies/concepts&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Packet: A small unit of data that is transmitted over the internet.&lt;/li&gt;
&lt;li&gt;Router: A device that directs packets of data between different networks.&lt;/li&gt;
&lt;li&gt;IP Address: A unique identifier assigned to each device on a network, used to route data to the correct destination.&lt;/li&gt;
&lt;li&gt;Domain Name: A human-readable name that is used to identify a website, such as google.com.&lt;/li&gt;
&lt;li&gt;DNS: The Domain Name System is responsible for translating domain names into IP addresses.&lt;/li&gt;
&lt;li&gt;HTTP: The Hypertext Transfer Protocol is used to transfer data between a client (such as a web browser) and a server (such as a website).&lt;/li&gt;
&lt;li&gt;HTTPS: An encrypted version of HTTP that is used to provide secure communication between a client and server.&lt;/li&gt;
&lt;li&gt;SSL/TLS: The Secure Sockets Layer and Transport Layer Security protocols are used to provide secure communication over the internet.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Understanding these various terminology plays a role in the understanding of the internet, let's dive deeper into the roles each plays in the smooth operation of the internet.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;IP Addresses and Domain Names&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Let's get started with what IP addresses are and why they are very important.&lt;/p&gt;

&lt;p&gt;In the real world, our houses have addresses that help us differentiate them from other houses and determine their position relative to other structures. If someone wants to visit you, you give them your address, making it very easy for them to come see you. IP addresses work in the same way; they are unique identifiers given to devices connected to the internet to differentiate them from other devices. IP addresses are usually four sets of numbers separated by periods, e.g., 192.168.1.1.&lt;/p&gt;

&lt;p&gt;Now, it would be impossible for humans to memorize these numbers and use them when they need to access a particular site. That's where domain names come in. Domain names are human-readable names used to represent IP addresses. The introduction of domain names also led to the adoption of a Domain Name System (DNS). Since computers won't be able to recognize domain names, the DNS acts as a register that stores IP addresses and their corresponding domain name(s). When you open up your browser and type in a domain name like facebook.com, the browser sends a request to the DNS for the IP address corresponding to the said domain name. When the DNS returns the IP address, the browser then proceeds to access the website.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Understanding HTTP and HTTPS&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Hypertext Transfer Protocol (HTTP) and HTTPS (HTTP Secure) are the most commonly used protocols for transferring data. They are used by your web browser to communicate with the server. When you want to visit a website in your browser, the web browser sends an HTTP request to the server asking for the website, web app, or whatever resources you're looking for. The server then sends back an HTTP response containing the requested data/information.&lt;/p&gt;

&lt;p&gt;HTTPS is a more secure version of the HTTP protocol; it is encrypted with SSL/TLS, thus allowing for the protection of very sensitive information such as payment credentials, passwords, personal data, etc. HTTPS is definitely the more widely used of the two protocols, as the need for security on the internet has been on the rise.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Securing Internet Connections with SSL/TLS&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;As mentioned earlier, these protocols are used for the encryption of sensitive data exchanged between devices to minimize the risk of data breaches. These protocols ensure secure internet communication.&lt;/p&gt;

&lt;p&gt;A few terms to be familiar with when discussing SSL/TLS include:&lt;/p&gt;

&lt;p&gt;Certificates: These are used to establish trust between the client and the server. They usually contain information about the server and are typically signed by a trusted third party to verify their authenticity.&lt;/p&gt;

&lt;p&gt;Handshake: This refers to a process in which the client and the server exchange information to decide on the encryption algorithm and other parameters to be used during the connection.&lt;/p&gt;

&lt;p&gt;Encryption: Once the connection is established, data encrypted with the previously agreed encryption method is shared between the client and server.&lt;/p&gt;

&lt;p&gt;When building web services and web apps, one must endeavor to obtain and maintain valid SSL/TLS certificates and ensure to follow best practices regarding their usage, as this enables secure connections and reduces the risk of data leakage.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Future of the Internet&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;With the rise of new technological advancements, the internet has been growing rapidly and doesn't seem like it would be slowing down anytime soon. The introduction of 5G networks, which enable large amounts of information to be distributed at super speed, enhances the overall performance of the internet. Within the last few years, AI was introduced and has so far proved to be a force to reckon with due to its endless possibilities and extreme flexibility. With AI in the picture, we can delegate some tasks to them, which they carry out with speed and accuracy, thereby increasing our efficiency in carrying out assigned tasks.&lt;/p&gt;

&lt;p&gt;Internet of Things (IoT) refers to the network of physical devices, vehicles, home appliances, and other objects that are connected to the internet and can exchange data. As IoT continues to grow, it is expected to revolutionize industries such as healthcare, transportation, and manufacturing.&lt;/p&gt;

&lt;p&gt;Blockchain is a distributed ledger technology that enables secure, decentralized transactions. It is being used to power a wide range of applications, from cryptocurrency to supply chain management.&lt;/p&gt;

&lt;p&gt;I hope you found this article useful. If you have any questions, suggestions or comments, please feel free to leave them below. Thanks for reading!&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>learning</category>
    </item>
  </channel>
</rss>
