PDA

View Full Version : la programmazione non si studia?


bravoragazzo
01-05-2006, 22:38
mi sono imbattuto in un professore di informatica che sostiene che l'informatica non si studia.. è vero?

Inoltre, a vostro parere per programmare in java bisogna esserci portati oppure ''studiando'' possono farcela tutti, anche a livello ''commerciale''? Me lo chiedo perché avendo una memoria scarsa e una capacità di problem solving tendente allo zero, alla fine credo che saprei programmare solo cose già viste... mentre mi bloccherei facilmente su problemi nuovi...secondo voi uno che sta nella mie condizioni può diventare programmatore o ci vuole + fantasia? O sono pessimista?

ps:scusate il leggero OT.

franksisca
01-05-2006, 23:26
allora, considerato che cose completamente nuove non c'è ne sono più, o almeno sono poche, qualsiasi cosa tu voglia fare c'è già la soluzione, o al massimo chiedi in giro.
Comunque studiando puoi imparare a programmazione, naturalmente se vuoi creare qualcosa di ciompletamente nuova, a fantasia serve, ma puoi diventare tranquillamente un programmatore, almeno questo è il jmio pensiero.



A proposito, ti sconsiglio di evitare di imparare le cose a memoria, cerca di "capire" come funzionano;)

mynos79
02-05-2006, 09:06
Per esperienza ... programmare nel senso di imparare la sintassi e le regole di un linguaggio può farlo chiunque ... in quanto è come scrivere a macchina ... il vero problema della programmazione è invece il saper inventare una soluzione ad un determinato problema, sapendo e gestendo tutte le problematiche ambientali derivanti dal problema o soluzione stessi ... ed inoltre una grande cultura verso l' ambito in cui si affronta il problema ... non si può inventare un motore fisico per la grafica di un gioco senza conoscere a fondo la fisica, oppure inventare un gestionale un po più complesso del semplice database senza sapere come funziona l' ambito commerciale ...
Infine programmare è un' arte, come la musica, la pittura e tutte le arti in generale ... frutto dell' intelletto delle persone ... infatti la collana di libri più importanti di tutta la letteratura informatica è appunto "The Art Of Language Programming" di Donald Knuth ... 3 volumi immensi sui vari aspetti della programmazione e sugli algoritmi per la soluzione dei problemi ... libri scritti tantissimi anni fa, dal '60 in poi ma sempre attualissimi.

State attenti quando parlate di programmazione ... non si intende scrivere e basta sapendo un po la sintassi di un linguaggio (scrivere e basta è una cosa sanno fare tutti), programmare significa saper risolvere adeguatamente un problema, poi tradurre la soluzione in sintassi C o Java è il meno ...

franksisca
02-05-2006, 09:13
Per esperienza ... programmare nel senso di imparare la sintassi e le regole di un linguaggio può farlo chiunque ... in quanto è come scrivere a macchina ... il vero problema della programmazione è invece il saper inventare una soluzione ad un determinato problema, sapendo e gestendo tutte le problematiche ambientali derivanti dal problema o soluzione stessi ... ed inoltre una grande cultura verso l' ambito in cui si affronta il problema ... non si può inventare un motore fisico per la grafica di un gioco senza conoscere a fondo la fisica, oppure inventare un gestionale un po più complesso del semplice database senza sapere come funziona l' ambito commerciale ...
Infine programmare è un' arte, come la musica, la pittura e tutte le arti in generale ... frutto dell' intelletto delle persone ... infatti la collana di libri più importanti di tutta la letteratura informatica è appunto "The Art Of Language Programming" di Donald Knuth ... 3 volumi immensi sui vari aspetti della programmazione e sugli algoritmi per la soluzione dei problemi ... libri scritti tantissimi anni fa, dal '60 in poi ma sempre attualissimi.

State attenti quando parlate di programmazione ... non si intende scrivere e basta sapendo un po la sintassi di un linguaggio (scrivere e basta è una cosa sanno fare tutti), programmare significa saper risolvere adeguatamente un problema, poi tradurre la soluzione in sintassi C o Java è il meno ...
infatti io ho detto che di moltissime cose già ci sono le soluzioni, se voglio un motore graico con una buona isica c'è, se voglio un buon gestionale c'è, quindi la parte "pensata" del programma si riduce ad aggiungere qualcosa di proprio a ogni programma. detto ciò, io in prima persona mi sono reso conto che un problema si può risolvere in milioni di modi, e solo le menti più "pippate" riesco a trovare soluzioni ottime e intriganti. Comunque considera che all'univ farai sicuramente un corso di ingegneria del software, e lì capirai molte cose.

luxorl
02-05-2006, 09:41
allora, considerato che cose completamente nuove non c'è ne sono più, o almeno sono poche, qualsiasi cosa tu voglia fare c'è già la soluzione, o al massimo chiedi in giro.
Comunque studiando puoi imparare a programmazione, naturalmente se vuoi creare qualcosa di ciompletamente nuova, a fantasia serve, ma puoi diventare tranquillamente un programmatore, almeno questo è il jmio pensiero.




Non sono per niente d'accordo.
Un programmatore è colui che risolve problemi nuovi.
E credimi, si può studiare anche 22 ore al giorno.. ma se non si hanno quelle "intuizioni" nei confronti del problema da risolvere non si è mai un vero programmatore..
A mio parere alla base ci deve per forza essere una logica forte, intelligente, sveglia e veloce. E questa è difficile costruirsela dai libri o dalla teoria.

mynos79
02-05-2006, 09:55
Concordo anche con luxorl ...

Il programmatore non è un operaio che scrive, scrive e scrive ... perchè chiunque sa scrivere, basta conoscere la sintassi ed il funzionamento di un linguaggio ....
Il programmatore, prima di scrivere, deve inventare, analizzare, risolvere ... ci vogliono conoscenze approfondite sull' ambito in cui si sta lavorando, serve una buona dose di esperienza ed intelletto per risolvere adeguatamente un problema (adeguatamente significa guardando tutti i possibili aspetti, errori e allarmi che potrebbero capitare ... altrimenti risulta un software bacato già in progetto).
E comunque se tutto fosse già stato inventanto ... saremmo ancora al Word 1, al Corel 1, al TeamSystem 1 etc etc ....

PS. ho già fatto ingegneria del software ... anche per questo confermo quanto detto ... non basta impararsi un manuale di C per programmare in C ... un programmatore può benissimo non essere in grado di usare nessun linguaggio se però sa risolvere i problemi e progettare un' applicazione anche solo a livello di algoritmi ... come per cucinare, tutti sanno cucinare seguendo la ricetta, è inventare per bene la ricetta che invece non è facile ...

fek
02-05-2006, 10:08
mi sono imbattuto in un professore di informatica che sostiene che l'informatica non si studia.. è vero?

Digli di studiare di piu' ;)


Inoltre, a vostro parere per programmare in java bisogna esserci portati oppure ''studiando'' possono farcela tutti, anche a livello ''commerciale''? Me lo chiedo perché avendo una memoria scarsa e una capacità di problem solving tendente allo zero, alla fine credo che saprei programmare solo cose già viste... mentre mi bloccherei facilmente su problemi nuovi...secondo voi uno che sta nella mie condizioni può diventare programmatore o ci vuole + fantasia? O sono pessimista?

ps:scusate il leggero OT.

Come in tutte le attivita' umane, anche la programmazione e' un'attivita' creativa, ma per essere buoni programmatori la creativita' va inquadrata in un framework di buone pratiche e regole e condita con molta molta esperienza. In pratica bisogna studiare, e tanto. Un programmatore che non studia e non si aggiorna non e' un buon programmatore. E di solito finisce a insegnare ;)

Per rispondere alla tua domanda, quindi, si', puoi diventare un buon programmatore studiando e facendo molta pratica; magari se non sei particolarmente portato o non ti piace, non diventerai il nuovo Fowler, ma puoi ottenere comunque ottimi risultati.

84seawolf
02-05-2006, 10:24
purtroppo a differenza di quello che ti ha detto il tuo prof. la programmazione si studia e come...
Per studiare programmazione non intendo la sintassi (per quella basta un buon manuale), bensì studiare come sono stati risolti i problemi + tipici nel campo dell'informatica, per poi risolverne di nuovi. Attenzione!! non ho detto imparare a memoria! ho detto: STUDIARE e cioè analizzare, capire e provare dal vivo le soluzioni adottate da altri. Questo implica che quando si studia, (non solo la programmazione) non bisogna essere "passivi", bensì bisogna essere critici in quello che si sta apprendendo.
Solo in questo modo impari a trovare soluzioni e risolvere nuovi problemi.

dnarod
02-05-2006, 10:31
la cultura si erge verso la creativita: in parole povere piu studi piu la tua capacita di problem solving aumenta; chiaramente c e chi ha doti innate (anche se su qesto punto avrei molto da ridire, insomma ridimensionerei di molto il fattore dote innata), ma vuol dire poco...uno puo anche essere mandrake jr, ma senza la giusta base di concetti non potra arrivare molto lontano....quindi se pensi di non avere una dote innata (come fai a dirlo se sei un novizio?) perche non puntare sul costruirsi un ottimo "parco nozioni"? il resto verra da solo :)

fek
02-05-2006, 10:54
Un programmatore è colui che risolve problemi nuovi.

No, un programmatore e' colui che risolve problemi. Che siano nuovi o vecchi non importa. E per risolvere problemi, la skill piu' importante e' l'esperienza. L'esperienza o la accumuli o studi per imparare quella accumulata dagl'altri. O fai entrambe le cose, che e' molto meglio.

Ho visto molti programmatori bravissimi a trovare soluzioni a problemi nuovi, ma non in grado di mettere le soluzioni in pratica in maniera produttiva per loro e per il team. Infatti non erano buoni programmatori.

andbin
02-05-2006, 10:57
mi sono imbattuto in un professore di informatica che sostiene che l'informatica non si studia.. è vero?Assolutamente non vero!!!

L'informatica è una materia come lo è Italiano, Geografia, Matematica, ecc... Quindi da studiare. Ci sono concetti di base che vanno imparati, ad esempio cosa è una variabile, una funzione, cosa è lo stack, l'heap, ecc...
Se uno non ha le basi, non credo che possa programmare bene in un qualunque linguaggio.

perché avendo una memoria scarsaGuarda ... anche io per la memoria non è che sono messo bene. :(
Ho sempre fatto e tuttora faccio molta fatica a tenere a memoria molte cose.
Attualmente sto studiando per ottenere la certificazione SCJP. Il libro, in inglese, relativo alla certificazione (c.a 800 pagine) l'ho già letto tutto ed ho capito tutti i vari concetti presentati nel libro.
Se leggo una cosa e questa cosa è spiegata bene, non ho problemi a capirla.
Il problema è tenere a mente tutto. Adesso dovrei tenere a mente, ad esempio, tutte le caratteristiche delle varie classi ed interfacce relative alle "collection" di Java e questo è già un problema per me.

Le cose le si impara a memoria facendo molta pratica. A forza di fare/usare una certa cosa, la impari anche a memoria. Ma devi continuare ad usarla.

[OT]
Ti racconto un piccolo aneddoto legati ai miei studi. Quando facevo le medie, il professore di italiano ci aveva fatto imparare tutta a memoria la poesia "Cinque Maggio" di Manzoni.
Io l'avevo imparata a memoria molto bene ed avevo fatto un gran bel figurone in classe ed avevo preso, di conseguenza, anche un ottimo voto. Adesso l'unica cosa che mi ricordo (e mi ricorderò per sempre) della poesia è il titolo (perché mio nonno è mancato proprio il 5 Maggio) e poi l'inizio: "Ei fu siccome immobile ..." e basta.
E allora a cosa cavolo mi è servito impararla a memoria????? :D

71104
02-05-2006, 12:01
mi sono imbattuto in un professore di informatica che sostiene che l'informatica non si studia.. è vero? si perché lui ce l'aveva già infusa, vero? tutti uguali sti professori di informatica, pure da me: non sanno un c***o e si inventano chissaccosa per giustificare la loro ignoranza (lo fanno anche da me, eh!).

quello che mi rode è che alla fine i niubbi credono che loro sappiano, "altrimenti non sarebbero arrivati dove sono"... eh, se solo tutti sti niubbi avessero la minima idea di come ci sono arrivati...

Aines
02-05-2006, 12:02
mi sono imbattuto in un professore di informatica che sostiene che l'informatica non si studia.. è vero?

Inoltre, a vostro parere per programmare in java bisogna esserci portati oppure ''studiando'' possono farcela tutti, anche a livello ''commerciale''? Me lo chiedo perché avendo una memoria scarsa e una capacità di problem solving tendente allo zero, alla fine credo che saprei programmare solo cose già viste... mentre mi bloccherei facilmente su problemi nuovi...secondo voi uno che sta nella mie condizioni può diventare programmatore o ci vuole + fantasia? O sono pessimista?

ps:scusate il leggero OT.

Non credo che il tuo professore abbia davvero detto che l'informatica non si studia, se l'ha detto allora è una bella chiavica di professore il tuo.

Programmare si può fare senza toccare mai un libro di testo (in tanti il primo 'giochino' lo han fatto a 14 anni) perchè, come hanno detto in tanti, è una questione intuitiva, ma la programmazione è solo uno strumento dell'informatica.

71104
02-05-2006, 12:03
Non credo che il tuo professore abbia davvero detto che l'informatica non si studia, se l'ha detto allora è una bella chiavica di professore il tuo. che novità :D

candela
02-05-2006, 12:07
quanti anni hai? ed a che livello di studi sei?

premesso che:l'informatica non si studia.. è vero? è, ovviamente una stronxata colossale... mi trovo d'accordo con parecchie delle cose dette...
se hai 10 anni, è un po' prematuro trarre delle conclusioni, devi ancora "scoprire" se capisci e ti piace la logica della programmazione.
se stai all'università, mi viene da farti la domanda:
fai una facoltà in cui si programma, e non hai mai programmato, neanche per gioco, nei tuoi primi 20 anni.... come l'hai scelta?
purtoppo il boom della new tecnlogy ha spinto verso queste materie, anche gente che magari ha odiato per 20 anni materie come la matematica!

imparare a programmare lo potrai sempre fare, ma se nei tuoi studi non ti sei mai appasionato nel risolvere problemi matematici, algoritmi, o anche problemi logici/geometrici, sei sicuro che sia il percorso di studi che fa per te?

bravoragazzo
02-05-2006, 14:45
si perché lui ce l'aveva già infusa, vero? tutti uguali sti professori di informatica, pure da me: non sanno un c***o e si inventano chissaccosa per giustificare la loro ignoranza (lo fanno anche da me, eh!).

quello che mi rode è che alla fine i niubbi credono che loro sappiano, "altrimenti non sarebbero arrivati dove sono"... eh, se solo tutti sti niubbi avessero la minima idea di come ci sono arrivati...



esatto amico, hai centrato in pieno il succo del discorso :mano:

bravoragazzo
02-05-2006, 14:50
Lui diceva che in sostanza la programmazione non si studia... nel senso che... non devi imparare a memoria... ma devi avere freschezza mentale ecc ecc doti che secondo me hanno POCHISSIME persone... il resto DEVE studiare, A MIO AVVISO.

Poiché io senza studiarla non riuscirei a programmare, e poichè la programmazione non si studia, è meglio che io mi fermi a priori da questo campo? Premetto che i prof di cui parlo sono scarsi, è gente che ha studiato pure parecchio e ora pretende a lezione dei piccoli geni che sanno senza studiare, con una logica ed intuizione sopraffine. Qualcuno così c'è, ma siamo all'ordine di 1 ragazzo su 100.... quindi il discorso lo vogliamo fare a pro del ragazzo bravo che madre natura ha ben fornito o a pro del resto?

bravoragazzo
02-05-2006, 14:54
quanti anni hai? ed a che livello di studi sei?

premesso che: è, ovviamente una stronxata colossale... mi trovo d'accordo con parecchie delle cose dette...
se hai 10 anni, è un po' prematuro trarre delle conclusioni, devi ancora "scoprire" se capisci e ti piace la logica della programmazione.
se stai all'università, mi viene da farti la domanda:
fai una facoltà in cui si programma, e non hai mai programmato, neanche per gioco, nei tuoi primi 20 anni.... come l'hai scelta?
purtoppo il boom della new tecnlogy ha spinto verso queste materie, anche gente che magari ha odiato per 20 anni materie come la matematica!

imparare a programmare lo potrai sempre fare, ma se nei tuoi studi non ti sei mai appasionato nel risolvere problemi matematici, algoritmi, o anche problemi logici/geometrici, sei sicuro che sia il percorso di studi che fa per te?



sto all'università. si, le basi le sapevo.
Ho sempre studiato, non sono mai stato una cima, ma neanche un caso limite, insomma sono nella fascia della gente che deve studiarsela per tirare avanti. Non mi capitano intuizioni nè ho velocità nello scrivere il codice.
Forse faccio piangere, perciò mi chiedevo, in condizioni simili è possibile imparare il java a livello commerciale o è meglio andare a lavare i piatti? (è una metafora,per intenderci)
I programmatori sono tutti bravi o in loro c'è anche gente che ha studiato piu' o meno meccanicamente le tecniche e ha anni di esperienza alle spalle?

fabianoda
02-05-2006, 14:56
Lui diceva che in sostanza la programmazione non si studia... nel senso che... non devi imparare a memoria... ma devi avere freschezza mentale ecc ecc doti che secondo me hanno POCHISSIME persone... il resto DEVE studiare, A MIO AVVISO.

Poiché io senza studiarla non riuscirei a programmare, e poichè la programmazione non si studia, è meglio che io mi fermi a priori da questo campo? Premetto che i prof di cui parlo sono scarsi, è gente che ha studiato pure parecchio e ora pretende a lezione dei piccoli geni che sanno senza studiare, con una logica ed intuizione sopraffine. Qualcuno così c'è, ma siamo all'ordine di 1 ragazzo su 100.... quindi il discorso lo vogliamo fare a pro del ragazzo bravo che madre natura ha ben fornito o a pro del resto?


A mio parere avete inteso male ciò che intendeva questo prof.. dubito che volesse dire "non dovete studiare", perché se uno non conosce gli algoritmi ogni volta deve inventarseli, e saranno peggio di quelli già esistenti.

Penso si riferisse al fatto che un programmatore deve avere una forte attitudine al problem solving, ovvero che non basta studiare per risolvere i problemi, bisogna riuscire ad adattare le nozioni teoriche al problema specifico.

Questa è la mia opinione, senza sapere esattamente cosa abbia detto e chi sia questo prof...

franksisca
02-05-2006, 15:04
Fek, sei un mito, hai riassunto il mio pensiero, che condivido ijh pieno, e concordo con chi intende studiare!=imparare a memoria..

bravoragazzo
02-05-2006, 15:06
A mio parere avete inteso male ciò che intendeva questo prof.. dubito che volesse dire "non dovete studiare", perché se uno non conosce gli algoritmi ogni volta deve inventarseli, e saranno peggio di quelli già esistenti.

Penso si riferisse al fatto che un programmatore deve avere una forte attitudine al problem solving, ovvero che non basta studiare per risolvere i problemi, bisogna riuscire ad adattare le nozioni teoriche al problema specifico.

Questa è la mia opinione, senza sapere esattamente cosa abbia detto e chi sia questo prof...


piu' o meno e' così... ma a volte piu' che problem solving con un pò di ''sana'' esperienza... certo non si deve essere delle teste di legno... si acquisisce. Io vedo anche molti professori che non sono per niente portatissimi... eppure insegnano programmazione. Evidentemente c'è differenza tra l'insegnare e il fare.

In secondo luogo volevo chiedervi: è vero che il progetto di un programma abbastanza grosso va fatto prima su carta e poi implementato? Da me programmiamo ''da asini'' scrivendo direttamente il codice...

fabianoda
02-05-2006, 15:25
Sicuramente i programmi grossi vanno progettati, non per nulla esiste l'ingegneria del software, come ricordava qualcuno prima.

Per quanto riguarda la programmazione, più uno conosce la teoria degli algoritmi, più semplice sarà trovare la soluzione. Di certo molte cose si acquisiscono sul campo, però una solida base teorica è necessaria.


Non basta l'intuizione...

PGI-Bis
02-05-2006, 15:37
Tutti a dar addosso a 'sto povero professore. E potrebbe essere una mente geniale.

Anche Popper (filosofo del '900, fondatore della teoria scientifica) diceva che la filosofia "non si studia": dare ad uno studente un volume su Platone e dirgli "ecco, studia questo e saprai la filosofia" non avrebbe fatto imparare nulla sulla filosofia. Sarebbe stato invece più proficuo "filosofare": trovare un problema filosofico e tentarne la soluzione.

Dunque, tralasciando il fatto che non solo la programmazione è l'arte di risolvere problemi (forse tutta la conoscenza umana è la soluzione ad un problema :confused: ), direi che un ottimo significato a quel "l'informatica non si studia" possa essere trovato se intendiamo l'affermazione nel senso di spingere a cercare una soluzione propria a problemi propri. Intendo per "problema proprio" non tanto un che di originale ma qualcosa che nasca e si risolva senza riferimenti ad una soluzione già esistente.

E' un po' come la storia del selvaggio che sull'isola di zumbulù piglia e scopre la teoria della relatività: "imbecille, è storia vecchia" o "accidenti, il nuovo Einstein" ?

Non vorrei apparire "piccato" (ok, lo voglio ma è un piccato allegro :D) ma per diventare il nuovo Fowler (contemporaneo, "ignaro per comodo" del significato di teoria scientifica) è sufficiente scrivere un libro in cui pontificate de omnia mundi et quibusdam aliis senza uno straccio di "perchè" e condite il tutto con petizioni di principio (altrimenti dette tautologie, affermo che A è vero motivando con un ragionamento che presuppone la verità di A, tipo religione) badando bene a scansare il principio della criticabilità (se A e vero allora B ma a prescidere da questo se esiste C allora la mia teoria è errata). A questo punto salite su un montarozzo di ghiaia, prendere due sassetti e scendete con il più sacrale dei volti. Metà uomini vi prenderanno per colui che reca le tavole della legge e l'altrà metà penserà "perchè quel tizio ha in mano due sassetti?".

candela
02-05-2006, 15:47
sto all'università. si, le basi le sapevo.
Ho sempre studiato, non sono mai stato una cima, ma neanche un caso limite, insomma sono nella fascia della gente che deve studiarsela per tirare avanti. Non mi capitano intuizioni nè ho velocità nello scrivere il codice.
Forse faccio piangere, perciò mi chiedevo, in condizioni simili è possibile imparare il java a livello commerciale o è meglio andare a lavare i piatti? (è una metafora,per intenderci)
I programmatori sono tutti bravi o in loro c'è anche gente che ha studiato piu' o meno meccanicamente le tecniche e ha anni di esperienza alle spalle?quello che ti volevo dire è...
non sei più un ragazzino... dunque credo che sia tu la persona più adatta a darti una risposta, se non sei brillante ci sono mille spiegazioni, più o meno dipendenti da te... ma se non sei brillante perchè non trovi appassionante la cosa, non lasciarti abbagliare dalla speranza di un lavoro del "futuro" o di un lavoro facile... il boom delle new tecnology è passato... ora si "suda" anche in questo campo!
di solito un programmatore è una persona malata ;) che inizia trovando divertente programmare i programmi più stupidi della terra... e via via... cose più affascinanti e complicate... nessuno nasche "imparato"... ma è anche vero, che non conosco molti programmatori che hanno iniziato "per lavorare".... quella è una cosa che viene, quasi, da se....

bravoragazzo
02-05-2006, 16:09
ripeto, non sono bravo. sono uno che studia. per niente bravo. per niente abile solutore di problemi. Devo studiare e imparo, non ho intuizioni.
Perciò mi chiedevo se in queste condizioni può essere possibile imparare bene il java.

fek
02-05-2006, 16:23
Non vorrei apparire "piccato" (ok, lo voglio ma è un piccato allegro :D) ma per diventare il nuovo Fowler (contemporaneo, "ignaro per comodo" del significato di teoria scientifica) è sufficiente scrivere un libro in cui pontificate de omnia mundi et quibusdam aliis senza uno straccio di "perchè" e condite il tutto con petizioni di principio (altrimenti dette tautologie, affermo che A è vero motivando con un ragionamento che presuppone la verità di A, tipo religione) badando bene a scansare il principio della criticabilità (se A e vero allora B ma a prescidere da questo se esiste C allora la mia teoria è errata). A questo punto salite su un montarozzo di ghiaia, prendere due sassetti e scendete con il più sacrale dei volti. Metà uomini vi prenderanno per colui che reca le tavole della legge e l'altrà metà penserà "perchè quel tizio ha in mano due sassetti?".

No, per diventare il nuovo Fowler devi anche condire quello che scrivi con vent'anni di esperienza e studi pratici che dimostrano che quello che dici aumenta effettivamente la produttivita', date determinate condizioni. Altrimenti sei solo un tizio con in mano due sassetti e non aggiungi nulla all'Ingegneria del Software (che ricordo essere lo studio delle metodologie di sviluppo che portano ad un aumento della produttivita').

Studi di questo tipo:
http://portal.acm.org/citation.cfm?id=631082&dl=GUIDE&coll=GUIDE
http://www.cigital.com/solutions/roi-cs1.php

Once the automated unit tests were in place, the hours that developers spent conducting manual tests plummeted (to approx. 40 hours per release), resulting in a savings of $112,000 per year in developer time. The client was also provided with metrics for demonstrating continuing ROI through the application of automated unit testing. The chart below shows the cost savings over five years. The first bar shows the costs for manual testing while the second bar shows the costs for automated testing.

Riguardo a Refactoring e TDD:

http://www.adaptionsoft.com/xp_how.html

Craig Larman's latest book quotes studies showing that "broadly, defect reduction comes from avoiding defects before they occur and from feedback" such as tests and evaluations. One study showed that as the time lag between coding and testing decreased, defect rates likewise decreased.

Test-Driven Development, together with refactoring, effectively eliminate the sad tradition of open-ended debugging, replacing it with "pre-bugging": finding and eliminating bugs at inception. The practice of continuous integration is also credited by Larman and others with lowering defect rates and increasing productivity.

Qui potrai trovare un buon numero di studi e statistiche a riguardo:

http://www.amazon.com/gp/product/0131111558/qid=1069090948/sr=8-1/ref=sr_8_1/002-6279563-0852803?n=507846&v=glance

E qui puoi trovare un'applicazione allo sviluppo dei VG:

https://www.cmpevents.com/GD06/a.asp?option=C&V=11&SessID=1512

Ero presente a questa lecture e nelle slide puoi trovare le loro statistiche a riguardo.

Il che riporta all'argomento del thread: senza studiare cio' che hanno fatto prima di te puoi solo cercare di risolvere problemi nuovi "alla meglio". Con lo studio, l'esperienza e la creativita puoi risolverli "al meglio". La filosofia e il problem solving sono due campi profondamente diversi.

PGI-Bis
02-05-2006, 16:30
ripeto, non sono bravo. sono uno che studia. per niente bravo. per niente abile solutore di problemi. Devo studiare e imparo, non ho intuizioni.
Perciò mi chiedevo se in queste condizioni può essere possibile imparare bene il java.

Benvenuto nella categoria degli esseri umani medi. Siamo il 99.99% della popolazione mondiale. Credo anche che tutti quanti ce lo siamo chiesti: occorre un che di speciale per poter fare/dire/conoscere questo o quello?. La risposta è (grido) NO.

Puoi imparare senza problemi la prospettiva orientata agli oggetti, perchè è il modo in cui gli esseri umani interpretano i fenomeni (molto diverso dal modo in cui i calcolatori vedono le cose).

Puoi imparare senza problemi il linguaggio di programmazione Java, perchè è un linguaggio con molte regole ma poche eccezioni e il ragionamento umano è più efficace in positivo che a contrario.

Quanto a risolvere problemi a meno che tu non sia un minerale la natura ti ha progettato apposta: al limite si tratta solo di acquisire consapevolezza di un meccanismo innato, migliorabile ed enormemente studiato nelle scienze cognitive.

Vai tranquillo :).

0rph3n
02-05-2006, 16:35
Piuttosto che continuare a tormentarti in questo modo, perchè non provi a fare qualcosa di concreto (e che porti certi tipi di problematiche) per vedere se riesci a raggiungere un risultato?
Trovi il primo problema e cominci a pensarci, intanto ti fai un giretto in internet, vedi se trovi qualcosa di relativo che ti possa aiutare, combini i tuoi pensieri con le informazioni che hai trovato in internet et voilà il gioco è fatto!

'iao

71104
02-05-2006, 21:07
esatto amico, hai centrato in pieno il succo del discorso :mano: lol, non scorderò mai la valanga di idiozie tecniche che si inventò il mio professore di sistemi operativi quando, mentre spiegava la memoria virtuale, io gli chiesi come mai l'indirizzo NULL non è valido :rotfl:
20 secondi (cronometrati) di scena muta e poi un mare di scempiaggini :D

questo vuol dire esattamente quello che dicevo prima: non sapere nulla e fare così --> :mc: per giustificare la propria ignoranza.

86frame
03-05-2006, 01:11
Concordo anche con luxorl ...

Il programmatore non è un operaio che scrive, scrive e scrive ... perchè chiunque sa scrivere, basta conoscere la sintassi ed il funzionamento di un linguaggio ....
Il programmatore, prima di scrivere, deve inventare, analizzare, risolvere ... ci vogliono conoscenze approfondite sull' ambito in cui si sta lavorando, serve una buona dose di esperienza ed intelletto per risolvere adeguatamente un problema (adeguatamente significa guardando tutti i possibili aspetti, errori e allarmi che potrebbero capitare ... altrimenti risulta un software bacato già in progetto).
E comunque se tutto fosse già stato inventanto ... saremmo ancora al Word 1, al Corel 1, al TeamSystem 1 etc etc ....

PS. ho già fatto ingegneria del software ... anche per questo confermo quanto detto ... non basta impararsi un manuale di C per programmare in C ... un programmatore può benissimo non essere in grado di usare nessun linguaggio se però sa risolvere i problemi e progettare un' applicazione anche solo a livello di algoritmi ... come per cucinare, tutti sanno cucinare seguendo la ricetta, è inventare per bene la ricetta che invece non è facile ...



PAROLE SANTE.....Questo secondo me è la PROGRAMMAZIONE :rolleyes: