Importanza di progetti per hobby [chiuso]

103

Voglio sapere, quanto è importante programmare nel tempo libero? È necessario lavorare con il tuo 9-5 come programmatore e poi tornare a casa e lavorare sul tuo hobby per diventare un programmatore migliore?

Detto questo, so che puoi migliorare solo con la programmazione, beh, la programmazione.

I potenziali datori di lavoro tengono conto della programmazione per hobby in un'intervista o lo chiedono solo per curiosità?

Mi sento in colpa per non avere un progetto per hobby, ma tutto quello che posso pensare di fare è già stato fatto. Quindi sono piuttosto preoccupato per questo, iniziare qualcosa che è già stato fatto o lasciarlo fino a quando non mi viene in mente qualcosa di originale?

    
posta Pieter van Niekerk 12.09.2015 - 19:19
fonte

17 risposte

145

I feel guilty for not having a hobby project

Sentirsi colpevoli è una pazzia per intraprendere un progetto di programmazione. Probabilmente è anche un buon modo per iniziare a odiare la programmazione. Lavora su qualcosa perché tu vuoi , non perché pensi si si suppone .

but everything I can think of doing has already been done.

Bah! A chi importa se è già stato fatto? Fallo ancora! Fallo meglio! Oppure accetta che potresti non essere in grado di farlo meglio e farlo comunque. Dove sarebbe Microsoft se dicessero "beh, qualcuno ha già creato un database / foglio di calcolo / word processor / sistema operativo / IDE / project manager / money manager / linguaggio di ereditarietà diretta basato su oggetti C / browser web / web server / lettore musicale / piattaforma mobile / motore di ricerca, quindi cercheremo qualcos'altro da fare ... "?

Seriamente, se scrivi un server web, probabilmente non otterrai prestazioni migliori di Apache, ma sicuramente imparerai preziose lezioni nel processo. Probabilmente supererai Angry Birds, ma anche la scrittura di un semplice videogioco ti insegnerà molto.

    
risposta data 28.08.2011 - 18:43
fonte
59

Penso che i progetti hobbistici siano importanti

Uso progetti di hobby per testare teorie, pratiche di progettazione, nuovi framework che non riesco a fare nel mio 9-5. cioè Programmazione funzionale, algoritmi, schemi di progettazione, nuovi framework, nuove lingue ecc.

Questo può significare la differenza nel modo rapido ed efficiente di affrontare un nuovo progetto sul posto di lavoro, o addirittura di fare la differenza nel prendere un nuovo progetto da un cliente o mancarlo perché non ne sapevo abbastanza del dominio del problema .

Solo facendo la tua routine quotidiana di 9-5 puoi ristagnarti come sviluppatore se non stai introducendo cose nuove o nuove idee. Per me fare progetti per hobby è un mezzo per farmi diventare uno sviluppatore migliore, più intelligente e più efficiente.

I potenziali intervistatori tengono conto dei progetti hobbistici

Nella mia esperienza se hai fatto un progetto di hobby in una tecnologia correlata che il tuo datore di lavoro sta attualmente utilizzando o "guardando" utilizzando. Ottieni dei bonus per aver già familiarizzato con la tecnologia in questione. Ciò è particolarmente pertinente per le nuove tecnologie che hanno appena raggiunto il mainstream in cui il campo di gioco è livellato rispetto all'esperienza tecnologica.

    
risposta data 10.08.2011 - 08:24
fonte
41

Il problema con il tuo attuale lavoro è che probabilmente hai solo bisogno solo di un set limitato di competenze per svolgere la tua funzione lavorativa. Il mondo della programmazione è così vasto che è facile rimanere bloccati in un solco anno dopo anno. Con la programmazione per hobby puoi espandersi ed essere pronto per altre tecnologie prima l'opportunità si presenta nella tua posizione attuale o altrove.

Ma è importante rendersi conto che i programmatori hobbisti non si limitano a programmare.

  • Leggono i blog
  • Installano gli strumenti
  • Loro leggono il codice sorgente
  • Eseguono il debug dei programmi open source
  • Presentano le patch
  • Partecipano ai siti di programmazione StackExchange

Ma a volte si ispirano a scrivere un programma per soddisfare i propri bisogni specifici; il piacere colpevole di un programmatore perché ha esattamente le caratteristiche che desidera. E poi si stancano e lo buttano via. Questo è il lusso di un hobby!

    
risposta data 10.08.2011 - 08:18
fonte
26

IMHO non è necessariamente un progetto per hobby di per sé che ti rende migliore (anche se di certo non fa male), ma resta aperto e passa il tempo a imparare cose nuove in generale. Come notato da @Rick, può assumere molte forme diverse oltre alla codifica. Puoi ad es. leggi i libri - ma se hai un laptop, anche il codice - mentre ti rechi al / dal lavoro.

Nota anche che si ha assolutamente bisogno di mantenere un equilibrio .

  • Se non passi alcun tempo libero (del tuo tempo libero), ristagni, e ad un certo punto potresti annoiarti completamente con la tua professione e incapace di affrontare nuove sfide.
  • Se spendi troppo del tuo tempo libero imparando, non avrai tempo per quella cosa curiosa ma importante chiamata Vita, quindi a lungo termine potresti bruciarti e / o avere problemi di salute.

Un'altra cosa: è facile (suggerire) di lavorare su progetti di hobby mentre si è giovani e single. Nelle fasi successive, potresti avere una famiglia, e questo eliminerà la maggior parte del tuo tempo libero per molti anni (almeno se vuoi farlo bene - e qual è il punto in contrario?). Quindi sarai costretto a gestire il tuo tempo in modo più efficiente, al fine di risparmiare un po 'di tempo prezioso per l'apprendimento.

    
risposta data 10.08.2011 - 11:30
fonte
10

Fai progetti collaterali! Non pensare che porti qualcosa di nuovo sul Web, pensaci come se esercitassi le tue abilità, sandbox per apprendere / padroneggiare tecnologie e approcci.

Come datore di lavoro ho sempre chiesto ai miei potenziali collaboratori se stanno facendo progetti interessanti. E anche nel caso in cui quelle non fossero idee spettacolari, ma i loro autori hanno mostrato eccitazione a riguardo - è stato sempre un grande professionista.

    
risposta data 10.08.2011 - 11:24
fonte
7

I programmatori che incontro che hanno difficoltà a tenersi aggiornati con le nuove tecnologie sono i ragazzi che lo trattano come un lavoro. Le loro controparti - quelle che fanno tengono il passo con le novità sono quelle che fanno le cose a casa.

    
risposta data 10.08.2011 - 17:33
fonte
6

Dici che tutto ciò che puoi pensare è già stato fatto, ma ogni strumento che usi funziona nel modo in cui lo desideri? Trovo spesso che gli strumenti fanno quasi, ma non proprio, tutto ciò che voglio e i miei progetti per hobby escono cercando di colmare il vuoto. Non sempre ci riesco, ma mi piace provare, e come utente finale non ho problemi con la motivazione o le specifiche

    
risposta data 10.08.2011 - 10:57
fonte
4

Se hai davvero l'interesse e l'energia per questi progetti, fallo con tutti i mezzi. Ma non mi spingerei a dire che è un must per ogni programmatore serio. Se lavori a tempo pieno con la programmazione, farlo nel tuo tempo libero non aumenterà necessariamente il tuo interesse in esso, ma potrebbe anche avere l'effetto opposto. Personalmente ero solito fare progetti per hobby, ma mi sono fermato. Stavo già programmando 5 giorni a settimana e per me sembrava più sano fare qualcosa di completamente diverso nel mio tempo libero.

Inoltre, se il tuo datore di lavoro non ti dà spazio per testare nuove cose sul lavoro, studiare e migliorare continuamente, allora probabilmente dovresti cercare un nuovo lavoro piuttosto che fare quelle cose nel tuo tempo libero. Un buon datore di lavoro si renderà conto che è nel loro stesso interesse mantenere aggiornate, migliorate e ampliate le proprie competenze.

Dal punto di vista del datore di lavoro (io sono uno di quelli), i progetti di hobbistica saranno un merito se non hai esperienza di lavoro reale. Tutti i progetti hobbistici e scolastici saranno quindi molto importanti da portare come riferimento durante l'intervista.

Ma se hai esperienza, sono meno rilevanti: mentre potrebbero indicare una passione per il tuo commercio, potrebbero allo stesso tempo indicare che sei un po 'secchione. Dalla mia esperienza personale non riesco a trovare alcuna connessione tra progetti di hobby e candidati buoni / cattivi, non penso che siano particolarmente rilevanti a meno che tu non sia appena uscito dalla scuola per il tuo primo impiego.

    
risposta data 12.08.2011 - 15:31
fonte
3

Sono più coinvolto nei quiz e in piccoli pezzi di codice simili rispetto ai progetti a fondo scala (anche se provo a lavorare su alcuni progetti OSS se ottengo il tempo necessario). Quindi per me non c'è molta scusa per dire che non ho una grande idea per un progetto. Basta scrivere un risolutore di Sudoku e provare a implementare qualcosa come Dancing Links per renderlo più veloce.

Quanto sono importanti per te diventare uno sviluppatore migliore può dipendere dal tuo lavoro. Se questo è già molto impegnativo, puoi ottenere tutto l'allenamento di cui hai bisogno. Altrimenti, scegliere il giusto progetto (o quiz da risolvere) ti insegnerà qualsiasi quantità di cose nuove e ti manterrà in contatto con una vasta area di competenza che molti lavori non offrono, dal momento che spesso sei limitato a utilizzare una piccola serie di strumenti per un dominio chiaramente definito.

E sì, alcune aziende sono seriamente interessate ai tuoi progetti. Se non altro, ti danno molte opportunità di parlare di qualcosa che conosci molto bene durante un'intervista.

    
risposta data 10.08.2011 - 08:02
fonte
3

I progetti di hobbistica non saranno importanti nella maggior parte delle interviste. Ci sono alcune persone là fuori che si prendono cura di te che fanno la programmazione come hobby, ma la maggior parte no. TUTTAVIA, le abilità che acquisite dalla programmazione per hobby possono essere importanti in un'intervista!

La programmazione aggiuntiva sul lato sarà sicuramente vantaggiosa per la programmazione, fino al punto che si esaurisce ... Tuttavia, anche al di là del problema del burnout, è anche necessario considerare che i datori di lavoro sono spesso alla ricerca di altre competenze oltre alla programmazione . Se stai programmando 24 ore su 24, non stai sviluppando quelle ALTRE abilità! Saldo ...: -)

    
risposta data 10.08.2011 - 16:08
fonte
3

Per prima cosa penso che i progetti hobbistici siano importanti, perché altrimenti ristagni e perdi il divertimento.

Il mio suggerimento per trovare un nuovo progetto di hobby:

Impara un nuovo linguaggio di programmazione per realizzare il tuo progetto di hobby. Per esempio. un buon obiettivo è cercare di imparare una nuova lingua all'anno (diventa molto più facile quanto più sai)

Il migliore sarebbe uno che sembra totalmente sconosciuto a te. Perché più ti sembra alieno più espanderai il tuo orizzonte.

Inoltre conoscere molte lingue con sintassi differente ti mette al centro dell'attenzione su sintassi come importante nella programmazione. È solo una rappresentazione sequenziale di alberi di sintassi e non molto importante. Ciò migliora l'attenzione sulla semantica che è molto più utile nella pratica.

Hai provato un linguaggio di programmazione funzionale? Hai provato linguaggi di programmazione distribuiti? Lingue di corrispondenza del modello?

Per la ricerca di piccoli progetti su Project Euler è molto raccomandabile.

    
risposta data 10.08.2011 - 23:33
fonte
2

Sono uno sviluppatore web dilettante senza istruzione universitaria (ancora) che lavora al mio progetto personale. Sono stato invitato alla mia prima intervista per un lavoro di programmazione un paio di settimane fa perché stavo lavorando al mio progetto personale.

Considerando queste prove aneddotiche, lavorare sul mio personale progetto "hobby" è stata la cosa migliore che ho fatto per far progredire la mia carriera nello sviluppo ... dopo essermi iscritto al college.

Quindi, sì, gli intervistatori tengono sicuramente conto dei tuoi progetti personali, altrimenti non si sarebbero nemmeno presi la briga di parlarmi.

    
risposta data 11.08.2011 - 19:14
fonte
2

Gli altri hanno coperto molto, ma voglio concentrarmi su questa parte:

I feel guilty for not having a hobby project, but everything I can think of doing has already been done. So I am kind of in two minds about this, start something that has already been done or leave it until I come up with something original?

Mi sembra che manchi il punto di un "progetto di hobby". È certamente vero che molti progetti di hobby sono creati per gli altri, o almeno con il consumo pubblico in mente - questi progetti richiedono una certa quantità di lavoro costante nel tempo e possono essere scoraggianti per questo motivo. Dopo tutto, chi vuole fare ancora un altro sotto-supportato, qualcosa di bassa qualità o qualcosa che alla fine viene abbandonato dopo un paio di mesi?

Ma , non c'è motivo per cui il tuo progetto per hobby debba fare qualcosa di utile per chiunque. Ad esempio, di recente ho iniziato a imparare Haskell , solo perché è così drasticamente diverso dalle lingue imperative a cui sono abituato, ed è davvero facile da ottenere impostare. Ho anche appena iniziato a imparare il Redcode linguaggio assembly-ish, usato nel gioco di programmazione Core War , ancora una volta per curiosità.

Questo, a sua volta, mi ha portato a esaminare creando un plugin Notepad ++ fornire migliori funzionalità di evidenziazione della sintassi per Redcode, che mi ha portato a considerare imparare un po 'di C ++ . Attingendo alla mia familiarità comparata con .NET, ora sto riflettendo sul fatto di impostare me stesso con Visual C ++ .

E il fatto è che niente di tutto ciò "conta", almeno non come un progetto. Diavolo, non sono sicuro che potresti anche chiamarlo un progetto per sé , così tanto come un mucchio di cose con cui mi diverto, perché ha attirato la mia attenzione. Voglio dire, avrai bisogno di un po 'di tempo e di organizzazione per assicurarti di ottenere qualcosa da fuori, ma a nessuno importa se smetterò di avere tempo per Haskell una volta iniziata la scuola.

E a nessuno importa se lo sviluppo di plugin per Notepad ++ è più difficile di quanto mi aspettassi, e mi arrendo - anzi, ho guardato in Perl prima di immergermi in Redcode, e l'ho abbandonato abbastanza velocemente perché avevo difficoltà a impostare correttamente l'ambiente. Questo mostra una mancanza di persistenza? Si. Ma a nessuno importa, perché è il mio hobby , e questo significa che posso giocare con qualsiasi cosa voglia.

Quindi non sentirti in dovere di scegliere un progetto di hobby che ti insegnerà Abilità Marketable - che trasforma il tuo tempo libero in un tempo di lavoro più non pagato. Le abilità vengono come un risultato di ciò che fai, ma non sono il motivo . Capisco meglio la programmazione dichiarativa ora e come funzionano i linguaggi di assemblaggio e come i programmi utilizzano le DLL. E ho imparato un sacco di cose sul prompt dei comandi di Windows, e altre cose che non avresti mai pensato erano collegate a tutto ciò che ho menzionato finora.

Il punto è trovare qualcosa di completamente nuovo e vedere se è interessante come sembra. Se lo è, ottimo, e se non lo è, vai avanti. Hai mai avuto la minima curiosità per i compilatori o gli interpreti? Dai un'occhiata a LOLCODE . Se ti rende felice come mi fa, allora è il momento di iniziare conoscere i compilatori . E hey, forse dovresti tornare indietro e pensare di nuovo all'evidenziazione della sintassi. In effetti, questo sarà probabilmente il prossimo progetto che comincio.

Se quello non è il tuo genere, prova qualcosa di più basso di quanto sei abituato. O livello superiore. Non importa. L'unica cosa che importa è che quando tu la guardi, pensi "Divertente!"

    
risposta data 23.05.2017 - 14:40
fonte
0

Questi progetti sono indispensabili per un programmatore serio, specialmente se lavori come libero professionista.

Invece di lavorare 6 giorni a settimana, 1 giorno di riposo, puoi lavorare 5 giorni a settimana, 1 giorno per testare nuove teorie e funzioni e 1 giorno di riposo.

Può sembrare che la giornata di test sia una perdita di tempo, ma riconoscerai i suoi benefici quando ti verrà dato di implementare una nuova funzione nel tuo linguaggio di programmazione che avevi già testato durante uno di quei giorni.

    
risposta data 10.08.2011 - 12:19
fonte
0

Sto coinvolgendo interviste e assunzioni nel mio negozio. Un 'hobby project' è sempre un vantaggio per noi.

Avere un progetto personale più o meno finito mostra che ti piace molto creare software e mostrare che sei motivato a imparare cose nuove e migliorare le tue abilità.

Se vuoi dare un'impressione davvero positiva in un'intervista, porta un laptop con il tuo progetto personale. Mostralo all'intervistatore, raccontagli le sfide che hai incontrato durante la costruzione, fai vedere loro il tuo codice. Ditegli in anticipo dove sono i bordi grezzi e quali potrebbero essere i vostri piani futuri per il progetto.

Sarai ricordato, in un buon modo.

    
risposta data 11.08.2011 - 00:13
fonte
0

Trovo che la programmazione nel mio tempo libero abbia due scopi:

1) Mi consente di realizzare qualcosa di personalmente gratificante, senza le restrizioni dei progetti di lavoro. Questo è particolarmente importante quando ho avuto a che fare con problemi difficili e frustranti con i miei progetti di lavoro.

2) Mi dà l'opportunità di ampliare e affinare le mie capacità di programmazione, poiché sono libero di creare qualsiasi cosa desideri.

Comunque, penso che sia anche importante bilanciare questo con alcuni hobby non informatici. Per me, sta mantenendo il torrente e le tracce dietro casa mia.

    
risposta data 11.08.2011 - 19:50
fonte
0

Avere un'applicazione per animali domestici è un ottimo modo per costringerti ad apprendere parti della tua attuale piattaforma a cui potresti non aver pensato. Ad esempio, potresti essere un grande sviluppatore C # che lavora su un'applicazione ASP.Net al lavoro. Ma se hai un ragazzo del tuo team dedicato ai CSS, potresti non impararlo mai correttamente. Tuttavia, se hai un progetto web per animali domestici, dovrai imparare come fare CSS. Questo è vero per tutta una serie di tecnologie in cui ti imbatterai se hai un tuo progetto in cui sei l'unico sviluppatore.

Per un ottimo resoconto su tutti i vantaggi delle applicazioni per animali domestici, consulta questo post .

    
risposta data 11.08.2011 - 22:39
fonte

Leggi altre domande sui tag