teleren/devto huggingface dataset:
Iniciativas para Mulheres na Tecnologia
Tags: wecoded, braziliandevs, womenintech
Published: 2024-03-02 22:56:33

Inspirada pelo **we_coded** @thepracticaldev , apresento aqui iniciativas para mulheres da tecnologia com cursos, formações, projetos, eventos e comunidades tech e conteúdos de mulheres inspiradoras da tecnologia. 

## Repositório Mulheres na Tecnologia no GitHub
Criei um repositório colaborativo no GitHub com acesse o link do [repositório Mulheres na Tecnologia no GitHub](https://github.com/anatechdev/mulheres-na-tecnologia).

## Curso Eu ProgrAmo da PrograMaria 
Cursos de programação para mulheres e pessoas de gêneros minorizados iniciantes em tecnologia! [Acesse Aprenda a Programar com a PrograMaria](https://www.programaria.org/cursos-programaria/). Eu sou **Embaixadora da PrograMaria** e recomendo as iniciativas da PrograMaria que proporcionam um ambiente acolhedor para todes. Vamos Juntes!

## Impulsione uma Mulher na Tecnologia
Participe e apoie a campanha de bolsas de estudo dos cursos Eu ProgrAmo da PrograMaria #ImpulsioneUmaMulherNaTecnologia

## Elas Inspiram Brazilians in Tech
Entrevistas com mulheres da tecnologia, exatas, engenharias e STEM. Acesse [Participe BiT](https://www.novo.braziliansintech.com/participe)

## Mais Mulheres em Tech
Plataforma de Cursos de Capacitação de Tecnologia e Carreira da WoMakersCode. A 1ª plataforma brasileira criada por mulheres, com a missão para capacitar mulheres em tecnologia e inovação 🎉 [Acesse a Plataforma](https://www.maismulheres.tech/)

## Projetos Reprograma
Tem como missão: reduzir a desigualdade de gênero e raça na tecnologia para promover a diversidade, por meio da educação. Alguns dos Projetos é o Educa{devas}: Formando educadoras tech. [Conheça a Reprograma](https://reprograma.com.br/)

Vamos Juntas!
Ana Maria | @anamaria 
[www.anamaria.dev.br](https://www.anamaria.dev.br/)
[instagram.com/ana.tech.dev](instagram.com/ana.tech.dev)
清 數 貸款
Published: 2024-03-02 22:47:38

在金融彈性至關重要的時代，對快速、便利的貨幣挑戰解決方案的需求導致了線上借貸的興起。 無論您是在尋找小額貸款、無收入貸款還是私人貸款公司，本文都是一本全面的指南，可幫助您解決在線申請貸款、債務減免和管理財務責任的複雜問題。

小額貸款：簡介

小額貸款是面臨意外開支或尋求資助短期專案的個人的財務生命線。 線上借貸平台已成為有需要的人的便利選擇，可以輕鬆申請並快速批准。
**_[清 數 貸款](https://www.funki.com.hk/balance-transfer)_**
無收入貸款和私人貸款公司

雖然傳統貸方可能需要收入證明，但一些線上平台迎合那些沒有穩定收入的人。 無收入貸款為收入來源不穩定的個人提供了另一種選擇，提供了傳統貸方可能無法提供的靈活性。 在網路上營運的民間貸款公司透過簡化申請流程和審批程序，進一步提高了可近性。

現金貸款：快速方便

在緊急的財務狀況下，立即需要現金至關重要。 提供現金貸款的線上借貸平台因其快速的申請流程和快速的資金支付而受到歡迎。 當出現意外費用時，這些貸款可以節省開支，為彌補財務缺口提供橋樑。

貸款申請流程：無縫體驗

在線申請貸款變得非常簡單。 憑藉用戶友好的介面和最少的文件要求，線上貸款申請可以節省時間並消除冗長的文書工作的麻煩。 在家中舒適地進行申請的便利性使整個過程更具吸引力。

債務減免和負責任的借貸

對於那些背負現有債務負擔的人來說，探索債務減免方案至關重要。 線上借貸平台可以提供債務合併貸款，允許個人將多筆債務合併為一筆可管理的付款。 這種簡化的方法可以簡化財務義務，並為實現債務自由提供明確的道路。

網路借錢：數位化優勢

數位時代徹底改變了借貸方式，使其比以往任何時候都更容易獲得。 線上借貸平台將借款人與各種貸款人聯繫起來，促進良性競爭，從而帶來更好的條款和利率。 這種數位化方法也加快了貸款審批流程，使借款人能夠及時獲得資金。

一鍵清除：簡化還款流程

「一筆清」的理念強調集中還款系統的效率。 網貸平台往往提供借款人集中付款的功能，簡化還款流程。 這種簡化的方法最大限度地降低了逾期還款的風險，並幫助借款人履行其財務承諾。

清算大額金額和卡號

清算大量資金並有效管理卡號對於維持財務健康至關重要。 線上借貸平台可以提供餘額轉帳帳戶等解決方案，使借款人能夠無縫整合和管理其未償餘額。 這種積極主動的方法可以幫助個人掌控自己的財務並努力實現無債務的未來。

結論

在網路借貸領域，小額貸款、無收益貸款、民間借貸公司的選擇非常豐富。 無論您是需要立即現金還是尋求債務減免，線上借貸平台都能提供多功能且便利的解決方案。 透過利用簡化的應用程式、集中還款和有效的債務管理的數位優勢，借款人可以充滿信心地駕馭金融格局。 當您探索各種可用選擇時，請記住負責任地借貸，並在實現財務自由的過程中優先考慮財務健康。
Time to share your RSS feeds 🙌❤️
Tags: wecoded, discuss, rss
Published: 2024-03-02 22:23:19

I've always liked **RSS feeds**, gathering everything together on an application or whatever, to keep abreast of a new article (or other entry) without having to systematically check EVERY website to see if there's anything new. 

Thanks to @erikgiovani for re-sharing the repository [on your post](https://dev.to/erikgiovani/women-in-tech-51l6). I've been able to expand my list, and give more womens voices, especially on topics that interest me like accessibility! ♿

{% embed https://github.com/ErikGIovani/mujeres-en-tecnologia no-readme %}

Don't **hesitate to share your RSS feeds and those you follow**!

___
_Did you know that every DEV profile has its own RSS Feed? [There mine](https://dev.to/feed/thomasbnt.rss)!_
Aplicações de Segurança no Desenvolvimento de um Software: Hash e Salt #1
Tags: programming, node, security, cybersecurity
Published: 2024-03-02 22:12:13

Estou desenvolvendo um ERP completo para a área de Odontologia, onde posso aprimorar meus conhecimentos e colocá-los em um projeto profissional real. Durante este período, estou utilizando o NestJs para criar os primeiros endpoints, incluindo um para login. Aprendi mais sobre como armazenar senhas em banco de dados e protegê-las usando Hash e Salt.


## O Salt e sua funcionalidade:

O salt é a adição de caracteres, palavras, termos ou mesmo números que introduzem certa aleatoriedade nos algoritmos e tornam-nos mais difíceis de decifrar. Geralmente, são adicionados antes da criptografia e podem ser fixos ou aleatórios. Um exemplo seria o seguinte:

| Senha  | Hash | Hash + Salt     |
|------------|----------|-----------|
| `123456`    |  `213465`      | 213465654321A!&**      |
| `senha123`      | `1a2b3c` | 1a2b3cxyz987$% |
| `segredo456`      | `987zyx` | 987zyx!&*abc123 |
| `minhasenha`      | `senha123` | senha123ABCD!@# |

 criação de um salt e a implementação de uma função hash levam muito mais em consideração, mas o objetivo é aumentar a complexidade, especialmente porque bancos de dados de hashes de senhas comuns são amplamente conhecidos e isso compromete a segurança de aplicativos.


##  Como está sendo aplicado na prática? 

Estou utilizando a biblioteca bcrypt no NestJs que tem a função de criar todos os hashs e salts já em funções proprias, o que facilita não só o trabalho de não precisar fazer manualmente, como também garante que a mesma siga todos os padrões de segurança.

Para instalar a lib e utilizar no nestJs:

```
$ npm i bcrypt
$ npm i -D @types/bcrypt
```

Seguindo o exemplo da documentação você pode usar a função `hash` da seguinte forma:

```
import * as bcrypt from 'bcrypt';
const saltOrRounds = 10;
const password = 'random_password';
const salt = bcrypt.genSaltSync(saltRounds)
const hash = bcrypt.hashSync(password, salt)
```

Onde `saltOrRounds` define o valor de caracteres
`password` é a senha a ser criptografada
com isso passamos  `saltRound` como parâmetros da função  `genSaltSync` que é responsável pela criação do salt, a pós isso
passamos na função `hashtSync`a senha e o salt criado.

Dando `console.log(hash)` já vamos ter a combinação que foi criada.

###  Referências

A documentação da lib se encontra em: [https://www.npmjs.com/package/bcrypt](https://www.npmjs.com/package/bcrypt) para mais funcionalidades.


---

Feito com ❤️ por Arthur 

Veja meus projetos no [Github](https://github.com/athcc) e conecte-se no [LinkedIn](https://www.linkedin.com/in/arthcc).
Download Twitter Videos and Images with Our Powerful API
Tags: react, android, flutter, swift
Published: 2024-03-02 21:40:54

Are you tired of searching for the perfect tool to download Twitter videos and images, only to find that most options are slow and unreliable? Well, we have some exciting news for you! Our team has developed a powerful API called Twitter Downloader that lets you download Twitter videos, GIFs, and images with just a few lines of code.

Twitter Downloader API is the perfect solution for developers, marketers, and business owners who need a reliable and efficient way to download media from Twitter. Our API is easy to use and integrates seamlessly into your app or website, allowing you to provide your users with a fast and hassle-free download experience.

With Twitter Downloader API, you can download Twitter videos and images programmatically, eliminating the need for manual downloading or unreliable third-party apps. Our API is fully documented and comes with detailed instructions, making it easy to get started even if you don’t have much coding experience.

But that’s not all! Our API also includes advanced features such as support for multiple video and image formats, customizable download settings, and authentication options. Plus, we offer excellent customer support to help you with any questions or issues that may arise.

So why waste your time with unreliable Twitter download tools when you can use [Twitter Downloader API](https://rapidapi.com/JustMobi/api/twitter-downloader-download-twitter-videos-gifs-and-images)? Try it out today and see for yourself how easy and efficient downloading media from Twitter can be.

To get started, simply visit our RapidAPI page at https://rapidapi.com/JustMobi/api/twitter-downloader-download-twitter-videos-gifs-and-images and sign up for an account.
How to Easily Download Pinterest Images, Videos, and Reels with Pinterest Downloader API
Tags: api, react, javascript, nextjs
Published: 2024-03-02 21:36:59

**What is Pinterest Downloader API?**

Pinterest Downloader API is a powerful tool that allows you to download images, videos, and reels from Pinterest with ease. It’s available on RapidAPI, which means you can easily integrate it into your application or website using just a few lines of code.

**How Does It Work?**

Using the Pinterest Downloader API is incredibly simple. First, you need to sign up for an account on RapidAPI and subscribe to the Pinterest Downloader API. Once you’ve done that, you can start making API calls to download any image, video, or reel from Pinterest.

To download an image, you simply need to provide the URL of the image you want to download. The API will then return the image in a specified format, such as PNG or JPEG.

To download a video or reel, you need to provide the URL of the video or reel. The API will then return the video or reel in a specified format, such as MP4.

Benefits of Using [Pinterest Downloader API](https://rapidapi.com/JustMobi/api/pinterest-downloader-download-pinterest-image-video-and-reels):

Using Pinterest Downloader API offers several benefits, including:

Saves Time: With the Pinterest Downloader API, you can easily download images, videos, and reels from Pinterest in just a few clicks, saving you time and effort.
Flexibility: You can integrate the [Pinterest Downloader API](https://rapidapi.com/JustMobi/api/pinterest-downloader-download-pinterest-image-video-and-reels) into your website or application, giving you complete control over how you use it.
User-friendly: The API is user-friendly, making it easy for anyone to use, regardless of their technical skills.
This is a small overview on how to use the API:
https://rapidapi.com/JustMobi/api/pinterest-downloader-download-pinterest-image-video-and-reels

**Subscribe to a plan**
Navigate to the pricing tab and select a plan for your desired usage.

The first on is free to a certain limit of calls.

**Conclusion**

If you’re looking for an easy and convenient way to download Pinterest images, videos, and reels, then [Pinterest Downloader API](https://rapidapi.com/JustMobi/api/pinterest-downloader-download-pinterest-image-video-and-reels) is the solution you need. It’s available on RapidAPI, easy to use, and offers several benefits. So why not give it a try and see how it can improve your Pinterest experience?
Ordering your library + Hashes and symbols
Tags: webdev
Published: 2024-03-02 21:33:25

Today I worked on ordering my library as well as hashes and symbols. I learned about `def` methods and parameters. Also learned about `rev=false` and this causes `def` methods to default to false if the user types in 2 arguments. I should also remember to put `==` in conditionals, I've been making the mistake of putting `=` which is used for assignment. 

Building on methods is great for using code over and over without having to retype things but it is also great for abstracting or simplifying your program. 

There are two ways to write hashes
Hash literal notation is `new_hash = { "one" => 1 }
or `new_hash = Hash.new`

Along with false, nil is one of 2 non-true values in ruby. Every other object is regarded as truthful. False means not true. nil is ruby's way of saying nothing at all. 

You can add key/value pairs in `Hash.new` like this:
`empty_hash = Hash.new`
`empty_hash.store(:key, "value")
If you want to provide a default value for any key that doesnt exist in the hash, pass this argument `default_hash = Hash.new("default")`. This will return `default` instead of `nil`. The hash is empty until you explicitly add key-values when using this method.

symbols- can only be one copy of a particular symbol at a given time. They can start with a `:` and spaced with a `_`. They are primarily used with hash keys for referencing method names. They are immutable meaning they cant be changed once created. Only one copy exists at a given time, saving memory. Symbol-as-keys are faster than string-as-keys. `.to_s` is to string while `.to_sym` converts to symbol. `.intern` is also another way to convert to a symbol. 

With the new update, symbol syntax has changed to where you put the `:` after the symbol instead of before it, you dont need the hash rocket anymore.
Como instalar o VueJS
Published: 2024-03-02 21:10:19

Existem duas formas de instalar o VueJs em uma aplicação. Logo abaixo irei abordar os dois possíveis jeitos de fazer isso.

## CDN
CDN é a sigla para Content Delivery Network. É forma mais comum de ser utilizada em pequenos projetos devido a sua facilidade na instalação.
De forma breve e resumida, o CDN armazena os dados de JavaScript, CSS e imagens referentes ao Vue e os retorna da maneira mais rápida possível.

### Como instalar e adicionar o projeto?
Você pode encontrar o passo a passo mais explicativo acessando o site [VueJs](https://vuejs.org/guide/quick-start.html). Rolando um pouco a gente vai pegar apenas o link principal fornecido e adicionar ao nosso projeto.(Fica tranquilo que eu vou mostrar)

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

`<script src="https://unpkg.com/vue@3/dist/vue.global.js"></script>`

Agora vamos ao Visual Studio Code!
Crie um arquivo simples de HTML e adicione o script passado anteriormente

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

## CLI
Esse método de instalação é mais ideial dos dois, pois é possível configurar o projeto de forma rápida e completa de maneira simples.
Primeira coisa ser feita é baixar o [NodeJs](https://nodejs.org/en/download)

Após a instalação, precisamos garantir que está tudo certo com o Node e o Npm. Para isso, abra o CMD e digite os códigos para verificar a versão de instalação de acordo com a imagem.

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

Agora que já está tudo certo, abra novamente o terminal e digite o seguinte código para instalar o Vue de forma global.

`npm install -g @vue/cli`

Depois disso é criar um projeto. Entre na pasta desejada, abra o terminal e digite o comando abaixo:

`vue create nome_produto`

IMPORTANTE. Se for um projeto já criado ou se tiver sido baixado do github bastante digitar o codigo abaixo antes.

`npm install`

Depois de instalado para rodar o server é só rodar o seguinte código:

`npm run serve`

Ai é selecionar a versão do Vue e está pronto! 
Espero que tenham gostado :)
Demystifying Namespace Resources in Kubernetes: A Short Guide
Tags: kubernetes, devops, cloudnative, techcommunity
Published: 2024-03-02 20:35:19

Kubernetes has a vast number of resources, like deployments, replicasets, services, etc. Namespaces are also one of them and are most useful when you want to isolate your workloads based on environments, teams, projects, etc.


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

In simple language, namespaces are a kind of isolated environment in which you group resources like pods, replica sets, deployments, services, configmaps, etc. 

When you create a Kubernetes resource without specifying a namespace, it will be created in the default namespace. 

You can change it by applying the ``--namespace=development`` flag to every resource creation. 

Also, if you don't want to use the above flag on every resource creation, you can switch from the default namespace to any random namespace by setting your current context to that random namespace using the ``kubectl config set-context --current --namespace=random`` command and creating your resources there. 

## Let's see some action on namespaces: 

![Your Alt Text](https://media.giphy.com/media/v1.Y2lkPTc5MGI3NjExOTFnaHVzemhnY3licHM1a3Zla3Jjc3k2ODJ3dGNkbTBoaXpiNXM1NyZlcD12MV9pbnRlcm5hbF9naWZfYnlfaWQmY3Q9Zw/PXCqTNXuGlNpHABHH4/giphy.gif)

- Check how many namespaces are on the cluster:
```
$ kubectl get namespaces
>>
NAME              STATUS   AGE
kube-system       Active   48m
kube-public       Active   48m
kube-node-lease   Active   48m
default           Active   48m
finance           Active   34m
marketing         Active   34m
dev               Active   34m
prod              Active   34m
manufacturing     Active   34m
research          Active   34m
```
You can also use shorthand `ns` instead of the full resource name.

- Check the pods running in a specific namespace.
```
$ kubectl get pods --namespace=research
>>
NAME    READY   STATUS             RESTARTS         AGE
dna-2   0/1     CrashLoopBackOff   12 (4m28s ago)   41m
dna-1   0/1     CrashLoopBackOff   12 (4m9s ago)    41m
```

- Run a specific pod in a specific namespace.
```
$ kubectl run redis --image=redis --namespace=finance
>>
pod/redis created
```
If you want to create a pod using the YAML definition file, you can define the namespace name in the metadata section.

```
apiVersion: v1
kind: Pod
metadata:
  name: my-pod
  namespace: my-namespace
spec:
  containers:
  - name: nginx
    image: nginx
```
- does one pod running in namespace A access the other pod running in namespace B?

pods can communicate with other pods residing in different namespaces using their **Fully Qualified Domain Names** (FQDNs), like pod-a can talk with pod-b using it's FQDN, `pod-b.namespace.svc.cluster.local`. The same works for pod-b as well.

# Summary
Kubernetes namespaces provide a powerful tool for organising and isolating workloads within a cluster.We will see more about namespaces in advance in upcoming blogs.
Justifying text in dev.to; You Cannot!
Tags: markdown, html, css
Published: 2024-03-02 20:31:31

Text justification in posts is currently not supported, and attempts to use HTML tags for this purpose are unsuccessful.

For example, this method does not achieve text justification:
```html
<div style="text-align: justify;">
Your text intended to be justified here will not align as expected. Ideally, text should align evenly along both the left and right margins, but this outcome is not achieved with the current setup.
</div>
```

Similarly, this approach also fails:
```html
<p style="text-align: justify;">
Your text intended to be justified here will not achieve the desired fully justified alignment, where text is evenly aligned with both margins.
</p>
```

This limitation can be particularly frustrating for those who are used to academic formatting standards. Unfortunately, I have not been able to find any documentation or online resources that offer a solution.

I am just writing to let you know :)))

It would be greatly beneficial if this feature were introduced shortly. Ideally, it could be implemented into the HTML template section, allowing for optional activation in each post to accommodate varying preferences.

-- Ali
Unleashing the Power of 10Web AI for Website Creation
Published: 2024-03-02 20:17:28

In today's digital age, having a strong online presence is crucial for businesses and individuals alike. Creating a website that not only looks stunning but also functions seamlessly can be a daunting task. This is where the innovative technology of [10Web AI ](https://10web.io/?_from=patrick13)comes into play, revolutionizing the website creation process. By harnessing the power of artificial intelligence, 10Web offers a plethora of benefits that make it a game-changer in the industry.

One of the key advantages of using 10Web AI for website development is its ability to streamline the design process. With its intelligent algorithms, 10Web can analyze your content and automatically generate a visually appealing layout that is tailored to your needs. This not only saves time but also ensures that your website has a professional look and feel. Additionally, [10Web's AI](https://10web.io/?_from=patrick13) can optimize your site for speed and performance, helping to enhance user experience and boost search engine rankings.

Furthermore, 10Web AI offers advanced security features that help protect your website from potential threats. By constantly monitoring for suspicious activities and vulnerabilities, 10Web can detect and mitigate security risks in real time, keeping your site safe and secure. This peace of mind allows you to focus on growing your online presence without worrying about cyber-attacks or data breaches.

In conclusion, the benefits of using 10Web AI for website creation are undeniable. From its intuitive design capabilities to its robust security features, 10Web empowers users to build a professional and secure online presence with ease. By leveraging the power of artificial intelligence, 10Web is setting a new standard for website development, making it a valuable tool for businesses, bloggers, and anyone looking to establish a strong online presence.
Quickly inspect or sanitize PATH variable on both Windows and Linux
Published: 2024-03-02 20:11:13

---
title: Quickly inspect or sanitize PATH variable on both Windows and Linux
published: true
description: justpath project update
tags: 
# cover_image: https://direct_url_to_image.jpg
# Use a ratio of 100:42 for best results.
# published_at: 2024-03-02 19:52 +0000
---

I think [this quote][quote] about `PATH` environment variable is quite right:

> I always get the feeling that nobody knows what a PATH is and at this point they are too afraid to ask.

[quote]: https://www.reddit.com/r/linuxquestions/comments/pgv7hm/comment/hbf3bno/

`PATH` environment variable syntax on Windows and Linux is different, so I wrote my own utility `justpath` to be able to explore `PATH` more easily.

I did start with one line commands that show directories line by line:

```bash
echo $PATH | tr ":" "\n"
```

```powershell   
$env:PATH.split(";")
```

But what if I wanted to make a list of duplicate directories or show paths that are not valid - not too easy to make a one-liner for this behavior and this is where a Python script comes handy. After install I can do:

```
justpath --invalid
justpath --duplicates
```

More options and documentation [here at project repo](https://github.com/epogrebnyak/justpath). 
`justpath` can purge invalid or duplicate paths 
and make a new `PATH` string that you can use at your 
shell startup.