Newsgroup: it.lavoro.informatica
Titolo: Dilemma su codice open/closed e contratti

Salve.
Ho sinceramente le idee un pò confuse, quindi posto qui sperando di
vedere la "luce". Ho ricevuto una richiesta per un programma(ma a
quanto ho capito è solo il primo di una serie) e sto ragionando su
come procedere. Riguardo a "quanto farmi pagare" ho già le idee
chiare, il mio dubbio riguarda eventuali librerie di classi/componenti a
corredo del programma.
Vediamo di capirci un pò meglio: io programmo principalmente in Delphi,
quindi eventuali librerie di classi o componenti le svilupperei con
questo ambiente. Il fatto è che una libreria abbastanza generale
potrebbe poi restarmi come "prodotto" a parte da licenziare
successivamente. Fin qui, nessun problema.
Il fatto è però che la mia situazione è ancora "in divenire",
quindi da qui il problema: se successivamente mi troverò a non poter più 
seguire il progetto per X motivi, il committente deve poi essere in
grado di gestire il programma autonomamente(è un collega), questo 
implica dargli i sorgenti sia del programma(ovviamente) sia delle
librerie accessorie. Ed ecco qual'è il mio problema: esse dovrebbero 
essere date in LGPL oppure esistono forme "codificate" in grado di
consentirmi di:
1) Ritenere la proprietà intelletuale e patrimoniale dei sorgenti,
2) Consentire ampie libertà di uso e/o modifica al committente in
    relazione al progetto?
Ed inoltre: il problema principale che vedo con la LGPL è che se un
domani mi dovessi trovare in condizioni sfavorevoli, vorrei poter
vendere i sorgenti completi di IP e patrimonialità ad esso associati.
Non mi sento, insomma, ancora abbastanza fiducioso nel futuro per
giocare su una LGPL "liscia" ma d'altro canto nemmeno mi attira
l'idea di consegnargli i soli binari(va contro la mia etica lavorativa).
Qualche idea/suggerimento/riflessione?
Finora io ho lavorato solo con contratti dove questo problema non si
poneva, dunque... la palla a voi, stimati colleghi.
Grazie in anticipo,
Andrea

 vendere i sorgenti completi di IP e patrimonialità ad esso associati.
Ergo chi ti obbliga a rilasciare la libreria in LGPL? Puoi rilasciare i 
binari, e dare al tuo collega il sorgente con una licenza ad hoc.
-- 
ale
http://www.sen.it
et corruptissima re pubblica plurimae leges 

 binari, e dare al tuo collega il sorgente con una licenza ad hoc.
Infatti, nessuno mi *obbliga* ma mi interesserebbe sapere di
qualcuno che ha avuto i miei stessi dubbi(dubito di essere il
primo ad averne), cosa ha fatto e quali risultati ha ottenuto :-)
Ciao,
Andrea

Andrea Raimondi ha scritto:

Le applicazioni le ho sempre progettate in modo da ben suddividerne la struttura.
Tutto il codice comune/riutilizzabile ecc ... l'ho sempre inglobato in dll o 
moduli esterni di cui consegnavo un'ottima documentazione e una licenza d'uso 
per quella applicazione.
Mentre per il codice specificatamente attinente l'applicazione ho sempre 
consegnato sorgenti sia in formato elettronico che cartaceo.
Che io sappia, in tanti anni, solo un cliente si è rivolto ad altri per 
aggiornamenti/modifiche al mio prodotto.
Questa è stata la mia esperienza se ti può essere utile ...
-- 
ciao Max
         ...  per raggiungermi, -il fuoristrada- non ti serve!

 Questa è stata la mia esperienza se ti può essere utile ...
Si, molto, grazie! Sto cercando di raggiungere una comprensione più
larga della questione e, data la mia inesperienza in questo genere di
cose, spero vivamente di ottenere quante più informazioni possibili per
avere una panoramica vasta sulla questione.
Grazie,
Andrea

 Ciao
Ciao,
Andrea

 
[CUT]
Non mi sono mai posto molti problemi di licenze.
Quando prendi in mano un progetto sai benissimo che 'estensione' aziendale 
andrà ad assumere, quindi mi regolavo sin dall'inizio e non ho mai limitato, 
ad esempio, il numero di postazioni d'uso.
Consegnando il codice sorgente, per contratto, io mi liberavo da qualsiasi 
forma di garanzia. Ovviamente questo avveniva (la consegna del codice) a 
progetto chiuso, approvato per iscritto dal cliente il 'buon funzionamento' e 
pagato.
A questo punto il cliente era libero di fare quello che voleva con il sorgente 
eccetto rivenderlo, questo no! lo specificavo chiaramente nel contratto (a 
parte alcuni casi in cui è stata una richiesta del cliente, ma anche questo lo 
sapevo subito e mi regolavo sul 'prezzo').


 incominciare! Qualche suggerimento?
Butto lì una bozza, in ordine sparso:
"Licenza per l'utilizzo del software Ara
Questa licenza governa l'uso del software con cui viene distribuita, e 
il vostro uso del software costituisce accettazione della suddetta 
licenza.
Questa licenza vi concede in uso il software Ara sotto forma di 
eseguibile binario, e delle librerie binarie annesse necessarie al suo 
funzionamento. Questo software non può essere distribuito in 
qualsivoglia maniera, a meno che una valida licenza di utilizzo non 
venga acquistata da parte dell'utilizzatore finale presso i rivenditori 
autorizzati, nella fattispecie la Pinco Pallo s.p.a. e la Pippo Pluto 
s.a.s..
La persona fisica Alberto amico di Andrea (identificato da codice 
fiscale XXXDDD ..) è autorizzata ad utilizzare il codice sorgente delle 
librerie binare annesse al presente software esclusivamente qualoro ciò 
venga richiesto da esigenze di manutenzione del software da clienti 
finali in possesso di valida licenza di utilizzo, e soltanto dietro 
autorizzazione preventiva di Andra Raimondi, caso per caso. Andra 
Raimondi si riserva altresì tutti i diritti sul software, sulle 
proprietà intellettuali in questo contenute, e su eventuali lavori da 
questi derivati.
Questo software non può essere distribuito senza questa licenza e questa 
licenza può essere modificata soltanto da Andrea Raimondi e dai suoi 
eventuali eredi. Andrea Raimondi si riserva il diritto di agire in 
giudizio contro chiunque utilizzi questo software infrangendo le 
clausole della presente licenza.
Chiunque utilizzi il software Ara, accetta che in nessun caso Andrea 
Raimondi potrà essere ritenuto responsabile di eventuali 
malfunzionamenti del software, delle annesse librerie, e degli eventuali 
lavori da essi derivati o queste utilizzanti."
Metti anche qualcosa sulla garanzia, metti un massimo ai danni 
richiedibili pari al prezzo fatturato per il prodotto, dai a Cesare quel 
che è di Cesare (le proprietà intellettuali che utilizzi nel software), 
e dovresti essere sulla buona strada.
P.S.: l'ultima licenza closed source che ho scritto, qualche settimana 
fa', e che per vari motivi allo stato attuale non posso pubblicare, è 
molto più lunga e molto più dettagliata.


 Andrea
io farei un contratto di 3 righe con scritto
Cedo il software ARA al cliente XXX corredato di tutti i codici implicati
direttamente e indirettamente. Il software ARA e' stato scritto da Andrea
Raimondi che ha il diritto di rivenderlo a chiunque in qualsiasi momento.
Per Riolo:
vorrei sapere che vantaggi ha il tuo contratto rispetto a questo
ciao Nicola
 
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 vorrei sapere che vantaggi ha il tuo contratto rispetto a questo
Non parlerei di vantaggi, fondamentalmente parlano di cose differenti 
(con il tuo non limiteresti la capacità degli acquirenti di rivendersi o 
di pubblicare codice e binari, ed in ogni caso vendi il software e non 
la licenza d'uso dello stesso). BTW nei miei di solito scrivo sempre 
clausole sulle garanzie e sull'accettazione delle specifiche da parte 
dell'utente finale.


 Questa licenza governa l'uso del software con cui viene distribuita, e
[...]
Ma com'e` che non essendo un leguleio riesci a scrivere una licenza in
modo chiaro?
Forse perche' non sei un leguleio? ;-)
Andrea

 dell'utente finale.
ok per usare "licenza di uso" al posto di "cessione"
il mio dibattito voleva pero' proprio arrivare alla rivendita.
E' il solito dibattito, ma, visto che e' ricorrente, e viste le manie di
grandezza di quasi tutti :
Pensano che il proprio SW verra' copiato cracckato rivenduto illegalmente
usurpato o che so che, e invece dopo 3 anni il 99% dei nostri SW finiscono
in un archivio CD assieme ai quaderni delle elemntari col rischio che la
donna delle pulizie li butti nell'immondizia.
Se tu fai un contratto di 10 pagine che vieta a me cliente di rivendere. Io
chiamo un altro programmatore o una SW house e dico loro di rifarlo a
partire dal prodotto e volendo anche "prendendo spunto dal codice" di
Raimondi, se c'e' , ma alla fine i nuovi developers manco leggeranno una
riga, come ben sappiamo.
COnsiderato che rifare un SW gia' relaizzato richiede circa 10% di tempo
della prima volta, e che avendo le specifiche complete il SW nuovo sara'
anche nettamente superiore a quello vecchio, non capiro' mai cosa si vuole
difendere coi contratti.
Se poi pensi che WIndows 1 era tale e quale al MAc di allora, le idee
dovrebbero essere ancora + chiare.


 la donna delle pulizie li butti nell'immondizia.
Con me sfondi una porta aperta, io rilascio molta della roba che faccio 
sotto LGPL o MPL. É pure vero che nella pratica quotidiana mi capita di 
imbattermi in porting di software scritti 20 anni fa', e che non proprio 
così sicuro che il mio porting non durerà altri 20 anni ;-)


 ciao Nicola
Ciao,
Andrea


 Andrea
Scusa non volevo che te la prendessi tu.
ma solo discuterere in generale di un problema, quello dei codici sorgenti,
che vedo riaffiora periodicamente.
Io sono forse troppo abituato a lavorare con un linguaggio(java) che si
decompila per definizione e ormai da anni lavoro anche con prodotti open
source con i codici pubblicati ai 4 venti.
La settimana scorsa per la briga di andarmi a comprare un HD per fare un
backup ho formattatto tutti i miei sorgenti degli ultimi anni senza alcun
rimorso. E non era poco.
Ho sempre dato via i miei codici con tranquillita' e qulli ancora vivi, uno
in particolare, sono per me motivo di orgoglio, e anche di pubblicita',
perche' tutti quelli che ci lavorano mi vedono come un padre fondatore.
Per finire quando ho firmato (quasi sempre) che i codici da me prodotti
erano di proprieta' di altri, ci ho sempre riso sopra e riuso tutto il
riusabile ( che pero' e' pressoche' nulla perche' trovo tutto gia' pronto in
rete fatto meglio) e il mio sogno e' che venga uno a dirmi che non posso
riusare la mia roba, gisuto per farmi una grande risata.
e se una azienda tua cliente mi chiama a reingegnerizzare i tuoi codici
sotto copyrigth tranquillo che in pochi giorni sono miei, anche legalmente
Ma alla fine come gia' scritto la roba vecchia ( che non ho fromattato) sta
chissa' in quale soffitta
Insomma io sono di sta scuola qua, poi ognuno faccia come vuole, se scrivi
qua sul NG ti fara' piacere, spero, sentire anche campane diverse
Nicola


 Nicola
Andrea

 questioni quindi mi piacerebbe saperne di piů.
Se uno viene da me e mi fa vedere il tuo programma e ha i tuoi codici
io posso
1.- modificarli un po' e dire che io ho preso spunto dalla tua idea ma ho
rifatto tutto
In questo caso non so come funziona la legge esattamente ma mi aspetto che
non ci sia una regola precisa per dire che la classe e' tua o mia e che la
causa sara' complessa come succede per la musica e la legge delle 3 o 4 note
2. rifare tutto veramente partendo dal tuo sw, e avendo quindi gia'
l'analisi funzionale davanti, la qual cosa renderebbe il mio lavoro
piuttosto semplice.
Il caso della libreria di calcolo, forse e' l'unico che potrebbe essere un
po' ostico da riprogrammare, bisognerebbe valutare
ciao Nicola


 Ma l'hai veramente buttata li su due piedi o hai gia un'impronta? :-)
Ho tratto qualche ispirazione per lo stile ed il formato dalla licenza 
del Rotor (che comunque ha finalità molto differenti).
Per le licenze, molto più dettagliate, che ho scritto mi sono perlopiù 
sempre liberamente ispirato alle varie EULA di Microsoft, SCO e Sun. Se 
uno capisce di cosa si sta parlando e quali limiti ci pone in ogni caso 
il nostro codice civile, non è difficile adattarle alle proprie 
necessità.
