Archivi per la categoria ‘Software’

PostHeaderIcon Aggiornamenti di usabilità per JuniorCMS!

Di domenica si sa… non si lavora! O almeno non si lavora alle cose che portano soldi, dunque non resta che ottimizzare gli strumenti già esistenti.

Dopo aver fatto un approfondito test con mie sorelle (ottime rappresentanti della non-cultura web) ho apportato due interessanti migliorie all’interfaccia di gestione contenuti di JuniorCMS.

Area “Aggiungi Contenuto”

In coda ad ogni colonna di contenuto è stata aggiunta un’area di grandi dimensioni la quale richiama chiaramente l’azione di aggiungere nuovi contenuti.

Il click su questo link ha lo stesso effetto del click sull’icona “+” posta in alto a destra della medesima colonna: apre l’interfaccia di selezione contenuto da aggiungere.

Selezione Nuovo Contenuto:

La seconda miglioria apportata riguarda l’interfaccia di selezione del nuovo contenuto da aggiungere alla pagina.

La finestra di selezione è stata ingrandita in modo da poter ospitare una piccola spiegazione in linea. Questo facilita il compito a chi non usa il sito web troppo spesso!

L’elenco dei widget di contenuto è stato completamente rivisitato e ogni elemento fornisce titolo, icona ed una spiegazione testuale estesa che ne rende più semplice la selezione.

Altri Aggiustamenti:

Ho apportato ulteriori sistemazioni anche ad altre parti dell’interfaccia migliorando i title dei link di azione nell’elenco delle pagine, spostando i campi “inutili” nel pannello “Avanzate” durante l’editing di struttura delle pagine (chi ha fatto il test si “perdeva” nei campi opzionali).

In futuro ho intenzione di mettere mano al menu del backend per eliminare la necessità del click di attivazione dei submenu. Questa scelta favorisce l’esplorazione dell’interfaccia da parte dell’utente alle prime armi.

Aggiornamento AdessoWEB:

Tutti questi miglioramenti sono già stati caricati per tutti i clienti AdessoWEB attivi e per tutti i 3° livelli grazie agli aggiornamenti automatici! Ormai rilasciare aggiornamenti è uno spasso!

PostHeaderIcon Nuovo pannello di configurazione per JuniorCMS!

Dopo un paio di giorni di progettazione ho dato vita al pannello “Configuratore di Applicazione” il quale è stato integrato nel core del sistema ed è raggiungibile da menu “jCMS -> Configuratore Applicazione”.

app configurator screenshot

Questo pannello è suddiviso in “pannelli” e “sezioni” che raggruppano delle variabili di cui è possibile specificare il valore “run-time”. Questi valori vanno a sovrascrivere eventuali valori specificati nelle configurazioni statiche (_config.php) dei vari plugins.

PostHeaderIcon AdessoWEB: il tuo sito on-line ad un prezzo onesto!

Segnalo il nuovissimo servizio AdessoWEB per la realizzazione di siti web a gestione autonoma a prezzi veramente abbordabili!

Il progetto si scosta dalla categoria dei “cms economici” perchè non pone limiti alle dimensioni del sito web realizzabile e offre massima personalizzazione per chi vuole cimentarsi nella realizzazione di grafica web.

Molte informazioni sono reperibili nel sito web ufficiale che è in fase di ultimazione ed affinamento ma è probabile che tratteremo in questo blog aspetti tecnici e/o trucchi e informazioni riguardo la creazione di temi personalizzati, l’utilizzo di plugin avanzati e l’estensione di questo incredibile software.

Visita AdessoWEB.biz!

PostHeaderIcon Desktop Remoto con iPad?

Tra i mille video che dimostrano le capacità di iPad non sono riuscito a trovare una dimostrazione delle tanto attese capacità vnc.

A mio parere le possibilità di gestire in modo ottimizzato delle sessioni di desktop remoto tramite server VNC, o comunque di controllo remoto in generale, sono da elencare tra le features più promettenti del nuovo apple-giocattolo.

Con iPhone abbiamo sperimentato con successo software quali TeamViewer. Abbiamo goduto della possibilità di usare software “evoluti” su un mobile device e abbiamo sofferto dei forti limiti imposti dalle piccole dimensioni: troppo grande per un telefono e troppo piccolo per un computer.

iPad probabilmente ci darà la concreta possibilità di un utilizzo remoto del proprio computer. Potremo finalmente uscire dal cliente con uno strumento leggero e di grande autonomia, potremo utilizzare software evoluti quali server web o gestionali direttamente dal nostro mac di sviluppo che abbiamo lasciato a casa.

iPad probabilmente eliminerà la nostra costante paura di perdere o essere derubati dei preziosi dati presenti nel nostro portatile.

iPad probabilmente ci consentirà continuità di backup perché non dovremo più staccare i dischi di TimeMachine.

Tutto questo se Steve e la sua banda riusciranno a realizzare un sistema di controllo remoto leggero, realmente utilizzabile con le dita e, sopratutto, economico per le nostre care tariffe mobile!

PostHeaderIcon VirtualBOX on Mac: come si scrive la @ (chiocciola – at)

Per inserire una chiocciola (@ – at) in un campo di indirizzo di posta elettronica utilizzando la tastiera Mac utilizzare la seguente combinazione di tasti:

ctrl + alt + ò

VirtualBOX è un software di virtualizzazione gratuito. VirtualBOX permette di installare sistemi Windows o Linux sul proprio Mac utilizzando un computer completamente simulato.

Uno dei principali vantaggi di VirtualBOX rispetto ai suoi concorrenti (Parallels Desktop e VM Ware) è il formato del file di computer virtuale il quale è compatibile nei sistemi Windows, Linux e Mac.

Ciò significa che è possibile creare un proprio computer virtuale, salvarlo in una chiavetta USB ed utilizzarlo attraverso un qualunque computer disponibile.

PostHeaderIcon Google Waves: una prima impressione!

Al fine di un’esasperante periodo di lunga attesa ricevo il tanto agognato invito a Google Waves. In meno di un millisecondo accetto e faccio login sul nuovo e promettente sistema Googoliano e subito mi godo il video introduttivo.

Purtroppo il simpatico scienziato pazzo mi fa capire che Google Waves non è molto distante da una chat multimediale con storico permanente simile a gMail!

Ammetto che, causa pressanti impegni di lavoro, ho dedicato meno di 5 minuti a Google Waves ma le aspettative erano veramente molto più grandi di quello che mi sono trovato davanti.

Probabilmente approfondendo l’utilizzo dello strumento cambierò idea… ma non è la prima impressione quella che conta???

PostHeaderIcon CakePOWER: il progetto è ufficiale!

Il primo logo ufficiale!

Il primo logo ufficiale!

Ho registrato il dominio www.cakepower.org e sto iniziando a pubblicare una wiki di documentazione ufficiale del progetto CakePOWER.

Il sito sarà per ovvie ragioni completamente in inglese… un inglese che, non ho dubbi, i più troveranno rozzo e scorretto! Col tempo migliorerò!

Ricordo che il progetto è aperto a chiunque desideri collaborare. Sul sito ufficiale sono esposti i link al canale Twitter per gli aggiornamenti veloci e al repository su Google Docs per scaricare tutti gli aggiornamenti che andrò a pubblicare.

Presto verrà aperto il bug traking sul Google Code per raccogliere le segnalazioni di chi vorrà collaborare a testare e debuggare il progetto.

www.cakepower.org

PostHeaderIcon CakePOWER: Progettazione di un Framework

Quest0 articolo segna l’inizio di una serie di considerazioni e analisi il cui obiettivo è la progettazione e costruzione di un framework applicativo web based.

La mia esperienza nello sviluppo di applicazioni web (siti web, gestionali, piccole utility) mi ha portato ad elaborare alcune definizioni che utilizzerò nei successivi articoli di analisi:

  • framework: è l’insieme di strumenti che consentono di enunciare le istruzioni logiche che compongono l’applicazione.
  • applicazione: è l’insieme delle istruzioni necessarie a definire la logica astratta di un software.
  • interfaccia: è lo strumento di comunicazione tra l’applicazione e il suo utente.
  • prodotto: è l’insieme di applicazione e interfaccia cui vengono applicate delle personalizzazioni specifiche per la singola realizzazione.

schema organizzativo delle aree logiche in cui si divide lo sviluppo di un'applicazione web.

Nell’immagine precedente la linea rossa rappresenta la separazione logica tra sviluppo dell’applicazione e lo sviluppo del prodotto.

L’applicazione è costituita di istruzioni logiche generiche che possono descrivere una soluzione software ad un problema collettivo. Lo sviluppo del prodotto si concentra sulla selezione delle applicazioni necessarie e sulla definizione di un insieme di regole di personalizzazione.

Nel momento in cui ci viene richiesto lo sviluppo di un prodotto (es un sito web) dobbiamo soffermarci e ragionare sulle applicazioni che lo compongono: gestione utenti, gestione pagine, gestione news, photo gallery e sulle regole di personalizzazione che lo completano: template grafico, numero di news per pagina, gestione dei menus.

Diventa facile capire che l’obiettivo è spostare la line rossa in modo che l’area di configurazione occupi sempre meno spazio nella costruzione di un prodotto. Il tempo che dedichiamo alla costruzione di un prodotto dev’essere concentrato sulla soddisfazione delle personalizzazioni richieste e non sullo sviluppo delle funzionalità

Il compito del framework:

La realizzazione pratica di quanto illustrato espone alcuni prerequisiti fondamentali che il framework deve soddisfare:

  • Tutte le operazioni di configurazione devono poter essere descritte su files fisicamente distinti dai sorgenti dell’applicazione.
  • I moduli applicativi (plugins) che compongono l’applicazione devono poter interoperare al fine di estendere e/o modificare il comportamento di altri moduli.
  • I moduli applicativi devono essere sensibili ad un sistema di configurazione strutturato e scalabile.
  • I moduli applicativi devono erogare funzionalità logiche “dropIn”. Non deve essere richiesta modifica dei files sorgenti!

CakePOWER: un po’ di pepe a CakePHP!

CakePOWER è il progetto che mira a concretizzare l’area core dell’immagine qui sopra fornendo tutti gli strumenti necessari allo sviluppo di plugins (moduli applicativi) al fine di vendere prodotti (siti web e gestionali applicativi) la cui caratteristica principale è alta qualità a basso costo.

Ho iniziato cercando un framework (PHP) che implementi il paradigma MVC e la scelta è ricaduta su CakePHP in quanto progetto abbastanza maturo e direzionato sulla creazione di automatismi che permettono di sviluppare il più velocemente possibile.

CakePOWER sarà sviluppato come un’estensione di CakePHP la quale integra funzionalità complesse nel framework. Di fatto tutto il sorgente sarà contenuto nella folder cake_power e l’integrazione avverrà mediante poche semplici istruzioni da inserire nei files di configurazione principali dell’applicazione.

CakePOWER è un’estensione, non un fork!

Lo stato attuale del progetto è pressochè nullo: sto scrivendo la documentazione delle prime strutture logiche che comporranno CakePOWER. La scelta di sviluppare prima la documentazione è fondamentale per garantire la qualità del codice prodotto.

A breve i sorgenti saranno disponibili su Google Project (http://code.google.com/p/cakepower/).

PostHeaderIcon Screencast on-line!

Procedendo nello sviluppo della documentazione di CakePOWER e JuniorCMS ho sentito la necessità di realizzare alcuni screencast.

Gira e rigira ho trovato due software veramente interessanti:

Jing: applicazione locale disponibile sia per Mac che per Win, dalla grafica veramente accattivante, permette di catturare filmati di max 5 minuti esportandoli in formato swf. La versione “pro” (15€/anno) permette di aumentare le opzioni di esportazione.

Screencast-o-matic: meravigliosa applicazione web scritta in Java. Permette di realizzare screencast di max 15 minuti e di esportarli in flv, avi, mp4. Permette inoltre di eseguire una semplice “post-elaborazione” inserendo testi di commendo a posizioni precise espresse in secondi di filmato.

PostHeaderIcon Tab plugin per coda editor

Usi Coda editor e diventi matto per indentare il codice???
Ecco un utile plugin che consente a Coda di gestire l’indentazione del codice come un qualunque altro editor human oriented.

http://menumachine.com/blog/2009/01/tab-key-indenting-for-coda/

(Segnalato da Fabio!)