<?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: Paolo Ventura</title>
    <description>The latest articles on DEV Community by Paolo Ventura (@paolov1928).</description>
    <link>https://dev.to/paolov1928</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%2F642432%2Fdcf8d852-fa2e-4994-93ae-e8639438c591.jpeg</url>
      <title>DEV Community: Paolo Ventura</title>
      <link>https://dev.to/paolov1928</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/paolov1928"/>
    <language>en</language>
    <item>
      <title>Interview Prep - Ds &amp; Algos - Trees</title>
      <dc:creator>Paolo Ventura</dc:creator>
      <pubDate>Fri, 05 Apr 2024 16:49:30 +0000</pubDate>
      <link>https://dev.to/paolov1928/interview-prep-ds-algos-trees-11jo</link>
      <guid>https://dev.to/paolov1928/interview-prep-ds-algos-trees-11jo</guid>
      <description>&lt;p&gt;Going from easiest to hardest in my Ds &amp;amp; Algos prep I moved onto Binary search trees. Starting with Breath First Search (BFS). BFS is pretty easy to implement in JS with arrays as queues. Enjoying getting a few more leetcodes right today!&lt;/p&gt;

&lt;p&gt;Later tonight I will push myself to add some functionality to my openAI cover letter app. Users have been asking for reply functionality. I.e. if the application asks you another question to answer - not just a cover letter. Watch this space!&lt;/p&gt;

&lt;p&gt;Have a great weekend everyone 😊&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Interview Prep - Ds &amp; Algos - Arrays</title>
      <dc:creator>Paolo Ventura</dc:creator>
      <pubDate>Thu, 04 Apr 2024 17:21:57 +0000</pubDate>
      <link>https://dev.to/paolov1928/interview-prep-ds-algos-arrays-2ilo</link>
      <guid>https://dev.to/paolov1928/interview-prep-ds-algos-arrays-2ilo</guid>
      <description>&lt;p&gt;Today, after updating my personal website, I shifted focus to a crucial aspect of tech interviews: data structures and algorithms. Starting with arrays, I've committed to tackling one topic per day, solving 3ish related LeetCode problems to reinforce my understanding. 📚 (&lt;a href="https://seanprashad.com/leetcode-patterns/"&gt;This website&lt;/a&gt; is super useful - sorting leetcodes by patterns)&lt;/p&gt;

&lt;p&gt;Transitioning from day-to-day project coding to abstract problem-solving is a challenge, but it's actually pretty rewarding! Also, witnessing AI's approach to these problems is both intriguing and revealing, highlighting areas where human intuition still prevails. Maybe I should make a little bot website to help my thought process... watch this space! 🤖&lt;/p&gt;

&lt;p&gt;Stay tuned for updates on my journey to master DsAlgos and ace those upcoming interviews! 🚀&lt;/p&gt;

</description>
    </item>
    <item>
      <title>A Day of Tech Triumphs: Refactoring, Deploying, and Dabbling in Ethereum</title>
      <dc:creator>Paolo Ventura</dc:creator>
      <pubDate>Tue, 02 Apr 2024 20:36:05 +0000</pubDate>
      <link>https://dev.to/paolov1928/a-day-of-tech-triumphs-refactoring-deploying-and-dabbling-in-ethereum-1954</link>
      <guid>https://dev.to/paolov1928/a-day-of-tech-triumphs-refactoring-deploying-and-dabbling-in-ethereum-1954</guid>
      <description>&lt;p&gt;Today was an absolute whirlwind of productivity in the land of coding! 🚀 A couple of highlights:&lt;/p&gt;

&lt;p&gt;First up, I embarked on a mission to revamp my personal website using the React Compound Design Pattern. Inspired by an enlightening video on Frontend Masters, I dove headfirst into the world of custom Providers and the Context API. The result? A sleeker, more efficient codebase that's as refreshing to look at as it is to work with. 💻&lt;/p&gt;

&lt;p&gt;Next, it had been on my mind for so long to migrate my personal website. Now post refactor there was no excuse! I bid farewell to redundant CloudFront and S3 configurations, and hello to the simplicity of Vercel. Also, changing my custom domain DNS' with Namecheap was a breeze, leaving me wondering why I hadn't made the switch sooner. 🌐&lt;/p&gt;

&lt;p&gt;But the day wouldn't be complete without a dab of open-source contribution. Eager to lend a hand, I ventured into the realms of Ethereum development, courtesy of the 1Hive 🐝project. Alas, my journey hit a minor snag when I was running upon their PNPM-powered repo (first I had heard of PNPM!).  Nevertheless, every challenge is a learning opportunity, and navigating through their VS Code workspace was really cool and I learnt a few things.&lt;/p&gt;

&lt;p&gt;Here's to many more days of tech triumphs ahead and FUN! 🔍🌟&lt;/p&gt;

</description>
    </item>
    <item>
      <title>JS code optimizer Next.js app</title>
      <dc:creator>Paolo Ventura</dc:creator>
      <pubDate>Fri, 29 Mar 2024 21:21:19 +0000</pubDate>
      <link>https://dev.to/paolov1928/js-code-optimizer-nextjs-app-5ec6</link>
      <guid>https://dev.to/paolov1928/js-code-optimizer-nextjs-app-5ec6</guid>
      <description>&lt;p&gt;For a while I have used ChatGPT to swiftly provide code suggestions. However, copying and pasting into my workflow was a bit of a hassle. So, I decided to take matters into my own hands and built a neat little Next.js application. 🚀 Now, I can input code snippets and have them optimized in a snap!&lt;/p&gt;

&lt;p&gt;While developing this, I dived into the world of server components in Next.js. Coming from using Node.js API routes in Remix, I found server components to be the next level 😎.  It's amazing stuff! Although, I must admit, having to include 'use client' when dealing with components with hooks felt a bit cumbersome at first. Ahh well, that's a small price to pay for such convenient functionality.&lt;/p&gt;

&lt;p&gt;Next I'm eagerly waiting to dive into GitHub Copilot 🤖 and experiment with it.&lt;/p&gt;

&lt;p&gt;Overall, whether it's leveraging ChatGPT or exploring server components in Next.js I had a fun day building cool stuff!&lt;/p&gt;

&lt;p&gt;(Just cleaning up the repo before posting my code optimizer Next.js application... watch this space!)&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Cover Letters &amp; OpenAI</title>
      <dc:creator>Paolo Ventura</dc:creator>
      <pubDate>Wed, 20 Mar 2024 17:56:39 +0000</pubDate>
      <link>https://dev.to/paolov1928/cover-letters-openai-18g</link>
      <guid>https://dev.to/paolov1928/cover-letters-openai-18g</guid>
      <description>&lt;p&gt;📝 Introducing CoverLetterGenerator: Your Gateway to Tailored Cover Letters!&lt;/p&gt;

&lt;p&gt;Tired of staring at the blank page, trying to craft the perfect cover letter for every job application? Say goodbye to writer's block and hello to CoverLetterGenerator! 🚀&lt;/p&gt;

&lt;p&gt;Powered by the OpenAI API, CoverLetterGenerator takes the stress out of crafting personalized cover letters. Simply provide an existing cover letter, your resume, and the job specification, and let the magic happen. ✨&lt;/p&gt;

&lt;p&gt;But wait, there's more! To ensure your privacy and security, CoverLetterGenerator doesn't store your sensitive documents. Your existing cover letter, resume, and job specification remain safely on your local machine, thanks to our handy .gitignore configuration.&lt;/p&gt;

&lt;p&gt;This project was inspired by the enlightening OpenAI course on Front End Masters, a testament to the endless possibilities of AI-driven creativity. If you're looking to level up your skills, I highly recommend checking it out!&lt;/p&gt;

&lt;p&gt;Ready to revolutionize your job application process? Clone the repo, follow the instructions, and watch as CoverLetterGenerator transforms your job hunt experience. Happy applying! 💻📄 #CoverLetterGenius #OpenAI #FrontEndMasters&lt;/p&gt;

&lt;p&gt;Code repo:&lt;br&gt;
&lt;a href="https://github.com/paolov1928/coverLetterGenerator"&gt;https://github.com/paolov1928/coverLetterGenerator&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>openai</category>
    </item>
    <item>
      <title>JS Definitive Guide Ch. 2</title>
      <dc:creator>Paolo Ventura</dc:creator>
      <pubDate>Mon, 24 Jan 2022 09:06:15 +0000</pubDate>
      <link>https://dev.to/paolov1928/js-definitive-guide-ch-2-2bp2</link>
      <guid>https://dev.to/paolov1928/js-definitive-guide-ch-2-2bp2</guid>
      <description>&lt;p&gt;Chapter 2: Lexical Structure:&lt;/p&gt;

&lt;p&gt;JS ignores spaces and for the most part ignores line breaks. This allows us to format code easily in a readable way.&lt;/p&gt;

&lt;p&gt;Variables can be declared starting with a letter, - or $.&lt;/p&gt;

&lt;p&gt;There are a few reserved keywords that should be avoided.&lt;br&gt;
I did not know that you can declare a variable called let using var in the global scope, mindblown!&lt;/p&gt;

&lt;p&gt;You can use unicode escape characters. However, it is important to normalize them if used in declaring a variable because you might otherwise have two indistinguishable variables.&lt;/p&gt;

&lt;p&gt;Semi colons do not have to be used but if not... there can be some weird interpretations.&lt;/p&gt;

&lt;p&gt;Certain statements always invoke semi colon behaviour:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;return, break, continue (needs to be on same line as what returning)&lt;/li&gt;
&lt;li&gt;++ (needs to be on same line as its variable)&lt;/li&gt;
&lt;li&gt;arrow (needs to be on the same line as the parameter list)&lt;/li&gt;
&lt;/ol&gt;

</description>
    </item>
    <item>
      <title>JS Definitive Guide Ch. 1</title>
      <dc:creator>Paolo Ventura</dc:creator>
      <pubDate>Mon, 24 Jan 2022 08:57:41 +0000</pubDate>
      <link>https://dev.to/paolov1928/js-definitive-guide-ch-1-1dk1</link>
      <guid>https://dev.to/paolov1928/js-definitive-guide-ch-1-1dk1</guid>
      <description>&lt;p&gt;As I enjoy this book I will leave quick reviews for each chapter, hopefully sharing a bit of my thoughts 🚀🚀🚀&lt;/p&gt;

&lt;h3&gt;
  
  
  Ch. 1 Introduction to Javascript
&lt;/h3&gt;

&lt;p&gt;His comment syntax is cool explaining:&lt;br&gt;
=&amp;gt; the statement returns something&lt;br&gt;
! the statement throws an exception&lt;br&gt;
== means reassignment of the variable after the statement&lt;/p&gt;

&lt;p&gt;Even cooler the tests for this book run off that comment syntax&lt;/p&gt;

&lt;p&gt;?. Conditional operator returns undefined if it could not access that property.&lt;/p&gt;

&lt;p&gt;Functions are declared whereas methods are accessed on the object.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>100 algos in 100 days (Day 37)</title>
      <dc:creator>Paolo Ventura</dc:creator>
      <pubDate>Wed, 27 Oct 2021 09:55:51 +0000</pubDate>
      <link>https://dev.to/paolov1928/100-algos-in-100-days-day-37-315d</link>
      <guid>https://dev.to/paolov1928/100-algos-in-100-days-day-37-315d</guid>
      <description>&lt;p&gt;[26/10]&lt;/p&gt;

&lt;p&gt;Perhaps slightly veering away from algorithm practice I followed a tutorial building a social media chat app with the MERN stack.&lt;/p&gt;

&lt;p&gt;I had a few issues posting to the mongoDB but otherwise all good and will finish it soon.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>100 algos in 100 days (Day 37)</title>
      <dc:creator>Paolo Ventura</dc:creator>
      <pubDate>Mon, 25 Oct 2021 20:42:44 +0000</pubDate>
      <link>https://dev.to/paolov1928/100-algos-in-100-days-day-37-2n10</link>
      <guid>https://dev.to/paolov1928/100-algos-in-100-days-day-37-2n10</guid>
      <description>&lt;p&gt;Today I did some basic recursion practice. &lt;/p&gt;

&lt;p&gt;For the first time, I am quite enjoying using recursion as I am not as 😱 of timing out. Also, it is quite cool to be able to use computing power to just do things like that.&lt;/p&gt;

&lt;p&gt;The examples were based off fibonacci which really is a 101 of recursion problems.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>100 algos in 100 days (Day 36)</title>
      <dc:creator>Paolo Ventura</dc:creator>
      <pubDate>Mon, 25 Oct 2021 17:47:58 +0000</pubDate>
      <link>https://dev.to/paolov1928/100-algos-in-100-days-day-36-5b75</link>
      <guid>https://dev.to/paolov1928/100-algos-in-100-days-day-36-5b75</guid>
      <description>&lt;p&gt;23/10&lt;/p&gt;

&lt;p&gt;Before anything I have to admit I failed quite badly at coding out the following question. Straight away I recognised it was dynamic programming but putting it into place was a bit more difficult and  I definitely need more recursion practice.&lt;/p&gt;

&lt;p&gt;For n steps how many combinations of steps can we use; given we can jump 1, 2 or 3 steps at once.&lt;/p&gt;

&lt;h3&gt;
  
  
  My main reflections
&lt;/h3&gt;

&lt;p&gt;*Coding without vs code and prettier I encountered a return null error which stumped me for a while. Which means more checking through as I code&lt;br&gt;
*As above manual formatting practice is important&lt;br&gt;
*I took too long to visualize and sketch out the problem&lt;br&gt;
*In this example my naive solution took quite some time to code out and test.. sometimes need to pivot faster.&lt;br&gt;
*It was good that I could relate to other problems have seen and apply them. Even quickly recognising the type of question.&lt;br&gt;
*However, directly applying a solution was a bad idea. Better to recode and do new variable names as might get lost&lt;/p&gt;

</description>
    </item>
    <item>
      <title>100 algos in 100 days (Day 35)</title>
      <dc:creator>Paolo Ventura</dc:creator>
      <pubDate>Mon, 25 Oct 2021 17:38:43 +0000</pubDate>
      <link>https://dev.to/paolov1928/100-algos-in-100-days-day-35-40kh</link>
      <guid>https://dev.to/paolov1928/100-algos-in-100-days-day-35-40kh</guid>
      <description>&lt;p&gt;[22/10]&lt;/p&gt;

&lt;p&gt;Again not an algo but relevant to software development.&lt;/p&gt;

&lt;p&gt;I became interested in learning more about the basics of Object Orientated design as I use it every day.&lt;/p&gt;

&lt;p&gt;The first learning point being the 4 pillars of OO&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Encapsulation&lt;/li&gt;
&lt;li&gt;Abstraction&lt;/li&gt;
&lt;li&gt;Inheritance&lt;/li&gt;
&lt;li&gt;Polymorphism&lt;/li&gt;
&lt;/ol&gt;

</description>
    </item>
    <item>
      <title>100 algos in 100 days (Day 34)</title>
      <dc:creator>Paolo Ventura</dc:creator>
      <pubDate>Mon, 25 Oct 2021 17:34:59 +0000</pubDate>
      <link>https://dev.to/paolov1928/100-algos-in-100-days-day-34-1m4n</link>
      <guid>https://dev.to/paolov1928/100-algos-in-100-days-day-34-1m4n</guid>
      <description>&lt;p&gt;[21/10]&lt;br&gt;
Which number appears twice in an array of numbers 1...n&lt;/p&gt;

&lt;p&gt;Here we can use the trick that any triangular series the total sum will be 0.5n*(n+1).&lt;/p&gt;

&lt;p&gt;A triangular series being any series where the numbers can form the rows of an equilateral triangle.&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
