¿Cómo decides en qué trabajar en tu propio tiempo? [cerrado]

12

Tengo picazón y hay que rascarla. No tengo nada que programar estos días. Normalmente solo elegiría la tecnología de mi sabor del mes y jugaría con ella, pero quiero hacer algo y tomar un descanso de la investigación / experimentación seria por un tiempo y simplemente escribir algo por diversión (es decir, no necesariamente puramente educativo / profesional desarrollo).

El problema es,

  • No puedo pensar en el software que necesito y que aún no tengo.
  • Examinar los proyectos de código abierto en varios sitios para ayudar es insoportable (5 horas por los tubos hasta ahora, no vale la pena)

No estoy buscando una sugerencia específica sobre qué trabajar porque sería una tarea terriblemente difícil. No creo que aquí sepan lo suficiente entre sí como para dar buenas sugerencias de manera efectiva.

Entonces, le pregunto, ¿hay algún ejercicio mental que use para decidir qué hacer cuando no está "jugando"?

Steven Evers
fuente
¿Qué te gusta? No tiene que ser práctico.
Robert Harvey

Respuestas:

7

Como no parece interesado en ayudar a proyectos de código abierto, comience su propio proyecto (de código abierto o no), pero intente ayudar a una comunidad en Internet. Primero encuentre uno con el que realmente disfrute pasar tiempo y cree algo para ellos: un sitio web o una herramienta o algo.

Quiero decir, eres un programador, usa tus habilidades en el mundo real (fuera de tu trabajo). Incluso te permitirá aprender nuevas tecnologías porque querrás hacer ciertas cosas que podrían estar fuera de tu conocimiento de programación. Serás como tu propio analista y el cliente es la comunidad.

Belun
fuente
11

Cuando me quedo sin aplicaciones o utilidades que quiero escribir, generalmente voy a resolver problemas matemáticos en el Proyecto Euler (también uso esos problemas cuando estoy aprendiendo un nuevo idioma).

La resolución programática de problemas matemáticos puede no ser el uso más completo para las habilidades de programación, pero también me divertí mucho y aprendí algunas cosas (ymmv).

Alan
fuente
1
Sí, el Proyecto Euler es una excelente forma de aprender nuevos idiomas
Jaco Pretorius
+1: Esta es una muy buena idea. También hago problemas de educación física, pero nunca lo consideré como una herramienta para aprender un nuevo idioma.
Steven Evers
Estoy usando el Proyecto Euler para aprender Python. No solo es bueno para mejorar la capacidad matemática, sino que también es útil para aprender los conceptos básicos de un nuevo idioma.
Richard
El Proyecto Euler es ingenioso, particularmente desafiante si intentas imaginar un escenario en el que puedas usar el código que acabas de escribir. Encuentro que estos casos suelen ser más complicados que las matemáticas involucradas.
Ingeniero mundial
7

¿Cuáles son tus pasatiempos, fuera de la programación? Haz algo para uno de ellos. De esta manera, tendrá un interés real en el proyecto, y puede terminar siendo algo útil para otros.

Gran maestro B
fuente
7

Haz un juego

De esa manera, puede aumentar sus habilidades en casi cualquier área que desee. Tendrá que tocar muchas de las cosas que se mencionan a continuación, pero puede concentrarse más en los bits que más le interesan.

  • ¿Quieres programar IA? ¡Adelante!
  • Programación de gráficos? ¡Cheque!
  • ¿Física? ¡Cheque!
  • Gestión de recursos? Cheque
  • Programación de red? Si quieres.
  • Programación de la interfaz de usuario!
  • Programación de juego
  • Mezclando sonidos
  • Creando gráficos

¡La lista sigue y sigue!

Fabricante de clavos
fuente
Por eso me encanta la programación de juegos: es un campo tan diverso y puedes usar tantos sombreros como quieras.
Jon Purdy
1
... y a menudo tienes que hacerlo con el último rendimiento que puedas obtener.
GrandmasterB
1
los programadores no hacen gráficos a menos que sean verdaderos hombres del Renacimiento ... nunca he visto un juego de Linux con buenos gráficos. ¿Tienes? Dicho esto, +1, buena respuesta
ixtmixilix
Eso me hace un hombre del Renacimiento entonces ... ¡Yay!
Nailer
@ixtmixilix: Entonces probablemente no hayas visto WarMUX .
Joey Adams
2

Personalmente, tengo un proyecto de genealogía en espera, y me estoy concentrando en un juego (simple) para mi hija. No es un proyecto totalmente inventado, mi hija quiere el juego, aunque podría jugarse fácilmente en papel y me permitirá aprender un poco sobre WCF. Como muchas otras personas, aprendo más haciendo que simplemente leyendo sobre ejemplos genéricos.

Si no tiene una necesidad o inspiración específica, simplemente elija una aplicación o herramienta existente que utilice una tecnología o característica que le interese y cree la suya propia desde cero. Específicamente, intente construir uno mejor desde cero.

En mi lista de un día podría ser una herramienta de sincronización como SyncToy y un reemplazo para SwitchOff.

Mejor aún, en el Reino Unido hay un programa llamado IT4communities que trata de unir a organizaciones benéficas necesitadas con la ayuda técnica de voluntarios, muchos de los cuales son proyectos de programación, ¿por qué no ganarse un buen karma en el proceso? Algunos países tienen esquemas similares en funcionamiento, tal vez bajo una etiqueta de Circuit Riders.

cjmUK
fuente
1

Busco tareas en mi vida que podrían automatizarse, o facilitarse más fácilmente, y luego trato de encontrar una solución programática. Esto generalmente da como resultado una buena acumulación de proyectos, y elijo el que más se ajusta a las habilidades que quiero desarrollar.

Algunas preguntas que hago continuamente son:

  • ¿Con qué tipo de datos estoy trabajando / en? ¿Alguna vez querré analizarlo (gráficamente o de otra manera) en el futuro? ¿Tiene alguna relación con otros datos con los que estoy trabajando?
  • ¿Qué tareas repetitivas estoy realizando? ¿Estoy trabajando con algo que tiene una interfaz programable?

Una vez que tengo una idea, trato de capturarla en un mapa mental y almacenarla en algún lugar para poder volver a ella. Si es muy convincente, trato de resolver los requisitos básicos y decidir si tiene prioridad sobre lo que estoy trabajando actualmente.

También trato de vigilar a mi esposa y qué tareas realiza regularmente. Si hay algo que hace que podría convertirse en una aplicación, veo si está interesada. Si es así, trabajo con ella algunos requisitos básicos, hago mi propio ciclo de desarrollo y paso algunos prototipos con ella. Esto generalmente ayuda a inspirar una serie de ideas para extensiones u otros proyectos.

Bedwyr
fuente
1

Tiendo a tratar de recrear cosas que encuentro interesantes; por ejemplo, recientemente decidí hacer mi propia versión de la lista Ta-Da , solo para ver cómo se podría hacer.

whostolemyhat
fuente