<?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: Adeola Fadeyi</title>
    <description>The latest articles on DEV Community by Adeola Fadeyi (@adeola_).</description>
    <link>https://dev.to/adeola_</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%2F569085%2F0bbf5035-2a37-490a-8af7-609a7f98ab1d.png</url>
      <title>DEV Community: Adeola Fadeyi</title>
      <link>https://dev.to/adeola_</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/adeola_"/>
    <language>en</language>
    <item>
      <title>Major differences between Web 2.0 and Web 3.0</title>
      <dc:creator>Adeola Fadeyi</dc:creator>
      <pubDate>Wed, 02 Mar 2022 15:43:42 +0000</pubDate>
      <link>https://dev.to/adeola_/major-differences-between-web-20-and-web-30-4p61</link>
      <guid>https://dev.to/adeola_/major-differences-between-web-20-and-web-30-4p61</guid>
      <description>&lt;p&gt;Okay...pause.&lt;/p&gt;

&lt;p&gt;If there's a web 2.0 and web 3.0, then there's got to be a web 1.0 too, right?🤔&lt;br&gt;
Well, yes - there used to be web 1.0.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is Web 1.0?
&lt;/h2&gt;

&lt;p&gt;Back forward to the early 90's and 20's, the internet was just at it's inception and it was called the ARPANET. The military service used it to send encrypted messages over to each other during the cold war. &lt;br&gt;
It later thrived and users consumed static web pages content &lt;strong&gt;without participation.&lt;/strong&gt; It is popularly called "read-only web". The users were mostly &lt;em&gt;readers.&lt;/em&gt;&lt;br&gt;
Web applications like Yahoo and Netscape browser were at the center of this new ecosystem. &lt;/p&gt;

&lt;p&gt;Fast forward to the 20's and now is the dawn of web 2.0.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is web 2.0?
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--PYM-j9mT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/sfxdv8uc25c0bc28zose.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--PYM-j9mT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/sfxdv8uc25c0bc28zose.jpeg" alt="web2 applications image" width="681" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This refers to the advent of web applications that allows users to contribute to a website's content. &lt;br&gt;
Users can interact with a page by liking a content or post, posting a review or tweet and by even creating an account. &lt;br&gt;
It is popularly referred to the "read-write web". This came as a major upgrade to the "web 1.0" static contents, and provides dynamic content based on data collected from the users.&lt;/p&gt;

&lt;p&gt;So in essence, the Facebook feed of a user is going to be a little or totally different from that of another user based on the data collected from the preferences of each user. &lt;br&gt;
Web applications in this internet ecosystem includes; &lt;br&gt;
Social media apps like Instagram, Twitter, amongst others. &lt;br&gt;
And blogging platforms like WordPress, Drupal.&lt;/p&gt;

&lt;p&gt;The client side of this apps is run on powerful technologies like Ajax and JavaScript frameworks.&lt;br&gt;
While the server side is run on powerful software applications like Python, Perl, PHP, Nodejs amongst others.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;It is also worthy to note that some critics claim that web 2.0 doesn't represent a new version of the world wide web, but merely continues to use so called "web 1.0" technologies and concepts, while adding a few features. &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;And now, Web3.0!.&lt;br&gt;
Why is there even a need for the next web?&lt;br&gt;
Why an upgrade?&lt;/p&gt;

&lt;h2&gt;
  
  
  What is Web 3.0?
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--BOhQZa9O--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yofhg5z8e6un4nw6y06y.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--BOhQZa9O--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yofhg5z8e6un4nw6y06y.jpeg" alt="web3 image" width="739" height="415"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This is the era of Internet applications run on distributed and decentralized networks, most common being the blockchain.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;What does this even mean&lt;/em&gt;?🥵&lt;/p&gt;

&lt;p&gt;It only means that instead of data stored on a centralized server i.e the servers provided by these companies, it will be scattered across a computer networks - this in turn limits the power of these companies. Here, the users collectively operate the blockchain, making each user a &lt;em&gt;boss&lt;/em&gt;.&lt;/p&gt;

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

&lt;p&gt;The applications taking this internet ecosystem by storm includes the Bitcoin blockchain, the Ethereum blockchain amongst others.&lt;/p&gt;

&lt;p&gt;In this type of Internet, the users simply creates a single personalized account, thereby creating a public record on the blockchain for every transaction.&lt;/p&gt;

&lt;h2&gt;
  
  
  Key differences between Web 2.0 and Web 3.0
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Web 2.0 is built using software applications like JavaScript frameworks and PHP amongst others for the client side and server side respectively &lt;em&gt;&lt;strong&gt;while&lt;/strong&gt;&lt;/em&gt; Web 3.0 is built using smart contracts - this enables the automation of token based transactions.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Web 2.0 operates on the concept of centralized system &lt;em&gt;&lt;strong&gt;while&lt;/strong&gt;&lt;/em&gt; Web 3.0 operates on distributed and decentralized system/ledgers.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Web 2.0 doesn't afford the users control over their data as a result of the centralized servers &lt;em&gt;&lt;strong&gt;while&lt;/strong&gt;&lt;/em&gt; Web 3.0 gives user the full control over their data.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For educational and engaging Blockchain content, visit;&lt;br&gt;
&lt;a href="https://blockgames.gg"&gt;https://blockgames.gg&lt;/a&gt;,&lt;br&gt;
&lt;a href="https://nestcoin.com"&gt;https://nestcoin.com&lt;/a&gt;,&lt;br&gt;
&lt;a href="https://zuri.team"&gt;https://zuri.team&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Thank you for reading!!🤗&lt;/p&gt;

</description>
      <category>blockchain</category>
      <category>web3</category>
      <category>web2</category>
    </item>
    <item>
      <title>Build a video player with React.</title>
      <dc:creator>Adeola Fadeyi</dc:creator>
      <pubDate>Sat, 16 Oct 2021 21:27:09 +0000</pubDate>
      <link>https://dev.to/hackmamba/build-a-video-player-with-react-24h8</link>
      <guid>https://dev.to/hackmamba/build-a-video-player-with-react-24h8</guid>
      <description>&lt;p&gt;The use of video content on webpages is becoming increasingly popular. Its importance cannot be overestimated as it engages users, and creates a lasting impression in just a few seconds.&lt;br&gt;
It is for this reason that the steps involved in the creation of a video component using React will be discussed in this article.&lt;/p&gt;

&lt;p&gt;The component supports YouTube and Vimeo to allow for the flexibility in its use by users.&lt;/p&gt;
&lt;h2&gt;
  
  
  Sandbox
&lt;/h2&gt;

&lt;p&gt;We completed the entire project on Codesandbox, and you can fork the repo to run it.&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;code&gt;CodeSandbox id="react-videoplayer-f62ej" title="React-Videocomponent"/&amp;gt;&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;h2&gt;
  
  
  Prerequisites/Installation
&lt;/h2&gt;

&lt;p&gt;No advanced requirements are needed. However, a basic knowledge of React installation is required.&lt;/p&gt;

&lt;p&gt;To create a React application, open the terminal window or command prompt and change the directory to the folder where you want to create the application.&lt;/p&gt;

&lt;p&gt;Moreover, an online code editor which supports React can be used.&lt;/p&gt;

&lt;p&gt;Run &lt;code&gt;npx create-react-app react-video-player&lt;/code&gt;  to create the application. &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;The above command installs the create-react-app package into the react-video-player folder of our application. The react-video-player can be given a different name, but should be in lower case.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Change directory to the application folder by running &lt;code&gt;cd react-video-player command&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;After the application has been created, install &lt;code&gt;reactjs-media&lt;/code&gt; from a terminal window to install the application dependencies.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;npm install reactjs-media&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Start the application by running &lt;code&gt;npm start&lt;/code&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Creating the video component
&lt;/h2&gt;

&lt;p&gt;To structure the video player, the video component remains our primary interest. The video component of the reactjs-media involves an effortless process. To do this, the original code in the &lt;code&gt;src/App.jsfolder&lt;/code&gt; is replaced with the snippet below.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;./styles.css&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="c1"&gt;//imports basic styling from the css file.&lt;/span&gt;
&lt;span class="k"&gt;import&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;ReactVideo&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;from&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;reactjs-media&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="c1"&gt;//imports the React video component the reactjs-media dependency.&lt;/span&gt;
&lt;span class="k"&gt;export&lt;/span&gt; &lt;span class="k"&gt;default&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nx"&gt;App&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="c1"&gt;//exports the default app into the index.js for rendering&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="c1"&gt;//defines the properties of the video component&lt;/span&gt;
    &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;div&lt;/span&gt; &lt;span class="nx"&gt;className&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;App&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt; &lt;span class="nx"&gt;style&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{{&lt;/span&gt; &lt;span class="na"&gt;height&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;500&lt;/span&gt; &lt;span class="p"&gt;}}&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;
      &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;h1&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;&lt;span class="nx"&gt;React&lt;/span&gt; &lt;span class="nx"&gt;video&lt;/span&gt; &lt;span class="nx"&gt;player&lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/h1&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;      &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;ReactVideo&lt;/span&gt;
        &lt;span class="nx"&gt;src&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;https://player.vimeo.com/external/527751333.hd.mp4? s=6c0db75ad52213d37e122ed4038c6150997e870e&amp;amp;profile_id=172&amp;amp;oauth2_t oken_id=57447761&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;
        &lt;span class="nx"&gt;autoPlay&lt;/span&gt;
        &lt;span class="nx"&gt;primaryColor&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;blue&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;
        &lt;span class="nx"&gt;poster&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;https://images.pexels.com/photos/7422113/pexels- photo-7422113.jpeg?auto=compress&amp;amp;cs=tinysrgb&amp;amp;dpr=1&amp;amp;w=500&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;
      &lt;span class="o"&gt;/&amp;gt;&lt;/span&gt;
    &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/div&lt;/span&gt;&lt;span class="err"&gt;&amp;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;The audio component could also be created using a similar approach.&lt;/p&gt;

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

&lt;p&gt;In this article, we went through the creation of a video player using a React component that supports YouTube and Vimeo. The application dependencies with the video component which is reactjs-media was installed through npm.&lt;/p&gt;

&lt;p&gt;This article would not be complete without a mention of how this single page application can be authenticated with Auth0.&lt;br&gt;
With Auth0, an authentication API would be integrated into the application in just a couple of steps. To find out how, visit &lt;a href="https://auth0.com/docs/libraries/auth0-react"&gt;https://auth0.com/docs/libraries/auth0-react&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;In addition, the media and other image assets can be stored in the cloud with just a few clicks using Cloudinary. For a detailed overview, visit &lt;a href="https://cloudinary.com/documentation/upload_images"&gt;https://cloudinary.com/documentation/upload_images&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;As the code was run in codesandbox, the images might need to be resized to fit the desktop screen, if it is going to be run from an offline code editor. To resize the images, follow the complete walkthrough on &lt;a href="https://cloudinary.com/blog/cool_tricks_for_resizing_images_in_javascript"&gt;https://cloudinary.com/blog/cool_tricks_for_resizing_images_in_javascript&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Further reading
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://github.com/jim-junior/reactjs-media"&gt;https://github.com/jim-junior/reactjs-media&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/auth0/auth0-react"&gt;https://github.com/auth0/auth0-react&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;Content created for the Hackmamba Jamstack Content Hackathon&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>react</category>
    </item>
  </channel>
</rss>
