Desenvolvimento de Software treinamentos
Resumão da aula de Carreira e Competências para o Mercado de Trabalho.

1. Autoconhecimento e Autoavaliação

  • Conceito: Processo de se conhecer profundamente, identificando suas experiências, conquistas, pontos fortes e áreas para melhoria.
  • Ferramentas Utilizadas:
    • Linha do Tempo: Registra os marcos e momentos importantes da vida para entender a própria história.
    • Diário de Autoconhecimento: Permite reflexões diárias sobre metas, sucessos e aprendizados.
  • Importância: Base para o desenvolvimento pessoal e profissional, pois facilita a tomada de decisões e o autodesenvolvimento.


2. Testes de Personalidade

  • Exemplo Principal: O teste das 16 personalidades (MBTI).
  • Conceito: Classifica o perfil pessoal com base em dimensões como extroversão/introversão, sensação/intuição, entre outras.
  • Objetivo: Auxiliar na compreensão do próprio perfil e orientar escolhas profissionais e comportamentais.


3. Inteligência Emocional

  • Definição: Capacidade de reconhecer, compreender e gerenciar as próprias emoções e as dos outros.
  • Referência Clássica: Daniel Goleman, que destaca a importância da autogestão emocional e do autoconhecimento para manter o equilíbrio diante de desafios.
  • Aplicação: Melhora relacionamentos, facilita a resolução de conflitos e potencializa o desempenho no ambiente profissional.


4. Matriz SWOT Pessoal

  • Conceito: Ferramenta de análise estratégica que divide os aspectos pessoais em:
    • Forças (Strengths)
    • Fraquezas (Weaknesses)
    • Oportunidades (Opportunities)
    • Ameaças (Threats)
  • Objetivo: Auxiliar na identificação de aspectos internos (que você pode controlar) e externos (que podem ser aproveitados ou minimizados) para o autodesenvolvimento.


5. Mandala Ikigai

  • Conceito: Ferramenta de autoconhecimento originária do Japão que ajuda a encontrar o propósito de vida (o “razão de ser”).
  • Componentes:
    • O que amo fazer: Atividades que trazem alegria e satisfação.
    • O que faço bem: Habilidades e talentos pessoais.
    • Pelo que posso ser pago: Atividades que podem ser transformadas em fonte de renda.
    • Do que o mundo precisa: Contribuições que impactam positivamente a sociedade.
  • Objetivo: Identificar a interseção desses elementos para descobrir seu Ikigai.


6. Pitch Pessoal e Marca Pessoal

  • Pitch Pessoal:
    • Definição: Uma apresentação breve (discurso de elevador) que resume sua história, habilidades e experiências de forma clara e impactante.
    • Objetivo: Criar uma boa primeira impressão em entrevistas, reuniões e networking.
  • Marca Pessoal:
    • Definição: A imagem e identidade que você constrói profissionalmente com base em seu autoconhecimento e no modo como comunica sua história.


7. Habilidades e Competências para o Mercado de Trabalho

  • Habilidades Técnicas (Hard Skills):
    • Definição: Conhecimentos e capacidades específicas adquiridos por meio de formação e experiência (ex.: domínio de uma linguagem de programação, Excel avançado).
  • Habilidades Socioemocionais (Soft Skills):
    • Definição: Habilidades interpessoais e comportamentais, como comunicação, resiliência, empatia e trabalho em equipe.
  • Competência (Modelo CHA):
    • Definição: Conjunto integrado de Conhecimento, Habilidade e Atitude, que resulta em desempenho eficaz.
  • Ferramenta – Árvore de Competências:
    • Conceito: Representação visual onde:
      • Raízes: Competências fundamentais.
      • Tronco: Competências gerais.
      • Galhos: Competências específicas.
      • Frutos: Resultados alcançados.
      • Solo: Ambiente organizacional que influencia o desenvolvimento.

8. Iniciação Empreendedora

  • Conceito de Empreendedorismo:
    • Trata-se de identificar oportunidades, assumir riscos e transformar ideias em negócios ou iniciativas que gerem valor econômico e/ou social.
    • Envolve o entendimento histórico do termo, suas origens e a evolução do conceito – desde os primeiros registros até a visão moderna, ligada à inovação e à transformação de mercados.
  • Tipos de Empreendedorismo:
    • Por Necessidade: Quando o empreendedor se lança no mercado por falta de oportunidades no trabalho formal ou para suprir necessidades básicas.
    • Por Oportunidade: Motivado pela identificação de uma demanda ou desejo de inovar, criando soluções a partir de oportunidades percebidas no mercado.
    • Empreendedorismo Social: Focado em gerar impacto social, resolvendo problemas como acesso à educação, saúde, ou sustentabilidade, muitas vezes com um modelo de negócio híbrido que une lucro e valor social.
  • Perfis de Empreendedor:
    • Diversos perfis são apresentados, como o empreendedor nato, o idealista, o situacionista, o herdeiro, entre outros, cada um com motivações e características específicas.
    • Atividades em sala incentivam os alunos a refletirem sobre seus próprios perfis por meio de quizzes e debates, relacionando-os com exemplos práticos da área de Desenvolvimento de Sistemas.

9. Interesses x Competências

  • Definição e Distinção:
    • Interesses: São as áreas, atividades ou assuntos pelos quais você é apaixonado e que despertam sua curiosidade. Exemplo: gostar de tecnologia, arte ou esportes.
    • Competências: São as habilidades e conhecimentos que você desenvolveu ao longo do tempo – técnicas, socioemocionais e práticas – que lhe permitem executar tarefas com eficácia.
  • Ferramenta de Alinhamento com a Pirâmide de Maslow:
    • A Pirâmide de Maslow é utilizada para identificar as necessidades básicas e superiores. Ao compreender essas necessidades, é possível alinhar seus interesses pessoais às competências profissionais, de modo que o trabalho não só satisfaça demandas básicas (como segurança e estabilidade), mas também contribua para a autorrealização.
  • Aplicação Prática:
    • Atividades em sala incluem a criação de mapas conceituais, a definição de metas (usando ferramentas como o 5W2H) e o desenvolvimento de uma linha do tempo que ilustre o caminho futuro da carreira, integrando interesses e competências.

10. Autoconhecimento Profissional e Estilos de Trabalho

  • Conceito de Autoconhecimento Profissional:
    • Envolve compreender suas habilidades, interesses, valores e preferências no ambiente de trabalho para tomar decisões de carreira mais alinhadas com seu perfil.
    • Diferencia-se do autoconhecimento pessoal, pois foca especificamente nas competências e atitudes que influenciam o desempenho profissional.
  • Estilos de Trabalho:
    • São as preferências individuais sobre como se trabalhar melhor – seja em equipe, de forma individual ou adotando um estilo integrador que combine ambos.
    • Ferramentas, como o teste de estilo de trabalho da Fundação Estudar, ajudam a identificar características como agilidade, atenção aos detalhes, orientação para resultados, entre outros.
  • Jornada do Autoconhecimento Profissional:
    • Atividades práticas, como a “Jornada do Autoconhecimento Profissional”, guiam os alunos por meio de estações (como a criação de uma mandala profissional) onde eles refletem sobre seus pontos fortes, preferências e objetivos.
    • Essa prática estimula a integração de diversos instrumentos de autoconhecimento (Mandala Ikigai, SWOT, Linha do Tempo, Elevator Pitch) para construir uma visão mais clara sobre o futuro profissional e facilitar a escolha de ambientes de trabalho compatíveis.
  • Pesquisa e Mapeamento de Oportunidades:
    • Além do autoconhecimento, é enfatizada a importância de pesquisar as profissões e empresas de interesse, utilizando recursos como a Classificação Brasileira de Ocupações (CBO) e mapas conceituais para organizar informações sobre missão, visão e valores das organizações.
    • Essa abordagem prepara os alunos para criar um portfólio e um planejamento estratégico para a carreira, fundamentado na autoavaliação e no entendimento do mercado.

11. Habilidades Empreendedoras e Mentalidade de Crescimento

  • Definição e Importância:
    Esta seção enfatiza que o empreendedorismo não se resume apenas a uma ideia brilhante, mas envolve desenvolver um conjunto de habilidades que podem ser aprimoradas com esforço contínuo.
  • Elementos-Chave:
    • Mindset de Crescimento: A crença de que é possível aprender, adaptar-se e evoluir, transformando desafios em oportunidades.
    • Exemplos Práticos: São apresentados casos, como o de Anna Lisboa, que, ao enfrentar dificuldades, inovou (por exemplo, ao utilizar estratégias digitais para expandir seu negócio).
    • Ferramentas de Autoconhecimento: O Canvas Pessoal é introduzido como uma ferramenta visual que ajuda a mapear habilidades, valores e metas, facilitando a construção de um “modelo de negócio pessoal”.
  • Objetivo:
    Capacitar os alunos a reconhecerem suas potencialidades e a desenvolver atitudes empreendedoras para aplicar em iniciativas pessoais ou em empreendimentos sociais.




12. Panorama Atual e Tendências do Mercado de Trabalho

  • Mudanças e Transformações:
    Esta parte aborda as significativas transformações no ambiente profissional, destacando a evolução do contexto de trabalho e a necessidade de adaptação contínua.
  • Conceitos Fundamentais:
    • Mundo VUCA versus Mundo BANI:
      • VUCA descreve um cenário de Volatilidade, Incerteza, Complexidade e Ambiguidade, enquanto
      • BANI – um conceito mais atual – ressalta um ambiente Frágil, Ansioso, Não Linear e Incompreensível, enfatizando a imprevisibilidade e a necessidade de resiliência.
    • Novos Modelos de Trabalho:
      • A emergência de conceitos como anywhere office e o perfil do profissional slash mostram que hoje a flexibilidade, a capacidade de adaptação e a integração de múltiplas habilidades são essenciais para prosperar.
    • Empregabilidade e Trabalhabilidade:
      • São discutidas as diferenças entre estar preparado para o mercado (empregabilidade) e a capacidade de criar múltiplas fontes de renda (trabalhabilidade), refletindo a importância de se atualizar constantemente.
  • Estratégias para o Futuro:
    Os alunos são incentivados a desenvolver planos para a progressão profissional, alinhando suas competências com as demandas de um mercado em rápida evolução e integrando aspectos tecnológicos, sociais e econômicos.




Esses tópicos ampliam a jornada de autoconhecimento e orientação profissional, preparando os alunos para enfrentar os desafios do mundo empreendedor e se adaptar às tendências do mercado de trabalho contemporâneo.

C/C++ Desenvolvimento de Software Python
Desenvolvimento com KINECT

No primeiro artigo, apresentei a instalação do kinect no ubuntu.

Artigo tratando o kinect no ubuntu

Agora iremos falar e mostrar um pouco sobre seu desenvolvimento.

GITHUB do Projeto

O projeto do libfreenect fica neste repositório.

https://github.com/OpenKinect/libfreenect.git

Site do Projeto

https://openkinect.org/wiki/Low_Level

Meu GITHUB

Ja os meus conjuntos de testes, inclusive os apresentados nos artigos relacionados, podem ser vistos, neste repositório.

https://github.com/marcelomaurin/kinect

Instalação de desenvolvimento

O processo de instalação completo foi visto no artigo anterior, porem para efeito de desenvolvimento os pacotes necessários são:

sudo apt install libudev-dev
sudo apt install libglfw3-dev
sudo apt install freeglut3-dev
sudo apt install libfreenect-dev

Sendo os 3 pacotes iniciais, apenas apoio, e o libfreenect-dev realmente a lib necessária.

Hello World da Biblioteca

Neste primeiro projeto, pouca coisa faremos, apenas iremos compilar identificando o device.

#include <stdio.h>
#include <stdlib.h>
#include <libfreenect.h>

freenect_context *f_ctx;
freenect_device *f_dev;
int user_device_number = 0; // Normalmente 0 se você tiver apenas um Kinect

void depth_cb(freenect_device *dev, void *v_depth, uint32_t timestamp) {
    // Callback para dados de profundidade - não usado neste exemplo
}

void rgb_cb(freenect_device *dev, void *rgb, uint32_t timestamp) {
    // Salva uma imagem RGB capturada pelo Kinect
    FILE *image = fopen("output_image.ppm", "wb");
    if (image == NULL) {
        printf("Erro ao abrir o arquivo para escrita\n");
        return;
    }
    fprintf(image, "P6\n# Kinect RGB test\n640 480\n255\n");
    fwrite(rgb, 640*480*3, 1, image);
    fclose(image);
    printf("Imagem salva como output_image.ppm\n");

    // Depois de salvar a imagem, podemos sair do loop principal
    freenect_stop_video(dev);
    freenect_close_device(dev);
    freenect_shutdown(f_ctx);
    exit(0);
}

int main() {
    if (freenect_init(&f_ctx, NULL) < 0) {
        printf("freenect_init() falhou\n");
        return 1;
    }

    if (freenect_open_device(f_ctx, &f_dev, user_device_number) < 0) {
        printf("Não foi possível abrir o dispositivo\n");
        freenect_shutdown(f_ctx);
        return 1;
    }

    freenect_set_depth_callback(f_dev, depth_cb);
    freenect_set_video_callback(f_dev, rgb_cb);
    freenect_set_video_mode(f_dev, freenect_find_video_mode(FREENECT_RESOLUTION_MEDIUM, FREENECT_VIDEO_RGB));

    freenect_start_video(f_dev);

    while (freenect_process_events(f_ctx) >= 0) {
        // Processa eventos do Kinect até que a captura de imagem seja concluída
    }

    return 0;
}

Neste exemplo o programa pega o kinect e tira uma foto, salvando na maquina local.

Vamos entender o código.

A freenect_init inicia a api.

A próxima função freenect_open_device, abre o device conforme o número que estiver descrito. Isso permite abrir mais de um kinect na mesma maquina.

As funções freenect_set_depth_callback e freenect_set_video_callback criam funções de callback, para controle, se voce não sabe o que é leia este artigo:

A função freenect_set_video_mode indica os parâmetros de resolução.

Por ultimo a função freenect_start_video, dá inicio ao kinect que aciona o callback quando pronto.

Makefile

Criamos aqui o arquivo de compilação do projeto.

CC=gcc
CFLAGS=-c -Wall -I/usr/include/libfreenect
LDFLAGS=-L/usr/lib/x86_64-linux-gnu -lfreenect
SOURCES=kinect.c
OBJECTS=$(SOURCES:.c=.o)
EXECUTABLE=kinect

all: $(SOURCES) $(EXECUTABLE)

$(EXECUTABLE): $(OBJECTS) 
	$(CC) $(OBJECTS) -o $@ $(LDFLAGS)

.c.o:
	$(CC) $(CFLAGS) $< -o $@

clean:
	rm -f $(OBJECTS) $(EXECUTABLE)

Perceba aqui que o pulo do gato neste makefile, é a inclusão da pasta /usr/lib/x86_64-linux-gnu que é onde a lib se encontra. Bem como a /usr/include/libfreenect que é onde o header se encontra.

Compilando o projeto

Para compilar esse projeto, é necessário apenas rodar o script na pasta src do ubuntu:

make all

Compilando o projeto

Rodando o programa

Agora iremos rodar o programa, isso é a parte mais simples.

Ao rodar, ele captura uma foto, e salva, conforme apresentado.

Foto capturada pelo kinect.

Desenvolvimento de Software
Integração do Chatgpt e Lazarus: Desenvolvendo Soluções Robustas e Amigáveis

A integração do Chatgpt junto com Lazarus em aplicações Desktop pode ser uma excelente maneira de utilizar a inteligência artificial para desenvolver soluções mais robustas e amigáveis. Neste artigo, vamos apresentar tanto o uso da ferramenta de integração desenvolvida pelo autor (disponível em https://github.com/marcelomaurin/CHATGPT), quanto um exemplo prático de aplicação no MNote2, onde a IA é utilizada tanto na formatação de SQL, como no auxílio e validação de queries de pesquisa, além de garantir a consistência dos códigos desenvolvidos.

A utilização do Chatgpt em conjunto com Lazarus traz diversos benefícios tanto para os desenvolvedores quanto para os usuários finais.

Uma das principais vantagens é a capacidade de evitar erros e permitir ajustes e aferições durante o processo de uso das ferramentas.

Vamos analisar inicialmente o uso no MNote2, nele, a IA pode consistir tabelas, ajustando tanto estéticamente como sintaticamente, querys complexas, permitindo que o analista desenvolva de forma mais rápida e intuitiva.

Neste exemplo vemos o MNote2 que a IA, ajustou o layout de um SQL, permitindo que o mesmo seja analisado.

Os próximos passos, é fornecer previamente as tabelas referenciadas, para que a IA possa com isso fazer a prévia amarração das querys através de seus Joins.

MNote2 – 2.31

Exemplo de projeto em desenvolvimento com IA integrada.

Com a IA integrada, é possível contar com um assistente virtual que auxilia na confecção correta de queries SQL, evitando erros comuns e garantindo que as pesquisas sejam realizadas de maneira eficiente.

Além disso, a integração do Chatgpt com Lazarus permite a validação de queries de pesquisa, garantindo que elas estejam corretas e retornem os resultados desejados. O assistente virtual pode analisar a estrutura da query e verificar se os parâmetros estão corretos, evitando consultas inválidas e economizando tempo do desenvolvedor.

Outro ponto importante é a consistência dos códigos desenvolvidos. Com a IA auxiliando no processo de desenvolvimento, é possível manter um padrão de código mais uniforme e evitar erros comuns. O assistente virtual pode identificar possíveis problemas e sugerir correções, garantindo que o código final seja mais legível, fácil de dar manutenção e menos propenso a erros.

No exemplo prático do MNote2, a integração do Chatgpt com Lazarus é utilizada para auxiliar tanto na formatação de SQL quanto na validação de queries de pesquisa. Com a ajuda do assistente virtual, os desenvolvedores podem escrever queries de maneira mais eficiente e garantir que elas estejam corretas antes de executá-las. Isso resulta em um processo de desenvolvimento mais ágil e menos propenso a erros.

Sistemas de ERP e CRM, porem se beneficiar muito, através de sistemas de sugestão, analisando padrões de comportamento do software e sugerindo mudanças, para evitar problemas logisticos ou de processos.

Em resumo, a integração do Chatgpt com Lazarus em aplicações Desktop oferece uma maneira eficiente e inteligente de desenvolver soluções mais robustas e amigáveis. A utilização da IA traz benefícios como a formatação correta de SQL, a validação de queries de pesquisa e a consistência dos códigos desenvolvidos. Esses aspectos agregam valor tanto para os desenvolvedores, que podem contar com um assistente virtual durante o processo de desenvolvimento, quanto para os usuários finais, que se beneficiam de soluções mais eficientes e menos propensas a erros.

maurinsoft.com.br