Formações
Nesta página podem encontrar diverso material de Formação que uso no meu dia-a-dia.
Eu costumo dar formação em especial em 4 áreas distintas: Linux, Programação (em especial C e C++, a mais complexa das linguagens da actualidade), bases de dados e Design de VideoJogos.
Apesar de ter dado mais horas no Linux, estou a pensar dedicar-me mais aos VideoJogos pois é a minha paixão principal.
De qualquer das formas deixo-vos várias páginas onde podem encontrar algum material solto pertencente a essas formações, material de acompanhamento como vídeos ou pequenos tutoriais, que apesar de não serem os cursos completos, poderão achar interessantes.
2023-11-25.
Ficam abaixo alguns posts meus relacionados com vídeos de Formação que vou criando para os formandos ou para o público na Internet:
- Criação de VideoJogos – Parte II – Tiles Vs. Sprites – 2023-12-31Neste vídeo mostro quais as diferenças entre Sprites e Tiles, o que são, como se usam, sempre com exemplos tirados do meu próprio Game Engine, entre outras coisas, como jogos históricos, etc: Os Sprites e os Tiles são super importantes no mundo dos VideoJogos, daí ser o tema do segundo vídeo deste mini-curso. O vídeo
- Game Development Tutorial – 02 – Game Loop – O Ciclo de um VideoJogoAntes da matéria escrita propriamente dita, fica aqui o vídeo associado a este post: O Ciclo do VideoJogo (Game Loop): Cada jogo divide-se em pelo menos 3 estágios principais, repetidos eternamente (até ao jogador decidir sair ou o jogo “crashar”), no chamado “Game Loop”: Apos o programa iniciar… Vou aqui… Acima podemos ver os 3
- Criação de VideoJogos – Parte I – Diferenças entre Game Design, Game Art e Game Development – 2023-12-07Neste vídeo temos apenas uma pequena apresentação que visa distinguir os 3 tipos principais de funções relacionadas com a criação de VideoJogos: Game Designers, Game Artists e Game Programmers (English Version video at the end of this post, or here: https://www.youtube.com/watch?v=AfmCaDY189I): Existem outras funções, como Sound Engineer, Game Tester, ou até Game Producer entre outras,
- 2023-11-24 – O Início do meu Mini-Curso sobre Criação e Design de VideoJogosPois é, aqui está o vídeo introdutório ao meu futuro mini-curso sobre Design de VideoJogos:https://www.youtube.com/watch?v=RyfbThWMroU Isto porque, me perguntei, porque raios só dou matéria mais complexa (e chata para os formandos), como Linux e Programação C, C++, etc, quando posso dar matéria divertida, e quando sou a pessoa indicada (modéstia à parte), para dar esta
- Game Development Tutorial – 01 – Sprites & TilesAntes de alguém tentar compreender como se criam videojogos, há que saber o que são sprites, e tiles. Com a excepção de jogos 3D, em que vemos objectos desenhados em tempo real em 3D, tudo o que é jogos usam sprites, e grande parte deles usam tiles, em especial há umas décadas atrás, quando era
- Curso Linux Terminal 5 – Gestão de Processos, CPUs, Load Averages, Memória, pasta /proc, etc…Aqui temos o 5º vídeo do meu mini-curso de Linux, referente em especial à gestão da memória no sistema operativo em questão: O que abordo neste vídeo: Exemplos reais de manipulação de processos usando videojogos como exemplo, como suspendê-los e resumi-los; Comandos de top de gestão de processos (como top, htop, glances); Load Averages e
- Curso Linux Terminal 4 – Permissões de Ficheiros, Scripts, e como praticar com o meu Knowledge Tester…Aqui temos o 4º vídeo do meu mini-curso de Linux, referente em especial a permissões de ficheiros e como usar o meu software Knowledge Tester para praticar as mesmas: O que abordo neste vídeo: Permissões de ficheiros, tanto com números como com letras; Breve introdução a scripts; Como usar o meu software gratuito Knowledge Tester
- Curso Linux Terminal 3 – Filtrar/Manipular textos, Regular Expressions, Patches, vigiar alterações, etc…Aqui temos o 3º vídeo do meu mini-curso de Linux, referente em especial à filtragem e manipulação de textos, ao uso de Regular Expressions, patches e diferenças entre ficheiros, etc: O que abordo neste vídeo: Substituir caracteres em textos; Filtrar textos; Cortar textos; Localizar padrões em textos; Fazer “text to columns” a textos”; Excluir linhas
- Curso Linux Terminal 2 – Aliases, Variáveis de Ambiente, Path, Prompt, Streams…Aqui temos o 2º vídeo do meu mini-curso de Linux, referente em especial aos importantíssimos Streams, às Variáveis de Ambiente, às Aliases, à Path, Prompt, entre outras coisas… O que abordo neste vídeo: Comandos e parâmetros; Ficheiros e Pastas: Listar, Criar, Mover, Apagar, Renomear, Editar, Visualizar, Esconder, Navegar; Árvores de directório; Home Folders; Links, Filenames
- Curso Linux Terminal 1 – Parâmetros de Comandos, Ficheiros e Pastas, Inodes, Consola, Históricos…Aqui temos o 1º vídeo do meu mini-curso de Linux, referente em especial a como usar Comandos e os seus Parâmetros, a Ficheiros e Pastas, aos Inodes, ao uso da Consola, aos Históricos, entre outras coisas… O que abordo neste vídeo: Comandos e parâmetros; Ficheiros e Pastas: Listar, Criar, Mover, Apagar, Renomear, Editar, Visualizar, Esconder,
E ficam abaixo vários dos últimos posts meus relacionados com o tópico Formação:
- Criação de VideoJogos – Parte II – Tiles Vs. Sprites – 2023-12-31Neste vídeo mostro quais as diferenças entre Sprites e Tiles, o que são, como se usam, sempre com exemplos tirados do meu próprio Game Engine, entre outras coisas, como jogos históricos, etc: Os Sprites e os Tiles são super importantes no mundo dos VideoJogos, daí ser o tema do segundo vídeo deste mini-curso. O vídeo
- Game Development Tutorial – 02 – Game Loop – O Ciclo de um VideoJogoAntes da matéria escrita propriamente dita, fica aqui o vídeo associado a este post: O Ciclo do VideoJogo (Game Loop): Cada jogo divide-se em pelo menos 3 estágios principais, repetidos eternamente (até ao jogador decidir sair ou o jogo “crashar”), no chamado “Game Loop”: Apos o programa iniciar… Vou aqui… Acima podemos ver os 3
- Criação de VideoJogos – Parte I – Diferenças entre Game Design, Game Art e Game Development – 2023-12-07Neste vídeo temos apenas uma pequena apresentação que visa distinguir os 3 tipos principais de funções relacionadas com a criação de VideoJogos: Game Designers, Game Artists e Game Programmers (English Version video at the end of this post, or here: https://www.youtube.com/watch?v=AfmCaDY189I): Existem outras funções, como Sound Engineer, Game Tester, ou até Game Producer entre outras,
- 2023-11-24 – O Início do meu Mini-Curso sobre Criação e Design de VideoJogosPois é, aqui está o vídeo introdutório ao meu futuro mini-curso sobre Design de VideoJogos:https://www.youtube.com/watch?v=RyfbThWMroU Isto porque, me perguntei, porque raios só dou matéria mais complexa (e chata para os formandos), como Linux e Programação C, C++, etc, quando posso dar matéria divertida, e quando sou a pessoa indicada (modéstia à parte), para dar esta
- Game Development Tutorial – 01 – Sprites & TilesAntes de alguém tentar compreender como se criam videojogos, há que saber o que são sprites, e tiles. Com a excepção de jogos 3D, em que vemos objectos desenhados em tempo real em 3D, tudo o que é jogos usam sprites, e grande parte deles usam tiles, em especial há umas décadas atrás, quando era
- 2023-09-03 – Partilha do tutorial do Knowledge Tester e do seu executável final na versão v1.10…Este é o projecto do meu software de Formação e Auto-Estudo, que permite aos alunos aprenderem muito rápido, memorizar facilmente centenas de comandos, praticar para exames e certificações, em todo o tipo de áreas, com vários tipos de questões, encriptação, possibilidade de fazer exames remotos, e outras 1001 funcionalidades, que uso no dia-a-dia enquanto formador,
- 2023-06-21 – Exercícios de Programação em múltiplas linguagens, no meu Knowledge Tester, em C/C++…Praticar programação com o meu software de IT Training. Deixo apenas uma imagem para mostrar uma funcionalidade do meu software Knowledge Tester, que como sabem além de ter 1001 funcionalidades para auto-formação, Formação, exames presenciais e remotos, laboratórios, respostas directas ou múltiplas, etc, com encriptações, uma GUI feita do zero em C++, um simulador Cisco
- 2023-06-11 – Procurando Memory Leaks no Knowledge Tester em C++ com o Memcheck da Valgrind…Procurando Memory Leaks no Knowledge Tester em C++ com o Memcheck da Valgrind: Hoje partilho isto mais para amigos, para mostrar que o C++, apesar de ser super poderoso enquanto linguagem de programação, tem algumas dificuldades que já todos conhecem, como a gestão manual de memória. E isto porque tenho andado super ocupado, sem tempo
- 2023-06-03 – Estado de desenvolvimento do Knowledge Tester, em C++…Só para não pensarem que estou há meses sem fazer nada nas horas livres. Relembro que isto tem dezenas de milhares de linhas de código, tem dezenas de funcionalidades, tudo feito do zero em C++, letras ou paineis desenhados píxel a píxel, sem usar librarias gráficas como Qt, etc, tem a minha libraria GUI que
- 2023-04-25 – Temas, atalhos, e outras novidades no meu Knowledge Tester, software em C++…Como é 25 de Abril, o dia em que o meu tinha nascido, fiz algumas melhorias ao programa de formação Knowledge Tester. Nada de especial, uns temas para cada um fazer exercícios ou exames mais ao seu gosto, e a possibilidade de definir a opacidade das scanlines com atalhos. É de lembrar que como é
- 2023-04-19 – Funcionalidades formativas, assignar perguntas, exportação de CSV, etc, no meu Knowledge Tester em C++…Pequenas melhorias ao Knowledge Tester, neste caso um sistema de exportação em CSV para outros sistemas de ensino, aproveito algumas horitas livres para o meu software que uso na Formação me ajude a fazer mais coisas e mais facilmente. Como ando sem tempo para nada ultimamente, não posso mexer em coisas mais complexas como o
- 2023-04-11 – Pequenas melhorias no Knowledge Tester, em C++…Tenho andado super ocupado ultimamente, mas arranjei algum tempo para melhorar o Knowledge Tester, pois tenho de o terminar de forma a funcionar como quero, antes de me dedicar aos trading systems para a missão no trading de 2024. O objectivo é fazer a minha GUI toolkit ter os mínimos dos mínimos para fazer isto
- Curso Linux Terminal 5 – Gestão de Processos, CPUs, Load Averages, Memória, pasta /proc, etc…Aqui temos o 5º vídeo do meu mini-curso de Linux, referente em especial à gestão da memória no sistema operativo em questão: O que abordo neste vídeo: Exemplos reais de manipulação de processos usando videojogos como exemplo, como suspendê-los e resumi-los; Comandos de top de gestão de processos (como top, htop, glances); Load Averages e
- Curso Linux Terminal 4 – Permissões de Ficheiros, Scripts, e como praticar com o meu Knowledge Tester…Aqui temos o 4º vídeo do meu mini-curso de Linux, referente em especial a permissões de ficheiros e como usar o meu software Knowledge Tester para praticar as mesmas: O que abordo neste vídeo: Permissões de ficheiros, tanto com números como com letras; Breve introdução a scripts; Como usar o meu software gratuito Knowledge Tester
- Curso Linux Terminal 3 – Filtrar/Manipular textos, Regular Expressions, Patches, vigiar alterações, etc…Aqui temos o 3º vídeo do meu mini-curso de Linux, referente em especial à filtragem e manipulação de textos, ao uso de Regular Expressions, patches e diferenças entre ficheiros, etc: O que abordo neste vídeo: Substituir caracteres em textos; Filtrar textos; Cortar textos; Localizar padrões em textos; Fazer “text to columns” a textos”; Excluir linhas
- Curso Linux Terminal 2 – Aliases, Variáveis de Ambiente, Path, Prompt, Streams…Aqui temos o 2º vídeo do meu mini-curso de Linux, referente em especial aos importantíssimos Streams, às Variáveis de Ambiente, às Aliases, à Path, Prompt, entre outras coisas… O que abordo neste vídeo: Comandos e parâmetros; Ficheiros e Pastas: Listar, Criar, Mover, Apagar, Renomear, Editar, Visualizar, Esconder, Navegar; Árvores de directório; Home Folders; Links, Filenames
- Curso Linux Terminal 1 – Parâmetros de Comandos, Ficheiros e Pastas, Inodes, Consola, Históricos…Aqui temos o 1º vídeo do meu mini-curso de Linux, referente em especial a como usar Comandos e os seus Parâmetros, a Ficheiros e Pastas, aos Inodes, ao uso da Consola, aos Históricos, entre outras coisas… O que abordo neste vídeo: Comandos e parâmetros; Ficheiros e Pastas: Listar, Criar, Mover, Apagar, Renomear, Editar, Visualizar, Esconder,
- 2022-12-20 – Finalizada a minha GUI a ser usada no Knowledge Tester versão 2, criados do zero em C++…Aqui estão os meus retoques finais ao sistema de perguntas e respostas do Knowledge Tester, agora já com tudo pronto. Podem ver que já tem Ajuda, dá tem ajudas, já dá para tirar e colocar grids tal como as scanlines, tudo direito píxel a píxel, pronto a funcionar, mas “na vida real” terá ou a
- 2022-12-11 – Editor de Texto do zero, finalizado de momento, em C++…Adeus Editor de Texto, já estava farto de ti! Agora com scroll. Já não tenho paciência, tem ainda pequenos bugs, mas são milhares de linhas de código e preciso de voltar a outros projectos, mas já dá para desenrrascar para usar no Knowledge Tester. Tem milhares de linhas pois é feito tudo à pata, as
- 2022-12-07 – Histórico de Do’s e Undo’s (CTRL+Y/Z) na minha libraria de GUI em C++…Tenho tido poucas horas livres, mas hoje mostro o que meti a funcionar há uns 2 dias atrás, do histórico de CTRL+Z e CTRL+Y para a minha libraria de GUI, criada do zero em C++ para usar em todos os meus projectos: Agora os editores de texto que aplicar nas minhas aplicações (isto parece um
- 2022-12-02 – Editor de Texto criado do zero em C++, píxel a píxel, já com Cut/Copy e Paste, select text, shortcuts, etc…Hoje mostro mais uns retoques no meu Editor de Texto, construído do zero, píxel a píxel, em C++, não é como muitos em Java e C# etc, que com uma linha de código têm um editor de texto, este tem milhares de linhas de código, isto é programação old-school, tudo à pata. Nada de usar
- 2022-11-27 – Adicionando selecção de textos, copy e paste, etc, ao meu Editor de Texto, criado do zero em C++…Só para mostrar o desenvolvimento do meu editor de texto em C++, para ser incluído na minha libraria de GUI, programas como Knowledge Tester, e até game engines. Neste caso começo com a partilha de um erro estanho, que me faz ao seleccionar textos, não marcar uns certos espaços antes da Rússia, o que é
- 2022-11-15 – O meu editor de texto low-level, criado do zero em C++, em funcionamento, com vídeo…Aqui está como se cria e testa um Text Editor low level em C++. Low level porque isto não é adicionar um controlo qualquer que faz a edição do texto, aqui tudo é feito do zero, píxel a píxel, não é como se faz hoje em dia em que basta adicionar um controlo já pré-feito
- 2022-11-14 – A testar o meu editor de texto, criado do zero para o meu Game Engine e a minha GUI em C++…Fica aqui um exemplo do modelo de testes que criei para desenvolver e testar o meu editor de texto, criado do zero em C++, para ser usado na minha GUI, no meu Knowledge Tester, e no meu Game Engine. Criado do zero, pois é desenhado no ecrã píxel a píxel, como expliquei em tópicos anteriores,
- 2022-11-11 – Modo gráfico (GUI) para o Knowledge Tester, quase pronto, em C++…A interface gráfica para o Knowledge Tester está quase feita. Ela pode conter pequenos textos no ecrã, perfeitamente justificados e com um cursor 100% funcional com modo de insert ou overwrite; Pode conter imagens para os exames; Modo de escolha múltipla ou resposta directa (este com o editor acima), com cursores incluídos; Marcação de opções
- 2022-11-06 – Cursor completo, e começo da edição de texto, na minha GUI em C++…Um cursor e edição de texto, feitos do zero, há que lembrar que o cursor é desenhado píxel a píxel, e a edição não depende do sistema operativo, é tudo feito do zero, é low-level, não se usa nenhuma libraria ou controlo ou GUI, ou etc. É tudo desenhado píxel a píxel. No caso do
- 2022-11-01 – Criando um cursor e um editor de texto, para o Knowledge Tester e Game Engine, em C++…Update mais recente e completo em: Aqui estive a criar um cursor ao meu gosto, para tanto o meu Game Engine como para o meu software Knowledge Tester. Eu optei por um cursor que ocupasse um caractere inteiro, quando está em modo de overwrite, e por um reduzido a uma fina linha vertical de 2
- 2022-10-28 – Knowledge Tester já com opções múltiplas e imagens a funcionar, usando um terminal gráfico em C++…Este foi o próximo passo, meter o programa a mostrar uma pergunta de cada vez, para o Knowledge Tester passar a ser gráfico (qualidade de vídeo muito baixa a 640×480, na realidade tem muito mais detalhe). Na realidade estiveram a ser criadas classes para gerar paineis de opções que posso usar no game engine também,
- 2022-10-25 – Imagens embebidas nos formulários na minha GUI em C++…O passo seguinte foi embeber imagens nos formulários do software Knowledge Tester, para que possam ser incluídas imagens nos exames e exercícios. Relembro que é feito do zero em C++, todos os menus serão desenhados à mão, até o cursor será desenhado píxel a píxel no terminal, nos modos de inserção. Isto calha ser também
- 2022-10-22 – Opções seleccionáveis na minha GUI, a preparar para usar no Knowledge Tester, em C++…No meu pouquíssimo tempo, preparei um seleccionar de opções, que é super configurável, e que poderá ser usado tanto em jogos como em programas, e que fará parte da minha GUI, criada em C++. Primeiro, um pequeno vídeo e resumo de 2022-10-23 com pequenas melhorias: «Pequenas melhorias: – Ajuste da janela já ajusta o texto
- 2022-10-19 – Criação de um terminal virtual através da minha nova GUI, em C++…Quero mostrar neste post como vai o desenvolvimento da minha GUI, feita do zero em C++, porque quero evitar usar GUIs de terceiros nos meus softwares, como a Qt, etc. Em simultâneo, esta GUI servirá para jogos meus, e aplicações. Comecei pelo caso do Knowledge Tester, o meu software de exames e auto-estudo com todo
- 2022-10-04 – O começo da minha própria libraria de GUI multi-plataforma, em C++…Aqui está o começo da minha própria GUI, feita do zero em C++. Epá, parece outra coisa, mas é um cão com 4 patas no chão, tentei disfarçar mas deu nisto, era difícil desenhar pois era um simples teste de desenhar pontos onde tenho o rato: No Windows, temos o próprio sistema de janelas do
- 2022-07-18 – Desenvolvimento de exercícios para se aprender a programar, neste caso em Java, usando C++…Queria mostrar aqui rapidamente, qual a razão pela qual tenho andado super ocupado, que nem mexo no meu game engine. Tem a ver com Formação, em especial Java. Tenho estado a desenvolver scripts que geram exercícios aleatórios para fazer alunos praticarem em Java, e que poderão ser usados noutras linguagens. O da imagem é apenas
- 2021-11-16 – Knowledge Tester Versão 1.0 finalizada, e paragem no desenvolvimentoAdeus Knowledge Tester, já estava cansado de trabalhar no teu código, foram 2 ou 3 meses interessantes, mas agora, talvez parta de novo para o meu Game Engine. 🙂 Parei de desenvolver por agora o Knowledge Tester, dado que já faz tudo o que preciso. Há um manual PDF com mais de 60 páginas, com
- 2021-11-10 – Knowledge Tester – Exames com password incluída, argumentos forçados, versões mínimas, protecções físicas, etc…Estão aqui algumas novidades, no meu software de estudo e formação “Knowledge Tester”, podem clicar na imagem acima para ver melhor. Em breve deixo de mexer nele durante um ano pois já serve os meus propósitos, eu gosto como sabem de usar as minhas próprias ferramentas, os meus próprios softwares, e por isso tenho de
- 2021-10-19 – Encriptações acabadas no Knowledge Tester (software de formação e estudo em C/C++)…Está quase terminado (pelo menos a fase um), clicar na imagem acima para ver melhor. A encriptação está toda completa, uso encriptação com algoritmos Rijndael 256 (AES 256), e hashing SHA2, que já explicarei abaixo, e também já tenho aperfeiçoada a funcionalidade de respostas multi-linha, que falarei abaixo também, entre outras coisas, como configurações, etc.
- 2021-10-13 – Knowledge Tester já com encriptação Rijndael 256, e outras novidades…Encriptação já adicionada ao Knowledge Tester, além de outras coisas (clicar acima para ver a imagem). Adicionei encriptação, com base no algoritmo Rijndael 256 (AES256), com um pequeno add-on que adicionei (que era até escusado dado que ninguém iria crackar o AES256 à força, mas mesmo assim adicionei algo mais). E uso um sistema de
- 2021-09-27 – Knowledge Tester já com modo de exame, e laboratórios sem simulador, em C/C++…O Knowledge Tester já tem modo de exame. Ele inclui, entre outras coisas: Encriptação do ficheiro de origem (obviamente, senão o aluno/formando via as respostas no ficheiro de perguntas); Geração de ficheiro de relatório com as respostas dadas pelo aluno/formando bem como notas; Os ficheiros de relatório são iguais, mas um em modo de texto,
- 2021-09-20 – Knowledge Tester já com pontuação e medição de tempo, em C/C++…O meu Knowledge Tester já com pontuações e tempo (formato jogo), além de respostas multi-linhas (simulação de scripts e comandos), e os relâmpagos como os deixei no Game Engine no dia 4 de Setembro. No Knowledge Tester, podem ver que já tem pontuação, e medição de tempo, que foi o passo necessário para tornar esta
- 2021-09-17 – Pontuações já no Knowledge Tester, e tempo medido…O Knowledge Tester já com pontuações… O relâmpago é só para dar alguma beleza à imagem. Eu partilhei para verem à direita, que ao responderem às questões, que são aleatórias e com opções aleatórias, ele já calcula a % em tempo real da nota do “jogador” ou formando/aluno, e no fim diz o tempo que
- 2021-09-16 – Knowledge Tester já com 5 exames de Linux e um desafio prático, em C/C++…Novas funcionalidades no programa de formação e auto-treino Knowledge Tester, em e para Linux. À esquerda podem ver um desafio gerado de forma aleatória, em que o programa criar uma árvore de directorias na memória, move pastas nessa árvore, altera nomes de pastas, e por fim, gera um script que cada formando/aluno executa na máquina,
- 2021-09-10 – Knowledge Tester – Melhorias no Software de Testes e Formação, em C/C++…Uma melhoria numa das várias ferramentas que irei desenvolver para a área da Formação, para uso pessoal também. Neste caso, adicionei funcionalidades para gerar (infinitas) perguntas com (infinitas) respostas, aleatórias, sobre permissões de ficheiros em Linux, para os alunos/formandos praticarem e ficarem batidos nisto. Responder a umas 100 perguntas destas, pode fazer-se em minutos, e
- 2021-08-20 – Manual de Linux em PDF, que poderá ser aplicado aos softwares Knowledge Tester e Linux Helper, para efeitos de Formação…Um futuro manual que vou criar de Linux. Não é software mas estará relacionado no Futuro, talvez aplicado ao software “Linux Helper”, ou ao próprio “Knowledge Tester”. Vai ser um manual talvez com umas 1000 páginas, mas com tudo o mais bem explicado possível, para qualquer pessoa aprender a usar. Tinha de criar manuais para