On 10/02/2011 02:32 PM, dezperado wrote:
> rispetto all'imparare nel tempo libero cose pratiche dell'information
> technology (es.: l'API di una libreria che usero' di rado ma che mi
> interessa, o un'utility particolare da command line, o un linguaggio
> di programmazione che usero' di rado), anche se non sono proprio cose
> teoriche ne' "avanzate" faccio cosi':
>
>   - cerco esempi funzionanti (da documentazione online, codice sorgente
>     di programmi esistenti di qualita')
>   - da li, isolo le parti che mi interessano
>   - faccio programmini piccoli (nel caso di API o linguaggi vari)
>     pieni di commenti miei e riferimenti a documentazione esistente
>   - raffino i programmini per assicurarmi che funzionino anche a distanza
>     di tempo (cioe' scrivo codice di test per sgamare errori nel caso di
>     API; cancello/creo file temporanei nel caso di script 'attorno' a
>     utility che vorre imparare)
>   - predispongo uno script/Makefile che configura/compila/lancia
>     il programma/script in esame
Grazie della risposta interessante e utile!
Quindi, riassumendo:  l'idea è di trovare sempre qualcosa di concreto da 
fare per ogni cosa che si vuole imparare? Quello si, aiuta. Per quanto 
ho scoperto che vale anche l'opposto, cioè che sia utile sia 
concretizzare la teoria, sia alle volte trovare i lati teorici nei 
problemi concreti che si ripetono spesso, cioè scoprire i problemi più 
generici che ci stanno sotto a diverse cose che facciamo, e capirli a 
un'altro livello. Ma sempre cercando di mischiare teoria e pratica. Una 
arricchisce l'altra. Io mischio scrittura di codice con lezioni video, 
libri ecc. Non è facile organizzare tutto, e non perdersi, senza 
università e i prof e i programmi ecc.
Però non lascio perdere. Mi innervosisce pensare che il mondo deve per 
forza dividersi in quelli che fanno e quelli che studiano/fanno ricerca. 
Ok, non farò mai magari ricerca pura per lavoro, ma vedo di riuscire un 
po' a trovare modo per studiare qualcosa lo stesso ogni tanto.
Sono utili qualche volta, btw, anche i video delle conferenze. Tipo sul 
sito di PyCon e EuroPython (quest'anno a Firenze nella stessa settimana 
di Hackmeeting) si trovano molte cose interessanti (andando sui 
programmi e clickando o titolo del talk o persona, per esempio Hettinger 
o Martelli).
Tipo Easy AI with Python di Raymond Hettinger
http://www.pycon.it/conference/talks/easy-ai-python
Good API design di Martelli 
http://ep2011.europython.eu/conference/talks/good-api-design
http://ep2011.europython.eu/conference/speakers/alex-martelli
The Art of Subclassing di Hettinger 
http://ep2011.europython.eu/conference/talks/art-subclassing
http://ep2011.europython.eu/conference/speakers/raymond-hettinger
Solo che di solito i video delle conferenze si vedono/sentono peggio di 
quelli dei corsi online, quindi non lamentatevi con me, non è colpa mia.
http://ep2011.europython.eu/p3/schedule/ep2011/
Poi ci sono altre conferenze, Google Tech Talks e quant'altro.
Vedo che cerchi anche di non sprecare tempo e di automatizzare 
l'automatizzabile. Fico. Trovi anche rilevante condividere quello che 
fai su un sito, blog, repository, ecc. o ti basta farlo e tenertelo per 
te e qualche amico?
Ho letto in giro questa frase: noi sopravalutiamo quello che si riesce a 
fare in un giorno e sottovalutiamo quello che si riesce a fare in un 
anno. Per me è sempre di più importante organizzare bene l'anno, ogni 
settimana e ogni giorno e ogni ora alla volta, quindi sapere in anticipo 
cosa farò in ogni momento della giornata. Almeno in questa fase. Se no 
spreco tempo a decidere, riflettere, cambiare idea, ... In più tengo 
traccia di quello che ho fatto davvero, per sapere quanto somiglia a 
quello che penso di stare facendo.
BTW si, sanity test salvano la salute del programmatore quanto la salute 
del codice. Cioè il fatto di scrivere unit test, magari prima il test 
per la funzione e poi la funzione, per poi automaticamente far girare i 
test e vedere se le modifiche hanno rotto qualcosa che prima 
funzionava... è bello...
> thread interessante!
>> di Intelligenza Artificiale, Machine Learning e Introduzione alle
> auguri!
Grazie. Grazie. Auguri e buona sperimentazione anche a te.