<?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: Noa</title>
    <description>The latest articles on DEV Community by Noa (@itsnoa04).</description>
    <link>https://dev.to/itsnoa04</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%2F540950%2F5c1eb690-9e18-4e60-b062-008677f1e91b.jpeg</url>
      <title>DEV Community: Noa</title>
      <link>https://dev.to/itsnoa04</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/itsnoa04"/>
    <language>en</language>
    <item>
      <title>What is array.reduce() in JavaScript ?</title>
      <dc:creator>Noa</dc:creator>
      <pubDate>Mon, 29 Aug 2022 18:01:06 +0000</pubDate>
      <link>https://dev.to/itsnoa04/what-is-arrayreduce-in-javascript--5d93</link>
      <guid>https://dev.to/itsnoa04/what-is-arrayreduce-in-javascript--5d93</guid>
      <description>&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--HVU52p6B--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1xzd5p9bpq7uxov3xjls.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--HVU52p6B--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1xzd5p9bpq7uxov3xjls.png" alt="Reduce example overview" width="724" height="324"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Reduce is an array method that can convert or reduce the data in an array and return a single output.&lt;/p&gt;

&lt;h2&gt;
  
  
  Syntax:
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight jsx"&gt;&lt;code&gt;&lt;span class="nx"&gt;array&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;reduce&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="nx"&gt;reducerfunction&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="nx"&gt;accumilator&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;item&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;index&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;array&lt;/span&gt; &lt;span class="p"&gt;),&lt;/span&gt; &lt;span class="nx"&gt;initalAccumilatorValue&lt;/span&gt; &lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;accumulator&lt;/strong&gt; is a variable that will be changed in each loop through the array.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;item&lt;/strong&gt; refers to the current item in the array.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;index&lt;/strong&gt; refers to the index of the current item in the array.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;array&lt;/strong&gt; refers to the initial array.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;reducer function&lt;/strong&gt; shows how the accumulator is modified.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Where would we use &lt;strong&gt;reduce&lt;/strong&gt;?
&lt;/h2&gt;

&lt;p&gt;Consider we have an input array containing information about users, ie name, age, etc, and had to group them by age.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight jsx"&gt;&lt;code&gt;    &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;array&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;
        &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;John&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;age&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;20&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt; &lt;span class="p"&gt;},&lt;/span&gt;
        &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Mary&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;age&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;20&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt; &lt;span class="p"&gt;},&lt;/span&gt;
        &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Peter&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;age&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;50&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt; &lt;span class="p"&gt;},&lt;/span&gt;
        &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="na"&gt;name&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Sally&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="na"&gt;age&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;50&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt; &lt;span class="p"&gt;},&lt;/span&gt;
    &lt;span class="p"&gt;];&lt;/span&gt;

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

&lt;/div&gt;



&lt;p&gt;if we had to group them by age.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight jsx"&gt;&lt;code&gt;    &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="mi"&gt;20&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;John&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Mary&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;
        &lt;span class="mi"&gt;50&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Peter&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Sally&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;

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

&lt;/div&gt;



&lt;p&gt;we could use the &lt;strong&gt;array.reduce()&lt;/strong&gt; method.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight jsx"&gt;&lt;code&gt;
    &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;result&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;array&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;reduce&lt;/span&gt;&lt;span class="p"&gt;((&lt;/span&gt;&lt;span class="nx"&gt;acc&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;curr&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;!&lt;/span&gt;&lt;span class="nx"&gt;acc&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;curr&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;age&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="c1"&gt;//chk if age exist in accumilator&lt;/span&gt;
        &lt;span class="nx"&gt;acc&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;curr&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;age&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[];&lt;/span&gt; &lt;span class="c1"&gt;//createing empty array at accumelator.age&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
    &lt;span class="nx"&gt;acc&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;curr&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;age&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="nx"&gt;push&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;curr&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;name&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="c1"&gt;// pushing name to appropriate accumulator.age&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;acc&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="p"&gt;},&lt;/span&gt; &lt;span class="p"&gt;{});&lt;/span&gt;

    &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;result&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

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

&lt;/div&gt;



&lt;h2&gt;
  
  
  How does it work?
&lt;/h2&gt;

&lt;p&gt;when we call the array.reduce() method we pass two parameters.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;accumulator function &lt;/li&gt;
&lt;li&gt;initial value for the accumulator&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The &lt;strong&gt;accumulator function&lt;/strong&gt; defines what action needs to take place to a value( the accumulator ) so that the desired final reduced value may be obtained&lt;/p&gt;

&lt;p&gt;in the above example&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--D1jAX_Ce--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zedmjqz6unv32e3pkunq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--D1jAX_Ce--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zedmjqz6unv32e3pkunq.png" alt="Reduce example explanation" width="880" height="418"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Every element is passed one by one to the accumulator function, Which checks if the age of the given person is not already present in the accumulator, If that is the case, Then it creates a new property for the person's age and assigns an empty list to it. later the person's name is pushed to the property where their age is present ( either newly created or previously present )&lt;/p&gt;

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

&lt;p&gt;The &lt;code&gt;array.reduce()&lt;/code&gt; method is a very powerful array method that could simplify complex loop logic and provide a much more intuitive programming experience to the developer and the reader.&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>beginners</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>My absolute worst Linux Experience | Daily Driving Fedora 35 | One Week Review</title>
      <dc:creator>Noa</dc:creator>
      <pubDate>Sat, 19 Mar 2022 01:51:28 +0000</pubDate>
      <link>https://dev.to/itsnoa04/my-absolute-worst-linux-experience-daily-driving-fedora-35-one-week-review-4l5l</link>
      <guid>https://dev.to/itsnoa04/my-absolute-worst-linux-experience-daily-driving-fedora-35-one-week-review-4l5l</guid>
      <description>&lt;p&gt;A Week ago on march 13, I started to daily drive Fedora on my personal laptop. Here are a few of my thoughts.&lt;/p&gt;

&lt;h1&gt;
  
  
  Niche Problems
&lt;/h1&gt;

&lt;p&gt;Here are a few problems I encountered that were more or less specific for my machine. &lt;/p&gt;

&lt;h2&gt;
  
  
  Slow Internet
&lt;/h2&gt;

&lt;p&gt;On the Second day, Out of nowhere my fedora machine started to get very low internet speeds in the terminal. It did get fixed with a reboot but was very frustrating to deal with nonetheless.&lt;/p&gt;

&lt;h2&gt;
  
  
  straight up doesn't boot when it fells like it
&lt;/h2&gt;

&lt;p&gt;After a few days from my initial post and a system update ( sudo dnf update ). the gnome environment doesn't boot up anymore. it seemed to be a gnome-NVIDIA problem.&lt;/p&gt;

&lt;h1&gt;
  
  
  Productivity Problems
&lt;/h1&gt;

&lt;h2&gt;
  
  
  Spotify keeps crashing
&lt;/h2&gt;

&lt;p&gt;I installed the flatpak version of spotify and it did not show in the menu until the next reboot, Even then spotify kept crashing whenever an ad would play.&lt;/p&gt;

&lt;h2&gt;
  
  
  No Voice On Discord Streams
&lt;/h2&gt;

&lt;p&gt;The other day me and a few friends were gonna watch a movie via discord , but my screen share did not work. After a bit of googling turns out Discord Stream Audio does not support Linux.&lt;/p&gt;

&lt;h1&gt;
  
  
  Gaming
&lt;/h1&gt;

&lt;p&gt;It just did not work.&lt;/p&gt;

&lt;h1&gt;
  
  
  Conclusion
&lt;/h1&gt;

&lt;p&gt;I could have probably found workarounds for all these problems but fedora feels like i'm always jumping through hoops. I wouldn't recommend it for production purposes but if u have free time give it a go.&lt;/p&gt;

&lt;p&gt;I might move back to windows 11 or if there is another OS you would like me to cheek out, let me know. &lt;/p&gt;

&lt;p&gt;That's it for now, see you guys later&lt;/p&gt;

&lt;p&gt;have a nice day.&lt;/p&gt;

</description>
      <category>linux</category>
      <category>fedora</category>
      <category>productivity</category>
      <category>gaming</category>
    </item>
    <item>
      <title>Daily Driving Fedora - Day ONE</title>
      <dc:creator>Noa</dc:creator>
      <pubDate>Sun, 13 Mar 2022 16:28:34 +0000</pubDate>
      <link>https://dev.to/itsnoa04/daily-driving-fedora-day-one-p43</link>
      <guid>https://dev.to/itsnoa04/daily-driving-fedora-day-one-p43</guid>
      <description>&lt;p&gt;For a while now I have been toying with the idea of moving to Linux but there was always two factors that held me back:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Gaming&lt;/li&gt;
&lt;li&gt;Adobe&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Gaming on Linux was an absolute nightmare the last time i tried it a year ago but ever since the launch of steam deck a lot of light is being shined on the Linux gaming community, So hopefully my experience this time wont be as bad as the first.&lt;/p&gt;

&lt;p&gt;I am planning to get over the adobe hurdle by running a windows virtual machine using vmware player. &lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/SDrbNgM6gXk"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;The reason i didn't use KVM and qemu is that i use a laptop and have a [mux-less graphics architecture]{&lt;a href="https://forum.level1techs.com/t/implications-of-muxed-muxless-laptops-for-gpu-passthrough/129165"&gt;https://forum.level1techs.com/t/implications-of-muxed-muxless-laptops-for-gpu-passthrough/129165&lt;/a&gt;}&lt;/p&gt;

&lt;p&gt;The reason i chose fedora over arch or debian is that arch is usually filled with bugs that would take me time to fix and debian's packages are quite out of date, also i wanted to test out gnome 42 when it comes out.&lt;/p&gt;

&lt;h1&gt;
  
  
  Aims
&lt;/h1&gt;

&lt;p&gt;So, for the first day I just wanted to install fedora and also style the gnome desktop a bit.&lt;/p&gt;

&lt;h1&gt;
  
  
  Installation
&lt;/h1&gt;

&lt;p&gt;The USB creation and installation went as smooth as i expected although the fedora anaconda installer is not as intuitive as something like calamaries.&lt;/p&gt;

&lt;h1&gt;
  
  
  First boot
&lt;/h1&gt;

&lt;p&gt;After the installation, there was quite a bit of updates which i had to go through. Overall everything was smooth, I did have a slight audio problem after the update but it was easily fixed with a restart.&lt;/p&gt;

&lt;h1&gt;
  
  
  Styling
&lt;/h1&gt;

&lt;p&gt;The next thing on the list was styling, this included installing a gtk theme , flatpak theme , icon theme , cursors , fonts and terminal prompt.&lt;/p&gt;

&lt;h2&gt;
  
  
  Theme ( GTK + Flatpak )
&lt;/h2&gt;

&lt;p&gt;for the GTK theme i used a gtk4 backport, as i mentioned before i am very excited for the gnome 42 with gtk4 release therefore this seemed like a logical path to follow.&lt;/p&gt;

&lt;p&gt;you can find the theme in [thid reddit post]{&lt;a href="https://www.reddit.com/r/Fedora/comments/sd8v4o/guide_gnome_42_on_gnome_4041_while_you_wait_for/"&gt;https://www.reddit.com/r/Fedora/comments/sd8v4o/guide_gnome_42_on_gnome_4041_while_you_wait_for/&lt;/a&gt;}&lt;/p&gt;

&lt;p&gt;I also got it to install on flatpak with [stylepak]{&lt;a href="https://github.com/refi64/stylepak"&gt;https://github.com/refi64/stylepak&lt;/a&gt;}.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--zGaLFrNk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/petfrjjzqtwx366223g9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--zGaLFrNk--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/petfrjjzqtwx366223g9.png" alt="Image description" width="880" height="306"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Icons + cursor
&lt;/h2&gt;

&lt;p&gt;for the icons I used the [Whitesur icon theme]{&lt;a href="https://github.com/vinceliuice/WhiteSur-icon-theme"&gt;https://github.com/vinceliuice/WhiteSur-icon-theme&lt;/a&gt;} because i really like the macos icons with their 3D effects, overall it just looks kinda cool.&lt;/p&gt;

&lt;p&gt;for the cursors i used the [macos cursor set]{&lt;a href="https://www.gnome-look.org/p/1148748/"&gt;https://www.gnome-look.org/p/1148748/&lt;/a&gt;} to match the icons&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s---rY5Ma79--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5yjenqb801e3l838ugvj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s---rY5Ma79--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5yjenqb801e3l838ugvj.png" alt="Image description" width="880" height="243"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Terminal + Font
&lt;/h2&gt;

&lt;p&gt;As my terminal emulator i use [Hyper]{}, a terminal emulator made in javascript. it is not the fastest out there but it is just my preference. I might move to something a bit faster later on. For my terminal prompt i use [starship]{&lt;a href="https://starship.rs/"&gt;https://starship.rs/&lt;/a&gt;}. I will be writing a detailed article on starship later.&lt;/p&gt;

&lt;p&gt;In the fonts face i use jetbrains Mono for the terminal.&lt;br&gt;
I am thinking of useing apple fonts for the interface as i am already useing mac icons and cursor.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--zRSr2mw_--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/w47001jsz8nnh3pw1fmc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--zRSr2mw_--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/w47001jsz8nnh3pw1fmc.png" alt="Image description" width="880" height="495"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclution
&lt;/h2&gt;

&lt;p&gt;Overall im happy with how my set up turned out. I did do a bit more tweaking with extentions and configs later, I will try to share these tweaks later on.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--fkuZKOQp--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5s38k0evf70zizrh2jhg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--fkuZKOQp--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5s38k0evf70zizrh2jhg.png" alt="Image description" width="880" height="495"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;With that said hope you guys have a great day. Bye :)&lt;/p&gt;

</description>
      <category>linux</category>
      <category>devjournal</category>
      <category>productivity</category>
      <category>fedora</category>
    </item>
    <item>
      <title>SUBTEXT - DEEPGRAM X DEV HACKATHON SUBMISSION. [ innovative ideas ]</title>
      <dc:creator>Noa</dc:creator>
      <pubDate>Fri, 11 Mar 2022 11:15:19 +0000</pubDate>
      <link>https://dev.to/itsnoa04/subtext-deepgram-x-dev-hackathon-submission-innovative-ideas--2hla</link>
      <guid>https://dev.to/itsnoa04/subtext-deepgram-x-dev-hackathon-submission-innovative-ideas--2hla</guid>
      <description>&lt;h3&gt;
  
  
  Introduction
&lt;/h3&gt;

&lt;p&gt;The DEV hackathons are always a great way to get your name out in the community, but due to the unfortunate timing of my exams ( high school ), I thought I wouldn't be able to participate but after reading the article I was glad to know that there was an innovative ideas category in the hackathon. I have never heard of Deepgram before but I do have a surface level understanding of how text-to-speech works. For any other participant taking part in the hackathon, Feel free to use my idea for your project provided it is not breaking any rules.&lt;/p&gt;

&lt;h3&gt;
  
  
  My Deepgram Use-Case
&lt;/h3&gt;

&lt;p&gt;I wanted to show one of foreign friend a movie in my native language but since the movie was old so there was no subtitles available. That is where it hit me, imagine A Video player that transcribes the audio from videos and create subtitles and also uses translation to convert the subtitles into English or whatever language.&lt;/p&gt;

&lt;h3&gt;
  
  
  Dive into Details
&lt;/h3&gt;

&lt;p&gt;Have you ever watched an old video with lots of background noise making it hard to hear what is being said. or wanted to watch a foreign movie but no English subtitles are available, If you have you are the ideal target for my deepgram use case. &lt;/p&gt;

&lt;p&gt;the audio of the video file could be transcribed by directly passing it to the text-to-speech API , Translation could also be achieved as deepgram offers multiple language support and the returned text could be translated to English or whatever language by the google translation API.&lt;/p&gt;

&lt;h3&gt;
  
  
  Conclusion
&lt;/h3&gt;

&lt;p&gt;As I have mentioned in the beginning of the post any participants can freely use my idea for their project provided it is not breaking any rules. &lt;/p&gt;

&lt;p&gt;I think hackathons are a great way to spread the joy of programming and to provide awareness about the power of programming. This will be my only entry for the hackathon as I have my exams going on and have to provide my concentration towards that. &lt;/p&gt;

&lt;p&gt;I am also planning to create more posts on the topics of React, JavaScript, Linux and much more on dev and beyond after my exams, so stay tuned for that.&lt;/p&gt;

&lt;p&gt;With that said, that's all for now. &lt;/p&gt;

&lt;blockquote&gt;
&lt;/blockquote&gt;

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