Un sito Web chiavi in mano

bitnami_web_appsBitNami Stack :  a ognuno il suo

Oggi giorno molti, moltissimi, hanno sentito nominare parole come WordPress, Joomla, CMS ecc…, ma pochi associano questi nomi ai software necessari per il loro funzionamento.
Tra le diverse figure professionali coinvolte possiamo senza dubbio evidenziare :

  • il semplice utilizzatore, ignaro di come funzioni Internet ma che vuole crearsi un Blog
  • il web designer, che magari non conosce linguaggi di programmazione, ma e’ un dio nell’art design
  • lo sviluppatore che ama creare nuovi software ma non e’ molto competente come sistemista

Seppure la piattaforma “standard de facto” LAMP (Linux+Apache+Mysql+PHP) sia ancora quella piu’ diffusa, molte altre nuove soluzioni sono nate, con l’intento di colmare le carenze pre esistenti sui vecchi sistemi e di migliorare l’esperienza lavorativa dell’utente finale.

BitNami Stack e’ una soluzione pronta all’uso; il concetto alla base del progetto e’ che ognuno, competente o non, ha il diritto di poter utilizzare qualunque applicazione web senza dover essere necessariamente un genio dell’informatica. Ad oggi sono gia circa un centinaio le applicazioni web chiavi in mano fornite sul portale, e la lista dei coming soon e’ altrettanto lunga.

L’installazione classica e’ un’operazione molto semplice, bastera’ andare sul sito da questo link , scegliere l’applicazione web di nostro interesse, selezionare il tipo di pacchetto e scaricarlo in locale; successivamente dare i permessi di esecuzione al pacchetto e lanciarlo, le poche domande che verranno fatte serviranno semplicemente a configurare l’utenza di utilizzo dell’applicazione, la porta di connessione al DB e, se si desidera, un account mail (tramite SMTP protocol) per l’invio delle mail di notifica della App.

chmod +x bitnami-owncloud-7.0.1-0-linux-installer.run
sudo ./bitnami-owncloud-7.0.1-0-linux-installer.run

Esistono anche altre due modalita’ : Live & Cloud

Live : per tutti coloro che non intendono utilizzare direttamente le applicazioni sul proprio pc/server esiste la possibilita’ di scaricare le immagini per VMWare e, volendo, utilizzando VMWare vCenter Converter Tool, sara’ possibile utilizzarle anche con VirtualBox o Kvm.

Cloud : per chi preferisce le soluzioni Cloud, BitNami offre un servizio Cloud dedicato per l’installazione del software; in alternativa si trovano a disposizione gli script per Amazon, bastera’ scaricare il template e caricarlo successivamente su Amazon.

Con una tale facilita’ di utilizzo non mi rimane che dirvi : “testate gente, testate” !!!!

Per maggior info consiglio anche di leggere “BitNami: CMS impacchettati per tutti

Lavorare a Berlino

berlin-jobPerche’ Berlino ???

Iniziamo con il dire che Berlino offre a tutti coloro che si sentono in grado di lasciare l’Italia, ma soprattutto a tutti coloro che non amano la mentalita’ italiana del tipo “mammà mi stiri la camicia”, di trovare una citta’ difficile (non è il paese della cuccagna come molti stanno raccontando), ma affascinante e stimolante per tutti questi motivi:

  • Ottimo rapporto costo della vita / servizi (seppur gli affitti continuino a crescere costantemente)
  • Berlino ha un humus ed un approccio lavorativo perfetto per chi ha un’idea da Startup (tutto ciò implica naturalmente di doversi comunque tirare su le maniche per trovare la propria strada con le proprie forze)
  • Una scena musicale incredibile che spazia e si espande in tante direzioni. Talentuosissimi artisti di strada arricchiscono le vie e le piazze di questa città, intrattenendo e diffondendo arte spesso di grande valore.  Concerti di ogni tipo e genere  sono all’ordine del giorno, ed una vita notturna senza paragoni fanno di questa città un luogo incredibile per i giovani di tutte le età!
  • Una metropoli contemporanea ricca di natura alla portata di tutti nel quotidiano, fatta di parchi, laghi e fiumi balneabili.
  • Una Storia lunga, spesso dura, che ha creato una mentalità amichevole e di tolleranza.
    La storia qui si accavalla ad ogni angolo. A Berlino potremo ancora trovare edifici abbandonati oppure che pian piano trovano nuovi modi di essere vissuti.
  • L’ottima posizione geografica che permette di viaggiare ovunque con ottimi collegamenti ed in poco tempo (Olanda, Svezia, Inghilterra…)

Tornando al discorso lavorativo la prima cosa da segnalare e’ che l’alto numero di professionisti del settore informatico, arrivati da ogni parte del mondo (e’ il caso proprio di sottolinearlo) rende necessario un livello di conoscenza dell’inglese davvero alto; quindi fate bene i conti con questo primo possibile ostacolo.
Inoltre proprio dato l’alto numero e livello della concorrenza negli ultimi 2 anni inizia ad essere richiesto anche un buon livello di tedesco;  questo anche perche’ molte delle posizioni ricercate, che ruotano attorno alle aziende web 3.0, sono legate a ruoli quali

  • Marketing Manager
  • Country Marketing Manager
  • Advertising Sales Manager

…ecc , per i quali si presume una certa spiccata dote comunicativa ed una dialettica (inglese/tedesco/francese) di livello alto.

Ora per entrare piu’ addentro agli aspetti tecnologici va fatto notare che proprio per la quantita’ di start-up presenti ed il basso costo della vita, i ruoli piu’ ricercati a Berlino sono quelli inerenti il settore di sviluppo (programmazione) nei tanti e vari ambiti informatici, che siano essi di sviluppato in ambito Web (Php, Java, Javascript, Html5, Python, Ruby…) oppure , altrettanto richiesti, in ambiti Smartphone OS (Android, Apple ….).

Uno dei siti che mi sento di consigliare, perche’ puo’ darvi meglio il polso delle competenze piu’ richieste, e’ quello di BerlinStartupJobs.
Per coloro che preferiscono intraprendere sin da subito una carriera da freelencer consiglio anche la piattaforma Twago.

Per l’ambito sistemistico il discorso e’ leggermente diverso perche’ sappiamo già che percentualmente sono richiesti meno sistemisti rispetto agli sviluppatori, ed in piu’ ho osservato che molte startup o aziende già avviate usano avere i “sistemi” ( e di conseguenza i sistemisti) li dove hanno il loro “core” finanziario (Inghilterra, U.S.A., Canada ecc….. , oppure lì quando la scelta è quella di abbassare ulteriormente i costi di gestione in paesi quali per es.:  Filippine, Malesia, India ecc….)

Berlino è fantastica, ma anche selettiva. Se siete audaci e sapete cosa volete è la città che fa per voi.

Linuxcon Europe – 2014

LinuxCon EuropeLinuxCon Europe – Linux Foundation

La Linux Foundation, l’organizzazione non-profit che sostiene la crescita di Linux e dello sviluppo collaborativo, ha annunciato i relatori della LinuxCon + CloudOpen + Embedded Linux Conference Europe, che si terrà dal 13 al 15 ottobre presso il Centro Congressi di Düsseldorf.

LinuxCon Europe è il luogo in cui apprendere dai migliori e più intelligenti, grazie agli interventi dei più importanti utilizzatori, sviluppatori e project leader della comunità Linux.

Non esiste un altro evento in Europa che permetta a sviluppatori, amministratori di sistemi, architetti e talenti tecnici di qualsiasi tipo e livello di riunirsi sotto un unico tetto per imparare, collaborare e risolvere problemi allo scopo di fare avanzare ulteriormente la piattaforma Linux.

LinuxCon prevede oltre 100 sessioni, con novità sugli ultimi aggiornamenti del kernel, sulle tecnologie e interfacce di storage, sulla sicurezza e l’Internet of Things, nonché interventi sulle best practice e la collaborazione open source.

I relatori della conferenza LinuxCon + CloudOpen + ELC Europe di quest’anno illustreranno i passi in avanti compiuti da Linux e dall’open cloud, nonché il modo in cui i metodi e i principi di Linux e dell’open source si stiano diffondendo in altri settori della società, tra cui la vendita al dettaglio e la sanità.

Tra i relatori confermati:

Jono Bacon, Senior Director of Community di XPRIZE, che nel suo intervento “Building Exponential Communities” parlerà di come sfruttare al meglio il lavoro in un ambiente comunitario

Paul Biondich, fondatore e presidente di OpenMRS, che parlerà di come le comunità open source stiano aiutando a migliorare la salute dei più poveri in tutto il mondo

Joanna Rutkowska, fondatrice e CEO di Invisible Things Lab, che parlerà di Qube OS e di come esso rappresenti un approccio pratico alla sicurezza dei sistemi client

Chris Schlaeger, Direttore Generale dell’Amazon Development Center, che farà una presentazione sugli elementi fondamentali degli Amazon Web Services

Inoltre, l’attesissima presentazione del Linux Kernel Panel vedrà come protagonista Linus Torvalds, creatore e membro della Linux Foundation, insieme ad altri importanti sviluppatori e addetti alla manutenzione del kernel, che parleranno dello stato del kernel Linux, nonché delle attività future e in corso.

Per iscriversi all’evento bastera’ seguire questo link : LinuxConEurope.

Montare una cartella FTP

CurlFTPfs

CurlFTPfs

FTP in tasca

Sempre piu’ spesso la mole di dati che ci troviamo a dover gestire ci impone di creare ed utilizzare i piu’ svariati servizi di Cloud Storage presenti sul mercato, molti di questi offrono comode partizioni gestibili via FTP su cui spostare/upgradare tutti i nostri piu’ preziosi ricordi.

Come fare pero’ ad organizzare un sistema di backup e ripristino di questi dati, possibilmente rendendo l’operazione facile come scorrere il nostro file system locale ? . La soluzione potrebbe risiedere in un software, che permette di montare un server FTP come se fosse una normale directory del proprio filesystem.

Per fare questo è necssario installare curlftpfs dal proprio repository. In Ubuntu bastera’ basta digitare:

sudo apt-get install curlftpfs

Una volta installato possiamo montare la nostra cartella ftp con il seguente comando:

sudo curlftpfs -o user=utente:password mio_server punto_di_mount

Se per esempio il server fosse ftp.<mio_server>.it , con nome utente pippo e, con password pluto, il comando sarà:

sudo curlftpfs -o user=pippo:pluto ftp.<mio_server>.it /media/scambio # il mio punto di mount

Da questo momento in poi la mia cartella /media/scambio conterrà i files presenti sul server FTP e potranno essere copiati, spostati ed eliminati come se fossero presenti sul proprio filesystem. In questo modo, se si dovesse avere anche un minimo di conoscenza di programmazione della shell, si potra’ creare uno script per il backup dell’intero disco/repository/sito (insomma di quello che volete) con pochissimi comandi, automatizzando il tutto.

SyncThing sincronizzazione OpenSource

SyncThings

SyncThings

Sincronizzare cartelle tra vari sistemi operativi e dispositivi…

Se si utilizzano più computer, probabilmente vorrebbe utilizzare, oppure, si sta già utilizzando un servizio di sincronizzazione per gestire i file su macchine diverse. Una delle opzioni di sincronizzazione più popolari è quello di fare uso di servizi di “storage online”, i famosi servizi Cloud di cui abbiamo parlato in precedenti articoli, come Dropbox, Google Drive e OneDrive, con i quali è possibile trasferire i file da un PC ad un altro. Uno svantaggio di questi servizi è che una copia dei file risiederà per forza di cose sul server del fornitore del servizio.
Un altro metodo per fare tale operazione è quello di utilizzare la tecnologia P2P, come BitTorrent Sync e sincronizzare i file direttamente tra computer.

Il problema da affrontare quando si lavora con i dispositivi digitali, che siano PC o Smartphones, sono le copie di sicurezza! Si cerca di trovare la soluzione ottimale a tale problema e oggi scopriremo insieme un nuovo software multi piattaforma che si chiama SyncThing. Il programma si basa su una interfaccia di gestione web-based e il trasferimento files tipico del Peer-to-Peer.

Syncthing è un ibrido tra Dropbox e BitTorrent Sync; esso permette di sincronizzare i file direttamente tra computer senza che ci sia di mezzo alcun server esterno; inoltre è open-source, e chiunque può controllare il codice per qualsiasi problema di sicurezza o addirittura per creare la propria app.

Syncthing supporta Windows, Mac, Linux, BSD e Solaris. Anche se si stanno utilizzando differenti sistemi operativi sui vari computer, sarà possibile sincronizzare i file da un computer a un altro.

Per iniziare
Vediamo come fare ad implementare in modo veloce e semplice questa soluzione all’interno della nostra attività lavorativa e/o casalinga.

Prima di tutto dobbiamo provvedere a scaricare la versione del software adatta per il nostro computer. Il sito di riferimento per scaricare il software è www.syncthing.net. Scorrendo verso il basso troviamo il link per procedere al download del software. Come è possibile vedere dalla pagina github troviamo le versioni per MacOSx, FreeBSD, Linux 32 e 64 bit, Linux Arm, Solaris e Windows 32 e 64bit.

Scarichiamo quella che corrisponde alla nostra architettura. Una volta ottenuto il file compresso .tar.gz andremo ad operare da terminale, per scompattare, daremo il comando:

tar zxvf nomedelfile.tar.gz -C /opt/

A questo punto ci ritroveremo una cartella contenente tutto il software necessario, pochi mega (meno di 10) per un software molto interessante. Entriamo nella cartella di Syncthing ed eseguiamolo:

cd /opt/syncthing-linux-<nostra-versione>
./syncthing

Si aprirà in automatico il browser predefinito sulla pagina di gestione 127.0.0.1:8080. Da qui potremmo vedere sulla barra in alto, oltre al nome del software, il menu Edit per l’aggiunta di nodi (le altre macchine in rete) e di repositories (le cartelle da sincronizzare), la configurazione del nodo, l’id del nodo e due comandi semplicissimi per riavviare il software di sincronizzazione o fermarlo totalmente. Nel resto della pagina sulla sinistra si vedranno le condivisioni da sincronizzare e sulla destra l’elenco dei nodi e dello status (in attesa, in sincronizzazione, ecc. ecc.).

Un piccolo consiglio e’ quello di entrare nel menu EDIT / Settings per configurare alcuni aspetti del programma; prima di tutto impostate  il GUI LISTEN ADDRESSES su 0.0.0.0:8080 per potervi accedere da qualunque postazione della rete, dopo di che’ per aumentarne la sicurezza è possibile inserire anche un nome utente ed una password.

Sempre nel menu EDIT troviamo la voce Show ID che altro non è che una stringa lunghissima  di caratteri alfanumerici che identificano la nostra installazione in rete. Facciamo un bel copia incolla di questo codice che ci servirà per configurare le altre macchine in rete.

Se la soluzione vi e’ piaciuto potremo provvedere a rendere avviabile il servizio automaticamente all’accensione del PC. In Windows basterà creare un collegamento in Esecuzione Automatica del menu di avvio, mentre in Linux basterà aggiungere una riga di comando nel file /etc/rc.local (sono necessari i permessi di root. Quindi usare il comando sudo gedit /etc/rc.local per editare il file). La riga da aggiungere è:

su -l nome-utente -c “/percorso-di-syncthing/syncthing &”

Se presente la riga con scritto exit 0, eliminarla o commentarla anteponendoci un

Vantaggi di Syncthing

Privacy: Tutti i vostri file risiedono sul vostro computer. Non c’è alcun server intermedio su cui i tuoi dati vengono copiati.
Crittografia: Tutta la comunicazione è assicurata tramite TLS.
Autenticazione: Ogni nodo è identificato da un valido certificato di crittografia. Solo i nodi che si sono esplicitamente autorizzati possono connettersi al cluster.
Open-source: Chiunque può esaminare il codice e risolvere qualsiasi problema di bug o di sicurezza.

L’altra cosa buona di Syncthing è che non devi preoccuparti dello spazio di archiviazione. La maggior parte dei fornitori di “storage online” si limitano a una quantità fissa di spazio di archiviazione. Per Syncthing, sei limitato solo dallo spazio di archiviazione del tuo PC !