Sobre
Esta página está disponível nos seguintes idiomas:
Sumário
Sobre Mim
Formação Acadêmica
- Graduação (bacharelado) em Ciência da Computação -- Universidade Federal de São Carlos (UFSCar);
- Mestrado em Ciência da Computação -- UFSCar;
- Doutorado em Ciência da Computação -- UFSCar.
Áreas de Interesse e Tópicos de Pesquisa
Ao longo dos anos, realizei atividades de pesquisa e desenvolvimento em Ciência da Computação em áreas que incluem:
- Design e programação de jogos digitais;
- Motores para jogos digitais (game engines);
- Entity-Component Systems (ECS);
- Jogos sérios (serious games);
- Acessibilidade e inclusão em jogos;
- Arquiteturas de software;
- Arquiteturas data-driven;
- Sistemas adaptativos e sistemas adaptáveis;
- Sistemas colaborativos;
- Programação por usuários finais (End-User Programming / End-User Development);
- Programação de jogos por usuários finais;
- Acessibilidade;
- Design participativo;
- Design universal;
- Human-centered computing;
- Pensamento computacional;
- Informática (normalmente com jogos) para educação;
- Informática (normalmente com jogos) para saúde e reabilitação.
- Jogos terapêuticos.
Publicações e Apresentações
TODO Listar algum dia.
Programação e Desenvolvimento de Software
Linguagens de Programação
Tenho projetos nas seguintes linguagens de programação:
- C++;
- C;
- Python;
- Godot GDScript;
- Dart;
- LISP;
- JavaScript;
- SQL;
- Lua;
- Emacs Lisp;
- Prolog.
Tenho experiência em outras linguagens de programação, mas apenas com projetos para aprendizado. No momento, uma das linguagens de interesse é Go.
Linguagens para Preparação de Documentos
Em ordem decrescente de preferência:
Linguagens para Diagramação
Software (como Usuário)
Sou, primariamente, usuário de Linux (uso Arch Linux desde cerca de 2013; antes usava Slackware desde 2009). O ambiente gráfico que costumo usar é o KDE.
Não tenho problemas nem restrições em usar outros sistemas operacionais. Uso Linux por escolha e por julgar mais conveniente para atividades de programação. Em particular, uso o editor de texto GNU Emacs para quase todas as atividades que envolvam texto (incluindo programação, e-mails, agenda, preparação de documentos em , diagramação, calculadora...). Na minha experiência, Emacs tem melhor desempenho e compatibilidade com programas de interesse (como mu4e) em Linux.
Sobre Este Website
A parte mais interessante deste website provavelmente é o blog. O intuito do blog é fornecer material de qualidade sobre programação. Material em língua portuguesa é escasso, sobretudo em formato escrito.
O detalhamento de muitos tópicos possivelmente será maior que o encontrado em outras páginas e blogs. Conseqüentemente, este nem sempre será um material totalmente acessível para iniciantes, mas detalhado e aprofundado.
Encontrei um Problema em Uma Página ou Conteúdo
A despeito de meus melhores esforços, existirão erros e problemas neste website.
Caso encontre algo errado em qualquer página (por exemplo, conteúdo, links que não funcionam, problemas de acessibilidade ou de usabilidade ruim), por favor, entre em contato para que eu possa corrigir as causas. Favor indicar também como gostaria da menção para sua contribuição (por exemplo, nome, nome e forma de contato, etc.).
Notas Sobre Implementação
Este site é escrito em HTML, JavaScript e CSS com React, Gatsby e Theme UI. Fórmulas matemáticas são desenhadas com . O realce em código-fonte emprega Prism. Ícones utilizam Font Awesome e flag-icons. Ícones e links para compartilhamento em redes sociais utilizam Social Share URLs.
A maioria conteúdo é escrita em MDX, embora, possivelmente, optarei por Org mode em algum momento (Markdown é um formato limitado se comparado a Org mode). A hospedagem utiliza GitLab Pages; o código fonte também está no GitLab (como projeto privado).
Notas Sobre as Imagens Criadas Por Mim
Exceto em tutoriais de instalação, a maioria das imagens terão a aparência do ambiente que uso no sistema. Caso apareçam imagens de editores texto, elas provavelmente ilustrarão minha configuração do Emacs. Capturas de tela em Linux utilizam o programa Spectacle. Capturas de tela em Windows utilizam o programa Greenshot. Imagens são editadas com GIMP e Inkscape. Vídeos são gravados com OBS Studio e editados com Kdenlive.
Uso todos os programas em inglês. Embora reconheça que isso provavelmente causará problemas de acessibilidade e dificuldades em ilustrações e partes do material em Português, estou habituado e prefiro. A principal razão é que, caso ocorram problemas com software, é mais fácil localizar e corrigir o problema em sistemas em inglês que em português (o inglês ainda é a língua franca da Internet, informática e programação). Embora conhecimento de inglês não seja essencial para programação, é algo que recomendo caso se deseje evoluir na prática.
Caso você tenha interesse em testar o sistema operacional Linux, convém saber que muitos programas possuem traduções para Português. Muitos, inclusive, para o Português brasileiro e para o europeu.