Executando verificação de segurança...
3

Não consigo iniciar um projeto do absoluto zero

Creio que não seja apenas eu que tenha esse problema, mas me sinto mto preso em mtos aspectos na programação e um deles é iniciar um projeto do absuluto zero, seja ele o mais simples possivel, não sai uma linha de código, nada. Não consegui desenvolver isso em mim em quase 2 anos de trabalho na área, se me passam uma demanda explicando e tudo mais, faço com certa tranquilidade é claro, nunca tive problemas, mas minha grande questão é, não existe nada e começar a criar algo do zero, sem pegar um tutorial ou algo do tipo. Gostaria de dicas para perder esse "travamento" que tenho, desenvolver isso e claro, me aprimorar. Qualquer dica é bem vida.

Carregando publicação patrocinada...
3

Meu caro, deixo aqui meus míseros 2 centavos de contribuição.

Tinha falado em outro post sobre o outro lado da moeda, o "Como concluir projetos" https://www.tabnews.com.br/kaiqueramos/como-concluir-projetos-uma-breve-dissertacao-sobre-o-tema talvez possa ter algo útil pra você também.

Começar projetos também é algo muito complicado! De onde vem uma ideia? Como colocamos isso em prática? Como damos o primeiro passo?

No mesmo modelo, algumas dicas que uso:

Se acostume a começar muitas vezes; isso é um truque que vem a calhar, mas dependendo do caso, pode parecer mais como uma armadilha.... mas pra mim funciona muito bem! Pessoalmente falando, eu tenho o costume de começar e recomeçar muitas vezes em diversas coisas. Projetos Java/Spring, eu costumo recomeçar o mesmo projeto várias vezes. Até mesmo em RPGs de mesa, todos tem seus personagens já de muito tempo, e eu sempre que sinto que algo não está certo, refaço e recomeço do zero. Isso é péssimo para o longo prazo, mas te tira esse medo do "e se eu falhar e tiver que recomeçar?". Lembro até de quando estava começando na área, começar e recomeçar meus estudos do zero umas 10 vezes em 1 mês (só no primeiro mes), e reiniciando desde o Hello World. Depois de um tempo as coisas ficam repetitivas e o processo se fixa na sua mente.

Assuma a postura de passos de formiga; o importante em um projeto não é ele andar super rápido ou não ter nenhum problema, e sim que ele seja consistênte. Assumir que os passos serão como o de formiga te trás o pensamento de paciência automaticamente. Isso se combinado com as dicas do post que coloquei, te farão chegar em qualquer lugar. As jornadas mais incríveis começam com um passo de cada vez.

Repita muito! E está tudo bem usar tutoriais. A dica aqui entra em ressonância com a primeira: quando eu sinto que estou muito dependente de um tutorial, eu uso o que pode se chamar de hiperrepetição. Repito todos os passos inúmeras vezes até que o conhecimento se fixe. Não é como decorar, e sim repetir até virar um vício ou memória muscular.

Entenda os conceitos e crie associações com coisas que você sabe; não sei o que você está estudando, então não tenho exemplos exatos, mas no meu caso estou estou estudando Go, e sei razoavelmente bem codar em Java. Quando estou vendo um conceito novo, tento entender com o que esse conceito se parece no Java e busco informações para entender como esse conceito funciona. O truque é entender e escrever o que você entendeu em algum lugar, mas a escrita deve ser clara o suficiente para que até um(a) senhor(a) que nunca viu um computador entenda.

Não tenha medo de errar e nem de quão dificil pode ser; uma coisa é certa, a dificuldade é o melhor fixador de conteúdo na nossa mente. É batata, quando você está recebendo um erro no código e fica horas e horas procurando a causa, e no fim você esqueceu um caractere... isso se fixa de tal forma na nossa mente que nunca mais esquecemos, ou se esquecermos, sempre vamos lembrar de como corrigir. Se exponha a dificuldade!

Pergunte... mas se não souber como perguntar, o ouro está ai! Esse tipo de problema foi algo que sempre tive. Toda a vez que ia pedir ajuda, não sabia como explicar o que eu precisava! Foi ai que percebi que, se eu não sei pedir, não sei resolver. Tudo bem pedir ajuda, mas antes de pedir, tenha certeza do que você precisa. Escreva, fale para o espelho, até se for o caso, pergunte ao chatgpt. O melhor disso tudo, é que aprendendo a fazer perguntas, muitas vezes você descobre que possui a resposta, ou que pensou em um caminho para resolver.

Por fim, e isso é o melhor, dê uma pausa. Toda vez que eu estou travado em alguma tarefa ou problema, eu simplesmente me afasto e esqueço. Esqueço de esquecer mesmo! Não adianta ficar na frente da IDE pensando sobre, a solução só vem depois de esquecer e descansar a mente. Um cochilo é a forma mais rápida de se resolver problemas que aparentemente não tem solução.

Espero ter ajudado :)

1

Eu li em algum lugar que não se cria nada do zero, tudo depende de uma outra coisa, se sua criatividade não está boa para você ter ideias e coloca-las em prática sugiro ir em sites como frontend mentor , ou ideias de projetos bem genéricas somente pra começar a instigar seu lado criativo e realmente destravar essa parte

1

Para que possamos entender melhor e te ajudar, você poderia dar um exemplo de um projeto em que aconteceu isso, por exemplo:

Tinha que criar um projeto para fazer X, não consegui.


Outra coisa, ás vezes o que te trava é não ter o problema a ser resolvido muito claro na sua cabeça. Por exemplo, um CRUD de produtos.

  • Quais são as validações
  • Quais são os campos
  • Quais tabelas envolvidas
  • Qual formato do corpo da requisição e da resposta

São esses tipos de coisa que devem estar definidos antes mesmo de qualquer código.

1
1

Pode ser que eu esteja sugerindo um passo maior do que você realmente precise andar, porém, algo que me ajudou muito a acelerar o começo dos meus projetos, foi estudar DDD e Clean Architecture. Antes eu ficava muito tempo olhando pro framework ou pro banco quando na verdade a domínio da minha aplicação é quem deveria estar recebendo atenção.
Se quer ser capaz de começar um projeto focando no que precisa ser fejto, comece pelo desenho das suas regras de negócio e entidades e só depois se preocupe com problemas de framework, banco ou comunicação. Tudo isso é complementar.

1

Essa dificuldade é normal nos nossos primeiros projetos. Mas a boa notícia é que não tem muito segredo: organização e prática.

Fazer um trabalho do zero exige uma habilidade que vai além de fazer códigos. Tem mais a ver com organização, planejamento, prática.

Algumas coisas funcionam para mim. Geralmente divido em etapas:

1 - brain dump (aqui as ideias e necessidades são coletadas sem limitações, e com zero especificação técnica).

2 - documento em texto simples o fluxo e detalhes de cada feature (gosto de colocar cada feature em um markdown; nada de detalhes técnicos, tem que funcionar de forma que alguém que nunca programou consiga entender).

3 - faço os diagramas que julgo necessários (curto UML e C4, mas você pode fazer do seu jeito, até desenhar com lápis e papel).

4 - defino a stack necessária (linguagem, framework, db, etc).

5 - criação do design (aqui terceirizo, ou quando é algo básico, pego referências no dribble)

6 - hora do código.

Quando você documenta as necessidades antes de ir pro código, o desenvolvimento se torna fluído. Você não tem dificuldade de executar as tasks que o seu chefe passa provavelmente porque ele ja fez boa parte desse processo pra você.