<?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: RRARI504</title>
    <description>The latest articles on DEV Community by RRARI504 (@rrari504).</description>
    <link>https://dev.to/rrari504</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%2F3248579%2F1e624b74-3d3a-4110-8d4a-2fecca0b787f.jpeg</url>
      <title>DEV Community: RRARI504</title>
      <link>https://dev.to/rrari504</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/rrari504"/>
    <language>en</language>
    <item>
      <title>Mac vs PC</title>
      <dc:creator>RRARI504</dc:creator>
      <pubDate>Tue, 10 Feb 2026 20:41:50 +0000</pubDate>
      <link>https://dev.to/rrari504/mac-vs-pc-4695</link>
      <guid>https://dev.to/rrari504/mac-vs-pc-4695</guid>
      <description>&lt;p&gt;The debate between Mac or PC has been around for a very long time; which is better and why? Both platforms are powerful, reliable, and constantly evolving but they appeal to different kinds of users. So, whether you’re buying your first computer or deciding what to upgrade on your computer, understanding the difference between Macs and PCs can make your decision a bit easier.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;History&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Macs have been around since about 1984, when &lt;em&gt;Apple&lt;/em&gt; introduced the original &lt;em&gt;Macintosh&lt;/em&gt;. It was one of the first widely available personal computers with a graphical user interface (GUI), using windows, icons, and a mouse instead of typed commands. This made computing more accessible than command-line interfaces (CLI) that were around at the time. &lt;/p&gt;

&lt;p&gt;From the beginning, Apple focused on creating computers that were approachable, tightly controlled from hardware to software and centered around simplicity and efficiency. Today Modern Macs use ARM-based processors that unify the CPU, GPU, and neural engine on a single chip.&lt;/p&gt;

&lt;p&gt;PCs or &lt;em&gt;personal computers&lt;/em&gt;, on the other hand, also took rise in the early 1980s along with the advent of &lt;em&gt;Microsoft Windows&lt;/em&gt;. While "PC" technically refers to any personal computer (even Macs), the term PC became synonymous with Windows-based machines due to the &lt;strong&gt;IBM PC&lt;/strong&gt;. &lt;/p&gt;

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

&lt;p&gt;Instead of one company controlling everything like Apple, Microsoft licensed Windows to many manufacturers; which has allowed PCs to spread quickly across businesses, schools, and homes, becoming the dominant computing platform worldwide.&lt;/p&gt;

&lt;h2&gt;
  
  
  One or the other?
&lt;/h2&gt;

&lt;p&gt;Macs:&lt;br&gt;
People often choose Macs for their ease of use and ecosystem integration. If you already own an Apple product like and iPhone, iPad, or Apple Watch, a Mac will work seamlessly with these devices. Things like sharing files, messages, and even clipboard content is done with ease and the system requires minimal setup.&lt;/p&gt;

&lt;p&gt;Macs are very popular among creative professionals in particular. Fields like graphic design, video editing, music production, and app development often favor macOS because of its optimized creative software and consistent performance. Another factor when considering a Mac is longevity. Macs tend to receive operating system updates for many years, and their build quality often allows them to remain usable well beyond their initial purchase cycle.&lt;/p&gt;

&lt;p&gt;PC:&lt;br&gt;
PCs are often a better choice for users who want flexibility and control over their system. With PCs, you can choose from a larger range of hardware options. If you wanted you could also upgrade individual components, and build a computer system centered around the specific needs you have. Whether that’s gaming, engineering, or office work you PC would be fully customized for what you need.&lt;/p&gt;

&lt;p&gt;Windows also dominates in software compatibility. Many business, enterprise, and technical applications are designed primarily for Windows, making PCs essential in certain industries. Gamers, in particular, benefit from better hardware variety and broader game support on these Windows systems. PCs support the widest range of applications and interfaces and have strong compatibility with legacy systems. PCs also offer more budget-friendly options in comparison to its Mac counterparts.&lt;/p&gt;

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

&lt;p&gt;The choice between Mac and PC isn’t about which one is objectively better but it is more about which system meets your personal priorities. Understanding their histories and design philosophies helps explain why each platform has a different feel from the other.&lt;/p&gt;

&lt;h3&gt;
  
  
  Resources
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;&lt;a href="https://www.dossierlabs.com/articles/10-excellent-reasons-to-choose-mac-over-pc" rel="noopener noreferrer"&gt;https://www.dossierlabs.com/articles/10-excellent-reasons-to-choose-mac-over-pc&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.diffen.com/difference/Mac_vs_PC" rel="noopener noreferrer"&gt;https://www.diffen.com/difference/Mac_vs_PC&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.senove.com/mac-or-pc-a-complete-comparison-to-help-you-choose-your-next-computer.htm" rel="noopener noreferrer"&gt;https://www.senove.com/mac-or-pc-a-complete-comparison-to-help-you-choose-your-next-computer.htm&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.luxwisp.com/pros-and-cons-of-mac-vs-pc" rel="noopener noreferrer"&gt;https://www.luxwisp.com/pros-and-cons-of-mac-vs-pc&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://commongoodventures.org/posts/the-pros-and-cons-of-buying-a-mac-vs.-a-pc-which-is-the-better-choice/" rel="noopener noreferrer"&gt;https://commongoodventures.org/posts/the-pros-and-cons-of-buying-a-mac-vs.-a-pc-which-is-the-better-choice/&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>programming</category>
      <category>devops</category>
    </item>
    <item>
      <title>Augmented Reality &amp; Virtual Reality</title>
      <dc:creator>RRARI504</dc:creator>
      <pubDate>Mon, 26 Jan 2026 14:57:33 +0000</pubDate>
      <link>https://dev.to/rrari504/augmented-reality-virtual-reality-1ndg</link>
      <guid>https://dev.to/rrari504/augmented-reality-virtual-reality-1ndg</guid>
      <description>&lt;h2&gt;
  
  
  What is the difference between VR and AR?
&lt;/h2&gt;

&lt;p&gt;Have you ever wanted to go to a different world, or see a digital animal appear in front of you as if it were real? Today, this is not only possible in science fiction movies with &lt;strong&gt;&lt;em&gt;Virtual Reality&lt;/em&gt;&lt;/strong&gt; and &lt;strong&gt;Augmented Reality&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Virtual Reality&lt;/em&gt; (VR) refers to technologies that fully immerse a user in a simulated digital environment, possible when using a specialized headset. On the other hand, &lt;em&gt;Augmented Reality&lt;/em&gt; (AR) differs by enhancing the real world, overlaying digital content onto your physical environment. So, Augmented Reality adds to the real world, while VR is meant to almost immerse you into another world. &lt;/p&gt;

&lt;p&gt;For VR these environments can imitate real-world settings or create entirely new worlds, allowing users to interact with digital elements as if they are physically in them. AR can work through smartphones, tablets, or smart glasses that add images, data, or instructions on top of what you see. A popular example are apps that let you preview furniture in your home before buying it or photo filters in social media apps like &lt;em&gt;SnapChat&lt;/em&gt;. &lt;/p&gt;

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

&lt;p&gt;Popular VR headsets include the &lt;em&gt;Meta Quest 2&lt;/em&gt; or the &lt;em&gt;Sony VR2&lt;/em&gt;, but there are many types of virtual reality headset with different capabilities, clarity, field of view, etc. Both technologies are not 'new' but they are growing and evolving currently in education, gaming, and even professional fields like medicine and design. &lt;/p&gt;

&lt;h2&gt;
  
  
  History
&lt;/h2&gt;

&lt;p&gt;Although ideas of altered perception appear in early science fiction, actual work towards this goal began in the mid-20th century. In 1968, a computer scientist named &lt;em&gt;Ivan Sutherland&lt;/em&gt; and his student &lt;em&gt;Bob Sproull&lt;/em&gt; developed one of the first head-mounted displays called the &lt;em&gt;&lt;strong&gt;Sword of Damocles&lt;/strong&gt;&lt;/em&gt; which could project simple computer-generated graphics. This prototype laid the early groundwork for both VR and early AR research.&lt;/p&gt;

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

&lt;p&gt;By the 1980s we saw the first commercial VR systems and the coining of the term “virtual reality”. In the 2010s, lightweight consumer headsets grew in popularity because of companies like &lt;em&gt;Oculus&lt;/em&gt; who helped bring VR into gaming and consumer markets. Smartphones equipped with powerful processors and cameras popularized AR applications like mobile games and utility tools which also began to arise.&lt;/p&gt;

&lt;h2&gt;
  
  
  AR &amp;amp; VR Today:
&lt;/h2&gt;

&lt;p&gt;Today, AR and VR are both steadily evolving and growing in popularity. Institutions worldwide are integrating AR/VR into their curricula more and more, reshaping classrooms and professional training as we know it. Immersive tools now help students explore difficult concepts firsthand, like virtual chemistry labs, historical simulations and even flight simulators. As of 2024, about 30% of universities offer VR courses, and educational deployments of VR have grown sharply.&lt;/p&gt;

&lt;p&gt;AR and VR are also now valuable in medical training, patient rehabilitation, and surgical planning. For example, AR guided systems have enabled surgeons to overlay imaging data during operations; and VR is used more for therapeutic environments and training scenarios. So both are currently being used as tools to help drive efficiency improvements and skill retention in humans.&lt;/p&gt;

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

&lt;p&gt;As artificial intelligence mature, AR and VR experiences will become more responsive and personalized, possibly blurring the lines between physical and digital interaction. And this is what people want! Immersive technology markets are projected to expand significantly into the 2030s with broader use of lightweight AR glasses and more  advanced VR systems opening new doors in collaboration, remote work, and everyday computing.&lt;/p&gt;

&lt;h2&gt;
  
  
  Sources List:
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;&lt;a href="https://en.wikipedia.org/wiki/Virtual_reality" rel="noopener noreferrer"&gt;https://en.wikipedia.org/wiki/Virtual_reality&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.coursera.org/articles/augmented-reality-vs-virtual-reality" rel="noopener noreferrer"&gt;https://www.coursera.org/articles/augmented-reality-vs-virtual-reality&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.intel.com/content/www/us/en/tech-tips-and-tricks/virtual-reality-vs-augmented-reality.html" rel="noopener noreferrer"&gt;https://www.intel.com/content/www/us/en/tech-tips-and-tricks/virtual-reality-vs-augmented-reality.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://en.wikipedia.org/wiki/Ivan_Sutherland%27s_head-mounted_3D_display" rel="noopener noreferrer"&gt;https://en.wikipedia.org/wiki/Ivan_Sutherland%27s_head-mounted_3D_display&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://virtualspeech.com/blog/history-of-vr" rel="noopener noreferrer"&gt;https://virtualspeech.com/blog/history-of-vr&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://treeview.studio/blog/ar-vr-mr-xr-metaverse-spatial-computing-industry-stats" rel="noopener noreferrer"&gt;https://treeview.studio/blog/ar-vr-mr-xr-metaverse-spatial-computing-industry-stats&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>vr</category>
      <category>javascript</category>
      <category>techtalks</category>
      <category>mixedreality</category>
    </item>
    <item>
      <title>Linux</title>
      <dc:creator>RRARI504</dc:creator>
      <pubDate>Wed, 14 Jan 2026 10:04:00 +0000</pubDate>
      <link>https://dev.to/rrari504/linux-873</link>
      <guid>https://dev.to/rrari504/linux-873</guid>
      <description>&lt;h2&gt;
  
  
  What is Linux?
&lt;/h2&gt;

&lt;p&gt;If you have ever worked with a desktop computer or any type of computing device, you have directly interacted with some software that has to communicate with its hardware. This software is called an &lt;em&gt;operating system&lt;/em&gt;. An operating system is responsible for managing software and hardware resources like memory, files and processing power. It acts as a bridge between the user and a physical device.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Linux&lt;/strong&gt;, a family of open sourced operating systems whose primary languages are C and Assembly, is built around the &lt;strong&gt;Linux Kernel&lt;/strong&gt;. At the core of a computers operating system is the kernel which is a computer program that has total control over everything in that system. The Linux Kernel, created by Linus Torvalds in 1991, manages hardware and when combined with other systems, tools, libraries and user interfaces it creates a full operating system known as a &lt;strong&gt;Linux distribution&lt;/strong&gt; or a '&lt;strong&gt;distro&lt;/strong&gt;'. For example, &lt;strong&gt;Ubuntu&lt;/strong&gt; is a widely used Linux distribution that is known for ease of use and accessibility, which is great for beginners.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr5i4r5aaarqljfmvix9f.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr5i4r5aaarqljfmvix9f.png" alt="Relations" width="800" height="423"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;&lt;strong&gt;Relationship between kernel and distributions like Ubuntu, Fedora, SUSE, etc.&lt;/strong&gt;&lt;/em&gt; &lt;/p&gt;

&lt;p&gt;Linux is described as a '&lt;em&gt;Unix-like&lt;/em&gt;' operating system meaning that it was designed to follow many of the same design principles as &lt;strong&gt;UNIX&lt;/strong&gt;. However, Linux and UNIX are not the same, UNIX systems inspired Linux and by combining UNIX with open sourced development, Linux has became one of the most powerful operating systems today.&lt;/p&gt;

&lt;h2&gt;
  
  
  Operating Systems
&lt;/h2&gt;

&lt;p&gt;Operating systems run on many devices like phones, tablets or computers. Linux is considered one of the most widely used operating systems when it comes to servers, cloud environments and embedded systems but other operating systems rival Linux in different markets. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;MacOS&lt;/strong&gt; - Apples desktop operating system for Macs.&lt;br&gt;
&lt;strong&gt;IOS&lt;/strong&gt; - Apples mobile operating system for iPhones.&lt;br&gt;
&lt;strong&gt;Android&lt;/strong&gt; - Googles mobile operating system that is also based on the Linux Kernel and powers a majority of smartphones and tablets globally. &lt;br&gt;
&lt;strong&gt;Windows&lt;/strong&gt; - Microsofts desktop and laptop operating system.&lt;/p&gt;

&lt;p&gt;For mobile devices, Android and IOS are the top operating systems in that area. Android is known as the most widely used mobile operating system because it is able to run on devices for a wide range of manufactures and it is customizable. IOS however is known for the opposite; being tightly knit with Apple hardware but offering flush user experience. &lt;/p&gt;

&lt;p&gt;For desktop and laptop devices, Windows and macOS are the top operating systems. Windows has wide hardware capabilities and great software support and is often used in businesses and schools. Windows is also widely considered as the best operating system based on market share beating out all other competition by a very large margin. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1p04x9c1wibkmxo3ocse.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1p04x9c1wibkmxo3ocse.png" alt="Operating Systems" width="800" height="412"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;&lt;strong&gt;Desktop, Mobile &amp;amp; Tablet Operating System Market Share Worldwide Jan. 2012 - Jan. 2026&lt;/strong&gt;&lt;/em&gt; &lt;/p&gt;

&lt;p&gt;Although not being a heavy hitter like Android or Windows, Linux stands out in a different way when compared to more popular operating systems. Linux plays a hug role in modern computing powering a majority of web servers and cloud infrastructure. Its popularity stems from it being secure, stable and low maintenance and unlike Windows or macOs, Linux gives you full control over your system making it very customizable. This is why Linux is used to power a lot of the internets infrastructure and why Android itself relies on the Linux Kernel. &lt;/p&gt;

&lt;h2&gt;
  
  
  Linux in the Real World
&lt;/h2&gt;

&lt;p&gt;Linux is not a common choice for everyday novice consumers on desktop and mobile devices but Linux is very relevant behind the scenes in technology with nearly half of all cloud instances using Linux environments and the reason is for the advantages it offers. This makes it almost necessary to learn Linux if you want to be a cloud engineer today. Major cloud providers, &lt;strong&gt;Amazon Web Services&lt;/strong&gt;, &lt;strong&gt;Google Cloud&lt;/strong&gt;, &lt;strong&gt;Microsoft Azure&lt;/strong&gt;, all use Linux to power their VM's and services. Linux operating system market also reached USD 21.97 billion in 2024 and is projected to grow to USD 99.69 billion by 2032 &lt;a href="https://commandlinux.com/statistics/linux-server-market-share/" rel="noopener noreferrer"&gt;8&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Since about the end 2024 all of the top 500 supercomputers in the world run on Linux and 64.9% of government data centers worldwide report Linux adoption &lt;a href="https://cloudhandbook.substack.com/p/why-you-must-learn-linux-as-a-cloud" rel="noopener noreferrer"&gt;7&lt;/a&gt;. Linux has the capacity to power some of the busiest websites and services because of its stability and ability to handle heavy traffic. &lt;/p&gt;

&lt;p&gt;Linux also has a command-line interface that supports scripting tools and has access to freely available development packages. Overall, Linux is not the best operating system on the market for everyday use but it does offer a specific set of tools and control that is lacking with closed-sourced platforms.&lt;/p&gt;

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

&lt;p&gt;For modern day work flows, many software developers and IT professionals prefer Linux for creating, testing, and deploying software. Linux’s open-source platform allows developers and organizations to build highly customizable and efficient systems that make up the root of modern internet. For these reasons, Linux is one of the most influential and widely used operating systems in the world today.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;SOURCES:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;a href="https://en.wikipedia.org/wiki/Kernel_(operating_system)" rel="noopener noreferrer"&gt;https://en.wikipedia.org/wiki/Kernel_(operating_system)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.geeksforgeeks.org/operating-systems/operating-systems/" rel="noopener noreferrer"&gt;https://www.geeksforgeeks.org/operating-systems/operating-systems/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://subscription.packtpub.com/book/cloud-and-networking/9781837630691/2/ch02lvl1sec04/introducing-the-linux-operating-system/" rel="noopener noreferrer"&gt;https://subscription.packtpub.com/book/cloud-and-networking/9781837630691/2/ch02lvl1sec04/introducing-the-linux-operating-system/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.reallinuxuser.com/what-is-a-linux-distribution/" rel="noopener noreferrer"&gt;https://www.reallinuxuser.com/what-is-a-linux-distribution/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.geeksforgeeks.org/linux-unix/linux-vs-unix/" rel="noopener noreferrer"&gt;https://www.geeksforgeeks.org/linux-unix/linux-vs-unix/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://gs.statcounter.com/os-market-share/desktop-mobile-tablet/worldwide/#monthly-201201-202601-bar" rel="noopener noreferrer"&gt;https://gs.statcounter.com/os-market-share/desktop-mobile-tablet/worldwide/#monthly-201201-202601-bar&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://cloudhandbook.substack.com/p/why-you-must-learn-linux-as-a-cloud" rel="noopener noreferrer"&gt;https://cloudhandbook.substack.com/p/why-you-must-learn-linux-as-a-cloud&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://commandlinux.com/statistics/linux-server-market-share/" rel="noopener noreferrer"&gt;https://commandlinux.com/statistics/linux-server-market-share/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.ibm.com/think/topics/linux-kernel" rel="noopener noreferrer"&gt;https://www.ibm.com/think/topics/linux-kernel&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>linux</category>
      <category>programming</category>
    </item>
    <item>
      <title>Typescript</title>
      <dc:creator>RRARI504</dc:creator>
      <pubDate>Mon, 17 Nov 2025 14:55:49 +0000</pubDate>
      <link>https://dev.to/rrari504/typescript-j50</link>
      <guid>https://dev.to/rrari504/typescript-j50</guid>
      <description>&lt;h2&gt;
  
  
  &lt;em&gt;What is Typescript&lt;/em&gt;:
&lt;/h2&gt;

&lt;p&gt;Typescript is a language that builds on top of Javascript offering everything that Javascript offers but with an additional layer. "&lt;em&gt;&lt;strong&gt;TypeScript is JavaScript with syntax for types.&lt;/strong&gt;&lt;/em&gt;" (1). Every  Javascript program is a Typescript program and comes with features like static types, interfaces and more. In essence typescript enhances Javascript and makes development more reliable for developers. &lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;em&gt;How does typescript work?&lt;/em&gt;:
&lt;/h2&gt;

&lt;p&gt;The way typescript works is that it is transpiled into Javascript via the TypeScript compiler (TSC). When this happens Typescript performs a type check which analyzes your code and points out errors like incorrect variable types or invalid function calls. This helps devs catch issues before the code runs which in turn reduces bugs and debug time. &lt;/p&gt;

&lt;p&gt;Some of the key capabilities include &lt;strong&gt;optional static typing, type reference, interfaces, type aliases and classes with visibility modifiers &amp;amp; compiling to Javascript for browser and server use&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where did it come from?
&lt;/h2&gt;

&lt;p&gt;Typescript was created by &lt;em&gt;&lt;strong&gt;Microsoft&lt;/strong&gt;&lt;/em&gt; and released to the public in 2012 with version 0.8 after about 2 years of internal development. &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;We released the first public preview of TypeScript last month, and have been excited to see the great reaction from the developer community.  Since the preview, we’ve seen an influx of suggestions and bug reports, integration into various build and testing tools, and declare files for a variety of existing JavaScript libraries (3).&lt;/strong&gt;  &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;When released, it was very popular in the coding community. Miguel de Icaza, a software engineer for Microsoft who has made multiple open-sourced programs; loved Typescript when it was released but criticized the lack of a more mature integrated development environment (IDE). With support only for &lt;strong&gt;Microsoft's Visual Studio&lt;/strong&gt;, which was unavailable for Linux and macOS at the time. &lt;br&gt;
&lt;strong&gt;As of April 2021 there is support in other IDEs and text editors, including Emacs, Vim, WebStorm, Atom and Microsoft's own Visual Studio Code.(4)&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Typescript was made to help with Javascript scalability because as web applications began to grow in popularity and size developers needed different tools to help with structure and error detection; and Typescript added these tools that were not native to Javascript.&lt;/p&gt;
&lt;h2&gt;
  
  
  How does it look?
&lt;/h2&gt;

&lt;p&gt;Here are some basic examples of how Typescript will look and work in your code: &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;BASIC TYPES&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;const message: string = "Hello World";
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Here, &lt;strong&gt;message&lt;/strong&gt; must be a string and Typescript will enforce this by preventing assignments of other types. For example if you try this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;message = 42;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;To ensure variables stay consistent with their declared type, Typescript will say, &lt;code&gt;'The number is not assignable to the type 'string'.&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;INTERFACE&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;interface Person {
  name: string;
  age: number;
}

function greet(person: Person) {
  return "Hello " + person.name;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The &lt;strong&gt;Person&lt;/strong&gt; interface defines the required "shape" of a person object. The function &lt;strong&gt;greet&lt;/strong&gt; requires any argument to match &lt;code&gt;{ name: string, age: number }.&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;greet({ name: "Alice" });
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If greet was called this way TypeScript would enforce all required properties to exist with the correct types; here the property 'age' is missing in type.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;CLASSES&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;class Point {
  x: number;
  y: number;

  constructor(x: number, y: number) {
    this.x = x;
    this.y = y;
  }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The class &lt;strong&gt;Point&lt;/strong&gt; defines two properties: x and y, which are both numbers. The constructor requires two numeric arguments to be passed in.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const p = new Point("hello", 10);
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If the point class was invoked this way you would get an error from Typescript to ensure that class instances follow their declared structure: &lt;code&gt;Argument of type 'string' is not assignable to parameter of type 'number'.&lt;/code&gt;&lt;/p&gt;

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

&lt;p&gt;Typescript helps scale Javascript code by adding, useful tools, clear structure and type safety. Javascript is still a very dynamic and loved language, but typescript continues to grow in popularity throughout the tech community. Bug prevention, improves dev productivity and makes application development smoother overall; for modern web development Typescript offers a more reliable process than Javascript making it value choice for your next project.&lt;/p&gt;

&lt;h2&gt;
  
  
  RESOURCES:
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;&lt;a href="https://www.typescriptlang.org/" rel="noopener noreferrer"&gt;https://www.typescriptlang.org/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.typescriptlang.org/docs/handbook/typescript-in-5-minutes.html" rel="noopener noreferrer"&gt;https://www.typescriptlang.org/docs/handbook/typescript-in-5-minutes.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://devblogs.microsoft.com/typescript/announcing-typescript-0-8-1/" rel="noopener noreferrer"&gt;https://devblogs.microsoft.com/typescript/announcing-typescript-0-8-1/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://en.wikipedia.org/wiki/TypeScript" rel="noopener noreferrer"&gt;https://en.wikipedia.org/wiki/TypeScript&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://en.wikipedia.org/wiki/Miguel_de_Icaza" rel="noopener noreferrer"&gt;https://en.wikipedia.org/wiki/Miguel_de_Icaza&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>webdev</category>
      <category>learning</category>
      <category>typescript</category>
      <category>javascript</category>
    </item>
    <item>
      <title>SVG</title>
      <dc:creator>RRARI504</dc:creator>
      <pubDate>Mon, 10 Nov 2025 14:49:38 +0000</pubDate>
      <link>https://dev.to/rrari504/svg-5eob</link>
      <guid>https://dev.to/rrari504/svg-5eob</guid>
      <description>&lt;h2&gt;
  
  
  What is SVG?
&lt;/h2&gt;

&lt;p&gt;SVG stands for '&lt;strong&gt;Scalable Vector Graphics&lt;/strong&gt;' and it is a markup language/file format for describing two-dimensional vector graphics. An SVG is used to define &lt;strong&gt;vector-based&lt;/strong&gt; graphics meaning visual images are created directly from geometric shapes and other graphic primitives in XML rather than as a grid of pixels. Yes, XML not XLM.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;XLM defines a set of rules for encoding documents in a format that is both human-readable and machine-readable.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The SVG specification is an 'open standard' maintained by the &lt;strong&gt;World Wide Web Consortium&lt;/strong&gt;, which is the main international standards organization for the World Wide Web, since 1999.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why is SVG useful?
&lt;/h2&gt;

&lt;p&gt;An SVG is perfect for web graphics like icons and logos; it creates images that stay sharp at any size; this makes them ideal for modern web design. Pixel based images like like JPGs or PNGs, will lose quality when zoomed in or displayed on high-resolution screens. Since SVGs are made from mathematical shapes they never lose quality when zoomed and remain perfectly sharp. &lt;/p&gt;

&lt;p&gt;'&lt;strong&gt;Example of SVG vs. PNG file quality&lt;/strong&gt;' &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1au6fq0hn4ei7yo4q8ji.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1au6fq0hn4ei7yo4q8ji.png" alt=" " width="640" height="352"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Since SVGs are written in code so they’re flexible, and work seamlessly across most devices making them a very affective format for digital graphics. They also have small file sizes, which helps websites load faster, and they can be easily edited or styled with CSS or JavaScript. This allows for animated effects and different interactive effects.&lt;/p&gt;

&lt;h2&gt;
  
  
  SVG vs. Others
&lt;/h2&gt;

&lt;p&gt;Formats like PNG and JPEG are stored as '&lt;strong&gt;raster images&lt;/strong&gt;' which are great for photos and detailed imagery gradients. But for simple graphics (icons, logos) that need to be used at many sizes, raster images are not ideal. To display an image, raster formats stores a grid of pixels called a bitmap. Each pixel's color and location are stored in the file, causing multiple of the versions of the same file needing to be stored. SVG on the other hand, is a useful and flexible format for producing graphics that scale beautifully and integrate with different web technologies displays.&lt;/p&gt;

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

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

&lt;p&gt;In conclusion, SVGs aren’t perfect for every situation but they are very useful. They have become a cornerstone of modern web design for their ability to scale infinitely without losing quality; as well as their responsive design and high-resolution displays. When working with complex images—such as photographs, formats like PNG or JPEG are still the better choice for dealing with  textures, or detailed gradients. SVG files are relatively small, but when dealing with outside formats that aren't icons or logos, SVG files can start to get really big. In short SVG thrives in precision, scalability, and interactivity and are a standard used by web developers and graphic designers.&lt;/p&gt;

&lt;h2&gt;
  
  
  Sources:
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;&lt;a href="https://www.w3schools.com/graphics/svg_intro.asp" rel="noopener noreferrer"&gt;https://www.w3schools.com/graphics/svg_intro.asp&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.svgai.org/blog/guides/what-is-svg" rel="noopener noreferrer"&gt;https://www.svgai.org/blog/guides/what-is-svg&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.howtogeek.com/710334/what-is-an-svg-file-and-how-do-i-open-one" rel="noopener noreferrer"&gt;https://www.howtogeek.com/710334/what-is-an-svg-file-and-how-do-i-open-one&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://en.wikipedia.org/wiki/World_Wide_Web_Consortium" rel="noopener noreferrer"&gt;https://en.wikipedia.org/wiki/World_Wide_Web_Consortium&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://en.wikipedia.org/wiki/Vector_graphics" rel="noopener noreferrer"&gt;https://en.wikipedia.org/wiki/Vector_graphics&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.w3schools.com/xml/xml_whatis.asp" rel="noopener noreferrer"&gt;https://www.w3schools.com/xml/xml_whatis.asp&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.w3.org/Graphics/SVG/About" rel="noopener noreferrer"&gt;https://www.w3.org/Graphics/SVG/About&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://seekvectors.com/blog/advantages-of-svg-files-in-web-design-scalable-efficient" rel="noopener noreferrer"&gt;https://seekvectors.com/blog/advantages-of-svg-files-in-web-design-scalable-efficient&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://svgpal.com/blog/10-key-advantages-svg-files" rel="noopener noreferrer"&gt;https://svgpal.com/blog/10-key-advantages-svg-files&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.pagecloud.com/blog/web-images-png-vs-jpg-vs-gif-vs-svg" rel="noopener noreferrer"&gt;https://www.pagecloud.com/blog/web-images-png-vs-jpg-vs-gif-vs-svg&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.howtogeek.com/710334/what-is-an-svg-file-and-how-do-i-open-one" rel="noopener noreferrer"&gt;https://www.howtogeek.com/710334/what-is-an-svg-file-and-how-do-i-open-one&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>javascript</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Why Material UI ?</title>
      <dc:creator>RRARI504</dc:creator>
      <pubDate>Mon, 03 Nov 2025 08:31:51 +0000</pubDate>
      <link>https://dev.to/rrari504/why-material-ui--1n72</link>
      <guid>https://dev.to/rrari504/why-material-ui--1n72</guid>
      <description>&lt;h2&gt;
  
  
  What is Material UI?
&lt;/h2&gt;

&lt;p&gt;Imagine a well-designed component library that is based off of Google's 'Material Design', offers a set of premade React components that are customizable and theme based and easy to use. That is what Material UI offers. &lt;/p&gt;

&lt;p&gt;Material UI, other wise known as MUI, is a popular open sourced React UI framework. It helps accelerate development by giving developers a library of react components that are easily customizable and that implement Google's Material Design guidelines. So, instead of having to build out UI components from scratch like buttons or forms, Material UI gives them to you in easy to read blocks of code that can be added to your personal project. &lt;/p&gt;

&lt;h2&gt;
  
  
  Why is MUI popular?
&lt;/h2&gt;

&lt;p&gt;There are many reasons why MUI is such a popular framework; here are a few reasons; Material UI uses Google's Material design system which helps teams bring to life seamless user interfaces for &lt;em&gt;Android&lt;/em&gt;, &lt;em&gt;IOS&lt;/em&gt; and the web. Developed in 2014, the goal was to help let developers build intuitive, consistent, cross-platform UI's. &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;'&lt;strong&gt;The purpose of developing Material Design was to create a novel visual language, synthesizing the classic principles of good design with the innovation and possibility of technology and science&lt;/strong&gt;'(2).&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This alone saves a developer time since they wouldn't have to design components themselves for project. They could use premade components that are up to par with todays standards.&lt;/p&gt;

&lt;p&gt;Another reason why MUI is popular is because of how it is integrated with &lt;strong&gt;React&lt;/strong&gt;. It is basically built for React applications so it coincides with parts of Reacts already made architecture like state and props making development even easier. &lt;/p&gt;

&lt;p&gt;Material UI also is know for having really good and easy to read documentation. Part of the reason for this is because MUI has a large active community of devs behind it. So, help and sources with how  MUI functions and how to use it are readily available through resources like &lt;em&gt;Stack Overflow&lt;/em&gt;, etc.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is React?
&lt;/h2&gt;

&lt;p&gt;Lets briefly explain the foundation of which Material UI is build on, React. &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;'&lt;strong&gt;React is a JavaScript library (maintained by Facebook/Meta) for building user interfaces, especially single-page applications. One of its core ideas is building UIs by composing “components” — reusable pieces of UI logic and markup&lt;/strong&gt;' (5).&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;A react component is basically a JavaScript function, or class, that returns some UI or "JSX" and accepts “props” (inputs) and manages “state” (internal data) and lifecycle. So, when using Material UI you would be using the 'React component model' and it would go something like this; you import a component like a button, you use it in your JSX like &lt;code&gt;&amp;lt;Button variant="contained"&amp;gt;Click me&amp;lt;/Button&amp;gt;&lt;/code&gt;, you can then pass props and style it via theme/customization. If you were making a React application and wanted to use a button from Material UI, this is what the code would look like...&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import * as React from 'react';
import Stack from '@mui/material/Stack';
import Button from '@mui/material/Button';

export default function BasicButtons() {
  return (
    &amp;lt;Stack spacing={2} direction="row"&amp;gt;
      &amp;lt;Button variant="text"&amp;gt;Text&amp;lt;/Button&amp;gt;
      &amp;lt;Button variant="contained"&amp;gt;Contained&amp;lt;/Button&amp;gt;
      &amp;lt;Button variant="outlined"&amp;gt;Outlined&amp;lt;/Button&amp;gt;
    &amp;lt;/Stack&amp;gt;
  );
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This component displays three Material UI buttons side by side, each showing a different visual variant to demonstrate how MUI styling works.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4vc73tabh0id0qo87rmk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F4vc73tabh0id0qo87rmk.png" alt=" " width="800" height="89"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This one component imports the React library, which is required to create and use components in JSX. It imports the Stack and Button components from Material UI; the button component supports different variants like “text,” “contained,” and “outlined.” Lastly, it defines and exports a React functional component named 'BasicButtons', so it can be imported and used in other files. BasicButtons creates a horizontal row layout (direction="row") with spacing of 2. Inside the stack are three buttons, each with a different style as seen above. &lt;/p&gt;

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

&lt;p&gt;In a time where we want things as optimized as possible, MUI is a powerful, modern day tool that can help developers streamline their projects with speed and a consistent polished design. MUI is a go to for building responsive web interfaces, specifically for React applications, and shows that quality doesn't come at the cost of productivity. &lt;/p&gt;

&lt;h2&gt;
  
  
  Sources
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;&lt;a href="https://mui.com/material-ui/" rel="noopener noreferrer"&gt;https://mui.com/material-ui/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://m2.material.io/design/introduction#principles" rel="noopener noreferrer"&gt;https://m2.material.io/design/introduction#principles&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://en.wikipedia.org/wiki/Material_Design" rel="noopener noreferrer"&gt;https://en.wikipedia.org/wiki/Material_Design&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://how.dev/answers/what-is-material-ui-in-react" rel="noopener noreferrer"&gt;https://how.dev/answers/what-is-material-ui-in-react&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://react.dev/learn/your-first-component" rel="noopener noreferrer"&gt;https://react.dev/learn/your-first-component&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://mui.com/system/getting-started/" rel="noopener noreferrer"&gt;https://mui.com/system/getting-started/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.animaapp.com/blog/industry/what-is-material-design-and-why-should-you-use-it/" rel="noopener noreferrer"&gt;https://www.animaapp.com/blog/industry/what-is-material-design-and-why-should-you-use-it/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://blog.42mate.com/chakra-ui-vs-material-ui-vs-tailwindcss-for-reactjs/" rel="noopener noreferrer"&gt;https://blog.42mate.com/chakra-ui-vs-material-ui-vs-tailwindcss-for-reactjs/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://mui.com/material-ui/react-button/" rel="noopener noreferrer"&gt;https://mui.com/material-ui/react-button/&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Javascript Electron</title>
      <dc:creator>RRARI504</dc:creator>
      <pubDate>Mon, 08 Sep 2025 14:48:23 +0000</pubDate>
      <link>https://dev.to/rrari504/javascript-electron-3p5k</link>
      <guid>https://dev.to/rrari504/javascript-electron-3p5k</guid>
      <description>&lt;h2&gt;
  
  
  What is an Electron?
&lt;/h2&gt;

&lt;p&gt;Electron is a framework that lets developers build cross-platform web applications. It utilizes HTML, CSS and Javascript to make web applications between Windows, macOS and Linux operating systems. So, the same skills used to build static websites can be used to make full desktop applications; giving developers a toolkit to use and one code base. It is used today in many popular applications like Discord, Slack and Microsoft just to name a few. On the frontend Electron user interfaces can be made regularly just like a webpage using frameworks like Angular, React or whatever framework you choose. The backend is handled by the main process which runs Node.js and is like a server behind the scenes. &lt;/p&gt;

&lt;h2&gt;
  
  
  Building from scratch
&lt;/h2&gt;

&lt;p&gt;Lets get started with the process of putting together a minimal Electron application from scratch to see how it actually works.&lt;br&gt;
In Visual Studio Code make sure you have Node.js installed. If you do not, run this command to install it:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npm install -g npm
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Once this command is ran you can make sure Node.js was installed correctly by checking the node version. You should see something like this when using the -v flag.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ node -v
v16.14.2
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Next, you can use npm init to initialize an npm package and also you can create a directory for your actual Electron app and cd into this directory using these commands:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npm init
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This command sets up a new npm package and creates a package.json file in the current directory.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;mkdir my-electron-app 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;cd my-electron-app
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;These commands make a new directory called 'my-electron-app' and uses cd (current directory) to go into that newly made directory. &lt;/p&gt;

&lt;p&gt;Now, that you have successfully set up your package.json you can change the 'rules' section in the package.json to make the entry point main.js. Then you can use this command to actually install Electron into your app's devDependencies.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npm install electron --save-dev
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;After installing Electron your package.json should look like this.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;{
  "name": "my-electron-app",
  "version": "1.0.0",
  "description": "Hello World!",
  "main": "main.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" &amp;amp;&amp;amp; exit 1"
  },
  "author": "Jane Doe",
  "license": "MIT",
  "devDependencies": {
    "electron": "23.1.3"
  }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now you should add a &lt;strong&gt;.gitignore&lt;/strong&gt; into your project's root folder to avoid committing your project's &lt;strong&gt;node_modules&lt;/strong&gt; folder. The gitignore file allows you to control what files and directories you don't want to be tracked with git. At this point you are ready to actually run your Electron application. As stated before the backend of Electron is handled by the &lt;strong&gt;main&lt;/strong&gt; process which runs Node.js and is like a server behind the scenes. To ensure your main process entry point is configured correctly, create a main.js in the root directory of your project and add this simple line of code.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;console.log('Hello from &amp;lt;name&amp;gt;')
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now you can run the electron command and the scripts field to your package.json by adding &lt;strong&gt;electron .&lt;/strong&gt; to the start command in your package.json. This command will tell the Electron executable to look for the main script in the current directory and run it in dev mode. Your package.json should look like this now.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;{
  "name": "my-electron-app",
  "version": "1.0.0",
  "description": "Hello World!",
  "main": "main.js",
  "scripts": {
    "start": "electron .",
    "test": "echo \"Error: no test specified\" &amp;amp;&amp;amp; exit 1"
  },
  "author": "Jane Doe",
  "license": "MIT",
  "devDependencies": {
    "electron": "23.1.3"
  }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npm start 
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now, running this start command should print 'Hello from ' in your terminal and this lets you know that your first line of code with Electron is being executed and now you've successfully set up a minimal Electron app and verified that it's running. Next, you can start creating user interfaces with HTML and load that into a native window. &lt;/p&gt;

&lt;h2&gt;
  
  
  Electron vs. React
&lt;/h2&gt;

&lt;h2&gt;
  
  
  Onward
&lt;/h2&gt;

&lt;p&gt;This concludes the basic set up tutorial for an Electron application.  It is minimal but functional and the foundation of a cross-platform desktop application using web technologies like HTML, CSS and Javascript. From here, you can start exploring more advanced features in Electron like inter-process communication, integrating frontend frameworks like React and packaging your app for distribution.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.electronjs.org/docs/latest/" rel="noopener noreferrer"&gt;https://www.electronjs.org/docs/latest/&lt;/a&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>electron</category>
      <category>programming</category>
    </item>
    <item>
      <title>Selenium</title>
      <dc:creator>RRARI504</dc:creator>
      <pubDate>Mon, 28 Jul 2025 11:48:43 +0000</pubDate>
      <link>https://dev.to/rrari504/selenium-285m</link>
      <guid>https://dev.to/rrari504/selenium-285m</guid>
      <description>&lt;p&gt;This blog is a slight introduction into what &lt;strong&gt;Selenium&lt;/strong&gt; is. No, not the chemical element denoted with the symbol 'Se'  and the atomic number 34; &lt;strong&gt;&lt;em&gt;Selenium testing&lt;/em&gt;&lt;/strong&gt;, an open-source suite of tools designed for automating web browsers for testing purposes. &lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;Timeline&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Before diving into what Selenium testing is and how it works, we need to understand how this tool even came about. An engineer, Jason Huggins, working for the global technology consultancy, &lt;strong&gt;&lt;em&gt;Thoughtworks&lt;/em&gt;&lt;/strong&gt;, had an idea to make a JavaScript tool called &lt;strong&gt;&lt;em&gt;JavaScriptTestRunner&lt;/em&gt;&lt;/strong&gt;. The reason behind the tool was to help him while he was developing an application that needed frequent testing. The goal of the tool was to avoid manual testing by automating user actions like clicking and typing.&lt;/p&gt;

&lt;p&gt;JavaScriptTestRunner was later named &lt;strong&gt;&lt;em&gt;Selenium Core&lt;/em&gt;&lt;/strong&gt; and became a tool that was used internally at Thoughtworks, that was popular among Huggins colleagues; but it came with a couple of draw backs. One, it was not an open sourced framework &lt;a href="https://www.ibm.com/think/topics/open-source" rel="noopener noreferrer"&gt;3&lt;/a&gt; and two, it could not interact with different domains because of the 'same origin policy' &lt;a href="https://developer.mozilla.org/en-US/docs/Web/Security/Same-origin_policy" rel="noopener noreferrer"&gt;2&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Around 2005, &lt;strong&gt;&lt;em&gt;Selenium Remote Control&lt;/em&gt;&lt;/strong&gt; was made to solve this same origin policy issue. It made it so that test could be written in different programming languages and "run across different browsers using a server to inject JavaScript" &lt;a href="https://katalon.com/resources-center/blog/selenium-testing-tutorial" rel="noopener noreferrer"&gt;1&lt;/a&gt;. This, along with open sourcing allowed for the tool to grow in use and it eventually made it over to Google. &lt;/p&gt;

&lt;p&gt;In 2007 Huggins joined Google and continued to stabilize Selenium RC while another developer at Thoughtworks made an even better browser automation tool which was called &lt;strong&gt;&lt;em&gt;WebDriver&lt;/em&gt;&lt;/strong&gt;. It had a higher level API and did not rely on using a server to inject Javascript. &lt;a href="https://www.selenium.dev/history/" rel="noopener noreferrer"&gt;4&lt;/a&gt; The two projects later merged and became &lt;strong&gt;&lt;em&gt;Selenium WebDriver&lt;/em&gt;&lt;/strong&gt;. Since then, multiple other open source projects have started around Selenium, and Selenium Web Driver is a key component in these projects and what they do. &lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;Components&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Today, the Selenium Suite has four main components. &lt;strong&gt;&lt;em&gt;Selenium IDE&lt;/em&gt;&lt;/strong&gt;, &lt;strong&gt;&lt;em&gt;Selenium RC&lt;/em&gt;&lt;/strong&gt;, &lt;strong&gt;&lt;em&gt;Selenium WebDriver&lt;/em&gt;&lt;/strong&gt; and &lt;strong&gt;&lt;em&gt;Selenium Grid&lt;/em&gt;&lt;/strong&gt;. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Selenium IDE is a browser extension for &lt;strong&gt;Chrome&lt;/strong&gt; and &lt;strong&gt;Firefox&lt;/strong&gt; that can records user interactions in the browser like selections or clicks. These interaction can then be played back as test scripts generated in &lt;strong&gt;&lt;em&gt;Selenese&lt;/em&gt;&lt;/strong&gt; &lt;a href="https://www.tutorialspoint.com/what-is-selenese" rel="noopener noreferrer"&gt;7&lt;/a&gt; and then can be exported in various programming languages like Javascript, Python, C#, etc.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Selenium RC or 'remote control', writes automated tests for a web application in any programming language. So it works with the browser and acts as a Javascript event handler between your code and the browser. (Comes with limitations)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Selenium Web Driver can directly communicate with the browser via browser-specific native methods and eliminates the limitations that Selenium RC had.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Selenium Grid allows for 'parallel distributed test execution across multiple machines' so it allows for cross platform testing and cross browser testing. This reduces the time needed to run and complete a test suite.&lt;br&gt;&lt;br&gt;
&lt;a href="https://www.youtube.com/watch?v=nvrXp13eiCU" rel="noopener noreferrer"&gt;In depth breakdown of components&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  How to use Selenium
&lt;/h2&gt;

&lt;p&gt;To use Selenium you will first need to install it with npm in your computers terminals using this command &lt;a href="https://www.selenium.dev/selenium/docs/api/javascript/" rel="noopener noreferrer"&gt;10&lt;/a&gt;.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npm install selenium-webdriver
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You will then need to download components that will enable automation on whatever major browser you are using. For &lt;strong&gt;&lt;em&gt;Apple's Safari&lt;/em&gt;&lt;/strong&gt; browser the following command can be ran in the to enable automation in the – /usr/bin/safaridriver path.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;safaridriver --enable
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now, lets see an example of writing a text script using Javascript. This test code will go to &lt;strong&gt;Google's&lt;/strong&gt; home page and send its title as an output in the console &lt;a href="https://www.browserstack.com/guide/automation-using-selenium-javascript" rel="noopener noreferrer"&gt;9&lt;/a&gt;. This will happen automatically whenever you run this code so you do not have to go through the hassle of switch tabs, typing and clicking.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;var webdriver = require(‘selenium-webdriver’);

var browser_name = new webdriver.Builder();

withCapabilities(webdriver.Capabilities.safari()).build();

browser.get(‘http:/www.google.com’);

var promise = browser_name.getTitle();

promise.then(function(title) 

{

console.log(title);

});

browser.quit();
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






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

&lt;p&gt;Selenium WebDriver is exceptional in making automation testing easier and more efficient. Allowing the user to use languages like Javascript, Python, etc. to make test scripts becomes useful in situation where new features have to be added to an application every week. This flexibility is why Selenium is widely used for automated user interface testing of applications. Automated testing makes for more frequent test and more productivity, so it is very useful to web developers.   &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; &lt;a href="https://katalon.com/resources-center/blog/selenium-testing-tutorial" rel="noopener noreferrer"&gt;https://katalon.com/resources-center/blog/selenium-testing-tutorial&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt; &lt;a href="https://developer.mozilla.org/en-US/docs/Web/Security/Same-origin_policy" rel="noopener noreferrer"&gt;https://developer.mozilla.org/en-US/docs/Web/Security/Same-origin_policy&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.ibm.com/think/topics/open-source" rel="noopener noreferrer"&gt;https://www.ibm.com/think/topics/open-source&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.selenium.dev/history/" rel="noopener noreferrer"&gt;https://www.selenium.dev/history/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://en.wikipedia.org/wiki/Selenium_(software)" rel="noopener noreferrer"&gt;https://en.wikipedia.org/wiki/Selenium_(software)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.browserstack.com/selenium" rel="noopener noreferrer"&gt;https://www.browserstack.com/selenium&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.tutorialspoint.com/what-is-selenese" rel="noopener noreferrer"&gt;https://www.tutorialspoint.com/what-is-selenese&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.browserstack.com/selenium" rel="noopener noreferrer"&gt;https://www.browserstack.com/selenium&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.browserstack.com/guide/automation-using-selenium-javascript" rel="noopener noreferrer"&gt;https://www.browserstack.com/guide/automation-using-selenium-javascript&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.selenium.dev/selenium/docs/api/javascript/" rel="noopener noreferrer"&gt;https://www.selenium.dev/selenium/docs/api/javascript/&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>javascript</category>
      <category>testing</category>
    </item>
    <item>
      <title>Microsoft Azure</title>
      <dc:creator>RRARI504</dc:creator>
      <pubDate>Mon, 21 Jul 2025 13:52:36 +0000</pubDate>
      <link>https://dev.to/rrari504/microsoft-azure-5ell</link>
      <guid>https://dev.to/rrari504/microsoft-azure-5ell</guid>
      <description>&lt;p&gt;Microsoft is a tech company that has became influential in the computer age via software like Windows, a family of operating systems developed by Microsoft. Today I will explain what Microsoft Azure is and why it is used. &lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;em&gt;Azure?&lt;/em&gt;
&lt;/h2&gt;

&lt;p&gt;Microsoft Azure or just Azure, is a cloud platform used for assisting you in building, deploying, and managing 'innovative solutions'. What does that mean? Before Microsoft switched over to cloud computing, they primarily used 'on-premise' data centers which are in house data centers that are maintained by a company privately. Cloud computing can be defined as the delivery of different computing services and Azure is a public cloud computing platform that can be used by you or other companies. &lt;/p&gt;




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




&lt;p&gt;Azure gives businesses access to a network of data centers maintained by Microsoft; meaning it is a public cloud so all hardware, software, and supporting infrastructure is owned by Microsoft (the cloud provider). Businesses utilizing Azure can reduce the time and expense associated with maintaining on-premise data centers infrastructure, helping to optimize IT costs and much more.&lt;/p&gt;

&lt;p&gt;Azure comes with more than 200 products and services across a global network of data centers and has over 400 secure data centers in over 70 regions, meaning it is a very large cloud provider. Some services include analytics, storage, databases and networking over the internet, “the cloud”, offering faster innovation and cost-effective scalability. So, there is no need for purchasing, managing, and maintaining a local server, Azure lets you host your application in the cloud.&lt;/p&gt;

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




&lt;p&gt;&lt;em&gt;&lt;strong&gt;Cloud Services&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Azure offers four different forms of cloud computing; &lt;em&gt;Infrastructure as a Service&lt;/em&gt; (IaaS): renting servers, networking, storage and more on a pay as you go basis. &lt;em&gt;Platform as a Service&lt;/em&gt; (PaaS): build and deploy applications without managing infrastructure; using Microsofts environment for developing applications. &lt;em&gt;Software as a Service&lt;/em&gt; (SaaS): consume Microsoft’s cloud apps like &lt;em&gt;Office 365&lt;/em&gt;. And finally &lt;em&gt;sever-less computing&lt;/em&gt; which is focused on application functionality allowing the cloud provider to handle set up and service management.&lt;/p&gt;

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




&lt;h2&gt;
  
  
  &lt;em&gt;Why use?&lt;/em&gt;
&lt;/h2&gt;

&lt;p&gt;Using Azure as a cloud platform can be beneficial and multiple ways; Azure offers benefits like saving money; this is because Azure can  eliminate the money needed to run on site data centers. Azure offers speed and scalability meaning resources are delivered at the right moment when businesses need them. Productivity and performance are other benefits of Azure  allowing for the biggest cloud computing services in the world to use Azure knowing that it is up to the most latest generation. Lastly, and most importantly, Azure offers reliability as well as security being flexible enough to back up data in almost every language and utilizing advanced site recovery.&lt;/p&gt;

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




&lt;p&gt;There are many different types of cloud services like this but today around 95% of Fortune 500 companies trust Azure to help them run their businesses with around 350,000 businesses using Azure for their computing needs. Azure currently helps businesses scale and make money by optimizing their operation, managing their environments and providing scalability and accelerated developer productivity. &lt;/p&gt;

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




&lt;p&gt;Application development is streamlined with tools like GitHub, Visual Studio, and Azure DevOps which is a suite of tools also designed by Microsoft, to help software development and the delivery process. Right now Amazon Web Services (AWS), Microsoft Azure and Google Cloud Platform are the top cloud service providers; Azure stands out by offering Hybrid cloud services and stands to be a versatile, secure, and scalable cloud platform for you to use to help build, deploy, and manage different applications and services. &lt;/p&gt;







&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.hpe.com/us/en/what-is/on-premises-vs-cloud.html" rel="noopener noreferrer"&gt;https://www.hpe.com/us/en/what-is/on-premises-vs-cloud.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://azure.microsoft.com/en-us/resources/cloud-computing-dictionary/what-is-azure" rel="noopener noreferrer"&gt;https://azure.microsoft.com/en-us/resources/cloud-computing-dictionary/what-is-azure&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://azure.microsoft.com/en-us/resources/cloud-computing-dictionary/what-is-cloud-computing" rel="noopener noreferrer"&gt;https://azure.microsoft.com/en-us/resources/cloud-computing-dictionary/what-is-cloud-computing&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.techtarget.com/searchcloudcomputing/definition/Windows-Azure?utm" rel="noopener noreferrer"&gt;https://www.techtarget.com/searchcloudcomputing/definition/Windows-Azure?utm&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://en.wikipedia.org/wiki/Microsoft_Azure?utm_source" rel="noopener noreferrer"&gt;https://en.wikipedia.org/wiki/Microsoft_Azure?utm_source&lt;/a&gt;
-&lt;a href="https://intercept.cloud/en-gb/blogs/what-is-microsoft-azure" rel="noopener noreferrer"&gt;https://intercept.cloud/en-gb/blogs/what-is-microsoft-azure&lt;/a&gt;?
-&lt;a href="https://learn.microsoft.com/en-us/azure/devops/user-guide/what-is-azure-devops?view=azure-devops" rel="noopener noreferrer"&gt;https://learn.microsoft.com/en-us/azure/devops/user-guide/what-is-azure-devops?view=azure-devops&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="https://ccbtechnology.com/what-microsoft-azure-is-and-why-it-matters/" rel="noopener noreferrer"&gt;https://ccbtechnology.com/what-microsoft-azure-is-and-why-it-matters/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://medium.com/@mbellinaso/microsoft-azure-services-overview-and-notes-cfb30b95d8e" rel="noopener noreferrer"&gt;https://medium.com/@mbellinaso/microsoft-azure-services-overview-and-notes-cfb30b95d8e&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://blog.grantmcgregor.co.uk/everything-you-need-to-know-about-migrating-to-azure" rel="noopener noreferrer"&gt;https://blog.grantmcgregor.co.uk/everything-you-need-to-know-about-migrating-to-azure&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://usesignhouse.com/blog/microsoft-azure-stats/" rel="noopener noreferrer"&gt;https://usesignhouse.com/blog/microsoft-azure-stats/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://radixweb.com/blog/microsoft-azure-migration-guide" rel="noopener noreferrer"&gt;https://radixweb.com/blog/microsoft-azure-migration-guide&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://promx.net/en/2021/04/four-reasons-why-companies-should-work-with-microsoft-azure/" rel="noopener noreferrer"&gt;https://promx.net/en/2021/04/four-reasons-why-companies-should-work-with-microsoft-azure/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.cloudzero.com/blog/cloud-service-providers/" rel="noopener noreferrer"&gt;https://www.cloudzero.com/blog/cloud-service-providers/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>microsoft</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Mobile Development</title>
      <dc:creator>RRARI504</dc:creator>
      <pubDate>Mon, 14 Jul 2025 14:08:40 +0000</pubDate>
      <link>https://dev.to/rrari504/mobile-development-3i03</link>
      <guid>https://dev.to/rrari504/mobile-development-3i03</guid>
      <description>&lt;p&gt;It is safe to say that software development in general is an area of information technology that has a wide range of fields that are rapidly growing. Today, I will introduce you to the field of Mobile Web Development.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;_ Mobile vs. Web_&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Mobile Web Development and Web Development are two completely different branches of software engineering both requiring a different skillset, but the overall goal of both is to develop useful and functional applications for the user. The platform that these applications are built on, and for, are how these two branches differ the most. Web development is platform independent while mobile developers have to utilize platform specific languages to create there applications. &lt;/p&gt;

&lt;p&gt;Web developers usually focus on making website or web-apps that can be accessed on any device that has a web browser. People in this field most most commonly utilize languages like Javascript, CSS and HTML to make there web application look good and work efficiently.&lt;/p&gt;

&lt;p&gt;Mobile developers utilize these languages as well but they also use platform specific languages, usually for developing apps for the Android and IOS operating systems.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;&lt;em&gt;Platform Specific?&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;What does platform specific mean? A platform specific language builds apps natively for an operating system like the IOS operating system for Apple or the Android operating system for Google. These native applications are developed using Software Developing Kits(SDK's). An SDK is basically a toolbox that is given by a platform that has everything a developer would need to build an application, on that specific platform, efficiently. The contents of an SDK usually include compilers, debuggers, sample code and anything else a developer may need to help interact with a certain devices hardware and software. For example, Apple has the IOS software developing kit (Xcode) which supports &lt;em&gt;Swift&lt;/em&gt; and &lt;em&gt;Objective - C&lt;/em&gt;. Google has the Android software developing kit (Android Studio) that supports &lt;em&gt;Java&lt;/em&gt; and &lt;em&gt;Kotlin&lt;/em&gt;. Both allow developers to use specific device features to help work with the operating systems components. &lt;/p&gt;




&lt;p&gt;&lt;strong&gt;_Android_and IOS&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The original language for Android was &lt;em&gt;Java&lt;/em&gt; and it is still used today but &lt;em&gt;Kotlin&lt;/em&gt; is the preferred language for Android application development now. The original language for IOS is &lt;em&gt;Objective-C&lt;/em&gt; and is still considered a standard for Apple today but another language, &lt;em&gt;Swift&lt;/em&gt;, was introduced by Apple in 2014 and is used widely today in Apple application development. &lt;/p&gt;

&lt;p&gt;Both &lt;em&gt;Kotlin&lt;/em&gt; and &lt;em&gt;Swift&lt;/em&gt; were made to simplify mobile app development with easier to read code, better performance and a more modernized look compared to older languages. &lt;br&gt;
Here are two simple examples of greet functions in both languages to show the difference between them then and now. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;For Apple OS:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Objective - C&lt;/em&gt;&lt;br&gt;
&lt;code&gt;- (void)greetUser:(NSString *)name {&lt;br&gt;
    NSLog(@"Hello, %@!", name);&lt;br&gt;
}&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Swift&lt;/em&gt;&lt;br&gt;
&lt;code&gt;func getUser(name: String){&lt;br&gt;
print("Hello, \(name)!")&lt;br&gt;
}&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;For Android OS:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Java&lt;/em&gt;&lt;br&gt;
&lt;code&gt;public void greetUser(String name) {&lt;br&gt;
    System.out.println("Hello, " + name + "!");&lt;br&gt;
}&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Kotlin&lt;/em&gt;&lt;br&gt;
&lt;code&gt;fun greetUser(name: String) {&lt;br&gt;
    println("Hello, $name!")&lt;br&gt;
}&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Today, many developers choose to develop apps for Android over IOS mainly because a large majority of smart phones run Android OS; but also because the Google Play Store (The official app store for android devices), has less restrictions than the Apple App Store which would make for less draw backs for developers during the application submission process. &lt;/p&gt;




&lt;p&gt;&lt;strong&gt;Mobile&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;While both web developers and mobile developers strive to make more efficient and and user friendly applications for the user, the way in which these applications are made is unique to one another. Mobile developers have to integrate both user experience and platform specific languages to develop optimal apps for device specific performance. This allows for a bit more range of creative freedom in the development process, and it allows for the ability to add built in functionality for things like the camera, which is on most mobile devices but you wont see on every web desktop. Mobile devices are also more widely used on a daily basis, so the function of these applications need to be seamless. &lt;/p&gt;




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

&lt;p&gt;From idea to launch, the process to make a mobile app usually encompasses three main goals: User interface(UI) and user experience(UX), backend development and quality assurance. I wont break down the full deployment process of making a mobile app; but these three main goals significantly effect the success and cost of an app. The cost of fully developing even a simple mobile app from idea to actually seeing it in an app store is around $10,000 - $100,000+.  Today, most people (users), spend a lot of time on mobile devices so there is a demand to make engaging apps as well as innovative ones; so mobile development is more than just a skill but a chance to creatively shape how we all communicate and interact with each other.&lt;/p&gt;




&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.linkedin.com/pulse/mobile-vs-web-development-2024-key-differences-weaoc" rel="noopener noreferrer"&gt;https://www.linkedin.com/pulse/mobile-vs-web-development-2024-key-differences-weaoc&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.ibm.com/think/topics/mobile-application-development" rel="noopener noreferrer"&gt;https://www.ibm.com/think/topics/mobile-application-development&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.geeksforgeeks.org/mobile-computing/what-is-mobile-app-development-process/" rel="noopener noreferrer"&gt;https://www.geeksforgeeks.org/mobile-computing/what-is-mobile-app-development-process/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://reactnative.dev/docs/platform-specific-code" rel="noopener noreferrer"&gt;https://reactnative.dev/docs/platform-specific-code&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.synapseindia.com/article/native-vs-hybrid-vs-pwa" rel="noopener noreferrer"&gt;https://www.synapseindia.com/article/native-vs-hybrid-vs-pwa&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.w3schools.com/kotlin/trykotlin.php?filename=demo_output" rel="noopener noreferrer"&gt;https://www.w3schools.com/kotlin/trykotlin.php?filename=demo_output&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://en.wikipedia.org/wiki/Android_software_development" rel="noopener noreferrer"&gt;https://en.wikipedia.org/wiki/Android_software_development&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.cometchat.com/blog/ios-swift-objective-c-comparison" rel="noopener noreferrer"&gt;https://www.cometchat.com/blog/ios-swift-objective-c-comparison&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://thisisglance.com/blog/apple-store-vs-google-play-store" rel="noopener noreferrer"&gt;https://thisisglance.com/blog/apple-store-vs-google-play-store&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.ibm.com/think/topics/api-vs-sdk" rel="noopener noreferrer"&gt;https://www.ibm.com/think/topics/api-vs-sdk&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://developer.apple.com/xcode/" rel="noopener noreferrer"&gt;https://developer.apple.com/xcode/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://developer.android.com/studio" rel="noopener noreferrer"&gt;https://developer.android.com/studio&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>programming</category>
      <category>javascript</category>
      <category>mobile</category>
    </item>
    <item>
      <title>Recursion</title>
      <dc:creator>RRARI504</dc:creator>
      <pubDate>Fri, 06 Jun 2025 14:54:21 +0000</pubDate>
      <link>https://dev.to/rrari504/recursion-3632</link>
      <guid>https://dev.to/rrari504/recursion-3632</guid>
      <description>&lt;h2&gt;
  
  
  What is recursion? What is recursion? What is recursion? What is recursion? What is recursion? What is recursion? What is recursion?
&lt;/h2&gt;

&lt;p&gt;Simply put, recursion is when a function calls its self within its function body until it hits a base case. The function will continue to call itself until it gets to the output it wants. It may not sound complex, but recursion is a difficult topic to wrap your head around when you first encounter it, but like most subjects in Javascript, the best way to learn, is to code. In this blog I will help you gain a better understanding of what recursion is.&lt;br&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz6dc79dm8wr9vxnxjjs5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz6dc79dm8wr9vxnxjjs5.png" alt=" " width="800" height="325"&gt;&lt;/a&gt;Here is an example of the most bare bones recursive function you can make.&lt;br&gt;
Though this is not the usual set up, it demonstrates how simple a recursive function could be. Usually, a recursion is set up with a base case and a recursive case. The base case acts as the stop condition and without it the function will continue to run over and over again; here you can run into something called an 'infinite recursion' and this can crash your tests or browser. The recursive case is where the function actually calls itself. Here is another example of a recursive function I pulled from a problem I worked on in bootcamp. &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Franvv7l7acyp5ema685v.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Franvv7l7acyp5ema685v.png" alt=" " width="800" height="362"&gt;&lt;/a&gt;Our function takes some number and finds the factorial of it. &lt;br&gt;
In our function we can see the base case that stops the function from continuing ('&lt;em&gt;if the number is negative return null&lt;/em&gt;'). This means the last value returned should be some positive integer. But before that happens we must hit our recursive case; ('&lt;em&gt;if number is zero or one return one else return the number times the invocation of calling 'factorial' on the number - 1&lt;/em&gt;'). So, the function will take a number and will multiply it by itself minus one until it gets to the number one. A simple problem but it shows the capabilities of using a recursive function. &lt;/p&gt;

&lt;h2&gt;
  
  
  Why use recursion, or not?
&lt;/h2&gt;

&lt;p&gt;Recursion is useful when you are doing a task over and over again. Like the previous example where you had to multiply multiple times but didn't necessarily want to use a loop. Not to mention recursive functions are able to solve deep nested problems with less code so the readability of the code is much simpler. But, 'recursive implementation does consume more memory than non-recursive ones' meaning slower execution time for code blocks. This is because there are a lot more steps involved with the implementation. Here is a link to a video that helped me understand the call stack and its limit in regards to recursion.[(&lt;a href="https://www.youtube.com/watch?v=mMEmNX6aW_k)" rel="noopener noreferrer"&gt;https://www.youtube.com/watch?v=mMEmNX6aW_k)&lt;/a&gt;]&lt;/p&gt;

&lt;h2&gt;
  
  
  Understanding Recursion
&lt;/h2&gt;

&lt;p&gt;Another demonstration of recursion I find useful is Sierpiński triangle. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F02gibzfqvlnotl8tsxjg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F02gibzfqvlnotl8tsxjg.png" alt=" " width="800" height="130"&gt;&lt;/a&gt;This triangle 'is fractal with the overall shape of an equilateral triangle, subdivided recursively into smaller equilateral triangles.' This is a good visual on how recursion works. Recursive functions call them self multiple times to 'solve solve smaller instances of a problem'; that is the same thing happening here with the triangle. As you zoom in, the triangles get smaller but they maintain the original shape of the triangle.&lt;/p&gt;

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

&lt;p&gt;In conclusion, recursion is a very useful too when applied to the correct problems. It can feel challenging to understand the moving parts of recursion, but there are real-life practical examples that can help you with understanding the use behind this power problem solving tool.&lt;/p&gt;

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