Java Open Source

Riflessioni, eventi, curiosità

Messaggioda MazinKaesar » mar mag 29, 2007 9:32 am

Si rik0, ma non ci si può mettere ad imparare un linguaggio nuovo ogni 5 minuti per i deliri dei ricercatori e/o delle software house. Conosco il C, e semmai dovessi programmare ad oggetti, userei il C++ mescolando programmazione ad oggetti e strutturata. Per me le classi sono le struct con le funzioni messe dentro, ed una volta dentro le struct, le funzioni le chiami metodi. Lo so, è un approccio sbagliato, ma quando devi fare un programma nel più breve tempo possibile per darlo al cliente, l'importante è che funzioni. Possiamo discutere di questioni accademiche per ore, ma alla fine l'importante è soddisfare le esigenze del cliente per portare la pagnotta a casa, chi se ne frega del linguaggio o della modalità di programmazione :ammicca:
Immagine Immagine
Immagine Immagine
Immagine Immagine
Avatar utente
MazinKaesar

Supporter!!
 
Messaggi: 4053
Iscritto il: sab set 18, 2004 8:43 pm
Località: Modena

Messaggioda ceone » mar mag 29, 2007 9:44 am

MazinKaesar ha scritto:Si rik0, ma non ci si può mettere ad imparare un linguaggio nuovo ogni 5 minuti per i deliri dei ricercatori e/o delle software house


Eh c'hai ragione, io son 2 settimane che bestemmio con l'xsl, che delirio.
ceone

Amico
 
Messaggi: 39
Iscritto il: lun giu 19, 2006 9:11 am

Messaggioda riko » mar mag 29, 2007 1:55 pm

MazinKaesar ha scritto:Si rik0, ma non ci si può mettere ad imparare un linguaggio nuovo ogni 5 minuti per i deliri dei ricercatori e/o delle software house.


Dipende. Io posso dire che secondo me non è verosimile lavorare nel mercato IT conoscendo *un*linguaggio, a meno di non verticalizzarsi parecchio.

Tra l'altro conoscere più linguaggi e piattaforme significa avere una visione più flessibile dei problemi, e possibilmente conoscere soluzioni che in altri ambiti sono già state fornite ad un problema attuale.

Certo che puoi lavorare con un solo linguaggio. Il punto è che un informatico non è un manovale: è una persona che lavora con la mente. Che deve *pensare*. Ed essere agile a pensare e risolvere aiuta *moltissimo*.

Conosco il C, e semmai dovessi programmare ad oggetti, userei il C++ mescolando programmazione ad oggetti e strutturata. Per me le classi sono le struct con le funzioni messe dentro, ed una volta dentro le struct, le funzioni le chiami metodi.


Sigh.

Lo so, è un approccio sbagliato, ma quando devi fare un programma nel più breve tempo possibile per darlo al cliente, l'importante è che funzioni.


Appunto: quando devi fare un programma nel minore tempo possibile, l'importante è che funzioni. In primo luogo è evidente che per qualunque cosa che sfori la soglia del banale 'fare una cosa nel minor tempo possibile' *implica* farla bene.

Facendola male infatti si fanno scoppiare i tempi di testing e di debug, e si finisce precisamente per:

1) non finirla affatto in breve tempo
2) non consegnare una cosa che funziona

A seconda delle condizioni contrattuali e della professionalità del team entrambe le cose possono essere deleterie (per esempio ci si può trovare a lavorare non pagati oppure trovarsi -- in certi ambiti -- con delle cause in corso).

Ci sono alcuni paragrafi sul classico di Ingegneria del Sw di Kent Beck a riguardo. D'altra parte in SwIng ci sono tante cose controintuitive... già venti anni fa Brooke aveva chiaramente dimostrato (empiricamente, e poi motivato tecnicamente) che aggiungendo persone ad un progetto in ritardo lo si fa diventare ancora più in ritardo. Per dire.

Tipicamente la qualità di un progetto non è una variabile libera per agire sul tempo di consegna: per consegnare nei tempi i trucchi sono altri.

Fra i trucchi indubbi ci sono utilizzare le tecnologie giuste. Vengono continuamente creati framework e librerie per tagliare i tempi di sviluppo.
Considera scrivere una cosa usando direttamente le WinAPI oppure usando le MVC. Ora usando .Net tagli ancora. Chi te lo fa fare di impararti anche c#? Nessuno, ma ti può dare un vantaggio sulla concorrenza. E sei veramente saggio scopri che in .Net c'è anche IronPython, impari Python (che ti fa risparmiare tempo rispetto a C#) e hai tutto l'accesso al framework .Net (oltre che sviluppare in Python è più snello che sviluppare in C#).

E vedi che imparando due semplici tecnologie sbricioli i tempi di sviluppo rispetto che fare le cose in C con le WinAPI.

Questo vuole dire che il team 'moderno' può chiedere compensi più bassi *e* allo stesso tempo guadagnare più soldi per ora.

D'altra parte perchè Java ha avuto successo quando esisteva già C++?
Precisamente perchè permetteva di contenere i costi di sviluppo *e* fare prima *e* buttare fuori software meno buggato (o meglio, richiede uno sforzo minore perchè linguaggio e framework gestiscono automaticamente alcune problematiche che in C++ richiedono cura e attenzione manuale).

Sostenere che 'basta un linguaggio' va sostanzialmente contro la storia dell'informatica. Ovvero regolarmente si sono affacciate tecnologie 'nuove'. Perchè imparare Pascal quando c'era già Algol? Perchè imparare C quando c'erano già FORTRAN e Assembly? Precisamente perchè queste tecnologie 'nuove' facevano risparmiare tempo *e* permettevano di dare software di qualità più alta più facilmente.

D'altra parte usare tecnologie di punta è un notevolissimo vantaggio competitivo.

Possiamo discutere di questioni accademiche per ore, ma alla fine l'importante è soddisfare le esigenze del cliente per portare la pagnotta a casa, chi se ne frega del linguaggio o della modalità di programmazione :ammicca:


Questo è ingenuo. Tipicamente alla base delle realtà più di successo degli ultimi anni c'è spesso una tecnologia 'alternativa' che da luogo ad un vantaggio competitivo.

Pensa a Google per esempio. La chiave di volta del loro successo, si chiama Python.

Pensa a quanto costo di sviluppo e manutenzione si riesce a tagliare scegliendo Ruby on Rails invece di PHP. E così via.
-enrico
fibs = 0 : 1: [ a + b | (a, b) <- zip fibs (tail fibs) ]


Akropolix: Community OFF-TOPIC di IKSnet
http://www.akropolix.net/forum

"se do da mangiare a un affamato mi dicono che sono un santo, se mi chiedo perch? ? affamato mi dicono che sono un comunista" (Helder C?mara, Arcivescovo di Recife)
Avatar utente
riko

Supremo
 
Messaggi: 3329
Iscritto il: gio mar 04, 2004 4:28 pm
Località: Chiba City

Messaggioda MazinKaesar » mar mag 29, 2007 2:18 pm

Per carità, lo so che non basta un linguaggio, ma lavorando 8 ore al giorno per 5 giorni, quando hai il tempo di studiare nuove tecnologie? Durante le notte io vorrei dormire, il finesettimana vorrei condurre una vita privata. Se il datore di lavoro ti da il tempo per stuidare, ok, se no, pazienza, ci si specializza. La maggior parte delle persone che conosco io, in ambito professionale, sono "monoprodotto", ma non si può essere diversi da così. In ambito accademico magari il discorso è diverso, le scadenze magari sono meno proibitive. Qua se non si consegna il programma che funziona entro i tempi stabiliti, ci si gioca la pagnotta ^^

E' anche vero che si sono eccezioni: vuoi un esempio di programma pensato male, fatto male, limitato e con tempi di analisi e sviluppo abnormi? Beh, esiste, si chiama SAP. E a breve mi toccherà studiare l'ABAP :no:

EDIT: cmq, io parlo per mi diretta esperienza personale, essendo ben conscio dei miei limiti :no: e dei miei tempi di apprendimento :no: Alla fine me la cavo (laurea con 108, lavoro da 5 anni nella stessa azienda e mi tengono stretto), ma magari chi ha più versatilità di me se la passa meglio. Ho provato in passato a portare avanti qualche progetto da solo in Delphi (che non è male), ma praticamente partivo da zero a parte un po' di Pascal, e non ce l'ho fatta, non avevo più nemmeno il tempo per andare in bagno ... :riflette:
Immagine Immagine
Immagine Immagine
Immagine Immagine
Avatar utente
MazinKaesar

Supporter!!
 
Messaggi: 4053
Iscritto il: sab set 18, 2004 8:43 pm
Località: Modena

Messaggioda Babylon » mer mag 30, 2007 9:22 am

MazinKaesar ha scritto:Per carità, lo so che non basta un linguaggio, ma lavorando 8 ore al giorno per 5 giorni, quando hai il tempo di studiare nuove tecnologie? Durante le notte io vorrei dormire, il finesettimana vorrei condurre una vita privata. Se il datore di lavoro ti da il tempo per stuidare, ok, se no, pazienza, ci si specializza. La maggior parte delle persone che conosco io, in ambito professionale, sono "monoprodotto", ma non si può essere diversi da così. In ambito accademico magari il discorso è diverso, le scadenze magari sono meno proibitive. Qua se non si consegna il programma che funziona entro i tempi stabiliti, ci si gioca la pagnotta ^^

E' anche vero che si sono eccezioni: vuoi un esempio di programma pensato male, fatto male, limitato e con tempi di analisi e sviluppo abnormi? Beh, esiste, si chiama SAP. E a breve mi toccherà studiare l'ABAP :no:

EDIT: cmq, io parlo per mi diretta esperienza personale, essendo ben conscio dei miei limiti :no: e dei miei tempi di apprendimento :no: Alla fine me la cavo (laurea con 108, lavoro da 5 anni nella stessa azienda e mi tengono stretto), ma magari chi ha più versatilità di me se la passa meglio. Ho provato in passato a portare avanti qualche progetto da solo in Delphi (che non è male), ma praticamente partivo da zero a parte un po' di Pascal, e non ce l'ho fatta, non avevo più nemmeno il tempo per andare in bagno ... :riflette:


Non è che ci voglia molto tempo per imparare un nuovo linguaggio. Con mezz'ora al giorno rubata alla TV si possono fare miracoli...

Io conosco: C, C++, VB, VB.NET, Java, XHTML, XML, PL/SQL, Delphi, 4GL.

Non ho messo SQL perché lo ritengo implicito...

Come vedi con un po' di passione i miracoli si possono fare, ed ho anche una vita privata.
Avatar utente
Babylon

Veterano
 
Messaggi: 126
Iscritto il: ven feb 02, 2007 1:47 pm
Località: Venezia - Mestre

Messaggioda ceone » mer mag 30, 2007 10:31 am

MazinKaesar ha scritto:Per carità, lo so che non basta un linguaggio, ma lavorando 8 ore al giorno per 5 giorni, quando hai il tempo di studiare nuove tecnologie? Durante le notte io vorrei dormire, il finesettimana vorrei condurre una vita privata. Se il datore di lavoro ti da il tempo per stuidare, ok, se no, pazienza, ci si specializza. La maggior parte delle persone che conosco io, in ambito professionale, sono "monoprodotto", ma non si può essere diversi da così. In ambito accademico magari il discorso è diverso, le scadenze magari sono meno proibitive. Qua se non si consegna il programma che funziona entro i tempi stabiliti, ci si gioca la pagnotta ^^

E' anche vero che si sono eccezioni: vuoi un esempio di programma pensato male, fatto male, limitato e con tempi di analisi e sviluppo abnormi? Beh, esiste, si chiama SAP. E a breve mi toccherà studiare l'ABAP :no:

EDIT: cmq, io parlo per mi diretta esperienza personale, essendo ben conscio dei miei limiti :no: e dei miei tempi di apprendimento :no: Alla fine me la cavo (laurea con 108, lavoro da 5 anni nella stessa azienda e mi tengono stretto), ma magari chi ha più versatilità di me se la passa meglio. Ho provato in passato a portare avanti qualche progetto da solo in Delphi (che non è male), ma praticamente partivo da zero a parte un po' di Pascal, e non ce l'ho fatta, non avevo più nemmeno il tempo per andare in bagno ... :riflette:


mi sa che fra un po', causa migrazione a sap, toccherà pure a me l'abap, com'è ? un cesso?
ceone

Amico
 
Messaggi: 39
Iscritto il: lun giu 19, 2006 9:11 am

Messaggioda MazinKaesar » mer mag 30, 2007 12:13 pm

ceone ha scritto:mi sa che fra un po', causa migrazione a sap, toccherà pure a me l'abap, com'è ? un cesso?


Senza infamia e senza lode... rigido.
Immagine Immagine
Immagine Immagine
Immagine Immagine
Avatar utente
MazinKaesar

Supporter!!
 
Messaggi: 4053
Iscritto il: sab set 18, 2004 8:43 pm
Località: Modena

Messaggioda afxgroup » mer mag 30, 2007 3:22 pm

eheh.. piccoli pezzenti... :ride: nessuno di voi conosce il COBOL come me.. :sburla: :sburla: :eheh2:
Elf.library.. a noi due....
The BUG Hunter.. +1..
AMIGAONE - SAM - MOANA - A1200 - A600 - A500 - C64
Avatar utente
afxgroup

Admin
 
Messaggi: 3647
Iscritto il: ven giu 11, 2004 9:49 am
Località: Taranto

Messaggioda clros » mer mag 30, 2007 5:33 pm

afxgroup ha scritto:eheh.. piccoli pezzenti... :ride: nessuno di voi conosce il COBOL come me.. :sburla: :sburla: :eheh2:

:riflette:

Ehmm... io sto studiando il BCPL per una nuova implementazione della DOS.library :figooo: :ahah:

Scerzi a parte, io la penso come Mazin: anche se conosco una dozzina di linguaggi (a propò afxgroup: ti è arrivata la mia mail?) devo dire che sono "tutti" uguali li divido in 3 gruppi: imperativi, ad oggetti e di markup.
Anche se quello che dice Riko è vero, nemmeno io ho tempo di impararne di nuovi (non inteso come nuovi linguaggi - per quello non ci vuole nulla - ma come nuove puculiarità).Già adesso, ad esempio il C++ lo uso raramente (Java ancora meno) per cose "serie"; preferisco di gran lunga il C. Stesso discorso per il PHP: esisteranno tanti linguaggi migliori, ma non ho il tempo di star lì ad impazzire ad imparare cose nuove (notare bene: non ho il tempo, non la voglia!)
Poi, potrò anche essere poco flessibile, ma ho difficoltà a capire subito a cosa mi potrà realmente servire una determinata caratteristica di un nuovo linguaggio.
Ad esempio, ultimamente ho ripreso dopo l'Uni le regex e ho scoperto che le posso usare benissimo con il compilatore GCC (g++) di OS4 includendo una libreria BOOST (libboost_regex-s) senza scomodare null'altro.
Only AMIGA makes it possible !!
La colpa è sempre del Kernel!!
...un bit è formato da 8 byte...

Claudio "CP" La Rosa
Avatar utente
clros

Supremo
 
Messaggi: 3473
Iscritto il: ven mag 07, 2004 2:41 pm
Località: SYS 64738

Precedente

Torna a Amiga in generale

Chi c’è in linea

Visitano il forum: Nessuno e 3 ospiti

cron