Newsgroup: it.comp.programmare
Titolo: un linguaggio per mio figlio

Mio figlio, prima media, mi ha finalmente chiesto di
insegnargli a programmare.
Solo che mi e' venuto il dubbio sul linguaggio da adottare.
Vi descrivo un attimo la mia situazione per darvi una
idea.
Io programmo, per motivi di hobby o come ausilio alla mia
professione (ma non professionalmente) da circa 25 anni.
Nel tempo ho imparato e usato un bel po' di linguaggi,
tipo fortran,algol,cobol,pascal,lisp,basic,apl,lisp, etc.
Negli ultimi anni mi sono stabilizzato sul C con occasionali
incursioni nel C++ quando trovavo comodo usare le STL o
per necessita' di interfacciarmi con librerie etc.etc.
Diciamo che anche per motivi "storici" non ho molta
passione per l'Obj.Or. ma capisco al giorno d'oggi
sia quasi indispensabile, se non altro per interfacciarsi
con il sistema.
Quindi sulla parte "linguaggistica" non avrei grossi problemi.
Il problema e' che ho pochissima esperienza nelle interfacce
grafiche (faccio piu' che altro programmi di carattere matematico
a linea di comando e quasi sempre sotto linux o cygwin)
L'unica cosa che so abbastanza usare e' l'ormai vecchio
Borland C++ Builder che ha una modalita' molto intuitiva
per creare intefacce grafiche, penso in modo simile
al visual basic (che non ho mai usato). Sicuramente molto
piu' facile da usare del Visual C++ che mi e' sembrato
a suo tempo un incubo, dal punto di vista di uno che
dovesse iniziare da 0 con la programmazione sotto windows.
Fatte queste lunghe premesse (scusate la prolissita'...)
mi sto domandando come procedere con mio figlio che
chiaramente vorrebbe un linguaggio che permetta con
una certa facilita' di produrre un qualche output
"grafico".
Istintivamente, perche' non conosco altro abbastanza approfonditamente,
andrei su c/c++ con l'ausilio del Borland, che almeno
in 5 minuti uno puo' fare un programma con un bottone e una
finestra di testo che mosti Hello.world...
Pero' mi chiedevo se secondo voi ci sono dei linguaggi
recenti che uniscono una certa semplicita' di apprendimento
anche la capacita' di produrre se non interfacce grafiche
almeno grafici (tipo plottare delle figure).
Escluderei Java che per motivi miei odio profondamente,
e privilegerei qualcosa per il quale si trovi documentazione
in italiano in modo che lui possa andare avanti anche autonomamente.
Se mi sapete dare qualche consiglio senza scatenare una guerra di flame
ve ne sarei grato :-)
ciao,
v.

perchè non adotti il C# della microsoft è un'integrazione tra C e
Java Visual, esistono molti siti e diverse monografie che ti aiutano
nell'apprendimento, essendo poi tu conoscitore del C non avrai grossi
problemi.
Ancora Valuta la scelta di JAVA.
saluti claudio

On Wed, 07 Dec 2005 14:30:45 +0100, vanvera <nes...@nom.en> wrote:
[CUT]
Anche se lo odi non significa che non possa piacere a vostro figlio :)
Consiglio Java, C# o VB.Net.
Eviterei il C++.

 Quindi sulla parte "linguaggistica" non avrei grossi problemi.
Te forse no, ma tuo figlio si! Insomma, ha 11 anni, mi sembra difficile che
riesca a digerire linguaggi complessi come c++ o java... personalmente ti
consiglio il python che č piů facile, e gli affianchi pygtk e glade per fare
le inerfacce grafiche.
Ciao
  Andrea


 
nota che python di default ha comunque il suo toolkit grafico (tkinter). 
che su windows non č neanche malaccio come aspetto di default.
Io appoggio la proposta di python (o ruby, che anche lui ha una libreria 
per usare Tk di default e puo usare gtk/qt/fox/wx/etc a parte), secondo 
me iniziare con un linguaggio che permette di fare
lista=[1,2,3,4]
for i in lista
  print i
end
č un grosso vantaggio rispetto a java/c#/c++/c

 le inerfacce grafiche.
Infatti e' quello che cominciavo a pensare.
Il problema di Java, per esempio, e' che ho dovuto sviluppare
un piccolo framework per il calcolo distribuito su web,
quando ancora il linguaggio non era molto
stabile e avevo dei bug diversi a seconda del sistema operativo
e del browser... questo unito al fatto che ero abbastanza nuovo
all'object oriented e ignorante di Java, mi ha lasciato brutti 
ricordi... .-)  Inoltre, anche se la parte di linguaggio
vero e proprio era relativamente snella e simile al c o al c++,
per usarlo veramente mi ero dovuto consultare circa 4000 pagine
di documentazioni delle API o classi o come si chiamavano...
e questo per un "vecchio" come me era veramente troppo...
Sul fatto che un linguaggio debba piacere piu' a mio figlio
che a me, possiamo essere anche d'accordo, ma me lo devo
pur sempre studiare anche io, altrimenti come glielo insegno ?
Provero' a dare una occhiata a questo python del quale ho
sentito parecchio parlare. Per quanto
riguarda il C# .NET o simili, mi sembra, potrei sbagliare,
che siano cose abbastanza orientate verso windows e preferirei
provare prima qualcosa di piu' neutro e leggero, magari usabile anche
sotto linux, visto che io win lo uso solo part-time.
Tra l'altro imparare a fare interfacce grafiche anche sotto
linux servirebbe anche a me, perche' tempo fa ho fatto un
programmino gratis di enigmistica (verbatron si chiama) per win, con il
Borland c++ builder) e diversa gente mi ha chiesto di portarlo sotto
linux ma non ho mai  avuto la forza/il tempo di mettermi a studiare come
gestire le interazioni con l'utente e trovare qualcosa multipiattaforma
da studiare durante le feste natalizia sarebbe il massimo.
ciao,
e grazie a tutti per le risposte.
giovanni alias vanvera (quando scrivo dal laptop).

 idea.
[...]
Visto che ci avviciniamo a natale, forse puoi considerare i lego 
mindstorms. Sono troppo vecchio per avere avuto l'occasione di 
giocarci, perň, da quanto ho letto, dovrebbero essere programmabili e 
uniscono qualche principio di programmazione con i giochi piů 
tradizionali.
Un'altra soluzione potrebbe essere rappresentata da qualche ambiente 
di sviluppo orientato alla produzione di giochi.
Purtroppo non ho sottomano i link, ma ce ne sono diversi, 
generalmente basati su basic o derivati, che consentono di sviluppare 
in modo abbastanza rapido (e quindi non noioso per un ragazzino) 
giochi ed effetti grafici.
-- 
Valter Minute
(the reply address of this message is invalid)
(l'indirizzo di reply di questo messaggio non č valido)

Valter Minute <vmi...@GoogleMAILservice.com> wrote in
news:Xns97276A8F133...@193.43.96.1
: 
[...]
Ho trovato un link:
http://www.kidsprogramminglanguage.com/
-- 
Valter Minute
(the reply address of this message is invalid)
(l'indirizzo di reply di questo messaggio non è valido)

 in italiano in modo che lui possa andare avanti anche autonomamente.
questa è una cosa che ti sconsiglio: in ambito informatico io ho *sempre*
cercato documentazione rigorosamente in inglese: se tuo figlio vuole
programmare non è ammissibile che non sappia leggere la microlingua
inglese specifica dell'informatica: io a suo tempo ho fatto grandi sforzi
per imparare (stavo sempre col vocabolario accanto :P)
ciao
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

[CUT]
Guarda, io ho 16 anni e ora uso VB2005.
Mi trovo piuttosto bene, ma ti dico una cosa:
Il VB6 l' object oriented se lo rigira come gli pare. Non aderisce 
molto......
Io ho iniziato col VB5, poi il 6, il .NET e ora questo 2005.
Il migliore con cui mi trovo č il 2005 ma solo perchč non ho avuto il tempo 
di mettermi per il VC++, altrimenti avrei imparato quello.....
Quindi, vai col C e poi C++, Visual C++ 2005 dopo che sapete bene il 
"Compiled C" (cosě mi dissero a suo tempo con VC++.NET.....).
Volete imparare insieme e lavorare insieme? Infarinatura di Java e poi sotto 
col C#.
Alcuni miei amici hanno fatto cosě e si divertono un botto.
Spero di essere stato utile.
Ciao!

 almeno grafici (tipo plottare delle figure).
Sì, C++Builder.
Steve. 

 Negli ultimi anni mi sono stabilizzato sul C con occasionali
Fossi in te io gli insegnerei il pascal,
è un linguaggio che non serve a nulla ma è la base
dei moderni linguaggi come c.
Inoltre è fortemente tipizzato e non puoi
fare molte "schifezze" (che a me piacciono tanto)
che puoi fare con il c, quindi impara a programmare
il più pulito possibile ed utilizzare le
"smanettate" solo quando c'è veramente bisogno.
Davide

Il 07/12/2005 vanvera ha illuminato il ng con le seguenti parole:

Mio percorso personale:cerca di disilluderlo sulle interfacce grafiche 
facili facili da sviluppare e fagli capire che la consolle all'inizio 
aiuta a fare tutto...in questo modo puoi infarinarlo con un qualsiasi 
linguaggio serio...c c++...magari anche java e magari all'inizio anche 
in modo asolutamente statico e non orientato agli oggetti..per poi 
piano piano passare all'OO.
..programmare grafica in modo veloce non va d'accordo con l'imparare a 
programmare bene(VB la dice tutta)  ...salvo che per tuo figlio la cosa 
non sia essenziale se invece sai di certo che a console non 
programmerebbe..bhè allora pur di evitare di usare un rad senza 
cognizione di causa..meglio imparare a programmare per il web(lato 
server) così hai grafica ma puoi scegliere un linguaggio di 
programmmazione cmq valido.
-- 
ô~ThEgAmEr~ô su uni7 alleanza  Kult Underground
  1011010     C   xthegamerx
  1001111     O         su
  1001111     O    
gmail.com
  1010010     L
"Il topo abbandona la nave quando sa che affonderà, il vigliacco lo fa 
quando pensa che i topi lo faranno"

 tradizionali.
Anch'io sono per i Lego Mindstorms (o erano 'Lego technics' una volta?)
più che altro, perchè avrei voluto averli io a suo tempo!! ;)
Un linguaggio semplice da imparare e abbastanza potente è il Python, che
insegna a scrivere correttamente e a commentare in maniera chiara il
proprio codice. Il C sicuramente è più complicato, però bisogna
impararlo prima o poi..
Fossi in te gli insegnerei un po' anche ad usare Linux e qualche base di
HTML, e linguaggi web. Non si tratta di vera e propria programmazione ma
almeno permette di realizzare cose molto utili anche senza dover imparare
troppo.
Beh, in ogni caso: portalo anche fuori questo povero ragazzo, fallo
giocare a calcio e andare con le ragazze. Tienilo lontano da Usenet. Non
ne vorrai mica fare un altro Nerd? Ne siamo in tanti qua dentro..

 almeno grafici (tipo plottare delle figure).
Il Delphi va più che bene, oppure il visual basic. Sono entrambi visuali 
e (abbastanza) recenti, e per il Delphi la versione 3.0 è disponibile 
gratis, se la memoria non mi gioca scherzi...
Eviterei di farlo cominciare con il C, che è pieno di trappolette 
grammaticali tipo questa:
char* dest, src; // credi di aver dichiarato due puntatori a char? :-)
e il C++ è pure peggio.
IMHO meglio farlo approcciare alla programmazione con qualcosa di 
semplice che possa dargli subito delle soddisfazioni: se poi gli servirà 
più velocità (o se lo prenderanno in giro perchè usa il VB :-) si 
metterà da solo a studiare il C/C++ (o quello che andrà di moda allora). 
Ma cominciare avrà cominciato. E che il VB sia un linguaggio schifoso, 
bè, non è il linguaggio ad essere schifoso, ma i programmatori. VB è un 
linguaggio come un altro, e se usato con il dovuto mestiere è veloce 
pure lui, ma sviluppare un programma per windows in VB porta via CINQUE 
VOLTE meno tempo che farlo con il C++, dopotutto. E se poi il tuo 
pargolo decide di scrivere un game in 3D col VB, beh imparerà a scrivere 
le DLL in C :-)
OK il flame VB sì\VB no è aperto :-)

Bella domanda!
Vediamo...
Io ho 13 anni, ho iniziato a programmare anche io quando avevo 10/11 anni.
Ho cominciato a imparare (da solo, sui vari libri, penso che sia meglio fare 
cosě in modo che poi come avete detto vostro figlio possa andare avanti da 
solo) il Visual Basic 6 e il PHP.
Attualmente la situzione č cambiata... allora, in primis escluderei c++ (č 
particolarmente complesso sia il linguaggio che creare app grafiche con GUI 
e roba varia), e java (neanche a me piace =P), ti consiglierei Vb.net, č 
abbastanza semplice (in 2-3mesi lo impari insomma) ed č molto facile creare 
applicazioni con GUI (ovviamente ha anche il visual designer), insieme a 
vb.net
 ti consiglierei di farci imparare anche qualcosa per il web, tipo 
asp.net
, php o ruby.
Per quanto riguarda le applicazioni desktop č molto valido anche il python.
Bye,
-- 
Carmine ( 
pikachu...@gmail.com
 (Togli la scritta NOSPAM) )
NUOVISSIMO SITO!!! The Total Site 4 : 
http://www.thetotalsite.it
MariokartDS Codice Amico: 532639027909 - CarmineC in MarioKartDS