SVN client e Ubuntu: python-svn e svn-workbench

Ultimamente mi capita spesso di lavorare sfruttando i vantaggi dati da un repository SVN, e visto che Vista (scusate il gioco di parole) mi ha lasciato a piedi, ho cercato una alternativa al validissimo TortoiseSVN che sfortunatamente va solo su windows.

Ubuntu, cercando di non farmi rimpiangere Vista, offre la possibilità di utilizzare SVN Workbench. Questo sembra un software piuttosto semplice sia da utilizzare che come funzionalità.

Non vi rifaccio tutta la manfrina che vi ho fatto nel post precedente dedicato all’SVN, ma vi metto (e mi metto) a futura memoria i semplicissimi passi da fare per installare questo programmino su ubuntu:

sudo apt-get install python-svn
sudo apt-get install svn-workbench

Lanciati questi due comandi il programmino lo trovate nel menù “applicazioni”. Buon divertimento!!

P.S.: Per chi non lo sapesse, Dreamhost dà la possibilità di crearsi un proprio repository svn. (confermo : I’m a happy dreamhost customer)

Posted in Linux, come fare cosa, planet-sprite | Tagged , , , , , , | Leave a comment

Problemi notebook: Asus F6A, Windows Vista e Ubuntu

Descrizione problema : (ancora senza soluzione)
Ho preso un portatilino Asus F6A e ne sono molto contento. Allo stesso tempo ho speso ORE negli ultimi due giorni per capire come poterci installare Ubuntu senza fare inca22are eccessivamente vista.

Ho trovato queste guide : (ricerca su google)

unaduetre

Tutte indicano tre passi fondamentali: backup, creazione delle partizioni con il gestore dei dischi di windows vista, così che poi l’OS di microsoft si incavoli di meno, installazione tranquilla di ubuntu ed eventuale configurazione di ubuntu.

Tutto è andato bene, e ho verificato che vista funzionasse anche con le partizioni nuove create prima di installare ubuntu. Nessun problema di sorta. Perfetto, si passa ad installare ubuntu.
Installata ubuntu alla prima scermata di Grub voglio vedere se vista funziona (penso “altrimenti ricaccio direttamente il recovery DVD dentro e rimetto vista per informarmi meglio su come fare”).
Vista parte in modalità recovery non caricando nulla per quasi 20 minuti. Al che capisco che non è andato bene qualcosa e vado a vedere con il DVD di recovery di ripiazzare vista allo stato originale e riprovare. A questo punto però scopro (tramite CD live di ubuntu) che il mio HD è completamente senza partizioni. Sono sparite quelle di recovery, quelle di vista e quelle di ubuntu.

Sperando in un miracolo metto comunque il DVD di ripristino di Vista e faccio fare da esso il boot (istruzioni nel manuale ASUS che mi hanno dato con il portatile) ma la situazione non migliora. Ora sto da circa 2 ore e una quarantina di minuti davanti alla barra di caricamento con sotto scritto che è di proprietà di microsoft. Però è fatta bene, eh!

Io vorrei fare convivere i due sistemi operativi Vista e Ubuntu, cominciavo a verificare che in effetti vista non mi dispiaceva, ho fatto tutto questo bordello per tenerlo con me. Ora se proprio devo installare ubuntu, lo faccio, ma perchè non dovrei provare vista?? e soprattutto perchè mi hanno tolto la soddisfazione di entrare nel mio computer con la mia impronta digitale????? (so già che su ubuntu se ci provo scappa fuori un guantone da box dalla tastiera e me lo spara in piena faccia… anche se…)

Aggiornamento: Ho installato ubuntu, va tutto tranne il lettore di impronte digitali. Quando avrò tempo proverò a mettere su anche quello.

Posted in Linux, Micro$oft, come fare cosa, planet-sprite, windows | Tagged | 3 Comments

Installando Symfony : virtualhost

Visto che il blog serve anche a me per ricordare come fare certe cose e magari serve a qualcuno che si mette a cercare come farle, oggi mi segno come ho fatto per creare un virtualhost su apache2.
Questo mi serve perchè creando progetti tramite symfony è utile avere un riferimento virtuale alla cartella reale per evitare url lunghi chilometri!

  • Primo: Aprire il file “/etc/apache2/sites-enabled/000-default”.
    Alla fine di questo file inseriamo il seguente codice

    <virtualhost symfony>
    ServerName 127.0.1.1
    DocumentRoot “<indirizzo_cartella_progetto_symfony>/web”
    DirectoryIndex index.php
    Alias /sf /$sf_symfony_data_dir/web/sf
    <directory “/$sf_symfony_data_dir/web/sf”>
    AllowOverride All
    Allow from All
    </directory>
    <directory “<indirizzo_cartella_progetto_symfony>/web”>
    AllowOverride All
    Allow from All
    </directory>
    </virtualhost>

  • Secondo: Aprire il file “/etc/hosts” e scrivere la seguente riga sotto quelle già presenti (ci dovrebbe essere almeno quella per il localhost):

    127.0.1.1 symfony

  • Terzo: Riavviare apache2 “/ets/init.d/apache2 restart”

Con queste due modifiche il mio browser puntando alla pagina http://symfony/ restituisce esattamente la root del progetto symfony creato.

Se ovviamente non si sa come creare un progetto symfony o non si sa cosa è symfony potete visitare il sito www.symfony-project.org.

Posted in come fare cosa, planet-sprite, web development | Tagged | Leave a comment

Metodologie Agili : introduzione

Questo post dovrebbe essere il primo di alcuni che riguardano l’argomento della mia tesi. Ovviamente non scriverò tanto e così approfonditamente come farò in “quella”, ma spero di dare buoni spunti segnalando dove e come io ho trovato informazioni per il mio lavoro.

Innanzitutto direi di introdurre che cosa sono ste benedette metodologie agili.
Le metodologie agili sono una nuova forma per lo sviluppo del software, voi direte “non è che puoi essere più specifico”, certo! Queste metodologie sono delle ricette tramite cui voi organizzate l’implementazione del software.
Si dicono agili perchè i valori a cui esse attribuiscono maggiore importanta sono:

  • Individui e interazioni più che processi e strumenti
  • Software funzionante più che documentazione dettagliata
  • Collaborazione con il cliente più che negoziazione di un contratto
  • Adeguarsi al cambiamento più che seguire un piano

In pratica sono state sviluppate perchè si è notato come le tecniche di sviluppo “classiche” basate su fasi ben distinte di Analisi, Progettazione, Implementazione e Verifica, non riuscivano sempre a sostenere il lavoro di gruppi che affrontavano problemi che avevano al loro interno degli elementi di dinamicità.
Spiego meglio: Se si fa un’analisi dei requisiti di un software, lo si progetta e quando si arriva a metà implementazione ci si accorge di: “oddio l’analista a sca22ato ad interpretare il requisito x”, “il cliente si presenta e vi dice che non gli va bene l’apetto x e lo vuole invece y”(x può essere il colore del bottone ‘login’ ma può anche essere un aspetto base della business logic del vostro progetto o di una sua parte consistente), etc.. Voi che fareste?? Ok, licenziare l’analista può andare bene, ma mica potete licenziare il cliente!!
Le metodologie agili vanno a piazzarsi proprio a questo punto. In esse si pensa al cambiamento come un fattore inevitabile, soprattutto in un ambiente come quello del software e in genere della tecnologie che fa passi da gigante nel giro di giorni e mesi, nenache di anni!
I fattori base di una metodologia agile sono :

  • Le COMUNICAZIONI: L’importante è capirsi, comunicare in modo efficace e possibilmente faccia a faccia. Le comunicazioni non devono essere limitate tra i programmatori, ma estese a tutti gli interessati dal progetto: programmatori, project manager, cliente, designer, grafici, etc. etc. …
    Questpo permette non solo di capire cosa vuole il cliente ma anche di innalzare la conoscenza generale dell’intero gruppo di lavoro sul problema (o problemi) da affrontare, come verra affrontato e perchè. Tutto questo senza dover scrivere 12 capitoli di documentazione da 1000 pagine l’uno!
  • Devi consegnare spesso al cliente e devi consegnare software funzionante: Le metodologie agili prevedono uno sviluppo del software che può essere descritto grossolanamente come una serie di fette di una torta che vengano attaccate una all’altra, per partire da un piatto vuoto ed arrivare ad una torta intera. Questo modo di fare è diverso dal concetto di sviluppo a partire da un nucleo centrale di funzionalità, su cui poi viene montato uno strato di “business logic” e poi le “interfacce utente”, che io chiamo (a mia inappellabile decisione :P ) “sviluppo a cipolla”.
    L’idea è quindi quella di ottenere, ogni poche iterazioni del processo di sviluppo della metodologia agile scelta, una porzione (fetta) del progetto (torta) che funzioni esattamente come ci era stato richiesto dal cliente (una fetta di torta deve essere buona quando il cliente la mangia) e che sia utilizzabbile da subito per test da parte del cliente ed eventualmente per l’uso nelle attività aziendali (una volta che il cliente mangia la fetta di torta e dice che fa schifo significa che qualcosa non va!).
    L’ultima cosa da notare è che qui si parla di software funzionante. Come fate a dire che un software funziona? Lo testate! Giusto. L’idea nuova è quella di scrivere i test per il codice prima del codice stesso. I test devono essere basati su quello che il cliente vuole, così chi sviluppa ha l’obiettivo di verificare quel test e di conseguenza sviluppare esattamente quello che vuole il cliente.
    NB: senza sprechi di tempo perchè implementi solo ciò che è richiesto!!
  • PUNTO FONDAMENTALE: Adeguarsi al cambiamento e accettarlo come parte del proprio lavoro. Questo non significa lavorare nottate intere come schiavi perchè “qualcosa è cambiato”. Significa sfruttare le molte iterazioni brevi per approfondire di volta in volta la conoscenza di una piccola porzione di software, implementarla al meglio, integrarla con quelle già presenti e verificare che tutto funzioni. Se qualcosa non funziona: risolverlo subito!. Si ha l’obbligo di consegnare software funzionante, ricordate?
    Inoltre il cambiamento può riguardare non solo il codice ma anche il modo di svilupparlo. Se vediamo che il processo di sviluppo utilizzato non dà i risultati che volevamo o non è efficiente nel nostro ambiente di lavoro e per il nostro progetto, allora perchè non cambiarlo e migliorarlo analizzando cosa non va?

Per oggi basta così. Vi dico solo un’ultima cosa, ma non ditela a nessuno: Le metodologie agili non sono una manna! Vanno applicate dove servono e con criterio. Dovete studiare per applicarle e studiare tanto. Di seguito un pò di link per approfondire.

Posted in Metodologie Agili, planet-sprite | Tagged | 5 Comments

I’m a Happy DreamHost Customer

E lo sono non solo per i molti servizi che offrono ma anche per come prendono il loro lavoro e si rapportano con i propri clienti:

Posted in WPF, a caso... | Tagged , , , | Leave a comment

Tortoise SVN

Quest’oggi la fisica relativistica mi ha un pò scassato… vi parlo di un programmino che ho trovato ed utilizzato nell’ultimo progetto per l’università.

Tortoise SVN

Tortoise SVN è un programma per gestire un repository SVN, cioè un posto dove andiamo a salvare versioni successive di file di codice, documenti o qualsiasi file che stiamo usando.
In pratica è un pò come fare dei backup delle successive modifiche che andiamo a fare.
Utilizzare un sistema di questo genere aiuta molto in lavori di gruppo ma è anche molto utile quando si lavora da soli.

Tortoise SVN è un programma per windows che si installa come voce del menu di explorer (sia su “file” sia sul menu che appara cliccando con il tasto destro all’interno/su una cartella o su un file). Ovviamente ce ne sono anche altri ma io ho provato questo trovandomi molto bene visto che è possibile utilizzarlo senza pagare nessuno e perchè oltre alla gestione dei “backup” dà anche la possibilità di andare a comparare le modifiche fatte su uno stesso file tra la versione attuale e la precedente**.

Per chi se lo stesse chiedendo il programmino non “crea” un repository ma fa in modo di poterne gestire uno, o più, che risiedono su appositi server (quello da me usato è quello messo a disposizione da Assembla).

Sul sito ufficiale di Tortoise SVN si trovano degli screenshot che aiutano a capire di cosa ho parlato, e se volete scaricarlo potete farlo dall’area di download.

Vi consiglio comunque di informarvi prima su come effettivamente utilizzare le varie funzionalità che lo compongono. Ma non preoccupatevi della complessità, trovere le operazioni base, per avere un repository SVN funzionante, molto semplici da eseguire e poi con un pò di esperienza riuscirete a utilizzare funzionalità più complesse e che permettono una gestione sempre migliori dei vostri “backup”.

**: In effetti ho integrato Tortoise SVN con un secondo programma (IMHO) più intuitivo per il confronto e l’unione di due file di versioni successive WinMerge. Se volete questo è anche stand-alone e potete installarlo senza installare Tortoise.

Posted in Informatica Generale, Micro$oft, planet-sprite, windows | Tagged , , , , | 1 Comment

Quando si dice “una memoria di ferro!!”

memo matrimonio giulia

Così per dire che la mia memoria ogni tanto fa cilecca

Posted in a caso..., risate | Tagged , , , , | 2 Comments

Sting – Fields Of Gold

In questo periodo questa canzone viaggia spesso sui vari player portatili o meno che ho… auguro a tutti di trovare qualcosa come quello che è descritto in questa canzone.

Posted in futuro, musica, pensieri | Tagged , , , | 1 Comment

La pedalota – la festa

So che magari è pubblicità ma io sto ragazzo che fa questa cosa della traversata in pedalò dell’adriatico lo conosco da circa 16 anni, quindi non è proprio una cosa da niente!

Io vi lascio con la notizia fondamentale per tutti quelli che saranno dalle parti di ancona il 21 Giugno 2008. La festa d’arrivo della Pedalota!
Il video è un pò lungo ma vi farà sicuramente capire che vale la pena esserci. Io ci sarò e quindi se siete da quelle parti fate un salto anche voi, ci sarà sicuramente da divertirsi!!

Posted in amici, futuro, musica, pensieri, risate, video | Leave a comment

La pedalota

E si ritorna sul blog per segnalare un evento che più che sportivo direi che è da sport estremo!!!

La pedalota : Traversata dell’adriatico in pedalò!!!

Io non so se essere fiero di conoscere i due tizi che lo faranno oppure chidermi con che gente sono cresciuto :P

Comunque sia in bocca al lupo!

Posted in amici, futuro, risate, video | Leave a comment