Re: [Python] sviluppare applicazioni android tramite python

2011-12-28 Per discussione Carlos Catucci
 Se consideriamo che se non nasceva per neinte era meglio invece ...


 Tu sei un ottimista.
 Pensa se nasceva PEGGIO. ;)


AAaarrhh!!!

Carlos
-- 
If you have no voice, SCREAM! If you have no legs, RUN! If you have no
hope, INVENT!
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] sviluppare applicazioni android tramite python

2011-12-28 Per discussione enrico franchi
2011/12/27 Giovanni Porcari giovanni.porc...@softwell.it


 Scrivo codice python e js continuamente e onestamente non trovo js
 così perfido.


No, secondo me e' assolutamente perfido. Il fatto e' che con un po' di
esperienza (oppure sagge letture) trovi relativamente facilmente un
sottoinsieme del linguaggio che invece e' piuttosto buono. E' un po' come
se prendessero Python e gli aggiungessero un po' di features ad minchiam.

Ci sarebbe sempre un sottoinsieme di Python che e' un ottimo linguaggio
(piu' o meno il python di oggi), ma complessivamente il linguaggio sarebbe
abbastanza perfido.

Immagino che tu usi il famoso sottoinsieme buono di Javascript e li
concordo: il linguaggio non e' male. Anzi, mi piace pure. Pero' ho deciso
che con tutti i linguaggi belli al mondo, la mia definizione di bello non
la posso applicare ad un linguaggio cui devo togliere due terzi dello
stesso.

Poi voglio dire... ci si puo' convivere. Diciamo che se penso che al posto
di Javascript avremmo dovuto avere Scheme (era quello il progetto
originario) mi viene davvero da piangere.

-- 
.
..: -enrico-
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] sviluppare applicazioni android tramite python

2011-12-28 Per discussione Carlos Catucci
Ci sarebbe sempre un sottoinsieme di Python che e' un ottimo linguaggio
(piu' o meno il python di oggi), ma complessivamente il linguaggio sarebbe
abbastanza perfido.

Ecco il problema mio e' che non amo i linguaggi funzionali. Per cui js non
rientrera' mai tra le mie grazie. Solo jQuery lo ha reso potabile. Ovvio
che dopo un po'ì scopri che jQuery a parte sono 10 cose in croce che devi
fare sempre, ti fai relative librerie e vivi se non felice almeno non
troppo triste.

Carlos
-- 
If you have no voice, SCREAM! If you have no legs, RUN! If you have no
hope, INVENT!
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] sviluppare applicazioni android tramite python

2011-12-28 Per discussione Gian Mario Tagliaretti
2011/12/27 Carlos Catucci carlos.catu...@gmail.com:
 Sinceramente penso che la scelta di java sia stata fatta perché è
 attualmente il linguaggio più popolare al mondo e lo scopo era rendere
 Android il più popolare possibile

 Una popolarita' immeritata, IMHO. Fortuna che .NET e' targato m$ altrimenti
 ci trovavamo vb.net allora :)

Carlos ma che due balle con sta storia che Python è meglio a
prescindere e tutto il resto è merda, Python è un buon linguaggio per
alcuni usi, punto a capo e guardiamo avanti.

Valutare la complessità di un software certo è difficile, per progetti
complessi Python diventa ingestibile, la IDE qualunque sia ad un
certo punto non riesce più a venirti incontro per le caratteristiche
del liguaggio, per altri linguaggi su cui costantemente si sputa sopra
(vedi .NET) la IDE in vece ti da una grossa mano ed il progetto
diventa più gestibile. Sono state fatte analisi sulla velocità dello
sviluppo vs la complessità di mantenimento e Python sopra una certa
complessità non è più così comodo (termine orribile) come per
progetti più piccoli.

Questo non vuol dire che non sia un bel linguaggio ma quando si esce
dall'ottica hobbistica e si entra in quella aziendale, le scelte non
possono essere solo per quello che è più bello o quello che mi piace
di più, ci sono aziende che per il software che producono trovano
Python ideale, e questo è buone e giusto, altre aziende che fanno
software diversi, il che non vuol dire migliori, non lo possono usare.

Parlo per esperienza diretta e non per sentito dire, in azienda da noi
sono state fatte delle scelte che a volte sono risultate sbagliate
altre volte azzeccate, si cerca di imparare dai propri errori, abbiamo
un software scritto in Python che è nato come prototipo, poi visto che
era ben fatto e che i clienti lo apprezzavano è stato portato avanti
come software in produzione, ora dopo qualche decina di migliaia di
righe di codice funziona benissimo per carità, metterci le mani però
non è più così divertente, tanto che si sta pensando di riscriverlo
in .NET

Se l'azienda vuol prendere le decisioni giuste ogni strumento ha i
suoi vantaggi, punto, non c'è il bello e il brutto, c'è il funziona o
non funziona per quell'applicazione.

Buon natale :)
-- 
Gian Mario Tagliaretti
GNOME Foundation member
gia...@gnome.org
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] sviluppare applicazioni android tramite python

2011-12-28 Per discussione Carlos Catucci
Carlos ma che due balle con sta storia che Python è meglio a

 prescindere e tutto il resto è merda, Python è un buon linguaggio per
 alcuni usi, punto a capo e guardiamo avanti.


Python e' un linguaggio adattissimo per lo scripting (tra le varie cose).
Javascript e' un linguaggio di scripitng (lo dice anche il nome). Ergo
visto che tra i linguaggi di scripting Python e' de facto meglio  il
sillogismo completalo tu.

Chiaro che se devo fare calcolo parallelo so che esistono opzioni di gran
lunga migliori.


 Valutare la complessità di un software certo è difficile, per progetti
 complessi Python diventa ingestibile, la IDE qualunque sia ad un
 certo punto non riesce più a venirti incontro per le caratteristiche
 del liguaggio, per altri linguaggi su cui costantemente si sputa sopra
 (vedi .NET) la IDE in vece ti da una grossa mano ed il progetto
 diventa più gestibile.


ho usato .NET (C# per l'estttezza) per progetti complessi. Bene la
famigerata mano che dici non la ho vista. A darmi una mano in gestione di
progetti complessi e' il fatto di scrivere bene il codice, usare un buon
applicativo di versioning, avere analisi fatte bene, etc. L'iDE e' comodo
per disegnare maschere (e qui infatti, parlo di ambito ClientServer, quindi
PyQt, PyGtk e WxPython non esiste uno strumento adeguato, ma non c'entra il
linguaggio) e per eseguire un debugging integrato (che pero' con prodotti
come Eclipse o Wing Ide riesci a fare lo stesso). Ma ho vist progetti anche
relativamente semplici imputtanati da project manager che non avevano le
idee chiare, e questo in qualsiasi linguaggio io abbia lavorato (e sono
diversi).



 Sono state fatte analisi sulla velocità dello
 sviluppo vs la complessità di mantenimento e Python sopra una certa
 complessità non è più così comodo (termine orribile) come per
 progetti più piccoli.


Non so chi abbia fatto le analisi e che paraemtri abbia considerato. Io ho
dovuto gestire cose complesse (tipo riscrivere un applicativo che emulasse
le funzionalita' di Skype con alcune funzionalita' aggiuntive ma ch girasse
su server del cliente). A parte le difficolta' intrinseche del progetto (ad
esempio avevano scelto WxPython come framework da usare, ma il cliente
sotto Windows voleva un look 'n' feel mac style perche' i mockup erano
stati fatti con un Mac e nessuno aveva spiegato al cliente che WxPython si
adatta al SO ospite e ci siamo dovuti riscrivere TUTTI i widget a mano) e
il fatto che abbiamo embeddato alcune cose (esempio la parte di gestione
delle video chiamate era gestita tramite wraper su applicazione nativa in
C) il progetto, fatto oltretutto in tempi strettissimi perche' chi gestiva
il progetto aveva AMPIAMENTE sottostimato il tutto, con tre gruppi di
sviluppatori che seguivano le varie parti (chi si occupava della GUI, chi
della parte server e chi della parte di trasmissione dati video e audio)
non abbiamo avuto problemi. Poi magari siamo solo stati fortunati.


 Questo non vuol dire che non sia un bel linguaggio ma quando si esce
 dall'ottica hobbistica e si entra in quella aziendale, le scelte non
 possono essere solo per quello che è più bello o quello che mi piace
 di più, ci sono aziende che per il software che producono trovano
 Python ideale, e questo è buone e giusto, altre aziende che fanno
 software diversi, il che non vuol dire migliori, non lo possono usare.


Io ho visto usare Python in tantissimi ambiti, e non usarlo in altri. Ne
primi casi non ho acora visto problemi, nei secondi ho visto problemi che
potevano essere evitati se si fosse usato. Poi ripeto, ci sono sicuramente
ambiti particolari (parallel processing, embedded su PLC, real time) dove
le prestazioni o altro di Python non si prestano. Pero' direi che e' un
linguaggio che permette di fare cose in maniera semplice ed efficiente piu'
di altri. Ci homesos meno tempo a scrivere un estrattore di dati (legge da
SqlServer e scrive su Postgress) in Python che non a fare la stessa cosa
con C#.



 Parlo per esperienza diretta e non per sentito dire, in azienda da noi
 sono state fatte delle scelte che a volte sono risultate sbagliate
 altre volte azzeccate, si cerca di imparare dai propri errori, abbiamo
 un software scritto in Python che è nato come prototipo, poi visto che
 era ben fatto e che i clienti lo apprezzavano è stato portato avanti
 come software in produzione, ora dopo qualche decina di migliaia di
 righe di codice funziona benissimo per carità, metterci le mani però
 non è più così divertente, tanto che si sta pensando di riscriverlo
 in .NET


Che sia stato sbagliato l'apporccio non e' possible? Voglio dire, se nasce
come prototipo, non e0 stato pendsato per esserre mantenuto come pregetto
complesso. Io se prgetto un applicativo complesso, lo progetto in un modo.
Se devo far vedere una demo di cosa POTREBBE fare un applicativo, da
realizzare a seguire, dopo la demo, se il cliente e' interessato, con sue
specifiche, lo progetto diversamente.


 Se l'azienda vuol prendere le decisioni giuste ogni 

Re: [Python] sviluppare applicazioni android tramite python

2011-12-28 Per discussione enrico franchi
2011/12/28 Gian Mario Tagliaretti g.tagliare...@gmail.com


 Carlos ma che due balle con sta storia che Python è meglio a
 prescindere e tutto il resto è merda,


Questo effettivamente e' poco motivato.


 Valutare la complessità di un software certo è difficile, per progetti
 complessi Python diventa ingestibile, la IDE qualunque sia ad un
 certo punto non riesce più a venirti incontro per le caratteristiche
 del liguaggio, per altri linguaggi su cui costantemente si sputa sopra
 (vedi .NET) la IDE in vece ti da una grossa mano ed il progetto
 diventa più gestibile. Sono state fatte analisi sulla velocità dello
 sviluppo vs la complessità di mantenimento e Python sopra una certa
 complessità non è più così comodo (termine orribile) come per
 progetti più piccoli.


1. questi studi sarebbero da vedere e da valutare, secondo me. anche senza
volerlo si possono prendere conclusioni parecchio sbagliate. personalmente
credo che uno studio di questo tipo sia essenzialmente privo di senso. il
problema e' che puoi valutare una tecnologia solo sulla base di un prodotto
che e' pero' fatto da uomini: quindi devi trovare il modo di rendere
indipendente lo studio da chi lo ha fatto. tenendo conto che e' noto che le
differenze individuali fra due sviluppatori possono essere immense, che
possono essere immense le differenze dello stesso sviluppatore con
tecnologie diverse, che possono essere diverse le interazioni di gruppo,
etc etc etc.

Ecco, diciamo che vedo molto complesso fare uno studio di questo tipo in
modo scientifico e le cui conclusioni possano essere facilmente condivise
perche' considerabili oggettive.

2. Io ho sempre considerato le IDE come una cosa che piu' che altro tappa i
buchi di linguaggi con caratteristiche abbastanza peculiari. Linguaggi
molto verbosi, con informazione ripetuta (pensa a Java e al fatto che un
file deve riportare all'interno del file il path e che deve anche essere
esattamente in quella posizione relativa.. e' il tipo di cose che un umano
deve fare due volte per fare quasi la stessa cosa).

Oppure trovo gli IDE molto sensati anche quando lavorano bene con il
framework in questione (e.g., Python + Django e' molto comodo con un IDE).

In particolare, non sono minimamente convinto che linguaggio scemotto + IDE
venga piu' produttivo di linguaggio fatto bene + IDE. Il punto e' che
molte delle cose che permettono ad un IDE di fare cose avanzate (sono
quelle che fanno risparmiare tempo) sono le stesse che fanno perdere tempo
ai programmatori umani, quindi bisognerebbe vedere il bilancio complessivo.

Come sai non conosco .Net. Conosco abbastanza bene Java, pero'. E posso
dirti che molte cose *banali* in Python per *non* scrivere codice, in Java
richiedono cura e attenzione. Per me il modo migliore di tagliare i costi
di manutenzione e' *non* scrivere il codice. Perche' il codice non scritto
non va mantenuto.

Poi come sempre bisogna considerare la realta' del team con cui si lavora.
Se alla fine bisogna scrivere Python quasi come fosse Java allora gli
unici vantaggi sono davvero a basso livello, perche' Python e' un po' piu'
comodo nello smazzare i dati (stringhe, dizionari, etc). Tutto quello che
gli sta sopra sara' piu' o meno Java cammuffato da Python e allora tanto
vale Java, IDE e compagnia.

3. Nonostante tutto sono d'accordo, ma in un senso diverso. Ovvero oltre un
certo livello di complessità la complessità inerente del linguaggio
probabilmente diventa trascurabile rispetto quella del progetto. Linguaggi
maturi come Java hanno una serie di librerie che aiutano, ma spesso sono
abbastanza complicate e la loro complessità finirebbe per dominare la
complessita' di un progetto medio. Viceversa su un progetto molto complesso
si ripagano.

In questo senso la parte di codice in cui Python vince, su un progetto
molto complesso probabilmente e' piccola.

Credo poi che il tutto dipenda da cosa intendiamo con complesso. Io credo
che tu parli di complessità orizzontale e ho applicato questa idea al mio
precedente discorso.



 Questo non vuol dire che non sia un bel linguaggio ma quando si esce
 dall'ottica hobbistica e si entra in quella aziendale, le scelte non
 possono essere solo per quello che è più bello o quello che mi piace
 di più, ci sono aziende che per il software che producono trovano
 Python ideale, e questo è buone e giusto, altre aziende che fanno
 software diversi, il che non vuol dire migliori, non lo possono usare.


Assolutamente. Ognuno fa le sue scelte. Pero' non necessariamente sono
scelte ottime.
Pero' non metterei la cosa in hobby vs. azienda (sotto-intendendo che la
logica aziendale sia migliore [0]).
Semplicemente uno si fa le sue scelte sulla base di motivazioni tecniche.

Forse io ho letto un po' troppo Graham, ma alla fine credo che le scelte
coraggiose vadano fatte.

 Parlo per esperienza diretta e non per sentito dire, in azienda da noi
 sono state fatte delle scelte che a volte sono risultate sbagliate
 altre volte azzeccate, si cerca di imparare dai propri 

Re: [Python] sviluppare applicazioni android tramite python

2011-12-28 Per discussione Giovanni Porcari

Il giorno 28/dic/2011, alle ore 10:57, Carlos Catucci ha scritto:

 Ecco il problema mio e' che non amo i linguaggi funzionali. Per cui js non 
 rientrera' mai tra le mie grazie. Solo jQuery lo ha reso potabile. Ovvio che 
 dopo un po'ì scopri che jQuery a parte sono 10 cose in croce che devi fare 
 sempre, ti fai relative librerie e vivi se non felice almeno non troppo 
 triste. 


Ecco appunto il senso era quello. Per le cose che faccio e andando di librerie 
mie e di dojo
ho pythonizzato js al punto che quasi non mi accorgo della differenza.
Per questo dicevo che non è così perfido.
In 40 anni di sviluppo software ho visto davvero di peggio. 
Cioè, tornando ad un thread precedente, con PHP proprio non sono riuscito a 
convivere,
conati di vomito ad ogni riga.

Comunque, giusto per accendere un cerino... jQuery vs Dojo che ne pensi ?


G 
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] sviluppare applicazioni android tramite python

2011-12-28 Per discussione Carlos Catucci
Ecco appunto il senso era quello. Per le cose che faccio e andando di
librerie mie e di dojo

 ho pythonizzato js al punto che quasi non mi accorgo della differenza.


Infatti ho benedetto il nome del creatore di jQuery per questo motivo.


 Per questo dicevo che non è così perfido.
 In 40 anni di sviluppo software ho visto davvero di peggio.
 Cioè, tornando ad un thread precedente, con PHP proprio non sono riuscito
 a convivere,
 conati di vomito ad ogni riga.

 Comunque, giusto per accendere un cerino... jQuery vs Dojo che ne pensi ?
  http://lists.python.it/mailman/listinfo/python


Diciamo che li vedo meglio assime che contrapposti. Per la parte GUI Dojo
e' una manna, per la parte di linguaggio piu' generico (i.e. ajax, ma non
solo) direi che jQuery dia il meglio di se. Accoppiati sono imbattibili.

Carlos
-- 
If you have no voice, SCREAM! If you have no legs, RUN! If you have no
hope, INVENT!
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] sviluppare applicazioni android tramite python

2011-12-28 Per discussione Carlos Catucci
Carlos ma che due balle con sta storia che Python è meglio a

  prescindere e tutto il resto è merda,


 Questo effettivamente e' poco motivato.


Il problema reale e' che Python e' un linguaggio che mi sembra essere nato
prendendo solo il meglio degli altri. A volte, sopratutto all'inizio, mi
sembravano assurde alcune scelte (non avere switch/select/case per dirne
una), poi lavorandoci mi sono dovuto ricredere. Tutto e' fatto secondo
logica. Altri linguaggi non hanno questa caratteristica. Parliamodi Java,
per fare un esempio. No, ereditarieta' multipla no,

1. questi studi sarebbero da vedere e da valutare, secondo me. anche senza
 volerlo si possono prendere conclusioni parecchio sbagliate. personalmente
 credo che uno studio di questo tipo sia essenzialmente privo di senso. il
 problema e' che puoi valutare una tecnologia solo sulla base di un prodotto
 che e' pero' fatto da uomini: quindi devi trovare il modo di rendere
 indipendente lo studio da chi lo ha fatto. tenendo conto che e' noto che le
 differenze individuali fra due sviluppatori possono essere immense, che
 possono essere immense le differenze dello stesso sviluppatore con
 tecnologie diverse, che possono essere diverse le interazioni di gruppo,
 etc etc etc.


Confcordo hai espresso meglio di me il concetto. Anche perche' spesso gli
studi sono influenzati dalle idee di chi li esegue. Se lo facessi io
probabilmente salterebbe fuori che Python e' il migliore in assoluto. Alla
fin fine si prendono iun esame sempre le cose che piu' si adattano ai
nostri modi di vedere le cose.


 2. Io ho sempre considerato le IDE come una cosa che piu' che altro tappa
 i buchi di linguaggi con caratteristiche abbastanza peculiari. Linguaggi
 molto verbosi, con informazione ripetuta (pensa a Java e al fatto che un
 file deve riportare all'interno del file il path e che deve anche essere
 esattamente in quella posizione relativa.. e' il tipo di cose che un umano
 deve fare due volte per fare quasi la stessa cosa).


Un buon IDE e' una cosa utile. Pero' se SENZA non riesci a fare una cippa
(.NET ad esempio, voglio vederti a scrivere cose senza IDE sotto) allora il
linguaggio ha qualcosa che non va.


 Oppure trovo gli IDE molto sensati anche quando lavorano bene con il
 framework in questione (e.g., Python + Django e' molto comodo con un IDE).


Quale? Io uso un semplice editor (Sublime Text2) pero' se devo gestire un
PROGETTONE passo a Wing Ide.


 Come sai non conosco .Net. Conosco abbastanza bene Java, pero'.


Diciamo che C# e' quello che Java avrebbe potuto essere. Ma non ce l'ha
fatta.


 E posso dirti che molte cose *banali* in Python per *non* scrivere codice,
 in Java richiedono cura e attenzione. Per me il modo migliore di tagliare i
 costi di manutenzione e' *non* scrivere il codice. Perche' il codice non
 scritto non va mantenuto.


Portrei citare (ma le potrete leggere sulla brochure appena la finisco)
fior di pensatori al riguardo. Mi limito al Life is short (you need
python).


  Poi come sempre bisogna considerare la realta' del team con cui si
 lavora. Se alla fine bisogna scrivere Python quasi come fosse Java allora
 gli unici vantaggi sono davvero a basso livello, perche' Python e' un po'
 piu' comodo nello smazzare i dati (stringhe, dizionari, etc). Tutto quello
 che gli sta sopra sara' piu' o meno Java cammuffato da Python e allora
 tanto vale Java, IDE e compagnia.


A direil vero anche solo smazzare uelal roba basterebe a farmelo
prediligere. Quando devo srotolare ua srie di liste e dizionari (in quei
casi array e hashtables) uno dentro l'altro con altri linguaggi c'e' da
divenare di gomma.


 3. Nonostante tutto sono d'accordo, ma in un senso diverso. Ovvero oltre
 un certo livello di complessità la complessità inerente del linguaggio
 probabilmente diventa trascurabile rispetto quella del progetto. Linguaggi
 maturi come Java hanno una serie di librerie che aiutano, ma spesso sono
 abbastanza complicate e la loro complessità finirebbe per dominare la
 complessita' di un progetto medio. Viceversa su un progetto molto complesso
 si ripagano.


Le libreire di linguaggi complessi sono complesse. E rendono complessi
ancora di piu' i progetti.


 Assolutamente. Ognuno fa le sue scelte. Pero' non necessariamente sono
 scelte ottime.
 Pero' non metterei la cosa in hobby vs. azienda (sotto-intendendo che la
 logica aziendale sia migliore [0]).
 Semplicemente uno si fa le sue scelte sulla base di motivazioni tecniche.


Tipo conoscere meglio (non parlo del singolo ma del team) un dato
linguaggio rispetto ad un altro. Vero che (parlo di almeno altre 5
esperienze oltre a quella personale, tra cui quella di Eric Raymond, e il
fetchmail conf GUI) scrivere un qualocsa in python senza averlo mai visto
predne pochi giorni di cui 2 o 3 al massimo per impararlo. Altri linguaggi
questa simpatica caratteristica non la hanno.


 IMHO questo esempio non calza troppo. Cioe' se prendi un software (scritto
 in qualunque linguaggio) e lo evolvi o molto a lungo o 

Re: [Python] sviluppare applicazioni android tramite python

2011-12-28 Per discussione enrico franchi
2011/12/28 Carlos Catucci carlos.catu...@gmail.com

 Carlos ma che due balle con sta storia che Python è meglio a

  prescindere e tutto il resto è merda,


 Questo effettivamente e' poco motivato.


 Il problema reale e' che Python e' un linguaggio che mi sembra essere nato
 prendendo solo il meglio degli altri.


Diciamo che è stato ben pensato. Purtroppo tante cose carine non possono
entrarci e va bene cosi'.


  A volte, sopratutto all'inizio, mi sembravano assurde alcune scelte (non
 avere switch/select/case per dirne una), poi lavorandoci mi sono dovuto
 ricredere. Tutto e' fatto secondo logica. Altri linguaggi non hanno questa
 caratteristica.


E'... ma quale e' la logica di *non* avere uno switch statement?
Sinceramente non lo so.
Personalmente non ne sento il bisogno, ma non e' completamente chiaro
perche' non ci sia.

Ci sono casi in cui sento profondamente che un dizionario e' la cosa giusta
da usare. Casi in cui e' un pochetto meglio una classe (a me per dire un
dizionario infarcito di lambda non piace mica tanto).

Ma non e' che direi che Python sarebbe peggiore se avesse uno switch.


 Parliamodi Java, per fare un esempio. No, ereditarieta' multipla no,


 Pensa, io trovo molto sensata la mancanza di ereditarietà multipla. Primo,
per averla ad minchiam come in C++ e' meglio non averla.
Secondo credo che in ~8-9 anni di Python l'ho usata per la prima volta 2
mesi fa. Principalmente perchè per pigrizia mentale ho copiato il design
precedente di una vecchia incarnazione e non mi sono deciso a fare con
strategy quello che facevo con template method.

In generale ereditarieta' di interfaccia (multipla) non mi da problemi e mi
serve. Ovviamente se sono statico. In Python in un certo senso non serve in
un altro e' automatica. L'ereditarieta' di implementazione la posso avere
facilmente con delegazione.

Poi io sono decisamente sul lato deleghiamo.

Confcordo hai espresso meglio di me il concetto. Anche perche' spesso gli
 studi sono influenzati dalle idee di chi li esegue. Se lo facessi io
 probabilmente salterebbe fuori che Python e' il migliore in assoluto. Alla
 fin fine si prendono iun esame sempre le cose che piu' si adattano ai
 nostri modi di vedere le cose.


Non e' detto che siano influenzati dalle /idee/ di chi li esegue.
Scientificamente parlando e' un po' come affermare la malafede.
No, credo che siano facilmente influenzabili da semplici condizioni al
contorno difficili da valutare. Qualunque sia il risultato.
Per quello mi interessava vedere gli studi.


2. Io ho sempre considerato le IDE come una cosa che piu' che altro tappa i
 buchi di linguaggi con caratteristiche abbastanza peculiari. Linguaggi
 molto verbosi, con informazione ripetuta (pensa a Java e al fatto che un
 file deve riportare all'interno del file il path e che deve anche essere
 esattamente in quella posizione relativa.. e' il tipo di cose che un umano
 deve fare due volte per fare quasi la stessa cosa).


 Un buon IDE e' una cosa utile. Pero' se SENZA non riesci a fare una cippa
 (.NET ad esempio, voglio vederti a scrivere cose senza IDE sotto) allora il
 linguaggio ha qualcosa che non va.


Ma no... non e' che ha qualcosa che non va. E' semplicemente concepito
diversamente. Smalltalk, giocaci senza IDE. E sinceramente, al di la che
non mi piace la sintassi, non mi sembra abbia molto che non va. E' un caso
estremo: e' un linguaggio che essenzialmente non e' file-based e di
conseguenza un semplice editor non ce la potrebbe proprio fare.

Certo, il fatto che un linguaggio richieda tools molto sofisticati può
essere un indice di un qualche problema. Per esempio del semplice fatto che
e' verboso. E' una cosa che in genere mi scrota, ma a volte amen.

Oppure trovo gli IDE molto sensati anche quando lavorano bene con il
 framework in questione (e.g., Python + Django e' molto comodo con un IDE).


 Quale? Io uso un semplice editor (Sublime Text2) pero' se devo gestire un
 PROGETTONE passo a Wing Ide.


Ho mollato wing per PyCharm. Dovrebbero essere grosso modo equivalenti.
Diciamo che usando gia' IntelliJ la cosa per me ha molto senso. E in
aggiunta, come dire... GTK su mac os non e' esattamente un fiore. Più
PyCharm ragiona con pypy... su cui piano piano mi voglio spostare.

Come editor dopo tanti esperimenti mi sto adagiando su vim.




 Come sai non conosco .Net. Conosco abbastanza bene Java, pero'.


 Diciamo che C# e' quello che Java avrebbe potuto essere. Ma non ce l'ha
 fatta.


Ammetto candidamente di non conoscere C#. So che ha un sacco di cose che
Java non ha e che sarebbe bene che avesse. Forse alcune delle più critiche
le aggiungeranno con la 8, dopo tipo 20 anni di esistenza. Ma vabbe'.

Fatto sta che ormai Java lo conosco bene, so come muovermici intorno e mi
e' piuttosto comodo.

A direil vero anche solo smazzare uelal roba basterebe a farmelo
 prediligere. Quando devo srotolare ua srie di liste e dizionari (in quei
 casi array e hashtables) uno dentro l'altro con altri linguaggi c'e' da
 divenare di gomma.


Re: [Python] sviluppare applicazioni android tramite python

2011-12-28 Per discussione Carlo Miron
2011/12/29 enrico franchi enrico.fran...@gmail.com:
 2011/12/28 Carlos Catucci carlos.catu...@gmail.com
[zap]
 A volte, sopratutto all'inizio, mi sembravano assurde alcune scelte (non
 avere switch/select/case per dirne una), poi lavorandoci mi sono dovuto
 ricredere. Tutto e' fatto secondo logica. Altri linguaggi non hanno questa
 caratteristica.
 E'... ma quale e' la logica di *non* avere uno switch statement?
 Sinceramente non lo so.
 Personalmente non ne sento il bisogno, ma non e' completamente chiaro
 perche' non ci sia.

Perche` ci sono i dict?

 Ci sono casi in cui sento profondamente che un dizionario e' la cosa giusta
 da usare. Casi in cui e' un pochetto meglio una classe (a me per dire un
 dizionario infarcito di lambda non piace mica tanto).

True. Ma hai usecase in cui uno statement switch sarebbe la cosa giusta™?

 Ma non e' che direi che Python sarebbe peggiore se avesse uno switch.

Ok. Ma probabilmente non sarebbe migliore. E questo IMHO e`
sufficiente per non.

 Parliamodi Java, per fare un esempio. No, ereditarieta' multipla no,

  Pensa, io trovo molto sensata la mancanza di ereditarietà multipla. Primo,
 per averla ad minchiam come in C++ e' meglio non averla.

Concordo. *Ma* nel caso di Python trovo sensato il permettere
l'ereditarieta` multipla piuttosto di specialcasizzare classi ed
interfacce. Ma magari sbaglio, boh.

[rizap]
 Un buon IDE e' una cosa utile. Pero' se SENZA non riesci a fare una cippa
 (.NET ad esempio, voglio vederti a scrivere cose senza IDE sotto) allora il
 linguaggio ha qualcosa che non va.

 Ma no... non e' che ha qualcosa che non va. E' semplicemente concepito
 diversamente. Smalltalk, giocaci senza IDE.

Eh, grazie al cazzo, riko. Allora tira fuori anche l'altro caso limite, FORTH.
No, spiace, nessuno dei due giustifica l'(ab)uso di IDE da parte di Java e C#.
Entrambi usano la metafora del file, e pertanto dovrebbero essere
decentemente usabili con un editor. No.

 E sinceramente, al di la che non
 mi piace la sintassi, non mi sembra abbia molto che non va.

Non ha nulla che no va, *soprattutto* nella sintassi. Che puo` non
piacere, percaritadiddio, ma e` abbastanza inattaccabile.

 E' un caso
 estremo: e' un linguaggio che essenzialmente non e' file-based e di
 conseguenza un semplice editor non ce la potrebbe proprio fare.

Appunto. Quindi, checcentra con Java e .Net?

 Certo, il fatto che un linguaggio richieda tools molto sofisticati può
 essere un indice di un qualche problema. Per esempio del semplice fatto che
 e' verboso. E' una cosa che in genere mi scrota, ma a volte amen.

Definisci amen, please. :P

[editorz znipped]
 Come editor dopo tanti esperimenti mi sto adagiando su vim.

/me mette un braccio intorno alle forti spalle di riko, si volta verso
teknico, e sorride.

[various bestemmie snapped]
 Fatto sta che ormai Java lo conosco bene, so come muovermici intorno e mi e'
 piuttosto comodo.

Brr. Esci da questo corpo.

 A direil vero anche solo smazzare uelal roba basterebe a farmelo
 prediligere. Quando devo srotolare ua srie di liste e dizionari (in quei
 casi array e hashtables) uno dentro l'altro con altri linguaggi c'e' da
 divenare di gomma.

 Non so su C#... ma su Java non e' particolarmente scomodo.

Nel senso che non sei costretto ad inginocchiarti sui ceci, giusto?

 E' scomodo
 principalmente in C++ (veramente una cifra) o in C.
 La rottura di palle (in Java) e' che manca una sintassi fancy per
 costruirli, ma amen.

Ridefinisci amen, please. :PP

 Oggettivamente a seconda del codice che scrivi puö facilmente capitarti
 molto poco di lavorare a quel livello di astrazione.

 A me capita spesso.

Tridefinisci amen, please. :PPP

[sstrappp]
 Aspetta pero'. Questi sono una serie di aspetti complicatissimi. Uno, quello
 che fa esr e' poco esplicativo. Probabilmente con la testa che ha prende su
 K in 4 giorno invece che 2.

Eh?

 Il problema e' chi sei prima di impararlo. Mi spiego: se sei un cattivo
 programmatore prima di imparare Python, impari Python in 3 giorni e continui
 ad essere un cattivo programmatore. Adesso scriverai cattivi programmi in
 Python invece che in VB! :)

Beh, suvvia, e` un minimo migliorameno, comunque :P

 Pero' se hai un team ben agguerrito su Java, che sa il fatto suo in Java non
 sono convinto che passando a Python diventeranno improvvisamente molto piu'
 produttivi. per tutta quella serie di menate ambientali che uno impara piano
 piano con il tempo.

Io invece sono ragionevolmente convinto che *non* sia vero, purtroppo. Amen (!)

[8]
 Scusa, non sono d'accordo. Contestualizziamo. C# e' un linguaggio ad
 oggetti. Mi risulta anche uno piuttosto pulito.

Certo, se non ti piace la sintassi di Smalltalk... :P

[...]
 Se invece stiamo parlando del Python effect allora non aggiungo altro e
 fine della storia. Ma non e' esattamente colpa di C#, e' semplicemente colpa
 del fatto che di qua ci potrebbe essere un pochino di selezione a monte.

This is Sparta!

©
-- 
Carlo Miron
Spartan Solution 

Re: [Python] sviluppare applicazioni android tramite python

2011-12-28 Per discussione Marco Beri
2011/12/29 Carlo Miron mi...@python.it

 2011/12/29 enrico franchi enrico.fran...@gmail.com:
  Certo, il fatto che un linguaggio richieda tools molto sofisticati può
  essere un indice di un qualche problema. Per esempio del semplice fatto
 che
  e' verboso. E' una cosa che in genere mi scrota, ma a volte amen.

 Definisci amen, please. :P


Per piacere, a me definisci scrota, invece?


 This is Sparta!


http://www.youtube.com/watch?v=tyZijNRhck8

:-)

Ciao.
Marco.
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] sviluppare applicazioni android tramite python

2011-12-28 Per discussione Francesco Maida
2011/12/28 Marco Mariani bir...@gmail.com:
 L'alternativa era Tcl. Baciamoci I gomiti.

Oppure poteva anche essere il suo fratellastro Actionscript, se
Adobe fosse riuscita a convincere i tizi dell'ECMA a suo tempo.
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python