Strumenti open source

Una volta chi sviluppava software doveva utilizzare forzatamente strumenti di sviluppo proprietari, qualunque fosse il linguaggio di programmazione scelto (Basic, C/C++, Delphi, DBII, DBIII, Cobol, Fortran etc. etc.).
Oltre a ciò era necessario dotarsi di librerie aggiuntive per gestire funzionalità non comprese nella dotazione base dei linguaggi e quindi c’erano ulteriori spese per poter inserire nei propri programma grafica, motori di database, stampe di aspetto professi0onale e quant’altro.
Da allora fortunatamente le cose sono molto cambiate, soprattutto grazie alla diffuzione di internet, e i programmatori hanno solo l’imbarazzo della scelta per quanto riguarda sia i linguaggi di programmazione che gli strumenti accessori, molti continuano ad essere a pagamento ma ce ne sono tantissimi gratuiti e di qualità paragonabile, quando non addirittura superiore, alle soluzioni prorpietarie.
Quello che segue è un elenco, non esaustivo e probabilmente neanche aggiornato, di strumenti reperibili su internet che mi è capitato di utilizzare nel corso degli anni, molti di questi fanno ancora parte della mia “cassetta degli attrezzi”.

NOTA: Se utilizzate strumenti Open Source e li trovate utili (a volte indispensabili) perchè non ringraziare gli autori facendo una piccola donazione? A volte bastano 5 o 10 euro per consentire agli ottimi programmatori che vi hanno regalato questi meravigliosi strumenti, di continuare il loro lavoro. Io ho preso l’abitudine di fare questo piccolo gesto ogni volta che mi rendo conto di aver avuto un miglioramento nella qualità del mio lavoro grazie ad un software Open Source. Pensateci.

LINGUAGGI DI PROGRAMMAZIONE

Lazarus

LAZARUS è un IDE, la versione Open Source di Pascal; possiamo considerarlo come un Delphi gratuito anche se la definizione gli va un po’ stretta per come la vedo io.

E’ multipiattaforma, orientato agli oggetti e semplice da utilizzare.

La comunità che lo sostiene è abbastanza nutrita e attiva ed è possibile trovare on-line librerie, tutorial, wiky e forum. Il sito ufficiale è questo http://www.lazarus-ide.org/

Python

PYTHON è un linguaggio eccezionale per versatilità ed efficienza, richiede un po’ di sforzo iniziale per chi proviene da linguaggi più obsoleti (Pascal, Basic e anche C) ma vale la fatica fatta.

Il codice Python è interpretato, richiede cioè una “macchina virtuale” per poter funzionare (nella distribuzioni Linux è preinstallata di default) ma esistono anche dei tools che permettono la creazione di eseguibili.

I vantaggi di questo linguaggio sono, a mio parere, la compattezza del codice, l’obbligatorietà dell’indentazione che rendo il codice molto chiaro e la possibilità di scrivere programmi per le più diverse situazioni (web, embedded, stand-alone, micro-pc).

La pagina ufficiale in italiano è questa https://www.python.it/


GRAFICA

Gimp

GIMP (Gnu Image Manipolation Program) è un programma Open Source per il fotoritocco. Paragonabile a Photoshop ma a costo zero, per la maggior parte dei lavori di fotoritocco svolge rgrgiamente il suo lavoro, ameno che non siate dei superprofessionisti dell’elaborazione grafica non sarà necessario spendere centinaia di euro per acquistare un programma le cui funzioni potete trovare in queto ottimo software.

Questo è il sito ufficiale https://www.gimp.org/mentre questo è il sito italiano dedicato a Gimp https://gimpitalia.it/

Inkscape

INKSCAPE è un programma Open Source che permette di creare immagini vettoriali (cioè scalabili) in maniera semplice. Chi non ha mai utilizzato questo tipo di programmi (es. Corel Draw) troverà qualche difficoltà in più all’inizio per capire il sistema ad oggetti con cui questi software gestiscono le immagini. Una volta presa confidenza con gli strumenti più importanti sarete in grado di creare magnifiche immagini che saranno visualizzate in maniera perfetta a qualunque risoluzione.

Il sito ufficiale è https://inkscape.org/en/

Pencil

PENCIL è un software Open Source con il quale potete facilmente creare prototipi GUI, diagrammi di flusso, diagrammi UML etc.

Il programma mette a disposizione una cospicua libreria di forma primitive che possono essere connesse tra loro tramite molti tipi di linee e frecce, si possono inserire testi e commenti.

Insomma tutto ciò che serve per poter mettere “in bella” i propri progetti, sia che dobbiate discuterne con qualcun altro sia per poterli sviluppare in un secondo momento, quando saranno ormai usciti dalla RAM del vostro cervello.

Questo è il sito del progetto https://pencil.evolus.vn/

 

tnt

TNT è un programma Open Source per la cattura delle schermate, è utilissimo, fa una sola cosa ma la fa bene.

Lo troverete utile ogni volta che dovrete creare immagini prendendole dallo schermo (intero schermo, finestre o singole porzioni che siano) per utilizzatle ad esempio nella stesura di manuali per i vostri lavori, per inserirle in pagine web, allegarle ad email o in molte altre situazioni.

Sito http://www.tntscreencapture.com/

colorzilla

COLORZILLA. Si tratta di un plugin per browser (Mozilla Firefox e Google Chrome) utilissimo quando si lavora con CSS, permette di leggere il codice di un qualsiasi colore presente sullo schermo, di scegliere colori da palette ed ha un’utilissima funzione per generare gradients (sfumature) da inserire in nelle pagine web.

Installabile nei browser con l’apposita funzionalità automatica, oppure dal sito http://www.colorzilla.com/


COMUNICAZIONE

Teamviewer

TEAMVIEWER è probabilmente il più famoso ed utilizzato programma di gestione remota esistente al mondo. Permette di ottenere il controllo di un computer remoto come se si fosse seduti davanti ad esso, anche se si trova a migliaia di chilometri di distanza.

Il software è disponibile in diverse configurazioni a seconda delle proprie esigenze; basta fare installare ai vostri clienti una copia (client) di TeamViewer ed installare sulla vostra macchina una copia completa (anche la versione portatile che consiglio).

L’utente remoto vi comunicherà un numero di ID e una password (che cambia ad ogni sessione) per consentirvi di operare sul suo computer.

Impagabile quando un software da voi sviluppato dà qualche problema (non necessariamente si tratta di bugs, molte volte l’utente ha fatto qualcosa che non doveva fare … lo dico per plurime esperienze).

Aneddoto: tanti, tanti anni fa, doveti saltare su un treno e fare 350 km per andare a correggere un file sorgente nel quale mi era scappata una lettera “ù” (digitando veloce e non facendo tutti i debug necessari capitava) … ah, se avessi avuto internet e TeamViewer!

Il sito ufficiale https://www.teamviewer.com/it/

Filezilla

FILEZILLA è un programma Open Source per la gestione dei trasferimenti di rete tramite il protocollo FTP, se lavorate con il web non potrete farne a meno. Trasferite file e interi siti sul vostro Hosting senza utilizzare macchinosi pannelli sul browser.

Sito https://filezilla-project.org/

PUTTY un piccolo eseguibile per Windows che vi consente di aprire una comunicazione via SSH con un server Linux. L’interfaccia è a caratteri, quindi è proprio una cosa da “smanettoni”.

Potete scaricarlo da qui http://www.putty.org/


DATABASE

  • Mysql
  • SqlYog
  • SqLite

VARIE

  • Inno Setup
  • PDF24