Raylib.ha - Como devo continuar?

A quase dois anos eu tenho um projeto do qual eu deixo em hiato, retorno, e depois ponho na geladeira de novo: O Raylib.ha.

Ele se trata de bindings feitas à mão da linguagem Hare para a biblioteca Raylib. Sendo o objetivo deste projeto me introduzir ao mundo da programação, área da qual eu tenho muito interesse e que se aproximou de ser um Hobbie meu. Aprendi muita coisa com esse projeto, muita mesmo, porém, como eu tenho essa mania de deixa-lo congelado, com o tempo eu acabo perdendo parte do aprendizado e acabo tendo que reamprender algo que eu já deveria saber fazer com as mãos atadas.

Eu não consigo seguir tutoriais de "como aprender a programar" a bastante tempo, mesmo antes de eu iniciar esse projeto. As impressões que eu tenho até hoje sempre que assisto um conteúdo do gênero são as seguintes:

Enfim. Eu aprendo muito mais assistindo um programador fazendo algo como um jogo simples ou testando alguma linguagem mais obscura do que assistindo esses tutoriais desnecessáriamente longos e com uma linguagem que se não te tratar feito um analfabeto funcional, te trata como um engenheiro de software com 30 anos de experiência e que já trabalhou no CERN.

Essa é a minha impressão pelo menos (em relação a certos tutoriais). Claro que existem bons exemplos nesse bolo imenso, mas a massa gira em torno de cursos de a à z, frameworks que estão no hype, ou fica só no básico e poucas vezes mostram algo na prática.

Não tenho certeza se é por conta disso que a minha motivação para continuar esse projeto surge e depois desaparece, na realidade eu duvido muito, mas pode ser que tenha alguma influência.

Essa questão é tão clara quanto fumaça de diesel.

Apesar dos vários hiatos, hoje em dia, essas bindings são funcionais, incompletas, mas funcionais.

Ela tem um "teste" que é basicamente aquela clássica animação do DVD batendo nos cantos da tela. Isso serve só para ver se você tem a Raylib e a Hare instaladas corretamente.

Mas ainda faltam muitas coisas. Como forma de visualizar melhor isso, eu deixei várias funções da biblioteca original feita em C presentes como comentários nas bindings, como por exemplo:

// // Files management functions
// *LoadFileData
// UnloadFileData
// SaveFileData
// ExportDataAsCode
// *LoadFileText
// UnloadFileText
@symbol("SaveFileText") fn SaveFileText(filename: *c::char, text: *c::char) bool;
export fn save_file_text(filename: str, text: str) bool = SaveFileText(c::fromstr(filename: str)!, c::fromstr(text: str)!);

Da seção de gerenciamento de arquivos, a única função que possui uma binding é a SaveFileText. Existem outros casos como este dentro do código das bindings, mas aos poucos eu vou preencher essas lacunas. O problema é quanto tempo isso vai levar.

Essas bindings são como um quebra-cabeças enorme que ao mesmo tempo me dá entusiasmo de tentar resolver e também me dá preguiça de trabalhar encima. Sempre aparece algo mais "atrativo" para se fazer no meio do desenvolvimento disso, ou então, eu estou exausto demais para tocar no computador.

Me pergunto como irei continuar esse projeto - se eu continuar ele. O que é um desejo meu, porém, se eu não tiver o empenho (e o ânimo) para continuar, ele vai novamente para a geladeira, e vai ficar cada vez mais no fundo dela.

Uma coisa que eu tenho certeza: eu ainda tenho muito trabalho a fazer, pois eu nem comecei a fazer as bindings da Raymath, a biblioteca de cálculos usada na Raylib.

Veremos quanto tempo isso vai levar.

Gerado com: Emacs 31.0.50 (Org mode 9.8.3)

Tema: modus-operandi-tinted

Autor do site: Tukain