Skip to content

Instantly share code, notes, and snippets.

View ddanielsantos's full-sized avatar
🥲

Daniel Santos ddanielsantos

🥲
  • Fadesp
  • Belém - PA - Brazil
  • 21:27 (UTC -03:00)
  • Bluesky @ddaniel.me
View GitHub Profile
@ruhtar
ruhtar / parser.go
Created August 4, 2024 00:31
[Golang] String to Int Parser without libs neither native functions
package main
import (
"fmt"
)
func main() {
result, err := toInt("431212")
if err != nil {
fmt.Println("deu erro moral")
@Every2
Every2 / to_int.rs
Last active October 11, 2024 22:47
to_int do Zan
//Não cobre os casos negativos
fn to_int(str: &str) -> u32 {
let mut n = 0;
for i in str.chars() {
n *= 10;
n += i as u32 - 0x30;
}
n
}
@lavafroth
lavafroth / config.toml
Created March 27, 2024 03:10
Helix config for lazygit integration
[keys.normal]
C-g = [":new", ":insert-output lazygit", ":buffer-close!", ":redraw"]
@arthcc
arthcc / hashNdSalt.md
Last active May 17, 2024 13:56
hashNdSalt.md

Aplicações de Segurança no Desenvolvimento de um Software

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 que é Hash?

Em resumo, o hash pode ser considerado como uma função matemática que transforma qualquer arquivo ou conjunto de caracteres em uma sequência única de letras e números. Uma vez que o Hash é gerado, ele nunca mais pode ser alterado. O mesmo segue o padrão de ter o mesmo tamanho (entre 128 e 512 bits) e o mesmo número de caracteres alfanuméricos.

Uma função hash é unidirecional, semelhante a uma função sobrejetiva, onde a imagem é igual ao contradomínio. Um hash pode ser quebrado de várias maneiras por meio de ataques de força bruta ou dicionário.

function query(label) {
console.log(`(${label}) created 'lazy promise', but not started yet`);
return {
then(r) {
console.log(`(${label}) started!`);
// ... process query
// "return" them:
r([{ data: `result for ${label}` }]);
},
};
@biantris
biantris / personal-investment.md
Last active December 6, 2022 13:28
personal investment by sseraphini discord server

(personal investiment thread)

Ítalo S. : Melhores investimentos que você fez em você?

sibelius :

  • books
  • community
  • crossfit
  • learn in public
  • sharing knowledge in public

Roadmap de estudos de SQL

Aviso: Muitas vezes detalhes de várias operações podem variar de banco para banco. Em questões onde fiquei em dúvida, este documento segue o funcionamento do PostgreSQL, pois é o banco que conheço melhor.

Pré-requisito: Álgebra Relacional básica

Antes de começar a escrever SQL, você precisa entender o modelo de como um banco de dados relacional funciona. Não precisa se aprofundar muito, mas você precisa entender como que dados e relacionamentos entre eles são representados. (Nota importante: Relacionamento e relação não são a

@huytd
huytd / money-parser.rs
Created May 8, 2022 08:57
A simple recursive descent parser in Rust
use std::fmt::Display;
/*
money = currency_symbol number ;
currency_symbol = '$' | '£' | '€' ;
number = INTEGER ;
*/
#[derive(Debug, PartialEq, Clone, Copy)]
enum TokenType {
@Grubba27
Grubba27 / fizzbuzz.ts
Created April 20, 2022 01:13
FizzBuzz made in typelevel
type Reverse<A> =
`${A}` extends `${infer AH}${infer AT}`
? `${Reverse<AT>}${AH}` : A
type Digs = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
type DigsNext<I = Digs, R = {}> =
I extends [infer Head, infer Next, ...infer Tail]
@vit0rr
vit0rr / start.md
Last active April 22, 2025 14:27
Como iniciar no Rust?

A maneira mais comum para começar a estudar Rust é ler o livro oficial da linguagem. Irá ensinar sobre vários dos conceitos mais importantes sobre a linguagem.

A leitura pode ser acompanhada por: