# Symbolical presentations of universal ideas

Caloni, 2025-03-06 <quotes> <philosophy [up] [copy]
THE Tarot embodies symbolical presentations of universal ideas, behind which lie all the implicits of the human mind, and it is in this sense that they contain secret doctrine.
Arthur Edward Waite (The Pictorial Key To The Tarot)

# Se ligue em você! (Gasparetto, Luiz)

Caloni, 2025-03-06 <books> <self> [up] [copy]
Nada do que digo me pertence, embora tenha minha forma particular de dizer.

É mais fácil se identificar e alcançar uma melhora espiritual mais incisiva acompanhando os trabalhos em áudio do médium Luiz Gasparetto, mas quis dar uma olhada em como um de seus livros é escrito. Curto, um pouco bagunçado e com seções com letras garrafais para chamar a atenção, é um estilo pseudo-brega que tenta se aproximar do público-alvo: pessoas fudidas que gostariam de um minuto que fosse de paz. Menos divertido que os áudios, não posso recomendar para muitas pessoas.

A vida é a sequência consciencial das sensações do aqui e agora. (...) Consciência é o fenômeno da atenção. Quanto mais lúcida e clara ela estiver, mais você conhecerá suas reais habilidades e limitações. (...) Você é o grande laboratório e arquiteto da sua vida. (...) Se você tem consciência, pode escolher manter ou não sua atenção em determinado aspecto e resistir aos estímulos indesejados. (...) A sua atenção está sempre presente naquilo que você dá importância. Não importa se o objeto observado é bom ou nocivo para você.
Acredito que todo real problema que alguém possa ter reside no fato de não saber usar as ferramentas que a natureza lhe deu. (...) Quanto mais conhecimento você adquire acerca do seu mundo interior, mais condições possui para melhorar a sua capacidade de interferência na vida.
Ajudar-se é conhecer-se, ou seja, observar a sequência de sensações que fluem em você. (...) Sufocamos nossas reais motivações e verdadeiras vocações, destruindo assim o nosso senso de vida e as razões de existir. (...) Viver só nas sensações é retornar à vida animal, como também viver só no intelecto é perder o senso da realidade. (...) Observar-se é prestar atenção ao que se sente.
Só no agora, quando tudo está acontecendo, é que suas observações podem ser realmente mais precisas. (...) Para realizar bem essa observação, é importante que você se desligue de tudo e se ligue só em você. (...) O seu corpo é a sua parte mais periférica e a que recebe bilhões de sensações por minuto.
(Sobre o “eu acho”). Dá para notar que a pessoa está longe de você, não está íntima nem segura. E, se ela não está próxima, não é confiável, ou seja, não dá para respeitá-la. (...) No "eu sinto", a pessoa é sincera, sabe se colocar, e o outro sente confiança, respeito e segurança. Não há verdadeiro contato entre duas pessoas que estão no "eu acho", pois intimidade só pode ocorrer no "eu sinto".
A confiança e, consequentemente, o respeito que os outros possam ter por nós, vêm do fato de sentirem a energia que exalamos quando estamos no estado de segurança.
As nossas sensações existem para servirem de referencial a nossas ações. (...) Quando você observa as suas sensações, aprende mais do que quando observa os seus pensamentos. Porque é nas sensações que você estabelece o que é verdadeiro para sua essência. (...) Ao perceber as sensações, você percebe a vida em você. E vida é todo um movimento, e nós somos, literalmente, esse movimento. (...) Cabe aqui notar que nossas sensações não são simplesmente geradas pelos estímulos externos, mas também pelos internos. Por estímulos internos, queremos dizer as sensações causadas pelos nossos órgãos, pelo nosso inconsciente e principalmente pelo que pensamos. (...) Se nos distanciamos do que realmente somos, estamos nos abandonando e nos rejeitando.
Observando seu próprio processo, perceba que quase tudo que sentimos tem sua origem no que pensamos e acreditamos. Sendo assim, podemos controlar o nosso sentir, mudando nossas crenças e nossos pensamentos. (...) Criamos, destruímos ou recriamos amebas (condicionamentos, segundo os psicólogos), conforme achamos necessário. (...) Estas criações têm origem na necessidade de nos defendermos do que percebemos como ameaçador, ou mesmo de arquivarmos nosso repertório de habilidades. (...) Contudo, é importante saber que foi você mesmo quem criou essa ameba e o fez tentando adaptar-se às exigências do ambiente em que vivia. (...) Se assumirmos nossas verdades, anulamos o poder previamente dado às amebas. Porém, se inventarmos desculpas e argumentos ludibriantes, fortaleceremos ainda mais o poder delas.
Usar os outros para se direcionar e fazer deles o ponto de apoio é dar-lhes a liberdade de controlá-lo, perdendo o controle sobre si mesmo. (...) O outro quer empurrá-lo para dentro, mas você, como é muito esperto, empurra-se antes. É sempre você que não se dá o direito.
A única felicidade possível é a que criamos no momento. (...) Aprendi a fazer o meu dia a dia melhor, hoje, sabendo que um presente bem vivido sempre garante um bom futuro. (...) Somos livres para escolher, mas criamos uma prisão na cabeça, uma ilusão escravista. Nós nos cegamos e nos acorrentamos às obrigações. (...) Responsabilidade é a nossa habilidade natural de gerar respostas para criar a nossa própria vida, sabendo que experimentaremos as consequências de nossas ações.
(...) Dar-se força para realizar as verdadeiras vontades da alma é definitivamente viver. Isto é o que chamo de vida espiritual. (...) A dor é o alarme da alma a chamar nossa atenção de que algo que, conscientemente, estamos fazendo é prejudicial à integridade do nosso ser como um todo. (...) Compaixão vem de dentro para fora, vem da nossa essência, e não de fora para dentro, opressivamente como a piedade. Ela é feita de amor e compreensão, portanto, não julga nem exige nada e, se nos leva a dar algo a alguém, só nos causa prazer, mostrando com isso que nosso gesto é adequado.
Se fizer o que o jogo manda, se sentirá estressado, desconsiderado, deprimido; se não fizer, se sentirá culpado ou mesmo sofrerá as consequências de algo que negligenciou. Nos dois, você perde. Este mecanismo é a causa mais comum das doenças físicas e psicológicas. (...) Para você conseguir o que quer, não precisa se forçar, basta consultar e ter a aprovação da sua vontade interior. Mesmo assim, você precisará se exercitar, já que certas habilidades só se conquistam pelo treino contínuo e disciplinar. (...) "Eu não deveria nada, fiz o que fiz, o que considerei melhor para mim, o que tinha vontade de fazer, é assim que eu sou, eu não tenho que nada".
O ódio foi criado com a função de destruir. Deus não o criou só para machucá-lo ou agredir os outros. Se você não usá-lo como força para ter firmeza, não ficará no seu real. (...) Ser você mesmo é ficar do seu lado, mesmo que tenha que fazer um esforço contra o ambiente.
O ato de pensar — essa capacidade da mente de transformar estímulos energéticos em algo com forma e sentido, de transformar ondas em algo reconhecível, perceptível, ativo — é realmente fantástico. (...) Os símbolos são formas reduzidas da nossa vivência. Ao dar uma forma para a energia, damos também uma função. (...) Você, consciente, é que escolhe. O subconsciente não escolhe, só aceita o que você escolheu. (...) Cada vez que você dá importância a algo, você cria um pensamento padrão que automaticamente se estampa no subconsciente.
Toda a nossa aprendizagem funciona por um critério de: ensaio e erro; impressão emocional ou trauma; pensamento mágico. (...) Livre-arbítrio é a capacidade de deixar-se impressionar, ou não, por determinados fenômenos. (...) Da mesma forma, hoje você pode querer que determinada situação não exista mais em sua vida; contudo, se não descobrir o programa em seu subconsciente que provoca essa situação, ela continuará sendo reproduzida eternamente. É a isto que chamo de carma. (...) A vida amplia aquilo que você não quer ver, não para contrariá-lo, mas para ajudá-lo. Afinal é você que quer se livrar disso. (...) A consciência sempre esteve presente, você já nasceu com ela e, portanto, você tem o poder de escolher o que quer pensar e, através de seus pensamentos, criar todas as situações pelas quais passa em sua vida.
O "como" o leva à consciência do seu poder. O "como" é útil, importante e mostra o lado prático da vida, enquanto o "porquê" é só uma intelectualização que não leva a nada, procurando sempre a causa que leva a outra causa e assim por diante. Não é pelo intelecto que vamos nos conhecer melhor, mas pela prática.

# Ego ou intuição?

Caloni, 2025-03-11 <self> [up] [copy]

Como você sabe se é seu ego ou sua intuição no comando?

O loop

Seu ego quer que você fique em um loop; repetindo o mesmo ciclo sempre. Isso é se sentir confortável e seguro para a mente egóica, já que isso é tudo o que ela conhece.

A espiral

Sua intuição te chama para fazer mudanças graduais em sua vida que caminham em direção à evolução, desenvolvimento e transcedência. A consciência pura pode ver o passado e os ciclos se repetindo na mente e te impele a mover além do que você pensa que sabe.


# É melhor manter binários de teste no código-fonte?

Caloni, 2025-03-22 <code> [up] [copy]

Esta é uma das questões da semana com que me deparei. Sinceramente não gosto de soluções que envolvem dependências fora do domínio do controle de fonte, mas por outro lado me parece feio e não muito escalável manter os binários necessários no controle de fonte. Sim, existem "soluções" como Git LFS, que no fundo é uma maneira educada de manter os mesmos procedimentos para organizar o código-fonte no controle e "junto" seus binários (que no fundo estarão em algum repositórios de arquivos da AWS, por exemplo).

Independente de onde ficam os binários, escrevendo uns testes unitários decidi levar o conceito de manter os recursos do teste o mais próximo possível colocando os binários não apenas no sistema de arquivos, mas também dentro dos recursos do executável Windows. Ao longo do teste eu extraio estes recursos para o sistema de arquivos e rodo o teste como se os arquivos sempre estivessem lá, na mesma pasta do executável.

// Keep updated with Test.
ID_101 BIN "resources\\binary.dll"
ID_102 BIN "resources\\binary.exe"
//...
const std::vector<ResourceIdFileName> Resources =
{ 
  { ID_101, "binary.dll" },
  { ID_102, "binary.exe" },
  //...
bool ExtractResourceToFile(const ResourceIdFileName& resource)
{
    HMODULE hModule = GetModuleHandle(NULL);
    HRSRC hRes = FindResource(hModule, MAKEINTRESOURCE(resource.id), RESOURCE_TYPE);
    if (!hRes) return false;
    HGLOBAL hResData = LoadResource(hModule, hRes);
    if (!hResData) return false;
    DWORD dataSize = SizeofResource(hModule, hRes);
    if (!dataSize) return false;
    void* pData = LockResource(hResData);
    if (!pData) return false;
    std::ofstream outFile(resource.fileName, std::ios::binary);
    if (!outFile) return false;
    outFile.write(reinterpret_cast<const char*>(pData), dataSize);
    return true;
}

# Baixando símbolos e módulos programaticamente

Caloni, 2025-03-30 <code> <debugging [up] [copy]

Essa semana descobri que é possível baixar não apenas os PDBs do symbol server da Microsoft, mas os binários também. Existem relatos de erros de download para alguns binários específicos, mas em geral é possível baixar qualquer arquivo indexado por eles. Para isso você precisa ter em mãos o timestamp do binário, que antes era um timestamp mesmo, mas após o Windows 10 virou um hash único que identifica o mesmo binário e passível de ser compilado de novo exatamente como era, e o tamanho da imagem. Ambas as informações ficam na header do arquivo PE, mas depois que você consegui-las não precisa mais do binário (teoricamente). O código abaixo demonstra isso:

#include <windows.h>
#include <dbghelp.h>
#include <algorithm>
#include <cstdint>
#include <filesystem>
#include <iostream>
#include <string>
#include <vector>
#pragma comment(lib, "dbghelp.lib")
namespace fs = std::filesystem;
int main()
{
    const fs::path RootPath = fs::path("resources");
    auto isBinary = [](const fs::path& path) { return path.extension() == ".exe" || path.extension() == ".dll" || path.extension() == ".sys"; };
    ::SymInitialize(::GetCurrentProcess(), NULL, FALSE);
    try
    {
        for (const auto& entry : fs::directory_iterator(RootPath))
        {
            std::cout << entry.path().string() << std::endl;
            try
            {
                if (entry.is_regular_file() && isBinary(entry.path()))
                {
                    auto imageName = entry.path().string();
                    SYMSRV_INDEX_INFO imageFileInfo = { sizeof(imageFileInfo) };
                    ::SymSrvGetFileIndexInfo(imageName.c_str(), &imageFileInfo, 0);
                    char downloadedImagePath[MAX_PATH + 1] = { 0 };
                    if (::SymFindFileInPath(GetCurrentProcess(), NULL, imageName.c_str(),
                        &imageFileInfo.timestamp, imageFileInfo.size, 0, SSRVOPT_DWORDPTR,
                        downloadedImagePath, nullptr, nullptr))
                    {
                        std::cout << "Image file downloaded to " << downloadedImagePath << std::endl;
                    }
                    char downloadedPdbPath[MAX_PATH + 1] = { 0 };
                    if (::SymFindFileInPath(GetCurrentProcess(), NULL, imageFileInfo.pdbfile,
                        &imageFileInfo.guid, imageFileInfo.age, 0, SSRVOPT_GUIDPTR,
                        downloadedPdbPath, nullptr, nullptr))
                    {
                        std::cout << "PDB file downloaded to " << downloadedPdbPath << std::endl;
                    }
                }
            }
            catch (std::exception& e)
            {
                std::cerr << entry.path().string() << ": " << e.what() << std::endl;
            }
        }
    }
    catch (std::filesystem::filesystem_error& e)
    {
        std::cout << "No resources directory found; nothing to do here: " << e.what();
    }
    ::SymCleanup(::GetCurrentProcess());
    return 0;
}

[2025-02] [2025-04]