Blog do Batata
Olá. 👋
Sou Gabriel Scatolin (a.k.a. CypherPotato), programador amador desde 2014, profissional desde 2019.
Tenho alguma experiência com:
- C#
- PHP
- SQL
- HTML/JS/CSS
- Outras coisas, como Regex, criptografia, blockchain e aquele monte de coisa de programador.
Sou membro da .NET Foundation.
Visite alguns de meus projetos de código aberto:
- Sisk, um servidor HTTP leve, fácil e super rápido.
- Cascadium, um experimento de pré-processador para CSS.
- Cryptonite, uma biblioteca simples para operações criptográficas.
Quer falar comigo?
Envie um e-mail para mim: [email protected]
Últimas publicações
Sobre o ego da comunidade open-source
30 de outubro, 2023
Pouco tempo atrás eu criei o [Sisk](https://sisk.project-principium.dev/), um projeto de código aberto que serviria como uma **alternativa ao ASP.NET**, e gostaria de compartilhar minha experiência com isso até então.
Em no...
Checklist de Política de Privacidade
23 de outubro, 2023
Sabemos que programador não é apenas escrever códigos. O trabalho da programação vai além disso: vai para a área de segurança também. Proteger o seu cliente/empresa é essencial para garantir a segurança do seu emprego....
Descomplicando o Path.Combine
8 de maio, 2023
Em algum momento você já tentou concatenar dois diretórios e o resultado não foi o que você queria? Vou te dar uma solução aqui.
Desde cedo já ouvia que concatenar dois caminhos "na mão" nunca era a melhor solução. A ...
Ponteiros ou referências? Qual usar?
5 de maio, 2023
Quando devemos usar ponteiros e quando devemos usar referências?
Em uma recente discussão no [Stack Overflow em Português](https://pt.stackoverflow.com/questions/581817/quando-usar-ponteiros-e-quando-usar-refer%c3%aancias), e...
É seguro alternar byte com XOR em uma criptografia unidirecional?
27 de abril, 2023
## Pergunta:
Eu tenho um vetor de bytes `a`, e um segredo que considero seguro, do mesmo tamanho de `a`, chamado de `k`, e estou cogitando utilizar XOR em `a`, onde ocorre na mesma posição de `k`, para obter um vetor criptogra...
Geração de bytes aleatórios do zero: ponteiros e conceito
18 de abril, 2023
Vou mostrar para vocês como fiz meu próprio gerador de bytes aleatórios que permite a utilização de uma semente em seu "motor". Escrevi o código em C# e utilizei código não seguro para alcançar o melhor desempenho possí...
O que significa null! em C#, qual o proposito real dessa junção na atribuição?
16 de novembro, 2022
O que significa null! em C#, qual o proposito real dessa junção na atribuição?
## Pergunta:
Com [exemplo do site][1] da Microsoft tem nessa classe um atribuição de `null!` como demonstrado na classe `ContactDetails`:
```...
Como checar apenas com CSS se um input está preenchido?
22 de abril, 2022
É possível fazer um seletor css que selecione input type="text" que tenham um valor inserido? Além disso, é possível para inputs que não tenham valor inserido?
Observação: sem uso de Javascript. Apenas HTML + CSS.
Sim, ...
O que é um pentester?
28 de janeiro, 2020
Nessa postagem eu detalho a diferença entre pentester, hacker ético, engenheiro de software e programadores.
Pentester
==
Também é conhecido como *Testador de Penetração*, *Avaliador de Invasão*. Como seu nome já diz, u...
Como alterar nível de acesso de propriedade em uma herança?
15 de novembro, 2019
## Pergunta:
Eu tenho uma classe que quando herdada quero que um de seus atributos de público se torne privado, para que o usuário não tenho acesso ao uso dessa variável nessa classe, mas não sei como fazer isso.
```csharp...
O que é um Vaporwave?
14 de novembro, 2019
Não existe uma regra específica para qualificar um produto como Vaporware, e eu vou explicar o porquê.
Vamos começar com sua definição: _vaporware_ é aquele lançamento nunca lançado. Normalmente você nunca associa um a...
O Windows Forms está morto?
3 de julho, 2019
## Pergunta:
O Windows Forms já está a aproximadamente 17 anos no mercado desde o .NET Framework 1.0 lançado em 2002, e ainda permanece uma das principais limitações de funcionar apenas em Windows, como o próprio nome suge...