Newsgroup: it.comp.programmare
Titolo: pareri su percorso di studio

Ciao a tutti,
sono nuovo del gruppo e vorrei chiedervi un consiglio su quali linguaggi
attualmente è rivolto il mercato del lavoro in modo da indirizzare meglio i
miei prossimi studi. Premetto che sono laureato (breve) in informatica e che
le mie esperienze attuali riguardano:
Ansi C e Visual C++ con MFC
JSP, JSTL, JS e XML/XSLT.
Insomma vorrei che, anche in base alle vostre attuali occupazioni,
tracciaste delle linee guida su cosa è più richiesto oggi.
Il mio dubbio in particolare consiste sul fatto di continuare
l'approfondimento e le conoscenze del C oppure concentrarmi sulle
applicazioni .NET o JAVA.
Quanto alla programmazione web che mi piace molto dite che dovrei apliare le
conoscenze con php o asp?
Inoltre voi a quali riviste fate riferimento?
Aspetto i vostri pareri.
Saluti o good coding
Domenico Rella
p.s.: nel caso mi fossi ripetuto vi chiedo di indicarmi i post o gli
eventuali links in cui si è già parlato degli argomenti da me proposti

Ti rispondo per quella che è stata la mia esperienza professionale :
in italia non frega a nessuno quanti / quali linguagi conosci o quanto
sei bravo
o sei hai imparato le ultime metodologie ad oggetto o altro.
Ti consiglio di sviluppare un linguaggio molto semplice, in cui
programmi molto velocemente (per esempio visual basic) e di non
preoccuparti troppo dell'etica
del codice o altro.
il panorama dell'informatica è molto vasto, se l'azienda per cui
lavorerai sarà veramente interessata a te, ti fornirà un corso
interno.
oggi il mercato va su internet, il futuro è ajax, penso che qui in
italia siano rimasi a php o qualcosa di più facile.
vedrami che quando metterai le mani sui sorgenti scritti da altri ti
servira 'enigma' il codice di decodifica utilizzato dai tedeschi nella
seconda guerra mondiale.
senti ti auguto
buona fortuna
claudio


Ti rispondo per quella che è stata la mia esperienza professionale :
in italia non frega a nessuno quanti / quali linguagi conosci o quanto
sei bravo
o sei hai imparato le ultime metodologie ad oggetto o altro.
Ti consiglio di sviluppare un linguaggio molto semplice, in cui
programmi molto velocemente (per esempio visual basic) e di non
preoccuparti troppo dell'etica
del codice o altro.
il panorama dell'informatica è molto vasto, se l'azienda per cui
lavorerai sarà veramente interessata a te, ti fornirà un corso
interno.
oggi il mercato va su internet, il futuro è ajax, penso che qui in
italia siano rimasi a php o qualcosa di più facile.
vedrami che quando metterai le mani sui sorgenti scritti da altri ti
servira 'enigma' il codice di decodifica utilizzato dai tedeschi nella
seconda guerra mondiale.
senti ti auguro
buona fortuna
claudio


 
Ti consiglio di fare riferimento agli user group locali (UGIDOTNET per 
.NET o i JUG per Java) che spesso organizzano eventi e meet per 
diffondere la conoscenza. Loro possono fornirti indicazioni su materiale 
"fresco" da consultare.
Per java sta per uscire una rivista (solo su abbonamento) che sembra 
essere niente male (ma devo ancora vederla :-D), i riferimenti li trovi 
qui: 
http://www.javajournal.it/
Per .NET non saprei, passo la palla :-)
Ciao,
     Bruno
P.S.
Il JavaDay è qui!
http://www.javaday.it
-- 
| Bruno Bossola
| A Java Software Engineer :-)
| 
http://digilander.iol.it/bbossola
| Coordinatore del JUG Torino - 
http://www.jugtorino.it

claudio
grazie
ricambio
Domenico

 seguiti da un approfondimento su Design Pattern & co.
Ricevuto. Ma mi rimane ancora il dubbio su come rendere omogeneo (sempre che
sia possibile) il mio percorso di crescita nelle competenze.
Intendo dire se dovrei, secondo te, consolidare le mie conoscenze
nell'ambiente C per poi collegarle ad una delle 2 soluzioni da te indicate
(.NET o J2EE) perchè ritengo, e correggimi se sbaglio, che studiare entrambe
le piattaforme sia una cosa improponibile. Oppure abbandonare C e dedicarmi
completamente allo studio di un nuovo linguaggio/framework.
Saluti
Domenico

 
Sia Java che C# (.NET) ereditano parecchio dalla sintassi C, quindi io 
sceglierei uno dei due ambienti e mi concentrerei su quello. C lo si usa 
ancora ma in ambiti molto particolari: io ora punterei decisamente su 
una delle due piattaforme.
In bocca al lupo,


 Inoltre voi a quali riviste fate riferimento?
Ho troppo poco tempo per leggerle! :-(
Comunque ho sempre seguito Computer Programming e Linux & C.
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 sono richiesti oppure dovrei abbandonarli?
in molti settori (anche all'estero) si sta cercando di favorire linguaggi
più semplici anche se meno potenti; in certi tipi di software il layer in
C/C++ non scomparirà mai, ma tende ad assottigliarsi per permettere alla
"logica pura" del programma di essere scritta in un linguaggio semplice e
altamente produttivo. i garbage collectors per esempio sono una mano
santa: qualunque fanatico del C++, per quanto possa propagandare l'estrema
potenza e flessibilità del linguaggio che usa, non può fare a meno di
ammettere che di quelle due notti trascorse a cercare la doppia delete ne
poteva proprio fare a meno.


 Aspetto i vostri pareri.
Io ti consiglio Python (o Ruby volendo). Insomma un linguaggio dinamico,
anche perchè anche le rocce dei linguaggi statici si stanno accorgendo
che la storia del "dinamico = scripting e basta" o "dinamico = lento" è
una palla tanto quanto le leggende metropolitane. E' semplice
disinformazione (e talvolta ignoranza o peggio come m'è capitato di
testimoniare, paura)
-- 
Lawrence - 
http://www.oluyede.org/blog
"Nothing is more dangerous than an idea
if it's the only one you have" - E. A. Chartier

 seconda guerra mondiale.
Eh eh questo la dice lunga sulle competenze di quelle persone che hanno
scritto il codice :D


 Inoltre il passo tra visual c e C# quanto è lungo?
Non so cosa sia il visual C ma se intendi C e C# il passo è MOLTO lungo.
Il paradigma è diverso, l'ambiente è diverso ecc ecc. Insomma ce n'è di
roba da imparare nel passaggio da C ad un linguaggio statico orientato
agli oggetti.
Se invece devi passare da C++ a C# il passaggio sarà più indolore, ma
tanto lo sforzo più grande non riguarda mai il linguaggio in sé ma tutto
ciò che gli sta intorno.


 completamente allo studio di un nuovo linguaggio/framework.
Non ha senso fare C -> Java o C -> .NET (come secondo me non ha senso
fare C -> C++). Se è Java che vuoi imparare impara Java. Se è .NET ceh
vuoi imparare impara .NET. Se è C++ che vuoi imparare impara C++.
Faresti solo confusione a studiare C per propedeuticità


una delle due piattaforme.
Sono perfettamente d'accordo.

Comet, si chiama in tanti modi.
Diamine.  Questa cosa l'ho cercata per tanto tempo.  Anni fa, il
server HTTP di Netscape consentiva di avere un "http push", poi questa
caratteristica di č dileguata nel tempo (anche in base al mancato
supporto da parte di IE).  Ora mi informo per saperne di piů ;-)

S-B-A-G-L-I-A-T-O e credo morirò ripetendo questa cosa.
Secondo me non è del tutto sbagliato.  Chi esce dall'università ha
fame di lavoro e non si tratta quindi di forgiare solo i propri
interessi.  Cercare di intravedere, da ora, quali sono/saranno gli
andamenti del mercato per adeguarcisi, non è biasimabile.  D'altronde
io consiglio di concentrarsi su Java, sto vedendo sulla mia pelle le
enormi potenzialità di tutto ciò che è costruito attorno ad esso e il
mondo del lavoro è ora colmo di richieste per questo linguaggio.
Potrebbe essere un buon trampolino di lancio per un neolaureato.
Poi, ovviamente, bisogna allargare i propri orizzonti; quando si hanno
in tasca i soldi per un affitto e la roba da mangiare, un PC e la
connessione a internet, allora ci si può concedere un po' di tempo,
giorno per giorno, per apprendere anche altro ;-)

 Potrebbe essere un buon trampolino di lancio per un neolaureato.
d'altronde va considerato che, ad esempio, tutti gli studenti di 
ingegneria informatica ed informatica di roma (per dirne una, a quel ch 
evedo vale per tutte le università italiane) si laureano escono con 
conoscenze relative a java.
Quanti saranno, 5000 nuovi ogni anno? Si tratta di un mercato un po' 
complesso.
Certo, è vero che le conoscenze suddette a volte non si spingono oltre 
"hello world", e quindi se uno sa *davvero* programmare in j2ee o j2me 
ha buone opportunità, imo, ma non è una cosa scontata.
-- 
blog en: 
http://www.riffraff.info
blog it: 
http://riffraff.blogsome.com
jabber : rff.rff at gmail dot com

 interessi. 
No, vero... ma bisogna mediare tra le due cose.


 supporto da parte di IE).  Ora mi informo per saperne di più ;-)
Ti passo i puntatori: 
http://del.icio.us/rhymes/comet
Sappi che Nevow fa "Comet" da prima che la gente gli desse quel nome :-)


 conoscenze relative a java.
ma io sono l'unico a cui il prof. di Programmazione a Oggetti ha
"insegnato" C++ anziché Java? :P
e sto a Roma eh :P


 supporto da parte di IE).  Ora mi informo per saperne di piů ;-)
 >
 >
Guardati anche le slide della presentazione di Greg Wilkins al JavaDay 
di Torino, le trovi qui:
http://www.jugtorino.it/vqwiki/jsp/Wiki?SlideJavaDayZeroSei
Ciao,
     Bruno
P.S.
Il JavaDay č qui!


 JSP, JSTL, JS e XML/XSLT.
Secondo me non esiste un solo mercato del lavoro informatico, bensi' 
numerosi.
E' opportuno scegliere in quale ramo si vuole entrare.
Per esempio, la programmazione di una centrale telefonica per una 
compagnia telefonica e' ben diversa dalla programmazione di transazioni 
finanziarie per una banca, e la creazione di siti di e-commerce e' ben 
diversa dalla creazione di videogiochi per telefonini.
Non credo che il mercato italiano abbia gran bisogno di programmatori 
che abbiano studiato oltre la laurea breve in informatica. Quindi, se 
vuoi fare il programmatore, adesso e' il momento di cercare lavoro, non 
di proseguire gli studi. Ulteriori studi li farai mentre lavori (se ti 
va bene, retribuiti).
E' invece opportuno continuare a studiare se ambisci a una carriera di 
amministratore di sistema all'interno di una grande azienda o di 
consulente sistemista per una societa' di servizi.
-- 
     Carlo Milanesi
 
http://digilander.libero.it/carlmila

 e sto a Roma eh :P
boh, fino all'anno in cui avrei dovuto fare Fondamenti di informatica 2 
si faceva pure da me C++ con un accenno di java, dopo la riforma del 3+2 
hanno javizzato tutto


> italia siano rimasi a php o qualcosa di più facile.
Tipo asp. :-(

Ciao a tutti,
vi ringrazio per i vostri pareri anche se molti di voi, forse per il titolo
del thread, hanno creduto che io fossi un neolaureato. In realtą ho fatto
una esperienza di un anno e mezzo tra c, visual c++, linguaggi web e xml e
per questo non sono potuto diventare esperto in nessuno di questi.
Pertanto vi ho chiesto una direzione e, in base alle vostre idee, ho deciso
per java, visto che l'avevo iniziato a studiare nella programmazione
jsp/jstl...
Per i fondamenti e il "saper programmare" sono consolidati ma quando ad un
colloquio ho detto di "saper fare il meccanico" l'esaminatore mi ha detto
che noi cerchiamo un programmatore .NET e a nulla sono valse le spiegazioni
sulla programmazione ad oggetti o sui pattern o sull'ingegneria del
software. Pertanto mi trovo, per via della mia esperienza, in disaccordo con
questa teoria.
In ogni caso grazie ancora e alla prossima
Domenico Rella

 questa teoria.
volendo trovare un modo per conciliare la teoria con la tua esperienza
potremmo dire che tu sai fare il meccanico, ma loro cercavano uno
specifico tipo di meccanico che sapesse usare solo la chiave inglese; tu
hai detto che sapevi usare quella francese, tedesca, australiana e
australiana invertita, e che sapevi anche usare una chiave in generale; ma
a lui serviva proprio quella inglese :P
con un breve periodo di training avresti potuto subito raggiungere
rapidamente le conoscenze necessarie a lavorare da loro, ma sto training
chi te lo faceva? se loro riusciranno a trovare un programmatore .NET che
non ne ha bisogno (cosa assai probabile) sarà molto meglio.


questa teoria.
A dire il vero, il paragone con il meccanisco è un po' strambo.
Insomma, trattasi sempre del solito vuoto tra teoria e pratica che
prima o poi bisogna saltare.  Uno che ha studiato centinaia di manuali
di progettazione meccanica, ha sicuramente delle ottime nozioni, ma
non si può definire un meccanico.  Il meccanico è uno che per svitare
un bullone sa che serve la chiave X (e questo deriva dalla nozione
progettuale) e la sa usare (e questo deriva dalla pratica).  
Alla fine, le nozioni ti servono SICURAMENTE, ma come base su cui
costruire.  Il tuo intervistatore non posso biasimarlo ;-)

rapidamente le conoscenze necessarie 
Hmmm... è sempre opinabile il concetto di "breve", in questi casi...
Non diamo neanche troppo per scontato che chi abbia solide basi alle
spalle possa acquisire conoscenze in tempo "breve".  Dipende dai
contesti; a volte ci vuole tempo anche i più bravi ;-)

 che scarseggiano in Italia,
Se parliamo di siti web e non appliaczioni, questo e' un bene.
Forse scarseggiano le applicazioni web piu' che altro... 

 Forse scarseggiano le applicazioni web piu' che altro... 
Si parlavo di applicazioni web, ma anche idee in generale non ne vedo
molte...


 
Ciao Lawrence, mi stupisci! Scusa se mi intrometto: pur non essendo un 
fan di Ajax la tua argomentazione mi sembra un po' scarsina.
Inoltre quello che dici non è corretto, vedi ad esempio il lavoro che 
Greg Wilkins ha fatto con WebTide (puoi anche dare un'occhiata alle 
slide del javaday di torino che trovi a 
http://www.jugtorino.it/vqwiki/jsp/Wiki?SlideJavaDayZeroSei
)
Personalmente già nel 2000 comunque, quando in una banca di Milano 
sviluppammo una soluzione di push per una stockwatch di un'applicazione 
di trading online, usavamo una soluzione simile.
Ciao,
     Bruno
P.S.
Il JavaDay è qui!


 di trading online, usavamo una soluzione simile.
Si immagino le famose pushlet, in fondo tutto il mondo è paese ;-)


Non ti seguo, sorry.
1. Il modello proposto da Greg funziona (scusa per le slide, ora le 
recupero, ma grazie dell'avviso!) e supporta un protocollo che non fa 
polling. Dov'è il problema?
2. Una buona parte (il 95% direi delle applicazione che conosco) non ha 
problemi a lavorare in un modello request/response e Ajax funziona 
egregiamente in queste condizioni. Perchè dovrebbe essere "destinato a 
sparire"?



Esatto.
Lui parla di interattivita', ma non centra asssolutamente nulla 
l'interattivita'.
Comet brilla quando servono aggiornamenti iniziati dal server, quando si 
vuole che l'utente veda le modifiche apportate dagli altri utenti (esempio 
chat).
Ma non mi sembra proprio che la maggior parte delle applicazioni abbiamo 
queste necessita'.
Ho come l'imprensione che lui finira' per usare comet anche quando non sara' 
necessario, solo perche' fa fico...affari suoi.
Per quanto riguarda le difficolta' di programmazione, proprio non ne vedo 
con Ajax. Tutto dipende da come viene implementato. 

 necessario, solo perche' fa fico...affari suoi.
Impara a leggere.


 sparire"?
Non è detto che sparisca e non ho niente contro Ajax, quello che intendo
è che applicazioni come Meebo, JotLive, Gmail chat (direi
all'avanguardia in quanto a user experience) non possono usare Ajax nudo
e crudo perchè ad esempio nel caso di Meebo che latenze avresti con una
chat con migliaia di utenti connessioni con il polling? Tolto il
polling, immagino che sia fuori di discussione l'idea di avere 10mila
utenti e 10mila thread. Certo si può fare ma esistono modelli diversi e
migliori come Comet (che Ajax non lo cancella eh, lo migliora).
Altro esempio, una applicazione come un wiki condiviso (il classico
esempio). Puoi fare polling ogni tot per vedere le modifiche fatte nel
frattempo (ma cosi dubito che avrai una grande "real timeness") oppure
usare l'HTTP Streaming (Comet appunto) per simulare l'esperienza di
essere li da parte all'altro utente ad editare. Idem per una lavagna
condivisa ecc ecc.
Prova a guardare questo screencast:
http://soundfarmer.com/content/movies/PavelScreencast.mov
E' una applicazione di esempio fatta con Nevow che ti dicevo.



Continui ad usare "interattivita'", ma non e' quello il motivo per cui si 
debba usare comet anziche' ajax.
Non e' che piu' interattivita' significa piu' conveniente verso comet. 

 Non e' che piu' interattivita' significa piu' conveniente verso comet.
Aspetto la tua spiegazione allora. Perchè mi sbaglio?


 tonnellate di risorse, è un modelo thread-per-request.
Sono andato alla pagina suggerita da Bossola, e ho visto il link:
Greg Wilkins (Jetty creator) - Jetty in Action (in inglese)
http://www.webtide.com/downloads/TorinoJUG-AsyncServlets.pdf
Ora mi sembra che Jetty possa supportare Comet senza il modello thread per 
request.
Sei sicuro di cio'?
http://www.webtide.com/downloads/whitePaperAjaxJetty.html
(non ho fatto a tempo a leggerlo, ho solo dato un'occhiata)
Mi pare di capire che facendo uso del nuovo package java.nio si puo' 
superare il problema del thread per request. 

 chat con migliaia di utenti connessioni con il polling? 
 >
Dai, cito testualmente la conversazione:
LO> Ajax è già quasi "passato" (o moda destinata a scemare).
CC> In base a cosa?
LO> In base al fatto che Ajax è oneroso perchè fa polling
Ripeto: dire che ajax è "passato" e motivarlo con il fatto che fa 
polling è un'argomentazione un po' scarsina


 polling è un'argomentazione un po' scarsina
Ok chiedo venia per essermi espresso male con quella frase "markettara".
Spero che ora non ci siano più dubbi sulla mia posizione :-)


 
http://www.webtide.com/downloads/whitePaperAjaxJetty.html
Si infatti se vai più avanti a leggere propone come soluzione un modello
basato su continuazioni molto interessante


 indirizzare meglio i miei prossimi studi
alcune idee potrebbero venirti leggendo il recente thread seguito ad
una offerta di lavoro su it.comp.lang.python
-- 
Vorrei andare a lavorare in Sicilia, a max 15 km dal mare. Con chi 
devo parlare? Col capomafia distrettuale? Oppure bisogna sporcarsi le 
mani e fare la tessera di FI?                      -- Marvin,  in IFQ