teleren/devto huggingface dataset:
FREE Firebase hosting - How to Set Up Firebase, Step-by-Step Tutorial
Tags: webdev, firebase, google, googlecloud
Published: 2024-06-21 14:04:36

Learn how to get FREE hosting with Google using Firebase! This step-by-step guide will walk you through the easy setup process. Watch now and start hosting your projects hassle-free!

Full tutorial [here](https://proflead.dev/posts/how-to-deploy-a-website-on-firebase-and-use-it-for-free/).


More videos [here](https://www.youtube.com/@proflead/videos?sub_confirmation=1).
NextJs Pre-Rendering
Published: 2024-06-21 14:02:30

**Pre-Rendering**

NextJS pre-renders HTML before JavaScript is loaded in the page so as to give it a view at least.
React on the other hand loads only when JavaScript is loaded.

**_Pros->_**
1. If there is an async call on a page load it will take time and it might show a loader or a single root element but in case of NextJS it will at least show you how the page looks like until JavaScript is loaded.
2. If there is SEO then, Pre-Rendering performs better in that aspect -> basically for blogs nor e-comm websites.
3. There is a wait time for the user.
Understand Dependency Injection in NestJs in a simple way
Tags: nestjs, designpatterns, dependencyinjection, backend
Published: 2024-06-21 14:01:44

**Dependency injection** is when an object provides the dependency of another object. This means that a class relies on methods from another class. It is a well-known design pattern, and Nest is built strongly based on this pattern.

**Inversion of control** is a concept that aligns with dependency injection. It is basically delegating to the framework the construction of the project's dependencies.

The purpose of injection is to invert control, providing the dependencies of the object instead of allowing it to create them itself. For this, it is necessary to:

1. Explicitly define the dependencies and where the injection occurs. In Nest, for example, this point is in the constructor. This is where the framework inverts control. 
`constructor(private catsService: CatsService) {}
`
2. Have an inversion of control container for dependency injection to occur. In Nest, it is possible to access this container through the module and retrieve the instance of the class we want.

In short, what is done is transferring the task of instantiating the object to someone else (IoC) and directly using that instance as a dependency (Injection).

**Advantages** of using this pattern:

- Ease of testing the application (we can inject mocked services)
- Improved code maintenance (reduction of code and decoupling)
- Reusability (just inject the dependency to use it)

**Disadvantages**: There are few, but generally:

- Increased complexity in the project
- Service construction logic can be in inaccessible places

Thank you for reaching this point. If you need to contact me, here is my email: joaopauloj405@gmail.com

References:
https://www.digitalocean.com/community/tutorials/a-guide-on-dependency-injection-in-nestjs
https://martinfowler.com/articles/injection.html
https://www.youtube.com/watch?v=GX8YC21qQQk&t=1010s

<link2>
Introduction to AWS CodePipeline
Tags: aws
Published: 2024-06-21 14:01:09

🚀 Exciting News! 🚀

I am thrilled to announce that I have achieved my AWS certification! 🎉 After months of hard work and dedication, I am now certified with this certificate. This accomplishment signifies my commitment to mastering AWS services and best practices, enhancing my skills in cloud computing and infrastructure management.

I am grateful for the support of my colleagues, mentors, and the invaluable resources provided by AWS. This journey has been incredibly rewarding, and I look forward to applying my knowledge to deliver innovative solutions and contribute effectively to our projects.

Thank you all for your encouragement and belief in my abilities. Let's continue to strive for excellence together!
Introduction to AWS CodePipeline
Tags: aws
Published: 2024-06-21 14:01:08

🚀 Exciting News! 🚀

I am thrilled to announce that I have achieved my AWS certification! 🎉 After months of hard work and dedication, I am now certified with this certificate. This accomplishment signifies my commitment to mastering AWS services and best practices, enhancing my skills in cloud computing and infrastructure management.

I am grateful for the support of my colleagues, mentors, and the invaluable resources provided by AWS. This journey has been incredibly rewarding, and I look forward to applying my knowledge to deliver innovative solutions and contribute effectively to our projects.

Thank you all for your encouragement and belief in my abilities. Let's continue to strive for excellence together!
My Wins of the Week! 🔥
Tags: weeklyretro
Published: 2024-06-21 14:00:00

<a href="https://www.glitter-graphics.com"><img src="http://dl8.glitter-graphics.net/pub/1811/1811698xxi3xzrt5m.gif" width=430 height=75 border=0></a>

📰 I published a new post on DEV! ✨
{% embed https://dev.to/anitaolsen/my-day-of-code-the-bare-minimum-3cgb %}
&nbsp;

💟 I received a new badge on DEV! ✨
![The 100 Thumbs Up Milestone badge](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/p0bdhs45xcsmo8h9iusq.jpg)
&nbsp;

🎯 I met my weekly target on [Codecademy](https://www.codecademy.com/profiles/AnitaOlsen)! ✨
![Coded 7/7 days](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1f3awv083fnk4gb6h4gj.png)
_I have been active on the Learn Intermediate Python 3: Object-Oriented Programming course._
&nbsp;

💻 I completed three quizzes on the HTML course on [W3Schools](https://www.w3profile.com/anitaolsen)! ✨
![HTML course exercises quiz completed](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2r2465xu4qtusrtjf9zg.png)

![Another HTML course exercises quiz completed](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ljgqcwkmzhpx0n7b3h1y.png)

![A third HTML course exercises quiz completed](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/e8w56rtuqsrjgylcym6s.png)
&nbsp;

🔥 I hit a 7 day streak on W3Schools! ✨
![7 day streak on W3Schools](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/55j86y03hvw3ig89v4m9.jpg)
_I have been active on the HTML course, and even though I have been learning on the site for a year and a half already, W3Schools only recently implemented streaks._
&nbsp;

💻 I completed seven singleplayer levels on [CodeCombat](https://codecombat.com/user/anitaolsen)! ✨
I also earned the following achievements:
![My CodeCombat achievements over the last week](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/i56hii00e6xigq4udapa.png)

<a href="https://www.glitter-graphics.com"><img src="http://dl8.glitter-graphics.net/pub/1811/1811698xxi3xzrt5m.gif" width=430 height=75 border=0></a>

![It all began with one single win](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/q3ao2ubksrzhhwh9zqwu.png)

<center>Thank you for reading! ♡</center>
Introduction to Serverless Development
Tags: aws
Published: 2024-06-21 13:59:04

🚀 Exciting News! 🚀

I'm thrilled to announce that I've achieved AWS certification! 🎉

After months of dedicated learning and hard work, I am now officially certified with this certificate. This journey has been incredibly rewarding, and I'm looking forward to leveraging this knowledge to drive innovation and efficiency in cloud computing.

A huge thank you to everyone who supported me along the way. Your encouragement and guidance meant the world to me.

Let's continue to push boundaries and explore new possibilities with AWS! 💡
Improving Your Development Environment on VS Code
Tags: webdev, vscode, tutorial, productivity
Published: 2024-06-21 13:58:00

You can **enhance** your productivity by improving your development environment, with these few steps you will **save time** to focus only in the code part!

## Starting with extensions

**Prettier: Automatically format your code**

![prettier](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/in78u7uz6dtt58jqsrv4.png)

**Prettier** is a code formatter that ensures your code looks consistent across your project. It supports a variety of languages and integrates with most editors. Your code is formatted on save, no need to discuss style in code review, it saves you time and energy. 

**Live Server: See changes instantly in your browser**

![liveserve](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yngxh83w1sgbf56t9c5m.png)

**Live Server** is a development tool that provides a local development server with live reload functionality. It is widely used for web development as it allows developers to see changes in their code in real time, without the need to manually refresh the browser.

**ESLint: Keep your code clean and error-free**

![eslint](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/euqjp1l8hrvzpdmpfrmm.png)

**ESLint** is a powerful and highly configurable linting tool for JavaScript and TypeScript. It helps developers maintain code quality by identifying and fixing problems in your code.

## Keyboard Shortcurts

**General Shortcuts**

```shell
Ctrl + Shift + P / Cmd + Shift + P (Mac): Show Command Palette
Ctrl + P / Cmd + P (Mac): Quick Open (Go to File)
Ctrl + Shift + N  / Cmd + Shift + N (Mac): New Window
Ctrl + "," / Cmd + , (Mac): Open Settings
Ctrl + K / Cmd + K, Cmd + S (Mac): Keyboard Shortcuts
```
**Integrated Terminal**

```shell
Ctrl + ` / Cmd + ` (Mac): Toggle terminal
Ctrl + Shift + ` /  Cmd + Shift + ` (Mac): Create new terminal
Ctrl + Shift + C / Cmd + Shift + C (Mac): Open external terminal
```
You can customize your own in **File > Preferences > Keyboard Shortcuts**.

## Sync Settings Across Devices 
You can **sync** your settings via Settings Sync.

Go to **File > Preferences > Settings Sync** to set it up.

## Got more tips? Share them! 👇
Cloud Essentials
Tags: aws
Published: 2024-06-21 13:54:49

🚀 Exciting News! 🚀

I am thrilled to announce that I have achieved my AWS certification! 🎉 After months of hard work and dedication, I am now certified with this certificate. This accomplishment signifies my commitment to mastering AWS services and best practices, enhancing my skills in cloud computing and infrastructure management.

I am grateful for the support of my colleagues, mentors, and the invaluable resources provided by AWS. This journey has been incredibly rewarding, and I look forward to applying my knowledge to deliver innovative solutions and contribute effectively to our projects.

Thank you all for your encouragement and belief in my abilities. Let's continue to strive for excellence together!
JWT Authentication (Revoke Access Tokens Using Redis) -FastAPI Beyond CRUD Part 12
Tags: fastapi, programming, api, webdev
Published: 2024-06-21 13:54:42

In this video, we explore the process of revoking JWTs by utilizing Redis as our token blocklist, leveraging the capabilities of AIOredis for efficient management and maintenance of revoked tokens.

{%youtube e954e-i5DgQ%}
Getting Started with Cloud Acquisition
Tags: aws
Published: 2024-06-21 13:54:02

🚀 Exciting News! 🚀

I'm thrilled to announce that I've achieved AWS certification! 🎉

After months of dedicated learning and hard work, I am now officially certified with this certificate. This journey has been incredibly rewarding, and I'm looking forward to leveraging this knowledge to drive innovation and efficiency in cloud computing.

A huge thank you to everyone who supported me along the way. Your encouragement and guidance meant the world to me.

Let's continue to push boundaries and explore new possibilities with AWS! 💡
SALESFORCE FOR OUTLOOK PLUGIN
Tags: salesforce, outlook, integration
Published: 2024-06-21 13:50:26

A quick guide how to setup Salesforce for Outlook plugin.

First, The user must install the Salesforce Add-in from outlook by clicking on this icon in the outlook toolbar.


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7zrxh3vtxmmtkwtlnf83.png)

And type 'Salesforce' in the search bar, install the first add-in 
called just 'Salesforce'


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2folig9r1xbvzaipc77s.png)


Once the add-in is added, the user must connect to respective salesforce org, usually production.


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/muqnkz8n79bisogpngz5.png)



if you want to login using SOO and not with Username and password, click on use a custom domain' and enter your custom domain's name. 

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6swl8ygb39rk2ilm1r59.png)


_you can find it by checking the URL in your org for example : {https://**Domain**.lightning.force.com/} you just need the custom domain, not the whole URL._ 

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/myinrxnaprnflebwhyud.png)


and click ok, then you will be able to see the button to login with SSO.


After the add-in is installed and connected, the user may access salesforce for outlook buy clicking on the icon directly or in the menu when clicking the 3 dots at the right,

<u>Note that you must click on an email or meeting, or be in a meeting creation window to see the salesforce icon
</u>


Once in an email window, if the email addresses are related to contacts or users in your connected org, Salesforce will do a quick search and fetch you these records 
 

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/so7ki6qc8ojatlcnfckt.png)


The user can just click the '+' button at the top left and create new records, events, calls, they could even create a new contact record without leaving Outlook


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/nfpcct7udl44l8szxhom.png)


they could also make a quick search to fetch salesforce record directly.

A simple use case:

If you click on a contact name while in a meeting window you will have the record details of that contact, plus a button 'LOG' that would take you to a form to add an event related to that contact.


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/67baq5q816m9wee8rbof.png)
LeetCode Day 14 Binary Tree Part 4
Tags: leetcode, java, algorithms, datastructures
Published: 2024-06-21 13:40:46

# LeetCode No. 112. Path Sum
Given the root of a binary tree and an integer targetSum, return true if the tree has a root-to-leaf path such that adding up all the values along the path equals targetSum.

A leaf is a node with no children.

Example 1:

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7471m7sz0x9eu86cbx49.png)

Input: root = [5,4,8,11,null,13,4,7,2,null,null,null,1], targetSum = 22
Output: true
Explanation: The root-to-leaf path with the target sum is shown.


[Original Page](https://leetcode.com/problems/path-sum/description/)



```
    public boolean hasPathSum(TreeNode root, int targetSum) {
        if(root == null){
            return false;
        }
        return sumOfPath(root, 0, targetSum);
    }

    public boolean sumOfPath(TreeNode cur, int sum, int target){
        if(cur == null){
            return false;
        }
        sum += cur.val;

        if(cur.left == null && cur.right == null){
            return sum==target;
        }

        return sumOfPath(cur.left, sum, target) || sumOfPath(cur.right,sum, target);
    }
```
What is Recursion ?
Tags: devchallenge, cschallenge, computerscience, beginners
Published: 2024-06-21 13:39:34

*This is a submission for [DEV Computer Science Challenge v24.06.12: One Byte Explainer](https://dev.to/challenges/cs).*

## What is Recursion ?

Recursion is a programming technique where a function calls itself to solve a problem. It breaks the problem into smaller sub-problems, each identical to the original. The process continues until reaching the base case, which ends the recursive calls.

<!-- Explain a computer science concept in 256 characters or less. -->

## Additional Context

<!-- Please share any additional context you think the judges should take into consideration as it relates to your One Byte Explainer. -->

<!-- Team Submissions: Please pick one member to publish the submission and credit teammates by listing their DEV usernames directly in the body of the post. -->

<!-- Don't forget to add a cover image to your post (if you want). -->



<!-- Thanks for participating! -->
AWS Billing and Cost Management
Tags: aws
Published: 2024-06-21 13:36:13

🚀 Exciting News! 🚀

I am thrilled to announce that I have achieved my AWS certification! 🎉 After months of hard work and dedication, I am now certified with this certificate. This accomplishment signifies my commitment to mastering AWS services and best practices, enhancing my skills in cloud computing and infrastructure management.

I am grateful for the support of my colleagues, mentors, and the invaluable resources provided by AWS. This journey has been incredibly rewarding, and I look forward to applying my knowledge to deliver innovative solutions and contribute effectively to our projects.

Thank you all for your encouragement and belief in my abilities. Let's continue to strive for excellence together!
Nations attacking their own internet (to stop cheating on exams)
Tags: news, dns, security
Published: 2024-06-21 13:32:49

Saw [this super interesting post](https://blog.cloudflare.com/syria-iraq-algeria-exam-internet-shutdown) on the Cloudflare blog

{% embed https://blog.cloudflare.com/syria-iraq-algeria-exam-internet-shutdown %}

I've always been fascinating by DNS and global connectivity.  This write-up talks through traffic patterns, DNS behavior, and network data to describe how these states are impacting their own internet to try and fight cheating on exams.
Job Roles in the Cloud
Tags: aws
Published: 2024-06-21 13:26:24

🚀 Exciting News! 🚀

I'm thrilled to announce that I've achieved AWS certification! 🎉

After months of dedicated learning and hard work, I am now officially certified with this certificate. This journey has been incredibly rewarding, and I'm looking forward to leveraging this knowledge to drive innovation and efficiency in cloud computing.

A huge thank you to everyone who supported me along the way. Your encouragement and guidance meant the world to me.

Let's continue to push boundaries and explore new possibilities with AWS! 💡
AWS Cloud Practitioner Essentials
Tags: aws
Published: 2024-06-21 13:23:54

🚀 Exciting News! 🚀

I am thrilled to announce that I have achieved my AWS certification! 🎉 After months of hard work and dedication, I am now certified with this certificate. This accomplishment signifies my commitment to mastering AWS services and best practices, enhancing my skills in cloud computing and infrastructure management.

I am grateful for the support of my colleagues, mentors, and the invaluable resources provided by AWS. This journey has been incredibly rewarding, and I look forward to applying my knowledge to deliver innovative solutions and contribute effectively to our projects.

Thank you all for your encouragement and belief in my abilities. Let's continue to strive for excellence together!
Problems caused by the lack of idempotency
Tags: problems, idempotency
Published: 2024-06-21 13:21:40

Idempotency is a crucial concept in distributed systems and web applications, ensuring that performing the same operation multiple times produces the same result.

The lack of idempotency property can cause a lot of problems and bugs, which can make your startup go bankrupt.

## Duplication of data
When your system does not have idempotency, you will have duplicated data that you don't want.
This is a bug, that will increase the support tickets requests.
You will also need some work to create a data migration to deduplicate this data.
This can also lead to wrong reports and data.

## Duplicating payments
Without idempotency, you can duplicate payments, refunds, and withdrawals.
This will cause a loss of money for you and your customers.

## Duplicating notifications
Send the same email or push notifications to the same user will cause friction and it is annoying to them.
Some users will mark your emails as spam, making your email delivery worse.
In the worst-case scenario, they can churn and stop using your buggy system.
A duplicate webhook was sent.

## Inconsistency data
Duplicate data and unexpected side effects can cause data inconsistency causing problems like wrong balance in your ledger accounts.
Wrong reports.
Reducing the trust in your product from the customers.

## In Conclusion
Duplicating something does not feel like a big deal, but it can cause a lot of problems.
Making sure your internal system has idempotency property and the external systems that you consume also have idempotency in place can help you avoid most of the problems avoid.

---
[Woovi](https://www.woovi.com) is an innovative startup revolutionizing the payment landscape. With Woovi, shoppers can enjoy the freedom to pay however they prefer. Our cutting-edge platform provides instant payment solutions, empowering merchants to accept orders and enhance their customer experience seamlessly.

If you're interested in joining our team, we're hiring! Check out our job openings at [Woovi Careers](https://woovi.com/jobs/).

---
<a href="https://www.freepik.com/free-ai-image/3d-rendering-abstract-black-white-background_75958246.htm#fromView=search&page=1&position=41&uuid=92aa1bdb-49db-4b92-9477-755346781e43">Image by freepik</a>
AWS Solutions Architect
Tags: aws
Published: 2024-06-21 13:21:20

🚀 Exciting News! 🚀

I'm thrilled to announce that I've achieved AWS certification! 🎉

After months of dedicated learning and hard work, I am now officially certified with this certificate. This journey has been incredibly rewarding, and I'm looking forward to leveraging this knowledge to drive innovation and efficiency in cloud computing.

A huge thank you to everyone who supported me along the way. Your encouragement and guidance meant the world to me.

Let's continue to push boundaries and explore new possibilities with AWS! 💡
Cloud Practitioner
Tags: aws
Published: 2024-06-21 13:18:21

🚀 Exciting News! 🚀

I am thrilled to announce that I have achieved my AWS certification! 🎉 After months of hard work and dedication, I am now certified with this certificate. This accomplishment signifies my commitment to mastering AWS services and best practices, enhancing my skills in cloud computing and infrastructure management.

I am grateful for the support of my colleagues, mentors, and the invaluable resources provided by AWS. This journey has been incredibly rewarding, and I look forward to applying my knowledge to deliver innovative solutions and contribute effectively to our projects.

Thank you all for your encouragement and belief in my abilities. Let's continue to strive for excellence together!
AWS Well-Architected
Tags: aws
Published: 2024-06-21 13:14:42

🚀 Exciting News! 🚀

I'm thrilled to announce that I've achieved AWS certification! 🎉

After months of dedicated learning and hard work, I am now officially certified with this certificate. This journey has been incredibly rewarding, and I'm looking forward to leveraging this knowledge to drive innovation and efficiency in cloud computing.

A huge thank you to everyone who supported me along the way. Your encouragement and guidance meant the world to me.

Let's continue to push boundaries and explore new possibilities with AWS! 💡