A importância de realizar projetos pessoais

A importância de realizar projetos pessoais

O Problema

Você já deve saber que eu sou um piloto de paramotor ativo, voando constantemente com um grupo de amigos. Voar com os outros é ótimo, mas, de tempos em tempos, é comum ter alguém "perdido" do grupo, razão pela qual eu sempre procurei por um aplicativo que pudesse compartilhar nossas posições enquanto voamos.

Embora alguns desenvolvedores (Apple e Google, por exemplo) tenham aplicativos como o Find Friends, geralmente esses aplicativos exigem permissões dos usuários e suas atualizações de geolocalização são a cada minuto ou mais, algo que não é viável quando você voa com um monte de pessoas que não necessariamente são seus amigos e/ou querem manter a sua privacidade após as nossas viagens pelo ar.

É hora de aprender uma nova linguagem de programação e desenvolver minha própria solução 🙂

O Processo

Ter um projeto pessoal é uma ótima maneira de se forçar a aprender coisas novas, ser "a persona" para a tarefa e ter a pressão de estar encarregado de planejar, projetar, desenvolver, testar e suportar tarefas.

Com alguns dias de férias, mais um monte de noites longas, decidi aprender NativeScript, um kit de desenvolvimento (relativamente) novo baseado em Javascript, uma linguagem de programação que usei no meu passado ao criar o Kwik.

Aprender uma nova ferramenta é uma boa maneira de ficar frustrado (a aprendizagem leva tempo, as coisas não funcionam como você esperava/imaginava, etc.), re-design o tempo todo (algumas coisas que você não sabe como codificar) e ficando louco tentando encontrar e corrigir erros. No entanto, é realmente bom celebrar quando você tem um "novo bebê" rodando em seu telefone (ainda melhor quando você vê isso em dispositivos de outras pessoas).

Ok, vamos falar sobre o processo! Devido à minha própria falta de habilidades como aluno, além das limitações do NativeScript (sempre leia muito sobre a ferramenta de sua escolha), planejei um conjunto mínimo de recursos:

  1. Eu não queria passar muito tempo controlando userids e senha;
  2. Eu precisava de uma solução para mostrar várias pessoas em tempo real em um mapa;
  3. Era obrigatório mostrar um mapa e ter a capacidade de capturar/desenhar as posições dos pilotos.

Para lidar com os itens 1 e 2 acima, eu decidi dar uma chance para o Google Firebase (gente, isso é incrível). Para a solução do mapa, optei pelo provedor Mapbox, pois ele é implementado como um mapa nativo dentro do aplicativo (o Mapa do Google é processado dentro de um navegador).

Meus primeiros desenhos e protótipos:


Como você pode ver, tentei diversas variações até chegar ao projeto final abaixo. As mudanças precisaram ser feitas, como eu disse acima, devido a testes de usabilidade, falta de habilidades para fazer algumas coisas, além de algumas limitações com o NativeScript.

A solução

Depois de algumas semanas, o aplicativo foi concluído (pelo menos a versão 1.0) e disponível na AppStore da Apple e na Play Store do Google, sob o nome PPG Finder. Abaixo, as capturas de tela finais:

Os usuários logam com suas contas do Facebook (portanto, não há necessidade de gerenciar senhas, etc.) e o aplicativo captura o nome, identificação única e foto.

Os usuários podem escolher a cor de seus parapentes, inserir seus apelidos e selecionar como o aplicativo medirá distância, velocidade e altitude.

O painel mostra como eles estão voando (velocidade, distância, altitude, etc.), quão longe eles estão no ponto de origem (desta maneira, ninguém se perde depois de voar para longe), mas a coisa mais importante (os ícones coloridos no mapa), eles podem ver seus amigos ao redor. Clique na barra inferior (mostrando 2 pilotos voando perto) para obter detalhes sobre eles.

Veja o quão longe, pilotos rápidos e altos ao seu redor estão voando.

O que eu aprendi?

Como eu mencionei acima, além de me familiarizar com uma nova linguagem de programação e ter um aplicativo desenvolvido, como designer, as principais aprendizagens foram:

  • Adapte-se constantemente a uma situação não planejada (muito comum no "mundo real": desenhamos algo, o desenvolvedor entrega outra coisa, porque não foi possível codificar exatamente como foi projetado);
  • Seja o usuário, ouça o usuário. Quando você usa o que você constrói, é muito mais fácil encontrar áreas de melhorias e consertar coisas;
  • Encontre soluções! Relacionado aos dois comentários acima, um projeto pessoal é uma oportunidade para encontrar soluções para outros desafios que você pode ter, sem a pressão do tempo. Afinal a entrega está sob seu alcance;
  • Definir um prazo é a melhor maneira de verificar se você alcançou seus objetivos no tempo certo.

Escolha um projeto pessoal e tente fazer algo relacionado ao design (pode ser um redesenho do site, uma nova feature, seja o que for). Além de ser um ótimo exercício, também é muito divertido!

Gostou do tema? Tem dúvida ou comentário? Compartilhe abaixo!

SOBRE O AUTOR

Alex Souza é um especialista em experiência do usuário por mais de 20 anos. Ele iniciou sua carreira no Banco do Brasil em 1986 e desde lá liderou e construiu projetos premiados em posições de designer, marketing e tecnologia em empresas como Lotus/IBM, Microsoft, Kwiksher, Rackspace e, atualmente, GreenMile.

“Alê”, como é chamado pelos amigos formou-se em Design Digital pela Universidade Anhembi-Morumbi e tem mestrado em Educação, Artes e História da Cultura, pela Universidade Mackenzie. Desde 2005 ele vive nos Estados Unidos tendo sido palestrante em eventos internacionais como SXSW, Microsoft MIX e Publishing App Conferences.

Gosta do tema UX? Dá um "follow/like" e compartilha com sua rede! Lá no Twitter eu sou @ux_ale

Jose Carlos Beccari

CEO/ Managing Partner/ Investor/ Executive Consultant

7 a

Parabéns Alex pela idéia e projeto realizado com sucesso! Gostei.

Entre para ver ou adicionar um comentário

Outros artigos de Alex Souza

  • O "espírito" do design

    O "espírito" do design

    Lembro bem como se fosse hoje. O ano era 2005.

  • Reconhecimento não é sair para um jantar chique!

    Reconhecimento não é sair para um jantar chique!

    Faz tempo eu venho pensando em escrever sobre o tema aí de cima, principalmente vendo tantos postings no Linkedin…

  • Design Indutivo

    Design Indutivo

    Estive revendo meus arquivos antigos para preparar uma apresentação para a IronHack (uma escola bem bacana para…

    1 comentário
  • Lean UX é isso tudo mesmo?

    Lean UX é isso tudo mesmo?

    Se você trabalha sozinho ou com uma equipe pequena de desenvolvedores, pode-se dar ao luxo de não ter nenhuma…

  • Montando equipes fortes

    Montando equipes fortes

    Eu confesso que odiava as reuniões de avaliação de performance em quase todas as empresas que eu trabalhei. Gastávamos…

    1 comentário
  • Minhas ferramentas de design

    Minhas ferramentas de design

    Pergunte para dez designers que ferramentas eles usam no dia-a-dia e, provavelmente, você verá que não existe consenso…

  • Princípios de Design

    Princípios de Design

    O desenvolvimento de software é cercado de documentações sobre objetivos (normalmente definidos pela equipe de…

  • Quando um posting "falando demais" estraga tudo...

    Quando um posting "falando demais" estraga tudo...

    Na semana passada eu escrevi sobre as diferenças entre experiência de usuário (UX) e experiência do cliente (CX). A…

  • When design ceases to be practical and becomes symbolic

    When design ceases to be practical and becomes symbolic

    When planning the user experience, whether of a physical or digital product, one must consider both the form (as the…

  • Experiência do Usuário (UX) é o mesmo que Experiência do Cliente (CX)?

    Experiência do Usuário (UX) é o mesmo que Experiência do Cliente (CX)?

    Já te dou a resposta simples logo: NÃO, Customer Experience (CX) não é o mesmo que User Experience (UX). Para entender…

    2 comentários

Outras pessoas também visualizaram

Conferir tópicos