Newsgroup: it.comp.programmare
Titolo: RAD chi è costui?!?!

Non se avete già visto questa intervista:
http://www.stifflog.com/2006/10/16/stiff-asks-great-programmers-answer/
Mi ha molto colpito la domanda circa gli editor utilizzati tra
Torvalds, Stroustrup eccetera: Emacs
micro-emacs, TextMate, vi+emacs, emacs (ah!)...
Quello che mi ha steso è stato il buon Bjarne: lui utilizza SAM. SAM.
Non so se avete presente:
http://doc.cat-v.org/plan_9/4th_edition/papers/sam/sam.fig1.png
Tenendo conto che quello che fanno è molto più di programmare un
gestionale :) mi chiedo se non debba buttare tutti i miei editor VB6,
C#, CodeBlocks e tenere su solo il notepad e un abaco :))
ciao

 ciao
Il punto � proprio che loro non si occupano di gestionali.
Credo siano pi� orientati allo sviluppo del motore di funzionamento di un 
programma, piuttosto che all'aspetto relativo all'interfaccia grafica.
Per esempio, Torvalds, nello sviluppo del kernel di linux, cosa se ne fa di 
un rad? 


Un editor deve avere due caratteristiche imprescindibili:
1) potersi usare solo ed unicamente con tastiera
2) essere programmabile
Gli editor elencati da quei programmatori soddisfano entrambe le
condizioni.
La roba che usi tu, nessuna delle due.
Vedi tu.

 1) potersi usare solo ed unicamente con tastiera
Beh, con cos'altro vorresti usarlo? :-P
Vuoi escludere anche il mouse? 

 Quello che mi ha steso è stato il buon Bjarne: lui utilizza SAM. SAM.
Il tono era scherzoso, of course. Ma resta il fatto che c'è gente che
veramente utilizza al minimo i tool di sviluppo, evitando naturalmente
e senza spocchia lo "zucchero sintattico" (bella espressione di
Landin). Insomma un po' (mi) fa arrossire e/o girare i cosiddetti.
ciao

 micro-emacs, TextMate, vi+emacs, emacs (ah!)...
Un paio dicono anche NetBeans...
Se provi a metterti gli sci del campione del mondo, probabilmente ti 
rompi una gamba alla prima curva. Non � detto che quel che va bene ai 
fuoriclasse, vada bene alla maggior parte delle persone.
A parte questo, Steve Yegge dice: "Every programmer should learn how to 
use every tool in /bin and /usr/bin." Tu non hai niente di meglio da 
imparare nella vita? Io s� :-)
Ciao.

 Vuoi escludere anche il mouse?
Un editor deve poter essere utilizzabile al 100% anche senza mouse.

 imparare nella vita? Io s :-)
Tu non fare il programmatore allora.

 Landin). Insomma un po' (mi) fa arrossire e/o girare i cosiddetti.
Emacs "il minimo" ?
Guarda che non essere RAD non significa essere il minimo, forse ti 
conviene riguardarteli un secondo.
Ho giusto qui un bel libro su vim, dici che hanno ripetuto il mapping 
dei tasti per 400 pagine ?
  ngw
-- 
Nicholas Wieland (ngw)
Zooppa CTO
911 Western Avenue, Suite 420
Seattle, WA  98104  US

 Emacs "il minimo" ?
Intendevo minimo di zucchero sintattico.
ciao

 dei tasti per 400 pagine ?
Beh, non sarebbe male come idea! New-nuvòart! :)

 Intendevo minimo di zucchero sintattico.
Non capisco in che modo lo "zucchero sintattico" possa c'entrare con un editor.
In ogni caso, Emacs contiene un interprete Lisp, di "zucchero 
sintattico" ce n'� un bel po'.


 C#, CodeBlocks e tenere su solo il notepad e un abaco :))
Per metterci il carico da 11, ho letto (non so se era su questo NG o 
altrove, onestamente non lo ricordo) che i migliori programmatori della 
Microsoft NON usano il Visual Studio ma i loro vecchi tool. Che a questo 
punto immagino non essere poi tanto diversi da quelli di Torvalds e 
compagnia...
Insomma che mettono in piedi a fare una cattedrale come il VS se poi per 
lavorare usano tutt'altro??? Non mi ha fatto una gran bella impressione 
saperlo, anzi. Mi ritorna in mente ogni volta che mi ritrovo a 
combattere con la config e gli wizard di VS9: ho una sensazione come 
se... ecco, come se qualcuno, molto, molto lontano, mi stesse guardando 
tribolare col VC e si sbellicasse dalle risate O_O

 Un editor deve poter essere utilizzabile al 100% anche senza mouse.
Allora dovevi dire anche unicamente con tastiera, non solo. 

 si sbellicasse dalle risate O_O
Beh, puoi sempre farne a meno.
Tuttavia, notare che i tool grafici, con qualche click ti risparmiano 
svariate righe di codice a cui possono seguire svariati errori, non li rende 
spazzatura, altrimenti si sarebbero estinti.
Tutto dipende dal tipo di applicazione. Se bisogna sviluppare una GUI, tali 
tool sono i migliori. 

 tasti per 400 pagine ?
No, ma usano font grossi, interlinee larghe, e stampano una pagina si e una 
no ;-) 

 
Se il linguaggio o framework che usi richiede codice che può essere 
generato in automatico, allora c'è un forse problema con il linguaggio o 
framework.
Ciao  Manlio

 framework.
Se sposto un pulsante sulla form e facendo doppio click gestisco subito 
l'evento onClick, che problema c'è? 



Nessuno.
Solo che non c'è reale bisogno di un RAD per questo.
Al limite ti serve un programma per disegnare l'interfaccia grafica, come 
Glade o QT Designer.
Ciao  Manlio

 Allora dovevi dire anche unicamente con tastiera, non solo.
No. La differenza e' una sfumatura, ma c'e'.
Un editor come Emacs o Vi, nasce per essere usato solo con tastiera.
Oggi come oggi ne hanno fatto dei porting integrando anche il mouse,
tanto che ne ho visti con menu a tendina, e con mouse che gestisce
funzionalita' come il copia/incolla, ma senza togliere il fatto che
senza mouse continuano ad essere utilizzabili al 100%.
Quindi non si pretende che siano usabili unicamente con tastiera, ma
che il mouse, quando c'e', non sia l'unico strumento per attivare
alcune di queste funzionalita'.

 "Manlio Perillo" <manlio_perill...@SPAMlibero.it> ha scritto:

Come dice Manlio, il problema si pone nel momento in cui tu, senza
l'ausilio di una interfaccia grafica, non sei in grado di scrivere del
codice equivalente a quello generato automaticamente dal trascinamento
del pulsante e relativo doppio click sopra di esso per scrivere il
codice dell'evento onClick.
Un conto e' il facilitarti la scrittura di qualcosa che conosci, un
conto e' scrivere codice al tuo posto e completamente fuori dal tuo
controllo.

 alcune di queste funzionalita'.
Allora l'avevi intesa come condizione sufficiente, non necessaria :-P 

 Glade o QT Designer.
Beh, l'utilità del RAD io la vedo soprattutto in quello.
Tu cosa intendi per RAD in senso più ampio?
Cioè, cosa consideri "superfluo"? 

 controllo.
Direi che un conto � usare quelle scorciatoie per non perdere tempo e un 
conto � usarle perch� non si � in grado di fare diversamente. 

 framework.
Infatti. Se si usano i framework per le GUI è perché il 90% del codice è 
standard e deve essere ripetuto sempre uguale; uno deve scrivere di suo 
solo quel 10% che gli interessa (percentuali mie: magari non sono 
davvero quelle ma il concetto c'è).
Un framework o linguaggio "ideale" per GUI dovrebbe permetterti di 
scrivere solo quel 10% di codice che riguarda il tuo problema 
particolare, e pensare lui a tutto il resto in modo completamente 
trasparente.
Delphi era un apprezzabile tentativo in questo senso, .NET è il 
successore ma secondo me ancora non ci siamo. Non è un caso che le web 
application abbiano preso e stiano prendendo tanto piede: permettono di 
fare GUI senza doverle programmare.
Magari è proprio questo il futuro: da una parte il codice sorgente 
dell'applicazione in C, C++ o quel che è, compilato e pronto, e 
dall'altra un linguaggio di definizione grafica della GUI che viene 
interpretato al volo quando serve di mostrare qualcosa a video.

 conto � usarle perch� non si � in grado di fare diversamente.
Ok. Questo e' esattamente il punto.
Ora, tu ritieni che si perda meno tempo usando l'interfaccia grafica che 
ti permette di collocare il bottone nella finestra, doppiocliccare e 
scrivere in quell'editor il codice dell'onClick.
Altri programmatori invece ritengono che si perda meno tempo scrivendo 
il codice che il RAD genererebbe in automatico, ma avvalendosi di tutti 
i vantaggi che offre un editor come Vi o Emacs, rispetto allo 
pseudoeditor integrato nel RAD.
I fatti poi ci raccontano che piu' un programmatore diventa esperto e 
piu' tende ad avvalersi di editor piuttosto che ambienti integrati.
Senza voler necessariamente concludere che e' meglio usare quegli 
editor, ci limitiamo ad osservare come i programmatori piu' esperti 
ritengano che sia meglio.
E io, come esperienza personale, tutte le volte che mi tocca usare un 
editor integrato in un certo ambiente piuttosto che il mio Vi, sono 
sempre arrivato ad un punto in cui mi e' toccato imprecare per non avere 
a disposizione una certa funzionalita' del Vi che in quel momento mi 
avrebbe alleggerito un palloso lavoro.

 Non capisco in che modo lo "zucchero sintattico" possa c'entrare con un editor.
Beh il concetto è stato capito da molti, no?
ciao

 
http://doc.cat-v.org/plan_9/4th_edition/papers/sam/sam.fig1.png
Oh, da uno che ha progettato il C++ mi aspettavo qualcosa del genere. O
che usasse ed con tastiera dvorak. O qualunque altra cosa che mostrasse
una profonda perversione del concetto di "usabilita'".
-- 
-riko

 avrebbe alleggerito un palloso lavoro.
Evidentemente una fra:
1) non conosci l'ambiente che utilizzi[0]
2) utilizzi un cattivo ambiente
----
[0] per dire, WingIDE ha modi emacs o vim decisamente efficaci, idem
Komodo, idem li hanno Eclipse o Idea. La roba Cocoa (quindi TextMate o
XCode) supporta un ricchissimo sottoinsieme delle scorciatoie di Emacs,
piu' le loro, piu' sono pesantissimamente configurabili.
-- 
-riko

 Beh il concetto � stato capito da molti, no?
No. Non si capisce neanche cosa sia la sintassi di un editor.



Magari avessi avuto a disposizione cose come WingIde!
Purtroppo l'editor integrato dell'ambiente in cui mi tocca lavorare e'
una fetecchia peggio del notepad!
Si tratta di una robaccia proprietaria che genera del vxml che deve
integrarsi in un ambiente proprietario...
E l'editor integrato fa schifo: neanche i TAB prende! E usa un font
proporzionale non configurabile.
Roba da prendere chi ha inventato questa robaccia e praticargli una
tonsillectomia prendendolo a calci nel didietro!

 una fetecchia peggio del notepad!
Se da piccolo sei stato picchiato, non significa che tutti i genitori siano 
violenti.
Sei stato traumatizzato da quella roba :D 

 La roba che usi tu, nessuna delle due.
Nella tua estrema crudezza, hai perfettamente ragione. :-)
Per lavoro uso VisualStudio per C# mentre per tutto il resto (e per le 
mie attività "private") uso solo ed esclusivamente Emacs. Superato il 
gradino iniziale, posso tranquillamente affermare che non c'è il minimo 
paragone tra un qualsiasi IDE e un editor "vero" come Emacs. L'unica 
pecca (se di pecca vogliamo parlare) è la carenza di code-assistance e 
completamento automatico (ma credo che ci si possa lavorare :-)).
Ciao,
Giulio
-- 

 Beh il concetto � stato capito da molti, no?
Io non ho capito cosa significa.
BTW uso vi o derivati dal '94, e cosi' pure la maggior parte dei
colleghi che ho avuto da allora. Scrivo principalmente programmi
gesionali per web. Ogni tanto provo un c.d. "IDE" ma non riesco ad
usarlo in altro modo che come browser di sorgenti. Nel bene o nel male,
il mio IDE e' la shell di linux.

 Io non ho capito cosa significa.
Va bene! mi sono espresso male! :) cancellate "zucchero sintattico" e
amen
:)

 concetto di "usabilita'".
Tipo picchiare sui tasti con le bacchette cinesi.

 lo "zucchero sintattico" (bella espressione di Landin)
Mi hai tolto una enorme curiosità.

  Prima era mate invece di bbedit
Che è successo?

 Che � successo?
Niente, in effetti. C'era sto BBEdit 9 che lo ho provato a lungo, anche
complice il fatto che davano nuove versioni al ritmo di piu' di una al
mese, che mi resettavano la demo.
Alla tipo terza volta, visto che dopotutto l'aggeggio mi piaceva
abbastanza[0] e avrei dovuto pagare solo l'upgrade (29$), me lo sono
preso. Senso morale verso chi e' talmente poco interessato a bloccarti
nelle prove... se avessero fatto gli spacca palle con le trial e
compagnia non credo che avrei aggiornato
----
[0] la sintassi speciale per postgres non era male, anche
l'autocompletamento ora e' decoroso (funziona sorprendentemente bene
anche con C++) e il supporto a Perforce e' decisamente migliore di
quello di TextMate.
A 129 euro non lo avrei preso. Ma a 29... si. Anche perche' TM sembra
mortino come sviluppo. Poi voglio dire, si fa sempre a tempo a tornare a
TM.
-- 
-riko

 Mi hai tolto una enorme curiosità.
quale?

 quale?
Da dove venisse l'espressione "syntactic sugar".

 ciao
E infatti per sviluppare un gestionale hai proprio bisogno di un RAD,
perchè hai tante cose già pronte (pulsanti, griglie etc.) ..
Se devi sviluppare il kernel di un sistema operativo a che ti serve un
RAD ? Devi semplicemente macinare codice C e funzioni inline in
Assembler molto probabilmente..
Quindi direi che un editor che ti informa solo della correttezza della
sintassi e dei nomi della funzioni.. beh .. è già manna dal cielo.