Como você decide no que trabalhar no seu próprio tempo? [fechadas]

12

Estou com coceira e precisa ser arranhada. Hoje não tenho nada para programar. Normalmente, eu apenas escolho o meu sabor da tecnologia do mês e mexo com ela, mas quero fazer algo e fazer uma pausa em pesquisas / experiências sérias por um tempo e apenas escrever algo por diversão (ou seja, não necessariamente puramente educacional / profissional). desenvolvimento).

O problema é,

  • Não consigo pensar no software que eu preciso que ainda não possuo.
  • Peneirar os projetos de código aberto em vários sites para ajudar é excruciante (até 5 horas nos tubos até agora - não vale a pena)

Não estou procurando uma sugestão específica para o que trabalhar, porque isso seria uma tarefa terrivelmente difícil. Eu não acho que aqui saiba quase o suficiente um do outro para efetivamente dar boas sugestões.

Então eu pergunto: existe algum exercício mental que você usa para decidir o que fazer quando não está "brincando"?

Steven Evers
fonte
Do que você gosta? Não precisa ser prático.
Robert Harvey

Respostas:

7

Como você não parece interessado em ajudar projetos de código aberto, inicie seu próprio projeto (código aberto ou não), mas tente ajudar uma comunidade na Internet. Encontre um primeiro, com o qual você realmente goste de passar tempo, e crie algo para eles: um site, uma ferramenta ou algo assim.

Quero dizer, você é um programador, use suas habilidades no mundo real (fora do seu trabalho). Isso fará com que você aprenda novas tecnologias, porque desejará fazer certas coisas que podem estar fora do seu conhecimento de programação. Você será como seu próprio analista e o cliente é a comunidade.

Belun
fonte
11

Quando os aplicativos ou utilitários que eu quero escrever acabam, normalmente resolvo problemas de matemática no Project Euler (também costumo usar esses problemas quando estou aprendendo um novo idioma).

Resolver problemas baseados em matemática de forma programática pode não ser o uso mais completo para habilidades de programação, mas eu me diverti muito e aprendi algumas coisas também (ymmv).

Alan
fonte
1
Sim, o Project Euler é uma ótima maneira de aprender novos idiomas
Jaco Pretorius
+1: é uma boa ideia. Também faço problemas de EF, mas nunca considerei uma ferramenta para aprender um novo idioma.
Steven Evers
Estou usando o Project Euler para aprender Python. Além de melhorar a capacidade de matemática, é útil para aprender o básico de um novo idioma.
Richard
O Project Euler é bacana, particularmente desafiador se você tentar descobrir um cenário em que possa usar o código que acabou de escrever. Acho que esses casos costumam ser mais flexíveis do que a matemática envolvida.
World Engineer
7

Quais são seus hobbies, fora da programação? Faça algo para um deles. Dessa forma, você terá algum interesse real no projeto e pode acabar sendo algo útil para outras pessoas.

GrandmasterB
fonte
7

Faça um jogo.

Dessa forma, você pode aumentar suas habilidades em praticamente qualquer área que desejar. Você precisará tocar em muitas das coisas mencionadas abaixo, mas pode ter um foco extra nos bits que mais lhe interessam.

  • Deseja programar AI? Continue!
  • Programação gráfica? Verifica!
  • Física? Verifica!
  • Gerenciamento de recursos? Verifica
  • Programação de rede? Se você quiser.
  • Programação de interface do usuário!
  • Programação de jogabilidade
  • Misturando sons
  • Criando gráficos

A lista continua e continua!

Nailer
fonte
É por isso que eu amo programação de jogos: é um campo tão diverso e você pode usar quantos chapéus quiser.
Jon Purdy
1
... e muitas vezes você tem que fazê-lo com todo o desempenho que você puder!
GrandmasterB
1
programadores não fazem gráficos, a menos que sejam verdadeiros homens renascentistas ... Eu nunca vi um jogo Linux com bons gráficos. você já? o que disse, +1, boa resposta
ixtmixilix
Isso me faz um homem renascentista, então ... Yay!
Nailer
@ixtmixilix: Então você provavelmente ainda não viu o WarMUX .
Joey Adams
2

Pessoalmente, tenho um projeto de genealogia em espera e estou me concentrando em um jogo (simples) para minha filha. Não é um projeto totalmente artificial, minha filha quer o jogo, embora possa ser facilmente jogado no papel, e isso me permitirá aprender um pouco sobre o WCF. Como muitas outras pessoas, aprendo mais fazendo do que simplesmente lendo sobre exemplos genéricos.

Se você não tiver uma necessidade ou inspiração específica, basta escolher um aplicativo ou ferramenta existente que use uma tecnologia ou recurso do seu interesse e criar seu próprio a partir do zero. Especificamente, tente criar um melhor a partir do zero.

Na minha lista de itens que podem chegar ao seu dia, há uma ferramenta de sincronização como o SyncToy e um substituto para o SwitchOff.

Melhor ainda, no Reino Unido, é um programa chamado IT4communities que tenta combinar instituições de caridade carentes com ajuda técnica de voluntários - muitos dos quais são projetos de programação - por que não ganhar um bom karma no processo. Alguns países têm esquemas similares em execução, talvez com o rótulo Circuit Riders.

cjmUK
fonte
1

Procuro tarefas em minha vida que possam ser automatizadas ou mais facilmente facilitadas e, em seguida, tento encontrar uma solução programática. Isso geralmente resulta em um bom estoque de projetos, e eu escolho o que mais se aproxima das habilidades que quero desenvolver.

Algumas perguntas que faço continuamente são:

  • Com que tipo de dados eu estou trabalhando? Será que eu vou querer analisá-lo (graficamente ou de outra forma) no futuro? Tem alguma relação com outros dados com os quais estou trabalhando?
  • Que tarefas repetitivas estou executando? Estou trabalhando com algo que possui uma interface programável?

Depois de ter uma idéia, tento capturá-lo em um mapa mental e armazená-lo em algum lugar para que eu possa voltar a ele. Se for muito atraente, tento trabalhar com os requisitos básicos e decidir se ele tem prioridade sobre o que estou trabalhando atualmente.

Também tento acompanhar minha esposa e quais tarefas ela realiza regularmente. Se houver algo que ela faça que possa ser transformado em um aplicativo, vejo se ela está interessada. Se ela é, eu trabalho com alguns requisitos básicos com ela, faço meu próprio ciclo de desenvolvimento e passo alguns protótipos com ela. Isso geralmente ajuda a inspirar várias idéias para extensões ou outros projetos.

bedwyr
fonte
1

Costumo tentar recriar coisas que acho interessantes - por exemplo, recentemente decidi fazer minha própria versão da lista Ta-Da , apenas para ver como isso poderia ser feito.

whostolemyhat
fonte