TLN tln.design

Antes de mais nada, este não é um texto para dizer que programadores são mais inteligentes ou que usuários são leigos. Pelo contrário: é para lembrar que ambos os lados têm seus desafios — e que, no fim, todo sistema é feito por pessoas e para pessoas.

Programadores vs. Usuários? Não. Somos todos parte da mesma interface.

Do lado do desenvolvedor…

Quem nunca passou por isso: você entrega o sistema funcionando, validado, com mensagens claras… e no dia seguinte recebe um chamado:

“O sistema está com bug.”

Quando, na verdade, era só uma mensagem que o usuário não leu — ou não entendeu.

Isso não é burrice. É falta de UX.

Do lado do usuário…

Tentar usar um sistema que parece ter sido feito por um alienígena também não é fácil.

Quantos já tentaram preencher um formulário, erraram uma vírgula no CPF e tiveram que recomeçar tudo do zero? Frustrante, né?

UX/UI: a ponte entre os mundos

É aqui que entra o verdadeiro herói: UX/UI. Design de interface não é sobre beleza — é sobre comunicação e usabilidade.

Conclusão

Se um sistema exige que o usuário pense como um programador, ele não é intuitivo. Se o desenvolvedor não se coloca no lugar do usuário, o sistema não é empático.

“Programar é construir pontes — não muros.”

Vamos trocar experiências? Seja como dev ou como usuário, comenta aqui e compartilha sua visão. 👇

Antes de começar o desenvolvimento, é essencial entender como o usuário vai navegar e interagir com o sistema. O User Flow garante que cada passo da jornada seja pensado para ser intuitivo e funcional.

Por que começamos pelo User Flow?

Mapear o User Flow nos ajuda a entender o que realmente importa para o usuário. Para o Mini CRM Lead Tracker, o foco está em simplicidade, eficiência e visão gerencial de qualidade.

Fluxo Principal (Atualizado para MVP Profissional):

  1. Login: Usuário faz login seguro com email e senha.
  2. Dashboard (Analytics):
  3. Página Leads (Operacional):
  4. Logout: Finalizar sessão de forma segura.

Diagrama de User Flow (Atualizado)

Diagrama de Fluxo

O que esse fluxo proporciona?

“Fluxo bem desenhado hoje, menos retrabalho amanhã.”

No próximo capítulo do Diário de Bordo, vamos modelar as entidades de dados com base nesse fluxo e preparar o diagrama ER inicial. Acompanhe!

Ser um bom desenvolvedor(a) front-end hoje vai muito além de codar com a última framework do mercado. As empresas procuram profissionais completos, que entreguem mais do que interfaces bonitas — entreguem experiências reais.

O que define o dev front-end que as empresas querem?

Mais do que codar — é entregar

No final, o dev front-end ideal é aquele que entrega valor. Que entende o usuário, o design, o time e o produto. Que vê além da tela.

“Ferramentas mudam. Linguagens evoluem. Mas a capacidade de resolver problemas e criar boas experiências é o que fica.”

Quer saber mais sobre como se preparar para ser o dev que o mercado procura? Continue acompanhando o blog — novos artigos toda semana!

Iniciamos hoje o desenvolvimento do Mini CRM Lead Tracker, um sistema pensado para profissionais e pequenas equipes que precisam de um CRM leve, prático e objetivo.

Objetivos do Projeto

Stack Tecnológica

Próximos Passos

Agora vamos avançar para a definição da arquitetura inicial e modelagem de dados, que vão sustentar a evolução do projeto.

“Cada linha de código será pensada para ser limpa, escalável e bem documentada — porque o futuro agradece.”

Quer acompanhar essa jornada? Fique de olho — novos capítulos do Diário de Bordo serão publicados toda semana!

Documentação de API não é luxo — é necessidade. Especialmente quando estamos construindo um sistema real, como o nosso Mini CRM Lead Tracker.

Para garantir que o sistema seja sustentável, optamos por usar o padrão Swagger para documentar a API RESTful do CRM.

O que é Swagger?

Swagger é um conjunto de ferramentas que usa o padrão OpenAPI Specification para definir, visualizar e interagir com APIs RESTful de maneira padronizada e automática.

Por que estamos usando Swagger no Mini CRM?

Exemplo real de anotação (Laravel PHPDoc)


  /**
   * @OA\Post(
   *     path="/api/v1/leads",
   *     summary="Cria um novo lead",
   *     @OA\RequestBody(
   *         required=true,
   *         @OA\JsonContent(
   *             required={"nome", "email"},
   *             @OA\Property(property="nome", type="string"),
   *             @OA\Property(property="email", type="string")
   *         )
   *     ),
   *     @OA\Response(
   *         response=201,
   *         description="Lead criado com sucesso"
   *     )
   * )
   */
  

Conclusão

Swagger nos permite manter o nosso Mini CRM organizado, claro e fácil de integrar — o que é fundamental para qualquer sistema sério que queremos que dure e evolua.

“Se não está documentado, é como se não existisse.”

Você já documenta suas APIs assim? Ou ainda deixa tudo na mão de Deus? 😂

Quem nunca voltou para um código meses depois e pensou:

“Que inferno é esse?”

Depois de anos codando projetos de todos os tamanhos, desenvolvi um processo próprio para estruturar cada projeto que começo. Neste artigo, compartilho meu estilo de programação — da documentação inicial às boas práticas no código e gestão do projeto.

Documentação: antes de escrever a primeira linha de código

Antes de qualquer comando no terminal, eu crio um documento PDF onde descrevo o projeto:

Depois disso, passo para diagramas e modelagens (como ERD – Entity Relationship Diagram) e crio os protótipos das telas usando o Figma.

Back-end: organização, padrão e clareza

Sou especialista em PHP e adoto o padrão PSR-12 para manter o código limpo e consistente. Minhas práticas incluem:

Front-end: organização e modularidade

No front-end, minha filosofia é separar bem os blocos de código CSS:

Organização: produtividade e rastreabilidade

Para organizar tarefas e acompanhar o progresso do projeto, utilizo o Jira. Isso ajuda a:

Repositório: controle de versão e organização

Todo projeto que desenvolvo é versionado com Git e hospedado no GitHub ou GitLab. Minhas práticas de repositório incluem:

Tiago’s Code Style: meu manifesto de boas práticas

“Código não é só para rodar. Código é para durar.”

Esse é o meu jeito de construir software. E você? Qual é o seu estilo de programação?