DioBrando
17-11-2006, 02:07
Lo scopo del thread è raccogliere tutti gli strumenti/tool/applicazioni più utilizzati e validi, affinchè siano listati in modo organico e chiaro a tutti, indipendentemente dalle conoscenze dell'utente cui potrebbero tornare utili.
Per far ciò, io mi prendo l'onere di tradurre in pratica i suggerimenti e i nomi che secondo voi meritano di essere listati: in poche parole il contributo delle persone che seguono la sezione Programmazione e del forum in generale è fondamentale :)
L'idea è nata nel thread Tutto Freeware/Opensource v.3.0 (http://www.hwupgrade.it/forum/showthread.php?t=668898&page=1&pp=20) stickato in Programmi e Utility dove, attraverso una scrematura e selezione delle applicazioni qui citate, verrà listata quella che secondo noi è un pò la "creme della creme", i prodotti che meno sfigurano o non sfigurano affatto rispetto alle controparti commerciali.
E siamo quindi al secondo scopo.
I requisiti fondamentali per la riuscita del "progetto" sono secondo me i seguenti:
1. partecipazione attiva e propositiva da parte degli utenti
2. la riduzione al minimo dei messaggi non inerenti (= OT)
3. definizione a monte dei criteri su quali sono le basi devono essere scelti i programmi menzionati nel primo post e secondo quali criteri debbono essere raggruppati e descritti.
Ricollegandomi all'ultimo punto, provo ad enunciare le problematiche e le possibili soluzioni (emerse nell'altro thread), che un'operazione del genere presenta.
Partiamo dal presupposto che la quantità di software adibito allo sviluppo in generale (di qls tipo, dalla pagina web molto semplice, al gestionale da un milione di righe di codice) è enorme.
Da un lato è positivo perchè ci consente di andare a pescare l'applicazione che effettivamente fà per noi, dall'altro ci pone il difficile compito di andare a filtrare e dividere i prodotti effettivamente validi da quelli mediocri se non adirittura cloni malriusciti.
Il secondo problema, in parte derivato dal primo, è la necessità più che con programmi di altro tipo (videoediting per es.) di descrivere efficacemente e in modo tale da far capire a chi legge la lista, quali sono le peculiarità di X rispetto ad Y e Z e per quale motivo io (che ho determinate esigenze diverse, possibilmente da un'altra persona) dovrei preferirlo.
La parola lista sottointende anche l'obbligo di essere estremamente sintetici nella descrizione (una, due righe massimo), altrimenti si rischia di estendere troppo il post in senso verticale compromettendone la leggibilità e fruibilità.
Un terzo problema è la categorizzazione. Mi spiego meglio.
Chiunque di voi abbia avuto anche con un editor abbastanza semplice ma versatile sà perfettamente che un gran numero di applicativi consente la scrittura, l'highlight della sintassi ed il controllo delle strutture che sono peculiari di più di un linguaggio; la ripartizione della lista secondo questo criterio risulta quindi complicata perchè si verrebbero a creare inutili doppioni (ad es. Eclipse con tutti i plugin di cui dispone sarebbe citato in chissà quante categorie :D).
Lo stesso scenario si presenterebbe però anche nel caso in cui ci focalizzassimo invece sul settore al quale è rivolto un determinato prodotto.
Infatti, per restare sullo stesso esempio, Eclipse mi consente sia di creare un gioco in linguaggio C++, sia di scrivere una web application in PHP.
Due programmi che non hanno praticamente nulla a che fare l'uno con l'altro.
Le soluzioni possibili (mi riallaccio al thread gestito da ziobystek) sono:
1° prob: utilizzare l'esperienza personale maturata sia con lo studio o l'applicazione pratica affinchè il consiglio sia il + fondato possibile; anche i feedback e le opinioni delle varie comunità sono importanti. Se quindi per es. PincoPallino ha raccolto il 98% dei consensi su SourgeForce può essere già una buona base di partenza perchè venga seriamente preso in considerazione e listato in questo thread.
2° prob: dobbiamo stabilire a priori quali sn le caratteristiche principali da elencare di un programma.
La butto lì:
- tipo di applicativo (IDE, editor ecc.)
- linguaggio/i utilizzato/i
- caratteristica/he saliente/i
- piattaforme disponibili (multipiattaforma/crossplatform se ne prevede + di una)
3° prob:
Qui io non ho una vera e propria soluzione...l'unica cosa sensata che mi viene in mente al momento, dato che la lista sarà forzatamente lunga (se non subito, nel proseguo sicuramente) è prendere la prima caratteristica cioè il tipo e far sì che sia la discriminante per realizzare le sottocategorie della lista stessa.
Quindi per es. raggrupperemo tutti gli IDE da una parte, poi gli editor, i DBMS, i CMS ecc.; anche in questo caso la multifunzionalità può portare al rischio di duplicati, ma è ovvio che se un IDE dispone di un editor, non lo inseriremo certo tra gli editor ma tra gli ambienti di sviluppo: insomma c'è pur sempre una caratteristica + importante che lo definisce meglio rispetto ad altre.
Quasi sempre almeno.
Un abbozzo di lista che propongo e che segue in parte i principi e le idee enucleati finora è la seguente:
Lista Principale
CMS:
Joomla (http://www.joomla.org/): semplice sia installare che da gestire, consigliato anche per il notevole supporto delle varie comunità, ufficiali (http://www.joomlaitalia.com/) e non (http://www.joomla.it/)
Mambo (http://www.mamboserver.com/): il progetto da cui Joomla ha avuto origine rispetto al quale risulta un pò + complesso ma altrettanto valido
PHPbb (http://www.phpbb.com/): famoso strumento Open Source per la gestione invece di un forum
Plone (http://plone.org/countries/it/): consigliato per l'aderenza agli standard del W3C ( non a caso consigliato per lo sviluppo a norma della Legge Stanca)
Wordpress (http://www.wordpress-it.it/): il miglior CMS per creare e gestire un blog
XOOPS (http://www.xoops.org/)
Compilatori
GCC (http://www.gnu.org/software/gcc/) IL punto di riferimento per le piattaforme GNU/Linux
MinGW (http://www.mingw.org/) porting del più famoso GCC per piattaforma Windows
DBMS:
Firebird (http://www.firebirdsql.org/)
MySQL (http://www.mysql.com/)
PostGres (http://www.postgresql.org/)
MS SQL Server 2005 Express Edition (http://www.microsoft.com/downloads/details.aspx?FamilyID=220549b5-0b07-4448-8848-dcc397514b41&displaylang=it)
Editor:
jEdit (http://www.jedit.org/): editor multipiattaforma e multilinguaggio molto flessibile, customizzabile ed estendibile attraverso plugin
NVU (http://www.sanavia.it/nvuitalia/): editor HTML/CSS WYSIWYG della famiglia Mozilla
Quanta Plus (http://quanta.kdewebdev.org/index.php) famoso editor web-oriented nella comunità GNU/Linux, basato su KDE, in grado di manipolare anche i DTD XML
NotePad++ (http://notepad-plus.sourceforge.net/it/site.htm)
Scite (http://www.scintilla.org/SciTE.html)
WebDeveloper (http://chrispederick.com/work/webdeveloper/): Estensione disponibile per i browser della Mozilla Foundation e per Opera (http://operawiki.info/WebDevToolbar); aggiunge toolbar e menu adibiti all'editing ed alla verifica/validazione di codice HTML/CSS
IDE:
Anjuta DevStudio (http://anjuta.sourceforge.net/)
Code::Blocks (http://www.codeblocks.org/): IDE open source C/C++ multipiattaforma e multicompilatore (scaricate le Nightly Build)
Dev-C++ (http://www.bloodshed.net/dev/): IDE di dimensioni e risorse contenute, rivolto al linguaggio C/C++
Dev-PHP (http://devphp.sourceforge.net/)
Eclipse (http://www.eclipse.org/): IDE multilinguaggio le cui funzionalità vengono ampliate tramite i numerosi plugin forniti dalla comunità Open Source
Mono (http://www.monodevelop.com/) implementazione OpenSource e crossplatform della tecnologia Microsoft .NET
NetBeans (http://www.netbeans.org/): IDE multilinguaggio scritto in Java e sponsorizzato dalla Sun.
PHPDesigner (http://www.mpsoftware.dk/phpdesigner_personal.php): IDE rivolto al PHP ma molto versatile ed utilizzabile per la stragrande maggioranza dei linguaggi web-oriented.
Visual Studio Express (http://msdn.microsoft.com/vstudio/express/default.aspx): IDE multilinguaggio focalizzato in particolare sulla tecnologia .NET
Tool Vari
TortoiseCVS (http://www.tortoisecvs.org/): implementazione Windows di CVS (http://www.nongnu.org/cvs/), il programma di controllo per la revisione del software più famoso nella comunità OS
TortoiseSVN (http://tortoisesvn.net/) altra implementazione per SO Windows ma di Subversion (http://subversion.tigris.org/), alterego di CVS
Lista Provvisoria (da testare)
CMS
Drupal (http://drupal.org/)
Editor
Kate (http://kate-editor.org/): editor avanzato, parte del progetto KDE e già incluso in molte distribuzioni Linux
Programmers Notepad (http://www.pnotepad.org/):
IDE
BlueJ (http://www.bluej.org/): IDE Java, piuttosto famoso ed utilizzato a livello accademico per scopo didattico
JCreator (http://):
SharpDevelop (http://www.icsharpcode.net/OpenSource/SD/22): altra implementazione della tecnologia .NET, scritto interamente in C#, disponibile per piattaforma Windows
Ho scelto provvisoriamente un ordine alfabetico ma non escludo che si possa utilizzare all'interno di ogni sottocategoria, +ttosto, un ordine di tipo gerarchico, dall'applicazione ritenuta comunemente di maggior spessore a quella magari più particolare ed indicata ad esigenze altrettanto specifiche.
Sarete voi a scegliere in che modo preferite strutturare la lista, scegliere le applicazioni e le caratteristiche attraverso le quali dovranno essere definite.
Per farla breve il mio ruolo sarà di semplice "scribacchino" :D, con il compito di, se necessario, focalizzare magari le buone idee verso una soluzione comune e/o riportare la discussione verso binari IT (ma confido nel buon senso di tutti per cui credo non ce ne sarà bisogno :)).
Tengo a precisare un'ultima cosa: tutti sono invitati a suggerire applicativi che siano inerenti alla "causa", anche non necessariamente famosi ma dei quali o siete rimasti positivamente soddisfatti dopo un utilizzo continuato oppure anche dei quali avete semplicemente sentito parlare positivamente.
Questo perchè gli utenti che partecipano alla discussione diventano attivi non solo proponendo dei nomi, ma anche testando loro stessi i programmi menzionati durante lo sviluppo del thread.
Ed è per questo motivo che mi auguro un interessamento di + persone possibile:
+ siamo, + nomi saltano fuori e maggiore è la possibilità di provarli "su strada" dando poi il proprio feedback in merito.
In fondo è proprio è il denominatore di tutte le community, in particolar modo dei forum: far sì che l'esperienza di un singolo diventi importante ed utile agli altri membri.
Nel nostro caso si traduce nel far portare alla luce nomi poco conosciuti ma che effettivamente vale la pena di utilizzare e consigliare.
Bene con questo ho concluso.
Ora la parola passa a voi :)
Qls suggerimento, critica sn bene accetti e anzi vi invito a rivolgerli qui in pubblico sul thread in modo che sia di spunto per una discussione ad ampio respiro e non semplicemente un tete-à-tete privato.
Raccomandazione:
quando segnalate un programma, sforzatevi di accompagnare il nome insieme ad una breve descrizione, cosicchè anche se abbozzata e modificabile in seguito, possiamo definirlo immediatamente senza doverlo testare prima.
Aggiornamento 17/11/2006:
Per aumentare la comprensibilità della discussione, proviamo a separare i programmi famosi, ritenuti sufficientemente validi (sia perchè apprezzati dalle varie comunità di sviluppatori sia perchè da noi provati positivamente), da quelli suggeriti dal singolo, che vanno ancora testati ed approvati.
Da qui la necessità di creare due liste una "definitiva" o "principale" da una seconda appunto "provvisoria".
Una volta che il o i software testati riceveranno il bollino approved verranno prima possibile promossi alla prima lista e rimossi dalla seconda.
+ avanti trovo sia sensato anche creare una terza lista esterna ( e qui qlc1 si prenderà la briga di hostarla :D) dove verranno inseriti invece quelle applicazioni testate ma che sono state bocciate, per X Y motivi, in modo tale da evitare di riproporre nuovamente lo stesso programma 2 o + volte; ah ovviamente qualora in una release successiva i difetti evidenziati fossero stati corretti, il giudizio potrà altrettanto cambiare ;)
Per far ciò, io mi prendo l'onere di tradurre in pratica i suggerimenti e i nomi che secondo voi meritano di essere listati: in poche parole il contributo delle persone che seguono la sezione Programmazione e del forum in generale è fondamentale :)
L'idea è nata nel thread Tutto Freeware/Opensource v.3.0 (http://www.hwupgrade.it/forum/showthread.php?t=668898&page=1&pp=20) stickato in Programmi e Utility dove, attraverso una scrematura e selezione delle applicazioni qui citate, verrà listata quella che secondo noi è un pò la "creme della creme", i prodotti che meno sfigurano o non sfigurano affatto rispetto alle controparti commerciali.
E siamo quindi al secondo scopo.
I requisiti fondamentali per la riuscita del "progetto" sono secondo me i seguenti:
1. partecipazione attiva e propositiva da parte degli utenti
2. la riduzione al minimo dei messaggi non inerenti (= OT)
3. definizione a monte dei criteri su quali sono le basi devono essere scelti i programmi menzionati nel primo post e secondo quali criteri debbono essere raggruppati e descritti.
Ricollegandomi all'ultimo punto, provo ad enunciare le problematiche e le possibili soluzioni (emerse nell'altro thread), che un'operazione del genere presenta.
Partiamo dal presupposto che la quantità di software adibito allo sviluppo in generale (di qls tipo, dalla pagina web molto semplice, al gestionale da un milione di righe di codice) è enorme.
Da un lato è positivo perchè ci consente di andare a pescare l'applicazione che effettivamente fà per noi, dall'altro ci pone il difficile compito di andare a filtrare e dividere i prodotti effettivamente validi da quelli mediocri se non adirittura cloni malriusciti.
Il secondo problema, in parte derivato dal primo, è la necessità più che con programmi di altro tipo (videoediting per es.) di descrivere efficacemente e in modo tale da far capire a chi legge la lista, quali sono le peculiarità di X rispetto ad Y e Z e per quale motivo io (che ho determinate esigenze diverse, possibilmente da un'altra persona) dovrei preferirlo.
La parola lista sottointende anche l'obbligo di essere estremamente sintetici nella descrizione (una, due righe massimo), altrimenti si rischia di estendere troppo il post in senso verticale compromettendone la leggibilità e fruibilità.
Un terzo problema è la categorizzazione. Mi spiego meglio.
Chiunque di voi abbia avuto anche con un editor abbastanza semplice ma versatile sà perfettamente che un gran numero di applicativi consente la scrittura, l'highlight della sintassi ed il controllo delle strutture che sono peculiari di più di un linguaggio; la ripartizione della lista secondo questo criterio risulta quindi complicata perchè si verrebbero a creare inutili doppioni (ad es. Eclipse con tutti i plugin di cui dispone sarebbe citato in chissà quante categorie :D).
Lo stesso scenario si presenterebbe però anche nel caso in cui ci focalizzassimo invece sul settore al quale è rivolto un determinato prodotto.
Infatti, per restare sullo stesso esempio, Eclipse mi consente sia di creare un gioco in linguaggio C++, sia di scrivere una web application in PHP.
Due programmi che non hanno praticamente nulla a che fare l'uno con l'altro.
Le soluzioni possibili (mi riallaccio al thread gestito da ziobystek) sono:
1° prob: utilizzare l'esperienza personale maturata sia con lo studio o l'applicazione pratica affinchè il consiglio sia il + fondato possibile; anche i feedback e le opinioni delle varie comunità sono importanti. Se quindi per es. PincoPallino ha raccolto il 98% dei consensi su SourgeForce può essere già una buona base di partenza perchè venga seriamente preso in considerazione e listato in questo thread.
2° prob: dobbiamo stabilire a priori quali sn le caratteristiche principali da elencare di un programma.
La butto lì:
- tipo di applicativo (IDE, editor ecc.)
- linguaggio/i utilizzato/i
- caratteristica/he saliente/i
- piattaforme disponibili (multipiattaforma/crossplatform se ne prevede + di una)
3° prob:
Qui io non ho una vera e propria soluzione...l'unica cosa sensata che mi viene in mente al momento, dato che la lista sarà forzatamente lunga (se non subito, nel proseguo sicuramente) è prendere la prima caratteristica cioè il tipo e far sì che sia la discriminante per realizzare le sottocategorie della lista stessa.
Quindi per es. raggrupperemo tutti gli IDE da una parte, poi gli editor, i DBMS, i CMS ecc.; anche in questo caso la multifunzionalità può portare al rischio di duplicati, ma è ovvio che se un IDE dispone di un editor, non lo inseriremo certo tra gli editor ma tra gli ambienti di sviluppo: insomma c'è pur sempre una caratteristica + importante che lo definisce meglio rispetto ad altre.
Quasi sempre almeno.
Un abbozzo di lista che propongo e che segue in parte i principi e le idee enucleati finora è la seguente:
Lista Principale
CMS:
Joomla (http://www.joomla.org/): semplice sia installare che da gestire, consigliato anche per il notevole supporto delle varie comunità, ufficiali (http://www.joomlaitalia.com/) e non (http://www.joomla.it/)
Mambo (http://www.mamboserver.com/): il progetto da cui Joomla ha avuto origine rispetto al quale risulta un pò + complesso ma altrettanto valido
PHPbb (http://www.phpbb.com/): famoso strumento Open Source per la gestione invece di un forum
Plone (http://plone.org/countries/it/): consigliato per l'aderenza agli standard del W3C ( non a caso consigliato per lo sviluppo a norma della Legge Stanca)
Wordpress (http://www.wordpress-it.it/): il miglior CMS per creare e gestire un blog
XOOPS (http://www.xoops.org/)
Compilatori
GCC (http://www.gnu.org/software/gcc/) IL punto di riferimento per le piattaforme GNU/Linux
MinGW (http://www.mingw.org/) porting del più famoso GCC per piattaforma Windows
DBMS:
Firebird (http://www.firebirdsql.org/)
MySQL (http://www.mysql.com/)
PostGres (http://www.postgresql.org/)
MS SQL Server 2005 Express Edition (http://www.microsoft.com/downloads/details.aspx?FamilyID=220549b5-0b07-4448-8848-dcc397514b41&displaylang=it)
Editor:
jEdit (http://www.jedit.org/): editor multipiattaforma e multilinguaggio molto flessibile, customizzabile ed estendibile attraverso plugin
NVU (http://www.sanavia.it/nvuitalia/): editor HTML/CSS WYSIWYG della famiglia Mozilla
Quanta Plus (http://quanta.kdewebdev.org/index.php) famoso editor web-oriented nella comunità GNU/Linux, basato su KDE, in grado di manipolare anche i DTD XML
NotePad++ (http://notepad-plus.sourceforge.net/it/site.htm)
Scite (http://www.scintilla.org/SciTE.html)
WebDeveloper (http://chrispederick.com/work/webdeveloper/): Estensione disponibile per i browser della Mozilla Foundation e per Opera (http://operawiki.info/WebDevToolbar); aggiunge toolbar e menu adibiti all'editing ed alla verifica/validazione di codice HTML/CSS
IDE:
Anjuta DevStudio (http://anjuta.sourceforge.net/)
Code::Blocks (http://www.codeblocks.org/): IDE open source C/C++ multipiattaforma e multicompilatore (scaricate le Nightly Build)
Dev-C++ (http://www.bloodshed.net/dev/): IDE di dimensioni e risorse contenute, rivolto al linguaggio C/C++
Dev-PHP (http://devphp.sourceforge.net/)
Eclipse (http://www.eclipse.org/): IDE multilinguaggio le cui funzionalità vengono ampliate tramite i numerosi plugin forniti dalla comunità Open Source
Mono (http://www.monodevelop.com/) implementazione OpenSource e crossplatform della tecnologia Microsoft .NET
NetBeans (http://www.netbeans.org/): IDE multilinguaggio scritto in Java e sponsorizzato dalla Sun.
PHPDesigner (http://www.mpsoftware.dk/phpdesigner_personal.php): IDE rivolto al PHP ma molto versatile ed utilizzabile per la stragrande maggioranza dei linguaggi web-oriented.
Visual Studio Express (http://msdn.microsoft.com/vstudio/express/default.aspx): IDE multilinguaggio focalizzato in particolare sulla tecnologia .NET
Tool Vari
TortoiseCVS (http://www.tortoisecvs.org/): implementazione Windows di CVS (http://www.nongnu.org/cvs/), il programma di controllo per la revisione del software più famoso nella comunità OS
TortoiseSVN (http://tortoisesvn.net/) altra implementazione per SO Windows ma di Subversion (http://subversion.tigris.org/), alterego di CVS
Lista Provvisoria (da testare)
CMS
Drupal (http://drupal.org/)
Editor
Kate (http://kate-editor.org/): editor avanzato, parte del progetto KDE e già incluso in molte distribuzioni Linux
Programmers Notepad (http://www.pnotepad.org/):
IDE
BlueJ (http://www.bluej.org/): IDE Java, piuttosto famoso ed utilizzato a livello accademico per scopo didattico
JCreator (http://):
SharpDevelop (http://www.icsharpcode.net/OpenSource/SD/22): altra implementazione della tecnologia .NET, scritto interamente in C#, disponibile per piattaforma Windows
Ho scelto provvisoriamente un ordine alfabetico ma non escludo che si possa utilizzare all'interno di ogni sottocategoria, +ttosto, un ordine di tipo gerarchico, dall'applicazione ritenuta comunemente di maggior spessore a quella magari più particolare ed indicata ad esigenze altrettanto specifiche.
Sarete voi a scegliere in che modo preferite strutturare la lista, scegliere le applicazioni e le caratteristiche attraverso le quali dovranno essere definite.
Per farla breve il mio ruolo sarà di semplice "scribacchino" :D, con il compito di, se necessario, focalizzare magari le buone idee verso una soluzione comune e/o riportare la discussione verso binari IT (ma confido nel buon senso di tutti per cui credo non ce ne sarà bisogno :)).
Tengo a precisare un'ultima cosa: tutti sono invitati a suggerire applicativi che siano inerenti alla "causa", anche non necessariamente famosi ma dei quali o siete rimasti positivamente soddisfatti dopo un utilizzo continuato oppure anche dei quali avete semplicemente sentito parlare positivamente.
Questo perchè gli utenti che partecipano alla discussione diventano attivi non solo proponendo dei nomi, ma anche testando loro stessi i programmi menzionati durante lo sviluppo del thread.
Ed è per questo motivo che mi auguro un interessamento di + persone possibile:
+ siamo, + nomi saltano fuori e maggiore è la possibilità di provarli "su strada" dando poi il proprio feedback in merito.
In fondo è proprio è il denominatore di tutte le community, in particolar modo dei forum: far sì che l'esperienza di un singolo diventi importante ed utile agli altri membri.
Nel nostro caso si traduce nel far portare alla luce nomi poco conosciuti ma che effettivamente vale la pena di utilizzare e consigliare.
Bene con questo ho concluso.
Ora la parola passa a voi :)
Qls suggerimento, critica sn bene accetti e anzi vi invito a rivolgerli qui in pubblico sul thread in modo che sia di spunto per una discussione ad ampio respiro e non semplicemente un tete-à-tete privato.
Raccomandazione:
quando segnalate un programma, sforzatevi di accompagnare il nome insieme ad una breve descrizione, cosicchè anche se abbozzata e modificabile in seguito, possiamo definirlo immediatamente senza doverlo testare prima.
Aggiornamento 17/11/2006:
Per aumentare la comprensibilità della discussione, proviamo a separare i programmi famosi, ritenuti sufficientemente validi (sia perchè apprezzati dalle varie comunità di sviluppatori sia perchè da noi provati positivamente), da quelli suggeriti dal singolo, che vanno ancora testati ed approvati.
Da qui la necessità di creare due liste una "definitiva" o "principale" da una seconda appunto "provvisoria".
Una volta che il o i software testati riceveranno il bollino approved verranno prima possibile promossi alla prima lista e rimossi dalla seconda.
+ avanti trovo sia sensato anche creare una terza lista esterna ( e qui qlc1 si prenderà la briga di hostarla :D) dove verranno inseriti invece quelle applicazioni testate ma che sono state bocciate, per X Y motivi, in modo tale da evitare di riproporre nuovamente lo stesso programma 2 o + volte; ah ovviamente qualora in una release successiva i difetti evidenziati fossero stati corretti, il giudizio potrà altrettanto cambiare ;)