Come decidi su cosa lavorare nel tuo tempo libero? [chiuso]


12

Ho un prurito e deve essere graffiato. Non ho nulla da programmare in questi giorni. Normalmente sceglierei solo il mio sapore della tecnologia del mese e giocherò con esso, ma voglio fare qualcosa e prendermi una pausa da una seria ricerca / sperimentazione per un po 'e scrivere semplicemente qualcosa per divertimento (cioè non necessariamente puramente educativo / professionale sviluppo).

Il problema è

  • Non riesco a pensare a software di cui ho bisogno che non ho già.
  • Passare al setaccio i progetti open source su vari siti per dare una mano è lancinante (fino a 5 ore finora dai tubi - non vale la pena)

Non sto cercando un suggerimento specifico su cosa lavorare perché sarebbe un compito terribilmente difficile. Non credo che qui ne sappia abbastanza l'uno per l'altro per dare effettivamente buoni suggerimenti.

Quindi chiedo, c'è qualche esercizio mentale che usi per decidere cosa fare quando non sei "violinista"?


Cosa ti piace? Non deve essere pratico.
Robert Harvey,

Risposte:


7

Dal momento che non sembri interessato ad aiutare i progetti open source, avvia il tuo progetto (open source o meno) ma prova ad aiutare una comunità là fuori su Internet. Trova prima uno con cui ti diverti a trascorrere del tempo e crea qualcosa per loro: un sito Web o uno strumento o qualcosa del genere.

Voglio dire, sei un programmatore, usa le tue abilità nel mondo reale (al di fuori del tuo lavoro). Ti farà persino imparare nuove tecnologie perché vorrai fare alcune cose che potrebbero essere al di fuori delle tue conoscenze di programmazione. Sarai come il tuo analista e il cliente è la community.


11

Quando finisco le applicazioni o le utilità che voglio scrivere, di solito vado a risolvere i problemi di matematica su Project Euler (spesso uso questi problemi anche quando sto imparando una nuova lingua).

Risolvere i problemi matematici a livello di programmazione potrebbe non essere l'uso più completo per le capacità di programmazione, ma mi sono divertito molto e ho imparato anche alcune cose (ymmv).


1
Sì, Project Euler è un ottimo modo per imparare nuove lingue
Jaco Pretorius,

+1: questa è davvero una buona idea. Faccio anche problemi di educazione fisica, ma non l'ho mai considerato come uno strumento per imparare una nuova lingua.
Steven Evers,

Sto usando Project Euler per imparare Python. Non solo è utile per migliorare le capacità matematiche, ma è utile anche per apprendere le basi di una nuova lingua.
Richard,

Project Euler è elegante, particolarmente impegnativo se cerchi di capire uno scenario in cui potresti usare il codice che hai appena scritto. Trovo che questi casi siano spesso più curvi del cervello rispetto alla matematica coinvolta.
Ingegnere mondiale il

7

Quali sono i tuoi hobby, al di fuori della programmazione? Crea qualcosa per uno di loro. In questo modo avrai un certo interesse per il progetto e potrebbe finire per essere qualcosa di utile per gli altri.


7

Crea un gioco.

In questo modo puoi aumentare le tue abilità in quasi tutte le aree che desideri. Dovrai toccare molte delle cose menzionate di seguito, ma puoi concentrarti ulteriormente su quelle parti che ti interessano di più.

  • Vuoi programmare AI? Vai avanti!
  • Programmazione grafica? Dai un'occhiata!
  • Fisica? Dai un'occhiata!
  • Gestione delle risorse? Dai un'occhiata
  • Programmazione di rete? Se lo desidera.
  • Programmazione dell'interfaccia utente!
  • Programmazione del gioco
  • Mix di suoni
  • Creazione di grafica

La lista potrebbe continuare all'infinito!


Questo è il motivo per cui amo la programmazione di gioco: è un campo così vario e puoi indossare tutti i cappelli che vuoi.
Jon Purdy,

1
... e spesso devi farlo con ogni ultimo bit di performance che puoi spremere da esso!
GrandmasterB,

1
i programmatori non fanno grafica a meno che non siano veri uomini del Rinascimento ... non ho mai visto un gioco Linux con una buona grafica. hai? detto questo, +1, buona risposta
ixtmixilix il

Questo mi rende un uomo del Rinascimento, quindi ... Yay!
Nailer,

@ixtmixilix: Quindi probabilmente non hai visto WarMUX .
Joey Adams,

2

Personalmente, ho un progetto di genealogia in sospeso e mi sto concentrando su un (semplice) gioco per mia figlia. Non è un progetto interamente inventato, mia figlia vuole il gioco, anche se potrebbe essere facilmente giocabile su carta e mi permetterà di imparare un po 'di WCF. Come molte altre persone, imparo di più facendo piuttosto che semplicemente leggendo esempi generici.

Se non hai necessità o ispirazione specifiche, scegli semplicemente un'app o uno strumento esistente che utilizza una tecnologia o una funzionalità che ti interessa e costruisci la tua da zero. In particolare, prova a costruirne uno migliore da zero.

Nel mio elenco di un giorno, come si può arrivare, c'è uno strumento di sincronizzazione come SyncToy e un sostituto di SwitchOff.

Meglio ancora, nel Regno Unito il loro è un programma chiamato IT4comunità che cerca di abbinare le organizzazioni benefiche bisognose con l'aiuto tecnico dei volontari - molti dei quali sono progetti di programmazione - perché non guadagnare un po 'di karma nel processo. Alcuni paesi hanno schemi simili in esecuzione, forse sotto l'etichetta Circuit Riders.


1

Cerco compiti nella mia vita che possano essere automatizzati o facilitati più facilmente, quindi cerco di trovare una soluzione programmatica. Questo di solito si traduce in un buon arretrato di progetti, e scelgo quello che corrisponde da vicino alle abilità che voglio sviluppare.

Alcune domande che faccio continuamente sono:

  • Con quale tipo di dati sto lavorando / su? Avrò mai voglia di analizzarlo (graficamente o altrimenti) in futuro? Ha qualche relazione con altri dati con cui sto lavorando?
  • Quali compiti ripetitivi sto svolgendo? Sto lavorando con qualcosa che ha un'interfaccia programmabile?

Una volta che mi viene un'idea, provo a catturarla in una mappa mentale e salvarla da qualche parte in modo da poter tornare indietro. Se è molto convincente, provo a elaborare i requisiti di base e a decidere se ha la priorità su ciò su cui sto attualmente lavorando.

Cerco anche di tenere d'occhio mia moglie e quali compiti svolge regolarmente. Se c'è qualcosa che fa che potrebbe essere trasformato in un'applicazione, vedo se è interessata. Se lo è, io lavoro con alcuni requisiti di base con lei, faccio il mio ciclo di sviluppo e percorro alcuni prototipi con lei. Questo di solito aiuta a ispirare una serie di idee per estensioni o altri progetti.


1

Tendo a provare a ricreare cose che trovo interessanti - per esempio, recentemente ho deciso di creare la mia versione dell'elenco Ta-Da , solo per vedere come si potrebbe fare.


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.