Index of /pub/


NameLast modifiedSizeDescription
../--
kutta-no-navegador.md2026-08-28 14:054.3KKutta now runs in a browser tab, compiled to WebAssembly from the same source as the desktop build. A solver step costs 6.1 ms under wasm against 2.3 ms native, and that number decided the simulation rate.
kutta.md2026-08-28 14:054.2KKutta is a small 2D wind tunnel written in Go with Ebitengine: it streams a Lattice-Boltzmann flow past an airfoil you can draw, cut into a wing and flap, and animate. Qualitative visual intuition, not validated CFD.
glaze.md2026-08-28 14:056.2KHow Glaze stopped embedding a C++ library and started calling the operating system's WebView directly, in pure Go, using purego to keep cgo and native dependencies out of the binary.
singleflight.md2026-08-28 14:055.6Ksingleflight is not a cache. It just keeps simultaneous calls for the same key from doing the same expensive work several times. Once the call finishes, the entry is removed.
text_chunker.md2026-08-28 14:053.9KAn overlapping text chunker in Go using the stdlib iter package, without cutting words in half.
cofre-cifrado-em-go.md2026-08-28 14:052.8KCombining terminal password input, encryption at rest, and a SQLite snapshot into a vault that lives in RAM and exists on disk only as an encrypted blob.
sqlite-na-ram-serialize-deserialize.md2026-08-28 14:052.2KRunning SQLite entirely in memory and taking a snapshot of the database bytes with serialize/deserialize, using the modernc.org/sqlite driver.
criptografia-at-rest-com-a-stdlib-go.md2026-08-28 14:053.2KEncrypting data at rest with nothing but Go's standard library: PBKDF2 to derive the key from the password and AES-256-GCM to encrypt and authenticate.
capturando-senhas-no-terminal-go.md2026-08-28 14:051.3KReading passwords in the terminal in Go without echo and with confirmation on first use, using golang.org/x/term.
neko.md2026-08-28 14:055.3KA Go reimplementation of the classic Neko: transparent window, original sprites, sound, and a cat that chases the cursor across the screen.
trigger-no-sqlite.md2026-08-28 14:051007SQLite triggers to automate actions like updating timestamps
get-from-map.md2026-08-28 14:052.3KRecursive Go function to access values in nested maps
etc-rc-local.md2026-08-28 14:052.5KThe classic /etc/rc.local still works even after 40 years of obsolescence.
serve-webdav-with-go.md2026-08-28 14:054.7KHow to configure and run an SFTP/WebDAV server using Go (sftpdav). Check out practical examples, security tips, and how to leverage standard libraries for building robust and efficient solutions.
protegendo-credenciais-e-configuracoes-com-conteiner-criptografado.md2026-08-28 14:053.9KCreate and manage an encrypted container to securely protect passwords, keys, and other sensitive data in a practical way without sacrificing performance
lqs-uma-ferramenta-prtica-para-testar-sql.md2026-08-28 14:053.1KLQS: a practical tool for testing and debugging SQL. It allows integrating metadata, Lua scripts, and auxiliary queries to optimize your workflow and detect errors early.
nvim-sort.md2026-08-28 14:052.0KLua functions for sorting and removing duplicate lines in Neovim.
nvim-bookmarks.md2026-08-28 14:054.2KHow to create a bookmark system in Neovim
goscope-explorando-e-navegando-em-projetos-go.md2026-08-28 14:053.7KGoScope, command-line tools to explore Go projects and efficiently locate functions, variables, and types. Learn how to use them to navigate code interactively and boost your productivity.
executando-comandos-remotos-de-forma-interativa-com-ssh.md2026-08-28 14:052.1KHow to run commands on remote servers without starting full sessions, keeping interactive features and simplifying automation with SSH.
tracebacks-em-go.md2026-08-28 14:053.6KHow to get stack traces in Go with runtime.Caller and runtime.CallersFrames. Trace errors, customize logs, and improve your code's debugging.
transmissao-de-dados-usando-som-via-telefone-de-copos.md2026-08-28 14:053.6KTransmitting data with sound, two plastic cups, and a string, combining creativity, nostalgia, and technology.
compilacao-estatica-da-lingagem-lua.md2026-08-28 14:051.7KHow to statically compile the Lua interpreter to avoid problems with dynamic library dependencies.
encontrando-os-paths-de-executaveis-usando-go.md2026-08-28 14:051.5KHow to use Go's exec.LookPath function to check whether programs are installed on the system and get their full paths.
checksum-com-golang.md2026-08-28 14:051.9KHow to use the FNV-1a algorithm with hash pools in Go, reducing garbage collector pressure without compromising performance.
mtls-implementando-autenticacao-mutua.md2026-08-28 14:057.5KMutual authentication with mTLS in Go, step by step. This guide covers certificate creation, server and client configuration, and security best practices to protect your applications.
hmac-assinatura-de-mensagens-segura-em-go.md2026-08-28 14:052.4KSecure API authentication using HMAC (Hash-based Message Authentication Code) in Golang.
validacao-e-integracao-segura-de-json-em-apis-go.md2026-08-28 14:053.9KHow to safely validate and integrate JSON in Go APIs using json.RawMessage. And how to log invalid JSON errors while keeping the system's normal flow running.
forkbomb-do-codigo-a-defesa.md2026-08-28 14:056.1KWhat a fork bomb is, how it works with examples in bash, C, and assembly, and the best practices to prevent this kind of DoS attack on modern systems.
manipulando-setuid-e-setgid.md2026-08-28 14:051.9KHow to configure special permissions with setuid and setgid to run programs with superuser privileges
reducao-de-privilegios-com-golang.md2026-08-28 14:052.5KHow to improve the security of Go programs by dropping execution privileges. Learn how to check and change users and groups on UNIX-like systems, with practical code examples and good practices to minimize attack risks.
referencias-nos-comentarios-com-golang.md2026-08-28 14:051.7KReferences in Go code comments to make navigation easier.
efeito-plasma-no-terminal-com-golang.md2026-08-28 14:052.8KHow to create a plasma effect in the terminal with Golang, an example from the Go study group
feliz-2025-com-fogos-de-artificio-no-terminal-com-golang.md2026-08-28 14:054.8KHow to create a fireworks animation in the terminal using Go.
reescrevendo-velho-tsr-usando-bash.md2026-08-28 14:055.5KAn MS-DOS TSR (Terminate and Stay Resident) example written in C, rewritten in Bash for UNIX-like systems.
subindo-api-via-proxy-reverso-caddy-go.md2026-08-28 14:054.1KHow to deploy an API written in Go behind a reverse proxy with the Caddy HTTP server.
benchmark-retornos-nomeados-vs-explicitos-go.md2026-08-28 14:051.9KPerformance comparison between named and explicit returns in Go. Learn how to measure speed with benchmarks and interpret the results.
escrevendo-sobre-programacao-de-computadores.md2026-08-28 14:052.3KWriting about programming in a clear and engaging way.
personalizando_neovim_ordenacao_e_remocao_de_linhas_duplicadas_com_lua.md2026-08-28 14:052.5KLua functions for sorting lines and removing duplicates. Improve how your code is organized and make your programming workflow more efficient.
criando-sistema-de-bookmarks-no-neovim-com-lua.md2026-08-28 14:054.4KLearn how to build a bookmark system in Neovim using Lua to speed up your workflow. This article shows how to customize the editor to mark and quickly jump back to important spots in your code.
script-rapido-navegacao-diretorios-fzf.md2026-08-28 14:052.8KSpeed up directory navigation with a Bash script and fzf that builds an interactive menu of recently visited locations
diminuindo-a-complexidade-cognitiva-na-programacao.md2026-08-28 14:055.9KReducing cognitive complexity matters because it speeds up your work and makes it more enjoyable.
reestruturando-artigos-para-clareza-e-concisao.md2026-08-28 14:051.1KImproving my articles to make them clearer and more direct, for a faster read
virus-no-laboratorio.md2024-10-25 22:434.0KHow a VBA macro virus slowed down a pharmaceutical lab, and why it pays to analyze a problem before investing in complex solutions.
arte-generativa-em-javascript-segunda-parte.md2024-09-29 16:243.8KExploring generative art with simple JavaScript programming, bringing creativity and code together to enrich the site experience.
arte-generativa-em-javascript.md2026-08-28 14:054.6KI added a bit of JavaScript to create generative art and make use of the side margins of the site that go unused when the screen is very wide.
computacao-pos-apocaliptica.md2026-08-28 14:053.7KIn this text I propose an interesting exercise: how to preserve some of humanity's knowledge after a catastrophe of apocalyptic proportions.
internet-time.md2024-07-10 02:416.1KCreating my own version of Swatch Internet Time, but with a personal twist
deploy_de_aplicacoes_usando_curl.md2026-08-28 14:054.1KHow to distribute Linux application binaries using curl and bash scripts.
hierarquia-de-processos.md2026-08-28 14:051.6KDiscovering the process hierarchy.
estudando-assembly.md2026-08-28 14:056.3KWhy studying assembly matters and how it will make you a better programmer.
arquivos-ocultos-no-unix.md2026-08-28 14:051.7KA classic case of how a bug became a feature.
por-que-meu-site-eh-tao-feio.md2026-08-28 14:054.5KThe reasons why my site is considered ugly by many, but beautiful to me.
programacao-assistida-por-ia.md2026-08-28 14:057.3KThoughts and tips on using AI to help with software development.
escrevendo-software-para-durar.md2026-08-28 14:0513.6KA few tips I consider important for writing resilient software that lasts for years and is easy to maintain.
golang-retrocompatibilidade.md2026-08-28 14:053.7KMost languages grow by adding new features and new capabilities. Go focuses on optimizing its existing foundation with a strong emphasis on backward compatibility.
golang-erro-de-arredondamento.md2026-08-28 14:052.3KErrors when converting from floating point to integer are common, and this isn't a problem specific to Go. This is a classic example of that problem.
cpbr14.md2024-07-01 23:56476A brief introduction, equipment, and software
gps-celular-na-raspberry-pi.md2022-09-08 02:302.3KHow to share your phone's GPS with the Raspberry Pi
tr-substituindo-caracteres.md2026-08-28 14:052.1KThe tr utility copies characters coming from stdin and emits filtered output according to the parameters you provide.
fmt-formatando-texto.md2022-08-27 04:201.7Kfmt is a simple, fast text formatter. Its purpose is to format text files or strings received via stdin.
golang-cliente-servidor-socket-chat.md2026-08-28 14:053.6KA chat example (TCP/IP socket) written in Go with goroutines and channels, this time with a bit of optimization for speed.
assembly-m1.md2022-08-17 01:363.2KGetting started with assembly on M1/ARM64 processors.
golang-cliente-servidor-socket-signals.md2026-08-28 14:052.1KAdds signal handling to the TCP socket client/server example.
golang-cliente-servidor-socket-ping-pong.md2026-08-28 14:054.2KAn example of a socket client and server written in Go with persistent connections, now sending and receiving ping/pong messages to make sure the connection is alive.
golang-cliente-servidor-socket-com-canais-e-goroutines.md2026-08-28 14:054.6KAn example of a socket client and server written in Go with persistent connections, now using goroutines and channels.
golang-cliente-servidor-socket.md2026-08-28 14:054.8KAn example of a socket client and server written in Go with persistent connections.
linux-mais-rapido-menos-seguro.md2022-09-09 01:372.1KSetting up grub for mitigations=off.
area-de-transferencia-remota.md2026-08-28 14:054.9KHow to copy to the local clipboard from a headless server with no graphical environment.
acelerando-o-site.md2022-07-16 19:533.5KEmbedding images and CSS directly into the HTML to avoid extra browser requests and speed up the web page.
git-como-estender.md2021-10-26 22:091.3KHow to extend the git command by adding your own parameters and new features.
headless-virtualbox.md2021-10-04 15:275.0KHow to use VirtualBox in headless mode, configuring virtual machines from the command line.
docker-multi-stage-build.md2021-06-17 21:481.9KBecause Golang produces static, self-contained executables, we don't need anything installed in the container, not even libc. That means we can use a scratch image and build a truly tiny container.
auto-cpufreq.md2022-09-09 01:371.1KOptimizing power consumption by adjusting CPU frequency on Linux
configurando-novo-servidor.md2022-02-12 11:196.1KA practical guide to the setup steps I usually run when I bring up a new server, whether it's a cloud machine, a local VM, or even a Raspberry Pi.
o-manual-do-unix.md2026-08-28 14:052.1KTips on the man and mandoc utilities
dica-do-comando-find.md2022-09-09 01:371.3KHow to exclude files when using the find command
go-http-timeout.md2020-10-04 12:501.3KHow to configure default timeouts for your HTTP server in Go.
go-controle-de-sessao.md2020-10-04 12:275.9KHow to build session control in Golang using Gorilla sessions, keeping data in cookies securely with AES-256 encryption
descobrindo-ip-com-golang.md2020-05-23 10:573.0KHow to find the client's and server's IP using Golang
diferencas-entre-slices-e-arrays-golang.md2022-09-09 01:376.4KDifferences between slice and array in Go, and a few usage tips.
problemas-programando-em-golang.md2026-08-28 14:0513.4KNo programming language is perfect, and in this text I try to describe everything that can go wrong using Golang.
golang-shadow-variaveis.md2022-09-09 01:373.4KHow to find variable shadowing in Golang using go vet with an experimental module
primeiros-passos-com-assembly.md2026-08-28 14:056.1KSetting up a development environment for assembly programming, plus a first example.
web-scraping-com-golang.md2020-02-22 20:433.9KWeb scraping example with Golang and the Chrome DevTools Protocol
assembly-emulador-8086.md2022-09-09 01:3713.6KMessing around with a partial emulator that interprets a few 8086 instructions
home-office.md2022-01-30 09:4811.0KSome notes from my experience working remotely and tips for anyone getting started
basic-ainda-esta-vivo.md2026-08-28 14:053.0KBelieve it or not, commercial BASIC versions are still being developed
erro-na-ordem-do-switch.md2020-02-22 19:002.4KA hard-to-debug bug involving interfaces and switch cases in Golang
cobertura-de-testes.md2022-09-09 01:373.1KA script for viewing unit test coverage as HTML
quine-em-golang.md2026-08-28 14:052.3KHow to write a program that prints itself in Go.
postgresql-ssl-golang.md2022-09-09 01:378.4KConfiguring PostgreSQL to accept SSL connections from Go
unix-domain-socket-golang.md2026-08-28 14:053.9KHow to use Unix Domain Sockets for efficient and secure inter-process communication, with practical examples in Go and netcat.
json-lint-golang.md2020-02-22 20:523.2KWe use the error returned by json.Unmarshal to build a more useful and complete error message, pointing at the exact spot with an arrow and everything.
middleware-em-golang.md2020-02-22 20:524.9KHow to share information between the HTTP middleware in your system using context.
middleware-usando-negroni.md2020-02-22 20:524.5KExamples of how to build middleware for your HTTP services, using the standard library and also the classic Negroni plus Gorilla mux combination.
goto-label-em-golang.md2026-08-28 14:053.7KHow to use goto and labels in Go with practical examples. How to apply break and continue safely and clearly, following good programming practices.
mensageria-com-nats-e-golang.md2020-02-22 20:521.7KNATS is a messaging system written in Go, very fast and easy to use. It connects systems, whether IoT, mobile applications, or anywhere you need high performance when exchanging messages.
protobuf-com-golang.md2026-08-28 14:057.9KFirst steps using Protocol Buffers with Go
ssh-usando-chave.md2026-08-28 14:052.5KHow to set up SSH keys to access your servers more securely
json-parser.md2020-02-22 20:523.5KHow to teach the JSON parser to work with data in new formats
interface-contrato.md2026-08-28 14:053.4KTips on using interfaces in Go as a contract for structs
proton-vpm.md2026-08-28 14:055.1KTips on how to use a VPN on macOS
interface-vazia.md2022-09-09 01:435.7KTips on how to use the empty interface and the risks that come with it
json-golang.md2020-02-22 20:527.9KTutorial showing several ways to handle JSON using recursive functions and structs
apm-msdos-assembly.md2026-08-28 14:055.6KSmall utilities to reboot and shut down MS-DOS via APM using Borland Turbo C and Assembly
dropbox-com-golang.md2021-06-10 00:193.2KA tutorial on how to access Dropbox and upload, download, and list files
comandos-longos-no-terminal.md2022-09-09 01:371.8KA quick tutorial on using a text editor to edit command lines in the terminal
compilacao-estatica-com-golang.md2022-09-09 01:372.1KHow to compile your Go code without any external dependencies
formas-que-uso-para-acessar-porta-serial.md2022-09-09 01:373.4KSome of the ways I use to access the serial port
um-conto-de-terror-para-programadores.md2026-08-28 14:052.1KA true story of dying servers and destroyed information, for programmers with strong hearts
go-brincando-com-bits.md2026-08-28 14:053.2KHow to manipulate bits using Golang
dicas-de-go-defer.md2026-08-28 14:053.1KDefer helps a lot, but it also carries some risk. Here are a few usage tips
assembly-assembler-e-linguagem-de-maquina.md2026-08-28 14:052.5KExplaining the difference between assembly, assembler, and machine language
index.xml--RSS feed

The best way for me to remember something I learned is to write an article or a tutorial about it. More than once I searched for something on Google and found a text of my own, which says a lot about my memory.


crg.eti.br · © 2026 Cesar Gimenes · CC BY 4.0 · github · rss · pt