* * * *

Privacy Policy

Blog italiano

Clicca qui se vuoi andare al blog italiano su Lazarus e il pascal.

Forum ufficiale

Se non siete riusciti a reperire l'informazione che cercavate nei nostri articoli o sul nostro forum vi consiglio di visitare il
Forum ufficiale di Lazarus in lingua inglese.

Lazarus 1.0

Trascinare un file nel programma
DB concetti fondamentali e ZeosLib
Recuperare codice HTML da pagina web
Mandare mail con Lazarus
Stabilire il sistema operativo
Esempio lista in pascal
File INI
Codice di attivazione
Realizzare programmi multilingua
Lavorare con le directory
Utilizzare Unità esterne
TTreeView
TTreeview e Menu
Generare controlli RUN-TIME
LazReport, PDF ed immagini
Intercettare tasti premuti
Ampliare Lazarus
Lazarus e la crittografia
System Tray con Lazarus
UIB: Unified Interbase
Il file: questo sconosciuto
Conferma di chiusura di un applicazione
Liste e puntatori
Overload di funzioni
Funzioni a parametri variabili
Proprietà
Conversione numerica
TImage su Form e Panel
Indy gestiore server FTP lato Client
PopUpMenu sotto Pulsante (TSpeedButton)
Direttiva $macro
Toolbar
Evidenziare voci TreeView
Visualizzare un file Html esterno
StatusBar - aggirare l'errore variabile duplicata
Da DataSource a Excel
Le permutazioni
Brute force
Indy 10 - Invio email con allegati
La gestione degli errori in Lazarus
Pascal Script
Linux + Zeos + Firebird
Dataset virtuale
Overload di operatori
Lavorare con file in formato JSON con Lazarus
Zeos ... dietro le quinte (prima parte)
Disporre le finestre in un blocco unico (come Delphi)
Aspetto retrò (Cmd Line)
Lazarus 1.0
Come interfacciare periferica twain
Ubuntu - aggiornare free pascal e lazarus
fpcup: installazioni parallele di lazarus e fpc
Free Pascal e Lazarus sul Raspberry Pi
Cifratura: breve guida all'uso dell'algoritmo BlowFish con lazarus e free pascal.
Creare un server multithread
guida all'installazione di fpc trunk da subversion in linux gentoo
Indice
DB concetti fondamentali e connessioni standard
Advanced Record Syntax
DB concetti fondamentali e DBGrid
DB concetti fondamentali e TDBEdit, TDBMemo e TDBText
Advanced Record Syntax: un esempio pratico
Superclasse form base per programmi gestionali (e non)
Superclasse form base per programmi gestionali (e non) #2 - log, exception call stack, application toolbox
Superclasse form base per programmi gestionali (e non) #3 - traduzione delle form
Superclasse form base per programmi gestionali (e non) #4 - wait animation
Un dialog per la connessione al database:TfmSimpleDbConnectionDialog
Installare lazarus su mac osx sierra
immagine docker per lavorare con lazarus e free pascal
TDD o Test-Driven Development
Benvenuto! Effettua l'accesso oppure registrati.
Maggio 15, 2024, 09:35:38 pm

Inserisci il nome utente, la password e la durata della sessione.

606 Visitatori, 1 Utente
 

Autore Topic: Fare programmi oggi  (Letto 1436 volte)

tito_livio

  • Full Member
  • ***
  • Post: 152
  • Karma: +3/-0
Fare programmi oggi
« il: Giugno 20, 2023, 08:11:57 pm »
Ciao a tutti, alcuni post in un altro thread mi hanno spinto a chiedervi qualcosa che mi domando da un po' di tempo.
Scusatemi se queste mie domande possono sembrare banali.
1) Il posto del Pascal, come linguaggio che forma e che educa, è stato preso dal Python. So che la compilazione di un programma Python rimane una cosa poco soddisfacente. Essendo quindi Python un linguaggio interpretato, come si fa, quindi a lavorare e mettere dal cliente un sorgente? Non c'è pericolo che ci smanettino o che se lo rubino?
2) Un'altra cosa che è diventata obsoleta è l'ambiente di sviluppo Rad, adesso si programma, nei vari linguaggi, con una specie di notepad evoluto e ti devi gestire/creare/copiare da qualche parte il codice per visualizzare il bottone, la form o la griglia ecc. Solo a me sembra un sistema molto faticoso di programmare? Mi sembra di ritornare al Turbo Pascal, quando mi disegnavo i bottoni a video.
Grazie in anticipo.

Avogadro

  • Full Member
  • ***
  • Post: 217
  • Karma: +0/-0
Re:Fare programmi oggi
« Risposta #1 il: Giugno 20, 2023, 09:07:23 pm »
"Tutto dipende da che punto guardi il mondo" diceva il poeta ; o qualcosa del genere.

Parlo dalla mia prospettiva di uno che deve seguire dei controlli di qualità .

Allora, tra le conseguenza dell'applicazione dei format dei sistemi di gestione dei controlli di qualità vi è che i software in azienda devono avere certi requisiti di tracciabilità e di validazione dei dati tali che gira e volta ci si rivolge a software commerciali di qualche multinazionale e non c'è piu' spazio per "cose fatte in casa" ; tra le conseguenze ci sono dei software che spiano la rete aziendale alla ricerca di eseguibili non autorizzati .  Quel che sopravvive è solo qualche file excel opportunamente blindato , che poi puntualmente non funziona con open office et similia o non appena excel cambia release ; quindi imparare un linguaggio ormai non è che serva piu' a molto * .

Di conseguenza  spazio per la "creatività" non c'è e l' unica prospettiva è quella di fare data entry per una vita - se non si è precari - ,  per giunta su software che sono la negazione di tutto quello che si è studiato o di quello che dovrebbe essere  un gestionale: semplificare la vita .

Finisse qui: le piccole attività produttive se sono in attivo vengono man mano assorbite da aziende piu' grandi che poi delocalizzano tutto altrove , spesso all'estero; non ho piu' il coraggio di fare due passi nella zona industriale, ci sono per la maggiore solo capannoni chiusi e parcheggi semi vuoti e qualche macchina della vigilanza che gira.

Sul web ho notato un crollo della creatività: un tempo c'era  tutto un fermento, si trovano siti a iosa sugli argomenti piu' disparati;  adesso non è piu' così, si vedono per la maggior parte cose del tipo "manifesti del circo" quando va bene, quando va male solo bias di conferma;  spazio per le discussioni costruttive non c'è ne è piu' .

Da che parte va il mondo ? Non lo so .


*
diceva una canzoncina di qualche decennio fa :

"Tutto quello che hai studiato
dentro qui non serve a niente,
non importa un accidente
cosa poi tu voglia fare"
« Ultima modifica: Giugno 20, 2023, 09:41:21 pm da Avogadro »

DragoRosso

  • Scrittore
  • Hero Member
  • *****
  • Post: 1272
  • Karma: +43/-0
  • Prima ascoltare, poi decidere
Re:Fare programmi oggi
« Risposta #2 il: Giugno 20, 2023, 10:38:24 pm »
L'ambiente di sviluppo RAD .... se vedete il post su StackOverflow (sondaggio) vedrete che tra gli ambienti di sviluppo c'è anche Notepad++ e pure il Notepad (senza ++  :( ) ....

Per quanto Notepad++ possa essere ritenuto un strumento di sviluppo, ritengo non abbia neanche lontanamente tale funzionalità (per quanti plugin uno si sforzi di caricare).

Io usavo un editor grafico (per modo di dire) tipo "nano" (Linux) negli anni 70 per programmare e ho continuato anche negli anni 80.
Non vorrei dire che usare notepad++ è tornare a quel tempo ... però è il mio pensiero.

Qualcuno ha cercato di interpretare i risultati del sondaggio, anche basandosi su ciò che altri forum hanno esposto e discusso, e sembra che ciò che conta sia la produttività (= soldi), ossia il mondo adesso richiede python e quindi tutti su python, ieri era java, l'altro ieri era c#, e così via. Domani ci sarà sicuramente qualcosa di altro.

A me pare che l'ambiente RAD di Delphi sia uno dei migliori, e parto dal principio che il problema maggiore è lo stilare codice ... quindi uno strumento che ti dice in tempo reale che stai facendo "cazzate" è fondamentale, così come la compilazione integrata con la visualizzazione e il posizionamento sulle righe interessate dagli errori di compilazione.

Compilare python, java o altri linguaggi interpretati ... che senso ha (oltre a non essere possibile, almeno sino ad ora) ? Python è python, è fatto così ... controlla e trasforma tutto a runtime, così come java ... sarebbe come dire "che figata ho un panda (auto) ma perchè non posso andarci sul mare ?"

Io mi ripeto, ma uno dei linguaggi (se non l'unico) che generare codice puro è proprio il pascal (Lazarus / Delphi). Solo Windows, Linux, Ios, Android, MACOS, etc .. Nessun framework intermedio (leggasi .Net di Microsoft) o altro.

Poi, certo ci sono anche Cobol, Fortran e altri ma sono comunque dedicati principalmente ad usi specifici.

Poi ci sono i classici C e C++, anche questi linguaggi "puri" ma non penso che qualcuno che conosca il pascal e il c++ abbia dubbi su quale sia il linguaggio "migliore" in termini di facilità di programmazione, implementazione, e debugging. Certo, la velocità dell'eseguibile prodotto da un C++ è quasi sicuramente migliore rispetto a quanto prodotto da un compilatore Pascal, ma per me il fatto che con il Pascal sono quasi certo che un compilato giri correttamente al primo colpo o quasi è senza paragone.

Per quanto riguarda python, a proposito di "sorgenti", python da quello che ne sò in questo momento non è "protetto" e quindi quando fornisci il byte code (che è il compilato non il sorgente) potrebbe essere possibile comunque ritornare al sorgente (ovviamente senza i commenti) come accade per java e per tutti gli altri linguaggi interpretati... ma su questo argomento non sono ferratissimo.

Tenete presente che un assembly .Net può essere sempre decompilato, sembra anche quando è "offuscato". Ci sono dei prodotti commerciali che "offuscano" gli assembly .Net ma sembra (oltre che essere onerosi) che si possano bypassare.

In realtà, c'è interesse a spingere verso i WebServices e quindi in quel caso i sorgenti di qualsiasi linguaggio sono al sicuro nel server e quindi le protezioni sono ininfluenti (ehmmm sempre che siate un dipendente dell'azienda che gestisce il server ...  :o ).

Non ricordo dove ho letto, ma una "sfida" nella costruzione di una utilità (mi pare un editor di testi) in vari linguaggi (tra cui pascal con Delphi, Python, Java. etc ...) ha visto Delphi mediamente lento nella fase di programmazione pura (sviluppo), ma velocissimo nel debugging e negli adattamenti post compilazione, tanto da essere il più veloce nella produzione complessiva. Altri erano molto veloce nel "coding" ma lentissimi nel debugging e negli adattamenti (mi pare fosse quasi il doppio dello sviluppo).

Pascal forever ... e non è tifo da stadio  ;D
« Ultima modifica: Giugno 21, 2023, 08:39:24 am da DragoRosso »
:) Ogni alba è un regalo, ogni tramonto è una conquista :)

bonmario

  • Hero Member
  • *****
  • Post: 1304
  • Karma: +10/-1
Re:Fare programmi oggi
« Risposta #3 il: Giugno 21, 2023, 10:41:56 am »
1) Il posto del Pascal, come linguaggio che forma e che educa, è stato preso dal Python. So che la compilazione di un programma Python rimane una cosa poco soddisfacente. Essendo quindi Python un linguaggio interpretato, come si fa, quindi a lavorare e mettere dal cliente un sorgente? Non c'è pericolo che ci smanettino o che se lo rubino?

Al lavoro, oltre al resto, uso Java e Javascript.
Per i Java, il cliente potrebbe tranquillamente decompilare i .class, modificare il sorgente, ricompilarlo e fargli fare delle cose che non abbiamo previsto.
Per i javascript, ancora peggio: gli arriva direttamente il sorgente già pronto !!!

Non oso pensare se un malintenzionato dovesse avere accesso a dove viene installato l'applicativo, cosa potrebbe combinare !

Per me che sono nato su linguaggi che creavano oggetti su cui fare un reverse engineering portava via mooooolto tempo, per cui difficilmente un cliente o un concorrente lo avrebbe fatto, questa nuova gestione è assurda !!

Ciao, Mario

tito_livio

  • Full Member
  • ***
  • Post: 152
  • Karma: +3/-0
Re:Fare programmi oggi
« Risposta #4 il: Giugno 21, 2023, 11:44:20 am »
Per me che sono nato su linguaggi che creavano oggetti su cui fare un reverse engineering portava via mooooolto tempo, per cui difficilmente un cliente o un concorrente lo avrebbe fatto, questa nuova gestione è assurda !!

Tanti anni fa telefona uno in studio: "Senta io sono uno che si è copiato il vostro programma ma non sono riuscito a cambiare l'intestazione per mettere quella della mia ditta. Ho risolto appiccicando delle etichette già stampate su tutte le stampe che si producono. Però non ce la faccio più, metto etichette dalla mattina alla sera, il sabato e la domenica, non ho più una vita. Non è che mi potrebbe vendere il programma?"  ;D ;D ;D

Avogadro

  • Full Member
  • ***
  • Post: 217
  • Karma: +0/-0
Re:Fare programmi oggi
« Risposta #5 il: Giugno 22, 2023, 01:38:43 am »
...., come si fa, quindi a lavorare e mettere dal cliente un sorgente? Non c'è pericolo che ci smanettino o che se lo rubino?
...

Questa della "proprietà del codice" , sia sorgente , sia eseguibile, è una vecchia storia.

Io la vedo così: in illo tempore si diffusero i primi pc (prima l'ibm, poi l' m24 olivetti e così via); iniziò così a girare del software commerciale (video scrittura,  fogli lettronici, programmi di grafica, programmi per la schedina del totocalcio  etc).

Si diffuse così a macchai d' olio,  sempre in illo tempore, "l'abitudine", mi si passi il termine,  di copiare i software;  i produttori dovettero così correre ai ripari proteggendo i loro prodotti nei modi piu'disparati;  l' ultima , che io ricordi, era una chiavetta usb senza la quale il sw semplicemente non partiva - sorvolo sul modus opernadi attuale che appeni ti colleghi al web qualche programmino  nascosto  chissà dove nei meandri del pc, va a verificare lo stato della licenza del pacchetto "home" che avevi acquistato all' ipermercato tempo prima -.

Adesso, con il web , le reti aziendali,  le regole della qualità  e quant'altro il fenomeno delle copie pirata è scomparso - o almeno non se ne sente piu' parlare- , purtuttavia degli strascichi si vedono ancora .

Oggi il problema semmai è la protezione dei dati * visto che tutto è ormai registrato da qualche parte su un pc o un telefonino ; giusto per concludere in bellezza una giornata già pessima di suo poco fa ho dovuto cestinare di corsa una e-mail sospetta .

Tornando alla protezione del codice,  dipende da cosa fa il codice. La pubblicità di delphi diceva essenzialemente due cose, "trasforma il caos dei tuoi clienti in risorsa" e "la ruota è già stata scoperta".

Ossia la prospettiva data da delphi era avere a disposizione uno strumento atto non tanto a scoprire cose nuove, quanto a usare quanto già noto e collaudato per mettere ordine nei dati dei clienti .

Quindi oggi la prospettiva si è spostata: il valore aggiunto non è la nuova scoperta, quanto la gestione efficace dei dati .

Rimangono comunque degli aspetti di "folklore", ne cito uno che mi è capitato, il classico foglio di calcolo bloccato , bloccato non tanto per proteggere i dati da modifiche accidentali, quanto per nascodere come venivano elaborati i dati stessi, ossia per nascondere "il codice sorgente" .

Ora l' 'elaborazione dei dati non era nulla di che: erano le stesse cose che si trovano in dmath alla parte di statistica.

La risposta alle mie obiezioni fu che comunque quella era proprietà intelletuale.

Si in questo c'è del vero, poi la prima regola dell' economia è scritta nella trilogia delle leggi di Murphy: "nulla è gratis".

Ora una delle conseguenze di questo modus operandi è che il "sapere" rimane chiuso dentro gli ambiti aziendali, in un villaggio globale dove la concorrenza è sempre piu' spinta, ognuno si tiene stretto per se i propri segreti professionali/industriali.

E se da una parte è giusto che sia così - ed è sempre stato così, basta leggere i codici del diritto - ,  dall'altra vi è un restringimento dell'accesso alle fonti del sapere e quel poco che si impara a qualche corso o su qualche sito è subito deprecato, non fai in tempo di finire di leggere le slide che tutto è già stato superato.

Sintesi: "è un mondo difficile", diceva il poeta.



*
a proposito disicurezza, stavo girando sul web per vedere le pubblicità storiche di delphi e google ha proposto anche questa rivista di qualche decennio fa:

https://archive.org/details/io-programmo-76

Dei sorgenti per aggirare le password, così come se fosse il progamma per la schedina .

Io non lo so .

Confesso il peccato di aver comprato all' epoca alcuni dei numeri di quella rivista, ma poi ho portato tutto al mercatino dell'usato, non ricordo se ci ho ricavato qualcosa.

In ogni caso io la vedo così:  ogni epoca ha le sue leggende; in questa, tra le tante c'è quella, veciolata da certi films,  che sia possibile  far saltare le password con tutta una serie di tentativi;  nei film e nei fumetti è così, sul pianeta "da ste parti" il gestionale che uso, alla terza errata digitazione delle credenziali non ti fa piu' fare login, ci si deve rivolgere all'amministratore; il bancomat poi se semplcimente non ti ridà indietro la scheda - e non ti dà un cent per bucato che sia- ;

sintesi: casini del marketing dei luoghi comuni .
« Ultima modifica: Giugno 22, 2023, 05:09:48 am da Avogadro »

nomorelogic

  • Global Moderator
  • Hero Member
  • *****
  • Post: 2876
  • Karma: +20/-4
Re:Fare programmi oggi
« Risposta #6 il: Giugno 22, 2023, 09:25:54 am »
ciao a tutti
riprogongo un link che credo di aver postato già ma che è sempre utile rivedere

https://thenewstack.io/which-programming-languages-use-the-least-electricity/

si tratta di uno studio sui programmi ecologici (= richiedono minori risorse)
già perché se da un lato le applicazioni si stanno spostando sul web, dall'altra parte crescono fortemente i server in cloud
i software su questi server cloud, relativamente ai programmi non compilati - quelli che insomma "i sorgenti sono al sicuro perché sono nel server" - non vorrei ci si perdesse in un bicchiere d'acqua perché capita spesso che i sistemisti dei clienti finali abbiano accesso ai server (che a volte sono di proprietà del cliente)

detto questo, i programmi compilati sono gli unici che, su questo fronte, ti mettono sempre al sicuro
nel link sopra si nota come il pascal sia sempre in cima alla lista dei linguaggi di programmazione ecologici

ancora una volta, anche su questo fronte, il pascal non solo non è anacronistico ma è uno dei linguaggi che hanno migliori performance nei server cloud (ed è compilato)

fortuna che era un linguaggio morto :D

nomorelogic
« Ultima modifica: Giugno 22, 2023, 09:28:41 am da nomorelogic »
Imagination is more important than knowledge (A.Einstein)

DragoRosso

  • Scrittore
  • Hero Member
  • *****
  • Post: 1272
  • Karma: +43/-0
  • Prima ascoltare, poi decidere
Re:Fare programmi oggi
« Risposta #7 il: Giugno 22, 2023, 09:55:44 am »
Questa della "proprietà del codice" , sia sorgente , sia eseguibile, è una vecchia storia.

Oggi il problema semmai è la protezione dei dati * visto che tutto è ormai registrato da qualche parte su un pc o un telefonino ; giusto per concludere in bellezza una giornata già pessima di suo poco fa ho dovuto cestinare di corsa una e-mail sospetta .

La proprietà del codice è un fattore prettamente economico. Giustamente (anche se qualcuno si opporrà a ciò) se una azienda (per dire software house, professionista, etc...) spende tempo e risorse per creare un prodotto non vedo per quale motivo non debba rivendicare un profitto.

Non è che se vai a Venezia uno si porta via le tipiche maschere "gratis" perchè non sono un prodotto industriale. Così è il prodotto di un software, è esattamente un prodotto, un bene (e molto volte artigianale come le maschere veneziane).

Poi libera scelta di quanti vogliono condividere tale soluzione in toto o in parte: ci sono tanti che il prodotto complessivo se le fanno pagare ma alcune parti vengono rese di dominio pubblico.

La sottile linea tra "dominio pubblico" (aka open source) e "prodotto a pagamento" è molte volte essenziale.

Faccio un esempio su un prodotto che inizialmente sviluppato da Intel, ossia OpenCV, è stato poi reso open source ed è stato poi mantenuto da un gruppo di lavoro (simil FPC) di volontari (qualcuno disse che comunque la manina di Intel fosse presente, ma sono dicerie mai confermate).

Tale prodotto, perchè di un prodotto completo si trattava, veniva aggiornato inizialmente con tempi lunghissimi e molte volte (per non dire sempre) nascevano incompatibilità abbastanza pesanti tra versioni, non solo a livello di codice ma anche di algoritmi, per cui il risultato comune tra versione 1 e 2 non veniva più garantito.
Questo cosa non è accettabile in ambito "professionale": non puoi avere un prodotto che cambia le carte in tavola ogni volta che esce un aggiornamento (e che risolve bug importanti).

Ho lavorato qualche anno con queste librerie, poi sono passato a prodotti a pagamento e dal primo software sviluppato nel 2006 sino ad ora (fatto salvo qualche aggiustamento tecnico) ciò che ho sviluppato è praticamente compatibile tra tutte le versioni sino ad oggi. Tanto per dare l'idea, su un progetto da quasi un milione di righe di codice in questi anni per adattare le nuove versioni ne avrò cambiate si e no una trentina.

I prodotti a pagamento, non sempre ma molte volte "pagano" la scelta e sul mercato ci si presenta con certi prodotti che hanno una base solida e nota "universalmente".

Per ciò che riguarda la protezione dei dati, siamo passati da un epoca dove si doveva fornire di tutto e di più senza alcuna garanzia (vedi banche) ad ora dove anche solo per telefonare devi avere un consenso (per l'amor di dio, lecito ehh ma comunque soluzione estrema).

Il giusto stà nel mezzo, con la vera essenza che è l'etica e il consumatore (in generale) che si prende a cuore ciò.

Però come si dice "il mondo è di fatto popolato da squali" e quindi tutto ciò che ne consegue è quello che viviamo oggi.

Io però confido sempre nella voglia da parte di tutti di aiutare (e qui ci stanno tutte le modalità possibili, dal volontariato alle donazioni passando per forum e altro).

Ciao
:) Ogni alba è un regalo, ogni tramonto è una conquista :)

DragoRosso

  • Scrittore
  • Hero Member
  • *****
  • Post: 1272
  • Karma: +43/-0
  • Prima ascoltare, poi decidere
Re:Fare programmi oggi
« Risposta #8 il: Giugno 22, 2023, 10:03:04 am »
ciao a tutti
riprogongo un link che credo di aver postato già ma che è sempre utile rivedere

https://thenewstack.io/which-programming-languages-use-the-least-electricity/

si tratta di uno studio sui programmi ecologici (= richiedono minori risorse)
già perché se da un lato le applicazioni si stanno spostando sul web, dall'altra parte crescono fortemente i server in cloud
i software su questi server cloud, relativamente ai programmi non compilati - quelli che insomma "i sorgenti sono al sicuro perché sono nel server" - non vorrei ci si perdesse in un bicchiere d'acqua perché capita spesso che i sistemisti dei clienti finali abbiano accesso ai server (che a volte sono di proprietà del cliente)

detto questo, i programmi compilati sono gli unici che, su questo fronte, ti mettono sempre al sicuro
nel link sopra si nota come il pascal sia sempre in cima alla lista dei linguaggi di programmazione ecologici

ancora una volta, anche su questo fronte, il pascal non solo non è anacronistico ma è uno dei linguaggi che hanno migliori performance nei server cloud (ed è compilato)

fortuna che era un linguaggio morto :D

nomorelogic

A bhè mi trovi d'accordo perfettamente. Il discorso del server che ho fatto era legato al fatto che l'azienda produttrice del software avesse ciò ovviamente. Se i server sono del cliente o in cloud cade il palco.

Io non ho mai prodotto programmi "script" nè interpretati (bhè forse qualche app .NET o qualche Basic di qualche era fà), e ciò per svariati motivi (tra cui anche quello economico). Che il consumo energetico sia una parte da non sottovalutare io ne sono conscio già da molto tempo, ed è per questo che ottimizzo il tutto rendendo allo scheletro qualunque cosa. Per ciò che faccio io altre aziende concorrenti usano quattro PC, io ne uso uno solo e se non è risparmio energetico (e non solo) questo.

Ciao
:) Ogni alba è un regalo, ogni tramonto è una conquista :)

nomorelogic

  • Global Moderator
  • Hero Member
  • *****
  • Post: 2876
  • Karma: +20/-4
Re:Fare programmi oggi
« Risposta #9 il: Giugno 22, 2023, 10:39:02 am »
A bhè mi trovi d'accordo perfettamente. Il discorso del server che ho fatto era legato al fatto che l'azienda produttrice del software avesse ciò ovviamente. Se i server sono del cliente o in cloud cade il palco.

infatti, purtroppo ne basta 1 di cliente che ha accesso ai server ed ecco che i sorgenti li hai regalati



Io non ho mai prodotto programmi "script" nè interpretati (bhè forse qualche app .NET o qualche Basic di qualche era fà), e ciò per svariati motivi (tra cui anche quello economico). Che il consumo energetico sia una parte da non sottovalutare io ne sono conscio già da molto tempo, ed è per questo che ottimizzo il tutto rendendo allo scheletro qualunque cosa. Per ciò che faccio io altre aziende concorrenti usano quattro PC, io ne uso uno solo e se non è risparmio energetico (e non solo) questo.

lavorare su un PC anziché 4 è già un buon risparmio :)
inoltre, usare pascal compilato ti mette anche al sicuro: alla fine, un PC ha un hard disk fisico e se si vuole vedere cosa c'è dentro ci sono 1000 modi :)

Imagination is more important than knowledge (A.Einstein)

Avogadro

  • Full Member
  • ***
  • Post: 217
  • Karma: +0/-0
Re:Fare programmi oggi
« Risposta #10 il: Giugno 22, 2023, 11:09:21 pm »
La proprietà del codice è un fattore prettamente economico. ....

Condivido tutto.

Le mie erano solo osservazioni dal mio di vista di uno che passa le giornate alle prese con il sw gestionale aziendale.

Aggiungo altre considerazioni che possono sembrare ovvie, anzi , lo sono .

Allora, come ogni epoca, anche questa ha le sue leggende e tra le tante è che è il "garage di casa" la fucina di nuove idee destinate a cambiare il mondo .

Questa leggenda è stata usata per diffondere il "consumo" di informatica e in effetti ha funzionato .

In realtà le cose sono ovviamente un attimo piu' complesse, specialmente nel campo dell' informatica dove non c'è spazio "per invenzioni ex novo nel garage di casa" perchè la complessità che c'è dietro è tale puo' essere gestita da un sistema organizzato, quale appunto una software house, un'azienda,  un associazione di volontari  e così via.

Per il singolo professionista rimane l' uso dello strumento informatico per gestire i problemi dei clienti e questo generalmente avviene senza dover reinventare niente  ma appunto usando gli strumenti collaudati che già ci sono a disposizione e va da sè che il saper usare questi strumenti è cio' che poi da il pregio al proprio operato.

E qui si è creata un'altra contraddizione, il cercare di restare sempre al passo con i tempi inseguendo le ultime novità: prima il c, poi il c++, poi java, poi il web ,l'xml etc etc  nonché il cercare di seguire tutte le quotidiane news dell' infinito mondo dell'elettronica.

Questo fatto è foriero del fenomeno noto come "overflow" di informazioni, che poi nei fatti speso è controproducente  ("si ma si poteva fare molto meglio con ..." e si sta lì in loop alla ricerca della soluzione ideale) .

Quindi fi fatto ci si trova nella situazione di stare aggiornati e nel contempo di non subire l' overflow di informazioni che magari fa sfuggire le cose  essenziali.

Faccio un esempio vissuto:  ho dato incarico ad un collega di creare una base di dati su delle osservazioni; non ho potuto seguirlo fin dall' inizio  e lui ha iniziato a smanettare con un ben noto programma di database per "ufficio", programma valido, ci mancherebbe ; pero' sta lì a combattere tra le varie versioni : se si usa su un pc poi su quello a fianco per motivi misteriosi poi non gira; poi manca sempre qualche plugin ma l'azienda non ha altre copie licenziate e soldi in cassa non c'è ne sono; poi l' interfaccia utente è laboriosa e  poco intuitiva e comunque poi c'è la rete che è lenta e il gestionale poi  non dà un output processabile.

Insomma un casino che si sarebbe potuto evitare se ci si fosse limitati a seguire le semplici regole della normalizzazione delle banche dati gestendo poi la struttura dei dati con un data base "semplice" e l' interfaccia con i dati e le conseguenti elaborazioni con uno strumento tipo delphi o lazarus  ( o con un foglio elettronico e le tabelle pivot, che ci sbriga prima) .

Quel che voglio dire è che si crea appunto una babele di informazioni ma quelle essenziali magari sfuggono e ci si infila così in dei gineprai da cui poi è un casino uscirne.

Tornando all'esempio del collega, magari bastava un foglio elettronico e le tabelle pivot per "distillare" le informazioni necessarie dalla babele di dati prodotta dal gestionale .

Giusto sempre come esempio, anni fa mi fu dato come "obiettivo"  di trovare un modo per ottenere informazioni da un insieme di dati aziendali; la prima idea che mi venne in mente fu l' uso degli alberi binari ma poi mi resi conto, reminiscenza di un articolo letto in illo tempore sulla rivista MC micromputer - non so se c' è ancora -,  che la "ruota" era stata già scoperta  - e da molto tempo pure - e che il problema si affrontava in un attimo in maniera efficace  con le tabelle pivot dei fogli elettronici .

La quint'essenza di tutti sti discorsi sui linguaggi di programmazione,  è che tutto poi alla fine anche in questo caso si tende al principio di Pareto del'80:20*; nel caso spiccio di lazarus, l' esperienza personale è  con il 20 %  (e anche meno) delle risorse che sono disponibili i risolvono l' 80% (e anche piu') dei problemi **.

Giusto per finire, la babele di linguaggi di programmazione è ormai un dato di fatto, altro che gli standard del fortran o del C o dell' sql per sanare la mai risolta portabilità dei software.

Questo sito che illustra come fare la stessa cosa (ho messo l'esempio classico dell'ordinamento)  con i tanti linguaggi che ci sono in giro:

https://programming-idioms.org/search/sort

Sarebbe curioso sapere quali sono i piu' cliccati (pascal c'è sempre) , ossia ci vorrebbe una statistica*** sull' uso dei linguaggi di programmazione;  quel che vedo nel mio piccolo è che il linguaggio piu'usato è ... l' sql , ossia i dati per la maggiore vengono elaborati con l' sql e poi presentati con file excel .



*
  due esempi da google:
https://www.pensierocritico.eu/principio-di-pareto.html

https://it.wikipedia.org/wiki/Principio_di_Pareto


**
in giro per il web il principio dell' 80:20 vien presentato come una specie di "toccasana", ossia si è creata un'altra leggenda metropolitana ; la verità è quella detta da wikipedia. "Il principio di Pareto è un risultato di natura statistico-empirica che si riscontra in molti sistemi complessi dotati di una struttura di causa-effetto. Il principio afferma che circa il 20% delle cause provoca l'80% degli effetti. Questi valori vanno da intendersi come qualitativi e approssimativi".


Ossia va inteso come una cosa a cui tendono i sistemi complessi e la programmazione è una di essi , punto.


***
ossia si dovrebbe evitare di omettere le quantità quando si descrive un fenomeno; se si omettono le quantità magari si finisce al dare peso a cose che in realtà peso non hanno,  questa è la quint'essenza del "rasoio di Occam" (anche questo principio empirico è divenuto un'altra leggenda metropolitana di elisir miracoloso).

 
« Ultima modifica: Giugno 23, 2023, 04:48:47 am da Avogadro »

Avogadro

  • Full Member
  • ***
  • Post: 217
  • Karma: +0/-0
Re:Fare programmi oggi
« Risposta #11 il: Luglio 07, 2023, 05:01:05 am »
Nostalgia*.

Stavo guardando qualcosa sul turbo pascal e ho trovato questa pagina web

https://archive.org/details/MC_microcomputer-065/page/n53/mode/2up?view=theater

E' un articolo della rivista MC Microcomputer he parlava in illo tempore dell' approccio proposto dalla Borland: compilatore e tre librerie essenziali: la base di dati, il word processor e la grafica.

L'sql in illo tempore non era diffusso a livello capillare come lo è oggi,  anche perché l' hardware dei pc dell' epoca non era paragonabile, per performances, a quello attuale.

Con delphi la prospettiva era piu' o meno la stessa,  se ricordo bene poggiarono tutto su Paradox, un data base relazionale che aveva come "interfaccia il BDE, "borland data base engine"; leggevo da qualche parte che questo fu un errore di marketing , a cui poi si pose rimedio "aprendo" anche ad altri database .

Comunque sia, in illo tempore riviste c'erano un sacco di riviste come MC microcomputer, che era interessante leggere, adesso non ci sono piu' nemmeno le edicole .

Qualcosa è andato storto nella storia, non so.


*
https://www.toptesti.it/testo_nostalgia_canaglia_al_bano_e_romina_power_465038
« Ultima modifica: Luglio 07, 2023, 01:22:36 pm da Avogadro »

nomorelogic

  • Global Moderator
  • Hero Member
  • *****
  • Post: 2876
  • Karma: +20/-4
Re:Fare programmi oggi
« Risposta #12 il: Luglio 07, 2023, 09:42:25 am »
in quel periodo c'era una rivista mi pare si chiamasse "computer programming", oggi è sparita anche quella
comunque ricordo bene il borland database engine (BDE) e paradox, non so cosa sia andato storto ma era abbastanza innovativo
se non ricordo male, poi fu sostituito dalla libreria DbExpress che rappresentò un'apertura totale a tutti i DB SQL

altri tempi :)

Imagination is more important than knowledge (A.Einstein)

tito_livio

  • Full Member
  • ***
  • Post: 152
  • Karma: +3/-0
Re:Fare programmi oggi
« Risposta #13 il: Luglio 07, 2023, 09:48:40 am »
Con delphi la prospettiva era piu' o meno la stessa,  se ricordo bene poggiarono tutto su Paradox, un data base relazionale che aveva come "interfaccia il BDE, "borland data base engine"; leggevo da qualche parte che questo fu un errore di marketing , a cui poi si pose rimedio "aprendo" anche ad altri database .

Ricordo una cosa scritta sul manuale di Delphi 2 che diceva più o meno così: "come database puoi usare Paradox ma se vuoi fare applicazioni robuste devi usare Interbase".
Allora io pensai, "Ma che si mettono a distribuire un tipo "database" che si guasta spesso ? Andrà bene comunque per i miei usi"
Si, si guastava tanto, tanto spesso, mannaggia a loro.

P.S.: Comunque Delphi 2 era il primo ambiente di sviluppo di Borland a 32 bit, interfaccia grafica e tanto altro. Era tanta roba, mentre tutta la concorrenza aveva ancora l'interfaccia a carattere, quindi più difficile da usare.
« Ultima modifica: Luglio 07, 2023, 10:54:30 am da tito_livio »

DragoRosso

  • Scrittore
  • Hero Member
  • *****
  • Post: 1272
  • Karma: +43/-0
  • Prima ascoltare, poi decidere
Re:Fare programmi oggi
« Risposta #14 il: Luglio 10, 2023, 11:19:24 am »
Ai tempi che furono non esisteva Internet, e la divulgazione primaria avveniva tramite carta o i passaparola. C'erano in realtà anche le BBS ma comunque "cose" da elite.

Riviste ce ne erano diverse, più o meno orientate su varie tecnologie e a coadiuvare c'erano pochi volumi di manualistica, i miei primi che sono e rimarranno MITICI sono le guide di Peter Norton su hardware e bios XT.

A quel tempo, a scuola, squattrinato potevo solo andare nelle librerie e mettermi a leggere di sfuggita qualche pagina, ma assiduamente nel giro di qualche giorno avevo già appreso il necessario, salvo farmi cacciare dalle librerie che comunque a quel tempo capivano la situazione e chiudevano non solo un occhio ma anche tutti e due alle volte.

A quel tempo, conoscere come funzionava un Interrupt faceva la differenza tra lavorare e prendere bei soldini o no.

Un pò mi manca quel tempo, dove tutto era curiosità e conquista con il gusto di combattere per la conoscenza.

Ora mi trovo davanti a "programmatori" o presunti tali che quando si parla di "stack" o di "context switching" ti guardano come se parlassi il "vulcaniano" di Spock. E non stò parlando di programmatori alla prime armi o hobbisti, ma di gente che lo fà per professione.

 >:( Evviva il Java, evviva il Python, largo alla cultura a "banda larga" dove per programmare non serve che usi neanche la tastiera ... basta chiedere a CHATGPT e il gioco è fatto (salvo poi piangere sui disastri che si vengono a creare).  >:(

Ciao
:) Ogni alba è un regalo, ogni tramonto è una conquista :)

 

Recenti

How To

Utenti
Stats
  • Post in totale: 18818
  • Topic in totale: 2241
  • Online Today: 623
  • Online Ever: 900
  • (Gennaio 21, 2020, 08:17:49 pm)
Utenti Online
Users: 1
Guests: 606
Total: 607

Disclaimer:

Questo blog non rappresenta una testata giornalistica poiché viene aggiornato senza alcuna periodicità. Non può pertanto considerarsi un prodotto editoriale ai sensi della legge n. 62/2001.