<?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: NicolasBiondini</title>
    <description>The latest articles on DEV Community by NicolasBiondini (@nicolasbiondini).</description>
    <link>https://dev.to/nicolasbiondini</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%2F488140%2F5b869275-7278-401d-8ffe-3166fcf1f842.jpeg</url>
      <title>DEV Community: NicolasBiondini</title>
      <link>https://dev.to/nicolasbiondini</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/nicolasbiondini"/>
    <language>en</language>
    <item>
      <title>My Journey at the Polkadot Blockchain Academy's UC Berkeley edition</title>
      <dc:creator>NicolasBiondini</dc:creator>
      <pubDate>Mon, 11 Sep 2023 23:18:44 +0000</pubDate>
      <link>https://dev.to/nicolasbiondini/my-journey-at-the-polkadot-blockchain-academys-uc-berkeley-edition-1c57</link>
      <guid>https://dev.to/nicolasbiondini/my-journey-at-the-polkadot-blockchain-academys-uc-berkeley-edition-1c57</guid>
      <description>&lt;p&gt;In the dynamic realm of blockchain and Web3 technologies, education is the cornerstone of progress. One transformative experience that stands out for me is the Polkadot Blockchain Academy, hosted at &lt;strong&gt;UC Berkeley&lt;/strong&gt;. Having recently graduated from its 3rd edition, I'm eager to share my thoughts on this invaluable program.&lt;/p&gt;

&lt;p&gt;The &lt;strong&gt;Polkadot Blockchain Academy&lt;/strong&gt; is an intensive educational program designed to equip participants with comprehensive knowledge and skills in the field of blockchain technology and Web3 ecosystems. Led by prominent figures in the Polkadot/Kusama community, the academy covers a wide range of topics including cryptography, economics, blockchain architecture, smart contracts, and more. Graduates of this program emerge with the tools and understanding needed to actively contribute to the thriving Web3 ecosystem. The academy's immersive curriculum and access to industry experts make it a pivotal opportunity for anyone seeking to dive deep into the world of blockchain technology.&lt;/p&gt;

&lt;p&gt;In this blog post, I'll be reflecting on my journey through the Polkadot Blockchain Academy at UC Berkeley. From the intensive curriculum to the unparalleled networking opportunities, this program has equipped me with insights that continue to shape my understanding of Web3.&lt;/p&gt;

&lt;p&gt;Join me in this brief exploration of the Polkadot Blockchain Academy and the impact it's had on my journey. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://nicolasbiondini.com/blog/polkadot-blockchain-academy-my-experience"&gt;&lt;strong&gt;Click here to read the full article!&lt;/strong&gt;&lt;br&gt;
&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Completing the academy's 3rd edition was not only a personal milestone, but also a testament to the quality of education provided. The program's blend of academic rigor and real-world applicability sets it apart in the ever-evolving blockchain space.&lt;/p&gt;

</description>
      <category>rust</category>
      <category>web3</category>
      <category>blockchain</category>
      <category>ethereum</category>
    </item>
    <item>
      <title>👨‍💻 FullStack simple tutorial to fetch data and display it</title>
      <dc:creator>NicolasBiondini</dc:creator>
      <pubDate>Fri, 20 May 2022 18:42:24 +0000</pubDate>
      <link>https://dev.to/nicolasbiondini/fullstack-simple-tutorial-to-fetch-data-and-display-it-435m</link>
      <guid>https://dev.to/nicolasbiondini/fullstack-simple-tutorial-to-fetch-data-and-display-it-435m</guid>
      <description>&lt;p&gt;Hi guys! How are you? I wanted to do a post about &lt;strong&gt;how to create a frontend and fetch data from a backend made it with node js and express&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;When I started as a web developer I didn’t understand how that works. &lt;strong&gt;I was really lost&lt;/strong&gt;. I knew that something called the “back-end” was connected with the front-end to give him data, but I didn’t know how it worked. &lt;/p&gt;

&lt;p&gt;After a lot of hours invested in learning, I finally understand that now. But, I know that there are a lot of people struggling with that, so I decided to make this simple tutorial.&lt;/p&gt;

&lt;h1&gt;
  
  
  Making the front-end
&lt;/h1&gt;

&lt;p&gt;Okay, if you are a front-end dev, I think you know how to do this, but, to make this tutorial more complete, I’m going to start with it. &lt;/p&gt;

&lt;p&gt;To start just use create-react-app.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--NFd-MT3v--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dudy6ctj3dsmkajlkgq8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--NFd-MT3v--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dudy6ctj3dsmkajlkgq8.png" alt="Image description" width="880" height="370"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We delete everything on the App.js file and we add this&lt;/p&gt;

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

&lt;p&gt;We start the app with&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="nx"&gt;npm&lt;/span&gt; &lt;span class="nx"&gt;start&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;And on the &lt;a href="http://localhost:3000"&gt;localhost:3000&lt;/a&gt; we are going to have this&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--LTRQYP4x--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/o30smbk26w6560zzaj1h.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--LTRQYP4x--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/o30smbk26w6560zzaj1h.png" alt="Image description" width="880" height="463"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Ok, we are going to let here the front-end and we are going to continue with the back-end. &lt;/p&gt;

&lt;h2&gt;
  
  
  Back-end with node js and Express
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--d-SDpLks--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/g9mzlzmjgf06vrj2atvh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--d-SDpLks--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/g9mzlzmjgf06vrj2atvh.png" alt="Image description" width="880" height="624"&gt;&lt;/a&gt;&lt;br&gt;
I’m going to explain to you what I did. &lt;/p&gt;

&lt;p&gt;On the first line, I just go back to the main project folder. Then I list the folders inside of it. As you can see the only folder there it’s “fetch-data-example”, which is the front-end folder. &lt;br&gt;
Then I create a &lt;strong&gt;new directory&lt;/strong&gt; called “back-end”. &lt;br&gt;
After that, I move into that folder and I run “&lt;strong&gt;npm init -y&lt;/strong&gt;” to create the package.json file. &lt;br&gt;
Then I create an &lt;strong&gt;“app.js” file&lt;/strong&gt;. &lt;br&gt;
And finally, I use “code .” to open &lt;strong&gt;Visual Studio Code&lt;/strong&gt; and start coding. &lt;/p&gt;

&lt;p&gt;Before we start, we need to install some libraries.&lt;/p&gt;

&lt;p&gt;We are going to install &lt;strong&gt;express&lt;/strong&gt; which is a &lt;strong&gt;framework&lt;/strong&gt; for node js designed to build APIs and Web Apps. &lt;/p&gt;

&lt;p&gt;We install it&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--xSHYMKSZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/t4kd8zjyrd1ycpimslge.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--xSHYMKSZ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/t4kd8zjyrd1ycpimslge.png" alt="Image description" width="624" height="390"&gt;&lt;/a&gt;&lt;br&gt;
And we are going to install nodemon as a dev dependency (-D). Nodemon will watch the application and restart the server when we make some changes to the files. &lt;/p&gt;

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

&lt;p&gt;We are going to add a script to the package JSON to start our app on dev mode. &lt;br&gt;
Also, I going to add the “type” property to use “ES modules”.&lt;br&gt;
And this will be our package.json.&lt;/p&gt;

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

&lt;p&gt;Now we are going to open the app.js file and we are going to add some things. &lt;/p&gt;

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

&lt;p&gt;And our console will display&lt;/p&gt;

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

&lt;p&gt;I know, that seems a lot but let me explain it. &lt;br&gt;
First of all, we created a “Server” class. We use the constructor to use the express library and use the class methods. Then we define those methods. &lt;/p&gt;

&lt;p&gt;The last method starts the server on port 3001 and displays the message in the console. &lt;/p&gt;

&lt;p&gt;In the second one, we can add routes. In this example, I just going to add only one route (”/”) to keep it simple. &lt;/p&gt;

&lt;p&gt;The routes refer to how an application’s endpoints (URIs) respond to client requests. &lt;br&gt;
In this example, &lt;strong&gt;our only route is “/”&lt;/strong&gt; and uses the &lt;strong&gt;“GET” method&lt;/strong&gt;. There are a lot of methods like POST, PUT, DELETE, etc (you can see the &lt;a href="https://expressjs.com/en/4x/api.html#app.METHOD"&gt;Express Documentation&lt;/a&gt; for more information). &lt;/p&gt;

&lt;p&gt;The get method receives 2 main properties. The &lt;strong&gt;“path” or URI&lt;/strong&gt; (in this case it’s “/”) and a callback function. This callback function also receives 2 arguments, the “Request” (req) and the “Response” (res).&lt;/p&gt;

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

&lt;p&gt;The &lt;strong&gt;Request&lt;/strong&gt; &lt;strong&gt;has all the information from who sent the request petition&lt;/strong&gt; (the front-end). The &lt;strong&gt;Response’s the way to respond with data to who sent the request petition&lt;/strong&gt;. In this example, we send to the front-end a &lt;strong&gt;JSON with some information&lt;/strong&gt;. What we send it’s an object with a property of “users” who has an array of users. &lt;/p&gt;

&lt;p&gt;So, if we look at &lt;a href="http://localhost:3001"&gt;localhost:3001&lt;/a&gt; we can see this&lt;/p&gt;

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

&lt;p&gt;Congrats!🎉 We have our back-end working, but you still need to know the last concept: &lt;strong&gt;the middleware&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;If you remember, we have 2 middlewares on our &lt;strong&gt;“middleware” method&lt;/strong&gt;&lt;/p&gt;

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

&lt;p&gt;So, what’s middleware? A middleware is &lt;strong&gt;just a function that’s executed before the routes&lt;/strong&gt;. It has 3 arguments: &lt;strong&gt;Request, Response, and next&lt;/strong&gt;.&lt;br&gt;&lt;br&gt;
The first 2 are the same as those of the routes. The new one is “next”. &lt;strong&gt;Next is a function whose work it’s to pass to the next middleware or&lt;/strong&gt;, if there is no one else, &lt;strong&gt;finally to the route&lt;/strong&gt;. If we use middlewares and we don’t use the “next” function, the app will be blocked and &lt;strong&gt;won't return anything&lt;/strong&gt;. &lt;/p&gt;

&lt;p&gt;In this example, I write a simple middleware that just made a console log, so every time that we made a request to the server, on the console we will see this&lt;/p&gt;

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

&lt;p&gt;So, congrats! You have your first back-end app made it with node js and express.&lt;/p&gt;

&lt;h1&gt;
  
  
  Front-end part 2
&lt;/h1&gt;

&lt;p&gt;Now that we have our API ready and working on port 3001 and our front-end ready on port 3000 we can start. &lt;/p&gt;

&lt;p&gt;On the App.js file, we are going to import useState and useEffect from react.&lt;/p&gt;

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

&lt;p&gt;Then we will use “useEffect” and fetch to fetch the data from our API&lt;/p&gt;

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

&lt;p&gt;Every time that the page load is going to trigger the “getData” function who is an async function. This function it’s going to fetch the data, parse it and show it with a console.log. &lt;/p&gt;

&lt;p&gt;But WAIT!, &lt;strong&gt;we don’t receive any data, we have an error.&lt;/strong&gt;&lt;/p&gt;

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

&lt;p&gt;That happened because we forgot to add the cors into the back-end. CORS is an internet protocol. &lt;/p&gt;

&lt;p&gt;You can learn more about CORS &lt;a href="https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  We have to come back to the back-end
&lt;/h2&gt;

&lt;p&gt;Do you remember the middlewares? Well, we have to add one more: the CORS. &lt;br&gt;
Luckily for us, we have a &lt;a href="https://expressjs.com/en/resources/middleware/cors.html"&gt;node js library&lt;/a&gt; for that.&lt;/p&gt;

&lt;p&gt;In our back-end project, we install this&lt;/p&gt;

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

&lt;p&gt;And now our back-end will look like &lt;/p&gt;

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

&lt;h2&gt;
  
  
  Front-end again
&lt;/h2&gt;

&lt;p&gt;Now if we look at the console of our front-end project&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;We finally connect our back-end with our front-end!&lt;/strong&gt; 🎉&lt;/p&gt;

&lt;p&gt;Now we have to display the users on the front-end.&lt;br&gt;
To do that we are going to use “useState”&lt;/p&gt;

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

&lt;p&gt;And now we display the data&lt;/p&gt;

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

&lt;p&gt;Our App.js component will be like this&lt;/p&gt;

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

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

&lt;p&gt;&lt;strong&gt;We did it! 🎉💪🎉&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;That’s it friends! I hope it helps you! &lt;/p&gt;

&lt;p&gt;I leave here the &lt;a href="https://github.com/NicolasBiondini/front-end-tutorial"&gt;front-end repository&lt;/a&gt; and the &lt;a href="https://github.com/NicolasBiondini/back-end-tutorial"&gt;back-end repository&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;Thank you so much for reading this post.&lt;/p&gt;

&lt;p&gt;Let me know in the comment section if you want to see a tutorial with a DB and &lt;strong&gt;deploy this app with docker, docker-compose, and AWS&lt;/strong&gt;.&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>tutorial</category>
      <category>react</category>
      <category>webdev</category>
    </item>
    <item>
      <title>🎉 After 2 years I finally finished my portfolio🎉</title>
      <dc:creator>NicolasBiondini</dc:creator>
      <pubDate>Thu, 19 May 2022 12:59:03 +0000</pubDate>
      <link>https://dev.to/nicolasbiondini/after-2-years-i-finally-finished-my-portfolio-413o</link>
      <guid>https://dev.to/nicolasbiondini/after-2-years-i-finally-finished-my-portfolio-413o</guid>
      <description>&lt;p&gt;Hi guys!👋 How are you? &lt;br&gt;
My name is &lt;strong&gt;Nicolás Biondini&lt;/strong&gt;, I’m 23 and I'm a Front-End Developer. &lt;/p&gt;

&lt;p&gt;I've always been &lt;strong&gt;passionate about technology&lt;/strong&gt; and tech companies, that's why I started to study business models, finance, and marketing but I knew I still needed the third leg of the table: &lt;strong&gt;learn how to code&lt;/strong&gt;. It was frustrating to understand things and try to contribute to the real world but be limited because &lt;strong&gt;you don't understand how tech works&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;After finishing my third year of university, I decided (after much thought) to drop Economics and start learning how to code. All that happened just at the beginning of 2020 so, as you know, pandemic times. I stayed home and started learning to code &lt;strong&gt;10 hours per day from Monday to Friday&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;I started with a Python book, but after I finished it I felt lost. Then I found a &lt;strong&gt;web dev roadmap&lt;/strong&gt; and started with Harvard’s CS50 course, an HTML and CSS book, Free Code Camp certifications, and so on.&lt;/p&gt;

&lt;p&gt;And here I am today. After all this path I’m confident in myself, with all the &lt;strong&gt;energy, hunger, and ambition&lt;/strong&gt; to make things and to continue &lt;strong&gt;learning and improving&lt;/strong&gt; every day.&lt;/p&gt;

&lt;p&gt;And after two years &lt;strong&gt;I finally finished my portfolio!&lt;/strong&gt;&lt;br&gt;
Two weeks ago I just finished my project &lt;strong&gt;Beat&lt;/strong&gt; (I'm going to talk about it in the next few days) and I felt ready to start looking for a job.&lt;/p&gt;

&lt;p&gt;I know, &lt;strong&gt;it's going to be difficult&lt;/strong&gt;, it's a long trip, but I trust myself and I'm patient so we will see 😅.&lt;/p&gt;

&lt;p&gt;Wish me luck and if you know about some &lt;strong&gt;Frontend developer positions available&lt;/strong&gt; let me know. If you have &lt;strong&gt;any advice or opinion&lt;/strong&gt; about my portfolio/projects &lt;strong&gt;let me know too&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Dj9M829J--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jf7jmrcyubqf7w1b6x3f.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Dj9M829J--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jf7jmrcyubqf7w1b6x3f.gif" alt="Image description" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The portfolio was made it with Next js and Framer Motion.&lt;/p&gt;

&lt;p&gt;Here is the link to my portfolio: &lt;a href="https://nicolasbiondini.com/"&gt;nicolasbiondini.com&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Thanks to this community for all the support over the years, dev really is a beautiful place full of &lt;strong&gt;wonderful people&lt;/strong&gt;.&lt;br&gt;
I promise to start writing much more here.&lt;/p&gt;

&lt;p&gt;See you soon! 😊👋&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>react</category>
      <category>career</category>
      <category>showdev</category>
    </item>
    <item>
      <title>Open Source Newbie! Please help!</title>
      <dc:creator>NicolasBiondini</dc:creator>
      <pubDate>Sun, 10 Jan 2021 03:13:47 +0000</pubDate>
      <link>https://dev.to/nicolasbiondini/open-source-newbie-please-help-kh1</link>
      <guid>https://dev.to/nicolasbiondini/open-source-newbie-please-help-kh1</guid>
      <description>&lt;p&gt;Hi to everyone! My name is Nicolás i have 21 years old, i droped the economics university after 3 years and i have been studied intensely "how to code" (10 to 14 hs at day) for 8 months ( i learned html, css, js, react, node.js, mongodb, gatsby, python, etc) and i want to start to contribute to the open source comunity but there is a problem : i don't know how to start and what kind of things i can do for them.&lt;/p&gt;

&lt;p&gt;So im very glad if some of you can help me to see a way and start doing things. I really want to help to others but i don't no how to start. So if you know about some project that i can help or something like that, no doubt and tell me about it.&lt;br&gt;
Also I want to say sorry for my english, because it's not perfect (i'm working on it) and thanks for your help.&lt;/p&gt;

&lt;p&gt;Thanks a lot!&lt;/p&gt;

</description>
      <category>opensource</category>
      <category>javascript</category>
      <category>react</category>
      <category>node</category>
    </item>
  </channel>
</rss>
