Newsgroup: it.comp.macintosh
Titolo: iniziare a programmare

quale linguaggio?
ho esperienza solo di html,asp,mysql, vorrei iniziare a creare piccoli
programmi con mac,giusto un consiglio su cosa evitare!

 quale linguaggio?
Python o Ruby. Forse direi il primo.
-- 
blog:  
http://www.akropolix.net/rik0/blogs
 | Uccidete i filosofi,
site:  
http://www.akropolix.net/rik0/
      | tenetevi riso e
forum: 
http://www.akropolix.net/forum/
     | bacchette per voi.

 Python o Ruby. Forse direi il primo.
Ma dai? Davvero???  : p
-- 
Mr. Fix @ work


evita il python. :P
no scherzo, il python non e' male. Ma io inizierei col C. Una volta che
sai quello imparare un altro linguaggio e' una passeggiata.

 sai quello imparare un altro linguaggio e' una passeggiata.
Come mai dici questo?
-- 
Lawrence - 
http://www.oluyede.org/blog
http://www.neropercaso.it
"Nothing is more dangerous than an idea
if it's the only one you have" - E. A. Chartier

 Come mai dici questo?
Perché saper programmare trascende dal linguaggio  :)

 Perché saper programmare trascende dal linguaggio  :)
Ah se fosse vero :-)


 Ah se fosse vero :-)
Ma č vero :|

 Ma è vero :|
davvero? :)

 Ma è vero :|
Non sempre. Imparare C e basta magari non ti renderà mai esperto nella
programmazione ad oggetti o funzionale, perchè ci sono paradigmi che
alcuni linguaggi implementano e supportano e altri no.


 
Io mi studierei java, ma anche un pò di C non guasta mai!!!!

 quale linguaggio?
Ma soprattutto ... ambito ueb?

 Io mi studierei java, ma anche un pò di C non guasta mai!!!!
Non è un buon consiglio. Java è un linguaggio inutilmente macchinoso e
complesso, che spesso e volentieri mette i bastoni fra le ruote invece
che aiutare.
E su tutto non vale nemmeno il discorso del "partiamo dal basso" per
imparare come funziona la macchina.
Riguardo alle GUI è sono molto lente e pesanti, e spesso non
particolarmente integrate. Se usi Cocoa Java, stai usando un framework
deprecato che potrebbe venire dismesso da un momento all'altro.


 sai quello imparare un altro linguaggio e' una passeggiata.
Della serie: se resisti resti. Peccato che prima di fare qualcosa di
interessante e che porti soddisfazione (fatto bene) passa un po' di
tempo (a meno che uno non abbia interessi *molto* teorici e non abbia
assolutamente voglia di stupire gli amici e/o la ragazza etc etc etc).
Complessivamente non lo vedo come un buon primo linguaggio: in primo
luogo non abitua a pensare ad oggetti. Cosa senza dubbio non
desiderabile.
Passare al fratello maggiore C++ significa invece partire dal singolo
linguaggio più complesso (fra gli imperativi mainstream) che sia stato
concepito. Un linguaggio che per essere padroneggiato un minimo richiede
anni di esperienza.
A suo tempo io sono praticamente partito con il C, poi mi sono appunto
fatto il C++ (oltre che un po' di linguaggi come Lisp, Perl etc etc
etc).
Quando ho conosciuto Python il mio apprendimento si è velocizzato in
modo esponenziale. Ho potuto affrontare progetti complessi che
altrimenti da solo non avrei mai potuto attaccare (senza volere perderci
dei mesi), ho imparato nuove tecnologie, nuovi stili e tutto.
E questo ha trascinato anche la qualità del mio codice in altri
linguaggi (vuoi C, vuoi C++... Perl lo ho gassato e Lisp lo ho
trascurato... di recente sul versante funzionale ho ripreso con Haskell
e OCaml).


 
Non mi trovi daccordo solo sul fatto che sia macchinoso e complesso. Il 
fatto che sia completamente orientato agli oggetti secondo me aiuta 
molto. Forse è lento su macchine poco potenti ma cmq risulta una 
soluzione molto portabile. Per quanto riguarda le GUI, la gestione degli 
eventi AWT è abbastanza ostica per un nubbio magari e il packages SWING 
è sicuramente pesante ma con SWT le cose migliorano sia come 
integrazione col sistema operativo usato dall'utente sia come 
prestazioni. ciao ciao

 prestazioni.
Quanti progetti usano SWT a parte Eclipse e compagnia bella?


 alcuni linguaggi implementano e supportano e altri no.
Gosh! Certo, non impari neanche il giardinaggio... ;)

 Gosh! Certo, non impari neanche il giardinaggio... ;)
?


 Quanti progetti usano SWT a parte Eclipse e compagnia bella?
Forse Azureus (su "monitoraggio attività c'è quel nome di fianco
all'icona di azureus)

 desiderabile.
E' un buon primo linguaggio, perché pensare ad oggetti non è certo la
prima cosa da fare!

 ?
Ci credo bene che con il C non impari programmazione funzionale e ad
oggetti... ma ciò non esclude che non toglie che la buona programmazione
prescinde dal linguaggio :)

mi sono leggermente confuso! :)
grazie delle risposte, forse non ero stato preciso nella richiesta:
non ho in mente di studiare un linguaggio usabile sul web,ma
semplicemente un linguaggio che mi permetta di avvicinarmi alla
programmazione in modo poco doloroso ma allo stesso tempo non
esclusivamente didattico(ricordo le lezioni di turbopascal 7 quando
già esisteva ilk pentium iii)....
ArAgost ha scritto:


 all'icona di azureus)
AAAAAAA Azureus... quello che mi uccide il macmini!
:)
Ciao
Ruggero

 all'icona di azureus)
Eh eh sapevo che sarebbe saltato fuori. Salta sempre fuori quando si
parla di Java e GUI. Tra l'altro non è di certo l'esempio di GUI leggera
in Java ceh si vorrebbe far passare...


 prescinde dal linguaggio :)
ma non dal paradigma, almeno non solo. Questo volevo farti capire :)


 esclusivamente didattico
Impara Python e parti da qui per imparare:
http://www.python.it/doc/Howtothink/Howtothink-html-it/index.htm


 all'icona di azureus)
Confermo. Tempo fa per farlo girare su MacIntel (a partire dal classico
.app) bisognava prendere una versione apposta di SWT da Eclipse
"nightbuild".


 prestazioni.
Migliorano, ma sono sempre dei bestioni rispetto ad altre soluzioni.


 prima cosa da fare!
Conviene abituarsi abbastanza alla svelta. È un modo di pensare che
semplifica in seguito l'apprendimento, conviene averlo presente. 


 prescinde dal linguaggio :)
Non è affatto vero. Buona programmazione in un linguaggio può essere
pessima programmazione in un altro.
E C *non* insegna la buona programmazione. Anzi: molti dei giochi tipici
che si fanno in C (vuoi per fare i fighi, vuoi perchè non si ha voglia
di scrivere codice noioso e prolisso) sono *pessime* tecniche di
programmazione.


 già esisteva ilk pentium iii)....
Ti abbiamo già risposto. Quello che cerchi è Python. O eventualmente
Ruby.


 già esisteva ilk pentium iii)....
Quindi o Python o Ruby.
Io, che son dell'altra sponda rispetto a sti MacOsten e Lolloyede (che non so
nemmanco chi sono), ti spedisco a 
http://poignantguide.net/ruby/
, che magari
se ti stufi almeno hai riso un bel po'.
Stai sempre ad almeno un km da C, 5 da C++.
  ngw

 nemmanco chi sono), 
Ah ah infingardo!


 
Concordo. Basta solo guardare Gtk.

 risulta bruttina sulla maggior parte delle piattaforme (sopratutto su mac)
In che senso? In particolare su Mac si mappa sui widget nativi, quindi
non è tanto Swig ad essere brutto, quanto i programmatori Java che non
conoscono le convenzioni di MacOS X.


 Stai sempre ad almeno un km da C, 5 da C++.
Su, su, non sono poi cosě cattivi :)

 Python o Ruby. Forse direi il primo.
Vuoi che il Martelli ti dia una pacca sulla spalla?

 quale linguaggio?
Se vuoi un consiglio, vero, non come quelli che ti sono arrivati qui,
comincia con lo scriverti script bash, magari creandoti una libreria di
funzioni, che facciano quello che ti serve. Da qui poi, magari, evolvi
verso altri linguaggi.
Fidati, è il modo migliore per conoscere dalle basi un'architettura.

 modo esponenziale. Ho potuto affrontare progetti complessi che
Il Python č bello, stupendo, ma lento da morire. E soprattutto, di
nicchia. Ci si sviluppano sono poche componenti di pezzi software. Se
vuoi stare sul mercato, vai verso C e C++ (e Java): con solo Python, non
ti caga nessuno.

 poco, non ce l'ho ancora fatta
No c'è un'equivalente della poignant (io ho imparato Ruby leggendo
quella "cosa"), noi Pythonisti non siamo cosi flesciati :D
Però diveintopython è un ottimo punto per cominciare.


 ti caga nessuno.
Se lo dici tu, proprio ieri ero a Firenze da un'azienda che cerca
Pythonisti ;-)


 Però diveintopython è un ottimo punto per cominciare.
:*

 nemmanco chi sono), ti spedisco a 
http://poignantguide.net/ruby/
, che magari
io spero in una pubblicazione  cartacea  della poignant :))

 Perň diveintopython č un ottimo punto per cominciare.
...ah, una cosa. Usare il Python preinstallato, o quello con la ide come
suggeriscono loro?

 Spero voglia stupire la ragazza con altre "argomentazioni"
Cioč enfatizzando l'aspetto "++" del C ?

 Fidati, è il modo migliore per conoscere dalle basi un'architettura.
Un'architettura ?

 ho fatto un pň di assembler
Non era assembly ?

 suggeriscono loro?
Il python preinstallato in OSX è vecchio di almeno 36 mesi, lascia
perdere :D
Scaricati il dmg da 
python.org


 programmi con mac,giusto un consiglio su cosa evitare!
Per il mac senza ombra di dubbio vai su Python.
Py-ObjectiveC 
http://pyobjc.sf.net
 e` il miglior binding a tutti i
framework Apple esistente dopo Objective-C stesso.
Per farti un esempio... Avviando XCode puoi creare una semplice
applicazione Cocoa (contatore come quello che fa qua:
http://www.macocoa.omitech.it/capitoli/mc009.htm
 ) e lo puoi fare
scrivendo _SOLO_ questo codice:
#
#  pyobjtestAppDelegate.py
#  pyobjtest
#
from Foundation import *
from AppKit import *
from PyObjCTools import NibClassBuilder
class Counter(NSObject):
    val = 0
    def incrementa(self):
        self.val += 1
 
    def decrementa(self):
        self.val -= 1
class CountCtrl(NibClassBuilder.AutoBaseClass):
    counter = Counter.alloc()
 
    def __init__(self):
        super(CountCtrl, self).__init__()
        self.cntDisp.setIntValue_(self.counter.val)
 
    def countUp_(self, sender):
        self.counter.incrementa()
        self.cntDisp.setIntValue_(self.counter.val)
 
    def countDown_(self, sender):
        self.counter.decrementa()
        self.cntDisp.setIntValue_(self.counter.val)
Se sostituisci il _ alla fine di alcuni metodi con i : ottieni il codice
in Objective-C (a grandi linee in realta`). Sono talmente integrati che
la documentazione di PyObjectiveC e` la stessa di Cocoa/Objective-C.
-- 
Valentino Volonghi aka Dialtone
Now Running MacOSX 10.4
Blog: 
http://vvolonghi.blogspot.com
New Pet: 
http://www.stiq.it

 Stai sempre ad almeno un km da C, 5 da C++.
peccato che il 99% degli apparecchi non pc che usi ha il software
scritto in C (o assembler). Senza contare che il kernel, come la
maggior parte dei servizi di *nix e' scritto in C.

 Non era assembly ?
Infatti. L'assembler è il programma.


 
E' vero tecnicamente assembly è il linguaggio e l'assembler è il 
compilatore ma a furia di sentire tutti chiarmarlo assembler (mio prof. 
compreso) sono stato contagiato.
Da wikipedia ---> Molto spesso viene utilizzato impropriamente il 
termine assembler in riferimento al linguaggio assembly.
Azz sono stato contagiato scusate .... :-D

 maggior parte dei servizi di *nix e' scritto in C.
E quindi?


:

Mi pareva di aver letto "semplice", "didattico" e che "non scoraggi".
Inoltre non so, magari e' solo una mia idea, ma non ce lo vedo uno a scrivere
un kernel come primo progetto, lo vedo meglio col blog o l'applicazioncina
desktop, visto anche il gruppo su cui l'ha chiesto.
Poi magari tu hai letto un altro post.
  ngw 

 verso altri linguaggi.
Ma rotfl.
È buffo che tutte le argomentazioni che hai portato contro Python, si
applicano al cubo al tuo consiglio.


 ti caga nessuno.
Probabilmente non hai letto il subject "iniziare a programmare".
Facendoti le ossa in Python, hai una curva di apprendimento molto meno
ripida, con il risultato che puoi buttarti nel mercato complessivamente
prima. Partire direttamente da C o C++ fa si che uno si possa investire
seriamente nel mercato dopo molto piů tempo.


 maggior parte dei servizi di *nix e' scritto in C.
E chi come primo progetto didattico non scrive un kernel? 
Solo quelli che scrivono un sistema di protezione dai bufferoverflow da
integrare direttamente in gcc, direi.
Dai su, non siamo ridicoli.


 dato linguaggio. Poi se ha bisogno di altro, passa.
Certamente di programmatori che siano simultaneamente esperti e
"monolingua" ce n'e`, ma piuttosto pochi, anche perche` spesso chi ha la
"mentalita`" del buon sviluppatore software _si diverte_ a imparare e
provare molteplici linguaggi e tecnologie.
Alex

 aziende che lavorano in python ce ne sono (e pagano pure bene).
Non lo metto in dubbio, ma ripeto, saranno applicazioni di nicchia.  In
C++, collaboro con una software house moooolto famosa per lo sviluppo di
un ERP moooolto famoso (e si fanno bei soldini). E li di python non c'č
nulla...

 nulla...
A questo punto mi domando cosa intendi tu per nicchia.


 nulla...
Quindi siccome nella azienda (famosa) per la quale collabori non c'è
Python, Python è di nicchia?
Spiega. Spiega anche cosa intendi con "di nicchia".


 A questo punto mi domando cosa intendi tu per nicchia.
No. Chiediti, tu, cosa è stato programmato in python che fa guadagnare
milioni di euro ad una azienda.
SAP, Peoplesoft, JDEdwards, sono per caso fatti in Python???

 Spiega. Spiega anche cosa intendi con "di nicchia".
Come sopra. Senza rancore.
P.S.
Ho 47 anni, sono nell'informatica da 26;  conosco "benino" (si fa per
dire) un bel pò di linguaggi (compreso il python), "benone" il C ed il
C++; sono consulente freelance e questi ultimi 2 linguaggi sono quelli
che mi hanno permesso un buon tenore di vita a me ed alla mia famiglia.
Il resto, sono chiacchiere.
Riempiamoci la bocca di belle parole, ma, a meno che tu non faccia
l'emigrante (sottopagato) come ha fatto qualcun'altro in questo
newsgroup (e di cui, ci riempie le scatole appena può sperperando a
destra ed a manca che lavora per google; ogni riferimenti a cose o
persone è puramente casuale).
Occasioni come quelle, ne sono piovute a migliaia durante gli anni della
neweconomy. Chi ha avuto la fortuna di non bruciarsi, e di insistere con
le proprio capacità, credimi, ce l'ha fatta.
 

 Pythonisti ;-)
buon per te. Prendila al volo quell'offerta.

 la documentazione di PyObjectiveC e` la stessa di Cocoa/Objective-C.
Senza presunzione alcuna, ma, per piacere. astieniti dall'elargire
consigli del genere.

 aziende che lavorano in python ce ne sono (e pagano pure bene).
Scusami ma google č estremamente verticale... eppoi, dai. Vuoi proprio
farlo apparire questo martelli eh?

 applicano al cubo al tuo consiglio.
Hai visto?

 Hai mai scritto un algoritmo in C ed in python?
Si, e quindi?


 milioni di euro ad una azienda.
Mmm chiedilo a Google, magari ti sanno rispondere. Puoi anche chiederlo
alla Nasa...
comunque, le prime che mi vengono in mente:
http://www.python.org/about/success/


 Eh si. Invientiamo sempre la ruota daccapo.
Non mi pare che ottimizzare una funzione significhi reinventare la
ruota.


 
http://www.python.it/doc/Howtothink/Howtothink-html-it/index.htm
Se vuoi programmare per diletto, impara Python. O Ruby. Se vuoi fare
$$SOLDI$$ vai senza dubbio su C e C++ senza perdere tempo alcuno.

 Dai su, non siamo ridicoli.
Noi... ?? no...

 Si, e quindi?
Ok ti sei risposto da solo allora.

 
http://www.python.org/about/success/
Eh. So' poche. Dai sforzati ancora.

 ruota.
Mh. A questo punto buttiamo tutto il codice riutilizzabile.

 
http://www.python.org/about/success/
Oh mamma mia... non ha i perso tempo eh nella tua ricerca...  :) (p.s.
l'avevo viste già... ma... ritieni che siano significative?)

 $$SOLDI$$ vai senza dubbio su C e C++ senza perdere tempo alcuno.
Sei davvero convinto che si faccia la fame con Python, eh :)


 l'avevo viste già... ma... ritieni che siano significative?)
Sono use case e success stories, mica un db di tutte le aziende del
mondo che usano Python...
ps. non cercare di essere simpatico, non lo sei.


 sponsorizzi... oppure lo utilizzi solo perchè fa "figo" qui?
Ci lavoro anche, ma fa niente se tu non lo capisci. Pensavo portassi
argomentazioni un pò più intelligenti di "siccome C è più diffuso impara
quello"


 Ok ti sei risposto da solo allora.
Non mi pare, non avrei aggiunto "e quindi"


 Mh. A questo punto buttiamo tutto il codice riutilizzabile.
A questo punto programmiamo solo in ASM, C e C++ sono troppo di alto
livello.


 Pythonisti ;-)
Dove, per curiosità ? 
S.
-- 
Stefano Rodighiero      |  
http://larsen.perlmonk.org
mailto:
lar...@perl.it
   |  Italian Perl Mongers: 
http://www.perl.it

 ps. non cercare di essere simpatico, non lo sei.
Oh. Mi sa che te la stai prendendo.

 Non mi pare, non avrei aggiunto "e quindi"
Oooookkkkk.

 livello.
No no. Tu programma pure in Python cosě le commissioni ce le pappiamo
noi :))))

 Sei davvero convinto che si faccia la fame con Python, eh :)
La fame no. Ma ricchi non si diventa. Chiedilo al Martelli.

 quello"
Beh arricchisci le ns conoscenze. In che modo ci lavori? Che progetti
hai fatto quanto ti hanno fruttato?

 La fame no. Ma ricchi non si diventa. Chiedilo al Martelli.
1 - non mi pare che l'OP abbia detto "voglio diventare ricco" ma "voglio
imparare a programmare"
2 - non si diventa ricchi programmando, si diventa ricchi realizzando
idee grandiose, il che prescinde dal linguaggio
3 - trova argomentazioni serie please, perché non c'è discussione cosi


 Dove, per curiosità ? 
www.develer.com


 hai fatto quanto ti hanno fruttato?
Ti ho risposto nell'altro post, si parla di imparare a programmare non
di quanto si guadagna. Tra l'altro non è il linguaggio che determina il
tuo stipendio.


 Oh. Mi sa che te la stai prendendo.
No, ma non mi diverto a rispondere a cose stupide.


 Linus Torvald. Sicuro
Ahahahahahahahahahahahahaahahahahahahahaahahahahahahaahahahaha
Ahahahahahahahahahahahahaahahahahahahahaahahahahahahaahahahaha
Dico agli altri perche` vedo che il thread e` esploso con sto tizio...
Don't Feed The Troll
-- 
Valentino Volonghi aka Dialtone
Now Running MacOSX 10.4
Blog: 
http://vvolonghi.blogspot.com
New Pet: 
http://www.stiq.it

 wrote:
Sentivo odore di merda, non pensavo che le fogne di tutta italia
avessero rigettato la loro piu` grande creazione.
BENVENUTO!!!
flush


 
www.develer.com
Ok. Se ti capita di trasferirti a Firenze (mi è parso di capire che 
sei venuto per un colloquio: nel caso, in bocca al lupo .) ) fammi 
un fischio, così ti invito alle riunioni di Firenze.pm.
Siamo perlisti, ma per come la vedo io siamo cugini dei pythonisti, 
non nemici. Inoltre abbiamo senza dubbio punti in comune: l'amore 
per la programmazione, i linguaggi dinamici, e così via...
Se anche questo non dovesse bastare, considera che noi sappiamo già 
dove si trova la birra buona :)
ciao,


 
http://www.norvig.com/21-days.html

 Don't Feed The Troll
Si si don't feed the troll.

 tuo stipendio.
Questo è vero. Dipende se programmi per diletto o per lavoro.

 BENVENUTO!!!
eheheheh ma se scrivi così significa che tu sei la merda... eheheheh  

 3 - trova argomentazioni serie please, perché non c'è discussione cosi
3a) Non devo trovare proprio nulla eh. Sei tu che rispondi. Se vuoi,
plonkami non c'è nessun problema. Non voglio far polemica con nessuno
sto solo esprimendo le mie idee così come fai tu. Se non ti garba, fai
in modo da non leggere le mie risposte pls.

 No, ma non mi diverto a rispondere a cose stupide.
Come vuoi. Liberissimo di non rispondermi.

 in modo da non leggere le mie risposte pls.
Si infatti smetterò di leggere le stupidate che scrivi.
-- 
Lawrence - 
http://www.oluyede.org/blog
http://www.neropercaso.it
"Nothing is more dangerous than an idea
if it's the only one you have" - E. A. Chartier

 dove si trova la birra buona :)
Ah haha sono astemio :P


 Si infatti smetterņ di leggere le stupidate che scrivi.
OK. Ma per piacere sii coerente. Registra MacSOUP.

 Linus Torvald. Sicuro
Ben lungi dall'essere stato il suo primo, secondo o terzo progetto.
Trovi il tutto documentato su qualsiasi libro parli della storia di Linux,
dalla biografia di Torvalds stesso (perche' e' cosi' che si chiama) ai vari
Codice Ribelle e libercoli compagni.
Inoltre, Linux e' nato da una esigenza reale, che dio ci scampi dall'ennesimo
kernel Unix, ce ne sono millemila.
  ngw

 Su, su, non sono poi così cattivi :)
Io C l'ho pure usato, parlavo solo e unicamente a livello didattico.
Se stai imparando litigare con un compilatore non deve essere tra le
priorita'.
_why ce l'abbiamo solo noi, i pythonistas se lo scordano.
Avranno pure unicode, ma noi si ride quando si impara :D
  ngw

 La fame no. Ma ricchi non si diventa. Chiedilo al Martelli.
Mah, io con Ruby viaggio sui 200/250 euro al giorno, e scrivo qualche
minchiata per Oreilly e Apogeo, limito un minimo droga e battone e ci sto
dentro.
Ma te esattamente quante bastonate hai preso da Martelli per avercela su cosi'
tanto ? Frega una mazza eh, a me sta nemmeno simpatico, pura curiosita'.
  ngw

 Avranno pure unicode, ma noi si ride quando si impara :D
Ma non č che si piange a trattare unicode? :o


| |._/|_|\__/\__/\__/ | 
|        /_/ /_/      | *Si vis pacem, para papunzi

 Stai sempre ad almeno un km da C, 5 da C++.
Praticamente e' il basic con qualche keyword diversa e una libreria di
funzioni o_O


 pensare ad oggetti non è certo la prima cosa da fare!
Scusa se dissento. Forse pensare *agli* oggetti no, ma pensare *ad*
oggetti e' quasi inevitabile, persino con un linguaggio non OO.
Cioe', se non "visualizzi" il risultato di quello che scrivi, come
scrivi? A tentoni? .-)


 funzioni o_O
Soggetto?


 oggetti e' quasi inevitabile, persino con un linguaggio non OO.
Sarà, ma a quanto vedo la gente fa veramente tanta fatica ad afferare il
concetto, per cui forse non è così naturale

 concetto, per cui forse non è così naturale
Se la gente non lo trova naturale, e' perche' non gli viene spiegato in
modo naturale. 
Una volta avevo tirato fuori 'sta roba che vado a riciclare:
  c'e' un tizio seduto a una scrivania. Tu apri la porta.
  La porta scricchiola, il tizio sente scricchiolare la porta e si gira,
  facendo cigolare la sedia. Intanto la finestra si spalanca per via
  della corrente d'aria, sbatte, e il vetro va in mille pezzi facendo 
  "crash".
Nella vita reale non sei tu a dire alla porta di scricchiolare, al tizio
di voltarsi, alla sedia di cigolare, al vento di soffiare e alla
finestra di rompersi. Lo scricchiolio e' una proprieta' della porta,
la sensibilita' allo scricchiolio e' una proprieta' del tizio,
il suo voltarsi stimola il cigolio della sedia, eccetera.
Qualunque entita' ti trovi a maneggiare in un programma, che sia una
variabile, una costante, una funzione, una subroutine o il programma
stesso, si porta dietro una quantita' di cose che puo' fare o no, che ci
puoi fare o no, che fa automaticamente o no (e lo so che il concetto di
oggetto in OOP e' piu' sviluppato di cosi'). Se non consideri le
caratteristiche - chiamiamole proprieta' - di cio' che maneggi, come lo
scrivi un programma?


 Soggetto?
Il Ruby visto li', su poignantguide.


 conoscono le convenzioni di MacOS X.
ora pero' fai un esempio di tulchit, per il linguaggio/dialetto che
preferisci, che non appaia merda su *ogni* piattaforma tranne, al piu',
una (quella sulla quale e' stato *orientato*)

 milioni di euro ad una azienda.
Se vanno bene anche i miliardi di dollari invece dei milioni di euro,
penso che Google sia una risposta sufficiente, no?  Naturalmente non e`
che andiamo a raccontare in giro cosa esattamente programmiamo in C++,
cosa in Python, cosa in Java, e via elencando, ma, per citare il collega
Peter Norvig (guru del Lisp e dell'intelligenza artificiale, gia`
Direttore della Search Quality, e attualmente della Ricerca, a Google),
"Python has been an important part of Google since the beginning, and
remains so as the system grows and evolves."
Poi se interessa imparare piu` dettagli, basta far richiesta di
assunzione a Google, passare le selezioni preliminari, firmare i dovuti
Non Disclosure Agreements per continuare il processo di selezione, e a
questo punto si possono fare tante domande e avere abbastanza
risposte-).  Ma sapendo il numero di committer di Python che lavorano a
Google (in ordine cronologico d'assunzione: Greg Stein, Jeremy Hylton,
il sottoscritto, Neal Norwitz, Guido van Rossum, e ora anche Thomas
Wouters, che ha accettato la nostra offerta di lavoro e iniziera`
presto) dovrebbe essere abbastanza chiaro che l'amico Norvig non sta
facendo DISinformazione...;-).
Dettaglio curioso ma importante: ciascuno dei "Python committer"
suddetti (e ovviamente anche a metterci tutti assieme saremmo solo una
frazione minuscola dei programmatori che sviluppano in Python a
Google:-) lavora in un ``reparto'' diverso, sviluppando per Google
software in ben diversi ambiti -- tanto per sottolineare che questa
"nicchia", qualsiasi essa sia, non e` solo *una* (singolare;-).
Alex

 La fame no. Ma ricchi non si diventa. Chiedilo al Martelli.
Ma va, putacaso proprio oggi l'azienda per cui lavoro (e con cui presi
contatto inizialmente perche` erano gli acquirenti numero 1 del mio
secondo libro, "Python in a Nutshell", quindi pensavo di offrirgli
consulenze) ha annunciato i profitti del trimestre scorso, stupendo (di
nuovo) Wall Street e facendo impennare la quotazione delle azioni nelle
contrattazioni post-chiusura.  Considerando il numero di opzioni che mi
spettano come "Uber Tech Lead", e il loro strike price (deducibile
sapendo che lavoro qui da quasi 2 anni), si potrebbe sicuramente dire,
senza distorcere i fatti, che "sono diventato ricco" proprio grazie a
Python (poi dipende naturalmente dalla definizione di "ricco" che uno ha
in mente, certo;-).  Certamente ho guadagnato molti piu` soldi con
Python che con tutti gli altri linguaggi di programmazione messi
insieme...;-).
Alex

 persone è puramente casuale).
Cosa ti fa lascia pensare che io sia "sottopagato"?  Fra i requisiti di
un visto O-1 ("Alien of Exceptional Abilities" -- non e` il ``normale''
H-1B!) c'e` (anche) quello di dimostrare, convincendone gli appositi
uffici del governo USA, che il candidato riceve, e cito:
"""
high salary or other remuneration commanded by the individual for
services.(This must be accompanied by contracts or other reliable
evidence.);
"""
Sai, in USA sono dei materialisti, e, per dimostrare che uno ha
"capacita` eccezionali", serve mostrare anche un salario elevato...
Oltre tutto, dal punto di vista della documentazione per il visto O-1,
le stock option non contano (perche` le cifre in gioco non sono
"reliable": sono positive solo se le azioni crescono di valore nel
futro), quindi abbiamo (io, Google e gli avvocati pagati da Google)
dovuto dimostrare al governo che gia` solo la mia remunerazione
"affidabile" (salario e benefit: penso che neppure il target bonus,
essendo pur esso teoricamente "aleatorio", conti...), offertami da
Google per contratto, era gia` elevata.  Se poi ci aggiungi il bonus
(concretamente assai lucroso, specie sinche` le prestazioni mie
personali e i risultati di Google nel complesso continuano ad essere
eccellenti), mi sembra che la tua affermazione sia, non solo infondata,
ma addirittura piuttosto sciocca, essendo priva di qualsiasi base...
anche senza considerare che, in concreto, le sole stock option sino ad
ora mi hanno gia` reso molto di piu` di salario+bonus;-).
Come ingegnere libero professionista, con base in Italia ma sempre in
giro per mezzo mondo a sviluppare (piu` che altro) in Python, avevo
introiti gia` molto soddisfacenti; passando a Google, questi introiti
sono aumentati molto sostanzialmente  anche ragionando in puri termini
di salario e bonus, e aumentati in misura quasi ridicola considerando
anche le stock option (che non hanno un valore "solo teorico": dopo i
primi dodici mesi di lavoro, ogni mese una frazione delle mie opzioni
puo` essere esercitata ed incassata in bei bigliettoni fruscianti).
Ti riempira` anche le scatole, ma e` la realta`, pura e semplice, e
nella sua semplicita` smentisce tutto quello che stai dicendo e ne
dimostra la sostanziale "bancarotta"...
Alex

 wrote:

QT permette di fare interfacce-utente che appaiono buone sia su Windows,
sia su Linux &c, sia su Mac/Aqua.
Alex

 Il Ruby visto li', su poignantguide.
Beh permettimi di sorridere :-)


 una (quella sulla quale e' stato *orientato*)
QT mi pare che se la cavi bene, almeno per quanto ho potuto vedere.


 QT mi pare che se la cavi bene, almeno per quanto ho potuto vedere.
Come si puo` osservare ad es. con strace su Linux, Google Earth ad
esempio usa QT, e non mi pare che il consenso di chi l'ha provato sia
che "appaia merda", ne` su Windows, ne` su Linux, ne` su Mac.
Alex

 QT mi pare che se la cavi bene, almeno per quanto ho potuto vedere.
nell'ottica di chi si contenta gode?
esempi di *belle interfacce* che suppartano bene le funzioni di sistema?

 Ah haha sono astemio :P
noooooooooo... :P
-- 
*hic*

 Hai visto?
Deduco che stai conducendo la discussione da troll.
Vedo che le risposte ti sono arrivate, non ho molto da aggiungere.
-- 
blog:  
http://www.akropolix.net/rik0/blogs
 | Uccidete i filosofi,
site:  
http://www.akropolix.net/rik0/
      | tenetevi riso e
forum: 
http://www.akropolix.net/forum/
     | bacchette per voi.

 scontro iniziale mi sta simpatico.
Grazie, e ricambio ;-)
(Con questa citazione mi hai anche permesso di testare i miei filtri su 
Thunderbird, e a quanto pare funzionano :-)
Spero di non averti dato un'idea distorta dei perlisti, che in genere 
sono molto più simpatici e civili del sottoscritto (specialmente poi 
quelli di Firenze), e con i Pythonisti sono addirittura fraterni, tanto 
che qualcuno ha scritto perfino 'sta cosa qui:
http://search.cpan.org/~neilw/Inline-Python-0.22/Python.pod#NAME
Ciao,
Emanuele.

 Il Ruby visto li', su poignantguide.
Non ci assomiglia nemmeno nel pisciare, permettimi.
E' chiaro che se ti fermi alla microintroduzione trovi gli equivalenti di
print e altre operazioni elementari, ma gia' i cicli sono un altro mondo.
  ngw

 Alex
Concordo sul fatto che QT permette di creare GUI portabili e decisamente 
"belle" su molti sistemi (non so se avete provato, ad esempio, Lyx su 
mac e su linux) e che sei disponibile per una buona quantità di 
linguaggi ma non dimentichiamo i problemi di licenza. La versione 
gratuita permette solo di rilasciare in gpl (non si può usare neanche un 
altra licenza libera ... azz) e credo che il costo della licenza 
commerciale sia elevato per una persona che vuole, come da oggetto 
"iniziare a programmare". Secondo me, che preferisco di gran lunga la 
BSD alla GPL, questa è una forte limitazione. Cmq secondo me 
"superpapero" a smesso di leggere questi post da quando abbiamo iniziato 
a fare guerre di religione sui vari linguaggi (non siamo un pò OT con 7 
O e 4 T)?
ciao a tutti

uliano wrote:

(Oltre a Qt e GTK+)
WxWindows:
http://www.wxwidgets.org/
e perfino il vecchio Tk, che con il tema Tile offre widget con look 
nativo praticamente su tutte le piattaforme (compreso Mac OS, X e Classic):
http://tktable.sourceforge.net/tile/
E per entrambi ci sono binding per tutti i linguaggi più diffusi.
Ciao,
Emanuele.

 mac e su linux)
pensa che lyx su osx l' avrei portato come esempio di risultato *molto
modesto*...

Emanuele Zeppieri <emazep@REMOVE_THIStiscali.it> wrote:

e queste sarebbero ben intrgare col sistema ROTFL
proprio vero che chi si contenta gode eh

uliano ha scritto:

Davvero? ha me tutto sommato non sembrava male!!!!

 wrote:

rispetto a cosa? alla media (di cacca) delle gui per i vari linux, in
cui la coerenza tra programmi diversi non e' nemmeno  opzionale
... dai l'esperienza di osx e' altro...

 print e altre operazioni elementari, ma gia' i cicli sono un altro mondo.
No no, me lo sono letto tutto fino in fondo e divertendomi come
giustamente prevedevi tu. Diversa terminologia, identici concetti
eccettuata giusto la ricorsivita' delle funzioni, ahime'.


 eccettuata giusto la ricorsivita' delle funzioni, ahime'.
Ce lo vedo... BASIC on Rails. =:|

 ... dai l'esperienza di osx e' altro...
Gia`... E` per quello che ho 4 diverse UI in programmi tutti rilasciati
da Apple.
Safari, iTunes 7, IPhoto, Last.fm, Skype...
tutti diversi. Pero` l'esperienza osx e` altro...
-- 
Valentino Volonghi aka Dialtone
Now Running MacOSX 10.4
Blog: 
http://vvolonghi.blogspot.com
New Pet: 
http://www.stiq.it

 
http://tktable.sourceforge.net/tile/
http://tktable.sourceforge.net/tile/screenshots/demo-aqua.png
http://www.muonics.com/extimgs/smithy-tile.png
Brutto!
:|

uliano wrote:

Vediamo un po', parli per partito preso, o ti è mai capitato di usare 
un'applicazione basata sui predetti toolkit? Se sì, quale?
E quali sarebbero le carenze di integrazione col sistema che hai rilevato?
Beninteso, trattandosi di toolkit cross-platform qualche carenza c'è (ma 
non te le dico, ché sono curioso di sentirle da te ;-) ma nulla da far 
dire che "appaiono una merda su *ogni* piattaforma".
Emanuele.

 :|
A parte il fatto che a me piacciono (tranne una), a cosa ti stai 
riferendo, al rendering dei widget (che tra l'altro neanche puoi 
giudicare da uno screenshot) o all'organizzazione della UI di quelle 
specifiche applicazioni? (Che è responsabilità del programmatore e non 
del toolkit).
Emanuele.

 riferendo, al rendering dei widget (
Toolbar, scrollbar, quella riga veramente orrenda sotto la barra del
titolo, il testo con la riga in mezzo nella cornice del frame, il testo
centrato nel menubutton... sono tutti *simili*, ma assolutamente non
uguali. Sembra di giocare a "trova le 10 piccole differenze" :)
-- 
La soluzione NON è a pagina 46.

ArAgost wrote:

Guarda, io uso con una certa frequenza pgAdmin
http://osx.iusethis.com/app/pgadminiii
che è basata su wxWindows, e ti posso assicurare che il rendering di 
tutti i widget più semplici (che sono anche i più comuni), tra cui 
quelli da te citati, è assolutamente perfetto.
Certo, alcuni widget più complessi (gridview e roba simile) non hanno 
certo un aspetto nativo, ma si tratta appunto solo di questi.
Poi in realtà come dicevo molto dipende non dal toolkit ma 
dall'applicazione, che dovendo essere cross-platform non può seguire 
strettamente le UI guideline di un solo specifico ambiente, per cui già 
a prima vista hai la sensazione di qualcosa di alieno ma, appunto, non 
dipende dal toolkit in sé.
Emanuele.
-- 
What does VISTA mean?
Viruses, Infections, Spyware, Trojan horses & Adware.

 Penso si riferisse al concetto di coerenza, che latita alquanto...
OK, proprio come pensavo, quindi non parliamo del toolkit, ma del 
programmatore ;-)
Emanuele.
P.S.
Beninteso, pure il povero programmatore ha le sue attenuanti, visto che 
deve scrivere una cosa cross-platform.


 tutti diversi. Pero` l'esperienza osx e` altro...
sei malato
mettici vicino lyx e ti accorgi di cosa vuole dire *diverso*
PS bibblepro win osx &linux con dei glitch da redraw su osx da paura
(per non parlare di una operativata' molto windoziana)

 dire che "appaiono una merda su *ogni* piattaforma".
su vogliamo gli esempi di strepitose cul apps multipiattaforma ben
integrate con tutti gli ambienti

 deve scrivere una cosa cross-platform.
ma rotfl
allora TUTTE le apps xplataform sono incoerenti (su tutti le piattaforme
-1, almeno) ma no lui da la colpa a TUTTI i programmatori
poi si accorge che sono tutti quindi li assolve! :-D
ma non e' che sono il tulchit che sono intrinsecamente limitanti? :-O

 (per non parlare di una operativata' molto windoziana)
screeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeek


 Questi due 'cazzo c'entrano con Apple?
Nulla pero` sono diversi :). Non sono mica io che dico che la UI su OSX
e` omogenea.


 dire che "appaiono una merda su *ogni* piattaforma".
In particolare Tk e wx a me non piacciono per davvero. Specie su MacOS
X. Su tk sospendo il giudizio, in quanto non conosco l'estensione da te
suggerita, parlo della versione "piana".
wx su GNU/Linux fino a poco tempo fa assomigliava a GTK1. Immagino che
adesso lo abbiano passato a GTK2 (spero). Su Windows non mi pareva male
(non peggio degli altri, specie se uno leva la orrida interfaccia
gommosa).
GTK2 sotto GNU/Linux lo trovo invece eccellente. Buono su Windows.
Adesso aspetto di avere un po' di tempo per smacchinare con qualche
libreria e farlo girare con MacOS X.
Qt mi sembra ottimo su Windows e ottimo su Linux. Per inciso, Adobe
sosteneva di usarlo per Photoshop e amici vari, quindi direi che anche
su MacOS X non è male.
-- 
blog:  
http://www.akropolix.net/rik0/blogs
 | Uccidete i filosofi,
site:  
http://www.akropolix.net/rik0/
      | tenetevi riso e
forum: 
http://www.akropolix.net/forum/
     | bacchette per voi.

 
http://search.cpan.org/~neilw/Inline-Python-0.22/Python.pod#NAME
Pazzesco :)


 eccettuata giusto la ricorsivita' delle funzioni, ahime'.
Mi fai un blocco in Real Basic? Oppure scrivi un modo semplice per fare
la delegazione. Io ho rotto le palle a tutto il newsgroup *e* sul forum
e mi hanno detto, plain and simple, che non si può.
Se non nel metodo tedioso di scrivere tutto a mano.


 screeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeek
sei grottesco
non ci provi neanche ad argomentare

 esempi di *belle interfacce* che suppartano bene le funzioni di sistema?
Se puoi indicarmi ad esempio dei siti che critichino il "look and feel"
di Google Earth, giusto per dire una applicazione che usa appunto QT,
apprezzerei (anche per poterli a mia volta segnalare ai colleghi che si
occupano di quel prodotto e piu` in generale di "user experience").  O,
per fare un altro esempio, che mi dici di Photoshop Elements --
specificamente, quali aspetti dell'interfaccia utente di PE (fatta con
Qt) trovi "brutti" o comunque inferiori a quelli dell'UI del ``fratello
maggiore" Photoshop che e` costruita sui widget nativi?
Alex


Preso da un po' di buona volonta' ho deciso di dare un'occhiata da
questo Python per togliermi di torno un po' di preconcetti :)
Iniziamo malissimo... La documentazione!
Ma esiste una reference come dio comanda con tutti i moduli, le
funzioni, i valori di ritorno, le eccezioni etc. che non sia
organizzata nella forma di libro?
Vorrei un qualcosa alla Javadoc se possibile.

 Iniziamo malissimo... La documentazione!
apri una shel scrivici dentro:  pydoc -p PORTA
poi apri il browser e scrivi: localhost:PORTA
Ecco la doc dei moduli installati!
Dopodichè cerca su google diveintopython.
Dopodichè  sottoscrivi iclp e lurka :)

 Iniziamo malissimo... La documentazione!
Quale documentazione non avresti trovato? Hai già installato suppongo
ipython e hai già guardato pydoc.


 Dopodichč  sottoscrivi iclp e lurka :)
Si. Direi che funziona come sistema. Aggiungo anche installa ipython e
giochicchiaci.
Ah, magari prima di tutto scaricare Python2.5 che non fa mai male.



Come ogni buon apprendista che si rispetti :)
Grazie!


No. Sono andato sul sito di python ed ho girato in lungo ed in largo
senza trovare quello che cercavo :)
Pydoc l'ho visto ora. E' discreto anche se non capisco perche' le
eccezioni non sono documentate.
ad esempio os.open non dichiara che puo' sollevare un OSError.
ipython non ho la piu' pallida idea di cosa sia, ma ora mi informo :)

 maggiore" Photoshop che e` costruita sui widget nativi?
PE non lo uso non ti so dire come sia la sua interfaccia (mi e' parso
macchinoso abbestia una volta che lo provai ma forse era solo
l'abitudine a PS full)
BIZZARRO PERO'
che PE usi un tulchit ed esca 4-6 mesi prima per windoze... un vantaggio
stratgico del tulchit?

 Pazzesco :)
http://www.csh.rit.edu/~jon/projects/pip/
Non mi mandare a quel paese :)

 Non mi mandare a quel paese :)
mandarmi

 Pazzesco :)
Visto che roba? :-)
Inutile aggiungere che c'è un modulo Inline per praticamente qualsiasi 
altro linguaggio:
http://search.cpan.org/search?m=module&q=Inline&s=1&n=100
ed anche un comodissimo Inline::Perl
http://search.cpan.org/~autrijus/Inline-Perl-0.01/lib/Inline/Perl.pm
per scrivere codice Perl dentro un programma Perl :-)
(Scherzo, anche questo modulo ha in realtà la sua ragione di esistere).
Mi domandavo appunto se questo fosse sufficiente a farti tornare sui 
tuoi (vecchi) passi... ;-)
Ciao,
Emanuele.


oltre al già citato pgAdmin (ma di applicazioni con interfacce complesse 
in wx ce ne sono davvero una caterva: basta aggiornare ogni tanto
http://www.wxwidgets.org/
e te ne propone una nuova come "Featured App").
Paradossalmente l'ambiente dove wx mi piace meno è proprio Windows.
Per il resto mi sembra più che decente, e addirittura bellissimo, se 
considero che è cross-platform ;-)
Ciao,
Emanuele.

 ma non e' che sono il tulchit che sono intrinsecamente limitanti? :-O
Sempre piů spericolato: ora i toolkit cross-platform avrebbero 
addirittura una limitazione intrinseca e primigenia.
Non č che ogni tanto ti viene in mente di fornire qualche straccio di 
motivazione alle tue sentenze; no eh?!
Emanuele.

 Emanuele.
tu solo chiacchere blah blah blah


Decente. Si dai, devo ritirare quello che ho detto su wx.
Fermo restante che Cocoa è un'altra cosa, anche in wx si possono fare
applicazioni con una buona interfaccia utente.
Peccato ribadisco... Cocoa è un'altra cosa... (ma ho un asso nella
manica).


 ipython non ho la piu' pallida idea di cosa sia, ma ora mi informo :)
Una shell per prototipizzazione rapida e molto altro.


 Non mi mandare a quel paese :)
Non mi stupisce. Voglio dire, non è una cosa marziana.
Ma se il binding con Perl può avere senso per l'immenso CPAN, quello con
PHP mi sembra abbastanza inutile. Comunque buono che ci sia.
Anche se confesso che non mi viene in mente nessun progetto di una certa
dimensione che faccia uso dell'uno o dell'altro.


 tuoi (vecchi) passi... ;-)
In effetti no. Voglio dire, carino è carino, ma è una cosa di utilità
limitata. Certo che è bello accedere a tutto, ma fino ad ora in Python
non mi sono trovato a corto di librerie.
E comunque non credo che Perl guadagni molte librerie che non ha
attraverso questo sistema: sostanzialmente non mi vengono in mente
librerie degne di nota che manchino in Perl (come non mi vengono in
mente per Python, e Perl ne ha di più).
Che Perl poi sia flessibile nessuno lo mette in dubbio. Solo che se
programmassi in Perl, lo farei perchè mi piace programmare in Perl, non
perchè così potrei chiamare script in Brainfuck :P (anche perchè al
momento attuale nessuno ha pensato di farne uno, ma immagino che entro
le prossime 24 ore comparità...)


 
Gli do un'occhiata

 Vedo che le risposte ti sono arrivate, non ho molto da aggiungere.
Te la stai ridendo e te la stai cantando da solo.

 insieme...;-).
Si si. sei 1 mito

 tanto ? Frega una mazza eh, a me sta nemmeno simpatico, pura curiosita'.
Manco a me.

 Alex
..Martelli (le palle tu ed il fatto che lavori in google).

 Alex
K.

 dimostra la sostanziale "bancarotta"...
Purtroppo la bancarotta, quella pseudo-esistenziale è la tua: devi
essere stato un bel pò frustrato se senti il bisogno incontenibile di
venirci a propinare tutto il tuo mondo fatto di luci colori e suoni (o
mamma mia e che sarà mai): dalla tua splendida casa (hai usato la scusa
dell'airport express in un tuo post per descriverci, *minuziosamente* la
tua nuova casetta con tanto di albero) a pochi isolati da google alla
tua ricchezza fatta di fruscianti dollaroni, al prestigio (per te sia
chiaro) che vanti avere solo per il fatto che lavori in google. 
In questo mondo, normale, tu rappresenti lo stereotipo dell'uomo
complessato; autocompiaciti, magari autoappagati, ma è evidente come tu
sia "povero" dentro se non riesci per uno, e solo un post a non cagarci
il cazzo con google, dollari, case america ed ali babà... Torna con i
piedi per terra, ci sarà tantissima gente in più che ti apprezzerà per
quello che veramente sei e non per quello che in modo goffo ed ostentato
cerchi di apparire.

 non ci provi neanche ad argomentare
Cosa devo argomentare? Non hai risposto alle questioni poste...

 deve scrivere una cosa cross-platform.
Raramente è un'imposizione del medico. A me (utente) interessa
pochissimo che sia cross-platform, vedo solo che è poco coerente con il
resto dell'os!

 Stavo semplicemente giocando :)
Appunto, ma siccome quando uno gioca una delle prime cose che vuole fare
č leggere un file e robetta del genere, ti sto dicendo, quella chiamata
di sistema mappa 1-1 la open(2) dell'os e *non* č il modo piů pratico
per fare le cose.
f = open("myfile")
s = f.read()
f.close()
process(s)
Ad ogni modo ora č meglio usare lo statement with che permette di fare
RAII.


 poco coerente con il resto dell'os!
Dipende. Dipende moltissimo sull' "interessa pochissimo che sia
cross-platform".
Posto che io per primo preferisco soluzioni quanto piů possibili
conformi al look and feel del MacOS faccio notare alcune cose:
1) ci sono vaste categorie di applicazioni in cui una moderata
integrazione con l'OS č del tutto accettabile
2) in talune di queste categorie essere cross-platform (e quindi avere
la stessa applicazione sui vari sistemi) č assolutamente desiderabile
3) ci sono applicazioni di cui abbiamo beneficiato in virtů del fatto
che sono cross-platform, altrimenti staremmo senza tout court.


 Continua a sviluppare le tue utility, rimarrano tali.
Posso chiederti perchè dimostri tutta questa invidia per Alex?
Da come ne parli sembra quasi che tu lo conosca di persona e che ti
abbia fatto qualcosa di male. Nel caso ovviamente non posso che
chiederti di evitare di rompere le palle a tutto il gruppo con i tuoi
problemi personali. 
Trovo assolutamente, perdonami, da sfigato tutto questo voler fare
notare quanto tu guadagni più di Alex, quanto poco si guadagni con
questa o quella tecnologia e tutto. A me francamente non mi impippa
nulla di quanto guadagni (e tu dirai che non ti impippa dove lavori
Alex, d'altra parte la quantità di informazione media dei post di Alex è
fin troppo densa, tu per ora hai consigliato di iniziare a programmare
in Bash, ti sei vantato di quanti soldi fai e ti sei limitato a
sconsigliare una tecnologia, con motivi infondati *e* soprattutto
sbagliando del tutto target -- la domanda non era "con quale tecnologia
faccio più soldi -- )
Io personalmente fra le altre varie cose uso spesso Python, posseggo i
libri di Alex che mi aiutano (e mi hanno aiutato) moltissimo. Conosco di
persona Alex e (per quanto vale) lo considero un amico. A parte questo
lo considero una persona estremamente esperta in generale e in
particolare esperta di Python (oltre che di C++, visto che fai la posta
ai vari post di Alex dovresti comunque saperlo). Parla molto di se. È
vero. Vogliamo considerarlo un difetto? Forse si (ed è un difetto che io
stesso ho). Fa parte di una concezione di usenet (forse sbagliata) come
gruppo di amici.
D'altra parte mai l'ho visto vantarsi di quanto guadagni o meno (cosa
che tu invece fai). Semmai vedo che è entusiasta del lavoro che fa, lo
dimostra e ne parla. 
Questo su un numero parecchio elevato di post dall'alto contenuto
informativo su svariati argomenti. Ce ne fossero di più di persone così
su Usenet.
D'altra parte da parte tua vedo solo livore, non ho alcuna idea del tuo
livello tecnico (che non dubito sia alto, ma non mi ha *mai* aiutato,
per esempio non ti vedo su iclc++, iclc lo seguo meno e non ho idea e
non ho la minima voglia di fare la ricerchina su google -- ma non
contare questo post fra i miei in cui parlo di google, ti prego ). Non
solo, piombi qua e fai partire una polemica (senza peraltr alcun
fondamento) sul fatto che convenga lavorare in C++ in risposta ad uno
che chiedeva con quale linguaggio iniziare.
Io per parte mia ribadisco. Alla domanda "con che linguaggio iniziare"
rispondo a tono. La questione del linguaggio con cui si lavori meglio/si
prenda più soldi è di altro carattere e va affrontata a parte.


 che sono cross-platform, altrimenti staremmo senza tout court.
Vero, ma immancabilmente finisco per non usarle...

 manica).
Guarda, l'integrazione con Cocoa dovrebbe essere sempre più stretta, in 
quanto wx utilizza un layer di 2° livello, che si chiama wxCocoa, che a 
sua volta si appoggia direttamente a Cocoa, per cui non dovrebbero 
esserci proprio differenze di aspetto o funzionali. In pratica le 
differenze ci sono (solo) per lo sviluppatore, che adopera le API wx 
anziché quelle Cocoa.
Tra l'altro ci sono delle librerie per Python
http://wxpython.org/
che mi sembra siano sviluppate molto attivamente.
Ci sono binding anche per tutti gli altri linguaggi più diffusi (perfino 
per Java) e, per inciso, i binding Perl, apprezzatissimi, sono 
sviluppati dal /nostro/ Mattia Barbon:
http://search.cpan.org/~mbarbon/Wx-0.59/
Infine ho appena scovato questa ;-)
"Why the hell hasn't wxPython become the standard GUI for Python yet?"
-- Eric S. Raymond
wxPython is the best and most mature cross-platform GUI toolkit, given a 
number of constraints. The only reason wxPython isn't the standard 
Python GUI toolkit is that Tkinter was there first.
-- Guido van Rossum
http://wxpython.org/quotes.php
Ciao,
Emanuele.

ArAgost wrote:

Stavo per risponderti che si tratta di una visione certamente legittima 
ma altrettanto parziale, quando Enrico mi ha preceduto con una risposta 
che sottoscrivo in pieno, per cui non posso che ripeterla.
Anche se tu non la senti, quella di avere applicazioni cross-platform è 
un'esigenza reale e *molto* diffusa.
E' un'esigenza per gli utenti, visto che ce ne sono moltissimi, come me, 
che preferiscono avere un'applicazione che gli è utile su ognuna delle N 
piattaforme che usano, piuttosto che non averla per niente su N-1 
piattaforme soltanto perché un certo tastino avrebbe l'ombreggiatura 
poco sfumata.
Ed è un'esigenza per i programmatori, che non avendo il tempo per 
sviluppare versioni specifiche per ogni singolo ambiente (e se lo 
avessero, l'applicazione comunque verrebbe a costare di più) 
preferiscono accontentare, magari parzialmente, molti utenti, piuttosto 
che accontentarne pienamente soltanto pochi.
Oppure desiderano diffondere la loro applicazione il più possibile (cosa 
che torna comunque a vantaggio dell'utente, perché abbassa i costi).
Certo, l'ideale sarebbe avere la stessa applicazione con la UI adattata 
alla perfezione ad ogni ambiente, ma questo fa lievitare i costi per chi 
sviluppa (e di conseguenza anche per l'utente), e i toolkit 
cross-platform servono proprio a contenere questi costi.
Non sarà un'esigenza per te, ma lo è per molti.
Emanuele.


| |._/|_|\__/\__/\__/ | 
|        /_/ /_/      | *Si vis pacem, para papunzi

 il cazzo con google, dollari, case america ed ali babà...
Uei, la storia del sottopagato l'hai tirata fuori tu sputando la bile e
adesso ti lamenti se ti risponde? Quello che ha millantato guadagni
principeschi/fare bei soldini/bel tenore di vita/milionidieuro sei tu, e
ti si e' risposto secondo i tuoi parametri con dati abbastanza
verificabili, se proprio hai voglia di continuare a sprecare il tuo
tempo nella caccia al Martelli.
Consiglio una bella cura a base di carciofo e una rilassante crociera
fuori dalle nostre palle: vedrai come ci sentiremo meglio.


 stratgico del tulchit?
Piu` probabilmente conseguenza delle politiche strategiche e commerciali
di Adobe, peraltro comprensibili pensando alle quote di mercato.
Persino Google Earth e` uscito mesi prima per Windows (e non certo
perche` Google ami Windows alla follia) e solo dopo per Mac e poi Linux:
semplicemente si vuole raggiungere anzitutto il massimo numero di utenti
possibile, quindi si concentrano tutte le risorse di testing &c sulla
piattaforma numero uno, e in seguito si passa alle altre, piuttosto che
rallentare il rilascio di tutte per "spalmare" le squadre di test &c fra
le molteplici piattaforme.  Il vantaggio dell'uso di QT e` che tutta
quella fetta dell'applicazione che consiste di GUI e` UNA fetta, non
(almeno) TRE, il che riduce molto i costi di sviluppo e manutenzione, ma
non ci si puo` comunque esimere da test &c su tutte le piattaforme che
si vogliono supportare.
Alex

) -- "you could get smarter
programmers to work on a Python project than you could to work on a Java
project... I didn't mean by this that Java programmers are dumb. I meant
that Python programmers are smart... people don't learn Python because
it will get them a job; they learn it because they genuinely like to
program... which makes them exactly the kind of programmers companies
should want to hire".  Il paradosso viene proprio perche`, quando
asserzioni errate come la tua vengono fatte e giustamente respinte con
dovizia di dati contrari, si finira` per avere anche in Python
programmatori che lo imparano "per avere lavoro", e NON, come e` stato
da sempre per un linguaggio che non ha mai goduto (?) di campagne di
marketing o simili, "perche` genuinamente gli piace programmare" -- e
quindi ridurra` la correlazione fra "quelli che imparano Python" e
"esattamente il tipo di programmatori che le compagnie [quelle furbe,
ovvio -- cioe` proprio quelle per cui ai "veri programmatori" PIACE
lavorare;-)] dovrebbero volere assumere".  Per fortuna, non vedo ancora
traccia del dipanarsi di questo paradosso (qui, il fatto che noi
pitonisti siamo ovviamente incapaci di fare "marketing" per il
linguaggio che amiamo, paradossalmente, _aiuta_:-), ma ovviamente, visto
che di ingegneri ne assumo tanti (e tanti di piu` seleziono, visto che
il processo di assunzione a Google e` _ferocemente_ selettivo), tengo
gli occhi ben aperti sulla questione;-).
Alex

 fuori dalle nostre palle: vedrai come ci sentiremo meglio.
Ma puo` un carciofo (che tale e`, ovviamente, il sedicente individuo)
curarsi a base di carciofo...?-)
Alex

 prenda più soldi è di altro carattere e va affrontata a parte.
Potrebbe certo.

 fuori dalle nostre palle: vedrai come ci sentiremo meglio.
Ma tu fai una cosa: mettimi nel tuo killfile cosě ti spari una sega e
non ci rompi il cazzo con questi tuoi post inutili.
P.S.
Non parlare a nome del newsgroup, tu non rappresenti nessuno, cazzone.

 curarsi a base di carciofo...?-)
Erm. Villano.

 Qual e' l'alternativa allo scrivere i programmi a mano?
Non fare programmi; usa solo la mano per altro.

 Erm. Villano.
In effetti, mi scuso con tutti i carciofi, che, poveretti, non meritano
assolutamente di essere paragonati a certi grumi di rumenta.
Alex

 Capitano di San Marino del 18esimo secolo.
Aggiungi anche quello che è stato il mio medico di famiglia per oltre 20
anni, pace all'anima sua...
-- 
Ci sono 10 tipi di persone: quelle che capiscono il
sistema binario e quelle che non lo capiscono.

 Sono dubbioso e simile a San Tommaso: esempi?
Un gestore di db (quale che sia il db). Un'interfaccia per svn/cvs.
Certi programmi che comunque prendono controllo della macchina e quando
si lavora con loro si lavora con loro.
Roba di rendering, roba del genere. Tecnica in genere, che a livello
utente interagisce poco o nulla con l'OS.


 
http://wxpython.org/quotes.php
Vero. Ci sono voci autorevolissime che vorrebbero wx nella libreria
standard. Sostanzialmente a quanto ricordo di aver letto (chiaramente a
quei tempi non ero ancora Pythonista) wx non era stato incluso perchè
non abbastanza maturo o roba del genere.
Poi se ne sono pentiti tutti. 


 Qual e' l'alternativa allo scrivere i programmi a mano?
La delegazione in Ruby la fai con poche righe. Dici ad un oggetto se
qualcuno ti manda un messaggio cui non sai rispondere (o se preferisci
non usare la terminologia di Ruby, qualcuno chiama un metodo che non
hai), guarda se lo ha il tuo delegato, in questo caso passagli la
risposta, altrimenti fallisci come prima.
In Ruby traduci direttamente in codice quello che io ho scritto in
linguaggio naturale in modo sostanzialmente 1-1.
In RealBasic devi scrivere metdo per metodo:
sub foo(...)
  delegate.foo(...)
end
idem per bar, foobar, boo, moo, goo, too, poo, roo, too e noooooo!
etc etc etc
Su un progetto complesso, questa è una rottura di palle. Oltre che
portare problemi di manutensibilità (aggiungere un metodo al delegato,
vuole dire aggiungerlo anche a tutti quelli che gli delegano roba)


 lo fanno per Python, perl e compagnia bella?)
E io ti ribadisco: IMHO non è una buona idea. Io mica dico imparare
*solo* Python, anche perchè sarei una contraddizione vivente. Non faccio
l'elenco dei linguaggi/ambienti che conosco a menadito, padroneggio,
conosco, ho un'infarinatura perchè non devo fare vedere niente a
nessuno. Ma diciamo che certamente non contiene solo Python e Ruby,
ecco.
Detto questo fai conto che per Python la richiesta è altissima: ci sono
meno programmatori che posti di lavoro al momento.
E poi ribadisco, anche ammesso di volere lavorare in C/C++ iniziare con
Python IMHO porta dei vantaggi indubbi.


  ma hai scritto per ben 1720 post qualcosa in merito a google!
Attenzione. Qui dentro finiscono anche cose come:
"cerca su google"
"IMHO la cosa č cosě e cosě, fai una ricerca su google per maggiori
dettagli".
O anche qualunque post su Google Earth cui abbia partecipato.


 Alex
...a proposito; ma dove lavori?

 ... dai l'esperienza di osx e' altro...
Si infatti. E MacSOUP non è GPL ma si paga. Quindi registralo!

 Cosa devo argomentare? Non hai risposto alle questioni poste...
se non sai leggere mica e' colpa mia

 si vogliono supportare.
toh invece lightroom beta e' uscito mesi e mesi prima per osx... (ma non
usa le qt...)


Ad ogni modo il discorso sulle eccezioni+documentazione rimane valido a
prescindere :)

 utente interagisce poco o nulla con l'OS.
Questo però non è un buon ragionamento. Se è possibile avere risultati
migliori (vedasi firefox che piano piano...), è solo pigrizia/economia

 etc etc etc
Sei troooppo buono: chiamare questa delegazione è un complimento
immeritato per quel linguaggio :)

 Non sarà un'esigenza per te, ma lo è per molti.
Vabbè mica ho detto che è stronzo chi lo fa e chi lo usa... ho detto che
è brutto! :)

 Ah, magari prima di tutto scaricare Python2.5 che non fa mai male.
Per un negato come me, come si può fare senza soffrire? Ho già
installato fink (da anima pia), se può servire...w

 lavorare fianco a fianco a simili "mostri sacri" dell'informatica?
Come sopra. (Non metto faccine, sono serio)

 migliori (vedasi firefox che piano piano...), č solo pigrizia/economia
Dipende. Bryce per esempio *non* č per una fava integrato con OS X (lato
utente, lo č a livello di rendering etc etc etc). Eppure nessuno si
lamenta.
Idem un software che fa audio, recording etc etc: deve essere integrato
con l'OS *sotto* (andare a prendere i driver, interagire con le
periferiche audio e tutto). Ma poi se i widget sono o meno nativi,
chissene eh... 


 Per un negato come me, come si può fare senza soffrire?
Scarichi dal sito 
python.org
 il dmg e fai doppiclick.


 immeritato per quel linguaggio :)
Č la prima e piů elementare forma di delegazione.


 soprpresa! Nulla viene detto in quel luogo :)
Ti confesso che io lo "ho sempre saputo". Per esempio un'accesso di
array out of bound cosa farà? IndexError. Ovviamente. Non può fare
altro.


 Scarichi dal sito 
python.org
 il dmg e fai doppiclick.
Uhm, soluzione tanto facile da essere imbarazzante. Grazie!


Si ma che ne sai che e` "IndexError" e non "OutOfBoundError"? :)
Quando mi serve una funzione piu' o meno so dove andarla a cercare e
poi dal nome mi oriento su quale possa essere quella giusta,
scegliendola da una lista. Una volta trovata nulla so sulle eccezioni.


Si ma che ne sai che e` "IndexError" e non "OutOfBoundError"? :)
Quando mi serve una funzione piu' o meno so dove andarla a cercare e
poi dal nome mi oriento su quale possa essere quella giusta,
scegliendola da una lista. Una volta trovata nulla so sulle eccezioni.
Cioe` mi sembra assurdo dover far fallire una funzione (o con un test o
a runtime) per scoprire se solleva una eccezione e quale eccezione
solleva esattamente. E se ne solleva piu' di una? Questa e` una cosa
che deve essere chiaramente specificata nella documentazione *della
funzione*. non altrove.

 scegliendola da una lista. Una volta trovata nulla so sulle eccezioni.
Mi sembra che ti stai attancando ad un dettaglio abbastanza
trascurabile. In primo luogo come sai dove andare a cercare le funzioni,
ti ho insegnato dove andare a cercare le eccezioni (ma lo avresti potuto
avere da solo).
Poi chiaro che a sboccio più informazione è meglio di meno informazione.
A meno che non ci siano altri motivi che non mi vengono in mente.
Comunque faccio un follow-up su iclp. È un ambiente molto amichevole che
ti consiglio di sottoscrivere. Inoltre è il posto giusto per molte delle
domande che quando qualcuno inizia generalmente fa.


 milioni di euro ad una azienda.
BitTorrent in compenso li ha fatti risparmiare a milioni di
utenti del P2P... :)


| |._/|_|\__/\__/\__/ | 
|        /_/ /_/      | *Si vis pacem, para papunzi

 Non parlare a nome del newsgroup, tu non rappresenti nessuno, cazzone.
Cosa ne sai tu, pezza da piede?


 O anche qualunque post su Google Earth cui abbia partecipato.
E anche i post tipo "uno piu' coglione di questo 'Forestiero' non si
trova nemmeno con google'.


 trova nemmeno con google'.
Mentre scommetto che tu hai 281.000 hit. 

 Cosa ne sai tu, pezza da piede?
Perchč non ti piscia nessuno. Perchč sei cosě una latrina che non sei
nemmeno l'ultimo degli schizzi di merda della cagata di un cane che
soffre di stipsi.
Ora, torna nel cesso e non dimenticare di tirare lo sciaquone.

 utenti del P2P... :)
L'utilizzo illegale, intendi? Perchè torrent si *deve* usare solo per
fini legali, lo sai vero?

 sembra allucinante: 
E' una diretta conseguenza del fatto che si tratta di un linguaggio OO
con tipi molto dinamici: al momento della compilazione *non* è possibile
stabilire con certezza il tipo di oggetto puntato da una chiamata, per
cui non è possibile fare come in BASIC che ti ferma al momento della
compilazione dicendo che il metodo non esiste, e la questione verrà
risolta a run-time (nel caso specifico delegando). 


Stai predicando da Usenet, la cui gerarchia alt.binaries
è tra le realtà deliquenziali più mastodonticamente
e ipocritamente impunite che esistano...

 e ipocritamente impunite che esistano...
E quindi? Ma si, al mondo ci sono tanti ladri, rubiamo anche noi (?)

 piscia latrina merda cagata cane stipsi cesso sciaquone.
Uella, colpito e affondato, eh? Pezza da piede dev'essere il nomignolo
che ti hanno affibbiato alla nascita e che ti perseguita da, quanti?,
47? (rotfl) anni.


 risolta a run-time (nel caso specifico delegando). 
Cioe' -fammi capire, che sono una cariatide-, prevedi la possibilita'
che un altro programma disponibile intanto che il tuo programma gira si
prenda carico di una chiamata fatta dal tuo programma a se' stesso
oppure da un terzo programma al tuo programma? Se e' cosi' e' talmente
un casino che non voglio saperlo .-D


 47? (rotfl) anni.
Caspiterina sei stato cosě fortunato???

 stratgico del tulchit?
Non è che una applicazione è fatta solo della parte grafica eh.
-- 
Lawrence - 
http://www.oluyede.org/blog
http://www.neropercaso.it
"Nothing is more dangerous than an idea
if it's the only one you have" - E. A. Chartier

 adesso lo abbiano passato a GTK2 (spero). 
Si basa su gtk2 si, ma a sto punto č meglio usare gtk2 direttamente :)


 eccettuata giusto la ricorsivita' delle funzioni, ahime'.
No dai, non dire cosi'. Ruby e' un linguaggio ad oggetti puro, e questo
influenza tremendamente il modo di pensare e di sviluppare con quello
strumento. Da quel che ricordo io Basic e' un linguaggio ad impostazione
procedurale, carino finche' vuoi (a me personalmente non piace, ma c'ho i
traumi per la roba sviluppata sul Commodore), ma parecchio diverso.
Tra blocchi (e tutto quello che comportano), classi aperte, mixin ci vedo
proprio poco di Basic. Ruby stravolge anche concetti ben saldi negli altri
linguaggi (almeno - in Ruby sono molto diversi), tipo 5.times { puts "fuffa" } o
0.upto(10) { |i| puts i }, sono costrutti che possono piacere o meno ma
comunque diversissimi da Basic, anche per il fatto che Basic ha qualche
decennio in piu'.
In diversi casi puo' ricordare Perl forse, ma Basic direi proprio di no.
Poi e' ovvio che molti concetti sono simili, ma allora quale linguaggio non e'
simile a Basic (e il primo lisper che passa ci fa il mazzo ad entrambi).
  ngw

 i fatti, gurda le applicazioni native, e quelli tuichitate
Impari a parlare per favore? Io sono straniero da come puoi vedere ma
una frase di senso compiuto riesco a farla. Se ti stanno sulle balle i
toolkit grafici cross-platform a me può anche andare bene ma dire "i
fatti" come base delle proprie argomentazioni non funziona, non su un
newsgroup. 
Dicci _perché_ e magari possiamo andare avanti a discuterne, se no ciao
ciao.


 quel paese .-D
È una cosa molto comune. In RealBasic hai Operator_Lookup che lo fa
(peccato che poi ci siano altre limitazioni nel linguaggio che
impediscono davvero di usarlo come si usano simili features in un
linguaggio dinamico).
Un linguaggio dinamico è spesso in grado di modificare il suo
comportamento a tempo di esecuzione. Inoltre possono esistere vari
motivi per scrivere il codice in quel modo.
Ecco... pensa che stai scrivendo un server, o anche un'applicazione a
linea di comando. Insomma, qualcosa che prenda da qualche parte dei
comandi.
In Python o in Ruby puoi scrivere codice come il seguente. Io ho
implementato solo due metodi. Aggiungere nuovi comandi non modifica
affatto la get_command (che non contiene un noioso ciclo if per
scegliere quale funzione chiamare e tutto).
class Responder
 
  def initialize(stream, prompt='> ')
    @loop = true
    @stream = stream
 
    @prompt = prompt
  end
 
  def run_loop
    get_command() while @loop
  end
 
 
  def get_command
    print @prompt
    s = @stream.readline
    c, *args = s.split
    send("do_" + c.downcase , args)
  end
 
  def do_print(args)
    puts args.join(' ')
  end
 
  def do_quit(args)
    @loop = false
  end
 
  def method_missing(symbol, *args)
    argString = args.length>0 ? "args: #{args.join ', '}" : "no args"
 
    puts "** Called command #{symbol.to_s[3..-1]} with #{argString} **"
    puts "** No such method exists **"
  end
 
end
r = Responder.new($stdin)
r.run_loop
 
Questo è un esempio piccolo e semplice ed usa solo una piccola parte
della potenza delle chiamate dinamiche (tra l'altro qui i metodi buoni
"ci sono" tutti). Ecco... Operator_Lookup un codice del genere non me lo
lascerebbe scrivere.
Ma potrei tranquillamente scrivere codice che effettivamente *genera* i
metodi di chiamarli. Ovviamente non mi vengono in mente cose sensate da
scrivere in un esempio di poche righe.


 Si basa su gtk2 si, ma a sto punto č meglio usare gtk2 direttamente :)
Si no, dipende. Su Linux si. Bisogna vedere come viene il supporto Cocoa
di gtk2.


 Poi se ne sono pentiti tutti. 
Non è vero, personalmente ringrazio il divino otelma ogni settimana per
il fatto di non dovermi sorbire wxPython nella lib standard.


 lo fanno per Python, perl e compagnia bella?)
Leggiti il post di Martelli sul paradosso di Graham, o leggiti
direttamente l'articolo di Graham cosi capisci.


 se non sai leggere mica e' colpa mia
Andiamo a leggere, poi pero` mi prometti che prima di parlare la
prossima volta ti informi ed eviti di fare stupida ironia:
"
a furia di togliere sono arrivati al minimco comune multiplo?
"
Questa sarebbe una risposta? Una battuta anche per nulla spiritosa che
sostanzialmente significa: "ho sparato a caso e ho mancato il bersaglio,
ridiamoci su".
"
sei malato
mettici vicino lyx e ti accorgi di cosa vuole dire *diverso*
PS bibblepro win osx &linux con dei glitch da redraw su osx da paura
(per non parlare di una operativata' molto windoziana)
"
Quindi ne deduco che i 2000 thread iniziati in questo gruppo dopo che
usci` iTunes 7 erano tutti di un branco di deficienti che vedevano cose
diverse. iTunes 7 e` parecchio diverso dal normale OSX esattamente come
MacSoup lo e`. E via dicendo.
Ora che ti ho preso a badilate eviterai di arrampicarti sugli specchi
per difendere l'indifendibile?
-- 
Valentino Volonghi aka Dialtone
Now Running MacOSX 10.4
Blog: 
http://vvolonghi.blogspot.com
New Pet: 
http://www.stiq.it

 essere: nessuno ne aveva voglia).
La cosa tra parentesi non è tanto lontana dalla verità :-)


 Si ma che ne sai che e` "IndexError" e non "OutOfBoundError"? :)
Perché Enrico Python l'ha studiato?


 quel paese .-D
Beh l'esempio classico è quello di un sistema a plugin.


 non contiene un noioso ciclo if per scegliere quale funzione chiamare
Ecco, questa l'ho capita. Forse, ma dico forse, comincio a intravedere
l'utilita' della cosa. Non per me, neh, ma in generale. Cioe' usare
pezzi di programma come fossero variabili (oggetti, va'). Anzi, quasi
quasi finisce che mi serve .-) Sto cercando di immaginare come farlo in
basic e, a meno di cose in RB che se ne occupano, mi sa che non si puo'.
Ne' mettere i nomi delle funzioni in una tabella, ne' costruirli al
momento, ne' dargli un numero progressivo, insomma l'unica e' il noioso
ciclo if o un case.
Altrimenti si entra nella programmazione esoterica da home computer: la
vedo malissimo applicata al macos o_O


 strumento.
Questo lo capisco perfettamente. Se poi parliamo di "strumenti"...
<casa biggo>
quando la fiore mi ha regalato il Jazz Bass ho davvero cominciato a
*suonare il basso*: in 15 anni di Ibanez avevo suonato *col* basso. Poi
un giorno mi son preso un fretless e non c'e' paragone, suono in tre
modi completamente diversi anche se e' sempre un basso. Lo strumento
modifica radicalmente l'approccio alla musica (che poi  suono anche una
quantita' di altri cosi, con risultati variabili tra il disgustoso e il
"sono nato per questo" .-D)
</casa biggo>
Insomma, come gia' piu' volte abbiamo concluso con Riko, ogni esigenza
ha il suo attrezzo; ma cio' non toglie che se devo scegliere tra
arrangiarmi a suonare jazz con l'ibanez che conosco da 25 anni oppure
fare il figo con un contrabbasso, scelgo l'ibanez e vado sul sicuro. Se
prevedo di suonare jazz per i prossimi 5 anni, ok, mi compro il
contrabbasso e me lo studio.
Tornando al ruby, ripeto: il paragone col basic era un complimento. Dopo
tutta la cozzaglia di cuginetti del C che hanno cercato di farmi piacere
nell'ultimo decennio, finalmente un *linguaggio* (cioe' non un "codice")
Comunque basic=commodore e' una specie di herpes che coglie gran parte
dei programmatori. Ti sembrano equilibrati e ragionevoli e appena gli
nomini il basic diventano tutti verdi e purulenti .-D
Non ci fai i sistemi operativi, col basic. Non perche' non si possa, ma
perche' e' come fare la parigi-dakar in scooter. Farsi il centro di
milano con l'hummer e' altrettanto stupido.


 Caspiterina sei stato così fortunato???
Pare di si', ti ho schiacciato il bottoncino giusto al primo colpo.
Sento il trapestio dei tuoi piedini stizzosi fin quassu' nel profondo
nord .°D


 Come sopra. (Non metto faccine, sono serio)
Anch'io.  Personaggi come, per dire, Dawkins o Hawking, hanno di certo
cervelli enormi, ma non sono adatti a Google: sono individui che pensano
grandissimi e cruciali pensieri, ma non _FANNO_ nulla in merito -
scelgono di occuparsi di temi dove bisogna COMPRENDERE, piuttosto che
non AGIRE.  Il loro giusto ambito e` dunque l'Accademia, che Google e`
ben felice di supportare, non una qualsiasi azienda (Google inclusa).  I
Thompson, gli Hoelzle, i Pike, gli Austern, i van Rossum, i Cerf (&c) di
questo mondo, _quelle_ sono le persone che, volendo capire ma anche
AGIRE, sono perfette per Google, e infatti da noi fioriscono.
Alex

 direttamente l'articolo di Graham cosi capisci.
Ottimista come sempre, eh, Lawrence -- cosa ti fa supporre che, solo
perche` un argomento viene presentato in maniera chiarissima e di per se
inequivocabile, il "Forestiero", con gli ovvi handicap mentali di cui
soffre, potrebbe _capire_ checchessia leggendo quella presentazione?-)
Alex

http://tinyurl.com/y6ds88

 Si infatti. E MacSOUP non č GPL ma si paga. Quindi registralo!
quando aggiorna l'interfaccia a quello che dovrebbe essere lo faro'
senza problemi, ho una 15 di shareware registrati non e' tirchieria ma
questione di principio...

 MacSoup lo e`. E via dicendo.
diverso in cosa?? nell'eyecandy o nel modo di interagire col sistema e
con le altre apps
secondo me tu leggerai pure ma non capisci proprio
fotte un cazzo del luc fotte di come si comportano, le applicazioni
metal si comportano da punto di vista dell'interazione proprio come le
altre
prova bibblepro con quella tulbar di sapore windozziano (sai cosa e' una
tulbar osx vero eh? e sai anche cosi ci puoi fare con una app osx vero?
o tu usando solo quel minimo comune multiplo non te ne accorgi...)
per non parlare delle palette con i widget che hanndo dei glitch
pazzeschi che non si adattano alla dimesione dello schermo che non
ricordano lo stato, la posizione... un dramma e il motivo e' uno solo:
hanno usato un tulchit che ha come piattaforma principale winsdozzo
ora continua pure a usare quella merda di gnome e vai tranquillamente a
fare la cacca

 Non è che una applicazione è fatta solo della parte grafica eh.
beh il resto e' molto molto piu' facile da ricompilare (visto che pari
fare ogni domanda banle ti anticipo: perche' si deve comportare nello
stesso identico modo a differenza dell'interfaccia ove ci sono
differenze)

 ciao.
a) hai usato apps sia native che tulchittate (*)? allora sei in palese
malafede, ciao
b) non le hai usate, allora non sai di cosa parli, non tocca a me
spiegarti la rava e la fava, ciao lo stesso
(*)roba che si suppone intergisca col resto del mondo: sistema e altre
apps che se mi citi anche tu guglert ti pernacchio

 su MacOS X non è male.
solo Ps elements afaik
PS e amici vari usano, a quello che ho capito, un tulchit adobe basato
su una specie di linguaggio per la descrizione delle intefacce: il + bel
tulchit che esita ma proprietario e indisponibile al mondo

 Ma non eri un consulente libero professionista?  Che significa "da noi"?
Si; mia moglie è inglese ed ogni venerdì lo ripete... (chiedendomi di
non ripeterlo perchè... poco formale :) andrebbe usato il tuo TGIF )

 nord .°D
Bottoncino? Trapestio? Tu non stai bene, vatti a fare una bella
passeggiatina sul lungomare...
P.S.
macSOUP non è GRATIS; registralo! 

 soffre, potrebbe _capire_ checchessia leggendo quella presentazione?-)
Vedi, eccoti l'esempio del fatto che sei un talento sprecato.

 questione di principio...
Posso anche essere d'accordo in linea di principio, ma allora, non
usarlo fino a quando non risponderą ai tuoi requisiti. Non trovi?

 differenze)
Nient'affatto. Questo vale solo per determinate applicazioni che "sotto"
non fanno nulla di strano.
Ci sono fior di applicazioni che devono interagire pesantemente con il
sistema operativo. Il suo sistema di autenticazione, il modo in cui si
accedono le periferiche audio, eventualmente i socket (winsock o bsd),
etc etc etc.
Può benissimo essere che pure il culo dell'applicazione non sia
ricompilabile senza modifiche.


 La cosa tra parentesi non è tanto lontana dalla verità :-)
Appunto... ma non mi permetterei mai di dirlo ad alta voce.
D'altra parte se ci fosse esigenza *davvero*, potrei anche prendere in
considerazione di metterci mano alla documentazione. Non so la procedura
e non ho presente il tempo.


 tulchit che esita ma proprietario e indisponibile al mondo
Ma come il più bel toolkit? E tutte le discussioni sul fatto che le
applicazioni Adobe hanno poco a che fare con l'interfaccia del MacOS X,
che sarebbero state da riscrivere in Cocoa etc etc etc?


 il fatto di non dovermi sorbire wxPython nella lib standard.
Confesso che fra avere tk e wx, preferirei wx. :)


 Beh l'esempio classico è quello di un sistema a plugin.
Se riuscissi a fargli un mini-esempio giocattolo sarebbe IMHO utile.


 ciclo if o un case.
Un tipo si era divertito a realizzare qualcosa di simile in RB. Ma era
andato a smacchinare gli internals dello stesso. Con l'interfaccia
ufficiale, non si può. Ho chiesto.
Qualcosina si può fare come ti dicevo con Operator_Lookup.
Se definisci Operator_Lookup, quando chiami un metodo su un oggetto e
quell'oggetto non lo ha, viene chiamato Operator_Lookup con come primo
argomento il nome del metodo e poi gli argomenti.
funzionalmente simile al "method_missing" di Ruby. Il problema è che poi
non hai nessun modo di chiamare un metodo "per stringa". E quindi devi
mettere li il mega-if, senza nessun vantaggio.
In realtà Operator_Lookup in RealBasic ha una funzione nettamente
diversa. È semplicemente l'operatore che sta per il punto. Quindi
potresti usarlo per fare un oggetto che si comporta come un
dizionario/hash ma invece di chiamare
Foo("Pippo")
chiami Foo.Pippo
Vabbè.


 quest'altra etc. etc. come ERP" (tanto per fare un esempio).
ngw: vende e campa con sw in Python e Ruby.
Due miei compagni di corso sono stati pagati per un progetto che
consisteva nella scrittura di un crawler semantico "intelligente"
(scritto in Python).
Un'altro mio compagno di corso scrive software in Python + Cocoa per
un'azienda locale.
Se pensi che nel mio anno saremo forse 12, che siamo in una piccola
cittŕ con poche aziende etc etc ect, vedi bene che si lavora anche con
Python. 


 Python. 
Ma attenzione, non dico che *non* si lavora affatto. Sto dicendo, a
parte fare "i bulloni", c'è qualcuno che "costruisce auto"? (Si perchè
oggi, in C++ o Java le aziende ti commissionano le "auto") 

 allargare le sue conoscenze con altro.
Il ragazzo voleva imparare a programmare, non voleva diventare un numero
nelle legioni di Javisti. Quindi come si dice in inglese "back off"


 spiegarti la rava e la fava, ciao lo stesso
E` divertente perché sia nel caso a che nel caso b hai sempre ragione tu
ahuahau
Vabbè uliano, non rispondere, tanto ho deciso di non discutere più con
uno come te.


 Confesso che fra avere tk e wx, preferirei wx. :)
Io no, perché tk è "leggera" e va bene per essere distribuita con
Python. Python non ha realmente una GUI di default, ognuno usa quella
che gli pare. Distribuire un malloppone come wxPython con Python
significherebbe dover distribuire anche wxWindows su Windows, il che è
fuori da ogni discussione. Tra l'altro ci sarebbero problemi di licenza
e un ingrossamento esponenziale di Python in quanto a dimensioni di
download. Senza dimenticare il fatto che questo avrebbe ripercussioni
nello sviluppo di wxPython dati i cicli di release di 18 mesi di Python
stesso. Es. perché io dovrei usare wxPython 2.7 quando questi in 18 mesi
magari arrivano alla 2.10?
E` lo stesso problema che si creerà con elementtree la cui versione
inclusa non è perfettamente identica e compatibile con la versione
stand-alone.
La libreria di Python va ripulita, non è un cestino in cui la gente tira
carta solo perché fa figo e vuole fare canestro.


 eccezionali, cosa oggi ardua in C++ ma facilissima in Python).
Beh questo "bridging" di conoscenze non è di certo cosa negativa :-)


 E quindi? Ma si, al mondo ci sono tanti ladri, rubiamo anche noi (?)
Ho riportato il primo esempio che mi veniva in mente di
un programma realizzato in Python che ha avuto un notevole
impatto "sociale", non in senso aziendale ma di comportamento
collettivo (si è rilevato che più di un terzo del traffico IP
passa tramite il protocollo BitTorrent).
Passando all'aumento di qualità di vita stavolta a favore
di informatici professionisti, il secondo esempio che mi viene
in mente di programma in Python dalla rilevante influenza
quotidiana per milioni di utenti è mailman, il gestore di
mailing list onnipresente. 

 mailing list onnipresente. 
Anche il plugin per lo spam più usato dagli utenti outlook è fatto in
Python. Comunque per 1 programma "famoso" ce ne sono almeno 10 meno
famosi che vengono fatti in Python. Forestiero non si rende conto quanto
sia stupido giocare al "ce l'ho più lungo perché uso un linguaggio più
'aziendale'", con tutti i possibili significati che la parola aziendale
potrebbe avere.


 ngw: vende e campa con sw in Python e Ruby.
No, Python non piu'.
Il maledetto Ruby mi ha fottuto il cervello, dopo tot codice "che non funziona
e non so perche'" dove stavo chiaramente usando Python per programmare in Ruby
ho avuto il buon senso di rivolgere le mie attenzione solo al new kid on the
block (che espressione piu' all'uopo non si puo' trovare), che facevo pena :De
Volonghi e' contento, visto che chiedevo a lui per le mie cazzate :D
  ngw

 Che tipo di software?
Sviluppiamo un software OpenSource chiamato Breakout, una specie di
Sourceforge rimodernizzato che da a gratis svn, Trac, Typo e altri tool,
integrandoli insieme, piu' software custom per diverse aziende.
L'ultimo e' un e-learning che attualmente aiuta qualche decina di migliaia di
insegnanti (con relativi studenti e genitori/tutor) a gestire le relazioni
insegnante - studente sul web, ad esempio l'assegnamento dei compiti, la loro
valutazione, le comunicazioni con i genitori.
Software di diverso tipo insomma.
Io comunque sono un webbaro, non so quanto faccio testo.
  ngw

 un casino che non voglio saperlo .-D
Significa che, come per python, se tu chiami upcase su un oggetto Fixnum
l'interprete non se ne accorge all'avvio, ma quando esegue il codice. Arrivato
al punto della chiamata "illegale" generera' una eccezione che, se non
gestita, probabilmente blocca l'esecuzione.
Quello di cui tu parli, presumo, sono le open classes di Ruby, ovvero la
possibilita' di aggiungere metodi a runtime a tutte le classi, una
funzionalita' molto interessante che pero' puo' essere usata male:
class String
   def upcase
     return self
   end
end
=> nil
"fuffa".upcase
=> "fuffa"
Esempio scemo che pero' esemplifica come spararsi in un piede con le classi di
Ruby.
Sono pero' dannatamente utili in certi casi, io ad esempio converto un hash in
una query string, e mi pare di aver anche postato il codice qui sopra una
volta. In effetti essendo una query string molto simile ad un hash chiave =
valore mi sembrava comodo fare {"a" => 12}.to_querystring e avere ?a=12 in
cambio :)
Ruby, come Python, parte dal presupposto che siamo grandi e vaccinati, e che
anche se siamo programmatori non siamo capaci di picconarci il culo per tutta
la vita con lo stesso errore :)
  ngw

 ricompilabile senza modifiche.
puo' esserlo ma nello specifico caso di unica applicazione con
interfaccia non URENDA che usi un noto tulchit non mi pare proprio che
lo sia (conta che tutte le robine altivec o sse erano al 90% gia' fatte
nella versione precedente... non si spiega il ritardo con quelle)

 che sarebbero state da riscrivere in Cocoa etc etc etc?
dimenticato di specificare il piu' bel xplataform
e si in effetti si vede, le palette di ps non ci dicono un cazzo con osx
sono retaggio del system 6 su cui ps e' nato :-/

 uno come te.
scusa sai io sono itagliano ma non lo parlo per questo hai problemi a
entrare nel merito...

 usarlo fino a quando non risponderà ai tuoi requisiti. Non trovi?
sono d'accordo in linea di principio ce ne fosse un altro usabile :-/
(waiting for nemo...)

 block (che espressione piu' all'uopo non si puo' trovare)
Oddio, che ricordi che mi fa venire alla mente:
http://en.wikipedia.org/wiki/New_kids_on_the_block



Ovvio. Infatti ho specificato che era la mia prima volta con python.
Evidenziavo semplicemente un dettaglio che mi ha lasciato perplesso
sulla documentazione e che avrebbe sicuramente accelerato
l'apprendimento se fosse stato presente.
Insomma un qualcosa che e' un vantaggio averla IMHO.
Se avessi avuto scritto che os.open solleva OSError (e non un
PIPPOException) quando non trova un file, di nuovo IMHO, sarebbe stato
meglio per poter scrivere codice "consistente" gia' dalle prime volte.
E questo senza scomodare o dover far riferimento agli alti principi
dell'ingegneria del software, unit testing, etc. etc. etc. per scrivere
un piccolo "hello world" che opera con i file corretto.
Di nuovo IMHO.

 Python.
Vero tutto. Anche se confesso che anche avere una libreria che uno può
contare ovunque che ci sia (ed una libreriea "usabile") ha i suoi
vantaggi.


 Cassa"?
Si, ma quelli sono banali. Hanno venduto dei gestionali (in Python
appunto). Hanno fatto l'errore di farsi pagare in base al tempo speso
per scrivere l'applicazione invece che in base al progetto (e io glielo
avevo detto). Il cliente non ci credeva quando gli hanno portato il
conto, pensava che fosse solo il prototipo o qualcosa del genere. Invece
fatto e finito in men che non si dica.
Credo anche una gestione di magazzino. Ma su sta robetta non mi tengo
aggiornato, sono cosette che fanno per racimolare qualche soldo, ma è
roba più da periti (chi fa la battuta?) che da laureandi.
Per dirti il mio campo di ricerca è l'interpretazione astratta e in
particolare fare dimostrazioni di correttezza sul C (e lavoriamo in
OCaml -- poco, non io -- e in Prolog). Alcuni di noi per sta roba hanno
preso anche degli assegni (tecnicamente si stanno guadagnando il pane
con il Prolog).
Insomma, dipende dove caschi.


 Volonghi e' contento, visto che chiedevo a lui per le mie cazzate :D
Io tengo due piedi in due scarpe (anzi, ormai sono un millepiedi tanti
piedi tengo in tante scarpe). Comunque per adesso me la cavo.
Fortunatamete non devo seguire piů progetti in parallelo con linguaggi
diversi.


 nelle legioni di Javisti.
Anche perchè qualcuno che volesse campare con Java gli suggerirei di
fare una laurea almeno breve in info o inginfo. Altrimenti rischia solo
di rimanere una code monkey per tutta la vita. IMHO eh.


 potrebbe avere.
Ma che 'azzo state dicendo tutti e 2??? Io non gioco ad un cazz, ci
programmo anche io in python ma ci faccio giusto qualche utility, tutto
qui. In ambito aziendale na mazza, se ti presenti da pinco pallino e gli
dici che gli vuoi fare il programma di gestione magazzino in python ti
prende a cassonettate.... (e si il python può essere tutto quello che
vuoi tu e non lo metto in dubbio, ma, in ambito "commerciale" non è
diffuso. Punto.
P.S.
Cazz ma cominciate a registrarlo sto MacSOUP. Questo mi fa girare le
palle. Siete pseudo programmatori e poi lo mettete nel culo proprio ai
vostri simili.

 con il Prolog).
Interessantissimo. Ma come tu stesso dici, "alcuni di noi per sta roba
hanno preso "anche" degli assegni".
Non aggiungo altro.

 Volonghi e' contento, visto che chiedevo a lui per le mie cazzate :D
Il "forestiero".

 nelle legioni di Javisti. Quindi come si dice in inglese "back off"
Ma tu che ne sai? Per la parola in inglese, non la conosco sorry. Ne
conosco un'altra, molto simile.

 di rimanere una code monkey per tutta la vita. IMHO eh.
Quoto.

 lavorato parecchio fino ad almeno sei mesi fa.
Si ma se l'avrà mollato, un motivo ci sarà. No?

 Insomma un qualcosa che e' un vantaggio averla IMHO.
Si si, non sto dicendo che tu stai dicendo cazzate, anzi. Solo che ormai
le cose sono cosi :-)
Dopo un pň che usi Python le eccezioni piů o meno le impari a memoria


 Si ma se l'avrà mollato, un motivo ci sarà. No?
L'ha mollato perché gli piaceva più Ruby e perché gli piace Rails. Non
di certo per il mercato (Ruby è ancora più di "nicchia" di Python)


 Ma tu che ne sai? 
L'ha anche detto... ed è pure il topic


 vostri simili.
Ma saranno cavoli miei?


 di certo per il mercato (Ruby è ancora più di "nicchia" di Python)
Ma... perchè rispondi per nwg?!?!?!

 Ma saranno cavoli miei?
No! Sono cavoli nostri! Stai usando un software non rispettandone la
licenza! 
Quindi riga dritto e registra MacSOUP.
Altrimenti smetti immediatamente di usarlo.
Capito?

 Ma... perchč rispondi per nwg?!?!?!
Perchč non si conoscono bene.


 hanno preso "anche" degli assegni".
Beh, chi ci lavora in tesi ovviamente *non* prende degli assegni. Chi ci
lavora dopo laureato, si. Pare ovvio.


 Si ma se l'avrà mollato, un motivo ci sarà. No?
Lo ha detto perchè: continuava a pensare in Ruby anche quando lavorava
in Python. E questo, suppongo io, perchè gli piaceva di più Ruby.
A quel punto tanto valeva lavorare direttamente in Ruby.
D'altra parte se vogliamo Ruby è ancora più di nicchia di Python (anche
se una nicchia in espansione) e per ora rimane sostanzialmente relegato
al mondo Web (ed è un peccato, peraltro).


 Ma tu che ne sai? 
Quale parte di "iniziare a programmare" fa pensare che uno non voglia un
linguaggio per "iniziare a programmare"?


 lavora dopo laureato, si. Pare ovvio.
Anche a me; ma allora perchč sottolinei "che hanno preso qualche
assegno"? Cosě mi suona come "azzo per quella roba hanno anche
guadagnato".

 linguaggio per "iniziare a programmare"?
Perfetto: ritorniamo allora al punto 1: perchè non C e C++, perchè non
Java...

 passeggiatina sul lungomare...
se ha detto profondo nord, andrà sulle rive del mare del nord, che ne
dici?
La passeggiatina fattela tu, e moolto lunga, anche. 
-- 
Ely
questa non è una firma

 bassa informatica".
Veramente è da 10 post che tu parli di alta informatica (i programmoni
super-aziendali che fai tu) e bassa informatica (noi merdine che
tappiamo i buchi). Almeno secondo te.


 Ma... perchè rispondi per nwg?!?!?!
Perché lo conosco di persona e siamo amici quindi so com'è andata :-)
Non ti preoccupare, ti risponderà anche lui più dettagliatamente, se
c'ha voglia.


 Java...
Rileggiti tutto il thread prima che arrivassi tu, magari la risposta la
trovi. Se no leggiti uno dei centro thread simili. Ne abbiamo già
ampiamente discusso fornendo la nostra opinione *tecnica*. Tu sei giunto
con una valutazione commerciale e campanilista (che poi non è nemmeno
esatta)


 tappiamo i buchi). Almeno secondo te.
Mai affermato questo. Se ti senti offeso perchč ho detto che l'utilizzo
primario di Python sono le utility, posso offrirti un fazzolettino di
carta...

 esatta)
Anche se la tua affermazione fosse esatta, la disanima di un problema a
360° (e quindi, la scelta di un linguaggio che non escluda la
possibilità di guadagno) ti sembra così strana? Ma tu programmi (se
programmi) per beneficenza? Mi sai che sei un pò frustrato.

 La passeggiatina fattela tu, e moolto lunga, anche. 
E tu da dove sbuchi? Vuoi venire con me?
Strano però...

 Strano però...
E no, non sono un qualche tipo di fake :D


 E no, non sono un qualche tipo di fake :D
Ne dubito, profondamente. (Vedendo come si comporta... il Biggo)

 Ne dubito, profondamente. (Vedendo come si comporta... il Biggo)
dubita, dubita, non č un problema mio. Google č da quella parte, se vuoi
cercare cerca, se no chissenefrega.
Come mai nel quoting hai tagliato la parte piu interessante? Ovvero che
sono una fan del Biggo? Ti dava cosě fastidio? :D
-- 
Ely
questa non č una firma

 sono una fan del Biggo? Ti dava così fastidio? :D
No, perchè non me ne può fregar di meno... avrebbe dovuto?

 No, perchč non me ne puň fregar di meno... avrebbe dovuto?
Da come continui a trottare, sembrerebbe proprio di sě.


 Si ma se l'avrà mollato, un motivo ci sarà. No?
Non certo perche' a livello industriale non e' accettato, con Python mi sono
fatto Fellowes, Monte dei Paschi di Siena e Telecom.
  ngw

 Da come continui a trottare, sembrerebbe proprio di sì.
Uh aspè allora ricomincio. 
*rewind*
Ah! Sei una fan del Biggo? E perchè? Chi è sto biggo? Che fa? E perchè
non sei una fan mia?

 non sei una fan mia?
Perché quello che dice qui sul ng è coerente con la persona che è e con
quello che ha fatto / che fa, perché lo conosco di persona, perché sa
aprire ibook meglio di un apriscatole con la scatola del tonno, e poi
basta se no la Fiore mi ammazza :P
Tua? Non ti conosco abbastanza, anzi direi che non ti conosco proprio.
Mica dò confidenza agli estranei così, io.
E poi son troppo del nord per te, adieu. :D
-- 
Ely
questa non è una firma

 fatto Fellowes, Monte dei Paschi di Siena e Telecom.
Ok, ma cosa? (curiosità eh)
Cosa hai fatto per il Monte dei Paschi di Siena e... La Telecom?!

 E poi son troppo del nord per te, adieu. :D
Adieu. Cominciava a piacermi questa "chat" sul "news" :D
Vado a mangiarmi 2 taralli da zi' teres :))))))))))))))))))))


| |._/|_|\__/\__/\__/ | 
|        /_/ /_/      | *Si vis pacem, para papunzi

 programmi) per beneficenza? Mi sai che sei un pò frustrato.
E a me sembra che tu sei un pò scemo. Non ho detto che ho ragione io, ho
detto che almeno io e gli altri abbiamo portato motivazioni tecniche del
perché _secondo noi_ C, C++ e Java non sono l'ideale per imparare a
programmare. Per questo gradirei avere la tua opinione tecnica invece
del rumore di fondo.
Io non programmo per beneficenza, lo faccio per passione e questo a
volte si traduce anche in roba free (vedi progetti opensource gratis).
Tu non hai fatto altro che parlare di quantità di soldi e dimensione
delle tue applicazioni, il che mi fa pensare che tu di passione ne abbia
una gran poca.


 chiami Foo.Pippo
O forse Pippo.Foo? Ehi, ma e' un traduttore basic->resto del mondo! .-D


 io vado a cucinare il gatto con la polenta .-D
Certo che la fatta grossissima la figura di merda ora. 
Prima di postare, controlla la signature.
Sei un pivello.

 Tu non stai bene, vatti a fare una bella passeggiatina sul lungomare...
Fuori dal metro quadrato in cui vivi tu esiste una cosa chiamata "resto
del mondo", e non e' necessariamente tutta affacciata sul mare .-D
Dimenticavo: <*click*> pezza da piede.


 potrebbe avere.
Che poi se fossimo tutti qui a guardarci l'ombelico allora il basic e'
il linguaggio piu' figo del mondo perche' *io* ho fatto palate di soldi
soltanto con quello. Cacchio, nemmeno io sono cosi' fondamentalista .-D


 Sei un pivello.
LOL :D lo sapevo ^^
(Biggo, oh, ha funzionato qua)


 Dimenticavo: <*click*> pezza da piede.
Ehi, cosa ci fai con la mia firma?


 Se riuscissi a fargli un mini-esempio giocattolo sarebbe IMHO utile.
No, ho capito. Solo che io affronterei il tutto dall'altra parte. Lo sai
che sono antico .-) Sarebbe il plugin a occuparsi di farsi notare, non
il programma a cercarlo in giro per il mondo. E ripeto: se dovessi
lavorare in quel modo e' *ovvio* che non mi affiderei al CBM BASIC ma
sceglierei un linguaggio piu' adatto.


 il programma a cercarlo in giro per il mondo.
Non mi pare molto intelligente. Puoi semplicemente piazzare il plugin in
una directory apposita e visualizzarlo all'avvio della applicazione.
Come fa Gedit per dire. 


 (Biggo, oh, ha funzionato qua)
Sti cazzi. Hai fatto la figura di merda...

 Dimenticavo: <*click*> pezza da piede.
Dimenticavo: <*click*> fallito.
P.S.
registra MacSOUP stai commettendo un crimine.

 Ehi, cosa ci fai con la mia firma?
Che troll che siete. 
Comunque, Biggo, fai una cosa; va lavurà va... parassita

 Sti cazzi. Hai fatto la figura di merda...
sě, sě, come no, sono io che l'ho fatta ^^


 wrote:

Guarda che MacSOUP il Biggo l'ha già pagato e registrato. In ogni caso,
anche se tu non ci credi.


 sceglierei un linguaggio piu' adatto.
E' ovvio quanto il fatto che continui, spudaratamente, ad usare un
prodotto software per il quale sei tenuto a pagare il dovuto prezzo.
Ti invito a leggere il contratto di licenza di MacSOUP ed a metterti in
regola immediatamente.

 Come fa Gedit per dire. 
Si', ma appunto: sono antico .-D
Chiaro che *se* dovessi fare seriamente una cosa cosi', cercherei (se ne
vale la pena) di imparare qualcosa di nuovo e applicarlo. Quello lassu'
e' il metodo-dinosauro di uno che ha sempre fatto programmi "normali".


 Ehi, cosa ci fai con la mia firma?
Oppssss. Cannato .#)


 (Biggo, oh, ha funzionato qua)
Cribbio, non capiro' mai come funziona il supersede .#(
Figuremmerd', LO fatta grossissima
-- 
Ely
| |._/|_|\__/\__/\__/ | 


 anche se tu non ci credi.
E' un tema molto importante lo sai? 

 Figuremmerd', LO fatta grossissima
Non ti preoccupare non sarà ne la prima ne l'ultima...

 Figuremmerd', LO fatta grossissima
registra macsoup

 E' un tema molto importante lo sai? 
Lo so, infatti io ho pagato e anche lui.
Ah, cosa mi consigli se volessi iniziare a programmare? Non è questo il
soggetto del thread? che mi sono un po' persa, sai.
-- 
Ely
questa non è una firma


 soggetto del thread? che mi sono un po' persa, sai.
Beh ti consiglio di cominciare da bash; comincia ad esercitarti con
piccoli programmini che facciano qualcosa di semplice: tipo chiederti il
tuo nome in input e poi stampare una frase tipo "Buongiorno, " e dopo la
virgola fai comparire il tuo nome. Vedrai che l'appetito vien mangiando.
Subito dopo, ti consiglio di imparere il C. E' un linguaggio semplice,
potente, anzi potentissimo che ti permette di fare *tutto* (se pensi che
Unix è stato fatto completamente in C).
Dopo, potresti cimentarti con il C++, il linguaggio ad oggetti; ma è
inutile ora andare oltre certe discussioni. Comincia per gradi.
Brava Ely, buon divertimento con la programmazione vedrai, ti piacerà...

 e' il metodo-dinosauro di uno che ha sempre fatto programmi "normali".
Pių che metodo dinosauro a me sembra metodo complesso :D


 regola immediatamente.
Ti invito a farti i cazzi tuoi o a farti i miei fino in fondo: chiama
Haller e digli che gli sto usando il programma a sbafo. Cosi' ti levi
dai coglioni un cinque.


 sě, sě, come no, sono io che l'ho fatta ^^
Oh ma tu chi sei? Guarda che dalle figure che LO faccio mi so tirar
fuori da sola. Gentile, neh, ma non ho bisogno di un fake dei miei fake.


 Dimenticavo: <*click*> fallito.
Esatto: fallito. Riprova, sarai piu' fortunato: quello con la fissa dei
soldi e del successo sei tu, paperino. Dev'essere un hobby regionale .-D


 la vita con lo stesso errore :)
E allora vedi che le somiglianze col basic aumentano. A me m'hanno
sempre rotto che il basic non e' strutturato ed e' troppo facile fare
errori. Per poi ridacchiare quando dico "io di errori non ne faccio
perche' so usare il linguaggio". Sono, appunto maggiorenne e vaccinato,
non ho bisogno di un linguaggio che mi obblighi ad essere ordinato.


 Pių che metodo dinosauro a me sembra metodo complesso :D
Eh, infatti si vede che non mi e' mai nemmeno passato per la mente di
farlo .-)
Oh, qui contabilita' fatturazione magazzino, e gran gestione di hardware
dedicato, e controlli di sicurezza allarmi antincendio automazione. Mica
lavori di fioretto come voialtri raffinatoni .-D



| |._/|_|\__/\__/\__/ | 


 Cosa hai fatto per il Monte dei Paschi di Siena e... La Telecom?!
Per MPS io mi sono occupato del sistema di reporting per i portafogli dei
clienti - il mio capoccia di allora lurka questo ng tra l'altro, e da quel che
ricordo usa parecchio Python, e infatti io ero uno dei tanti, che appunto si
occupavano di altri progetti spesso piu' importanti (tipo i controlli sempre
sui portafogli dei clienti, che e' abbastanza critica come cosa).
Telecom - purtroppo - ho avuto a che fare con un merdoso fax server, con
Python ho implementato un'altro server che praticamente metteva una pezza alle
numerose limitazioni dell'hardware e il client per usarlo.
E' un linguaggio full purpose, certamente non ci sviluppi un kernel, tutto il
resto e' fattibile.
  ngw

 allargare le sue conoscenze con altro.
Dissento: a mio parere e` meglio iniziare con linguaggi di altissimo
livello che permettono di imparare e realizzare molto piu` in fretta
(Python e` adattissimo, ma a livello di apprendimento non dubito che ad
esempio Ruby vada anch'esso bene, e Scheme e` pure un classico),
fornendo tra l'altro anche una base per l'apprendimento migliore e piu`
facile di tante altre tecnologie, come i protocolli di rete e i database
relazionali.  In genere si impara meglio "dall'alto verso il basso":
Python, poi C, poi le architetture di macchina a livello ISA, poi le
microarchitetture, poi i dettagli dell'elettronica digitale, e via
approfondendo (non necessariamente sino ai livelli della fisica
quantistica, salvo specifici interessi personali) -- piuttosto che non
viceversa (o "iniziando dal mezzo", come tanti percorsi didattici
fanno).  Ma su questo insieme di "teorie euristiche" si puo` certo
dissentire: non e` invece lecito disinformare sui _fatti_, come ti ho
ripetutamente visto fare in questi thread.
Alex

 Non aggiungo altro.
Allora aggiungo io: Enrico e gli amici di cui parla sono studenti,
quindi per il momento, giustamente, privilegiano l'apprendimento, con
"il guadambio" in ``seconda fila''.  Se vuoi vedere un diverso
equilibrio fra l'appetito monetario e il desiderio di apprendere cose e
nuove e divertenti (e quest'ultimo, beninteso, non deve MAI venire meno,
se no addio innovazione e valore aggiunto!!!), ovviamente devi pensare a
tecnici, professionisti, imprenditori, manager -- per questo ho portato
l'esempio di John Pinner, che appunto appartiene a questi gruppi:-).
Alex

 Beh questo "bridging" di conoscenze non è di certo cosa negativa :-)
Positivissima, direi; far lavorare, fianco a fianco, esperti delle
tecnologie piu` svariate (ad es., Norvig di LISP, Pike e Thompson e
Presotto di Limbo, Austern di C++, van Rossum &c di Python, e cosi`
via), e naturalmente tanti giovani brillanti e creativi, puo` scatenare
un notevole "potenziale" di innovazione.  Puo` essere sorprendente per
qualcuno rendersi conto di quanta parte di questo dipende dalle
interazioni "sociali", non-strutturate, magari bevendo una birra, o
giocando una partita a biliardo, o discutendo a briglia sciolta di
argomenti anche non tecnici su mailing list, newsgroups &c...
Alex

 Oh, ma vado avanti con l'altro nick, che sei piu' gentile.
per forza, io ho due cose che tu non hai ^^
-- 
Ely


 dai coglioni un cinque.
Un cinque (che cazzo significa)? Ho premuto il bottoncino vedo... che
fallito.

 fuori da sola. Gentile, neh, ma non ho bisogno di un fake dei miei fake.
Un fake del fake del fuck

 Oh, ma vado avanti con l'altro nick, che sei piu' gentile.
Ma ciulati da solo ci riesci benissimo. Del resto "a mano" ci sai
fare...

 per forza, io ho due cose che tu non hai ^^
La zappa e l'aratro.

 soldi e del successo sei tu, paperino. Dev'essere un hobby regionale .-D
No non un hobby. Un lavoro. Almeno noi qui produciamo, tu, per tua
stessa ammissione, "non hai la faccia di uno che lavora"....
Parassita.

 Si basa su gtk2 si, ma a sto punto č meglio usare gtk2 direttamente :)
Il problema č che poi ti leghi mani e piedi a GTK.
Invece wx, essendo un layer /sopra/ GTK+, risulta piů portabile.
Utilizzando le stesse API wx, basta ricompilare l'applicazione per 
passare a wxCocoa oppure wxMac (Carbon), o wxMSW (su Windows), o pefino 
a wxWinCE e wxPalmOS.
Idealmente, senza riscrivere codice (e se usi il linkaggio dinamico, 
senza neanche ricompilare)... Insomma, sai benissimo di cosa parlo ;-)
Ciao,
Emanuele.

 tu solo chiacchere blah blah blah
A 'mbriaco! :-)

 senza neanche ricompilare)... Insomma, sai benissimo di cosa parlo ;-)
Si si ;-)


 diffuso. Punto.
Mi scuso se ho perso qualcosa.
Ma tu, esattamente, per chi lavori?
E quali sarebbero queste applicazioni che ti hanno portato vagonate di 
soldi?
A questo punto sono curioso...

 il bottoncino
Vedi che impari? Ci metti un po', ma impari.
- ElyBiggo o forse no


 Parassita.
Yessss! E magno alla stragrande coi soldi che fai tu al mio posto .-D


 per forza, io ho due cose che tu non hai ^^
Lo dici tu .-D


 Vedi che impari? Ci metti un po', ma impari.
Si. Grazie amico mio... sei preziosissimo!

 Yessss! E magno alla stragrande coi soldi che fai tu al mio posto .-D
Ehehe, dammi il tuo numero di conto che ti mando pure una piccola
elemosina pezzente...

 tappiamo i buchi). Almeno secondo te.
Minchia e vi lamentavate di me .-D
Questo non solo e' sauro, e' anche de coccio e troll.


Emanuele Zeppieri <ema...@tiscali.itSNIP_HERE.invalid> wrote:

sono mesi che non tocco una goccia d'alcool...

 elemosina pezzente...
Non serve, grazie. Investili in un manualetto di Ruby .-D


 Non serve, grazie. Investili in un manualetto di Ruby .-D
Ma dai ti mando un centone, cosě ci fai l'inverno pezzente dai... e ti
compri i libri non i manualetti... (adesso quadrano tante cose...)

 O forse Pippo.Foo? Ehi, ma e' un traduttore basic->resto del mondo! .-D
No, perchè? I dizionari non li ha solo il Basic (anzi). E un oggetto ben
fatto e ben progettato si comporta meglio di un banale dizionario.
-- 
blog:  
http://www.akropolix.net/rik0/blogs
 | Uccidete i filosofi,
site:  
http://www.akropolix.net/rik0/
      | tenetevi riso e
forum: 
http://www.akropolix.net/forum/
     | bacchette per voi.

 Java...
Per ragioni didattiche. C++ è il linguaggio imperativo più complesso con
una certa diffusione. Hai molti costrutti sintattici e semantici diversi
e un buon programmatore deve sapere quando usare cosa. Quando usare
programmazione generica, quando il polimorfismo dinamico. Deve avere
esperienza ad encapsulare interfacce procedurali in interfacce ad
oggetti. Deve conoscere le varie menate del linguaggio (ereditarietà
virtuale, metodi virtuali, classi astratte pure, classi astratte
standard, classi templatiche, le regole con cui interagiscono
overloading, overriding e parametri di default). È un linguaggio
*estremamente* difficile.
Il C sta tendendo a diventare un software di nicchia per molti aspetti,
oppure diventare effettivamente C++ (per lo meno un ibrido).
Java fra i tre è probabilmente il migliore. Ma ancora una volta espone
un sacco di dettagli "implementativi" non necessari per imparare a
programmare. 
Poi una volta che uno ha imparato le cose di base della programamzione,
come programmare ad oggetti, come strutturare il software, passare a
Java o C++ è questione di imparare la peculiarità di tali ambienti, le
complicazioni, etc etc. Ma questo su un substrato solido.
In didattica "fare una cosa per volta" è senza dubbio la cosa migliore.
Inoltre Python o Ruby danno soddisfazione da subito, permettendo anche
al programmatore poco esperto di affrontare progetti divertenti.


 guadagnato".
Nel senso che normalmente gli studenti non prendono soldi (ovviamente).
Eppure in certi campi l'università è disposta ad assumere gente e tutto.
Barilla non ti pagherà (probabilmente) per lavorare in Prolog, ma
qualcun altro che lo fa esiste.
E a me non cambia molto essere sotto-schiavo alla Barilla o
sotto-schiavo all'università. Ma se preferisco lavorare in Prolog ad un
progetto di un certo tipo vado sicuramente li. Anche perchè se uno si fa
un nome (ti faccio un esempio del mio campo) nei campi della verifica
formale, può tranquillamente finire a lavorare per chi fa software
mission critical e simili. E puoi immaginarti (sempre per buttarla sul
vile denaro) che un programmatore specializzato che lavora a software
industriale con livelli di tolleranza infinitesimi prende molto di più
di un praticone qualsiasi in Java.
Poi ribadisco, a me "fare tanti soldi" interessa poco. Preferisco avere
un lavoro che mi piace. 


 Ma dai ti mando un centone
Se proprio devi fantasticare almeno mandami un milione, come al Signor
Bonaventura. Ma non te la do' lo stesso, neanche per un milione.


 Bonaventura. Ma non te la do' lo stesso, neanche per un milione.
No sono realista e vorrei mandarti un centone, per me tanto vali...
(dovresti essere contento!)

 postato su i.c.l.p
Mi attacco qui per chiederti una cosetta decisamente OT.
Nelle slide della presentazione hai inserito una timeline (a pag.4)
molto carina. Con quale software č stata realizzata?
-- 
nif from outer space

 Lo dici tu .-D
rotfl, ho fatto bene a fare un savepoint all'inizio di questa deriva del
3d (che ci mettero` mesi a leggere  per inciso), lo sapevo che arrivavo
all'ultimo pallino e poi morivo daccapo :蚤
-- 
I've always been more concerned with users. )\._.,--....,'``.
Programmers do their work but once, while  /,   _.. \   _\  (`._._,
users are saddled with it ever thereafter. `_.-(,_..'--(,_..'`-.;.'

 -- a causa di una
piccola limitazione (adesso non ricordo esattamente quale...) ho finito
per fare in realta` _due_ timeline con Bee Docs, e quella che vedi a pag
4 come una singola timeline sono in realta` due PDF giustapposte (spero
"seamlessly", alla lettera;-).
Alex

 "seamlessly", alla lettera;-).
A occhio sebra di sě


 un casino che non voglio saperlo .-D
In linea teorica sono tutte cose estremamente banali da fare. Per farle
in modo sicuro si passa dal banale all'agevole.
